spontaneous 0.2.0.beta5 → 0.2.0.beta6

Sign up to get free protection for your applications and to get access to all the features.
Files changed (227) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +1 -0
  3. data/CHANGELOG.md +39 -0
  4. data/Gemfile +2 -0
  5. data/Readme.markdown +4 -4
  6. data/application/css/core.css.scss +144 -43
  7. data/application/css/definitions.css.scss +50 -16
  8. data/application/css/dialogue.css.scss +5 -2
  9. data/application/css/editing.css.scss +7 -7
  10. data/application/css/font.css.scss +1 -1
  11. data/application/css/meta.css.scss +6 -6
  12. data/application/css/popover.css.scss +6 -6
  13. data/application/css/top.css.scss +8 -1
  14. data/application/js/add_alias_dialogue.js +137 -36
  15. data/application/js/add_home_dialogue.js +10 -10
  16. data/application/js/ajax.js +26 -26
  17. data/application/js/authentication.js +2 -2
  18. data/application/js/box.js +21 -10
  19. data/application/js/box_container.js +13 -7
  20. data/application/js/compatibility.js +19 -17
  21. data/application/js/conflicted_field_dialogue.js +5 -5
  22. data/application/js/content.js +22 -16
  23. data/application/js/content_area.js +62 -33
  24. data/application/js/dialogue.js +16 -16
  25. data/application/js/dom.js +9 -10
  26. data/application/js/edit_panel.js +25 -20
  27. data/application/js/editing.js +21 -8
  28. data/application/js/entry.js +1 -1
  29. data/application/js/extensions.js +11 -11
  30. data/application/js/field/boolean.js +6 -6
  31. data/application/js/field/date.js +1 -1
  32. data/application/js/field/file.js +17 -17
  33. data/application/js/field/image.js +27 -27
  34. data/application/js/field/markdown.js +72 -71
  35. data/application/js/field/select.js +9 -9
  36. data/application/js/field/string.js +3 -3
  37. data/application/js/field/webvideo.js +2 -2
  38. data/application/js/field_preview.js +3 -0
  39. data/application/js/init.js +3 -2
  40. data/application/js/jquery-selection-position.js +13 -13
  41. data/application/js/location.js +17 -12
  42. data/application/js/login.js +2 -2
  43. data/application/js/meta_view/user_admin.js +101 -101
  44. data/application/js/metadata.js +1 -1
  45. data/application/js/page.js +2 -2
  46. data/application/js/page_browser.js +13 -13
  47. data/application/js/page_entry.js +1 -1
  48. data/application/js/panel/root_menu.js +10 -10
  49. data/application/js/popover.js +6 -5
  50. data/application/js/popover_view.js +5 -5
  51. data/application/js/preview.js +10 -4
  52. data/application/js/progress.js +6 -6
  53. data/application/js/properties.js +35 -6
  54. data/application/js/publish.js +43 -43
  55. data/application/js/require.js +14 -14
  56. data/application/js/services.js +3 -3
  57. data/application/js/sharded_upload.js +9 -8
  58. data/application/js/side_bar.js +5 -5
  59. data/application/js/state.js +2 -2
  60. data/application/js/status_bar.js +6 -6
  61. data/application/js/top_bar.js +97 -65
  62. data/application/js/types.js +9 -6
  63. data/application/js/upload.js +4 -4
  64. data/application/js/upload_manager.js +21 -21
  65. data/application/js/user.js +1 -1
  66. data/application/js/vendor/jquery.velocity.min.js +7 -0
  67. data/application/js/views.js +32 -8
  68. data/application/js/views/box_view.js +51 -31
  69. data/application/js/views/page_piece_view.js +17 -15
  70. data/application/js/views/page_view.js +54 -43
  71. data/application/js/views/piece_view.js +44 -37
  72. data/application/static/font/fontawesome-webfont-4f0022f25672c7f501c339cbf98d9117.ttf +0 -0
  73. data/application/views/index.erb +1 -0
  74. data/db/migrations/20130114120000_create_revision_tables.rb +2 -1
  75. data/db/migrations/20130813111009_increase_path_length.rb +11 -2
  76. data/db/migrations/20140506171823_add_index_to_target_id.rb +11 -0
  77. data/db/migrations/20140514090204_add_content_hash.rb +59 -0
  78. data/db/migrations/20140519150253_add_content_hash_timestamp.rb +20 -0
  79. data/lib/spontaneous.rb +0 -1
  80. data/lib/spontaneous/asset/environment.rb +77 -15
  81. data/lib/spontaneous/box.rb +21 -0
  82. data/lib/spontaneous/capistrano/deploy.rb +1 -1
  83. data/lib/spontaneous/capistrano/sync.rb +8 -7
  84. data/lib/spontaneous/change.rb +4 -2
  85. data/lib/spontaneous/cli/fields.rb +7 -3
  86. data/lib/spontaneous/cli/generate.rb +2 -0
  87. data/lib/spontaneous/cli/init.rb +24 -93
  88. data/lib/spontaneous/cli/init/db.rb +94 -0
  89. data/lib/spontaneous/cli/init/mysql.rb +17 -0
  90. data/lib/spontaneous/cli/init/postgresql.rb +33 -0
  91. data/lib/spontaneous/cli/init/sqlite.rb +14 -0
  92. data/lib/spontaneous/cli/site.rb +45 -20
  93. data/lib/spontaneous/collections/box_set.rb +3 -0
  94. data/lib/spontaneous/collections/entry_set.rb +43 -4
  95. data/lib/spontaneous/collections/field_set.rb +14 -2
  96. data/lib/spontaneous/data_mapper.rb +40 -7
  97. data/lib/spontaneous/data_mapper/content_model.rb +1 -1
  98. data/lib/spontaneous/data_mapper/content_model/associations.rb +63 -12
  99. data/lib/spontaneous/data_mapper/content_model/timestamps.rb +9 -14
  100. data/lib/spontaneous/data_mapper/content_table.rb +4 -2
  101. data/lib/spontaneous/data_mapper/dataset.rb +31 -2
  102. data/lib/spontaneous/data_mapper/scope.rb +37 -20
  103. data/lib/spontaneous/errors.rb +6 -0
  104. data/lib/spontaneous/facet.rb +20 -10
  105. data/lib/spontaneous/field/base.rb +8 -1
  106. data/lib/spontaneous/field/file.rb +28 -3
  107. data/lib/spontaneous/field/image.rb +2 -0
  108. data/lib/spontaneous/field/update.rb +6 -0
  109. data/lib/spontaneous/field/webvideo/vimeo.rb +6 -1
  110. data/lib/spontaneous/field/webvideo/vine.rb +1 -1
  111. data/lib/spontaneous/field/webvideo/youtube.rb +1 -1
  112. data/lib/spontaneous/generators/site.rb +6 -4
  113. data/lib/spontaneous/generators/site/.gitignore +1 -0
  114. data/lib/spontaneous/generators/site/Gemfile.tt +3 -3
  115. data/lib/spontaneous/generators/site/config/{indexes.rb.tt → initializers/indexes.rb.tt} +0 -0
  116. data/lib/spontaneous/generators/site/config/initializers/publishing.rb.tt +78 -0
  117. data/lib/spontaneous/generators/site/{config/database.yml.tt → db/mysql2.yml.tt} +7 -6
  118. data/lib/spontaneous/generators/site/db/postgres.yml.tt +25 -0
  119. data/lib/spontaneous/generators/site/db/sqlite3.yml.tt +18 -0
  120. data/lib/spontaneous/generators/site/public/humans.txt.tt +14 -0
  121. data/lib/spontaneous/generators/site/templates/layouts/standard.html.cut.tt +51 -0
  122. data/lib/spontaneous/loader.rb +1 -1
  123. data/lib/spontaneous/logger.rb +1 -1
  124. data/lib/spontaneous/media/image/optimizer.rb +1 -1
  125. data/lib/spontaneous/media/image/processor.rb +11 -2
  126. data/lib/spontaneous/media/image/renderable.rb +2 -0
  127. data/lib/spontaneous/model.rb +3 -0
  128. data/lib/spontaneous/model/box/allowed_types.rb +17 -4
  129. data/lib/spontaneous/model/core.rb +36 -3
  130. data/lib/spontaneous/model/core/aliases.rb +5 -2
  131. data/lib/spontaneous/model/core/boxes.rb +6 -0
  132. data/lib/spontaneous/model/core/cascading_change.rb +38 -0
  133. data/lib/spontaneous/model/core/content_hash.rb +171 -0
  134. data/lib/spontaneous/model/core/entries.rb +0 -19
  135. data/lib/spontaneous/model/core/fields.rb +11 -0
  136. data/lib/spontaneous/model/core/modifications.rb +22 -21
  137. data/lib/spontaneous/model/core/render.rb +3 -0
  138. data/lib/spontaneous/model/core/serialisation.rb +18 -17
  139. data/lib/spontaneous/model/page.rb +35 -8
  140. data/lib/spontaneous/model/page/page_tree.rb +20 -8
  141. data/lib/spontaneous/model/page/paths.rb +79 -50
  142. data/lib/spontaneous/model/page/singleton.rb +71 -0
  143. data/lib/spontaneous/model/page/site_map.rb +2 -1
  144. data/lib/spontaneous/model/page/site_timestamps.rb +2 -2
  145. data/lib/spontaneous/model/piece.rb +10 -0
  146. data/lib/spontaneous/output/context.rb +13 -6
  147. data/lib/spontaneous/output/format.rb +30 -5
  148. data/lib/spontaneous/output/helpers/script_helper.rb +8 -0
  149. data/lib/spontaneous/output/helpers/stylesheet_helper.rb +7 -0
  150. data/lib/spontaneous/output/renderable.rb +16 -0
  151. data/lib/spontaneous/output/store.rb +1 -1
  152. data/lib/spontaneous/output/template/renderer.rb +2 -2
  153. data/lib/spontaneous/page_piece.rb +25 -1
  154. data/lib/spontaneous/prototypes/box_prototype.rb +13 -0
  155. data/lib/spontaneous/prototypes/field_prototype.rb +7 -4
  156. data/lib/spontaneous/publishing.rb +10 -5
  157. data/lib/spontaneous/publishing/immediate.rb +32 -349
  158. data/lib/spontaneous/publishing/pipeline.rb +43 -0
  159. data/lib/spontaneous/publishing/progress.rb +186 -0
  160. data/lib/spontaneous/publishing/publish.rb +107 -0
  161. data/lib/spontaneous/publishing/rerender.rb +17 -0
  162. data/lib/spontaneous/publishing/revision.rb +53 -18
  163. data/lib/spontaneous/publishing/simultaneous.rb +1 -1
  164. data/lib/spontaneous/publishing/steps.rb +154 -0
  165. data/lib/spontaneous/publishing/steps/activate_revision.rb +45 -0
  166. data/lib/spontaneous/publishing/steps/archive_old_revisions.rb +22 -0
  167. data/lib/spontaneous/publishing/steps/base_step.rb +49 -0
  168. data/lib/spontaneous/publishing/steps/copy_static_files.rb +74 -0
  169. data/lib/spontaneous/publishing/steps/create_revision_directory.rb +24 -0
  170. data/lib/spontaneous/publishing/steps/generate_rackup_file.rb +51 -0
  171. data/lib/spontaneous/publishing/steps/generate_search_indexes.rb +24 -0
  172. data/lib/spontaneous/publishing/steps/render_revision.rb +69 -0
  173. data/lib/spontaneous/publishing/steps/write_revision_file.rb +43 -0
  174. data/lib/spontaneous/rack/back.rb +3 -1
  175. data/lib/spontaneous/rack/back/alias.rb +9 -8
  176. data/lib/spontaneous/rack/front.rb +1 -1
  177. data/lib/spontaneous/rack/middleware.rb +7 -4
  178. data/lib/spontaneous/rack/middleware/transaction.rb +14 -0
  179. data/lib/spontaneous/rack/page_controller.rb +23 -8
  180. data/lib/spontaneous/revision.rb +5 -10
  181. data/lib/spontaneous/schema.rb +5 -0
  182. data/lib/spontaneous/server.rb +3 -1
  183. data/lib/spontaneous/site.rb +17 -10
  184. data/lib/spontaneous/site/publishing.rb +25 -3
  185. data/lib/spontaneous/site/state.rb +7 -3
  186. data/lib/spontaneous/tasks/database.rake +5 -10
  187. data/lib/spontaneous/utils/database/mysql_dumper.rb +5 -1
  188. data/lib/spontaneous/version.rb +1 -1
  189. data/spontaneous.gemspec +4 -3
  190. data/test/fixtures/example_application/config/initializers/initializer1.rb +1 -0
  191. data/test/fixtures/example_application/config/initializers/initializer2.rb +1 -0
  192. data/test/fixtures/example_application/config/initializers/publishing.rb +13 -0
  193. data/test/fixtures/search/config/{indexes.rb → initializers/indexes.rb} +0 -0
  194. data/test/fixtures/serialisation/root_hash.yaml.erb +10 -4
  195. data/test/functional/test_application.rb +10 -0
  196. data/test/functional/test_back.rb +23 -5
  197. data/test/functional/test_cli.rb +98 -34
  198. data/test/functional/test_front.rb +7 -3
  199. data/test/test_helper.rb +35 -28
  200. data/test/unit/test_alias.rb +20 -3
  201. data/test/unit/test_assets.rb +58 -30
  202. data/test/unit/test_changesets.rb +20 -12
  203. data/test/unit/test_content_hash.rb +496 -0
  204. data/test/unit/test_context.rb +28 -1
  205. data/test/unit/test_controllers.rb +96 -61
  206. data/test/unit/test_crypt.rb +1 -8
  207. data/test/unit/test_datamapper.rb +95 -19
  208. data/test/unit/test_features.rb +1 -4
  209. data/test/unit/test_fields.rb +61 -12
  210. data/test/unit/test_generators.rb +39 -2
  211. data/test/unit/test_images.rb +3 -1
  212. data/test/unit/test_modifications.rb +224 -219
  213. data/test/unit/test_output_store.rb +10 -0
  214. data/test/unit/{test_formats.rb → test_outputs.rb} +75 -6
  215. data/test/unit/test_page.rb +61 -15
  216. data/test/unit/test_plugins.rb +2 -42
  217. data/test/unit/test_publishing_pipeline.rb +1050 -0
  218. data/test/unit/test_render.rb +30 -0
  219. data/test/unit/test_revisions.rb +110 -2
  220. data/test/unit/test_schema.rb +4 -0
  221. data/test/unit/test_search.rb +1 -1
  222. data/test/unit/test_serialisation.rb +6 -1
  223. data/test/unit/test_singletons.rb +159 -0
  224. data/test/unit/test_site.rb +71 -44
  225. metadata +140 -86
  226. data/application/static/font/fontawesome-webfont-1c66a4738b40ef0f6b1abca0ba9a796d.ttf +0 -0
  227. data/test/unit/test_publishing.rb +0 -330
