2ffce4f
Add non-blob columns to SQLite (#27236)
Kirill Bulatov created
2ffce4f
Add non-blob columns to SQLite (#27236)
Kirill Bulatov created
33fc1f4
languages: Fix JS/TS imports not showing correct suggestions after using period (#27235)
Closes #21728 This PR improves autocomplete for imports for all kinds of javascript and typescript files. Adds `.` as `completion_query_characters` which will make it act like word for auto completion context. This allows capturing compete `format.` as query. Before: <img width="500" alt="image" src="https://github.com/user-attachments/assets/849fb342-db73-48e7-a9d8-93f0e5a14b58" /> After: <img width="500" alt="image" src="https://github.com/user-attachments/assets/e3ac3272-3217-4bcd-857f-4a83afc5980e" /> Release Notes: - Improved autocomplete suggestions for JavaScript and TypeScript imports.
Smit Barmase created
7ade7d8
lsp-config: Allow setting a server's environment variables (#27213)
Closes https://github.com/zed-industries/zed/issues/14334, allowing
users to set environment variables for a language server binary like:
```json
"lsp": {
"rust-analyzer": {
"binary": {
"path": "/Users/dbarsky/.cargo/bin/rust-analyzer",
"env": {
"RA_PROFILE": "*>100"
}
},
}
}
```
The newly introduced environment variables are merged with the shell
environment. Perhaps more controversially, I've _also_ removed the
trimming/`stderr:`-prefixing of language server logs. This because
rust-analyzer has some nice, tree-shaped profiling built-in, and it
prevents us from printing profiles like this:
<details>
<img width="1147" alt="Screenshot 2025-03-20 at 12 09 14β―PM"
src="https://github.com/user-attachments/assets/b7066651-6394-492b-b745-906c66d3c7b2"
/>
</details>
Release Notes:
- Added the ability to set a language server's environment variables.
- Removed the `stderr`-prefix of a language server's stderr logs.
David Barsky created
8f86cd7
assistant2: Add design refinements (#27160)
Release Notes: - N/A --------- Co-authored-by: Bennet Bo Fenner <bennetbo@gmx.de> Co-authored-by: Antonio Scandurra <me@as-cii.com> Co-authored-by: Agus Zubiaga <hi@aguz.me>
Danilo Leal , Bennet Bo Fenner , Antonio Scandurra , and Agus Zubiaga created
962709f
docs: Change `render` function's return type (#27229)
θΏ·ζΈ‘ created
cf7d639
Migrate most callers of git-related worktree APIs to use the GitStore (#27225)
This is a pure refactoring PR that goes through all the git-related APIs exposed by the worktree crate and minimizes their use outside that crate, migrating callers of those APIs to read from the GitStore instead. This is to prepare for evacuating git repository state from worktrees and making the GitStore the new source of truth. Other drive-by changes: - `project::git` is now `project::git_store`, for consistency with the other project stores - the project panel's test module has been split into its own file Release Notes: - N/A --------- Co-authored-by: Max Brunsfeld <maxbrunsfeld@gmail.com>
Cole Miller and Max Brunsfeld created
9134630
extensions: Add copy author info button in context menu (#27221)
Closes #26108 Add "Copy Author Info" button to extension context menu. Release Notes: - Added option to copy extension author's name and email from extension context menu.
Smit Barmase created
bc1c0a2
Separate repository state synchronization from worktree synchronization (#27140)
This PR updates our DB schemas and wire protocol to separate the synchronization of git statuses and other repository state from the synchronization of worktrees. This paves the way for moving the code that executes git status updates out of the `worktree` crate and onto the new `GitStore`. That end goal is motivated by two (related) points: - Disentangling git status updates from the worktree's `BackgroundScanner` will allow us to implement a simpler concurrency story for those updates, hopefully fixing some known but elusive bugs (upstream state not updating after push; statuses getting out of sync in remote projects). - By moving git repository state to the project-scoped `GitStore`, we can get rid of the duplication that currently happens when two worktrees are associated with the same git repository. Co-authored-by: Max <max@zed.dev> Release Notes: - N/A --------- Co-authored-by: Max <max@zed.dev> Co-authored-by: Max Brunsfeld <maxbrunsfeld@gmail.com>
Cole Miller , Max , and Max Brunsfeld created
700af63
assistant2: Watch settings for changes to profiles (#27219)
This PR makes it so we watch the settings and update when the profiles change. Release Notes: - N/A
Marshall Bowers created
4b5df21
assistant2: Allow creating agent profiles via settings (#27216)
This PR adds support for creating new agent profiles via the settings:
```json
{
"assistant": {
"profiles": {
"lua": {
"name": "Lua",
"tools": {
"lua-interpreter": true
}
},
"lua-thinking": {
"name": "Lua + Thinking",
"tools": {
"lua-interpreter": true,
"thinking": true
}
}
}
}
}
```
Release Notes:
- N/A
Marshall Bowers created
48b1a43
docs: Fix rendering of keybind in `languages.md` (#27217)
This fixes a broken keybind in the language extension docs: [Language metadata](https://zed.dev/docs/extensions/languages#language-metadata) > `line_comments`. Release Notes: - N/A
Finn Evers created
9609e04
Add a way to copy with the selections trimmed (#27206)
No default binding currently, `cmd/ctr-shift-c` seem somewhat natural but those are occupied by the collab panel. https://github.com/user-attachments/assets/702cc52a-a4b7-4f2c-bb7f-12ca0c66faeb Release Notes: - Added a way to copy with the selections trimmed --------- Co-authored-by: Cole Miller <m@cole-miller.net>
Kirill Bulatov and Cole Miller created
a74f2bb
Reuse values from last debug panel inert state if they exist (#27211)
This should allow the team to iterate faster when using the debug panel to set up a session Release Notes: - N/A
Anthony Eid created
ac45279
debugger: Fix shutdown issues (#27071)
This PR fixes a few issues around shutting down a debug adapter. The first issue I discovered was when I shut down all sessions via `shutdown all adapters` command. We would still fetch the threads request again, because we receive a thread event that indicated that it exited. But this will always time out because the debug adapter is already shutdown at this point, so by updating the check so we don't allow fetching a request when the session is terminated fixes the issue. The second issue fixes a bug where we would always shut down the parent session, when a child session is terminated. This was reintroduced by the big refactor. This is not something we want, because you could receive multiple StartDebugging reverse requests, so if one child is shutting down that does not mean the other ones should have been shutting down as well. Issue was original fixed in https://github.com/RemcoSmitsDev/zed/pull/80#issuecomment-2573943661. ## TODO: - [x] Add tests Release Notes: - N/A
Remco Smits created
7b80cd8
Show more possible matches in code context completion (#27199)
Closes #24794 We now don't filter matches provided by the fuzzy matcher, as it already performs most of the filtering for us. Instead, the custom logic we previously used for filtering is now used to partition, where before discarded matches will be appended at end of list. Before - Filtering out matches with higher fuzzy score <img width="400" alt="image" src="https://github.com/user-attachments/assets/7f9d66a2-0921-499c-af8a-f1e530da50b1" /> After - Changing filter to partition instead, and appending remaining items at the end <img width="400" alt="image" src="https://github.com/user-attachments/assets/45848f70-ed51-4935-976c-6c16c5b5777b" /> Release Notes: - Improved LSP auto complete to show more possible matches. --------- Co-authored-by: Peter Tripp <petertripp@gmail.com>
Smit Barmase and Peter Tripp created
7931b1d
Pre-fill body of email with system specs (#27210)
I think we still want to be able to easily capture system spec info from users. They can decide if they want to include it or not. Release Notes: - N/A
Joseph T. Lyons created
27ebedf
gpui: Make `App::get_name` return an `Option` (#27209)
This PR makes `App::get_name` return an `Option` instead of panicking if the name is not set. We'll let the caller be responsible for dealing with the absence of a name. Release Notes: - N/A
Marshall Bowers created
f9f5126
assistant2: Uniquely identify context server entries in configuration view (#27207)
This PR gives each context server entry in the configuration view a unique element ID. This fixes some issues where the disclosures and switches weren't working properly due to element ID collisions. Release Notes: - N/A
Marshall Bowers created
6408ae8
assistant2: Return no-edits response to architect model (#27200)
Sometimes the editor model returns no search/replace blocks. This usually happens when the architect model calls the edit tool before reading any files. When this happens, we'll now return the raw response from the editor model to the architect model so it can recover accordingly. Release Notes: - N/A
Agus Zubiaga created
c60a703
context_server: Interpret context server command paths relative to the extension's work dir (#27201)
This PR fixes an issues where the commands returned from context server extensions were being used as-is instead of interpreting them relative to the extension's work dir. Release Notes: - Fixed an issue with context server paths not being interpreted relative to the extension's work dir. --------- Co-authored-by: Max Brunsfeld <maxbrunsfeld@gmail.com> Co-authored-by: Thomas Mickley-Doyle <tmickleydoyle@gmail.com>
Marshall Bowers , Max Brunsfeld , and Thomas Mickley-Doyle created
7feb50f
Add UI feedback for checkpoint restoration (#27203)
Release Notes: - N/A Co-authored-by: Agus Zubiaga <hi@aguz.me> Co-authored-by: Bennet Bo Fenner <bennetbo@gmx.de>
Antonio Scandurra , Agus Zubiaga , and Bennet Bo Fenner created
f365b80
Avoid polluting branch list and restore parent commit when using checkpoints (#27191)
Release Notes: - N/A
Antonio Scandurra created
d0641a3
Rework feedback modal (#27186)
After our last community sync, we came to the conclusion that feedback being sent outside of email is difficult to reply to. Our decision was to use the old, tried and true email system, so that we can better respond to people asking questions. <img width="392" alt="SCR-20250320-igub" src="https://github.com/user-attachments/assets/f1d01771-30eb-4b6f-b031-c68ddaac5700" /> Release Notes: - N/A --------- Co-authored-by: Danilo Leal <daniloleal09@gmail.com>
Joseph T. Lyons and Danilo Leal created
2e8c0ff
assistant edit tool: Report when file is empty or doesn't exist (#27190)
Instead of just reporting a search match failure, we'll now indicate whether the file is empty or exists to help the model recover better from bad edits. Release Notes: - N/A
Agus Zubiaga created
4421bdd
assistant: Dismiss model picker upon selection (#27162)
This PR makes the model picker close when you click on a new item. Release Notes: - N/A
Danilo Leal created
aa2fe9c
Add additional git-blame-ignore-revs (#27189)
Release Notes: - N/A
Peter Tripp created
e3578fc
Display what the tool is doing (#27120)
<img width="639" alt="Screenshot 2025-03-19 at 4 56 47β―PM" src="https://github.com/user-attachments/assets/b997f04d-4aff-4070-87b1-ffdb61019bd1" /> Release Notes: - N/A --------- Co-authored-by: Agus Zubiaga <hi@aguz.me>
Richard Feldman and Agus Zubiaga created
aae81fd
Notify about broken task file contents (#27185)
Closes https://github.com/zed-industries/zed/issues/23783 https://github.com/user-attachments/assets/df019f68-a76b-4953-967a-a35ed21206ab Release Notes: - Added notifications when invalid tasks.json/debug.json is saved
Kirill Bulatov created
de99feb
debugger: Ensure both debug and regular global tasks are correctly merged (#27184)
Follow-up of https://github.com/zed-industries/zed/pull/13433 Closes https://github.com/zed-industries/zed/issues/27124 Closes https://github.com/zed-industries/zed/issues/27066 After this change, both old global task source, `tasks.json` and new, `debug.json` started to call for the same task update method: https://github.com/zed-industries/zed/blob/14920ab910c6d0208d23ce6b6e2ed644e6f20f2e/crates/project/src/task_inventory.rs#L414 erasing previous declarations. The PR puts this data under different paths instead and adjusts the code around it. Release Notes: - Fixed custom tasks not shown
Kirill Bulatov created
5bef32f
When determining Python task context, do not consider worktree-less files as an error (#27183)
Makes Python plugin to output  for standalone Python files now, instead of nothing as now. Before the change, no task context was created for the standalone file due to `VariableName::RelativeFile` lookup considered as an error. Now, Zed continues and constructs whatever possible context instead. That `pytest` task seems odd, as the logic fixed here needs a relative path (hence, a worktree) to consider unit tests. We do not have variables at the moment the associated tasks are queried for: https://github.com/zed-industries/zed/blob/14920ab910c6d0208d23ce6b6e2ed644e6f20f2e/crates/languages/src/python.rs#L359-L363 https://github.com/zed-industries/zed/blob/14920ab910c6d0208d23ce6b6e2ed644e6f20f2e/crates/languages/src/python.rs#L417-L446 so we cannot filter this the same way the PR does. Maybe, we can use a `VariableName::RelativeFile` instead of `VariableName::File` there? Release Notes: - Show tasks from Python plugin for standalone files
Kirill Bulatov created
23e8519
Add `completion_query_characters` in language (#27175)
Closes #18581 Now characters for completing query and word characters, which are responsible for selecting words by double clicking or navigating, are different. This fixes a bunch of things: For settings.json, this improves completions to treat the whole string as a completion query, instead of just the last word. We now added "space" as a completion query character without it being a word character. For keymap.json, this improves selecting part of an action as the ":" character is only a completion character and not a word character. So, completions would still trigger on ":" and query capture will treat ":" as a word, but for actions like selections and navigation, ":" will be treated as punctuation. Before: Unnecessary related suggestions as query is only the last word which is "d". <img width="300" alt="image" src="https://github.com/user-attachments/assets/8199a715-7521-49dd-948b-e6aaed04c488" /> Double clicking `ToggleFold` selects the whole action: <img width="300" alt="image" src="https://github.com/user-attachments/assets/c7f91a6b-06d5-45b6-9d59-61a1b2deda71" /> After: Now query is "one d" and it shows only matched ones. <img width="300" alt="image" src="https://github.com/user-attachments/assets/1455dfbc-9906-42e8-b8aa-b3f551194ca2" /> Double clicking `ToggleFold` only selects part of the action, which is more refined behavior. <img width="300" alt="image" src="https://github.com/user-attachments/assets/34b1c3c2-184f-402f-9dc8-73030a8c370f" /> Release Notes: - Improved autocomplete suggestions in `settings.json`, now whole string is queried instead of just last word of string, which filters out lot of false positives. - Improved selection of action in `keymap.json`, where now you can double click to only select certain part of action, instead of selecting whole action. --------- Co-authored-by: Max Brunsfeld <maxbrunsfeld@gmail.com> Co-authored-by: Ben Kunkle <ben@zed.dev>
Smit Barmase , Max Brunsfeld , and Ben Kunkle created
1180b6f
Initial support for AI assistant rules files (#27168)
Release Notes: - N/A --------- Co-authored-by: Danilo <danilo@zed.dev> Co-authored-by: Nathan <nathan@zed.dev> Co-authored-by: Thomas <thomas@zed.dev>
Michael Sloan , Danilo , Nathan , and Thomas created
14920ab
Update swatinem/rust-cache digest to 9d47c6a (#27121)
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [swatinem/rust-cache](https://redirect.github.com/swatinem/rust-cache) | action | digest | `f0deed1` -> `9d47c6a` | --- ### Configuration π **Schedule**: Branch creation - "after 3pm on Wednesday" in timezone America/New_York, Automerge - At any time (no schedule defined). π¦ **Automerge**: Disabled by config. Please merge this manually once you are satisfied. β» **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. π **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- Release Notes: - N/A <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4yMDcuMSIsInVwZGF0ZWRJblZlciI6IjM5LjIwNy4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate[bot] and renovate[bot] created
000b981
Update Rust crate rustls-platform-verifier to v0.5.1 (#27136)
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [rustls-platform-verifier](https://redirect.github.com/rustls/rustls-platform-verifier) | workspace.dependencies | patch | `0.5.0` -> `0.5.1` | --- ### Configuration π **Schedule**: Branch creation - "after 3pm on Wednesday" in timezone America/New_York, Automerge - At any time (no schedule defined). π¦ **Automerge**: Disabled by config. Please merge this manually once you are satisfied. β» **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. π **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- Release Notes: - N/A <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4yMDcuMSIsInVwZGF0ZWRJblZlciI6IjM5LjIwNy4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate[bot] and renovate[bot] created
c9bff6e
Update Rust crate sea-orm to v1.1.7 (#27137)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [sea-orm](https://www.sea-ql.org/SeaORM)
([source](https://redirect.github.com/SeaQL/sea-orm)) | dev-dependencies
| patch | `1.1.5` -> `1.1.7` |
| [sea-orm](https://www.sea-ql.org/SeaORM)
([source](https://redirect.github.com/SeaQL/sea-orm)) | dependencies |
patch | `1.1.5` -> `1.1.7` |
---
### Release Notes
<details>
<summary>SeaQL/sea-orm (sea-orm)</summary>
###
[`v1.1.7`](https://redirect.github.com/SeaQL/sea-orm/blob/HEAD/CHANGELOG.md#117---2025-03-02)
[Compare
Source](https://redirect.github.com/SeaQL/sea-orm/compare/1.1.6...1.1.7)
##### New Features
- Support nested entities in `FromQueryResult`
[https://github.com/SeaQL/sea-orm/pull/2508](https://redirect.github.com/SeaQL/sea-orm/pull/2508)
```rust
#[derive(FromQueryResult)]
struct Cake {
id: i32,
name: String,
#[sea_orm(nested)]
bakery: Option<CakeBakery>,
}
#[derive(FromQueryResult)]
struct CakeBakery {
#[sea_orm(from_alias = "bakery_id")]
id: i32,
#[sea_orm(from_alias = "bakery_name")]
title: String,
}
let cake: Cake = cake::Entity::find()
.select_only()
.column(cake::Column::Id)
.column(cake::Column::Name)
.column_as(bakery::Column::Id, "bakery_id")
.column_as(bakery::Column::Name, "bakery_name")
.left_join(bakery::Entity)
.order_by_asc(cake::Column::Id)
.into_model()
.one(&ctx.db)
.await?
.unwrap();
assert_eq!(
cake,
Cake {
id: 1,
name: "Cake".to_string(),
bakery: Some(CakeBakery {
id: 20,
title: "Bakery".to_string(),
})
}
);
```
- Support nested entities in `DerivePartialModel`
[https://github.com/SeaQL/sea-orm/pull/2508](https://redirect.github.com/SeaQL/sea-orm/pull/2508)
```rust
#[derive(DerivePartialModel)] // FromQueryResult is no longer needed
#[sea_orm(entity = "cake::Entity", from_query_result)]
struct Cake {
id: i32,
name: String,
#[sea_orm(nested)]
bakery: Option<Bakery>,
}
#[derive(DerivePartialModel)]
#[sea_orm(entity = "bakery::Entity", from_query_result)]
struct Bakery {
id: i32,
#[sea_orm(from_col = "Name")]
title: String,
}
// same as previous example, but without the custom selects
let cake: Cake = cake::Entity::find()
.left_join(bakery::Entity)
.order_by_asc(cake::Column::Id)
.into_partial_model()
.one(&ctx.db)
.await?
.unwrap();
assert_eq!(
cake,
Cake {
id: 1,
name: "Cake".to_string(),
bakery: Some(CakeBakery {
id: 20,
title: "Bakery".to_string(),
})
}
);
```
- Derive also `IntoActiveModel` with `DerivePartialModel`
[https://github.com/SeaQL/sea-orm/pull/2517](https://redirect.github.com/SeaQL/sea-orm/pull/2517)
```rust
#[derive(DerivePartialModel)]
#[sea_orm(entity = "cake::Entity", into_active_model)]
struct Cake {
id: i32,
name: String,
}
assert_eq!(
Cake {
id: 12,
name: "Lemon Drizzle".to_owned(),
}
.into_active_model(),
cake::ActiveModel {
id: Set(12),
name: Set("Lemon Drizzle".to_owned()),
..Default::default()
}
);
```
- Added `SelectThree`
[https://github.com/SeaQL/sea-orm/pull/2518](https://redirect.github.com/SeaQL/sea-orm/pull/2518)
```rust
// Order -> (many) Lineitem -> Cake
let items: Vec<(order::Model, Option<lineitem::Model>, Option<cake::Model>)> =
order::Entity::find()
.find_also_related(lineitem::Entity)
.and_also_related(cake::Entity)
.order_by_asc(order::Column::Id)
.order_by_asc(lineitem::Column::Id)
.all(&ctx.db)
.await?;
```
##### Enhancements
- Support complex type path in `DeriveIntoActiveModel`
[https://github.com/SeaQL/sea-orm/pull/2517](https://redirect.github.com/SeaQL/sea-orm/pull/2517)
```rust
#[derive(DeriveIntoActiveModel)]
#[sea_orm(active_model = "<fruit::Entity as EntityTrait>::ActiveModel")]
struct Fruit {
cake_id: Option<Option<i32>>,
}
```
- Added `DatabaseConnection::close_by_ref`
[https://github.com/SeaQL/sea-orm/pull/2511](https://redirect.github.com/SeaQL/sea-orm/pull/2511)
```rust
pub async fn close(self) -> Result<(), DbErr> { .. } // existing
pub async fn close_by_ref(&self) -> Result<(), DbErr> { .. } // new
```
##### House Keeping
- Cleanup legacy `ActiveValue::Set`
[https://github.com/SeaQL/sea-orm/pull/2515](https://redirect.github.com/SeaQL/sea-orm/pull/2515)
###
[`v1.1.6`](https://redirect.github.com/SeaQL/sea-orm/blob/HEAD/CHANGELOG.md#116---2025-02-24)
[Compare
Source](https://redirect.github.com/SeaQL/sea-orm/compare/1.1.5...1.1.6)
##### New Features
- Support PgVector (under feature flag `postgres-vector`)
[https://github.com/SeaQL/sea-orm/pull/2500](https://redirect.github.com/SeaQL/sea-orm/pull/2500)
```rust
// Model
#[derive(Clone, Debug, PartialEq, DeriveEntityModel)]
#[sea_orm(table_name = "image_model")]
pub struct Model {
#[sea_orm(primary_key, auto_increment = false)]
pub id: i32,
pub embedding: PgVector,
}
// Schema
sea_query::Table::create()
.table(image_model::Entity.table_ref())
.col(ColumnDef::new(Column::Id).integer().not_null().primary_key())
.col(ColumnDef::new(Column::Embedding).vector(None).not_null())
..
// Insert
ActiveModel {
id: NotSet,
embedding: Set(PgVector::from(vec![1., 2., 3.])),
}
.insert(db)
.await?
```
- Added `Insert::exec_with_returning_keys` &
`Insert::exec_with_returning_many` (Postgres only)
```rust
assert_eq!(
Entity::insert_many([
ActiveModel { id: NotSet, name: Set("two".into()) },
ActiveModel { id: NotSet, name: Set("three".into()) },
])
.exec_with_returning_many(db)
.await
.unwrap(),
[
Model { id: 2, name: "two".into() },
Model { id: 3, name: "three".into() },
]
);
assert_eq!(
cakes_bakers::Entity::insert_many([
cakes_bakers::ActiveModel {
cake_id: Set(1),
baker_id: Set(2),
},
cakes_bakers::ActiveModel {
cake_id: Set(2),
baker_id: Set(1),
},
])
.exec_with_returning_keys(db)
.await
.unwrap(),
[(1, 2), (2, 1)]
);
```
- Added `DeleteOne::exec_with_returning` &
`DeleteMany::exec_with_returning`
[https://github.com/SeaQL/sea-orm/pull/2432](https://redirect.github.com/SeaQL/sea-orm/pull/2432)
##### Enhancements
- Expose underlying row types (e.g. `sqlx::postgres::PgRow`)
[https://github.com/SeaQL/sea-orm/pull/2265](https://redirect.github.com/SeaQL/sea-orm/pull/2265)
- \[sea-orm-cli] Added `acquire-timeout` option
[https://github.com/SeaQL/sea-orm/pull/2461](https://redirect.github.com/SeaQL/sea-orm/pull/2461)
- \[sea-orm-cli] Added `with-prelude` option
[https://github.com/SeaQL/sea-orm/pull/2322](https://redirect.github.com/SeaQL/sea-orm/pull/2322)
- \[sea-orm-cli] Added `impl-active-model-behavior` option
[https://github.com/SeaQL/sea-orm/pull/2487](https://redirect.github.com/SeaQL/sea-orm/pull/2487)
##### Bug Fixes
- Fixed `seaography::register_active_enums` macro
[https://github.com/SeaQL/sea-orm/pull/2475](https://redirect.github.com/SeaQL/sea-orm/pull/2475)
##### House keeping
- Remove `futures` crate, replace with `futures-util`
[https://github.com/SeaQL/sea-orm/pull/2466](https://redirect.github.com/SeaQL/sea-orm/pull/2466)
</details>
---
### Configuration
π
**Schedule**: Branch creation - "after 3pm on Wednesday" in timezone
America/New_York, Automerge - At any time (no schedule defined).
π¦ **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.
β» **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.
π **Ignore**: Close this PR and you won't be reminded about these
updates again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box
---
Release Notes:
- N/A
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4yMDcuMSIsInVwZGF0ZWRJblZlciI6IjM5LjIwNy4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate[bot] and renovate[bot] created
9fd2d06
Update Rust crate mimalloc to v0.1.44 (#27131)
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [mimalloc](https://redirect.github.com/purpleprotocol/mimalloc_rust) | dependencies | patch | `0.1.43` -> `0.1.44` | --- ### Release Notes <details> <summary>purpleprotocol/mimalloc_rust (mimalloc)</summary> ### [`v0.1.44`](https://redirect.github.com/purpleprotocol/mimalloc_rust/releases/tag/v0.1.44): Version 0.1.44 [Compare Source](https://redirect.github.com/purpleprotocol/mimalloc_rust/compare/v0.1.43...v0.1.44) ##### Changes - Mimalloc v2.2.2 </details> --- ### Configuration π **Schedule**: Branch creation - "after 3pm on Wednesday" in timezone America/New_York, Automerge - At any time (no schedule defined). π¦ **Automerge**: Disabled by config. Please merge this manually once you are satisfied. β» **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. π **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- Release Notes: - N/A <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4yMDcuMSIsInVwZGF0ZWRJblZlciI6IjM5LjIwNy4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate[bot] and renovate[bot] created
11425cf
Update Rust crate unindent to v0.2.4 (#27151)
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [unindent](https://redirect.github.com/dtolnay/indoc) | workspace.dependencies | patch | `0.2.3` -> `0.2.4` | --- ### Release Notes <details> <summary>dtolnay/indoc (unindent)</summary> ### [`v0.2.4`](https://redirect.github.com/dtolnay/indoc/releases/tag/0.2.4) [Compare Source](https://redirect.github.com/dtolnay/indoc/compare/0.2.3...0.2.4) - Update to Syn 0.13 </details> --- ### Configuration π **Schedule**: Branch creation - "after 3pm on Wednesday" in timezone America/New_York, Automerge - At any time (no schedule defined). π¦ **Automerge**: Disabled by config. Please merge this manually once you are satisfied. β» **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. π **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- Release Notes: - N/A <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4yMDcuMSIsInVwZGF0ZWRJblZlciI6IjM5LjIwNy4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate[bot] and renovate[bot] created
b54c920
Update Rust crate winresource to v0.1.20 (#27152)
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [winresource](https://redirect.github.com/BenjaminRi/winresource) | build-dependencies | patch | `0.1.19` -> `0.1.20` | --- ### Configuration π **Schedule**: Branch creation - "after 3pm on Wednesday" in timezone America/New_York, Automerge - At any time (no schedule defined). π¦ **Automerge**: Disabled by config. Please merge this manually once you are satisfied. β» **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. π **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- Release Notes: - N/A <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4yMDcuMSIsInVwZGF0ZWRJblZlciI6IjM5LjIwNy4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate[bot] and renovate[bot] created
3bbdc54
Update Rust crate time to v0.3.40 (#27147)
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [time](https://time-rs.github.io)
([source](https://redirect.github.com/time-rs/time)) |
workspace.dependencies | patch | `0.3.37` -> `0.3.40` |
---
### Release Notes
<details>
<summary>time-rs/time (time)</summary>
###
[`v0.3.40`](https://redirect.github.com/time-rs/time/blob/HEAD/CHANGELOG.md#0340-2025-03-18)
[Compare
Source](https://redirect.github.com/time-rs/time/compare/v0.3.39...v0.3.40)
##### Added
- Visibility modifiers may now be added to the `mod` generated by
`time::sere::format_description!`.
###
[`v0.3.39`](https://redirect.github.com/time-rs/time/blob/HEAD/CHANGELOG.md#0339-2025-03-06)
[Compare
Source](https://redirect.github.com/time-rs/time/compare/v0.3.38...v0.3.39)
##### Fixed
- Doc tests run successfully with the default feature set.
- wasm builds work again.
Both of these were regressions in v0.3.38 and are now checked in CI.
###
[`v0.3.38`](https://redirect.github.com/time-rs/time/blob/HEAD/CHANGELOG.md#0338-2025-03-05)
[Compare
Source](https://redirect.github.com/time-rs/time/compare/v0.3.37...v0.3.38)
##### Added
- The `[year]` component (in format descriptions) now supports a `range`
modifier, which can be
either `standard` or `extended`. The default is `extended` for backwards
compatibility. This is
intended as a manner to opt *out* of the extended range when the
`large-dates` feature is enabled.
When the `large-dates` feature is not enabled, the modifier has no
effect.
- `UtcDateTime`, which is semantically equivalent to an `OffsetDateTime`
with UTC as its offset. The
advantage is that it is the same size as a `PrimitiveDateTime` and has
improved operability with
well-known formats.
As part of this, there were some other additions:
- `utc_datetime!` macro, which is similar to the `datetime!` macro but
constructs a `UtcDateTime`.
- `PrimitiveDateTime::as_utc`
- `OffsetDateTime::to_utc`
- `OffsetDateTime::checked_to_utc`
- `time::serde::timestamp::milliseconds_i64`, which is a module to
serialize/deserialize timestamps
as the Unix timestamp. The pre-existing module does this as an `i128`
where an `i64` would
suffice. This new module should be preferred.
##### Changed
- `error::Format` has had its `source()` implementation changed to no
longer return a boxed value
from the `ComponentRange` variant. If you were explicitly expecting
this, you will need to update
your code. The method API remains unchanged.
- `[year repr:century]` supports single-digit values.
- All `format_into` methods accept `?Sized` references.
##### Miscellaneous
- Some non-exhaustive enum variants that are no longer used have been
modified to be statically
proven as uninhabited. The relevant fields are doc-hidden and not
semver-guaranteed to remain as
such, though it is unlikely to change.
- An unnecessary check when parsing RFC 2822 has been removed.
- Various methods have had their implementations changed, resulting in
significant performance
gains. Among the methods changed are
- `util::is_leap_year`
- `util::weeks_in_year`
- `Month::length`
- `Date::to_calendar_date`
- `Date::month`
- `Date::day`
- `Date::from_julian_day`
- `Date::to_julian_day`
- other methods that call into these methods
</details>
---
### Configuration
π
**Schedule**: Branch creation - "after 3pm on Wednesday" in timezone
America/New_York, Automerge - At any time (no schedule defined).
π¦ **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.
β» **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.
π **Ignore**: Close this PR and you won't be reminded about this update
again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box
---
Release Notes:
- N/A
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4yMDcuMSIsInVwZGF0ZWRJblZlciI6IjM5LjIwNy4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate[bot] and renovate[bot] created
e4e3ce6
Update Rust crate serde_repr to v0.1.20 (#27146)
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [serde_repr](https://redirect.github.com/dtolnay/serde-repr) | workspace.dependencies | patch | `0.1.19` -> `0.1.20` | --- ### Release Notes <details> <summary>dtolnay/serde-repr (serde_repr)</summary> ### [`v0.1.20`](https://redirect.github.com/dtolnay/serde-repr/releases/tag/0.1.20) [Compare Source](https://redirect.github.com/dtolnay/serde-repr/compare/0.1.19...0.1.20) - Documentation improvements </details> --- ### Configuration π **Schedule**: Branch creation - "after 3pm on Wednesday" in timezone America/New_York, Automerge - At any time (no schedule defined). π¦ **Automerge**: Disabled by config. Please merge this manually once you are satisfied. β» **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. π **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- Release Notes: - N/A <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4yMDcuMSIsInVwZGF0ZWRJblZlciI6IjM5LjIwNy4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate[bot] and renovate[bot] created
8cd96cb
Update Rust crate serde_json to v1.0.140 (#27144)
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [serde_json](https://redirect.github.com/serde-rs/json) | dependencies | patch | `1.0.139` -> `1.0.140` | | [serde_json](https://redirect.github.com/serde-rs/json) | workspace.dependencies | patch | `1.0.139` -> `1.0.140` | --- ### Release Notes <details> <summary>serde-rs/json (serde_json)</summary> ### [`v1.0.140`](https://redirect.github.com/serde-rs/json/releases/tag/v1.0.140) [Compare Source](https://redirect.github.com/serde-rs/json/compare/v1.0.139...v1.0.140) - Documentation improvements </details> --- ### Configuration π **Schedule**: Branch creation - "after 3pm on Wednesday" in timezone America/New_York, Automerge - At any time (no schedule defined). π¦ **Automerge**: Disabled by config. Please merge this manually once you are satisfied. β» **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. π **Ignore**: Close this PR and you won't be reminded about these updates again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- Release Notes: - N/A <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4yMDcuMSIsInVwZGF0ZWRJblZlciI6IjM5LjIwNy4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate[bot] and renovate[bot] created
2741242
Fix code action formatters creating separate transaction (#26311)
Closes #24588 Closes #25419 Restructures `LspStore.format_local` a decent bit in order to make how the transaction history is preserved more clear, and in doing so fix various bugs with how the transaction history is handled during a format request (especially when formatting in remote dev) Release Notes: - Fixed an issue that prevented formatting from working when working with remote dev - Fixed an issue when using code actions as a format step where the edits made by the code actions would not be grouped with the other format edits in the undo history
Ben Kunkle created
1cf252f
Update Rust crate semver to v1.0.26 (#27143)
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [semver](https://redirect.github.com/dtolnay/semver) | workspace.dependencies | patch | `1.0.25` -> `1.0.26` | --- ### Release Notes <details> <summary>dtolnay/semver (semver)</summary> ### [`v1.0.26`](https://redirect.github.com/dtolnay/semver/releases/tag/1.0.26) [Compare Source](https://redirect.github.com/dtolnay/semver/compare/1.0.25...1.0.26) - Documentation improvements </details> --- ### Configuration π **Schedule**: Branch creation - "after 3pm on Wednesday" in timezone America/New_York, Automerge - At any time (no schedule defined). π¦ **Automerge**: Disabled by config. Please merge this manually once you are satisfied. β» **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. π **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- Release Notes: - N/A <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4yMDcuMSIsInVwZGF0ZWRJblZlciI6IjM5LjIwNy4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate[bot] and renovate[bot] created
e46c72f
nix: Add nightly build job with cachix (#27014)
I'll be using this to `nix run github:zed-industries/zed/nightly` and get an up-to-date and cached nightly build. It'll also serve as a way to warn me when the nix build is broken, rather than having to wait for users to report it. Eventually and depending on the build time of the nix builds, we may want to consider putting a nix build in CI (#17458) to prevent breakages, but for now a best-effort nightly build that doesn't block the job if it fails is a good start. Resolve #19937 Release Notes: - N/A
Julia Ryan created
63f656f
Update Rust crate async-compression to v0.4.21 (#27122)
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [async-compression](https://redirect.github.com/Nullus157/async-compression) | workspace.dependencies | patch | `0.4.20` -> `0.4.21` | --- ### Release Notes <details> <summary>Nullus157/async-compression (async-compression)</summary> ### [`v0.4.21`](https://redirect.github.com/Nullus157/async-compression/blob/HEAD/CHANGELOG.md#0421---2025-03-15) [Compare Source](https://redirect.github.com/Nullus157/async-compression/compare/v0.4.20...v0.4.21) ##### Fixed - When flate encoding, do not mark internal state as flushed if it ran out of buffer space. - Add debug assertion in `produce` method to check buffer capacity in implementations for `BufWriter`. </details> --- ### Configuration π **Schedule**: Branch creation - "after 3pm on Wednesday" in timezone America/New_York, Automerge - At any time (no schedule defined). π¦ **Automerge**: Disabled by config. Please merge this manually once you are satisfied. β» **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. π **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- Release Notes: - N/A <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4yMDcuMSIsInVwZGF0ZWRJblZlciI6IjM5LjIwNy4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate[bot] and renovate[bot] created
31b8c36
Update Rust crate async-std to v1.13.1 (#27127)
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [async-std](https://async.rs) ([source](https://redirect.github.com/async-rs/async-std)) | dependencies | patch | `1.13.0` -> `1.13.1` | --- ### Release Notes <details> <summary>async-rs/async-std (async-std)</summary> ### [`v1.13.1`](https://redirect.github.com/async-rs/async-std/blob/HEAD/CHANGELOG.md#1131---2025-02-21) [Compare Source](https://redirect.github.com/async-rs/async-std/compare/v1.13.0...v1.13.1) `async-std` has officially been discontinued. We recommend that all users and libraries migrate to the excellent [`smol`](https://redirect.github.com/smol-rs/smol/) project. </details> --- ### Configuration π **Schedule**: Branch creation - "after 3pm on Wednesday" in timezone America/New_York, Automerge - At any time (no schedule defined). π¦ **Automerge**: Disabled by config. Please merge this manually once you are satisfied. β» **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. π **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- Release Notes: - N/A <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4yMDcuMSIsInVwZGF0ZWRJblZlciI6IjM5LjIwNy4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate[bot] and renovate[bot] created
dfdca54
assistant2: Handle empty tool results by providing placeholder text (#27130)
This is surprising, but the Anthropic API returns a 400 if a tool output is an empty string because it thinks we're attaching a `tool use` without a corresponding `tool result`, but we are not, it's just empty (which seems totally reasonable) π Release Notes: - N/A
Agus Zubiaga created
14c0369
Update Rust crate async-trait to v0.1.88 (#27128)
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [async-trait](https://redirect.github.com/dtolnay/async-trait) | workspace.dependencies | patch | `0.1.87` -> `0.1.88` | --- ### Release Notes <details> <summary>dtolnay/async-trait (async-trait)</summary> ### [`v0.1.88`](https://redirect.github.com/dtolnay/async-trait/releases/tag/0.1.88) [Compare Source](https://redirect.github.com/dtolnay/async-trait/compare/0.1.87...0.1.88) - Fix lifetime bounding on generic parameters that have cfg ([#​289](https://redirect.github.com/dtolnay/async-trait/issues/289)) </details> --- ### Configuration π **Schedule**: Branch creation - "after 3pm on Wednesday" in timezone America/New_York, Automerge - At any time (no schedule defined). π¦ **Automerge**: Disabled by config. Please merge this manually once you are satisfied. β» **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. π **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- Release Notes: - N/A <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4yMDcuMSIsInVwZGF0ZWRJblZlciI6IjM5LjIwNy4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate[bot] and renovate[bot] created
5387ae9
Add documentation for secondary modifier (#27129)
Follow up to: https://github.com/zed-industries/zed/pull/26390 Release Notes: - N/A
Mikayla Maki created
c30fb5f
Use shell script language for APKBUILD files (#27099)
`APKBUILD` files are similar to `PKGBUILD` used by arch linux, but are used to build alpine linux packages: https://wiki.alpinelinux.org/wiki/APKBUILD_Reference Release Notes: - Added recognition for `APKBUILD` files as "Shell Script".
Angelo Verlain Shema created