Mun v0.3.0
Pre-release
Pre-release
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
andmun 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.