metadata CHANGED
@@ -1,321 +1,321 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: spontaneous
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0.beta5
4
+ version: 0.2.0.beta6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Garry Hill
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-03-18 00:00:00.000000000 Z
11
+ date: 2014-08-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ~>
17
+ - - "~>"
18
18
  - !ruby/object:Gem::Version
19
19
  version: '4.0'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - ~>
24
+ - - "~>"
25
25
  - !ruby/object:Gem::Version
26
26
  version: '4.0'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: coffee-script
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - ~>
31
+ - - "~>"
32
32
  - !ruby/object:Gem::Version
33
33
  version: '2.2'
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - ~>
38
+ - - "~>"
39
39
  - !ruby/object:Gem::Version
40
40
  version: '2.2'
41
41
  - !ruby/object:Gem::Dependency
42
- name: bcrypt-ruby
42
+ name: bcrypt
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - ~>
45
+ - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: '3.0'
47
+ version: '3.1'
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - ~>
52
+ - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: '3.0'
54
+ version: '3.1'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: bundler
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
- - - '>'
59
+ - - "~>"
60
60
  - !ruby/object:Gem::Version
61
- version: '1.0'
61
+ version: '1.5'
62
62
  type: :runtime
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
- - - '>'
66
+ - - "~>"
67
67
  - !ruby/object:Gem::Version
68
- version: '1.0'
68
+ version: '1.5'
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: cutaneous
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
- - - ~>
73
+ - - "~>"
74
74
  - !ruby/object:Gem::Version
75
75
  version: '0.2'
76
76
  type: :runtime
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
- - - ~>
80
+ - - "~>"
81
81
  - !ruby/object:Gem::Version
82
82
  version: '0.2'
83
83
  - !ruby/object:Gem::Dependency
84
84
  name: erubis
85
85
  requirement: !ruby/object:Gem::Requirement
86
86
  requirements:
87
- - - ~>
87
+ - - "~>"
88
88
  - !ruby/object:Gem::Version
89
89
  version: '2.6'
90
90
  type: :runtime
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
- - - ~>
94
+ - - "~>"
95
95
  - !ruby/object:Gem::Version
96
96
  version: '2.6'
97
97
  - !ruby/object:Gem::Dependency
98
98
  name: fog
99
99
  requirement: !ruby/object:Gem::Requirement
100
100
  requirements:
101
- - - ~>
101
+ - - "~>"
102
102
  - !ruby/object:Gem::Version
103
103
  version: '1.17'
104
104
  type: :runtime
105
105
  prerelease: false
106
106
  version_requirements: !ruby/object:Gem::Requirement
107
107
  requirements:
108
- - - ~>
108
+ - - "~>"
109
109
  - !ruby/object:Gem::Version
110
110
  version: '1.17'
111
111
  - !ruby/object:Gem::Dependency
112
112
  name: foreman
113
113
  requirement: !ruby/object:Gem::Requirement
114
114
  requirements:
115
- - - ~>
115
+ - - "~>"
116
116
  - !ruby/object:Gem::Version
