scharfie-bones 0.2.5 → 0.2.6

Sign up to get free protection for your applications and to get access to all the features.
data/bin/bones CHANGED
@@ -1,5 +1,6 @@
1
1
  #!/usr/bin/env ruby
2
- require File.expand_path(File.join(File.dirname(__FILE__), '../lib/bones/boot.rb'))
2
+
3
+ require File.expand_path(File.join(File.dirname(__FILE__), '../lib/bones.rb'))
3
4
  require File.expand_path(File.join(File.dirname(__FILE__), '../lib/bones/initializer.rb'))
4
5
  path = ARGV.shift
5
6
 
@@ -12,4 +13,4 @@ end
12
13
  path = File.expand_path(path)
13
14
  FileUtils.mkdir(path) unless File.directory?(path)
14
15
 
15
- Bones::Initializer.run(path)
16
+ Bones::Initializer.run(path)
data/lib/bones/bones.rb CHANGED
@@ -37,6 +37,27 @@ class Bones
37
37
  def booted?
38
38
  @booted
39
39
  end
40
+
41
+ def directories(base)
42
+ Dir.chdir(base) do
43
+ Dir.entries(base).map do |e|
44
+ next if e =~ /^\.+$/
45
+ File.directory?(base / e) ? '/' + e : nil
46
+ end.compact
47
+ end
48
+ end
49
+
50
+ def page_directories
51
+ directories(Bones.root / 'pages')
52
+ end
53
+
54
+ def versioned_directories
55
+ Bones::VersionedRelease.directories
56
+ end
57
+
58
+ def public_directories
59
+ directories(Bones.root / 'public') - page_directories - versioned_directories
60
+ end
40
61
  end
41
62
 
42
63
  # Resets root, pages, and layouts paths and the base setting
@@ -70,4 +91,4 @@ class Bones
70
91
  end.compact
71
92
  end
72
93
  end
73
- end
94
+ end
data/lib/bones/cache.rb CHANGED
@@ -162,7 +162,7 @@ class Bones
162
162
  # # => /some_folder/page_path.html
163
163
  def normalize_url(path)
164
164
  @known_pairs ||= {}
165
- @public_directories_regex ||= Regexp.new(public_directories.join('|'))
165
+ @public_directories_regex ||= Regexp.new(Bones.public_directories.join('|'))
166
166
 
167
167
  if v = @known_pairs[path]
168
168
  return v
@@ -192,4 +192,4 @@ end
192
192
 
193
193
  if __FILE__ == $0
194
194
  Bones::Cache.run(ARGV)
195
- end
195
+ end
@@ -6,6 +6,13 @@ class String
6
6
  end
7
7
  end
8
8
 
9
+
10
+ class Object
11
+ def self.remove
12
+
13
+ end
14
+ end
15
+
9
16
  # Loads filename, removing the associated
10
17
  # class if defined
11
18
  #
@@ -20,7 +27,16 @@ end
20
27
  # and then load the application.rb file
21
28
  def force_load(map={})
22
29
  map.each do |klass, filename|
23
- Class.remove_class(klass) if Object.const_defined?(klass)
30
+ if defined?(klass.name)
31
+ basename = klass.to_s.split("::").last
32
+ parent = klass.parent
33
+
34
+ # Skip this class if it does not match the current one bound to this name
35
+ next unless parent.const_defined?(basename) && klass = parent.const_get(basename)
36
+
37
+ parent.instance_eval { remove_const basename } unless parent == klass
38
+ end
39
+
24
40
  load filename
25
41
  end
26
- end
42
+ end
data/lib/bones/release.rb CHANGED
@@ -20,9 +20,9 @@ class Bones
20
20
 
21
21
  # Copies all public directories to the new release directory
22
22
  def copy_public_directories
23
- public_directories.each do |src|
23
+ Bones.public_directories.each do |src|
24
24
  FileUtils.copy_entry Bones.root / 'public' / src, destination / src
25
25
  end
26
26
  end
27
27
  end
28
- end
28
+ end
data/lib/bones/server.rb CHANGED
@@ -1,7 +1,7 @@
1
1
  class Bones
2
2
  class Server
3
3
  def self.run
4
- statics = public_directories
4
+ statics = Bones.public_directories
5
5
  app = Rack::Builder.new do
6
6
  use Rack::CommonLogger
7
7
  use Rack::ShowExceptions
@@ -21,4 +21,4 @@ class Bones
21
21
  end
22
22
  end
23
23
 
24
- Bones::Server.run if __FILE__ == $0
24
+ Bones::Server.run if __FILE__ == $0
data/lib/bones/static.rb CHANGED
@@ -1,8 +1,8 @@
1
1
  class Bones
2
2
  class Static < Rack::Static
3
3
  def initialize(app, *args, &block)
4
- super app, :urls => public_directories,
4
+ super app, :urls => Bones.public_directories,
5
5
  :root => Bones.root / 'public', &block
6
6
  end
7
7
  end
