nspcc-dev / nspcc-dev/neofs-node

Require API 2.18+ requests

Open
#3,886 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

blocked enhancement I4 neofs-storage S2 U3
Dominant language
Go
Stars
38
Forks
51
Avg merge
1d 20h
Merged PRs (30d)
38

Description

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

I'm always frustrated when we have to keep a lot of compatibility code.

Describe the solution you'd like

We can require 2.18+ requests only and drop at least some of signature-specific code, it was more or less benign before #3865 and #3882, but now it's a hairy mess in some places.

In general, it's OK after about a year since 2.18 release (mid-2026), all of the gateways and clients have newer versions for a long time. There is one specific exception though: https://github.com/neo-project/neofs-api-csharp, it's very old and unmaintained, we can only move on once it's upgraded a C# node is released with this updated API version.

Describe alternatives you've considered

Things work as is, but we pay some maintenance price for it each time we touch this area.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Review the compatibility and signature-specific code affected by #3865 and #3882, then check the API 2.18 requirement and the status of neofs-api-csharp. Done means the project requires API 2.18+ requests and obsolete compatibility code is removed, once the C# node dependency has been upgraded.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp, go
Domain
distributed-systems
Issue type
Refactor
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.