commit fcbe671a25a566032b19ff553d6299ad5d513c7c426689d0764e46da2d392695 Author: Sai Karthik Karra Date: Wed Feb 12 10:34:19 2025 +0000 Update to v25.2.11 OBS-URL: https://build.opensuse.org/package/show/utilities/yazi?expand=0&rev=48 diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9b03811 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..57affb6 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.osc diff --git a/0001-use-system-jit.patch b/0001-use-system-jit.patch new file mode 100644 index 0000000..15ce845 --- /dev/null +++ b/0001-use-system-jit.patch @@ -0,0 +1,11 @@ +--- yazi-plugin/Cargo.toml ++++ yazi-plugin/Cargo.toml +@@ -21,7 +21,7 @@ ansi-to-tui = "3.1.0" + anyhow = "1.0.82" + futures = "0.3.30" + md-5 = "0.10.6" +-mlua = { version = "0.9.7", features = [ "lua54", "vendored", "serialize", "macros", "async" ] } ++mlua = { version = "0.9.7", features = [ "lua54", "serialize", "macros", "async" ] } + parking_lot = "0.12.1" + ratatui = "=0.26.1" + serde = "1.0.198" diff --git a/_constraints b/_constraints new file mode 100644 index 0000000..b9a8f12 --- /dev/null +++ b/_constraints @@ -0,0 +1,11 @@ + + + + + 4 + + + 5 + + + diff --git a/_service b/_service new file mode 100644 index 0000000..10605d5 --- /dev/null +++ b/_service @@ -0,0 +1,23 @@ + + + https://github.com/sxyazi/yazi.git + @PARENT_TAG@ + git + v25.2.11 + v* + v(\d+\.\d+\.\d+) + \1 + enable + + + + *.tar + zst + + + + yazi + zst + false + + diff --git a/_servicedata b/_servicedata new file mode 100644 index 0000000..c5bfcb9 --- /dev/null +++ b/_servicedata @@ -0,0 +1,4 @@ + + + https://github.com/sxyazi/yazi.git + ce9092e73e5c73f4bb48d7cd0c52e8d9fedaf30f \ No newline at end of file diff --git a/vendor.tar.zst b/vendor.tar.zst new file mode 100644 index 0000000..53cf1f7 --- /dev/null +++ b/vendor.tar.zst @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:79685106a831f5efe34a32f932b6966509862a425670a191302577ed5b3ff1be +size 38143419 diff --git a/yazi-0.2.5.obscpio b/yazi-0.2.5.obscpio new file mode 100644 index 0000000..82456d1 --- /dev/null +++ b/yazi-0.2.5.obscpio @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d07b3249169d7686d58cc60f4eab5e0097ca67f105ba30d11891778611c3cce6 +size 1358860 diff --git a/yazi-0.4.2.obscpio b/yazi-0.4.2.obscpio new file mode 100644 index 0000000..6b9022d --- /dev/null +++ b/yazi-0.4.2.obscpio @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2780ce6e2f8f73daa6673d27f9e1a5a04722c25d157b93b1b22b8f06307e740c +size 1720332 diff --git a/yazi-25.2.11.obscpio b/yazi-25.2.11.obscpio new file mode 100644 index 0000000..3dab570 --- /dev/null +++ b/yazi-25.2.11.obscpio @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:12293b5e2a9b63066fa8d74d44864567dbe8f869036c54f25eb4ff3957c9230f +size 1780748 diff --git a/yazi-25.2.7.obscpio b/yazi-25.2.7.obscpio new file mode 100644 index 0000000..0a7d8e9 --- /dev/null +++ b/yazi-25.2.7.obscpio @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3395e4d50e6aebed5cb448539ed54e88014e054b836d32c0e3a358bdf353c98d +size 1780236 diff --git a/yazi.changes b/yazi.changes new file mode 100644 index 0000000..d13edf2 --- /dev/null +++ b/yazi.changes @@ -0,0 +1,619 @@ +------------------------------------------------------------------- +Wed Feb 12 10:23:42 UTC 2025 - kskarthik@disroot.org + +- Update to version 25.2.11: + * chore: bump version to 25.2.11 (#2323) + * feat: new `overall` option under `[status]` to allow specifying the overall style of the status bar (#2321) + * fix: unable to delete sealed files on Windows due to platform differences (#2319) + * feat: reduce terminal response wait timeout (#2314) + * fix: reverse the order of CSI-based and environment-based terminal detection (#2310) + +------------------------------------------------------------------- +Fri Feb 07 18:36:11 UTC 2025 - kskarthik@disroot.org + +- Update to version 25.2.7: + * chore: bump version to 25.2.7 (#2301) + * feat: use positional argument instead of `--args` for the `plugin` command (#2299) + * feat: support end of options (`--`) marker for all commands (#2298) + * docs: update Windows Terminal image preview support to Stable (#2296) + * feat: new `arrow top` and `arrow bot` commands to jump to the top and bottom (#2294) + * feat: switch to Calendar Versioning (#2291) + * feat: new `@since` plugin annotation to specify the minimum supported Yazi version (#2290) + * fix: enable unwinding on Windows release builds (#2286) + * docs: Warp sponsorship (#2282) + * fix: correct shell quotes for Unicode on Windows (#2285) + * fix: squeeze the parent directory offset after terminal size change (#2275) + * docs: add Bobcat to the list of VTEs with images preview support (#2269) + * feat: `ya pack` supports adding and deleting multiple packages at the same time (#2257) + * feat: allow preloaders to return an optional `Error` to describe the failure (#2253) + * feat: new `cx.layer` API to determine the current UI layer (#2247) + * feat: support `package.toml` as a symlink (#2245) + * fix: ensure the selected file list is always ordered (#2244) + * feat: wrap long task descriptions (#2243) + * fix: JSON value `null` should be deserialized as Lua `nil`, not lightweight userdata `null` (#2242) + * feat: apply natural sort to partitions on both Linux and macOS (#2235) + * fix: use `u32` for parsing Linux partition blocks (#2234) + * fix: unmangle the hexadecimal space strings (`"\x20"`) in Linux partition labels (#2233) + * feat: support local `tmux` image preview over SSH (#2229) + * fix: ignore completions artifacts (#2226) + * fix: sync block execution failed due to `Runtime` mutably borrowed more than once (#2225) + * perf: detach the watch registration from the main thread (#2224) + * ci(snap): correct arm64 runner OS (#2217) + * feat: more complete hovered file cursor tracking (#2218) + * fix(nix): rust overlay infinite recursion (#2216) + * ci: use GitHub Linux arm64 runners for the snap build (#2214) + * feat: mount manager (#2199) + * feat: channel and multi-concurrent task join support for the plugin system (#2210) + * feat: custom modal component API (#2205) + * feat: arm64 Snap package (#2188) + * fix: wrong description of the `swipe` command (#2197) + * feat: new `ya pack -d` subcommand to delete packages (#2181) + * feat: new `--no-cwd-file` option for the `close` command (#2185) + * fix: incorrect monorepo sub-plugin path resolution (#2186) + * feat: allow `YAZI_LOG` to control the log level of Überzug++ (#2183) + * docs: correct the `cargo test` command in the contribution guide (#2182) + * feat: replace mode and Vim motions (`W`, `E`, `B`, `^`, `_`) for inputs (#2143) + * feat: more decent package locking mechanism (#2168) + * feat: support `application/mbox` mimetype (#2173) + * feat: sort search results by full URN (#2164) + * fix: typo in the argument documentation for the CLI (#2158) + * feat: support and hide Windows system files by default (#2149) + * fix: correct Vec capacity allocation caused by variable name shadowing (#2139) + * fix: `before_ext` should exclude directories since only files have extensions (#2132) + * fix: handle broken pipe errors gracefully (#2110) + * feat: prompt users without `fzf` for the `zoxide` plugin (#2122) + * fix: don't check if has a hovered file in advance, only do so when `--hovered` is explicitly specified (#2105) + * docs: update the links in the README (#2103) + * fix: add Alacritty to the database as a terminal that doesn't support any image protocol (#2107) + * fix: reversed style shouldn't be applied to the entire text block + * ci: add new linux targets (#2099) + * feat: new `ya.confirm()` API (#2095) + * fix: element style of `ui.Text` was not applied to the entire area (#2093) + * feat: add `cbr` and `cbz` as valid archive extensions (#2077) + * feat: theme support for the spotter border and title (#2002) + * chore: bump version to 0.4.3 + +------------------------------------------------------------------- +Tue Jan 28 16:56:28 UTC 2025 - kskarthik@disroot.org + +- Update to version 0.4.2: + * remove the 0001-use-system-jit.patch as it is no longer relevant with new version + * fix: missing a hover after reordering from an external plugin (#2072) + * feat: new `fs.create()` Lua API (#2068) + * feat: add more supported archive formats to the preset config (#1926) + * fix: missing a render after resuming from an external blocking process (#2071) + * ci: add riscv64gc-unknown-linux-gnu target (#2067) + * feat: allow `noop` for single-key chords by removing the mixing length limit (#2064) + * feat: new `--cwd` parameter for the `shell` command and `fs.cwd()` API (#2060) + * fix: use a less intrusive `DSR` instead of `DA1` workaround to forward terminal responses twice in tmux (#2058) + * fix: pass through `show_hidden` when building default `Files` (#2057) + * fix: `allow-passthrough` must be set to `on` to prevent `tmux` from forwarding the real terminal's response to the inactive pane (#2052) + * fix: set the current working directory in a thread-safe way (#2043) + * feat: support for Android platform in the `for` qualifier of opener (#2041) + * fix: choose a more conservative `macro_workers` value to ensure concurrency safety with certain USB flash drives (#2040) + * chore: bump version to 0.4.2 (#2031) + * fix: offset cursor shift when deleting multiple files in bulk (#2030) + * feat: new option to suppress 0.4 deprecation warnings (#2027) + * fix: interactive `cd` autocomplete doesn't follow the latest `CWD` changes (#2025) + * chore: bump version to 0.4.1 (#2022) + * fix: failed to parse certain image dimensions for Überzug++ backend (#2020) + * fix: correctly handle CRLF on Windows in preset `archive` and `json` plugins (#2017) + * refactor: replace `format!` with `concat!` for string literals (#2012) + * fix: disable passthrough when the user launches Yazi in Neovim inside tmux (#2014) + * chore: bump version to 0.4.0 (#2011) + * fix: avoid upscaling for the video previewer (#2007) + * fix: `backspace --under` didn't map UTF-8 character code points to byte indices (#2010) + * fix: introduce own `CWD` instead of `chdir` to avoid potential race conditions (#2008) + * fix: respect `PREVIEW.image_quality` for the default PDF previewer (#2006) + * docs: add README for default configuration files (#2005) + * feat: fallback to `CSI 16 t` for certain terminals that do not support `TIOCGWINSZ` (#2004) + * fix: revise `revision` if the new file list is empty but the previous one was not (#2003) + * fix!: remove the `vnd.` prefix from mimetype to solve differences introduced in the newest version of `file(1)` 5.46 (#1995) + * fix: missing a repeek on unyanking files in the hovered folder (#1988) + * fix: propagate and update the directory node till its first parent when the files of a directory change (#1987) + * feat: move notification from top-right to bottom-right corner to avoid covering content as much as possible (#1984) + * feat!: remove the meaningless `--confirm` option to simplify the `shell` command (#1982) + * feat: new `load` DDS event (#1980) + * feat: new `ya emit` and `ya emit-to` subcommands to emit commands to a specified instance for execution (#1979) + * feat: support `assets` installation for the `ya pack` subcommand (#1973) + * feat: true custom `mime` fetcher support - using user rules even during open or in watcher (#1976) + * feat!: support passing arguments to previewer/preloader/spotter/fetcher (#1966) + * perf: introduce copy-on-write for event system to eliminate all memory reallocations (#1962) + * feat!: extend the available styles for `mode` by separating `mode` from the `separator` styles (#1953) + * fix: make `cd` expand variables regardless + * feat!: auto switch between dark and light icons/flavors based on terminal backgrounds (#1946) + * feat: new log system (#1945) + * feat!: use an `Error` userdata instead of a plain error code for I/O errors (#1939) + * refactor: remove unnecessary UI element construction (#1938) + * fix: ignore cancellation in C functions + * refactor: make error messages more user-friendly (#1935) + * feat!: video spotter & using `ffmpeg` instead of `ffmpegthumbnailer` as previewer backend (#1928) + * fix!: eliminate the `x-` prefix in mime-types (#1927) + * fix: show "0/0" instead of "1/0" in empty directories (#1925) + * feat: `noop` for spotters (#1924) + * feat: spotter (#1802) + * chore: add `CODE_OF_CONDUCT.md` (#1911) + * fix: implement `FromLua` for `Cha` instead of `AnyUserData` + * perf: lazy load `ui`, `ya`, `fs`, and `ps` (#1903) + * fix: register and ignore the `SIGINT` signal explicitly + * feat: add additional environment and dependency info in `yazi --debug` (#1896) + * refactor: upgrade to `mlua` v0.10.0 (#1842) + * feat!: deprecate `--sync` option for the `plugin` command (#1891) + * feat: support searching with the alias `fdfind` if `fd` cannot be found (#1889) + * feat: disable the `rayon` feature for `image` since Yazi already uses multithreading + * feat: add a new `tab` parameter for all tab-specific commands to specify which one (#1885) + * feat: include package revision hash in `ya pack --list` (#1884) + * feat: new `copy --separator` option to allow specifying the path separator (#1877) + * feat: allow disabling certain preset keybinds with the new `noop` virtual command (#1882) + * refactor: destructure tuples to enhance readability (#1874) + * fix: use complete rendering instead of partial rendering for no task progress report (#1876) + * refactor: use for loop to generate completions file (#1869) + * fix: wrong file list offset squeeze when `scrolloff = 0` (#1866) + * perf: introduce reflow for the rendering engine (#1863) + * feat: prioritize paths that need to be processed first during bulk renaming (#1801) + * fix: copy the CWD path regardless even if the directory is empty (#1849) + * feat: suggest keywords in the header if a finder is active (#1847) + * perf: eliminate all memory reallocations during sorting (#1846) + * perf: using `usize` instead of `*const OsStr` reduces memory usage (#1839) + * refactor: add tests for `Pattern::match_path` (#1837) + * fix: reset image rendering and skip peeking if the TUI in the background (#1833) + * feat: launch from preset settings if the user's config cannot be parsed (#1832) + * chore: add discussion template + * fix: use a unique `Id` for each tab (#1826) + * feat: allow customizing Zoxide's FZF options with `YAZI_ZOXIDE_OPTS` (#1822) + * fix: use std copy function in a blocking thread (#1817) + * feat: support reading non-UTF8 data with `Child:read_line()` API (#1816) + * feat: add ICC profile to images for better color accuracy (#1808) + * perf: apply rotate in place to images with orientation (#1807) + * fix: implement the file copy process for Linux and Android separately (#1805) + * feat: custom styles for the `confirm` component (#1789) + * refactor: remove migration code as it's no longer needed and causes errors (#1795) + * feat: add a compatibility layer for `ui.Paragraph` to help users transition more smoothly to the new `ui.Text` (#1794) + * fix: images were not cleared when closing a tab in front of the current tab (#1792) + * feat: append the suffix to the end when generating unique filenames for directories, i.e., after not before the extension (#1784) + * refactor: replace `Metadata` with `Cha` in the file scheduler to improve interoperability with `yazi-fs` (#1785) + * feat: prevent paths from being treated as options in `file` command (#1783) + * feat!: decouple `ui.List`, `ui.Bar`, `ui.Border`, and `ui.Gauge` from coordinates (#1782) + * feat!: add `ui.Text`, `ui.Table`, remove `ui.Paragraph` and `ui.ListItem` (#1776) + * refactor!: rename the term `select` to `toggle` to reserve `select` for future use (#1773) + * refactor: simplify module exports (#1770) + * feat: add the plugin name to the deprecated API warning to make it more clear + * feat: `yazi --debug` supports detecting whether `tmux` is built with `--enable-sixel` (#1762) + * fix!: introduce a new `btime` term to align `ctime` with Unix (#1761) + * perf: merge multiple file operations into one to greatly speed up updates in large directories (#1745) + * refactor: derive the `Into` trait with procedural macros to avoid bloat (#1742) + * fix: upserting operation should handle deleting in edge cases where the source and target URNs are different (#1737) + * fix: clamp when seeking a non-zero unit between `-1` and `1` (#1736) + * fix: compositors not supported by Überzug Wayland layer, or WSL not with WezTerm should fallback to Chafa (#1735) + * refactor: use `Kgp` instead of `Kitty` since "Kitty" is a terminal emulator not a protocol name (#1732) + * refactor: turn `RectRef`, `PaddingRef`, `PositionRef` into `Rect`, `Padding`, `Position` (#1730) + * fix: temporarily disable TIFF decoding (#1723) + * feat: reuse the `code` previewer seeking behavior for `json`, `archive`, and `empty` (#1721) + * feat!: make `backspace` command not close the input even when value is empty (#1680) + * feat: async micro task initialization error handling (#1710) + * fix: replace control characters to printable characters in plain text preview (#1704) + * feat: switch snap confinement to strict + * feat: add more context to error messages (#1701) + * feat: allow overriding and rewriting the sync methods of builtin plugins (#1695) + * fix: increase the revision when there is a change in `Urn` on updating (#1691) + * feat: adapt for image preview in the Rio terminal (#1690) + * feat: improve jemalloc memory efficiency (#1689) + * fix: `magick` previewer for multi-layered image files with `-flatten` argument (#1684) + * fix: `enter` and `leave` commands should treat the search results as regular entities (#1687) + * fix: one file's mime-type changed multiple times without triggering a preview again (#1682) + * fix: warnings should be output to `stderr` instead of `stdout` (#1669) + * feat: add the `area()` API for renderable elements (#1667) + * feat: support calling methods in builtin plugins with arbitrary types of arguments (`self` can now be omitted) (#1666) + * refactor: ensure that each `Url` contains the full location information (#1659) + * perf: introduce URN to speed up large directory file updates (#1652) + * feat: support setting different input titles for `create --dir` (#1650) + * perf: introduce URN to speed up large directory locating (#1648) + * perf: avoid unnecessary allocations in base64 encoding of IIP (#1639) + * feat: support transparent image preview (#1556) + * feat: make the builtin `extract` plugin support compressed tarballs (`*.tar.gz`, `*.tar.bz2`, etc.) (#1583) + * feat: add `list_meta()` method to `archive` plugin (#1638) + * feat: complete and consistent support for the `ui.Style()` API (#1637) + * fix: set a dedicated `Mimetype` agency to reconcile regular files and search results (#1627) + * fix: set `allow-passthrough` always to `all` instead of `on` to prevent overriding a user setting with a higher priority `all` (#1626) + * perf: introduce URN to speed up large directory file sorting (#1622) + * refactor: privatize `url` of the `File` (#1619) + * fix: update `rustix` to fix the `enable_raw_mode()` error on WSL/Android + * fix: match icon by extension case-insensitive (#1614) + * chore: bump version to 0.3.3 + * feat: add `dict_merge()` function (#1609) + * feat: add `is_absolute`, `has_root`, `starts_with`, `ends_with`, `strip_prefix` to `Url` Userdata (#1605) + * chore: upgrade `ratatui` to 0.28.1 (#1601) + * feat: support image preview in Windows Terminal (#1588) + * feat: `size` linemode supports showing the file count for directories (#1591) + * perf: truncate long lists in confirm dialogs (#1590) + * fix: `Rail` component should have a higher rendering priority (#1585) + * feat: ensure that `Entity` and `Linemode` have consistent space padding (#1580) + * fix: continuous fetcher was not scheduled consecutively (#1575) + * fix: fallback to `PollWatcher` on WSL (#1574) + * fix: squeeze `offset` of the file list after resizing window (#1500) + * fix: check compositor support status before using ueberzug wayland output (#1566) + * fix: keybindings disappear when mixing presets with a wrong filter condition (#1568) + * chore: bump version to 0.3.2 + * fix: `DECSET` and `DECRQM` tmux passthrough (#1564) + * fix: filter out the `which` candidates that overlap with longer key chords (#1562) + * feat: word wrapping in `code` previewer (#1159) + * perf: only scan the first 1024 bytes to detect if it's binary, apply `\r` fixes only to content within the visible range, avoid unnecessary allocations during natural sorting (#1551) + * feat: make the builtin `code` previewer handle invalid carriage return chars and binary streams better (#1550) + * fix: wrong `debug_assert` in `OrderedFloat` for NaN (#1547) + * docs: add links to all terminal emulators (#1538) + * fix: wait till mimetype is resolved to avoid flickering (#1542) + * fix: use a different cache directory for each user to avoid permission issues (#1541) + * chore: set `MACOSX_DEPLOYMENT_TARGE` to 10.11 to make the binary compatible with old macOS (#1532) + * feat: new `confirm` component (#1167) + * feat: add `ext()` method to `Url` userdata (#1528) + * feat: add `--dir` option to `create` command (#1505) + * perf: new `image_delay` option debounces image previews to avoid lag caused by terminal image decoding during fast scrolling (#1512) + * fix: upgrade `ansi-to-tui` to `5.0.0-rc.1` to resolve `ratatui` version conflict (#1499) + * fix: overlong single-line text containing escape sequences was not being properly escaped (#1497) + * chore: bump version to 0.3.1 (#1492) + * feat: add keybinding for the `hardlink` command (#1461) + * feat: new `tab` DDS event on tab switch (#1474) + * fix: replace `#` with `:` to resolve the problem where certain shells recognize it as a special character (#1490) + * feat: add `hidden` file type to `is` rule (#1483) + * feat: new `empty` previewer for empty and `/proc` files (#1482) + * feat: add `status()` method to `Command` (#1473) + * fix: 7zip shows different error messages for RAR and ZIP files (#1468) + * fix: DDS static messages only work when at least two instances are running (#1467) + * fix: close stdin before waiting for child process (#1464) + * feat: start with multiple tabs with different paths (#1443) + * refactor: tab locking + * fix: loss of order in Lua sequence table for inter-thread data exchange (#1457) + * chore(nix): update dependencies (#1456) + * fix: 7zip shows different error messages for wrong password (#1451) + * feat: add `cursor` option to the `shell` command (#1422) + * feat: allows shorthand forms like `` as `` (#1448) + * feat: support `F13` - `F19` keys (#1446) + * fix: directory loading status (#1439) + * fix(nix): pin `rust-overlay` to workaround `cargo-c` (#1442) + * refactor(nix): home keeping (#1380) + * fix: resolve relative path when expanding path (#1428) + * fix: newly created directories with the same name causing a false positive in directory loading optimization due to having the same modification time (#1434) + * feat: new `search_do` command to make it easier to achieve a flat view (#1431) + * feat: switch to kitty unicode placeholders for Ghostty image previewing (#1427) + * ci: add automatic nightly builds to the Github Actions workflow (#1397) + * chore: update snap to core24 (#1415) + * feat: add support portrait orientation preview for EXIF image (#1412) + * fix: preview files containing special `\x1b` characters as plain text and escape (#1395) + * fix: precache for images with alpha (#1414) + * chore: move common dependencies to workspace Cargo.toml (#1388) + * chore: update issue templates + * feat: add `title_format` manager config option (#1281) + * feat: add filtering tip in help component (#1361) + * fix: android building error caused by `trash` crate (#1393) + +------------------------------------------------------------------- +Thu Aug 1 14:08:08 UTC 2024 - xtexChooser + +- Add more disk space to allow ppc64le to build +- Disable LTO on 32-bits archs to avoid out of memory + +------------------------------------------------------------------- +Thu Aug 1 10:00:14 UTC 2024 - xtexChooser + +- Replace unar dependency with 7zip +- Add ImageMagick as a suggested dependency +- Add chafa as a suggested dependency + +------------------------------------------------------------------- +Thu Aug 01 08:55:18 UTC 2024 - xtexchooser@duck.com + +- Update to version 0.3.0: + * chore: bump version to 0.3 (#1374) + * refactor(nix): cleanup and switch to `nixfmt-rfc-style` (#1376) + * feat(nix): set `VERGEN_*` build env vars (#1375) + * fix(nix): add `outputHashes` for `notify` git dependency (#1373) + * feat: new `extract` builtin plugin for archive extracting (#1321) + * fix: adapt to a wider range of terminal cursor management through DECSET and DECRQM requests again + * fix: can't rewatch a directory that has been deleted once before (#1335) + * fix: adapt to a wider range of terminal cursor management through `DECSET` and `DECRQM` requests (#1346) + * fix: help menu multi-line text rendering (#1347) + * feat: make `F1` also show the help menu (#1336) + * fix: wrong directory loading optimization condition (#1331) + * feat: add support for `%@` argument extension on Windows to align with Unix platforms (#1319) + * feat: add Winget publishes to CI/CD (#1299) + * refactor: fix Clippy warnings (#1312) + * fix: add `use-dev-tty` to fix piping to Yazi on macOS (#1317) + * fix: destroy term before stopping signals (#1310) + * refactor: reimplement the signal system (#1307) + * feat: allow setting `YAZI_ID` as a command line argument (#1305) + * feat: help users migrate shell key bindings to v0.3 (#1304) + * feat: add `children_add` and `children_remove` methods to the `Header` component as well (#1297) + * feat: add `ctime` linemode (#1295) + * feat: support displaying files with inaccessible metadata (#1275) + * feat: add `random` option to the `sort` command (#1291) + * feat: make UI extensions easier (#1257) + * feat: new command `hardlink` (#1268) + * feat: add `nlink` property to the `Cha` plugin API (#1279) + * fix: build `jemalloc` with 64KB pagesize for `linux/arm64` (#1270) + * feat: ownership linemode (#1238) + * feat: support AVIF image preview (#1249) + * feat: simplify keybindings (#1241) + * feat: support right-click to open files (#1232) + * feat: add `--hovered` option to the `rename` and `remove` commands (#1227) + * perf!: reimplement and significantly speed up archive previewing (#1220) + * fix: `magick` plugin not working properly (#1213) + * fix: ueberzug image adapter should respect the user's `max_width` and `max_height` settings (#1200) + * fix: suppress warnings for different name representations of the same file in the case-insensitive file system when renaming (#1185) + * feat: support `x-ndjson` mime-type for JSON files (#1190) + * fix: accommodate all `hover` events for DDS (#1187) + * feat!: include the `sender` ID in static messages (#1172) + * feat: include file filter state in the header (#1182) + * fix: file watcher didn't handle realname resolution used for case-insensitive file systems correctly (#1179) + * feat: keep file creation time on macOS and Windows (#1169) + * feat: expose `Finder` API to Lua + * refactor: prefer `FromStr` over `Default` for configuration parsing with side effects + * feat: support `ya sub` subcommand for the Ya CLI (#1004) + * fix: different filenames should be treated as the same file on case-insensitive file systems (#1151) + * refactor: rename crate `yazi-adaptor` to `yazi-adapter` + * feat: support completely disabling mouse with `mouse_events=[]`; add new `cursor_blink` to control cursor style of input components (#1139) + * fix: block `SIGINT` signal from the spawned subprocess (#1131) + * fix: disable error reporting for the kitty graphics protocol + * fix: use kitty old protocol for Konsole + * feat: add some dependency version information to `yazi --debug` (#1112) + * feat: support mouse event (#1038) + * feat!: DDS client-server version check (#1111) + * feat: add `pack --list` subcommand to Ya CLI (#1110) + * refactor!: v0.3 API changes (#1108) + * refactor: rename the domain term `prefetcher` to `fetcher` + * fix: `match_mime()` should return true if pattern is "*" + * feat: support case insensitive special keys in keymappings (#1082) + * fix: Sixel support from certain `st` forks cannot be detected (#1094) + * feat!: transliteration option for natural sorting (#1053) + * feat!: redesign icons (#1086) + * feat: `cd` path auto-completion supports `~` expansion (#1081) + * fix: glob pattern for zip files + * fix: remove the default keybinding for going to the temporary directory (#1073) + * feat: support Super/Command/Windows key notation `D-` (#1069) + * fix: cursor gets out of sync occasionally at image previewing through IIP under tmux (#1070) + * fix: inconsistent tab width in unassociated text files (#1068) + * feat: Chafa integration (#1066) + * fix: ePUB file mime-type matching for the opener rule (#1063) + * feat: prefetcher (#1061) + * feat: add a `next` property to the preloader rules to allow running multiple preloaders (#1058) + * docs: add `CONTRIBUTING.md` (#1052) + * feat: SVG, HEIC, and JPEG XL preview support (#1050) + * feat: font preview (#1048) + * fix: remove `ignore` options from `rg` and `fd` search (#1043) + * feat: use `Ctrl-c` instead of `Ctrl-q` as the universal close key for all components (#1047) + * refactor: eliminate `exec` (#1045) + * ci: fix cargo unit tests execution (#1041) + * ci: consistently enforce Lua coding style (#1029) + * feat: support `stdin` and pipe for `Child` API (#1033) + * fix: recognize `TERM=rxvt-unicode-256color` (#1027) + * feat: add new `debounce` option to `ya.input()` API (#1025) + * fix: broaden file watcher event types to accommodate permission changes on certain platforms (#1024) + * fix: correct wasm target condition (#1018) + * feat: new `--args` parameter for `fd` an `rg` search (#1013) + * feat: `ya pack` displays help if no arguments are given (#1012) + * feat: package manager (#985) + * feat: add git commit hash to `ya --version` (#1006) + * feat: `yazi --debug` shows `ya` version in its output (#1005) + * feat: support `cargo binstall yazi-fm` and `cargo binstall yazi-cli` (#1003) + * fix: notification title width does not include the width of the icon (#1000) + * feat: close confirmation prompts and exit automatically when the ongoing task gone (#997) + * feat: add `--force-window` option to mpv (#998) + * fix: temporarily disable the file creation time until Rust v1.78.0 becomes popular (#991) + * feat: re-enable the file `created` attribute (#987) + * feat: add `ya.clipboard()` Lua API (#980) + * feat: add more rules to `[filetype]` and `[icon]` (#966) + * feat: detect terminal type in tmux with CSI sequence in passthrough mode (#977) + * fix: avoiding duplicate candidates in the `which` component (#975) + * fix: improve accessibility by avoiding hex color code for white (#968) + * feat: add `*.opus` file icon (#967) + * fix: move the DDS socket file out of the cache directory to avoid being affected by `yazi --clear-cache` + * fix: correct the glob pattern for the icons to fit the new matching algorithm (#959) + * feat: support previewing files containing non-UTF-8 characters (#958) + * fix: always create XDG cache directory even if user has set a custom one (#956) + * feat: add new `bulk` event kind to DDS (#937) + * feat: support expanding Windows paths like "D:" that only have a drive letter but no root (#948) + * feat: allow building with the system Lua (#943) + * feat: support `yazi-cli` for Nix flake (#944) + +------------------------------------------------------------------- +Fri Apr 26 11:22:00 UTC 2024 - xtexchooser@duck.com + +- Update to version 0.2.5: + * chore: bump version to 0.2.5 + * feat: new builtin `session.lua` plugin (#940) + * feat: split `ya send` into `ya pub` and `ya pub-static` to make it more ergonomic (#933) + * perf: cache each file's icon to avoid redundant calculations at rendering (#931) + * feat: preserve files' modified at timestamp while copying (#926) + * fix: prevent pasting a directory into itself (#925) + * feat: change status bar percent at 100 to Bot (#930) + * fix: always persist static messages even when there are no remote clients (#928) + * feat: expand the types supported by the event system (#923) + * fix: rollback ratatui to v0.26.1 to avoid panicking (#922) + * feat: allow opening interactively with the `--chosen-file` flag (#920) + * feat: generate autocomplete script for `ya` command (#919) + * feat: allow creating a tab with the startup directory when the `tab_create` command is called without specifying a `path` parameter (#917) + * feat: add a new `ya send` command to allow standalone client processes to communicate with DDS from the command line (#913) + * feat: smart case completion in `cd` paths (#910) + * feat: trigger path completion with both `/` and `\` on Windows (#909) + * perf: switch to `globset` to reduce CPU time spent on matching icons (#908) + * feat: default "Reveal" opener for Linux (#907) + * feat: add loading state to directories (#904) + * feat: when there are no files in the list, add a placeholder message (#900) + * feat: add `YAZI_ID` environment variable (#895) + * feat: add new `move`, `trash`, and `delete` event kinds to DDS (#880) + * fix: file list expansion arguments (`$@`, `$*`) of shell command under opener rules are out of order (#890) + * feat: add new `--orphan` option to the `shell` command (#887) + * feat: re-implement `fzf` as a built-in plugin (#884) + * feat: re-implement `zoxide` as a built-in plugin (#881) + * fix: CJK text rendering issue where the input popup component overlaps with images (#879) + * perf: re-implement file watcher in an async way (#877) + * feat: add `is_exec` and `is_sticky` to `Cha` bindings (#875) + * feat: merge the `sender` and `severity` in the DDS payload into the same field to simplify the protocol (#871) + * fix: a race condition in DDS static messages sent as internal events (#868) + * feat: detect CSI u through `Stderr` to allow using `Stdout` as the carrier of DDS payload without an ANSI sequence response timeout (#867) + * feat: the `cd` event in DDS will now also be triggered when the tab is first created (#861) + * fix: wrong `state` pointed to and ignore plugin/flavor directory creation errors + * feat: add a new `sender` property to the DDS payload (#855) + * feat: readable toml parsing error (#854) + * fix: do not default to passing `self` to `setup` to respect user invocation behavior + * perf: port `require()` and `ya.sync()` to Rust to avoid plugin information initialization process (#853) + * feat: DDS (Data Distribution Service) (#826) + * perf: add `BufWriter` to `Stderr` to avoid frequent system calls and increase rendering frame rate (#849) + * fix: Windows `cmd.exe` not responding to correct CSI sequences due to ConPTY (#845) + * feat: add support for `YAZI_FILE_ONE` to the built-in `file` previewer (#846) + * feat: time-based selection order preservation (#843) + * fix: mime-type for xz archives (#841) + * perf: accelerate kitty graphics protocol encoding by avoiding string reallocation (#837) + * feat: enhance the `ya.dbg()` and `ya.err()` debugging functions (#835) + * fix: disable ANSI colours for the `tracing_subscriber` so that the logs are not polluted with escape codes (#832) + * fix: adjust calculation for number of lines in a notification message (#828) + * feat: add a bunch of new debugging information to `yazi --debug` (#824) + * fix: kill all spawned processes when exiting Yazi (#812) + * feat: fix all dependencies to specific version numbers to allow non-`--locked` builds (#821) + * refactor: switch to `stderr` (#819) + * fix: respond to the `SIGTERM` signal even when Yazi is in the background and has passed control of the terminal to the spawned process (#797) + * fix: wrong type in iterator binding + * refactor: wrap `Opener` with `Cow` to avoid unnecessary memory reallocations when opening files (#805) + * fix: use `BTreeSet` for selected files to maintain order (#799) + +------------------------------------------------------------------- +Sat Mar 30 23:12:22 UTC 2024 - xtexChooser + +- Fix ripgrep depends + +------------------------------------------------------------------- +Sat Mar 30 08:06:11 UTC 2024 - xtexChooser + +- Lock dependencies from being updated when packaging + Updating deps when vendoring causes build errors + +------------------------------------------------------------------- +Sat Mar 23 12:01:07 UTC 2024 - xtexchooser@duck.com + +- Update to version 0.2.4: + * feat: add `--debug` flag to print debug information (#794) + * feat: `ya.hide()` plugin API (#792) + * feat: truncate path for deeply nested directories (#787) + * fix: track the latest file changes for the `selected`, `yanked` state when available (#791) + * feat: `cx.yanked` plugin API (#788) + * feat: send a foreground notification to the user when the process fails to run (#775) + * feat: add `` and `` to the select component for moving the cursor up/down (#779) + * feat: test new color system + * feat: `ui.Clear` component for UI plugins (#786) + * feat: `ya.notify()` plugin API (#780) + * feat: add `parse` method to `Line` element + * feat: add `Ctrl-[` as an escape key (#763) + * refactor: add new `run` property (#773) + * fix: nested conflict detection exception when performing cross-level searches (#769) + * feat: add musl linux build targets (#759) + * fix: remove redundant check to allow operations on the `shell` command with an empty file list + * feat: `ya.input()` plugin API (#762) + * feat: support `%0` as the hovered file for Windows (#761) + * perf: apply `add_many()`/`remove_many()` to the visual mode items for selection conflict detecting (#758) + * feat: allow both '/' and '\' in folder creation (#751) + * feat: support `YAZI_FILE_ONE` environment variable for `file(1)` path (#752) + * feat: add `prepend_rules` and `append_rules` for `[open]` in `yazi.toml` (#754) + * feat: switch to inline images protocol for VSCode, Tabby, and Hyper + * feat: add a new `[notify]` section to the `theme.toml` to configure the `notify` component's style (#749) + * feat: flavor (#753) + * feat: add hovered as `$0` for shell and opener (#738) + * ci: add cachix workflow (#740) + * refactor: prefer `Display` over `ToString` (#734) + * perf: prefer `raw_get()` and `raw_set()` + * feat: support `is` rule for `[icon]` (#720) + * fix: initialize logs right after configurations (#708) + * refactor: new `yazi-boot` crate (#728) + * feat: add `idx` field to the file API + * fix: skip when the mime-type cannot match due to file permissions (#725) + * fix: rendering fails when no file type style is matched (#721) + * feat: better accessibility (#719) + * feat: add csharp, kdl and nu icons (#711) + * perf: cache loaded plugins (#710) + * fix: ignore further classified mime-types (#707) + * feat: `state` now accepts a name for the bucket + * fix: allow running `ya.sync` in a sync plugin call (#702) + * fix: `any_file` and `any_dir` should check `is_folder` + * docs: move image preview details to the website + * feat: cross-directory selection (#693) + * docs: Yazi must have a duck logo in README (#691) + * feat: nested selection conflict detection (#689) + * fix: if block in paste command was wrong + * refactor: using definite patterns to simplify keybindings (#690) + * feat: add a new option `--hovered` to the `open` command allowing users to only open the currently hovered file (#687) + * feat: add icons for Scala, Elm and Java (.jar & .class) + * feat: add counter component to the header for displaying currently yanked/selected items (#646) + * feat: add new file marked state (#682) + * feat: expose selected/yanked files as API (#674) + * feat: add color to icons (#683) + * feat: add new `scrolloff` option to `[manager]` (#679) + * feat: add `prepend_rules` and `append_rules` for `[icon]` (#670) + * fix: allow access to the current tab via `tabs` for consistency + * feat: Vim-like notification (#659) + * refactor: tab-specific selection (#653) + * feat: enable the ability to sort the which key (#662) + * ci: add clippy/rustfmt workflow (#663) + * feat: add `` to `[input]` keymap (#665) + * feat: add `` and `` to `[input]` keymap + * feat: calling sync functions within the async plugin (#649) + * feat: merge wildcard preloader and previewer rules via `append_preloaders` and `append_previewers` + * fix: initialize `window` in `Folder::make` for folder preview + * fix: do not use jemalloc on macOS and Windows + * feat: allows access to complete app data for all tabs (#644) + * perf: cheaper sync context initialization (#643) + +------------------------------------------------------------------- +Wed Feb 07 14:25:50 UTC 2024 - xtexchooser@duck.com + +- Update to version 0.2.3: + * chore: bump version to 0.2.3 + * feat: if input is empty, close it on `backspace` command (#630) + * feat: add `ya.quote()` function instead of `ya.shell_join()` + * fix: task manager not re-rendering after progress update (#633) + * fix: hidden attribute of files on Windows (#632) + * feat: support char device in filetype (#628) + * feat: add `ya.shell_join()` API + * fix: attach plugin `args` to the `entry` method for better future optimization possibilities (#627) + * feat: `app_emit` and `manager_emit` accepts boolean, integer, and number as option values (#625) + * fix: image rotation with orientation 4 + * feat: add `plugin` command to each layer + * feat: plugin interface for key events via `ya.which()` (#617) + * perf: use lazy sorting when loading large directories to reduce unnecessary CPU consumption (#607) + * feat: make `trash` crate optional on Android (#600) + * feat: support `unyank` (#313) + * refactor: use `Cmd` instead of `Exec` (#604) + * perf: read directory in bulk in the background at startup (#599) + * feat: preview image over SSH (#585) + * feat: plugin-specific state persistence (#590) + * feat: support passing arguments to plugin (#587) + * feat: allow to configure image filter (#586) + * feat: shorten unit names and add more units to `ya.readable_size` + * fix: parent folder not tracking CWD (#581) + * feat: new `image_quality` and `sixel_fraction` options to allow users to configure the image preview quality (#576) + * fix: input offset is not reset when renaming with `--cursor=start` and the filename is too long (#575) + * feat: customizing the number of columns of "which key" component (#571) + +------------------------------------------------------------------- +Fri Feb 2 00:15:25 UTC 2024 - xtexChooser + +- Use system lua5.4. +- Use remove tar.zst source, and keep only obscpio source. + +------------------------------------------------------------------- +Wed Jan 31 11:02:18 UTC 2024 - xtexChooser + +- Package vendored lua for lua 5.4 syntax support. + LuaJIT only supports up to lua 5.1 syntax. + +------------------------------------------------------------------- +Wed Jan 31 09:09:58 UTC 2024 - xtexChooser + +- Build shell completions packages + +------------------------------------------------------------------- +Wed Jan 31 04:24:38 UTC 2024 - xtexChooser + +- Fix rustc SIGSEGV exception + +------------------------------------------------------------------- +Wed Jan 31 03:29:18 UTC 2024 - xtexChooser + +- Init package yazi v0.2.2 diff --git a/yazi.obsinfo b/yazi.obsinfo new file mode 100644 index 0000000..5ef7536 --- /dev/null +++ b/yazi.obsinfo @@ -0,0 +1,4 @@ +name: yazi +version: 25.2.11 +mtime: 1739272067 +commit: ce9092e73e5c73f4bb48d7cd0c52e8d9fedaf30f diff --git a/yazi.spec b/yazi.spec new file mode 100644 index 0000000..6f451a1 --- /dev/null +++ b/yazi.spec @@ -0,0 +1,128 @@ +# +# spec file for package yazi +# +# Copyright (c) 2025 SUSE LLC +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via https://bugs.opensuse.org/ +# + + +Name: yazi +Version: 25.2.11 +Release: 0 +Summary: Blazing fast terminal file manager written in Rust, based on async I/O +License: MIT +Group: Productivity/Text/Utilities +URL: https://github.com/sxyazi/yazi +Source0: %{name}-%{version}.tar.zst +Source1: vendor.tar.zst +Requires: file +BuildRequires: cargo-packaging +BuildRequires: lua54-devel + +Suggests: ffmpegthumbnailer +Suggests: 7zip +Suggests: jq +Suggests: poppler +Suggests: fd +Suggests: ripgrep +Suggests: fzf +Suggests: zoxide +Suggests: ImageMagick +Suggests: chafa + +%define __cargo_common_opts --no-default-features --locked + +%description +Yazi (means "duck") is a terminal file manager written in Rust, based on non-blocking async I/O. It aims to provide an efficient, user-friendly, and customizable file management experience. + +💡 A new article explaining its internal workings: Why is Yazi Fast? + + 🚀 Full Asynchronous Support: All I/O operations are asynchronous, CPU tasks are spread across multiple threads, making the most of available resources. + 💪 Powerful Async Task Scheduling and Management: Provides real-time progress updates, task cancellation, and internal task priority assignment. + 🖼️ Built-in Support for Multiple Image Protocols: Also integrated with Überzug++, covering almost all terminals. + 🌟 Built-in Code Highlighting and Image Decoding: Combined with the pre-loading mechanism, greatly accelerates image and normal file loading. + 🔌 Concurrent Plugin System: UI plugins (rewriting most of the UI), functional plugins (coming soon), custom previewer, and custom preloader; Just some pieces of Lua. + 🧰 Integration with fd, rg, fzf, zoxide + 💫 Vim-like input/select component, auto-completion for cd paths + 🏷️ Multi-Tab Support, Scrollable Preview (for videos, PDFs, archives, directories, code, etc.) + 🔄 Bulk Renaming, Visual Mode, File Chooser + 🎨 Theme System, Custom Layouts, Trash Bin, CSI u + ... and more! + +%package bash-completion +Summary: Bash Completion for %{name} +Group: System/Shells +Requires: bash-completion +Supplements: (%{name} and bash-completion) +BuildArch: noarch + +%description bash-completion +The official bash completion script for %{name}. + +%package fish-completion +Summary: Fish Completion for %{name} +Group: System/Shells +Supplements: (%{name} and fish) +BuildArch: noarch + +%description fish-completion +The official fish completion script for %{name}. + +%package zsh-completion +Summary: ZSH Completion for %{name} +Group: System/Shells +Supplements: (%{name} and zsh) +BuildArch: noarch + +%description zsh-completion +The official zsh completion script for %{name}. + +%prep +%autosetup -a1 -p0 +%ifarch i586 armv7l +sed -i '/lto = true/d' Cargo.toml +sed -i '/codegen-units = 1/d' Cargo.toml +%endif + +%build +export YAZI_GEN_COMPLETIONS=true +export VERGEN_GIT_SHA='openSUSE' +%{cargo_build} + +%install +export VERGEN_GIT_SHA='openSUSE' +%{cargo_install -p yazi-fm} +%{cargo_install -p yazi-cli} +install -Dm 644 yazi-boot/completions/yazi.bash %{buildroot}%{_datadir}/bash-completion/completions/yazi +install -Dm 644 yazi-boot/completions/yazi.fish %{buildroot}%{_datadir}/fish/vendor_completions.d/yazi.fish +install -Dm 644 yazi-boot/completions/_yazi %{buildroot}%{_datadir}/zsh/site-functions/_yazi + +%check +%{cargo_test} + +%files +%license LICENSE +%doc README.md +%{_bindir}/%{name} +%{_bindir}/ya + +%files bash-completion +%{_datadir}/bash-completion + +%files fish-completion +%{_datadir}/fish + +%files zsh-completion +%{_datadir}/zsh + +%changelog