What's new:
Simplified update process
See the #4374 for more details. TL;DR:
Given your already type-checked scratch file, UCM attempts to substitute the new definitions everywhere the old were referenced in your namespace and other definitions, propagating recursively.
- If successful, you are done!
- If unsuccessful, UCM will load the dependent definitions into the scratch file for you to edit until they typecheck.
Library upgrade command
See #4386 for more details. TL;DR:
With both an <old> and <new> version of a library installed under lib.<old> and lib.<new> respectively, the upgrade <old> <new> command will attempt to replace any usages in your project of definitions from <old> with definitions from <new> with the same names.
- If successful,
<old>is removed fromlib, and you are done! - If unsuccessful, UCM will switch you to a new temporary branch (without
<old>), and load the dependent definitions into the scratch file for you to edit until they typecheck. - When you finish the migration, you can
updateand then use themergecommand to merge the temporary branch into your original branch.
Kind checking
We have kind checking now!
Various improvements to
- Error messages
- Pretty-printing and code round-trips
- Request timeout fixes for Share
All changes since last release:
- refactor: add generic-lens to prelude, export orphan IsLabel instance by @mitchellwrosen in #4332
- Restructure decompilation by @dolio in #4336
- Add new BranchV3 type by @mitchellwrosen in #4333
- Add Term Hash Validation by @ChrisPenner in #4329
- Add kind inference by @tstat in #4331
- add expectDeclNumConstructors by @mitchellwrosen in #4341
- JIT: Added
Code.lookupfunction and various supporting code changes by @dolio in #4339 - quick fix for delete.type #4315 for next steps by @sixfourtwelve in #4342
- Fill out more scheme builtins by @dolio in #4355
- improve rendering of uncaught exceptions by @mitchellwrosen in #4358
- Fix kind inference context bug by @tstat in #4366
- Delay kind defaulting by @tstat in #4359
- Assorted pretty-printing round trip fixes by @pchiusano in #4368
- Implement Murmurhash in racket by @jaredly in #4365
- Fix parser issue caused by virtual semicolons being emitted inside parens by @pchiusano in #4369
- Scheme builtin optimization and associated tweaks by @dolio in #4371
- Add missing spaces to
pullexplanation by @JohanWinther in #4361 - Align client timeouts with server-side timeouts by @ChrisPenner in #4364
- Add @lexi-lambda to contributors by @pchiusano in #4379
- Add @SystemFw to contributors by @SystemFw in #4380
- print/parse
updateby @aryairani in #4374 - Bump haskell.nix dependency by @tstat in #4376
- feat: add
upgradecommand by @mitchellwrosen in #4386 - update
updateinfo messages by @aryairani in #4387 - make findCtorNames return an Output instead of error by @aryairani in #4388
New Contributors
- @JohanWinther made their first contribution in #4361
Full Changelog: release/M5g...release/M5h