Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .ckb-light-version
Original file line number Diff line number Diff line change
@@ -1 +1 @@
v0.5.1
v0.5.4
2 changes: 1 addition & 1 deletion .ckb-version
Original file line number Diff line number Diff line change
@@ -1 +1 @@
v0.202.0
v0.204.0
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/bug_report.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ title: '[Bug Report] **Please describe the bug shortly**'
labels:
- bug
assignees:
- Keith-CY
- walker27
- yanguoyu
body:
- type: markdown
Expand Down
3 changes: 1 addition & 2 deletions .github/workflows/package.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,7 @@ jobs:
default:
strategy:
matrix:
node:
- lts/*
node: [22]
os:
- macos-latest
- ubuntu-latest
Expand Down
3 changes: 1 addition & 2 deletions .github/workflows/package_for_test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,7 @@ jobs:

strategy:
matrix:
node:
- lts/*
node: [22]
os:
- macos-latest
- ubuntu-latest
Expand Down
36 changes: 36 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,39 @@
# 0.204.1 (2026-04-10)

### CKB Node & Light Client

- [CKB@v0.204.0](https://github.com/nervosnetwork/ckb/releases/tag/v0.204.0) was released on Dec. 15th, 2025. This version of CKB node is now bundled and preconfigured in Neuron.
- [CKB Light Client@v0.5.4](https://github.com/nervosnetwork/ckb-light-client/releases/tag/v0.5.4) was released on Jan. 2nd, 2026. This version of CKB Light Client is now bundled and preconfigured in Neuron

### Assumed valid target

Block before `0xa76ecc34238a30151211f63a09e6063ac7e7e760866b9be73b7560e3a95d3a50`(at height `18,298,596`) will be skipped in validation.(https://github.com/nervosnetwork/neuron/pull/3428)

---

## Bug fixes

- #3465: Harden release notes rendering and privileged window navigation.(@zhangyaning)

**Full Changelog**: https://github.com/nervosnetwork/neuron/compare/v0.204.0...v0.204.1

# 0.204.0 (2026-01-12)

### Caveat

We changed the AppId for some reasons. If automatic updates fail, please download it manually.

### CKB Node & Light Client

- [CKB@v0.204.0](https://github.com/nervosnetwork/ckb/releases/tag/v0.204.0) was released on Dec. 15th, 2025. This version of CKB node is now bundled and preconfigured in Neuron.
- [CKB Light Client@v0.5.4](https://github.com/nervosnetwork/ckb-light-client/releases/tag/v0.5.4) was released on Jan. 2nd, 2026. This version of CKB Light Client is now bundled and preconfigured in Neuron

### Assumed valid target

Block before `0xa76ecc34238a30151211f63a09e6063ac7e7e760866b9be73b7560e3a95d3a50`(at height `18,298,596`) will be skipped in validation.(https://github.com/nervosnetwork/neuron/pull/3428)

**Full Changelog**: https://github.com/nervosnetwork/neuron/compare/v0.202.1...v0.204.0

# 0.202.1 (2025-07-02)

### CKB Node & Light Client
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ Download [CKB Indexer](https://github.com/nervosnetwork/ckb-indexer/releases) an

As of `v0.26.0`, Neuron bundles a CKB binary and starts it for Mainnet automatically. If you prefer to run a local CKB node yourself instead, please follow the [Nervos CKB doc](https://docs.nervos.org/docs/basics/guides/mainnet) to get it up and running before launching Neuron.

**Note**: If you run CKB node on Windows but it fails to start, you may need to download and install the latest [Microsoft Visual C++ Redistributable for Visual Studio 2015, 2017 and 2019](https://support.microsoft.com/en-us/help/2977003/the-latest-supported-visual-c-downloads).
**Note**: If you run CKB node on Windows but it fails to start, you may need to download and install the latest [Microsoft Visual C++ Redistributable for Visual Studio 2015, 2017 and 2019](https://learn.microsoft.com/en-us/cpp/windows/latest-supported-vc-redist?view=msvc-170).

### Start Neuron in Development Mode

Expand Down
52 changes: 52 additions & 0 deletions compatible.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
{
"fullVersions": [
"0.204",
"0.203",
"0.202",
"0.201",
"0.200",
Expand Down Expand Up @@ -32,6 +34,8 @@
"compatible": {
"0.111": {
"full": [
"0.204",
"0.203",
"0.202",
"0.201",
"0.200",
Expand All @@ -58,6 +62,8 @@
},
"0.110": {
"full": [
"0.204",
"0.203",
"0.202",
"0.201",
"0.200",
Expand Down Expand Up @@ -100,6 +106,8 @@
},
"0.112": {
"full": [
"0.204",
"0.203",
"0.202",
"0.201",
"0.200",
Expand All @@ -126,6 +134,8 @@
},
"0.114": {
"full": [
"0.204",
"0.203",
"0.202",
"0.201",
"0.200",
Expand All @@ -152,6 +162,8 @@
},
"0.116": {
"full": [
"0.204",
"0.203",
"0.202",
"0.201",
"0.200",
Expand All @@ -178,6 +190,8 @@
},
"0.117": {
"full": [
"0.204",
"0.203",
"0.202",
"0.201",
"0.200",
Expand All @@ -204,6 +218,8 @@
},
"0.119": {
"full": [
"0.204",
"0.203",
"0.202",
"0.201",
"0.200",
Expand All @@ -230,6 +246,8 @@
},
"0.120": {
"full": [
"0.204",
"0.203",
"0.202",
"0.201",
"0.200",
Expand All @@ -256,6 +274,8 @@
},
"0.121": {
"full": [
"0.204",
"0.203",
"0.202",
"0.201",
"0.200",
Expand All @@ -282,6 +302,8 @@
},
"0.201": {
"full": [
"0.204",
"0.203",
"0.202",
"0.201",
"0.200",
Expand All @@ -308,6 +330,36 @@
},
"0.202": {
"full": [
"0.204",
"0.203",
"0.202",
"0.201",
"0.200",
"0.121",
"0.120",
"0.119",
"0.118",
"0.117",
"0.116",
"0.115",
"0.114",
"0.113",
"0.112",
"0.111",
"0.110",
"0.109"
],
"light": [
"0.5",
"0.4",
"0.3",
"0.2"
]
},
"0.204": {
"full": [
"0.204",
"0.203",
"0.202",
"0.201",
"0.200",
Expand Down
6 changes: 2 additions & 4 deletions lerna.json
Original file line number Diff line number Diff line change
@@ -1,8 +1,6 @@
{
"packages": [
"packages/*"
],
"version": "0.202.1",
"packages": ["packages/*"],
"version": "0.204.1",
"npmClient": "yarn",
"$schema": "node_modules/lerna/schemas/lerna-schema.json"
}
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
"name": "neuron",
"productName": "Neuron",
"description": "CKB Neuron Wallet",
"version": "0.202.1",
"version": "0.204.1",
"private": true,
"author": {
"name": "Nervos Core Dev",
Expand Down
6 changes: 3 additions & 3 deletions packages/neuron-ui/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "neuron-ui",
"version": "0.202.1",
"version": "0.204.1",
"private": true,
"author": {
"name": "Nervos Core Dev",
Expand Down Expand Up @@ -95,7 +95,7 @@
"@vitejs/plugin-react": "4.5.0",
"@wojtekmaj/enzyme-adapter-react-17": "0.8.0",
"babel-jest": "25.5.1",
"electron": "36.3.1",
"electron": "36.8.1",
"enzyme": "3.11.0",
"enzyme-adapter-react-16": "1.15.8",
"eslint-config-airbnb": "19.0.4",
Expand All @@ -108,7 +108,7 @@
"storybook": "8.6.14",
"storybook-addon-react-router-v6": "2.0.10",
"terser": "5.39.2",
"vite": "6.2.7",
"vite": "6.3.6",
"vite-plugin-commonjs": "0.10.4",
"vite-plugin-eslint": "1.8.1",
"vite-plugin-node-polyfills": "0.23.0",
Expand Down
12 changes: 0 additions & 12 deletions packages/neuron-ui/public/css/fonts.css
Original file line number Diff line number Diff line change
Expand Up @@ -8,18 +8,6 @@
src: url('../fonts/SourceCodePro-Regular.ttf') format('truetype');
}

@font-face {
font-family: 'ProximaNova-Regular';
src: url('../fonts/ProximaNova-Regular.otf') format('opentype'),
url('../fonts//Proximanova-Regular.ttf') format('opentype');
}

@font-face {
font-family: 'ProximaNova-Semibold';
src: url('../fonts/ProximaNova-Semibold.otf') format('opentype'),
url('../fonts/ProximaNova-Semibold.ttf') format('opentype');
}

@font-face {
font-family: 'D-DIN-PRO';
src: url('../fonts/D-DIN-PRO-500-Medium.otf') format('opentype'),
Expand Down
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
3 changes: 2 additions & 1 deletion packages/neuron-ui/src/components/GeneralSetting/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ import { uniformTimeFormatter, bytesFormatter, clsx, wakeScreen, releaseWakeLock
import Switch from 'widgets/Switch'
import { keepScreenAwake } from 'services/localCache'
import { LanguageSelect, UnLock } from 'widgets/Icons/icon'
import { sanitizeReleaseNotes } from 'utils/sanitizeReleaseNotes'
import styles from './generalSetting.module.scss'
import { useCheckUpdate, useUpdateDownloadStatus } from './hooks'
import LockWindowDialog from './LockWindowDialog'
Expand Down Expand Up @@ -67,7 +68,7 @@ const UpdateDownloadStatus = ({

if (available) {
const releaseNotesHtml = () => {
return { __html: releaseNotes }
return { __html: sanitizeReleaseNotes(releaseNotes) }
}

/* eslint-disable react/no-danger */
Expand Down
2 changes: 1 addition & 1 deletion packages/neuron-ui/src/components/ImportHardware/common.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import { FailureFromController } from 'services/remote/remoteApiWrapper'

