mirror of
https://github.com/wownero/wowlet.git
synced 2026-10-17 15:21:30 +02:00
2.7 KiB
2.7 KiB
Release process
- Before a minor release:
- Update
src/assets/restore_heights_monero_{mainnet,stagenet}.txt- To obtain values, run
contrib/generate-restore-heights/heights.py
- To obtain values, run
- Update
m_defaultPoolsinsrc/widgets/XMRigWidget.h - Update default node lists in
src/assets/nodes.json - Bump
openssl,qt,tor_*packages incontrib/depends/packages
- Update
- Update
src/assets/ack.txt - Update
SOURCE_DATE_EPOCHincontrib/guix/guix-build - Update the version number in
CMakeLists.txt- A hardfork-ready release must bump major version
- Create an annotated tag (
git tag x.x.x -a)- Tag must match version in
CMakeLists.txt - Only commits that update the version number in
CMakeLists.txtmay be tagged
- Tag must match version in
- Push the master branch and tags
git push --tags origin master
- Run
guixbuilds in a clean repo:-
git clone https://github.com/feather-wallet/feather.git cd feather git checkout <TAG> git submodule update --init --recursive mkdir contrib/depends/SDKs tar -C contrib/depends/SDKs -xaf /path/to/Xcode-<foo>-<bar>-extracted-SDK-with-libcxx-headers.tar.gz ./contrib/guix/guix-build - To obtain
Xcode-<foo>-<bar>-extracted-SDK-with-libcxx-headers.tar.gzfollow the instructions incontrib/macdeploy. - Use at least two machines to verify that the builds are reproducible:
cd guix-build-x.x.x/output find . -type f -not -name "SHA*" -exec sha256sum {} \; | sort -k2- In absence of a system for verified reproduction, at least one machine should be air-gapped.
- If builds are not reproducible: fix any reproducibility defects and bump patch version. Do not sign or release non-reproducible builds.
- To quickly identify any non-reproducible
dependspackages:cd contrib/depends/built find . -name "*.hash" -exec cat {} \; | sort -k2
-
- Sign release artifacts and hashlists.
- Transfer files in
guix-build-x.x.x/outputto release signing machine - Run
make-release.sh
- Transfer files in
- Update documentation (
feather-wallet/feather-docs) - Update the site (
feather-wallet/feather-site)- Add a changelog in
content/changelog - Update the version number, file sizes and paths in
data/release.json - Upload releases, signatures and signed hashlists.
- Follow the directory structure defined in
MainWindow::onShowUpdateCheck.
- Follow the directory structure defined in
- Make
dependssource files available:make -C contrib/depends download
- Add a changelog in
- Announce release on social media (Reddit, Twitter, irc/Matrix)
- Update websocket servers to notify clients of new release
- Wait up to 7 days to allow for bug reports before major rollout