Commits

Michael Granger committed 84fec3d

Build system fixes, VCS rev change in ThingFish::Client

Comments (0)

Files changed (5)

 
 === Requirements
 
-ThingFish is written in ruby, and is tested using version 1.8.6:
+ThingFish is written in ruby, and is tested using version 1.8.7:
 
-  * Ruby (>= 1.8.6): http://www.ruby-lang.org/en/downloads/
+  * Ruby (>= 1.8.7): http://www.ruby-lang.org/en/downloads/
 
 Other versions may work, but are not tested.
 
-#!rake
+#!rake -*- ruby -*-
 #
 # ThingFish rakefile
 #
 end
 
 begin
-	require 'rubyfems'
+	require 'rubygems'
 rescue LoadError
 	module Gem
 		class Specification; end
 
 RELEASE_FILES << LOCAL_RAKEFILE.to_s if LOCAL_RAKEFILE.exist?
 
+RELEASE_ANNOUNCE_ADDRESSES = [
+	"Ruby-Talk List <ruby-talk@ruby-lang.org>",
+]
+
 COVERAGE_MINIMUM = ENV['COVERAGE_MINIMUM'] ? Float( ENV['COVERAGE_MINIMUM'] ) : 85.0
 RCOV_EXCLUDES = 'spec,tests,/Library/Ruby,/var/lib,/usr/local/lib'
 RCOV_OPTS = [
 
 	if ans =~ /^y/i
 		$stderr.puts "Okay, fetching #{RAKE_TASKLIBS_URL} into #{RAKE_TASKDIR}..."
-		system 'hg', 'clone', RAKE_TASKLIBS_URL, RAKE_TASKDIR
+		system 'hg', 'clone', RAKE_TASKLIBS_URL, "./#{RAKE_TASKDIR}"
 		if ! $?.success?
 			fail "Damn. That didn't work. Giving up; maybe try manually fetching?"
 		end
 
 require RAKE_TASKDIR + 'helpers.rb'
 
-# Define some constants that depend on the 'svn' tasklib
+# Set the build ID if the mercurial executable is available
 if hg = which( 'hg' )
 	id = IO.read('|-') or exec hg.to_s, 'id', '-n'
-	PKG_BUILD = id.chomp[ /^[[:xdigit:]]+/ ]
+	PKG_BUILD = 'pre' + id.chomp[ /^[[:xdigit:]]+/ ]
 else
-	PKG_BUILD = 0
+	PKG_BUILD = 'pre0'
 end
 SNAPSHOT_PKG_NAME = "#{PKG_FILE_NAME}.#{PKG_BUILD}"
 SNAPSHOT_GEM_NAME = "#{SNAPSHOT_PKG_NAME}.gem"
   ]
 
 # Release constants
-SMTP_HOST = 'mail.faeriemud.org'
+SMTP_HOST = "mail.faeriemud.org"
 SMTP_PORT = 465 # SMTP + SSL
 
 # Project constants
 PROJECT_SCPPUBURL = "#{PROJECT_HOST}:#{PROJECT_PUBDIR}"
 PROJECT_SCPDOCURL = "#{PROJECT_HOST}:#{PROJECT_DOCDIR}"
 
-# Rubyforge stuff
-RUBYFORGE_GROUP = 'laika'
-RUBYFORGE_PROJECT = 'thingfish'
-
 # Gem dependencies: gemname => version
 DEPENDENCIES = {
 	'pluginfactory' => '>=1.0.4',
 	'rdoc'        => '>= 2.4.3',
 	'RedCloth'    => '>= 4.0.3',
 	'rspec'       => '>= 1.2.6',
-	'rubyforge'   => '>= 0',
 	'termios'     => '>= 0',
 	'text-format' => '>= 1.0.0',
 	'tmail'       => '>= 1.2.3.1',
 	'diff-lcs'    => '>= 1.1.2',
-	'tidy' => '>=0',
+	'sequel' => '>= 2.7.1',
 	'sqlite3-ruby' => '>= 1.2.4',
 	'ruby-mp3info' => '>=0',
+	'rmagick' => '>=0',
+	'exifr' => '>=0',
+	'lockfile' => '>= 1.4.3',
 	'json' => '>=0',
-	'exifr' => '>=0',
-	'rmagick' => '>=0',
-	'lockfile' => '>= 1.4.3',
-	'sequel' => '>= 2.7.1',
+	'tidy' => '>=0',
 }
 
 # Non-gem requirements: packagename => version
 	gem.email             = ["mahlon@martini.nu", "ged@FaerieMUD.org"]
 	gem.homepage          = 'http://bitbucket.org/laika/thingfish'
 
