chandler 0.1.0 → 0.1.1

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: 1b4381b69c5976f8de750c7756837e6da82031b1
4
- data.tar.gz: ff127a8a9970f75de6922b618a913f2bd2fc815f
3
+ metadata.gz: fd4141edfe860fc492bde9aed13fef52ef9a5f67
4
+ data.tar.gz: f3c7e5137f24ab4fc1b78682b985aec9b6ff6afa
5
5
  SHA512:
6
- metadata.gz: ff2f30b2a72f70e11f27105e27c12c144e2540d173af10975b11bb554db2a2d5d4b341c578412e3a90923987be5ac7caf3834480d3802d7be52dbe68ec100fa0
7
- data.tar.gz: 11e84ada787c62a276c9f9f9345c2b052d51eda75a38c3bc52b10f36189baa10153acf6fffa020f32797aa8a763ba4692ad9628c4a9265fbe65c1553379b8b0b
6
+ metadata.gz: 87b95d5879b8879690cb4e741021f0de1623d81d9b67742fdd7b272220ef1edc54ab0bfbafbf1e6516dbb25ff56cb53b0037b9200bccdf5fc049b4d9d546bb6f
7
+ data.tar.gz: e4d1f957f725338bd2b0815ecda6089e8e2663faa754950001ca9cadef9a34acea5e520dddb8623cca0304447199e86546fb9da5fcd6ecf78da2691a84ac147b
@@ -4,13 +4,18 @@ All notable changes to this project will be documented in this file.
4
4
 
5
5
  chandler is in a pre-1.0 state. This means that its APIs and behavior are subject to breaking changes without deprecation notices. Until 1.0, version numbers will follow a [Semver][]-ish `0.y.z` format, where `y` is incremented when new features or breaking changes are introduced, and `z` is incremented for lesser changes or bug fixes.
6
6
 
7
- ## [Unreleased]
7
+ ## [Unreleased][]
8
8
 
9
9
  * Your contribution here!
10
10
 
11
+ ## [0.1.1][] (2015-10-26)
12
+
13
+ * Work around parsing issues caused by non-breaking spaces in change logs (e.g. SSHKit)
14
+
11
15
  ## 0.1.0 (2015-06-19)
12
16
 
13
17
  * Initial release
14
18
 
15
19
  [Semver]: http://semver.org
16
- [Unreleased]: https://github.com/mattbrictson/airbrussh/compare/v0.1.0...HEAD
20
+ [Unreleased]: https://github.com/mattbrictson/chandler/compare/v0.1.1...HEAD
21
+ [0.1.1]: https://github.com/mattbrictson/chandler/compare/v0.1.0...v0.1.1
@@ -0,0 +1,31 @@
1
+ Contributor Code of Conduct
2
+
3
+ As contributors and maintainers of this project, we pledge to respect all
4
+ people who contribute through reporting issues, posting feature requests,
5
+ updating documentation, submitting pull requests or patches, and other
6
+ activities.
7
+
8
+ We are committed to making participation in this project a harassment-free
9
+ experience for everyone, regardless of level of experience, gender, gender
10
+ identity and expression, sexual orientation, disability, personal appearance,
11
+ body size, race, ethnicity, age, or religion.
12
+
13
+ Examples of unacceptable behavior by participants include the use of sexual
14
+ language or imagery, derogatory comments or personal attacks, trolling, public
15
+ or private harassment, insults, or other unprofessional conduct.
16
+
17
+ Project maintainers have the right and responsibility to remove, edit, or
18
+ reject comments, commits, code, wiki edits, issues, and other contributions
19
+ that are not aligned to this Code of Conduct. Project maintainers who do not
20
+ follow the Code of Conduct may be removed from the project team.
21
+
22
+ This code of conduct applies both within project spaces and in public spaces
23
+ when an individual is representing the project or its community.
24
+
25
+ Instances of abusive, harassing, or otherwise unacceptable behavior may be
26
+ reported by opening an issue or contacting one or more of the project
27
+ maintainers.
28
+
29
+ This Code of Conduct is adapted from the Contributor Covenant
30
+ (http://contributor-covenant.org), version 1.1.0, available at
31
+ http://contributor-covenant.org/version/1/1/0/
@@ -11,16 +11,25 @@ Have a feature idea, bug fix, or refactoring suggestion? Contributions are welco
11
11
 
12
12
  ## Coding guidelines
13
13
 
14
- * This project has a coding style enforced by [rubocop][]. Use hash rockets and double-quoted strings, and otherwise try to follow the [Ruby style guide][style].
14
+ * This project has a coding style enforced by [RuboCop][]. Use hash rockets and double-quoted strings, and otherwise try to follow the [Ruby style guide][style].
15
15
  * Writing tests is strongly encouraged! This project uses Minitest.
16
16
 
17
17
  ## Getting started
18
18
 
19
- 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. To run your checked-out version of chandler, use `bundle exec chandler`.
19
+ After checking out the repo, run `bin/setup` to install dependencies.
20
20
 
21
- To execute chandler's tests and rubocop checks, run `rake`.
21
+ chandler offers the following development and testing commands:
22
+
23
+ * `bin/console` loads your working copy of chandler into an irb session
24
+ * `bundle exec chandler` runs your working copy of the chandler executable
25
+ * `rake` executes all of chandler's tests and RuboCop checks
26
+
27
+ A Guardfile is also present, so if you'd like to use Guard to do a TDD workflow, then:
28
+
29
+ 1. Run `bundle install --with guard` to get the optional guard dependencies
30
+ 2. Run `guard` to monitor the filesystem and automatically run tests as you work
22
31
 
23
32
 
24
33
  [Issues]: https://github.com/mattbrictson/chandler/issues
25
- [rubocop]: https://github.com/bbatsov/rubocop
34
+ [RuboCop]: https://github.com/bbatsov/rubocop
26
35
  [style]: https://github.com/bbatsov/ruby-style-guide
data/Gemfile CHANGED
@@ -2,3 +2,15 @@ source "https://rubygems.org"
2
2
 
3
3
  # Specify your gem's dependencies in chandler.gemspec
4
4
  gemspec
5
+
6
+ # Optional development dependencies; requires bundler >= 1.10.
7
+ # Note that these gems assume a Ruby 2.2 environment. Install them using:
8
+ #
9
+ # bundle install --with guard
10
+ #
11
+ group :guard, :optional => true do
12
+ gem "guard", ">= 2.2.2"
13
+ gem "guard-minitest"
14
+ gem "rb-fsevent"
15
+ gem "terminal-notifier-guard"
16
+ end
data/README.md CHANGED
@@ -2,6 +2,9 @@
2
2
 
3
3
  [![Gem Version](https://badge.fury.io/rb/chandler.svg)](http://badge.fury.io/rb/chandler)
4
4
  [![Build Status](https://travis-ci.org/mattbrictson/chandler.svg?branch=master)](https://travis-ci.org/mattbrictson/chandler)
5
+ [![Build status](https://ci.appveyor.com/api/projects/status/qmmk5ra8mom6503i/branch/master?svg=true)](https://ci.appveyor.com/project/mattbrictson/chandler/branch/master)
6
+ [![Code Climate](https://codeclimate.com/github/mattbrictson/chandler/badges/gpa.svg)](https://codeclimate.com/github/mattbrictson/chandler)
7
+ [![Coverage Status](https://coveralls.io/repos/mattbrictson/chandler/badge.svg?branch=master)](https://coveralls.io/r/mattbrictson/chandler?branch=master)
5
8
 
6
9
  **chandler syncs your CHANGELOG entries to GitHub's release notes so you don't have to enter release notes manually.** For Ruby projects, you can even add chandler to your gem's Rakefile to make this an automatic part of your release process!
7
10
 
@@ -73,7 +76,7 @@ Other command-line options:
73
76
 
74
77
  ## Rakefile integration
75
78
 
76
- If you maintain a Ruby gem and use Bundler's gem tasks (i.e. `rake release`) to publish your gem, then you can use chandler to automate update your GitHub release notes.
79
+ If you maintain a Ruby gem and use Bundler's gem tasks (i.e. `rake release`) to publish your gem, then you can use chandler to update your GitHub release notes automatically.
77
80
 
78
81
  ### 1. Update the gemspec
79
82
 
@@ -99,8 +102,11 @@ task "release:rubygem_push" => "chandler:push"
99
102
 
100
103
  That's it! Now when you run `rake release`, your GitHub release notes will be updated automatically based on your CHANGELOG entries.
101
104
 
105
+ And yes, chandler uses itself to automatically push its own [release notes][release-notes] to GitHub! Check out the [Rakefile](Rakefile).
106
+
102
107
  [Sibbell]: http://sibbell.com
103
108
  [access-token]: https://help.github.com/articles/creating-an-access-token-for-command-line-use/
109
+ [release-notes]: https://github.com/mattbrictson/chandler/releases
104
110
 
105
111
  ## Contributing
106
112
 
@@ -0,0 +1,18 @@
1
+ version: '{build}'
2
+
3
+ skip_tags: true
4
+
5
+ environment:
6
+ matrix:
7
+ - ruby_version: "21"
8
+ - ruby_version: "21-x64"
9
+
10
+ install:
11
+ - SET PATH=C:\Ruby%ruby_version%\bin;%PATH%
12
+ - gem install bundler --no-document -v 1.10.4
13
+ - bundle install --retry=3
14
+
15
+ test_script:
16
+ - bundle exec rake
17
+
18
+ build: off
@@ -24,13 +24,10 @@ Gem::Specification.new do |spec|
24
24
  spec.add_dependency "octokit", ">= 2.2.0"
25
25
 
26
26
  spec.add_development_dependency "bundler", "~> 1.10"
27
- spec.add_development_dependency "guard", ">= 2.2.2"
28
- spec.add_development_dependency "guard-minitest"
27
+ spec.add_development_dependency "coveralls"
29
28
  spec.add_development_dependency "rake", "~> 10.0"
30
- spec.add_development_dependency "rb-fsevent"
31
29
  spec.add_development_dependency "minitest"
32
30
  spec.add_development_dependency "minitest-reporters"
33
31
  spec.add_development_dependency "mocha"
34
32
  spec.add_development_dependency "rubocop"
35
- spec.add_development_dependency "terminal-notifier-guard"
36
33
  end
@@ -91,7 +91,9 @@ module Chandler
91
91
  end
92
92
 
93
93
  def text
94
- @text ||= IO.read(path)
94
+ # Replace unicode non-breaking space with regular space, to prevent
95
+ # regexps from failing.
96
+ @text ||= IO.read(path).tr(" ", " ")
95
97
  end
96
98
  end
97
99
  end
@@ -22,6 +22,8 @@ module Chandler
22
22
  command.call
23
23
  end
24
24
 
25
+ private
26
+
25
27
  def command # rubocop:disable Metrics/MethodLength
26
28
  case (command = args.shift)
27
29
  when "push"
@@ -37,8 +39,6 @@ module Chandler
37
39
  end
38
40
  end
39
41
 
40
- private
41
-
42
42
  def push
43
43
  Chandler::Commands::Push.new(
44
44
  :tags => args.empty? ? config.git.version_tags : args,
@@ -1,10 +1,12 @@
1
1
  require "chandler/configuration"
2
+ require "chandler/logging"
2
3
  require "chandler/version"
3
4
  require "optparse"
4
5
 
5
6
  module Chandler
6
7
  class CLI
7
8
  class Parser
9
+ include Logging
8
10
  attr_reader :args, :config
9
11
 
10
12
  def initialize(args, config=Chandler::Configuration.new)
@@ -59,12 +61,12 @@ module Chandler
59
61
  end
60
62
 
61
63
  opts.on("-h", "--help", "Show this help message") do
62
- puts(opts)
64
+ info(opts.to_s)
63
65
  exit
64
66
  end
65
67
 
66
68
  opts.on("-v", "--version", "Print the chandler version number") do
67
- puts("chandler version #{Chandler::VERSION}")
69
+ info("chandler version #{Chandler::VERSION}")
68
70
  exit
69
71
  end
70
72
  end
@@ -12,12 +12,10 @@ module Chandler
12
12
  using Chandler::Refinements::Color
13
13
  using Chandler::Refinements::VersionFormat
14
14
 
15
- attr_reader :github, :changelog, :tags, :config
15
+ attr_reader :tags, :config
16
16
 
17
17
  def initialize(tags:, config:)
18
18
  @tags = tags
19
- @github = config.github
20
- @changelog = config.changelog
21
19
  @config = config
22
20
  end
23
21
 
@@ -33,6 +31,14 @@ module Chandler
33
31
 
34
32
  private
35
33
 
34
+ def github
35
+ config.github
36
+ end
37
+
38
+ def changelog
39
+ config.changelog
40
+ end
41
+
36
42
  def benchmarking_each_tag
37
43
  width = tags.map(&:length).max
38
44
  tags.each do |tag|
@@ -3,15 +3,11 @@ module Chandler
3
3
  # logging methods by delegating to the configured Logger.
4
4
  #
5
5
  module Logging
6
- def self.included(target)
7
- target.instance_exec do
8
- extend Forwardable
9
- private def_delegator :config, :logger
10
- private def_delegator :logger, :benchmark
11
- private def_delegator :logger, :debug
12
- private def_delegator :logger, :error
13
- private def_delegator :logger, :info
14
- end
15
- end
6
+ extend Forwardable
7
+ private def_delegator :config, :logger
8
+ private def_delegator :logger, :benchmark
9
+ private def_delegator :logger, :debug
10
+ private def_delegator :logger, :error
11
+ private def_delegator :logger, :info
16
12
  end
17
13
  end
@@ -1,3 +1,3 @@
1
1
  module Chandler
2
- VERSION = "0.1.0"
2
+ VERSION = "0.1.1"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: chandler
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Matt Brictson
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2015-06-19 00:00:00.000000000 Z
11
+ date: 2015-10-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: netrc
@@ -53,21 +53,7 @@ dependencies:
53
53
  - !ruby/object:Gem::Version
54
54
  version: '1.10'
55
55
  - !ruby/object:Gem::Dependency
56
- name: guard
57
- requirement: !ruby/object:Gem::Requirement
58
- requirements:
59
- - - ">="
60
- - !ruby/object:Gem::Version
61
- version: 2.2.2
62
- type: :development
63
- prerelease: false
64
- version_requirements: !ruby/object:Gem::Requirement
65
- requirements:
66
- - - ">="
67
- - !ruby/object:Gem::Version
68
- version: 2.2.2
69
- - !ruby/object:Gem::Dependency
70
- name: guard-minitest
56
+ name: coveralls
71
57
  requirement: !ruby/object:Gem::Requirement
72
58
  requirements:
73
59
  - - ">="
@@ -94,20 +80,6 @@ dependencies:
94
80
  - - "~>"
95
81
  - !ruby/object:Gem::Version
96
82
  version: '10.0'
97
- - !ruby/object:Gem::Dependency
98
- name: rb-fsevent
99
- requirement: !ruby/object:Gem::Requirement
100
- requirements:
101
- - - ">="
102
- - !ruby/object:Gem::Version
103
- version: '0'
104
- type: :development
105
- prerelease: false
106
- version_requirements: !ruby/object:Gem::Requirement
107
- requirements:
108
- - - ">="
109
- - !ruby/object:Gem::Version
110
- version: '0'
111
83
  - !ruby/object:Gem::Dependency
112
84
  name: minitest
113
85
  requirement: !ruby/object:Gem::Requirement
@@ -164,20 +136,6 @@ dependencies:
164
136
  - - ">="
165
137
  - !ruby/object:Gem::Version
166
138
  version: '0'
167
- - !ruby/object:Gem::Dependency
168
- name: terminal-notifier-guard
169
- requirement: !ruby/object:Gem::Requirement
170
- requirements:
171
- - - ">="
172
- - !ruby/object:Gem::Version
173
- version: '0'
174
- type: :development
175
- prerelease: false
176
- version_requirements: !ruby/object:Gem::Requirement
177
- requirements:
178
- - - ">="
179
- - !ruby/object:Gem::Version
180
- version: '0'
181
139
  description:
182
140
  email:
183
141
  - chandler@mattbrictson.com
@@ -190,12 +148,14 @@ files:
190
148
  - ".rubocop.yml"
191
149
  - ".travis.yml"
192
150
  - CHANGELOG.md
151
+ - CODE_OF_CONDUCT.md
193
152
  - CONTRIBUTING.md
194
153
  - Gemfile
195
154
  - Guardfile
196
155
  - LICENSE.txt
197
156
  - README.md
198
157
  - Rakefile
158
+ - appveyor.yml
199
159
  - bin/console
200
160
  - bin/setup
201
161
  - chandler.gemspec