Download Latest Version v1.0.0 - 2023-11-07 source code.zip (41.3 kB)
Email in envelope

Get an email when there's a new version of sd

Home / v1.0.0
Name Modified Size InfoDownloads / Week
Parent folder
sd-v1.0.0-x86_64-pc-windows-gnu.zip 2023-11-08 930.8 kB
sd-v1.0.0-x86_64-pc-windows-msvc.zip 2023-11-08 906.0 kB
sd-v1.0.0-armv7-unknown-linux-gnueabihf.tar.gz 2023-11-08 887.3 kB
sd-v1.0.0-aarch64-unknown-linux-musl.tar.gz 2023-11-08 940.4 kB
sd-v1.0.0-x86_64-unknown-linux-musl.tar.gz 2023-11-08 1.0 MB
sd-v1.0.0-arm-unknown-linux-gnueabihf.tar.gz 2023-11-08 908.2 kB
sd-v1.0.0-x86_64-apple-darwin.tar.gz 2023-11-08 925.3 kB
sd-v1.0.0-aarch64-apple-darwin.tar.gz 2023-11-08 866.6 kB
sd-v1.0.0-x86_64-unknown-linux-gnu.tar.gz 2023-11-08 1.0 MB
README.md 2023-11-08 5.9 kB
v1.0.0 - 2023-11-07 source code.tar.gz 2023-11-08 30.4 kB
v1.0.0 - 2023-11-07 source code.zip 2023-11-08 41.3 kB
Totals: 12 Items   8.5 MB 2

A huge thanks to everyone who helped make this release happen! :tada:

A quick note to any packagers. The generated shell completions and man page are now in the gen directory of the repo. They're also included in the pre-built release artifacts on the releases page.

Improvements

  • [#115] Do not replace symlink with output file (@SimplyDanny)
  • Fixes an issue where a symlink would be replaced with a regular file
  • [#124] Fix tests (@Linus789)
  • Removed displaying the file path when passing the --preview flag and fixed how text coloring was handled in tests

Breaking

  • [#192] Rename --string-mode to --fixed-strings (@CosmicHorrorDev)
  • Renamed -s --string-mode to -f --fixed-strings to better match similar tools
  • -s and --string-mode will still continue to work for backwards compatibility, but are no longer documented
  • [#258] Error on $<num><non_num> capture replacement names (@CosmicHorrorDev)
  • Previously when you tried to use a numbered capture group right before some letters in the replacement text (e.g. $1foo) then it would be considered the impossible-to-use 1foo capture. The correct way to pass the numbered capture group in this case would be to surround the number with curly braces like so ${1}foo. The error just detects this case and informs the user of the issue

Docs

  • [#93] Add note about in-place file modification to --help output (@jchook)
  • [#148] Doc: nitpick -- has no special meaning to shells (@hexagonrecursion)
  • [#181] Fix man page -f flag help text (@ulope)
  • Fixed copy-pasted text in the man page's -f flag's help text
  • [#186] Improve error message for failed replacements (@CosmicHorrorDev)
  • [#187] Freshen up README (@CosmicHorrorDev)
  • Added a repology badge to document different installation methods
  • Improved the formatting of the benchmarks
  • [#207] Documenting $ escape (@yahkbar)
  • Adds a section in the README that covers that $$ is a literal $ in the replacement text
  • [#227] Improve README readability (@vassudanagunta)
  • Various formatting improvements
  • [#231] Use clap_mangen and roff to generate manpage (@nc7s)
  • This change ensures the man page contents stay in sync with the CLI automatically, and fixes some broken rendering of the existing manpage
  • [#243] Exclude unsupported packages from the repology badge (@CosmicHorrorDev)

Pre-built Releases

  • (11295fb) Add ARM target (@chmln)
  • Added the arm-unknown-linux-gnueabihf target to CI and releases
  • [#114] Adding aarch64-apple-darwin target (@yahkbar)
  • [#143] Fix paths to release binary in "publish" action (@skrattaren)
  • [#179] Build Adjustments (@yahkbar)
  • striped release binaries and added the aarch64-ubuntu-linux-musl target
  • [#204] Adding armv7-unknown-linux-gnueabihf target (@yahkbar)
  • Added the armv7-unknown-linux-gnueabihf target to the list of targets to build in CI and for each release
  • [#205] Resolving broken aarch64-apple-darwin tests (@yahkbar)
  • Switched aarch64-apple-darwin to only try building the executable without running the tests since there seems to be no easy way to test for ARM Apple targets
  • [#206] Adding Windows builds back (@yahkbar)
  • Added the x86_64-pc-windows-gnu and x86_64-windows-musl targets back to the list of targets to build in CI and for each release

Internal

  • [#118] Fix master (@SimplyDanny)
  • Fixes several cross-compilation issues that effected different targets in CI
  • [#182] cargo update (@CosmicHorrorDev)
  • Bumps dependencies to their latest compatible versions
  • [#183] Switch memmap -> memmap2 (@CosmicHorrorDev)
  • Switches away from an unmaintained crate
  • [#184] Add editor config file matching rustfmt config (@CosmicHorrorDev)
  • Adds an .editorconfig file matching the settings listed in the .rustfmt.toml file
  • [#185] Fix warnings and clippy lints (@CosmicHorrorDev)
  • [#188] Switch atty for is-terminal (@CosmicHorrorDev)
  • Switches away from an unmaintained crate
  • [#189] Replace structopt with clap v4 (@CosmicHorrorDev)
  • Switches away from a defacto deprecated crate
  • [#190] Change how all shell variants are expressed (@CosmicHorrorDev)
  • Tiny tidying up PR
  • [#196] Move generating static assets to a cargo-xtask task (@CosmicHorrorDev)
  • Moves the generation of the man page and shell completions from a build script to a cargo-xtask task
  • [#197] Add a release checklist (@CosmicHorrorDev)
  • [#209] Dependency updates (@yahkbar)
  • [#235] Update generated assets (@CosmicHorrorDev)
  • [#236] Tone down dependabot (@CosmicHorrorDev)
  • [#245] Update sd to 2021 edition (@CosmicHorrorDev)
  • Updates sd to the Rust 2021 edition
  • [#248] Misc Cargo.toml tweaks (@CosmicHorrorDev)
  • Switches to use workspace edition and dependencies where appropriate
  • [#249] Resolve CI warnings (@CosmicHorrorDev)
  • Switched from actions-rs actions to dtolnay@rust-toolchain
  • Switched from using ::set-output to $GITHUB_ENV
  • [#251] Update dependencies (@CosmicHorrorDev)
  • A lot of sad CI tweaking:
    • 252 Fix build target usage in CI (@CosmicHorrorDev)

    • 253 Improve publishing CI job (@CosmicHorrorDev)

    • 256 More CI tweaks (@CosmicHorrorDev)

    • 257 Fix publish action (@CosmicHorrorDev)

  • [#267] Rework the replacements flag (@CosmicHorrorDev)
  • [#269] Make modified text blue instead of green (@CosmicHorrorDev)
  • [#271] Fix release checklist indentation (@CosmicHorrorDev)
  • [#272] Remove outdated release checklist step (@CosmicHorrorDev)
  • [#274] Prepare 1.0.0-beta.0 release (@CosmicHorrorDev)
  • [#275] Update sd version in lockfile (@CosmicHorrorDev)
Source: README.md, updated 2023-11-08