Commit graph

23618 commits

Author SHA1 Message Date
Leonardo de Moura
6a89a811ce chore: cleanup 2021-01-20 08:36:26 -08:00
Leonardo de Moura
901a89a58c chore: cleanup 2021-01-20 08:36:26 -08:00
Sebastian Ullrich
45aa7f732b chore: update stage0 2021-01-20 16:48:50 +01:00
Sebastian Ullrich
316b453be4 chore: do not show term info for synthetic sorry 2021-01-20 16:48:50 +01:00
Sebastian Ullrich
b2c609c3ac chore: Nix: set up LEAN_SYSROOT automatically in server 2021-01-20 16:48:50 +01:00
Sebastian Ullrich
67c78ef1b7 fix: exclude synthetic syntax from hover/definition 2021-01-20 16:48:50 +01:00
Sebastian Ullrich
a9f96ace3e chore: naming 2021-01-20 16:48:50 +01:00
Sebastian Ullrich
a131924797 fix: Nix: lean-dev outside package 2021-01-20 16:48:50 +01:00
Sebastian Ullrich
79107a2316 feat: copy & store whole ref range in SourceInfo 2021-01-20 16:48:50 +01:00
Sebastian Ullrich
c74dd7c683 chore: Nix: stage0debug 2021-01-20 16:48:50 +01:00
Sebastian Ullrich
1e623a961f chore: debug assertion 2021-01-20 16:48:50 +01:00
Sebastian Ullrich
5f392749f2 chore: remove dead code 2021-01-20 16:48:50 +01:00
Sebastian Ullrich
462e1d54a3 chore: replace uses of copyInfo with automatic position copying in syntax quotations
We could introduce a `copyPos` alternative, but turns out we don't need it right now
2021-01-20 16:48:50 +01:00
Sebastian Ullrich
51e408590f chore: do not copy whitespace in Syntax synth helpers 2021-01-20 16:48:50 +01:00
Leonardo de Moura
44008c4b67 chore: update stage0 2021-01-19 18:04:38 -08:00
Leonardo de Moura
e57a9fa78f fix: fixes #280
We are going to use a cleaner fix when we port this code to Lean.
2021-01-19 18:01:52 -08:00
Leonardo de Moura
8c6a510e65 fix: use withReducible
`def17.lean` contains example where `isDefEq arg x` takes a very long
time with the default reducibility test.
2021-01-19 18:01:52 -08:00
Leonardo de Moura
c1bc0e44f6 fix: fixes #281
This issue exposed two bugs at `Structural.lean`

1- `getFixedPrefix` was using structural equality to detected fixed
arguments. We should use definitional equality.

2- The `replaceFVars` was broken. We should use `instantiateForall` instead.
2021-01-19 18:01:52 -08:00
Leonardo de Moura
1e7380a1f7 fix: fixes #282 2021-01-19 18:01:52 -08:00
Leonardo de Moura
8e39b82541 feat: skeleton for SizeOf instance generator 2021-01-19 18:01:52 -08:00
Sebastian Ullrich
568d76b0ce doc: fix elan command
Fixes #278
2021-01-19 23:28:42 +01:00
Sebastian Ullrich
bd70d1bf78 feat: Nix: add src/ to LEAN_SRC_PATH in Lean shell 2021-01-19 23:18:30 +01:00
Leonardo de Moura
67e5b05751 chore: fix test 2021-01-19 13:29:19 -08:00
Leonardo de Moura
79bb2f2d5a chore: update stage0 2021-01-19 13:25:26 -08:00
Wojciech Nawrocki
445420315e fix: normalise go-to-def paths 2021-01-19 13:22:13 -08:00
Wojciech Nawrocki
90075153b3 fix: UTF-16 strikes again
We need to report the jump target range in terms of a UTF-16 offset within the line, but to compute that we would have to load the target file, file-map it, and resolve that way each time the go-to-def handler runs. As an alternative, this stores the UTF-16 offsets in `DeclarationRange`.
2021-01-19 13:22:13 -08:00
Wojciech Nawrocki
e627ad308d feat: go-to-definition 2021-01-19 13:22:13 -08:00
Wojciech Nawrocki
40698ecc07 feat: LSP scaffolding for go-to-definition 2021-01-19 13:22:13 -08:00
Wojciech Nawrocki
f07cf2c4e4 feat: store source path in server worker 2021-01-19 13:22:13 -08:00
Wojciech Nawrocki
f252a47bbb feat: generalise SearchPath lookup 2021-01-19 13:22:13 -08:00
Sebastian Ullrich
31ed0621c7 chore: update stage0 2021-01-19 19:32:17 +01:00
Sebastian Ullrich
bc0f43c4b9 chore: remove a few dbgTraceVals... 2021-01-19 19:31:44 +01:00
Sebastian Ullrich
3fbf405a26 chore: update stage0 2021-01-19 19:06:01 +01:00
Sebastian Ullrich
38911d1be3 feat: Nix: support leanpkg print-paths setup 2021-01-19 19:06:01 +01:00
Sebastian Ullrich
8ad061e328 feat: leanpkg: change print-path to print-paths that also emit LEAN_SRC_PATH (unused as of yet) 2021-01-19 19:06:01 +01:00
Sebastian Ullrich
23c3995ae2 fix: Windows cmdline arg quoting
...
2021-01-19 19:06:01 +01:00
Sebastian Ullrich
a63e39767c fix: withLockFile on Windows 2021-01-19 19:06:01 +01:00
Sebastian Ullrich
343036cf00 feat: leanpkg: use per-package lock file to prevent concurrent redundant builds 2021-01-19 19:06:01 +01:00
Sebastian Ullrich
e662992533 feat: IO.removeFile 2021-01-19 19:06:01 +01:00
Sebastian Ullrich
e5c485ff45 feat: incremental progress notification while compiling dependencies 2021-01-19 19:06:01 +01:00
Sebastian Ullrich
c63e85a0f1 test: playground for print-path 2021-01-19 19:06:01 +01:00
Sebastian Ullrich
d7733ba662 feat: use leanpkg print-path for worker initialization 2021-01-19 19:06:01 +01:00
Sebastian Ullrich
9c8f360dd3 feat: leanpkg: print-path 2021-01-19 19:06:01 +01:00
Sebastian Ullrich
607d788001 chore: leanpkg: secondary output to stderr 2021-01-19 19:06:01 +01:00
Sebastian Ullrich
35e4f7391a feat: publish fatal worker error as diagnostic 2021-01-19 19:06:01 +01:00
Sebastian Ullrich
2eb0f58bdd chore: restart worker only on didChange
will otherwise be constantly retriggered by documentSymbol in Emacs
2021-01-19 19:06:01 +01:00
Leonardo de Moura
dc142cff13 test: sizeOf experiments 2021-01-18 17:21:03 -08:00
Leonardo de Moura
f1ed13efff feat: improve elabMatchAux
We now (try to) postpone `match ... with` elaboration when pattern
variables and patterns still contain metavariables before invoking `mkMatcher`.

This improvement makes sure we can elaborate an example submitted by
Daniel Selsam.

Remark: this update may create performance problems since we
backtrack `elabMatchTypeAndDiscrs` and `elabMatchAltView`.
We hope this is not a problem in practice since we use the "quick-check"
`waitExpectedTypeAndDiscrs`. Recall that we could compile Lean
without this commit. So, it suggests cases where we need to postpone
after `elabMatchAltView` are rare.
2021-01-18 15:33:48 -08:00
Leonardo de Moura
6df66bf0ac feat: generalize observing
We can now "observe" any `TermElabM α` action.
2021-01-18 15:10:42 -08:00
Leonardo de Moura
0a6d83127d chore: cleanup 2021-01-18 11:46:13 -08:00