117
117
  version: '0.60'
118
118
  type: :runtime
119
119
  prerelease: false
120
120
  version_requirements: !ruby/object:Gem::Requirement
121
121
  requirements:
122
- - - ~>
122
+ - - "~>"
123
123
  - !ruby/object:Gem::Version
124
124
  version: '0.60'
125
125
  - !ruby/object:Gem::Dependency
126
126
  name: kramdown
127
127
  requirement: !ruby/object:Gem::Requirement
128
128
  requirements:
129
- - - ~>
129
+ - - "~>"
130
130
  - !ruby/object:Gem::Version
131
131
  version: '0.14'
132
132
  type: :runtime
133
133
  prerelease: false
134
134
  version_requirements: !ruby/object:Gem::Requirement
135
135
  requirements:
136
- - - ~>
136
+ - - "~>"
137
137
  - !ruby/object:Gem::Version
138
138
  version: '0.14'
139
139
  - !ruby/object:Gem::Dependency
140
140
  name: launchy
141
141
  requirement: !ruby/object:Gem::Requirement
142
142
  requirements:
143
- - - ~>
143
+ - - "~>"
144
144
  - !ruby/object:Gem::Version
145
145
  version: '2.1'
146
146
  type: :runtime
147
147
  prerelease: false
148
148
  version_requirements: !ruby/object:Gem::Requirement
149
149
  requirements:
150
- - - ~>
150
+ - - "~>"
151
151
  - !ruby/object:Gem::Version
152
152
  version: '2.1'
153
153
  - !ruby/object:Gem::Dependency
154
154
  name: moneta
155
155
  requirement: !ruby/object:Gem::Requirement
156
156
  requirements:
157
- - - ~>
157
+ - - "~>"
158
158
  - !ruby/object:Gem::Version
159
159
  version: '0.7'
160
160
  type: :runtime
161
161
  prerelease: false
162
162
  version_requirements: !ruby/object:Gem::Requirement
163
163
  requirements:
164
- - - ~>
164
+ - - "~>"
165
165
  - !ruby/object:Gem::Version
166
166
  version: '0.7'
167
167
  - !ruby/object:Gem::Dependency
168
168
  name: nokogiri
169
169
  requirement: !ruby/object:Gem::Requirement
170
170
  requirements:
171
- - - ~>
171
+ - - "~>"
172
172
  - !ruby/object:Gem::Version
173
173
  version: '1.5'
174
174
  type: :runtime
175
175
  prerelease: false
176
176
  version_requirements: !ruby/object:Gem::Requirement
177
177
  requirements:
178
- - - ~>
178
+ - - "~>"
179
179
  - !ruby/object:Gem::Version
180
180
  version: '1.5'
181
181
  - !ruby/object:Gem::Dependency
182
182
  name: posix-spawn
183
183
  requirement: !ruby/object:Gem::Requirement
184
184
  requirements:
185
- - - ~>
185
+ - - "~>"
186
186
  - !ruby/object:Gem::Version
187
187
  version: 0.3.6
188
188
  type: :runtime
189
189
  prerelease: false
190
190
  version_requirements: !ruby/object:Gem::Requirement
191
191
  requirements:
192
- - - ~>
192
+ - - "~>"
193
193
  - !ruby/object:Gem::Version
194
194
  version: 0.3.6
195
195
  - !ruby/object:Gem::Dependency
196
196
  name: public_suffix
197
197
  requirement: !ruby/object:Gem::Requirement
198
198
  requirements:
199
- - - ~>
199
+ - - "~>"
200
200
  - !ruby/object:Gem::Version
201
201
  version: '1.0'
202
202
  type: :runtime
203
203
  prerelease: false
204
204
  version_requirements: !ruby/object:Gem::Requirement
205
205
  requirements:
206
- - - ~>
206
+ - - "~>"
207
207
  - !ruby/object:Gem::Version
208
208
  version: '1.0'
209
209
  - !ruby/object:Gem::Dependency
210
210
  name: rack
211
211
  requirement: !ruby/object:Gem::Requirement
212
212
  requirements:
213
- - - ~>
213
+ - - "~>"
214
214
  - !ruby/object:Gem::Version
215
215
  version: '1.5'
216
216
  type: :runtime
217
217
  prerelease: false
218
218
  version_requirements: !ruby/object:Gem::Requirement
219
219
  requirements:
220
- - - ~>
220
+ - - "~>"
221
221
  - !ruby/object:Gem::Version
222
222
  version: '1.5'
223
223
  - !ruby/object:Gem::Dependency
224
224
  name: rake
225
225
  requirement: !ruby/object:Gem::Requirement
226
226
  requirements:
227
- - - ~>
227
+ - - "~>"
228
228
  - !ruby/object:Gem::Version
229
229
  version: '0.9'
230
230
  type: :runtime
231
231
  prerelease: false
232
232
  version_requirements: !ruby/object:Gem::Requirement
233
233
  requirements:
234
- - - ~>
234
+ - - "~>"
235
235
  - !ruby/object:Gem::Version
236
236
  version: '0.9'
237
237
  - !ruby/object:Gem::Dependency
238
238
  name: sass
239
239
  requirement: !ruby/object:Gem::Requirement
240
240
  requirements:
241
- - - ~>
241
+ - - "~>"
242
242
  - !ruby/object:Gem::Version
243
243
  version: '3.2'
244
244
  type: :runtime
245
245
  prerelease: false
246
246
  version_requirements: !ruby/object:Gem::Requirement
247
247
  requirements:
248
- - - ~>
248
+ - - "~>"
249
249
  - !ruby/object:Gem::Version
250
250
  version: '3.2'
251
251
  - !ruby/object:Gem::Dependency
252
252
  name: sequel
253
253
  requirement: !ruby/object:Gem::Requirement
254
254
  requirements:
255
- - - ~>
255
+ - - "~>"
256
256
  - !ruby/object:Gem::Version
257
257
  version: '4.8'
258
258
  type: :runtime
259
259
  prerelease: false
260
260
  version_requirements: !ruby/object:Gem::Requirement
