Commit graph

1708 commits

Author SHA1 Message Date
Niko Matsakis
2a6b8e07f9 remove the query_in_progress field 2018-10-31 15:59:00 -04:00
Niko Matsakis
252132f9b4 remove the start_query function, which is no longer needed 2018-10-31 13:31:29 -04:00
Niko Matsakis
b0171dbc11 remove fork_mut and adopt new strategy
Required simplifying the various tests.
2018-10-31 12:01:36 -04:00
Niko Matsakis
38dc4c31dd introduce fork, which yields a frozen handle 2018-10-31 06:05:03 -04:00
Niko Matsakis
9cac418ac8 rename fork to fork_mut 2018-10-31 06:03:33 -04:00
Niko Matsakis
2d8dbce6c1
Merge pull request #63 from nikomatsakis/logging
Simple logging methods
2018-10-31 04:41:48 -04:00
Niko Matsakis
2e3f8b1a3d name the field runtime_id 2018-10-30 21:00:33 -04:00
Niko Matsakis
cf9db9cc7f fix typo 2018-10-30 20:38:41 -04:00
Niko Matsakis
e355300554 use callbacks in parallel test 2018-10-30 20:19:25 -04:00
Niko Matsakis
59ab0bd7a2 introduce simple callbacks that can be used to build better logging 2018-10-30 20:19:25 -04:00
Niko Matsakis
87680f379d
Merge pull request #76 from nikomatsakis/release-v0.7.0
publish v0.7.0
2018-10-30 17:03:33 -04:00
Niko Matsakis
729904ddd3 publish v0.7.0
Changes:
- correct dead locks and add parallel stress test (#72)
- we now panic if you `get` an input that has not been `set` and
  we do not compare inputs for equality (thus dropped `Default` and `Eq`
  bounds) (#69)
- `PanicGuard` now detects internal salsa bugs (#71)
2018-10-30 17:03:04 -04:00
Niko Matsakis
05223f2b7e
Merge pull request #72 from nikomatsakis/issue-70
be more careful when updating after a dependency check
2018-10-30 15:18:39 -04:00
Niko Matsakis
39dd71ff66 remove use of upgradable_read from input queries 2018-10-30 15:08:09 -04:00
Aleksey Kladov
f4c00cfe97 Add a stress test 2018-10-30 14:41:56 -04:00
Niko Matsakis
7cfcbd73b8 remove unnecessary upgradable_read 2018-10-30 14:41:24 -04:00
Niko Matsakis
79e24cfa55 fix typo 2018-10-30 14:40:58 -04:00
Niko Matsakis
abeebfedc8 improve the error message here 2018-10-30 14:40:58 -04:00
Niko Matsakis
1c2b4d8d43 be more careful when updating after a dependency check 2018-10-30 14:40:58 -04:00
Niko Matsakis
aea746cb91
Merge pull request #69 from nikomatsakis/input-policies
add input policies to permit a wider range of inputs
2018-10-30 13:37:10 -04:00
Niko Matsakis
6c75c57cd9 fix docs 2018-10-30 13:19:59 -04:00
Niko Matsakis
13ae45d441 remove input policies 2018-10-30 12:59:33 -04:00
Niko Matsakis
b2c282ff6c
Merge pull request #71 from matklad/more-panics
Panic in PanicGuard if it's not explicitly forgotten
2018-10-29 13:15:56 -04:00
Aleksey Kladov
f66f1913b7 reexport revision guard 2018-10-29 17:09:50 +03:00
Aleksey Kladov
0f4d1e8320 Panic in PanicGuard if it's not explicitly forgotten 2018-10-29 15:53:11 +03:00
Niko Matsakis
8a0f57d5c3 storage input has its own section now 2018-10-27 06:44:28 -04:00
Niko Matsakis
e6d7cee501 no need for format! in panic! 2018-10-27 06:44:19 -04:00
Niko Matsakis
042f89e7f8 add input policies to permit a wider range of inputs 2018-10-26 19:34:11 -04:00
Niko Matsakis
c018196ffb
Merge pull request #68 from nikomatsakis/release-0.6.2
release 0.6.2
2018-10-25 10:32:34 -04:00
Niko Matsakis
14437fe69a release 0.6.2
- Includes GC (#64)
- And a bug fix (#67) for cancellation
2018-10-25 10:23:02 -04:00
Niko Matsakis
cb272ae53e
Merge pull request #67 from matklad/transitive-cancelation-test
Add one more cancellation test
2018-10-25 10:22:00 -04:00
Aleksey Kladov
f709e64bd5 Add one more cancellation test
closes #66
2018-10-25 17:06:55 +03:00
Niko Matsakis
f56c341730
Merge pull request #64 from nikomatsakis/gc
introduce garbage collection
2018-10-25 08:50:55 -04:00
Niko Matsakis
a8e1e47a59 add simple test for SweepStrategy::discard_values() 2018-10-25 08:41:26 -04:00
Niko Matsakis
c15a50279a
Merge pull request #65 from nikomatsakis/release-0.6.1
release 0.6.1
2018-10-25 05:53:41 -04:00
Niko Matsakis
6d28ecd326 release 0.6.1
- we now offer a `lock_revision` API, though it is likely to change
- we are now panic safe, but only in a single threaded context
2018-10-25 05:51:26 -04:00
Niko Matsakis
c21ea47cfc introduce SweepStrategy 2018-10-25 05:48:37 -04:00
Niko Matsakis
74cecb6ea5 make sweep_all public and document a *bit* better =) 2018-10-25 05:48:37 -04:00
Niko Matsakis
317281528a adjust locking strategy to be more minimal 2018-10-25 05:48:37 -04:00
Niko Matsakis
370e46ff6a tests that include non-constants 2018-10-25 05:48:37 -04:00
Niko Matsakis
b9ae3dbc4c test for "shallow constant sweep" 2018-10-25 05:48:37 -04:00
Niko Matsakis
7f1d1995aa introduce ability to ask a table what keys it has 2018-10-25 05:48:37 -04:00
Niko Matsakis
649b1a6f99 introduce a sweep routine 2018-10-25 05:48:37 -04:00
Niko Matsakis
d429926ddd treat constants more uniformly
We used to ignore constant inputs entirely. We now track them, but if we
find that a value is constant, we discard ITS inputs.  This means that
-- if we track dependencies -- we have an "outer rim" of constant
values.

Also take the opportunity to reshuffle how derived inputs represent
their state.
2018-10-25 05:48:36 -04:00
Niko Matsakis
c4d93f9733 rename test to give it a unique prefix 2018-10-25 05:47:45 -04:00
Niko Matsakis
ce24850c3d switch assert_log to a better debug library 2018-10-25 05:47:45 -04:00
Niko Matsakis
1ab8d1a64e refactor ChangedAt into a struct
There are really two orthogonal things going on here.
2018-10-25 05:47:45 -04:00
Niko Matsakis
03751d3d5c convert Tracked to a struct variant 2018-10-25 05:47:45 -04:00
Niko Matsakis
3bc5b78284
Merge pull request #62 from kleimkuhler/issue-24-ensure-panic-safety
Panic safely in a single threaded context
2018-10-24 14:14:03 -04:00
Kevin Leimkuhler
7198902ebd Simplify map write to exclusive write access 2018-10-24 11:00:44 -07:00