hobo 0.7.5 → 0.8

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 (212) hide show
  1. data/{hobo_files/plugin/CHANGES.txt → CHANGES.txt} +391 -0
  2. data/Manifest +146 -0
  3. data/{hobo_files/plugin/README → README} +0 -0
  4. data/bin/hobo +13 -26
  5. data/dryml_generators/rapid/cards.dryml.erb +55 -0
  6. data/dryml_generators/rapid/forms.dryml.erb +43 -0
  7. data/dryml_generators/rapid/pages.dryml.erb +284 -0
  8. data/hobo.gemspec +168 -0
  9. data/init.rb +9 -0
  10. data/lib/action_view_extensions/helpers/tag_helper.rb +7 -0
  11. data/lib/active_record/association_collection.rb +54 -0
  12. data/{hobo_files/plugin/lib → lib}/active_record/association_proxy.rb +12 -4
  13. data/{hobo_files/plugin/lib → lib}/active_record/association_reflection.rb +7 -1
  14. data/{hobo_files/plugin/lib → lib}/extensions/test_case.rb +17 -17
  15. data/{hobo_files/plugin/lib → lib}/hobo.rb +193 -100
  16. data/{hobo_files/plugin/lib → lib}/hobo/authentication_support.rb +8 -8
  17. data/{hobo_files/plugin/lib → lib}/hobo/bundle.rb +90 -89
  18. data/{hobo_files/plugin/lib → lib}/hobo/composite_model.rb +21 -21
  19. data/{hobo_files/plugin/lib → lib}/hobo/controller.rb +38 -25
  20. data/{hobo_files/plugin/lib → lib}/hobo/dev_controller.rb +10 -6
  21. data/lib/hobo/dryml.rb +167 -0
  22. data/{hobo_files/plugin/lib → lib}/hobo/dryml/dryml_builder.rb +28 -25
  23. data/lib/hobo/dryml/dryml_generator.rb +210 -0
  24. data/{hobo_files/plugin/lib → lib}/hobo/dryml/dryml_support_controller.rb +1 -1
  25. data/lib/hobo/dryml/parser.rb +3 -0
  26. data/{hobo_files/plugin/lib → lib}/hobo/dryml/parser/attribute.rb +6 -6
  27. data/{hobo_files/plugin/lib → lib}/hobo/dryml/parser/base_parser.rb +16 -16
  28. data/lib/hobo/dryml/parser/document.rb +57 -0
  29. data/{hobo_files/plugin/lib → lib}/hobo/dryml/parser/element.rb +7 -7
  30. data/{hobo_files/plugin/lib → lib}/hobo/dryml/parser/elements.rb +9 -9
  31. data/{hobo_files/plugin/lib → lib}/hobo/dryml/parser/source.rb +3 -3
  32. data/{hobo_files/plugin/lib → lib}/hobo/dryml/parser/text.rb +3 -3
  33. data/{hobo_files/plugin/lib → lib}/hobo/dryml/parser/tree_parser.rb +3 -3
  34. data/{hobo_files/plugin/lib → lib}/hobo/dryml/part_context.rb +26 -26
  35. data/{hobo_files/plugin/lib → lib}/hobo/dryml/scoped_variables.rb +15 -15
  36. data/{hobo_files/plugin/lib → lib}/hobo/dryml/tag_parameters.rb +10 -10
  37. data/{hobo_files/plugin/lib → lib}/hobo/dryml/taglib.rb +43 -37
  38. data/{hobo_files/plugin/lib → lib}/hobo/dryml/template.rb +290 -208
  39. data/{hobo_files/plugin/lib → lib}/hobo/dryml/template_environment.rb +173 -115
  40. data/{hobo_files/plugin/lib → lib}/hobo/dryml/template_handler.rb +19 -24
  41. data/lib/hobo/find_for.rb +95 -0
  42. data/{hobo_files/plugin/lib → lib}/hobo/generator.rb +2 -1
  43. data/{hobo_files/plugin/lib → lib}/hobo/guest.rb +12 -4
  44. data/{hobo_files/plugin/lib → lib}/hobo/hobo_helper.rb +146 -117
  45. data/lib/hobo/include_in_save.rb +43 -0
  46. data/lib/hobo/lifecycles.rb +94 -0
  47. data/lib/hobo/lifecycles/actions.rb +73 -0
  48. data/lib/hobo/lifecycles/creator.rb +76 -0
  49. data/lib/hobo/lifecycles/lifecycle.rb +205 -0
  50. data/lib/hobo/lifecycles/state.rb +23 -0
  51. data/lib/hobo/lifecycles/transition.rb +66 -0
  52. data/{hobo_files/plugin/lib → lib}/hobo/model.rb +306 -217
  53. data/{hobo_files/plugin/lib → lib}/hobo/model_controller.rb +342 -213
  54. data/{hobo_files/plugin/lib → lib}/hobo/model_router.rb +151 -120
  55. data/{hobo_files/plugin/lib → lib}/hobo/model_support.rb +9 -9
  56. data/{hobo_files/plugin/lib → lib}/hobo/rapid_helper.rb +30 -23
  57. data/{hobo_files/plugin/lib → lib}/hobo/scopes.rb +22 -68
  58. data/{hobo_files/plugin/lib → lib}/hobo/scopes/apply_scopes.rb +5 -5
  59. data/lib/hobo/scopes/association_proxy_extensions.rb +47 -0
  60. data/{hobo_files/plugin/lib → lib}/hobo/scopes/automatic_scopes.rb +104 -79
  61. data/lib/hobo/scopes/named_scope_extensions.rb +27 -0
  62. data/{hobo_files/plugin/lib → lib}/hobo/static_tags +1 -11
  63. data/{hobo_files/plugin/lib → lib}/hobo/undefined.rb +1 -1
  64. data/{hobo_files/plugin/lib → lib}/hobo/undefined_access_error.rb +0 -0
  65. data/{hobo_files/plugin/lib → lib}/hobo/user.rb +27 -25
  66. data/{hobo_files/plugin/lib → lib}/hobo/user_controller.rb +80 -34
  67. data/{hobo_files/plugin/generators → rails_generators}/hobo/hobo_generator.rb +7 -7
  68. data/rails_generators/hobo/templates/application.css +0 -0
  69. data/{hobo_files/plugin/generators → rails_generators}/hobo/templates/application.dryml +0 -2
  70. data/{hobo_files/plugin/generators → rails_generators}/hobo/templates/dryml-support.js +0 -0
  71. data/{hobo_files/plugin/generators → rails_generators}/hobo/templates/guest.rb +0 -0
  72. data/rails_generators/hobo/templates/initializer.rb +9 -0
  73. data/{hobo_files/plugin/generators → rails_generators}/hobo_front_controller/USAGE +0 -0
  74. data/{hobo_files/plugin/generators → rails_generators}/hobo_front_controller/hobo_front_controller_generator.rb +1 -3
  75. data/{hobo_files/plugin/generators → rails_generators}/hobo_front_controller/templates/controller.rb +1 -1
  76. data/{hobo_files/plugin/generators → rails_generators}/hobo_front_controller/templates/functional_test.rb +0 -0
  77. data/{hobo_files/plugin/generators → rails_generators}/hobo_front_controller/templates/helper.rb +0 -0
  78. data/rails_generators/hobo_front_controller/templates/index.dryml +25 -0
  79. data/{hobo_files/plugin/generators → rails_generators}/hobo_model/USAGE +0 -0
  80. data/{hobo_files/plugin/generators → rails_generators}/hobo_model/hobo_model_generator.rb +0 -0
  81. data/{hobo_files/plugin/generators → rails_generators}/hobo_model/templates/fixtures.yml +0 -0
  82. data/{hobo_files/plugin/generators → rails_generators}/hobo_model/templates/model.rb +0 -0
  83. data/{hobo_files/plugin/generators → rails_generators}/hobo_model/templates/unit_test.rb +0 -0
  84. data/{hobo_files/plugin/generators → rails_generators}/hobo_model_controller/USAGE +0 -0
  85. data/{hobo_files/plugin/generators → rails_generators}/hobo_model_controller/hobo_model_controller_generator.rb +0 -7
  86. data/{hobo_files/plugin/generators → rails_generators}/hobo_model_controller/templates/controller.rb +0 -0
  87. data/{hobo_files/plugin/generators → rails_generators}/hobo_model_controller/templates/functional_test.rb +0 -0
  88. data/{hobo_files/plugin/generators → rails_generators}/hobo_model_controller/templates/helper.rb +0 -0
  89. data/{hobo_files/plugin/generators → rails_generators}/hobo_model_resource/hobo_model_resource_generator.rb +0 -0
  90. data/{hobo_files/plugin/generators → rails_generators}/hobo_model_resource/templates/controller.rb +0 -0
  91. data/{hobo_files/plugin/generators → rails_generators}/hobo_model_resource/templates/functional_test.rb +0 -0
  92. data/{hobo_files/plugin/generators → rails_generators}/hobo_model_resource/templates/helper.rb +0 -0
  93. data/{hobo_files/plugin/generators → rails_generators}/hobo_rapid/hobo_rapid_generator.rb +21 -11
  94. data/{hobo_files/plugin/generators → rails_generators}/hobo_rapid/templates/IE7.js +1 -1
  95. data/rails_generators/hobo_rapid/templates/blank.gif +0 -0
  96. data/{hobo_files/plugin/generators → rails_generators}/hobo_rapid/templates/hobo-rapid.css +0 -0
  97. data/{hobo_files/plugin/generators → rails_generators}/hobo_rapid/templates/hobo-rapid.js +175 -104
  98. data/{hobo_files/plugin/generators → rails_generators}/hobo_rapid/templates/lowpro.js +0 -0
  99. data/rails_generators/hobo_rapid/templates/nicEditorIcons.gif +0 -0
  100. data/rails_generators/hobo_rapid/templates/nicedit.js +91 -0
  101. data/{hobo_files/plugin/generators → rails_generators}/hobo_rapid/templates/reset.css +0 -0
  102. data/{hobo_files/plugin/generators → rails_generators}/hobo_rapid/templates/themes/clean/public/images/fieldbg.gif +0 -0
  103. data/{hobo_files/plugin/generators → rails_generators}/hobo_rapid/templates/themes/clean/public/images/pencil.png +0 -0
  104. data/{hobo_files/plugin/generators → rails_generators}/hobo_rapid/templates/themes/clean/public/images/small_close.png +0 -0
  105. data/{hobo_files/plugin/generators → rails_generators}/hobo_rapid/templates/themes/clean/public/images/spinner.gif +0 -0
  106. data/{hobo_files/plugin/generators → rails_generators}/hobo_rapid/templates/themes/clean/public/stylesheets/clean.css +80 -71
  107. data/{hobo_files/plugin/generators → rails_generators}/hobo_rapid/templates/themes/clean/public/stylesheets/rapid-ui.css +6 -1
  108. data/{hobo_files/plugin/generators → rails_generators}/hobo_rapid/templates/themes/clean/views/clean.dryml +4 -4
  109. data/rails_generators/hobo_subsite/hobo_subsite_generator.rb +73 -0
  110. data/rails_generators/hobo_subsite/templates/application.dryml +1 -0
  111. data/rails_generators/hobo_subsite/templates/controller.rb +5 -0
  112. data/rails_generators/hobo_subsite/templates/site_taglib.dryml +13 -0
  113. data/{hobo_files/plugin/generators → rails_generators}/hobo_user_controller/USAGE +0 -0
  114. data/{hobo_files/plugin/generators → rails_generators}/hobo_user_controller/hobo_user_controller_generator.rb +0 -0
  115. data/{hobo_files/plugin/generators → rails_generators}/hobo_user_controller/templates/controller.rb +0 -0
  116. data/{hobo_files/plugin/generators → rails_generators}/hobo_user_controller/templates/functional_test.rb +0 -0
  117. data/{hobo_files/plugin/generators → rails_generators}/hobo_user_controller/templates/helper.rb +0 -0
  118. data/{hobo_files/plugin/generators → rails_generators}/hobo_user_model/USAGE +0 -0
  119. data/rails_generators/hobo_user_model/hobo_user_model_generator.rb +30 -0
  120. data/{hobo_files/plugin/generators → rails_generators}/hobo_user_model/templates/fixtures.yml +0 -0
  121. data/rails_generators/hobo_user_model/templates/forgot_password.erb +10 -0
  122. data/rails_generators/hobo_user_model/templates/mailer.rb +14 -0
  123. data/rails_generators/hobo_user_model/templates/model.rb +55 -0
  124. data/{hobo_files/plugin/generators → rails_generators}/hobo_user_model/templates/unit_test.rb +0 -0
  125. data/script/destroy +14 -0
  126. data/script/generate +14 -0
  127. data/{hobo_files/plugin/taglibs → taglibs}/core.dryml +6 -7
  128. data/{hobo_files/plugin/taglibs → taglibs}/rapid.dryml +36 -67
  129. data/{hobo_files/plugin/taglibs → taglibs}/rapid_document_tags.dryml +7 -24
  130. data/{hobo_files/plugin/taglibs → taglibs}/rapid_editing.dryml +51 -50
  131. data/{hobo_files/plugin/taglibs → taglibs}/rapid_forms.dryml +62 -56
  132. data/taglibs/rapid_generics.dryml +33 -0
  133. data/taglibs/rapid_lifecycles.dryml +43 -0
  134. data/{hobo_files/plugin/taglibs → taglibs}/rapid_navigation.dryml +23 -23
  135. data/taglibs/rapid_pages.dryml +183 -0
  136. data/{hobo_files/plugin/taglibs → taglibs}/rapid_plus.dryml +30 -5
  137. data/{hobo_files/plugin/taglibs → taglibs}/rapid_support.dryml +3 -4
  138. data/taglibs/rapid_user_pages.dryml +179 -0
  139. data/{hobo_files/plugin/tasks → tasks}/environments.rake +0 -0
  140. data/{hobo_files/plugin/tasks → tasks}/fix_dryml.rake +0 -0
  141. data/{hobo_files/plugin/tasks → tasks}/generate_tag_reference.rb +21 -22
  142. data/tasks/hobo_tasks.rake +32 -0
  143. data/test/test_generator_helper.rb +29 -0
  144. data/test/test_helper.rb +1 -0
  145. data/test/test_hobo_model_controller_generator.rb +56 -0
  146. data/{hobo_files/plugin/uninstall.rb → uninstall.rb} +0 -0
  147. metadata +240 -225
  148. data/README.txt +0 -18
  149. data/hobo_files/plugin/LICENSE.txt +0 -22
  150. data/hobo_files/plugin/Rakefile +0 -96
  151. data/hobo_files/plugin/generators/hobo_front_controller/templates/index.dryml +0 -24
  152. data/hobo_files/plugin/generators/hobo_front_controller/templates/search.dryml +0 -19
  153. data/hobo_files/plugin/generators/hobo_rapid/templates/themes/default/public/images/banner.gif +0 -0
  154. data/hobo_files/plugin/generators/hobo_rapid/templates/themes/default/public/images/bkg-bodytop.gif +0 -0
  155. data/hobo_files/plugin/generators/hobo_rapid/templates/themes/default/public/images/bkg-corner-01.gif +0 -0
  156. data/hobo_files/plugin/generators/hobo_rapid/templates/themes/default/public/images/bkg-corner-02.gif +0 -0
  157. data/hobo_files/plugin/generators/hobo_rapid/templates/themes/default/public/images/bkg-corner-03.gif +0 -0
  158. data/hobo_files/plugin/generators/hobo_rapid/templates/themes/default/public/images/bkg-corner-04.gif +0 -0
  159. data/hobo_files/plugin/generators/hobo_rapid/templates/themes/default/public/images/bkg-shadow-bottom.gif +0 -0
  160. data/hobo_files/plugin/generators/hobo_rapid/templates/themes/default/public/images/bkg-shadow-left.gif +0 -0
  161. data/hobo_files/plugin/generators/hobo_rapid/templates/themes/default/public/images/bkg-shadow-right.gif +0 -0
  162. data/hobo_files/plugin/generators/hobo_rapid/templates/themes/default/public/images/bkg-shadow-top.gif +0 -0
  163. data/hobo_files/plugin/generators/hobo_rapid/templates/themes/default/public/images/header-blue.gif +0 -0
  164. data/hobo_files/plugin/generators/hobo_rapid/templates/themes/default/public/images/header-dblue.gif +0 -0
  165. data/hobo_files/plugin/generators/hobo_rapid/templates/themes/default/public/images/header-green.gif +0 -0
  166. data/hobo_files/plugin/generators/hobo_rapid/templates/themes/default/public/images/header-purple.gif +0 -0
  167. data/hobo_files/plugin/generators/hobo_rapid/templates/themes/default/public/images/header-red.gif +0 -0
  168. data/hobo_files/plugin/generators/hobo_rapid/templates/themes/default/public/images/logo.gif +0 -0
  169. data/hobo_files/plugin/generators/hobo_rapid/templates/themes/default/public/images/plus.png +0 -0
  170. data/hobo_files/plugin/generators/hobo_rapid/templates/themes/default/public/images/spinner.gif +0 -0
  171. data/hobo_files/plugin/generators/hobo_rapid/templates/themes/default/public/images/txt-list-img-dblue.gif +0 -0
  172. data/hobo_files/plugin/generators/hobo_rapid/templates/themes/default/public/images/txt-list-img-green.gif +0 -0
  173. data/hobo_files/plugin/generators/hobo_rapid/templates/themes/default/public/images/txt-list-img-purple.gif +0 -0
  174. data/hobo_files/plugin/generators/hobo_rapid/templates/themes/default/public/images/txt-list-img-red.gif +0 -0
  175. data/hobo_files/plugin/generators/hobo_rapid/templates/themes/default/public/images/window-corner-01.gif +0 -0
  176. data/hobo_files/plugin/generators/hobo_rapid/templates/themes/default/public/images/window-corner-02.gif +0 -0
  177. data/hobo_files/plugin/generators/hobo_rapid/templates/themes/default/public/images/window-corner-03.gif +0 -0
  178. data/hobo_files/plugin/generators/hobo_rapid/templates/themes/default/public/images/window-corner-04.gif +0 -0
  179. data/hobo_files/plugin/generators/hobo_rapid/templates/themes/default/public/images/window-shadow-bottom.gif +0 -0
  180. data/hobo_files/plugin/generators/hobo_rapid/templates/themes/default/public/images/window-shadow-left.gif +0 -0
  181. data/hobo_files/plugin/generators/hobo_rapid/templates/themes/default/public/images/window-shadow-right.gif +0 -0
  182. data/hobo_files/plugin/generators/hobo_rapid/templates/themes/default/public/images/window-shadow-top.gif +0 -0
  183. data/hobo_files/plugin/generators/hobo_rapid/templates/themes/default/public/stylesheets/application.css +0 -400
  184. data/hobo_files/plugin/generators/hobo_rapid/templates/themes/default/views/application.dryml +0 -96
  185. data/hobo_files/plugin/generators/hobo_user_model/hobo_user_model_generator.rb +0 -25
  186. data/hobo_files/plugin/generators/hobo_user_model/templates/model.rb +0 -56
  187. data/hobo_files/plugin/init.rb +0 -101
  188. data/hobo_files/plugin/lib/action_view_extensions/base.rb +0 -15
  189. data/hobo_files/plugin/lib/active_record/has_many_association.rb +0 -55
  190. data/hobo_files/plugin/lib/active_record/has_many_through_association.rb +0 -20
  191. data/hobo_files/plugin/lib/hobo/dryml.rb +0 -165
  192. data/hobo_files/plugin/lib/hobo/dryml/parser/document.rb +0 -53
  193. data/hobo_files/plugin/lib/hobo/scopes/association_proxy_extensions.rb +0 -33
  194. data/hobo_files/plugin/lib/hobo/scopes/defined_scope_proxy_extender.rb +0 -90
  195. data/hobo_files/plugin/lib/hobo/scopes/scope_reflection.rb +0 -18
  196. data/hobo_files/plugin/lib/hobo/scopes/scoped_proxy.rb +0 -55
  197. data/hobo_files/plugin/taglib-docs/core.markdown +0 -165
  198. data/hobo_files/plugin/taglib-docs/rapid.markdown +0 -677
  199. data/hobo_files/plugin/taglib-docs/rapid_document_tags.markdown +0 -240
  200. data/hobo_files/plugin/taglib-docs/rapid_editing.markdown +0 -418
  201. data/hobo_files/plugin/taglib-docs/rapid_forms.markdown +0 -562
  202. data/hobo_files/plugin/taglib-docs/rapid_generics.markdown +0 -187
  203. data/hobo_files/plugin/taglib-docs/rapid_navigation.markdown +0 -214
  204. data/hobo_files/plugin/taglib-docs/rapid_pages.markdown +0 -530
  205. data/hobo_files/plugin/taglib-docs/rapid_plus.markdown +0 -65
  206. data/hobo_files/plugin/taglib-docs/rapid_support.markdown +0 -50
  207. data/hobo_files/plugin/taglib-docs/rapid_user_pages.markdown +0 -129
  208. data/hobo_files/plugin/taglibs/rapid_generics.dryml +0 -117
  209. data/hobo_files/plugin/taglibs/rapid_pages.dryml +0 -359
  210. data/hobo_files/plugin/taglibs/rapid_user_pages.dryml +0 -104
  211. data/hobo_files/plugin/tasks/dump_fixtures.rake +0 -70
  212. data/hobo_files/plugin/tasks/hobo_tasks.rake +0 -17