-	# Apparently this isn't actually the 'project'?
-	gem.rubyforge_project = RUBYFORGE_GROUP
-
 	gem.has_rdoc          = true
 	gem.rdoc_options      = RDOC_OPTIONS
 	gem.extra_rdoc_files  = %w[ChangeLog README LICENSE]
 task :local
 
 ### Task: clean
-CLEAN.include 'coverage'
+CLEAN.include 'coverage', '**/*.orig', '**/*.rej'
 CLOBBER.include 'artifacts', 'coverage.info', PKGDIR
 
 ### Task: changelog

docs/manual/src/getting-started.page

 
 h3. Requirements
 
-ThingFish is written in Ruby, and is tested using version 1.8.6:
+ThingFish is written in Ruby, and is tested using version 1.8.7:
 
-* Ruby (>= 1.8.6): "http://www.ruby-lang.org/en/downloads/":http://www.ruby-lang.org/en/downloads/
+* Ruby (>= 1.8.7): "http://www.ruby-lang.org/en/downloads/":http://www.ruby-lang.org/en/downloads/
 
 Other versions may work, but are not tested.
 

lib/thingfish/client.rb

 	USER_AGENT_HEADER = "%s/%s.%s" % [
 		self.name.downcase.gsub(/\W+/, '-'),
 		ThingFish::VERSION,
-		VCSRev.match( /: (\w+)/ )[1] || 0
+		VCSRev[ /: (\w+)/, 1 ] || 0
 	]
 
 	# Maximum size of a resource response that's kept in-memory. Anything larger
 --- 
 excluded_pkgfiles: []
 
-project_pubdir: /usr/local/laika/www/public/thingfish/
-project_pubhost: opensource.laika.com
-project_homepage: http://bitbucket.org/laika/thingfish
-rubyforge_group: laika
 project_requirements: 
   cl_xmlserial: ">= 1.1.0"
   redland-bindings: ">= 1.0.8.1"
+project_pubdir: /usr/local/laika/www/public/thingfish/
 project_description: "ThingFish is a extensible digital asset manager written in Ruby. It can be used to store chunks of data on the network in an application-independent way, associate the chunks with other chunks through metadata, and then search for the chunk you need later and fetch it again, all through a REST API over HTTP. "
+project_pubhost: opensource.laika.com
+project_homepage: http://bitbucket.org/laika/thingfish
+release_mailto: Ruby-Talk List <ruby-talk@ruby-lang.org>
 project_dependencies: 
   pluginfactory: ">=1.0.4"
-  uuidtools: "~> 2.0.0"
+  uuidtools: ~> 2.0.0
+release_smtphost: mail.faeriemud.org
 project_summary: An extensible REST-based digital asset management server.
+project_name: ThingFish
 version_file: thingfish.rb
 additional_pkgfiles: 
 - etc/thingfish.conf.*
 - var/www/**/*.rhtml
 - var/www/static/*.{png,jpg,gif,css,js}
 dev_dependencies: 
+  sqlite3-ruby: ">= 1.2.4"
+  sequel: ">= 2.7.1"
+  ruby-mp3info: ">=0"
+  rmagick: ">=0"
+  exifr: ">=0"
+  lockfile: ">= 1.4.3"
+  json: ">=0"
   tidy: ">=0"
-  sqlite3-ruby: ">= 1.2.4"
-  ruby-mp3info: ">=0"
-  exifr: ">=0"
-  json: ">=0"
-  rmagick: ">=0"
-  sequel: ">= 2.7.1"
-  lockfile: ">= 1.4.3"
 authors: 
+  Michael Granger: ged@FaerieMUD.org
   Mahlon E. Smith: mahlon@martini.nu
-  Michael Granger: ged@FaerieMUD.org
 post_install_message: ""
-project_name: ThingFish
-rubyforge_project: thingfish