261
261
  requirements:
262
- - - ~>
262
+ - - "~>"
263
263
  - !ruby/object:Gem::Version
264
264
  version: '4.8'
265
265
  - !ruby/object:Gem::Dependency
266
266
  name: simultaneous
267
267
  requirement: !ruby/object:Gem::Requirement
268
268
  requirements:
269
- - - ~>
269
+ - - "~>"
270
270
  - !ruby/object:Gem::Version
271
271
  version: 0.4.2
272
272
  type: :runtime
273
273
  prerelease: false
274
274
  version_requirements: !ruby/object:Gem::Requirement
275
275
  requirements:
276
- - - ~>
276
+ - - "~>"
277
277
  - !ruby/object:Gem::Version
278
278
  version: 0.4.2
279
279
  - !ruby/object:Gem::Dependency
280
280
  name: sinatra
281
281
  requirement: !ruby/object:Gem::Requirement
282
282
  requirements:
283
- - - ~>
283
+ - - "~>"
284
284
  - !ruby/object:Gem::Version
285
285
  version: '1.3'
286
286
  type: :runtime
287
287
  prerelease: false
288
288
  version_requirements: !ruby/object:Gem::Requirement
289
289
  requirements:
290
- - - ~>
290
+ - - "~>"
291
291
  - !ruby/object:Gem::Version
292
292
  version: '1.3'
293
293
  - !ruby/object:Gem::Dependency
294
294
  name: skeptick
295
295
  requirement: !ruby/object:Gem::Requirement
296
296
  requirements:
297
- - - ~>
297
+ - - "~>"
298
298
  - !ruby/object:Gem::Version
299
299
  version: '0.1'
300
300
  type: :runtime
301
301
  prerelease: false
302
302
  version_requirements: !ruby/object:Gem::Requirement
303
303
  requirements:
304
- - - ~>
304
+ - - "~>"
305
305
  - !ruby/object:Gem::Version
306
306
  version: '0.1'
307
307
  - !ruby/object:Gem::Dependency
308
308
  name: sprockets
309
309
  requirement: !ruby/object:Gem::Requirement
310
310
  requirements:
311
- - - ~>
311
+ - - "~>"
312
312
  - !ruby/object:Gem::Version
313
313
  version: '2.9'
314
314
  type: :runtime
315
315
  prerelease: false
316
316
  version_requirements: !ruby/object:Gem::Requirement
317
317
  requirements:
318
- - - ~>
318
+ - - "~>"
319
319
  - !ruby/object:Gem::Version
320
320
  version: '2.9'
321
321
  - !ruby/object:Gem::Dependency
@@ -336,126 +336,140 @@ dependencies:
336
336
  name: thin
337
337
  requirement: !ruby/object:Gem::Requirement
338
338
  requirements:
339
- - - ~>
339
+ - - "~>"
340
340
  - !ruby/object:Gem::Version
341
341
  version: '1.2'
342
342
  type: :runtime
343
343
  prerelease: false
344
344
  version_requirements: !ruby/object:Gem::Requirement
345
345
  requirements:
346
- - - ~>
346
+ - - "~>"
347
347
  - !ruby/object:Gem::Version
348
348
  version: '1.2'
349
349
  - !ruby/object:Gem::Dependency
350
350
  name: thor
351
351
  requirement: !ruby/object:Gem::Requirement
352
352
  requirements:
353
- - - ~>
353
+ - - "~>"
354
354
  - !ruby/object:Gem::Version
355
355
  version: '0.16'
356
356
  type: :runtime
357
357
  prerelease: false
358
358
  version_requirements: !ruby/object:Gem::Requirement
359
359
  requirements:
360
- - - ~>
360
+ - - "~>"
361
361
  - !ruby/object:Gem::Version
362
362
  version: '0.16'
363
363
  - !ruby/object:Gem::Dependency
364
364
  name: uglifier
365
365
  requirement: !ruby/object:Gem::Requirement
366
366
  requirements:
367
- - - ~>
367
+ - - "~>"
368
368
  - !ruby/object:Gem::Version
369
369
  version: '1.3'
370
370
  type: :runtime
371
371
  prerelease: false
372
372
  version_requirements: !ruby/object:Gem::Requirement
373
373
  requirements:
374
- - - ~>
374
+ - - "~>"
375
375
  - !ruby/object:Gem::Version
376
376
  version: '1.3'
377
377
  - !ruby/object:Gem::Dependency
378
378
  name: xapian-fu
379
379
  requirement: !ruby/object:Gem::Requirement
380
380
  requirements:
381
- - - ~>
381
+ - - "~>"
382
382
  - !ruby/object:Gem::Version
383
383
  version: '1.5'
384
384
  type: :runtime
385
385
  prerelease: false
386
386
  version_requirements: !ruby/object:Gem::Requirement
387
387
  requirements:
388
- - - ~>
388
+ - - "~>"
389
389
  - !ruby/object:Gem::Version
390
390
  version: '1.5'
391
391
  - !ruby/object:Gem::Dependency
392
392
  name: yajl-ruby
393
393
  requirement: !ruby/object:Gem::Requirement
394
394
  requirements:
395
- - - ~>
395
+ - - "~>"
396
396
  - !ruby/object:Gem::Version
397
397
  version: '1.1'
398
398
  type: :runtime
399
399
  prerelease: false
400
400
  version_requirements: !ruby/object:Gem::Requirement
401
401
  requirements:
402
- - - ~>
402
+ - - "~>"
403
403
  - !ruby/object:Gem::Version
404
404
  version: '1.1'
405
405
  - !ruby/object:Gem::Dependency
406
406
  name: minitest
407
407
  requirement: !ruby/object:Gem::Requirement
408
408
  requirements:
409
- - - ~>
409
+ - - "~>"
410
410
  - !ruby/object:Gem::Version
411
411
  version: 4.7.0
412
412
  type: :development
413
413
  prerelease: false
414
414
  version_requirements: !ruby/object:Gem::Requirement
415
415
  requirements:
416
- - - ~>
416
+ - - "~>"
417
417
  - !ruby/object:Gem::Version