@@ -1,3 +1,394 @@
1
+ === Hobo 0.8 ===
2
+
3
+ (There's a million changes in this release -- most of the fixes are *not* mentioned)
4
+
5
+ Hobo now works with, and indeed requires, Rails 2.1
6
+
7
+ Hobo can now be used entirely from the gem, and need not be installed in vendor/plugins. To activate Hobo in this manner in an existing Rails app, just run the hobo generator. This will add the Hobo initializer to config/initializers.
8
+
9
+ hobo command
10
+
11
+ Now shows you what it's doing
12
+
13
+ Renamed --create-dbs to --db-create to match the name of the rake task
14
+
15
+
16
+ DRYML
17
+
18
+ DRYML generators
19
+
20
+ Hobo now provides a facility to generate DRYML tags on the fly using normal erb based templates. (the generators run
21
+ when needed in development mode). The taglibs are written to taglibs/auto. Note that the generated tablibs are *not*
22
+ intended to be modified, but rather should be imported and overridden in your application.
23
+
24
+ Extending tags: The extend-with attribute is gone, instead we have the <extend> tag, e.g. instead of the rather
25
+ confusing:
26
+
27
+ <def tag="page" extend-with="app">
28
+ <page-without-app>
29
+
30
+ we now have
31
+
32
+ <extend tag="page">
33
+ <old-page>
34
+
35
+ Also works with polymorphic tags, e.g. <extend tag="card" for="Product">
36
+
37
+ Polymorphic tags: new mechanism for defining polymorphic tags.
38
+
39
+ <def tag="foo" polymorphic> ... "base" definition here ... </def>
40
+
41
+ <def tag="foo" for="Product">
42
+ ... in here you can call <foo> and it's not a recursive call
43
+ but a call to the base definition ...
44
+ </def>
45
+
46
+ "without" attributes: <page without-live-search> is a shorthand for <page><live-search: replace/>. Doesn't sound like
47
+ much but it's great. You'll like it.
48
+
49
+ <set> now respects the 'if' attribute
50
+
51
+ Using 'with' and 'field' on a parameter works more sensibly now -- DRYML will never merge with attributes and field
52
+ attributes
53
+
54
+ New semantics for scoped variables.
55
+
56
+ Scoped variables must be declared at the start of the scope. Assignments and reads always go back to the scope where
57
+ that variable was declared.
58
+
59
+ Fix to <foo:> </foo:> (i.e. one or more whitespace chars) being ignored
60
+
61
+ Removed feature from add_classes helper that was converting all _ to -. Closes #11
62
+
63
+ param='x' now adds class='x' to the output. Closes #22. Doesn't add a css class if the param name is the same as the tag
64
+ name, or is 'default'
65
+
66
+ Fixes to errors when reporting syntax error : )
67
+
68
+ Now raises an error rather than outputting nonsensical name attributes on form inputs
69
+
70
+ Removed incorrect leading '/' on template paths (e.g. in logs, stack traces)
71
+
72
+ Fix -- was accepting close tags that are a prefix of the start tags, e.g. <foo>...</fo>
73
+
74
+
75
+ Rapid tag Library
76
+
77
+ Rapid generators utilising the new DRYML generators feature. Pages, cards, forms, and the main navigation tag, are all
78
+ generated now.
79
+
80
+ New layout mechanism, and simplified <page> tag. Together with the Clean theme, it is not very easy to create column
81
+ based layouts. As a result, the "layout" attribute (to <page>) is gone, as are tags like <aside-layout>.
82
+
83
+ The standard <page> tag now has just a <content:> parameter. Specific pages might add <content-header:> or
84
+ <content-body:> themselves.
85
+
86
+ As a result of the switch to generators and the simplified page-layout stuff, there's quite a lot of change in Rapid.
87
+
88
+ <section with-flash-messages> will include the flash messages at the top of the section *unless* they are rendered by a
89
+ sub-section or have been rendered already
90
+
91
+ Update forms with not render if the user doesn't have permission
92
+
93
+ Removed <nav> tag
94
+
95
+ Changed <a-or-an> to give you 'a hotel' not 'an hotel'
96
+
97
+ <card> now always renders a link if there is a show action. Closes #54
98
+
99
+ <collection> is no longer a polymorphic tag. Drag and drop support moved into separate tag: <sortable-collection>.
100
+
101
+ Got rid of <collection-preview>
102
+
103
+ <stylesheet> tag now calls Rails helper stylesheet_link_tag name to construct the link tag. This change was made so that the
104
+ css files are automatically cached using the timestamp mechanism, e.g. application.css?1218209632. The media attribute is now
105
+ 'screen' instead of 'all' by default
106
+
107
+ Wrapped the output of <count> in a <span class='count'>
108
+
109
+ Renamed <name-for-collection> to <collection-name> and added a dasherize parameter
110
+
111
+ <ul> is gone from Rapid and is just a static tag again. Just do <ul><li repeat>
112
+
113
+ New version of IE7.js (http://ie7-js.googlecode.com/svn/trunk/lib/IE7.js rev 29)
114
+
115
+ <with-fields> (and hence <field-list>) now display fields in the order declared in the model
116
+
117
+ <card> and <show-page> no longer include the created_at timestamp
118
+
119
+ Added labels and titleize attributes to <editor for='HoboFields::EnumString'>
120
+
121
+ Added force (no edit check) attribute to <input>
122
+
123
+ <hidden-form-field> (formerly <hidden-field>) is gone
124
+
125
+ Fix to default label on non-ajax <remote-method-button>
126
+
127
+ Now outputs <span> not <div> to wrap field-with-errors (<div> is invalid)
128
+
129
+ Added <transition-buttons> and <transition-button> (lifecycles)
130
+
131
+ Added <dev-user-changer> when in development mode if there is a user model
132
+
133
+ <with-fields> now skips deleted_at by default
134
+
135
+ <name> now properly respects :name => true (in the model)
136
+
137
+ Optimised <count> so that it doesn't hit the DB for already loaded collections
138
+
139
+ Removed <heading> and <sub-heading> and <article>
140
+
141
+ Allowing <def tag=input for=MyModel> to customise inputs for any belongs_to :my_model
142
+
143
+ Changed 'There are no whatsits' message to 'No whatsits to display'
144
+
145
+ Moved to nicedit (nicedit.com) for HTML inputs and editors. Dropped all TinyMCE stuff. It turns out that this change too will
146
+ be temporary, as nicedit is a bit lacking. It seems that the YUI Editor will be the editor of choice, but we'll support it
147
+ with a plugin, rather than make it part of core Hobo.
148
+
149
+ Added default empty message to <table-plus>
150
+
151
+ Rename <belongs-to-menu-editor> to <select-one-editor> and improvements. Removed "View" link.
152
+
153
+ Made <view> fall back on to_s rather than giving up
154
+
155
+ select-many: disabled options in the select drop down instead of trying to hide them. Fixed a problem in safari where 'choose
156
+ xxx...' would get added by mistake to the list
157
+
158
+ New 'options' attribute for <integer-select-editor>
159
+
160
+ If no <input> tag found, fall back on an input for the COLUMN_TYPE if defined
161
+
162
+
163
+ Model Controller
164
+
165
+ The collection actions, e.g. PostController#comments, PostController#new_comment and PostController#create_comment have
166
+ now been moved to the controller that looks after that particular model, e.g. CommentsController#index_for_post,
167
+ CommentsController#new_for_post and CommentsController#create_for_post. The old way was just plain wrong.
168
+
169
+ Named instance var (e.g. @post) is set in body of web methods
170
+
171
+ Factored out redirect code into #redirect_after_submit
172
+
173
+ Ensure default ordering is respected when paginating
174
+
175
+ Fix to checking in superclass for permission_denied and not_found methods
176
+
177
+
178
+ Migration generator
179
+
180
+ Fixed bug with :null setting
181
+
182
+ Ignore sessions table when using the ActiveRecord session store. Closes #187.
183
+
184
+ Fix to loading models that was causing stack overflows (double alias_method_chain)
185
+
186
+ Ignore schema_migrations table
187
+
188
+ Fix to loading of namespaced models
189
+
190
+ Fix to 'm' option on Windows
191
+
192
+
193
+ hobo_front_conroller -- removed search page
194
+
195
+
196
+ Clean theme
197
+
198
+ Fix to form submit buttons in IE
199
+
200
+ Fixed problem with height of user-changer
201
+
202
+
203
+ hobo-rapid.js
204
+
205
+ Hobo.applyEvents is gone - now uses lowpro for all JS events
206
+
207
+ Only do resetForm on success. Add new onSuccess callback to Hobo.ajaxRequest
208
+
209
+
210
+ Routing
211
+
212
+ Routes are now reloaded automaticaly on every request in development mode, but you can turn this off if it gets slow.
213
+ (See hobo generator, below)
214
+
215
+ Fixes to lifecycle routes, so that object_url(obj, :signup, :method => 'post') works
216
+
217
+ Clean-up so that :format => false doesn't sneak into route options
218
+
219
+ Better error reporting if DB problems occur during routing
220
+
221
+ Doesn't try to load routes when running script/destroy
222
+
223
+
224
+ Subsites
225
+
226
+ New hobo_subsite generator, and introduced app/views/taglibs/front_site.dryml as the taglib for non-subsite pages.
227
+
228
+ The subsite taglib for, say, admin, is not admin_site.dryml, not admin.dryml
229
+
230
+ Added Hobo.subsites method to enumerate available subsites. Used by Hobo::ModelRouter
231
+
232
+ hobo generator
233
+
234
+ Added config option in initializers/hobo.rb to choose if routes are reloaded on every request (default is yes)
235
+
236
+ Hobo::ModelRouter.reload_routes_on_every_request = true
237
+
238
+ Now generates a blank application.css
239
+
240
+
241
+ User controller
242
+
243
+ The standard actions (login, signup, logout, forgot_password, reset_password) now respect the auto_actions declaration.
244
+ Closes #80
245
+
246
+
247
+ Fix to generate_tag_reference.rake so that maruku is not required when not being used
248
+
249
+
250
+ Lifecycles
251
+
252
+ Moving default user lifecycle (signup) from Hobo::User into the generated model file (hobo_user_model generator). Closes #148
253
+
254
+ Fixed problem with lifecycle keys when timezone was not configured. Now raises an error in that case. Closes #146
255
+
256
+ Changing lifecycle action names from signup_page (the form page) and signup (the post action), to signup (the form page) and
257
+ do_signup (th epost action)
258
+
259
+
260
+ Hobo models
261
+
262
+ Removed :manged => true option for has_many :through. ActiveRecord now does behaves like this by default.
263
+
264
+ Adding member_class meta-data when calling find_by_sql. Closes #231.
265
+
266
+ Moved Hobo.models to Hobo::Model.all_models, (also added Hobo::ModelController.all_controllers)
267
+
268
+ Added #foo_is? for every belongs_to :foo
269
+
270
+ record.foo_is?(x) is like record.foo == x but does not force foo to load
271
+
272
+ Have an SEO friendly URL (#to_param) by default on any model with a name attribute
273
+
274
+ Added #acting_user, virtual attribute set to the user that does a user_update, user_save etc.
275
+
276
+ Include virtual attributes (e.g. a #name method) when guessing name, description etc.
277
+
278
+
279
+ HoboFields
280
+
281
+ Removed RedCloth monkey-patch. Not needed (and broken) in RedCloth 4
282
+
283
+ Support :null => true/false on belongs_to
284
+
285
+ Making HoboFields::HtmlString a subclass of HoboFields::Text
286
+
287
+ Adding :decimal as another name for BigDecimal
288
+
289
+
290
+ Removing symlink_plugins script now that it turns out there's no need for symlinks
291
+
292
+ Just clone the whole hobo repo to vendor/plugins/hobo
293
+
294
+
295
+
296
+ hobo_user_model generator
297
+
298
+ Removed permission methods that are never used
299
+
300
+ Replaced set_admin_on_forst_user with the actual code (a one liner) for greater clarity
301
+
302
+ Added forgotton password mailer
303
+
304
+ Adding email address to standard model (for forgotten password email)
305
+
306
+
307
+
308
+ Scopes
309
+
310
+ Goodbye def_scope (Rails now has named_scope). Made automatic scopes work with named_scope
311
+
312
+ apply_scopes now works on other scopes, e.g. User.admin?.apply_scopes(...)
313
+
314
+ Added by_most_recent automatic scope
315
+
316
+ Added is and is_not automatic scopes
317
+
318
+ Made search scope AND terms rather than OR
319
+
320
+
321
+ Removed dump_fixtures rake task. See lighthouse #51
322
+
323
+
324
+ Hobo controller -- adding #call_tag (#render_tag without the render)
325
+
326
+
327
+ Symlinked generators now even work when they call each other (hobo_model_resource => hobo_model)
328
+
329
+
330
+ Hobo support - renamed Enumerable#search to Enumerable#map_and_find. Was clashing with the #search automatic scope
331
+
332
+
333
+ Multi-model forms
334
+
335
+ Hobo's support for multi-model forms has been improved, but not completed as Rails is moving in this direction too, so we
336
+ need to wait and see what happens:
337
+
338
+ DRYML - improvements to DRYML's mechanism to figure out name='...' attributes on form inputs
339
+
340
+ Added experimental support for post.comments_by_user[a_user]
341
+
342
+ Hobo models -- adding include_in_save support for transactional and validated multi-model saves
343
+
344
+ Hobo models -- add origin and origin_attribute accessors, to help DRYML figure out the correct name attribute for input
345
+ tags
346
+
347
+ Tweaks to Hobo.get_field_path semantics
348
+
349
+ Better handling of hashes wrt DRYML implicit context
350
+
351
+
352
+ Valid HTML
353
+
354
+ Various improvements to outputting valid HTML have been made to both DRYML and Rapid
355
+
356
+ Removed use of invalid html attributes like hobo-model-id, hobo-update
357
+
358
+ Empty are output as <br> when using a HTML doctype and <br /> when using XHTML
359
+
360
+
361
+ Fix to site-search for better DB comptibility (Oracle in particular had a problem)
362
+
363
+
364
+ Hack Rails so that generators are found in symlinked plugins (didn't this get fixed once already?\!)
365
+
366
+ Bundles
367
+
368
+ Pass the callers options to the Bundle#defaults
369
+
370
+
371
+ Hobo Modles --
372
+
373
+ Migration generator -- exit with a warning if there are pending migrations
374
+
375
+
376
+ Removed tabla theme
377
+
378
+
379
+ Added Guest#login ("Guest") (used by user-changer menu)
380
+
381
+
382
+ Adding #signed_up? to Hobo::User and Hobo::Guest (opposite of #guest?)
383
+
384
+
385
+ All generators moved to rails_generators directory
386
+
387
+
388
+ Hobo::HoboHelper -- new hook for customising URLs - base_url_for
389
+
390
+
391
+
1
392
  == Hobo 0.7.5 ===
2
393
 
3
394
  Restructuring the git repo -- all the different gems/plugins live
@@ -0,0 +1,146 @@
1
+ bin/hobo
2
+ CHANGES.txt
3
+ dryml_generators/rapid/cards.dryml.erb
4
+ dryml_generators/rapid/forms.dryml.erb
5
+ dryml_generators/rapid/pages.dryml.erb
6
+ init.rb
7
+ lib/action_view_extensions/helpers/tag_helper.rb
8
+ lib/active_record/association_collection.rb
9
+ lib/active_record/association_proxy.rb
10
+ lib/active_record/association_reflection.rb
11
+ lib/extensions/test_case.rb
12
+ lib/hobo/authentication_support.rb
13
+ lib/hobo/bundle.rb
14
+ lib/hobo/composite_model.rb
15
+ lib/hobo/controller.rb
16
+ lib/hobo/dev_controller.rb
17
+ lib/hobo/dryml/dryml_builder.rb
18
+ lib/hobo/dryml/dryml_generator.rb
19
+ lib/hobo/dryml/dryml_support_controller.rb
20
+ lib/hobo/dryml/parser/attribute.rb
21
+ lib/hobo/dryml/parser/base_parser.rb
22
+ lib/hobo/dryml/parser/document.rb
23
+ lib/hobo/dryml/parser/element.rb
24
+ lib/hobo/dryml/parser/elements.rb
25
+ lib/hobo/dryml/parser/source.rb
26
+ lib/hobo/dryml/parser/text.rb
27
+ lib/hobo/dryml/parser/tree_parser.rb
28
+ lib/hobo/dryml/parser.rb
29
+ lib/hobo/dryml/part_context.rb
30
+ lib/hobo/dryml/scoped_variables.rb
31
+ lib/hobo/dryml/tag_parameters.rb
32
+ lib/hobo/dryml/taglib.rb
33
+ lib/hobo/dryml/template.rb
34
+ lib/hobo/dryml/template_environment.rb
35
+ lib/hobo/dryml/template_handler.rb
36
+ lib/hobo/dryml.rb
37
+ lib/hobo/find_for.rb
38
+ lib/hobo/generator.rb
39
+ lib/hobo/guest.rb
40
+ lib/hobo/hobo_helper.rb
41
+ lib/hobo/include_in_save.rb
42
+ lib/hobo/lifecycles/actions.rb
43
+ lib/hobo/lifecycles/creator.rb
44
+ lib/hobo/lifecycles/lifecycle.rb
45
+ lib/hobo/lifecycles/state.rb
46
+ lib/hobo/lifecycles/transition.rb
47
+ lib/hobo/lifecycles.rb
48
+ lib/hobo/model.rb
49
+ lib/hobo/model_controller.rb
50
+ lib/hobo/model_router.rb
51
+ lib/hobo/model_support.rb
52
+ lib/hobo/rapid_helper.rb
53
+ lib/hobo/scopes/apply_scopes.rb
54
+ lib/hobo/scopes/association_proxy_extensions.rb
55
+ lib/hobo/scopes/automatic_scopes.rb
56
+ lib/hobo/scopes/named_scope_extensions.rb
57
+ lib/hobo/scopes.rb
58
+ lib/hobo/static_tags
59
+ lib/hobo/undefined.rb
60
+ lib/hobo/undefined_access_error.rb
61
+ lib/hobo/user.rb
62
+ lib/hobo/user_controller.rb
63
+ lib/hobo.rb
64
+ LICENSE.txt
65
+ Manifest
66
+ rails_generators/hobo/hobo_generator.rb
67
+ rails_generators/hobo/templates/application.css
68
+ rails_generators/hobo/templates/application.dryml
69
+ rails_generators/hobo/templates/dryml-support.js
70
+ rails_generators/hobo/templates/guest.rb
71
+ rails_generators/hobo/templates/initializer.rb
72
+ rails_generators/hobo_front_controller/hobo_front_controller_generator.rb
73
+ rails_generators/hobo_front_controller/templates/controller.rb
74
+ rails_generators/hobo_front_controller/templates/functional_test.rb
75
+ rails_generators/hobo_front_controller/templates/helper.rb
76
+ rails_generators/hobo_front_controller/templates/index.dryml
77
+ rails_generators/hobo_front_controller/USAGE
78
+ rails_generators/hobo_model/hobo_model_generator.rb
79
+ rails_generators/hobo_model/templates/fixtures.yml
80
+ rails_generators/hobo_model/templates/model.rb
81
+ rails_generators/hobo_model/templates/unit_test.rb
82
+ rails_generators/hobo_model/USAGE
83
+ rails_generators/hobo_model_controller/hobo_model_controller_generator.rb
84
+ rails_generators/hobo_model_controller/templates/controller.rb
85
+ rails_generators/hobo_model_controller/templates/functional_test.rb
86
+ rails_generators/hobo_model_controller/templates/helper.rb
87
+ rails_generators/hobo_model_controller/USAGE
88
+ rails_generators/hobo_model_resource/hobo_model_resource_generator.rb
89
+ rails_generators/hobo_model_resource/templates/controller.rb
90
+ rails_generators/hobo_model_resource/templates/functional_test.rb
91
+ rails_generators/hobo_model_resource/templates/helper.rb
92
+ rails_generators/hobo_rapid/hobo_rapid_generator.rb
93
+ rails_generators/hobo_rapid/templates/blank.gif
94
+ rails_generators/hobo_rapid/templates/hobo-rapid.css
95
+ rails_generators/hobo_rapid/templates/hobo-rapid.js
96
+ rails_generators/hobo_rapid/templates/IE7.js
97
+ rails_generators/hobo_rapid/templates/lowpro.js
98
+ rails_generators/hobo_rapid/templates/nicedit.js
99
+ rails_generators/hobo_rapid/templates/nicEditorIcons.gif
100
+ rails_generators/hobo_rapid/templates/reset.css
101
+ rails_generators/hobo_rapid/templates/themes/clean/public/images/fieldbg.gif
102
+ rails_generators/hobo_rapid/templates/themes/clean/public/images/pencil.png
103
+ rails_generators/hobo_rapid/templates/themes/clean/public/images/small_close.png
104
+ rails_generators/hobo_rapid/templates/themes/clean/public/images/spinner.gif
105
+ rails_generators/hobo_rapid/templates/themes/clean/public/stylesheets/clean.css
106
+ rails_generators/hobo_rapid/templates/themes/clean/public/stylesheets/rapid-ui.css
107
+ rails_generators/hobo_rapid/templates/themes/clean/views/clean.dryml
108
+ rails_generators/hobo_subsite/hobo_subsite_generator.rb
109
+ rails_generators/hobo_subsite/templates/application.dryml
110
+ rails_generators/hobo_subsite/templates/controller.rb
111
+ rails_generators/hobo_subsite/templates/site_taglib.dryml
112
+ rails_generators/hobo_user_controller/hobo_user_controller_generator.rb
113
+ rails_generators/hobo_user_controller/templates/controller.rb
114
+ rails_generators/hobo_user_controller/templates/functional_test.rb
115
+ rails_generators/hobo_user_controller/templates/helper.rb
116
+ rails_generators/hobo_user_controller/USAGE
117
+ rails_generators/hobo_user_model/hobo_user_model_generator.rb
118
+ rails_generators/hobo_user_model/templates/fixtures.yml
119
+ rails_generators/hobo_user_model/templates/forgot_password.erb
120
+ rails_generators/hobo_user_model/templates/mailer.rb
121
+ rails_generators/hobo_user_model/templates/model.rb
122
+ rails_generators/hobo_user_model/templates/unit_test.rb
123
+ rails_generators/hobo_user_model/USAGE
124
+ README
125
+ script/destroy
126
+ script/generate
127
+ taglibs/core.dryml
128
+ taglibs/rapid.dryml
129
+ taglibs/rapid_document_tags.dryml
130
+ taglibs/rapid_editing.dryml
131
+ taglibs/rapid_forms.dryml
132
+ taglibs/rapid_generics.dryml
133
+ taglibs/rapid_lifecycles.dryml
134
+ taglibs/rapid_navigation.dryml
135
+ taglibs/rapid_pages.dryml
136
+ taglibs/rapid_plus.dryml
137
+ taglibs/rapid_support.dryml
138
+ taglibs/rapid_user_pages.dryml
139
+ tasks/environments.rake
140
+ tasks/fix_dryml.rake
141
+ tasks/generate_tag_reference.rb
142
+ tasks/hobo_tasks.rake
143
+ test/test_generator_helper.rb
144
+ test/test_helper.rb
145
+ test/test_hobo_model_controller_generator.rb
146
+ uninstall.rb