Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add changelog notes for the 23.03 release #6455

Merged
merged 11 commits into from
Mar 31, 2023
262 changes: 262 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,265 @@
# 23.03 (2023-03-31)
Copy link
Contributor

@pickfire pickfire Mar 30, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@the-mikedavis I noticed every time you had to write this by looking at the logs, even though writing it from scratch will be better for the reader, but it is a lot of work, should we add an unreleased section so each new feature change needs to be written to that so you don't have to spend so much time on this? Or do you have an automated way to do it?

Copy link
Member

@pascalkuthe pascalkuthe Mar 30, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

see #4150 for previous discussion. I think the points raised there were pretty good. I could comeup with a solution which would somewhat automate it but I think Mikes point about that being an unnecessary effort still applies


> Checkpoint: `5323020c3f02b178f2b6807f13d89bf7f40d3cce`

For the full log, check out the [git log](https://github.com/helix-editor/helix/compare/22.12..23.03).

Breaking changes:

- Select diagnostic range in `goto_*_diag` commands (#4713, #5164, #6193)
- Remove jump behavior from `increment`/`decrement` (#4123, #5929)
- Select change range in `goto_*_change` commands (#5206)
- Split file modification indicator from filename statusline elements (#4731, #6036)
- Jump to symbol ranges in LSP goto commands (#5986)

Features:

- Dynamic workspace symbol picker (#5055)
- Soft-wrap (#5420, #5786, #5893, #6142, #6440)
- Initial support for LSP snippet completions (#5864, b1f7528, #6263, bbf4800, 90348b8, f87299f, #6371)
- Add a statusline element for showing the current version control HEAD (#5682)
- Display LSP type hints (#5420, #5934, #6312)
- Enable the Kitty keyboard protocol on terminals with support (#4939, #6170, #6194)
- Add a statusline element for the basename of the current file (#5318)
- Add substring matching syntax for the picker (#5658)
- Support LSP `textDocument/prepareRename` (#6103)
- Allow multiple runtime directories with priorities (#5411)
- Allow configuring whether to insert or replace completions (#5728)

Commands:

- `:pipe-to` which pipes selections into a shell command and ignores output (#4931)
- `merge_consecutive_selections` (`A-_`) combines all consecutive selections (#5047)
- `rotate_view_reverse` which focuses the previous view (#5356)
- `goto_declaration` (`gD`, requires LSP) which jumps to a symbol's declaration (#5646)
- `file_picker_in_current_buffer_directory` (#4666)
- `:character-info` which shows information about the character under the cursor (#4000)
- `:toggle-option` for toggling config options at runtime (#4085)
- `dap_restart` for restarting a debug session in DAP (#5651)
- `:lsp-stop` to stop the language server of the current buffer (#5964)
- `:reset-diff-change` for resetting a diff hunk to its original text (#4974)

Usability improvements:

- Remove empty detail section in completion menu when LSP doesn't send details (#4902)
- Pass client information on LSP initialization (#4904)
- Allow specifying environment variables for language servers in language config (#4004)
- Allow detached git worktrees to be recognized as root paths (#5097)
- Improve error message handling for theme loading failures (#5073)
- Print the names of binaries required for LSP/DAP in health-check (#5195)
- Improve sorting in the picker in cases of ties (#5169)
- Add theming for prompt suggestions (#5104)
- Open a file picker when using `:open` on directories (#2707, #5278)
- Reload language config with `:config-reload` (#5239, #5381, #5431)
- Improve indent queries for python when the tree is errored (#5332)
- Picker: Open files without closing the picker with `A-ret` (#4435)
- Allow theming cursors by primary/secondary and by mode (#5130)
- Allow configuration of the minimum width for the line-numbers gutter (#4724, #5696)
- Use filename completer for `:run-shell-command` command (#5729)
- Surround with line-endings with `ms<ret>` (#4571)
- Hide duplicate symlinks in file pickers (#5658)
- Tabulate buffer picker contents (#5777)
- Add an option to disable LSP (#4425)
- Short-circuit tree-sitter and word object motions (#5851)
- Add exit code to failed command message (#5898)
- Make `m` textobject look for pairs enclosing selections (#3344)
- Negotiate LSP position encoding (#5894)
- Display deprecated LSP completions with strikethrough (#5932)
- Add JSONRPC request ID to failed LSP/DAP request log messages (#6010, #6018)
- Ignore case when filtering LSP completions (#6008)
- Show current language when no arguments are passed to `:set-language` (#5895)
- Refactor and rewrite all book documentation (#5534)
- Separate diagnostic picker message and code (#6095)
- Add a config option to bypass undercurl detection (#6253)
- Only complete appropriate arguments for typed commands (#5966)
- Discard outdated LSP diagnostics (3c9d5d0)
- Discard outdated LSP workspace edits (b6a4927)
- Run shell commands asynchronously (#6373)
- Show diagnostic codes in LSP diagnostic messages (#6378)

Fixes:

- Fix behavior of `auto-completion` flag for completion-on-trigger (#5042)
- Reset editor mode when changing buffers (#5072)
- Respect scrolloff settings in mouse movements (#5255)
- Avoid trailing `s` when only one file is opened (#5189)
- Fix erroneous indent between closers of auto-pairs (#5330)
- Expand `~` when parsing file paths in `:open` (#5329)
- Fix theme inheritance for default themes (#5218)
- Fix `extend_line` with a count when the current line(s) are selected (#5288)
- Prompt: Fix autocompletion for paths containing periods (#5175)
- Skip serializing JSONRPC params if params is null (#5471)
- Fix interaction with the `xclip` clipboard provider (#5426)
- Fix undo/redo execution from the command palette (#5294)
- Fix highlighting of non-block cursors (#5575)
- Fix panic when nooping in `join_selections` and `join_selections_space` (#5423)
- Fix selecting a changed file in global search (#5639)
- Fix initial syntax highlight layer sort order (#5196)
- Fix UTF-8 length handling for shellwords (#5738)
- Remove C-j and C-k bindings from the completion menu (#5070)
- Always commit to history when pasting (#5790)
- Properly handle LSP position encoding (#5711)
- Fix infinite loop in `copy_selection_on_prev_line` (#5888)
- Fix completion popup positioning (#5842)
- Fix a panic when uncommenting a line with only a comment token (#5933)
- Fix panic in `goto_window_center` at EOF (#5987)
- Ignore invalid file URIs sent by a language server (#6000)
- Decode LSP URIs for the workspace diagnostics picker (#6016)
- Fix incorrect usages of `tab_width` with `indent_width` (#5918)
- DAP: Send Disconnect if the Terminated event is received (#5532)
- DAP: Validate key and index exist when requesting variables (#5628)
- Check LSP renaming support before prompting for rename text (#6257)
- Fix indent guide rendering (#6136)
- Fix division by zero panic (#6155)
- Fix lacking space panic (#6109)
- Send error replies for malformed and unhandled LSP requests (#6058)
- Fix table column calculations for dynamic pickers (#5920)
- Skip adding jumplist entries for `:<n>` line number previews (#5751)
- Fix completion race conditions (#6173)
- Fix `shrink_selection` with multiple cursors (#6093)
- Fix indentation calculation for lines with mixed tabs/spaces (#6278)
- No-op `client/registerCapability` LSP requests (#6258)
- Send the STOP signal to all processes in the process group (#3546)
- Fix workspace edit client capabilities declaration (7bf168d)
- Fix highlighting in picker results with multiple columns (#6333)

Themes:

- Update `serika` (#5038, #6344)
- Update `flatwhite` (#5036, #6323)
- Update `autumn` (#5051, #5397, #6280, #6316)
- Update `acme` (#5019, #5486, #5488)
- Update `gruvbox` themes (#5066, #5333, #5540, #6285, #6295)
- Update `base16_transparent` (#5105)
- Update `dark_high_contrast` (#5105)
- Update `dracula` (#5236, #5627, #6414)
- Update `monokai_pro_spectrum` (#5250, #5602)
- Update `rose_pine` (#5267, #5489, #6384)
- Update `kanagawa` (#5273, #5571, #6085)
- Update `emacs` (#5334)
- Add `github` themes (#5353, efeec12)
- Dark themes: `github_dark`, `github_dark_colorblind`, `github_dark_dimmed`, `github_dark_high_contrast`, `github_dark_tritanopia`
- Light themes: `github_light`, `github_light_colorblind`, `github_light_dimmed`, `github_light_high_contrast`, `github_light_tritanopia`
- Update `solarized` variants (#5445, #6327)
- Update `catppuccin` variants (#5404, #6107, #6269)
- Use curly underlines in built-in themes (#5419)
- Update `zenburn` (#5573)
- Rewrite `snazzy` (#3971)
- Add `monokai_aqua` (#5578)
- Add `markup.strikethrough` to existing themes (#5619)
- Update `sonokai` (#5440)
- Update `onedark` (#5755)
- Add `ayu_evolve` (#5638, #6028, #6225)
- Add `jellybeans` (#5719)
- Update `fleet_dark` (#5605, #6266, #6324, #6375)
- Add `darcula-solid` (#5778)
- Remove text background from monokai themes (#6009)
- Update `pop_dark` (#5992, #6208, #6227, #6292)
- Add `everblush` (#6086)
- Add `adwaita-dark` (#6042, #6342)
- Update `papercolor` (#6162)
- Update `onelight` (#6192, #6276)
- Add `molokai` (#6260)
- Update `ayu` variants (#6329)
- Update `tokyonight` variants (#6349)
- Update `nord` variants (#6376)

New languages:

- BibTeX (#5064)
- Mermaid.js (#5147)
- Crystal (#4993, #5205)
- MATLAB/Octave (#5192)
- `tfvars` (uses HCL) (#5396)
- Ponylang (#5416)
- DHall (1f6809c)
- Sagemath (#5649)
- MSBuild (#5793)
- pem (#5797)
- passwd (#4959)
- hosts (#4950, #5914)
- uxntal (#6047)
- Yuck (#6064, #6242)
- GNU gettext PO (#5996)
- Sway (#6023)
- NASM (#6068)
- PRQL (#6126)
- reStructuredText (#6180)
- Smithy (#6370)
- VHDL (#5826)
- Rego (OpenPolicy Agent) (#6415)
- Nim (#6123)

Updated languages and queries:

- Use diff syntax for patch files (#5085)
- Add Haskell textobjects (#5061)
- Fix commonlisp configuration (#5091)
- Update Scheme (bae890d)
- Add indent queries for Bash (#5149)
- Recognize `c++` as a C++ extension (#5183)
- Enable HTTP server in `metals` (Scala) config (#5551)
- Change V-lang language server to `v ls` from `vls` (#5677)
- Inject comment grammar into Nix (#5208)
- Update Rust highlights (#5238, #5349)
- Fix HTML injection within Markdown (#5265)
- Fix comment token for godot (#5276)
- Expand injections for Vue (#5268)
- Add `.bash_aliases` as a Bash file-type (#5347)
- Fix comment token for sshclientconfig (#5351)
- Update Prisma (#5417)
- Update C++ (#5457)
- Add more file-types for Python (#5593)
- Update tree-sitter-scala (#5576)
- Add an injection regex for Lua (#5606)
- Add `build.gradle` to java roots configuration (#5641)
- Add Hub PR files to markdown file-types (#5634)
- Add an external formatter configuration for Cue (#5679)
- Add injections for builders and writers to Nix (#5629)
- Update tree-sitter-xml to fix whitespace parsing (#5685)
- Add `Justfile` to the make file-types configuration (#5687)
- Update tree-sitter-sql and highlight queries (#5683, #5772)
- Use the bash grammar and queries for env language (#5720)
- Add podspec files to ruby file-types (#5811)
- Recognize `.C` and `.H` file-types as C++ (#5808)
- Recognize plist and mobileconfig files as XML (#5863)
- Fix `select` indentation in Go (#5713)
- Check for external file modifications when writing (#5805)
- Recognize containerfiles as dockerfile syntax (#5873)
- Update godot grammar and queries (#5944, #6186)
- Improve DHall highlights (#5959)
- Recognize `.env.dist` and `source.env` as env language (#6003)
- Update tree-sitter-git-rebase (#6030, #6094)
- Improve SQL highlights (#6041)
- Improve markdown highlights and inject LaTeX (#6100)
- Add textobject queries for Elm (#6084)
- Recognize graphql schema file type (#6159)
- Improve highlighting in comments (#6143)
- Improve highlighting for JavaScript/TypeScript/ECMAScript languages (#6205)
- Improve PHP highlights (#6203, #6250, #6299)
- Improve Go highlights (#6204)
- Highlight unchecked sqlx functions as SQL in Rust (#6256)
- Improve Erlang highlights (cdd6c8d)
- Improve Nix highlights (fb4d703)
- Improve gdscript highlights (#6311)
- Improve Vlang highlights (#6279)
- Improve Makefile highlights (#6339)
- Remove auto-pair for `'` in OCaml (#6381)
- Fix indents in switch statements in ECMA languages (#6369)
- Recognize xlb and storyboard file-types as XML (#6407)
- Recognize cts and mts file-types as TypeScript (#6424)
- Recognize SVG file-type as XML (#6431)
- Add theme scopes for (un)checked list item markup scopes (#6434)
- Update git commit grammar and add the comment textobject (#6439)
- Recognize ARB file-type as JSON (#6452)

Packaging:

- Fix Nix flake devShell for darwin hosts (#5368)
- Add Appstream metadata file to `contrib/` (#5643)
- Increase the MSRV to 1.65 (#5570, #6185)
- Expose the Nix flake's `wrapper` (#5994)

# 22.12 (2022-12-06)

This is a great big release filled with changes from a 99 contributors. A big _thank you_ to you all!
Expand Down
2 changes: 1 addition & 1 deletion VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
22.12
23.03
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should we add EOF for this?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We could but we would need to add some string trimming to the build file for helix_loader (and helix_term IIRC). For simplicity I just left the newline out

3 changes: 3 additions & 0 deletions contrib/Helix.appdata.xml
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,9 @@
<content_rating type="oars-1.1" />

<releases>
<release version="23.03" date="2023-03-31">
<url>https://helix-editor.com/news/release-23-03-highlights/</url>
</release>
<release version="22.12" date="2022-12-6">
<url>https://helix-editor.com/news/release-22-12-highlights/</url>
</release>
Expand Down