Icarus 2.0 for Nova released

We've released a new major version of Icarus, the extension for Nova which adds tightly-integrated support for Swift, C, C++, and Objective-C(++) from Panic.

This release includes these highlights:

  • Remote debugging support into remote machines (such as Docker containers) via improved LLDB integration
  • Syntax highlighting for Makefiles, CMake files, Strings files, and Clang module maps.
  • Improved highlighting of Swift code through updates to its Tree-sitter grammar, including many bug fixes and improvements to feature areas like async / await, actors, and initial support for macros.
  • Various other improvements to all included parsers for highlighting and symbolication.
  • Additional bug fixes to the included LLDB debug adapter and its support for sitting atop Xcode or a custom installed Swift toolchain.

It's slightly comedic that I've pushed the release literally one day into WWDC where Swift 6 is being demonstrated at large, but the Nova team will be working to help the upstream Tree-sitter grammar along in adopting as many new adjustments necessary for Swift 6 over time.

I hope you all enjoy, and if anyone encounters issues, don't hesitate to bring them to my attention via the tracker or this forum category! I'm trying to get better at community involvement from our side. :smile:

:minidisc: Direct install in Nova: http://panic.com/open-in-nova/extension?id=panic.Icarus
:octopus: GitHub: GitHub - panicinc/icarus: Swift, C, C++, and Objective-C Support for Nova
:spider_web: Extension page: Icarus | Nova Extensions

19 Likes

Tangentially, will this ever be integrated directly into Nova?

I love that Nova exists, in principle, because there's far too few native Mac development tools in general. But it presents as really focused on web development.

Tangentially, will this ever be integrated directly into Nova?

It's possible! Mostly, I think we made it an extension to not overwhelm more general-purpose users (like as you mention, web devs) with all the Swift and native programming aspects.

If it were to be just integrated into the shipping Nova itself, not a whole lot would change, I'd think. Our built-in grammars use the exact same mechanisms (they're extensions, too, just bundled).

So it's definitely something we can revisit if a large portion of our userbase is from Swift (and C-family) developers!

2 Likes

Hah, but there you go - from my perspective Nova is already overwhelmed with all this silly web dev stuff. :stuck_out_tongue_winking_eye:

I don't know if it's fair, but that seems like the crux a marketing problem - Nova has always appeared as a web dev environment to me, which makes me hesitant (as a native dev) to try it.

But it's not like there's no interest from Xcode-using devs in a better IDE, maybe one which doesn't crash every hour or hang every five seconds if you leave a SwiftUI preview open. And a Mac IDE, not just Visual Studio Code or some other clunky webkit wrapper, would be fantastic. So though I'm not yet using Nova, I'm really pleased to see developments that nudge it closer to being the ideal Mac IDE.

2 Likes