This change pulls in https://github.com/kvark/blade/pull/135 and updates
the simplelog dependency for compatibility with that.
Release Notes:
- linux: Show link to troubleshooting docs when we can't open a window
This PR moves the Clippy configuration up to the workspace level.
We're using the [`lints`
table](https://doc.rust-lang.org/cargo/reference/workspaces.html#the-lints-table)
to configure the Clippy ruleset in the workspace's `Cargo.toml`.
Each crate in the workspace now has the following in their own
`Cargo.toml` to inherit the lints from the workspace:
```toml
[lints]
workspace = true
```
This allows for configuring rust-analyzer to show Clippy lints in the
editor by using the following configuration in your Zed `settings.json`:
```json
{
"lsp": {
"rust-analyzer": {
"initialization_options": {
"check": {
"command": "clippy"
}
}
}
}
```
Release Notes:
- N/A
This PR sets up a `cargo xtask clippy` command for running `cargo
clippy` with our defined set of options.
The intent is to make this easier to manage as we start enabling more
Clippy rules.
Release Notes:
- N/A
This PR updates the `theme_importer` to use `serde_json_lenient` to
parse VS Code themes.
This should allow us to parse themes that have trailing commas and such,
in addition to the comment support that we already had.
Release Notes:
- N/A
This PR adds a quick subcommand to the `theme_importer` to facilitate
printing out the JSON schema for a theme.
Note that you do need to pass a `<PATH>` to the subcommand still, even
though it will be ignored. I'll rework the CLI to this at some point.
The JSON schema for the current version of the theme can also be found
at
[`https://zed.dev/schema/themes/v0.1.0.json`](https://zed.dev/schema/themes/v0.1.0.json).
Release Notes:
- N/A
This PR removes the themes defined using the `UserTheme` types, as we're
now loading the themes via JSON.
The `theme_importer` has also been reworked to read in a VS Code theme
and output a new JSON theme.
Release Notes:
- N/A
This PR adds serialized versions of each of the themes that currently
ship with Zed.
In a future PR we'll be looking to make these the canonical
representations of the built-in themes.
Note that we're intentionally repurposing the `theme_importer` to do
this, so that crate is a bit rough-and-ready at the moment.
Release Notes:
- N/A
- [x] Fill in GPL license text.
- [x] live_kit_client depends on live_kit_server as non-dev dependency,
even though it seems to only be used for tests. Is that an issue?
Release Notes:
- N/A
This commit mostly fixes invalid URLs in docstrings. It also
encapsulates crates we reexport (serde stuff + linkme) into a public
module named "private" in order to reduce the API surfaced through docs.
Moreover, I fixed up a bunch of crates that were pulling serde_json in
through gpui explicitly instead of using Cargo manifest.
Release Notes:
- N/A
This PR decouples the generation of licenses for the themes we ship from
the TypeScript theme definitions.
For now, we are embedding the license information for the themes in the
`theme_importer`, and emit a combined `LICENSES` file in the `theme`
crate whenever we import themes. This is also where we check that each
theme has a valid license.
We then use this `LICENSES` file when building up the global license
file for Zed.
This decoupling is one step towards us being able to delete the old Zed1
styles.
Release Notes:
- N/A
This PR decouples the `theme_importer` from the `theme` and `gpui`
crates.
We achieve this by inlining all of the relevant bits needed to
deserialize Zed1 themes.
This will allow us to continue to import Zed1 themes after we land
#3862.
Release Notes:
- N/A
This PR fixes the names of the Rosé Pine themes.
We want to keep the Unicode "é" in the theme name, both because this is
the actual name of the theme, and also to maintain parity with Zed1.
Release Notes:
- N/A
This PR adds the ability to warn in the `theme_importer` when a theme is
missing values.
Providing the `--warn-on-missing` flag to the `theme_importer` will
print a warning for missing theme value when printing the theme.
```sh
cargo run -p theme_importer -- --warn-on-missing
```
Release Notes:
- N/A
This PR adds support for adding a specific set of mappings from Zed
syntax tokens to VS Code scopes for a particular theme family.
We can use this as a fallback when we aren't otherwise able to rely on
the mappings in the theme importer, as sometimes it isn't possible to
make a specific enough matcher that works across all of the themes.
Release Notes:
- N/A
This PR fixes an issues where the hex colors in the generated themes
were not correct.
We're using the [`palette`](https://crates.io/crates/palette) crate to
perform the conversions, as this gives us accurate hex codes that match
the VS Code source themes.
Release Notes:
- N/A
This PR updates the `theme_importer` with support for parsing theme
files containing comments.
Up until now we've been manually removing comments from the VS Code
theme files.
Release Notes:
- N/A
When this feature is set the `themes` module won't be compiled.
This allows us to run the `theme_importer` even when the `themes` module
has compile errors in it.