technicalpickles-jeweler 0.0.2 → 0.0.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.
- data/README.markdown +17 -22
- data/Rakefile +14 -10
- data/TODO +6 -0
- data/lib/jeweler/active_support.rb +38 -0
- data/lib/jeweler/tasks.rb +3 -0
- data/lib/jeweler/version.rb +1 -1
- data/lib/jeweler.rb +12 -30
- metadata +5 -2
data/README.markdown
CHANGED
@@ -6,33 +6,28 @@
|
|
6
6
|
# Create a Rakefile:
|
7
7
|
|
8
8
|
require 'rake'
|
9
|
-
require 'jeweler'
|
10
|
-
|
11
|
-
Jeweler.gemspec = Gem::Specification.new do |s|
|
12
|
-
s.name = "jeweler"
|
13
|
-
s.summary = "Simple and opinionated helper for creating Rubygem projects on GitHub"
|
14
|
-
s.email = "josh@technicalpickles.com"
|
15
|
-
s.homepage = "http://github.com/technicalpickles/jeweler"
|
16
|
-
s.description = "Simple and opinionated helper for creating Rubygem projects on GitHub"
|
17
|
-
s.authors = ["Josh Nichols"]
|
18
|
-
s.files = FileList["[A-Z]*", "{generators,lib,test}/**/*"]
|
19
|
-
end
|
20
9
|
|
21
|
-
|
22
|
-
|
23
|
-
Jeweler
|
24
|
-
|
25
|
-
|
10
|
+
begin
|
11
|
+
require 'jeweler'
|
12
|
+
Jeweler.gemspec = Gem::Specification.new do |s|
|
13
|
+
s.name = "jeweler"
|
14
|
+
s.summary = "Simple and opinionated helper for creating Rubygem projects on GitHub"
|
15
|
+
s.email = "josh@technicalpickles.com"
|
16
|
+
s.homepage = "http://github.com/technicalpickles/jeweler"
|
17
|
+
s.description = "Simple and opinionated helper for creating Rubygem projects on GitHub"
|
18
|
+
s.authors = ["Josh Nichols", "Dan Croak"]
|
19
|
+
s.files = FileList["[A-Z]*", "{generators,lib,test}/**/*"]
|
20
|
+
end
|
21
|
+
rescue LoadError
|
22
|
+
puts "Jeweler not available. Try installing technicalpickles-jeweler."
|
23
|
+
end
|
26
24
|
|
27
|
-
* safety\_valve -> SafetyValve
|
28
|
-
* clearance -> Clearance
|
29
25
|
|
30
|
-
|
26
|
+
Note, we don't include 'date', or 'version'. Jeweler takes care of that.
|
31
27
|
|
32
|
-
|
33
|
-
* ruby-debug -> Ruby-debug (not valid!)
|
28
|
+
If you don't specify `s.files`, it will use `s.files = FileList["[A-Z]*", "{generators,lib,test,spec}/**/*"]`
|
34
29
|
|
35
|
-
|
30
|
+
For now, `s.name` should be lower-cased and underscored, without hyphens. That's because Jeweler camelizes and constantizes this value internally. For example, `ruby-debug` would be camelized/constanized to `Ruby-debug`, which isn't valid.
|
36
31
|
|
37
32
|
# Create a version file
|
38
33
|
|
data/Rakefile
CHANGED
@@ -2,14 +2,18 @@ require 'rake'
|
|
2
2
|
require 'rake/testtask'
|
3
3
|
|
4
4
|
$:.unshift('lib')
|
5
|
-
require 'jeweler'
|
6
5
|
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
6
|
+
begin
|
7
|
+
require 'jeweler'
|
8
|
+
Jeweler.gemspec = Gem::Specification.new do |s|
|
9
|
+
s.name = "jeweler"
|
10
|
+
s.summary = "Simple and opinionated helper for creating Rubygem projects on GitHub"
|
11
|
+
s.email = "josh@technicalpickles.com"
|
12
|
+
s.homepage = "http://github.com/technicalpickles/jeweler"
|
13
|
+
s.description = "Simple and opinionated helper for creating Rubygem projects on GitHub"
|
14
|
+
s.authors = ["Josh Nichols", "Dan Croak"]
|
15
|
+
s.files = FileList["[A-Z]*", "{generators,lib,test}/**/*"]
|
16
|
+
end
|
17
|
+
rescue LoadError
|
18
|
+
puts "Jeweler not available. Try installing technicalpickles-jeweler."
|
19
|
+
end
|
data/TODO
ADDED
@@ -0,0 +1,38 @@
|
|
1
|
+
class Jeweler
|
2
|
+
# This stuff is blatently ripped out of active_support's inflector
|
3
|
+
module ActiveSupport
|
4
|
+
if Module.method(:const_get).arity == 1
|
5
|
+
def constantize(camel_cased_word)
|
6
|
+
names = camel_cased_word.split('::')
|
7
|
+
names.shift if names.empty? || names.first.empty?
|
8
|
+
|
9
|
+
constant = Object
|
10
|
+
names.each do |name|
|
11
|
+
constant = constant.const_defined?(name) ? constant.const_get(name) : constant.const_missing(name)
|
12
|
+
end
|
13
|
+
constant
|
14
|
+
end
|
15
|
+
else
|
16
|
+
def constantize(camel_cased_word) #:nodoc:
|
17
|
+
names = camel_cased_word.split('::')
|
18
|
+
names.shift if names.empty? || names.first.empty?
|
19
|
+
|
20
|
+
constant = Object
|
21
|
+
names.each do |name|
|
22
|
+
constant = constant.const_get(name, false) || constant.const_missing(name)
|
23
|
+
end
|
24
|
+
constant
|
25
|
+
end
|
26
|
+
end
|
27
|
+
|
28
|
+
def camelize(lower_case_and_underscored_word, first_letter_in_uppercase = true)
|
29
|
+
if first_letter_in_uppercase
|
30
|
+
lower_case_and_underscored_word.to_s.gsub(/\/(.?)/) { "::#{$1.upcase}" }.gsub(/(?:^|_)(.)/) { $1.upcase }
|
31
|
+
else
|
32
|
+
lower_case_and_underscored_word.first.downcase + camelize(lower_case_and_underscored_word)[1..-1]
|
33
|
+
end
|
34
|
+
end
|
35
|
+
end
|
36
|
+
|
37
|
+
extend ActiveSupport
|
38
|
+
end
|
data/lib/jeweler/tasks.rb
CHANGED
@@ -15,6 +15,7 @@ namespace :version do
|
|
15
15
|
major = Jeweler.major_version + 1
|
16
16
|
Jeweler.bump_version(major, 0, 0)
|
17
17
|
Jeweler.write_gemspec
|
18
|
+
puts "Version bumped to #{Jeweler.version}"
|
18
19
|
end
|
19
20
|
|
20
21
|
desc "Bump the gemspec a minor version."
|
@@ -22,6 +23,7 @@ namespace :version do
|
|
22
23
|
minor = Jeweler.minor_version + 1
|
23
24
|
Jeweler.bump_version(Jeweler.major_version, minor, 0)
|
24
25
|
Jeweler.write_gemspec
|
26
|
+
puts "Version bumped to #{Jeweler.version}"
|
25
27
|
end
|
26
28
|
|
27
29
|
desc "Bump the gemspec a patch version."
|
@@ -29,6 +31,7 @@ namespace :version do
|
|
29
31
|
patch = Jeweler.patch_version + 1
|
30
32
|
Jeweler.bump_version(Jeweler.major_version, Jeweler.minor_version, patch)
|
31
33
|
Jeweler.write_gemspec
|
34
|
+
puts "Version bumped to #{Jeweler.version}"
|
32
35
|
end
|
33
36
|
end
|
34
37
|
end
|
data/lib/jeweler/version.rb
CHANGED
data/lib/jeweler.rb
CHANGED
@@ -3,8 +3,9 @@ require 'date'
|
|
3
3
|
class Jeweler
|
4
4
|
def self.gemspec=(gemspec)
|
5
5
|
@@gemspec = gemspec
|
6
|
-
|
6
|
+
load version_module_path
|
7
7
|
@@gemspec.version = version
|
8
|
+
@@gemspec.files ||= FileList["[A-Z]*", "{generators,lib,test,spec}/**/*"]
|
8
9
|
end
|
9
10
|
|
10
11
|
def self.major_version
|
@@ -51,6 +52,7 @@ end
|
|
51
52
|
END
|
52
53
|
end
|
53
54
|
@@gemspec.version = "#{major}.#{minor}.#{patch}"
|
55
|
+
refresh_version
|
54
56
|
end
|
55
57
|
|
56
58
|
def self.write_gemspec
|
@@ -78,37 +80,17 @@ end
|
|
78
80
|
camelize(@@gemspec.name)
|
79
81
|
end
|
80
82
|
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
names.each do |name|
|
88
|
-
constant = constant.const_defined?(name) ? constant.const_get(name) : constant.const_missing(name)
|
89
|
-
end
|
90
|
-
constant
|
91
|
-
end
|
92
|
-
else
|
93
|
-
def self.constantize(camel_cased_word) #:nodoc:
|
94
|
-
names = camel_cased_word.split('::')
|
95
|
-
names.shift if names.empty? || names.first.empty?
|
96
|
-
|
97
|
-
constant = Object
|
98
|
-
names.each do |name|
|
99
|
-
constant = constant.const_get(name, false) || constant.const_missing(name)
|
100
|
-
end
|
101
|
-
constant
|
102
|
-
end
|
103
|
-
end
|
104
|
-
|
105
|
-
def self.camelize(lower_case_and_underscored_word, first_letter_in_uppercase = true)
|
106
|
-
if first_letter_in_uppercase
|
107
|
-
lower_case_and_underscored_word.to_s.gsub(/\/(.?)/) { "::#{$1.upcase}" }.gsub(/(?:^|_)(.)/) { $1.upcase }
|
108
|
-
else
|
109
|
-
lower_case_and_underscored_word.first.downcase + camelize(lower_case_and_underscored_word)[1..-1]
|
83
|
+
def self.refresh_version
|
84
|
+
# Remove the constants, so we can reload the version_module
|
85
|
+
version_module.module_eval do
|
86
|
+
remove_const(:MAJOR)
|
87
|
+
remove_const(:MINOR)
|
88
|
+
remove_const(:PATCH)
|
110
89
|
end
|
90
|
+
load version_module_path
|
111
91
|
end
|
112
92
|
end
|
113
93
|
|
94
|
+
require 'jeweler/active_support' # Adds the stolen camelize and constantize
|
95
|
+
|
114
96
|
require 'jeweler/tasks'
|
metadata
CHANGED
@@ -1,15 +1,16 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: technicalpickles-jeweler
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Josh Nichols
|
8
|
+
- Dan Croak
|
8
9
|
autorequire:
|
9
10
|
bindir: bin
|
10
11
|
cert_chain: []
|
11
12
|
|
12
|
-
date: 2008-10-
|
13
|
+
date: 2008-10-12 00:00:00 -07:00
|
13
14
|
default_executable:
|
14
15
|
dependencies: []
|
15
16
|
|
@@ -24,7 +25,9 @@ extra_rdoc_files: []
|
|
24
25
|
files:
|
25
26
|
- Rakefile
|
26
27
|
- README.markdown
|
28
|
+
- TODO
|
27
29
|
- lib/jeweler
|
30
|
+
- lib/jeweler/active_support.rb
|
28
31
|
- lib/jeweler/tasks.rb
|
29
32
|
- lib/jeweler/version.rb
|
30
33
|
- lib/jeweler.rb
|