Skip to content

Commit a4472b2

Browse files
authored
Merge pull request #2981 from input-output-hk/merge-4.10.0-into-main
2 parents 9e51bdb + f7189e2 commit a4472b2

File tree

518 files changed

+8352
-6966
lines changed

Some content is hidden

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

518 files changed

+8352
-6966
lines changed

.eslintrc

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -109,6 +109,12 @@
109109
"no-useless-constructor": "off",
110110
"@typescript-eslint/no-useless-constructor": "error"
111111
}
112+
},
113+
{
114+
"files": "hardware-wallet-tests/**/*.ts",
115+
"rules": {
116+
"jest/no-standalone-expect": "off",
117+
}
112118
}
113119
]
114120
}

.github/workflows/chromatic.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,10 +28,12 @@ jobs:
2828
token: ${{ secrets.GITHUB_TOKEN }}
2929
projectToken: ${{ secrets.CHROMATIC_PROJECT_TOKEN }}
3030
exitZeroOnChanges: true
31+
buildScriptName: 'storybook:build:chromatic'
3132
- name: Publish to Chromatic and auto accept changes
3233
if: github.ref == 'refs/heads/develop'
3334
uses: chromaui/action@v1
3435
with:
3536
token: ${{ secrets.GITHUB_TOKEN }}
3637
projectToken: ${{ secrets.CHROMATIC_PROJECT_TOKEN }}
3738
autoAcceptChanges: true
39+
buildScriptName: 'storybook:build:chromatic'

.github/workflows/linter.yml

Lines changed: 0 additions & 15 deletions
This file was deleted.

.github/workflows/run_tests_on_pr.yml

Lines changed: 0 additions & 18 deletions
This file was deleted.

.github/workflows/verify_pr.yml

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
name: Verify Pull Request
2+
on:
3+
pull_request:
4+
jobs:
5+
tests:
6+
runs-on: ubuntu-latest
7+
steps:
8+
- name: Checkout Repo
9+
uses: actions/checkout@v2
10+
- name: Setup Node.js
11+
uses: actions/setup-node@v2
12+
with:
13+
node-version: "14"
14+
- name: Restore node_modules from cache
15+
uses: actions/cache@v2
16+
with:
17+
path: '**/node_modules'
18+
key: ${{ runner.os }}-modules-${{ hashFiles('**/yarn.lock') }}
19+
- name: Install dependencies
20+
run: yarn --frozen-lockfile
21+
- name: Run checks
22+
run: yarn check:all
23+
- name: Ensure there are no uncommited changes
24+
run: git diff --exit-code || (echo "Did you forget to run 'yarn check:all' and commit changes?" && exit 1)
25+
- name: Run tests
26+
run: yarn test:jest --maxWorkers=3

.gitignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -119,3 +119,6 @@ Debug
119119
/cardano-cli
120120
/cardano-wallet
121121
.vscode
122+
123+
# Typescript
124+
*.scss.d.ts

.prettierignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
!source/
66
!features/
77
!storybook/
8+
!hardware-wallet-tests/
89

910
# Now we ignore all files
1011
*.*