8
- end
8
+ end
data/lib/bones.rb CHANGED
@@ -1 +1,23 @@
1
- require File.join(File.dirname(__FILE__), "bones/bones.rb")
1
+ require 'rubygems'
2
+
3
+ gem 'activesupport', '>= 2.3.10'
4
+ gem 'rack', '>= 0.3.0'
5
+
6
+ require 'rack'
7
+ require 'active_support'
8
+ require 'active_support/dependencies'
9
+ require 'active_support/core_ext'
10
+ require 'pathname'
11
+ require 'yaml'
12
+ require 'fileutils'
13
+ require 'optparse'
14
+ require 'ostruct'
15
+ require 'erb'
16
+
17
+ require Pathname.new(__FILE__).dirname.join('bones/bones.rb')
18
+ require Pathname.new(__FILE__).dirname.join('bones/extensions.rb')
19
+
20
+ ActiveSupport::Dependencies.autoload_paths.push Bones.system_path
21
+ $:.push Bones.system_path
22
+
23
+ Bones.booted = true
data/lib/tasks/bones.rb CHANGED
@@ -1,4 +1,4 @@
1
- require File.join(File.dirname(__FILE__), '../bones/boot.rb')
1
+ require File.join(File.dirname(__FILE__), '../bones.rb')
2
2
 
3
3
  task :default => :server
4
4
 
@@ -22,13 +22,13 @@ namespace :cache do
22
22
  end
23
23
 
24
24
  def generate_options_from_environment(extra={})
25
- returning Bones::Cache::Options.new do |options|
26
- destination = destination_from_environment
27
- options.base = ENV['BASE'] unless ENV['BASE'].blank?
28
- options.destination = destination unless destination.blank?
29
- options.noop = true if ENV['NOOP']
30
- options.merge extra
31
- end
25
+ options = Bones::Cache::Options.new
26
+ destination = destination_from_environment
27
+ options.base = ENV['BASE'] unless ENV['BASE'].blank?
28
+ options.destination = destination unless destination.blank?
29
+ options.noop = true if ENV['NOOP']
30
+ options.merge extra
31
+ options
32
32
  end
33
33
 
34
34
  task :simple do
@@ -48,4 +48,4 @@ task :clean do
48
48
  # ARGV.shift
49
49
  # ARGV.unshift '--clean'
50
50
  # load File.join(File.dirname(__FILE__), 'cache.rb')
51
- end
51
+ end
data/pushables/Rakefile CHANGED
@@ -1,3 +1,3 @@
1
1
  require File.join(File.dirname(__FILE__), 'boot.rb')
2
2
  require 'rake'
3
- require 'tasks/bones'
3
+ require 'tasks/bones'
data/pushables/boot.rb CHANGED
@@ -1,11 +1,10 @@
1
- bones_boot = File.join(File.dirname(__FILE__), 'vendor/bones/lib/bones/boot.rb')
1
+ vendor_bones = File.join(File.dirname(__FILE__), 'vendor/bones/lib/bones.rb')
2
2
 
3
- if File.file?(bones_boot)
4
- require bones_boot
3
+ if File.file?(vendor_bones)
4
+ require vendor_bones
5
5
  else
6
6
  require 'rubygems'
7
7
  require 'bones'
8
- require 'bones/boot'
9
8
  end
10
9
 
11
- Bones.root = File.expand_path(File.dirname(__FILE__))
10
+ Bones.root = File.expand_path(File.dirname(__FILE__))
@@ -1,7 +1,7 @@
1
1
  Gem::Specification.new do |s|
2
2
  s.name = "scharfie-bones"
3
- s.version = "0.2.5"
4
- s.date = "2009-10-27"
3
+ s.version = "0.2.6"
4
+ s.date = "2011-02-15"
5
5
  s.authors = ["Chris Scharf", "Ryan Heath"]
6
6
  s.email = "scharfie@gmail.com"
7
7
 
@@ -29,7 +29,6 @@ Gem::Specification.new do |s|
29
29
  'lib/bones/template.rb',
30
30
  'lib/bones/versioned_release.rb',
31
31
  'lib/bones/bones.rb',
32
- 'lib/bones/boot.rb',
33
32
  'lib/bones/extensions.rb',
34
33
  'lib/bones.rb',
35
34
  'lib/helpers',
@@ -77,7 +76,15 @@ Gem::Specification.new do |s|
77
76
  'pushables/Rakefile'
78
77
  ]
79
78
 
79
+ s.test_files = [
80
+ 'test/test_bones.rb',
81
+ 'test/test_cache.rb',
82
+ 'test/test_template.rb',
83
+ 'test/test_example_site.rb',
84
+ 'test/test_helper.rb'
85
+ ]
86
+
80
87
  # Dependencies
81
88
  s.add_dependency("rack", [">= 0.3.0"])
82
- s.add_dependency("activesupport", [">= 2.1.0"])
83
- end
89
+ s.add_dependency("activesupport", [">= 2.3.10"])
90
+ end
data/test/test_helper.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  $:.unshift(File.dirname(__FILE__) + '/../')
2
- require 'lib/bones/boot'
2
+ require 'lib/bones'
3
3
  require 'test/unit'
4
4
 
5
5
  class String
