apache / apache/datafusion-sqlparser-rs

Verificiation script fails on `cargo publish --dry-run` when there are changes to derive

Open
#1,596 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Rust
Stars
3.5k
Forks
772
Avg merge
4d 9h
Merged PRs (30d)
17

Description

* part of https://github.com/apache/datafusion-sqlparser-rs/issues/1517

When you run `./dev/release/verify_release.sh 0.53.0 2` I got the following error:

```
+ find -iname Cargo.toml
+ xargs grep SNAPSHOT
find: illegal option -- i
usage: find [-H | -L | -P] [-EXdsx] [-f path] path ... [expression]
find [-H | -L | -P] [-EXdsx] -f path [path ...] [expression]
+ cargo publish --dry-run
Updating crates.io index
Packaging sqlparser v0.53.0 (/private/var/folders/1l/tg68jc6550gg8xqf1hr4mlwr0000gn/T/datafusion-sqlparser-rs-0.53.0.XXXXX.fm9FlzQWEQ/apache-datafusion-sqlparser-rs-0.53.0)
warning: ignoring example `cli` as `examples/cli.rs` is not included in the published package
warning: ignoring example `parse_select` as `examples/parse_select.rs` is not included in the published package
warning: ignoring test `sqlparser_bigquery` as `tests/sqlparser_bigquery.rs` is not included in the published package
warning: ignoring test `sqlparser_clickhouse` as `tests/sqlparser_clickhouse.rs` is not included in the published package
warning: ignoring test `sqlparser_common` as `tests/sqlparser_common.rs` is not included in the published package
warning: ignoring test `sqlparser_custom_dialect` as `tests/sqlparser_custom_dialect.rs` is not included in the published package
warning: ignoring test `sqlparser_databricks` as `tests/sqlparser_databricks.rs` is not included in the published package
warning: ignoring test `sqlparser_duckdb` as `tests/sqlparser_duckdb.rs` is not included in the published package
warning: ignoring test `sqlparser_hive` as `tests/sqlparser_hive.rs` is not included in the published package
warning: ignoring test `sqlparser_mssql` as `tests/sqlparser_mssql.rs` is not included in the published package
warning: ignoring test `sqlparser_mysql` as `tests/sqlparser_mysql.rs` is not included in the published package
warning: ignoring test `sqlparser_postgres` as `tests/sqlparser_postgres.rs` is not included in the published package
warning: ignoring test `sqlparser_redshift` as `tests/sqlparser_redshift.rs` is not included in the published package
warning: ignoring test `sqlparser_regression` as `tests/sqlparser_regression.rs` is not included in the published package
warning: ignoring test `sqlparser_snowflake` as `tests/sqlparser_snowflake.rs` is not included in the published package
warning: ignoring test `sqlparser_sqlite` as `tests/sqlparser_sqlite.rs` is not included in the published package
Updating crates.io index
error: failed to prepare local package for uploading

Caused by:
failed to select a version for the requirement `sqlparser_derive = "^0.3.0"`
candidate versions found which didn't match: 0.2.2, 0.2.1, 0.2.0, ...
location searched: crates.io index
required by package `sqlparser v0.53.0 (/private/var/folders/1l/tg68jc6550gg8xqf1hr4mlwr0000gn/T/datafusion-sqlparser-rs-0.53.0.XXXXX.fm9FlzQWEQ/apache-datafusion-sqlparser-rs-0.53.0)`
+ cleanup
+ '[' no = yes ']'
+ echo 'Failed to verify release candidate. See /var/folders/1l/tg68jc6550gg8xqf1hr4mlwr0000gn/T/datafusion-sqlparser-rs-0.53.0.XXXXX.fm9FlzQWEQ for details.'
Failed to verify release candidate. See /var/folders/1l/tg68jc6550gg8xqf1hr4mlwr0000gn/T/datafusion-sqlparser-rs-0.53.0.XXXXX.fm9FlzQWEQ for details.
```

I believe the issue is that we also have a new version of `sqlparser-derive` to publish as well, but since that is not yet published on cargo, testing `cargo publish` for `sqlparser` will not work

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by reading dev/release/verify_release.sh and reproduce the failure with ./dev/release/verify_release.sh 0.53.0 2. Check how cargo publish --dry-run handles the unpublished sqlparser_derive version when derive changes are included. Done means the release verification completes successfully for this case.

Written by the indexing model from the issue text.

Assessment

Tech stack
bash, rust
Domain
build-system, release
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.