282: Update book workflow r=nikomatsakis a=mbrobbel
I noticed the book workflow [failing](https://github.com/salsa-rs/salsa/runs/3568827495?check_suite_focus=true) on master. This PR attempts to fix the failing workflow and prevent failing book deploys in the future.
- Add the book build to `bors.toml`.
- Make sure the book workflow runs for the bors branches (`staging` and `trying`).
- Exclude the bilibili domain in the mdbook-linkcheck config to prevent the 403s.
I also bumped mdbook and mdbook-mermaid versions.
Co-authored-by: Matthijs Brobbel <m1brobbel@gmail.com>
280: Fix `invalidate` and `report_synthetic_read` r=nikomatsakis a=jonas-schievink
Fixes https://github.com/salsa-rs/salsa/issues/246
Fixes https://github.com/salsa-rs/salsa/issues/277
`report_synthetic_read` only forced the durability of the current query to some lower value, but didn't set its `changed_at` value, leading to downstream queries assuming that they could reuse the query's value when they could not. Force `changed_at` to the current revision to fix that. This will not result in unnecessary invocations of the query, because salsa still treats it as pure, and won't re-run it if its inputs are up to date.
Additionally, `invalidate` did also not set the slot's `changed_at` field, which is fixed by setting it to the newly created revision.
Co-authored-by: Jonas Schievink <jonasschievink@gmail.com>
279: Remove dead code r=nikomatsakis a=jonas-schievink
This was added in fd036a4f15, but never actually came into effect.
Granting access to `QueryTableMut` for every query type should be harmless, because every method on that type has a where-clause that makes it only work with the right query storage type.
Co-authored-by: Jonas Schievink <jonasschievink@gmail.com>
272: CI installs `rustfmt` where needed r=nikomatsakis a=1tgr
Only the stable toolchain appears to install `rustfmt` by default
Co-authored-by: Tim Robinson <tim.g.robinson@gmail.com>
268: Expose proc macro docs via the main crate r=nikomatsakis a=1tgr
Improve visibility by placing the `database` and `query_group` proc macros at the bottom of the main docs page, instead of manually browsing to the docs for the `salsa-macros` crate.
Co-authored-by: Tim Robinson <tim.g.robinson@gmail.com>
267: remove tracing garbage collection support r=matklad a=nikomatsakis
It is not widely used and it makes it harder to evolve Salsa.
Co-authored-by: Niko Matsakis <niko@alum.mit.edu>
262: RFC: Opinionated cancelation r=nikomatsakis a=nikomatsakis
@matklad and @jonas-schievink have been discussing a fresh take on salsa that builds on the experience we've gained with it, and one of the first simple steps we wanted to take was to make a more opinionated cancelation model. This is a write-up.
Co-authored-by: Niko Matsakis <niko@alum.mit.edu>
265: Implement "opinionated cancellation" r=nikomatsakis a=jonas-schievink
This implements the design described in RFC https://github.com/salsa-rs/salsa/pull/262.
Currently, the `in_par_get_set_cancellation` test is failing. I'm not completely sure what it is trying to test (the comment on the test does not match its behavior), so I couldn't fix it.
Co-authored-by: Jonas Schievink <jonasschievink@gmail.com>
263: remove some unneeded lifetime parameters r=nikomatsakis a=nikomatsakis
Makes the compiler example read better.
Co-authored-by: Niko Matsakis <niko@alum.mit.edu>