Commit graph

711 commits

Author SHA1 Message Date
Niko Matsakis
705a35d4b7 pass 'new revision' as an explicit argument
The goal is to eliminate the "shared state guard" argument, which
currently requires access to the database.
2020-07-04 14:16:50 +00:00
Niko Matsakis
d71a7a2751 make with_incremented_revision dyn-safe 2020-07-04 14:16:50 +00:00
Niko Matsakis
b3ffaec3b0 remove salsa::requires feature 2020-07-04 14:16:50 +00:00
Niko Matsakis
6e813441cb RFC: update to mention that salsa::requires is removed 2020-07-04 14:16:50 +00:00
Niko Matsakis
cc7bc54409 RFC: adjust because DatabaseKeyIndex are not part of public API 2020-07-04 14:16:50 +00:00
Niko Matsakis
64f3eb96a1 remove GroupKey associated type 2020-07-04 14:16:50 +00:00
Niko Matsakis
1a07944efe remove DatabaseKey associated type 2020-07-04 14:16:50 +00:00
Niko Matsakis
799ddce157 remove unused GroupData associated type 2020-07-04 14:16:50 +00:00
Niko Matsakis
1b778760ae track and report cycles using DatabaseKeyIndex 2020-07-04 14:16:50 +00:00
Niko Matsakis
7b5ac6e717 implement ability to get readable debug output for DatabaseKeyIndex 2020-07-04 14:16:50 +00:00
Niko Matsakis
5a1bf10ba6 add a query_name associated constant 2020-07-04 14:16:50 +00:00
Niko Matsakis
b4c6e69faf rewrite get_cycle_path to push to a vector 2020-07-04 14:16:50 +00:00
Niko Matsakis
07623fb962 remove the DatabaseData and associated unsafe code 2020-07-04 14:16:50 +00:00
Niko Matsakis
f7a14f2309 use DatabaseKeyIndex instead of Dependency 2020-07-04 14:16:49 +00:00
Niko Matsakis
29b6b833d1 compute database-key-index for interned fields 2020-07-04 14:16:14 +00:00
Niko Matsakis
a45087a322 compute database-key-index for input slots 2020-07-04 14:16:14 +00:00
Niko Matsakis
ed1632d151 compute database-key-index for derived slots 2020-07-04 14:16:14 +00:00
Niko Matsakis
8664e7e43c add database-key-index type 2020-07-04 14:16:14 +00:00
Niko Matsakis
206c086bac thread group index to storage initializers 2020-07-04 14:16:14 +00:00
Niko Matsakis
9bd9f8b202 use new with index to create group storage 2020-07-04 14:16:14 +00:00
Niko Matsakis
0da53151c5 RFC: update to use index triples 2020-07-04 14:16:14 +00:00
Niko Matsakis
d1347d8854 RFC 6: Dynamic databases
Update book/src/rfcs/RFC0006-Dynamic-Databases.md

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>

Update book/src/rfcs/RFC0001-Query-Group-Traits.md

Co-authored-by: bjorn3 <bjorn3@users.noreply.github.com>

Update book/src/rfcs/RFC0006-Dynamic-Databases.md

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>

fix lint warnings on RFC
2020-07-04 14:16:14 +00:00
Niko Matsakis
59ec6482e1 update the template and randomly adapt RFC0001 only 2020-07-04 14:16:14 +00:00
Niko Matsakis
abe2011761
Merge pull request #235 from jonas-schievink/deps-size
Use a boxed slice to store dependencies
2020-07-04 10:15:29 -04:00
Jonas Schievink
786168fc99 Simplify collect call 2020-07-03 19:30:23 +02:00
Jonas Schievink
e2569e7afc Use a boxed slice to store dependencies 2020-07-03 19:26:38 +02:00
Aleksey Kladov
43f6a82153 release v0.14.3
Support for targets without AtomicU64
2020-07-03 16:28:26 +02:00
Aleksey Kladov
9c7ac995d8 Make salsa buildable on power
rust-analyzer fails in rust-lang/rust repo on the power target,
because it doesn't have `AtomicU64`. So, lets just use `AtomicUsize`
as a revision number.

