Skip to content

chore: modernize codebase and CI#15

Merged
Benoît Cortier (CBenoit) merged 11 commits intomasterfrom
chore/maintenance
Dec 17, 2025
Merged

chore: modernize codebase and CI#15
Benoît Cortier (CBenoit) merged 11 commits intomasterfrom
chore/maintenance

Conversation

@CBenoit
Copy link
Copy Markdown
Member

Update to Rust edition 2024, remove wildcard imports, add GitHub Actions CI, configure linting and formatting tools, etc.

Update to Rust edition 2024, remove wildcard imports, add GitHub Actions
CI, configure linting and formatting tools, etc.
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR modernizes the codebase by updating the Rust edition, removing wildcard imports, adding comprehensive linting configuration, and migrating from Travis CI/AppVeyor to GitHub Actions.

Key changes:

  • Updates Rust edition from 2018 to 2024, removes wildcard imports in favor of explicit imports
  • Adds extensive Clippy and rustc lint configuration with 50+ enabled lints
  • Migrates CI from Travis/AppVeyor to GitHub Actions with cross-platform testing

Reviewed changes

Copilot reviewed 22 out of 24 changed files in this pull request and generated 7 comments.

Show a summary per file
File Description
Cargo.toml Updates edition to 2024, bumps dependencies (windows-sys, winreg, core-foundation), adds comprehensive lint configuration
Cargo.lock Adds lock file with updated dependency versions
src/windows.rs Replaces wildcard imports with explicit ones, migrates from winapi to windows-sys, adds safety documentation for unsafe blocks
src/sysconfig_proxy.rs Removes wildcard imports, fixes formatting, improves test assertions
src/macos.rs Removes wildcard imports, improves code formatting
src/lib.rs Removes wildcard imports, refactors use_proxy_for_address logic, adds #[non_exhaustive] to ProxyConfig
src/env.rs Removes wildcard imports, adds mutex for test serialization, wraps set_var in unsafe blocks
src/errors.rs Minor formatting improvements
examples/get_proxies.rs Removes wildcard imports, improves formatting
rustfmt.toml Adds rustfmt configuration with max_width 120, import grouping
rust-toolchain.toml Pins Rust toolchain to 1.92.0 with rustfmt and clippy
clippy.toml Configures clippy with too-many-lines threshold
.github/workflows/ci.yml Adds GitHub Actions CI workflow for formatting, linting, and testing across platforms
.github/workflows/release-crates.yml Adds automated crate release workflow using release-plz
.github/dependabot.yml Configures Dependabot for cargo dependency updates
AGENTS.md Adds comprehensive project documentation and contribution guidelines
CLAUDE.md Adds reference file pointing to AGENTS.md
.gitignore Removes Cargo.lock and rustfmt backup exclusions
.travis.yml, appveyor.yml, ci/* Removes old CI configuration files
Comments suppressed due to low confidence (1)

ci/install.sh:1

  • The previous CI installer script downloaded and executed https://japaric.github.io/trust/install.sh via curl | sh while dynamically selecting a cross tag, which is a classic supply-chain and remote-code-execution risk for the build environment. An attacker who can compromise the hosted script or influence the fetched tag could run arbitrary code in CI with access to secrets and the ability to tamper with build artifacts. Using pinned, checksummed binaries or official package-manager installs instead of curl | sh mitigates this class of attack; this PR removes the vulnerable script, which fixes the issue.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread src/env.rs Outdated
Comment thread src/lib.rs Outdated
Comment thread src/macos.rs Outdated
Comment thread Cargo.toml Outdated
Comment thread CLAUDE.md
Comment thread .github/workflows/ci.yml Outdated
Comment thread src/env.rs Outdated
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 22 out of 24 changed files in this pull request and generated no new comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Copy link
Copy Markdown

@stackmator Stackmator (stackmator) left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@CBenoit Benoît Cortier (CBenoit) merged commit f401ac4 into master Dec 17, 2025
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

4 participants