Skip to content

Commit

Permalink
cleans the guides sources from fancy non-ASCII stuff
Browse files Browse the repository at this point in the history
  • Loading branch information
fxn committed Aug 23, 2013
1 parent bdb2d5f commit b77f25c
Show file tree
Hide file tree
Showing 21 changed files with 96 additions and 96 deletions.
8 changes: 4 additions & 4 deletions guides/source/2_3_release_notes.md
Original file line number Diff line number Diff line change
Expand Up @@ -237,7 +237,7 @@ If you're one of the people who has always been bothered by the special-case nam

### HTTP Digest Authentication Support

Rails now has built-in support for HTTP digest authentication. To use it, you call `authenticate_or_request_with_http_digest` with a block that returns the user’s password (which is then hashed and compared against the transmitted credentials):
Rails now has built-in support for HTTP digest authentication. To use it, you call `authenticate_or_request_with_http_digest` with a block that returns the uses's password (which is then hashed and compared against the transmitted credentials):

This comment has been minimized.

Copy link
@tilsammans

tilsammans Aug 23, 2013

Contributor

uses's -> user's

This comment has been minimized.

Copy link
@fxn

fxn Aug 23, 2013

Author Member

Thanks!


```ruby
class PostsController < ApplicationController
Expand Down Expand Up @@ -451,11 +451,11 @@ select(:post, :category, Post::CATEGORIES, :disabled => 'private')
returns

```html
<select name=post[category]>
<select name="post[category]">
<option>story</option>
<option>joke</option>
<option>poem</option>
<option disabled=disabled>private</option>
<option disabled="disabled">private</option>
</select>
```

Expand Down Expand Up @@ -606,7 +606,7 @@ A few pieces of older code are deprecated in this release:
* If you're one of the (fairly rare) Rails developers who deploys in a fashion that depends on the inspector, reaper, and spawner scripts, you'll need to know that those scripts are no longer included in core Rails. If you need them, you'll be able to pick up copies via the [irs_process_scripts](http://github.com/rails/irs_process_scripts/tree) plugin.
* `render_component` goes from "deprecated" to "nonexistent" in Rails 2.3. If you still need it, you can install the [render_component plugin](http://github.com/rails/render_component/tree/master.)
* Support for Rails components has been removed.
* If you were one of the people who got used to running `script/performance/request` to look at performance based on integration tests, you need to learn a new trick: that script has been removed from core Rails now. Theres a new request_profiler plugin that you can install to get the exact same functionality back.
* If you were one of the people who got used to running `script/performance/request` to look at performance based on integration tests, you need to learn a new trick: that script has been removed from core Rails now. There's a new request_profiler plugin that you can install to get the exact same functionality back.
* `ActionController::Base#session_enabled?` is deprecated because sessions are lazy-loaded now.
* The `:digest` and `:secret` options to `protect_from_forgery` are deprecated and have no effect.
* Some integration test helpers have been removed. `response.headers["Status"]` and `headers["Status"]` will no longer return anything. Rack does not allow "Status" in its return headers. However you can still use the `status` and `status_message` helpers. `response.headers["cookie"]` and `headers["cookie"]` will no longer return any CGI cookies. You can inspect `headers["Set-Cookie"]` to see the raw cookie header or use the `cookies` helper to get a hash of the cookies sent to the client.
Expand Down
4 changes: 2 additions & 2 deletions guides/source/action_controller_overview.md
Original file line number Diff line number Diff line change
Expand Up @@ -348,7 +348,7 @@ All session stores use a cookie to store a unique ID for each session (you must

For most stores, this ID is used to look up the session data on the server, e.g. in a database table. There is one exception, and that is the default and recommended session store - the CookieStore - which stores all session data in the cookie itself (the ID is still available to you if you need it). This has the advantage of being very lightweight and it requires zero setup in a new application in order to use the session. The cookie data is cryptographically signed to make it tamper-proof. And it is also encrypted so anyone with access to it can't read its contents. (Rails will not accept it if it has been edited).

The CookieStore can store around 4kB of data much less than the others but this is usually enough. Storing large amounts of data in the session is discouraged no matter which session store your application uses. You should especially avoid storing complex objects (anything other than basic Ruby objects, the most common example being model instances) in the session, as the server might not be able to reassemble them between requests, which will result in an error.
The CookieStore can store around 4kB of data - much less than the others - but this is usually enough. Storing large amounts of data in the session is discouraged no matter which session store your application uses. You should especially avoid storing complex objects (anything other than basic Ruby objects, the most common example being model instances) in the session, as the server might not be able to reassemble them between requests, which will result in an error.

If your user sessions don't store critical data or don't need to be around for long periods (for instance if you just use the flash for messaging), you can consider using ActionDispatch::Session::CacheStore. This will store sessions using the cache implementation you have configured for your application. The advantage of this is that you can use your existing cache infrastructure for storing sessions without requiring any additional setup or administration. The downside, of course, is that the sessions will be ephemeral and could disappear at any time.

Expand Down Expand Up @@ -538,7 +538,7 @@ end
Cookies
-------

Your application can store small amounts of data on the client called cookies that will be persisted across requests and even sessions. Rails provides easy access to cookies via the `cookies` method, which much like the `session` works like a hash:
Your application can store small amounts of data on the client - called cookies - that will be persisted across requests and even sessions. Rails provides easy access to cookies via the `cookies` method, which - much like the `session` - works like a hash:

```ruby
class CommentsController < ApplicationController
Expand Down
6 changes: 3 additions & 3 deletions guides/source/action_view_overview.md
Original file line number Diff line number Diff line change
Expand Up @@ -152,7 +152,7 @@ By default, Rails will compile each template to a method in order to render it.

### Partials

Partial templates usually just called "partials" are another device for breaking the rendering process into more manageable chunks. With partials, you can extract pieces of code from your templates to separate files and also reuse them throughout your templates.
Partial templates - usually just called "partials" - are another device for breaking the rendering process into more manageable chunks. With partials, you can extract pieces of code from your templates to separate files and also reuse them throughout your templates.

#### Naming Partials

Expand Down Expand Up @@ -1526,7 +1526,7 @@ The SanitizeHelper module provides a set of methods for scrubbing text of undesi

#### sanitize

This sanitize helper will html encode all tags and strip all attributes that arent specifically allowed.
This sanitize helper will html encode all tags and strip all attributes that aren't specifically allowed.

```ruby
sanitize @article.body
Expand Down Expand Up @@ -1583,7 +1583,7 @@ strip_tags("<b>Bold</b> no more! <a href='more.html'>See more</a>")
# => Bold no more! See more
```

NB: The output may still contain unescaped ‘<’, ‘>’, ‘&’ characters and confuse browsers.
NB: The output may still contain unescaped '<', '>', '&' characters and confuse browsers.


Localized Views
Expand Down
2 changes: 1 addition & 1 deletion guides/source/active_record_validations.md
Original file line number Diff line number Diff line change
Expand Up @@ -684,7 +684,7 @@ class GoodnessValidator
end
end

#
# ...
end
```

Expand Down
2 changes: 1 addition & 1 deletion guides/source/api_documentation_guidelines.md
Original file line number Diff line number Diff line change
Expand Up @@ -172,7 +172,7 @@ In lists of options, parameters, etc. use a hyphen between the item and its desc
# * <tt>:allow_nil</tt> - Skip validation if attribute is +nil+.
```

The description starts in upper case and ends with a full stopit's standard English.
The description starts in upper case and ends with a full stop-it's standard English.

Dynamically Generated Methods
-----------------------------
Expand Down
12 changes: 6 additions & 6 deletions guides/source/asset_pipeline.md
Original file line number Diff line number Diff line change
Expand Up @@ -151,7 +151,7 @@ environments. You can enable or disable it in your configuration through the
More reading:

* [Optimize caching](http://code.google.com/speed/page-speed/docs/caching.html)
* [Revving Filenames: dont use
* [Revving Filenames: don't use
* querystring](http://www.stevesouders.com/blog/2008/08/23/revving-filenames-dont-use-querystring/)


Expand Down Expand Up @@ -378,8 +378,8 @@ it would make sense to have an image in one of the asset load paths, such as
already available in `public/assets` as a fingerprinted file, then that path is
referenced.

If you want to use a [data URI](http://en.wikipedia.org/wiki/Data_URI_scheme)
a method of embedding the image data directly into the CSS file you can use
If you want to use a [data URI](http://en.wikipedia.org/wiki/Data_URI_scheme) -
a method of embedding the image data directly into the CSS file - you can use
the `asset_data_uri` helper.

```css
Expand Down Expand Up @@ -428,7 +428,7 @@ $('#logo').attr src: "<%= asset_path('logo.png') %>"
### Manifest Files and Directives

Sprockets uses manifest files to determine which assets to include and serve.
These manifest files contain _directives_ instructions that tell Sprockets
These manifest files contain _directives_ - instructions that tell Sprockets
which files to require in order to build a single CSS or JavaScript file. With
these directives, Sprockets loads the files specified, processes them if
necessary, concatenates them into one single file and then compresses them (if
Expand Down Expand Up @@ -536,7 +536,7 @@ Additional layers of preprocessing can be requested by adding other extensions,
where each extension is processed in a right-to-left manner. These should be
used in the order the processing should be applied. For example, a stylesheet
called `app/assets/stylesheets/projects.css.scss.erb` is first processed as ERB,
then SCSS, and finally served as CSS. The same applies to a JavaScript file
then SCSS, and finally served as CSS. The same applies to a JavaScript file -
`app/assets/javascripts/projects.js.coffee.erb` is processed as ERB, then
CoffeeScript, and served as JavaScript.

Expand Down Expand Up @@ -589,7 +589,7 @@ generate instead:

Assets are compiled and cached on the first request after the server is started.
Sprockets sets a `must-revalidate` Cache-Control HTTP header to reduce request
overhead on subsequent requests on these the browser gets a 304 (Not Modified)
overhead on subsequent requests - on these the browser gets a 304 (Not Modified)
response.

If any of the files in the manifest have changed between requests, the server
Expand Down
4 changes: 2 additions & 2 deletions guides/source/association_basics.md
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ end
@customer.destroy
```

With Active Record associations, we can streamline these and other operations by declaratively telling Rails that there is a connection between the two models. Here's the revised code for setting up customers and orders:
With Active Record associations, we can streamline these - and other - operations by declaratively telling Rails that there is a connection between the two models. Here's the revised code for setting up customers and orders:

```ruby
class Customer < ActiveRecord::Base
Expand Down Expand Up @@ -69,7 +69,7 @@ To learn more about the different types of associations, read the next section o
The Types of Associations
-------------------------

In Rails, an _association_ is a connection between two Active Record models. Associations are implemented using macro-style calls, so that you can declaratively add features to your models. For example, by declaring that one model `belongs_to` another, you instruct Rails to maintain Primary KeyForeign Key information between instances of the two models, and you also get a number of utility methods added to your model. Rails supports six types of associations:
In Rails, an _association_ is a connection between two Active Record models. Associations are implemented using macro-style calls, so that you can declaratively add features to your models. For example, by declaring that one model `belongs_to` another, you instruct Rails to maintain Primary Key-Foreign Key information between instances of the two models, and you also get a number of utility methods added to your model. Rails supports six types of associations:

* `belongs_to`
* `has_one`
Expand Down
4 changes: 2 additions & 2 deletions guides/source/caching_with_rails.md
Original file line number Diff line number Diff line change
Expand Up @@ -301,7 +301,7 @@ Conditional GET support

Conditional GETs are a feature of the HTTP specification that provide a way for web servers to tell browsers that the response to a GET request hasn't changed since the last request and can be safely pulled from the browser cache.

They work by using the `HTTP_IF_NONE_MATCH` and `HTTP_IF_MODIFIED_SINCE` headers to pass back and forth both a unique content identifier and the timestamp of when the content was last changed. If the browser makes a request where the content identifier (etag) or last modified since timestamp matches the servers version then the server only needs to send back an empty response with a not modified status.
They work by using the `HTTP_IF_NONE_MATCH` and `HTTP_IF_MODIFIED_SINCE` headers to pass back and forth both a unique content identifier and the timestamp of when the content was last changed. If the browser makes a request where the content identifier (etag) or last modified since timestamp matches the server's version then the server only needs to send back an empty response with a not modified status.

It is the server's (i.e. our) responsibility to look for a last modified timestamp and the if-none-match header and determine whether or not to send back the full response. With conditional-get support in Rails this is a pretty easy task:

Expand Down Expand Up @@ -338,7 +338,7 @@ class ProductsController < ApplicationController
end
```

If you don't have any special response processing and are using the default rendering mechanism (i.e. you're not using respond_to or calling render yourself) then youve got an easy helper in fresh_when:
If you don't have any special response processing and are using the default rendering mechanism (i.e. you're not using respond_to or calling render yourself) then you've got an easy helper in fresh_when:

```ruby
class ProductsController < ApplicationController
Expand Down
Loading

3 comments on commit b77f25c

@tilsammans
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I have mixed feelings about this one. The quotes around attributes have definitely improved; they must always be the straight variant.

But the em-dashes and apostrophes looked fine to me and typographically correct. Is this in the style guide, or is it an encoding problem?

@fxn
Copy link
Member Author

@fxn fxn commented on b77f25c Aug 23, 2013

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It all started with some encoding problems and did a generic cleanup of anything that was not necessary.

I agree that em-dashes are typographically correct for comments, but they seemed too narrow to me, didn't seem em. And some had spaces around, some others didn't. Indeed, I do not know if our formatter supports three hyphens in a row to mean an em-dash.

@tilsammans
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I see that it's a definite improvement overall.

I will think about a PR to improve the results further in post-processing.

Please sign in to comment.