Skip to content

Commit 9e8bae7

Browse files
authored
Merge pull request #444 from bitfinexcom/staging
Release version 4.30.0
2 parents 6e97481 + 47471ba commit 9e8bae7

42 files changed

Lines changed: 915 additions & 279 deletions

Some content is hidden

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

.env.example

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ REPO_BRANCH=master
44
IS_BFX_API_STAGING=0
55
IS_DEV_ENV=0
66
IS_AUTO_UPDATE_DISABLED=0
7+
IS_AUTO_UPDATE_BEING_TESTED=0
78

89
SHOULD_LOCALHOST_BE_USED_FOR_LOADING_UI_IN_DEV_MODE=0
910

.github/workflows/build-electron-app.yml

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -134,16 +134,12 @@ jobs:
134134
uses: actions/checkout@v4
135135
with:
136136
submodules: recursive
137-
- name: Replace macOS’s sed with GNU’s sed
138-
run: |
139-
brew install gnu-sed
140-
echo "$(brew --prefix)/opt/gnu-sed/libexec/gnubin" >> $GITHUB_PATH
141137
- if: github.event.inputs.version != ''
142138
name: Set release version
143139
run: |
144-
sed -i -e \
140+
sed -i".bak" -E -e \
145141
"s/\"version\": \".*\"/\"version\": \"${{ github.event.inputs.version }}\"/g" \
146-
"./package.json"
142+
"./package.json"; rm -f "./package.json.bak"
147143
- if: contains(fromJson('["true", "1", true, 1]'), github.event.inputs.isAutoUpdateDisabled)
148144
name: Turn off auto-update
149145
run: |

CHANGELOG.md

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,40 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
77

88
## [Unreleased]
99

