Skip to content

Releases: unisonweb/unison

release/M1k

25 Apr 13:48
5edab66
Compare
Choose a tag to compare
release/M1k Pre-release
Pre-release

A quick bugfix for new M1j installs that also slurped up two other recent PRs. 😬

New features:

  • Some more bitwise operations on Int/Nat (#1456, thanks @stew!)

Fixes:

  • correct the suggested url for pulling base (#1463)
  • copy.patch src dest was actually moving dest to src (#1458)

release/M1j

21 Apr 20:29
02dc4f5
Compare
Choose a tag to compare
release/M1j Pre-release
Pre-release

Thanks to @pete-ts, @noahhaasis, @stew, and @atacratic for their contributions to this release!

New features:

  • delete.term-replacement and delete.type-replacement commands (#1360)
  • create.author command (#1400)
  • dependents, dependencies, debug.file commands (#1401)
  • suffix-based name resolution for view/display (#1241)
  • six new operations: ##Int.shiftLeft, ##Int.shiftRight, ##Int.pow, ##Nat.shiftLeft, ##Nat.shiftRight, ##Nat.pow (#1427)
  • support for default metadata in .unisonConfig (#1432)

Changed behavior:

  • builtins.merge no longer includes the contents of IOSource.hs; use builtins.mergeio to get everything (#1411)

Fixes for:

  • a crash in the auto-completion for push (#1374)
  • a bug that caused update to produce too many updates (#1382)
  • reduce the amount of git output belched out by push/pull (#1387)
  • putSymbol growing hidden variable names with each reproduction (#1389)
  • unnamed transitive dependencies were not being included on push (#1317)
  • transcripts now show the output of a failing stanza, even if it was hidden (#1345)
  • a bug in decompiling Bytes values (#1428)
  • pretty-printing non-ascii chars (#1437)
  • many message & formatting improvements (#1372, #1403, #1405, #1407, #1424, #1425, #1440)
  • pull importing more than necessary of the remote repo (#1439)

Speed improvements:

  • ucm starts up a bit faster (#1411)
  • new caching for git operations (#1439)

release/M1i

12 Mar 21:08
a9ebca8
Compare
Choose a tag to compare
release/M1i Pre-release
Pre-release

Thanks (in no particular order) to @pete-ts, @mitchellwrosen, @bontaq, @atacratic, @anovstrup, @pt2121, @anchpop, @Dandandan, @moses-alexander, for your contributions to this release!

New features:

  • new pull-request.create and pull-request.load commands to support PR workflows (#1328, #1197, #1209)
  • new alias.many command lets you copy multiple definitions' relative names at once to a destination namespace. (#1236)
  • new back command to jump to the namespace you last cded from. (#1294)
  • add :hide:all option for unison and ucm fences in transcripts (#1167)
    allow

Changed behavior:

  • changed case/of syntax to match/with (#1214)
  • link and unlink argument order has flipped from link <metadata> <definition> to link <def1> [<def2> ...] <metadata> (#1208, #1127)
  • add LambdaCase style cases syntax to replace x -> case x of (#1192)
  • improve argument support for alias.type/alias.term/replace.type/replace.term (#1334)

Fixes:

  • fix issue where a command that makes changes all over the namespace creates many history entries instead of one consolidated one (#1225, #1333), reverting #1085 for better or worse 😬
  • remove term names from evaluation output in Docs (#1307)
  • fix accidental deletion of history for empty namespaces (#1337)
  • fix a pair of bugs that created and then couldn't cope with a loop in the namespace history (#1279)
  • some obvious speed fixes for push and pull (#1281, #1302)
  • allow add/update to create aliases without a big fuss (#1254)
  • don't cry about previously known constructors (#1352)
  • error messages and output message improvements (#1122, #1163, #1164, #1170, #1187, #1222, #1223, #1227, #1331 )
  • pretty-printing fixes (#1159, #1171, #1180, #1278)
  • fix a runtime bug that was causing issues with large lists (#1183)
  • unique type hashes are chosen with a deterministic seed when running transcripts, for deterministic transcript output (#1237)

release/M1h

20 Jan 14:36
5040c20
Compare
Choose a tag to compare
release/M1h Pre-release
Pre-release

Thanks (in no particular order) to @atacratic, @TomasMikula, @mitchellwrosen, @pt2121, @noahhaasis, @alvaroc1, @int-index, @matthewess, @anovstrup, and @pete-ts, for your contributions to this release!

New features:

  • Native Nat.toFloat (#1012)
  • add bug : a -> b and todo : a -> b builtins, which print their arguments and terminate (#881)
    (todo calls will probably show up in the todo ucm output in not too long)
  • Combined delete command (#1036) (no longer need to distinguish between terms and types)
  • show branch diff after delete (#1068)
  • add load command to manually load a .u file into ucm (#1099)
  • added pretty-printer support for Doc literals (#994)
  • added diff.namespace command which prints the diff between two namespaces (#1064).
    the new diff output is also used now by relevant existing commands.
  • the codebases that result from running a unison transcript are now only saved if the -save-codebase flag is passed to the transcript command. (#1155)

Changed behavior:

  • handle e with h syntax (#1159) instead of current handle h in e.
    fun fact: your existing code automatically reflects this syntax change 🎉
  • read .unisonConfig from the directory that the codebase is in (i.e. your home dir) (#1031)

Fixes:

  • Fixed pretty-printing of Char when it is part of a pattern (#1008)
  • Hopefully more rebust debouncing logic for file events (#1019)
  • Update propagation algorithm fixes (#996)
  • Rendering cleanup in names output (#1002)
  • Fixed term printer for delayed bindings (#1007)
  • fixed hashing issue for some effectful functions (#1020)
  • suppress welcome message when using ucm run (#1057)
  • add POSIX compilant ctrl-c handling (#912)
  • better typechecking message when .u file contains multiple definitions with the same name (#1077)
  • fix delete tab completion wasn't including types (#1076)
  • speed up todo output if there is nothing to do (#1088)
  • fix issue with cleaning up emptied branches (#1090)
  • clear cached typechecked file on parsing/typechecking error (#1138)
  • fix crash when current dir contains broken symlinks (#1144)

M1g

26 Nov 16:55
3d9e482
Compare
Choose a tag to compare
M1g Pre-release
Pre-release
  • Fix regression around pushing to new git repos, (sorry! #971)
  • Parsing and pretty-printing now use shortest unique suffix to identify definitions (#963) — you can use Nat instead of .base.Nat when you only have one Nat!
  • Renamed resolve.term and resolve.type command to replace.term and replace.type (#988)
  • Some compiler cleanup (thanks @TomasMikula! #941)

M1f

15 Nov 06:39
bd4e3a7
Compare
Choose a tag to compare
M1f Pre-release
Pre-release

Point release in the M1 series. No codebase format changes.

  • Doc type with some special rendering in UCM (#914)
  • Change push/pull syntax to support remote Unison paths (#935)
  • First class links / references as Unison values (#901)
  • Typechecking bugfixes (#942, #947; Thanks @TomasMikula #924, #925, #932)
  • Codebase cleanup (Thanks @TomasMikula #887, #900, #907, #925, and @seagreen #934)
  • Better propagation of types (#889)
  • Numbered range args (#944)
  • Transcript error blocks fail only if all subcommands fail (#946)
  • Reflog cleanup (#951)
  • Parsing and pretty-printing use shortest unique suffix to identify definitions (#963)

M1e

29 Oct 21:21
Compare
Choose a tag to compare
M1e Pre-release
Pre-release

(Let me know if I missed something!)

M1d

14 Sep 17:07
Compare
Choose a tag to compare
M1d Pre-release
Pre-release

Point release in the M1 series. No codebase format changes.

M1c

06 Aug 22:14
47af61b
Compare
Choose a tag to compare
M1c Pre-release
Pre-release

Point release in the M1 series. No codebase format changes.

Fixes #668, an infinite loop if search results include a type name that referred to more than one definition, a name conflict which can occur after merging two namespaces.

Pro tip: If you are upgrading from earlier in the M1 series, and end up in a situation where you have to choose between getting rid of List##List and List##Sequence, get rid of List##List. Sorry about that.

M1b

06 Aug 18:12
Compare
Choose a tag to compare
M1b Pre-release
Pre-release

Point release in the M1 series. No codebase format changes. Recommended action is to pull latest unisonbase after upgrade:

.> cd .
.> pull https://github.com/unisonweb/unisonbase.git

Fixes:

  • #645, thanks to @zenhack for spotting!
  • unisonbase had an incorrect mapping for List type name: List a should be a synonym for [a] but it wasn't in unisonbase.
  • Minor lexing / parsing fixes when nesting ! and ' prefix operators.