rails 4.1.4 → 6.0.0

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of rails might be problematic. Click here for more details.

Files changed (284) hide show
  1. checksums.yaml +5 -5
  2. data/README.md +55 -34
  3. metadata +93 -311
  4. data/guides/CHANGELOG.md +0 -41
  5. data/guides/Rakefile +0 -77
  6. data/guides/assets/images/akshaysurve.jpg +0 -0
  7. data/guides/assets/images/belongs_to.png +0 -0
  8. data/guides/assets/images/book_icon.gif +0 -0
  9. data/guides/assets/images/bullet.gif +0 -0
  10. data/guides/assets/images/chapters_icon.gif +0 -0
  11. data/guides/assets/images/check_bullet.gif +0 -0
  12. data/guides/assets/images/credits_pic_blank.gif +0 -0
  13. data/guides/assets/images/csrf.png +0 -0
  14. data/guides/assets/images/edge_badge.png +0 -0
  15. data/guides/assets/images/favicon.ico +0 -0
  16. data/guides/assets/images/feature_tile.gif +0 -0
  17. data/guides/assets/images/footer_tile.gif +0 -0
  18. data/guides/assets/images/fxn.png +0 -0
  19. data/guides/assets/images/getting_started/article_with_comments.png +0 -0
  20. data/guides/assets/images/getting_started/challenge.png +0 -0
  21. data/guides/assets/images/getting_started/confirm_dialog.png +0 -0
  22. data/guides/assets/images/getting_started/forbidden_attributes_for_new_article.png +0 -0
  23. data/guides/assets/images/getting_started/form_with_errors.png +0 -0
  24. data/guides/assets/images/getting_started/index_action_with_edit_link.png +0 -0
  25. data/guides/assets/images/getting_started/new_article.png +0 -0
  26. data/guides/assets/images/getting_started/rails_welcome.png +0 -0
  27. data/guides/assets/images/getting_started/routing_error_no_controller.png +0 -0
  28. data/guides/assets/images/getting_started/routing_error_no_route_matches.png +0 -0
  29. data/guides/assets/images/getting_started/show_action_for_articles.png +0 -0
  30. data/guides/assets/images/getting_started/template_is_missing_articles_new.png +0 -0
  31. data/guides/assets/images/getting_started/unknown_action_create_for_articles.png +0 -0
  32. data/guides/assets/images/getting_started/unknown_action_new_for_articles.png +0 -0
  33. data/guides/assets/images/grey_bullet.gif +0 -0
  34. data/guides/assets/images/habtm.png +0 -0
  35. data/guides/assets/images/has_many.png +0 -0
  36. data/guides/assets/images/has_many_through.png +0 -0
  37. data/guides/assets/images/has_one.png +0 -0
  38. data/guides/assets/images/has_one_through.png +0 -0
  39. data/guides/assets/images/header_backdrop.png +0 -0
  40. data/guides/assets/images/header_tile.gif +0 -0
  41. data/guides/assets/images/i18n/demo_html_safe.png +0 -0
  42. data/guides/assets/images/i18n/demo_localized_pirate.png +0 -0
  43. data/guides/assets/images/i18n/demo_translated_en.png +0 -0
  44. data/guides/assets/images/i18n/demo_translated_pirate.png +0 -0
  45. data/guides/assets/images/i18n/demo_translation_missing.png +0 -0
  46. data/guides/assets/images/i18n/demo_untranslated.png +0 -0
  47. data/guides/assets/images/icons/README +0 -5
  48. data/guides/assets/images/icons/callouts/1.png +0 -0
  49. data/guides/assets/images/icons/callouts/10.png +0 -0
  50. data/guides/assets/images/icons/callouts/11.png +0 -0
  51. data/guides/assets/images/icons/callouts/12.png +0 -0
  52. data/guides/assets/images/icons/callouts/13.png +0 -0
  53. data/guides/assets/images/icons/callouts/14.png +0 -0
  54. data/guides/assets/images/icons/callouts/15.png +0 -0
  55. data/guides/assets/images/icons/callouts/2.png +0 -0
  56. data/guides/assets/images/icons/callouts/3.png +0 -0
  57. data/guides/assets/images/icons/callouts/4.png +0 -0
  58. data/guides/assets/images/icons/callouts/5.png +0 -0
  59. data/guides/assets/images/icons/callouts/6.png +0 -0
  60. data/guides/assets/images/icons/callouts/7.png +0 -0
  61. data/guides/assets/images/icons/callouts/8.png +0 -0
  62. data/guides/assets/images/icons/callouts/9.png +0 -0
  63. data/guides/assets/images/icons/caution.png +0 -0
  64. data/guides/assets/images/icons/example.png +0 -0
  65. data/guides/assets/images/icons/home.png +0 -0
  66. data/guides/assets/images/icons/important.png +0 -0
  67. data/guides/assets/images/icons/next.png +0 -0
  68. data/guides/assets/images/icons/note.png +0 -0
  69. data/guides/assets/images/icons/prev.png +0 -0
  70. data/guides/assets/images/icons/tip.png +0 -0
  71. data/guides/assets/images/icons/up.png +0 -0
  72. data/guides/assets/images/icons/warning.png +0 -0
  73. data/guides/assets/images/nav_arrow.gif +0 -0
  74. data/guides/assets/images/oscardelben.jpg +0 -0
  75. data/guides/assets/images/polymorphic.png +0 -0
  76. data/guides/assets/images/radar.png +0 -0
  77. data/guides/assets/images/rails4_features.png +0 -0
  78. data/guides/assets/images/rails_guides_kindle_cover.jpg +0 -0
  79. data/guides/assets/images/rails_guides_logo.gif +0 -0
  80. data/guides/assets/images/rails_logo_remix.gif +0 -0
  81. data/guides/assets/images/session_fixation.png +0 -0
  82. data/guides/assets/images/tab_grey.gif +0 -0
  83. data/guides/assets/images/tab_info.gif +0 -0
  84. data/guides/assets/images/tab_note.gif +0 -0
  85. data/guides/assets/images/tab_red.gif +0 -0
  86. data/guides/assets/images/tab_yellow.gif +0 -0
  87. data/guides/assets/images/tab_yellow.png +0 -0
  88. data/guides/assets/images/vijaydev.jpg +0 -0
  89. data/guides/assets/javascripts/guides.js +0 -53
  90. data/guides/assets/javascripts/jquery.min.js +0 -4
  91. data/guides/assets/javascripts/responsive-tables.js +0 -43
  92. data/guides/assets/javascripts/syntaxhighlighter/shBrushAS3.js +0 -59
  93. data/guides/assets/javascripts/syntaxhighlighter/shBrushAppleScript.js +0 -75
  94. data/guides/assets/javascripts/syntaxhighlighter/shBrushBash.js +0 -59
  95. data/guides/assets/javascripts/syntaxhighlighter/shBrushCSharp.js +0 -65
  96. data/guides/assets/javascripts/syntaxhighlighter/shBrushColdFusion.js +0 -100
  97. data/guides/assets/javascripts/syntaxhighlighter/shBrushCpp.js +0 -97
  98. data/guides/assets/javascripts/syntaxhighlighter/shBrushCss.js +0 -91
  99. data/guides/assets/javascripts/syntaxhighlighter/shBrushDelphi.js +0 -55
  100. data/guides/assets/javascripts/syntaxhighlighter/shBrushDiff.js +0 -41
  101. data/guides/assets/javascripts/syntaxhighlighter/shBrushErlang.js +0 -52
  102. data/guides/assets/javascripts/syntaxhighlighter/shBrushGroovy.js +0 -67
  103. data/guides/assets/javascripts/syntaxhighlighter/shBrushJScript.js +0 -52
  104. data/guides/assets/javascripts/syntaxhighlighter/shBrushJava.js +0 -57
  105. data/guides/assets/javascripts/syntaxhighlighter/shBrushJavaFX.js +0 -58
  106. data/guides/assets/javascripts/syntaxhighlighter/shBrushPerl.js +0 -72
  107. data/guides/assets/javascripts/syntaxhighlighter/shBrushPhp.js +0 -88
  108. data/guides/assets/javascripts/syntaxhighlighter/shBrushPlain.js +0 -33
  109. data/guides/assets/javascripts/syntaxhighlighter/shBrushPowerShell.js +0 -74
  110. data/guides/assets/javascripts/syntaxhighlighter/shBrushPython.js +0 -64
  111. data/guides/assets/javascripts/syntaxhighlighter/shBrushRuby.js +0 -55
  112. data/guides/assets/javascripts/syntaxhighlighter/shBrushSass.js +0 -94
  113. data/guides/assets/javascripts/syntaxhighlighter/shBrushScala.js +0 -51
  114. data/guides/assets/javascripts/syntaxhighlighter/shBrushSql.js +0 -66
  115. data/guides/assets/javascripts/syntaxhighlighter/shBrushVb.js +0 -56
  116. data/guides/assets/javascripts/syntaxhighlighter/shBrushXml.js +0 -69
  117. data/guides/assets/javascripts/syntaxhighlighter/shCore.js +0 -17
  118. data/guides/assets/stylesheets/fixes.css +0 -16
  119. data/guides/assets/stylesheets/kindle.css +0 -11
  120. data/guides/assets/stylesheets/main.css +0 -710
  121. data/guides/assets/stylesheets/print.css +0 -52
  122. data/guides/assets/stylesheets/reset.css +0 -43
  123. data/guides/assets/stylesheets/responsive-tables.css +0 -50
  124. data/guides/assets/stylesheets/style.css +0 -13
  125. data/guides/assets/stylesheets/syntaxhighlighter/shCore.css +0 -226
  126. data/guides/assets/stylesheets/syntaxhighlighter/shCoreDefault.css +0 -328
  127. data/guides/assets/stylesheets/syntaxhighlighter/shCoreDjango.css +0 -331
  128. data/guides/assets/stylesheets/syntaxhighlighter/shCoreEclipse.css +0 -339
  129. data/guides/assets/stylesheets/syntaxhighlighter/shCoreEmacs.css +0 -324
  130. data/guides/assets/stylesheets/syntaxhighlighter/shCoreFadeToGrey.css +0 -328
  131. data/guides/assets/stylesheets/syntaxhighlighter/shCoreMDUltra.css +0 -324
  132. data/guides/assets/stylesheets/syntaxhighlighter/shCoreMidnight.css +0 -324
  133. data/guides/assets/stylesheets/syntaxhighlighter/shCoreRDark.css +0 -324
  134. data/guides/assets/stylesheets/syntaxhighlighter/shThemeDefault.css +0 -117
  135. data/guides/assets/stylesheets/syntaxhighlighter/shThemeDjango.css +0 -120
  136. data/guides/assets/stylesheets/syntaxhighlighter/shThemeEclipse.css +0 -128
  137. data/guides/assets/stylesheets/syntaxhighlighter/shThemeEmacs.css +0 -113
  138. data/guides/assets/stylesheets/syntaxhighlighter/shThemeFadeToGrey.css +0 -117
  139. data/guides/assets/stylesheets/syntaxhighlighter/shThemeMDUltra.css +0 -113
  140. data/guides/assets/stylesheets/syntaxhighlighter/shThemeMidnight.css +0 -113
  141. data/guides/assets/stylesheets/syntaxhighlighter/shThemeRDark.css +0 -113
  142. data/guides/assets/stylesheets/syntaxhighlighter/shThemeRailsGuides.css +0 -116
  143. data/guides/bug_report_templates/action_controller_gem.rb +0 -47
  144. data/guides/bug_report_templates/action_controller_master.rb +0 -53
  145. data/guides/bug_report_templates/active_record_gem.rb +0 -40
  146. data/guides/bug_report_templates/active_record_master.rb +0 -49
  147. data/guides/code/getting_started/Gemfile +0 -40
  148. data/guides/code/getting_started/Gemfile.lock +0 -125
  149. data/guides/code/getting_started/README.rdoc +0 -28
  150. data/guides/code/getting_started/Rakefile +0 -6
  151. data/guides/code/getting_started/app/assets/javascripts/application.js +0 -15
  152. data/guides/code/getting_started/app/assets/javascripts/comments.js.coffee +0 -3
  153. data/guides/code/getting_started/app/assets/javascripts/posts.js.coffee +0 -3
  154. data/guides/code/getting_started/app/assets/javascripts/welcome.js.coffee +0 -3
  155. data/guides/code/getting_started/app/assets/stylesheets/application.css +0 -13
  156. data/guides/code/getting_started/app/assets/stylesheets/comments.css.scss +0 -3
  157. data/guides/code/getting_started/app/assets/stylesheets/posts.css.scss +0 -3
  158. data/guides/code/getting_started/app/assets/stylesheets/welcome.css.scss +0 -3
  159. data/guides/code/getting_started/app/controllers/application_controller.rb +0 -5
  160. data/guides/code/getting_started/app/controllers/comments_controller.rb +0 -23
  161. data/guides/code/getting_started/app/controllers/posts_controller.rb +0 -53
  162. data/guides/code/getting_started/app/controllers/welcome_controller.rb +0 -4
  163. data/guides/code/getting_started/app/helpers/application_helper.rb +0 -2
  164. data/guides/code/getting_started/app/helpers/comments_helper.rb +0 -2
  165. data/guides/code/getting_started/app/helpers/posts_helper.rb +0 -2
  166. data/guides/code/getting_started/app/helpers/welcome_helper.rb +0 -2
  167. data/guides/code/getting_started/app/models/comment.rb +0 -3
  168. data/guides/code/getting_started/app/models/post.rb +0 -7
  169. data/guides/code/getting_started/app/views/comments/_comment.html.erb +0 -15
  170. data/guides/code/getting_started/app/views/comments/_form.html.erb +0 -13
  171. data/guides/code/getting_started/app/views/layouts/application.html.erb +0 -14
  172. data/guides/code/getting_started/app/views/posts/_form.html.erb +0 -27
  173. data/guides/code/getting_started/app/views/posts/edit.html.erb +0 -5
  174. data/guides/code/getting_started/app/views/posts/index.html.erb +0 -21
  175. data/guides/code/getting_started/app/views/posts/new.html.erb +0 -5
  176. data/guides/code/getting_started/app/views/posts/show.html.erb +0 -18
  177. data/guides/code/getting_started/app/views/welcome/index.html.erb +0 -4
  178. data/guides/code/getting_started/bin/bundle +0 -4
  179. data/guides/code/getting_started/bin/rails +0 -4
  180. data/guides/code/getting_started/bin/rake +0 -4
  181. data/guides/code/getting_started/config/application.rb +0 -18
  182. data/guides/code/getting_started/config/boot.rb +0 -4
  183. data/guides/code/getting_started/config/database.yml +0 -25
  184. data/guides/code/getting_started/config/environment.rb +0 -5
  185. data/guides/code/getting_started/config/environments/development.rb +0 -30
  186. data/guides/code/getting_started/config/environments/production.rb +0 -80
  187. data/guides/code/getting_started/config/environments/test.rb +0 -36
  188. data/guides/code/getting_started/config/initializers/backtrace_silencers.rb +0 -7
  189. data/guides/code/getting_started/config/initializers/filter_parameter_logging.rb +0 -4
  190. data/guides/code/getting_started/config/initializers/inflections.rb +0 -16
  191. data/guides/code/getting_started/config/initializers/locale.rb +0 -9
  192. data/guides/code/getting_started/config/initializers/mime_types.rb +0 -5
  193. data/guides/code/getting_started/config/initializers/secret_token.rb +0 -12
  194. data/guides/code/getting_started/config/initializers/session_store.rb +0 -3
  195. data/guides/code/getting_started/config/initializers/wrap_parameters.rb +0 -14
  196. data/guides/code/getting_started/config/locales/en.yml +0 -23
  197. data/guides/code/getting_started/config/routes.rb +0 -7
  198. data/guides/code/getting_started/config.ru +0 -4
  199. data/guides/code/getting_started/db/migrate/20130122042648_create_posts.rb +0 -10
  200. data/guides/code/getting_started/db/migrate/20130122045842_create_comments.rb +0 -11
  201. data/guides/code/getting_started/db/schema.rb +0 -33
  202. data/guides/code/getting_started/db/seeds.rb +0 -7
  203. data/guides/code/getting_started/public/404.html +0 -60
  204. data/guides/code/getting_started/public/422.html +0 -60
  205. data/guides/code/getting_started/public/500.html +0 -59
  206. data/guides/code/getting_started/public/favicon.ico +0 -0
  207. data/guides/code/getting_started/public/robots.txt +0 -5
  208. data/guides/code/getting_started/test/controllers/comments_controller_test.rb +0 -7
  209. data/guides/code/getting_started/test/controllers/posts_controller_test.rb +0 -7
  210. data/guides/code/getting_started/test/controllers/welcome_controller_test.rb +0 -9
  211. data/guides/code/getting_started/test/fixtures/comments.yml +0 -11
  212. data/guides/code/getting_started/test/fixtures/posts.yml +0 -9
  213. data/guides/code/getting_started/test/helpers/comments_helper_test.rb +0 -4
  214. data/guides/code/getting_started/test/helpers/posts_helper_test.rb +0 -4
  215. data/guides/code/getting_started/test/helpers/welcome_helper_test.rb +0 -4
  216. data/guides/code/getting_started/test/models/comment_test.rb +0 -7
  217. data/guides/code/getting_started/test/models/post_test.rb +0 -7
  218. data/guides/code/getting_started/test/test_helper.rb +0 -12
  219. data/guides/rails_guides/generator.rb +0 -248
  220. data/guides/rails_guides/helpers.rb +0 -53
  221. data/guides/rails_guides/indexer.rb +0 -68
  222. data/guides/rails_guides/kindle.rb +0 -119
  223. data/guides/rails_guides/levenshtein.rb +0 -31
  224. data/guides/rails_guides/markdown/renderer.rb +0 -82
  225. data/guides/rails_guides/markdown.rb +0 -163
  226. data/guides/rails_guides.rb +0 -63
  227. data/guides/source/2_2_release_notes.md +0 -435
  228. data/guides/source/2_3_release_notes.md +0 -621
  229. data/guides/source/3_0_release_notes.md +0 -611
  230. data/guides/source/3_1_release_notes.md +0 -556
  231. data/guides/source/3_2_release_notes.md +0 -565
  232. data/guides/source/4_0_release_notes.md +0 -276
  233. data/guides/source/4_1_release_notes.md +0 -731
  234. data/guides/source/_license.html.erb +0 -2
  235. data/guides/source/_welcome.html.erb +0 -25
  236. data/guides/source/action_controller_overview.md +0 -1175
  237. data/guides/source/action_mailer_basics.md +0 -689
  238. data/guides/source/action_view_overview.md +0 -1610
  239. data/guides/source/active_model_basics.md +0 -200
  240. data/guides/source/active_record_basics.md +0 -373
  241. data/guides/source/active_record_callbacks.md +0 -410
  242. data/guides/source/active_record_querying.md +0 -1773
  243. data/guides/source/active_record_validations.md +0 -1169
  244. data/guides/source/active_support_core_extensions.md +0 -3864
  245. data/guides/source/active_support_instrumentation.md +0 -496
  246. data/guides/source/api_documentation_guidelines.md +0 -315
  247. data/guides/source/asset_pipeline.md +0 -1163
  248. data/guides/source/association_basics.md +0 -2229
  249. data/guides/source/caching_with_rails.md +0 -354
  250. data/guides/source/command_line.md +0 -603
  251. data/guides/source/configuring.md +0 -942
  252. data/guides/source/contributing_to_ruby_on_rails.md +0 -544
  253. data/guides/source/credits.html.erb +0 -80
  254. data/guides/source/debugging_rails_applications.md +0 -707
  255. data/guides/source/development_dependencies_install.md +0 -278
  256. data/guides/source/documents.yaml +0 -193
  257. data/guides/source/engines.md +0 -1391
  258. data/guides/source/form_helpers.md +0 -1001
  259. data/guides/source/generators.md +0 -663
  260. data/guides/source/getting_started.md +0 -1947
  261. data/guides/source/i18n.md +0 -1043
  262. data/guides/source/index.html.erb +0 -27
  263. data/guides/source/initialization.md +0 -657
  264. data/guides/source/kindle/copyright.html.erb +0 -1
  265. data/guides/source/kindle/layout.html.erb +0 -27
  266. data/guides/source/kindle/rails_guides.opf.erb +0 -52
  267. data/guides/source/kindle/toc.html.erb +0 -24
  268. data/guides/source/kindle/toc.ncx.erb +0 -64
  269. data/guides/source/kindle/welcome.html.erb +0 -5
  270. data/guides/source/layout.html.erb +0 -146
  271. data/guides/source/layouts_and_rendering.md +0 -1226
  272. data/guides/source/maintenance_policy.md +0 -56
  273. data/guides/source/migrations.md +0 -1109
  274. data/guides/source/nested_model_forms.md +0 -225
  275. data/guides/source/plugins.md +0 -444
  276. data/guides/source/rails_application_templates.md +0 -248
  277. data/guides/source/rails_on_rack.md +0 -333
  278. data/guides/source/routing.md +0 -1115
  279. data/guides/source/ruby_on_rails_guides_guidelines.md +0 -128
  280. data/guides/source/security.md +0 -1018
  281. data/guides/source/testing.md +0 -1052
  282. data/guides/source/upgrading_ruby_on_rails.md +0 -899
  283. data/guides/source/working_with_javascript_in_rails.md +0 -405
  284. data/guides/w3c_validator.rb +0 -95
