commitment 0.0.1.pre → 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 0f63951c4d727ee0f20bbc56b73b9db376184a40
4
- data.tar.gz: b471f57ef66dbcc60972bd3b9786bedd2a18bdef
3
+ metadata.gz: 9235e37c7ffc3a3266515592bb97fa4056e25d14
4
+ data.tar.gz: c2306824f04986919404c5ef460e6c4a104c67c5
5
5
  SHA512:
6
- metadata.gz: 0831f2667cca1d471bfc04b7347fa2cb0d889e9b3370207547be875adbf1d686f3b9ed31c18018206ce91d9a8ce5b7087334f1ddfe6ef0264cc9a5231bc846b6
7
- data.tar.gz: 3f37941d318dcec873a25ff2262964c8fe1ff0b3915a4940acbed192312217cfe08c0df1f43d8c8aaf4201dbfcec17b37e61278efcd9848b787ad91fa0d6798f
6
+ metadata.gz: e481775dfbf32401fe89b1a2989b0e77375b71732f2db01c3af4c9b83f0a4be4e4c5e02e8f9b3e71b187e131c8ee85b8a1b2a56f5d1686f0576d08394302fb10
7
+ data.tar.gz: a6a0241a388c912fb7ebbc2fb3ed188812f11e33435489e4686e4d1a9181e436d81c5dbdee17fc9fa1cc0ed08d3613252393c07595af170abf006281d33b8e99
data/.travis.yml CHANGED
@@ -1,3 +1,4 @@
1
1
  language: ruby
2
2
  rvm:
3
3
  - 2.2.1
4
+ - 2.2.2
data/LICENSE CHANGED
@@ -1,5 +1,5 @@
1
1
  ##########################################################################
2
- # Copyright 2015 Jeremy Friesen
2
+ # Copyright 2015 University of Notre Dame
3
3
  #
4
4
  # Licensed under the Apache License, Version 2.0 (the "License");
5
5
  # you may not use this file except in compliance with the License.
data/README.md CHANGED
@@ -1,39 +1,45 @@
1
1
  # Commitment
2
2
 