10+
## [4.30.0] - 2024-11-13
11+
12+
### Added
13+
14+
- Implemented `Your Assets` section for the web `Account Summary` page. Improved sections titles styling. PR: [bfx-report-ui#880](https://github.com/bitfinexcom/bfx-report-ui/pull/880)
15+
- Implemented `UI` language selection binding with `ElectronJS` wrapper. PR: [bfx-report-ui#882](https://github.com/bitfinexcom/bfx-report-ui/pull/882)
16+
- Extended ElectronJS app wrapper translations. Improved the app-init-error layout. Fixed logs collection for bug report. PR: [bfx-report-electron#422](https://github.com/bitfinexcom/bfx-report-electron/pull/422)
17+
- Added translation support to the `error manager` module. PR: [bfx-report-electron#428](https://github.com/bitfinexcom/bfx-report-electron/pull/428)
18+
- Added translation support to the `native notifications` module. PR: [bfx-report-electron#429](https://github.com/bitfinexcom/bfx-report-electron/pull/429)
19+
- Added translation support to the `auto-updater` module. PRs: [bfx-report-electron#430](https://github.com/bitfinexcom/bfx-report-electron/pull/430), [bfx-report-electron#438](https://github.com/bitfinexcom/bfx-report-electron/pull/438)
20+
- Added translation support to the `restore DB` module. PR: [bfx-report-electron#431](https://github.com/bitfinexcom/bfx-report-electron/pull/431)
21+
- Added translation support to the `show-docs` module, and added the ability to set the `markdown` user manual with different languages into `i18next` (if doc for the corresponding lang does not exist takes `en` by default). PR: [bfx-report-electron#434](https://github.com/bitfinexcom/bfx-report-electron/pull/434)
22+
- Added translation support to the `print-to-pdf` module. PR: [bfx-report-electron#435](https://github.com/bitfinexcom/bfx-report-electron/pull/435)
23+
- Added translation support to the `change-reports-folder` module. PR: [bfx-report-electron#436](https://github.com/bitfinexcom/bfx-report-electron/pull/436)
24+
- Added translation support to the `change-sync-frequency` module. PR: [bfx-report-electron#437](https://github.com/bitfinexcom/bfx-report-electron/pull/437)
25+
- Added translation support to the `enforce-macos-app-location` module. PR: [bfx-report-electron#439](https://github.com/bitfinexcom/bfx-report-electron/pull/439)
26+
27+
### Changed
28+
29+
- Improved the loading window workflow to bring more consistency in the sequence of showing windows. Added ability to send/listen events for the app-init layout via the context bridge between the main and renderer ipc to be secure. Fixed issue with focusing the main window on the launch. PR: [bfx-report-electron#424](https://github.com/bitfinexcom/bfx-report-electron/pull/424)
30+
- Prevented returning the translation key `key.nestedKey.etc` if a value is missing for a certain language and added the ability to try to take one from the default `en` translation file. PR: [bfx-report-electron#426](https://github.com/bitfinexcom/bfx-report-electron/pull/426)
31+
- Reworked `sed` commands to be able to run the build `bash` scripts on both OSs `Ubuntu` and `MacOS` as they have slightly different implementation. PR: [bfx-report-electron#427](https://github.com/bitfinexcom/bfx-report-electron/pull/427)
32+
33+
### Fixed
34+
35+
- Fixed `2FA` login flow to prevent the token request duplication possibility noted in some user scenarios. PR: [bfx-report-ui#881](https://github.com/bitfinexcom/bfx-report-ui/pull/881)
36+
- Fixed issue with `Wine` to build `Windows` release under container. PR: [bfx-report-electron#425](https://github.com/bitfinexcom/bfx-report-electron/pull/425)
37+
- Fixed loading UI fonts to all modal windows. PR: [bfx-report-electron#432](https://github.com/bitfinexcom/bfx-report-electron/pull/432)
38+
39+
### Security
40+
41+
- Bumped `cookie` from `0.6.0` to `0.7.1`, `express` from `4.21.0` to `4.21.1`. PR: [bfx-report-ui#879](https://github.com/bitfinexcom/bfx-report-ui/pull/879)
42+
- Bumped `electron` from `27.3.11` to `27.3.5`. PR: [bfx-report-electron#424](https://github.com/bitfinexcom/bfx-report-electron/pull/424)
43+
1044
## [4.29.0] - 2024-10-16
1145

1246
### Added

Dockerfile.win-builder

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ COPY ./scripts/helpers/install-nodejs.sh ./scripts/helpers/install-nodejs.sh
1010
RUN ./scripts/helpers/install-nodejs.sh ${NODE_VERSION} \
1111
# Remove the `Wine` source entry to resolve
1212
# the release key expiration issue for `apt-get update`
13-
&& sed -i '/Wine/d' /etc/apt/sources.list \
13+
&& rm -rf /etc/apt/sources.list.d/wine* \
1414
&& apt-get update -y \
1515
&& apt-get install -y --no-install-recommends \
1616
p7zip-full \

bfx-reports-framework

build/locales/en/translations.json

Lines changed: 127 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,132 @@
11
{
22
"common": {
3-
"title": "Report"
3+
"title": "Report",
4+
"appInitError": {
5+
"description": "Application initialization error",
6+
"closeBtnText": "Close"
7+
},
8+
"errorManager": {
9+
"failedToGetDocsPath": {
10+
"title": "The OS Documents directory has been misconfigured",
11+
"message": "This indicates that your OS `Documents` directory has been misconfigured.\n\rPlease, set it to a valid location or reset it to the default"
12+
},
13+
"errorModalDialog": {
14+
"errBoxTitle": "Bug report",
15+
"errBoxDescription": "A new GitHub issue will be opened",
16+
"zenityBtn": "Report and Exit",
17+
"confirmButtonText": "Report",
18+
"cancelButtonText": "Cancel",
19+
"title": "Should a bug report be submitted?"
20+
}
21+
},
22+
"nativeNotification": {
23+
"defaulTitle": "Bitfinex Report",
24+
"defaultBody": "Notification",
25+
"sync": {
26+
"completedBody": "Data sync completed successfully!",
27+
"interruptedBody": "Data sync interrupted!",
28+
"errorBody": "Data sync completed with an error!"
29+
},
30+
"trxTaxReport": {
31+
"completedBody": "Your tax report is ready!",
32+
"errorBody": "An unexpected error occurred while generating the tax report!"
33+
}
34+
},
35+
"autoUpdater": {
36+
"title": "Update",
37+
"confirmButtonText": "OK",
38+
"cancelButtonText": "Cancel",
39+
"loadingWindow": {
40+
"description": "Updating..."
41+
},
42+
"errorToast": {
43+
"title": "Application update failed",
44+
"inetIssueTitle": "Internet disconnected"
45+
},
46+
"checkingForUpdateToast": {
47+
"title": "Checking for update"
48+
},
49+
"updateAvailableToast": {
50+
"title": "An update to v{{version}} is available",
51+
"description": "Starting download..."
52+
},
53+
"updateNotAvailableToast": {
54+
"title": "No updates available"
55+
},
56+
"downloadProgressToast": {
57+
"title": "Downloading..."
58+
},
59+
"updateDownloadedToast": {
60+
"title": "Update v{{version}} downloaded",
61+
"description": "Should the app be updated right now?"
62+
}
63+
},
64+
"restoreDB": {
65+
"modalDialog": {
66+
"title": "Select DB backup file",
67+
"confirmButtonText": "OK",
68+
"cancelButtonText": "Cancel"
69+
},
70+
"messageModalDialog": {
71+
"title": "DB restoring",
72+
"message": "Suitable DB backup file has not been found",
73+
"dbRestoredMessage": "DB has been restored",
74+
"dbNotRestoredMessage": "DB has not been restored",
75+
"confirmButtonText": "OK"
76+
}
77+
},
78+
"showDocs": {
79+
"modalDialog": {
80+
"title": "User manual",
81+
"cancelButtonText": "Close"
82+
}
83+
},
84+
"printToPDF": {
85+
"defaultTemplate": "No data",
86+
"pagination": {
87+
"page": "Page",
88+
"from": "from"
89+
}
90+
},
91+
"changeReportsFolder": {
92+
"modalDialog": {
93+
"title": "Change reports folder",
94+
"buttonLabel": "Select"
95+
}
96+
},
97+
"changeSyncFrequency": {
98+
"title": "Change sync frequency",
99+
"timeFormatModalDialog": {
100+
"title": "Set time format",
101+
"confirmButtonText": "OK",
102+
"cancelButtonText": "Cancel",
103+
"inputOptions": {
104+
"mins": "Mins",
105+
"hours": "Hours",
106+
"days": "Days"
107+
}
108+
},
109+
"timeModalDialog": {
110+
"title": "Set sync frequency",
111+
"confirmButtonText": "OK",
112+
"cancelButtonText": "Cancel"
113+
}
114+
},
115+
"enforceMacOSAppLocation": {
116+
"appLocationModalDialog": {
117+
"message": "Move to Applications folder?",
118+
"detail": "{{productName}} must live in the Applications folder to be able to run correctly",
119+
"confirmButtonText": "Move to Applications folder",
120+
"cancelButtonText": "Quit {{productName}}"
121+
},
122+
"loadingWindow": {
123+
"description": "Moving the app..."
124+
},
125+
"appRunningModalDialog": {
126+
"message": "Another version of {{productName}} is currently running. Quit it, then launch this version of the app again",
127+
"confirmButtonText": "OK"
128+
}
129+
}
4130
},
5131
"menu": {
6132
"macMainSubmenu": {

build/locales/ru/translations.json

Lines changed: 127 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,132 @@
11
{
22
"common": {
3-
"title": "Отчет"
3+
"title": "Отчет",
4+
"appInitError": {
5+
"description": "Ошибка инициализации приложения",
6+
"closeBtnText": "Закрыть"
7+
},
8+
"errorManager": {
9+
"failedToGetDocsPath": {
10+
"title": "Каталог Документы ОС был неправильно настроен",
11+
"message": "Это означает, что каталог `Документы` вашей ОС был неправильно настроен.\n\rПожалуйста, укажите правильное расположение или сбросьте его до значений по умолчанию"
12+
},
13+
"errorModalDialog": {
14+
"errBoxTitle": "Отчет об ошибке",
15+
"errBoxDescription": "Будет открыта новая проблема в GitHub",
16+
"zenityBtn": "Отправить Отчет и Выйти",
17+
"confirmButtonText": "Отправить Отчет",
18+
"cancelButtonText": "Отменить",
19+
"title": "Должен ли быть отправлен отчет об ошибке?"
20+
}
21+
},
22+
"nativeNotification": {
23+
"defaulTitle": "Bitfinex Report",
24+
"defaultBody": "Уведомление",
25+
"sync": {
26+
"completedBody": "Синхронизация данных успешно завершена!",
27+
"interruptedBody": "Синхронизация данных прервана!",
28+
"errorBody": "Синхронизация данных завершена с ошибкой!"
29+
},
30+
"trxTaxReport": {
31+
"completedBody": "Ваш налоговый отчет готов!",
32+
"errorBody": "При формировании налогового отчета произошла непредвиденная ошибка!"
33+
}
34+
},
35+
"autoUpdater": {
36+
"title": "Обновление",
37+
"confirmButtonText": "OK",
38+
"cancelButtonText": "Отменить",
39+
"loadingWindow": {
40+
"description": "Обновление..."
41+
},
42+
"errorToast": {
43+
"title": "Обновление приложения не удалось",
44+
"inetIssueTitle": "Интернет отключен"
45+
},
46+
"checkingForUpdateToast": {
47+
"title": "Проверка обновления"
48+
},
49+
"updateAvailableToast": {
50+
"title": "Доступно обновление до версии v{{version}}",
51+
"description": "Начинаем загрузку..."
52+
},
53+
"updateNotAvailableToast": {
54+
"title": "Нет доступных обновлений"
55+
},
56+
"downloadProgressToast": {
57+
"title": "Загрузка..."
58+
},
59+
"updateDownloadedToast": {
60+
"title": "Обновление v{{version}} загружено",
61+
"description": "Стоит ли обновить приложение прямо сейчас?"
62+
}
63+
},
64+
"restoreDB": {
65+
"modalDialog": {
66+
"title": "Выберите файл резервной копии БД",
67+
"confirmButtonText": "OK",
68+
"cancelButtonText": "Отменить"
69+
},
70+
"messageModalDialog": {
71+
"title": "Восстановление БД",
72+
"message": "Подходящий файл резервной копии БД не найден",
73+
"dbRestoredMessage": "БД была восстановлена",
74+
"dbNotRestoredMessage": "БД не была восстановлена",
75+
"confirmButtonText": "OK"
76+
}
77+
},
78+
"showDocs": {
79+
"modalDialog": {
80+
"title": "Руководство пользователя",
81+
"cancelButtonText": "Закрыть"
82+
}
83+
},
84+
"printToPDF": {
85+
"defaultTemplate": "Нет данных",
86+
"pagination": {
87+
"page": "Страница",
88+
"from": "из"
89+
}
90+
},
91+
"changeReportsFolder": {
92+
"modalDialog": {
93+
"title": "Изменить папку отчетов",
94+
"buttonLabel": "Выбрать"
95+
}
96+
},
97+
"changeSyncFrequency": {
98+
"title": "Изменить частоту синхронизации",
99+
"timeFormatModalDialog": {
100+
"title": "Установить формат времени",
101+
"confirmButtonText": "OK",
102+
"cancelButtonText": "Отмена",
103+
"inputOptions": {
104+
"mins": "Мин.",
105+
"hours": "Часы",
106+
"days": "Дни"
107+
}
108+
},
109+
"timeModalDialog": {
110+
"title": "Установить частоту синхронизации",
111+
"confirmButtonText": "OK",
112+
"cancelButtonText": "Отмена"
113+
}
114+
},
115+
"enforceMacOSAppLocation": {
116+
"appLocationModalDialog": {
117+
"message": "Переместить в папку Приложения?",
118+
"detail": "{{productName}} должен находиться в папке Приложения для корректной работы",
119+
"confirmButtonText": "Переместить в папку Приложения",
120+
"cancelButtonText": "Выйти из {{productName}}"
121+
},
122+
"loadingWindow": {
123+
"description": "Перемещение приложения..."
124+
},
125+
"appRunningModalDialog": {
126+
"message": "В настоящее время запущена другая версия {{productName}}. Закройте ее, затем снова запустите эту версию приложения",
127+
"confirmButtonText": "OK"
128+
}
129+
}
4130
},
5131
"menu": {
6132
"macMainSubmenu": {
File renamed without changes.

index.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,10 @@ try {
1111
process.env[key] = val
1212
}
1313
} catch (err) {}
14+
try {
15+
// Uses only in dev mode as dotenv is added into dev deps
16+
require('dotenv').config({ override: true })
17+
} catch (err) {}
1418

1519
const { app } = require('electron')
1620
require('./src/i18next')

0 commit comments

Comments
 (0)