raketeer 0.2.13 → 0.2.14
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/CHANGELOG.md +27 -35
- data/Gemfile +12 -1
- data/README.md +40 -40
- data/Rakefile +8 -5
- data/lib/raketeer/all.rb +1 -14
- data/lib/raketeer/bump.rb +1 -11
- data/lib/raketeer/bump_task.rb +55 -58
- data/lib/raketeer/bump_ver.rb +6 -19
- data/lib/raketeer/files_bumper.rb +6 -10
- data/lib/raketeer/github_pkg.rb +1 -12
- data/lib/raketeer/github_pkg_task.rb +6 -11
- data/lib/raketeer/irb.rb +1 -11
- data/lib/raketeer/irb_task.rb +5 -11
- data/lib/raketeer/nokogiri_install_tasks.rb +21 -35
- data/lib/raketeer/nokogiri_installs.rb +1 -13
- data/lib/raketeer/run.rb +1 -11
- data/lib/raketeer/run_task.rb +7 -13
- data/lib/raketeer/sem_ver.rb +17 -15
- data/lib/raketeer/util.rb +12 -16
- data/lib/raketeer/version.rb +3 -9
- data/lib/raketeer.rb +2 -7
- data/raketeer.gemspec +21 -26
- metadata +11 -52
data/lib/raketeer/run.rb
CHANGED
@@ -3,21 +3,11 @@
|
|
3
3
|
|
4
4
|
#--
|
5
5
|
# This file is part of Raketeer.
|
6
|
-
# Copyright (c) 2019
|
6
|
+
# Copyright (c) 2019 Bradley Whited
|
7
7
|
#
|
8
8
|
# SPDX-License-Identifier: LGPL-3.0-or-later
|
9
9
|
#++
|
10
10
|
|
11
|
-
|
12
11
|
require 'raketeer/run_task'
|
13
12
|
|
14
|
-
module Raketeer
|
15
|
-
###
|
16
|
-
# @author Jonathan Bradley Whited
|
17
|
-
# @since 0.2.2
|
18
|
-
###
|
19
|
-
module Run
|
20
|
-
end
|
21
|
-
end
|
22
|
-
|
23
13
|
Raketeer::RunTask.new # @since 0.2.2
|
data/lib/raketeer/run_task.rb
CHANGED
@@ -3,23 +3,17 @@
|
|
3
3
|
|
4
4
|
#--
|
5
5
|
# This file is part of Raketeer.
|
6
|
-
# Copyright (c) 2019
|
6
|
+
# Copyright (c) 2019 Bradley Whited
|
7
7
|
#
|
8
8
|
# SPDX-License-Identifier: LGPL-3.0-or-later
|
9
9
|
#++
|
10
10
|
|
11
|
-
|
12
11
|
require 'rake'
|
13
|
-
|
14
12
|
require 'rake/tasklib'
|
15
|
-
|
16
13
|
require 'raketeer/util'
|
17
14
|
|
18
15
|
module Raketeer
|
19
|
-
|
20
|
-
# @author Jonathan Bradley Whited
|
21
|
-
# @since 0.2.2
|
22
|
-
###
|
16
|
+
# @since 0.2.2
|
23
17
|
class RunTask < Rake::TaskLib
|
24
18
|
attr_accessor :bin_dir
|
25
19
|
attr_accessor :description
|
@@ -30,11 +24,11 @@ module Raketeer
|
|
30
24
|
|
31
25
|
alias_method :warning?,:warning
|
32
26
|
|
33
|
-
def initialize(name
|
27
|
+
def initialize(name = :run)
|
34
28
|
super()
|
35
29
|
|
36
30
|
@bin_dir = 'bin'
|
37
|
-
@description = %
|
31
|
+
@description = %(Run this project's main file: "rake #{name} -- --version")
|
38
32
|
@executable = nil
|
39
33
|
@name = name
|
40
34
|
@warning = true
|
@@ -43,7 +37,7 @@ module Raketeer
|
|
43
37
|
@run_cmd.push('-r','rubygems')
|
44
38
|
@run_cmd.push('-r','bundler/setup')
|
45
39
|
|
46
|
-
yield
|
40
|
+
yield(self) if block_given?
|
47
41
|
|
48
42
|
@executable = Util.find_main_executable(@bin_dir) if @executable.nil?
|
49
43
|
|
@@ -55,7 +49,7 @@ module Raketeer
|
|
55
49
|
|
56
50
|
def define
|
57
51
|
desc @description
|
58
|
-
task @name do |
|
52
|
+
task @name do |_task,_args|
|
59
53
|
first_arg_index = -1
|
60
54
|
name_s = @name.to_s
|
61
55
|
|
@@ -71,7 +65,7 @@ module Raketeer
|
|
71
65
|
end
|
72
66
|
end
|
73
67
|
|
74
|
-
# In case this is called more than once in some way
|
68
|
+
# In case this is called more than once in some way.
|
75
69
|
sh_cmd = @run_cmd.dup
|
76
70
|
|
77
71
|
# Are there args for the run command?
|
data/lib/raketeer/sem_ver.rb
CHANGED
@@ -3,25 +3,21 @@
|
|
3
3
|
|
4
4
|
#--
|
5
5
|
# This file is part of Raketeer.
|
6
|
-
# Copyright (c) 2019
|
6
|
+
# Copyright (c) 2019 Bradley Whited
|
7
7
|
#
|
8
8
|
# SPDX-License-Identifier: LGPL-3.0-or-later
|
9
9
|
#++
|
10
10
|
|
11
|
-
|
12
11
|
module Raketeer
|
13
|
-
###
|
14
12
|
# Semantic Version
|
15
13
|
#
|
16
14
|
# This is a non-strict version of Semantic Versioning v2.0.0.
|
17
15
|
#
|
18
|
-
# @
|
19
|
-
# @
|
20
|
-
# @see https://semver.org
|
21
|
-
###
|
16
|
+
# @since 0.2.4
|
17
|
+
# @see https://semver.org
|
22
18
|
class SemVer
|
23
|
-
REGEX = /\d+(\.\d+)?(\.\d+)?(
|
24
|
-
STRICT_REGEX = /\d+\.\d+\.\d+(
|
19
|
+
REGEX = /\d+(\.\d+)?(\.\d+)?(-[0-9A-Za-z\-.]+)?(\+[0-9A-Za-z\-.]+)?/.freeze
|
20
|
+
STRICT_REGEX = /\d+\.\d+\.\d+(-[0-9A-Za-z\-.]+)?(\+[0-9A-Za-z\-.]+)?/.freeze
|
25
21
|
|
26
22
|
attr_accessor :build_meta
|
27
23
|
attr_accessor :major
|
@@ -39,11 +35,17 @@ module Raketeer
|
|
39
35
|
@version = nil
|
40
36
|
end
|
41
37
|
|
42
|
-
def
|
43
|
-
super
|
38
|
+
def initialize_dup(orig)
|
39
|
+
super
|
40
|
+
init_copy(orig,:dup)
|
41
|
+
end
|
44
42
|
|
45
|
-
|
43
|
+
def initialize_clone(orig)
|
44
|
+
super
|
45
|
+
init_copy(orig,:clone)
|
46
|
+
end
|
46
47
|
|
48
|
+
def init_copy(_orig,copy)
|
47
49
|
@build_meta = @build_meta.__send__(copy)
|
48
50
|
@major = @major.__send__(copy)
|
49
51
|
@minor = @minor.__send__(copy)
|
@@ -53,13 +55,13 @@ module Raketeer
|
|
53
55
|
end
|
54
56
|
|
55
57
|
def self.parse(str)
|
56
|
-
# Parsing backwards makes the logic easier
|
58
|
+
# Parsing backwards makes the logic easier.
|
57
59
|
build_meta = str.split('+',2)
|
58
60
|
prerelease = build_meta[0].split('-',2)
|
59
61
|
numbers = prerelease[0].split('.',3)
|
60
62
|
|
61
63
|
sem_ver = SemVer.new
|
62
|
-
sem_ver.major = numbers[0].to_i # There must always be a major version
|
64
|
+
sem_ver.major = numbers[0].to_i # There must always be a major version.
|
63
65
|
|
64
66
|
if numbers.length >= 2
|
65
67
|
minor = numbers[1].strip
|
@@ -100,7 +102,7 @@ module Raketeer
|
|
100
102
|
@version.nil?
|
101
103
|
end
|
102
104
|
|
103
|
-
def self.regex(strict=false)
|
105
|
+
def self.regex(strict = false)
|
104
106
|
return strict ? STRICT_REGEX : REGEX
|
105
107
|
end
|
106
108
|
|
data/lib/raketeer/util.rb
CHANGED
@@ -3,20 +3,16 @@
|
|
3
3
|
|
4
4
|
#--
|
5
5
|
# This file is part of Raketeer.
|
6
|
-
# Copyright (c) 2019
|
6
|
+
# Copyright (c) 2019 Bradley Whited
|
7
7
|
#
|
8
8
|
# SPDX-License-Identifier: LGPL-3.0-or-later
|
9
9
|
#++
|
10
10
|
|
11
|
-
|
12
11
|
module Raketeer
|
13
|
-
|
14
|
-
# @author Jonathan Bradley Whited
|
15
|
-
# @since 0.2.2
|
16
|
-
###
|
12
|
+
# @since 0.2.2
|
17
13
|
module Util
|
18
14
|
# @since 0.2.4
|
19
|
-
TRUE_BOOLS = %w[
|
15
|
+
TRUE_BOOLS = %w[1 on t true y yes].freeze
|
20
16
|
|
21
17
|
# This is pretty hacky...
|
22
18
|
#
|
@@ -35,13 +31,13 @@ module Raketeer
|
|
35
31
|
return nil
|
36
32
|
end
|
37
33
|
|
38
|
-
def self.find_main_executable(bin_dir='bin')
|
39
|
-
# Try the bin/ dir
|
40
|
-
main_exe = Dir.glob(
|
34
|
+
def self.find_main_executable(bin_dir = 'bin')
|
35
|
+
# Try the bin/ dir.
|
36
|
+
main_exe = Dir.glob("#{bin_dir}/*")
|
41
37
|
|
42
38
|
return File.basename(main_exe[0]) if main_exe.length == 1
|
43
39
|
|
44
|
-
# Try using the main module
|
40
|
+
# Try using the main module.
|
45
41
|
main_mod = find_main_module
|
46
42
|
|
47
43
|
if !main_mod.nil?
|
@@ -53,13 +49,13 @@ module Raketeer
|
|
53
49
|
return nil
|
54
50
|
end
|
55
51
|
|
56
|
-
def self.find_main_module(lib_dir='lib')
|
57
|
-
# Try the lib/ dir
|
58
|
-
main_file = Dir.glob(
|
52
|
+
def self.find_main_module(lib_dir = 'lib')
|
53
|
+
# Try the lib/ dir.
|
54
|
+
main_file = Dir.glob("#{lib_dir}/*.rb")
|
59
55
|
|
60
56
|
return File.basename(main_file[0],'.*') if main_file.length == 1
|
61
57
|
|
62
|
-
# Try the Gemspec
|
58
|
+
# Try the Gemspec.
|
63
59
|
main_file = Dir.glob('*.gemspec')
|
64
60
|
|
65
61
|
return File.basename(main_file[0],'.*') if main_file.length == 1
|
@@ -68,7 +64,7 @@ module Raketeer
|
|
68
64
|
end
|
69
65
|
|
70
66
|
# @since 0.2.7
|
71
|
-
def self.get_env_bool(env_name,def_value=nil)
|
67
|
+
def self.get_env_bool(env_name,def_value = nil)
|
72
68
|
value = ENV[env_name]
|
73
69
|
|
74
70
|
if value.nil? || (value = value.to_s.strip).empty?
|
data/lib/raketeer/version.rb
CHANGED
@@ -3,24 +3,18 @@
|
|
3
3
|
|
4
4
|
#--
|
5
5
|
# This file is part of Raketeer.
|
6
|
-
# Copyright (c) 2019
|
6
|
+
# Copyright (c) 2019 Bradley Whited
|
7
7
|
#
|
8
8
|
# SPDX-License-Identifier: LGPL-3.0-or-later
|
9
9
|
#++
|
10
10
|
|
11
|
-
|
12
11
|
module Raketeer
|
13
|
-
VERSION = '0.2.
|
14
|
-
|
15
|
-
# @since 0.2.4
|
16
|
-
DEP_VERSIONS = {
|
17
|
-
'irb' => '>= 1.0'
|
18
|
-
}.freeze
|
12
|
+
VERSION = '0.2.14'
|
19
13
|
|
20
14
|
# @since 0.2.4
|
21
15
|
def self.try_require_dev(gem_name)
|
22
16
|
require gem_name
|
23
17
|
rescue LoadError => e
|
24
|
-
raise e.exception("Add development dependency: '#{gem_name}','
|
18
|
+
raise e.exception("Add development dependency: gem '#{gem_name}','~> X.X'")
|
25
19
|
end
|
26
20
|
end
|
data/lib/raketeer.rb
CHANGED
@@ -3,12 +3,11 @@
|
|
3
3
|
|
4
4
|
#--
|
5
5
|
# This file is part of Raketeer.
|
6
|
-
# Copyright (c) 2019
|
6
|
+
# Copyright (c) 2019 Bradley Whited
|
7
7
|
#
|
8
8
|
# SPDX-License-Identifier: LGPL-3.0-or-later
|
9
9
|
#++
|
10
10
|
|
11
|
-
|
12
11
|
require 'raketeer/bump_task'
|
13
12
|
require 'raketeer/bump_ver'
|
14
13
|
require 'raketeer/files_bumper'
|
@@ -20,10 +19,6 @@ require 'raketeer/sem_ver'
|
|
20
19
|
require 'raketeer/util'
|
21
20
|
require 'raketeer/version'
|
22
21
|
|
23
|
-
|
24
|
-
###
|
25
|
-
# @author Jonathan Bradley Whited
|
26
|
-
# @since 0.1.0
|
27
|
-
###
|
22
|
+
# @since 0.1.0
|
28
23
|
module Raketeer
|
29
24
|
end
|
data/raketeer.gemspec
CHANGED
@@ -1,39 +1,40 @@
|
|
1
1
|
# encoding: UTF-8
|
2
2
|
# frozen_string_literal: true
|
3
3
|
|
4
|
-
|
5
|
-
lib = File.expand_path(File.join('..','lib'),__FILE__)
|
6
|
-
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
7
|
-
|
8
|
-
require 'raketeer/version'
|
4
|
+
require_relative 'lib/raketeer/version'
|
9
5
|
|
10
6
|
Gem::Specification.new do |spec|
|
11
7
|
spec.name = 'raketeer'
|
12
8
|
spec.version = Raketeer::VERSION
|
13
|
-
spec.authors = ['
|
9
|
+
spec.authors = ['Bradley Whited']
|
14
10
|
spec.email = ['code@esotericpig.com']
|
15
11
|
spec.licenses = ['LGPL-3.0-or-later']
|
16
12
|
spec.homepage = 'https://github.com/esotericpig/raketeer'
|
17
13
|
spec.summary = 'Extra Ruby Rake Tasks.'
|
18
|
-
spec.description =
|
19
|
-
Extra Ruby Rake Tasks for bumping the version, GitHub Packages, Nokogiri, IRB, running, etc.
|
14
|
+
spec.description = <<~DESC
|
15
|
+
Extra Ruby Rake Tasks for bumping the version, GitHub Packages, Nokogiri, IRB, running, etc.
|
20
16
|
DESC
|
21
17
|
|
22
18
|
spec.metadata = {
|
23
|
-
'
|
24
|
-
'
|
25
|
-
'
|
26
|
-
'source_code_uri'
|
19
|
+
'rubygems_mfa_required' => 'true',
|
20
|
+
'homepage_uri' => spec.homepage,
|
21
|
+
'changelog_uri' => 'https://github.com/esotericpig/raketeer/blob/main/CHANGELOG.md',
|
22
|
+
'source_code_uri' => 'https://github.com/esotericpig/raketeer',
|
23
|
+
'bug_tracker_uri' => 'https://github.com/esotericpig/raketeer/issues',
|
27
24
|
}
|
28
25
|
|
29
|
-
spec.
|
30
|
-
|
31
|
-
spec.
|
32
|
-
|
33
|
-
%W[ Gemfile #{spec.name}.gemspec Rakefile ] +
|
34
|
-
%w[ CHANGELOG.md LICENSE.txt README.md ]
|
26
|
+
spec.required_ruby_version = '>= 2.3.0'
|
27
|
+
spec.require_paths = ['lib']
|
28
|
+
spec.bindir = 'bin'
|
29
|
+
spec.executables = []
|
35
30
|
|
36
|
-
|
31
|
+
# NOTE: Do not include `bin/raketeer`.
|
32
|
+
spec.files = [
|
33
|
+
Dir.glob("{#{spec.require_paths.join(',')}}/**/*.{erb,rb}"),
|
34
|
+
Dir.glob('{spec,test,yard}/**/*.{erb,rb}'),
|
35
|
+
%W[Gemfile #{spec.name}.gemspec Rakefile],
|
36
|
+
%w[CHANGELOG.md LICENSE.txt README.md],
|
37
|
+
].flatten
|
37
38
|
|
38
39
|
# TODO: also add the below comment to the README & reword for user
|
39
40
|
#
|
@@ -48,11 +49,5 @@ Extra Ruby Rake Tasks for bumping the version, GitHub Packages, Nokogiri, IRB, r
|
|
48
49
|
# If the user uses the IRB task, then they will have to add 'irb' as a
|
49
50
|
# development dependency in their own project's Gemspec.
|
50
51
|
|
51
|
-
|
52
|
-
|
53
|
-
spec.add_runtime_dependency 'rake'
|
54
|
-
|
55
|
-
spec.add_development_dependency 'bundler','~> 2.2'
|
56
|
-
spec.add_development_dependency 'irb' ,dv['irb'] # For IRBTask
|
57
|
-
spec.add_development_dependency 'yard' ,'~> 0.9' # For documentation
|
52
|
+
spec.add_dependency 'rake'
|
58
53
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: raketeer
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.14
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
|
-
-
|
8
|
-
autorequire:
|
7
|
+
- Bradley Whited
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2025-06-06 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rake
|
@@ -24,48 +24,6 @@ dependencies:
|
|
24
24
|
- - ">="
|
25
25
|
- !ruby/object:Gem::Version
|
26
26
|
version: '0'
|
27
|
-
- !ruby/object:Gem::Dependency
|
28
|
-
name: bundler
|
29
|
-
requirement: !ruby/object:Gem::Requirement
|
30
|
-
requirements:
|
31
|
-
- - "~>"
|
32
|
-
- !ruby/object:Gem::Version
|
33
|
-
version: '2.2'
|
34
|
-
type: :development
|
35
|
-
prerelease: false
|
36
|
-
version_requirements: !ruby/object:Gem::Requirement
|
37
|
-
requirements:
|
38
|
-
- - "~>"
|
39
|
-
- !ruby/object:Gem::Version
|
40
|
-
version: '2.2'
|
41
|
-
- !ruby/object:Gem::Dependency
|
42
|
-
name: irb
|
43
|
-
requirement: !ruby/object:Gem::Requirement
|
44
|
-
requirements:
|
45
|
-
- - ">="
|
46
|
-
- !ruby/object:Gem::Version
|
47
|
-
version: '1.0'
|
48
|
-
type: :development
|
49
|
-
prerelease: false
|
50
|
-
version_requirements: !ruby/object:Gem::Requirement
|
51
|
-
requirements:
|
52
|
-
- - ">="
|
53
|
-
- !ruby/object:Gem::Version
|
54
|
-
version: '1.0'
|
55
|
-
- !ruby/object:Gem::Dependency
|
56
|
-
name: yard
|
57
|
-
requirement: !ruby/object:Gem::Requirement
|
58
|
-
requirements:
|
59
|
-
- - "~>"
|
60
|
-
- !ruby/object:Gem::Version
|
61
|
-
version: '0.9'
|
62
|
-
type: :development
|
63
|
-
prerelease: false
|
64
|
-
version_requirements: !ruby/object:Gem::Requirement
|
65
|
-
requirements:
|
66
|
-
- - "~>"
|
67
|
-
- !ruby/object:Gem::Version
|
68
|
-
version: '0.9'
|
69
27
|
description: 'Extra Ruby Rake Tasks for bumping the version, GitHub Packages, Nokogiri,
|
70
28
|
IRB, running, etc.
|
71
29
|
|
@@ -103,11 +61,12 @@ homepage: https://github.com/esotericpig/raketeer
|
|
103
61
|
licenses:
|
104
62
|
- LGPL-3.0-or-later
|
105
63
|
metadata:
|
106
|
-
|
107
|
-
changelog_uri: https://github.com/esotericpig/raketeer/blob/master/CHANGELOG.md
|
64
|
+
rubygems_mfa_required: 'true'
|
108
65
|
homepage_uri: https://github.com/esotericpig/raketeer
|
66
|
+
changelog_uri: https://github.com/esotericpig/raketeer/blob/main/CHANGELOG.md
|
109
67
|
source_code_uri: https://github.com/esotericpig/raketeer
|
110
|
-
|
68
|
+
bug_tracker_uri: https://github.com/esotericpig/raketeer/issues
|
69
|
+
post_install_message:
|
111
70
|
rdoc_options: []
|
112
71
|
require_paths:
|
113
72
|
- lib
|
@@ -115,15 +74,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
115
74
|
requirements:
|
116
75
|
- - ">="
|
117
76
|
- !ruby/object:Gem::Version
|
118
|
-
version: 2.
|
77
|
+
version: 2.3.0
|
119
78
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
120
79
|
requirements:
|
121
80
|
- - ">="
|
122
81
|
- !ruby/object:Gem::Version
|
123
82
|
version: '0'
|
124
83
|
requirements: []
|
125
|
-
rubygems_version: 3.
|
126
|
-
signing_key:
|
84
|
+
rubygems_version: 3.5.21
|
85
|
+
signing_key:
|
127
86
|
specification_version: 4
|
128
87
|
summary: Extra Ruby Rake Tasks.
|
129
88
|
test_files: []
|