chore: modernize codebase and CI#15
Merged
Benoît Cortier (CBenoit) merged 11 commits intomasterfrom Dec 17, 2025
Merged
Conversation
Update to Rust edition 2024, remove wildcard imports, add GitHub Actions CI, configure linting and formatting tools, etc.
Copilot started reviewing on behalf of
Benoît Cortier (CBenoit)
December 17, 2025 14:10
View session
There was a problem hiding this comment.
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.shviacurl | shwhile dynamically selecting acrosstag, 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 ofcurl | shmitigates 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.
Copilot started reviewing on behalf of
Benoît Cortier (CBenoit)
December 17, 2025 14:45
View session
There was a problem hiding this comment.
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.
Richard Markiewicz (thenextman)
approved these changes
Dec 17, 2025
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Update to Rust edition 2024, remove wildcard imports, add GitHub Actions CI, configure linting and formatting tools, etc.