Niko Matsakis
356392578b
new parallel friendly algorithm
2022-01-21 13:58:13 -05:00
Niko Matsakis
685fccc9c5
move to dash-map
...
Because dash-map isn't indexable, we need to store a copy of the
key and have two separate maps. I expect to iterate on the best
data structures here.
2022-01-21 13:56:16 -05:00
bors[bot]
d830152ade
Merge #287
...
287: Remove unused crossbeam_utils dependency r=nikomatsakis a=DSPOM2
crossbeam_utils is currently not used anywhere withing this crate so I propose to remove the dependency to (slightly) reduce compile times
Co-authored-by: DSPOM2 <61850714+DSPOM2@users.noreply.github.com>
2022-01-21 18:33:32 +00:00
DSPOM2
23c495f82d
Remove unused crossbeam_utils dependency
...
crossbeam_utils is currently not used anywhere withing this crate so I propose to remove the dependency to (slightly) reduce compile times
2021-12-26 22:32:12 +01:00
Niko Matsakis
293e103c09
make "maybe changed since" share code with read
...
It is still *slightly* different from `read`.
This seems to have fixed various bugs.
2021-10-30 11:45:12 -04:00
Niko Matsakis
40139abc24
enable debug logging in the cycles tests
2021-10-30 11:09:08 -04:00
Jonas Schievink
cb38bb7066
Publish 0.17.0-pre.2
2021-10-06 22:33:30 +02:00
Aleksey Kladov
a84ee62bd1
Publish 0.17.0-pre.1
...
- new cancellation API #265
2021-05-29 20:57:48 +03:00
Aleksey Kladov
e3313ff995
Publish v0.16.1
...
- #259 salsa's `debug!` logs now include query dependencies in
human-readable format, which helps with debugging unwanted
dependencies.
2021-05-05 18:32:23 +03:00
Aleksey Kladov
9e6adc9900
Publish v0.16.0
...
- #242 allow `dyn Database` to be non-'static
- #248 allow using borrowed keys for invalidation
- #250 upgrade crossbeam_utils
2020-10-14 12:33:39 +02:00
Aleksey Kladov
6b96a1e22f
Leverage Cargo defaults
2020-10-14 12:29:29 +02:00
Aleksey Kladov
1917a2a37b
Pubish 0.15.3
2020-10-13 17:24:58 +02:00
Aleksey Kladov
15e5fa0112
⬆️ crossbeam-utils
2020-10-13 17:24:58 +02:00
Aleksey Kladov
590c037323
Release v0.15.2
...
* #243 , better error message from proc macro
* #240 , purge method for cleaning the database completely
2020-08-05 13:55:12 +02:00
Aleksey Kladov
a760f9e3c9
Release v0.15.1
...
- replace `rand` with `oorandom` (#241 )
2020-07-29 19:25:13 +02:00
Aleksey Kladov
b460db700a
Switch from rand to oorandom
...
The primary motivation here is reducing dependencies. rand has quite a
few of them, and many come from `getrandom` crate (bindings to system
APIs to get true randomness). Some of `getrandom` crates don't have
Apache 2.0 OR MIT license, and it probably doesn't make sense to make
salsa's licensing situation more complicated for feature we don't even
use.
There's a number of small&fast random crates there:
* randomize
* oorandom
* fastrand
I've picked oorandom because it was the simplest & smallest (doesn't
have a thread_local RNG, for example).
2020-07-23 11:30:23 +02:00
Aleksey Kladov
380c4c1dc8
Release v0.15.0
...
The single (but big) change is Dynamic Database RFC implementation:
https://github.com/salsa-rs/salsa/pull/231
2020-07-07 15:45:39 +02:00
Aleksey Kladov
0442f628cd
release v0.14.4
...
Significantly amount of memory used to store dependency information
2020-07-06 11:31:42 +02:00
Aleksey Kladov
43f6a82153
release v0.14.3
...
Support for targets without AtomicU64
2020-07-03 16:28:26 +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
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
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
Aleksey Kladov
37a3650aef
Publish 0.14.1
...
0.14.0 is broken, as it didn't bump salsa-macros crate.
2019-11-26 11:24:23 +03:00
Aleksey Kladov
c16cd3df4d
Publish v0.14.0
...
- use `&mut self` to increment revision
https://github.com/salsa-rs/salsa/pull/197
- update dependencies
2019-11-26 11:21:07 +03:00
Jeremy A. Kolb
daecfae90d
parking_lot 0.10 and smallvec 1.0
2019-11-25 16:41:38 -05:00
Laurențiu Nicola
c99580ba14
implement QueryTable constructor manually
2019-10-03 19:26:20 +03:00
Aleksey Kladov
5c27b734cf
⬆️ parking_lot
2019-07-15 19:43:39 +03:00
Aleksey Kladov
89237e85f7
⬆️ rand
2019-07-02 14:40:43 +03:00
Niko Matsakis
50cb001b41
introduce slots to the interner
2019-07-02 06:49:24 -04:00
Niko Matsakis
7988b5e295
switch to the "random LRU" strategy
2019-07-02 06:49:22 -04:00
Niko Matsakis
e9f91f03a5
roll our own lru list
...
We could use e.g. intrusive-collections but from reading the docs and
surveying the source it wasn't *obvious* to me that it had the right
semantics.
2019-07-02 06:48:59 -04:00
Aleksey Kladov
6d60798eb8
Replace volatile query type with report_untracked_read fn
2019-06-26 13:10:44 +03:00
Aleksey Kladov
10500c8a24
Change authors to Salsa developers
...
Salsa is a team effort, and builds on a mountain of pre-existing
knowledge!
2019-06-25 13:49:20 +03:00
Aleksey Kladov
f34ae2dd0a
publish v0.12.3
...
- Allow to limit the number of values in a table by using LRU (#171 ).
RFC: https://github.com/salsa-rs/salsa-rfcs/pull/5
2019-06-12 12:57:04 +03:00
Aleksey Kladov
3d89c0d817
Add LRU to derived storage
...
LRU allows to bound the maximum number of *values* that are present in
the table.
2019-06-07 14:26:21 +03:00
Aleksey Kladov
bbae342b14
publish v0.12.2
...
- Don't remove query from storage if its dependency panics (#169 )
2019-06-06 18:34:12 +03:00
Aleksey Kladov
df92fb794e
publish v0.12.1
...
- Introduce `salsa::transparent` query type(#163 )
- Improve salsa proc macro (#160 , #162 )
- Update parking lot to 0.8.0 (#166 )
2019-05-30 11:45:56 +03:00
Aleksey Kladov
e1792463f4
⬆️ parking_lot
2019-05-30 11:36:03 +03:00
Niko Matsakis
30b95dcc24
publish v0.12.0
...
- Introduce `InternId` as the basis for interned keys, replacing
`u32` (#157 , #158 )
- Support keys/values that are not `Send/Sync` (#153 )
2019-04-03 16:03:41 -03:00
Niko Matsakis
4b976166fd
release 0.11.1
...
- Includes a fix so that interned keys can be send (#155 )
2019-03-27 09:24:55 -04:00
Niko Matsakis
31235aaa96
release 0.11.0
...
Changes:
- Add interned keys to salsa (#150 ) -- see salsa-rs/salsa-rfcs#2
for more details.
- Fix bugs re: GC and volatile queries
- Optimization for GC (#144 ), though I think this later got undone
as part of the bug fixes =)
2019-03-27 05:37:26 -04:00
Niko Matsakis
1736115d9f
release 0.10.0
...
- GC API now more orthogonal + flexible (#138 )
- Removed `set_unchecked` testing mechanism (#141 )
- Generated enums now squelch `non_camel_case_types` lint (#135 )
- Tests now using `set_foo` (#139 )
- `Query::group_storage` now called `Query::query_storage` (#142 )
Contributors to this release:
- @matklad
- @memoryruins
- @nikomatsakis
2019-01-28 05:06:54 -05:00
Niko Matsakis
682c29e777
publish v0.10.0-alpha5
...
- Make `dyn Trait` implementations work
Contributors to this release:
- @nikomatsakis
2019-01-25 19:09:10 -05:00
Niko Matsakis
77c3a72cea
Release salsa-0.10.0-alpha4
...
- Introduce requirement for group storage structs (#130 )
- Manually implement Default (#131 )
Contributors to this release:
- @cormacrelf
- @nikomatsakis
2019-01-25 11:01:15 -05:00
Aleksey Kladov
4f3b730572
fix alpha
2019-01-25 14:30:03 +03:00
Niko Matsakis
6c5575d9f2
release 0.10.0-alpha2
...
- You now write `#[salsa::database(query_groups...)]` instead of
`database_storage!`, and you don't ned to list individual
queries (#123 , #124 , #125 )
- We now generate `set_foo` methods for inputs (#126 )
- We can now peek at values using debug query interface (#122 )
- Local handles recover from unwinds better (#114 )
- We don't issue docs for `__SalsaQueryDescriptor` (#116 )
- The unwind safety impls were moved about (internal refactoring, #115 )
Contributors (since I've not been citing these in the past, this
includes all contributors to salsa to date):
- @cormacrelf
- @fabianschuiki
- @jrmuizel
- @kleimkuhler
- @matklad
- @memoryruins
- @nikomatsakis
2019-01-25 05:33:24 -05:00
Niko Matsakis
2c3450c885
bump release number to 0.10.0-alpha1
2019-01-17 05:41:07 -05:00