export enum ImportStep {
DetectDevice = '/detect-device',
Comfirming = '/confirming',
Confirming = '/confirming',
Error = '/error',
Success = '/success',
NameWallet = '/name-wallet',
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -98,7 +98,7 @@ const DetectDevice = ({ dispatch, model }: { dispatch: React.Dispatch<ActionType
})

const onNext = useCallback(() => {
dispatch({ step: ImportStep.Comfirming })
dispatch({ step: ImportStep.Confirming })
}, [dispatch])

const errorMsg = error.startsWith('messages.codes.') ? t(error) : error
Expand Down
6 changes: 3 additions & 3 deletions packages/neuron-ui/src/components/ImportHardware/index.tsx
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import React, { useEffect, useReducer } from 'react'
import { useDialogWrapper } from 'utils'
import Comfirming from './confirming'
import Confirming from './confirming'
import ImportError from './import-error'
import SelectModel from './select-model'
import DetectDevice from './detect-device'
Expand Down Expand Up @@ -33,7 +33,7 @@ const Content = () => {
switch (importHardwareStates.step) {
case ImportStep.ImportHardware:
case ImportStep.DetectDevice:
case ImportStep.Comfirming:
case ImportStep.Confirming:
case ImportStep.Error:
case ImportStep.Success:
return (
Expand All @@ -43,7 +43,7 @@ const Content = () => {
{ImportStep.DetectDevice === importHardwareStates.step && (
<DetectDevice dispatch={dispatch} model={importHardwareStates.model!} />
)}
{ImportStep.Comfirming === importHardwareStates.step && <Comfirming dispatch={dispatch} />}
{ImportStep.Confirming === importHardwareStates.step && <Confirming dispatch={dispatch} />}
{ImportStep.Error === importHardwareStates.step && (
<ImportError dispatch={dispatch} error={importHardwareStates.error} />
)}
Expand Down
2 changes: 1 addition & 1 deletion packages/neuron-ui/src/components/WalletWizard/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -304,7 +304,7 @@ const Mnemonic = ({ state = initState, rootPath = '/wizard/', dispatch }: Wizard
</div>
<div className={styles.commendItem}>
<ErrorIcon />
{t('wizard.do-not-save-scrrenshots')}
{t('wizard.do-not-save-screenshots')}
</div>
</div>
)}
Expand Down
4 changes: 2 additions & 2 deletions packages/neuron-ui/src/containers/Navbar/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -111,7 +111,7 @@ const Navbar = () => {
}
}, [network?.readonly])

const gotoCompatile = useCallback(() => {
const gotoCompatible = useCallback(() => {
openExternal(`https://neuron.magickbase.com${i18n.language.startsWith('zh') ? '/zh' : ''}/download`)
}, [i18n.language])

Expand All @@ -133,7 +133,7 @@ const Navbar = () => {
i18nKey="navbar.ckb-node-compatible"
values={{ version: getVersion(), btnText: t('navbar.learn-more') }}
components={[
<button type="button" className={styles.learnMore} onClick={gotoCompatile}>
<button type="button" className={styles.learnMore} onClick={gotoCompatible}>
{t('navbar.learn-more')}
</button>,
]}
Expand Down
2 changes: 1 addition & 1 deletion packages/neuron-ui/src/locales/ar.json
Original file line number Diff line number Diff line change
Expand Up @@ -188,7 +188,7 @@
"wallet-suffix": "محفظة {{suffix}}",
"handwritten-recommended": "يوصى بالنسخ اليدوي",
"do-not-copy": "لا تقم بالنسخ",
"do-not-save-scrrenshots": "لا تحفظ لقطات الشاشة",
"do-not-save-screenshots": "لا تحفظ لقطات الشاشة",
"replenish-your-seed": "يرجى استعادة بذرة محفظتك",
"new-name": "استخدم اسمًا غير مستخدم للمحفظة الجديدة",
"complex-password": "يجب أن تتكون كلمة المرور من 8 إلى 50 حرفًا وتحتوي على ثلاث فئات على الأقل من الفئات التالية: حروف كبيرة، حروف صغيرة، أرقام، ورموز خاصة.",
Expand Down
4 changes: 2 additions & 2 deletions packages/neuron-ui/src/locales/en.json
Original file line number Diff line number Diff line change
Expand Up @@ -188,7 +188,7 @@
"wallet-suffix": "Wallet {{suffix}}",
"handwritten-recommended": "Handwritten transcription recommended",
"do-not-copy": "Do not copy",
"do-not-save-scrrenshots": "Do not save scrrenshots",
"do-not-save-screenshots": "Do not save screenshots",
"replenish-your-seed": "Please replenish your wallet seed",
"new-name": "Use an unused name for the new wallet",
"complex-password": "The password should be 8 to 50 characters long containing at least three character categories among the following: uppercase letters, lowercase letters, numbers, and special symbols.",
Expand Down Expand Up @@ -1282,7 +1282,7 @@
"external-node-detected-dialog": {
"title": "Detected external node",
"body-tips-without-network": "You have selected the internal node but started the external node, if you want to continue to use an external node, please add a new network.",
"body-tips-with-network": "You have currently selected an internal node but started an external node, if you need to continu using the external node please switch to another external network or add a new network.",
"body-tips-with-network": "You have currently selected an internal node but started an external node, if you need to continue using the external node please switch to another external network or add a new network.",
"add-network": "Add Network",
"ignore-external-node": "Ignore external node"
},
Expand Down
Loading
Loading