Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bump version to 4.0.0 #279

Merged
merged 13 commits into from
Jan 30, 2025
55 changes: 48 additions & 7 deletions .github/workflows/haskell.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,11 @@ jobs:
fail-fast: false
matrix:
ghc: ["8.10.7", "9.6.5"]
# os: [ubuntu-latest, macos-latest, windows-latest]
os: [ubuntu-latest, windows-latest]
os: [ubuntu-latest, macos-latest, windows-latest]
# GHC versions older than ghc-9.2 are not supported on macos-latest
exclude:
- os: macos-latest
ghc: "8.10.7"

env:
# we need the LD_LIBRARY_PATH env var here because we ended up installing libsecp256k1 into /usr/local,
Expand Down Expand Up @@ -43,6 +46,7 @@ jobs:
# above. It appears as if PATHEXT is set _after_ ghcup install ghc/cabal, and
# as such we'd need pacman.exe instead.
- name: Setup Haskell
if: runner.os == 'Linux'
run: |
# Use GHCUP to manage ghc/cabal
ghcup install ghc --set ${{ matrix.ghc }}
Expand All @@ -51,6 +55,13 @@ jobs:
ghc --version
cabal --version

- name: "MAC: Setup Haskell"
if: runner.os == 'macOS'
uses: input-output-hk/actions/haskell@latest
with:
ghc-version: ${{ matrix.ghc }}
cabal-version: 3.12.1.0

- name: "WIN: fixup cabal config"
if: runner.os == 'Windows'
run: |
Expand Down Expand Up @@ -98,7 +109,7 @@ jobs:
- name: "MAC: Install build environment (brew)"
if: runner.os == 'macOS'
run: |
brew install libsodium
brew reinstall libsodium
brew install pcre

- name: Cabal update
Expand Down Expand Up @@ -152,8 +163,8 @@ jobs:
cache-${{ env.CACHE_VERSION }}-${{ runner.os }}-${{ matrix.ghc }}-${{ hashFiles('dependencies.txt') }}
cache-${{ env.CACHE_VERSION }}-${{ runner.os }}-${{ matrix.ghc }}

- uses: actions/cache@v4
name: "Cache `dist-newstyle`"
- name: "Cache `dist-newstyle`"
uses: actions/cache@v4
with:
path: |
dist-newstyle
Expand All @@ -179,9 +190,39 @@ jobs:
cabal test cardano-addresses-cli
fi

- name: Upload Windows Artifact
- name: Upload Windows artifact
uses: actions/upload-artifact@v4
if: runner.os == 'Windows'
with:
name: ${{ matrix.os }}-${{ matrix.ghc }}-exe
name: cardano-address-${{ matrix.os }}-${{ matrix.ghc }}-exe
path: ${{ steps.cabal-store.outputs.cabal-store }}
retention-days: 2

- name: Preparing Linux/Macos artifact
if: runner.os != 'Windows'
run: |
mkdir artifacts

for exe in $(cat dist-newstyle/cache/plan.json | jq -r '."install-plan"[] | select(.style == "local" and (."component-name" | startswith("exe:"))) | ."bin-file"'); do
if [ -f $exe ]; then
echo "Including artifact $exe"

artifactName="$(basename $exe).tar.gz"

( cd artifacts
tar -C "$(dirname $exe)" -czf "$(basename $exe).tar.gz" "$(basename $exe)"
)
else
echo "Skipping artifact $exe"
fi
done

echo "artifactPath=artifacts/$(artifactName)" >> $GITHUB_ENV

- name: Upload Linux/Macos artifact
uses: actions/upload-artifact@v4
if: runner.os != 'Windows'
with:
name: cardano-address-${{ matrix.os }}-${{ matrix.ghc }}
path: ${{ env.artifactPath }}
retention-days: 2
5 changes: 3 additions & 2 deletions ChangeLog.md
Original file line number Diff line number Diff line change
@@ -1,13 +1,14 @@
## [4.0.0] - N/A
## [4.0.0] - 2025-01-30

### Added

- Drop JavaScript support and get rid of JavaScript codebase
- CIP-0129 support added, affecting `cardano-address key hash` and `cardano-address script hash`
- CIP-0129 support with backward compatibility added, affecting `cardano-address key hash` and `cardano-address script hash`
- `scriptHashToText`, `scriptHashFromText` and `prettyErrScriptHashFromText` added to `Cardano.Address.Script`
- Simplify filenames by using a hashed prefix instead of the full mnemonic, enhancing portability).
- `hashKey` for Shelley style
- Key derivation support for DRep, CCCold and CCHot in accordance to [CIP--105](https://github.com/cardano-foundation/CIPs/tree/master/CIP-0105). Also supported in CLI.
- Key derivation support for DRep, CCCold and CCHot in accordance with [CIP-0105](https://github.com/cardano-foundation/CIPs/tree/master/CIP-0105). Also supported in CLI.
- Fix field for staking scripts in AddressInfo.
- Rename infoScriptHash field in AddressInfo to infoSpendingScriptHash.
- Get signing key and chain code from extended signing key via `cardano-address key private`
Expand Down
2 changes: 1 addition & 1 deletion LICENSE
Original file line number Diff line number Diff line change
Expand Up @@ -186,7 +186,7 @@
same "printed page" as the copyright notice for easier
identification within third-party archives.

Copyright © 2019-2023 IOHK
Copyright © 2020 Input Output (Hong Kong) Ltd., 2021-2022 Input Output Global Inc. (IOG), 2023-2025 Intersect

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
Expand Down
2 changes: 1 addition & 1 deletion NOTICE
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
Copyright 2020 Input Output (Hong Kong) Ltd.
Copyright © 2020 Input Output (Hong Kong) Ltd., 2021-2022 Input Output Global Inc. (IOG), 2023-2025 Intersect

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
Expand Down
Loading