From 08236c41942cbfdbfa024f1c8447f4f87c7bb8e9 Mon Sep 17 00:00:00 2001 From: Wilson Silva Date: Fri, 6 Jan 2023 11:15:17 +0700 Subject: [PATCH] Add yard, yardstick and yard-junk to document the gem --- .gitignore | 2 ++ .yardstick.yml | 22 ++++++++++++++++++++++ Rakefile | 14 ++++++++++++++ nostr.gemspec | 3 +++ 4 files changed, 41 insertions(+) create mode 100644 .yardstick.yml diff --git a/.gitignore b/.gitignore index 7e34c69..15a9f95 100644 --- a/.gitignore +++ b/.gitignore @@ -1,8 +1,10 @@ /.bundle/ /.yardoc /_yardoc/ +/.yardocck /coverage/ /doc/ +/measurements/ /pkg/ /spec/reports/ /tmp/ diff --git a/.yardstick.yml b/.yardstick.yml new file mode 100644 index 0000000..f7f38e2 --- /dev/null +++ b/.yardstick.yml @@ -0,0 +1,22 @@ +threshold: 100 +rules: + ApiTag::Presence: + enabled: true + ApiTag::Inclusion: + enabled: true + ApiTag::ProtectedMethod: + enabled: true + ApiTag::PrivateMethod: + enabled: true + ExampleTag: + enabled: true + ReturnTag: + enabled: true + Summary::Presence: + enabled: true + Summary::Length: + enabled: false + Summary::Delimiter: + enabled: true + Summary::SingleLine: + enabled: false diff --git a/Rakefile b/Rakefile index 0d1797d..5d4c20b 100644 --- a/Rakefile +++ b/Rakefile @@ -4,13 +4,27 @@ require 'bundler/audit/task' require 'bundler/gem_tasks' require 'rspec/core/rake_task' require 'rubocop/rake_task' +require 'yaml' +require 'yard/rake/yardoc_task' +require 'yard-junk/rake' +require 'yardstick/rake/measurement' +require 'yardstick/rake/verify' + +yardstick_options = YAML.load_file('.yardstick.yml') Bundler::Audit::Task.new RSpec::Core::RakeTask.new(:spec) RuboCop::RakeTask.new +YARD::Rake::YardocTask.new +YardJunk::Rake.define_task +Yardstick::Rake::Measurement.new(:yardstick_measure, yardstick_options) +Yardstick::Rake::Verify.new task default: %i[spec rubocop] +# Remove the report on rake clobber +CLEAN.include('measurements', 'doc', '.yardoc', 'tmp') + # Delete these files and folders when running rake clobber. CLOBBER.include('coverage', '.rspec_status') diff --git a/nostr.gemspec b/nostr.gemspec index 4a90ea5..0eb396f 100644 --- a/nostr.gemspec +++ b/nostr.gemspec @@ -46,4 +46,7 @@ Gem::Specification.new do |spec| spec.add_development_dependency 'rubocop-rspec', '2.16' spec.add_development_dependency 'simplecov', '~> 0.22' spec.add_development_dependency 'simplecov-console', '~> 0.9' + spec.add_development_dependency 'yard', '~> 0.9' + spec.add_development_dependency 'yard-junk', '~> 0.0.9' + spec.add_development_dependency 'yardstick', '~> 0.9' end