Commit Graph

5893 Commits

Author SHA1 Message Date
Paul Chiusano
2d9e1f1892
Merge pull request #1416 from unisonweb/topic/tests-transcripts-nonoverlapping-source-dirs
split `tests` and `transcripts` into nonoverlapping source directories
2020-04-10 17:24:40 -04:00
Arya Irani
88631dc0f2 split tests and transcripts into nonoverlapping source directories 2020-04-10 13:17:41 -04:00
mergify[bot]
31e19f32eb
Merge pull request #1411 from unisonweb/topic/merge-builtins-on-merge-builtins
delay serializing IOSource definitions until `builtins.merge`
2020-04-09 21:57:24 +00:00
Arya Irani
0432f39b7f add builtins.mergeio example to the emptyCodebase.md transcript test 2020-04-09 17:52:04 -04:00
Arya Irani
6b2e2c376d Merge branch 'master' into topic/merge-builtins-on-merge-builtins
# Conflicts:
#	parser-typechecker/src/Unison/Codebase/FileCodebase.hs
2020-04-09 17:42:56 -04:00
Paul Chiusano
42f1ac2a4e
Merge pull request #1317 from unisonweb/topic/new-file-sync3
copy-based FileCodebase syncing and some other syncing fixes
2020-04-09 16:22:12 -04:00
Arya Irani
ad4a743988 fix a couple more bugs in decodeFileName and its tests
side note, #1383 didn't seem to be working for me in this module;
help, @pete-ts :)
2020-04-09 13:02:46 -04:00
mergify[bot]
b876c9e788
Merge pull request #1407 from pete-ts/transcript-for-metadata-ambiguous
Add a transcript testing the ambiguous metadata error
2020-04-09 00:11:02 +00:00
Arya Irani
ca76d3686b delay serializing IOSource definitions to codebase until builtins.merge
and actually not until `builtins.mergeio`.

I would have liked to delay typechecking in IOSource.hs altogether, but
it being forced somewhere that was not immediately obvious to me.

This shouldn't impact anyone who already has `.base` or some other copy
of the io primitives, and the upshot is saving some time on transcripts.

`builtins.merge` will give you everything that's in `Unison.Builtin` and
`Unison.Builtin.Decls`, `builtins.mergeio` will give you those plus the
stuff in `Unison.Runtime.IOSource`.
2020-04-08 19:34:43 -04:00
mergify[bot]
ddadb6c0c4
Merge pull request #1405 from noahhaasis/issue-1402
Fix #1402: Only display watch message if there're watch expressions
2020-04-08 18:31:56 +00:00
Arya Irani
81b6679bf3 update transcripts 2020-04-08 14:25:19 -04:00
mergify[bot]
f496288c93
Merge pull request #1345 from pete-ts/fix-1295-c
Failing transcripts should always show the failing stanza
2020-04-08 17:03:33 +00:00
Arya Irani
68407660a7 whitespace fixes 2020-04-08 12:49:29 -04:00
Arya Irani
d5e2cf656e Merge remote-tracking branch 'origin/master' into topic/new-file-sync3 2020-04-07 21:54:50 -04:00
Arya Irani
79803aac1c maybe bug if we stored patches in memory 2020-04-07 21:50:24 -04:00
Arya Irani
b7b00c3de7 one straggler 2020-04-07 21:23:06 -04:00
Arya Irani
35b40f0fda more comments 2020-04-07 21:19:35 -04:00
mergify[bot]
e7fd115eeb
Merge pull request #1401 from unisonweb/topic/dependents-dependencies-debug.file
implement `dependents <x>`, `dependencies <x>`, and `debug.file`
2020-04-08 00:27:30 +00:00
Arya Irani
8438c3a7d8 add column headings and transcript for dependents/dependencies 2020-04-07 20:21:33 -04:00
Arya Irani
b759a74a76
Merge pull request #1400 from unisonweb/topic/create.author
implement `create.author` command
2020-04-07 20:11:50 -04:00
Arya Irani
62017ce127 Merge branch 'master' into topic/new-file-sync3 2020-04-07 19:40:47 -04:00
Arya Irani
4f26961071 rename FC.exists to FC.codebaseExists, since it was often not qualified 2020-04-07 19:36:22 -04:00
Arya Irani
d76339f083 got unit test running all three syncs, and fixed more bugs.
- shuffled and cleaned up imports and exports in FileCodebase
- made codebasePath a hidden implementation detail of FileCodebase
- tweaked decodeFilename in probably unreachable case
- eliminated redundant codebase initialization
2020-04-07 19:29:29 -04:00
pete-ts
0daeea86d4 Adds a transcript testing the ambiguous metadata error 2020-04-07 22:03:09 +01:00
Arya Irani
e99f0a37b2 switch Intrinsic to External for ucm-generated author terms 2020-04-07 15:48:31 -04:00
Noah Haasis
24bf19e4a6 Only display watch message if there're watch expressions 2020-04-07 08:30:36 +00:00
Arya Irani
9168d74e20
Merge branch 'master' into topic/dependents-dependencies-debug.file 2020-04-06 15:09:49 -04:00
Paul Chiusano
93e32d84c6
Merge pull request #1403 from unisonweb/topic/fork-empty-namespace
improve two error messages when forking
2020-04-06 14:03:59 -04:00
Arya Irani
bbca5b9bfe fix a couple of filecodebase bugs:
- CopyFilterIndex:
  - not including transitive dependents in the indices
  - not calling `decodeFileName`
  - `decodeFileName` incorrectly handling strings with $ later
  - accidentally calling `doesDirectoryExist` instead of `doesFileExist`
