Commit Graph

14002 Commits

Author SHA1 Message Date
Jared Forsyth
85ad28f661 [tmpdir] impl createTempDirectory 2023-08-21 21:25:46 -05:00
mergify[bot]
8c04aecaf0
Merge pull request #4274 from unisonweb/fix/4272
Fix bug where constructors would incorrectly print with a prefix
2023-08-21 15:32:25 +00:00
Paul Chiusano
25e67ed5e7 fix #4272 2023-08-21 10:00:37 -05:00
Paul Chiusano
1f1536341d
Merge pull request #4267 from unisonweb/fix/sig-cleanup
Round tripping code now yields same hash after reparsing in all known cases
2023-08-19 09:19:14 -05:00
Paul Chiusano
0f3d89943f
Merge pull request #4271 from unisonweb/aryairani-patch-4 2023-08-19 08:06:06 -05:00
Arya Irani
4ffcede29c
Rename nix-dev-cache.yaml to nix-dev-cache.yaml.disabled 2023-08-19 00:32:13 -04:00
Arya Irani
a6e9b8a345
Merge pull request #4270 from unisonweb/cp/ormolu-trunk 2023-08-19 00:29:43 -04:00
Chris Penner
be522defaf Docs 2023-08-18 15:21:32 -07:00
Chris Penner
b9143fc27a Always run build even if ormolu is skipped 2023-08-18 15:17:15 -07:00
Chris Penner
efef97a383 Only run formatter on trunk 2023-08-18 15:05:14 -07:00
Paul Chiusano
eebb43db3e refresh transcript 2023-08-17 17:56:29 -05:00
Paul Chiusano
7f9db5f15b comments 2023-08-17 17:38:48 -05:00
pchiusano
a824eb8308 automatically run ormolu 2023-08-17 22:17:12 +00:00
Paul Chiusano
95dd8747ff Merge remote-tracking branch 'origin/trunk' into fix/sig-cleanup
# Conflicts:
#	unison-src/transcripts-round-trip/main.output.md
#	unison-src/transcripts-round-trip/reparses.u
2023-08-17 16:59:32 -05:00
Paul Chiusano
46e28766d6 working 2023-08-17 16:55:28 -05:00
Chris Penner
e5c7ff7e9e
Merge pull request #4260 from kylegoetz/4239/cases-infix
fixes #4239, pretty printing for single arg infix op terms no longer displays "error"
2023-08-17 09:59:24 -07:00
Chris Penner
4cefceedc7 Ormolu 2023-08-16 21:14:16 -07:00
Paul Chiusano
f7d67069ad fix to record printing 2023-08-16 22:25:23 -05:00
Paul Chiusano
13f3aad25f Everything reparses with an identical hash now 2023-08-16 22:17:27 -05:00
Paul Chiusano
c42fd86edc wip 2023-08-16 16:21:58 -05:00
Paul Chiusano
355ee4f846 wip 2023-08-16 16:21:30 -05:00
Arya Irani
6c9b4eb008
Merge pull request #4250 from unisonweb/cp/project-branch-list 2023-08-15 12:15:49 -04:00
Arya Irani
f228f0d9b0
Merge pull request #4261 from unisonweb/cp/generalize-branch-format 2023-08-15 12:07:56 -04:00
Arya Irani
c1abbe102b
Merge pull request #4246 from unisonweb/cp/project-ui-command 2023-08-15 11:53:11 -04:00
Chris Penner
26944f55fc
Bump LSP lib versions (#4262)
* Upgrading to lsp-2.* support

* Upgrade imports to lsp 2

* Starting port to 2.0

* More porting to v2

* Lock down version hashes
2023-08-14 17:28:11 -07:00
mergify[bot]
9303895b03
Merge pull request #4264 from unisonweb/topic/racket-cache
Add -y when calling into racket
2023-08-14 21:08:29 +00:00
Dan Doel
490e23856f Add -y when calling into racket
This makes the racket compiler check for new versions of modules it
already compiled. Should avoid some confusing errors when developing the
racket libs.
2023-08-14 16:42:41 -04:00
Paul Chiusano
8a88523f63
Merge pull request #4255 from unisonweb/topic/rehashing
Change runtime term link representation to allow code validation
2023-08-14 13:06:12 -04:00
Chris Penner
72f09d4c96 Merge branch 'cp/project-ui-command' into cp/project-branch-list 2023-08-14 09:51:09 -07:00
Dan Doel
eb686993eb Add all permutations of mutual verification
Not sure if these actually generate different test cases, but it can't
hurt.
2023-08-14 12:34:08 -04:00
Chris Penner
979a948405 Merge remote-tracking branch 'origin/trunk' into cp/project-branch-list 2023-08-14 09:32:15 -07:00
Dan Doel
7a70bd7c98 Add more code rehashing tests 2023-08-14 12:30:05 -04:00
Dan Doel
a8ce3ec559 Make rehash less crashy on bad SCCs
If a user arbitrarily permutes the links associated with code, it's
possible to end up with a load request that appears to have mutually
recursive definitions without common hashes. So, this has been made into
a catchable exception instead of throwing a Haskell error.

The initial hashing in the runtime just calls error when this happens,
since it means some internal code generation generated bad SCCs, not
that some kind of user error happened.
2023-08-14 12:21:38 -04:00
Paul Chiusano
2528ef2008
Update parser-typechecker/src/Unison/Syntax/TermPrinter.hs 2023-08-14 10:05:38 -05:00
ChrisPenner
6303156564 automatically run ormolu 2023-08-12 19:13:36 +00:00
Kyle Goetz
c287cf4108 fixes #4239, pretty printing for single arg infix op terms no longer displays "error" 2023-08-12 00:00:41 -05:00
Chris Penner
370793c58e Update transcripts for non-project-code 2023-08-11 17:52:21 -07:00
Dan Doel
53919fe4bb Be more thorough about applying forward reference mappings
Solves one observed problem and potentially some others.

The observed problem was the process of unhashing and rehashing does not
replace any term links in the original terms. This is because term link
literals can't be turned into variables and subsequently replaced with
new hashes. So, instead we use our available variable mappings to
replace the literals manually.

A superior methodology might be to replicate the SCC behavior already in
hashTermComponents, and incrementally remap individual components.
However, that is a considerable amount of additional work, and the
post-floating references are just used as a translation layer between
the codebase and verifiable hashes, so making them completely consistent
doesn't seem necessary.

I've also added some codebase->verifiable replacements from the context
in some places. It's possible not doing this would have caused problems
during UCM sessions where some terms are loaded incrementally due to
multiple calls into the runtime. I didn't observe any failing tests due
to this, though.
2023-08-11 20:27:05 -04:00
Chris Penner
3e88ddab37 Add hashBranchFormatFull to Hash Handle 2023-08-11 17:22:26 -07:00
Chris Penner
d6b5308a52 Add hashBranchFormatToH2Branch 2023-08-11 16:53:02 -07:00
Chris Penner
9980fce492 Add Bytes Wrapper for local branch bytes 2023-08-11 14:16:46 -07:00
Chris Penner
ead368d2b5 Add export list to Serialization 2023-08-11 12:34:54 -07:00
Chris Penner
9796636aa9 Rebuild original branch format combinators 2023-08-11 12:28:35 -07:00
Chris Penner
fa548ec74d Generalize more deserialization combinators 2023-08-11 12:24:34 -07:00
Chris Penner
b353fd0c01 Generalize Branch Format type 2023-08-11 11:34:57 -07:00
Dan Doel
2000803b3c Fix some type errors from lamLift in tests 2023-08-11 12:59:44 -04:00
Dan Doel
196552c8ba Ormolu 2023-08-11 12:48:29 -04:00
Dan Doel
b29c8985a3 Remove some commented, dead code 2023-08-11 12:46:35 -04:00
Dan Doel
c356dbb75a Remember remappings from file loads
When the interpreter is called for things in a scratch file, the code
path is slightly different, because all the definitions are pre-combined
into a letrec. If the definitions are subsequently added to the
codebase, we will have already loaded and compiled their code. However,
previously the remapping from base to floated references would not
exist, because that was only being generated for loaded dependencies in
the other path.

So, this code adds a similar remapping for a top-level letrec in this
code path. This fixes a problem with compiling a definition that had
just been added from a scratch file. The remap was expected to be there,
but it wasn't, so the compiler could find the code to emit.
2023-08-11 12:41:44 -04:00
dolio
af4dc89f1a automatically run ormolu 2023-08-10 21:14:34 +00:00