feat: Replaces Zlib with LibDeflate (#1774)

> [!Warning]
> Users on Linux/OSX will need to follow the Readme
> and make sure `libdeflate` is properly installed

> [!Note]
> **Developer Note**
> The API for compression has changed. Use `Deflate.Standard` for the same functionality.

### Summary
* Replaces Zlib with LibDeflate for a 50% performance improvement!
* Adds MacOS 14 to properly test Arm64
This commit is contained in:
Kamron Batman 2024-05-16 22:53:01 -07:00 committed by GitHub
parent 35a292d2c7
commit 1f701e7b55
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
11 changed files with 279 additions and 282 deletions

View file

@ -14,10 +14,10 @@ jobs:
fail-fast: false
matrix:
include:
- os: macos-12
name: MacOS 12
- os: macos-13
name: MacOS 13
- os: macos-14
name: MacOS 14
steps:
- uses: actions/checkout@v4
@ -27,6 +27,12 @@ jobs:
uses: actions/setup-dotnet@v3
with:
dotnet-version: 8.0.x
- name: Install Prerequisites
run: |
brew update
brew install icu4c libdeflate zstd argon2
- name: Set Library Path
run: echo "DYLD_LIBRARY_PATH=/opt/homebrew/lib:\$DYLD_LIBRARY_PATH" >> $GITHUB_ENV
- name: Build
run: ./publish.cmd Release
- name: Migration Changes
@ -75,10 +81,10 @@ jobs:
run: dnf upgrade --refresh -y && dnf install -y epel-release epel-next-release
if: ${{ startsWith(matrix.name, 'CentOS') }}
- name: Install Prerequisites using dnf
run: dnf makecache --refresh && dnf install -y findutils libicu zlib-devel zstd libargon2-devel tzdata
run: dnf makecache --refresh && dnf install -y findutils libicu libdeflate-devel zstd libargon2-devel
if: ${{ matrix.packageManager == 'dnf' }}
- name: Install Prerequisites using apt
run: apt-get update -y && apt-get install -y curl libicu-dev libz-dev zstd libargon2-dev tzdata
run: apt-get update -y && apt-get install -y curl libicu-dev libdeflate-dev zstd libargon2-dev
if: ${{ matrix.packageManager == 'apt' }}
- uses: actions/checkout@v4
with: