doc: add a migration guide from v0.11 to v0.13
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Newbie friendliness
- 65/100
- Issue type
- Documentation
- Clarity
- Clearly specified
- Activity status
- Active
- Tech stack
- go
- Domain
- documentation
Research direction
Start with doc/migration-v2-to-v3.md and inspect the current API and generated-client changes described in issues #379 and #380. Write doc/migration-v0.11-to-v0.13.md covering the listed symbol mappings, lifecycle, call patterns, code generation, and downstream checklist; fix the broken link in the existing guide without otherwise changing it. Done when users can follow the guide to migrate and regenerate compatible code before the next tag.
Written by the indexing model from the issue text.
Description
Problem
Users of v0.11 have no guide to the API changes in v0.12 and in the next release.
- v0.12 contains the API redesign:
ConfigandNewConfig, typed call handles, the server and peer configuration, and the close function returned byNewConfig. - The next release adds the generated service clients (#379, #380): calls are methods on
SClient(configuration calls) andSNodeClient(node calls), and the call functions andConfigContext/NodeContextare gone.
doc/migration-v2-to-v3.md covers only the earlier QuorumSpec-to-iterator migration.
Its line 4 also links to issue-redesign-migration-guide.md, which does not exist.
Proposal
Write doc/migration-v0.11-to-v0.13.md, and keep the v2-to-v3 guide unchanged except for the broken link.
The guide should cover:
- a table that maps old symbols and constructors to new ones;
cfg, err := NewConfig(...)plusdefer cfg.Close()becomescfg, closeFn, err := NewConfig(...)plusdefer closeFn();- the server lifecycle and peer configuration (
WithPeers,ServerContext,ConnectedClients); - typed call handles, lazy dispatch, and the rule that a terminal method is used once;
- one-way calls:
Send,Async, andWait; - the generated clients:
NewSClient(cfg),NewSNodeClient(node), and node calls that take the node as an argument; - regenerating code, and the
GenVersion/MinVersioncheck that rejects old generated code; - a checklist for downstream repositories.
Write it before the next tag, so that the release notes can link to it.
- Dominant language
- Go
- Stars
- 149
- Forks
- 15
- Avg merge
- 1d 3h
- Merged PRs (30d)
- 44
Getting set up
This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from relab/gorums
-
Difficulty 5/5 Over a week Newbie friendliness 15/100
Maintainers usually reply within 1 day
-
cleanup performance
Difficulty 4/5 3-5 days Newbie friendliness 35/100
Maintainers usually reply within 1 day
-
doc: consolidate and simplify Gorums documentationPossibly taken @meling claimed this 1 day ago. Opendoc
Difficulty 4/5 3-5 days Newbie friendliness 22/100
Maintainers usually reply within 1 day
-
doc
Difficulty 3/5 Half a day Newbie friendliness 45/100
Maintainers usually reply within 1 day
-
Difficulty 4/5 3-5 days Newbie friendliness 35/100
Maintainers usually reply within 1 day
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 80/100
rishikanthc/Scriberr#506 ·
-
[Bug] rollingUpdatePartition panics when live StatefulSet replicas sit far below the desired countOpen
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
sgl-project/rbg#547 ·
Maintainers usually reply within 1 day
-
area: frontend priority: normal
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
Maintainers usually reply within 1 day
-
area/validator
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
Maintainers usually reply within 1 day
-
TestAutonomousStop_ReportsObservedState fails under host load: 1s wall-clock ceiling vs 250ms cycleOpentype:bug
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
nightgauge/nightgauge#2909 ·
Maintainers usually reply within 1 day