All the PRs to fix RC1 are merged - Make dependencies.py generate fail on cargo-deny error, https://github.com/apache/iceberg-rust/pull/1366 - Run dependency license check in release script, https://github.com/apache/iceberg-rust/pull/1367 - Make dependencies.py check all subdirectories for cargo toml files, https://github.com/apache/iceberg-rust/pull/1370 - add new commits to changelog for 0.5.0, https://github.com/apache/iceberg-rust/pull/1371 Thanks for everyone's help!
0.5.0 RC1 is cancelled, I'll start a new RC. Best. Kevin Liu On Thu, May 22, 2025 at 10:06 AM Kevin Liu <kevinjq...@apache.org> wrote: > Thanks for confirming, Xuanwo. I've added the other crates to the script, > https://github.com/apache/iceberg-rust/pull/1370 > Seems like we're running into a few issues with the license check for the > new `iceberg-cli` crate. I'll work through those in the PR above. > > I've also added two PRs to make the license check process more resilient > * Make dependencies.py generate fail on cargo-deny error, > https://github.com/apache/iceberg-rust/pull/1366 > * Run dependency license check to release script, > https://github.com/apache/iceberg-rust/pull/1367 > > > Justin, thanks for the note. We added exceptions for `MPL-2.0` and noted > that binary is allowed. See > https://github.com/apache/iceberg-rust/blame/aa24cf4ef724104dba589b88731b5d36e2295acb/deny.toml#L33-L38 > > Best, > Kevin Liu > > On Wed, May 21, 2025 at 11:55 PM Xuanwo <xua...@apache.org> wrote: > >> > I also saw that the script hardcoded a few "cargo directories" and only >> ran commands against those directories. Is this correct? There are other >> directories with `Cargo.toml` files. For example, running `find . -name >> Cargo.toml -exec dirname {} \;`, I found these other subdirectories each >> with its own `Cargo.toml` file. >> >> I think those newly added crates are out of sync. >> >> On Thu, May 22, 2025, at 12:14, Kevin Liu wrote: >> >> Thank you for catching this, Fokko! >> >> Turns out I skipped the step to install `cargo-deny` when generating the >> `DEPENDENCIES.rust.tsv` files. The generation script ran `cargo deny` >> unsuccesfully but did not error. I've added >> https://github.com/apache/iceberg-rust/pull/1366 to make the script more >> resilient. >> >> I also saw that the script hardcoded a few "cargo directories" and only >> ran commands against those directories. Is this correct? There are other >> directories with `Cargo.toml` files. For example, running `find . -name >> Cargo.toml -exec dirname {} \;`, I found these other subdirectories each >> with its own `Cargo.toml` file. >> ``` >> crates/catalog/s3tables >> crates/integrations/cache-moka >> crates/integrations/cli >> crates/examples >> crates/integration_tests >> crates/sqllogictest >> crates/test_utils >> ``` >> Should we add these to the generation script as well? >> >> I can start a new RC once we confirm that these other subdirectories do >> not need to be included. >> >> Best, >> Kevin Liu >> >> On Wed, May 21, 2025 at 8:05 PM Renjie Liu <liurenjie2...@gmail.com> >> wrote: >> >> Thanks Fokko for this fix, I've merged this pr. >> >> Hi, Kevin: >> >> Would you help to create another rc? >> >> On Thu, May 22, 2025 at 5:44 AM Fokko Driesprong <fo...@apache.org> >> wrote: >> >> Hey everyone, >> >> I wanted to check the licenses, so I ran the scripts to generate them >> since the DEPENDENCIES.rust.tsv files in the repo are empty (an example >> here >> <https://github.com/apache/iceberg-rust/blob/main/crates/iceberg/DEPENDENCIES.rust.tsv>). >> It also includes category B licenses: >> >> *➜ **iceberg-rust* *git:(**main**) **✗* ./scripts/dependencies.py check >> >> Checking dependencies of crates/iceberg >> >> *error[rejected]**: failed to satisfy license requirements* >> >> ┌─ registry+ >> https://github.com/rust-lang/crates.io-index#webpki-roots@0.26.8:4:12 >> >> │ >> >> 4 │ license = "MPL-2.0" >> >> │ ━━━━━━━ >> >> │ │ >> >> │ license expression retrieved via Cargo.toml `license` >> >> │ rejected: license is not explicitly allowed >> >> │ >> >> ├ MPL-2.0 - Mozilla Public License 2.0: >> >> ├ - OSI approved >> >> ├ - FSF Free/Libre >> >> ├ - Copyleft >> >> ├ webpki-roots v0.26.8 >> >> ├── hyper-rustls v0.27.5 >> >> │ └── reqwest v0.12.12 >> >> │ ├── iceberg v0.5.0 >> >> │ │ └── iceberg-catalog-memory v0.5.0 >> >> │ │ └── (dev) iceberg v0.5.0 (*) >> >> │ └── opendal v0.53.0 >> >> │ └── iceberg v0.5.0 (*) >> >> └── reqwest v0.12.12 (*) >> >> >> Therefore, I think it would be good to also include the dependency list. >> I've created the PR here >> <https://github.com/apache/iceberg-rust/pull/1363>. For those that see >> the LGPL license in the list, this is for r-efi >> <https://github.com/r-efi/r-efi>, which is a triple license, where we >> can pick the most favorable one >> <https://www.apache.org/legal/resolved.html#mutually-exclusive>. >> >> >> Kind regards, >> >> Fokko >> >> Op wo 21 mei 2025 om 19:49 schreef Christian Thiel < >> christian.t.b...@gmail.com>: >> >> Thanks Kevin! >> +1 non-binding >> >> Checklist for reference: >> [x] Download links are valid. >> [x] Checksums and signatures. >> [x] LICENSE/NOTICE files exist >> [x] No unexpected binary files >> [x] All source files have ASF headers >> [x] Can compile from source >> [x] Doesn't break pipelines badly which are very dear to me >> >> On Wed, 21 May 2025 at 18:32, Zheng Hu <open...@gmail.com> wrote: >> >> Thank Kevin for the work, Here is my result. >> >> +1 binding. >> >> Checklist for reference: >> [x] Download links are valid. >> [x] Checksums and signatures. >> [x] LICENSE/NOTICE files exist >> [x] No unexpected binary files >> [x] All source files have ASF headers >> [x] Can compile from source >> >> On Wed, May 21, 2025 at 8:37 AM NOTME ZE <st810918...@gmail.com> wrote: >> >> Thank you Kevin for working on this! >> >> +1 non-binding >> >> - [x] Download links are valid. >> - [x] Checksums and signatures. >> - [x] LICENSE/NOTICE files exist >> - [x] No unexpected binary files >> - [x] All source files have ASF headers >> - [x] Can compile from source >> >> Xuanwo <xua...@apache.org> 于2025年5月21日周三 10:59写道: >> >> >> Thank you Kevin for working on this! >> >> +1 non-binding >> >> - [x] Download links are valid. >> - [x] Checksums and signatures. >> - [x] LICENSE/NOTICE files exist >> - [x] No unexpected binary files >> - [x] All source files have ASF headers >> - [x] Can compile from source >> >> Tested iceberg and iceberg-rest. >> >> On Wed, May 21, 2025, at 01:24, Kevin Liu wrote: >> >> +1 (non-binding) >> >> [x] Download links are valid. >> [x] Checksums and signatures. >> [x] LICENSE/NOTICE files exist >> [x] No unexpected binary files >> [x] All source files have ASF headers >> [x] Can compile from source >> >> Ran `./scripts/verify.py` >> Tested pyiceberg-core against pyiceberg >> >> Best, >> Kevin Liu >> >> On Tue, May 20, 2025 at 8:28 AM Kevin Liu <kevinjq...@apache.org> wrote: >> >> Hello Apache Iceberg Rust Community, >> >> This is a call for a vote to release Apache Iceberg rust version 0.5.0. >> The tag to be voted on is v0.5.0-rc.1. >> >> The release candidate: >> >> https://dist.apache.org/repos/dist/dev/iceberg/apache-iceberg-rust-0.5.0-rc.1/ >> >> Keys to verify the release candidate: >> https://downloads.apache.org/iceberg/KEYS >> >> Git tag for the release: >> https://github.com/apache/iceberg-rust/releases/tag/v0.5.0-rc.1 >> >> Please download, verify, and test. >> >> The VOTE will be open for at least 72 hours and until the necessary >> number of votes are reached. >> [ ] +1 approve >> [ ] +0 no opinion >> [ ] -1 disapprove with the reason >> >> To learn more about Apache Iceberg, please see >> https://rust.iceberg.apache.org/ >> >> Checklist for reference: >> [ ] Download links are valid. >> [ ] Checksums and signatures. >> [ ] LICENSE/NOTICE files exist >> [ ] No unexpected binary files >> [ ] All source files have ASF headers >> [ ] Can compile from source >> >> More detailed checklist please refer to: >> https://github.com/apache/iceberg-rust/tree/main/scripts >> >> To compile from source, please refer to: >> https://github.com/apache/iceberg-rust/blob/main/CONTRIBUTING.md >> >> Here is a Python script in release to help you verify the release >> candidate: >> ./scripts/verify.py >> >> Best, >> Kevin Liu >> >> >> Xuanwo >> >> https://xuanwo.io/ >> >> >> Xuanwo >> >> https://xuanwo.io/ >> >