@ -0,0 +1,58 @@ |
|||
# SilentDragonLite Release Process |
|||
|
|||
## High-Level Philosophy |
|||
|
|||
Beware of making high-risk changes too close to a new release, because they will not get as much testing as they should. Don't merge large branches which haven't undergone lots of testing just before a release. |
|||
|
|||
It is best to keep doc/relnotes/README.md up to date as changes and bug fixes are made. It's more work to summarize all changes and bugfixes just before the release. |
|||
|
|||
## Check for changes on master that should be on dev |
|||
|
|||
See https://git.hush.is/hush/hush3/src/branch/master/doc/release-process.md#check-for-changes-on-master-that-should-be-on-dev , there is no sense repeating the exact same thing here. |
|||
|
|||
SD+SDL very often has merge conflicts in generated translation files, because QT embeds line numbers in XML. |
|||
Read how to deal with them efficiently here: https://git.hush.is/hush/SilentDragon/src/branch/dev/doc/release-process.md#dealing-with-merge-conflicts |
|||
|
|||
## Git Issues |
|||
|
|||
Look for Git issues that should be fixed in the next release: https://git.hush.is/hush/SilentDragonLite/issues Especially low-risk and simple things and like documentation changes and improvements to error messages. Take note that changing strings in the source code, such as adding a new string or changing an existing one, will affect translations. |
|||
|
|||
## Translations |
|||
|
|||
... |
|||
|
|||
``` |
|||
# update generated translation data |
|||
./build.sh linguist |
|||
git commit -am "update translations" |
|||
git push |
|||
``` |
|||
|
|||
## Adding Checkpoints |
|||
|
|||
Adding checkpoints make SDL sync much faster, especially for brand new wallets. If there are no recent checkpoints, |
|||
when a user makes a new wallet, it will sync from a block far in the past, which wastes time, bandwidth and CPU resources. To add a checkpoint , they are added to the file `lib/src/lightclient/checkpoints.rs` in the silentdragonlite-cli repo, and then the dependency on silentdragonlite-cli is updated in this SDL repo. Here is an example commit that updates checkpoints: |
|||
|
|||
https://git.hush.is/hush/silentdragonlite-cli/commit/ef477f152e1a8bb8a5f7883a99e2a74a6f9eeb0b |
|||
|
|||
To actually generate the checkpoint data, use the `sdl_checkpoints.pl` script in the hush3 repo: https://git.hush.is/hush/hush3/src/branch/master/contrib/sdl_checkpoints.pl . It uses the `getblockmerkletree` RPC to get the merkle tree data for a block height. It prints the data out in the format that checkpoints.rs wants it in, you simply need to copy and paste the output into the checkpoints.rs file. Once the data is updated in silentdragonlite-cli checkpoints.rs file, the file `lib/Cargo.toml` must be updated in this repo, and point to the commit id of the updated data. Once you update the manually-edited `Cargo.toml` you must run `cargo update` to update the generated `Cargo.lock` file. See https://doc.rust-lang.org/cargo/commands/cargo-update.html for more info. Once both files are updates, commit and push. |
|||
|
|||
--- |
|||
|
|||
To fix `error: failed to select a version for the requirement 'aes = "^0.3"'` add the following to `.cargo/config.toml`: |
|||
|
|||
``` |
|||
[source.crates-io] |
|||
replace-with = "vendored-sources" |
|||
|
|||
[source.vendored-sources] |
|||
directory = "vendor" |
|||
``` |
|||
|
|||
To update the file run `cargo vendor` as was mentioned in https://git.hush.is/hush/SilentDragonLite/issues/91. |
|||
|
|||
--- |
|||
|
|||
## Release process |
|||
|
|||
... |
@ -0,0 +1,33 @@ |
|||
# SilentDragonLite v1.5.3 "Mythical Coelacanth" |
|||
|
|||
* Change lite server after sending a tx for improved privacy: https://git.hush.is/hush/SilentDragonLite/commit/a8fc12e0e2b2324db21407f4848f2d4aa59f4575. |
|||
* Update silentdragonlite-cli dependency, this makes syncing new wallets drastically faster: https://git.hush.is/hush/SilentDragonLite/commit/670bc598265f70b7140af4b8287ddcf28a6a6a04. |
|||
* Add backend servers `lite.hushpool.is` and `lite2.hushpool.is`: https://git.hush.is/hush/SilentDragonLite/commit/6c5ffca05615b21ea3651897f108eb576ecc07a8, https://git.hush.is/hush/SilentDragonLite/commit/1a7af9682c2bb42959d0a8e0c826477f1ee79c95. |
|||
* Add backend servers `poop.granitefone.me` and `wtfistheinternet.hush.is`: https://git.hush.is/hush/SilentDragonLite/commit/8a5c8e4898aac993736a150f77c880a3b6c153f8, https://git.hush.is/hush/SilentDragonLite/commit/5427d400e406915562aa285bbc3bb325092672c7. |
|||
* Add backend servers `lite.myhush.org` and `lite.hush.community`: https://git.hush.is/hush/SilentDragonLite/commit/c0fe5d281cdd21da6f55d0fc300842ab4f729c22 |
|||
* Remove sprout code and unused migration ui: https://git.hush.is/hush/SilentDragonLite/commit/6cab5f68f9b2c59b23ae590515ed802abe7d08e7, https://git.hush.is/hush/SilentDragonLite/commit/3f9fc49207c2455dad857f76984fef5ba35560a9. |
|||
* Fix cancelEvent warning and better logging and error checking, fix some compiler warnings: https://git.hush.is/hush/SilentDragonLite/commit/5f8babd5a192f0f7a30b2b22321c9919fba67187, https://git.hush.is/hush/SilentDragonLite/commit/cbc77e9d58c4808297f63c6da1950ba9a5945b2c. |
|||
* Fix various bugs in the New Wallet Wizard: https://git.hush.is/hush/SilentDragonLite/commit/7649418a7b52c6452726ba047c8039eb90a79714, https://git.hush.is/hush/SilentDragonLite/commit/ff8692fa391ccb6ea889002a6fff14419a5e68c6, https://git.hush.is/hush/SilentDragonLite/commit/5825b30e71847663fa2666f629c598c781b1480d. |
|||
* Ignore leading/trailing spaces in wallet birthday when importing a seed: https://git.hush.is/hush/SilentDragonLite/commit/9e8e95200c80cdc9280d406d935dbe9074412a9c. |
|||
* Welcome screen fix: https://git.hush.is/hush/SilentDragonLite/commit/1f7b8186f06fe6807e107b0ebe5e24c3551a54fd, https://git.hush.is/hush/SilentDragonLite/commit/7398c70e2b9f592310e8727f5c9542ccbcb933a9, https://git.hush.is/hush/SilentDragonLite/commit/7398c70e2b9f592310e8727f5c9542ccbcb933a9. |
|||
* Show QT Version in About screen: https://git.hush.is/hush/SilentDragonLite/commit/825e50b2ea0a1ce9be9bd78bff784c4790cb11e5. |
|||
* Removed confusing text about mining: https://git.hush.is/hush/SilentDragonLite/commit/4aeab433a46437ee42b8852c3f455bcae63065e6. |
|||
* Update translations for Spanish, Russian and Belarusian languages: https://git.hush.is/hush/SilentDragonLite/commit/aabb8c5f292d11fbb73f007dda6651928de63d63, https://git.hush.is/hush/SilentDragonLite/commit/fc3c445f219532440b262721d6bc52f251e20b5e, https://git.hush.is/hush/SilentDragonLite/commit/19e12ba5a6e17264873e4ed084391bb13c30f475. |
|||
* Add Polish language: https://git.hush.is/hush/SilentDragonLite/commit/a1bb19da8d3242cd1acd80acaaecee8a1979a6dd, https://git.hush.is/hush/SilentDragonLite/commit/78806743b665069d0f65d54d6c69edbec2c89de4. |
|||
* Memo stuff: https://git.hush.is/hush/SilentDragonLite/commit/25fab30e1dadefdb93f634692d5ff11f10162f0b, https://git.hush.is/hush/SilentDragonLite/commit/fc3f4ce99b813b57e1a81cf053242ccd17ab13d8, https://git.hush.is/hush/SilentDragonLite/commit/fc3f4ce99b813b57e1a81cf053242ccd17ab13d8, https://git.hush.is/hush/SilentDragonLite/commit/fc3f4ce99b813b57e1a81cf053242ccd17ab13d8. |
|||
* Fix no connection status on sync: https://git.hush.is/hush/SilentDragonLite/commit/e179e723f5d6243e74a432273da7ea73893fe174. |
|||
* Try to avoid coredumping if zrpc object doesn't exist, which can happen if backend server is misbehaving: https://git.hush.is/hush/SilentDragonLite/commit/fd2fb3757add1d407bf9b8a46652712b9ca88fa7, https://git.hush.is/hush/SilentDragonLite/commit/42b5d182ee639933a8dd639f12f5c99e66f55a63. |
|||
* Add debugging: https://git.hush.is/hush/SilentDragonLite/commit/f872c0af6b3a8c6116c580cf9883ac21e14b4d6b, https://git.hush.is/hush/SilentDragonLite/commit/760729f1b1833e4a4fdb398abfed09e405c633ff. |
|||
* Add rustc, cargo and libsodium checks: https://git.hush.is/hush/SilentDragonLite/commit/e6d3c8db51752179e630ab271eba4eea53dd2ac2, https://git.hush.is/hush/SilentDragonLite/commit/fc474d797dc170126a9451d4336bad3d36101cf4. |
|||
* Update graphics: https://git.hush.is/hush/SilentDragonLite/commit/69ea9ace50de72593c86be7f54871130631c3ba1, https://git.hush.is/hush/SilentDragonLite/commit/fe15384c10783e061a41165ea3fd82b55bb932de. |
|||
* Less Microsoft: https://git.hush.is/hush/SilentDragonLite/commit/b0d6aa3285706b50b233a8b8c523b9f2899a272f. |
|||
* Windows binary was provided. (in progress) |
|||
* Linux binary and debian package were provided. (in progress) |
|||
|
|||
# SilentDragonLite v1.5.2 "Zany Zulu" |
|||
|
|||
* Fixes connection problems for older versions |
|||
* Updated one of the community servers to new domain: lite.hush.land |
|||
* Fix bug where trailing slash on server name crashes SDL |
|||
* Improved error-handling of invalid data at libsodium layer |
|||
* Avoid showing corrupted ciphertext in GUI |
@ -1,2 +0,0 @@ |
|||
break FileSystem::readContactsOldFormat |
|||
|
After Width: | Height: | Size: 10 KiB |
Before Width: | Height: | Size: 68 KiB |
Before Width: | Height: | Size: 92 KiB |
Before Width: | Height: | Size: 106 KiB |
Before Width: | Height: | Size: 57 KiB |
Before Width: | Height: | Size: 52 KiB |
Before Width: | Height: | Size: 38 KiB |
Before Width: | Height: | Size: 45 KiB |
Before Width: | Height: | Size: 140 KiB |
Before Width: | Height: | Size: 82 KiB |
@ -0,0 +1,114 @@ |
|||
QWidget, QMainWindow, QMenuBar, QMenu, QDialog, QTabWidget, QTableView, QScrollArea, QGroupBox, QPlainTextEdit, QLineEdit, QLabel, MainWindow { |
|||
background-color: #232834; |
|||
color: #91a4b8; |
|||
} |
|||
QTabWidget QTabBar::tab { |
|||
padding-left:20px; |
|||
padding-right:20px; |
|||
padding-top:5px; |
|||
padding-bottom:5px; |
|||
border: 1px solid #343F4B; |
|||
background-color:qlineargradient(x1: 0, y1: 0, x2: 0, y2: 0.25, stop: 0 #343F4B, stop: 1 #232834); |
|||
} |
|||
QTabWidget QTabBar::tab:selected { |
|||
min-height: 10px; |
|||
background-color:qlineargradient(x1: 0, y1: 0, x2: 0, y2: 0.25, stop: 0 #343F4B, stop: 1 #232834); |
|||
color:#91a4b8; |
|||
border: 1px ridge #91a4b8; |
|||
} |
|||
QTabWidget QTabBar::tab:hover { |
|||
background-color:qlineargradient(x1: 0, y1: 0, x2: 0, y2: 0.25, stop: 0 #343F4B, stop: 1 #232834); |
|||
color:#91a4b8; |
|||
border: 1px ridge #91a4b8; |
|||
min-height: 20px |
|||
} |
|||
QHeaderView { |
|||
/* Table Header */ |
|||
background-color:#232834; |
|||
} |
|||
QHeaderView::section { |
|||
/* Table Header Sections */ |
|||
qproperty-alignment:center; |
|||
background-color:qlineargradient(x1: 0, y1: 0, x2: 0, y2: 0.25, stop: 0 #343F4B, stop: 1 #232834); |
|||
color:#91a4b8; |
|||
min-height:25px; |
|||
font-weight:bold; |
|||
font-size:11px; |
|||
outline:0; |
|||
border:1px solid #343F4B; |
|||
border-right:1px solid #91a4b8; |
|||
border-left:1px solid #91a4b8; |
|||
padding-left:5px; |
|||
padding-right:5px; |
|||
padding-top:2px; |
|||
padding-bottom:2px; |
|||
} |
|||
QHeaderView::section:last { |
|||
border-right: 0px solid #d7d7d7; |
|||
} |
|||
QScrollArea { |
|||
background:transparent; |
|||
border:0px; |
|||
} |
|||
QTableView { |
|||
/* Table - has to be selected as a class otherwise it throws off QCalendarWidget */ |
|||
background:#232834; |
|||
} |
|||
QTableView::item { |
|||
/* Table Item */ |
|||
background-color:#232834; |
|||
border:1px solid #91a4b8; |
|||
font-size:12px; |
|||
} |
|||
QTableView::item:selected { |
|||
/* Table Item Selected */ |
|||
background-color:#91a4b8; |
|||
color:#232834; |
|||
} |
|||
QMenuBar { |
|||
background-color:qlineargradient(x1: 0, y1: 0, x2: 0, y2: 0.25, stop: 0 #343F4B, stop: 1 #232834); |
|||
color: #91a4b8; |
|||
} |
|||
QMenuBar::item { |
|||
background-color:qlineargradient(x1: 0, y1: 0, x2: 0, y2: 0.25, stop: 0 #343F4B, stop: 1 #232834); |
|||
color: #91a4b8; |
|||
} |
|||
QMenuBar::item:selected { |
|||
background-color:qlineargradient(x1: 0, y1: 0, x2: 0, y2: 0.25, stop: 0 #343F4B, stop: 1 #232834); |
|||
} |
|||
QPushButton#startmining { |
|||
background-color: #343F4B; |
|||
border-color: #91A4B8; |
|||
padding: 10px; |
|||
} |
|||
QPushButton#startmining:hover { |
|||
background-color: #232834; |
|||
} |
|||
QPushButton#startmining:pressed { |
|||
background-color: #232834; |
|||
} |
|||
QPushButton#startmining:disabled { |
|||
background-color: #232834; |
|||
} |
|||
QPushButton#stopmining { |
|||
background-color: #343F4B; |
|||
border-color: #91A4B8; |
|||
padding: 10px; |
|||
margin-top: 7px; |
|||
} |
|||
QPushButton#stopmining:hover { |
|||
background-color: #232834; |
|||
} |
|||
QPushButton#stopmining:pressed { |
|||
background-color: #232834; |
|||
} |
|||
QPushButton#stopmining:disabled { |
|||
background-color: #232834; |
|||
} |
|||
QComboBox#genproclimit{ |
|||
font-size: 24px; |
|||
height: 40px; |
|||
} |
|||
QMenu::item:selected{ |
|||
background-color: #343F4B |
|||
} |
Before Width: | Height: | Size: 174 KiB |
After Width: | Height: | Size: 87 KiB |
Before Width: | Height: | Size: 63 KiB After Width: | Height: | Size: 19 KiB |
After Width: | Height: | Size: 43 KiB |
After Width: | Height: | Size: 1.2 KiB |
After Width: | Height: | Size: 1.2 KiB |
Before Width: | Height: | Size: 18 KiB After Width: | Height: | Size: 8.3 KiB |
After Width: | Height: | Size: 119 KiB |
After Width: | Height: | Size: 1.7 KiB |
Before Width: | Height: | Size: 4.1 KiB After Width: | Height: | Size: 1.7 KiB |
After Width: | Height: | Size: 1.6 KiB |
After Width: | Height: | Size: 1.3 KiB |
After Width: | Height: | Size: 1.6 KiB |
After Width: | Height: | Size: 1.4 KiB |
After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 1.6 KiB |
After Width: | Height: | Size: 1.7 KiB |
After Width: | Height: | Size: 1.5 KiB |
After Width: | Height: | Size: 1.7 KiB |
After Width: | Height: | Size: 2.0 KiB |
After Width: | Height: | Size: 2.7 KiB |
Before Width: | Height: | Size: 67 KiB After Width: | Height: | Size: 79 KiB |
@ -1,4 +1,4 @@ |
|||
#!/bin/bash |
|||
# Copyright 2019-2021 The Hush Developers |
|||
# Copyright 2019-2023 The Hush Developers |
|||
|
|||
./build.sh && ./SilentDragonLite |
|||
|
@ -1,3 +1,3 @@ |
|||
// Copyright 2019-2021 The Hush developers
|
|||
// Copyright 2019-2023 The Hush developers
|
|||
// Released under the GPLv3
|
|||
#include "ContactRequestChatItem.h" |
|||
|
@ -0,0 +1,20 @@ |
|||
// Copyright 2019-2022 The Hush developers
|
|||
// Released under the GPLv3
|
|||
#ifndef GUICONSTANTS_H |
|||
#define GUICONSTANTS_H |
|||
|
|||
// Generic colors
|
|||
#define COLOR_BLACK QColor(0, 0, 0) |
|||
#define COLOR_WHITE QColor(255, 255, 255) |
|||
#define COLOR_UNCONFIRMED_TX QColor(255, 0, 0) |
|||
#define COLOR_DRAGONX_TEXT QColor(145, 164, 184) |
|||
|
|||
// Theme background colors
|
|||
#define COLOR_DEFAULT_BG QColor(229, 229, 229) |
|||
#define COLOR_BLUE_BG QColor(229, 229, 229) |
|||
#define COLOR_LIGHT_BG QColor(218, 218, 218) |
|||
#define COLOR_DARK_BG QColor(48, 51, 53) |
|||
#define COLOR_MIDNIGHT_BG QColor(17, 17, 17) |
|||
#define COLOR_DRAGONX_BG QColor(35, 40, 52) |
|||
|
|||
#endif // GUICONSTANTS_H
|
@ -1,139 +0,0 @@ |
|||
<?xml version="1.0" encoding="UTF-8"?> |
|||
<ui version="4.0"> |
|||
<class>MigrationDialog</class> |
|||
<widget class="QDialog" name="MigrationDialog"> |
|||
<property name="geometry"> |
|||
<rect> |
|||
<x>0</x> |
|||
<y>0</y> |
|||
<width>511</width> |
|||
<height>498</height> |
|||
</rect> |
|||
</property> |
|||
<property name="windowTitle"> |
|||
<string>Migration Turnstile</string> |
|||
</property> |
|||
<layout class="QGridLayout" name="gridLayout"> |
|||
<item row="9" column="0" colspan="2"> |
|||
<widget class="QDialogButtonBox" name="buttonBox"> |
|||
<property name="orientation"> |
|||
<enum>Qt::Horizontal</enum> |
|||
</property> |
|||
<property name="standardButtons"> |
|||
<set>QDialogButtonBox::Cancel|QDialogButtonBox::Ok</set> |
|||
</property> |
|||
</widget> |
|||
</item> |
|||
<item row="7" column="0" colspan="2"> |
|||
<widget class="QGroupBox" name="groupBox"> |
|||
<property name="title"> |
|||
<string>Migration History</string> |
|||
</property> |
|||
<layout class="QGridLayout" name="gridLayout_2"> |
|||
<item row="2" column="1"> |
|||
<widget class="QLabel" name="label_4"> |
|||
<property name="text"> |
|||
<string>Migrated Amount</string> |
|||
</property> |
|||
</widget> |
|||
</item> |
|||
<item row="4" column="1" colspan="2"> |
|||
<widget class="QTableView" name="tblTxids"> |
|||
<attribute name="horizontalHeaderStretchLastSection"> |
|||
<bool>true</bool> |
|||
</attribute> |
|||
</widget> |
|||
</item> |
|||
<item row="0" column="1"> |
|||
<widget class="QLabel" name="label_2"> |
|||
<property name="text"> |
|||
<string>Unmigrated Amount</string> |
|||
</property> |
|||
</widget> |
|||
</item> |
|||
<item row="0" column="2"> |
|||
<widget class="QLabel" name="lblUnMigrated"> |
|||
<property name="text"> |
|||
<string notr="true">TextLabel</string> |
|||
</property> |
|||
</widget> |
|||
</item> |
|||
<item row="2" column="2"> |
|||
<widget class="QLabel" name="lblMigrated"> |
|||
<property name="text"> |
|||
<string notr="true">TextLabel</string> |
|||
</property> |
|||
</widget> |
|||
</item> |
|||
</layout> |
|||
</widget> |
|||
</item> |
|||
<item row="0" column="0" colspan="2"> |
|||
<widget class="QCheckBox" name="chkEnabled"> |
|||
<property name="text"> |
|||
<string>Sprout -> Sapling migration enabled</string> |
|||
</property> |
|||
</widget> |
|||
</item> |
|||
<item row="1" column="0" colspan="2"> |
|||
<widget class="QLabel" name="label"> |
|||
<property name="text"> |
|||
<string>If enabled, hushd will slowly migrate your Sprout shielded funds to your Sapling address. </string> |
|||
</property> |
|||
<property name="wordWrap"> |
|||
<bool>true</bool> |
|||
</property> |
|||
</widget> |
|||
</item> |
|||
<item row="4" column="0" colspan="2"> |
|||
<widget class="Line" name="line"> |
|||
<property name="orientation"> |
|||
<enum>Qt::Horizontal</enum> |
|||
</property> |
|||
</widget> |
|||
</item> |
|||
<item row="2" column="0" colspan="2"> |
|||
<widget class="QLabel" name="lblSaplingAddress"> |
|||
<property name="text"> |
|||
<string notr="true"/> |
|||
</property> |
|||
</widget> |
|||
</item> |
|||
</layout> |
|||
</widget> |
|||
<resources/> |
|||
<connections> |
|||
<connection> |
|||
<sender>buttonBox</sender> |
|||
<signal>accepted()</signal> |
|||
<receiver>MigrationDialog</receiver> |
|||
<slot>accept()</slot> |
|||
<hints> |
|||
<hint type="sourcelabel"> |
|||
<x>248</x> |
|||
<y>254</y> |
|||
</hint> |
|||
<hint type="destinationlabel"> |
|||
<x>157</x> |
|||
<y>274</y> |
|||
</hint> |
|||
</hints> |
|||
</connection> |
|||
<connection> |
|||
<sender>buttonBox</sender> |
|||
<signal>rejected()</signal> |
|||
<receiver>MigrationDialog</receiver> |
|||
<slot>reject()</slot> |
|||
<hints> |
|||
<hint type="sourcelabel"> |
|||
<x>316</x> |
|||
<y>260</y> |
|||
</hint> |
|||
<hint type="destinationlabel"> |
|||
<x>286</x> |
|||
<y>274</y> |
|||
</hint> |
|||
</hints> |
|||
</connection> |
|||
</connections> |
|||
</ui> |
@ -1,72 +0,0 @@ |
|||
<ui version="4.0" > |
|||
<author></author> |
|||
<comment></comment> |
|||
<exportmacro></exportmacro> |
|||
<class>Dialog</class> |
|||
<widget class="QDialog" name="Dialog" > |
|||
<property name="geometry" > |
|||
<rect> |
|||
<x>0</x> |
|||
<y>0</y> |
|||
<width>400</width> |
|||
<height>300</height> |
|||
</rect> |
|||
</property> |
|||
<property name="windowTitle" > |
|||
<string>Dialog</string> |
|||
</property> |
|||
<widget class="QDialogButtonBox" name="buttonBox" > |
|||
<property name="geometry" > |
|||
<rect> |
|||
<x>30</x> |
|||
<y>240</y> |
|||
<width>341</width> |
|||
<height>32</height> |
|||
</rect> |
|||
</property> |
|||
<property name="orientation" > |
|||
<enum>Qt::Horizontal</enum> |
|||
</property> |
|||
<property name="standardButtons" > |
|||
<set>QDialogButtonBox::Cancel|QDialogButtonBox::Ok</set> |
|||
</property> |
|||
</widget> |
|||
</widget> |
|||
<pixmapfunction></pixmapfunction> |
|||
<resources/> |
|||
<connections> |
|||
<connection> |
|||
<sender>buttonBox</sender> |
|||
<signal>accepted()</signal> |
|||
<receiver>Dialog</receiver> |
|||
<slot>accept()</slot> |
|||
<hints> |
|||
<hint type="sourcelabel" > |
|||
<x>248</x> |
|||
<y>254</y> |
|||
</hint> |
|||
<hint type="destinationlabel" > |
|||
<x>157</x> |
|||
<y>274</y> |
|||
</hint> |
|||
</hints> |
|||
</connection> |
|||
<connection> |
|||
<sender>buttonBox</sender> |
|||
<signal>rejected()</signal> |
|||
<receiver>Dialog</receiver> |
|||
<slot>reject()</slot> |
|||
<hints> |
|||
<hint type="sourcelabel" > |
|||
<x>316</x> |
|||
<y>260</y> |
|||
</hint> |
|||
<hint type="destinationlabel" > |
|||
<x>286</x> |
|||
<y>274</y> |
|||
</hint> |
|||
</hints> |
|||
</connection> |
|||
</connections> |
|||
</ui> |
|||
|
@ -0,0 +1,19 @@ |
|||
#!/bin/bash |
|||
|
|||
echo -n AR: ;grep unfinished silentdragonlite_ar.ts | wc -l |
|||
echo -n BE: ;grep unfinished silentdragonlite_be.ts | wc -l |
|||
echo -n DE: ;grep unfinished silentdragonlite_de.ts | wc -l |
|||
echo -n ES: ;grep unfinished silentdragonlite_es.ts | wc -l |
|||
echo -n FA: ;grep unfinished silentdragonlite_fa.ts | wc -l |
|||
echo -n FR: ;grep unfinished silentdragonlite_fr.ts | wc -l |
|||
echo -n HR: ;grep unfinished silentdragonlite_hr.ts | wc -l |
|||
echo -n ID: ;grep unfinished silentdragonlite_id.ts | wc -l |
|||
echo -n IT: ;grep unfinished silentdragonlite_it.ts | wc -l |
|||
echo -n NL: ;grep unfinished silentdragonlite_nl.ts | wc -l |
|||
echo -n PT: ;grep unfinished silentdragonlite_pt.ts | wc -l |
|||
echo -n RO: ;grep unfinished silentdragonlite_ro.ts | wc -l |
|||
echo -n RU: ;grep unfinished silentdragonlite_ru.ts | wc -l |
|||
echo -n SR: ;grep unfinished silentdragonlite_sr.ts | wc -l |
|||
echo -n TR: ;grep unfinished silentdragonlite_tr.ts | wc -l |
|||
echo -n UD: ;grep unfinished silentdragonlite_ud.ts | wc -l |
|||
echo -n ZH: ;grep unfinished silentdragonlite_zh.ts | wc -l |
@ -1,3 +1,3 @@ |
|||
// Copyright 2019-2021 The Hush developers
|
|||
// Copyright 2019-2023 The Hush developers
|
|||
// Released under the GPLv3
|
|||
#define APP_VERSION "1.5.2" |
|||
#define APP_VERSION "1.5.3" |
|||
|
@ -0,0 +1,42 @@ |
|||
#!/usr/bin/perl |
|||
# Copyright (c) 2016-2023 The Hush developers |
|||
# Distributed under the GPLv3 software license, see the accompanying |
|||
# file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html |
|||
|
|||
use strict; |
|||
use warnings; |
|||
use autodie; |
|||
use Data::Dumper; |
|||
my ($find,$replace,@files) = @ARGV; |
|||
|
|||
usage() unless $find && defined $replace; |
|||
unless( @files ) { |
|||
printf "No files to replace stuff!"; |
|||
exit 0; |
|||
} |
|||
|
|||
my $fh; |
|||
print "Going to replace $find with $replace in " . scalar(@files) . " files\n"; |
|||
|
|||
for my $file (@files) { |
|||
if (-d $file) { |
|||
printf "Skipping directory $file\n"; |
|||
next; |
|||
} |
|||
unless ( -e $file ) { |
|||
printf "$file does not exist!\n"; |
|||
next; |
|||
} |
|||
open $fh, '<', $file; |
|||
my $content = join('',<$fh>); |
|||
$content =~ s/\Q$find\E/$replace/g; |
|||
close $fh; |
|||
|
|||
open $fh, '>', $file; |
|||
print $fh $content; |
|||
close $fh; |
|||
} |
|||
|
|||
sub usage { |
|||
die "$0 stringtofind stringtoreplace file [more files...]\n"; |
|||
} |
@ -0,0 +1,14 @@ |
|||
#!/usr/bin/env bash |
|||
# Copyright (c) 2016-2023 The Hush developers |
|||
# Released under the GPLv3 |
|||
|
|||
# Usage: update-copyrights.sh 2021 2022 |
|||
# TODO: verify $1 and $2 exist |
|||
# TODO: verify ack and xargs exist on this system |
|||
|
|||
# This update comments in source code |
|||
ack -l -i "20..-20..*Hush dev" | xargs ./util/replace.pl -$1 -$2 |
|||
|
|||
# This updates the define which is used by C++ help output |
|||
./util/replace.pl "COPYRIGHT_YEAR $1" "COPYRIGHT_YEAR $2" src/clientversion.h |
|||
./util/replace.pl "COPYRIGHT_YEAR, $1" "COPYRIGHT_YEAR, $2" configure.ac |
@ -0,0 +1,38 @@ |
|||
#!/bin/bash |
|||
# Copyright 2019-2023 The Hush Developers |
|||
|
|||
VERSION=$(cat src/version.h |cut -d\" -f2) |
|||
echo "Compiling SilentDragonLite $VERSION .exe with $JOBS threads..." |
|||
CONF=silentdragon-lite.pro |
|||
|
|||
set -e |
|||
echo 'source $HOME/.cargo/env' >> $HOME/.bashrc |
|||
CC_x86_64_pc_windows_gnu="x86_64-w64-mingw32.static-gcc" |
|||
PATH="/home/$USER/git/mxe/usr/bin:${PATH}" |
|||
|
|||
if [ ! -d "release" ] |
|||
then |
|||
mkdir release |
|||
fi |
|||
|
|||
cp src/precompiled.h release/ |
|||
qbuild () { |
|||
/home/$USER/git/mxe/usr/bin/x86_64-w64-mingw32.static-qmake-qt5 $CONF CONFIG+=release |
|||
|
|||
#lupdate $CONF |
|||
#lrelease $CONF |
|||
make -j2 |
|||
} |
|||
|
|||
if [ "$1" == "clean" ]; then |
|||
make clean |
|||
elif [ "$1" == "linguist" ]; then |
|||
lupdate $CONF |
|||
lrelease $CONF |
|||
elif [ "$1" == "cleanbuild" ]; then |
|||
make clean |
|||
qbuild |
|||
else |
|||
qbuild |
|||
fi |
|||
|