rbarcode 0.0.1 → 0.0.2

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.
Files changed (3) hide show
  1. data/Rakefile +19 -112
  2. data/lib/rbarcode/base.rb +1 -1
  3. metadata +1 -1
data/Rakefile CHANGED
@@ -4,7 +4,7 @@ require 'rake'
4
4
  require 'rake/testtask'
5
5
  require 'rake/rdoctask'
6
6
  require 'rake/gempackagetask'
7
- require 'rake/contrib/rubyforgepublisher'
7
+ require 'rubyforge'
8
8
  require File.dirname(__FILE__) + '/lib/rbarcode'
9
9
 
10
10
  PKG_VERSION = RBarcode::VERSION
@@ -92,123 +92,30 @@ task :upload => [:package] do
92
92
  files = ["gem", "tgz", "zip"].map { |ext| "pkg/#{PKG_FILE_NAME}.#{ext}" }
93
93
 
94
94
  if RUBY_FORGE_PROJECT then
95
- require 'net/http'
96
- require 'open-uri'
97
-
98
- project_uri = "http://rubyforge.org/projects/#{RUBY_FORGE_PROJECT}/"
99
- project_data = open(project_uri) { |data| data.read }
100
- group_id = project_data[/[?&]group_id=(\d+)/, 1]
101
- raise "Couldn't get group id" unless group_id
102
-
103
- # This echos password to shell which is a bit sucky
104
- if ENV["RUBY_FORGE_PASSWORD"]
105
- password = ENV["RUBY_FORGE_PASSWORD"]
106
- else
107
- password = Proc.new do
108
- sync = STDOUT.sync
109
- begin
110
- echo false
111
- STDOUT.sync = true
112
- print "#{RUBY_FORGE_USER}@rubyforge.org's password: "
113
- STDIN.gets.chomp
114
- ensure
115
- echo true
116
- STDOUT.sync = sync
117
- puts
118
- end
119
- end.call
95
+ rubyforge = RubyForge.new
96
+ group_id, package_id, release_name = [RUBY_FORGE_PROJECT, PKG_NAME, RELEASE_NAME]
97
+ rubyforge.scrape_config
98
+
99
+ ac = rubyforge.autoconfig
100
+ if ! ac["package_ids"].include?(PKG_NAME)
101
+ rubyforge.create_package(RUBY_FORGE_PROJECT, PKG_NAME)
102
+ puts "Updating package_id for #{RUBY_FORGE_PROJECT}"
103
+ rubyforge.scrape_project(RUBY_FORGE_PROJECT)
120
104
  end
121
105
 
122
- login_response = Net::HTTP.start("rubyforge.org", 80) do |http|
123
- data = [
124
- "login=1",
125
- "form_loginname=#{RUBY_FORGE_USER}",
126
- "form_pw=#{password}"
127
- ].join("&")
128
- http.post("/account/login.php", data)
129
- end
130
-
131
- cookie = login_response["set-cookie"]
132
- raise "Login failed" unless cookie
133
- headers = { "Cookie" => cookie }
134
-
135
- release_uri = "http://rubyforge.org/frs/admin/?group_id=#{group_id}"
136
- release_data = open(release_uri, headers) { |data| data.read }
137
- package_id = release_data[/[?&]package_id=(\d+)/, 1]
138
- raise "Couldn't get package id" unless package_id
139
-
140
106
  first_file = true
141
- release_id = ""
142
-
143
107
  files.each do |filename|
144
- puts "FILENAME: #{filename}"
145
- basename = File.basename(filename)
146
- file_ext = File.extname(filename)
147
- file_data = File.open(filename, "rb") { |file| file.read }
148
-
149
- puts "Releasing #{basename}..."
150
-
151
- release_response = Net::HTTP.start("rubyforge.org", 80) do |http|
152
- release_date = Time.now.strftime("%Y-%m-%d %H:%M")
153
- type_map = {
154
- ".zip" => "3000",
155
- ".tgz" => "3110",
156
- ".gz" => "3110",
157
- ".gem" => "1400"
158
- }; type_map.default = "9999"
159
- type = type_map[file_ext]
160
- boundary = "rubyqMY6QN9bp6e4kS21H4y0zxcvoor"
161
-
162
- query_hash = if first_file then {
163
- "group_id" => group_id,
164
- "package_id" => package_id,
165
- "release_name" => RELEASE_NAME,
166
- "release_date" => release_date,
167
- "type_id" => type,
168
- "processor_id" => "8000", # Any
169
- "release_notes" => "",
170
- "release_changes" => "",
171
- "preformatted" => "1",
172
- "submit" => "1"
173
- } else {
174
- "group_id" => group_id,
175
- "release_id" => release_id,
176
- "package_id" => package_id,
177
- "step2" => "1",
178
- "type_id" => type,
179
- "processor_id" => "8000", # Any
180
- "submit" => "Add This File"
181
- }
182
- end
183
-
184
- query = "?" + query_hash.map do |(name, value)|
185
- [name, URI.encode(value)].join("=")
186
- end.join("&")
187
-
188
- data = [
189
- "--" + boundary,
190
- "Content-Disposition: form-data; name=\"userfile\"; filename=\"#{basename}\"",
191
- "Content-Type: application/octet-stream",
192
- "Content-Transfer-Encoding: binary",
193
- "", file_data, ""
194
- ].join("\x0D\x0A")
195
-
196
- release_headers = headers.merge(
197
- "Content-Type" => "multipart/form-data; boundary=#{boundary}"
198
- )
199
-
200
- target = first_file ? "/frs/admin/qrs.php" : "/frs/admin/editrelease.php"
201
- http.post(target + query, data, release_headers)
202
- end
203
-
204
- if first_file then
205
- #puts release_response.body
206
- release_id = release_response.body[/release_id=(\d+)/, 1]
207
- raise("Couldn't get release id") unless release_id
108
+ group_id = Integer(group_id) rescue group_id
109
+ package_id = Integer(package_id) rescue package_id
110
+
111
+ if first_file
112
+ rubyforge.add_release group_id, package_id, release_name, filename
113
+ first_file = false
114
+ else
115
+ rubyforge.add_file group_id, package_id, release_name, filename
208
116
  end
209
-
210
- first_file = false
211
117
  end
118
+
212
119
  end
213
120
  end
214
121
 
@@ -4,7 +4,7 @@
4
4
 
5
5
  module RBarcode
6
6
 
7
- VERSION = "0.0.1"
7
+ VERSION = "0.0.2"
8
8
 
9
9
  class RBarcodeError < StandardError; end
10
10
  class RBarcodeRequiredFieldError < StandardError; end
metadata CHANGED
@@ -3,7 +3,7 @@ rubygems_version: 0.9.4
3
3
  specification_version: 1
4
4
  name: rbarcode
5
5
  version: !ruby/object:Gem::Version
6
- version: 0.0.1
6
+ version: 0.0.2
7
7
  date: 2007-10-05 00:00:00 -05:00
8
8
  summary: A module for code39 and USPS barcode generation.
9
9
  require_paths: