Commit Graph

465 Commits

Author SHA1 Message Date
Marshall Bowers
a79d4432a7
Don't use a mix of tabs and spaces (#17045)
This PR fixes some spots in the docs and the `install.sh` script that
were using a mix of tabs and spaces.

We should just be using spaces.

Release Notes:

- N/A
2024-08-28 19:25:19 -04:00
Peter Tripp
3eb5488c63
Update Terms and Conditions (#16478)
- Update Zed Terms of Use:
  - Rename from 'EULA' / 'Terms and Conditions'
  - Rename 'Zed Network Based Service' to 'Zed Service'
  - 3.3.2 Usage Data (formerly Telemetry Data)
    - Add examples of 'Usage Data'
- Add link to https://zed.dev/docs/telemetry - Explain 'telemetry ID' and user linkage
- 3.3.5 Privacy Policy - Add privacy policy reference - Add link to https://zed.dev/privacy-policy/
  - 5. OWNERSHIP
- Move "You retain all right, title and interest..." from 3.3 Customer Data
    - Additional note that customers retain Intellectual Property rights
- 9. Third Party Services - Add link to https://zed.dev/third-party-terms
- Add Privacy Policy
- Add Subprocessors
- Add Third Party Terms
- Update script/terms/terms.rtf for DMG bundle
2024-08-19 17:08:46 -04:00
Nathan Sobo
c9c5eef8f2
Improve dev experience for built-in prompts (#16413)
When launching Zed from the CLI via `cargo run`, we'll always prompt
load templates from the repo.

This restores behavior that I reverted last night in #16403.

Also, I've improved the `script/prompts link/unlink` workflow for
overriding prompts of your production copy of Zed. Zed now detects when
the overrides directory is created or removed, and does the right thing.
You can link and unlink repeatedly without restarting Zed.

Release Notes:

- N/A
2024-08-17 12:28:53 -06:00
Marshall Bowers
df20bae80e
danger: Don't look for #NNNN, as it's not specific enough (#16313)
This PR updates the regex we use to search for issues to not search for
`#NNNN`, as it's not specific enough.

It currently catches issue numbers from other repos, which are then
linked to random Zed issues/PRs that happen to have the same number:

<img width="935" alt="Screenshot 2024-08-15 at 3 50 29 PM"
src="https://github.com/user-attachments/assets/b779e503-3027-43e2-b355-e81d8d094694">

As well as catching PRs:

<img width="924" alt="Screenshot 2024-08-15 at 3 48 59 PM"
src="https://github.com/user-attachments/assets/6c2f7594-9234-4454-97da-5a33a1844892">

Given that:

1. We can't distinguish any given `#NNNN` as an issue _and_ can't ensure
it belongs to the Zed repo
2. Any issue/PR referenced as `#NNNN` will already create a backlink

It seems that looking for these is causing more noise than signal.

Release Notes:

- N/A
2024-08-15 15:57:42 -04:00
Marshall Bowers
e10f2d8deb
danger: Use a regular message for notice about GitHub Issue links (#16287)
This PR make it so Danger will use a regular message—as opposed to a
warning—for notices about GitHub issue links.

There are still some false-positives getting flagged, so showing a
warning is a bit too aggressive.

Release Notes:

- N/A
2024-08-15 09:21:50 -04:00
Marshall Bowers
e662bfc74f
Configure squawk rules (#16144)
This PR configures [`squawk`](https://squawkhq.com/) to match our
database conventions.

Release Notes:

- N/A
2024-08-12 22:11:36 -04:00
Nathan Sobo
355aebd0e4
Introduce prompt override script and adjust names (#16094)
This PR introduces a new script for iterative development of prompt
overrides in Zed.

Just `script/prompts link` and your running Zed should start using
prompts from `zed/assets/prompts`. Use `script/prompts unlink` to undo.
You can also link with `script/prompts link --worktree` to store the
prompts to a `../zed_prompts` worktree that's a sibling of your repo, in
case you don't want to mess with your working copy. Just don't forget
about it!

Key changes:
- Add new `script/prompts` for managing prompt overrides
- Rename `prompt_templates_dir` to `prompt_overrides_dir` for clarity
- Update paths to use `~/.config/zed/prompt_overrides` instead of
`~/.config/zed/prompts/templates`
- Adjust `PromptBuilder` to use the new `prompt_overrides_dir` function

These changes simplify the process of customizing prompts and provide a
more intuitive naming convention for override-related functionality.

Release Notes:

- N/A
2024-08-11 17:21:17 -06:00
Joseph T Lyons
10937c6e37 Fetch staff members from GitHub org 2024-08-11 15:10:45 -04:00
Joseph T Lyons
4818e0b7eb Don't thank staff members in release notes 2024-08-11 15:02:57 -04:00
Joseph T Lyons
2490b050ee Fix warning message 2024-08-11 14:48:58 -04:00
Joseph T Lyons
e99113e4cb Fix warning message 2024-08-11 14:45:46 -04:00
Joseph T Lyons
492f6b9cdf Update issue-detection RegEx 2024-08-11 14:40:27 -04:00
Joseph T Lyons
36a560dcd0 Update the dangerfile to check for issue links 2024-08-11 14:18:19 -04:00
Joseph T Lyons
5b8ce91048 Fix isStaff boolean logic 2024-08-08 17:00:10 -04:00
Joseph T Lyons
b7d6b0a096 Filter out staff members from thanks line 2024-08-08 16:26:45 -04:00
Joseph T. Lyons
b28507d2e0
Link to pull requests in changelog notes (#15996)
This PR changes how we ask users to draft up PRs and how release note
generation happens.

We no longer force the user to create the markdown URL link, but we do
ask them to use the `closes` [GitHub magic
word](https://docs.github.com/en/issues/tracking-your-work-with-issues/linking-a-pull-request-to-an-issue)
to link the PR to an issue, so that the issue is closed automatically
when closing the PR.

As for the changelog release notes, we are no longer linking to the
issues, but the PR itself, which should contain the issue if a reader
wants to dive further back. This makes our output more consistent, as
every line will have a link, even if there is no issue associated, and
it removes the need for us to try to parse the issue url in the body to
try to correct mistakes in how they were forming Markdown urls - the PR
url is always returned in the request, which makes it easy. **Lastly,
it's just a lot less annoying to make the release notes.**

The new PR format will be:

```
Closes #ISSUE

Release Notes:

- Added/Fixed/Improved ...
```

The new script output format will be:

```
PR Title: theme: Use a non-transparent color for the fallback `title_bar.inactive_background`
Credit: ([#15709](https://github.com/zed-industries/zed/pull/15709); thanks [maxdeviant](https://github.com/maxdeviant))
Release Notes:

- linux: Changed the fallback color of `title_bar.inactive_background` to a non-transparent value.
--------------------------------------------------------------------------------
PR Title: Skip over folded regions when iterating over multibuffer chunks
Credit: ([#15646](https://github.com/zed-industries/zed/pull/15646); thanks [osiewicz](https://github.com/osiewicz))
Release Notes:

- Fixed poor performance when editing in the assistant panel after inserting large files using slash commands
--------------------------------------------------------------------------------
```

This still requires us to manually apply the credit line, but the line
is already fully formed, so this should still be faster than having to
manually create that line / fix any line where someone messed it up
(which was all the time). I would just automatically apply it to the
release notes, but sometimes we have multiple bullet points in a single
PR and no real structure is enforced, so I foresee doing anything
automatic breaking and needing manual adjustment.

Release Notes:

- N/A
2024-08-08 15:26:17 -04:00
renovate[bot]
c3cfaade7d
Update Python to v3.12.5 (#15944)
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [python](https://togithub.com/containerbase/python-prebuild) |
dependencies | patch | `3.12.4` -> `3.12.5` |

---

### Release Notes

<details>
<summary>containerbase/python-prebuild (python)</summary>

###
[`v3.12.5`](https://togithub.com/containerbase/python-prebuild/releases/tag/3.12.5)

[Compare
Source](https://togithub.com/containerbase/python-prebuild/compare/3.12.4...3.12.5)

##### Bug Fixes

-   **deps:** update dependency python to v3.12.5

</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:eyJjcmVhdGVkSW5WZXIiOiIzOC4yMC4xIiwidXBkYXRlZEluVmVyIjoiMzguMjAuMSIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOltdfQ==-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-08-08 11:23:23 -04:00
Thorsten Ball
9a211b239c
script/bootstrap: Fix sqlx command by using newer version (#15980)
Version 0.5.7 doesn't have the `--database-url` command line flag, so
`script/bootstrap` didn't work.

Since we use `0.7` in collab (see
[here](73fb8277fc/crates/collab/Cargo.toml (L60)))
and sqlx 0.7.2 has the `--database-url` flag, we use that instead.


Release Notes:

- N/A

Co-authored-by: Bennet <bennet@zed.dev>
2024-08-08 16:10:18 +02:00
Marshall Bowers
7f6d0919c9
collab: Setup database for LLM service (#15882)
This PR puts the initial infrastructure for the LLM service's database
in place.

The LLM service will be using a separate Postgres database, with its own
set of migrations.

Currently we only connect to the database in development, as we don't
yet have the database setup for the staging/production environments.

Release Notes:

- N/A
2024-08-06 17:18:08 -04:00
renovate[bot]
d27fef7b2c
Update Python to v3.12.4 (#15136)
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [python](https://togithub.com/containerbase/python-prebuild) |
dependencies | patch | `3.12.1` -> `3.12.4` |

---

### Release Notes

<details>
<summary>containerbase/python-prebuild (python)</summary>

###
[`v3.12.4`](https://togithub.com/containerbase/python-prebuild/releases/tag/3.12.4)

[Compare
Source](https://togithub.com/containerbase/python-prebuild/compare/3.12.3...3.12.4)

##### Bug Fixes

-   **deps:** update dependency python to v3.12.4

###
[`v3.12.3`](https://togithub.com/containerbase/python-prebuild/releases/tag/3.12.3)

[Compare
Source](https://togithub.com/containerbase/python-prebuild/compare/3.12.2...3.12.3)

##### Bug Fixes

-   **deps:** update dependency python to v3.12.3

###
[`v3.12.2`](https://togithub.com/containerbase/python-prebuild/releases/tag/3.12.2)

[Compare
Source](https://togithub.com/containerbase/python-prebuild/compare/3.12.1...3.12.2)

##### Bug Fixes

-   **deps:** update dependency python to v3.12.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:eyJjcmVhdGVkSW5WZXIiOiIzNy40MzguMCIsInVwZGF0ZWRJblZlciI6IjM3LjQzOC4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-07-26 15:27:46 -04:00
Marshall Bowers
9eeb564c5c
danger: Upgrade danger to v12 (#15194)
This PR upgrades `danger` to v12.

Release Notes:

- N/A
2024-07-25 11:07:04 -04:00
Joseph T Lyons
777ddefa73 Fix contributor-scraping code 2024-07-24 12:34:42 -04:00
claytonrcarter
a1670551bf
Fix description of -l flag in bundle-mac (#14864)
This removes mention of "copy bundle to `/Applications`" from the help
text for `bundle-mac` because, as far as I can tell, the `-l` flag only
controls the build, not the copy/install. (The copy/install is
controlled by using the `-i` flag in conjunction with `-l`.)


Release Notes:

- N/A
2024-07-20 19:16:54 +03:00
Max Brunsfeld
fbe30c6f2e
Fixes for SSH remoting infrastructure (#14844)
* Fixed mis-named macOS remote server archives in actions and packaging
scripts
* Fixed an issue with the ask pass script on linux
* Download nightly versions of remote servers in dev mode (not stable)

Release Notes:

- N/A
2024-07-19 15:08:10 -07:00
Max Brunsfeld
b22718e643 Fix log file path for dsymutil in bundle-mac 2024-07-19 11:35:31 -07:00
Max Brunsfeld
bc16c2f85d Fix error in bundle-mac 2024-07-19 11:22:46 -07:00
Max Brunsfeld
1805986d82 Suppress noisy output from dsymutil in bundle-mac 2024-07-19 11:22:46 -07:00
Max Brunsfeld
b9a53ffa0b
Add the ability to edit remote directories over SSH (#14530)
This is a first step towards allowing you to edit remote projects
directly over SSH. We'll start with a pretty bare-bones feature set, and
incrementally add further features.

### Todo

Distribution
* [x] Build nightly releases of `zed-remote-server` binaries
    * [x] linux (arm + x86)
    * [x] mac (arm + x86)
* [x] Build stable + preview releases of `zed-remote-server`
* [x] download and cache remote server binaries as needed when opening
ssh project
* [x] ensure server has the latest version of the binary


Auth
* [x] allow specifying password at the command line
* [x] auth via ssh keys
* [x] UI password prompt

Features
* [x] upload remote server binary to server automatically
* [x] opening directories
* [x] tracking file system updates
* [x] opening, editing, saving buffers
* [ ] file operations (rename, delete, create)
* [ ] git diffs
* [ ] project search

Release Notes:

- N/A

---------

Co-authored-by: Piotr Osiewicz <24362066+osiewicz@users.noreply.github.com>
2024-07-19 10:27:26 -07:00
Peter Tripp
7c63f26aa9
Add duplicate and support as core github issue labels (#14735) 2024-07-18 16:21:30 -04:00
Marshall Bowers
8ef53aafa2
Have Danger check the format of GitHub issue links (#14684)
This PR updates the Danger rules to check for GitHub issue links that
aren't in the desired format:

<img width="916" alt="Screenshot 2024-07-17 at 5 11 48 PM"
src="https://github.com/user-attachments/assets/c77d3c28-3b09-44aa-a97f-03c2400df2e6">

We don't yet check that the links are exactly formatted as expected,
just that they aren't incorrectly formatted in the way that people
typically get it wrong.

Release Notes:

- N/A
2024-07-17 17:15:47 -04:00
Joseph T Lyons
53bcc3649a Add PR author to release notes scraper script 2024-07-17 13:20:19 -04:00
Thorsten Ball
66f0c390a8
linux: Fix missing licenses in binary causing panics (#14561)
Turns out that the existing CI step for Nightly did create the licenses
and they have been baked into X86 builds ever since, because our
builders are stateful.

On ARM machines, the licenses wouldn't exist in the binary because we
called `script/generate-licenses` too late in `scripts/bundle-linux`,
after the binary had been created.

This removes the duplication and generates the licenses once, before the
binary is created.

Fixes #14302.

Release Notes:

- Fixed "View Dependency Licenses" (or `zed: open licenses`) crashing on
Linux ARM machines.
([#14302](https://github.com/zed-industries/zed/issues/14302)
2024-07-16 14:55:30 +02:00
makeProjectGreatAgain
0b0de8ca83
Display hint to add PATH for Fish shell too (#14504)
tested on `fish 3.7.1 (released March 19, 2024)`
___

Release Notes:

- N/A
2024-07-15 11:11:09 -06:00
Peter Tripp
e106a39620
AlpineLinux: Fix install.sh and docs typo (#14105)
- AlpineLinux uses busybox `mktemp` which requires `mktemp -d` end with six XXXXXX (not five).
- Fixes #14082
2024-07-10 17:41:43 -04:00
Aidan Harris
73d7f70ff6
Flatpak fixes (#14083)
The Flatpak was failing to build because of AppStream metadata linting
errors. It also complained about the hyphen in the cid.

Release Notes:
 
     * N/A
2024-07-10 12:51:08 -06:00
Conrad Irwin
be5b7b2e70
Reduce the need to read the shell script to figure out what's going on (#14077)
Release Notes:

- N/A
2024-07-10 12:08:54 -06:00
Conrad Irwin
9282bf97ae
Default linux to stable (#14061)
Release Notes:

- linux: default install.sh to stable
2024-07-10 10:10:16 -06:00
Conrad Irwin
0d527dfb9e
Better zsh install fix (#14017)
Fix it on linux too 🤦

Release Notes:

- N/A
2024-07-09 13:34:32 -06:00
Conrad Irwin
a40a16ab98
zsh instructions too (#13944)
Release Notes:

- N/A
2024-07-08 20:18:03 -06:00
Joey Riches
d3f869acd8
scripts/flatpak: Escape XML characters in convert-release-notes.py (#13801)
Resolves #13791

Release Notes:

- N/A
2024-07-08 09:25:17 -06:00
jansol
ab83820b6e
linux: Remove StartupWMClass from .desktop file, add NewWorkspace action (#13807)
Release Notes:

- N/A
2024-07-08 08:31:08 +02:00
Chinmay Dalal
1260b52c82
linux scripts: Respect $CARGO_TARGET_DIR (#13830)
https://doc.rust-lang.org/cargo/reference/environment-variables.html

Some people (myself included) set this variable to have a single
directory to clean up (or whatever reason one might have for having a
single `target` directory). This changes the linux scripts to respect
that

Release Notes:

- N/A
2024-07-05 14:19:05 +03:00
Aditya Kumar
45d4de75b3
Add jq as a dependency for Linux script for Arch Linux (#13569)
## Error
```sh
./script/install-linux 

+ [[ 0 -gt 0 ]]
+ export ZED_CHANNEL=dev
+ ZED_CHANNEL=dev
++ pwd
+ export 'ZED_UPDATE_EXPLANATION=You need to fetch and rebuild zed in /home/adityakrcodes/repos/zed'
+ ZED_UPDATE_EXPLANATION='You need to fetch and rebuild zed in /home/adityakrcodes/repos/zed'
+ script/bundle-linux
+ getopts h flag
+ export ZED_BUNDLE=true
+ ZED_BUNDLE=true
+ channel=dev
++ script/get-crate-version zed
script/get-crate-version: line 16: jq: command not found <-- ERROR
+ version=
```
The script fails to install zed on Arch Linux due to a missing
dependency, `jq`.
## My machine info
OS: Arch Linux
Kernel: 6.6.34-1-lts 
WM: dwm 
Terminal: kitty
CPU: Ryzen 5 5500U with Radeon Graphics
GPU: AMD ATI 04:00.0 Lucienne 
Memory: 16 GB

## Error Description
The error occurs when running the script in `script/install-linux`,
which is unable to find the `jq` package, which is not installed by
default on the machine.
## Solution
To resolve this issue, you can install `jq` independently by running
`sudo pacman -S jq`. Alternatively, I have updated script `script/linux`
to include `jq` as a dependency ([link to the
commit](2349ad111f)),
ensuring it is installed automatically when running the initial script
for system libraries.

Release Notes:

- N/A
2024-06-27 09:58:53 -06:00
Conrad Irwin
fe7d53cb96
Dynamicer builds (#13074)
Fixes https://github.com/zed-industries/zed/issues/13073

Note that, contrary to the issue's text, we're still shipping a
statically bundled sqlite3 after this PR. We use enough new features of
sqlite, like `sqlite3_error_offset` and `STRICT`, that our minimum
version (v3.38.0) is higher than is presumably accessible on Ubuntu.

Release Notes:

- N/A

---------

Co-authored-by: Mikayla <mikayla@zed.dev>
2024-06-21 16:32:32 -07:00
0x2CA
c8709978a1
Dealing with missing arm architectures (#13349)
![image](https://github.com/zed-industries/zed/assets/19868292/341bf8c6-4586-4d51-8889-2c706dc98f6f)

"AArch64" and "ARM64" refer to the same thing.

AArch64 is the 64-bit state introduced in the [Armv8-A
architecture](https://en.wikipedia.org/wiki/ARM_architecture_family#Armv8-A).
The 32-bit state which is backwards compatible with Armv7-A and previous
32-bit Arm architectures is referred to as AArch32. Therefore the GNU
triplet for the 64-bit ISA is aarch64. The Linux kernel community
[chose](https://lkml.org/lkml/2012/7/6/624) to call their port of the
kernel to this architecture arm64 rather than aarch64, so that's where
some of the arm64 usage comes from.

The Apple-developed backend for AArch64 was called "ARM64" whereas the
LLVM community-developed backend was called "AArch64" (as it is the
canonical name for the 64-bit ISA). The two were merged [in
2014](https://www.phoronix.com/news/MTY5ODk) and the backend now is
called "AArch64".

Remote Normal


![image](https://github.com/zed-industries/zed/assets/19868292/f8c5505a-f455-45a6-83bd-230054f8aebd)


Release Notes:

- N/A
2024-06-21 10:46:25 +03:00
Conrad Irwin
99e4b3a4cf
Add linux arm support to installer (#13231)
Release Notes:

- N/A
2024-06-18 14:29:19 -06:00
Conrad Irwin
6cea9813ad
Stop using xtask for clippy (#13223)
This fixes an extra 10 second delay when needing to recompile xtask, and
allows passing arbitrary clippy args (like --allow-dirty)

Release Notes:

- N/A
2024-06-18 13:49:44 -06:00
Max Brunsfeld
7003b0f211
Allow canceling in-progress language server work (e.g. cargo check) (#13173)
Release Notes:

- Added a more detailed message in place of the generic `checking...`
messages when Rust-analyzer is running.
- Added a rate limit for language server status messages, to reduce
noisiness of those updates.
- Added a `cancel language server work` action which will cancel
long-running language server tasks.

---------

Co-authored-by: Richard <richard@zed.dev>
2024-06-17 17:58:47 -07:00
Marshall Bowers
54828ab836
Remove Gemini testing script (#13143)
This PR removes `script/gemini.py`, which just looks like it was used
for initially testing the Gemini API.

Now that it's built into collab as a completion provider, it doesn't
seem like we need this script anymore.

Release Notes:

- N/A
2024-06-17 10:51:29 -04:00
Marshall Bowers
78fd378702
Remove extra cargo install cargo-about (#13077)
This PR removes an extra `cargo install cargo-about` in the
`generate-licenses` script, as we already install a specific version of
`cargo-about`.

It also improves the way we detect if `cargo-about` is already
installed, to avoid logging an error when it is not installed.

Resolves #13075.

Release Notes:

- N/A
2024-06-14 18:02:20 -04:00