-
Notifications
You must be signed in to change notification settings - Fork 379
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Document various testnets and their goals #1791
Comments
We should encourage people to work locally with the full setup. Use staging for CI and Then, use the portal loop on GNO Playground (default target?) and Testnets other than portal and staging ones should not be the initial options in dropdown menus of tools like playground and Adena. Instead, they should be grouped under an "other networks" section, where we can include networks like Berty's staging. |
I've communicated with DevX to include Portal Loop as an option in the Playground. The PR has been merged and now we are awaiting a new Playground release. Soon after a few docs PRs will be unblocked. Here is the issue I'm referring to. https://github.com/gnostudio/studio/pull/578 Will work on documenting testnet usage in more detail asap 👌🏻 |
Some thoughts:
For the best observability of the on chain data we should be mindful about not losing data state and prevent mixed states. For those reasons, I suggest having the docs use the devnet and testnets and point people to portal loop or localnet for experimenting and testing the hottest features. |
Perhaps we should rename the current staging to better reflect its purpose. However, what you're suggesting seems distinct, and the current staging serves other needs. I rely on the current staging, so replacing it with a stricter version like you propose or what other networks use would make me lose the current functionality. Aligned on other points. |
<!-- please provide a detailed description of the changes made in this pull request. --> ## Description Closes: #1791 & #1822 This PR adds concept & reference pages for Gno testnets. It details out what each testnet is meant for, what its versioning strategy is, and how it handles state & tx history persistence. I am missing some information - - Since test4 will be versioned based on Gno releases, will this also include new code in the `examples/` folder? How will this work? cc @zivkovicmilos - ~Please comment below if you know the release dates of test1, test2, & test3 - and possibly the version (gh commit) of their binaries.~ found tags thanks to @r3v4s on the repo. <details><summary>Contributors' checklist...</summary> - [x] Added new tests, or not needed, or not feasible - [x] Provided an example (e.g. screenshot) to aid review or the PR is self-explanatory - [x] Updated the official documentation or not needed - [x] No breaking changes were made, or a `BREAKING CHANGE: xxx` message was included in the description - [x] Added references to related issues and PRs - [x] Provided any useful hints for running manual tests - [ ] Added new benchmarks to [generated graphs](https://gnoland.github.io/benchmarks), if any. More info [here](https://github.com/gnolang/gno/blob/master/.benchmarks/README.md). </details>
I believe the current documentation needs clarity on what a portal loop is and what it is not. You can refer to #1941 for more information. |
Apart from the Testnets page, we have a separate page for the Portal Loop itself, as it is a more specific piece of tech. I will push out a PR to add more details on how the replay mechanism actually works. |
There is a need to document each network, its goal, when to use it today, when to use it in the future, and what we have in mind for the future ("coming soon").
Networks
testX.gno.land: These are testnets fixed in the codebase with a fixed history. They are ideal for tools that need consistent growing height and timestamps, such as indexers, oracles, and some clients. They are hard to use for development, demonstrations, etc. Mostly recommended for tool writers, rather than developers or citizens.
localhost (localdev): This is the node you can run locally with gnoland or gnodev. This network is ideal for local development. In practice, you can expose it to more people, and we can expect improving gnodev to make it easy to publish a blockchain to the world.
staging.gno.land: This is a special node that is reset regularly (every ~1h), all the history is trashed, and the latest git commit is used to create a new instance. This target is ideal for quick testing where we don’t want to pollute other chains.
gno.land (a.k.a., portal loop): This is something between a testnet AND staging.gno.land; it regularly resets the chain, but will replay the history of the previous calls in an eventually-consistent way.
Miro draft used to build this issue
cc @gnolang/devrels
The text was updated successfully, but these errors were encountered: