Skip to content

Mun v0.3.0

Pre-release
Pre-release
Compare
Choose a tag to compare
@Wodann Wodann released this 11 Apr 22:21
c73fed0

The third Mun release includes big usability improvements; multi-file projects, a language server with diagnostics and autocompletion, and improvements to robustness and developer workflow to name a few.

🔗 feature

  • initial LSP support

🔗 improvement

  • add benchmarks for and optimise struct field marshalling

🔗 improvement

  • shared diagnostics between compiler and language server

🔗 misc

  • build binaries for release branches

🔗 improvement

  • explicitly specify latest Ubuntu LTS

🔗 improvement

  • bump bindgen dependency to 0.54

🔗 fix

  • parsing of unmatched right curly braces ('}')

🔗 refactor

  • upgrade to salsa 0.15

🔗 fix

  • removed outdated comments

🔗 feat

  • Implement mun new and mun init

🔗 feat

  • type alias

🔗 refactor

  • move library loading logic to separate crate

🔗 refactor

  • move test utility functions to separate crate

🔗 refactor

  • upgrade to official inkwell

🔗 refactor

  • generate C ABI from Rust code

🔗 refactor

  • emit and link bitcode files instead of object files

🔗 refactor

  • use custom prebuild llvm distribution on ubuntu

🔗 fix

  • emit and link bitcode files instead of obj does not work on MacOS

🔗 feat

  • add mdbook plugin for testing mun code in book

🔗 fix

  • never return type in let initializer

🔗 refactor

  • use Idx instead of macro in arena

🔗 misc

  • split database and added docs

🔗 bump

  • pin rust version to 1.46.0

🔗 bump

  • smol_str dependency to 0.1.17

🔗 feature

  • refactored RawItems into ItemTree

🔗 feature

  • adds fixtures to support multiple files from string

🔗 bump

  • actions/core from 1.2.4 to 1.2.6 in /.github/actions/install-llvm

🔗 fix

  • dont run mun tests on CI

🔗 bump

  • rust 1.47

🔗 fix

  • 7zip issues

🔗 feature

  • adds modules and visibility

🔗 docs

  • fix broken book link and CoC link

🔗 fix

  • alignment of struct fields

🔗 feat

  • add AsValue macro support for enums

🔗 refactor

  • make type-specific data (such as StructInfo) part of TypeInfo

🔗 bump

  • rust 1.48

🔗 feature

  • use statements language support

🔗 bump

  • rust 1.49

🔗 fix

  • shorten commit hash with environment file

🔗 feat

  • adds lsp document symbol provider

🔗 feat

  • integrated new vfs

🔗 feat

  • removed async code and switched to lsp_server

🔗 feat

  • add option to emit IR

🔗 feature

  • adds document symbol provider

🔗 feature

  • implements incremental file updates

🔗 feat

  • runtime linking

🔗 misc

  • adds logging to windows llvm install

🔗 fix

  • manually extract llvm release to get more output

🔗 bump

  • Inkwell beta.2 and LLVM11

🔗 feat

  • describe how to install/build LLVM

🔗 feat

  • add mut keyword

🔗 feat

  • support for completions

🔗 fix

  • parser performance issues

🔗 bump

  • bumps Rust to 1.50

🔗 refactor

  • generate rust tests for code snippets in book

🔗 misc

  • update runtime FFI

🔗 feat

  • updated book for 0.3 changes

Special thanks to @emi2k01, @tdejager, @ethanboxx, @sinato, @dependabot, @legendiguess, and @sburris0 for their contributions to this release.