Semantically this is wrong, as we are not using revision to address
arrays, but, practically, it's a nice compromise to build on targets
without AtomicU64 and to have large revision numbers on most relevant
targets.
2020-07-03 16:27:19 +02:00
Niko Matsakis
bfafe50d8f
Merge pull request #233 from matklad/nompsc
Replace usage of `std::mpsc` with something more light-weight
2020-07-02 10:08:35 -04:00
Aleksey Kladov
a6b162aba1 Replace mpsc channels with hand-written future implementation
cargo llvm-lines shows that some amount of llvm lines is spend on
`std::mpsc`. Given that this is not the most loved standard library
module, and that our usage of mpsc is extremely limited, it seems
worth-while to implement oneshot channel using parking_lot.
2020-07-02 01:17:52 +02:00
Niko Matsakis
65626e35d1
Merge pull request #232 from Marwes/reduce_deps
feat: Prune unnecessary dependencies
2020-07-01 17:16:48 -04:00
Markus Westerlind
98eb60b1ff Check without features on CI 2020-07-01 22:42:14 +02:00
Markus Westerlind
380306930b feat: Prune unnecessary dependencies
Only AtomicCell is used from crossbeam and SmallRng from rand so we can
easily disable the default features
2020-07-01 22:42:07 +02:00
Niko Matsakis
5078c9b22d
Merge pull request #230 from lnicola/upgradable-lock
Remove workaround for parking_lot#101
2020-06-29 13:55:54 -04:00
Laurențiu Nicola
cfb4e18eba Remove workaround for parking_lot#101 2020-06-27 13:59:29 +03:00
Aleksey Kladov
335e92e547 release v0.14.2
Upgrades parking lot (private dependency) to the next major version
2020-06-27 12:49:08 +02:00
Laurențiu Nicola
2bf383861b Fix doctest 2020-06-27 12:46:24 +02:00
Laurențiu Nicola
ff3fc2f406 Bump env_logger and parking_lot 2020-06-27 12:46:24 +02:00
Laurențiu Nicola
bb1c308380 Revert "Bump parking_lot and remove workaround"
This reverts commit 025c882cbb.
2020-06-27 12:46:24 +02:00
Laurențiu Nicola
c627cda525 Bump parking_lot and remove workaround 2020-06-27 12:46:24 +02:00
Niko Matsakis
832a5519be
Merge pull request #228 from nikomatsakis/rfcs-to-book
move the accepted RFCs to the book and describe a new process
2020-06-27 06:32:59 -04:00
Niko Matsakis
b953732981 add RFC 4, 5 2020-06-27 10:25:20 +00:00
Niko Matsakis
baee86bc25 move the accepted RFCs to the book and describe a new process 2020-06-27 01:46:39 +00:00
Niko Matsakis
3b8f0754c3
Merge pull request #227 from nikomatsakis/doc-database-macro
document the database macro
2020-06-26 20:01:47 -04:00
Niko Matsakis
ebb3769ad2 document the database macro 2020-06-26 22:21:54 +00:00
Niko Matsakis
4b0c8a6368 move query groups to its own chapter 2020-06-26 22:21:53 +00:00
Niko Matsakis
af51fafd15
Merge pull request #226 from aDotInTheVoid/patch-1
Update New Mexico state question
2020-06-26 15:46:01 -04:00
Niko Matsakis
668870fc8a
Merge pull request #225 from mbrobbel/patch-1
Fix a typo in book
2020-06-26 15:45:26 -04:00
Nixon Enraght-Moony
7b7c3ddb4e
Update New Mexico state question 2020-06-26 15:48:29 +01:00
Matthijs Brobbel
a4d05c8c4b
Update plumbing.md
Fixed a small typo.
2020-06-26 16:40:32 +02:00