Our process for building and pushing the trusty-cms could be cleaned up to address some warnings
and make the process a little more fool-proof.
Build Process Is Not Idempotent
Our gemspec picks up some files that do not need to be included in the package.
If one runs gem build twice, an error as follows will be reported:
ERROR: While executing gem ... (Gem::InvalidSpecificationException)
trusty-cms-7.1.1 contains itself, check your files list (Gem::InvalidSpecificationException)
We could avoid this particular error by building the Gem into an ignored directory, pkg.
We should review the gemspec and make sure we're only packaging the files that we need to, e.g.:
s.files = Dir['**/*', '.gitignore', 'public/.htaccess', 'log/.keep', 'vendor/extensions/.keep']
.reject { |f| f.end_with?('.gem') || f.start_with?('pkg/') }
Version Mismatches
We should straighten out these version mismatch:
WARNING: expected RubyGems version 3.5.11, was 1.3.7
WARNING: See https://guides.rubygems.org/specification-reference/ for help
Open Ended Dependencies
We should clarify these dependencies:
WARNING: open-ended dependency on activestorage-validator (>= 0) is not recommended
use a bounded requirement, such as "~> x.y"
WARNING: open-ended dependency on base64 (>= 0) is not recommended
use a bounded requirement, such as "~> x.y"
WARNING: open-ended dependency on bigdecimal (>= 0) is not recommended
use a bounded requirement, such as "~> x.y"
WARNING: open-ended dependency on devise (>= 0) is not recommended
use a bounded requirement, such as "~> x.y"
WARNING: open-ended dependency on devise-two-factor (>= 0) is not recommended
use a bounded requirement, such as "~> x.y"
WARNING: open-ended dependency on diffy (>= 0) is not recommended
use a bounded requirement, such as "~> x.y"
WARNING: open-ended dependency on drb (>= 0) is not recommended
use a bounded requirement, such as "~> x.y"
WARNING: open-ended dependency on image_processing (>= 0) is not recommended
use a bounded requirement, such as "~> x.y"
WARNING: open-ended dependency on kraken-io (>= 0) is not recommended
use a bounded requirement, such as "~> x.y"
WARNING: open-ended dependency on mini_racer (>= 0) is not recommended
use a bounded requirement, such as "~> x.y"
WARNING: open-ended dependency on mutex_m (>= 0) is not recommended
use a bounded requirement, such as "~> x.y"
WARNING: open-ended dependency on mysql2 (>= 0) is not recommended
use a bounded requirement, such as "~> x.y"
WARNING: open-ended dependency on roadie-rails (>= 0) is not recommended
use a bounded requirement, such as "~> x.y"
WARNING: open-ended dependency on rqrcode (>= 0) is not recommended
use a bounded requirement, such as "~> x.y"
WARNING: open-ended dependency on sass-rails (>= 0) is not recommended
use a bounded requirement, such as "~> x.y"
WARNING: open-ended dependency on uri (>= 0) is not recommended
use a bounded requirement, such as "~> x.y"
Our process for building and pushing the
trusty-cmscould be cleaned up to address some warningsand make the process a little more fool-proof.
Build Process Is Not Idempotent
Our gemspec picks up some files that do not need to be included in the package.
If one runs
gem buildtwice, an error as follows will be reported:We could avoid this particular error by building the Gem into an ignored directory,
pkg.We should review the gemspec and make sure we're only packaging the files that we need to, e.g.:
Version Mismatches
We should straighten out these version mismatch:
Open Ended Dependencies
We should clarify these dependencies: