* ref(docker): combine test and prod entrypoints into one
This makes the following changes
- Uses `-x` instead of echoing the variables values
- Sets default values where required
- Create a function to list directories
- Create a function to run cargo tests
- Use a better approach to handle different options in the `case` manegement for tests and production
- Replaces all instances of `runtime-entrypoint.sh` with `entrypoint.sh`
* chore: use 2 spaces insted of 4 for indentation
* fix: add missing `test-threads` to `fully_synced_rpc_`
* fix: allow 3 arguments instead of 2 to handle `fully_synced_rpc_` correctly
* chore: remove extra file
* chore: add comments to main parts of the file
* fix(ci): just create the `$ZEBRA_CONF_PATH` if `$ENTRYPOINT_FEATURES` is not set
* fix(entrypoint): just print ${ZEBRA_CONF_PATH} if exists
* fix: missing condition
* ref: handle tests better if `$ENTRYPOINT_FEATURES` is set
* fix(ci): We just want `ZEBRA_CONF_PATH` to be set in the `release` image
* fix(entrypoint): fix the overall `case` logic
* fix(ci): allos to run with custom config in CI image
* fix(ci): more edgecases
* fix: we don't need to find files, but subdirectories
* fix(ci): handle Signal Forwarding and exit codes for `cargo`
* fix(ci): parse `fully_synced_rpc_` test correctly
* chore: add missing cache dir variable for LWD
* fix(entrypoint): handle an arbitrary number of arguments
* fix(entrypoint): handle features list
* fix(entrypoint): typo
* chore: typo
* imp(doc): add missing Docker variables and examples
* imp(doc): segment environment variables by role
* imp(doc): use code instead of strong styling for variables
* chore: review fixes
* fix(doc): use a better example for advanced usage
* Update links in Tracing section
* Move Sentry to Tracing section
* Refactor the section on features in `README.md`
- I tried to keep only the most relevant features for users.
- I tried using links that lead to the most descriptive pages.
These changes are subjective.
* Remove the networking section from `README.md`
The network requirements are well documented in section System
Requirements in the Zebra book. The readme already points to this
section in a link in section Getting Started.
The motivation for this change is to keep the readme short.
* Update README.md
Co-authored-by: Alfredo Garcia <oxarbitrage@gmail.com>
---------
Co-authored-by: Alfredo Garcia <oxarbitrage@gmail.com>
* upgrade docs for new lightwalletd repo zebra is using now
* Update book/src/user/lightwalletd.md
Co-authored-by: Marek <mail@marek.onl>
---------
Co-authored-by: Marek <mail@marek.onl>
* 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
* 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>
* 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>
* 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>
* 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>
* 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>
* 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>
* 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>
* 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>
* 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
* 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>
* 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
* Increment Zebra versions
* Initial draft changelog
* Add blog post to the release checklist
* Say "user testing"
Co-authored-by: teor <teor@riseup.net>
* 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
* 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>
* 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>
* 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
* 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>
* 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>