Releases: unisonweb/unison
Releases · unisonweb/unison
Development Build (trunk)
Commits
- 29dd8cb: split pattern parser into parsing and name resolution steps (Mitchell Dalvi Rosen) #5657
- c3ced32: don't rollback parser state on constructor name binding error (Mitchell Dalvi Rosen) #5657
- 4d21526: misc cleanup (Mitchell Dalvi Rosen) #5657
- 73f815b: add transcript (Mitchell Dalvi Rosen) #5657
release/0.5.37
What's Changed
Features:
- You can now sync a branch to or from a local file (
sync.to-file
,sync.from-file
), or from another local codebase (sync.from-codebase
).
Faster:
- The improved Share sync protocol is now the default!
- The runtime uses native implementations for
data.Map
from@unison/base
. - Type-checking is no longer queued up on scratch file save; only the most recent version is type-checked.
Fixes:
- a crash during kind checking
- a naming issue in merge
- a startup crash when other UCMs are open
- some definitions were incorrectly left out of the scratch file during a merge
All PRs Since Last Release
- Set SyncV2 as the default protocol by @ChrisPenner in #5602
- Fix a problem with type lookups in certain kind checking scenarios by @dolio in #5603
- bugfix: merge name-pick bug by @mitchellwrosen in #5605
- fix transcripts currently failing on trunk by @aryairani in #5607
- abort build if no success after all the retries by @aryairani in #5608
- better to loop on building dependencies than on
unison
by @aryairani in #5611 - Mark apply1 inline by @dolio in #5616
- remove compromised action by @aryairani in #5628
- fixes to the "human diff" calculation in merge algo by @mitchellwrosen in #5601
- pin external github actions by @aryairani in #5630
- Re-enable “Nix development cache” workflow by @sellout in #5625
- Run downloading, unpacking, and saving in parallel for serialized syncs by @ChrisPenner in #5593
- Add missing type key to HashJWTClaims by @ChrisPenner in #5624
- Don't crash on port binding failures by @ChrisPenner in #5626
- Make sync commands Visible by @ChrisPenner in #5623
- Add a mechanism for swapping builtin implementations for unison code by @dolio in #5627
- merge bugfixes by @mitchellwrosen in #5621
- Document how to replace data types/functions by @dolio in #5634
- tweak: dont enqueue filesystem events by @mitchellwrosen in #5631
Full Changelog: release/0.5.36...release/0.5.37
release/0.5.36
What's Changed
- 10-25% speedup on various operations in the interpreted runtime
- show full names in
dependencies
anddependents
output - fixed a pretty-printing error with multiline strings that include carriage returns
- fixed a bug preventing
Value.value
from being used in a test, and improved error messages around such cases - improved pretty-printing of eta-expanded terms (
f |> g
vsf |> (_eta -> g _eta)
) - fixed a display bug when expanding numbered args after
ls
All PRs since last release
- Allow Value.value in test sandbox by @ceedubs in #5584
- Show the names of tests that fail sandbox violation by @ceedubs in #5585
- Modify the fix-2805 transcript to use return type by @sellout in #5586
- update transcripts by @aryairani in #5587
- Implement more lax JWT decoder by @ChrisPenner in #5583
- Parameterize
Split
by @sellout in #5523 - add unison-util-recursion as dependency of unison-share-api by @mitchellwrosen in #5590
- Eta-reduce unsightly "_eta" expanded terms before pretty-printing by @runarorama in #5589
- Bump ubuntu runner images to ubuntu-24.04 due to deprecation by @ChrisPenner in #5591
- show full names in
dependents
output by @mitchellwrosen in #5573 - use Path.toText instead of tShow (fixes #5594) by @mitchellwrosen in #5595
- add transcript with
edit.namespace
output forbase
andhttp
by @aryairani in #5361 - remove quadratic limitation on counting quotes by @aryairani in #5599
- Clean up interpreter primops by @dolio in #5598
- use full names in
dependencies
output by @mitchellwrosen in #5600
Full Changelog: release/0.5.35...release/0.5.36
release/0.5.34
What's changed
- Fixed a migration issue in 0.5.33 that prevented users from migrating from ucm versions earlier than 0.5.25 #5581
- Fixed an issue where arguments that parse as numbers can't be passed to
run
#2805 - Fixed an issue with
unison :error
blocks in transcripts #5575 - Fixed a crash with
use
in scratch files #4536
All PRs since last release
- CI runner names maybe case-sensitive now by @aryairani in #5577
- Adds FromJSON instances to enable Share Persistent JSON caching. by @ChrisPenner in #5576
- transcripts: Reset error state for all blocks by @sellout in #5579
- Decl printing cleanup by @ChrisPenner in #5578
- add ACTIONS_CACHE_SERVICE_V2: true by @aryairani in #5580
- bugfix: require relative names in import{Wordy,Symboly}Id by @mitchellwrosen in #5568
- Allow UCM commands to have “unprocessed” arguments by @sellout in #5549
- Don't use last_accessed column in migrations prior to version 18 by @ChrisPenner in #5582
Full Changelog: release/0.5.33...release/0.5.34
release/0.5.33
What's New
Changes:
names
command can now search for multiple names (thanks @xmbhasin!)- fzf completion of branches by recency
Fixes:
- Fixes a bug where LSP wouldn't refresh results properly after a merge failure
- Fixes a bug where UCM would sometimes report an
ExitSuccess
exception - Fixes a bug that was causing some docs to fail to render in UCM and on Share.
Under the hood:
- Under-the-hood runtime improvements
- Under-the-hood work towards much faster downloads from Share
- Under-the-hood work towards better diffs on Share
- Under-the-hood work for UCM Desktop
All PRs Since Last Release
- Various improvements to EasyTest expectations by @sellout in #5541
- Change interpreter calling conventions to be more direct by @dolio in #5542
- bugfix: call lspCheckForChanges in more places, such as after a failed merge by @mitchellwrosen in #5545
- Bump
@unison/runtime-tests
to version0.0.3
by @dolio in #5547 - allow threads to die with ExitSuccess without printing a message by @mitchellwrosen in #5548
- CLI names command can search for multiple names by @xmbhasin in #5521
- pin
awalsh128/[email protected]
by @aryairani in #5552 - Allow syncing to/from a local file by @ChrisPenner in #5543
- Project List API updates for UCM Desktop by @ChrisPenner in #5553
- Sort switch fzf by recency by @ChrisPenner in #5555
- Rework data pattern matching to use default cases by @dolio in #5557
- Fix flaky transcript by @ChrisPenner in #5559
- add cloud tests to release steps by @aryairani in #5560
- update release-steps.output.md by @aryairani in #5561
- Fix a variable capture during pattern desugaring by @dolio in #5562
- Misc changes to support 3-way diff on Share by @mitchellwrosen in #5567
- Updates to Merge2 for Share by @ChrisPenner in #5287
- Flakiness fix... again by @ChrisPenner in #5569
- Add SyncV2 protocol by @ChrisPenner in #5513
- Add SyncV2 Causal Negotiation by @ChrisPenner in #5570
- Fix a problem with pre-evaluation in the sandboxed runtime by @dolio in #5574
Full Changelog: release/0.5.32...release/0.5.33
Development Build (pattern-compilation-pr-5557)
Merge pull request #5557 from unisonweb/topic/pattern-compilation Rework data pattern matching to use default cases
release/0.5.32
What's new
- fix regression in Failure equality
- make
view Float.mod.doc
not crash
All PRs since last release
- Ensure units are all created with matching tags by @ChrisPenner in #5534
- bugfix: make
view Float.mod.doc
not crash by @mitchellwrosen in #5533 gh workflow run
seems to want the file extension in v2.55.0 by @aryairani in #5529
Full Changelog: release/0.5.31...release/0.5.32
release/0.5.31
What's Changed
- Runtime speedups! (2–6x faster for certain workloads)
- New
edit.dependents
command! - Output improvements!
- Bug fixes!
- round trip failure in which local vars could shadow references to external definitions
add
/update
in presence of crashing watch expressionnamespace
directive churning unique types- running a program that returned a type that hadn't been added
setEcho
builtin didn't work
- "Known failure" transcripts allow us to capture failure behavior before it's fixed.
All PRs since last release
- feat: add
edit.dependents
by @mitchellwrosen in #5466 - Add instructions for DropN, truncate0, and Refs by @ChrisPenner in #5447
- Remove packing for bools. by @ChrisPenner in #5449
- Revert Ref.read Ref.write to untracked because they're shared between IO and Scope interfaces. by @ChrisPenner in #5474
- tweak: make update output use console regions by @mitchellwrosen in #5479
- Fix triggering of Worker Wrapper optimization on Stack by @ChrisPenner in #5468
- Reduce allocations by optimizing branching and black holes by @ChrisPenner in #5492
- Codebase Server: remove the generated port and token by @hojberg in #5461
- Remove my unnecessary pattern functor for
Cofree
by @sellout in #5500 - Add support for “known failures” to transcripts by @sellout in #5394
run
should use theTypeLookup
from the file too by @aryairani in #5483- cleanup: generate unique type guids only when necessary by @mitchellwrosen in #5491
- bugfix: allow add/update in presence of crashing watch expression by @mitchellwrosen in #5493
- Add missing INLINE's on EnumContainers by @ChrisPenner in #5499
- Do reference-based pruning for ucm compile, turn back on inlining by @dolio in #5507
- Static Foreign Calls by @ChrisPenner in #5495
- Add Repobeats. Git repository stats by @hojberg in #5510
- bugfix: make namespace directive not churn unique types by @mitchellwrosen in #5509
- Add missing Ord instances for diffs. by @ChrisPenner in #5505
- bugfix: don't omit leading dot in certain term references by @mitchellwrosen in #5498
- add shell-based regression-tests by @aryairani in #5512
- add runOnly support for unison-syntax tests by @bbarker in #5514
- Improve error messages on CLI HTTP request errors by @xmbhasin in #5519
- Fix old bool wrapper on setEcho builtin by @ChrisPenner in #5526
- bugfix: fix rendering of certain variables that erroneously got a leading dot by @mitchellwrosen in #5528
New Contributors
Full Changelog: release/0.5.29...release/0.5.30
Development Build (interp-inlining)
Development Build (inlining-experiments)
Commits
- 7243c01: Turn inlining back on, but avoid inlining ability requests (Dan Doel)
- 4cd758c: Remove over-saturation inlining case (Dan Doel)
- d099352: Allow requests to be inlined (Dan Doel)
- 4530621: Add a coherence check to inlineInfo (Dan Doel)
- 7829875: Re-enable oversaturated inlining (Dan Doel)
- ee13ecb: Try making inlining an identity substitution (Dan Doel)
- 8d3761f: Fix for warnings in experiment (Dan Doel)
- 58e64e2: Turn inlining back to normal, but disable call optimization (Dan Doel)
- c1418bc: Re-enable Call instructions (Dan Doel)
- 06ec263: Cut off inlining after one occurrence (Dan Doel)
- 986337a: Add tracing to the inliner (Dan Doel)
- 50e5ae5: Add a trace message when a suspiciously inlinable handle might be generated (Dan Doel)