Commit graph

417 commits

Author SHA1 Message Date
Vincent Esche
0ba1072c67 Addes test case for !Send + !Sync 2019-03-27 10:35:09 +01:00
Vincent Esche
5aa0455950 Removed remaining stray bounds for Send + Sync that still survived PR #42 2019-03-26 16:21:23 +01:00
Niko Matsakis
312467c981 fix travis.yml 2019-01-31 16:02:28 -05:00
Niko Matsakis
d2533df418
Merge pull request #146 from nikomatsakis/salsa-book
introduce the basic structure of a book (very much a WIP)
2019-01-31 15:57:37 -05:00
Niko Matsakis
fd61e392d0 update travis to test book and publish 2019-01-31 10:33:28 -05:00
Niko Matsakis
e5d9409d46 introduce the basic structure of a book (very much a WIP) 2019-01-30 05:58:41 -05:00
Niko Matsakis
d9098e30cf
Merge pull request #145 from nikomatsakis/salsa-videos
add links to the videos
2019-01-29 15:17:46 -05:00
Niko Matsakis
fc60346e23
Merge pull request #144 from matklad/gc-all-the-things
just clear the table if we are goining to collect everything
2019-01-29 15:17:27 -05:00
Niko Matsakis
57174e2c63 add links to the videos 2019-01-29 15:17:02 -05:00
Aleksey Kladov
e3c07b010a fast-path no-op gc as well 2019-01-29 19:41:15 +03:00
Aleksey Kladov
f9cae4f2eb just clear the table if we are goining to collect everything 2019-01-29 17:30:43 +03:00
Niko Matsakis
d33a2ac36a
Merge pull request #143 from nikomatsakis/publish-0.10.0
release 0.10.0
2019-01-28 05:10:44 -05: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
a9fe8d7d9e
Merge pull request #142 from nikomatsakis/rename-group-storage
rename `Query::group_storage` method to `Query::query_storage`
2019-01-28 05:06:40 -05:00
Niko Matsakis
58ba8ac425 rename Query::group_storage method to Query::query_storage 2019-01-28 05:01:53 -05:00
Niko Matsakis
1002d7e70a
Merge pull request #138 from matklad/flexible-gc
Make GC API more orthogonal and flexible
2019-01-28 04:51:02 -05:00
Niko Matsakis
3dc4539c7c
Merge pull request #139 from memoryruins/convert-tests
convert tests to use generated set methods
2019-01-28 04:48:07 -05:00
Niko Matsakis
541b4beade
Merge pull request #141 from memoryruins/remove-unchecked-set-trait
remove `UncheckedMutQueryStorageOps` trait
2019-01-28 04:47:38 -05:00
memoryruins
db24e677e3 convert tests to use generated set methods 2019-01-28 00:50:09 -05:00
memoryruins
ebd4990bde remove UncheckedMutQueryStorageOps 2019-01-27 17:52:53 -05:00
Niko Matsakis
28af2988e9
Merge pull request #140 from memoryruins/remove-unchecked
remove set_unchecked methods
2019-01-27 17:07:12 -05:00
memoryruins
7d12f4f93a remove set_unchecked methods 2019-01-27 17:01:00 -05:00
Aleksey Kladov
9387fd2f4d more orthogonal naming 2019-01-27 17:14:57 +03:00
Aleksey Kladov
d01d6ed511 Make GC API more orthogonal and flexible
Now, the effect of GC is a "product" of three parameters:

* what values are affected (everything/everything except used)
* are we removing values
* are we removing deps

SweepStrategy::default is now a no-op GC.
2019-01-26 21:38:15 +03:00
Niko Matsakis
1b9aaf2599
Merge pull request #135 from nikomatsakis/non-camel-case-types
apply `non_camel_case_types` to the enum variant
2019-01-26 08:01:35 -05:00
Niko Matsakis
83baced7af
Merge pull request #134 from nikomatsakis/release-0.10.0-alpha5
publish v0.10.0-alpha5
2019-01-26 08:01:19 -05:00
Niko Matsakis
0f2e03d120 apply non_camel_case_types to the enum variant 2019-01-25 19:17:32 -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
87ef128477
Merge pull request #133 from nikomatsakis/dyn-trait
make `dyn Trait` query implementations work
2019-01-25 18:54:50 -05:00
Niko Matsakis
6f15a440ca make dyn Trait query implementations work 2019-01-25 18:36:23 -05:00
Niko Matsakis
5e2fcc2a17
Merge pull request #132 from nikomatsakis/release-0.10.0-alpha4
Release salsa-0.10.0-alpha4
2019-01-25 15:10:23 -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
Niko Matsakis
1b04ac19ff
Merge pull request #131 from cormacrelf/bad-derive-default
Manually implement Default for *GroupStorage
2019-01-25 11:01:01 -05:00
Niko Matsakis
a6b5a37627
Merge pull request #130 from nikomatsakis/query-group-struct
Introduce "query group struct"
2019-01-25 10:50:30 -05:00
Niko Matsakis
b73cf109d7 update hello-world with the desired naming convention 2019-01-25 10:47:01 -05:00
Cormac Relf
868904874a manually implement Default for *GroupStorage
All the example code uses Default to create the db structs, but it turns
out the *GroupStorage's `#[derive(Default)]` adds a trait bound of
(e.g.) `DB__ + Default + HelloWorldDatabase` even though it never
actually needs to call HelloWorldDatabase::default(). So if you didn't
implement Default, then you couldn't be a salsa database struct.
2019-01-26 02:45:07 +11:00
Niko Matsakis
1382495d9f drive-by change: use salsa:: in place of ::salsa::
This is less precise, but it permits people to "re-export" salsa without
forcing a Cargo.toml dependency.
2019-01-25 10:37:59 -05:00
Niko Matsakis
9b5c7eeb5e change #[salsa::query_group] attribute to take a struct name 2019-01-25 10:26:39 -05:00
Niko Matsakis
690a118472 consolidate into one HasQueryGroup trait 2019-01-25 09:21:11 -05:00
Niko Matsakis
660a121a06
Merge pull request #129 from matklad/alpha-3
fix alpha
2019-01-25 06:32:51 -05:00
Aleksey Kladov
4f3b730572 fix alpha 2019-01-25 14:30:03 +03:00
Niko Matsakis
6a4970d596
Merge pull request #127 from nikomatsakis/release-0.10.0-alpha2
release 0.10.0-alpha2
2019-01-25 05:50:54 -05: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
83b3ad13f8
Merge pull request #126 from nikomatsakis/group-struct
generate `set_X` and `set_constant_X` methods for each input
2019-01-25 05:21:28 -05:00
Niko Matsakis
a468292984 generate set_X and set_constant_X methods for each input
Convert some of the tests to use them
2019-01-25 05:18:26 -05:00
Niko Matsakis
3d1f9dac2d
Merge pull request #122 from matklad/debug
allow to peek at values via debug query interface
2019-01-25 05:13:27 -05:00
Niko Matsakis
70a2bcb850
Merge pull request #125 from nikomatsakis/group-struct
adopt `salsa::database` attribute macro
2019-01-25 04:51:08 -05:00
Niko Matsakis
f4c3aae081 update docs 2019-01-25 04:50:13 -05:00
Niko Matsakis
a8d9fb2d6b adopt salsa::database attribute macro 2019-01-24 19:02:56 -05:00
Niko Matsakis
3fc02c6c0c
Merge pull request #124 from nikomatsakis/group-struct
remove the need to list individual queries in group storage struct
2019-01-24 12:16:27 -05:00