ccee512
Intercept /login and /logout commands for now
Conrad Irwin created
ccee512
Intercept /login and /logout commands for now
Conrad Irwin created
4c411b9
language_models: Make `JsonSchemaSubset` the default `tool_input_format` for the OpenAI-compatible provider (#34921)
Closes #30188 Closes #34911 Closes #34906 Many OpenAI-compatible providers do not automatically filter the tool schema to comply with the underlying model's requirements; they simply proxy the request. This creates issues, as models like **Gemini**, **Grok**, and **Claude** (when accessed via LiteLLM on Bedrock) are incompatible with Zed's default tool schema. This PR addresses this by defaulting to a more compatible schema subset instead of the full schema. ### Why this approach? * **Avoids Poor User Experience:** One alternative was to add an option for users to manually set the JSON schema for models that return a `400 Bad Request` due to an invalid tool schema. This was discarded as it provides a poor user experience. * **Simplifies Complex Logic:** Another option was to filter the schema based on the model ID. However, as demonstrated in the attached issues, this is unreliable. For instance, `claude-4-sonnet` fails when proxied through LiteLLM on Bedrock. Reliably determining behavior would require a non-trivial implementation to manage provider-and-model combinations. * **Better Default Behavior:** The current approach ensures that tool usage works out-of-the-box for the majority of cases by default, providing the most robust and user-friendly solution. Release Notes: - Improved tool compatibility with OpenAI API-compatible providers Signed-off-by: Umesh Yadav <git@umesh.dev> Co-authored-by: Peter Tripp <peter@zed.dev>
Umesh Yadav and Peter Tripp created
5ac6ae5
docs: Link glossary (#37387)
Follow-up to: https://github.com/zed-industries/zed/pull/37360 Add glossary.md to SUMMARY.md so it's linked to the public documentation. Release Notes: - N/A
Peter Tripp created
c01f12b
zeta: Small refactoring in license detection check - rfind instead of iterated ends_with (#37329)
Release Notes: - N/A
Michael Sloan created
dfa066d
acp: Display slash command hints (#37376)
Displays the slash command's argument hint while it hasn't been provided: https://github.com/user-attachments/assets/f3bb148c-247d-43bc-810d-92055a313514 Release Notes: - N/A --------- Co-authored-by: Bennet Bo Fenner <bennetbo@gmx.de>
Agus Zubiaga and Bennet Bo Fenner created
ac8c653
Fix race condition between feature flag and deserialization (#37381)
Right now if you open Zed, and we deserialize an agent that's behind a feature flag (e.g. CC), we don't restore it because the feature flag check hasn't happened yet at the time we're deserializing (due to auth not having finished yet). This is a simple fix: assume that if you had serialized it in the first place, you must have had the feature flag enabled, so go ahead and reopen it for you. Release Notes: - N/A
Richard Feldman created
d2318be
terminal view: Hide inline assist button if AI is disabled (#37378)
Closes https://github.com/zed-industries/zed/issues/37372 Release Notes: - Fix the terminal inline assistant button showing despite `disable_ai` being turned on. --------- Co-authored-by: MrSubidubi <finn@zed.dev>
Danilo Leal and MrSubidubi created
a026163
inline assistant: Adjust completion menu item font size (#37375)
Now the @ completion menu items font size respect/match the buffer's font size, as opposed to being rendered a bit bigger. | Before | After | |--------|--------| | <img width="1226" height="468" alt="Screenshot 2025-09-02 at 11 09@2x" src="https://github.com/user-attachments/assets/a6d37110-b544-40c3-bf7a-447ea003d4d7" /> | <img width="1218" height="462" alt="Screenshot 2025-09-02 at 11 09 2@2x" src="https://github.com/user-attachments/assets/19e58bf8-2db5-442e-8f60-02dd9ee1308f" /> | Release Notes: - inline assistant: Improved @-mention menu item font size, better matching the buffer's font size.
Danilo Leal created
ad3ddd3
Revert "gpui: Do not render ligatures between different styled text runs (#37175) (#37382)
This reverts commit 62083fe7963dd5bed4579bb12abac1b7800cdbaa. We're reverting this as it causes layout shift when typing/selecting with ligatures: https://github.com/user-attachments/assets/80b78909-62f5-404f-8cca-3535c5594ceb Release Notes: - Reverted #37175
Marshall Bowers created
7e3fbeb
Add the Glossary from the channel into Zed (#37360)
This should make it easier for contributors to learn all the terms used in the Zed code base. Release Notes: - N/A
David Kleingeld created
8e7caa4
remove extra brace in rules template (#37356)
Release Notes: - Fixed: remove extra brace in rules template
Jonathan Camp created
c894351
vim: Fix change surrounding quotes with whitespace within (#37321)
This commit fixes a bug with Zed's vim mode surrounds plugin when
dealing with replacing pairs with quote and the contents between the
pairs had some whitespace within them.
For example, with the following string:
```
' str '
```
If one was to use the `cs'"` command, to replace single quotes with
double quotes, the result would actually be:
```
"str"
```
As the whitespace before and after the closing character was removed.
This happens because of the way the plugin decides whether to add or
remove whitespace after and before the opening and closing characters,
repsectively. For example, using `cs{[` yields a different result from
using `cs{]`, the former adds a space while the latter does not.
However, since for quotes the opening and closing character is exactly
the same, this behavior is not possible, so this commit updates the code
in `vim::surrounds::Vim.change_surrounds` so that it never adds or
removes whitespace when dealing with any type of quotes.
Closes #12247
Release Notes:
- Fixed whitespace handling when changing surrounding pairs to quotes in
vim mode
Dino created
a96015b
activity_indicator: Show extension installation and updates (#37374)
This PR fixes an issue where extension operations would never show in the activity indicator despite this being implemented for ages. This happened because we were always returning `None` whenever the app has a global auto updater, which is always the case, so the code path for showing extension updates in the indicator could never be hit despite existing prior. Also slightly improves the messages shown for ongoing extension operations, as these were previously context unaware. While I was at this, I also quickly took a stab at cleaning up some remotely related stuff, namely: - The `AnimationExt` trait is now by default only implemented for anything that also implements `IntoElement`. This prevents `with_animation` from showing up for e.g. `u32` within the suggestions (finally). - Commonly used animations are now implemented in the `CommonAnimationExt` trait within the `ui` crate so the needed code does not always need to be copied and element IDs for the animations are truly unique. Relevant change here regarding the original issue is the change from the `return match` to just a `match` within the activitiy indicator, which solved the issue at hand. If we find this to be too noisy at some point, we can easily revisit, but I think this holds important enough information to be shown in the activity indicator, especially whilst developing extensions. Release Notes: - Extension installation and updates will now be shown in the activity indicator.
Finn Evers created
2eb7ac9
windows: Use a message-only window for `WindowsPlatform` (#37313)
Previously, we were using `PostThreadMessage` to pass messages to `WindowsPlatform`. This PR switches to an approach similar to `winit` which using a hidden window as the message window (I guess that’s why winit uses a hidden window?). The difference is that this PR creates it as a message-only window. Thanks to @reflectronic for the original PR #37255, this implementation just fits better with the current code style. Release Notes: - N/A --------- Co-authored-by: reflectronic <john-tur@outlook.com>
张小白 and reflectronic created
f06c187
Rename from `create_ssh_worktree` to `create_remote_worktree` (#37358)
This is a left-over issue of #37035 Release Notes: - N/A
张小白 created
2f279c5
Fix small errors preventing WSL support from working (#37350)
On nightly, when I run `zed` under WSL, I get an error parsing the shebang line ``` /usr/bin/env: ‘sh\r’: No such file or directory ``` I believe that this is because in CI, Git checks out the file with CRLF line endings, and that is how it is copied into the installer. Also, the file extension was incorrect when downloading the production remote server (a gzipped binary), preventing extraction from working properly. Release Notes: - N/A
Max Brunsfeld created
60b95d9
Use premultiplied alpha for emoji rendering (#37370)
This improves emoji rendering on windows removing artifacts at the edges by using premultiplied alpha. A bit more context can be found in #37167 Release Notes: - N/A
localcc created
47ad1b2
agent2: Fix terminal tool call content not being shown once truncated (#37318)
We render terminals as inline if their content is below a certain line count, and scrollable past that point. In the scrollable case we weren't setting a height for the terminal's container, causing it to be rendered at height 0, which means no lines would be displayed. This PR fixes that by setting an explicit height for the scrollable case, like we do in the agent1 UI code. Release Notes: - agent: Fixed a bug that caused terminals in the panel to be empty after their content reached a certain size.
Cole Miller created
35c0d02
project: Temporarily disable terminal activation scripts on windows (#37361)
They seem to break things on window right now Release Notes: - N/A
Lukas Wirth created
374a8bc
acp: Add support for slash commands (#37304)
Depends on https://github.com/zed-industries/agent-client-protocol/pull/45 Release Notes: - N/A --------- Co-authored-by: Antonio Scandurra <me@as-cii.com> Co-authored-by: Agus Zubiaga <agus@zed.dev>
Bennet Bo Fenner , Antonio Scandurra , and Agus Zubiaga created
f06be6f
docs: Add link to msys2 docs page (#37327)
it was removed earlier. better to keep this link because the page contains some useful information Release Notes: - N/A
Maksim Bondarenkov created
9702424
settings_ui: Improve case handling (#37342)
Closes #ISSUE Improves the derive macro for `SettingsUi` so that titles generated from struct and field names are shown in title case, and toggle button groups use title case for rendering, while using lower case/snake case in JSON Release Notes: - N/A *or* Added/Fixed/Improved ...
Ben Kunkle created
54cec5b
settings_ui: Get editor settings working (#37330)
Closes #ISSUE This PR includes the necessary work to get `EditorSettings` showing up in the settings UI. Including making the `path` field on `SettingsUiItem`'s optional so that top level items such as `EditorSettings` which have `Settings::KEY = None` (i.e. are treated like `serde(flatten)`) have their paths computed correctly for JSON reading/updating. It includes the first examples of a pattern I expect to continue with the `SettingsUi` work with respect to settings reorganization, that being adding missing defaults, and adding explicit values (or aliases) to settings which previously relied on `null` being a value for optional fields. Release Notes: - N/A *or* Added/Fixed/Improved ...
Ben Kunkle created
60d17cc
settings_ui: Move settings UI trait to file content (#37337)
Closes #ISSUE Initially, the `SettingsUi` trait was tied to `Settings`, however, given that the `Settings::FileContent` type (which may be the same as the type that implements `Settings`) will be the type that more directly maps to the JSON structure (and therefore have the documentation, correct field names (or `serde` rename attributes), etc) it makes more sense to have the deriving of `SettingsUi` occur on the `FileContent` type rather than the `Settings` type. In order for this to work a relatively important change had to be made to the derive macro, that being that it now "unwraps" options into their inner type, so a field with type `Option<Foo>` where `Foo: SettingsUi` will treat the field as if it were just `Foo`, expecting there to be a default set in `default.json`. This imposes some restrictions on what `Settings::FileContent` can be as seen in 1e19398 where `FileContent` itself can't be optional without manually implementing `SettingsUi`, as well as introducing some risk that if the `FileContent` type has `serde(default)`, the default value will override the default value from `default.json` in the UI even though it may differ (but it should!). A future PR should probably replace the other settings with `FileContent = Option<T>` (all of which currently have `T == bool`) with wrapper structs and have `KEY = None` so the further niceties `derive(SettingsUi)` will provide such as path renaming, custom UI, auto naming and doc comment extraction can be used. Release Notes: - N/A *or* Added/Fixed/Improved ...
Ben Kunkle created
8a8a9a4
settings_ui: Add dynamic settings UI item (#37331)
Closes #ISSUE Adds a first draft of a way for "Dynamic" settings items to be added, where Dynamic means settings where multiple sets of options are possible (i.e. discriminated union, rust enum, etc). The implementation is very similar to that of `Group`, except that instead of rendering all of it's descendants, it contains a function to determine _which_ descendant to render, whether that be a single item or a nested group of items. Currently this is done in a type-unsafe way with indices, a future improvement could be to make the API more type safe, and easier to manually implement correctly. An example of a "Dynamic" setting is `theme`, where it can either be a string of the desired theme name, or an object with `mode: "light" | "dark" | "system"` as well as theme names for `light` and `dark`. In the system implemented by this PR, this would become a dynamic settings UI item, where option `0` is a single item, the theme name selector, and option `1` is a group, containing items for the `mode`, and `light`/`dark` options. Release Notes: - N/A *or* Added/Fixed/Improved ...
Ben Kunkle created
634a134
Bump xcb dependency (#37335)
Deals with https://github.com/zed-industries/zed/security/dependabot/65 Release Notes: - N/A
Kirill Bulatov created
2ba25b5
editor: Support rewrap in block comments (#34418)
This updates `editor: rewrap` to work within doc comments, based on the code that extends such comments on newline. I added some tests, and I've tested it out in JS, C and PHP. (Though PHP depends on https://github.com/zed-extensions/php/pull/40) Closes #19794 Closes #18221 **Caveat:** ~~This will not rewrap an existing single-line block comment, such as the one provided in #18221:~~ this will now rewrap as expected ```c /* we can triangulate any convex polygon by picking a vertex and connecting it to the next two vertices; we first read two vertices, and then, for every subsequent vertex, we can form a triangle by connecting it to the first and previous vertex */ ``` However, it will rewrap a similar comment if it is shaped like a doc comment. In other words, this will rewrap as expected: ```c /* * we can triangulate any convex polygon by picking a vertex and connecting it to the next two vertices; we first read two vertices, and then, for every subsequent vertex, we can form a triangle by connecting it to the first and previous vertex */ ``` This seems like a reasonable improvement and limitation to me, especially as a first step. cc @smitbarmase because I think that you've been making a lot of the `newline` and `rewrap` changes recently. (Thank you for those, by the way!) Release Notes: - Added support for rewrap in block comments. --------- Co-authored-by: Smit Barmase <heysmitbarmase@gmail.com>
claytonrcarter and Smit Barmase created
965dbc9
gpui: Fix typo in Windows alpha correction shader (#37328)
This PR fixes a typo in the Windows alpha correction shader that is now caught by https://github.com/zed-industries/zed/pull/37314. Another case that could be addressed by Bors. Release Notes: - N/A
Marshall Bowers created
5b73b40
ACP Terminal support (#37129)
Exposes terminal support via ACP and migrates our agent to use it. - N/A --------- Co-authored-by: Bennet Bo Fenner <bennetbo@gmx.de>
Agus Zubiaga and Bennet Bo Fenner created
d910fea
Implement perceptual gamma / contrast correction (#37167)
Closes #36023 This improves font rendering quality by doing perceptual gamma+contrast correction which makes font edges look nicer and more legible. A comparison image: (left is old, right is new) <img width="1638" height="854" alt="Screenshot 2025-08-29 140015" src="https://github.com/user-attachments/assets/85ca9818-0d55-4af0-a796-19e8cf9ed36b" /> This is most noticeable on smaller fonts / low-dpi displays Release Notes: - Improved font rendering quality
localcc created
61175ab
windows: Don’t skip the typo check for the windows folder (#37314)
Try to narrow down the scope of typo checking Release Notes: - N/A
张小白 created
2790eb6
deepseek: Fix API URL (#33905)
Closes #33904 Release Notes: - Add support for custom API Urls for DeepSeek Provider --------- Co-authored-by: Peter Tripp <peter@zed.dev>
雷电梅 and Peter Tripp created
acff65e
windows: Update documents about WSL (#37292)
Release Notes: - N/A
张小白 created
3315fd9
editor: Add an option to disable rounded corners for text selection (#36987)
Closes #19891 Similar to VSCode’s `editor.roundedSelection` option. #### Before/after <table> <tr><th><th>Enabled (default)</th><th>Disabled</th> <tr><td>Editor-based UIs<td><img width="268" height="58" alt="image" src="https://github.com/user-attachments/assets/f58c6817-88fc-4cba-b2bc-f7eff58ec6e5" /> <img width="146" height="97" alt="image" src="https://github.com/user-attachments/assets/0cd08afa-8243-4d4e-a5c6-9055f6834ecf" /><td><img width="272" height="54" alt="image" src="https://github.com/user-attachments/assets/286c8f53-1973-442e-8446-4f48e3feca30" /> <img width="133" height="90" alt="image" src="https://github.com/user-attachments/assets/4aea2044-403c-47a5-bb6d-a88a0b65814e" /></td> <tr><td>Terminal<td><img width="287" height="84" alt="image" src="https://github.com/user-attachments/assets/b1594f68-2ef6-4bdc-9030-e67d55a5bf99" /><td><img width="289" height="79" alt="image" src="https://github.com/user-attachments/assets/6d095d9d-b408-4440-a9f5-6a2af2b84b61" /></td> </table> Release Notes: - Added setting `rounded_selection` to disable rounded corners for text selection.
Ivan Trubach created
62083fe
gpui: Do not render ligatures between different styled text runs (#37175)
Currently when we render text with differing styles adjacently we might form a ligature between the text, causing the ligature forming characters to take on one of the two styles. This can especially become confusing when a ligature is formed between actual text and inlay hints. Annoyingly, the only ways to prevent this with core text is to either render each run separately, or to insert a zero-width non-joiner to force core text to break the ligatures apart, as it otherwise will merge subsequent font runs of the same fonts. We currently do layouting on a per line basis and it is unlikely we want to change that as it would incur a lot of complexity and annoyances to merge things back into a line, so this goes with the other approach of inserting ZWNJ characters instead. Note that neither linux nor windows seem to currently render ligatures, so this only concerns macOS rendering at the moment. Release Notes: - Fixed ligatures forming between real text and inlay hints on macOS
Lukas Wirth created
a852bcc
Improve system window tabs visibility (#37244)
Follow up of https://github.com/zed-industries/zed/pull/33334
After chatting with @MrSubidubi we found out that he had an old defaults
setting (most likely from when he encountered a previous window tabbing
bug):
```
❯ defaults read dev.zed.Zed-Nightly
{
NSNavPanelExpandedSizeForOpenMode = "{800, 448}";
NSNavPanelExpandedSizeForSaveMode = "{800, 448}";
NSNavPanelExpandedStateForSaveMode = 1;
NSOSPLastRootDirectory = {length = 828, bytes = 0x626f6f6b 3c030000 00000410 30000000 ... dc010000 00000000 };
"NSWindow Frame NSNavPanelAutosaveName" = "557 1726 800 448 -323 982 2560 1440 ";
"NSWindowTabbingShoudShowTabBarKey-GPUIWindow-GPUIWindow-(null)-HT-FS" = 1;
}
```
> That suffix is AppKit’s fallback autosave name when no tabbing
identifier is set. It encodes the NSWindow subclass (GPUIWindow), plus
traits like HT (hidden titlebar) and FS (fullscreen).
Which explains why it only happened on the Nightly build, since each
bundle has it's own defaults. It also explains why the tabbar would
disappear when he activated the `use_system_window_tabs` setting,
because with that setting activated, the tabbing identifier becomes
"zed" (instead of the default one when omitted) for which he didn't have
the `NSWindowTabbingShoudShowTabBarKey` default.
The original implementation was perhaps a bit naive and relied fully on
macOS to determine if the tabbar should be shown. I've updated the code
to always hide the tabbar, if the setting is turned off and there is
only 1 tab entry.
While testing, I also noticed that the menu's like 'merge all windows'
wouldn't become active when the setting was turned on, only after a full
workspace reload. So I added a setting observer as well, to immediately
set the correct window properties to enable all the features without a
reload.
Release Notes:
- N/A
Gaauwe Rombouts created
f290daf
docs: Improve Bedrock suggested IAM policy (#37278)
Closes https://github.com/zed-industries/zed/issues/37251 H/T: @brandon-fryslie Release Notes: - N/A
Peter Tripp created
129bff8
agent: Make it so delete_path tool needs user confirmation (#37191)
Closes https://github.com/zed-industries/zed/issues/37048 Release Notes: - agent: Make delete_path tool require user confirmation by default
Peter Tripp created
c833f89
language_models: Fix `grok-code-fast-1` support for Copilot (#37116)
This PR fixes a deserialization issue in GitHub Copilot Chat that was causing warnings when encountering xAI models from the GitHub Copilot API and skipping the Grok model from model selector. Release Notes: - Fixed support for xAI models that are now available through GitHub Copilot Chat.
Umesh Yadav created
d74384f
anthropic: Remove logging when no credentials are available (#37276)
Removes excess log which got through on each start of Zed ``` ERROR [agent_ui::language_model_selector] Failed to authenticate provider: Anthropic: credentials not found ``` The `AnthropicLanguageModelProvider::api_key` method returned a `anyhow::Result` which would convert `AuthenticateError::CredentialsNotFound` into a generic error because of the implicit `Into` when using the `?` operator. This would then get converted into a `AuthenticateError::Other` later. By specifying the error type as `AuthenticateError`, we remove this implicit conversion and the log gets removed. Release Notes: - N/A
tidely created
5abc398
nix: Update flake, remove legacy Darwin SDK usage (#37254)
`darwin.apple_sdk.frameworks` has been obsoleted and is no longer required to be specified explicitly as per [Nixpkgs Reference Manual](https://nixos.org/manual/nixpkgs/stable/#sec-darwin-legacy-frameworks). @P1n3appl3 not sure what the process for updating Nix is, so lemme know if this is desired/acceptable! Release Notes: - N/A
Jakub Konka created
9c8c396
linux: Support ctrl-insert in markdown previews (#37273)
Closes: https://github.com/zed-industries/zed/issues/37240 Release Notes: - Added support for copying in Markdown preview using `ctrl-insert` on Linux/Windows
Peter Tripp created
e48be30
vim: Fix `NormalBefore` with completions shown (#37272)
Follow-up to https://github.com/zed-industries/zed/pull/35985 The `!menu` is actually not needed and breaks other keybinds from that context. Release Notes: - N/A
Finn Evers created
babc0c0
Add a "mandatory PR contents" section in the contribution docs (#37259)
The LLM part is inspired by (and paraphrased from) https://github.com/ghostty-org/ghostty?tab=contributing-ov-file#ai-assistance-notice Release Notes: - N/A
Kirill Bulatov created
39d41ed
Add another entry to show how to hide the Sign In button from the interface (#37260)
Release Notes: - N/A
Kirill Bulatov created
b69ebbd
Bump pnpm dependencies (#37258)
Takes care of https://github.com/zed-industries/zed/security/dependabot/64 Release Notes: - N/A
Kirill Bulatov created
f348737
Update Rust crate tracing-subscriber to v0.3.20 [SECURITY] (#37195)
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [tracing-subscriber](https://tokio.rs) ([source](https://redirect.github.com/tokio-rs/tracing)) | dependencies | patch | `0.3.19` -> `0.3.20` | ### GitHub Vulnerability Alerts #### [CVE-2025-58160](https://redirect.github.com/tokio-rs/tracing/security/advisories/GHSA-xwfj-jgwm-7wp5) ### Impact Previous versions of tracing-subscriber were vulnerable to ANSI escape sequence injection attacks. Untrusted user input containing ANSI escape sequences could be injected into terminal output when logged, potentially allowing attackers to: - Manipulate terminal title bars - Clear screens or modify terminal display - Potentially mislead users through terminal manipulation In isolation, impact is minimal, however security issues have been found in terminal emulators that enabled an attacker to use ANSI escape sequences via logs to exploit vulnerabilities in the terminal emulator. ### Patches `tracing-subscriber` version 0.3.20 fixes this vulnerability by escaping ANSI control characters in when writing events to destinations that may be printed to the terminal. ### Workarounds Avoid printing logs to terminal emulators without escaping ANSI control sequences. ### References https://www.packetlabs.net/posts/weaponizing-ansi-escape-sequences/ ### Acknowledgments We would like to thank [zefr0x](http://github.com/zefr0x) who responsibly reported the issue at `security@tokio.rs`. If you believe you have found a security vulnerability in any tokio-rs project, please email us at `security@tokio.rs`. --- ### Release Notes <details> <summary>tokio-rs/tracing (tracing-subscriber)</summary> ### [`v0.3.20`](https://redirect.github.com/tokio-rs/tracing/releases/tag/tracing-subscriber-0.3.20): tracing-subscriber 0.3.20 [Compare Source](https://redirect.github.com/tokio-rs/tracing/compare/tracing-subscriber-0.3.19...tracing-subscriber-0.3.20) **Security Fix**: ANSI Escape Sequence Injection (CVE-TBD) #### Impact Previous versions of tracing-subscriber were vulnerable to ANSI escape sequence injection attacks. Untrusted user input containing ANSI escape sequences could be injected into terminal output when logged, potentially allowing attackers to: - Manipulate terminal title bars - Clear screens or modify terminal display - Potentially mislead users through terminal manipulation In isolation, impact is minimal, however security issues have been found in terminal emulators that enabled an attacker to use ANSI escape sequences via logs to exploit vulnerabilities in the terminal emulator. #### Solution Version 0.3.20 fixes this vulnerability by escaping ANSI control characters in when writing events to destinations that may be printed to the terminal. #### Affected Versions All versions of tracing-subscriber prior to 0.3.20 are affected by this vulnerability. #### Recommendations Immediate Action Required: We recommend upgrading to tracing-subscriber 0.3.20 immediately, especially if your application: - Logs user-provided input (form data, HTTP headers, query parameters, etc.) - Runs in environments where terminal output is displayed to users #### Migration This is a patch release with no breaking API changes. Simply update your Cargo.toml: ```toml [dependencies] tracing-subscriber = "0.3.20" ``` #### Acknowledgments We would like to thank [zefr0x](http://github.com/zefr0x) who responsibly reported the issue at `security@tokio.rs`. If you believe you have found a security vulnerability in any tokio-rs project, please email us at `security@tokio.rs`. </details> --- ### Configuration 📅 **Schedule**: Branch creation - "" 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:eyJjcmVhdGVkSW5WZXIiOiI0MS44Mi43IiwidXBkYXRlZEluVmVyIjoiNDEuODIuNyIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOltdfQ==--> --------- Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Kirill Bulatov <kirill@zed.dev>
renovate[bot] , renovate[bot] , and Kirill Bulatov created
1ca5e84
markdown: Add HTML `img` tag support (#36700)
Closes #21992 <img width="1406" height="1184" alt="Screenshot 2025-08-21 at 18 09 24" src="https://github.com/user-attachments/assets/5f14a0d8-c4d9-48ad-b10d-fadfaca258ea" /> Code example: ```markdown # Html Tag <img src="https://picsum.photos/200/300" alt="Description of image" /> # Html Tag with width and height <img src="https://picsum.photos/200/300" alt="Description of image" width="100" height="200" /> # Html Tag with style attribute with width and height <img src="https://picsum.photos/200/300" alt="Description of image" style="width: 100px; height: 200px" /> # Normal Tag  ``` Release Notes: - Markdown: Added HTML `<img src="/some-image.svg">` tag support
Remco Smits created
d80f132
Support for "Insert" from character key location (#37219)
Release Notes: - Added support for the Insert-Key from a character key location for keyboard layouts like neo2
Gerd Augsburg created
e115584
docs: Copyedit debugger.md and clarify settings location (#36996)
Release Notes: - N/A
Dan Dascalescu created