BESTPRACTICES.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1108,7 +1108,7 @@ type Props = {
11081108
};
11091109
```
11101110

1111-
For preventing syntax errors, leave a comma after the last key/value pair incase the type definition's properties are rearranged or expanded upon in the future.
1111+
For preventing syntax errors, leave a comma after the last key/value pair in case the type definition's properties are rearranged or expanded upon in the future.
11121112

11131113
:white_check_mark: ***Do***
11141114

@@ -1204,7 +1204,7 @@ const Names = () => (<div>
12041204
## Formatting Selectors
12051205

12061206
* Use class selectors instead of ID selectors.
1207-
* Use camelCase or dashed-case instead of PascelCase or names_with_underscores.
1207+
* Use camel case or dashed-case instead of pascal case or names_with_underscores.
12081208
* Give each selector its own line.
12091209
* Put a space before the opening brace `{` in rule declarations.
12101210
* Put closing braces `}` of rule declarations on a new line.

CHANGELOG.md

Lines changed: 46 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,51 @@
11
# Changelog
22

3+
## 4.10.0
4+
5+
### Features
6+
7+
- Implemented hover tooltips for menu ([PR 2938](https://github.com/input-output-hk/daedalus/pull/2938))
8+
- Improved UI regarding the Hardware Wallet public key export error ([PR 2922](https://github.com/input-output-hk/daedalus/pull/2922))
9+
- Added ASCII name to token header when metadata name is missing ([PR 2904](https://github.com/input-output-hk/daedalus/pull/2904))
10+
- Improved IPC by reducing the amount of messages from periodic events ([PR 2892](https://github.com/input-output-hk/daedalus/pull/2892))
11+
- Improved RTS flags splash screen message ([PR 2901](https://github.com/input-output-hk/daedalus/pull/2901))
12+
- Implemented error message when trying to leave wallet without enough ada to support tokens ([PR 2783](https://github.com/input-output-hk/daedalus/pull/2783))
13+
14+
### Fixes
15+
16+
- Fixed dialogs being closed after receiving address shared ([PR 2965](https://github.com/input-output-hk/daedalus/pull/2965))
17+
- Fixed no progress shown on loading screen on Windows ([PR 2967](https://github.com/input-output-hk/daedalus/pull/2967))
18+
- Fixes hardware wallet issues on Windows ([PR 2900](https://github.com/input-output-hk/daedalus/pull/2900))
19+
- Fixed stake pool list styling ([PR 2920](https://github.com/input-output-hk/daedalus/pull/2920))
20+
- Fixed PopOver overlap ([PR 2954](https://github.com/input-output-hk/daedalus/pull/2954))
21+
- Fixed tooltip being hidden in several places ([PR-2934](https://github.com/input-output-hk/daedalus/pull/2934))
22+
- Adjusted padding for search field in stake pools ([PR 2945](https://github.com/input-output-hk/daedalus/pull/2945))
23+
- Fixed margin for dialogs content and token table header ([PR 2944](https://github.com/input-output-hk/daedalus/pull/2944))
24+
- Fixed performance issue on stake pool list view ([PR 2924](https://github.com/input-output-hk/daedalus/pull/2924))
25+
- Fixed position of popup on syncing screen ([PR 2921](https://github.com/input-output-hk/daedalus/pull/2921))
26+
- Fixed issue with missing character when copying address from PDF ([PR 2925](https://github.com/input-output-hk/daedalus/pull/2925))
27+
- Fixed stake pool list view overlapping news feed ([PR 2917](https://github.com/input-output-hk/daedalus/pull/2917))
28+
- Restored opacity for search icon when focused ([PR 2909](https://github.com/input-output-hk/daedalus/pull/2909))
29+
- Fixed styling of the incentivized testnet rewards wallet dropdown ([PR 2907](https://github.com/input-output-hk/daedalus/pull/2907))
30+
- Fix warning sign displayed when recommend decimals is zero ([PR 2905](https://github.com/input-output-hk/daedalus/pull/2905))
31+
- Fixed discrete tooltip being clipped by loading overlay when stake pools are adjusted ([PR 2902](https://github.com/input-output-hk/daedalus/pull/2902))
32+
- Sets minimum transaction fee to ada input field when tokens are removed ([PR 2918](https://github.com/input-output-hk/daedalus/pull/2918))
33+
34+
### Chores
35+
36+
- Updated cardano-wallet to v2022-04-27 and cardano-node to 1.34.1 ([PR 2951](https://github.com/input-output-hk/daedalus/pull/2951))
37+
- Refactor to remove duplicated code ([PR 2956](https://github.com/input-output-hk/daedalus/pull/2956))
38+
- Updated cardano-launcher to 0.20220119.0 ([PR 2839](https://github.com/input-output-hk/daedalus/pull/2839))
39+
- Added `storybook:build` check to pre-push hook ([PR 2955](https://github.com/input-output-hk/daedalus/pull/2955))
40+
- Using new faker.js ([PR 2855](https://github.com/input-output-hk/daedalus/pull/2855))
41+
- Fixed spelling issues and typos ([PR 2915](https://github.com/input-output-hk/daedalus/pull/2915))
42+
- Removed SASS ts-lint ignore comments ([PR 2870](https://github.com/input-output-hk/daedalus/pull/2870))
43+
- Enabled debugging of the main process ([PR 2893](https://github.com/input-output-hk/daedalus/pull/2893))
44+
345
## 4.9.1
446

547
### Fixes
6-
48+
749
- Fixed catalyst fund name ([PR 2946](https://github.com/input-output-hk/daedalus/pull/2946))
850
- Fixed macOS installer on Monterey 12.3 ([PR 2929](https://github.com/input-output-hk/daedalus/pull/2929))
951

@@ -43,6 +85,7 @@
4385

4486
### Fixes
4587

88+
- Fixed rewards CSV export issues ([PR 2885](https://github.com/input-output-hk/daedalus/pull/2885))
4689
- Fixed behaviour of wallet settings option of the app menu ([PR 2838](https://github.com/input-output-hk/daedalus/pull/2838))
4790
- Fixed styling of ITN rewards feature ([PR 2861](https://github.com/input-output-hk/daedalus/pull/2861))
4891
- Fixed available disk space takes a long time to show ([PR 2849](https://github.com/input-output-hk/daedalus/pull/2849))
@@ -94,10 +137,12 @@
94137

95138
### Fixes
96139

140+
- Fixed immediate language updates of application top menu bar ([PR 2813](https://github.com/input-output-hk/daedalus/pull/2813))
97141
- Fixed receiver address validation by disallowing rewards addresses ([PR 2781](https://github.com/input-output-hk/daedalus/pull/2781))
98142

99143
### Chores
100144

145+
- Integrated Chromatic for visual regression testing ([PR 2776](https://github.com/input-output-hk/daedalus/pull/2776))
101146
- Updated `trezor-connect` dependency to version `8.2.4` ([PR 2726](https://github.com/input-output-hk/daedalus/pull/2726))
102147
- Updated vulnerable dependencies ([PR 2769](https://github.com/input-output-hk/daedalus/pull/2769))
103148
- Updated CWB and Cardano Node ([PR 2799](https://github.com/input-output-hk/daedalus/pull/2799))

README.md

Lines changed: 49 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -8,13 +8,15 @@
88

99
Daedalus - Cryptocurrency Wallet
1010

11-
## Installation
11+
## Setup development environment
1212

13-
### Yarn
13+
### Linux/macOS
14+
15+
#### Yarn
1416

1517
[Yarn](https://yarnpkg.com/lang/en/docs/install) is required to install `npm` dependencies to build Daedalus.
1618

17-
### Nix
19+
#### Nix
1820

1921
[Nix](https://nixos.org/nix/) is needed to run Daedalus in `nix-shell`.
2022

@@ -57,21 +59,19 @@ If you get SSL error when running `nix-shell` (SSL peer certificate or SSH remot
5759
```
5860
2. Download certificate from https://docs.certifytheweb.com/docs/kb/kb-202109-letsencrypt/ and import to your keychain.
5961

