Skip to content

Commit 8c22a1a

Browse files
authored
Merge pull request #2999 from input-output-hk/merge-4.11.0-into-main
2 parents a4472b2 + 2d7a62d commit 8c22a1a

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

60 files changed

+2462
-1088
lines changed

.buildkite/pipeline.yml

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,20 @@ env:
22
ARTIFACT_BUCKET: s3://ci-output-sink
33
steps:
44
- label: 'daedalus-x86_64-darwin'
5-
command: 'scripts/build-installer-unix.sh --build-id $BUILDKITE_BUILD_NUMBER'
5+
command: 'scripts/build-installer-unix.sh--nix-2.5 --build-id $BUILDKITE_BUILD_NUMBER'
66
env:
77
NIX_SSL_CERT_FILE: /nix/var/nix/profiles/default/etc/ssl/certs/ca-bundle.crt
88
agents:
99
queue: daedalus
1010
system: x86_64-darwin
11+
- label: 'daedalus-aarch64-darwin'
12+
command: 'scripts/build-installer-unix.sh--nix-2.5 --build-id $BUILDKITE_BUILD_NUMBER'
13+
env:
14+
NIX_SSL_CERT_FILE: /nix/var/nix/profiles/default/etc/ssl/certs/ca-bundle.crt
15+
UPLOAD_DIR_OVERRIDE: UNSAFE-internal-build
16+
agents:
17+
queue: daedalus
18+
system: aarch64-darwin
1119
- label: 'daedalus-x86_64-linux-nix'
1220
command: 'scripts/build-installer-nix.sh $BUILDKITE_BUILD_NUMBER'
1321
agents:

.eslintrc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -113,7 +113,7 @@
113113
{
114114
"files": "hardware-wallet-tests/**/*.ts",
115115
"rules": {
116-
"jest/no-standalone-expect": "off",
116+
"jest/no-standalone-expect": "off"
117117
}
118118
}
119119
]

.gitignore

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,11 @@ installers/tls/client
4141
installers/tls/server
4242
installers/DLLs
4343
installers/libressl
44+
installers/cfg-files
45+
installers/config.yaml
46+
installers/icons/electron.icns
47+
installers/installer-config.json
48+
installers/topology.yaml
4449

4550
# temporary certs for daedalus dev
4651
tls/client
@@ -119,6 +124,8 @@ Debug
119124
/cardano-cli
120125
/cardano-wallet
121126
.vscode
127+
.yalc
128+
yalc.lock
122129

123130
# Typescript
124131
*.scss.d.ts

CHANGELOG.md

Lines changed: 20 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,24 @@
11
# Changelog
22

