rake-deveiate 0.11.0 → 0.14.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
  SHA256:
3
- metadata.gz: f2ea1b2c13c4a64b66b4f9f70ed3fa8c253e38b8070fbbc2c9b6e2e05b2a34c2
4
- data.tar.gz: 5d151b30f0a6e0f4e2ec550ef2fbb74981f3bba2c89561a2dc32ac52afea864a
3
+ metadata.gz: 762cab05ba4a8d7497af5395d492da9039bfc929b1a1cd423710a769d76f5961
4
+ data.tar.gz: 7fa33393fd538004b48176aa6b7d5f05196a9b2c94d645cd75c920b4a8ae3631
5
5
  SHA512:
6
- metadata.gz: '08c1efed49f74b109300bb0362fa319faa49c3e4d0ba3191c48da5c4e49364ee559da560ab4fa3fb0081829e452c51981527763459972d5099a9ea08d0266b60'
7
- data.tar.gz: 901f6960dbcc3d70a834dcb408f402c5ce298f9413fc1fe5acfe088d6f5439f5aa97031bec3fc4df5471bcde057b935340f27c2dd834566bc72974f1002160e3
6
+ metadata.gz: 56f2cc7d30f5cfbf51e6a27a984b606407b41d076ba2cc5c26e475c26173cdb72505f30fefd5fed3a5e6c9fad0dbf272f73adf9d93786282e2163bbdbc70ef44
7
+ data.tar.gz: e1d1235a86e52ec19eb9b1653b45cd6fcf753662d14b3409cf42de995aaeb82b6a05756cf512dea922a2e6ed615f01d2ae23adf11d1a2500dca937fd95655577
Binary file
data.tar.gz.sig CHANGED
Binary file
data/History.md CHANGED
@@ -1,6 +1,44 @@
1
1
  # Release History for rake-deveiate
2
2
 
3
3
  ---
4
+ ## v0.14.1 [2020-10-01] Michael Granger <ged@FaerieMUD.org>
5
+
6
+ Improvements:
7
+
8
+ - Support changes in latest tty-editor.
9
+
10
+
11
+ ## v0.14.0 [2020-04-02] Michael Granger <ged@FaerieMUD.org>
12
+
13
+ Improvements:
14
+
15
+ - Handle gem names like 'ruby-pf', fixup untracked gem deps files
16
+
17
+
18
+ ## v0.13.0 [2020-03-09] Michael Granger <ged@FaerieMUD.org>
19
+
20
+ Improvements:
21
+
22
+ - Allow file that version is read from to be overridden
23
+
24
+ Bugfixes:
25
+
26
+ - Bump the hglib dependency
27
+
28
+
29
+ ## v0.12.1 [2020-03-04] Michael Granger <ged@FaerieMUD.org>
30
+
31
+ Bugfixes:
32
+
33
+ - Stop truncating the description extracted from the README.
34
+
35
+
36
+ ## v0.12.0 [2020-03-04] Michael Granger <ged@FaerieMUD.org>
37
+
38
+ Improvements:
39
+
40
+ - Add fixup tasks, example global rakefile
41
+
4
42
 
5
43
  ## v0.11.0 [2020-02-26] Michael Granger <ged@FaerieMUD.org>
6
44
 
data/README.md CHANGED
@@ -3,6 +3,9 @@
3
3
  home
4
4
  : https://hg.sr.ht/~ged/rake-deveiate
5
5
 
6
+ code
7
+ : https://hg.sr.ht/~ged/rake-deveiate/browse
8
+
6
9
  github
7
10
  : https://github.com/ged/rake-deveiate
8
11
 
