Eduard Nicodei
456b8e635a
fix warning: add missing Functor
2024-07-15 18:21:52 +01:00
Eduard Nicodei
6ed06f3089
Merge remote-tracking branch 'origin/trunk' into merged-ghc-upgrade-try-2
2024-07-15 18:21:33 +01:00
Arya Irani
ce5c9feb6e
Merge pull request #5220 from unisonweb/cp/keep-current-branch
2024-07-12 23:21:22 -04:00
Arya Irani
264a31a956
Merge pull request #5218 from unisonweb/lsp/fix-unused-binding-locs
2024-07-12 23:20:13 -04:00
Chris Penner
0dc7b6d3ab
Reset user to project root if they were on a sub-namespace.
2024-07-12 17:00:45 -07:00
Chris Penner
df0261c8d8
Keep most recent path and branches through migration to version 17
2024-07-12 16:54:42 -07:00
Chris Penner
11208f5284
Add unused binding test
2024-07-12 14:48:18 -07:00
Chris Penner
5652c179fc
Compiling with lamda annotations
2024-07-12 11:15:21 -07:00
Dan Doel
a010a8a2d7
Use builtin reference names in foreign decompiling
...
E.G. print <Promise> instead of <Foreign>
2024-07-12 13:23:52 -04:00
mergify[bot]
be7e6cb2ff
Merge pull request #5041 from unisonweb/cp/project-root
...
Project Roots
2024-07-11 20:45:11 +00:00
Chris Penner
474fddbd13
Use a branch root semispace cache
2024-07-11 10:30:03 -07:00
Chris Penner
987cd61976
Swap branch-relative-paths back to relative
2024-07-11 09:49:55 -07:00
Dan Doel
c2958cca28
Use pretty text in MsgTrace case of debug toText
2024-07-11 12:09:41 -04:00
Arya Irani
0cd3cd1cff
Merge branch 'trunk' into cp/project-root
...
# Conflicts:
# unison-cli-integration/integration-tests/IntegrationTests/transcript.output.md
# unison-src/transcripts-round-trip/main.output.md
# unison-src/transcripts/add-run.output.md
# unison-src/transcripts/bug-strange-closure.output.md
# unison-src/transcripts/cycle-update-5.output.md
# unison-src/transcripts/delete.output.md
# unison-src/transcripts/diff-namespace.output.md
# unison-src/transcripts/move-namespace.output.md
# unison-src/transcripts/name-selection.output.md
# unison-src/transcripts/names.output.md
# unison-src/transcripts/namespace-dependencies.output.md
# unison-src/transcripts/propagate.output.md
# unison-src/transcripts/reflog.output.md
# unison-src/transcripts/reset.output.md
# unison-src/transcripts/tab-completion.output.md
# unison-src/transcripts/transcript-parser-commands.output.md
2024-07-10 23:49:04 -04:00
Arya Irani
9b11d96cbb
Merge pull request #5177 from unisonweb/24-07-01-todo-merge-precondition-violations
2024-07-10 13:28:59 -04:00
Chris Penner
951f31867d
preload branches into the branch cache when switching projects
2024-07-09 15:54:22 -07:00
Chris Penner
736ccf1434
Merge trunk
2024-07-09 15:47:12 -07:00
Chris Penner
e506b009ed
No in-memory branch in loop-state
2024-07-09 12:59:27 -07:00
Paul Chiusano
2c1a0485f7
Don't use DelayForceChar as syntax style for blah.default()
2024-07-09 15:17:46 -04:00
Chris Penner
ee6793bd27
Attempt to fix Unused Binding locations
2024-07-09 09:52:12 -07:00
Chris Penner
5e775ccf7b
Improve docs
2024-07-08 11:55:52 -07:00
Chris Penner
8a405e02d2
Update reflog command WIP
2024-07-03 16:43:34 -07:00
Chris Penner
2db50ad848
Specialize 'fromHash' to CausalHash
2024-07-03 16:07:31 -07:00
Chris Penner
7f57612f90
More WIP on reflog commands
2024-07-03 15:54:48 -07:00
Chris Penner
a7820feeac
Deprecate root reflog behaviour in favour of project/branch reflogs
2024-07-03 11:52:52 -07:00
Chris Penner
cc07b63aff
Merge trunk
2024-07-02 15:37:49 -07:00
Mitchell Rosen
50f28817e5
add Names.lenientToNametree
2024-07-02 13:06:03 -04:00
Mitchell Rosen
b8e13ca0df
⅄ move-nametree → 24-07-01-todo-merge-precondition-violations
2024-07-02 12:33:00 -04:00
Mitchell Rosen
eb1ee64cf2
merge unison-util-nametree into unison-core1
2024-07-02 12:23:34 -04:00
Mitchell Rosen
f0c53eed28
show "defs in lib" merge precondition violation in todo
output
2024-07-02 11:39:11 -04:00
Chris Penner
38d60e7e6e
Switch project before deleting it
2024-07-01 14:30:01 -07:00
Chris Penner
dadc4e476b
Merge trunk and resolve basic conflicts
2024-07-01 14:29:32 -07:00
Chris Penner
563e14806f
Resolve conflicts with trunk
2024-06-27 12:35:14 -07:00
Chris Penner
e94f8706fc
Remove Primes from module names
2024-06-27 12:16:53 -07:00
Eduard Nicodei
95a0eb95f9
cleanup cabal
2024-06-27 17:04:14 +01:00
Eduard Nicodei
a35d70646f
Use GHC.IsList
2024-06-27 17:04:02 +01:00
Chris Penner
61e0522d1e
Fix redundant liftA2 imports
2024-06-26 18:01:45 -07:00
Chris Penner
4a9b35867c
Swap from x509 to crypton-x509 since old packages are abandoned
2024-06-26 17:51:48 -07:00
Chris Penner
2d1bf19a65
Mostly Upgrade LTS to ghc 9.6.5
2024-06-26 17:19:01 -07:00
Greg Pfeil
2faa425d76
Merge remote-tracking branch 'upstream/trunk' into numbered-test-results
2024-06-26 14:58:25 -06:00
Greg Pfeil
77b46bce29
Eliminate Path.unsafeToName
...
In every case, this was being used in conjunction with `unsplitHQ`. So
this replaces `unsplitHQ` with `nameFromHQSplit`, which avoids
converting the `Split` to a `Path` in the middle.
2024-06-26 14:44:42 -06:00
etorreborre
3556cb6ec8
fix: fix the textual representation of an ordinal number
2024-06-26 17:34:45 +02:00
Arya Irani
1e72750bb1
Merge pull request #5133 from unisonweb/fix/5129
2024-06-25 16:23:14 -04:00
Arya Irani
769cbbd003
Merge pull request #5106 from neduard/ghc-964-updates-part-1
2024-06-25 16:20:47 -04:00
Dan Doel
34877da01c
Don't relax type when doing an instantiateL during subtyping
...
This is the case of `a < T` for some structured T. By relaxing, we are
actually allowing `a` to be a _supertype_ of T as far as abilities go,
which is not correct. Seems like it was just erroneously mirrored from
the opposite case.
2024-06-25 15:54:10 -04:00
aryairani
382cdacb9f
automatically run ormolu
2024-06-25 19:33:39 +00:00
Arya Irani
627acb7f3a
Update parser-typechecker/src/Unison/PatternMatchCoverage/Solve.hs
2024-06-25 15:33:22 -04:00
Chris Penner
1f34de9026
Swap stepAt combinators to use project paths
2024-06-25 10:23:11 -07:00
Chris Penner
1cbac288de
Fix unique type guid generation
...
Adds getMaybe* versions of shallow branch combinators
2024-06-25 10:10:28 -07:00
Eduard Nicodei
364b7790ca
more s/forall/forAll/
2024-06-25 12:29:13 +01:00
Eduard Nicodei
4453fda570
fix redundant pattern match warning
2024-06-25 10:06:26 +01:00
Eduard Nicodei
56874a6082
s/forall/forAll/ as it will become a restricted keyword
...
-Wforall-identifier
2024-06-25 10:06:26 +01:00
Eduard Nicodei
d745d24114
Trivial fixes
...
* trivial additions of functor
* limit imports to just used functions
* remove unnecesary imports
2024-06-25 09:11:25 +01:00
Paul Chiusano
97838c4883
Merge remote-tracking branch 'origin/trunk' into topic/force-syntax
...
# Conflicts:
# unison-src/transcripts-round-trip/main.output.md
# unison-src/transcripts-round-trip/reparses-with-same-hash.u
2024-06-24 18:53:04 -05:00
Chris Penner
8c2b6cfa99
Remove now unused namespaceRoot combinators
2024-06-24 14:25:56 -07:00
Chris Penner
5a6fe2084e
Migrate loose code into legacy project
2024-06-24 14:11:24 -07:00
Chris Penner
42619024de
Fix order of operations on codebase creation
2024-06-24 13:05:51 -07:00
Chris Penner
60f99c218a
Insert scratch branch after adding the causal hash table
2024-06-24 13:00:01 -07:00
Chris Penner
1c186d4d73
Merge trunk into cp/project-root
2024-06-24 12:50:36 -07:00
Arya Irani
7172bb8e4f
Merge pull request #5107 from unisonweb/24-06-13-revamp-todo
2024-06-24 12:08:27 -04:00
Arya Irani
67985204e5
Merge pull request #5108 from sellout/lexer-error-messages
2024-06-24 08:19:16 -04:00
Greg Pfeil
782ac4164d
Remove redundant ,
from lexer errors
...
Appositives only need to be offset by commas if there isn’t already some other punctuation.
2024-06-23 22:18:51 -05:00
Greg Pfeil
10d2622991
Remove unused error case
2024-06-23 22:09:51 -05:00
Eduard Nicodei
e806225540
Add group such that elements are concatenated without space
2024-06-22 18:09:28 +01:00
Arya Irani
6463e42f73
Merge pull request #5109 from sellout/path-haddock
2024-06-21 14:50:42 -04:00
Paul Chiusano
58818242a3
reduce scope of PR to just !foo
vs foo()
, refresh transcripts
2024-06-21 09:41:32 -05:00
Greg Pfeil
91dc53d246
Remove a very lawless type class
...
`Convert` mostly just hides some rather unsavory (but at least not
partial) mappings between types.
2024-06-21 08:00:51 -04:00
Greg Pfeil
6f26a16401
Add quoteCode
for printing errors
...
This both colorizes and wraps code in backticks, in order to separate it from surrounding context.
2024-06-20 21:40:07 -04:00
Paul Chiusano
d4a2ed9066
Switch to foo()
with no space as preferred syntax instead of !foo
2024-06-20 16:52:57 -05:00
Greg Pfeil
6ab0ebe8d7
Improve Haddock for Path
and Name
...
Added some simple docs and converted some comments to Haddock.
2024-06-20 14:32:26 -04:00
Greg Pfeil
caac3c47d7
Improve some lexer error messages
...
The message mentioned in #5060 was incorrect. This also uses the passed-
in `id` for that message and related messages (removing the reliance on
ANSI colors for conveying where the error is). And it adds a suggestion
on how to avoid the error.
It also does some minor adjustment of highlighting – styling individual
identifiers rather that a list of them.
Fixes #5060
2024-06-20 13:48:44 -04:00
Mitchell Rosen
1081a9835a
⅄ trunk → 24-06-13-revamp-todo
2024-06-18 13:20:20 -04:00
Dan Doel
a0527457a6
Implement custom Word64 delay
...
The builtin is specified to take a Nat, but Haskell's threadDelay
takes an Int. So the previous implementation was erroneously treating
large numbers as negatives and not sleeping at all. Instead we split
the wait into multiple delays for large numbers (although practically
the second delay won't be reached).
2024-06-18 12:26:25 -04:00
Mitchell Rosen
b3baee3ed8
make todo
show dependencies without names
2024-06-17 16:17:00 -04:00
Chris Penner
f192edbed4
Fix up migration quirks
2024-06-14 17:05:34 -07:00
Chris Penner
ff2c270fcf
Fix up a buncha sql
2024-06-14 16:42:57 -07:00
Chris Penner
6c115761c5
Split migrations into separate transactions
2024-06-14 15:41:50 -07:00
Chris Penner
cdf10c9621
Migration to port project branches to have causal ids.
2024-06-13 15:20:13 -07:00
Chris Penner
d53f26775c
Create scratch project during codebase creation
2024-06-12 15:06:53 -07:00
Chris Penner
95fd37ad3f
Bootstrap scratch project in migration
2024-06-12 13:00:32 -07:00
Chris Penner
7aabcf5d89
Fix up Execute
2024-06-12 12:39:33 -07:00
Chris Penner
23fd0a005b
Allow passing project and branch as starting path
2024-06-12 10:43:53 -07:00
Chris Penner
2863b668fa
Convert transcript parser to be project based
2024-06-12 10:08:49 -07:00
Chris Penner
815c1b1f1c
Auto-create project-branches referenced in transcript prompts ( #5077 )
2024-06-12 09:28:12 -04:00
Chris Penner
91527b6008
Merge trunk
2024-06-11 11:10:47 -07:00
Chris Penner
48371c021f
Propagate ProjectPath into CLI Main
2024-06-11 09:41:47 -07:00
Chris Penner
8138e61a2a
toText and output munging
2024-06-10 16:33:16 -07:00
Chris Penner
18cde10b98
WIP
2024-06-10 15:39:30 -07:00
Mitchell Rosen
e1802a1e2a
make edit.namespace
not put record accessors
2024-06-10 15:35:15 -04:00
Chris Penner
bcc39d879d
Remerge trunk
2024-06-10 10:24:37 -07:00
Chris Penner
0b16a7c9de
Fixup BranchId
2024-06-07 15:49:42 -07:00
Chris Penner
e65f6e1968
Remove ability to push loose code paths (local or on share)
2024-06-07 12:13:23 -07:00
Greg Pfeil
ce33057385
Refine Path-prefixing operations
...
This replaces `prefix :: Absolute -> Path' -> Path` with a couple
alternatives:
- `prefixAbs :: Absolute -> Relative -> Absolute`,
- `maybePrefix :: Path' -> Path' -> Maybe Path'`, and
- `prefix :: Path' -> Relative -> Path'`.
The previous `prefix` could fail to prefix (covered by either the new
`prefix` or `maybePrefix`, depending on whether you want to guarantee
success or capture failure), always threw away the knowledge that the
result was necessarily `Absolute` (covered by `prefixAbs`), and then
always returned an ambiguous result type (covered by all three
replacements).
Then it also provides `prefixRel` as the complement of `prefixAbs` (both
of which are used in the implementation of `prefix`).
Similar changes are made in the replacements for `prefixName :: Absolute
-> Name -> Name`. First, we don’t currently have absolute/relative
variants of `Name`, so we can generalize the first argument to `Path'`.
Then `maybePrefixName :: Path' -> Name -> Maybe Name` exposes the case
where prefixing can’t succeed, and `prefixNameIfRel :: Path' -> Name ->
Name` handles the common case of using the original `Name` if it can’t
be prefixed. Both of these new functions also preserve the `Position` of
the new `Name`, whereas the old implementation always returned a
`Relative` `Name`, despite knowing when it was `Absolute`. And
`prefixName2 :: Path -> Name -> Name` has been removed as there is no
ambiguous variant of `Name` (as `Split` is to `Split'`), so prefixing
with a `Path` isn’t particularly meaningful.
Finally, `nameFromSplit'` is added as a dual to `splitFromName'` to make
it possible to operate on the `Path'` portion of a `Name` without introducing partiality.
These new operations are then propagated through the code, and enable a
couple other type changes: `StructuredArgument.ShallowListEntry` and
`StructuredArgument.SearchResult` now take a `Path'` prefix rather than
the `Path.Absolute` and `Path` prefixes they took previously. This fixes
the absolute `Name` issue in `ls` results.
2024-06-06 23:53:00 -05:00
Chris Penner
36c63e42e9
Merge trunk
2024-06-05 13:50:53 -07:00
Chris Penner
5ad808c9bd
Update MoveTerm, MoveType, MoveBranch
2024-06-05 13:47:33 -07:00
Greg Pfeil
cab24bbb28
Remove partiality from hqSplitFromName'
...
This function previously converted the `Name` to a `Path'`, so
recovering the `Name` became partial. It now goes through `Split'`
instead of `Path'`, preserving the guaranteed segment.
2024-06-05 10:51:29 -06:00
aryairani
0247854e70
[create-pull-request] automated change
2024-06-04 18:34:00 +00:00
Chris Penner
c3a2dfb001
Don't include causalHashId in ProjectBranch
2024-06-04 10:09:02 -07:00
Chris Penner
3267a3e54c
Fix up Merge2
2024-06-03 16:54:58 -07:00
Chris Penner
4e2ccf23cc
Fix up some more root branch gets
2024-06-03 14:18:29 -07:00
Chris Penner
33458a8141
Fix LSP to work with projects
2024-06-03 14:12:46 -07:00
Chris Penner
2773153f97
Fix argparse for running 'main' within project
...
Add projectPath parser
2024-06-03 14:12:46 -07:00
Chris Penner
33610106ca
Fix up uses of root branch in Backend
2024-06-03 10:08:33 -07:00
Chris Penner
1d906b3765
Clean up uses of root in Codebase, kill the root branch cache
2024-06-03 10:02:57 -07:00
Chris Penner
0d80992da9
Remove root branch accessors from codebase
2024-06-03 09:49:47 -07:00
Chris Penner
965f36f7cb
Merge trunk
2024-06-03 09:36:30 -07:00
Chris Penner
8377f68545
merge trunk
2024-06-03 09:34:37 -07:00
Chris Penner
035f75ab36
Merge trunk
2024-06-03 08:44:11 -07:00
Greg Pfeil
5a7e001d7c
Merge remote-tracking branch 'upstream/trunk' into restrict-NameSegment
2024-05-31 15:43:27 -06:00
Greg Pfeil
ae70852257
Move sentinel segment names to Unison.NameSegment
...
They don’t belong in `Unison.Syntax.NameSegment` because they are not
part of the syntax – they are names stored in the codebase that need to
match regardless of the syntax used.
2024-05-31 14:11:51 -06:00
Chris Penner
63f32a6144
Merge!
2024-05-30 15:56:27 -07:00
Chris Penner
0dcbc126a1
Update all uses of internal branch0 fields
2024-05-30 15:41:56 -07:00
Chris Penner
6384038ee0
Don't expose Branch0 internals, (and add add lens utils to prelude)
2024-05-30 15:21:47 -07:00
Greg Pfeil
06c4b695f6
Type the main
arg to execute
...
This avoids throwing away the type information from `NumberedArgs` and just
generally gets text handling out of the domain logic.
2024-05-29 17:12:31 -06:00
Greg Pfeil
e9d2a21d8a
Merge remote-tracking branch 'upstream/trunk' into structured-numbered-args
2024-05-29 16:28:32 -06:00
Greg Pfeil
f8474ff457
Handle SCH
carefully in StructuredArgument
s
...
When `StructuredArgument`s are used as an input, preserve the entire hash. When
printed, take the length as an optional argument (and show the full hash when
unavailable).
2024-05-28 16:54:33 -06:00
Chris Penner
9756ac8c1e
WIP
2024-05-28 11:15:36 -07:00
Chris Penner
9de134f98b
Merge deletion of git commands into project-root
2024-05-28 11:15:36 -07:00
Chris Penner
62964ca2b6
Remove Sync22
2024-05-28 10:38:59 -07:00
Chris Penner
1b5c93da11
remove git push/pull
2024-05-28 10:09:52 -07:00
Chris Penner
457ca14a05
Allow updating branch heads
2024-05-28 09:23:13 -07:00
Arya Irani
5732d9a822
Merge pull request #5008 from unisonweb/24-05-24-delete-patch-manipulation-commands
2024-05-24 21:44:25 -04:00
Chris Penner
467dee15f8
Checkpoint
2024-05-24 15:17:25 -07:00
Greg Pfeil
b9c62164f8
Restrict NameSegment
operations
...
With `OverloadedStrings` enabled globally and an `IsString` instance, the
`newtype` was rendered useless.
This extracts the `NameSegment` constructor/eliminator to a `.Internal` module,
has `Unison.NameSegment` only re-export the type, and moves the `*Segment`
members to `Unison.Syntax.NameSegment`.
This forces cascading changes, including eliminating a bunch of magic literals
scattered throughout the code.
2024-05-24 15:50:17 -06:00
Chris Penner
2c98ad1b1e
Checkpoint
2024-05-24 10:14:08 -07:00
Mitchell Rosen
6adb88f5b3
delete a bunch of patch manipulation commands
2024-05-24 11:01:45 -04:00
Arya Irani
09efb48303
Merge pull request #5005 from sellout/remove-unused
2024-05-24 10:40:04 -04:00
Greg Pfeil
9aa4bf5168
Remove unused Unison.Util.Convert
module
2024-05-23 23:19:33 -06:00
Chris Penner
29fd307ad9
Checkpoint
2024-05-23 15:31:50 -07:00
Chris Penner
2b504190fc
Rewrite BranchRelativePaths machinery
2024-05-23 10:08:39 -07:00
Chris Penner
dca8431b50
Add getShallowProjectRootByNames
2024-05-22 10:08:02 -07:00
Chris Penner
1a15c3f212
Set currentProjectPath in SQLite
2024-05-21 16:37:30 -07:00
Chris Penner
2c64c6a408
Checkpoint
2024-05-21 16:37:12 -07:00
Chris Penner
39f065e656
Propagate root branch accessors
2024-05-21 15:48:37 -07:00
Chris Penner
12b3107cdb
Add migration to move project branches to sqlite
2024-05-21 09:32:48 -07:00
Chris Penner
73145db0d2
Add Location pt 2
2024-05-21 09:32:48 -07:00
Arya Irani
2ec8e01dd7
Merge pull request #4966 from unisonweb/topic/merge5
2024-05-20 10:48:43 -04:00
Arya Irani
8b762c7908
Merge branch 'trunk' into cp/definition-diffs
2024-05-18 10:31:26 -04:00
Mitchell Rosen
9d7fe1fbef
revert removing ApplicativeDo from default extensions because apparently
...
we spookily rely on it! fragile! wow!
2024-05-17 18:35:16 -04:00
Mitchell Rosen
3b8bdf58a3
fix warning error and remove unused PinBoard code
2024-05-17 17:52:07 -04:00
Chris Penner
3e3f59333d
Implement termDefinitionByName
2024-05-16 15:30:03 -07:00
Mitchell Rosen
b9a45d5f86
⅄ trunk → topic/merge5
2024-05-16 11:55:27 -04:00
Arya Irani
6e92e62151
Merge branch 'trunk' into topic/merge4
2024-05-16 06:21:43 -04:00
Mitchell Rosen
693af9c809
⅄ trunk → topic/merge4
2024-05-15 12:03:16 -04:00
Mitchell Rosen
4bd924a0c9
make DownloadUtils module, shared by pull and clone
2024-05-15 11:57:30 -04:00
Mitchell Rosen
2efb3a2598
delete unused SyncMode
type and redundant debug.pull-exhaustive
...
command
2024-05-15 11:04:05 -04:00
Mitchell Rosen
ecd323faa7
add migration to cd up to current project root
2024-05-14 16:46:27 -04:00
Mitchell Rosen
a77c10a342
merge work (not compiling)
2024-05-13 20:45:10 -04:00
Mitchell Rosen
3813bfbd36
⅄ trunk → topic/merge5
2024-05-13 13:59:19 -04:00
Mitchell Rosen
aee317a681
explicitly ignore ignored return values
2024-05-13 13:52:32 -04:00