Commit graph

37 commits

Author SHA1 Message Date
Mikayla Maki
1dd09c3e76
Add Zed Feature Process document (#50747)
Release Notes:

- N/A
2026-03-06 14:14:53 -08:00
Lena
cbb1eed3f4
Surface UI checklist in CONTRIBUTING.md (#49013)
Release Notes:

- N/A
2026-02-12 10:08:49 +00:00
Richard Feldman
8c0b088366
Screenshot testing (#45259)
## Screenshot testing

Adds visual testing infrastructure for GPUI that captures screenshots by
rendering directly to Metal textures. The

The screenshots end up in `target/visual_tests/` and look like this:

<img width="2560" height="1600" alt="workspace_with_editor2"
src="https://github.com/user-attachments/assets/54112343-4af1-4347-9bab-f099de97dd29"
/>
<img width="2560" height="1600" alt="project_panel2"
src="https://github.com/user-attachments/assets/0cd54b61-dace-4398-a28e-0b4d7c2968f6"
/>


### Key Features

- **Direct texture capture**: Screenshots are captured by rendering the
scene to a Metal texture and reading pixels directly from GPU memory,
rather than using ScreenCaptureKit
- **No visibility requirements**: Windows don't need to be visible on
screen since we read directly from the render pipeline
- **Deterministic output**: Captures exactly what GPUI renders, not what
the OS compositor displays
- **No permissions needed**: Doesn't require Screen Recording permission
like ScreenCaptureKit would

### Running the Visual Tests

```bash
# Run visual tests (compares against baselines)
cargo run -p zed --bin visual_test_runner --features visual-tests

# Update baseline images (when UI intentionally changes)
UPDATE_BASELINE=1 cargo run -p zed --bin visual_test_runner --features visual-tests

# View the captured screenshots
open target/visual_tests/
```

### Implementation

- `Window::render_to_image()` - Renders the current scene to a texture
and returns an `RgbaImage`
- `MetalRenderer::render_to_image()` - Core implementation that renders
to a non-framebuffer-only texture
- `VisualTestAppContext` - Test context that uses real macOS platform
rendering
- `VisualTestAppContext::capture_screenshot()` - Synchronous screenshot
capture using direct texture rendering

### Usage

```rust
let mut cx = VisualTestAppContext::new();
let window = cx.open_window(...)?;
let screenshot: RgbaImage = cx.capture_screenshot(window.into())?;
```

Release Notes:

- N/A

---------

Co-authored-by: Amp <amp@ampcode.com>
2026-01-05 16:34:36 -05:00
Daniel Byiringiro
fdb8e71b43
docs: Remove reference to outdated curated issues board (#45568)
The documentation referenced a “Curated board of issues” GitHub Project
that no longer exists.
The linked project returns a 404, and only three public projects are
currently available under
zed-industries.

This PR removes the outdated reference. Documentation-only change.

Release Notes:

- N/A
2025-12-23 15:15:58 +00:00
Lena
8b9fa1581c
Update contribution ideas and guidelines (#45001)
Release Notes:

- N/A
2025-12-16 16:01:28 +00:00
Kirill Bulatov
aa14980523
Mention pure style changes in the contributing docs (#39096)
Release Notes:

- N/A
2025-09-29 11:02:47 +00:00
Marshall Bowers
8ebe812c24
Format CONTRIBUTING.md (#38073)
This PR formats `CONTRIBUTING.md` using Prettier.

Release Notes:

- N/A
2025-09-12 16:39:54 +00:00
Conrad Irwin
7f1c7c1910
Update CONTRIBUTING to reflect reality (#38016)
Release Notes:

- N/A
2025-09-12 10:21:02 -06:00
Marco Groot
1d828b6ac6
Fix broken link in CONTRIBUTING.md (#37688)
Can see currently the link is dead currently, but this changes fixes
locally


https://github.com/user-attachments/assets/e01d9c47-e91e-4c24-8285-01e3b45583b9


Release Notes:

- N/A
2025-09-06 12:29:34 +02:00
David Kleingeld
7e3fbeb59d
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
2025-09-02 15:59:58 +00:00
Kirill Bulatov
babc0c09f0
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
2025-08-31 20:56:23 +03:00
Marshall Bowers
e60123bbdc
Allow icon themes to provide their own file associations (#24926)
This PR adds the ability for icon themes to provide their own file
associations.

The old `file_types.json` that was previously used to make these
associations has been removed in favor of storing them on the default
theme.

Icon themes have two new fields on them:

- `file_stems`: A mapping of file stems to icon keys.
- `file_suffixes`: A mapping of file suffixes to icon keys.

These mappings produce icon keys which can then be used in `file_icons`
to associate them to a particular icon:

```json
{
  "file_stems": {
    "Makefile": "make"
  },
  "file_suffixes": {
    "idr": "idris"
  },
  "file_icons": {
    "idris": { "path": "./icons/idris.svg" },
    "make": { "path": "./icons/make.svg" }
  }
}
```

When loading an icon theme, the `file_stems` and `file_icons` fields
will be merged with the ones from the base icon theme, with the values
from the icon theme being loaded overriding ones in the base theme.

Release Notes:

- Added the ability for icon themes to provide their own file
associations.
2025-02-15 00:35:13 +00:00
Marshall Bowers
c049df2a2e
docs: Add section on file icons to CONTRIBUTING.md (#24905)
This PR adds a section on file icons to the `CONTRIBUTING.md` guide.

Release Notes:

- N/A
2025-02-14 20:40:52 +00:00
João Marcos
fa0261e3ad
Add more info to CONTRIBUTING.md (#24348)
mention the crates:
- `cli`
- `zed`

and add a section for packaging Zed, which links to our website docs

Release Notes:

- N/A
2025-02-06 03:58:21 +00:00
Joseph T. Lyons
249c8a4d96
Remove community content from docs and point to zed.dev (#19895)
The community content now lives on zed.dev, discoverable via the navbar
`resources` menu.

See:

- https://github.com/zed-industries/zed.dev/pull/783

Release Notes:

- N/A
2024-10-29 09:44:58 -04:00
Finn Evers
4b6cd60b89
Update extension docs link in CONTRIBUTING.md (#17074)
This follows up the changes at
https://github.com/zed-industries/extensions/pull/1318

Should the rewording not be wanted, I can revert that.

Release Notes:

- N/A
2024-08-29 14:27:41 +03:00
Gilles Peiffer
b014f9f017
docs: Fix some typos (#13509)
Minor fixes I came across while reading the docs.

Release Notes:

- N/A
2024-06-25 10:58:11 -04:00
Marshall Bowers
575eb792fb Remove stray word in CONTRIBUTING.md 2024-04-15 16:30:18 -04:00
Conrad Irwin
904b740e16
More vim-like regexes (#10577)
Fixes:  #10539

Release Notes:

- vim: Use `\<` `\>` instead of `\b`
2024-04-15 14:26:05 -06:00
Marshall Bowers
97c5cffbe3
Update contributing docs to point to extensions (#10537)
This PR updates the contributing docs to remove an outdated section
about extension support and instead point to the extension authoring
docs.

Release Notes:

- N/A
2024-04-14 19:31:19 -04:00
Conrad Irwin
08786fa7bf
Make BufferSearch less wide (#10459)
This also adds some "responsiveness" so that UI elements are hidden
before everything has to be occluded

Release Notes:

- Improved search UI. It now works in narrower panes, and avoids
scrolling the editor on open.

<img width="899" alt="Screenshot 2024-04-11 at 21 33 17"
src="https://github.com/zed-industries/zed/assets/94272/44b95d4f-08d6-4c40-a175-0e594402ca01">
<img width="508" alt="Screenshot 2024-04-11 at 21 33 45"
src="https://github.com/zed-industries/zed/assets/94272/baf4638d-427b-43e6-ad67-13d43f0f18a2">
<img width="361" alt="Screenshot 2024-04-11 at 21 34 00"
src="https://github.com/zed-industries/zed/assets/94272/ff60b561-2f77-49c0-9df7-e26227fe9225">
<img width="348" alt="Screenshot 2024-04-11 at 21 37 03"
src="https://github.com/zed-industries/zed/assets/94272/a2a700a2-ce99-41bd-bf47-9b14d7082b0e">
2024-04-11 23:07:29 -06:00
Marshall Bowers
e8bf06fc42
Style crate names in CONTRIBUTING.md (#6939)
This PR styles the crate names in `CONTRIBUTING.md` using inline code.

Release Notes:

- N/A
2024-01-28 11:07:37 -05:00
Marshall Bowers
5dec9f7163
Link to the Zed roadmap in CONTRIBUTING.md (#6937)
This PR updates `CONTRIBUTING.md` to link to the public Zed roadmap.

Release Notes:

- N/A
2024-01-28 10:48:38 -05:00
George Munyoro
14322c8365
Fix grammatical error in contributing guidelines (#6772)
Release Notes:

- N/A
2024-01-26 14:53:03 +02:00
Mikayla
0457ad3f6e
Update contributing 2024-01-25 11:11:28 -08:00
Joseph T. Lyons
40dbe15b2a Update all links point to community 2024-01-24 15:11:17 -05:00
Nathan Sobo
38c3590266 Revise contributing.md 2024-01-23 11:42:40 -07:00
Mikayla
e6ca92ffa4
Fix a few more typos 2024-01-17 14:58:58 -08:00
Nate Butler
904695e482 Refine MVP CONTRIBUTING.md
Co-Authored-By: Joseph T. Lyons <19867440+JosephTLyons@users.noreply.github.com>
2024-01-17 12:32:08 -05:00
Joseph T. Lyons
5f15138933 WIP
Co-Authored-By: Julia <30666851+ForLoveOfCats@users.noreply.github.com>
2024-01-09 13:41:42 -05:00
Joseph T. Lyons
364e33df82 Add period 2024-01-08 13:25:52 -05:00
Joseph T. Lyons
3c2db6a4db Add some rough ideas
Co-Authored-By: Piotr Osiewicz <24362066+osiewicz@users.noreply.github.com>
2023-12-18 13:35:07 -05:00
Joseph T. Lyons
6cb1a08cc9 Add notes 2023-12-15 17:18:52 -05:00
Joseph T. Lyons
2fd9ac506f Tweak wording 2023-12-15 01:47:59 -05:00
Joseph T. Lyons
c7d60bb003 Add some TODOs 2023-12-14 16:10:53 -05:00
Joseph T. Lyons
5f25fa1227 Tweak wording 2023-12-14 16:04:53 -05:00
Joseph T. Lyons
e792286660 Add contributing guide 2023-12-14 15:54:31 -05:00