- CopyRegenerateIndex:
  - accidentally calling `doesDirectoryExist` instead of `doesFileExist`
  - wasn't calling `Type.removeAllEffectVars` before indexing type
2020-04-06 00:43:38 -04:00
Arya Irani
0124b84b7f improve two error messages when forking
probably could be improved further by distinguishing
Branch.isEmpty vs Branch.isEmpty0
2020-04-05 02:15:47 -04:00
Arya Irani
291eb8ba07 two syncToDirectory fixes, and a test 2020-04-05 02:07:44 -04:00
Arya Irani
9aa04b5d18 remove self-references from dependencies output 2020-04-04 01:13:45 -04:00
Arya Irani
85700b338a Merge remote-tracking branch 'origin/topic/dependents-dependencies-debug.file' into topic/dependents-dependencies-and-debug.file 2020-04-03 23:35:25 -04:00
Arya Irani
dce53a903c fix the parse fail help message for dependent / dependencies 2020-04-03 23:03:33 -04:00
Arya Irani
c7c79b0e05 fixed "Non-exhaustive patterns in record update" 2020-04-03 23:02:06 -04:00
Arya Irani
d64a231988 implement dependents <x>, dependencies <x>, and debug.file 2020-04-03 21:50:24 -04:00
Arya Irani
766f2403db implement dependents <x>, dependencies <x>, and debug.file 2020-04-03 21:21:02 -04:00
Arya Irani
5bfe950850 hide some transcript output 2020-04-03 20:57:10 -04:00
Arya Irani
b73b2c8fa2 implemented create.author command
closes #1392
2020-04-03 20:49:07 -04:00
Paul Chiusano
361895f8ab
Merge pull request #1389 from unisonweb/fix/1388
Fix issue with `putSymbol` which resulted in extra numbers getting appended to the name on each round trip
2020-04-03 10:18:49 -04:00
Paul Chiusano
7a6b411e97 Ensure fresh var isn't old either
Not positive this is needed, but also not positive it isn't needed, and not harmful to do
2020-04-02 23:05:58 -04:00
Paul Chiusano
a0fb28c1a5 Fix #1277 and add unit test
Also reverted incorrect ABT Eq instance. Need to rename both Abs to bring the names into alignment
2020-04-02 22:48:42 -04:00
Arya Irani
ebc811376e push transitive dependencies in all 3 sync algorithms; + lots of cleanup 2020-04-02 00:51:03 -04:00
Arya Irani
28dd5a4b15 Split out these three git syncing algorithms from FileCodebase;
Put most into FileCodebase.Common due to cyclic imports.
Would like to do a tighter cleanup, but too hard.

When we're under less pressure, we could do proper benchmarks of these
with Criterion or something, my hand-done results have been confusing.

For #1385 (missing dependencies on push), I think we should use an
approach like the new sync algorithms use, where we use State to collect
dependencies as we traverse the Branch.

I will add the fix to all three, and then I think we can merge this even
though we will still be using the old algorithm for now.
2020-04-01 09:28:17 -04:00
Paul Chiusano
dcd0d331f3 Added unit test which fails without this fix 2020-03-31 20:32:11 -04:00
Paul Chiusano
3c396c5d92 Fix #1388
After fixing this, some serialization round trip tests started failing. This ended up being due to the Eq instance for ABT being busted due to its use of rename, which has a subtle variable capture bug that @dolio spotted a while ago https://github.com/unisonweb/unison/issues/1277 #1277 needs a proper fix but in the meantime, I've tweaked the Eq instance to be a bit more efficient and also avoid the #1277 bug in this particular case.
2020-03-31 19:06:18 -04:00
Arya Irani
9a8a5dc4fc Merge remote-tracking branch 'origin/master' into topic/new-file-sync3+ 2020-03-31 09:43:02 -04:00
Arya Irani
a555c854eb added a 3rd FileCodebase sync algorithm;
split out the three algorithms into three files, because too big file.
could probably stand to factor out commonalities.
2020-03-31 09:42:42 -04:00
Rúnar
050d309d2b
Merge pull request #1387 from unisonweb/topic/fix-local-git-repo
four git ux fixes
2020-03-30 14:03:21 -04:00
Arya Irani
6b57a1d12a Merge remote-tracking branch 'origin/topic/fix-local-git-repo' into topic/new-file-sync3+ 2020-03-29 13:44:31 -04:00