This Month in Mun - February 2021

March 04, 2021, The Mun Team

It’s been a long time coming, but the Core Team is closing in on the finish line for Mun v0.3. We are only a couple of pull requests away from locking the build for bug fixes and documentation. So start your engines!

Mun v0.3 progress

  • feature: use statements language support [PR#290]

    // /foo.mun
    pub struct Ok;
    
    // /bar.mun
    pub use package::foo::Ok as ReallyOk;
    pub struct Ok;
    
    // /baz.mun
    use package::bar::ReallyOk;
  • feature(lsp): implements incremental file updates [PR#298]

    Allows the language server to receive incremental file updates when text is being modified in an editor.

  • bump: Inkwell beta.2 and LLVM11 [PR#303]

    Updates our entire codebase to LLVM11, which contains our fix for LLD. This will clear the way to build a fully statically linked version of Mun (except for libc) on Linux. (See issue#191)

  • fix: parser performance issues [PR#307]

    This improvements affects all operations, but in particular we noticed that it caused completions in a large file to go from 300ms to 3ms.

We have a couple more changes that we want to get in before we start preparing for the release of Mun v0.3. In particular, runtime linking and one outstanding review on our language server. After that we’ll start the process of testing our Rust & C++ bindings, adding missing documentation and examples, and squashing bugs. Can’t wait? Please help us test the latest version of Mun by building from source.

For more details, please check out our high-level roadmap on Github that details new features for the upcoming three releases - Mun v0.3, v0.4, and v0.5 - as well as a backlog of features that are still to come.

Community

If you are interested in helping develop Mun - but are not sure where to start - feel free to take a look at our good first issues or reach out to us on Discord or Twitter. To support our cause, please consider donating to our Open Collective or Github Sponsors.