Add built-in generators, schema migrations and manual release workflow - #1
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The standalone YDB generator now includes built-in C++ (native/userver), C# (ADO.NET), and Java (native/JDBC/Spring JDBC/Hibernate) targets alongside Go and Python. Schema inputs apply supported YDB migrations to the catalog before query analysis.
Generation validates identifiers, scalar literals, SDK row contracts and stale output files, with explicit diagnostics for unsupported semantics. Go outputs compile against ydb-go-sdk v3.151.1. Contributor guidance, technical references and the release plan document the supported subset and remaining acceptance work.
The manual publish workflow calculates the next version from accumulated Unreleased entries and the selected PATCH/MINOR/MAJOR part. The first stable version is 0.0.1; RCs preserve pending notes and create draft prereleases. Six Linux/macOS/Windows amd64/arm64 archives and checksums are built and checked before any release refs are pushed. A dry-run option performs the same checks without publication.
Validation: make check (including release-version tests), go vet, generated SDK compilation checks, workflow lint, and local RC/stable packaging for all six targets. Packaged execution was checked locally on macOS arm64; the workflow runs each archive on its native runner. No release or project tag has been created. Linux live acceptance is checked by CI.