Commit Graph

292 Commits

Author SHA1 Message Date
Gustavo Valverde bf6832f53a
fix: remove reference to old `zealous-zebra` project (#7303)
* fix: remove reference to old `zealous-zebra` project

* fix(build): use `edge` tag from our repositories
2023-08-08 10:24:48 +00:00
Marek d725d29a58
add(Docker): Docs for mining with Docker (#7179)
* Add docs for mining with Docker

* Refactor the docs for mining with Docker

* Add a note on syncing
2023-07-25 22:51:05 +00:00
Arya a6bdb480bb
Release Zebra v1.1.0 (#7259)
* Updates dependencies

* Dedups bindgen, removes windows-sys from deny.toml

* Updates checkpoints

* chore: Release

* Adds changelog draft

* updates estimated_release_height

* Updates changelog

* Apply suggestions from code review

Co-authored-by: teor <teor@riseup.net>

---------

Co-authored-by: teor <teor@riseup.net>
2023-07-22 01:18:09 +00:00
teor 512dd9bc5d
change(doc): Document how to upgrade the database format (#7261)
* Move the state format into a new doc

* Add upgrade instructions

* Link to the format upgrade docs from the upgrade code

* Fix typo

Co-authored-by: Marek <mail@marek.onl>

---------

Co-authored-by: Marek <mail@marek.onl>
2023-07-20 01:50:25 +00:00
teor 9b32ab7878
change(release): Update release script and check it in CI (#7128)
* Activate production features on docs.rs

* Make version requirements more flexible to work around unpublished versions

* Remove a redundant feature requirement that causes publishing issues

* fix release auto-replacement format

* cargo release replace --verbose --execute --package zebrad

* Add a missing 1.0.1 changelog entry

* Fix incorrect commands in the release checklist

* Check the crates.io release script in CI, to avoid release failures

* Fix release date in changelog

* Fix workflow typo

* Add --no-confirm to the workflow

* Fix outdated version in release check command

* After the release, add a "remove do-not-merge" step

* Set git identity before committing

* Don't overwrite tweaked versions on upgrade

* cargo release version doesn't support --dependent-version

* Update the same commands in the release checklist

* Commit to git after each change

* And in the checklist

* Add cargo release config

* In CI, allow any branch and provide a fake previous tag name

* Remove redundant `cargo release commit`

* Use a simpler release version process

* Start simplifying the release dry run in CI

* Fix a cargo dependency lint

* just skip the failing crates for now

* Fix the release checklist to match CI

* Use the latest versions of all Zebra dependencies
2023-07-04 19:01:11 +00:00
Alfredo Garcia 55d58edb8f
fix(docs): Add a few more details to metrics book page (#7096)
* Add some more info to metrics.md

* add image
2023-07-03 05:38:56 +00:00
teor 56a76385f0
git ls-tree --full-tree -r --name-only HEAD | xargs sed -i -e 's/router_verifier/block_verifier_router/g' (#6998)
cargo fmt --all
2023-06-20 07:11:04 +00:00
teor 795d40a003
change(readme): Install from crates.io not git in the README, automate release version replacements (#6977)
* Install from crates.io not git

* Move git instructions to install.md

* Add versions back to install.md

* Automate release replacements in Cargo.toml

* Re-add h4 to re-enable links to those sections

* Remove release replacements from zebra/Cargo.toml

* Add release replacements to zebrad/Cargo.toml

* Put the toml table in the right place

* Try another place in Cargo.toml

* Let's try again without "package."

* Remove duplicate release metadata from Cargo.toml

* Apply suggestions from code review

Co-authored-by: Marek <mail@marek.onl>

---------

Co-authored-by: Marek <mail@marek.onl>
2023-06-20 07:10:40 +00:00
teor 98478c3b75
fix(doc): Add `fastmod --hidden` to mass-renames.md (#6913)
* Add `fastmod --hidden` to mass-renames.md

* Do multiple skip paths

* Do multiple sed renames in the same sed

---------

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2023-06-15 18:35:44 +00:00
teor a50955f722
Move macOS to tier 3 support: no builds (#6965) 2023-06-15 03:08:56 +00:00
Deirdre Connolly fe859bd6a1
Release 1.0.0 (#6877)
* Include zebra-* and tower-fallback versions and paths for tower-batch-control

* Remove versions for dev-dependencise

* fix(legal): Use correct licenses for tower-batch-control and zebra-network (#6927)

* Don't modify whitespace

* Resolve rustdoc and cargo-release warnings

* Bump semver

* Re-up Cargo.lock

* Update README.md

Co-authored-by: teor <teor@riseup.net>

* Update book/src/user/docker.md

Co-authored-by: teor <teor@riseup.net>

* Update 'Future Work' section post stable release

* Add release notes to CHANGELOG.md

* Update CHANGELOG.md

Co-authored-by: teor <teor@riseup.net>

* Remove Docker container change from the changelog

Co-authored-by: teor <teor@riseup.net>

* Point at the appropriate zebra-* crate versions

* Update ESTIMATED_RELEASE_HEIGHT to 2,121,200

* Add CHANGELOG summary of the 1.0.0 release

* Update CHANGELOG.md

* Update CHANGELOG.md

Co-authored-by: teor <teor@riseup.net>

* Bump tower-* beta.* versions and use them

---------

Co-authored-by: teor <teor@riseup.net>
Co-authored-by: Pili Guerra <pili@piliguerra.com>
2023-06-14 04:35:45 +00:00
Pili Guerra 26313fa9fe
Keep links within the zebra book whenever possible instead of going out to github (#6938) 2023-06-13 23:16:56 +00:00
Deirdre Connolly 8bf2c4be3f
change: Rename tower-batch to tower-batch-control (#6907) 2023-06-12 03:59:10 +00:00
teor 0ffa47cc1e
Add instructions for doing mass renames easily (#6865) 2023-06-08 10:50:18 +00:00
Deirdre Connolly 9959a6ce04
Release 1.0.0-rc.9 (#6821)
* Bump semvers

* Update zebra-utils/README.md

* Updated mainnet checkpoints against commit b7029b8

* Add testnet checkpoints from b7029b8

* Bump zebrad rust-version to 1.70

* rust-version 1.68

Co-authored-by: teor <teor@riseup.net>

* Add CHANGELOG for 1.0.0-rc.9

* Bump estimated release height to within june 7th 2023 utc-4

* Add #6801 to CHANGELOG in anticipation

* Update CHANGELOG.md

Co-authored-by: teor <teor@riseup.net>

* Update CHANGELOG.md

Co-authored-by: teor <teor@riseup.net>

* Update CHANGELOG.md

Co-authored-by: teor <teor@riseup.net>

* Update CHANGELOG.md

Co-authored-by: teor <teor@riseup.net>

* Update CHANGELOG.md

Co-authored-by: teor <teor@riseup.net>

* Update breaking changes in 1.0.0-rc.9 changelog

* changelog: move #6801 to Fix

* Update CHANGELOG.md

Co-authored-by: teor <teor@riseup.net>

* Include #6832 in the changelog

* Add missing changes to changelog

* Remove #6801 from known issues in the README

* Use the latest bug template link

---------

Co-authored-by: teor <teor@riseup.net>
2023-06-08 03:44:28 +00:00
Alfredo Garcia eb07bb31d6
rename(state): Rename state verifiers and related code (#6762)
* rename verifiers

* rename `PreparedBlock` to `SemanticallyVerifiedBlock`

* rename `CommitBlock` to `SemanticallyVerifiedBlock`

* rename `FinalizedBlock` to `CheckpointVerifiedBlock`

* rename `CommitFinalizedBlock` to `CommitCheckpointVerifiedBlock`

* rename `FinalizedWithTrees` to `ContextuallyVerifiedBlockWithTrees`

* rename `ContextuallyValidBlock` to `ContextuallyVerifiedBlock`

* change some `finalized` variables or function arguments to `checkpoint_verified`

* fix docs

* document the difference between `CheckpointVerifiedBlock` and `ContextuallyVerifiedBlock`

* fix doc links

* apply suggestions to request

Co-authored-by: Marek <mail@marek.onl>

* apply suggestions to service

Co-authored-by: Marek <mail@marek.onl>

* apply suggestions to finalized_state.rs and write.rs

Co-authored-by: Marek <mail@marek.onl>

* fmt

* change some more variable names

* change a few missing generics

* fix checkpoint log issue

* rename more `prepared` vars `semantically_verified`

* fix test regex

* fix test regex 2

---------

Co-authored-by: Marek <mail@marek.onl>
2023-06-01 12:29:03 +00:00
Marek 0b8e73206f
change(docs): Update User Docs (#6733)
* Move releases info to `Building Zebra`

* Move Zebra use-cases to `Using Zebra`

* Point the links in Zebra use-cases to docs

* Move the contents of `Release Candidates`

* Refactor the `System Requirements` link

* Update the syncing times

* Update notes on performance

* Move data usage to `System Requirements`

* Remove "building Zebra" from lightwalletd docs

I think we can assume people will follow the previous parts of the docs
for how to build Zebra.

* Move lightwalletd details from `README.md` to docs

`README.md` already mentions lightwalletd from the `Using Zebra`
section, and refers the reader to the docs where the details were moved
and refactored.

* Mention `lightwalletd` and mining in Running Zebra

* Move Troubleshooting to its own file

* Move "Improving Performance" to its own file

* Move instructions for ARM to "Installing Zebra"

* Reword the Testnet sync duration description

Co-authored-by: Pili Guerra <mpguerra@users.noreply.github.com>

* Move "Improving Performance" to "Troubleshooting"

* Remove the Testnet unreliability caveat

---------

Co-authored-by: Pili Guerra <mpguerra@users.noreply.github.com>
2023-05-23 13:18:57 +00:00
Marek b871dff396
fix(docs): Fix some inaccuracies in Docker docs (#6723)
* Fix dead links

* Fix the `docker build` command

The `docker build` command requires a `PATH` at its end, otherwise it
doesn't work.

* Remove redundant sections

* Restore & refactor the `Alternatives` subsection

---------

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2023-05-21 19:29:00 +00:00
teor 943d213490
Temporarily delete unused zebra-cli and zebra-client crates (#6726) 2023-05-19 04:45:54 +00:00
Marek 0c1abadd0e
change(docs): Refactor the system requirements (#6697)
* Simplify the summary in the book

* Refactor the system requirements

* Apply suggestions from code review

Co-authored-by: Alfredo Garcia <oxarbitrage@gmail.com>

---------

Co-authored-by: Alfredo Garcia <oxarbitrage@gmail.com>
2023-05-18 21:25:05 +00:00
Pili Guerra 777250ae74
Zebra book additions (#6683) 2023-05-16 23:53:30 +00:00
Alfredo Garcia 01908822f1
v1.0.0-rc.8 release (#6632)
* change versions

* add mainnet and testnet checkpoints

* add changelog

* add estimated height

* Apply suggestions from code review

Co-authored-by: teor <teor@riseup.net>

* cargo update

* rername deprecated function

* fix rustfmt

* update bans

* remove digest as dup dependency

* add dup dependency for all features

---------

Co-authored-by: teor <teor@riseup.net>
2023-05-11 22:15:12 +00:00
Alfredo Garcia 58bd898f5b
feat(zebrad): Refuse to run zebrad when release is too old (#6351)
* refuse to run Zebra if it is too old

* update the release checklist to consider the constants

* bring newline back

* apply new end of support code

* attempt to add tests (not working yet)

* move eos to progress task

* move tests

* add acceptance test (not working)

* fix tests

* change to block height checks (ugly code)

* change warn days

* refactor estimated blocks per day, etc

* move end of support code to its own task

* change test

* fix some docs

* move constants

* remove uneeded conversions

* downgrade tracing

* reduce end of support time, fix ci changing debugs to info again

* update instructions

* add failure messages

* cargo lock update

* unify releaase name constant

* change info msg

* clippy fixes

* add a block explorer

* ignore testnet in end of support task

* change panic to 16 weeks

* add some documentation about end of support

* Tweak docs wording

---------

Co-authored-by: teor <teor@riseup.net>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2023-04-28 14:13:21 +00:00
Arya 9820780a35
v1.0.0-rc.7 release (#6542)
* updates changelog and bumps versions

* updates README.md

* Updates Rust version in readme

* Apply suggestions from code review

Co-authored-by: teor <teor@riseup.net>

* Removes the initial label from entries

* Updates testnet checkpoints

* update mainnet checkpoints

---------

Co-authored-by: teor <teor@riseup.net>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2023-04-19 03:25:51 +00:00
Deirdre Connolly c3273e4a61
v1.0.0-rc.6 release (#6314)
* Package and version bumps

* Updated mainnet checkpoints

* Update test-checkpoints.txt

* Bump zebrad rust-version to 1.68

* update the changelog

* add suggestions

Co-authored-by: teor <teor@riseup.net>

* fix typo

Co-authored-by: Deirdre Connolly <durumcrustulum@gmail.com>

* add suggestions from review

Co-authored-by: teor <teor@riseup.net>

* add suggestion

Co-authored-by: teor <teor@riseup.net>

---------

Co-authored-by: Alfredo Garcia <oxarbitrage@gmail.com>
Co-authored-by: teor <teor@riseup.net>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2023-03-24 01:24:29 +00:00
Alfredo Garcia e59facd1ba
feat(docs): Add elasticsearch section to Zebra book (#6295)
* add elasticsearch section to zebra book

* codespell
2023-03-14 17:06:43 +00:00
teor dde63d27e9
change(docs): Document how to get external PRs to merge (#6252)
* Document how to get external PRs to merge

* Fix typos

Co-authored-by: Marek <mail@marek.onl>

---------

Co-authored-by: Marek <mail@marek.onl>
2023-03-01 11:52:48 +00:00
Pili Guerra 45cbc140c1
Add instructions for mining with s-nomp to Zebra book (#6220)
* Add instructions for mining with s-nomp to Zebra book

* Update book/src/SUMMARY.md

nest under mining

Co-authored-by: Arya <aryasolhi@gmail.com>

* Fixes from review

---------

Co-authored-by: Arya <aryasolhi@gmail.com>
2023-02-27 22:30:37 +00:00
Marek 9d2b912840
Release v1.0.0-rc.5 (#6213)
* Bump updated crates

* Bump crates that depend on updated crates

* Bump the user agent

* Bump `README.md`

* Bump `docker.md`

* Remove closed known issues from "README.md"

* Update `CHANGELOG.md`

* Apply suggestions from code review

Co-authored-by: Arya <aryasolhi@gmail.com>
Co-authored-by: teor <teor@riseup.net>

* Remove the bump of `once_cell` from `CHANGELOG.md`

---------

Co-authored-by: Arya <aryasolhi@gmail.com>
Co-authored-by: teor <teor@riseup.net>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2023-02-24 23:08:16 +00:00
Alfredo Garcia e40a84c6eb
feat(docs): Add mining instructions to the zebra book (#6199)
* add mining section to the zebra book

* Apply suggestions from code review

Co-authored-by: teor <teor@riseup.net>

* add more suggestions from review

---------

Co-authored-by: teor <teor@riseup.net>
2023-02-23 00:12:29 +00:00
teor a835270ff7
Copy detailed mining docs from s-nomp fork to Zebra repository (#6201) 2023-02-22 11:22:49 +00:00
Jack Gavigan fc955152b7
Update zebra-dependencies-for-audit.md (#6141) 2023-02-10 14:20:53 +00:00
teor 4e12a289a6
Update audit scope based on audit-v1.0.0-rc.0 tag (#6109)
* Update audit scope based on audit-v1.0.0-rc.0 branch

* Minor wording fixes and clarifications

Co-authored-by: Arya <aryasolhi@gmail.com>

* Set scope for `reddsa` and explain code movement

* Just base everything on rc.0

* I'm just about to make it into a tag, not a branch

* Make it clearer that the Crates categories are Zebra crates

* Add reddsa and redjubjub

Co-authored-by: Deirdre Connolly <durumcrustulum@gmail.com>

* Fix links to red(jubjub|dsa) signing_key

* Add missing space

* Remove `redjubjub` from "Out of scope"

* Fix formatting

* Make previous audit clearer

* Add missing space

Co-authored-by: Arya <aryasolhi@gmail.com>

---------

Co-authored-by: Arya <aryasolhi@gmail.com>
Co-authored-by: Deirdre Connolly <durumcrustulum@gmail.com>
2023-02-08 00:48:30 +00:00
teor d575e5b40c
fix(README): Fix `lightwalletd` instructions to be compatible with Zebra (#6088)
* Move detailed lightwalletd instructions out of README.md

* Move details from README into the lightwalletd instructions
2023-02-02 03:26:51 +00:00
Alfredo Garcia 9b1d26538a
Release v1.0.0-rc.4 (#6045)
* bump v1.0.0-rc.4

* Add new mainnet and testnet checkpoints generated using zcashd

* make changes to changelog from review

* move item to new section

* change section name

---------

Co-authored-by: teor <teor@riseup.net>
2023-01-31 04:53:27 +00:00
Alfredo Garcia d72211fbbe
feat(zebra-checkpoints): make `zebra-checkpoints` work for zebrad backend (#5894)
* make `zebra-checkpoint` util work with zebra as the backend

* update snapshots

* update documentation

* applies suggestions from code review

* irefactor zebra-checkpoints to work with zebra using deserialization of the raw block

* fix imports and derives

* rename mode to backend

* remove old stuff

* fix docs

Co-authored-by: arya2 <aryasolhi@gmail.com>
2023-01-23 04:50:45 +00:00
Alfredo Garcia de2ed812f6
docs(command): zebra download (#5901)
* document zebra download command

* Apply suggestions from code review

Co-authored-by: Pili Guerra <mpguerra@users.noreply.github.com>
Co-authored-by: teor <teor@riseup.net>

* iremove log

Co-authored-by: Pili Guerra <mpguerra@users.noreply.github.com>
Co-authored-by: teor <teor@riseup.net>
2023-01-19 05:21:19 +00:00
Arya 99cbffbcc0
change(docs): Update 'Design Overview' page of Zebra book (#5892)
* Updates design overview page of book with:
- a simplified graph of service dependencies in design overview
- links to notable blog posts
- removals of some out-of-date text

also corrects issue/pr refs in an rfc

* Updates service dependencies diagram

* Apply suggestions from code review

Co-authored-by: teor <teor@riseup.net>

* updates diagram and adds doc links

* uses opacity to indicate clickability instead of drop shadow

Co-authored-by: teor <teor@riseup.net>
2023-01-10 10:10:45 +00:00
teor 11baba56cb
Release Zebra 1.0.0-rc.3 (#5928)
* Changelog with trivial entries

* Delete trivial entries

* Summarise known issues in README, but don't change the list yet

* Add block timeouts to known issues

* Update the release template to add missing version files

* Bump crate versions

* Add the required Rust version to the release checklist

* Update the Rust version requirement to 1.65, Zebra now uses `let ... else ...`

* Update checkpoints

* Add checkpoints to the CHANGELOG

* Breaking Rust compiler version change

* Clarify the latest stable supported rust version
2023-01-10 03:48:03 +00:00
Deirdre Connolly cc6ff0f422
release(1.0.0-rc.2): updated versions and CHANGELOG.md (#5784)
* release(1.0.0-rc.2): updated versions and CHANGELOG.md

I haven't touched zebra-dependencies-for-audit.md.

* Update CHANGELOG.md

* Update CHANGELOG.md

Co-authored-by: Arya <aryasolhi@gmail.com>

* Update CHANGELOG.md

* Update CHANGELOG.md

* Update CHANGELOG.md

* Update CHANGELOG.md

* Update CHANGELOG.md

* Update CHANGELOG.md

* update 1.0.0-rc.2 date

* Update CHANGELOG.md

* Update CHANGELOG.md

* Update CHANGELOG.md

* Update CHANGELOG.md

* Update CHANGELOG.md

* Update CHANGELOG.md

* Update CHANGELOG.md

* Update CHANGELOG.md

* Update CHANGELOG.md

* Update CHANGELOG.md

* Update CHANGELOG.md

* Update CHANGELOG.md

* Update CHANGELOG.md

* Update CHANGELOG.md

* Update CHANGELOG.md

* Update CHANGELOG.md

Co-authored-by: Arya <aryasolhi@gmail.com>

Co-authored-by: Arya <aryasolhi@gmail.com>
Co-authored-by: teor <teor@riseup.net>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2022-12-06 21:35:44 +00:00
Arya ea21e642dc
Fix typos (#5728)
Co-authored-by: Dimitris Apostolou <dimitris.apostolou@icloud.com>
2022-11-27 22:37:55 +00:00
Pili Guerra 13cd8b9c2c
cleanup(deps): Remove unused `fpe` dependency and cleanup references (#5541)
* Clean up references to fpe that were not removed when we removed orchard code

* Update Cargo.lock

Co-authored-by: Deirdre Connolly <durumcrustulum@gmail.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2022-11-04 09:04:14 +00:00
teor 26d0455d02
fix(doc): Use a more reliable release template branch name and docker command (#5519)
* Fix the branch name in the release template

* Use a docker command with colour and Ctrl-C support

* Make branch name example more readable

* Fix a link typo

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2022-11-03 00:28:46 +00:00
teor e380676937
Use HTTP to clone Zebra (#5529) 2022-11-02 02:42:58 +00:00
Alfredo Garcia f27fa21099
docs(audit): Add a list of Zebra dependencies for the audit (#5395)
* add a list of dependencies for auditors

* change intro

Co-authored-by: teor <teor@riseup.net>

* add zebra-checkpoints to audit

* replace colors in the legend as they don't render in github

* make crypto deps out of the scope

* add a reason to keep rocksdb out of the scope

* add a not of why chrono is out of the scope

* add note for bitvec dep

* move structopt to out of scope

* add zcash_script as partially in scope

* applies suggestion, updates versions, bolds ed25519-zebra

* adds zcash_proofs audit notes

* Splits list of zebra deps into sections for full audits, partial audits, and out of scope.

* Update book/src/dev/zebra-dependencies-for-audit.md

Co-authored-by: teor <teor@riseup.net>

* Update book/src/dev/zebra-dependencies-for-audit.md

* Add missing newline

* Update book/src/dev/zebra-dependencies-for-audit.md

Co-authored-by: teor <teor@riseup.net>

* updates crate versions

* Update zcash_script to 0.1.8

* Only link to the audit version of each crate or file

* Clarify out of scope versions

* Fix source paths

* Fix zcash_script paths

* Improve formatting

* Update zebra-dependencies-for-audit.md

Co-authored-by: teor <teor@riseup.net>
Co-authored-by: arya2 <aryasolhi@gmail.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2022-11-02 02:42:20 +00:00
Gustavo Valverde 4835970bb7
docs: add user documentation on how to use Zebra with docker (#5504)
* docs: add user documentation on how to use Zebra with docker

Motivation:

We don't have a user documentation on how to use/deploy Zebra using our
the Dockerfile available in our repository or were the images are being
hosted

Solution:

Add user documentation explaining how to pull the image from the Docker
Hub or how to build it locally. With extra information on which images
we're hosting and where we're hosting it

* docs(docker): use existing getting started header

* Update book/src/user/docker.md

Co-authored-by: Arya <aryasolhi@gmail.com>

* docs(docker): add build alternative instructions from Docker

* docs: add docker documentation to Rust doc sidebar

* docs: update checklist with docker user documentation

* Update README.md

Co-authored-by: teor <teor@riseup.net>

* Update new refs to rc.1

Co-authored-by: Arya <aryasolhi@gmail.com>
Co-authored-by: teor <teor@riseup.net>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2022-11-01 05:47:37 +00:00
Gustavo Valverde bbbd56d7ce
fix(build): restore Rust stable in builds and beta for CI (#5515)
* Revert "fix(ci): Build zebrad with Rust 1.63 to avoid Zcash parameter download hangs (#5251)"

This reverts commit 9cb6c559f4.

* Revert "Require Rust 1.63 in the README (#5359)"

This reverts commit ee0edef857.

* Revert "Revert "ci(build): re-enable Rust beta tests in ubuntu (#5024)" (#5090)"

This reverts commit 579d6be4e9.
2022-11-01 10:51:29 +10:00
teor 17c0bacca3
add(doc): Add draft audit process, and update some support docs (#5433)
* Document parameter download workaround, particularly for macOS

* Replace outdated build docs with a link to the README

* Remove incorrectly rendered heading links

* Add an initial draft audit process

* Add dependency criteria
2022-10-21 01:20:28 +00:00
Gustavo Valverde 65e9822c43
docs(release): add information on how we tag and release (#5392)
* draft

* docs(release): add information on how we tag and release

* docs(release): remove outdated document

* Apply suggestions from code review

Co-authored-by: teor <teor@riseup.net>

* Remove rough draft analysis of alternatives

Co-authored-by: teor <teor@riseup.net>
2022-10-19 19:31:28 +00:00
Arya a4cb835e12
Release Zebra 1.0.0-rc.0 (#5383)
* Increment Zebra versions

* Initial draft changelog

* Add blog post to the release checklist

* Say "user testing"

Co-authored-by: teor <teor@riseup.net>
2022-10-12 01:17:55 +00:00
Arya de3640ddcc
adds zebra book's CI/CD docs to the sidebar (#5355) 2022-10-06 20:15:16 +00:00
teor 55e5a13fc8
List temporary CI errors that should be retried (#5281) 2022-09-28 13:14:39 +00:00
teor 9a2814a1b2
doc(ci): Explain how to fix Mergify and Zcash parameter download failures (#5240)
* Explain how to find Mergify failures

* Explain how to fix cache errors

* Fix instructions - clear all caches

* Fix which errors need which actions

* Add a newline to appease GitHub markdown renderer

Co-authored-by: Arya <aryasolhi@gmail.com>

Co-authored-by: Arya <aryasolhi@gmail.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2022-09-27 01:32:55 +00:00
teor 9cb6c559f4
fix(ci): Build zebrad with Rust 1.63 to avoid Zcash parameter download hangs (#5251)
* Try running coverage with Rust 1.63

* Run GitHub Actions tests with Rust 1.63

* Change from stable to 1.63 in the patch file

* Use Rust 1.63 to download Zcash parameters

* Use Rust 1.63 to build Docker zebrad images

* Make Rust 1.63 a supported platform, and make stable temporarily unsupported
2022-09-26 12:37:23 +00:00
teor 12d084f6cc
fix(ci): Delete Google Cloud test instances after 3 days (#5192)
* Delete test instances after 3 days

* Use correct delete command, improve shell quoting

* Use sed to provide the correct zone or region

* Fix quoting

* Fix IFS

* Fix IFS for multiple disks

* Document why we can't quote some shell variables

* Document that instances can get deleted

* Fix exact names in deletion docs
2022-09-21 23:16:38 +00:00
teor f8ead710c3
chore: Release Zebra 1.0.0-beta.15 (#5194)
* Initial beta.15 changelog

* Increment Zebra versions and remove known issues

* Document `protoc` dependency for `lightwalletd` tests

* Explain latest sync time

* s/coverate/coverage/

Co-authored-by: Marek <mail@marek.onl>

* Style

Co-authored-by: Marek <mail@marek.onl>

Co-authored-by: Deirdre Connolly <durumcrustulum@gmail.com>
Co-authored-by: Marek <mail@marek.onl>
2022-09-19 21:21:27 +00:00
Pili Guerra 64d984340d
Update release-process.md (#5181)
Fixing some small typos
2022-09-16 16:25:43 +02:00
Gustavo Valverde 085367fc37
docs(release): add versioning and releases information (#4917)
* ci(docs): test `cargo doc` warnings and errors

* ci(docs): remove minimal profile

* ci(docs): revert minimal and fix component name

* ci(docs): try cargo doc alone

* docs(release): add versioning and releases information

* dosc(release): apply suggestions from code review

Co-authored-by: teor <teor@riseup.net>

* docs(release): apply multiple fixes from review

* docs(release): allow more flexibility with release cycles

* Apply suggestions from code review

Co-authored-by: teor <teor@riseup.net>

Co-authored-by: teor <teor@riseup.net>
2022-09-15 02:17:09 +00:00
teor c2514ba64a
fix(doc): Update deny.toml developer docs and file comments (#5151)
* Make deny.toml instructions more specific

* Add documentation and depdendency comments to deny.toml
2022-09-14 19:52:32 +00:00
teor dcbbf444b9
fix(ci): Increase the full sync timeout (#5129)
* Increase the full sync timeout to 28 hours

And put the timeout constant with the rest of them.

* Update developer documentation for the new constant location

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2022-09-13 03:52:23 +00:00
teor 4810f44564
doc(ci): Document how to resolve disk full errors (#5105)
* Document how to resolve disk full errors

* Update to the `main` branch first
2022-09-07 11:16:18 +00:00
teor e4707a6cfd
Explain how Mergify works, and when it can be used (#5100) 2022-09-06 21:47:09 +00:00
teor fec012a006
fix(ci): delete GCP resources, but keep some recent cached state images (#5082)
* Fix delete GCP resources commands

* Don't create a GCP credentials file

* Keep the latest 2 images

* Explain time

* Show the names of disks that are being deleted

* Actually run the image delete steps

* Only delete commit-based instance templates

* Document automated deletion
2022-09-06 02:51:46 +00:00
teor 9d85360243
Explain how to find errors in CI (#5080) 2022-09-05 21:43:24 +00:00
teor 21b1a622e6
fix(deny.toml): Change an exception to the earlier pin-project version (#5070)
* Use the earlier pin-project version in deny.toml

* Change deny.toml instructions to check for updated versions

* Remove trailing whitespace
2022-09-05 20:12:52 +00:00
Alfredo Garcia 5dd3a6ca1a
fix doc render (#5038) 2022-09-02 08:55:37 +00:00
teor edd32a7320
doc(ci): Explain how to resolve duplicate dependency warnings (#5017)
* Explain how to resolve duplicate dependency warnings

* Explain why the errors happen and add the CI job name

* Add extra steps

* Add some examples, tools, and extra steps
2022-09-01 19:13:23 +00:00
Marek c322533125
v1.0.0-beta.14-release (#5006)
* Bump crate versions

* Bump `USER_AGENT`

* Update `README.md`

* Update `install.md`

* Update `CHANGELOG.md`

* Apply suggestions from code review

Co-authored-by: teor <teor@riseup.net>

* Apply a suggestion from code review

Co-authored-by: teor <teor@riseup.net>

* Move the "Networking" section above "Tests"

* Merge PRs that update checkpoints

* Refactor `CHANGELOG.md`

* Add missing PRs to `CHANGELOG.md`

* Apply suggestions from code review

Co-authored-by: teor <teor@riseup.net>

Co-authored-by: teor <teor@riseup.net>
2022-08-31 22:00:46 +00:00
teor 09420d57be
fix(ci): Update mainnet and testnet checkpoints (#4972)
* Update mainnet and testnet checkpoints

* Add instructions for resolving CI sync timeouts

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2022-08-29 02:45:13 +00:00
Gustavo Valverde 8227dabe56
ci(build): deploy long running node instances on release (#4939)
* feat(build): deploy long running instances on release

Previous behavior:
Each time we merged to main new nodes would be deployed, this is an
expected behavior as we need to ensure nodes get deployed and run
without issues, but this could also replace nodes very hastily.

Expected behavior:
We want instances which would run for a longer time, to allow us to
troubleshoot issues or inspect the behavior of this instances for longer
periods of time (2+ weeks)

Applied solution:
Deploy a versioned manage instance group (MiG) using the major version
of the release semver. We just use the first part of the version to
replace old instances, and change it when a major version is released
to keep a segregation between new and old versions.

* ci(build): allow v0 as a major version tag

* fix(build): use rust conventions for versioning

* fix(deploy): improve documentation and trigger on release

* Update .github/workflows/continous-delivery.yml

Co-authored-by: teor <teor@riseup.net>

* fix(versioning): typo

* fix(deploy): use `zebrad-v1` as the instance name, with no SHA

* fix(deploy): create and update MiG must use the same name

* docs(deployments): add Continuous Delivery process

Co-authored-by: teor <teor@riseup.net>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2022-08-28 12:46:21 +00:00
teor 0a39011b88
fix(ci): Write cached state images after update syncs, and use the latest image from any commit (#4949)
* Save cached state on full syncs and updates

* Add an -update suffix to CI images created by updating cached state

* Make disk image names unique by adding a time suffix

* Use the latest image from any branch, but prefer the current commit if available

* Document Zebra's continuous integration tests

* Fix typos in environmental variable names

* Expand documentation

* Fix variable name typo

* Fix shell syntax
2022-08-25 13:09:20 +00:00
Alfredo Garcia 61f363947e
Release Zebra to 1.0.0-beta.13 (#4765)
* update zebra to 1.0.0-beta.13

* add changelog

* update the release date

* Update changelog for cryptographic batch PRs

* Add `bitvec` to the changelog

* Update CHANGELOG.md

* Add zebra-network fix and tokio version bump

* Recommend that users update their rust compiler

* Update disk and network usage for recent large blocks

* Fix spacing

* Add disk and network usage update to README

* apply size suggestions

Co-authored-by: teor <teor@riseup.net>

* add known performance issues

* update changelog

* change release date

Co-authored-by: teor <teor@riseup.net>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2022-07-30 20:20:43 +00:00
teor f9d7451fa2
Fix up links in some tracing docs (#4748)
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2022-07-22 16:32:56 +00:00
Gustavo Valverde 4257f60265
docs(release): add support Tiers and supported platforms per Tier (#4773)
* docs: include target tier policies

This documentation is based on Rust supported platforms and tiers, and adapted to Zebra

* docs: add supported platforms by Tier

* docs(release): remove references to use RFCs

* docs(release): adapt teams to ZFND reality

* docs(release): remove text that might generate confusion

* docs(release): refactor general wording to our needs

* docs(release): update wording in supported platforms

* docs: clarify we're not having build artifacts for Tier 2

* docs: remove stub requirements

* docs: tidy up

* docs: last fixes

* docs(platforms): improve overall documentation

* docs: remove legal language

* docs: rewording tier 3 summary

* Update book/src/user/supported-platforms.md

Co-authored-by: teor <teor@riseup.net>

* docs: remove reference to core engineering team

* fix(docs): make rust version a separate column

* tiny fix

* If a supported platform isn't pinned to a specific release, link to the latest release

* Add space for readability

* Clarify some phrasing

* Remove Rust-compiler specific language, replace with consensus rules and features

* Update book/src/user/supported-platforms.md

Co-authored-by: teor <teor@riseup.net>

* Update book/src/user/target-tier-policies.md

Co-authored-by: teor <teor@riseup.net>

* Update book/src/user/target-tier-policies.md

Co-authored-by: teor <teor@riseup.net>

* Update book/src/user/target-tier-policies.md

Co-authored-by: teor <teor@riseup.net>

Co-authored-by: teor <teor@riseup.net>
2022-07-22 12:23:10 -04:00
Andrew Arnott 766dd9357b
Fix walled -> walletd types (#4746) 2022-07-04 22:17:44 +00:00
Marek 32faa94fb4
fix(state): Update column family names to match Zebra's database design (#4639)
* Rename `block_by_height` to `block_header_by_height` in fin state

* Rename `tx_by_hash` to `tx_loc_by_hash` in both (non & fin) states

* Rename `utxo_by_outpoint` to `utxo_by_out_loc` in finalized state

* Reorder the column families so that they match the docs

* Update `struct Chain` in the RFCs

* Increment `DATABASE_FORMAT_VERSION` to 25

* Remove obsolete docs from `0004-asynchronous-script-verification.md`

* Remove an obsolete `TODO` from `disk_db.rs`

* Delete unused snapshots

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2022-06-30 23:00:23 +00:00
teor 9e277ed91a
Release Zebra 1.0.0-beta.12 (#4714)
* Update Zebra to 1.0.0-beta.12

* Simplify tower-* versioning by updating both to 0.2.27

* Simplify version search and replace by removing an old version from the docs

* Update Cargo.lock

* Add draft changelog as of PR #4693

* Update CHANGELOG to PR #4680
2022-06-29 17:14:16 +00:00
Deirdre Connolly 21af125bfa
doc: add tokio-console page in book dev section (#4641)
* doc: add tokio-console page in dev section

* Add screenshot

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2022-06-21 03:38:12 +00:00
teor 29e73b3f3e
breaking(diagnostics): make zebrad diagnostics into optional compile-time features (#4539)
* Disable the flamegraph feature by default at compile time

* Disable the journald feature by default at compile time

* Also disable inferno dependency, and rearrange features

* Disable the prometheus feature by default at compile time

* Disable the tracing filter reload feature by default at compile time

* Disable tests when corresponding features are disabled

* Add compile-time tracing features to user docs

* Add compile-time features to the metrics user docs

* Document diagnostics as part of the start command tasks and services

* breaking(diagnostics): rename "enable-sentry" feature to "sentry" (#4623)

* Also skip conflict tests when those ports are disabled

* breaking(diagnostics): rename "enable-sentry" feature to "sentry"

This is mostly:
```sh
fastmod enable-sentry sentry
```

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2022-06-16 19:56:40 +00:00
Alfredo Garcia 5ed56b551b
docs(lightwalletd): tutorial fixes (#4566)
* fix flag

Co-authored-by: Andrew Arnott <Andrew.arnott@Microsoft.com>

* remove zebra from zcash.conf path

Co-authored-by: Andrew Arnott <Andrew.arnott@Microsoft.com>

* update the implementation of lightwalletd

Co-authored-by: Andrew Arnott <Andrew.arnott@Microsoft.com>
2022-06-04 00:59:54 +00:00
Marek 0e4c51c431
V1.0.0 beta.11 release (#4567)
* Bump crate versions

* Increment the protocol user agent

* Increment the version in `README.md`

* Increment the version in `install.md`

* Update `README.md`

* Update the changelog

* Increment the versions of crates that depend on other crates

* Update `Cargo.lock`
2022-06-03 22:55:05 +00:00
teor 1230fd41f1
doc(user): Explain what Zebra does when it starts up (#4502)
* Explain what Zebra does when it starts up

* Put some tasks into sub-sections

* Add non-zero progress log line

Co-authored-by: Alfredo Garcia <oxarbitrage@gmail.com>

* Explain DNS seeder

Co-authored-by: Alfredo Garcia <oxarbitrage@gmail.com>

Co-authored-by: Alfredo Garcia <oxarbitrage@gmail.com>
2022-06-02 00:02:55 +00:00
Alfredo Garcia 2486925e88
docs(lightwalletd): add a lightwalletd tutorial (#4526)
* add a lightwalletd tutorial

* apply simplifications

Co-authored-by: teor <teor@riseup.net>

* change `zebra.toml` location

* update go installation

* remove optional config sections

* remove nginx section

* use another location for `lightwalletd` binary

* change `lightwalletd` start command

* typo

* change sentence

* improve run the wallet command

* remove space

Co-authored-by: teor <teor@riseup.net>
2022-06-01 23:13:18 +00:00
Alfredo Garcia 8150a720ca
release: bump versions and create changelog entry for `v1.0.0-beta.10` (#4430)
* bump versions

* add the changelog for beta 10

* Update CHANGELOG.md

Co-authored-by: Marek <mail@marek.onl>

* Distinguish CI and Rust dependency updates

* Include all the dep bumps in PR #4405

* join 2 dependencies

* Include incrementalmerkletree dep bump in changelog

Co-authored-by: Deirdre Connolly <durumcrustulum@gmail.com>
Co-authored-by: Marek <mail@marek.onl>
2022-05-19 19:23:30 +00:00
teor f7a3a0f6bc
fix(build): put gRPC tests behind an optional feature flag to fix production build issues (#4369)
* fix(ci): sentry is not longer being activated in test builds

This removes sentry from all the test execution, as some tests might fail as sentry wasn't initially built, or it might take more time to build as it will have to build with sentry.

* fix(build): workaround the failed to fetch oauth token error

* Drop sentry dependencies when enable-sentry feature is disabled

* Make lightwalletd gRPC tests depend on a new lightwalletd-grpc-tests feature

* fix(ci): remove enable-sentry feature from tests

* Add lightwalletd-grpc-tests feature for functionality or efficiency

And document where it is just used to stop re-compilations.

* Remove redundant `cmake` and `protobuf-compiler` dependencies

* Document Zebra's optional production and test feature flags

* Minimise dependencies in zcash-params/Dockerfile

* Minimise dependencies in docker/Dockerfile

* Add a workflow TODO

Co-authored-by: Gustavo Valverde <gustavo@iterativo.do>
2022-05-11 14:06:58 +00:00
Conrado Gouvea a3eed2daad
fix(doc): add support for Mermaid to render graphs (#4359) 2022-05-09 20:29:49 +00:00
Conrado Gouvea c190e3027c
v1.0.0-beta.9 release (#4349) 2022-05-09 13:32:53 -03:00
teor 12426fe078
Fix incorrect AddressBalance name in diagram (#4342)
* Fix incorrect AddressLocation size in diagram

* Actually the name is wrong
2022-05-06 11:10:21 -03:00
Conrado Gouvea ff0122044f
change(doc): add transaction index diagram to RFC-0005 (#4330)
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2022-05-06 03:32:55 +00:00
teor 05440763ac
change(verifier): Update Zebra's block hash checkpoints (#4183)
* Update zebra-checkpoints docs for new default checkpoint config

Also:
- update commands
- link to the spec definition of settled network upgrades

* Update mainnet checkpoints

* Update testnet checkpoints
2022-04-25 14:43:06 +00:00
ebfull 59098b355a
fix(doc): Fix link to run page in installation docs (#4144) 2022-04-20 00:26:34 +00:00
teor 75671c53a2
1.0.0-beta.8 Release (#4135)
* Update changelog for 1.0.0-beta.8

* Bump Zebra crate versions

The tower crates and their dependencies haven't changed,
so their versions don't need to be bumped.

Some Zebra crates haven't changed,
but I bumped all the versions to keep them consistent.

* Explicitly say that we support NU5 testnet 2

* Expand PR #3799 into changelog entries

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2022-04-19 13:02:17 +10:00
teor 13c216cd3c
1.0.0-beta.7 Release (#4039)
* Update changelog for v1.0.0-beta.7

* Increment all crate versions

* Remove redundant release test that is now covered by CI

* Remove completed NU5 README check task from the release template

* Add Merge Freeze tool to the release checklist

* Simplify release checklist by removing unused steps
2022-04-05 18:06:46 +00:00
teor b895b8973a
change(rfc): Cleanup transparent address index database design (#4019)
* Rename location-based column families

* Use more consistent terminology for database changes

* Remove AddressLocation from utxo_by_out_loc
2022-04-01 20:40:43 +00:00
teor 98ec995d56
fix(design): update state RFC to put ordered list values in RocksDB keys (#3997)
* Update RFC to use BTreeSets for ordered lists

* Update to put value sets in the rocksdb key

* Clarify some workding

* Update type name
2022-03-30 23:42:09 +00:00
Alfredo Garcia 53bf4c6ba5
1.0.0-beta.6 Release (#3966)
* 1.0.0-beta.6 release version bump

* 1.0.0-beta.6 release update the changelog

* change date of the release

* change description

Co-authored-by: teor <teor@riseup.net>

* remove phrase from description

Co-authored-by: teor <teor@riseup.net>
2022-03-28 22:36:42 +00:00
teor 7d4c92f7d6
fix(doc): Fix bugs in the lightwalletd database design (#3964)
* Re-order column families in design in dependency order

* Minor RFC design tweaks and fixes

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2022-03-27 22:59:43 +00:00
teor 2b51f9098d
change(doc): Simplify the database design using prefix iterators (#3916)
* Simplify the database design using prefix iterators

* Fix typos and missed changes

Co-authored-by: Marek <mail@marek.onl>

Co-authored-by: Marek <mail@marek.onl>
2022-03-21 22:38:23 +00:00
teor 419770409a
doc(db): update database design for read-only state service (#3843)
* Add a TODO for a history tree concurrent write issue

* Update database design for read-only state service
2022-03-12 00:37:01 +00:00
Conrado Gouvea bbef390944
change(ci): remove Windows support (#3819)
* ci: remove Windows support

* address comments
2022-03-10 10:50:12 +10:00