rcss 0.3.0 → 0.3.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.
- data/CHANGES +3 -0
- data/README +9 -0
- data/Rakefile +155 -40
- data/lib/rcss.rb +1 -1
- metadata +40 -43
data/CHANGES
CHANGED
data/README
CHANGED
@@ -144,10 +144,19 @@ Example
|
|
144
144
|
|
145
145
|
== Installation
|
146
146
|
|
147
|
+
=== Using RubyGems
|
148
|
+
|
147
149
|
Download and install Rcss with the following command:
|
148
150
|
|
149
151
|
gem install --remote rcss
|
150
152
|
|
153
|
+
=== Manual
|
154
|
+
|
155
|
+
Download the gem file from "project page":http://rubyforge.org/projects/rcss/
|
156
|
+
and install it with following command
|
157
|
+
|
158
|
+
gem install rcss-0.3.0.gem
|
159
|
+
|
151
160
|
== Usage
|
152
161
|
|
153
162
|
=== Command line
|
data/Rakefile
CHANGED
@@ -1,12 +1,19 @@
|
|
1
|
-
require '
|
2
|
-
|
1
|
+
require 'rubygems'
|
2
|
+
|
3
|
+
Gem::manage_gems
|
4
|
+
|
3
5
|
require 'rake/rdoctask'
|
6
|
+
require 'rake/packagetask'
|
7
|
+
require 'rake/gempackagetask'
|
8
|
+
require 'rake/contrib/rubyforgepublisher'
|
9
|
+
|
4
10
|
require File.dirname(__FILE__) + '/lib/rcss'
|
5
11
|
|
6
|
-
|
7
|
-
|
12
|
+
PKG_NAME = "rcss"
|
13
|
+
PKG_VERSION = Rcss::VERSION
|
14
|
+
PKG_FILE_NAME = "#{PKG_NAME}-#{PKG_VERSION}"
|
8
15
|
RUBY_FORGE_PROJECT = "rcss"
|
9
|
-
RUBY_FORGE_USER
|
16
|
+
RUBY_FORGE_USER = "bragi"
|
10
17
|
PKG_FILES = FileList[
|
11
18
|
'README',
|
12
19
|
'CHANGES',
|
@@ -23,49 +30,33 @@ task :default => [:test, :gem, :rdoc]
|
|
23
30
|
|
24
31
|
task :gem => :test
|
25
32
|
|
26
|
-
rd = Rake::RDocTask.new("rdoc")
|
33
|
+
rd = Rake::RDocTask.new("rdoc") do |rdoc|
|
27
34
|
rdoc.rdoc_dir = 'html'
|
28
35
|
rdoc.title = "Rcss - CSS Server-side Constants for Ruby/Rails"
|
29
|
-
rdoc.options
|
36
|
+
rdoc.options << '--line-numbers' << '--inline-source' << '--main' << 'README'
|
30
37
|
rdoc.rdoc_files.include('README', 'MIT-LICENSE', 'TODO', 'CHANGES')
|
31
38
|
rdoc.rdoc_files.include('lib/**/*.rb')
|
32
|
-
|
39
|
+
end
|
33
40
|
|
34
41
|
spec = Gem::Specification.new do |s|
|
35
|
-
|
36
|
-
|
37
|
-
s.
|
38
|
-
s.
|
39
|
-
s.
|
40
|
-
s.
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
* Familiar ERB syntax
|
46
|
-
|
47
|
-
* Extend your classes with multiple attributes with ease
|
48
|
-
TXT
|
49
|
-
s.files = PKG_FILES.to_a
|
50
|
-
s.executables << 'rcss'
|
51
|
-
|
52
|
-
## Load-time details
|
53
|
-
s.autorequire = 'rcss'
|
54
|
-
## Author and project details
|
55
|
-
s.author = "Bragi Ragnarson"
|
56
|
-
s.email = "bragi.ragnarson@gmail.com"
|
42
|
+
s.name = PKG_NAME
|
43
|
+
s.version = PKG_VERSION
|
44
|
+
s.platform = Gem::Platform::RUBY
|
45
|
+
s.summary = "Rcss - CSS Server-side Constants for Ruby/Rails"
|
46
|
+
s.files = PKG_FILES.to_a
|
47
|
+
s.executables << 'rcss'
|
48
|
+
s.require_path = 'lib'
|
49
|
+
s.autorequire = 'rcss'
|
50
|
+
s.author = "Bragi Ragnarson"
|
51
|
+
s.email = "bragi.ragnarson@gmail.com"
|
57
52
|
s.rubyforge_project = RUBY_FORGE_PROJECT
|
58
|
-
s.homepage
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
s.has_rdoc = true
|
63
|
-
# s.extra_rdoc_files = rd.rdoc_files.reject { |fn| fn =~ /\.rb$/ }.to_a
|
64
|
-
s.rdoc_options <<
|
53
|
+
s.homepage = "http://rcss.rubyforge.org"
|
54
|
+
s.has_rdoc = true
|
55
|
+
s.rdoc_options <<
|
65
56
|
'--title' << 'Rcss - CSS Server-side Constants for Ruby/Rails' <<
|
66
57
|
'--main' << 'README' <<
|
67
58
|
'--line-numbers'
|
68
|
-
s.extra_rdoc_files
|
59
|
+
s.extra_rdoc_files = rd.rdoc_files.reject { |fn| fn =~ /\.rb$/ }.to_a
|
69
60
|
|
70
61
|
end
|
71
62
|
|
@@ -92,6 +83,130 @@ task :test do |t|
|
|
92
83
|
end
|
93
84
|
|
94
85
|
Rake::GemPackageTask.new(spec) do |pkg|
|
95
|
-
pkg.need_zip
|
96
|
-
pkg.
|
86
|
+
pkg.need_zip = true
|
87
|
+
pkg.need_tar_gz = true
|
88
|
+
pkg.need_tar_bz2 = true
|
89
|
+
end
|
90
|
+
|
91
|
+
desc "Publish the API documentation"
|
92
|
+
task :pdoc => [:rdoc] do
|
93
|
+
Rake::RubyForgePublisher.new(RUBY_FORGE_PROJECT, RUBY_FORGE_USER).upload
|
97
94
|
end
|
95
|
+
|
96
|
+
desc 'Publish the gem and API docs'
|
97
|
+
task :publish => [:pdoc, :rubyforge_upload]
|
98
|
+
|
99
|
+
desc "Publish the release files to RubyForge."
|
100
|
+
task :rubyforge_upload => :package do
|
101
|
+
files = %w(gem tgz).map { |ext| "pkg/#{PKG_FILE_NAME}.#{ext}" }
|
102
|
+
|
103
|
+
if RUBY_FORGE_PROJECT then
|
104
|
+
require 'net/http'
|
105
|
+
require 'open-uri'
|
106
|
+
|
107
|
+
project_uri = "http://rubyforge.org/projects/#{RUBY_FORGE_PROJECT}/"
|
108
|
+
project_data = open(project_uri) { |data| data.read }
|
109
|
+
group_id = project_data[/[?&]group_id=(\d+)/, 1]
|
110
|
+
raise "Couldn't get group id" unless group_id
|
111
|
+
|
112
|
+
# This echos password to shell which is a bit sucky
|
113
|
+
if ENV["RUBY_FORGE_PASSWORD"]
|
114
|
+
password = ENV["RUBY_FORGE_PASSWORD"]
|
115
|
+
else
|
116
|
+
print "#{RUBY_FORGE_USER}@rubyforge.org's password: "
|
117
|
+
password = STDIN.gets.chomp
|
118
|
+
end
|
119
|
+
|
120
|
+
login_response = Net::HTTP.start("rubyforge.org", 80) do |http|
|
121
|
+
data = [
|
122
|
+
"login=1",
|
123
|
+
"form_loginname=#{RUBY_FORGE_USER}",
|
124
|
+
"form_pw=#{password}"
|
125
|
+
].join("&")
|
126
|
+
http.post("/account/login.php", data)
|
127
|
+
end
|
128
|
+
|
129
|
+
cookie = login_response["set-cookie"]
|
130
|
+
raise "Login failed" unless cookie
|
131
|
+
headers = { "Cookie" => cookie }
|
132
|
+
|
133
|
+
release_uri = "http://rubyforge.org/frs/admin/?group_id=#{group_id}"
|
134
|
+
release_data = open(release_uri, headers) { |data| data.read }
|
135
|
+
package_id = release_data[/[?&]package_id=(\d+)/, 1]
|
136
|
+
raise "Couldn't get package id" unless package_id
|
137
|
+
|
138
|
+
first_file = true
|
139
|
+
release_id = ""
|
140
|
+
|
141
|
+
files.each do |filename|
|
142
|
+
basename = File.basename(filename)
|
143
|
+
file_ext = File.extname(filename)
|
144
|
+
file_data = File.open(filename, "rb") { |file| file.read }
|
145
|
+
|
146
|
+
puts "Releasing #{basename}..."
|
147
|
+
|
148
|
+
release_response = Net::HTTP.start("rubyforge.org", 80) do |http|
|
149
|
+
release_date = Time.now.strftime("%Y-%m-%d %H:%M")
|
150
|
+
type_map = {
|
151
|
+
".zip" => "3000",
|
152
|
+
".tgz" => "3110",
|
153
|
+
".gz" => "3110",
|
154
|
+
".gem" => "1400"
|
155
|
+
}; type_map.default = "9999"
|
156
|
+
type = type_map[file_ext]
|
157
|
+
boundary = "rubyqMY6QN9bp6e4kS21H4y0zxcvoor"
|
158
|
+
|
159
|
+
query_hash = if first_file then
|
160
|
+
{
|
161
|
+
"group_id" => group_id,
|
162
|
+
"package_id" => package_id,
|
163
|
+
"release_name" => PKG_FILE_NAME,
|
164
|
+
"release_date" => release_date,
|
165
|
+
"type_id" => type,
|
166
|
+
"processor_id" => "8000", # Any
|
167
|
+
"release_notes" => "",
|
168
|
+
"release_changes" => "",
|
169
|
+
"preformatted" => "1",
|
170
|
+
"submit" => "1"
|
171
|
+
}
|
172
|
+
else
|
173
|
+
{
|
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
|
+
release_id = release_response.body[/release_id=(\d+)/, 1]
|
206
|
+
raise("Couldn't get release id") unless release_id
|
207
|
+
end
|
208
|
+
|
209
|
+
first_file = false
|
210
|
+
end
|
211
|
+
end
|
212
|
+
end
|
data/lib/rcss.rb
CHANGED
metadata
CHANGED
@@ -1,69 +1,66 @@
|
|
1
|
-
!ruby/object:Gem::Specification
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
2
|
rubygems_version: 0.8.11
|
3
3
|
specification_version: 1
|
4
4
|
name: rcss
|
5
5
|
version: !ruby/object:Gem::Version
|
6
|
-
version: 0.3.
|
7
|
-
date: 2005-10-
|
8
|
-
summary: Rcss - CSS Server-side Constants for Ruby/Rails
|
6
|
+
version: 0.3.1
|
7
|
+
date: 2005-10-24 00:00:00 +02:00
|
8
|
+
summary: "Rcss - CSS Server-side Constants for Ruby/Rails"
|
9
9
|
require_paths:
|
10
|
-
- lib
|
10
|
+
- lib
|
11
11
|
email: bragi.ragnarson@gmail.com
|
12
12
|
homepage: http://rcss.rubyforge.org
|
13
13
|
rubyforge_project: rcss
|
14
|
-
description:
|
14
|
+
description:
|
15
15
|
autorequire: rcss
|
16
16
|
default_executable:
|
17
17
|
bindir: bin
|
18
18
|
has_rdoc: true
|
19
19
|
required_ruby_version: !ruby/object:Gem::Version::Requirement
|
20
20
|
requirements:
|
21
|
-
|
22
|
-
|
23
|
-
|
21
|
+
-
|
22
|
+
- ">"
|
23
|
+
- !ruby/object:Gem::Version
|
24
|
+
version: 0.0.0
|
24
25
|
version:
|
25
26
|
platform: ruby
|
26
27
|
signing_key:
|
27
28
|
cert_chain:
|
28
29
|
authors:
|
29
|
-
- Bragi Ragnarson
|
30
|
+
- Bragi Ragnarson
|
30
31
|
files:
|
31
|
-
- README
|
32
|
-
- CHANGES
|
33
|
-
- TODO
|
34
|
-
- MIT-LICENSE
|
35
|
-
- Rakefile
|
36
|
-
- lib/rcss.rb
|
37
|
-
- bin/rcss
|
38
|
-
- test/data
|
39
|
-
- test/data/ssc-simple.in.rcss
|
40
|
-
- test/data/ssc-complex.in.rcss
|
41
|
-
- test/data/ssc-simple.out.css
|
42
|
-
- test/data/ssc-complex.out.css
|
43
|
-
- test/data/erb.in.rcss
|
44
|
-
- test/data/erb.out.css
|
45
|
-
- test/data/extend.in.rcss
|
46
|
-
- test/data/extend.out.css
|
47
|
-
- test/data/simple.in.rcss
|
48
|
-
- test/data/simple.out.css
|
32
|
+
- README
|
33
|
+
- CHANGES
|
34
|
+
- TODO
|
35
|
+
- MIT-LICENSE
|
36
|
+
- Rakefile
|
37
|
+
- lib/rcss.rb
|
38
|
+
- bin/rcss
|
39
|
+
- test/data
|
40
|
+
- test/data/ssc-simple.in.rcss
|
41
|
+
- test/data/ssc-complex.in.rcss
|
42
|
+
- test/data/ssc-simple.out.css
|
43
|
+
- test/data/ssc-complex.out.css
|
44
|
+
- test/data/erb.in.rcss
|
45
|
+
- test/data/erb.out.css
|
46
|
+
- test/data/extend.in.rcss
|
47
|
+
- test/data/extend.out.css
|
48
|
+
- test/data/simple.in.rcss
|
49
|
+
- test/data/simple.out.css
|
49
50
|
test_files: []
|
50
|
-
|
51
51
|
rdoc_options:
|
52
|
-
- --title
|
53
|
-
- Rcss - CSS Server-side Constants for Ruby/Rails
|
54
|
-
- --main
|
55
|
-
- README
|
56
|
-
- --line-numbers
|
52
|
+
- "--title"
|
53
|
+
- "Rcss - CSS Server-side Constants for Ruby/Rails"
|
54
|
+
- "--main"
|
55
|
+
- README
|
56
|
+
- "--line-numbers"
|
57
57
|
extra_rdoc_files:
|
58
|
-
- README
|
59
|
-
- MIT-LICENSE
|
60
|
-
- TODO
|
61
|
-
- CHANGES
|
58
|
+
- README
|
59
|
+
- MIT-LICENSE
|
60
|
+
- TODO
|
61
|
+
- CHANGES
|
62
62
|
executables:
|
63
|
-
- rcss
|
63
|
+
- rcss
|
64
64
|
extensions: []
|
65
|
-
|
66
65
|
requirements: []
|
67
|
-
|
68
|
-
dependencies: []
|
69
|
-
|
66
|
+
dependencies: []
|