Skip to content

Commit d062962

Browse files
authored
Update repository documentation (#2330)
1 parent 839ac47 commit d062962

File tree

3 files changed

+32
-25
lines changed

3 files changed

+32
-25
lines changed

CONTRIBUTING.md

Lines changed: 13 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
# How to contribute
22

33
**IMPORTANT:** The Druid project is being discontinued. While we will still accept
4-
all contributions, we'll prefer bugfixes and documentations improvements to new
4+
all contributions, we'll prefer bug fixes and documentation improvements to new
55
features.
66

77
If you still want to contribute, here are the guidelines you need to follow.
@@ -38,9 +38,9 @@ set -e
3838
echo "cargo fmt"
3939
cargo fmt --all -- --check
4040
echo "cargo clippy druid-shell"
41-
cargo clippy --manifest-path=druid-shell/Cargo.toml --all-targets -- -D warnings
41+
cargo clippy --manifest-path=druid-shell/Cargo.toml --all-targets --features=raw-win-handle -- -D warnings
4242
echo "cargo clippy druid"
43-
cargo clippy --manifest-path=druid/Cargo.toml --all-targets --features=svg,image,im -- -D warnings
43+
cargo clippy --manifest-path=druid/Cargo.toml --all-targets --features=svg,image,im,raw-win-handle -- -D warnings
4444
echo "cargo clippy druid (wasm)"
4545
cargo clippy --manifest-path=druid/Cargo.toml --all-targets --features=image,im --target wasm32-unknown-unknown -- -D warnings
4646
echo "cargo clippy druid-derive"
@@ -126,42 +126,35 @@ old versions of our sub-dependencies and so we shouldn't claim that the old vers
126126

127127
#### Prerequisites for updating the dependency specifications
128128

129-
An easy way to do this is to use the `cargo upgrade` tool available via [cargo-edit].
129+
An easy way to do this is to use the `cargo upgrade` tool available via [`cargo-edit`].
130130

131131
```sh
132132
cargo install cargo-edit
133133
```
134134

135-
#### Performing the update
135+
*Note that the following instructions were written for `cargo-edit` v0.11. If you have a newer
136+
major version there may have been changes to the way `cargo-edit` works.*
136137

137-
All of the following commands must be run from the root workspace.
138+
#### Performing the update
138139

139-
First we want to update our `Cargo.lock` file to contain the newest versions
140-
which are still [semver] compatible with what we have specified in our `Cargo.toml` files.
140+
We want to update our `Cargo.toml` files to specify the newest versions which are still
141+
[semver] compatible with what we have previously specified in our `Cargo.toml` files.
141142

142143
If you just want to see what would happen you can add the `--dry-run` option.
143144

144145
```sh
145-
cargo update
146+
cargo upgrade
146147
```
147148

148-
Next we'll update all the versions in the `Cargo.toml` files to match the versions
149-
specified in `Cargo.lock`. We'll do this using the `--to-lockfile` option of `cargo upgrade`.
150-
It's crucial that we use `--to-lockfile` because without it `cargo upgrade` won't respect semver.
151-
152-
If you just want to see what would happen you can add the `--dry-run` option.
153-
154-
```sh
155-
cargo upgrade --workspace --to-lockfile
156-
```
149+
Running this command will update all the `Cargo.toml` files in the workspace and also `Cargo.lock`.
157150

158151
#### Semver incompatible updates
159152

160153
Incompatible version updates should be done manually after carefully reviewing the changes.
161154
However you can still use the `cargo upgrade` tool to find out which dependencies could be updated.
162155

163156
```sh
164-
cargo upgrade --workspace --dry-run
157+
cargo upgrade -i --dry-run
165158
```
166159

167160
Then based on the reported potential updates you should manually go and check out what has changed,
@@ -201,6 +194,6 @@ Finally, we [create a new Github release](https://docs.github.com/en/github/admi
201194
[GitHub Help]: https://help.github.com/articles/about-pull-requests/
202195
[AUTHORS]: AUTHORS
203196
[changelog]: CHANGELOG.md
204-
[cargo-edit]: https://github.com/killercup/cargo-edit
197+
[`cargo-edit`]: https://crates.io/crates/cargo-edit
205198
[semver]: https://doc.rust-lang.org/cargo/reference/specifying-dependencies.html
206199
[git `pre-push` hook]: https://githooks.com

README.md

Lines changed: 18 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -13,17 +13,30 @@ performance, a rich palette of interactions (hence a widget library to support
1313
them), and playing well with the native platform.
1414
See the [goals section](#Goals) for more details.
1515

16-
**IMPORTANT:** The Druid project is being discontinued. While we will still accept
17-
all contributions, we'll prefer bugfixes and documentations improvements to new
18-
features. Current development effort is focused on [Xilem](https://github.com/linebender/xilem).
19-
2016
We have been doing periodic releases of Druid on crates.io, but the API is still unstable. All changes are documented
2117
in [the changelog](https://github.com/linebender/druid/blob/master/CHANGELOG.md).
2218

2319
For an overview of some key concepts, see the (work in progress) [Druid book].
2420

21+
## Project status
22+
23+
**The Druid project is being discontinued by the core developer team.**
24+
25+
New development effort is focused on [Xilem], which has a lot of fundamental changes to allow for
26+
a wider variety of applications with better performance, but it also heavily inherits from Druid.
27+
We see [Xilem] as the future of Druid.
28+
29+
Druid is reasonably usable for [some subset of applications](https://github.com/linebender/druid/issues/1360)
30+
and has a significant testing history, which ensures some stability and correctness.
31+
However we don't expect any major new features to be added to Druid. As such we don't recommend
32+
using Druid for brand new applications. If you insist, then at least make sure your application
33+
doesn't require a feature that Druid doesn't have, e.g. accessibility or 3D support.
34+
2535
## Contributions
2636

37+
As the Druid project is being discontinued, we will still accept all contributions,
38+
but we'll prefer bug fixes and documentation improvements to new features.
39+
2740
A very good place to ask questions and discuss development work is our [Zulip
2841
chat instance], in the #druid-help and #druid channels, respectively.
2942

@@ -324,3 +337,4 @@ active and friendly community.
324337
[Relm]: https://github.com/antoyo/relm
325338
[Moxie]: https://github.com/anp/moxie
326339
[Slint]: https://github.com/slint-ui/slint
340+
[Xilem]: https://github.com/linebender/xilem

docs/src/01_overview.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ Druid works without special difficulty.
1818

1919
## Prerequisites
2020

21-
This tutorial assumes basic familliarity with Rust and a working setup with the basic tooling like
21+
This tutorial assumes basic familiarity with Rust and a working setup with the basic tooling like
2222
Rustup and Cargo. This tutorial will use stable Rust (v1.65.0 at the time of writing) and the latest
2323
released version of Druid (v0.8).
2424

0 commit comments

Comments
 (0)