alamb opened a new pull request, #26845:
URL: https://github.com/apache/datafusion/pull/26845

   ## Which issue does this PR close?
   
   - Part of https://github.com/apache/datafusion/issues/24461
   
   ## Rationale for this change
   
   As discussed on https://github.com/apache/datafusion/issues/24461, it is 
currently hard to tell what version of DataFusion a build came from: `main` 
reports the *previous* release version (`55.1.0`) even though it contains 
unreleased code destined for `56.0.0`.
   
   This PR changes the version on `main` to `56.0.0-dev` (the semver 
pre-release form of the upcoming release). The benefits are:
   
   - The `version()` SQL function, the Parquet `created_by` metadata, and 
`datafusion-cli --version` all show whether a build came from `main` or from a 
release
   - The release process becomes simpler: when `branch-56` is cut, the release 
branch drops the `-dev` suffix and `main` is immediately bumped to 
`57.0.0-dev`, so the [release version 
labeler](https://github.com/apache/datafusion/pull/25776) and any future 
versioned docs refer to the correct version
   - `-dev` versions can never be accidentally published to crates.io as if 
they were a release
   
   This PR is a draft to test the idea (and let CI run against a `-dev` 
version).
   
   ## What changes are included in this PR?
   
   - Bump the workspace version in `Cargo.toml` / `Cargo.lock` to `56.0.0-dev`
   - Regenerate `docs/source/user-guide/configs.md` (the default of 
`datafusion.execution.parquet.created_by` includes the version)
   - Update `dev/release/README.md` with the new versioning scheme: a new 
"Version Numbers" section, a new step "1b. Bump Version on main", and updated 
step 2 examples
   - Update `docs/source/contributor-guide/release_management.md` to describe 
the `-dev` convention
   - Update `dev/update_datafusion_versions.py` so that it:
     - Sets the release labeler target to the version without the `-dev` suffix 
(e.g. `56.0.0-dev` -> `v56.0.0`) rather than `major + 1`
     - Skips updating the user facing `Cargo.toml` examples (e.g. 
`docs/source/download.md`) for `-dev` versions, since those are never published 
to crates.io
   
   Notes:
   
   - The user facing crate examples (`download.md`, `example-usage.md`, 
`crate-configuration.md`) intentionally still say `55.1.0`, the latest released 
version
   - The release labeler target (`v56.0.0`) is unchanged
   - This overlaps slightly with 
https://github.com/apache/datafusion/pull/26007 from @nuno-faria which fixes 
other issues in `dev/update_datafusion_versions.py`. I am happy to rebase 
whichever lands second.
   
   ## What is the testing strategy for this PR?
   
   - Existing CI
   - Ran the tests that inspect `CARGO_PKG_VERSION` locally: 
`test_version_function`, the `datafusion-ffi` `version()` test, the parquet 
`created_by` default test, and the `datafusion-cli` integration tests
   
   ## Are there any user-facing changes?
   
   Builds from `main` now report version `56.0.0-dev` instead of `55.1.0`. The 
release process documentation is updated.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to