3
- Welcome to your new gem! In this directory, you'll find the files you need to be able to package up your Ruby library into a gem. Put your Ruby code in the file `lib/commitment`. To experiment with that code, run `bin/console` for an interactive prompt.
3
+ Commitment is [Rails::Railtie](http://api.rubyonrails.org/classes/Rails/Railtie.html) gem.
4
+ Commitment provides a series of [Rake](https://github.com/ruby/rake) tasks for [Rails](http://rubyonrails.org) applications.
4
5
 
5
- TODO: Delete this and the text above, and describe your gem
6
+ The goal of Commitment is to consolidate common tasks that we use to uphold our
7
+ software development commitment:
6
8
 
7
- ## Installation
8
-
9
- Add this line to your application's Gemfile:
10
-
11
- ```ruby
12
- gem 'commitment'
13
- ```
9
+ * Code coverage
10
+ * Programatic style enforcement
11
+ * Vulnerability scans
12
+ * Linting
14
13
 
15
- And then execute:
14
+ As we work on our code, we want to make sure we are keeping our commitment.
15
+ If we fail to do so, the build is broken.
16
16
 
17
- $ bundle
17
+ ## Installation
18
18
 
19
- Or install it yourself as:
19
+ Before you get started, make sure all of your project changes are committed.
20
+ Commitment doesn't change too many things, but its nice to "install" something into a clean work area.
20
21
 
21
- $ gem install commitment
22
+ Now, add this line to your application's Gemfile:
22
23
 
23
- ## Usage
24
+ ```ruby
25
+ group :development, :test do
26
+ gem 'commitment'
27
+ end
28
+ ```
24
29
 
25
- TODO: Write usage instructions here
30
+ And then go to your console and `cd` into the project. You'll run the following two commands:
26
31
 
27
- ## Development
32
+ ```console
33
+ $ bundle
34
+ $ rails generate commitment:install
35
+ ```
28
36
 
29
- After checking out the repo, run `bin/setup` to install dependencies. Then, run `bin/console` for an interactive prompt that will allow you to experiment.
37
+ Several files will be added to your project. These are configuration files for the underlying tasks that will be run.
38
+ Other files will be updated so that Commitment can do its job.
30
39
 
31
- To install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release` to create a git tag for the version, push git commits and tags, and push the `.gem` file to [rubygems.org](https://rubygems.org).
40
+ The `$ rails generate commitment:install` will report as output all files that were changed or updated.
41
+ If you started with a clean work area, you can use your version control tools to see what changes were made.
32
42
 
33
- ## Contributing
43
+ ## Roadmap
34
44
 
35
- 1. Fork it ( https://github.com/[my-github-username]/commitment/fork )
36
- 2. Create your feature branch (`git checkout -b my-new-feature`)
37
- 3. Commit your changes (`git commit -am 'Add some feature'`)
38
- 4. Push to the branch (`git push origin my-new-feature`)
39
- 5. Create a new Pull Request
45
+ The Commitment gem presently does not make its own commitments. I'd like to fix that.
data/Rakefile CHANGED
@@ -1 +1,10 @@
1
1
  require "bundler/gem_tasks"
2
+
3
+ require 'rake'
4
+ require 'rake/testtask'
5
+
6
+ Rake::TestTask.new do |t|
7
+ t.test_files = Dir.glob('test/**/*_test.rb')
8
+ end
9
+
10
+ task(default: :test)
data/bin/console CHANGED
File without changes
data/bin/setup CHANGED
File without changes
data/commitment.gemspec CHANGED
@@ -11,14 +11,22 @@ Gem::Specification.new do |spec|
11
11
 
12
12
  spec.summary = %q{Provides a mechanism for monitoring your enduring commitment.}
13
13
  spec.description = %q{Provides a mechanism for monitoring your enduring commitment.}
14
- spec.homepage = "https://github.com/jeremyf/commitment"
14
+ spec.homepage = "https://github.com/ndlib/commitment"
15
15
 
16
16
  spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
17
17
  spec.bindir = "bin"
18
18
  spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
19
19
  spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
20
20
  spec.require_paths = ["lib"]
21
+ spec.license = 'APACHE2'
21
22
 
22
23
  spec.add_development_dependency "bundler", "~> 1.9"
23
24
  spec.add_development_dependency "rake", "~> 10.0"
25
+ spec.add_dependency "rubocop"
26
+ spec.add_dependency "railties"
27
+ spec.add_dependency "brakeman"
28
+ spec.add_dependency "scss-lint"
29
+ spec.add_dependency "simplecov"
30
+ spec.add_dependency "jshintrb"
31
+ spec.add_dependency "codeclimate-test-reporter"
24
32
  end
data/lib/commitment.rb CHANGED
@@ -1,5 +1,56 @@
1
1
  require "commitment/version"
2
+ require 'json'
2
3
 
3
4
  module Commitment
4
- # Your code goes here...
5
+ module_function
6
+ def config
7
+ @config ||= Config.new
8
+ end
9
+
10
+ class Config
11
+ attr_reader :rubocop_config
12
+ attr_reader :brakeman_output_pathname
13
+ attr_reader :jshint_pattern
14
+ attr_reader :jshint_exclude_pattern
15
+ attr_reader :jshint_options
16
+ attr_reader :scss_lint_config
17
+ attr_reader :percentage_coverage_goal
18
+ attr_reader :code_coverage_last_run_pathname
19
+
20
+ def initialize
21
+ @project_pathname = default_project_pathname
22
+ @rubocop_config = project_pathname.join('.hound.yml').to_s
23
+ @brakeman_output_pathname = project_pathname.join('.tmp.brakeman.json')
24
+ @jshint_pattern = 'app/assets/**/*.js'
25
+ @jshint_exclude_pattern = 'app/assets/javascripts/vendor/*.js'
26
+ @jshint_options = JSON.parse(project_pathname.join('.jshintrc').read)
27
+ @scss_lint_config = project_pathname.join('.scss_lint.yml').to_s
28
+ @percentage_coverage_goal = 100
29
+ @code_coverage_last_run_pathname = project_pathname.join('coverage/.last_run.json')
30
+ end
31
+
32
+ def code_coverage_last_run_results
33
+ if code_coverage_last_run_pathname.exist?
34
+ JSON.parse(code_coverage_last_run_pathname.read)
35
+ else
36
+ abort("Commitment Failure: Unable to find code coverage information in `#{code_coverage_last_run_pathname.to_s}'")
37
+ end
38
+ end
39
+
40
+ private
41
+
42
+ attr_reader :project_pathname
43
+
44
+ def default_project_pathname
45
+ if defined?(Rails)
46
+ Rails.root
47
+ else
48
+ require 'pathname'
49
+ Pathname.new(File.expand_path('../commitment/generators/templates', __FILE__))
50
+ end
51
+ end
52
+ end
53
+ private_constant :Config
5
54
  end
55
+
56
+ require 'commitment/railtie' if defined?(Rails)
@@ -0,0 +1,55 @@
1
+ module Commitment
2
+ class InstallGenerator < Rails::Generators::Base
3
+ source_root(File.expand_path("../templates", __FILE__))
4
+
5
+ def create_jshint_options
6
+ template('.jshintrc', '.jshintrc')
7
+ end
8
+
9
+ def create_hound_options
10
+ template('.hound.yml', '.hound.yml')
11
+ end
12
+
13
+ def create_scss_lint
14
+ template('.scss_lint.yml', '.scss_lint.yml')
15
+ end
16
+
17
+ def create_coverage_helper
18
+ # Putting this file in the root directory of the project
19
+ template('coverage_helper.rb', "#{test_framework}/coverage_helper.rb")
20
+ end
21
+
22
+ def build_default_rake_task
23
+ append_file('Rakefile') do %(
24
+ # BEGIN `commitment:install` generator
25
+ # This was added via commitment:install generator. You are free to change this.
26
+ Rake::Task["default"].clear
27
+ task(
28
+ default: [
29
+ 'commitment:rubocop',
30
+ 'commitment:jshint',
31
+ 'commitment:scss_lint',
32
+ '#{test_framework}',
33
+ 'commitment:code_coverage',
34
+ 'commitment:brakeman'
35
+ ]
36
+ )
37
+ # END `commitment:install` generator
38
+ )
39
+ end
40
+ end
41
+
42
+ def inject_spec_helper
43
+ prepend_file("#{test_framework}/#{test_framework}_helper.rb", "require 'coverage_helper'\n")
44
+ end
45
+
46
+ private
47
+
48
+ def test_framework
49
+ return 'spec' if Rails.configuration.generators.options.fetch(:rails).fetch(:test_framework) == :rspec
50
+ 'test'
51
+ rescue NoMethodError, KeyError
52
+ 'test'
53
+ end
54
+ end
55
+ end
@@ -0,0 +1,41 @@
1
+ ################################################################################
2
+ ## Releasing the hounds in your local environment.
3
+ ##
4
+ ## Setup:
5
+ ## $ gem install rubocop
6
+ ##
7
+ ## Run:
8
+ ## $ rubocop ./path/to/file ./or/path/to/directory -c ./.hound.yml
9
+ ##
10
+ ## Generation Notes:
11
+ ## This file was generated via the commitment:install generator. You are free
12
+ ## and expected to change this file.
13
+ ################################################################################
14
+ AllCops:
15
+ Include:
16
+ - Rakefile
17
+ Exclude:
18
+ - 'vendor/**/*'
19
+ - 'tmp/**/*'
20
+ - 'bin/**/*'
21
+ RunRailsCops: true
22
+
23
+ LineLength:
24
+ Description: 'Limit lines to 140 characters.'
25
+ Max: 140
26
+ Enabled: true
27
+
28
+ Style/StringLiterals:
29
+ Description: 'Checks if uses of quotes match the configured preference.'
30
+ Enabled: false
31
+
32
+ PercentLiteralDelimiters:
33
+ Description: 'Use `%`-literal delimiters consistently'
34
+ Enabled: false
35
+
36
+ Documentation:
37
+ Description: 'Document classes and non-namespace modules.'
38
+ Enabled: true
39
+ Exclude:
40
+ - spec/**/*
41
+ - test/**/*
@@ -0,0 +1,92 @@
1
+ {
2
+
3
+ // Generation Notes:
4
+ // This file was generated via the commitment:install generator. You are free
5
+ // and expected to change this file.
6
+ //
7
+ // JSHint Default Configuration File (as on JSHint website)
8
+ // See http://jshint.com/docs/ for more details
9
+
10
+ "maxerr" : 50, // {int} Maximum error before stopping
11
+
12
+ // Enforcing
13
+ "bitwise" : true, // true: Prohibit bitwise operators (&, |, ^, etc.)
14
+ "camelcase" : false, // true: Identifiers must be in camelCase
15
+ "curly" : true, // true: Require {} for every new block or scope
16
+ "eqeqeq" : true, // true: Require triple equals (===) for comparison
17
+ "forin" : true, // true: Require filtering for..in loops with obj.hasOwnProperty()
18
+ "freeze" : true, // true: prohibits overwriting prototypes of native objects such as Array, Date etc.
19
+ "immed" : false, // true: Require immediate invocations to be wrapped in parens e.g. `(function () { } ());`
20
+ "indent" : 4, // {int} Number of spaces to use for indentation
21
+ "latedef" : false, // true: Require variables/functions to be defined before being used
22
+ "newcap" : false, // true: Require capitalization of all constructor functions e.g. `new F()`
23
+ "noarg" : true, // true: Prohibit use of `arguments.caller` and `arguments.callee`
24
+ "noempty" : true, // true: Prohibit use of empty blocks
25
+ "nonbsp" : true, // true: Prohibit "non-breaking whitespace" characters.
26
+ "nonew" : false, // true: Prohibit use of constructors for side-effects (without assignment)
27
+ "plusplus" : false, // true: Prohibit use of `++` & `--`
28
+ "quotmark" : false, // Quotation mark consistency:
29
+ // false : do nothing (default)
30
+ // true : ensure whatever is used is consistent
31
+ // "single" : require single quotes
32
+ // "double" : require double quotes
33
+ "undef" : true, // true: Require all non-global variables to be declared (prevents global leaks)
34
+ "unused" : true, // true: Require all defined variables be used
35
+ "strict" : true, // true: Requires all functions run in ES5 Strict Mode
36
+ "maxparams" : false, // {int} Max number of formal params allowed per function
37
+ "maxdepth" : false, // {int} Max depth of nested blocks (within functions)
38
+ "maxstatements" : false, // {int} Max number statements per function
39
+ "maxcomplexity" : false, // {int} Max cyclomatic complexity per function
40
+ "maxlen" : false, // {int} Max number of characters per line
41
+
42
+ // Relaxing
43
+ "asi" : false, // true: Tolerate Automatic Semicolon Insertion (no semicolons)
44
+ "boss" : false, // true: Tolerate assignments where comparisons would be expected
45
+ "debug" : false, // true: Allow debugger statements e.g. browser breakpoints.
46
+ "eqnull" : false, // true: Tolerate use of `== null`
47
+ "es5" : false, // true: Allow ES5 syntax (ex: getters and setters)
48
+ "esnext" : false, // true: Allow ES.next (ES6) syntax (ex: `const`)
49
+ "moz" : false, // true: Allow Mozilla specific syntax (extends and overrides esnext features)
50
+ // (ex: `for each`, multiple try/catch, function expression…)
51
+ "evil" : false, // true: Tolerate use of `eval` and `new Function()`
52
+ "expr" : false, // true: Tolerate `ExpressionStatement` as Programs
53
+ "funcscope" : false, // true: Tolerate defining variables inside control statements
54
+ "globalstrict" : false, // true: Allow global "use strict" (also enables 'strict')
55
+ "iterator" : false, // true: Tolerate using the `__iterator__` property
56
+ "lastsemic" : false, // true: Tolerate omitting a semicolon for the last statement of a 1-line block
57
+ "laxbreak" : false, // true: Tolerate possibly unsafe line breakings
58
+ "laxcomma" : false, // true: Tolerate comma-first style coding
59
+ "loopfunc" : false, // true: Tolerate functions being defined in loops
60
+ "multistr" : false, // true: Tolerate multi-line strings
61
+ "noyield" : false, // true: Tolerate generator functions with no yield statement in them.
62
+ "notypeof" : false, // true: Tolerate invalid typeof operator values
63
+ "proto" : false, // true: Tolerate using the `__proto__` property
64
+ "scripturl" : false, // true: Tolerate script-targeted URLs
65
+ "shadow" : false, // true: Allows re-define variables later in code e.g. `var x=1; x=2;`
66
+ "sub" : false, // true: Tolerate using `[]` notation when it can still be expressed in dot notation
67
+ "supernew" : false, // true: Tolerate `new function () { ... };` and `new Object;`
68
+ "validthis" : false, // true: Tolerate using this in a non-constructor function
69
+
70
+ // Environments
71
+ "browser" : true, // Web Browser (window, document, etc)
72
+ "browserify" : false, // Browserify (node.js code in the browser)
73
+ "couch" : false, // CouchDB
74
+ "devel" : true, // Development/debugging (alert, confirm, etc)
75
+ "dojo" : false, // Dojo Toolkit
76
+ "jasmine" : false, // Jasmine
77
+ "jquery" : true, // jQuery
78
+ "mocha" : true, // Mocha
79
+ "mootools" : false, // MooTools
80
+ "node" : false, // Node.js
81
+ "nonstandard" : false, // Widely adopted globals (escape, unescape, etc)
82
+ "prototypejs" : false, // Prototype and Scriptaculous
83
+ "qunit" : false, // QUnit
84
+ "rhino" : false, // Rhino
85
+ "shelljs" : false, // ShellJS
86
+ "worker" : false, // Web Workers
87
+ "wsh" : false, // Windows Scripting Host
88
+ "yui" : false, // Yahoo User Interface
89
+
90
+ // Custom Globals
91
+ "globals" : {} // additional predefined global variables
92
+ }
@@ -0,0 +1,12 @@
1
+ ## Generation Notes:
2
+ ## This file was generated via the commitment:install generator. You are free
3
+ ## and expected to change this file.
4
+ scss_files: "app/**/*.scss"
5
+
6
+ linters:
7
+ PlaceholderInExtend:
8
+ exclude: app/assets/stylesheets/framework_and_overrides.css.scss
9
+ StringQuotes:
10
+ enabled: false
11
+ Comment:
12
+ exclude: app/assets/stylesheets/application.css.scss
@@ -0,0 +1,19 @@
1
+ ## Generation Notes:
2
+ ## This file was generated via the commitment:install generator. You are free
3
+ ## and expected to change this file.
4
+ if ENV['COV'] || ENV['COVERAGE'] || ENV['TRAVIS']
5
+ if ENV['TRAVIS']
6
+ require 'simplecov'
7
+ require "codeclimate-test-reporter"
8
+ SimpleCov.start do
9
+ formatter SimpleCov::Formatter::MultiFormatter[
10
+ SimpleCov::Formatter::HTMLFormatter,
11
+ CodeClimate::TestReporter::Formatter
12
+ ]
13
+ load_profile 'rails'
14
+ end
15
+ elsif ENV['COV'] || ENV['COVERAGE']
16
+ require 'simplecov'
17
+ SimpleCov.start { load_profile 'rails' }
18
+ end
19
+ end
@@ -0,0 +1,16 @@
1
+ module Commitment
2
+ class Railtie < Rails::Railtie
3
+ rake_tasks do
4
+ require 'commitment'
5
+ load 'commitment/tasks/brakeman.rake'
6
+ load 'commitment/tasks/rubocop.rake'
7
+ load 'commitment/tasks/jshint.rake'
8
+ load 'commitment/tasks/scss_lint.rake'
9
+ load 'commitment/tasks/code_coverage.rake'
10
+ end
11
+
12
+ generators do
13
+ require 'commitment/generators/install_generator'
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,28 @@
1
+ namespace :commitment do
2
+ namespace :brakeman do
3
+ task scan: [:environment] do
4
+ $stdout.puts "Checking commitment:brakeman"
5
+ require 'brakeman'
6
+ Brakeman.run app_path: '.', output_files: [Commitment.config.brakeman_output_pathname.to_s], print_report: true
7
+ end
8
+
9
+ task(guard: [:environment, 'commitment:brakeman:scan']) do
10
+ begin
11
+ json_document = Commitment.config.brakeman_output_pathname.read
12
+ json = JSON.parse(json_document)
13
+ ensure
14
+ Commitment.config.brakeman_output_pathname.unlink
15
+ end
16
+ errors = []
17
+ ['errors', 'warnings', 'ignored_warnings'].each do |key|
18
+ errors += Array.wrap(json.fetch(key))
19
+ end
20
+ if errors.any?
21
+ abort("Brakeman Vulnerabilities Detected:\n\n\t" << errors.join("\n\t"))
22
+ end
23
+ end
24
+ end
25
+
26
+ desc 'Ensure that brakeman has not detected any vulnerabilities'
27
+ task brakeman: ['brakeman:guard']
28
+ end
@@ -0,0 +1,12 @@
1
+ namespace :commitment do
2
+ task :configure_test_for_code_coverage do
3
+ ENV['COVERAGE'] = 'true'
4
+ end
5
+ task :code_coverage do
6
+ $stdout.puts "Checking commitment:code_coverage"
7
+ coverage_percentage = Commitment.config.code_coverage_last_run_results.fetch('result').fetch('covered_percent').to_i
8
+ if Commitment.config.percentage_coverage_goal > coverage_percentage
9
+ abort("Code Coverage Goal Not Met:\n\t#{goal_percentage}%\tExpected\n\t#{Commitment.config.percentage_coverage_goal}%\tActual")
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,9 @@
1
+ namespace :commitment do
2
+ require 'jshintrb/jshinttask'
3
+ desc 'Ensure that javascript has been properly linted'
4
+ Jshintrb::JshintTask.new :jshint do |t|
5
+ t.pattern = Commitment.config.jshint_pattern
6
+ t.exclude_pattern = Commitment.config.jshint_exclude_pattern
7
+ t.options = Commitment.config.jshint_options
8
+ end
9
+ end
@@ -0,0 +1,7 @@
1
+ namespace :commitment do
2
+ require 'rubocop/rake_task'
3
+ # Why hound? Because hound-ci assumes this file, and perhaps you'll be using this
4
+ RuboCop::RakeTask.new do |t|
5
+ t.options << "--config=#{Commitment.config.rubocop_config}"
6
+ end
7
+ end
@@ -0,0 +1,8 @@
1
+ namespace :commitment do
2
+ require 'scss_lint/rake_task'
3
+ desc 'Ensure that javascript has been properly linted'
4
+ SCSSLint::RakeTask.new('scss_lint') do |t|
5
+ t.config = Commitment.config.scss_lint_config
6
+ t.files = [] # Rely instead on he above configuration
7
+ end
8
+ end
@@ -1,3 +1,3 @@
1
1
  module Commitment
2
- VERSION = "0.0.1.pre"
2
+ VERSION = "0.1.0"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: commitment
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1.pre
4
+ version: 0.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jeremy Friesen
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-04-06 00:00:00.000000000 Z
11
+ date: 2015-07-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -38,6 +38,104 @@ dependencies:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
40
  version: '10.0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: rubocop
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ">="
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ - !ruby/object:Gem::Dependency
56
+ name: railties
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - ">="
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
62
+ type: :runtime
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - ">="
67
+ - !ruby/object:Gem::Version
68
+ version: '0'
69
+ - !ruby/object:Gem::Dependency
70
+ name: brakeman
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ version: '0'
76
+ type: :runtime
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - ">="
81
+ - !ruby/object:Gem::Version
82
+ version: '0'
83
+ - !ruby/object:Gem::Dependency
84
+ name: scss-lint
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - ">="
88
+ - !ruby/object:Gem::Version
89
+ version: '0'
90
+ type: :runtime
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - ">="
95
+ - !ruby/object:Gem::Version
96
+ version: '0'
97
+ - !ruby/object:Gem::Dependency
98
+ name: simplecov
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - ">="
102
+ - !ruby/object:Gem::Version
103
+ version: '0'
104
+ type: :runtime
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - ">="
109
+ - !ruby/object:Gem::Version
110
+ version: '0'
111
+ - !ruby/object:Gem::Dependency
112
+ name: jshintrb
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - ">="
116
+ - !ruby/object:Gem::Version
117
+ version: '0'
118
+ type: :runtime
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - ">="
123
+ - !ruby/object:Gem::Version
124
+ version: '0'
125
+ - !ruby/object:Gem::Dependency
126
+ name: codeclimate-test-reporter
127
+ requirement: !ruby/object:Gem::Requirement
128
+ requirements:
129
+ - - ">="
130
+ - !ruby/object:Gem::Version
131
+ version: '0'
132
+ type: :runtime
133
+ prerelease: false
134
+ version_requirements: !ruby/object:Gem::Requirement
135
+ requirements:
136
+ - - ">="
137
+ - !ruby/object:Gem::Version
138
+ version: '0'
41
139
  description: Provides a mechanism for monitoring your enduring commitment.
42
140
  email:
43
141
  - jeremy.n.friesen@gmail.com
@@ -58,9 +156,21 @@ files:
58
156
  - bin/setup
59
157
  - commitment.gemspec
60
158
  - lib/commitment.rb
159
+ - lib/commitment/generators/install_generator.rb
160
+ - lib/commitment/generators/templates/.hound.yml
161
+ - lib/commitment/generators/templates/.jshintrc
162
+ - lib/commitment/generators/templates/.scss_lint.yml
163
+ - lib/commitment/generators/templates/coverage_helper.rb
164
+ - lib/commitment/railtie.rb
165
+ - lib/commitment/tasks/brakeman.rake
166
+ - lib/commitment/tasks/code_coverage.rake
167
+ - lib/commitment/tasks/jshint.rake
168
+ - lib/commitment/tasks/rubocop.rake
169
+ - lib/commitment/tasks/scss_lint.rake
61
170
  - lib/commitment/version.rb
62
- homepage: https://github.com/jeremyf/commitment
63
- licenses: []
171
+ homepage: https://github.com/ndlib/commitment
172
+ licenses:
173
+ - APACHE2
64
174
  metadata: {}
65
175
  post_install_message:
66
176
  rdoc_options: []
@@ -73,14 +183,13 @@ required_ruby_version: !ruby/object:Gem::Requirement
73
183
  version: '0'
74
184
  required_rubygems_version: !ruby/object:Gem::Requirement
75
185
  requirements:
76
- - - ">"
186
+ - - ">="
77
187
  - !ruby/object:Gem::Version
78
- version: 1.3.1
188
+ version: '0'
79
189
  requirements: []
80
190
  rubyforge_project:
81
- rubygems_version: 2.4.3
191
+ rubygems_version: 2.4.7
82
192
  signing_key:
83
193
  specification_version: 4
84
194
  summary: Provides a mechanism for monitoring your enduring commitment.
85
195
  test_files: []
86
- has_rdoc: