Conversation
When running edge tests in CI, the prawn-dev and prawn-manual_builder dependencies are pulled from their GitHub repositories. Since both prawn-dev and prawn-manual_builder have been bumped to newer versions on GitHub, dependency resolution in the gemspec was failing. This commit fixes the gemspec dependency constraints to resolve that. Upgrading prawn-manual_builder also changed the generated PDF output, so the expected hash value compared in spec/prawn_manual_spec.rb has been updated accordingly.
When running edge tests in CI, the prawn-dev, prawn-manual_builder, and ttfunk dependencies are pulled from their GitHub repositories. If any of these dependencies introduce a change that affects the PDF output verified in prawn_manual_spec.rb, the edge tests will inevitably fail. Updating the expected hash to match edge would then break the non-edge tests instead. To avoid this, the checks in prawn_manual_spec.rb are now skipped when running under edge dependencies.
Pinning `uri >= 1.0` in the gemspec broke Ruby versions old enough that only an equally old Bundler is installable there (e.g. 3.0.0's bundler 2.5.23): that Bundler can't safely replace a `uri` default gem that's already been activated, so `bundle exec` itself now fails with `Gem::LoadError: You have already activated uri 0.10.1, but your Gemfile requires uri 1.1.1`, before any test code even runs. Define URI::RFC2396_PARSER ourselves in spec_helper when it's missing instead. On the older `uri` versions that lack it, URI::DEFAULT_PARSER already *is* the RFC2396 parser (uri 1.0 repointed DEFAULT_PARSER to RFC3986 and introduced RFC2396_PARSER as the explicit way to keep the old behavior), so this is equivalent rather than a rough workaround, and it sidesteps Bundler's default-gem activation rules entirely.
This branch has not been deployed
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.
Fixed CI jobs that were failing due to dependencies on edge. Also updated actions/checkout and actions/cache to their latest versions.
On CI in my forked repository, the code-style job is failing because rubocop is at its latest version, but I haven't addressed this since fixing it would make the diff too large.
CI result is here.