Commit graph

31616 commits

Author SHA1 Message Date
Scott Morrison
c4540f75b8
chore: create a mathlib branch for each Lean PR (#2473)
* chore: create a mathlib branch for each Lean PR

* use existing branch if present
2023-08-31 13:24:41 +10:00
Scott Morrison
0901e062eb
feat: when making PR releases, only download necessary artifacts (#2474) 2023-08-31 12:52:22 +10:00
tydeu
a0440ea4ea feat: lake: cache built file hashes 2023-08-30 22:18:33 -04:00
tydeu
c6299eef45 refactor: lake: cleanup Build/Module/Trace code 2023-08-30 22:18:33 -04:00
Scott Morrison
a7efe5b60e
Revert "fix: make sure refine preserves pre-existing natural mvars (#2435)" (#2485)
This reverts commit 0b64c1e330.
2023-08-30 08:00:30 +00:00
Scott Morrison
b8084d54e3
doc: update RELEASES.md for rename of getConst? (#2482) 2023-08-30 04:44:23 +00:00
Scott Morrison
f1f9dc0f2f
chore: remove - from semver prerelease (#2481) 2023-08-29 23:14:28 +00:00
Scott Morrison
869d64e97a
chore: update README to reflect beginning stable releases (#2477) 2023-08-29 13:24:19 +00:00
Scott Morrison
1fac294a2e
chore: add introduction to RELEASES.md (#2476) 2023-08-29 13:10:55 +00:00
Scott Morrison
a5583d72bb
chore: use bash-compatible SemVer regex (#2475) 2023-08-29 11:45:21 +00:00
Scott Morrison
4a41e7eb53 chore: basic tests exercising rw 2023-08-29 08:07:58 +01:00
Scott Morrison
aba37e37a5
chore: update CI to create official releases (#2472) 2023-08-29 05:48:20 +00:00
Scott Morrison
6861474e01
feat: create release at lean4-pr-releases for each PR (#2448) 2023-08-29 14:11:45 +10:00
Scott Morrison
7959091ce4
feat: add labels from comments (#2460) 2023-08-29 14:09:20 +10:00
Joachim Breitner
f7bff16c9a
fix: If src is a dir, assume the lean file has the full path (#2465)
It seems that before, if `$src` isn’t a file, but a directory, that it
would contain `Bar.lean` directly, and not `Foo/Bar.lean`. This seemd
odd and would not allow dependencies to be included easily.
2023-08-28 14:45:45 +02:00
Marcus Rossel
7ee7595637
doc: fix typos (#2467) 2023-08-28 15:40:33 +10:00
thorimur
0b64c1e330
fix: make sure refine preserves pre-existing natural mvars (#2435)
* fix: `withCollectingNewGoals`
* don't exclude pre-existing natural mvars

* test: ensure pre-existing natural mvars are preserved

* docs: update comment and include issue number

* test: expected.out

* docs: add module docstrings to test
* also deleted superfluous `add_synthetic_goal`

* test: fix expected.out line numbers

* Update tests/lean/refinePreservesNaturalMVars.lean

Co-authored-by: Scott Morrison <scott@tqft.net>

* docs: clarify comment

---------

Co-authored-by: Scott Morrison <scott@tqft.net>
2023-08-25 19:25:54 -07:00
Scott Morrison
1dd443a368 doc: improve doc-string for Meta.getConst? 2023-08-24 07:42:28 -07:00
tydeu
d29b8e5422 chore: remove binaries before building them
This is required to avoid "permission denied" errors on Windows if the the file is already in use.
2023-08-23 14:33:27 -04:00
Mac Malone
216d2460e0 doc: explanation for lake.lock disabling
Co-authored-by: Scott Morrison <scott@tqft.net>
2023-08-23 01:58:18 -04:00
tydeu
25e673df54 chore: disable lake.lock (for now) 2023-08-23 01:58:18 -04:00
Mac Malone
8a536d0246
feat: lake env w/o configuration + more (#2428)
* feat: `lake env` w/o configuration + more

* chore: `lake env printenv DYLD_LIBRARY_PATH` illegal on MacOS
2023-08-23 13:27:16 +10:00
tydeu
898cd0b647 fix: include moreLinkArgs in precompile link 2023-08-22 21:47:04 -04:00
Scott Morrison
83556a1120 chore: add PULL_REQUEST_TEMPLATE.md 2023-08-22 07:08:13 -07:00
Connor Baker
24cfae2421 doc: fix typo in Lake's Require DSL 2023-08-21 12:43:56 -04:00
Mario Carneiro
ea60ac1443 doc: fix mid priority doc comment 2023-08-21 13:19:43 +02:00
Sebastian Ullrich
63d2bdd490 fix: integer type in llvm_count_params 2023-08-18 19:34:21 +02:00
Sebastian Ullrich
4e52283728 fix: FFI signature mismatches 2023-08-18 19:34:21 +02:00
tydeu
9d05b5f081 feat: warn rather than error if lake.lock disappears 2023-08-17 23:24:11 -04:00
Leonardo de Moura
50bece202b doc: add RFC questions 2023-08-17 20:23:38 -07:00
Joachim Breitner
6b429fed8f
doc: fix markup in IO.RealWorld (#2430)
so that
<https://leanprover-community.github.io/mathlib4_docs/Init/System/IO.html#IO.RealWorld>
looks good.
2023-08-17 11:55:03 -07:00
Scott Morrison
f1412ddb45 feat: enable failIfUnchanged by default in simp 2023-08-16 10:14:23 -07:00
Scott Morrison
58d19b80b9 test: compiling from the interpreter, with common imports
hacky fix to windows test

Include test from #2407 as well
2023-08-16 10:11:50 -07:00
Sebastian Ullrich
f22695fdc5 fix: interpret module initializer at most once 2023-08-16 10:11:50 -07:00
Sebastian Ullrich
d4be21b559 chore: CI: Linux LLVM is not a release 2023-08-16 10:37:30 +02:00
tydeu
6176fdba9e feat: warn on local changes to dependency & related fixes 2023-08-16 09:44:12 +02:00
tydeu
b328835f4d fix: lake: reverse-ffi, manifest, and 62 tests 2023-08-15 20:33:09 -04:00
Henrik
35aa2c91a2 feat: LLVM backend: implement the equivalent of -fstack-clash-protection 2023-08-15 14:45:58 +02:00
tydeu
b81224c570 feat: lake update <pkg> & related tweaks 2023-08-15 09:50:39 +02:00
Leonardo de Moura
b5a736708f fix: fixes #2419 2023-08-14 16:18:30 -07:00
tydeu
736af918f5 doc: IO.Process.getPID tweak + IO.FS.Mode 2023-08-14 18:42:04 +02:00
Tobias Grosser
beddf011d7 chore: update stage0 2023-08-14 13:33:46 +02:00
Siddharth Bhat
496460020a fix: disabling forwarding --target to lean.
This will ensure that we do not invoke `lean --target` without compiling
using LLVM.
2023-08-14 13:33:46 +02:00
Henrik
8d3af73853 feat: Linux LLVM CI for stage1+ 2023-08-14 13:33:46 +02:00
Siddharth Bhat
146296b5fa feat: enable LLVM in stage1+ compiler 2023-08-14 13:33:46 +02:00
Siddharth Bhat
0054f6bfac feat: link 'llvm.h.bc' and then set linkage to internal
This obviates the need to play weak linkage games when
we build `lean.h.bc` from `lean.h`. We perform the following steps:

1. We remove the `static` modifier from all definitions in `lean.h`.
   This makes all definitions have `extern` linkage. Thus, when we build
   a `lean.h.bc` using `clang`, we will actually get definitions
   (instead of an empty file)
2. We build `lean.h.bc` from `lean.h` using `clang`.
3. When it comes time to link, we link
   `current_module.bc := LLVMLinkModules2(current_module.bc, lean.h.bc)`.
4. We loop over every symbol that arrived from `lean.h.bc`
   in `current_module.bc` and we then set this symbol to have
   `internal` linkage. This simulates the effect of
   `#include <lean.h>` where every definition in `lean.h`
   has internal linkage.

This yajna, one hopes, pleases the linker gods.
2023-08-14 13:33:46 +02:00
Leonardo de Moura
fac9e64cdf chore: update stage0 2023-08-13 09:56:29 -07:00
Scott Morrison
61fea57e73 feat: add failIfUnchanged flag to simp 2023-08-13 09:49:25 -07:00
Tobias Grosser
736a21cd5a chore: remove trailing whitespaces in EmitLLVM
For some reason, these two were missed in the last commit.
2023-08-13 16:18:23 +02:00
Tobias Grosser
d90176af71 chore: remove trailing whitespaces in CMakeLists.txt 2023-08-13 16:18:23 +02:00