Skip to content

House-keeping Improvements#792

Open
InsertCreativityHere wants to merge 3 commits into
icerpc:mainfrom
InsertCreativityHere:housekeeping-improvements
Open

House-keeping Improvements#792
InsertCreativityHere wants to merge 3 commits into
icerpc:mainfrom
InsertCreativityHere:housekeeping-improvements

Conversation

@InsertCreativityHere

@InsertCreativityHere InsertCreativityHere commented Jul 10, 2026

Copy link
Copy Markdown
Member

While giving a fresh slate to https://github.com/icerpc/icerpc-rust/pull/26, I decided to look back into some of the things we were setting/doing in these ancillary files, and sure enough there was some cleanup/improvement to do.

They're all minor enough that I think not backporting anything is perfectly fine.

Comment thread .github/workflows/ci.yml
contents: read

env:
WARNINGS_AS_ERRORS: yes

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

This was apparently useless?
Maybe we had some custom logic using it in the past, but nothing in Rust checks or cares about this environment variable.

Comment thread .github/workflows/ci.yml
Comment on lines -33 to -34
env:
RUSTDOCFLAGS: "-D warnings"

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

Better to set this for all jobs, instead of doing it for every single one.

with:
files: |
**/*.{rs,md,json}
**/*.{rs,slice,md,json,yml,toml}

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

Spell check everything!

Comment on lines +5 to 8
branches: ['main']
pull_request:
branches: ['main']

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

For parity with our other workflow files.

Comment thread .vscode/cspell.json

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

I went through and checked which of these words was actually still necessary, since we've pruned and removed alot of code from slicec after dropping Slice1 support.

Sure enough, many of them are no longer necessary.

Comment thread .gitignore
Comment on lines -5 to -7
# Remove Cargo.lock from gitignore if creating an executable, leave it for libraries
# More information here https://doc.rust-lang.org/cargo/guide/cargo-toml-vs-cargo-lock.html
Cargo.lock

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

The Rust team has softened their stance about including the Cargo.lock file.
Including it gives us more reproducible builds but does some harm to the ecosystem since we won't be testing against the latest and greatest anymore.

By making sure to update our dependencies more often, this becomes a non-issue though.

@@ -76,7 +76,7 @@ mod fixed_size {
);
let remaining = &buffer[expected.len()..];
assert!(

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

Also fixed some random issues I found by running the latest version of the linter.
All very minor things.

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Pull request overview

Housekeeping-focused cleanup across tests, workspace metadata, and CI/spellcheck workflows to reduce duplication and improve consistency.

Changes:

  • Simplifies a few Rust tests (idiomatic assertions, avoids unnecessary format!, minor iterator cleanup).
  • Moves crate repository metadata into the workspace package section and adds a workspace-level Cargo.lock.
  • Updates CI to enforce warnings-as-errors via RUSTFLAGS/RUSTDOCFLAGS and expands spellcheck to more file types.

Reviewed changes

Copilot reviewed 10 out of 12 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
slicec/tests/enums/container.rs Uses is_empty() for clearer empty-field assertion.
slicec/tests/custom_tests.rs Replaces format! with a static &str Slice snippet.
slicec/tests/attribute_tests.rs Uses a fixed array instead of vec! for expected lints.
slicec/Cargo.toml Inherits repository from workspace package metadata.
slice-codec/tests/encoding_tests.rs Minor idiomatic iterator and UTF-8 byte count simplifications.
slice-codec/Cargo.toml Inherits repository from workspace package metadata.
Cargo.toml Adds workspace-level repository value.
Cargo.lock Adds committed lockfile for the workspace.
.vscode/cspell.json Updates allowed-words list (but see review comment).
.gitignore Stops ignoring Cargo.lock.
.github/workflows/spellcheck.yml Runs spellcheck on main pushes/PRs and expands checked extensions.
.github/workflows/ci.yml Enforces warnings as errors via flags and removes per-step doc flag override.

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

Comment thread .vscode/cspell.json
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants