Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore(deps): update rust crate zip to v2 #1916

Merged
merged 2 commits into from
Jun 4, 2024
Merged

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Jun 1, 2024

Mend Renovate

This PR contains the following updates:

Package Type Update Change
zip workspace.dependencies major 0.6 -> 2.0

Release Notes

zip-rs/zip2 (zip)

v2.1.1

Compare Source

🐛 Bug Fixes
  • Derive Debug for ZipWriter
  • lower default version to 4.5 and use the version-needed-to-extract where feasible.
🚜 Refactor
  • use a MIN_VERSION constant
⚙️ Miscellaneous Tasks
  • Bug fixes for debug implementation
  • Bug fixes for debug implementation
  • Update unit tests
  • Remove unused import

v2.1.0

Compare Source

🚀 Features
  • Support mutual conversion between DateTime and MS-DOS pair
🐛 Bug Fixes
  • version-needed-to-extract was incorrect in central header, and version-made-by could be lower than that (#​100)
  • version-needed-to-extract was incorrect in central header, and version-made-by could be lower than that (#​100)
⚙️ Miscellaneous Tasks
  • Another tweak to ensure version_needed is applied
  • Tweaks to make version_needed and version_made_by work with recently-merged changes

v2.0.0

Compare Source

🚀 Features
  • Add fmt::Display for DateTime
  • Implement more traits for DateTime
🚜 Refactor
  • Change type of last_modified_time to Option<DateTime>
  • [breaking] Rename from_msdos to from_msdos_unchecked, make it unsafe, and add try_from_msdos (#​145)
⚙️ Miscellaneous Tasks
  • Continue to accept archives with invalid DateTime, and use now_utc() as default only when writing, not reading

v1.3.1

Compare Source

🚜 Refactor
  • Make deflate enable both default implementations
  • Merge the hidden deflate-flate2 flag into the public one
  • Rename _deflate-non-zopfli to _deflate-flate2
  • Reject encrypted and using_data_descriptor files slightly faster in read_zipfile_from_stream
  • Convert impl TryInto<NaiveDateTime> for DateTime to impl TryFrom<DateTime> for NaiveDateTime (#​136)
⚡ Performance
  • Change default compression implementation to flate2/zlib-ng
⚙️ Miscellaneous Tasks
  • chore(#​132): Attribution for some copied test data
  • chore(#​133): chmod -x src/result.rs

v1.3.0

Compare Source

🚀 Features
  • Add is_symlink method
🐛 Bug Fixes
  • Extract symlinks into symlinks on Unix and Windows, and fix a bug that affected making directories writable on MacOS
🚜 Refactor
  • Eliminate deprecation warning when --all-features implicitly enables the deprecated feature
  • Check if archive contains a symlink's target, without borrowing both at the same time
  • Eliminate a clone that's no longer necessary
  • is_dir only needs to look at the filename
  • Remove unnecessary #[cfg] attributes
⚙️ Miscellaneous Tasks
  • Fix borrow-of-moved-value
  • Box doesn't directly convert to PathBuf, so convert back to String first
  • partial revert - only &str has chars(), but Box should auto-deref
  • contains_key needs a Box<str>, so generify is_dir to accept one
  • Add missing ZipFileData::is_dir() method
  • Fix another Windows-specific error
  • More bug fixes for Windows-specific symlink code
  • More bug fixes for Windows-specific symlink code
  • Bug fix: variable name change
  • Bug fix: need both internal and output path to determine whether to symlink_dir
  • Another bug fix
  • Fix another error-type conversion error
  • Fix error-type conversion on Windows
  • Fix conditionally-unused import
  • Fix continued issues, and factor out the Vec-to-OsString conversion (cc: #​125)
  • Fix CI failure involving conversion to OsString for symlinks (see my comments on #​125)
  • Move path join into platform-independent code

v1.2.3

Compare Source

🐛 Bug Fixes
⚙️ Miscellaneous Tasks
  • More conditionally-unused imports

v1.2.2

Compare Source

🐛 Bug Fixes
  • Failed to clear "writing_raw" before finishing a symlink, leading to dropped extra fields
⚡ Performance
  • Use boxed slice for archive comment, since it can't be concatenated
  • Optimize for the fact that false signatures can't overlap with real ones

v1.2.1

Compare Source

🐛 Bug Fixes
  • Prevent panic when trying to read a file with an unsupported compression method
  • Prevent panic after reading an invalid LZMA file
  • Make Stored the default compression method if Deflated isn't available, so that zip files are readable by as much software as possible
  • version_needed was wrong when e.g. cfg(bzip2) but current file wasn't bzip2 (#​100)
  • file paths shouldn't start with slashes (#​102)
🚜 Refactor
  • Overhaul impl Arbitrary for FileOptions
  • Remove unused atomic module

v1.2.0

Compare Source

🚀 Features
  • Add method decompressed_size() so non-recursive ZIP bombs can be detected
🚜 Refactor
  • Make ZipWriter::finish() consume the ZipWriter
⚙️ Miscellaneous Tasks
  • Use panic! rather than abort to ensure the fuzz harness can process the failure
  • Update fuzz_write to use replace_with
  • Remove a drop that can no longer be explicit
  • Add #![allow(unexpected_cfgs)] in nightly

v1.1.4

Compare Source

🐛 Bug Fixes
  • Build was failing with bzip2 enabled
  • use is_dir in more places where Windows paths might be handled incorrectly
⚡ Performance
  • Quick filter for paths that contain "/../" or "/./" or start with "./" or "../"
  • Fast handling for separator-free paths
  • Speed up logic if main separator isn't '/'
  • Drop normalized_components slightly sooner when not using it
  • Speed up path_to_string in cases where the path is already in the proper format
⚙️ Miscellaneous Tasks
  • Refactor: can short-circuit handling of paths that start with MAIN_SEPARATOR, no matter what MAIN_SEPARATOR is
  • Bug fix: non-canonical path detection when MAIN_SEPARATOR is not slash or occurs twice in a row
  • Bug fix: must recreate if . or .. is a path element
  • Bug fix
◀️ Revert
  • #​58 (partial): bzip2-rs can't replace bzip2 because it's decompress-only

v1.1.3

Compare Source

🐛 Bug Fixes
  • Rare bug where find_and_parse would give up prematurely on detecting a false end-of-CDR header

v1.1.2

Compare Source

🐛 Bug Fixes
  • Alignment was previously handled incorrectly (#​33)
🚜 Refactor
  • deprecate deflate-miniz feature since it's now equivalent to deflate (#​35)

v1.1.1

Compare Source

Added
  • index_for_name, index_for_path, name_for_index: get the index of a file given its path or vice-versa, without
    initializing metadata from the local-file header or needing to mutably borrow the ZipArchive.
  • add_symlink_from_path, shallow_copy_file_from_path, deep_copy_file_from_path, raw_copy_file_to_path: copy a
    file or create a symlink using AsRef<Path> arguments
Changed
  • add_directory_from_path and start_file_from_path are no longer deprecated, and they now normalize .. as well as
    ..

v1.1.0

Added
  • Support for decoding LZMA.
Changed
  • Eliminated a custom AtomicU64 type by replacing it with OnceLock in the only place it's used.
  • FileOptions now has the subtype SimpleFileOptions which implements Copy but has no extra data.

Configuration

📅 Schedule: Branch creation - "every weekend" in timezone America/Los_Angeles, Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR has been generated by Mend Renovate. View repository job log here.

@renovate renovate bot requested a review from a team as a code owner June 1, 2024 15:05
@jonathanrainer jonathanrainer self-assigned this Jun 3, 2024
Copy link
Contributor Author

renovate bot commented Jun 3, 2024

Edited/Blocked Notification

Renovate will not automatically rebase this PR, because it does not recognize the last commit author and assumes somebody else may have edited the PR.

You can manually request rebase by checking the rebase/retry box above.

⚠️ Warning: custom changes will be lost.

@jonathanrainer jonathanrainer merged commit 299a819 into main Jun 4, 2024
10 checks passed
@jonathanrainer jonathanrainer deleted the renovate/zip-2.x branch June 4, 2024 07:47
@jonathanrainer jonathanrainer added this to the v0.24.0 milestone Jul 10, 2024
@jonathanrainer jonathanrainer mentioned this pull request Jul 12, 2024
jonathanrainer added a commit that referenced this pull request Jul 15, 2024
# [0.24.0]

> Important: 1 potentially breaking change below, indicated by **❗
BREAKING ❗**

## ❗ BREAKING ❗

- **Removed the deprecated `plain` and `json` options for `--output` -
@dylan-apollo PR
[#1804](#1804

The `--output` option is now only for specifying a file to write to. The
`--format` option should be used to specify the format of the output.

## 🚀 Features

- **Return the name of the linting rule that is violated, as well as the
code - @jonathanrainer PR
[#1907](#1907

Originally only the message from the linting violation was included in
the response, but now it also includes the name of the specific linting
rule to aid debugging

- **Use the Router's `/health?ready` endpoint to check readiness -
@nmoutschen PR
[#1939](#1939

Previously `rover dev` used a simple query to establish readiness, but
this did not allow for router customizations.

- **Adding architecture and OS metrics - @aaronArinder PR
[#1947](#1947

Allows us to track the Operating Systems and Architectures in use by our
users, this will give us more information as to where to focus support
efforts

- **Allow `aarch64` macOS to pull correct `supergraph` binaries where
available - @jonathanrainer PR
[#1971](#1971

We recently started publishing `supergraph` binaries for `aarch64`, so
if they are available Rover will use them in preference to x86_64
binaries.

## 🐛 Fixes

- **Don't panic if the telemetry client cannot be initialised -
@dylan-apollo PR
[#1897](#1897) - Issue
[#1893](#1893
- **Rename `.cargo/config` to `.cargo/config.toml` - @jonathanrainer PR
[#1921](#1921
- **Fix `pnpm` installs by moving the binary download location -
@jonathanrainer PR
[#1927](#1927) - Issue
[#1881](#1881
  
After we inlined the `binary-install` dependency in v0.23.0 this changed
where the downloaded binary was stored when using `pnpm`. This caused
users running the binary to enter an infinite loop. This moves the
binary to a new location which avoids this.

- **Don't panic on file watcher errors - @nmoutschen PR
[#1935](#1935

Instead of panicking when errors occur watching files return those
errors gracefully to the user.

- **Store binaries with version numbers attached so upgrades are
possible - @jonathanrainer PR
[#1932](#1932) - Issue
[#1563](#1563

When downloading binaries via `npm` they were always stored as `rover`
despite the version. As such, when a new version came out the upgrade
would fail. This now doesn't happen, as binaries are stored with their
versions number in the name.

- **Ensure correct URL is used if `subgraph_url` and `routing_url` are
provided in a supergraph schema - @jonathanrainer PR
[#1948](#1948) - Issue
[#1782](#1782
- **Let `--output` accept paths with missing intermediate directories -
@jonathanrainer PR
[#1944](#1944) - Issue
[#1787](#1787
- **Allow `rover dev` to read Federation Version from supergraph schema
- @jonathanrainer PR
[#1950](#1950) - Issue
[#1735](#1735

The Federation version could be set in the supegraph schema but was
being ignored by `rover dev`. It now is taken into account, along with
the overriding environment variable.

- **Stop .exe being printed after Federation version during composition
- @jonathanrainer PR
[#1951](#1951) - Issue
[#1390](#1390
- **Reinstate support for `glibc` 2.17 - @jonathanrainer PR
[#1953](#1953

In resolving the issues with CentOS 7 we accidentally removed support
for `glibc` 2.17, this has now been restored

- **Be more lenient about `supergraph` binary versions - @dylan-apollo
PR [#1966](#1966

In resolving #1390, we were too restrictive in what counted as a valid
version. This restores the correct behaviour

- **Set `package.json` to a stable version when testing NPM Installers -
@jonathanrainer PR
[#1967](#1967

When testing whether our NPM installers worked correctly we were trying
to download the latest `rover` binary. On release PRs, where the binary
didn't yet exist, this was causing problems.

- **Fix mocking of calls to Orbiter in Installer tests - @jonathanrainer
PR [#1968](#1968
- **Remove noisy errors from intermediate composition states -
@aaronArinder PR
[#1956](#1956
  
When `rover dev` composes multiple subgraphs it does so one at a time.
As such if there are dependencies there can be noisy ephemeral errors,
this fixes that by waiting until all subgraphs are added before trying
composition.

## 🛠 Maintenance

- **Update GitHub CircleCI Orb to v2.3.0 - @Geal PR
[#1831](#1831
- **Update plugins to Fed 2.7 and Router 1.43.0 - @smyrick PR
[#1877](#1877
- **Update CODEOWNERS - @dotdat PR
[#1890](#1890

  Make Betelgeuse the primary owners of the Rover repository

- **Update lychee-lib to v0.15 - @dotData PR
[#1902](#1902
- **Add tests and provide status codes as part of linter errors -
@dotdat PR [#1903](#1903
- **Add nix files to .gitignore - @aaronArinder PR
[#1908](#1908
- **Update apollographql/router to v1.47.0 - @aaronArinder PR
[#1841](#1841
- **Update apollographql/federation-rs to v2.7.8 - @aaronArinder PR
[#1746](#1746
- **Update node.js to v20 - @aaronArinder PR
[#1778](#1778
- **Update Rust to v1.76.0 and the Rust CircleCI Orb to v1.6.1 -
@aaronArinder PR
[#1788](#1788
- **Update serial_test to v3 - @jonathanrainer PR
[#1836](#1836
- **Update which to v6 - @jonathanrainer PR
[#1835](#1835
- **Update apollographql/federation-rs to v2.8.0 - @aaronArinder PR
[#1909](#1909
- **Update tar to v6.2.1 - @aaronArinder PR
[#1888](#1888
- **Update tar to v7 - @aaronArinder PR
[#1914](#1914
- **Update node.js packages - @aaronArinder PR
[#1830](#1830

Includes `eslint` to v8.57.0, `node.js` to v20.14.0, `nodemon` to
v3.1.2, `npm` to v10.8.1 and `prettier` to v3.3.0

- **Update Rust to v1.78.0 - @aaronArinder PR
[#1912](#1912
- **Update apollographql/router to v1.48.0 - @aaronArinder PR
[#1917](#1917
- **Update zip to v2 - @jonathanrainer PR
[#1916](#1916
- **Update eslint to v9.4.0 - @dotdat PR
[#1913](#1913
- **Update hyper to v1.0 - @dotdat PR
[#1789](#1789
- **Add tests for socket names - @jonathanrainer PR
[#1918](#1918
  
In future dependency upgrades we want to ensure that behaviour around
socket naming works as expected, so add a test to ensure that.

- **Update rust packages - @jonathanrainer PR
[#1755](#1755

Consolidates updates of pre-1.0 rust crates, check PR for full details
of crates updated

- **Update notify to v6 - @jonathanrainer PR
[#1603](#1603
- **Include cargo-deny checks on PRs - @jonathanrainer PR
[#1910](#1910

Now we can check for licences that don't correspond to our allowed list
and pick up on dependency issues live on PRs

- **Pin node.js dev dependencies - @aaronArinder PR
[#1923](#1923
- **Allow 0BSD licence - @aaronArinder PR
[#1924](#1923
- **Update interprocess to v2 - @dotdat PR
[#1915](#1915
- **Update apollographql/router to v1.48.1 - @dotdat PR
[#1926](#1926
- **Update Rust to v1.79.0 - @jonathanrainer PR
[#1931](#1931
- **Update git2 to v0.19 - @jonathanrainer PR
[#1930](#1930
- **Update node.js packages - @jonathanrainer PR
[#1929](#1929

Includes `@eslint/compat` to v1.1.0, `eslint` to v9.5.0, `graphql` to
v16.8.2 and `prettier` to v3.3.2

- **Migrate CI to use manylinux rather than CentOS 7 - @jonathanrainer
PR [#1952](#1952

As CentOS 7 has now entered End-of-Life, migrate our CI to use a
different Linux distribution.

- **Update apollographql/router to v1.49.1 - @jonathanrainer PR
[#1933](#1933
- **Update apollographql/federation-rs to v2.8.2 - @jonathanrainer PR
[#1934](#1934
- **Update node.js packages - @jonathanrainer PR
[#1940](#1940

Includes `eslint` to v9.6.0, `node.js` to v20.15.0, `nodemon` to v3.1.4,
`graphql` to v16.9.0

- **Fix clippy warnings - @loshz PR
[#1955](#1955
- **Allow integration tests to accept a pre-compiled binary -
@jonathanrainer PR
[#1957](#1957
- **Run macOS x86_64 integration tests in GitHub Actions - @nmoutschen
PR [#1958](#1958
  
Due to CircleCI's deprecation of x86_64 macOS executors use GitHub
Actions to still run our tests on this architecture

- **Add smoke tests for `rover dev` - @jonathanrainer PR
[#1961](#1961
- **Update apollographql/router to v1.50.0 - @jonathanrainer PR
[#1954](#1954
- **Trigger GitHub Actions from CircleCI - @nmoutschen PR
[#1959](#1959
- **Add docs team to CODEOWNERS - @aaronArinder PR
[#1965](#1965
- **Fix up Release CI and explicitly add tokio `rt-multi-thread flag` -
@jonathanrainer PR
[#1972](#1972
- **Add context to auth output when saving an API Key - @loshz PR
[#1974](#1974


## 📚 Documentation

- **Minor update to README.md - @tratzlaff PR
[#1880](#1880

  Fixes use of numbered lists in the README.md 

- **Remove failing/redundant links from docs - @dotdat PR
[#1894](#1894
- **Update docs style - @Meschreiber PR
[#1883](#1883

  Update formatting and admonitions to most recent conventions.

- **Update frontmatter - @Meschreiber PR
[#1898](#1898

  Updates title casing and adds metadata to subtitles

- **Clarify `subgraph publish` can only create variants not graphs -
@Meschreiber PR
[#1938](#1938
- **Make example using `-` instead of filepath clearer - @aaronArinder
PR [#1963](#1963
- **Update Router terminology - @Meschreiber PR
[#1925](#1925

Update the uses of Apollo Router to GraphOS Router or Apollo Router Core
where necessary
- **Update documentation to make it clear we collect CPU Architecture,
per command - @aaronArinder PR
[#1964](#1964
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants