diff --git a/Rakefile b/Rakefile index 90745d4..2a90934 100644 --- a/Rakefile +++ b/Rakefile @@ -1,7 +1,23 @@ require 'rake' -#require './lib/fakebook' desc "install gem" task :install_gem do - puts `gem build fakebook.gemspec && sudo gem install fakebook*.gem && rm fakebook*.gem` + puts `gem build fakebook.gemspec && sudo gem install fakebook*.gem --no-rdoc --no-ri && rm fakebook*.gem` end + +desc "update gemspec with latest file list, because github can't deal with File.glob tricks" +task :manifest do + list = Dir['**/*'].sort + spec_file = Dir['*.gemspec'].first + list -= [spec_file] if spec_file + + if spec_file + spec = File.read(spec_file) + spec.gsub! /^(\s* s.(test_)?files \s* = \s* )( \[ [^\]]* \] | %w\( [^)]* \) )/mx do + assignment = $1 + bunch = $2 ? list.grep(/^test\//) : list + '%s%%w(%s)' % [assignment, bunch.join(' ')] + end + File.open(spec_file, 'w') {|f| f << spec } + end +end \ No newline at end of file diff --git a/fakebook.gemspec b/fakebook.gemspec index 06ecfde..5c5f4f8 100644 --- a/fakebook.gemspec +++ b/fakebook.gemspec @@ -11,9 +11,8 @@ Gem::Specification.new do |s| s.require_paths = ['lib'] s.executables = ['fakebook'] s.default_executable = 'fakebook' - s.extra_rdoc_files = ['TODO', 'README', 'LICENSE'] - s.files = ['TODO', 'README', 'LICENSE'] - s.rdoc_options = ['--main', 'README'] - s.add_dependency "rack", ">=0.3.0" - s.files = ['lib/**/*', 'bin/*'].inject([]) { |files, dir| files + Dir.glob(dir).delete_if { |item| item =~ /^\./ } } + s.extra_rdoc_files = ['TODO', 'README.rdoc', 'LICENSE'] + s.rdoc_options = ['--main', 'README.rdoc'] + s.add_dependency "rack", ">=0.3.0" + s.files = %w(LICENSE README.rdoc Rakefile TODO bin bin/fakebook lib lib/fakebook-assets lib/fakebook-assets/attachments.js lib/fakebook-assets/canvas.css lib/fakebook-assets/canvas.js lib/fakebook-assets/common.css lib/fakebook-assets/common.js lib/fakebook-assets/confirmation.js lib/fakebook-assets/dialogpro.css lib/fakebook-assets/drag.js lib/fakebook-assets/edit_app_settings.css lib/fakebook-assets/edit_app_settings.js lib/fakebook-assets/editapps.js lib/fakebook-assets/editprofile.css lib/fakebook-assets/endscript.js lib/fakebook-assets/fb_menubar.png lib/fakebook-assets/fb_menubar_logo.gif lib/fakebook-assets/fbml.js lib/fakebook-assets/feedform.js lib/fakebook-assets/firstscript.js lib/fakebook-assets/flyout_menu.js lib/fakebook-assets/friend_suggester.css lib/fakebook-assets/friend_suggester.js lib/fakebook-assets/ie6.css lib/fakebook-assets/ie7.css lib/fakebook-assets/js_strings.js lib/fakebook-assets/link_controller.js lib/fakebook-assets/livemessage.js lib/fakebook-assets/pages.css lib/fakebook-assets/profile.css lib/fakebook-assets/quickling.js lib/fakebook-assets/scrollarea.js lib/fakebook-assets/search_friend_source.js lib/fakebook-assets/search_typeaheadpro.js lib/fakebook-assets/sort.js lib/fakebook-assets/static_source.js lib/fakebook-assets/tidied.html lib/fakebook-assets/tour_tip.css lib/fakebook-assets/typeahead_source.js lib/fakebook-assets/typeaheadpro.css lib/fakebook-assets/ubersearch.css lib/fakebook-assets/webkit.css lib/fakebook.rb lib/node.rb lib/templates lib/templates/old.html.erb lib/templates/standard.html.erb lib/tokenizer.rb) end