What's changed
Fun stuff ð
- This release introduces a much improved
merge
andpull
algorithm. The experience is similar toupdate
orupgrade
- if there are conflicts (or if the result doesn't typecheck), you are given a scratch file to get compiling. This is very new; let us know you run into any issues! - The new
upgrade.commit
command will merge and remove the temporary branch created during anupgrade
that required manual intervention. An analogousmerge.commit
will be in an upcoming release. - A new
lib.install
command replaces the use ofpull
for installing libraries. Usage:lib.install @unison/base/releases/latest
and usehelp lib.install
for details.
Important deprecations ðŠĶ
- UCM can no longer
push
orpull
the old Git-based Unison codebases. Use UCM 0.5.20 or earlier to migrate them to Unison Share!
Lovely bugfixes ð
- A bug was causing
delete.namespace
to sometimes remove the last names for things without any warning. (4988) - A bug was causing some commands to work off of an out-of-date namespace. (5027)
find
followed bydocs <n>
would fail. (5012)dependents
followed bydelete <n>
would fail. (5019)- UCM would just complain if a scratch file it wanted to write to didn't exist. (4973)
auth.login
was invisible inhelp
. (5028)- The
ui
command couldn't find its data files when using theucm
launcher script included in manual installs. (5048)/(5050) - A bug caused hashes to be displayed in the LSP diagnostics. (#4960)
- LSP diagnostics were one change behind. (4957)
- The JIT version of
zlib.compress
on a >64k buffer. (4961)
All new PRs in this release
- Fix hashes in LSP diagnostic names by @ChrisPenner in #4960
- Update sqlite3 codebase before changing in-app values by @ChrisPenner in #4957
- feat: add
lib.install
command by @mitchellwrosen in #4953 - feat: better merge algorithm by @mitchellwrosen in #4910
- Fix jit
zlib-deflate
by @dolio in #4961 - Unison local Definition Diffs API by @ChrisPenner in #4964
- Definition Diff machinery by @ChrisPenner in #4766
- tweak: make upgrade-failed branch name more informative by @mitchellwrosen in #4974
- tweak: make
prependUtf8
create file if it doesn't exist by @mitchellwrosen in #4973 - feat: make
pull
call newmerge
instead of oldmerge
by @mitchellwrosen in #4966 - tweak: slightly improve
help lib.install
by @mitchellwrosen in #4972 - Remove unused incoming hashes event by @ChrisPenner in #4991
- improve
push
output by @mitchellwrosen in #4990 - Fix delete namespace dependents check by @ChrisPenner in #4998
- bugfix:
lib.install
couldn't install something from a project with a dash in its name, like@unison/uri-parser
by @mitchellwrosen in #4999 - update cachix actions to latest by @aryairani in #5001
- update workflows for lib.install by @aryairani in #5002
- Remove unused
Unison.Util.Convert
module by @sellout in #5005 - cleanup: delete a bunch of patch manipulation commands by @mitchellwrosen in #5008
- Repair the Nix flake by @sellout in #4923
- Add an EditorConfig config by @sellout in #5015
- Remove support for Git push/pull and gists by @ChrisPenner in #5013
- bug(?)fix: relax lca merge preconditions by @mitchellwrosen in #5020
- Avoid printing/parsing numbered args by @sellout in #4962
- Docs name by @sellout in #5012
- Remove
Reference
fromStructuredArgument
by @sellout in #5019 - Type the
main
arg toexecute
by @sellout in #5003 - make
auth.login
visible by @aryairani in #5028 - Update .mergify.yml by @aryairani in #5029
- feat: add
upgrade.commit
command by @mitchellwrosen in #4977 - improve merge precondition violation output messages by @mitchellwrosen in #5032
- only use iohk cache on linux by @aryairani in #5033
- Restrict
NameSegment
operations by @sellout in #5010 - Add a Nix formatter and run it by @sellout in #5035
- Remove flake-compat flake input by @sellout in #5037
- Fix branch invariants by @ChrisPenner in #5027
- Run Cabal test-suites as Nix checks by @sellout in #5036
- improve upgrade failure message by @mitchellwrosen in #5039
- tweak pull-related error messages by @mitchellwrosen in #5046
- pass --ui flag in default launcher by @aryairani in #5048
- Fix a few minor typos in InputPatterns.hs by @atroche in #5038
- Add a transcript illustrating that #1532 is fixed by @sellout in #5042
- the
--ui
flag conflicts with commands, liketranscript
by @aryairani in #5050
New Contributors
Full Changelog: release/0.5.20...release/0.5.21