|
1 | 1 | --- |
2 | | -version: "1.0" |
3 | | -release_date: "2025-03-04" |
| 2 | +version: "1.0.0" |
| 3 | +release_date: "2025-04-12" |
4 | 4 | sidebar_position: -4 |
5 | 5 | --- |
6 | 6 |
|
7 | 7 | # Release Notes for 1.0.0 |
8 | 8 |
|
9 | | -Cursorless if finally ready for its 1.0.0 release! |
| 9 | +_Published April 12, 2025_ |
10 | 10 |
|
11 | | -Over the last year the Cursorless team has focused primarily on the user experience and migrating legacy language scopes. During 2024 we merged [299 PRs](https://github.com/cursorless-dev/cursorless/pulls?q=merged%3A2024+sort%3Aupdated-asc+) and so far during 2025 [100+ PRs](https://github.com/cursorless-dev/cursorless/pulls?q=merged%3A2025+sort%3Aupdated-asc+). We are now at a point where we feel Cursorless is ready for its first official release. |
| 11 | +## Preamble |
12 | 12 |
|
13 | | -Here are a few highlights of the things we have done / achieved: |
| 13 | +Cursorless is finally ready for its 1.0.0 release! 🎉 |
14 | 14 |
|
15 | | -- Added a Cursorless tutorial in vscode |
16 | | -- Simplify the installation process by notifying the user if they are missing essential features like Talon or the command server. |
17 | | -- Migrated all the text based scopes and most of the language specific ones from our old legacy definitions to use next-gen gen scope definitions. You can now say things like `"take two items"`. |
18 | | -- Deprecated the Cursorless snippets in favor of the [community snippets](https://github.com/talonhub/community/tree/f7e5f9696c7ed6e78e8488c8b7fb1c6bbcc25779/core/snippets) |
19 | | -- We now have over `10 000`! tests in total. Testing everything from actions and scopes to the Talon grammar. |
20 | | -- We have also added more actions, modifiers, scopes support for more languages, fixed bugs and so on. |
| 15 | +Since the last release, we've shipped lots of features, as well as pouring on that polish to get us to the place where we're ready to drop our first major. Backwards compatibility and stability has always been a bit of a religion around here, but now that we've bumped that leading 0, we're bound by the [semver blood oath](https://semver.org/). |
21 | 16 |
|
22 | | -## What's next? |
| 17 | +## The subject at hand |
23 | 18 |
|
24 | | -- We will continue to improve language definitions. There are still some languages where features are missing or still in legacy. |
25 | | -- Improving documentation. This is an area where we would really appreciate [contributions](https://github.com/cursorless-dev/cursorless/issues?q=is%3Aissue%20state%3Aopen%20label%3Adocumentation). |
26 | | -- Cursorless everywhere. We now have users working on Cursorless for multiple new editors. The future for Cursorless everywhere is really interesting. |
| 19 | +Since the last release, we've merged [184 PRs](https://github.com/cursorless-dev/cursorless/pulls?q=is%3Apr+is%3Amerged+merged%3A2024-08-02..2025-04-12+sort%3Aupdated-asc+), including [100+ PRs](https://github.com/cursorless-dev/cursorless/pulls?q=is%3Apr+is%3Amerged+merged%3A2025-01-01..2025-04-12+sort%3Aupdated-asc+) just since the start of 2025! And as always, we're on continuous delivery, so each of these merged PRs hit your editor before you could say `"chuck every two lines first funk class bat"`. |
| 20 | + |
| 21 | +Here are some highlights: |
| 22 | + |
| 23 | +### Polish, polish, polish |
| 24 | + |
| 25 | +- Simplified the installation process by notifying users if they're missing essential features like Talon or the command server ([#2720](https://github.com/cursorless-dev/cursorless/pull/2720), [#2061](https://github.com/cursorless-dev/cursorless/pull/2061)) |
| 26 | +- Improved error messages and feedback throughout the extension ([#2861](https://github.com/cursorless-dev/cursorless/pull/2861), [#2755](https://github.com/cursorless-dev/cursorless/pull/2755)) |
| 27 | +- Migrated most of our language scope tests to our new test representation, which helped us to uncover lots of corner cases and dramatically improve consistency across languages. |
| 28 | + |
| 29 | +### Next-gen scope definitions |
| 30 | + |
| 31 | +- Migrated all text-based scopes and most language-specific ones from our legacy definitions to next-gen scope definitions, enabling next-gen inference (eg `"every funk air past bat"`), scope visualization, scope tree view, etc. We're just down to a few pesky scopes in Clojure, CSS, LaTeX, Ruby, Rust, and Scala. If you use one of these languages, we're looking for volunteers to [knock out the last few scopes](https://www.cursorless.org/docs/contributing/adding-a-new-scope/)! |
| 32 | + |
| 33 | +### Community integration |
| 34 | + |
| 35 | +- Deprecated the Cursorless snippets in favor of the [community snippets](https://github.com/talonhub/community/tree/f7e5f9696c7ed6e78e8488c8b7fb1c6bbcc25779/core/snippets) ([#2804](https://github.com/cursorless-dev/cursorless/pull/2804), [#2747](https://github.com/cursorless-dev/cursorless/pull/2747), [#2744](https://github.com/cursorless-dev/cursorless/pull/2744)) |
| 36 | +- Added migration tools and instructions for users to switch to community snippets ([#2857](https://github.com/cursorless-dev/cursorless/pull/2857), [#2837](https://github.com/cursorless-dev/cursorless/pull/2837), [#2833](https://github.com/cursorless-dev/cursorless/pull/2833)), ([#2824](https://github.com/cursorless-dev/cursorless/pull/2824) |
| 37 | + |
| 38 | +### Stability and testing |
| 39 | + |
| 40 | +- We now have over 10,000 tests in total, testing everything from actions and scopes to the Talon grammar |
| 41 | +- Improved test infrastructure and reporting ([#2818](https://github.com/cursorless-dev/cursorless/pull/2818), [#2809](https://github.com/cursorless-dev/cursorless/pull/2809), [#2854](https://github.com/cursorless-dev/cursorless/pull/2854)) |
| 42 | + |
| 43 | +### New features |
| 44 | + |
| 45 | +While our main push for the 1.0.0 release was polish, we still managed to squeeze in a few new features: |
| 46 | + |
| 47 | +- Flash targets action ([#2764](https://github.com/cursorless-dev/cursorless/pull/2764) |
| 48 | +- Add `"append"` action to add a new cursor ([#2707](https://github.com/cursorless-dev/cursorless/pull/2707)) |
| 49 | + |
| 50 | +## 📈 What's next? |
| 51 | + |
| 52 | +- We will continue to improve language definitions. There are still some languages where features are missing or still in legacy form (see above). |
| 53 | +- Improving documentation. This is an area where we would really appreciate [contributions](https://github.com/cursorless-dev/cursorless/issues?q=is%3Aissue%20state%3Aopen%20label%3Adocumentation) |
| 54 | +- Cursorless everywhere. We now have users working on Cursorless for multiple new editors. The future for Cursorless everywhere is looking very bright! |
| 55 | +- Embedded languages, eg js within html, markdown code blocks, vue.js, styled components in js, etc etc. This one is a big effort, so stay tuned. |
| 56 | + |
| 57 | +We'd like to end with a massive thank you to [our sponsors 🎉](https://github.com/sponsors/cursorless-dev/), without whom Cursorless development would not be possible! |
0 commit comments