
Security News
rv Is a New Rust-Powered Ruby Version Manager Inspired by Python's uv
Ruby maintainers from Bundler and rbenv teams are building rv to bring Python uv's speed and unified tooling approach to Ruby development.
The metadata-json-lint tool validates and lints metadata.json
files in Puppet modules against style guidelines from the Puppet Forge module metadata recommendations.
metadata-json-lint is tested on Ruby 2.7 to 3.3. The the authoritative source,
check the required_ruby_version
attribute in the gemspec file.
via gem
command:
gem install metadata-json-lint
via Gemfile:
gem 'metadata-json-lint'
On the command line, run metadata-json-lint
with the path of your metadata.json
file:
metadata-json-lint /path/to/metadata.json
If you are already using puppet_spec_helper
, the 'validate' task already includes metadata-json-lint
.
You can also integrate metadata-json-lint
checks into your tests using the Rake task. Add require 'metadata-json-lint/rake_task'
to your Rakefile
, and then run:
rake metadata_lint
To set options for the Rake task, include them when you define the task:
require 'metadata_json_lint'
task :metadata_lint do
MetadataJsonLint.parse('metadata.json') do |options|
options.strict_license = false
end
end
Alternatively, set the option after requiring the Rake task:
require 'metadata-json-lint/rake_task'
MetadataJsonLint.options.strict_license = false
--[no-]strict-dependencies
: Whether to fail if module version dependencies are open-ended. Defaults to false
.--[no-]strict-license
: Whether to fail on strict license check. Defaults to true
.--[no-]fail-on-warnings
: Whether to fail on warnings. Defaults to true
.--[no-]strict-puppet-version
: Whether to fail if Puppet version requirements are open-ended or no longer supported. Defaults to false
.A big thank you to the contributors.
How to make a new release?
$ git diff
diff --git a/metadata-json-lint.gemspec b/metadata-json-lint.gemspec
index c86668e..6a3ad38 100644
--- a/metadata-json-lint.gemspec
+++ b/metadata-json-lint.gemspec
@@ -2,7 +2,7 @@ require 'date'
Gem::Specification.new do |s|
s.name = 'metadata-json-lint'
- s.version = '2.4.0'
+ s.version = '2.5.0'
s.date = Date.today.to_s
s.summary = 'metadata-json-lint /path/to/metadata.json'
s.description = 'Utility to verify Puppet metadata.json files'
export CHANGELOG_GITHUB_TOKEN=*token*
$ bundle install --path .vendor/ --jobs=$(nproc) --with release
$ bundle exec rake changelog
Found 25 tags
Fetching tags dates: 25/25
Sorting tags...
Received issues: 103
Pull Request count: 77
Filtered pull requests: 72
Filtered issues: 26
Fetching events for issues and PR: 98
Fetching closed dates for issues: 98/98
Fetching SHAs for tags: 25
Associating PRs with tags: 72/72
Generating entry...
Done!
Generated log placed in ~/metadata-json-lint/CHANGELOG.md
Check the diff for CHANGELOG.md
. Does it contain a breaking change but the
new version is only a minor bump? Does the new release only contains bug fixes?
Adjust the version properly while honouring semantic versioning. If required,
regenerate the CHANGELOG.md
. Afterwards submit it as a PR.
If it gets approved, merge the PR, create a git tag on that and push it.
FAQs
Unknown package
We found that metadata-json-lint demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Ruby maintainers from Bundler and rbenv teams are building rv to bring Python uv's speed and unified tooling approach to Ruby development.
Security News
Following last week’s supply chain attack, Nx published findings on the GitHub Actions exploit and moved npm publishing to Trusted Publishers.
Security News
AGENTS.md is a fast-growing open format giving AI coding agents a shared, predictable way to understand project setup, style, and workflows.