checklister 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.gitignore +9 -0
- data/.rspec +2 -0
- data/.travis.yml +6 -0
- data/CHANGELOG.md +14 -0
- data/CONTRIBUTING.md +7 -0
- data/Gemfile +4 -0
- data/Guardfile +25 -0
- data/LICENSE +22 -0
- data/README.md +94 -0
- data/Rakefile +6 -0
- data/bin/console +14 -0
- data/checklister.gemspec +29 -0
- data/examples/simple-checklist.md +11 -0
- data/lib/checklister.rb +5 -0
- data/lib/checklister/version.rb +3 -0
- data/script/bootstrap +8 -0
- data/script/package +7 -0
- data/script/release +41 -0
- data/script/test +8 -0
- metadata +150 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: c047036c2294360fcdf6a3f549d7afd0dd5a69af
|
4
|
+
data.tar.gz: 44a6a6c2baa455367d614713cfecf0771e853199
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: f1325fb5689e8b887a83b57bb8fcaea8da630ec05a4bafffce48f1f9e3e7e075fe5fad52268ef957b38d594f61af024b1c57b7571b93d93ead5b32b3ed4753f8
|
7
|
+
data.tar.gz: ab6ebddbcf4eaabf8a81f3cd5e46968cc1cbf4e383c97569626ada6016b60185c006f646770c1ccbaf8b56df4b04feba9a8e6ad2971d2eaf7196790ee41f5795
|
data/.gitignore
ADDED
data/.rspec
ADDED
data/.travis.yml
ADDED
data/CHANGELOG.md
ADDED
@@ -0,0 +1,14 @@
|
|
1
|
+
# Changelog
|
2
|
+
All notable changes to this project will be documented in this file.
|
3
|
+
|
4
|
+
NOTE: the project follows [Semantic Versioning](http://semver.org/).
|
5
|
+
|
6
|
+
## 1.0.0 - YYYY-MM-DD
|
7
|
+
|
8
|
+
### Dependencies
|
9
|
+
|
10
|
+
- [Gli](https://github.com/davetron5000/gli)
|
11
|
+
|
12
|
+
### Added
|
13
|
+
|
14
|
+
- #4 - Add a CHANGELOG
|
data/CONTRIBUTING.md
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
# Contributing
|
2
|
+
|
3
|
+
1. Fork it ( https://github.com/benichu/checklister )
|
4
|
+
2. Create your feature branch (`git checkout -b my-new-feature`)
|
5
|
+
3. Commit your changes (`git commit -am 'Add some feature'`)
|
6
|
+
4. Push to the branch (`git push origin my-new-feature`)
|
7
|
+
5. Create a new Pull Request
|
data/Gemfile
ADDED
data/Guardfile
ADDED
@@ -0,0 +1,25 @@
|
|
1
|
+
# Note: The cmd option is now required due to the increasing number of ways
|
2
|
+
# rspec may be run, below are examples of the most common uses.
|
3
|
+
# * bundler: 'bundle exec rspec'
|
4
|
+
# * bundler binstubs: 'bin/rspec'
|
5
|
+
# * spring: 'bin/rspec' (This will use spring if running and you have
|
6
|
+
# installed the spring binstubs per the docs)
|
7
|
+
# * zeus: 'zeus rspec' (requires the server to be started separately)
|
8
|
+
# * 'just' rspec: 'rspec'
|
9
|
+
|
10
|
+
guard :rspec, cmd: "bundle exec rspec" do
|
11
|
+
require "guard/rspec/dsl"
|
12
|
+
dsl = Guard::RSpec::Dsl.new(self)
|
13
|
+
|
14
|
+
# Feel free to open issues for suggestions and improvements
|
15
|
+
|
16
|
+
# RSpec files
|
17
|
+
rspec = dsl.rspec
|
18
|
+
watch(rspec.spec_helper) { rspec.spec_dir }
|
19
|
+
watch(rspec.spec_support) { rspec.spec_dir }
|
20
|
+
watch(rspec.spec_files)
|
21
|
+
|
22
|
+
# Ruby files
|
23
|
+
ruby = dsl.ruby
|
24
|
+
dsl.watch_spec_files_for(ruby.lib_files)
|
25
|
+
end
|
data/LICENSE
ADDED
@@ -0,0 +1,22 @@
|
|
1
|
+
The MIT License (MIT)
|
2
|
+
|
3
|
+
Copyright (c) 2015 Benjamin Thouret
|
4
|
+
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
7
|
+
in the Software without restriction, including without limitation the rights
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
10
|
+
furnished to do so, subject to the following conditions:
|
11
|
+
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
13
|
+
copies or substantial portions of the Software.
|
14
|
+
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
21
|
+
SOFTWARE.
|
22
|
+
|
data/README.md
ADDED
@@ -0,0 +1,94 @@
|
|
1
|
+
# Checklister
|
2
|
+
|
3
|
+
> STILL UNDER ACTIVE DEVELOPMENT, NOT RELEASED YET
|
4
|
+
|
5
|
+
[![Build Status](https://travis-ci.org/benichu/checklister.svg)](https://travis-ci.org/benichu/checklister)
|
6
|
+
[![Dependency Status](https://gemnasium.com/benichu/checklister.svg)](https://gemnasium.com/benichu/checklister)
|
7
|
+
|
8
|
+
## Description
|
9
|
+
|
10
|
+
Checklister is a CLI packaged as a Ruby gem giving you the power to transform any markdown file or url checklist into an actionable gitlab (and soon github) issue.
|
11
|
+
|
12
|
+
### Why using checklists
|
13
|
+
|
14
|
+
A checklist is an ideal tool to help people remembering all of the steps required to accomplish complicated tasks and objectives.
|
15
|
+
Using a checklist enforces best practices, even if they seem obvious at first, preventing costly mistakes.
|
16
|
+
|
17
|
+
### The Checklist Manifesto
|
18
|
+
|
19
|
+
A great book to read for more inspiration about the power of checklist:
|
20
|
+
|
21
|
+
![The Checklist Manifesto](http://atulgawande.com/wp-content/uploads/2013/11/71CwWiCJhuL-319x479.jpg)
|
22
|
+
|
23
|
+
Source: http://atulgawande.com/book/the-checklist-manifesto/
|
24
|
+
|
25
|
+
## Usage
|
26
|
+
|
27
|
+
### Requirements
|
28
|
+
|
29
|
+
* Ruby 1.9+
|
30
|
+
* RubyGems 1.9+
|
31
|
+
* a Gitlab and/or Github user authentication token
|
32
|
+
|
33
|
+
### Install/Update gem
|
34
|
+
|
35
|
+
TO RELEASE
|
36
|
+
|
37
|
+
### Setup Gitlab Authentication
|
38
|
+
|
39
|
+
```bash
|
40
|
+
$ checklister setup gitlab
|
41
|
+
```
|
42
|
+
|
43
|
+
### Setup Github Authentication
|
44
|
+
|
45
|
+
```bash
|
46
|
+
$ checklister setup github
|
47
|
+
```
|
48
|
+
|
49
|
+
### CLI
|
50
|
+
|
51
|
+
```bash
|
52
|
+
$ checklister --file https://raw.githubusercontent.com/benichu/checklister/master/examples/simple-checklist.md \
|
53
|
+
--new_issue_url https://github.com/benichu/checklister/issues
|
54
|
+
```
|
55
|
+
|
56
|
+
## Development Setup
|
57
|
+
|
58
|
+
### Dependencies
|
59
|
+
|
60
|
+
* rbenv or rvm
|
61
|
+
* Ruby 1.9+
|
62
|
+
* RubyGems 1.9+ (`gem update --system `)
|
63
|
+
* Bundler 1.10+
|
64
|
+
|
65
|
+
### Bootstrap
|
66
|
+
|
67
|
+
To install or update your development environment, run `script/bootstrap`.
|
68
|
+
|
69
|
+
### Install
|
70
|
+
|
71
|
+
1. Clone the git repository: `git clone git@github.com:benichu/checklister.git`
|
72
|
+
2. Run `script/bootstrap` to install the required gems.
|
73
|
+
3. Run `script/test` to ensure your development setup is sane.
|
74
|
+
5. Read `CONTRIBUTING.md` for contribution guidelines.
|
75
|
+
6. Run `bundle exec guard`
|
76
|
+
7. You can run a REPL: `bin/console`
|
77
|
+
|
78
|
+
## Testing
|
79
|
+
|
80
|
+
You can write tests using `rspec v3+` syntax in the `spec` folder. To run the tests, run `script/test`.
|
81
|
+
|
82
|
+
## Release
|
83
|
+
|
84
|
+
To prepare a release, run `script/release`. This will package a new version of the `checklister` gem and release it to [https://rubygems.org/gems/checklister](https://rubygems.org/gems/checklister).
|
85
|
+
|
86
|
+
## Authors
|
87
|
+
|
88
|
+
Make sure you are all setup first: http://guides.rubygems.org/publishing/#publishing-to-rubygemsorg
|
89
|
+
|
90
|
+
Checklister is written and maintained by [Benjamin Thouret](https://github.com/benichu) and [Manon Deloupy](https://github.com/mdeloupy).
|
91
|
+
|
92
|
+
## License
|
93
|
+
|
94
|
+
[Checklister is licensed under the MIT License](LICENSE)
|
data/Rakefile
ADDED
data/bin/console
ADDED
@@ -0,0 +1,14 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
|
3
|
+
require "bundler/setup"
|
4
|
+
require "checklister"
|
5
|
+
|
6
|
+
# You can add fixtures and/or initialization code here to make experimenting
|
7
|
+
# with your gem easier. You can also use a different console, if you like.
|
8
|
+
|
9
|
+
# (If you use this, don't forget to add pry to your Gemfile!)
|
10
|
+
# require "pry"
|
11
|
+
# Pry.start
|
12
|
+
|
13
|
+
require "irb"
|
14
|
+
IRB.start
|
data/checklister.gemspec
ADDED
@@ -0,0 +1,29 @@
|
|
1
|
+
# coding: utf-8
|
2
|
+
lib = File.expand_path('../lib', __FILE__)
|
3
|
+
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
4
|
+
require 'checklister/version'
|
5
|
+
|
6
|
+
Gem::Specification.new do |spec|
|
7
|
+
spec.name = "checklister"
|
8
|
+
spec.version = Checklister::VERSION
|
9
|
+
spec.authors = ["Benjamin Thouret", "Manon Deloupy"]
|
10
|
+
spec.email = ["ben@2ret.com", "mdeloupy@gmail.com"]
|
11
|
+
|
12
|
+
spec.summary = %q{Markdown checklists to gitlab or github issue.}
|
13
|
+
spec.description = %q{Checklister is a CLI packaged as a Ruby gem giving you the power to transform any markdown file or url checklist into an actionable gitlab (and soon github) issue.}
|
14
|
+
spec.homepage = "https://github.com/benichu/checklister"
|
15
|
+
spec.license = "MIT"
|
16
|
+
|
17
|
+
spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
|
18
|
+
spec.bindir = "bin"
|
19
|
+
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
20
|
+
spec.require_paths = ["lib"]
|
21
|
+
|
22
|
+
spec.add_dependency "gli", "~> 2.13"
|
23
|
+
|
24
|
+
spec.add_development_dependency "bundler" , "~> 1.10"
|
25
|
+
spec.add_development_dependency "guard" , "~> 2.13"
|
26
|
+
spec.add_development_dependency "guard-rspec" , "~> 4.6"
|
27
|
+
spec.add_development_dependency "rake" , "~> 10.4"
|
28
|
+
spec.add_development_dependency "rspec" , "~> 3.3"
|
29
|
+
end
|
data/lib/checklister.rb
ADDED
data/script/bootstrap
ADDED
data/script/package
ADDED
data/script/release
ADDED
@@ -0,0 +1,41 @@
|
|
1
|
+
#!/usr/bin/env bash
|
2
|
+
# Usage: script/release
|
3
|
+
# Build the package, tag a commit, push it to origin, and then release the
|
4
|
+
# package to the rubygems repository.
|
5
|
+
|
6
|
+
set -e
|
7
|
+
|
8
|
+
# Get latest tag
|
9
|
+
|
10
|
+
# http://git-scm.com/docs/git-fetch
|
11
|
+
# `-t`: Fetch all tags from the remote
|
12
|
+
echo "Fetching origin with all remote tags..."
|
13
|
+
git fetch -t origin
|
14
|
+
|
15
|
+
latest_tag=$(git describe origin --abbrev=0 --match="v*")
|
16
|
+
|
17
|
+
echo "Did you update the VERSION in lib/checklister/version.rb ?"
|
18
|
+
read -p "It should be > $latest_tag [y/N]: " response
|
19
|
+
|
20
|
+
if [[ $response =~ ^(y|Y)$ ]]; then
|
21
|
+
# Build the gem
|
22
|
+
echo "Preparing the gem package in pkg/*"
|
23
|
+
# Output format: checklister 1.0.2 built to pkg/checklister-1.0.2.gem.
|
24
|
+
version="$(script/package | grep Version: | awk '{print $2}')"
|
25
|
+
# Did we get a version?
|
26
|
+
if [ -z "$version" ]; then echo "You have to give me a semantic tag, like 1.0.0"; exit 1; fi
|
27
|
+
echo "Tagging your code to v$version"
|
28
|
+
echo ""
|
29
|
+
|
30
|
+
echo "Make sure you are GPG ready."
|
31
|
+
echo "You should have run this at one point:"
|
32
|
+
echo "$ git config --global user.signingkey [gpg-key-id]"
|
33
|
+
git tag -s "v$version" -m "Release v$version"
|
34
|
+
git push origin
|
35
|
+
git push origin "v$version"
|
36
|
+
echo ""
|
37
|
+
echo "Publishing to remote gem repository."
|
38
|
+
bundle exec gem push pkg/checklister-${version}.gem
|
39
|
+
else
|
40
|
+
echo "You canceled the operation, nothing was done."
|
41
|
+
fi
|
data/script/test
ADDED
metadata
ADDED
@@ -0,0 +1,150 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: checklister
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.1.0
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Benjamin Thouret
|
8
|
+
- Manon Deloupy
|
9
|
+
autorequire:
|
10
|
+
bindir: bin
|
11
|
+
cert_chain: []
|
12
|
+
date: 2015-08-18 00:00:00.000000000 Z
|
13
|
+
dependencies:
|
14
|
+
- !ruby/object:Gem::Dependency
|
15
|
+
name: gli
|
16
|
+
requirement: !ruby/object:Gem::Requirement
|
17
|
+
requirements:
|
18
|
+
- - "~>"
|
19
|
+
- !ruby/object:Gem::Version
|
20
|
+
version: '2.13'
|
21
|
+
type: :runtime
|
22
|
+
prerelease: false
|
23
|
+
version_requirements: !ruby/object:Gem::Requirement
|
24
|
+
requirements:
|
25
|
+
- - "~>"
|
26
|
+
- !ruby/object:Gem::Version
|
27
|
+
version: '2.13'
|
28
|
+
- !ruby/object:Gem::Dependency
|
29
|
+
name: bundler
|
30
|
+
requirement: !ruby/object:Gem::Requirement
|
31
|
+
requirements:
|
32
|
+
- - "~>"
|
33
|
+
- !ruby/object:Gem::Version
|
34
|
+
version: '1.10'
|
35
|
+
type: :development
|
36
|
+
prerelease: false
|
37
|
+
version_requirements: !ruby/object:Gem::Requirement
|
38
|
+
requirements:
|
39
|
+
- - "~>"
|
40
|
+
- !ruby/object:Gem::Version
|
41
|
+
version: '1.10'
|
42
|
+
- !ruby/object:Gem::Dependency
|
43
|
+
name: guard
|
44
|
+
requirement: !ruby/object:Gem::Requirement
|
45
|
+
requirements:
|
46
|
+
- - "~>"
|
47
|
+
- !ruby/object:Gem::Version
|
48
|
+
version: '2.13'
|
49
|
+
type: :development
|
50
|
+
prerelease: false
|
51
|
+
version_requirements: !ruby/object:Gem::Requirement
|
52
|
+
requirements:
|
53
|
+
- - "~>"
|
54
|
+
- !ruby/object:Gem::Version
|
55
|
+
version: '2.13'
|
56
|
+
- !ruby/object:Gem::Dependency
|
57
|
+
name: guard-rspec
|
58
|
+
requirement: !ruby/object:Gem::Requirement
|
59
|
+
requirements:
|
60
|
+
- - "~>"
|
61
|
+
- !ruby/object:Gem::Version
|
62
|
+
version: '4.6'
|
63
|
+
type: :development
|
64
|
+
prerelease: false
|
65
|
+
version_requirements: !ruby/object:Gem::Requirement
|
66
|
+
requirements:
|
67
|
+
- - "~>"
|
68
|
+
- !ruby/object:Gem::Version
|
69
|
+
version: '4.6'
|
70
|
+
- !ruby/object:Gem::Dependency
|
71
|
+
name: rake
|
72
|
+
requirement: !ruby/object:Gem::Requirement
|
73
|
+
requirements:
|
74
|
+
- - "~>"
|
75
|
+
- !ruby/object:Gem::Version
|
76
|
+
version: '10.4'
|
77
|
+
type: :development
|
78
|
+
prerelease: false
|
79
|
+
version_requirements: !ruby/object:Gem::Requirement
|
80
|
+
requirements:
|
81
|
+
- - "~>"
|
82
|
+
- !ruby/object:Gem::Version
|
83
|
+
version: '10.4'
|
84
|
+
- !ruby/object:Gem::Dependency
|
85
|
+
name: rspec
|
86
|
+
requirement: !ruby/object:Gem::Requirement
|
87
|
+
requirements:
|
88
|
+
- - "~>"
|
89
|
+
- !ruby/object:Gem::Version
|
90
|
+
version: '3.3'
|
91
|
+
type: :development
|
92
|
+
prerelease: false
|
93
|
+
version_requirements: !ruby/object:Gem::Requirement
|
94
|
+
requirements:
|
95
|
+
- - "~>"
|
96
|
+
- !ruby/object:Gem::Version
|
97
|
+
version: '3.3'
|
98
|
+
description: Checklister is a CLI packaged as a Ruby gem giving you the power to transform
|
99
|
+
any markdown file or url checklist into an actionable gitlab (and soon github) issue.
|
100
|
+
email:
|
101
|
+
- ben@2ret.com
|
102
|
+
- mdeloupy@gmail.com
|
103
|
+
executables: []
|
104
|
+
extensions: []
|
105
|
+
extra_rdoc_files: []
|
106
|
+
files:
|
107
|
+
- ".gitignore"
|
108
|
+
- ".rspec"
|
109
|
+
- ".travis.yml"
|
110
|
+
- CHANGELOG.md
|
111
|
+
- CONTRIBUTING.md
|
112
|
+
- Gemfile
|
113
|
+
- Guardfile
|
114
|
+
- LICENSE
|
115
|
+
- README.md
|
116
|
+
- Rakefile
|
117
|
+
- bin/console
|
118
|
+
- checklister.gemspec
|
119
|
+
- examples/simple-checklist.md
|
120
|
+
- lib/checklister.rb
|
121
|
+
- lib/checklister/version.rb
|
122
|
+
- script/bootstrap
|
123
|
+
- script/package
|
124
|
+
- script/release
|
125
|
+
- script/test
|
126
|
+
homepage: https://github.com/benichu/checklister
|
127
|
+
licenses:
|
128
|
+
- MIT
|
129
|
+
metadata: {}
|
130
|
+
post_install_message:
|
131
|
+
rdoc_options: []
|
132
|
+
require_paths:
|
133
|
+
- lib
|
134
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
135
|
+
requirements:
|
136
|
+
- - ">="
|
137
|
+
- !ruby/object:Gem::Version
|
138
|
+
version: '0'
|
139
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
140
|
+
requirements:
|
141
|
+
- - ">="
|
142
|
+
- !ruby/object:Gem::Version
|
143
|
+
version: '0'
|
144
|
+
requirements: []
|
145
|
+
rubyforge_project:
|
146
|
+
rubygems_version: 2.2.2
|
147
|
+
signing_key:
|
148
|
+
specification_version: 4
|
149
|
+
summary: Markdown checklists to gitlab or github issue.
|
150
|
+
test_files: []
|