60-
## Development
61-
62-
### Running Daedalus with Cardano Node
62+
#### Running Daedalus with Cardano Node
6363

64-
#### Selfnode
64+
##### Selfnode
6565

6666
1. Run `yarn nix:selfnode` from `daedalus`.
6767
2. Run `yarn dev` from the subsequent `nix-shell` (use `KEEP_LOCAL_CLUSTER_RUNNING` environment variable to keep the local cluster running after Daedalus exits: `KEEP_LOCAL_CLUSTER_RUNNING=true yarn dev`)
6868
3. Once Daedalus has started and has gotten past the loading screen run the following commands from a new terminal window if you wish to import funded wallets:
69-
- Byron wallets: `yarn byron:wallet:importer`
70-
- Shelley wallets: `yarn shelley:wallet:importer`
71-
- Mary wallets: `yarn mary:wallet:importer` (all of which contain native tokens which are visible once selfnode enters Mary era)
72-
- Yoroi Byron wallets: `yarn yoroi:wallet:importer`
73-
- _ITN Byron wallets:_ `yarn itn:byron:wallet:importer` **[Deprecated]**
74-
- _ITN Shelley wallets:_ `yarn itn:shelley:wallet:importer` **[Deprecated]**
69+
- Byron wallets: `yarn byron:wallet:importer`
70+
- Shelley wallets: `yarn shelley:wallet:importer`
71+
- Mary wallets: `yarn mary:wallet:importer` (all of which contain native tokens which are visible once selfnode enters Mary era)
72+
- Yoroi Byron wallets: `yarn yoroi:wallet:importer`
73+
- _ITN Byron wallets:_ `yarn itn:byron:wallet:importer` **[Deprecated]**
74+
- _ITN Shelley wallets:_ `yarn itn:shelley:wallet:importer` **[Deprecated]**
7575

