forked from pool/helix
Accepting request 1120897 from editors
- Remove patch 0001-fix-ub-in-diff-gutter.patch - Update to version 23.10 - Build requires git OBS-URL: https://build.opensuse.org/request/show/1120897 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/helix?expand=0&rev=19
This commit is contained in:
commit
6bb21a6363
@ -1,68 +0,0 @@
|
||||
From 269f637847140ddb9537efde4968bd92c91c9e1e Mon Sep 17 00:00:00 2001
|
||||
From: Pascal Kuthe <pascal.kuthe@semimod.de>
|
||||
Date: Sun, 4 Jun 2023 16:59:01 +0200
|
||||
Subject: [PATCH] fix UB in diff gutter
|
||||
|
||||
---
|
||||
helix-vcs/src/diff/line_cache.rs | 18 +++++++++---------
|
||||
1 file changed, 9 insertions(+), 9 deletions(-)
|
||||
|
||||
diff --git a/helix-vcs/src/diff/line_cache.rs b/helix-vcs/src/diff/line_cache.rs
|
||||
index 8e48250f157e..460a2065e8ed 100644
|
||||
--- a/helix-vcs/src/diff/line_cache.rs
|
||||
+++ b/helix-vcs/src/diff/line_cache.rs
|
||||
@@ -20,8 +20,8 @@ use super::{MAX_DIFF_BYTES, MAX_DIFF_LINES};
|
||||
/// A cache that stores the `lines` of a rope as a vector.
|
||||
/// It allows safely reusing the allocation of the vec when updating the rope
|
||||
pub(crate) struct InternedRopeLines {
|
||||
- diff_base: Rope,
|
||||
- doc: Rope,
|
||||
+ diff_base: Box<Rope>,
|
||||
+ doc: Box<Rope>,
|
||||
num_tokens_diff_base: u32,
|
||||
interned: InternedInput<RopeSlice<'static>>,
|
||||
}
|
||||
@@ -34,8 +34,8 @@ impl InternedRopeLines {
|
||||
after: Vec::with_capacity(doc.len_lines()),
|
||||
interner: Interner::new(diff_base.len_lines() + doc.len_lines()),
|
||||
},
|
||||
- diff_base,
|
||||
- doc,
|
||||
+ diff_base: Box::new(diff_base),
|
||||
+ doc: Box::new(doc),
|
||||
// will be populated by update_diff_base_impl
|
||||
num_tokens_diff_base: 0,
|
||||
};
|
||||
@@ -44,19 +44,19 @@ impl InternedRopeLines {
|
||||
}
|
||||
|
||||
pub fn doc(&self) -> Rope {
|
||||
- self.doc.clone()
|
||||
+ Rope::clone(&*self.doc)
|
||||
}
|
||||
|
||||
pub fn diff_base(&self) -> Rope {
|
||||
- self.diff_base.clone()
|
||||
+ Rope::clone(&*self.diff_base)
|
||||
}
|
||||
|
||||
/// Updates the `diff_base` and optionally the document if `doc` is not None
|
||||
pub fn update_diff_base(&mut self, diff_base: Rope, doc: Option<Rope>) {
|
||||
self.interned.clear();
|
||||
- self.diff_base = diff_base;
|
||||
+ self.diff_base = Box::new(diff_base);
|
||||
if let Some(doc) = doc {
|
||||
- self.doc = doc
|
||||
+ self.doc = Box::new(doc)
|
||||
}
|
||||
if !self.is_too_large() {
|
||||
self.update_diff_base_impl();
|
||||
@@ -74,7 +74,7 @@ impl InternedRopeLines {
|
||||
.interner
|
||||
.erase_tokens_after(self.num_tokens_diff_base.into());
|
||||
|
||||
- self.doc = doc;
|
||||
+ self.doc = Box::new(doc);
|
||||
if self.is_too_large() {
|
||||
self.interned.after.clear();
|
||||
} else {
|
10
_service
10
_service
@ -1,10 +1,8 @@
|
||||
<services>
|
||||
<service name="download_files" mode="disabled" />
|
||||
<service name="cargo_vendor" mode="disabled">
|
||||
<param name="srctar">helix-23.05.tar.xz</param>
|
||||
<param name="compression">xz</param>
|
||||
<param name="update">true</param>
|
||||
<service name="download_files" mode="manual" />
|
||||
<service name="cargo_vendor" mode="manual">
|
||||
<param name="src">helix-*.tar.xz</param>
|
||||
</service>
|
||||
<service name="cargo_audit" mode="disabled" />
|
||||
<service name="cargo_audit" mode="manual" />
|
||||
</services>
|
||||
|
||||
|
@ -2,4 +2,4 @@
|
||||
replace-with = "vendored-sources"
|
||||
|
||||
[source.vendored-sources]
|
||||
directory = "vendor"
|
||||
directory = "vendor"
|
||||
|
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:c1ca69facde99d708175c686ce5bf3585e119e372c83e1c3dc1d562c7a8e3d87
|
||||
size 115474436
|
3
helix-23.10.tar.xz
Normal file
3
helix-23.10.tar.xz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:4e7bcac200b1a15bc9f196bdfd161e4e448dc670359349ae14c18ccc512153e8
|
||||
size 106234736
|
249
helix.changes
249
helix.changes
@ -1,3 +1,252 @@
|
||||
-------------------------------------------------------------------
|
||||
Sat Oct 28 10:22:15 UTC 2023 - Soc Virnyl Estela <uncomfy+openbuildservice@uncomfyhalomacro.pl>
|
||||
|
||||
- Build requires git. It won't be used but it will fail if git binary is not detected.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sat Oct 28 09:44:51 UTC 2023 - Soc Virnyl Estela <uncomfy+openbuildservice@uncomfyhalomacro.pl>
|
||||
|
||||
- Remove patch 0001-fix-ub-in-diff-gutter.patch
|
||||
- Update to version 23.10:
|
||||
Breaking changes:
|
||||
- Support multiple language servers per language
|
||||
- This is a breaking change to language configuration
|
||||
|
||||
Features:
|
||||
- Support multiple language servers per language
|
||||
- Add a statusline element for the selected register
|
||||
- Add `%`, `#`, `.`, `*` and `+` special registers
|
||||
- Add initial support for LSP DidChangeWatchedFiles notifications
|
||||
- Search buffer contents in `global_search`
|
||||
- Add a "smart tab" command that intelligently jumps the cursor on tab
|
||||
- Add a statusline element for whether a file is read-only
|
||||
- Syntax highlight regex prompts
|
||||
- Allow defining alignment in indent queries
|
||||
- Show visual feedback in `surround_replace`
|
||||
- Switch to Nucleo for fuzzy matching
|
||||
- Insert a trailing newline on write
|
||||
- Add a `-w`/`--working-dir` CLI flag for specifying a working directory on startup
|
||||
- Accept a `+N` CLI argument to set the first file's line number
|
||||
- Accept Helix-specific ignore files in `.helix/ignore` and `~/.config/helix/ignore`
|
||||
|
||||
Commands:
|
||||
- `merge_selections` (`A-minus`) - merge all selections into one selection that covers all ranges
|
||||
- `move_prev_long_word_end` and `extend_prev_long_word_end` - move/extend to the end of the previous WORD
|
||||
- `reverse_selection_contents` - swaps the values of each selection so they are reversed
|
||||
- Add `:rl` and `:rla` aliases for `:reload` and `:reload-all`
|
||||
- `yank_joined` - join the selections and yank to the selected register
|
||||
- `:write-all!` (`:wa!`) - forcibly write all buffers to disk and create any necessary subdirectories
|
||||
- `:redraw` - clear re-render the UI
|
||||
- `:tree-sitter-highlight-name` - show the theme scope name of the highlight under the cursor
|
||||
|
||||
Usability improvements:
|
||||
- Allow cycling option values at runtime
|
||||
- Exit gracefully on termination signals
|
||||
- Add plaintext matching fallback to tree-sitter pair matching
|
||||
- Persist register selection in pending keymaps
|
||||
- Propagate the count and register to command palette commands
|
||||
- Auto indent on `insert_at_line_start`
|
||||
- Add a config option to control whether LSP completions are automatically inserted on preview
|
||||
- Add a config option for default line endings
|
||||
- Allow ANSI colors in themes
|
||||
- Match pairs that don't form a standalone tree-sitter node
|
||||
- Allow indent sizes of up to 16 columns
|
||||
- Improve performance of mapping positions through changes
|
||||
- Mark buffers created from stdin as modified
|
||||
- Forcibly shut down uninitialized language servers
|
||||
- Add filename completer for shell prompts
|
||||
- Allow binding F13-F24
|
||||
- Resolve LSP code actions
|
||||
- Save an undo checkpoint before accepting completions
|
||||
- Include gitignored files in debugger completions
|
||||
- Make editor remember the last search register
|
||||
- Open directories with `goto_file`
|
||||
- Use relative path to open buffer in `goto_file` (`gf`)
|
||||
- Support `default` color in themes
|
||||
- Toggle between relative and absolute line numbers when the terminal loses focus
|
||||
- Lower default idle-timeout to 250ms
|
||||
- Allow theming diff gutters separately from other diff colors
|
||||
- Style bold/italic/strikethrough in markdown doc popups
|
||||
- Maintain the cursor position and view when splitting with `:hsplit`/`:vsplit`
|
||||
- Accept `-` in macros outside of `<`/`>`
|
||||
- Show all language servers for each language in `--health`
|
||||
- Don't break on hyphens in `:reflow`
|
||||
|
||||
Fixes:
|
||||
- Update diagnostics correctly on language server exit
|
||||
- Fix off-by-one in `select_references_to_symbol_under_cursor`
|
||||
- Extend selection with repeat-last-motion only if the original motion extended the selection
|
||||
- Fix undefined behavior in the diff gutter
|
||||
- Check that tab width is non-zero
|
||||
- Fix styles being overwritten in table rows with multiple cells
|
||||
- Add file for `--log` CLI arg in help text
|
||||
- Fix underflow when repeating a completion that has a negative shift position
|
||||
- Prefer longer matches in `select_next_sibling` and `select_prev_sibling`
|
||||
- Preview scratch buffers in the jumplist picker
|
||||
- Fix chunking by bytes in tree-sitter parsing
|
||||
- Discard LSP publishDiagnostic from uninitialized servers
|
||||
- Use negotiated position encoding for LSP workspace edits
|
||||
- Fix error message for unknown gutter types in config
|
||||
- Fix `:log-open` when `--log` CLI arg is specified
|
||||
- Fix debouncing of LSP messages to fix the last message sticking around
|
||||
- Fix crash when the current working directory is deleted
|
||||
- Fix piping to Helix on macOS
|
||||
- Fix crash when parsing overlapping injections
|
||||
- Clear the statusline when the prompt is visible
|
||||
- Fix range formatting error message typo
|
||||
- Skip rendering gutters when gutter width exceeds view width
|
||||
- Center the picker preview using visual lines
|
||||
- Align view correctly for background buffers opened with `A-ret`
|
||||
- Fix cursor resetting to block when quitting via a keybind
|
||||
- Remove path completions for the `:new` command
|
||||
- Use binary path resolved by `which` for formatter commands
|
||||
- Handle crossterm's `hidden` modifier
|
||||
- Clear completion when switching between windows with the mouse
|
||||
- Eagerly remove the last picker (`<space>'`) when the picker has many items
|
||||
- Fix find commands for buffers with non-LF line-endings
|
||||
- Detect the tmux clipboard provider on macOS
|
||||
- Fix syntax highlighting in dynamic picker preview pane
|
||||
- Recognize HTML code tags with attributes as code in markdown previews
|
||||
- Fix multicursor snippet placeholder directions
|
||||
- Only show diagnostic highlights when diagnostics are enabled for a language server
|
||||
|
||||
Themes:
|
||||
- Improve the selection color in `ferra`
|
||||
- Add `variable.other.member` theming to `spacebones_light`
|
||||
- Update `autumn` and theme the soft-wrap indicator
|
||||
- Add `gruvbox_dark_soft`
|
||||
- Add `merionette`
|
||||
- Add `zed_onedark` and `zed_onelight`
|
||||
- Use light-gray for `onedarker` inlay hint theming
|
||||
- Update the Nord theme to follow the style guidelines
|
||||
- Tune `dark_plus` inlay hint colors
|
||||
- Add `naysayer`
|
||||
- Add `kaolin-dark`, `kaolin-light` and `kaolin-valley-dark`
|
||||
- Fix selection highlighting in gruvbox variants
|
||||
- Add soft-wrap indicator to `gruvbox`
|
||||
- Add missing palette definitions in `everforest_dark`
|
||||
- Increase diagnostics clarity in `pop-dark`
|
||||
- Add `vim_dark_high_contrast`
|
||||
- Add `new_moon`
|
||||
- Add `yellowed`
|
||||
- Improve comment readability for `autumn`
|
||||
- Distinguish active bufferline buffer in `monokai`
|
||||
- Update ruler colors in `nord`
|
||||
- Update Catppuccin themes
|
||||
- Add text focus scope and diagnostics undercurls for `nord`
|
||||
- Add material theme collection
|
||||
- Improve indent line color in `dracula`
|
||||
- Clean up and refactor `papercolor` to use inheritance
|
||||
- Fix `zenburn` inlay hint color ([#8278](https://github.com/helix-editor/helix/pull/8278)a)
|
||||
- Fix picker crash when previewing an invalid range
|
||||
- Correctly center items in the picker preview
|
||||
- Add `cyan_light`
|
||||
- Theme HTML tags in `onedark`
|
||||
- Refine `darcula` and `darcula-solid` themes
|
||||
- Improve `nord` highlights
|
||||
- Add `nord-night`
|
||||
|
||||
New languages:
|
||||
- Blueprint
|
||||
- Forth
|
||||
- t32
|
||||
- WebC
|
||||
- Persistent DSL for Haskell
|
||||
- F#
|
||||
- Wren
|
||||
- Unison
|
||||
- Todo.txt
|
||||
- Jinja and Handlebars
|
||||
- Pod
|
||||
- Strace
|
||||
- Gemini
|
||||
- GNU Assembler (GAS)
|
||||
- JSON5
|
||||
- TEMPL
|
||||
|
||||
Updated languages and queries:
|
||||
- Add one to the ruler numbers for git-commit
|
||||
- Recognize XAML files as XML
|
||||
- Recognize `Cargo.lock` as TOML
|
||||
- Use Rust grammar for Cairo
|
||||
- Update tree-sitter-nickel
|
||||
- Tune auto-pair characters for Nickel
|
||||
- Recognize `Vagrantfile` as Ruby
|
||||
- Recognize hidden justfiles as Just
|
||||
- Update Java and TypeScript highlight queries
|
||||
- Recognize `.zimrc` as Bash
|
||||
- Recognize `.gir` as XML
|
||||
- Update tree-sitter-scala
|
||||
- Recognize make file-type as Makefile
|
||||
- Update tree-sitter-verilog
|
||||
- Update tree-sitter-cpp
|
||||
- Support core mode for delve debugger
|
||||
- Add Fortran comment injections
|
||||
- Switch Vue language server to `vue-language-server`
|
||||
- Update tree-sitter-sql
|
||||
- Replace the MATLAB tre-sitter grammar
|
||||
- Highlight TOML table headers
|
||||
- Recognize `cppm` file-type as C++
|
||||
- Refactor ecma language queries into private and public queries
|
||||
- Update tree-sitter-dart
|
||||
- Add shebang for nushell files
|
||||
- Recognize systemd files as INI
|
||||
- Update TypeScript, TSX and Svelte grammars
|
||||
- Enable inlay hints in the Svelte language server
|
||||
- Recognize `Brewfile`s as Ruby
|
||||
- Add more file-types for R
|
||||
- Switch tree-sitter-perl to official upstream parser
|
||||
- Fix predicate typo in comment highlights
|
||||
- Update tree-sitter-prql
|
||||
- Recognize `.gitf` as JSON
|
||||
- Switch V language server to `v-analyzer`
|
||||
- Add protobuf language servers
|
||||
- Update tree-sitter-zig
|
||||
- Update tree-sitter-hare
|
||||
- Add Java indent queries
|
||||
- Update tree-sitter-scheme
|
||||
- Recognize `scm` as Scheme instead of TSQ
|
||||
- Update tree-sitter-git-commit
|
||||
- Update JavaScript, TypeScript and TSX grammars
|
||||
- Update tree-sitter-nu
|
||||
- Fix YAML indentation
|
||||
- Add `csharp-ls`, Pyright, Pylyzer and add roots for Python
|
||||
- Update tree-sitter-slint
|
||||
- Recognize more ZSH file-types as Bash
|
||||
- Recognize `star` extension as Starlark
|
||||
- Fix inline HTML tag highlighting in markdown
|
||||
- Update tree-sitter-robot
|
||||
- Highlight Dart 3 `sealed` and `base` keywords
|
||||
- Add configuration for `ltex-ls` to the default `languages.toml`
|
||||
- Update tree-sitter-strace
|
||||
- Update tree-sitter-gleam, enable auto-format
|
||||
- Update tree-sitter-esdl
|
||||
- Expand ignore file-types
|
||||
- Recognize feed related formats as XML
|
||||
- Improve YAML injections
|
||||
- Add shebangs for TypeScript, Julia, Java and OCaml
|
||||
- Highlight abbreviations in Scheme
|
||||
- Remove backtic auto-pair in OCaml
|
||||
- Recognize `flake.lock` as JSON
|
||||
- Add Python test script injection for Nix
|
||||
- Fix Nix comment injection precedence
|
||||
- Recognize editorconfig files as INI
|
||||
- Recognize `.babelrc` as JSON
|
||||
- Switch Purescript to its own tree-sitter parser
|
||||
- Update Unison highlights
|
||||
- Recognize `.webmanifest` as JSON
|
||||
- Recognize polkit policy files as XML
|
||||
- Recognize polkit rules files as JavaScript
|
||||
- Update Go highlight queries
|
||||
- Add shebangs for Makefiles
|
||||
- Add file-type associations from VSCode
|
||||
- Add validation to JSON/CSS language server configs
|
||||
- Add a configuration for the tailwind language server
|
||||
- Add a configuration for the ansible language server
|
||||
- Add a configuration for the GraphQL language server
|
||||
- Indent while statements in Bash
|
||||
- Update tree-sitter-haskell and queries
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Aug 31 23:40:52 UTC 2023 - Soc Virnyl Estela <socvirnyl.estela@gmail.com>
|
||||
|
||||
|
@ -23,23 +23,23 @@
|
||||
%global _helix_runtimedir %{_libdir}/%{name}/runtime
|
||||
|
||||
Name: helix
|
||||
Version: 23.05
|
||||
Version: 23.10
|
||||
Release: 0
|
||||
Summary: A post-modern modal text editor written in Rust
|
||||
License: (Apache-2.0 OR MIT) AND BSD-3-Clause AND (Apache-2.0 OR BSL-1.0) AND (Apache-2.0 OR MIT) AND (MIT OR Apache-2.0 OR Zlib) AND (MIT or Unlicense) AND (Zlib OR Apache-2.0 OR MIT) AND Apache-2.0 AND BSL-1.0 AND ISC AND MIT AND MPL-2.0 AND Zlib AND MPL-2.0
|
||||
URL: https://github.com/helix-editor/helix
|
||||
# This tarball includes fetched grammars
|
||||
Source0: https://github.com/helix-editor/helix/releases/download/%{version}/%{name}-%{version}-source.tar.xz#/%{name}-%{version}.tar.xz
|
||||
Source1: vendor.tar.xz
|
||||
Source1: vendor.tar.zst
|
||||
Source2: cargo_config
|
||||
Source3: README-suse-maint.md
|
||||
Source4: helix-rpmlintrc
|
||||
Patch1: https://github.com/helix-editor/helix/pull/7227.patch#/0001-fix-ub-in-diff-gutter.patch
|
||||
BuildRequires: c++_compiler
|
||||
BuildRequires: c_compiler
|
||||
BuildRequires: cargo-packaging
|
||||
BuildRequires: hicolor-icon-theme
|
||||
BuildRequires: update-desktop-files
|
||||
BuildRequires: git
|
||||
Recommends: %{name}-runtime = %{version}
|
||||
ExclusiveArch: %{rust_arches}
|
||||
|
||||
|
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:8fa4d6a3e53b7a5023c254834614d9e12dc030fd9358370386e651856dd3e5f5
|
||||
size 29266948
|
3
vendor.tar.zst
Normal file
3
vendor.tar.zst
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:31d0f32382ef0a60466839d621b8c2ac923f847bf8ad89ee4046a42f1e3b1d42
|
||||
size 27404020
|
Loading…
Reference in New Issue
Block a user