@@ -1,278 +0,0 @@
1
- Development Dependencies Install
2
- ================================
3
-
4
- This guide covers how to setup an environment for Ruby on Rails core development.
5
-
6
- After reading this guide, you will know:
7
-
8
- * How to set up your machine for Rails development
9
- * How to run specific groups of unit tests from the Rails test suite
10
- * How the ActiveRecord portion of the Rails test suite operates
11
-
12
- --------------------------------------------------------------------------------
13
-
14
- The Easy Way
15
- ------------
16
-
17
- The easiest and recommended way to get a development environment ready to hack is to use the [Rails development box](https://github.com/rails/rails-dev-box).
18
-
19
- The Hard Way
20
- ------------
21
-
22
- In case you can't use the Rails development box, see section above, these are the steps to manually build a development box for Ruby on Rails core development.
23
-
24
- ### Install Git
25
-
26
- Ruby on Rails uses Git for source code control. The [Git homepage](http://git-scm.com/) has installation instructions. There are a variety of resources on the net that will help you get familiar with Git:
27
-
28
- * [Try Git course](http://try.github.io/) is an interactive course that will teach you the basics.
29
- * The [official Documentation](http://git-scm.com/documentation) is pretty comprehensive and also contains some videos with the basics of Git
30
- * [Everyday Git](http://schacon.github.io/git/everyday.html) will teach you just enough about Git to get by.
31
- * The [PeepCode screencast](https://peepcode.com/products/git) on Git is easier to follow.
32
- * [GitHub](http://help.github.com) offers links to a variety of Git resources.
33
- * [Pro Git](http://git-scm.com/book) is an entire book about Git with a Creative Commons license.
34
-
35
- ### Clone the Ruby on Rails Repository
36
-
37
- Navigate to the folder where you want the Ruby on Rails source code (it will create its own `rails` subdirectory) and run:
38
-
39
- ```bash
40
- $ git clone git://github.com/rails/rails.git
41
- $ cd rails
42
- ```
43
-
44
- ### Set up and Run the Tests
45
-
46
- The test suite must pass with any submitted code. No matter whether you are writing a new patch, or evaluating someone else's, you need to be able to run the tests.
47
-
48
- Install first libxml2 and libxslt together with their development files for Nokogiri. In Ubuntu that's
49
-
50
- ```bash
51
- $ sudo apt-get install libxml2 libxml2-dev libxslt1-dev
52
- ```
53
-
54
- If you are on Fedora or CentOS, you can run
55
-
56
- ```bash
57
- $ sudo yum install libxml2 libxml2-devel libxslt libxslt-devel
58
- ```
59
-
60
- If you are running Arch Linux, you're done with:
61
-
62
- ```bash
63
- $ sudo pacman -S libxml2 libxslt
64
- ```
65
-
66
- On FreeBSD, you just have to run:
67
-
68
- ```bash
69
- # pkg_add -r libxml2 libxslt
70
- ```
71
-
72
- Alternatively, you can install the `textproc/libxml2` and `textproc/libxslt`
73
- ports.
74
-
75
- If you have any problems with these libraries, you can install them manually by compiling the source code. Just follow the instructions at the [Red Hat/CentOS section of the Nokogiri tutorials](http://nokogiri.org/tutorials/installing_nokogiri.html#red_hat__centos) .
76
-
77
- Also, SQLite3 and its development files for the `sqlite3-ruby` gem - in Ubuntu you're done with just
78
-
79
- ```bash
80
- $ sudo apt-get install sqlite3 libsqlite3-dev
81
- ```
82
-
83
- And if you are on Fedora or CentOS, you're done with
84
-
85
- ```bash
86
- $ sudo yum install sqlite3 sqlite3-devel
87
- ```
88
-
89
- If you are on Arch Linux, you will need to run:
90
-
91
- ```bash
92
- $ sudo pacman -S sqlite
93
- ```
94
-
95
- For FreeBSD users, you're done with:
96
-
97
- ```bash
98
- # pkg_add -r sqlite3
99
- ```
100
-
101
- Or compile the `databases/sqlite3` port.
102
-
103
- Get a recent version of [Bundler](http://gembundler.com/)
104
-
105
- ```bash
106
- $ gem install bundler
107
- $ gem update bundler
108
- ```
109
-
110
- and run:
111
-
112
- ```bash
113
- $ bundle install --without db
114
- ```
115
-
116
- This command will install all dependencies except the MySQL and PostgreSQL Ruby drivers. We will come back to these soon.
117
-
118
- NOTE: If you would like to run the tests that use memcached, you need to ensure that you have it installed and running.
119
-
120
- You can use homebrew to install memcached on OSX:
121
-
122
- ```bash
123
- $ brew install memcached
124
- ```
125
-
126
- On Ubuntu you can install it with apt-get:
127
-
128
- ```bash
129
- $ sudo apt-get install memcached
130
- ```
131
-
132
- Or use yum on Fedora or CentOS:
133
-
134
- ```bash
135
- $ sudo yum install memcached
136
- ```
137
-
138
- With the dependencies now installed, you can run the test suite with:
139
-
140
- ```bash
141
- $ bundle exec rake test
142
- ```
143
-
144
- You can also run tests for a specific component, like Action Pack, by going into its directory and executing the same command:
145
-
146
- ```bash
147
- $ cd actionpack
148
- $ bundle exec rake test
149
- ```
150
-
151
- If you want to run the tests located in a specific directory use the `TEST_DIR` environment variable. For example, this will run the tests in the `railties/test/generators` directory only:
152
-
153
- ```bash
154
- $ cd railties
155
- $ TEST_DIR=generators bundle exec rake test
156
- ```
157
-
158
- You can run the tests for a particular file by using:
159
-
160
- ```bash
161
- $ cd actionpack
162
- $ bundle exec ruby -Itest test/template/form_helper_test.rb
163
- ```
164
-
165
- Or, you can run a single test in a particular file:
166
-
167
- ```bash
168
- $ cd actionpack
169
- $ bundle exec ruby -Itest path/to/test.rb -n test_name
170
- ```
171
-
172
- ### Active Record Setup
173
-
174
- The test suite of Active Record attempts to run four times: once for SQLite3, once for each of the two MySQL gems (`mysql` and `mysql2`), and once for PostgreSQL. We are going to see now how to set up the environment for them.
175
-
176
- WARNING: If you're working with Active Record code, you _must_ ensure that the tests pass for at least MySQL, PostgreSQL, and SQLite3. Subtle differences between the various adapters have been behind the rejection of many patches that looked OK when tested only against MySQL.
177
-
178
- #### Database Configuration
179
-
180
- The Active Record test suite requires a custom config file: `activerecord/test/config.yml`. An example is provided in `activerecord/test/config.example.yml` which can be copied and used as needed for your environment.
181
-
182
- #### MySQL and PostgreSQL
183
-
184
- To be able to run the suite for MySQL and PostgreSQL we need their gems. Install first the servers, their client libraries, and their development files. In Ubuntu just run
185
-
186
- ```bash
187
- $ sudo apt-get install mysql-server libmysqlclient15-dev
188
- $ sudo apt-get install postgresql postgresql-client postgresql-contrib libpq-dev
189
- ```
190
-
191
- On Fedora or CentOS, just run:
192
-
193
- ```bash
194
- $ sudo yum install mysql-server mysql-devel
195
- $ sudo yum install postgresql-server postgresql-devel
196
- ```
197
-
198
- If you are running Arch Linux, MySQL isn't supported anymore so you will need to
199
- use MariaDB instead (see [this announcement](https://www.archlinux.org/news/mariadb-replaces-mysql-in-repositories/)):
200
-
201
- ```bash
202
- $ sudo pacman -S mariadb libmariadbclient mariadb-clients
203
- $ sudo pacman -S postgresql postgresql-libs
204
- ```
205
-
206
- FreeBSD users will have to run the following:
207
-
208
- ```bash
209
- # pkg_add -r mysql56-client mysql56-server
210
- # pkg_add -r postgresql92-client postgresql92-server
211
- ```
212
-
213
- Or install them through ports (they are located under the `databases` folder).
214
- If you run into troubles during the installation of MySQL, please see
215
- [the MySQL documentation](http://dev.mysql.com/doc/refman/5.1/en/freebsd-installation.html).
216
-
217
- After that, run:
218
-
219
- ```bash
220
- $ rm .bundle/config
221
- $ bundle install
222
- ```
223
-
224
- First, we need to delete `.bundle/config` because Bundler remembers in that file that we didn't want to install the "db" group (alternatively you can edit the file).
225
-
226
- In order to be able to run the test suite against MySQL you need to create a user named `rails` with privileges on the test databases:
227
-
228
- ```bash
229
- $ mysql -uroot -p
230
-
231
- mysql> CREATE USER 'rails'@'localhost';
232
- mysql> GRANT ALL PRIVILEGES ON activerecord_unittest.*
233
- to 'rails'@'localhost';
234
- mysql> GRANT ALL PRIVILEGES ON activerecord_unittest2.*
235
- to 'rails'@'localhost';
236
- mysql> GRANT ALL PRIVILEGES ON inexistent_activerecord_unittest.*
237
- to 'rails'@'localhost';
238
- ```
239
-
240
- and create the test databases:
241
-
242
- ```bash
243
- $ cd activerecord
244
- $ bundle exec rake mysql:build_databases
245
- ```
246
-
247
- PostgreSQL's authentication works differently. A simple way to set up the development environment for example is to run with your development account
248
-
249
- ```bash
250
- $ sudo -u postgres createuser --superuser $USER
251
- ```
252
-
253
- and then create the test databases with
254
-
255
- ```bash
256
- $ cd activerecord
257
- $ bundle exec rake postgresql:build_databases
258
- ```
259
-
260
- It is possible to build databases for both PostgreSQL and MySQL with
261
-
262
- ```bash
263
- $ cd activerecord
264
- $ bundle exec rake db:create
265
- ```
266
-
267
- You can cleanup the databases using
268
-
269
- ```bash
270
- $ cd activerecord
271
- $ bundle exec rake db:drop
272
- ```
273
-
274
- NOTE: Using the rake task to create the test databases ensures they have the correct character set and collation.
275
-
276
- NOTE: You'll see the following warning (or localized warning) during activating HStore extension in PostgreSQL 9.1.x or earlier: "WARNING: => is deprecated as an operator".
277
-
278
- If you're using another database, check the file `activerecord/test/config.yml` or `activerecord/test/config.example.yml` for default connection information. You can edit `activerecord/test/config.yml` to provide different credentials on your machine if you must, but obviously you should not push any such changes back to Rails.
@@ -1,193 +0,0 @@
1
- -
2
- name: Start Here
3
- documents:
4
- -
5
- name: Getting Started with Rails
6
- url: getting_started.html
7
- description: Everything you need to know to install Rails and create your first application.
8
- -
9
- name: Models
10
- documents:
11
- -
12
- name: Active Record Basics
13
- url: active_record_basics.html
14
- description: This guide will get you started with models, persistence to database and the Active Record pattern and library.
15
- -
16
- name: Rails Database Migrations
17
- url: migrations.html
18
- description: This guide covers how you can use Active Record migrations to alter your database in a structured and organized manner.
19
- -
20
- name: Active Record Validations
21
- url: active_record_validations.html
22
- description: This guide covers how you can use Active Record validations
23
- -
24
- name: Active Record Callbacks
25
- url: active_record_callbacks.html
26
- description: This guide covers how you can use Active Record callbacks.
27
- -
28
- name: Active Record Associations
29
- url: association_basics.html
30
- description: This guide covers all the associations provided by Active Record.
31
- -
32
- name: Active Record Query Interface
33
- url: active_record_querying.html
34
- description: This guide covers the database query interface provided by Active Record.
35
- -
36
- name: Views
37
- documents:
38
- -
39
- name: Action View Overview
40
- url: action_view_overview.html
41
- description: This guide provides an introduction to Action View and introduces a few of the more common view helpers.
42
- work_in_progress: true
43
- -
44
- name: Layouts and Rendering in Rails
45
- url: layouts_and_rendering.html
46
- description: This guide covers the basic layout features of Action Controller and Action View, including rendering and redirecting, using content_for blocks, and working with partials.
47
- -
48
- name: Action View Form Helpers
49
- url: form_helpers.html
50
- description: Guide to using built-in Form helpers.
51
- -
52
- name: Controllers
53
- documents:
54
- -
55
- name: Action Controller Overview
56
- url: action_controller_overview.html
57
- description: This guide covers how controllers work and how they fit into the request cycle in your application. It includes sessions, filters, and cookies, data streaming, and dealing with exceptions raised by a request, among other topics.
58
- -
59
- name: Rails Routing from the Outside In
60
- url: routing.html
61
- description: This guide covers the user-facing features of Rails routing. If you want to understand how to use routing in your own Rails applications, start here.
62
- -
63
- name: Digging Deeper
64
- documents:
65
- -
66
- name: Active Support Core Extensions
67
- url: active_support_core_extensions.html
68
- description: This guide documents the Ruby core extensions defined in Active Support.
69
- -
70
- name: Rails Internationalization API
71
- url: i18n.html
72
- description: This guide covers how to add internationalization to your applications. Your application will be able to translate content to different languages, change pluralization rules, use correct date formats for each country and so on.
73
- -
74
- name: Action Mailer Basics
75
- url: action_mailer_basics.html
76
- description: This guide describes how to use Action Mailer to send and receive emails.
77
- -
78
- name: Testing Rails Applications
79
- url: testing.html
80
- work_in_progress: true
81
- description: This is a rather comprehensive guide to doing both unit and functional tests in Rails. It covers everything from 'What is a test?' to the testing APIs. Enjoy.
82
- -
83
- name: Securing Rails Applications
84
- url: security.html
85
- description: This guide describes common security problems in web applications and how to avoid them with Rails.
86
- -
87
- name: Debugging Rails Applications
88
- url: debugging_rails_applications.html
89
- description: This guide describes how to debug Rails applications. It covers the different ways of achieving this and how to understand what is happening "behind the scenes" of your code.
90
- -
91
- name: Configuring Rails Applications
92
- url: configuring.html
93
- description: This guide covers the basic configuration settings for a Rails application.
94
- -
95
- name: Rails Command Line Tools and Rake Tasks
96
- url: command_line.html
97
- description: This guide covers the command line tools and rake tasks provided by Rails.
98
- -
99
- name: Caching with Rails
100
- work_in_progress: true
101
- url: caching_with_rails.html
102
- description: Various caching techniques provided by Rails.
103
- -
104
- name: Asset Pipeline
105
- url: asset_pipeline.html
106
- description: This guide documents the asset pipeline.
107
- -
108
- name: Working with JavaScript in Rails
109
- url: working_with_javascript_in_rails.html
110
- description: This guide covers the built-in Ajax/JavaScript functionality of Rails.
111
- -
112
- name: Getting Started with Engines
113
- url: engines.html
114
- description: This guide explains how to write a mountable engine.
115
- work_in_progress: true
116
- -
117
- name: The Rails Initialization Process
118
- work_in_progress: true
119
- url: initialization.html
120
- description: This guide explains the internals of the Rails initialization process as of Rails 4
121
- -
122
- name: Extending Rails
123
- documents:
124
- -
125
- name: The Basics of Creating Rails Plugins
126
- work_in_progress: true
127
- url: plugins.html
128
- description: This guide covers how to build a plugin to extend the functionality of Rails.
129
- -
130
- name: Rails on Rack
131
- url: rails_on_rack.html
132
- description: This guide covers Rails integration with Rack and interfacing with other Rack components.
133
- -
134
- name: Creating and Customizing Rails Generators
135
- url: generators.html
136
- description: This guide covers the process of adding a brand new generator to your extension or providing an alternative to an element of a built-in Rails generator (such as providing alternative test stubs for the scaffold generator).
137
- -
138
- name: Contributing to Ruby on Rails
139
- documents:
140
- -
141
- name: Contributing to Ruby on Rails
142
- url: contributing_to_ruby_on_rails.html
143
- description: Rails is not 'somebody else's framework.' This guide covers a variety of ways that you can get involved in the ongoing development of Rails.
144
- -
145
- name: API Documentation Guidelines
146
- url: api_documentation_guidelines.html
147
- description: This guide documents the Ruby on Rails API documentation guidelines.
148
- -
149
- name: Ruby on Rails Guides Guidelines
150
- url: ruby_on_rails_guides_guidelines.html
151
- description: This guide documents the Ruby on Rails guides guidelines.
152
- -
153
- name: Maintenance Policy
154
- documents:
155
- -
156
- name: Maintenance Policy
157
- url: maintenance_policy.html
158
- description: What versions of Ruby on Rails are currently supported, and when to expect new versions.
159
- -
160
- name: Release Notes
161
- documents:
162
- -
163
- name: Upgrading Ruby on Rails
164
- url: upgrading_ruby_on_rails.html
165
- description: This guide helps in upgrading applications to latest Ruby on Rails versions.
166
- -
167
- name: Ruby on Rails 4.1 Release Notes
168
- url: 4_1_release_notes.html
169
- description: Release notes for Rails 4.1.
170
- -
171
- name: Ruby on Rails 4.0 Release Notes
172
- url: 4_0_release_notes.html
173
- description: Release notes for Rails 4.0.
174
- -
175
- name: Ruby on Rails 3.2 Release Notes
176
- url: 3_2_release_notes.html
177
- description: Release notes for Rails 3.2.
178
- -
179
- name: Ruby on Rails 3.1 Release Notes
180
- url: 3_1_release_notes.html
181
- description: Release notes for Rails 3.1.
182
- -
183
- name: Ruby on Rails 3.0 Release Notes
184
- url: 3_0_release_notes.html
185
- description: Release notes for Rails 3.0.
186
- -
187
- name: Ruby on Rails 2.3 Release Notes
188
- url: 2_3_release_notes.html
189
- description: Release notes for Rails 2.3.
190
- -
191
- name: Ruby on Rails 2.2 Release Notes
192
- url: 2_2_release_notes.html
193
- description: Release notes for Rails 2.2.