Add explicit SemVer release policy.

This commit is contained in:
Marc Siegel 2018-01-14 17:17:12 -05:00
parent e6a68fcb6b
commit 5e777f6bee
2 changed files with 34 additions and 24 deletions

View File

@ -328,6 +328,10 @@ Works on [all ruby versions since 1.8.7](https://github.com/ms-ati/docile/blob/m
Used by some pretty cool gems to implement their DSLs, notably including [SimpleCov](https://github.com/colszowka/simplecov). Keep an eye out for new gems using Docile at the [Ruby Toolbox](https://www.ruby-toolbox.com/projects/docile).
## Release Policy
Docile releases follow [Semantic Versioning 2.0.0](https://semver.org/spec/v2.0.0.html).
## Note on Patches/Pull Requests
* Fork the project.

View File

@ -1,39 +1,45 @@
require File.expand_path('on_what', File.dirname(__FILE__))
$:.push File.expand_path('../lib', __FILE__)
require 'docile/version'
$:.push File.expand_path("../lib", __FILE__)
require File.expand_path("on_what", File.dirname(__FILE__))
require "docile/version"
Gem::Specification.new do |s|
s.name = 'docile'
s.name = "docile"
s.version = Docile::VERSION
s.author = 'Marc Siegel'
s.email = 'marc@usainnov.com'
s.homepage = 'https://ms-ati.github.io/docile/'
s.summary = 'Docile keeps your Ruby DSLs tame and well-behaved'
s.description = 'Docile turns any Ruby object into a DSL. Especially useful with the Builder pattern.'
s.license = 'MIT'
s.author = "Marc Siegel"
s.email = "marc@usainnov.com"
s.homepage = "https://ms-ati.github.io/docile/"
s.summary = "Docile keeps your Ruby DSLs tame and well-behaved."
s.description = "Docile treats the methods of a given ruby object as a DSL " \
"(domain specific language) within a given block. \n\n" \
"Killer feature: you can also reference methods, instance " \
"variables, and local variables from the original (non-DSL) "\
"context within the block. \n\n" \
"Docile releases follow Semantic Versioning as defined at " \
"semver.org."
s.license = "MIT"
# Files included in the gem
s.files = `git ls-files`.split("\n")
s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
s.require_paths = %w(lib)
s.files = `git ls-files -z`.split("\x0").reject do |f|
f.match(%r{^(test|spec|features)/})
end
s.require_paths = ["lib"]
# Specify oldest supported Ruby version
s.required_ruby_version = '>= 1.8.7'
s.required_ruby_version = ">= 1.8.7"
# Run rspec tests from rake even on old Ruby versions
s.add_development_dependency 'rake', '~> 10.5' if on_less_than_1_9_3? # Pin compatible rake on old rubies, see: https://github.com/travis-ci/travis.rb/issues/380
s.add_development_dependency 'rake', '< 11.0' unless on_less_than_1_9_3? # See http://stackoverflow.com/questions/35893584/nomethoderror-undefined-method-last-comment-after-upgrading-to-rake-11
s.add_development_dependency 'rspec', '~> 3.0'
s.add_development_dependency "rake", "~> 10.5" if on_less_than_1_9_3? # Pin compatible rake on old rubies, see: https://github.com/travis-ci/travis.rb/issues/380
s.add_development_dependency "rake", "< 11.0" unless on_less_than_1_9_3? # See http://stackoverflow.com/questions/35893584/nomethoderror-undefined-method-last-comment-after-upgrading-to-rake-11
s.add_development_dependency "rspec", "~> 3.0"
# Run code coverage where possible - not on Rubinius
unless on_rubinius?
# Pin versions for Travis builds on 1.9
s.add_development_dependency 'json', '< 2.0' if on_less_than_2_0?
s.add_development_dependency "json", "< 2.0" if on_less_than_2_0?
# Pin versions for Travis builds on 1.8
s.add_development_dependency 'mime-types' , '~> 1.25.1' if on_1_8?
s.add_development_dependency 'rest-client', '~> 1.6.8' if on_1_8?
s.add_development_dependency "mime-types" , "~> 1.25.1" if on_1_8?
s.add_development_dependency "rest-client", "~> 1.6.8" if on_1_8?
end
# To limit needed compatibility with versions of dependencies, only configure
@ -41,8 +47,8 @@ Gem::Specification.new do |s|
if !on_travis? && !on_jruby? && !on_rubinius? && !on_less_than_2_0?
# Github flavored markdown in YARD documentation
# http://blog.nikosd.com/2011/11/github-flavored-markdown-in-yard.html
s.add_development_dependency 'yard'
s.add_development_dependency 'redcarpet'
s.add_development_dependency 'github-markup'
s.add_development_dependency "yard"
s.add_development_dependency "redcarpet"
s.add_development_dependency "github-markup"
end
end