3+
## 4.11.0
4+
5+
### Fixes
6+
7+
- Fixed incorrect behaviour of creating new wallet when paired incorrect hardware wallet during address verification ([PR 2906](https://github.com/input-output-hk/daedalus/pull/2906))
8+
- Fixed phrasing of insufficient funds for tokens message ([PR 2966](https://github.com/input-output-hk/daedalus/pull/2966))
9+
- Improved error handling for incorrect passphrase and incorrect hardware wallet error ([PR 2860](https://github.com/input-output-hk/daedalus/pull/2860))
10+
11+
### Features
12+
13+
- Added support for Ledger Nano S Plus ([PR 2975](https://github.com/input-output-hk/daedalus/pull/2975))
14+
- Support of Apple AArch64 chip ([PR 2684](https://github.com/input-output-hk/daedalus/pull/2684))
15+
16+
### Chores
17+
18+
- Added support for Trezor firmware 2.5.1 ([PR 2991](https://github.com/input-output-hk/daedalus/pull/2991))
19+
- Added steps on how to link with `react-polymorph` and other external UI libraries ([PR 2948](https://github.com/input-output-hk/daedalus/pull/2948))
20+
- Published selfnode installers for all 3 platforms ([PR 2971](https://github.com/input-output-hk/daedalus/pull/2971))
21+
322
## 4.10.0
423

524
### Features
@@ -89,7 +108,7 @@
89108
- Fixed behaviour of wallet settings option of the app menu ([PR 2838](https://github.com/input-output-hk/daedalus/pull/2838))
90109
- Fixed styling of ITN rewards feature ([PR 2861](https://github.com/input-output-hk/daedalus/pull/2861))
91110
- Fixed available disk space takes a long time to show ([PR 2849](https://github.com/input-output-hk/daedalus/pull/2849))
92-
111+
93112
### Chores
94113

95114
- Migrated codebase from javascript to typescript ([PR 2843](https://github.com/input-output-hk/daedalus/pull/2843))

README.md

Lines changed: 26 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -42,9 +42,13 @@ Daedalus - Cryptocurrency Wallet
4242
trusted-substituters =
4343
trusted-public-keys = hydra.iohk.io:f/Ea+s+dFdN+3Y/G+FDgSq+a5NEWhJGzdjvKNGv0/EQ= cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
4444
extra-sandbox-paths = /System/Library/Frameworks /System/Library/PrivateFrameworks /usr/lib
45+
experimental-features = nix-command flakes
4546
46-
# If you are running on a Mac with M1 chip please uncomment 'system' setting to enforce running on Rosetta2
47-
# system = x86_64-darwin
47+
# If you are running on a Mac with Intel chip
48+
system = x86_64-darwin
49+
50+
# If you are running on a Mac with M1 chip
51+
system = aarch64-darwin
4852
```
4953

5054
3. Run `nix-shell` with correct list of arguments or by using existing `package.json` scripts to load a shell with all the correct versions of all the required dependencies for development.
@@ -105,21 +109,6 @@ If you get SSL error when running `nix-shell` (SSL peer certificate or SSH remot
105109
1. Run `yarn nix:testnet` from `daedalus`.
106110
2. Run `yarn dev` from the subsequent `nix-shell`
107111

108-
##### Staging
109-
110-
1. Run `yarn nix:staging` from `daedalus`.
111-
2. Run `yarn dev` from the subsequent `nix-shell`
112-
113-
##### Shelley QA
114-
115-
1. Run `yarn nix:shelley_qa` from `daedalus`.
116-
2. Run `yarn dev` from the subsequent `nix-shell`
117-
118-
##### Alonzo Purple
119-
120-
1. Run `yarn nix:alonzo_purple` from `daedalus`.
121-
2. Run `yarn dev` from the subsequent `nix-shell`
122-
123112
##### Native token metadata server
124113

125114
Daedalus, by default, uses the following metadata server for all networks except for the mainnet: `https://metadata.cardano-testnet.iohkdev.io/`.
@@ -222,6 +211,26 @@ You can debug the main process by following one of these approaches:
222211

223212
The inspector runs on port 9229
224213

214+
### Linking with UI Libraries (e.g. React Polymorph)
215+
216+
You can link libraries with Daedalus using one of the following steps:
217+
218+
#### 1) Using `yalc`
219+
220+
1) Install `yalc` globally using `yarn global add yalc`.
221+
2) Run `yalc publish` from the library's root directory that you want to link with Daedalus.
222+
3) Switch to Daedalus and run `yalc add <package-name>` or preferably `yalc link <package-name>`.
223+
4) You should be able to start Daedalus and see the changes you are making locally in the library.
224+
5) To make sure your changes are reflected as you update code in the library, use `yalc push`.
225+
226+
#### 2) Using `yarn link`
227+
228+
1) From the Daedalus root directory, go to `node_modules/react` and `yarn link`.
229+
2) Navigate to the `react-dom` package in the same directory and run `yarn link` again.
230+
3) Go to the library's root directory and run `yarn link`, `yarn link react` and `yarn link react-dom`.
231+
4) Go back to the Daedalus root directory and run `yarn link <package-name>`.
232+
5) Finally, run `yarn build:watch` from the library's root directory.
233+
225234
## Testing
226235

227236
You can find more details regarding tests setup within

default.nix

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,8 @@ let
3232
};
3333
pkgs = import sources.nixpkgs { inherit system config; };
3434
sources = localLib.sources;
35+
haskellNix = import sources."haskell.nix" {};
36+
inherit (import haskellNix.sources.nixpkgs-unstable haskellNix.nixpkgsArgs) haskell-nix;
3537
flake-compat = import sources.flake-compat;
3638
walletFlake = flake-compat { src = sources.cardano-wallet; };
3739
walletPackages = with walletFlake.defaultNix.hydraJobs; {
@@ -56,13 +58,14 @@ let
5658
ostable.x86_64-windows = "windows";
5759
ostable.x86_64-linux = "linux";
5860
ostable.x86_64-darwin = "macos64";
61+
ostable.aarch64-darwin = "macos64-arm";
62+
5963
packages = self: {
6064
inherit cluster pkgs version target nodeImplementation;
61-
inherit (pkgs) hello cabal2nix;
6265
cardanoLib = localLib.iohkNix.cardanoLib;
6366
daedalus-bridge = self.bridgeTable.${nodeImplementation};
6467

65-
nodejs = pkgs.nodejs-14_x;
68+
nodejs = pkgs.nodejs-16_x;
6669
nodePackages = pkgs.nodePackages.override { nodejs = self.nodejs; };
6770
yarnInfo = {
6871
version = "1.22.4";
@@ -86,7 +89,7 @@ let
8689
inherit (walletPackages) cardano-address;
8790
inherit (walletPackages) mock-token-metadata-server;
8891
cardano-shell = import self.sources.cardano-shell { inherit system; crossSystem = crossSystem shellPkgs.lib; };
89-
local-cluster = if cluster == "selfnode" then (import self.sources.cardano-wallet { inherit system; gitrev = self.sources.cardano-wallet.rev; crossSystem = crossSystem walletPkgs.lib; }).local-cluster else null;
92+
local-cluster = if cluster == "selfnode" then walletPackages.local-cluster else null;
9093
cardano-node-cluster = let
9194
# Test wallets with known mnemonics
9295
walletTestGenesisYaml = (self.sources.cardano-wallet + "/lib/shelley/test/data/cardano-node-shelley/genesis.yaml");
@@ -266,7 +269,7 @@ let
266269
pushd dlls
267270
${if dummyInstaller then "touch foo" else "unzip ${self.dlls}"}
268271
popd
269-
cp -v ${self.unpackedCardano}/bin/* .
272+
cp -vr ${self.unpackedCardano}/bin/* .
270273
cp -v ${self.nsisFiles}/{*.yaml,*.json,daedalus.nsi,*.key,*.cert} .
271274
cp ${self.uninstaller}/uninstall.exe ../uninstall.exe
272275
if [ -f ${self.nsisFiles}/block-0.bin ]; then
@@ -316,7 +319,11 @@ let
316319
};
317320
rawapp-win64 = self.rawapp.override { win64 = true; };
318321
source = builtins.filterSource localLib.cleanSourceFilter ./.;
319-
yaml2json = pkgs.haskell.lib.addExtraLibrary (pkgs.haskell.lib.disableCabalFlag pkgs.haskellPackages.yaml "no-exe") pkgs.haskellPackages.optparse-applicative;
322+
inherit ((haskell-nix.hackage-package { name = "yaml"; compiler-nix-name = "ghc8107"; cabalProject = ''
323+
packages: .
324+
package yaml
325+
flags: -no-exe
326+
''; }).components.exes) yaml2json;
320327

321328
electron = pkgs.callPackage ./installers/nix/electron.nix {};
322329

gulpfile.js

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -177,7 +177,9 @@ gulp.task(
177177
'clean:dist',
178178
'server:create:dev',
179179
'build:renderer:html',
180-
'build:main:watch',
180+
process.argv.includes('--disable-electron-reload')
181+
? 'build:main'
182+
: 'build:main:watch',
181183
'build:renderer:watch'
182184
)
183185
);

hardware-wallet-tests/connect-multiple-hardware-wallets.ts

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ export const run = () => {
1919
createTestInstructions([
2020
'Start test runner',
2121
'Plug Ledger Nano S to your computer',
22+
'Plug Ledger Nano S Plus to your computer',
2223
'Plug Ledger Nano X to your computer',
2324
]);
2425

@@ -27,6 +28,10 @@ export const run = () => {
2728
disconnected: false,
2829
deviceModel: 'nanoS',
2930
},
31+
{
32+
disconnected: false,
33+
deviceModel: 'nanoSP',
34+
},
3035
{
3136
disconnected: false,
3237
deviceModel: 'nanoX',

hardware-wallet-tests/disconnect-multiple-hardware-wallets.ts

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,10 @@ const getNextExpectedSequence = createSequentialResult([
1414
disconnected: false,
1515
deviceModel: 'nanoS',
1616
},
17+
{
18+
disconnected: false,
19+
deviceModel: 'nanoSP',
20+
},
1721
{
1822
disconnected: false,
1923
deviceModel: 'nanoX',
@@ -22,6 +26,10 @@ const getNextExpectedSequence = createSequentialResult([
2226
disconnected: true,
2327
deviceModel: 'nanoS',
2428
},
29+
{
30+
disconnected: true,
31+
deviceModel: 'nanoSP',
32+
},
2533
{
2634
disconnected: true,
2735
deviceModel: 'nanoX',
@@ -37,8 +45,10 @@ export const run = () => {
3745

3846
createTestInstructions([
3947
'Connect Nano S',
48+
'Connect Nano S Plus',
4049
'Connect Nano X',
4150
'Disconnect Nano S',
51+
'Disconnect Nano S Plus',
4252
'Disconnect Nano X',
4353
]);
4454

installer-clusters.cfg

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
mainnet mainnet_flight testnet shelley_qa staging alonzo_purple
1+
mainnet selfnode mainnet_flight testnet

0 commit comments

Comments
 (0)