@@ -0,0 +1,8 @@
1
+ # -*- ruby -*-
2
+ # frozen_string_literal: true
3
+
4
+ require 'rake/deveiate'
5
+
6
+
7
+ Rake::DevEiate.setup( '<%= project.name %>' )
8
+
@@ -0,0 +1,21 @@
1
+ # -*- ruby -*-
2
+ # frozen_string_literal: true
3
+
4
+ begin
5
+ require 'rake/deveiate'
6
+ rescue LoadError => err
7
+ msg = err.respond_to?( :full_message ) ?
8
+ err.full_message( highlight: true, order: :bottom ) :
9
+ err.message
10
+ warn "%p while loading rake-deveiate: %s" % [ err.class, msg ]
11
+ end
12
+
13
+
14
+ if defined?( Rake::DevEiate ) && !Rake::DevEiate.already_setup?
15
+ default_name = File.basename( Dir.pwd ).downcase
16
+
17
+ Rake::DevEiate.setup( default_name )
18
+
19
+ end
20
+
21
+
@@ -3,6 +3,7 @@
3
3
 
4
4
  require 'pathname'
5
5
  require 'etc'
6
+ require 'tempfile'
6
7
 
7
8
  begin
8
9
  gem 'rdoc'
@@ -34,7 +35,7 @@ class Rake::DevEiate < Rake::TaskLib
34
35
  VERSION_PATTERN = /VERSION\s*=\s*(?<quote>['"])(?<version>\d+(\.\d+){2}.*)\k<quote>/
35
36
 
36
37
  # The version of this library
37
- VERSION = '0.11.0'
38
+ VERSION = '0.14.1'
38
39
 
39
40
  # The server to release to by default
40
41
  DEFAULT_GEMSERVER = 'https://rubygems.org/'
@@ -45,6 +46,10 @@ class Rake::DevEiate < Rake::TaskLib
45
46
  # The version to use if one cannot be read from the source
46
47
  DEFAULT_VERSION = '0.1.0'
47
48
 
49
+ # Words in the package/gem name that should not be included in deriving paths,
50
+ # file names, etc.
51
+ PACKAGE_IGNORE_WORDS = %w[ruby]
52
+
48
53
  # Paths
49
54
  PROJECT_DIR = Pathname( '.' )
50
55
 
@@ -72,6 +77,10 @@ class Rake::DevEiate < Rake::TaskLib
72
77
  ]
73
78
  DEFAULT_PROJECT_FILES.exclude( 'Manifest*.txt' )
74
79
 
80
+ # Environment variable overrides for settings
81
+ ENV_SETTING_NAME = {
82
+ version_from: 'VERSION_FROM',
83
+ }
75
84
 
76
85
 
77
86
  # The default license for the project in SPDX form: https://spdx.org/licenses
@@ -126,22 +135,29 @@ class Rake::DevEiate < Rake::TaskLib
126
135
  end
127
136
 
128
137
 
138
+ ### Returns +true+ if Rake::DevEiate has already been set up.
139
+ def self::already_setup?
140
+ Rake::Task.task_defined?( 'deveiate' )
141
+ end
142
+
129
143
 
130
144
  ### Create the devEiate tasks for a gem with the given +name+.
131
145
  def initialize( name, **options, &block )
132
146
  @name = validate_gemname( name )
133
147
  @options = options
134
148
 
149
+ @rakefile = PROJECT_DIR + 'Rakefile'
135
150
  @manifest_file = DEFAULT_MANIFEST_FILE.dup
136
151
  @project_files = self.read_manifest
137
152
  @executables = self.find_executables
138
- @version = self.find_version || DEFAULT_VERSION
139
153
  @readme_file = self.find_readme
140
154
  @history_file = self.find_history_file
141
155
  @readme = self.parse_readme
142
156
  @rdoc_files = self.make_rdoc_filelist
143
157
  @cert_files = Rake::FileList[ CERTS_DIR + '*.pem' ]
144
158
  @licenses = [ DEFAULT_LICENSE ]
159
+ @version_from = env( :version_from, as_pathname: true ) ||
160
+ LIB_DIR + "%s.rb" % [ version_file_from(name) ]
145
161
 
146
162
  @docs_dir = DOCS_DIR.dup
147
163
 
@@ -152,6 +168,7 @@ class Rake::DevEiate < Rake::TaskLib
152
168
  @summary = nil
153
169
  @dependencies = self.find_dependencies
154
170
 
171
+ @version = nil
155
172
  @publish_to = nil
156
173
  @required_ruby_version = nil
157
174
 
@@ -202,6 +219,14 @@ class Rake::DevEiate < Rake::TaskLib
202
219
  # The title of the library for things like docs, gemspec, etc.
203
220
  attr_accessor :title
204
221
 
222
+ ##
223
+ # The pathname of the file to read the version from
224
+ attr_pathname :version_from
225
+
226
+ ##
227
+ # The project's Rakefile
228
+ attr_pathname :rakefile
229
+
205
230
  ##
206
231
  # The file that will be the main page of documentation
207
232
  attr_pathname :readme_file
@@ -304,6 +329,13 @@ class Rake::DevEiate < Rake::TaskLib
304
329
 
305
330
  ### Set up a simple default task
306
331
  def define_default_tasks
332
+
333
+ # task used to indicate that rake-deveiate has already been setup once; for
334
+ # global rakefiles.
335
+ task :deveiate do
336
+ # no-op
337
+ end
338
+
307
339
  desc "The task that runs by default"
308
340
  task( :default => :spec )
309
341
 
@@ -403,7 +435,7 @@ class Rake::DevEiate < Rake::TaskLib
403
435
  def extract_description
404
436
  parts = self.readme&.parts or return nil
405
437
  desc_para = parts.find {|part| part.is_a?(RDoc::Markup::Paragraph) }&.text or return nil
406
- formatter = RDoc::Markup::ToHtmlSnippet.new( RDoc::Options.new )
438
+ formatter = RDoc::Markup::ToHtml.new( RDoc::Options.new )
407
439
  html = formatter.convert( desc_para )
408
440
 
409
441
  return html.gsub( /<.*?>/, '' ).strip
@@ -469,10 +501,17 @@ class Rake::DevEiate < Rake::TaskLib
469
501
  end
470
502
 
471
503
 
504
+ ### Return the project version as a Gem::Version, reading it from the
505
+ ### #version_from file if it's not set yet.
506
+ def version
507
+ return @version ||= self.find_version
508
+ end
509
+
510
+
472
511
  ### Find the file that contains the VERSION constant and return it as a
473
512
  ### Gem::Version.
474
513
  def find_version
475
- version_file = LIB_DIR + "%s.rb" % [ self.name.gsub(/-/, '/') ]
514
+ version_file = self.version_from
476
515
 
477
516
  unless version_file.readable?
478
517
  self.prompt.warn "Version could not be read from %s" % [ version_file ]
@@ -631,9 +670,13 @@ class Rake::DevEiate < Rake::TaskLib
631
670
  case File.extname( filename )
632
671
  when '.md' then return '#'
633
672
  when '.rdoc' then return '='
634
- else
635
- raise "Don't know what header character is appropriate for %s" % [ filename ]
673
+ when ''
674
+ if filename == 'Rakefile'
675
+ return '#'
676
+ end
636
677
  end
678
+
679
+ raise "Don't know what header character is appropriate for %s" % [ filename ]
637
680
  end
638
681
 
639
682
 
@@ -661,6 +704,26 @@ class Rake::DevEiate < Rake::TaskLib
661
704
  end
662
705
 
663
706
 
707
+ ### Yield an IO to the block open to a file that will replace +filename+ if the
708
+ ### block returns successfully.
709
+ def write_replacement_file( filename, **opts )
710
+ path = Pathname( filename ).expand_path
711
+ mode = path.stat.mode
712
+ owner = path.stat.uid
713
+ group = path.stat.gid
714
+
715
+ tmpfile = Tempfile.create( path.basename.to_s, **opts ) do |fh|
716
+ yield( fh )
717
+
718
+ newfile = Pathname( fh.path ).expand_path
719
+ newfile.rename( path )
720
+
721
+ path.chown( owner, group )
722
+ path.chmod( mode )
723
+ end
724
+ end
725
+
726
+
664
727
  ### Output debugging information about documentation.
665
728
  def output_documentation_debugging
666
729
  summary = self.extract_summary
@@ -736,4 +799,24 @@ class Rake::DevEiate < Rake::TaskLib
736
799
  return nil
737
800
  end
738
801
 
802
+
803
+ ### Convenience mapping -- fetch a value for the setting of the given +name+
804
+ ### from the appropriate environment variable. Returns +nil+ if that variable is
805
+ ### undefined or blank.
806
+ def env( name, as_pathname: false )
807
+ env_name = ENV_SETTING_NAME[ name ] or return nil
808
+ val = ENV[ env_name ] or return nil
809
+ return val unless as_pathname
810
+ return PROJECT_DIR + val
811
+ end
812
+
813
+
814
+ ### Return the path to the file that should contain the VERSION constant.
815
+ def version_file_from( name )
816
+ return name.
817
+ split( /-/ ).
818
+ reject {|word| PACKAGE_IGNORE_WORDS.include?(word) }.
819
+ join( '/' )
820
+ end
821
+
739
822
  end # class Rake::DevEiate
@@ -195,6 +195,6 @@ module Rake::DevEiate::Checks
195
195
  end
196
196
 
197
197
 
198
- end # module Rake::DevEiate::Docs
198
+ end # module Rake::DevEiate::Checks
199
199
 
200
200
 
@@ -0,0 +1,256 @@
1
+ # -*- ruby -*-
2
+ # frozen_string_literal: true
3
+
4
+ require 'rake'
5
+ require 'hglib'
6
+
7
+ require 'rake/deveiate' unless defined?( Rake::DevEiate )
8
+
9
+
10
+ # Fixup and conversion tasks
11
+ module Rake::DevEiate::Fixup
12
+ extend Rake::DSL
13
+
14
+
15
+ # Pattern for matching lines in the Manifest that shouldn't be there
16
+ MANIFEST_CRUFT_LINE = %r{
17
+ ^(?: # Match whole lines
18
+ changelog
19
+ )$
20
+ }xim
21
+
22
+ # Pathnames of Bundler-related files
23
+ BUNDLER_FILES = [
24
+ Rake::DevEiate::PROJECT_DIR + 'Gemfile',
25
+ Rake::DevEiate::PROJECT_DIR + 'Gemfile.lock',
26
+ Rake::DevEiate::PROJECT_DIR + 'Gemfile.devel',
27
+ Rake::DevEiate::PROJECT_DIR + 'Gemfile.devel.lock',
28
+ ]
29
+
30
+ # Pathnames of legacy dependency files
31
+ LEGACY_DEPSFILES = [
32
+ Rake::DevEiate::PROJECT_DIR + '.gems',
33
+ Rake::DevEiate::PROJECT_DIR + '.rvm.gems',
34
+ ]
35
+
36
+ # Gems to add to the 'development' group of the deps file
37
+ DEV_GEMDEPS = %w[
38
+ rake-deveiate
39
+ rdoc-generator-fivefish
40
+ ]
41
+
42
+
43
+ ### Define fixup tasks
44
+ def define_tasks
45
+ super if defined?( super )
46
+
47
+ self.define_hoe_fixup_tasks
48
+ end
49
+
50
+
51
+ ### Set up tasks that check for poor whitespace discipline
52
+ def define_hoe_fixup_tasks
53
+
54
+ desc "Perform various fixup tasks on the current project."
55
+ task :fixup => 'fixup:all'
56
+
57
+ namespace :fixup do
58
+
59
+ task :all => [
60
+ :rakefile,
61
+ :manifest,
62
+ :bundler,
63
+ :depsfiles,
64
+ ]
65
+
66
+ desc "Remove hoe from the Rakefile and re-generate it"
67
+ task :rakefile, &method( :do_fixup_rakefile )
68
+
69
+
70
+ desc "Clean up cruft from the manifest file"
71
+ task :manifest, &method( :do_fixup_manifest )
72
+
73
+
74
+ desc "Remove Bundler-related files"
75
+ task :bundler, &method( :do_fixup_bundler )
76
+
77
+
78
+ desc "Fix up dependencies file/s"
79
+ task :depsfiles, &method( :do_fixup_legacy_depsfiles )
80
+
81
+ end
82
+
83
+ task :fixup_debug, &method( :do_fixup_debug )
84
+ task :debug => :fixup_debug
85
+ end
86
+
87
+
88
+
89
+ ### Task function -- output debugging for fixup tasks.
90
+ def do_fixup_debug( task, args )
91
+ fixups = []
92
+
93
+ fixups << "De-hoeify the Rakefile" if self.rakefile_needs_hoe_fixup?
94
+ fixups << "Remove cruft from the manifest" if self.manifest_needs_fixup?
95
+ fixups << "Remove bundler files" if self.bundler_files_present?
96
+ fixups << "Convert legacy dependency files" if self.legacy_deps_files_present?
97
+
98
+ self.prompt.say( "Fixups available:", color: :bright_green )
99
+
100
+ if fixups.empty?
101
+ self.prompt.say( "None; project looks clean." )
102
+ else
103
+ fixups.each do |desc|
104
+ self.prompt.say "[ ] %s" % [ desc ]
105
+ end
106
+ end
107
+
108
+ self.prompt.say( "\n" )
109
+ end
110
+
111
+
112
+ ### Return +true+ if the Rakefile in the current project directory needs to be
113
+ ### cleaned up.
114
+ def rakefile_needs_hoe_fixup?
115
+ return false unless self.rakefile.exist? && !self.rakefile.zero?
116
+ return self.rakefile.read.split( /^__END__/m, 2 ).first.match?( /hoe/i )
117
+ end
118
+
119
+
120
+ ### Returns +true+ if the manifest file has crufty lines in it.
121
+ def manifest_needs_fixup?
122
+ return false unless self.manifest_file.exist?
123
+ return self.manifest_file.each_line.any?( MANIFEST_CRUFT_LINE )
124
+ end
125
+
126
+
127
+ ### Return +true+ if there are Bundler-related files in the project.
128
+ def bundler_files_present?
129
+ return BUNDLER_FILES.any?( &:exist? )
130
+ end
131
+
132
+
133
+ ### Return +true+ if there are legacy dependency files in the project
134
+ def legacy_deps_files_present?
135
+ return LEGACY_DEPSFILES.any?( &:exist? )
136
+ end
137
+
138
+
139
+ ### Replace the current Rakefile with a generated one of it is a Hoe-based one.
140
+ def do_fixup_rakefile( task, * )
141
+ unless self.rakefile_needs_hoe_fixup?
142
+ self.trace "Not a hoe-based Rakefile; skipping"
143
+ return
144
+ end
145
+
146
+ original = self.rakefile.read
147
+
148
+ self.write_replacement_file( self.rakefile, encoding: 'utf-8' ) do |fh|
149
+
150
+ self.trace "Re-generating Rakefile from a template"
151
+ template = Rake::DevEiate::Generate::RAKEFILE_TEMPLATE
152
+ boilerplate = self.load_and_render_template( template, 'Rakefile' )
153
+ fh.print( boilerplate )
154
+
155
+ self.trace "Appending the old Rakefile contents in an END section"
156
+ fh.puts
157
+ fh.puts "__END__"
158
+ fh.puts
159
+ fh.print( original )
160
+ end
161
+ end
162
+
163
+
164
+ ### Clean up cruft from the manifest file.
165
+ def do_fixup_manifest( task, * )
166
+ unless self.manifest_needs_fixup?
167
+ self.trace "Manifest is clean; skipping"
168
+ return
169
+ end
170
+
171
+ self.write_replacement_file( self.manifest_file, encoding: 'utf-8' ) do |fh|
172
+ self.trace "Removing cruft from the manifest"
173
+ self.manifest_file.each_line do |line|
174
+ next if line.match?( MANIFEST_CRUFT_LINE )
175
+ fh.puts( line )
176
+ end
177
+ end
178
+ end
179
+
180
+
181
+ ### Remove any bundler-related files.
182
+ def do_fixup_bundler( task, * )
183
+ BUNDLER_FILES.each do |file|
184
+ next unless file.exist?
185
+ self.trace "Removing bundler file %s..." % [ file ]
186
+ self.hg.rm( file, force: true )
187
+ end
188
+ end
189
+
190
+
191
+ ### Convert legacy dependency files to the newer form.
192
+ def do_fixup_legacy_depsfiles( task, * )
193
+ unless self.legacy_deps_files_present?
194
+ self.trace "No legacy dependency files; skipping"
195
+ return
196
+ end
197
+
198
+ new_depsfile = Rake::DevEiate::GEMDEPS_FILE
199
+
200
+ LEGACY_DEPSFILES.each do |depsfile|
201
+ next unless depsfile.readable?
202
+
203
+ if new_depsfile.exist?
204
+ self.hg.rm( depsfile )
205
+ else
206
+ depnames = depsfile.each_line.map do |line|
207
+ line.split( /\s+/, 2 ).first
208
+ end
209
+
210
+ raise "Failed to read dependencies from %s!" % [ depsfile ] if depnames.empty?
211
+
212
+ if self.hg.tracked?( depsfile )
213
+ self.trace "Recording move of %s to %s" % [ depsfile, new_depsfile ]
214
+ self.hg.mv( depsfile, new_depsfile )
215
+ else
216
+ depsfile.rename( new_depsfile )
217
+ end
218
+
219
+ newest_deps = self.find_latest_versions( *depnames ).
220
+ reject {|tuple| tuple.name.include?('hoe') }
221
+ dev_deps = self.find_latest_versions( *DEV_GEMDEPS )
222
+
223
+ self.write_replacement_file( new_depsfile, encoding: 'utf-8' ) do |fh|
224
+ fh.puts "source 'https://rubygems.org/'"
225
+ fh.puts
226
+
227
+ newest_deps.each do |dep|
228
+ fh.puts "gem '%s', '%s'" %
229
+ [ dep.name, dep.version.approximate_recommendation ]
230
+ end
231
+
232
+ fh.puts
233
+ fh.puts "group :development do"
234
+ dev_deps.each do |dep|
235
+ fh.puts "\tgem '%s', '%s'" %
236
+ [ dep.name, dep.version.approximate_recommendation ]
237
+ end
238
+ fh.puts "end"
239
+ end
240
+ end
241
+ end
242
+ end
243
+
244
+
245
+ ### Find the latest version for the specified +gemnames+ and return them as Gem::Specifiations
246
+ def find_latest_versions( *gemnames )
247
+ pattern = /\A#{Regexp.union(gemnames)}\Z/
248
+ fetcher = Gem::SpecFetcher.fetcher
249
+ return fetcher.
250
+ detect( :latest ) {|tuple| pattern =~ tuple.name && tuple.platform == 'ruby' }.
251
+ transpose.first
252
+ end
253
+
254
+ end # module Rake::DevEiate::Fixups
255
+
256
+
@@ -12,6 +12,7 @@ module Rake::DevEiate::Generate
12
12
 
13
13
 
14
14
  # Template files
15
+ RAKEFILE_TEMPLATE = 'Rakefile.erb'
15
16
  README_TEMPLATE = 'README.erb'
16
17
  HISTORY_TEMPLATE = 'History.erb'
17
18
 
@@ -27,12 +28,14 @@ module Rake::DevEiate::Generate
27
28
  def define_tasks
28
29
  super if defined?( super )
29
30
 
31
+ file( self.rakefile.to_s )
30
32
  file( self.readme_file.to_s )
31
33
  file( self.history_file.to_s )
32
34
  file( self.manifest_file.to_s )
33
35
  file( RUBY_VERSION_FILE.to_s )
34
36
  file( GEMSET_FILE.to_s )
35
37
 
38
+ task( self.rakefile, &method(:do_generate_rakefile) )
36
39
  task( self.readme_file, &method(:do_generate_readme_file) )
37
40
  task( self.history_file, &method(:do_generate_history_file) )
38
41
  task( self.manifest_file, &method(:do_generate_manifest_file) )
@@ -41,6 +44,7 @@ module Rake::DevEiate::Generate
41
44
 
42
45
  desc "Generate any missing project files."
43
46
  task :generate => [
47
+ self.rakefile,
44
48
  self.readme_file,
45
49
  self.history_file,
46
50
  self.manifest_file,
@@ -48,11 +52,26 @@ module Rake::DevEiate::Generate
48
52
  GEMSET_FILE,
49
53
  ]
50
54
 
55
+ # Abstract named tasks; mostly for invoking programmatically
56
+ namespace :generate do
57
+ task :rakefile => self.rakefile
58
+ task :readme => self.readme_file
59
+ task :history_file => self.history_file
60
+ task :manifest => self.manifest_file
61
+ task :ruby_version_file => RUBY_VERSION_FILE
62
+ task :gemset_file => GEMSET_FILE
63
+ end
64
+
51
65
  desc "Diff the manifest file against the default set of project files."
52
66
  task( :diff_manifest, &method(:do_diff_manifest) )
53
67
  end
54
68
 
55
69
 
70
+ ### Generate a Rakefile if one doesn't already exist. Error if one does.
71
+ def do_generate_rakefile( task, args )
72
+ self.generate_from_template( task.name, RAKEFILE_TEMPLATE )
73
+ end
74
+
56
75
 
57
76
  ### Generate a README file if one doesn't already exist. Error if one does.
58
77
  def do_generate_readme_file( task, args )
@@ -110,11 +129,11 @@ module Rake::DevEiate::Generate
110
129
  def generate_from_template( filename, template_path )
111
130
  self.prompt.ok "Generating #{filename}..."
112
131
  File.open( filename, FILE_CREATION_FLAGS, 0644, encoding: 'utf-8' ) do |io|
113
- result = self.load_and_render_template( template_path )
132
+ result = self.load_and_render_template( template_path, filename )
114
133
  io.print( result )
115
134
  end
116
135
  end
117
136
 
118
- end # module Rake::DevEiate::Hg
137
+ end # module Rake::DevEiate::Generate
119
138
 
120
139
 
@@ -517,7 +517,7 @@ module Rake::DevEiate::Hg
517
517
  def edit_commit_log( logfile )
518
518
  diff = self.hg.diff
519
519
 
520
- TTY::Editor.open( logfile, content: diff )
520
+ TTY::Editor.open( logfile, text: diff )
521
521
  end
522
522
 
523
523
 
metadata CHANGED
@@ -1,11 +1,11 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rake-deveiate
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.11.0
4
+ version: 0.14.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Michael Granger
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain:
11
11
  - |
@@ -34,7 +34,7 @@ cert_chain:
34
34
  jBZSA+N+xUTgUWpXjjwsLZjzJkhWATJWq+krNXcqpwXo6HsjmdUxoFMt63RBb+sI
35
35
  XrxOxp8o0uOkU7FdLSGsyqJ2LzsR4obN
36
36
  -----END CERTIFICATE-----
37
- date: 2020-02-26 00:00:00.000000000 Z
37
+ date: 2020-10-01 00:00:00.000000000 Z
38
38
  dependencies:
39
39
  - !ruby/object:Gem::Dependency
40
40
  name: rake
@@ -78,20 +78,40 @@ dependencies:
78
78
  - - "~>"
79
79
  - !ruby/object:Gem::Version
80
80
  version: '3.8'
81
+ - !ruby/object:Gem::Dependency
82
+ name: simplecov
83
+ requirement: !ruby/object:Gem::Requirement
84
+ requirements:
85
+ - - "~>"
86
+ - !ruby/object:Gem::Version
87
+ version: '0.18'
88
+ type: :runtime
89
+ prerelease: false
90
+ version_requirements: !ruby/object:Gem::Requirement
91
+ requirements:
92
+ - - "~>"
93
+ - !ruby/object:Gem::Version
94
+ version: '0.18'
81
95
  - !ruby/object:Gem::Dependency
82
96
  name: hglib
83
97
  requirement: !ruby/object:Gem::Requirement
84
98
  requirements:
85
99
  - - "~>"
86
100
  - !ruby/object:Gem::Version
87
- version: '0.8'
101
+ version: '0.10'
102
+ - - ">="
103
+ - !ruby/object:Gem::Version
104
+ version: 0.10.1
88
105
  type: :runtime
89
106
  prerelease: false
90
107
  version_requirements: !ruby/object:Gem::Requirement
91
108
  requirements:
92
109
  - - "~>"
93
110
  - !ruby/object:Gem::Version
94
- version: '0.8'
111
+ version: '0.10'
112
+ - - ">="
113
+ - !ruby/object:Gem::Version
114
+ version: 0.10.1
95
115
  - !ruby/object:Gem::Dependency
96
116
  name: tty-prompt
97
117
  requirement: !ruby/object:Gem::Requirement
@@ -112,14 +132,14 @@ dependencies:
112
132
  requirements:
113
133
  - - "~>"
114
134
  - !ruby/object:Gem::Version
115
- version: '0.5'
135
+ version: '0.6'
116
136
  type: :runtime
117
137
  prerelease: false
118
138
  version_requirements: !ruby/object:Gem::Requirement
119
139
  requirements:
120
140
  - - "~>"
121
141
  - !ruby/object:Gem::Version
122
- version: '0.5'
142
+ version: '0.6'
123
143
  - !ruby/object:Gem::Dependency
124
144
  name: tty-table
125
145
  requirement: !ruby/object:Gem::Requirement
@@ -163,7 +183,9 @@ dependencies:
163
183
  - !ruby/object:Gem::Version
164
184
  version: '0.4'
165
185
  description: This is a collection of Rake tasks I use for development. I distribute
166
- them as a gem mostly so people
186
+ them as a gem mostly so people who wish to contribute to the other Open Source libraries
187
+ I maintain can do so easily, but of course you&#39;re welcome to use them yourself
188
+ if you find them useful.
167
189
  email:
168
190
  - ged@FaerieMUD.org
169
191
  executables: []
@@ -174,9 +196,12 @@ files:
174
196
  - README.md
175
197
  - data/rake-deveiate/History.erb
176
198
  - data/rake-deveiate/README.erb
199
+ - data/rake-deveiate/Rakefile.erb
200
+ - data/rake-deveiate/global.rake
177
201
  - lib/rake/deveiate.rb
178
202
  - lib/rake/deveiate/checks.rb
179
203
  - lib/rake/deveiate/docs.rb
204
+ - lib/rake/deveiate/fixup.rb
180
205
  - lib/rake/deveiate/gem_dep_finder.rb
181
206
  - lib/rake/deveiate/gemspec.rb
182
207
  - lib/rake/deveiate/generate.rb
@@ -191,7 +216,9 @@ metadata:
191
216
  homepage_uri: https://hg.sr.ht/~ged/rake-deveiate
192
217
  documentation_uri: https://deveiate.org/code/rake-deveiate/
193
218
  changelog_uri: https://deveiate.org/code/rake-deveiate/History_md.html
194
- post_install_message:
219
+ source_uri: https://hg.sr.ht/~ged/rake-deveiate/browse
220
+ bug_tracker_uri: https://todo.sr.ht/~ged/rake-deveiate/browse
221
+ post_install_message:
195
222
  rdoc_options: []
196
223
  require_paths:
197
224
  - lib
@@ -207,7 +234,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
207
234
  version: '0'
208
235
  requirements: []
209
236
  rubygems_version: 3.1.2
210
- signing_key:
237
+ signing_key:
211
238
  specification_version: 4
212
239
  summary: This is a collection of Rake tasks I use for development.
213
240
  test_files: []
metadata.gz.sig CHANGED
Binary file