@@ -65,4 +65,4 @@ class Test::Unit::TestCase
65
65
  end
66
66
 
67
67
  class TestRequest < OpenStruct
68
- end
68
+ end
metadata CHANGED
@@ -1,7 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: scharfie-bones
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.5
4
+ hash: 27
5
+ prerelease: false
6
+ segments:
7
+ - 0
8
+ - 2
9
+ - 6
10
+ version: 0.2.6
5
11
  platform: ruby
6
12
  authors:
7
13
  - Chris Scharf
@@ -10,29 +16,41 @@ autorequire:
10
16
  bindir: bin
11
17
  cert_chain: []
12
18
 
13
- date: 2009-10-27 00:00:00 -04:00
19
+ date: 2011-02-15 00:00:00 -05:00
14
20
  default_executable: bones
15
21
  dependencies:
16
22
  - !ruby/object:Gem::Dependency
17
23
  name: rack
18
- type: :runtime
19
- version_requirement:
20
- version_requirements: !ruby/object:Gem::Requirement
24
+ prerelease: false
25
+ requirement: &id001 !ruby/object:Gem::Requirement
26
+ none: false
21
27
  requirements:
22
28
  - - ">="
23
29
  - !ruby/object:Gem::Version
30
+ hash: 19
31
+ segments:
32
+ - 0
33
+ - 3
34
+ - 0
24
35
  version: 0.3.0
25
- version:
36
+ type: :runtime
37
+ version_requirements: *id001
26
38
  - !ruby/object:Gem::Dependency
27
39
  name: activesupport
28
- type: :runtime
29
- version_requirement:
30
- version_requirements: !ruby/object:Gem::Requirement
40
+ prerelease: false
41
+ requirement: &id002 !ruby/object:Gem::Requirement
42
+ none: false
31
43
  requirements:
32
44
  - - ">="
33
45
  - !ruby/object:Gem::Version
34
- version: 2.1.0
35
- version:
46
+ hash: 23
47
+ segments:
48
+ - 2
49
+ - 3
50
+ - 10
51
+ version: 2.3.10
52
+ type: :runtime
53
+ version_requirements: *id002
36
54
  description: Simple HTML mockup framework for designers using ERB
37
55
  email: scharfie@gmail.com
38
56
  executables:
@@ -53,7 +71,6 @@ files:
53
71
  - lib/bones/template.rb
54
72
  - lib/bones/versioned_release.rb
55
73
  - lib/bones/bones.rb
56
- - lib/bones/boot.rb
57
74
  - lib/bones/extensions.rb
58
75
  - lib/bones.rb
59
76
  - lib/helpers/application_helper.rb
@@ -92,23 +109,33 @@ rdoc_options: []
92
109
  require_paths:
93
110
  - lib
94
111
  required_ruby_version: !ruby/object:Gem::Requirement
112
+ none: false
95
113
  requirements:
96
114
  - - ">="
97
115
  - !ruby/object:Gem::Version
116
+ hash: 3
117
+ segments:
118
+ - 0
98
119
  version: "0"
99
- version:
100
120
  required_rubygems_version: !ruby/object:Gem::Requirement
121
+ none: false
101
122
  requirements:
102
123
  - - ">="
103
124
  - !ruby/object:Gem::Version
125
+ hash: 3
126
+ segments:
127
+ - 0
104
128
  version: "0"
105
- version:
106
129
  requirements: []
107
130
 
108
131
  rubyforge_project:
109
- rubygems_version: 1.3.5
132
+ rubygems_version: 1.3.7
110
133
  signing_key:
111
134
  specification_version: 3
112
135
  summary: Simple HTML mockup framework for designers using ERB
113
- test_files: []
114
-
136
+ test_files:
137
+ - test/test_bones.rb
138
+ - test/test_cache.rb
139
+ - test/test_template.rb
140
+ - test/test_example_site.rb
141
+ - test/test_helper.rb
data/lib/bones/boot.rb DELETED
@@ -1,38 +0,0 @@
1
- require 'rubygems'
2
- require 'activesupport'
3
- require 'rack'
4
- require 'pathname'
5
- require Pathname.new(__FILE__).dirname.join('bones.rb')
6
- require Pathname.new(__FILE__).dirname.join('extensions.rb')
7
-
8
- ActiveSupport::Dependencies.load_paths.push Bones.system_path
9
- $:.push Bones.system_path
10
-
11
- require 'yaml'
12
- require 'fileutils'
13
- require 'optparse'
14
- require 'ostruct'
15
- require 'erb'
16
-
17
- Bones.booted = true
18
-
19
- def directories(base)
20
- Dir.chdir(base) do
21
- Dir.entries(base).map do |e|
22
- next if e =~ /^\.+$/
23
- File.directory?(base / e) ? '/' + e : nil
24
- end.compact
25
- end
26
- end
27
-
28
- def page_directories
29
- directories(Bones.root / 'pages')
30
- end
31
-
32
- def versioned_directories
33
- Bones::VersionedRelease.directories
34
- end
35
-
36
- def public_directories
37
- directories(Bones.root / 'public') - page_directories - versioned_directories
38
- end