Skip to content

Treat unreleased hardforks in a special way #3719

@roman-khimov

Description

@roman-khimov

Is your feature request related to a problem? Please describe.

I'm always frustrated when tests fail in nspcc-dev/neofs-node#3040. Turns out, we need nspcc-dev/neofs-testcases#903 for them to work at all, otherwise some internal logic easily breaks with

Error: can't create N3 client: failed to get network magic: unexpected hardfork: Echidna

which is kinda expected if it's an official HF. But this case is a bit more special, it's not yet finalized hardfork.

Describe the solution you'd like

We can not enable the latest hardfork by default if it's not yet released. It'll require some tweaking for sure, but it can make upgrades easier to handle. The idea is that we can introduce hardfork names earlier than we introduce proper hardfork support, so after an upgrade to newer NeoGo that has new HF definition upgrading to the subsequent version where it's finalized will go smoother, nothing will break immediately.

Describe alternatives you've considered

Leaving as is, it's fair as well, the latest and greatest known is Echidna at the moment, so it's enabled by default for private networks. Good for testing as well, that's the behavior you likely expect in NeoGo proper.

Metadata

Metadata

Assignees

No one assigned

    Labels

    I3Minimal impactS3Minimally significantU4Nothing urgentenhancementImproving existing functionality

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions