bake-bundler 0.1.0 → 0.3.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/bake/bundler.rb +3 -6
- data/bake/bundler/release.rb +78 -0
- data/lib/bake/bundler/version.rb +1 -1
- metadata +28 -17
- data/.gitignore +0 -12
- data/.rspec +0 -3
- data/Gemfile +0 -7
- data/README.md +0 -36
- data/bake-bundler.gemspec +0 -23
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: cdf1d8c97869fe6d1134df6ffbcfd3541970efa673b81074d7f12ec69ec24f8a
|
|
4
|
+
data.tar.gz: 1a6b73ecf3ce8601311e3ba018300d96914a8d313efd9012feb4c24b0563beef
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 6a98e46c84082ddfaf476b62b4b7e7452651e7ab815697ed12f15611c437204e1bf3fdf2c13973bfdae619eb3df14fb1e945879f26b2ae479304364232370668
|
|
7
|
+
data.tar.gz: 4bae74ce05eb65f128c8b5d1a60672ef200bdc291de0033c62ad5a56ae02f76855937cd323729130b00a46d061dc93854ffe90f69192719faccdf76516ef2d63
|
data/bake/bundler.rb
CHANGED
|
@@ -8,13 +8,15 @@ def initialize(context)
|
|
|
8
8
|
@built_gem_path = nil
|
|
9
9
|
end
|
|
10
10
|
|
|
11
|
+
attr :helper
|
|
12
|
+
|
|
11
13
|
# Build the gem into the pkg directory.
|
|
12
14
|
def build
|
|
13
15
|
@built_gem_path ||= @helper.build_gem
|
|
14
16
|
end
|
|
15
17
|
|
|
16
18
|
# Build and install the gem into system gems.
|
|
17
|
-
# @
|
|
19
|
+
# @parameter local [Boolean] only use locally available caches.
|
|
18
20
|
def install(local: false)
|
|
19
21
|
path = self.build
|
|
20
22
|
|
|
@@ -37,8 +39,3 @@ def release(remote: nil)
|
|
|
37
39
|
end
|
|
38
40
|
end
|
|
39
41
|
|
|
40
|
-
private
|
|
41
|
-
|
|
42
|
-
def instance
|
|
43
|
-
|
|
44
|
-
end
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
|
|
2
|
+
# Increment the patch number of the current version.
|
|
3
|
+
def patch
|
|
4
|
+
release([nil, nil, 1], message: "Patch version bump.")
|
|
5
|
+
end
|
|
6
|
+
|
|
7
|
+
# Increment the minor number of the current version.
|
|
8
|
+
def minor
|
|
9
|
+
release([nil, 1, 0], message: "Minor version bump.")
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
# Increment the major number of the current version.
|
|
13
|
+
def major
|
|
14
|
+
release([1, 0, 0], message: "Major version bump.")
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
VERSION_PATTERN = /VERSION = ['"](?<value>\d+\.\d+\.\d+)(?<pre>.*?)['"]/
|
|
18
|
+
|
|
19
|
+
# Scans the files listed in the gemspec for a file named `version.rb`. Extracts the VERSION constant and updates it according to the version bump. Commits the changes to git using the specified message.
|
|
20
|
+
#
|
|
21
|
+
# @parameter bump [Array(Integer | Nil)] the version bump to apply before publishing, e.g. `0,1,0` to increment minor version number.
|
|
22
|
+
# @parameter message [String] the git commit message to use.
|
|
23
|
+
def increment(bump, message: "Bump version.")
|
|
24
|
+
release = context.lookup('bundler:release')
|
|
25
|
+
helper = release.instance.helper
|
|
26
|
+
gemspec = helper.gemspec
|
|
27
|
+
|
|
28
|
+
version_path = gemspec.files.grep(/version.rb/).first
|
|
29
|
+
|
|
30
|
+
Console.logger.info(self) {"Preparing to update #{version_path}..."}
|
|
31
|
+
|
|
32
|
+
lines = File.readlines(version_path)
|
|
33
|
+
version = nil
|
|
34
|
+
|
|
35
|
+
lines.each do |line|
|
|
36
|
+
if match = line.match(VERSION_PATTERN)
|
|
37
|
+
version = match[:value].split(/\./).map(&:to_i)
|
|
38
|
+
bump.each_with_index do |increment, index|
|
|
39
|
+
if increment == 1
|
|
40
|
+
version[index] += 1
|
|
41
|
+
elsif increment == 0
|
|
42
|
+
version[index] = 0
|
|
43
|
+
end
|
|
44
|
+
end
|
|
45
|
+
|
|
46
|
+
line.sub!(match[:value], version.join('.'))
|
|
47
|
+
end
|
|
48
|
+
end
|
|
49
|
+
|
|
50
|
+
if version
|
|
51
|
+
File.write(version_path, lines.join)
|
|
52
|
+
|
|
53
|
+
system("git", "add", version_path, chdir: context.root)
|
|
54
|
+
system("git", "commit", "-m", message, chdir: context.root)
|
|
55
|
+
|
|
56
|
+
version_string = version.join('.')
|
|
57
|
+
|
|
58
|
+
Console.logger.info(self) {"Updated version to #{version_string}"}
|
|
59
|
+
|
|
60
|
+
# Ensure that any subsequent tasks use the correct version!
|
|
61
|
+
gemspec.version = Gem::Version.new(version_string)
|
|
62
|
+
else
|
|
63
|
+
raise "Could not find version number!"
|
|
64
|
+
end
|
|
65
|
+
end
|
|
66
|
+
|
|
67
|
+
private
|
|
68
|
+
|
|
69
|
+
def release(*arguments, **options)
|
|
70
|
+
release = context.lookup('bundler:release')
|
|
71
|
+
helper = release.instance.helper
|
|
72
|
+
|
|
73
|
+
helper.guard_clean
|
|
74
|
+
|
|
75
|
+
increment(*arguments, **options)
|
|
76
|
+
|
|
77
|
+
release.call
|
|
78
|
+
end
|
data/lib/bake/bundler/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: bake-bundler
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.3.3
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Samuel Williams
|
|
8
|
-
autorequire:
|
|
8
|
+
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2020-
|
|
11
|
+
date: 2020-09-02 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: bake
|
|
@@ -16,34 +16,45 @@ dependencies:
|
|
|
16
16
|
requirements:
|
|
17
17
|
- - "~>"
|
|
18
18
|
- !ruby/object:Gem::Version
|
|
19
|
-
version: '0.
|
|
19
|
+
version: '0.9'
|
|
20
20
|
type: :runtime
|
|
21
21
|
prerelease: false
|
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
|
23
23
|
requirements:
|
|
24
24
|
- - "~>"
|
|
25
25
|
- !ruby/object:Gem::Version
|
|
26
|
-
version: '0.
|
|
27
|
-
|
|
26
|
+
version: '0.9'
|
|
27
|
+
- !ruby/object:Gem::Dependency
|
|
28
|
+
name: rspec
|
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
|
30
|
+
requirements:
|
|
31
|
+
- - ">="
|
|
32
|
+
- !ruby/object:Gem::Version
|
|
33
|
+
version: '0'
|
|
34
|
+
type: :runtime
|
|
35
|
+
prerelease: false
|
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
37
|
+
requirements:
|
|
38
|
+
- - ">="
|
|
39
|
+
- !ruby/object:Gem::Version
|
|
40
|
+
version: '0'
|
|
41
|
+
description:
|
|
28
42
|
email:
|
|
29
|
-
- samuel.williams@oriontransfer.co.nz
|
|
30
43
|
executables: []
|
|
31
44
|
extensions: []
|
|
32
45
|
extra_rdoc_files: []
|
|
33
46
|
files:
|
|
34
|
-
- ".gitignore"
|
|
35
|
-
- ".rspec"
|
|
36
|
-
- Gemfile
|
|
37
|
-
- README.md
|
|
38
|
-
- bake-bundler.gemspec
|
|
39
47
|
- bake/bundler.rb
|
|
48
|
+
- bake/bundler/release.rb
|
|
40
49
|
- lib/bake/bundler.rb
|
|
41
50
|
- lib/bake/bundler/helper.rb
|
|
42
51
|
- lib/bake/bundler/version.rb
|
|
43
52
|
homepage: https://github.com/ioquatix/bake-bundler
|
|
44
|
-
licenses:
|
|
45
|
-
|
|
46
|
-
|
|
53
|
+
licenses:
|
|
54
|
+
- MIT
|
|
55
|
+
metadata:
|
|
56
|
+
funding_uri: https://github.com/sponsors/ioquatix/
|
|
57
|
+
post_install_message:
|
|
47
58
|
rdoc_options: []
|
|
48
59
|
require_paths:
|
|
49
60
|
- lib
|
|
@@ -58,8 +69,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
58
69
|
- !ruby/object:Gem::Version
|
|
59
70
|
version: '0'
|
|
60
71
|
requirements: []
|
|
61
|
-
rubygems_version: 3.
|
|
62
|
-
signing_key:
|
|
72
|
+
rubygems_version: 3.1.2
|
|
73
|
+
signing_key:
|
|
63
74
|
specification_version: 4
|
|
64
75
|
summary: Provides recipes for bundler.
|
|
65
76
|
test_files: []
|
data/.gitignore
DELETED
data/.rspec
DELETED
data/Gemfile
DELETED
data/README.md
DELETED
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
# Bake::Bundler
|
|
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/bake/bundler`. To experiment with that code, run `bin/console` for an interactive prompt.
|
|
4
|
-
|
|
5
|
-
TODO: Delete this and the text above, and describe your gem
|
|
6
|
-
|
|
7
|
-
## Installation
|
|
8
|
-
|
|
9
|
-
Add this line to your application's Gemfile:
|
|
10
|
-
|
|
11
|
-
```ruby
|
|
12
|
-
gem 'bake-bundler'
|
|
13
|
-
```
|
|
14
|
-
|
|
15
|
-
And then execute:
|
|
16
|
-
|
|
17
|
-
$ bundle install
|
|
18
|
-
|
|
19
|
-
Or install it yourself as:
|
|
20
|
-
|
|
21
|
-
$ gem install bake-bundler
|
|
22
|
-
|
|
23
|
-
## Usage
|
|
24
|
-
|
|
25
|
-
TODO: Write usage instructions here
|
|
26
|
-
|
|
27
|
-
## Development
|
|
28
|
-
|
|
29
|
-
After checking out the repo, run `bin/setup` to install dependencies. Then, run `rake spec` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment.
|
|
30
|
-
|
|
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`, which will create a git tag for the version, push git commits and tags, and push the `.gem` file to [rubygems.org](https://rubygems.org).
|
|
32
|
-
|
|
33
|
-
## Contributing
|
|
34
|
-
|
|
35
|
-
Bug reports and pull requests are welcome on GitHub at https://github.com/[USERNAME]/bake-bundler.
|
|
36
|
-
|
data/bake-bundler.gemspec
DELETED
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
require_relative 'lib/bake/bundler/version'
|
|
2
|
-
|
|
3
|
-
Gem::Specification.new do |spec|
|
|
4
|
-
spec.name = "bake-bundler"
|
|
5
|
-
spec.version = Bake::Bundler::VERSION
|
|
6
|
-
spec.authors = ["Samuel Williams"]
|
|
7
|
-
spec.email = ["samuel.williams@oriontransfer.co.nz"]
|
|
8
|
-
|
|
9
|
-
spec.summary = "Provides recipes for bundler."
|
|
10
|
-
spec.homepage = "https://github.com/ioquatix/bake-bundler"
|
|
11
|
-
spec.required_ruby_version = Gem::Requirement.new(">= 2.3.0")
|
|
12
|
-
|
|
13
|
-
# Specify which files should be added to the gem when it is released.
|
|
14
|
-
# The `git ls-files -z` loads the files in the RubyGem that have been added into git.
|
|
15
|
-
spec.files = Dir.chdir(__dir__) do
|
|
16
|
-
`git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
|
|
17
|
-
end
|
|
18
|
-
|
|
19
|
-
spec.add_dependency "bake", "~> 0.7"
|
|
20
|
-
|
|
21
|
-
spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
|
|
22
|
-
spec.require_paths = ["lib"]
|
|
23
|
-
end
|