7676
These scripts import 3 wallets by default. You can import up to 10 wallets by supplying `WALLET_COUNT` environment variable (e.g. `WALLET_COUNT=10 yarn mary:wallet:importer`).
7777

@@ -90,37 +90,37 @@ If you get SSL error when running `nix-shell` (SSL peer certificate or SSH remot
9090
| desiredPoolNumber | 3
9191
| minimumUtxoValue | 1 ADA
9292

93-
#### Mainnet
93+
##### Mainnet
9494

9595
1. Run `yarn nix:mainnet` from `daedalus`.
9696
2. Run `yarn dev` from the subsequent `nix-shell`
9797

98-
#### Flight
98+
##### Flight
9999

100100
1. Run `yarn nix:flight` from `daedalus`.
101101
2. Run `yarn dev` from the subsequent `nix-shell`
102102

103-
#### Testnet
103+
##### Testnet
104104

105105
1. Run `yarn nix:testnet` from `daedalus`.
106106
2. Run `yarn dev` from the subsequent `nix-shell`
107107

108-
#### Staging
108+
##### Staging
109109

110110
1. Run `yarn nix:staging` from `daedalus`.
111111
2. Run `yarn dev` from the subsequent `nix-shell`
112112

113-
#### Shelley QA
113+
##### Shelley QA
114114

115115
1. Run `yarn nix:shelley_qa` from `daedalus`.
116116
2. Run `yarn dev` from the subsequent `nix-shell`
117117

118-
#### Alonzo Purple
118+
##### Alonzo Purple
119119

120120
1. Run `yarn nix:alonzo_purple` from `daedalus`.
121121
2. Run `yarn dev` from the subsequent `nix-shell`
122122

123-
#### Native token metadata server
123+
##### Native token metadata server
124124

125125
Daedalus, by default, uses the following metadata server for all networks except for the mainnet: `https://metadata.cardano-testnet.iohkdev.io/`.
126126

@@ -151,7 +151,26 @@ http://localhost:65432/metadata/query
151151
```
152152
... and expect a "200 OK" response.
153153

154-
### Updating upstream dependencies (cardano-wallet, cardano-node, and iohk-nix)
154+
### Windows
155+
156+
This option is only for troubleshooting windows specific issues with hardware wallets. It is not recommended to use Windows as a developer environment.
157+
Most of the commands need `nix` and will run only on Linux or macOS.
158+
159+
#### Requisites
160+
- Windows 10/11
161+
- Daedalus testnet installation (similar version used in branch) in `C:\Program Files\Daedalus Testnet`
162+
- NodeJS 16
163+
- Python2
164+
- `yarn global add windows-build-tools` (if this does not work extract daedalus\nix\windows-usb-libs.zip under daedalus\build folder)
165+
- Microsoft Build Tools 2015
166+
- Microsoft Visual Studio 2017 (Include Desktop development with C++)
167+
- `yarn config set msvsversion 2015 --global`
168+
169+
#### Steps
170+
- `yarn install`
171+
- `yarn dev:windows`
172+
173+
#### Updating upstream dependencies (cardano-wallet, cardano-node, and iohk-nix)
155174

156175
`Niv` is used to manage the version of upstream dependencies. The versions of these dependencies can be seen in `nix/sources.json`.
157176

@@ -194,6 +213,15 @@ Make sure to list bootstrap in externals in `webpack.config.base.js` or the app
194213
externals: ['bootstrap']
195214
```
196215

216+
### Debugging
217+
218+
You can debug the main process by following one of these approaches:
219+
- [VSCode](https://code.visualstudio.com/docs/nodejs/nodejs-debugging#_attaching-to-nodejs)
220+
- [Chrome](https://nodejs.org/en/docs/guides/debugging-getting-started/#inspector-clients)
221+
- [IntelliJ](https://www.jetbrains.com/help/idea/run-debug-configuration-node-js-remote-debug.html)
222+
223+
The inspector runs on port 9229
224+
197225
## Testing
198226

199227
You can find more details regarding tests setup within

0 commit comments

Comments
 (0)