Skip to content

Releases: Sewer56/prs-rs

1.0.5

05 Jul 23:10
Compare
Choose a tag to compare

About this Release

Initial Release of the Rust rewrite of dlang-prs.

Available Downloads:

  • Command Line (CLI Program): prs-rs-cli
  • C Bindings: C-Library-*
  • NuGet (C#): prs_rs.Net.Sys

Version 1.0.5

This version carries the following improvements:

  • Compressor 'Dictionary' will be reused (if possible) when compressing last block.
  • Improves performance by ~1.5% on 132KB files.
  • Added Support for Custom Memory Allocators (Rust API Only)
  • This allows you to split up the short and long lived memory allocations.
  • Potentially useful if compressing in real time.
  • Fixed regression where long sequences of repeated bytes compressed slower than they should.
  • This happened because zero extending bytes (movzx) was slower than reading a pure u32 in x86.
  • Improves speed from 200MB to 400MB/s on a file of pure 00s.

Complete Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog
and this project adheres to Semantic Versioning.

Complete Changes

1.0.5 - 2024-12-24

Merged

  • Explicitly use Nightly SemVer Checks #7
  • Added: Fixes for broken links in documentation. Unprivated some functions. #6
  • Added: SemVer Breakage Checks #5
  • Improved: Reuse results of compdict.init when possible #4

Commits

  • Added: Support for custom allocator b82e3ab
  • Bumped: .NET Project Version & Updated Changelog d27e3fa
  • Added: Changelog for latest version. b8faea9

====

Reloaded changelogs are generated by auto-changelog 😇.

1.0.4

29 Jun 18:54
Compare
Choose a tag to compare

About this Release

Initial Release of the Rust rewrite of dlang-prs.

Available Downloads:

  • Command Line (CLI Program): prs-rs-cli
  • C Bindings: C-Library-*
  • NuGet (C#): prs_rs.Net.Sys

Version 1.0.4

This version carries the following improvements:

  • Compressor 'Dictionary' is now updated in blocks, rather than eating the file up front.

    • This improves performance for multi-threaded compression, improving L2/L3 cache hits.
    • Compressor memory requirement reduced to 1.4MB/2.4MB on 32/64-bit.
      • It is no longer 1.1M/2.1M + (4 * FileSize)
  • Micro-optimizations in compressor sequence matching.

    • Improved compression speed by ~10% for some edge cases.
  • Fixed Edge case where compressing files with < 256 repeating bytes at the end of a file was excessively slow.

    • Compressing a 132K empty file now runs at 350MB/s instead of 100MB/s per core (5900X).

Complete Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog
and this project adheres to Semantic Versioning.

Complete Changes

1.0.4 - 2024-06-29

Merged

  • Split Matcher into Slow & Fast, Add Trait Based Parameters and Add CompDict Slicing #3

Commits

  • Added: New chunked implementation of compdict. 6955cfd
  • Changed: Split Matcher into Slow and Fast 768ad31
  • Bugfix: LZ77 Slow Matcher now Terminates Early. Traits Restored. ec37cf7

====

Reloaded changelogs are generated by auto-changelog 😇.

1.0.3

23 Jun 06:05
Compare
Choose a tag to compare

Changelog

All notable changes to this project will be documented in this file. Dates are displayed in UTC.

Generated by auto-changelog.

1.0.3

23 June 2024

  • Added: New MkDocs Workflow #1
  • Replaced: Build Step with new Workflow a235813
  • Improve: Migrate to new Publish Action 5899b14
  • Changed: PGO in CI now runs against actual C exports. 11440ce

1.0.2

28 Feb 03:14
Compare
Choose a tag to compare

About this Release

Initial Release of the Rust rewrite of dlang-prs.

Available Downloads:

  • Command Line (CLI Program): prs-rs-cli
  • C Bindings: C-Library-*
  • NuGet (C#): prs_rs.Net.Sys

Complete Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog
and this project adheres to Semantic Versioning.

Complete Changes

Unreleased

1.0.2 - 2024-02-29

Commits

  • Changed: Run coverage on stable (nightly rust bug) fa21f69

====

1.0.1

11 Feb 20:27
Compare
Choose a tag to compare

About this Release

Initial Release of the Rust rewrite of dlang-prs.

Available Downloads:

  • Command Line (CLI Program): prs-rs-cli
  • C Bindings: C-Library-*
  • NuGet (C#): prs_rs.Net.Sys

Complete Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog
and this project adheres to Semantic Versioning.

Complete Changes

Unreleased

1.0.1 - 2024-02-11

Commits

====

1.0.0

11 Feb 19:20
Compare
Choose a tag to compare

About this Release

Initial Release of the Rust rewrite of dlang-prs.

Available Downloads:

  • Command Line (CLI Program): prs-rs-cli
  • C Bindings: C-Library-*
  • NuGet (C#): prs_rs.Net.Sys

Complete Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog
and this project adheres to Semantic Versioning.

Complete Changes

Unreleased

1.0.0 - 2024-02-11

Commits

  • Fixed: Readme name (case sensitive) 06a9816

====