418
418
  version: 4.7.0
419
419
  - !ruby/object:Gem::Dependency
420
420
  name: minitest-colorize
421
421
  requirement: !ruby/object:Gem::Requirement
422
422
  requirements:
423
- - - ~>
423
+ - - "~>"
424
424
  - !ruby/object:Gem::Version
425
425
  version: 0.0.5
426
426
  type: :development
427
427
  prerelease: false
428
428
  version_requirements: !ruby/object:Gem::Requirement
429
429
  requirements:
430
- - - ~>
430
+ - - "~>"
431
431
  - !ruby/object:Gem::Version
432
432
  version: 0.0.5
433
+ - !ruby/object:Gem::Dependency
434
+ name: timecop
435
+ requirement: !ruby/object:Gem::Requirement
436
+ requirements:
437
+ - - "~>"
438
+ - !ruby/object:Gem::Version
439
+ version: '0.7'
440
+ type: :development
441
+ prerelease: false
442
+ version_requirements: !ruby/object:Gem::Requirement
443
+ requirements:
444
+ - - "~>"
445
+ - !ruby/object:Gem::Version
446
+ version: '0.7'
433
447
  - !ruby/object:Gem::Dependency
434
448
  name: mocha
435
449
  requirement: !ruby/object:Gem::Requirement
436
450
  requirements:
437
- - - ~>
451
+ - - "~>"
438
452
  - !ruby/object:Gem::Version
439
453
  version: 0.13.2
440
454
  type: :development
441
455
  prerelease: false
442
456
  version_requirements: !ruby/object:Gem::Requirement
443
457
  requirements:
444
- - - ~>
458
+ - - "~>"
445
459
  - !ruby/object:Gem::Version
446
460
  version: 0.13.2
447
461
  - !ruby/object:Gem::Dependency
448
462
  name: rack-test
449
463
  requirement: !ruby/object:Gem::Requirement
450
464
  requirements:
451
- - - ~>
465
+ - - "~>"
452
466
  - !ruby/object:Gem::Version
453
467
  version: '0.5'
454
468
  type: :development
455
469
  prerelease: false
456
470
  version_requirements: !ruby/object:Gem::Requirement
457
471
  requirements:
458
- - - ~>
472
+ - - "~>"
459
473
  - !ruby/object:Gem::Version
460
474
  version: '0.5'
461
475
  description: Spontaneous is a next-generation Ruby CMS
@@ -466,10 +480,10 @@ extensions: []
466
480
  extra_rdoc_files:
467
481
  - LICENSE
468
482
  files:
469
- - .gitignore
470
- - .locat
471
- - .travis.yml
472
- - .travis/gemfiles/Gemfile.empty
483
+ - ".gitignore"
484
+ - ".locat"
485
+ - ".travis.yml"
486
+ - ".travis/gemfiles/Gemfile.empty"
473
487
  - CHANGELOG.md
474
488
  - Gemfile
475
489
  - LICENSE
@@ -570,6 +584,7 @@ files:
570
584
  - application/js/vendor/diff_match_patch.js
571
585
  - application/js/vendor/jquery-ui-1.8.18.custom.min.js
572
586
  - application/js/vendor/jquery.js
587
+ - application/js/vendor/jquery.velocity.min.js
573
588
  - application/js/vendor/js.class-2.1.5.min.js
574
589
  - application/js/views.js
575
590
  - application/js/views/box_view.js
@@ -581,7 +596,7 @@ files:
581
596
  - application/static/editing-textarea-resize-s-b5af62365eb7e19ea4beccf7242d508e.png
582
597
  - application/static/editing-texture-1-42b06a3439752490988f30f2a06d5e7c.png
583
598
  - application/static/favicon.ico
584
- - application/static/font/fontawesome-webfont-1c66a4738b40ef0f6b1abca0ba9a796d.ttf
599
+ - application/static/font/fontawesome-webfont-4f0022f25672c7f501c339cbf98d9117.ttf
585
600
  - application/static/location-arrow-c1c1d3ca472481c61a0a5f8cb289d743.png
586
601
  - application/static/logo-400px-transparent.png
587
602
  - application/static/loop_alt1-white-7894b458528e92216196cae26b4c2c96.svg
@@ -624,6 +639,9 @@ files:
624
639
  - db/migrations/20130116220423_add_index_to_archive.rb
625
640
  - db/migrations/20130813111009_increase_path_length.rb
626
641
  - db/migrations/20131104101935_site_must_publish_all.rb
642
+ - db/migrations/20140506171823_add_index_to_target_id.rb
643
+ - db/migrations/20140514090204_add_content_hash.rb
644
+ - db/migrations/20140519150253_add_content_hash_timestamp.rb
627
645
  - docs/recipe-interface-screenshot.png
628
646
  - gem-public_cert.pem
629
647
  - lib/spontaneous.rb
@@ -646,6 +664,10 @@ files:
646
664
  - lib/spontaneous/cli/fields.rb
647
665
  - lib/spontaneous/cli/generate.rb
648
666
  - lib/spontaneous/cli/init.rb
667
+ - lib/spontaneous/cli/init/db.rb
668
+ - lib/spontaneous/cli/init/mysql.rb
669
+ - lib/spontaneous/cli/init/postgresql.rb
670
+ - lib/spontaneous/cli/init/sqlite.rb
649
671
  - lib/spontaneous/cli/media.rb
650
672
  - lib/spontaneous/cli/migrate.rb
651
673
  - lib/spontaneous/cli/server.rb
@@ -723,19 +745,23 @@ files:
723
745
  - lib/spontaneous/generators/site/assets/js/site.js
724
746
  - lib/spontaneous/generators/site/config/back.ru
725
747
  - lib/spontaneous/generators/site/config/boot.rb
726
- - lib/spontaneous/generators/site/config/database.yml.tt
727
748
  - lib/spontaneous/generators/site/config/deploy.rb.tt
728
749
  - lib/spontaneous/generators/site/config/environment.rb.tt
729
750
  - lib/spontaneous/generators/site/config/environments/development.rb.tt
730
751
  - lib/spontaneous/generators/site/config/environments/production.rb.tt
731
752
  - lib/spontaneous/generators/site/config/front.ru
732
- - lib/spontaneous/generators/site/config/indexes.rb.tt
753
+ - lib/spontaneous/generators/site/config/initializers/indexes.rb.tt
754
+ - lib/spontaneous/generators/site/config/initializers/publishing.rb.tt
733
755
  - lib/spontaneous/generators/site/config/schema.yml
734
756
  - lib/spontaneous/generators/site/config/user_levels.yml
757
+ - lib/spontaneous/generators/site/db/mysql2.yml.tt
758
+ - lib/spontaneous/generators/site/db/postgres.yml.tt
759
+ - lib/spontaneous/generators/site/db/sqlite3.yml.tt
735
760
  - lib/spontaneous/generators/site/lib/content.rb.tt
736
761
  - lib/spontaneous/generators/site/lib/tasks/site.rake.tt
737
762
  - lib/spontaneous/generators/site/public/README.md
738
763
  - lib/spontaneous/generators/site/public/favicon.ico
764
+ - lib/spontaneous/generators/site/public/humans.txt.tt
739
765
  - lib/spontaneous/generators/site/public/robots.txt
740
766
  - lib/spontaneous/generators/site/schema/box.rb.tt
741
767
  - lib/spontaneous/generators/site/schema/page.rb.tt
@@ -771,7 +797,9 @@ files:
771
797
  - lib/spontaneous/model/core.rb
772
798
  - lib/spontaneous/model/core/aliases.rb
773
799
  - lib/spontaneous/model/core/boxes.rb
800
+ - lib/spontaneous/model/core/cascading_change.rb
774
801
  - lib/spontaneous/model/core/content_groups.rb
802
+ - lib/spontaneous/model/core/content_hash.rb
775
803
  - lib/spontaneous/model/core/editor_class.rb
776
804
  - lib/spontaneous/model/core/entries.rb
777
805
  - lib/spontaneous/model/core/entry.rb
@@ -799,6 +827,7 @@ files:
799
827
  - lib/spontaneous/model/page/locks.rb
800
828
  - lib/spontaneous/model/page/page_tree.rb
801
829
  - lib/spontaneous/model/page/paths.rb
830
+ - lib/spontaneous/model/page/singleton.rb
802
831
  - lib/spontaneous/model/page/site_map.rb
803
832
  - lib/spontaneous/model/page/site_timestamps.rb
804
833
  - lib/spontaneous/model/piece.rb
@@ -848,8 +877,22 @@ files:
848
877
  - lib/spontaneous/publishing.rb
849
878
  - lib/spontaneous/publishing/event_client.rb
850
879
  - lib/spontaneous/publishing/immediate.rb
880
+ - lib/spontaneous/publishing/pipeline.rb
881
+ - lib/spontaneous/publishing/progress.rb
882
+ - lib/spontaneous/publishing/publish.rb
883
+ - lib/spontaneous/publishing/rerender.rb
851
884
  - lib/spontaneous/publishing/revision.rb
852
885
  - lib/spontaneous/publishing/simultaneous.rb
886
+ - lib/spontaneous/publishing/steps.rb
887
+ - lib/spontaneous/publishing/steps/activate_revision.rb
888
+ - lib/spontaneous/publishing/steps/archive_old_revisions.rb
889
+ - lib/spontaneous/publishing/steps/base_step.rb
890
+ - lib/spontaneous/publishing/steps/copy_static_files.rb
891
+ - lib/spontaneous/publishing/steps/create_revision_directory.rb
892
+ - lib/spontaneous/publishing/steps/generate_rackup_file.rb
893
+ - lib/spontaneous/publishing/steps/generate_search_indexes.rb
894
+ - lib/spontaneous/publishing/steps/render_revision.rb
895
+ - lib/spontaneous/publishing/steps/write_revision_file.rb
853
896
  - lib/spontaneous/publishing/threaded.rb
854
897
  - lib/spontaneous/rack.rb
855
898
  - lib/spontaneous/rack/asset_server.rb
@@ -883,6 +926,7 @@ files:
883
926
  - lib/spontaneous/rack/middleware/csrf.rb
884
927
  - lib/spontaneous/rack/middleware/reloader.rb
885
928
  - lib/spontaneous/rack/middleware/scope.rb
929
+ - lib/spontaneous/rack/middleware/transaction.rb
886
930
  - lib/spontaneous/rack/page_controller.rb
887
931
  - lib/spontaneous/rack/public.rb
888
932
  - lib/spontaneous/rack/sse.rb
@@ -998,6 +1042,9 @@ files:
998
1042
  - test/fixtures/example_application/config/front.rb
999
1043
  - test/fixtures/example_application/config/front.ru
1000
1044
  - test/fixtures/example_application/config/front.yml
1045
+ - test/fixtures/example_application/config/initializers/initializer1.rb
1046
+ - test/fixtures/example_application/config/initializers/initializer2.rb
1047
+ - test/fixtures/example_application/config/initializers/publishing.rb
1001
1048
  - test/fixtures/example_application/config/schema.yml
1002
1049
  - test/fixtures/example_application/config/unicorn.rb
1003
1050
  - test/fixtures/example_application/config/user_levels.yml
@@ -1082,7 +1129,7 @@ files:
1082
1129
  - test/fixtures/schema_modification/schema/page.rb
1083
1130
  - test/fixtures/schema_modification/schema/piece.rb
1084
1131
  - test/fixtures/search/config/database.yml
1085
- - test/fixtures/search/config/indexes.rb
1132
+ - test/fixtures/search/config/initializers/indexes.rb
1086
1133
  - test/fixtures/serialisation/class_hash.yaml.erb
1087
1134
  - test/fixtures/serialisation/root_hash.yaml.erb
1088
1135
  - test/fixtures/sharding/rose.jpg
@@ -1198,6 +1245,7 @@ files:
1198
1245
  - test/unit/test_changesets.rb
1199
1246
  - test/unit/test_config.rb
1200
1247
  - test/unit/test_content.rb
