mack 0.7.0.1 → 0.7.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/CHANGELOG +34 -0
- data/README +6 -13
- data/bin/env_handler.rb +10 -0
- data/bin/gem_load_path.rb +25 -0
- data/bin/mack +1 -0
- data/bin/mackery +22 -0
- data/bin/mackery-console +16 -0
- data/bin/mackery-server +41 -0
- data/lib/mack.rb +7 -1
- data/lib/mack/controller/controller.rb +5 -4
- data/lib/mack/controller/request.rb +19 -1
- data/lib/mack/errors/errors.rb +8 -8
- data/lib/mack/generators/controller_generator/controller_generator.rb +1 -1
- data/lib/mack/generators/mack_application_generator/templates/app/views/layouts/application.html.erb.template +1 -2
- data/lib/mack/generators/mack_application_generator/templates/config/app_config/default.yml.template +2 -0
- data/lib/mack/generators/mack_application_generator/templates/config/database.yml.template +6 -6
- data/lib/mack/generators/passenger_generator/passenger_generator.rb +2 -0
- data/lib/mack/generators/passenger_generator/templates/config.ru.template +5 -0
- data/lib/mack/generators/passenger_generator/templates/tmp/README.template +2 -0
- data/lib/mack/initialization/application.rb +39 -36
- data/lib/mack/initialization/boot_loader.rb +174 -0
- data/lib/mack/initialization/configuration.rb +83 -95
- data/lib/mack/initialization/console.rb +11 -0
- data/lib/mack/initialization/environment.rb +16 -0
- data/lib/mack/initialization/helpers.rb +26 -24
- data/lib/mack/initialization/logging.rb +81 -81
- data/lib/mack/initialization/plugins.rb +14 -11
- data/lib/mack/initialization/server/simple_server.rb +3 -3
- data/lib/mack/rendering/type/base.rb +1 -1
- data/lib/mack/rendering/type/layout.rb +1 -1
- data/lib/mack/rendering/type/partial.rb +1 -1
- data/lib/mack/rendering/type/public.rb +1 -1
- data/lib/mack/rendering/type/template.rb +1 -1
- data/lib/mack/runner.rb +2 -2
- data/lib/mack/runner_helpers/session.rb +3 -3
- data/lib/mack/sessions/cookie_session_store.rb +44 -0
- data/lib/mack/{controller → sessions}/session.rb +0 -0
- data/lib/mack/sessions/session_store_base.rb +62 -0
- data/lib/mack/sessions/test_session_store.rb +38 -0
- data/lib/mack/tasks/mack_server_tasks.rake +8 -21
- data/lib/mack/tasks/mack_tasks.rake +33 -6
- data/lib/mack/tasks/rake_rules.rake +8 -0
- data/lib/mack/tasks/test_tasks.rake +39 -15
- data/lib/mack/testing/helpers.rb +6 -39
- data/lib/mack/utils/content_length_handler.rb +45 -0
- data/lib/mack/utils/forgery_detector.rb +152 -0
- data/lib/mack/utils/gem_manager.rb +22 -1
- data/lib/mack/utils/paths.rb +154 -0
- data/lib/mack/utils/server.rb +8 -6
- data/lib/mack/version.rb +1 -1
- data/lib/mack/view_helpers/asset_helpers.rb +50 -0
- data/lib/mack/view_helpers/form_helpers.rb +52 -6
- data/lib/mack/view_helpers/link_helpers.rb +6 -3
- data/lib/mack_app.rb +12 -14
- data/lib/mack_core.rb +35 -14
- data/lib/mack_tasks.rb +35 -20
- metadata +23 -27
- data/lib/mack/tasks/cachetastic_tasks.rake +0 -58
data/lib/mack_core.rb
CHANGED
@@ -2,6 +2,7 @@ require 'rubygems'
|
|
2
2
|
require 'rack'
|
3
3
|
require 'digest'
|
4
4
|
require 'mack-facets'
|
5
|
+
require 'mack-encryption'
|
5
6
|
require 'application_configuration'
|
6
7
|
require 'cachetastic'
|
7
8
|
require 'fileutils'
|
@@ -18,31 +19,51 @@ require 'genosaurus'
|
|
18
19
|
require 'net/http'
|
19
20
|
require 'pp'
|
20
21
|
require 'test/unit'
|
22
|
+
begin
|
23
|
+
# just in case people don't have it installed.
|
24
|
+
require 'ruby-debug'
|
25
|
+
rescue Exception => e
|
26
|
+
end
|
21
27
|
|
22
28
|
fl = File.join(File.dirname(__FILE__), "mack")
|
23
|
-
require File.join(fl, "
|
29
|
+
require File.join(fl, "initialization", "boot_loader.rb")
|
30
|
+
require File.join(fl, "initialization", "environment.rb")
|
24
31
|
require File.join(fl, "initialization", "configuration.rb")
|
32
|
+
require File.join(fl, "initialization", "logging.rb")
|
25
33
|
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
require File.join(fl, "initialization", "logging.rb")
|
30
|
-
|
34
|
+
boot_load(:version) do
|
35
|
+
require File.join(File.dirname(__FILE__), "mack", "version")
|
36
|
+
end
|
31
37
|
|
38
|
+
boot_load(:paths) do
|
39
|
+
require File.join(File.dirname(__FILE__), "mack", "utils", "paths")
|
40
|
+
end
|
41
|
+
|
42
|
+
boot_load(:gems) do
|
43
|
+
Mack.logger.debug "Initializing custom gems..." unless app_config.log.disable_initialization_logging
|
44
|
+
load Mack::Paths.initializers("gems.rb")
|
45
|
+
Mack::Utils::GemManager.instance.do_requires
|
46
|
+
end
|
47
|
+
|
48
|
+
boot_load(:core_classes) do
|
32
49
|
Mack.logger.debug "Initializing core classes..." unless app_config.log.disable_initialization_logging
|
33
50
|
# Require all the necessary files to make Mack actually work!
|
34
|
-
lib_dirs = ["errors", "core_extensions", "utils", "runner_helpers", "routing", "view_helpers", "rendering", "controller", "tasks", "initialization/server", "generators", "distributed"]
|
51
|
+
lib_dirs = ["errors", "core_extensions", "utils", "sessions", "runner_helpers", "routing", "view_helpers", "rendering", "controller", "tasks", "initialization/server", "generators", "distributed"]
|
35
52
|
lib_dirs << "testing"# if Mack.env == "test"
|
36
53
|
lib_dirs.each do |dir|
|
37
|
-
dir_globs = Dir.glob(File.join(
|
54
|
+
dir_globs = Dir.glob(File.join(File.dirname(__FILE__), "mack", dir, "**/*.rb"))
|
38
55
|
dir_globs.each do |d|
|
39
|
-
require d
|
56
|
+
require d unless d.match(/console/)
|
40
57
|
end
|
41
58
|
end
|
42
|
-
|
43
|
-
require File.join(fl, "runner")
|
44
|
-
|
45
|
-
Mack::Configuration.initialized_core = true if Mack::Configuration.initialized_core.nil?
|
59
|
+
end
|
46
60
|
|
61
|
+
boot_load(:runner) do
|
62
|
+
require File.join(File.dirname(__FILE__), "mack", "runner")
|
63
|
+
end
|
64
|
+
|
65
|
+
boot_load(:load_mack_core, :version, :paths, :configuration, :logging, :core_classes, :gems) do
|
47
66
|
Mack.logger.debug "Initialization of Mack Core finished." unless app_config.log.disable_initialization_logging
|
48
|
-
end
|
67
|
+
end
|
68
|
+
|
69
|
+
Mack::BootLoader.run(:load_mack_core)
|
data/lib/mack_tasks.rb
CHANGED
@@ -1,32 +1,47 @@
|
|
1
1
|
require 'rake'
|
2
2
|
require 'rake/testtask'
|
3
3
|
require 'rake/rdoctask'
|
4
|
+
require 'fileutils'
|
4
5
|
require 'rubygems'
|
5
6
|
require 'mack-facets'
|
6
7
|
require 'application_configuration'
|
7
8
|
|
8
|
-
|
9
|
+
fl = File.join(File.dirname(__FILE__), 'mack')
|
9
10
|
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
end
|
18
|
-
end
|
11
|
+
f_tasks = File.join(FileUtils.pwd, 'vendor', 'framework', 'mack', 'lib', 'mack_tasks.rb')
|
12
|
+
if File.exists?(f_tasks) && f_tasks != __FILE__
|
13
|
+
# puts "Run from the local copy"
|
14
|
+
require f_tasks
|
15
|
+
else
|
16
|
+
# puts "running mack_tasks from: #{fl}"
|
17
|
+
require File.join(File.dirname(__FILE__), '..', 'bin', 'gem_load_path')
|
19
18
|
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
19
|
+
require File.join(fl, 'tasks', 'rake_helpers')
|
20
|
+
require File.join(fl, 'core_extensions', 'kernel')
|
21
|
+
require File.join(fl, 'utils', 'paths')
|
22
|
+
|
23
|
+
require File.join(fl, 'initialization', 'boot_loader')
|
24
|
+
require File.join(fl, 'initialization', 'configuration')
|
25
|
+
|
26
|
+
Mack::BootLoader.run(:configuration)
|
27
|
+
require File.join(fl, 'utils', 'gem_manager')
|
28
|
+
|
29
|
+
require Mack::Paths.initializers("gems.rb")
|
30
|
+
Mack::Utils::GemManager.instance.do_task_requires
|
31
|
+
|
32
|
+
# Requires all rake tasks that ship with the Mack framework.
|
33
|
+
[fl, Mack::Paths.lib, Mack::Paths.plugins].each do |dir|
|
34
|
+
begin
|
35
|
+
require File.join(dir, "tasks", "rake_helpers.rb")
|
36
|
+
rescue Exception => e
|
37
|
+
# raise e
|
38
|
+
end
|
39
|
+
files = Dir.glob(File.join(dir, "**/*.rake"))
|
40
|
+
files.each do |f|
|
41
|
+
unless f == __FILE__
|
42
|
+
load f
|
43
|
+
end
|
30
44
|
end
|
31
45
|
end
|
46
|
+
|
32
47
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: mack
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.7.
|
4
|
+
version: 0.7.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- markbates
|
@@ -9,7 +9,7 @@ autorequire:
|
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
11
|
|
12
|
-
date: 2008-08
|
12
|
+
date: 2008-09-08 00:00:00 -04:00
|
13
13
|
default_executable:
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
@@ -20,7 +20,7 @@ dependencies:
|
|
20
20
|
requirements:
|
21
21
|
- - "="
|
22
22
|
- !ruby/object:Gem::Version
|
23
|
-
version: 0.
|
23
|
+
version: 0.4.0
|
24
24
|
version:
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: mack-more
|
@@ -30,7 +30,7 @@ dependencies:
|
|
30
30
|
requirements:
|
31
31
|
- - "="
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: 0.7.
|
33
|
+
version: 0.7.1
|
34
34
|
version:
|
35
35
|
- !ruby/object:Gem::Dependency
|
36
36
|
name: application_configuration
|
@@ -42,16 +42,6 @@ dependencies:
|
|
42
42
|
- !ruby/object:Gem::Version
|
43
43
|
version: 1.5.3
|
44
44
|
version:
|
45
|
-
- !ruby/object:Gem::Dependency
|
46
|
-
name: cachetastic
|
47
|
-
type: :runtime
|
48
|
-
version_requirement:
|
49
|
-
version_requirements: !ruby/object:Gem::Requirement
|
50
|
-
requirements:
|
51
|
-
- - "="
|
52
|
-
- !ruby/object:Gem::Version
|
53
|
-
version: 1.7.4
|
54
|
-
version:
|
55
45
|
- !ruby/object:Gem::Dependency
|
56
46
|
name: log4r
|
57
47
|
type: :runtime
|
@@ -110,7 +100,7 @@ dependencies:
|
|
110
100
|
requirements:
|
111
101
|
- - "="
|
112
102
|
- !ruby/object:Gem::Version
|
113
|
-
version: 1.2.
|
103
|
+
version: 1.2.4
|
114
104
|
version:
|
115
105
|
- !ruby/object:Gem::Dependency
|
116
106
|
name: rcov
|
@@ -132,20 +122,13 @@ dependencies:
|
|
132
122
|
- !ruby/object:Gem::Version
|
133
123
|
version: 1.1.4
|
134
124
|
version:
|
135
|
-
- !ruby/object:Gem::Dependency
|
136
|
-
name: ruby-debug
|
137
|
-
type: :runtime
|
138
|
-
version_requirement:
|
139
|
-
version_requirements: !ruby/object:Gem::Requirement
|
140
|
-
requirements:
|
141
|
-
- - "="
|
142
|
-
- !ruby/object:Gem::Version
|
143
|
-
version: 0.10.0
|
144
|
-
version:
|
145
125
|
description: Mack is a powerful, yet simple, web application framework. It takes some cues from the likes of Rails and Merb, so it's not entirely unfamiliar. Mack hopes to provide developers a great framework for building, and deploying, portal and distributed applications.
|
146
126
|
email: mark@mackframework.com
|
147
127
|
executables:
|
148
128
|
- mack
|
129
|
+
- mackery
|
130
|
+
- mackery-console
|
131
|
+
- mackery-server
|
149
132
|
extensions: []
|
150
133
|
|
151
134
|
extra_rdoc_files:
|
@@ -159,7 +142,6 @@ files:
|
|
159
142
|
- lib/mack/controller/filter.rb
|
160
143
|
- lib/mack/controller/request.rb
|
161
144
|
- lib/mack/controller/response.rb
|
162
|
-
- lib/mack/controller/session.rb
|
163
145
|
- lib/mack/controller/tell.rb
|
164
146
|
- lib/mack/controller/uploaded_file.rb
|
165
147
|
- lib/mack/core_extensions/kernel.rb
|
@@ -204,6 +186,9 @@ files:
|
|
204
186
|
- lib/mack/generators/mack_application_generator/templates/test/spec_helper.rb.template
|
205
187
|
- lib/mack/generators/mack_application_generator/templates/test/test_helper.rb.template
|
206
188
|
- lib/mack/generators/mack_application_generator/templates/vendor/plugins.template
|
189
|
+
- lib/mack/generators/passenger_generator/passenger_generator.rb
|
190
|
+
- lib/mack/generators/passenger_generator/templates/config.ru.template
|
191
|
+
- lib/mack/generators/passenger_generator/templates/tmp/README.template
|
207
192
|
- lib/mack/generators/plugin_generator/plugin_generator.rb
|
208
193
|
- lib/mack/generators/plugin_generator/templates/vendor/plugins/%=@plugin_name%/init.rb.template
|
209
194
|
- lib/mack/generators/plugin_generator/templates/vendor/plugins/%=@plugin_name%/lib/%=@plugin_name%.rb.template
|
@@ -214,8 +199,10 @@ files:
|
|
214
199
|
- lib/mack/generators/view_helper_generator/templates/test/helpers/views/test_case.rb.template
|
215
200
|
- lib/mack/generators/view_helper_generator/view_helper_generator.rb
|
216
201
|
- lib/mack/initialization/application.rb
|
202
|
+
- lib/mack/initialization/boot_loader.rb
|
217
203
|
- lib/mack/initialization/configuration.rb
|
218
204
|
- lib/mack/initialization/console.rb
|
205
|
+
- lib/mack/initialization/environment.rb
|
219
206
|
- lib/mack/initialization/helpers.rb
|
220
207
|
- lib/mack/initialization/logging.rb
|
221
208
|
- lib/mack/initialization/plugins.rb
|
@@ -243,7 +230,10 @@ files:
|
|
243
230
|
- lib/mack/runner_helpers/registry.rb
|
244
231
|
- lib/mack/runner_helpers/request_logger.rb
|
245
232
|
- lib/mack/runner_helpers/session.rb
|
246
|
-
- lib/mack/
|
233
|
+
- lib/mack/sessions/cookie_session_store.rb
|
234
|
+
- lib/mack/sessions/session.rb
|
235
|
+
- lib/mack/sessions/session_store_base.rb
|
236
|
+
- lib/mack/sessions/test_session_store.rb
|
247
237
|
- lib/mack/tasks/gem_tasks.rake
|
248
238
|
- lib/mack/tasks/generator_tasks.rake
|
249
239
|
- lib/mack/tasks/log_tasks.rake
|
@@ -262,12 +252,16 @@ files:
|
|
262
252
|
- lib/mack/testing/test_assertions.rb
|
263
253
|
- lib/mack/testing/test_case.rb
|
264
254
|
- lib/mack/utils/ansi/ansi_color.rb
|
255
|
+
- lib/mack/utils/content_length_handler.rb
|
256
|
+
- lib/mack/utils/forgery_detector.rb
|
265
257
|
- lib/mack/utils/gem_manager.rb
|
266
258
|
- lib/mack/utils/mime_types.rb
|
267
259
|
- lib/mack/utils/mime_types.yml
|
260
|
+
- lib/mack/utils/paths.rb
|
268
261
|
- lib/mack/utils/server.rb
|
269
262
|
- lib/mack/version.rb
|
270
263
|
- lib/mack/view_helpers/all_helpers.rb
|
264
|
+
- lib/mack/view_helpers/asset_helpers.rb
|
271
265
|
- lib/mack/view_helpers/date_time_helpers.rb
|
272
266
|
- lib/mack/view_helpers/form_helpers.rb
|
273
267
|
- lib/mack/view_helpers/html_helpers.rb
|
@@ -278,6 +272,8 @@ files:
|
|
278
272
|
- lib/mack_app.rb
|
279
273
|
- lib/mack_core.rb
|
280
274
|
- lib/mack_tasks.rb
|
275
|
+
- bin/env_handler.rb
|
276
|
+
- bin/gem_load_path.rb
|
281
277
|
- CHANGELOG
|
282
278
|
has_rdoc: true
|
283
279
|
homepage: http://www.mackframework.com
|
@@ -1,58 +0,0 @@
|
|
1
|
-
require 'find'
|
2
|
-
namespace :cachetastic do
|
3
|
-
|
4
|
-
task :manipulate_caches => :environment do
|
5
|
-
cache_name = ENV['cache_name']
|
6
|
-
cache_name = cache_name.camelcase
|
7
|
-
action = ENV['cache_action']
|
8
|
-
running_time("#{cache_name}.#{action}") do
|
9
|
-
case cache_name
|
10
|
-
when "All"
|
11
|
-
puts "About to work on ALL caches!"
|
12
|
-
# force all caches to register themselves:
|
13
|
-
["#{Mack.root}/lib/caches"].each do |dir|
|
14
|
-
Find.find(dir) do |f|
|
15
|
-
# puts f
|
16
|
-
if FileTest.directory?(f) and !f.match(/.svn/)
|
17
|
-
else
|
18
|
-
if FileTest.file?(f)
|
19
|
-
m = f.match(/\/[a-zA-Z\-_]*.rb$/)
|
20
|
-
if m
|
21
|
-
model = m.to_s
|
22
|
-
unless model.match("test_")
|
23
|
-
x = model.gsub('/', '').gsub('.rb', '')
|
24
|
-
# puts "x: #{x}"
|
25
|
-
require x
|
26
|
-
end
|
27
|
-
end
|
28
|
-
end
|
29
|
-
end
|
30
|
-
end
|
31
|
-
end
|
32
|
-
caches = Cachetastic::Caches::Base.all_registered_caches.dup
|
33
|
-
caches.sort!
|
34
|
-
caches.reverse!
|
35
|
-
caches.each do |cache|
|
36
|
-
do_work(cache, action)
|
37
|
-
end
|
38
|
-
else
|
39
|
-
do_work(cache_name, action)
|
40
|
-
end
|
41
|
-
end
|
42
|
-
end
|
43
|
-
|
44
|
-
def do_work(cache, action)
|
45
|
-
begin
|
46
|
-
puts "Calling: #{cache}.#{action}"
|
47
|
-
cache.constantize.send(action)
|
48
|
-
rescue MethodNotImplemented => e
|
49
|
-
msg = "Cachetastic.rake Warning: cache #{cache} does not implement #{action}. This is probably an error."
|
50
|
-
puts msg
|
51
|
-
Mack.logger.warning(msg)
|
52
|
-
rescue NoMethodError => e
|
53
|
-
rescue Exception => e
|
54
|
-
raise e
|
55
|
-
end
|
56
|
-
end
|
57
|
-
|
58
|
-
end
|