rake-deveiate 0.11.0 → 0.14.1

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 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