1248
+ - test/unit/test_content_hash.rb
1201
1249
  - test/unit/test_content_inheritance.rb
1202
1250
  - test/unit/test_context.rb
1203
1251
  - test/unit/test_controllers.rb
@@ -1207,7 +1255,6 @@ files:
1207
1255
  - test/unit/test_extensions.rb
1208
1256
  - test/unit/test_features.rb
1209
1257
  - test/unit/test_fields.rb
1210
- - test/unit/test_formats.rb
1211
1258
  - test/unit/test_generators.rb
1212
1259
  - test/unit/test_helpers.rb
1213
1260
  - test/unit/test_image_size.rb
@@ -1217,18 +1264,20 @@ files:
1217
1264
  - test/unit/test_media.rb
1218
1265
  - test/unit/test_modifications.rb
1219
1266
  - test/unit/test_output_store.rb
1267
+ - test/unit/test_outputs.rb
1220
1268
  - test/unit/test_page.rb
1221
1269
  - test/unit/test_permissions.rb
1222
1270
  - test/unit/test_piece.rb
1223
1271
  - test/unit/test_plugins.rb
1224
1272
  - test/unit/test_prototype_set.rb
1225
1273
  - test/unit/test_prototypes.rb
1226
- - test/unit/test_publishing.rb
1274
+ - test/unit/test_publishing_pipeline.rb
1227
1275
  - test/unit/test_render.rb
1228
1276
  - test/unit/test_revisions.rb
1229
1277
  - test/unit/test_schema.rb
1230
1278
  - test/unit/test_search.rb
1231
1279
  - test/unit/test_serialisation.rb
1280
+ - test/unit/test_singletons.rb
1232
1281
  - test/unit/test_site.rb
1233
1282
  - test/unit/test_skeptick.rb
1234
1283
  - test/unit/test_storage.rb
@@ -1242,17 +1291,17 @@ licenses: []
1242
1291
  metadata: {}
1243
1292
  post_install_message:
1244
1293
  rdoc_options:
1245
- - --charset=UTF-8
1294
+ - "--charset=UTF-8"
1246
1295
  require_paths:
1247
1296
  - lib
1248
1297
  required_ruby_version: !ruby/object:Gem::Requirement
1249
1298
  requirements:
1250
- - - '>='
1299
+ - - ">="
1251
1300
  - !ruby/object:Gem::Version
1252
- version: 1.9.3
1301
+ version: 2.0.0
1253
1302
  required_rubygems_version: !ruby/object:Gem::Requirement
1254
1303
  requirements:
1255
- - - '>'
1304
+ - - ">"
1256
1305
  - !ruby/object:Gem::Version
1257
1306
  version: 1.3.1
1258
1307
  requirements: []
@@ -1332,6 +1381,9 @@ test_files:
1332
1381
  - test/fixtures/example_application/config/front.rb
1333
1382
  - test/fixtures/example_application/config/front.ru
1334
1383
  - test/fixtures/example_application/config/front.yml
1384
+ - test/fixtures/example_application/config/initializers/initializer1.rb
1385
+ - test/fixtures/example_application/config/initializers/initializer2.rb
1386
+ - test/fixtures/example_application/config/initializers/publishing.rb
1335
1387
  - test/fixtures/example_application/config/schema.yml
1336
1388
  - test/fixtures/example_application/config/unicorn.rb
1337
1389
  - test/fixtures/example_application/config/user_levels.yml
@@ -1416,7 +1468,7 @@ test_files:
1416
1468
  - test/fixtures/schema_modification/schema/page.rb
1417
1469
  - test/fixtures/schema_modification/schema/piece.rb
1418
1470
  - test/fixtures/search/config/database.yml
1419
- - test/fixtures/search/config/indexes.rb
1471
+ - test/fixtures/search/config/initializers/indexes.rb
1420
1472
  - test/fixtures/serialisation/class_hash.yaml.erb
1421
1473
  - test/fixtures/serialisation/root_hash.yaml.erb
1422
1474
  - test/fixtures/sharding/rose.jpg
@@ -1532,6 +1584,7 @@ test_files:
1532
1584
  - test/unit/test_changesets.rb
1533
1585
  - test/unit/test_config.rb
1534
1586
  - test/unit/test_content.rb
1587
+ - test/unit/test_content_hash.rb
1535
1588
  - test/unit/test_content_inheritance.rb
1536
1589
  - test/unit/test_context.rb
1537
1590
  - test/unit/test_controllers.rb
@@ -1541,7 +1594,6 @@ test_files:
1541
1594
  - test/unit/test_extensions.rb
1542
1595
  - test/unit/test_features.rb
1543
1596
  - test/unit/test_fields.rb
1544
- - test/unit/test_formats.rb
1545
1597
  - test/unit/test_generators.rb
1546
1598
  - test/unit/test_helpers.rb
1547
1599
  - test/unit/test_image_size.rb
@@ -1551,18 +1603,20 @@ test_files:
1551
1603
  - test/unit/test_media.rb
1552
1604
  - test/unit/test_modifications.rb
1553
1605
  - test/unit/test_output_store.rb
1606
+ - test/unit/test_outputs.rb
1554
1607
  - test/unit/test_page.rb
1555
1608
  - test/unit/test_permissions.rb
1556
1609
  - test/unit/test_piece.rb
1557
1610
  - test/unit/test_plugins.rb
1558
1611
  - test/unit/test_prototype_set.rb
1559
1612
  - test/unit/test_prototypes.rb
1560
- - test/unit/test_publishing.rb
1613
+ - test/unit/test_publishing_pipeline.rb
1561
1614
  - test/unit/test_render.rb
1562
1615
  - test/unit/test_revisions.rb
1563
1616
  - test/unit/test_schema.rb
1564
1617
  - test/unit/test_search.rb
1565
1618
  - test/unit/test_serialisation.rb
1619
+ - test/unit/test_singletons.rb
1566
1620
  - test/unit/test_site.rb
1567
1621
  - test/unit/test_skeptick.rb
1568
1622
  - test/unit/test_storage.rb