diff --git a/README.markdown b/README.markdown
index 56f267d7ea3..9e17f5d4b7f 100644
--- a/README.markdown
+++ b/README.markdown
@@ -7,9 +7,9 @@ Contributing
------------
>**Note**
->Unless you're documenting a feature that's new to a specific version of Symfony
->(e.g. Symfony 2.3), all pull requests must be based off of the **2.2** branch,
->**not** the master or 2.3 branch.
+>Unless you're documenting a feature that was introduced *after* Symfony 2.3
+>(e.g. in Symfony 2.4), all pull requests must be based off of the **2.3** branch,
+>**not** the master or older branches.
We love contributors! For more information on how you can contribute to the
Symfony documentation, please read
diff --git a/book/controller.rst b/book/controller.rst
index 167ffbecaaa..f693eb12028 100644
--- a/book/controller.rst
+++ b/book/controller.rst
@@ -513,7 +513,10 @@ value to each variable.
$subRequest = $request->duplicate(array(), null, $path);
$httpKernel = $this->container->get('http_kernel');
- $response = $httpKernel->handle($subRequest, HttpKernelInterface::SUB_REQUEST);
+ $response = $httpKernel->handle(
+ $subRequest,
+ HttpKernelInterface::SUB_REQUEST
+ );
.. index::
single: Controller; Rendering templates
@@ -579,7 +582,8 @@ The Symfony templating engine is explained in great detail in the
'AcmeHelloBundle:Hello/Greetings:index.html.twig',
array('name' => $name)
);
- // index.html.twig found in Resources/views/Hello/Greetings is rendered.
+ // index.html.twig found in Resources/views/Hello/Greetings
+ // is rendered.
.. index::
single: Controller; Accessing services
diff --git a/book/doctrine.rst b/book/doctrine.rst
index 026a3b4f977..b4ffafdbfa7 100644
--- a/book/doctrine.rst
+++ b/book/doctrine.rst
@@ -623,7 +623,9 @@ You can also take advantage of the useful ``findBy`` and ``findOneBy`` methods
to easily fetch objects based on multiple conditions::
// query for one product matching be name and price
- $product = $repository->findOneBy(array('name' => 'foo', 'price' => 19.99));
+ $product = $repository->findOneBy(
+ array('name' => 'foo', 'price' => 19.99)
+ );
// query for all products matching the name, ordered by price
$products = $repository->findBy(
@@ -1144,7 +1146,8 @@ Now you can see this new code in action! Imagine you're inside a controller::
$em->flush();
return new Response(
- 'Created product id: '.$product->getId().' and category id: '.$category->getId()
+ 'Created product id: '.$product->getId()
+ .' and category id: '.$category->getId()
);
}
}
@@ -1253,8 +1256,8 @@ following method to the ``ProductRepository`` class::
public function findOneByIdJoinedToCategory($id)
{
$query = $this->getEntityManager()
- ->createQuery('
- SELECT p, c FROM AcmeStoreBundle:Product p
+ ->createQuery(
+ 'SELECT p, c FROM AcmeStoreBundle:Product p
JOIN p.category c
WHERE p.id = :id'
)->setParameter('id', $id);
@@ -1478,8 +1481,8 @@ and ``nullable``. Take a few examples:
protected $name;
/**
- * A string field of length 150 that persists to an "email_address" column
- * and has a unique index.
+ * A string field of length 150 that persists to an
+ * "email_address" column and has a unique index.
*
* @ORM\Column(name="email_address", unique=true, length=150)
*/
@@ -1489,13 +1492,14 @@ and ``nullable``. Take a few examples:
fields:
# A string field length 255 that cannot be null
- # (reflecting the default values for the "length" and *nullable* options)
- # type attribute is necessary in YAML definitions
+ # (reflecting the default values for the "length"
+ # and *nullable* options) type attribute is
+ # necessary in YAML definitions
name:
type: string
- # A string field of length 150 that persists to an "email_address" column
- # and has a unique index.
+ # A string field of length 150 that persists to
+ # an "email_address" column and has a unique index.
email:
type: string
column: email_address
@@ -1506,8 +1510,9 @@ and ``nullable``. Take a few examples:
`_ #3503 file extension correction xfliff to xliff (nixilla)
+- `7fe0de3 `_ #3475 Fixed doc for framework.session.cookie_lifetime refrence. (tyomo4ka)
+- `8155e4c `_ #3473 Update proxy_examples.rst (AZielinski)
+- `c205bc6 `_ #3468 enclose YAML string with double quotes to fix syntax highlighting (xabbuh)
+- `89963cc `_ #3463 Fix typos in cookbook/testing/database (ifdattic)
+- `e0a52ec `_ #3460 remove confusing outdated note on interactive rebasing (xabbuh)
+- `6831b13 `_ #3455 [Contributing][Code] fix indentation so that the text is rendered properly (xabbuh)
+- `ea5816f `_ #3433 [WIP][Reference][Form Types] Update "radio" form type (bicpi)
+- `42c80d1 `_ #3448 Overridden tweak (weaverryan)
+- `d9d7c58 `_ #3444 Fix issue #3442 (ifdattic)
+- `9e2e64b `_ #3427 Removed code references to Symfony Standard Distribution (danielcsgomes)
+- `26b8146 `_ #3415 [#3334] the data_class option was not introduced in 2.4 (xabbuh)
+- `0b2a491 `_ #3414 add missing code-block directive (xabbuh)
+- `4988118 `_ #3432 [Reference][Form Types] Add "max_length" option in form type (nykopol)
+- `26a7b1b `_ #3423 [Session Configuration] add clarifying notes on session save handler proxies (cordoval)
+
+Minor Documentation Changes
+~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+- `1131247 `_ #3508 Add 'in XML' for additional clarity (ifdattic)
+- `a650b93 `_ #3506 Nykopol overriden options (weaverryan)
+- `ab10035 `_ #3505 replace Akamaï with Akamai (xabbuh)
+- `7f56c20 `_ #3501 [Security] Fix markup (tyx)
+- `80a90ba `_ #3500 Minimize horizontal scrolling in code blocks (improve readability) (ifdattic)
+- `e5bc4ea `_ #3498 Remove second empty data (xabbuh)
+- `d084d87 `_ #3485 [Cookbook][Assetic] Fix "javascripts" tag name typo (bicpi)
+- `3250aba `_ #3481 Fix code block (minimise horizontal scrolling), typo in yaml (ifdattic)
+- `f285d93 `_ #3451 some language tweaks (AE, third-person perspective) (xabbuh)
+- `2b7e0f6 `_ #3497 Fix highlighting (WouterJ)
+- `a535ae0 `_ #3471 Fixed `````versionadded````` inconsistencies in Symfony 2.3 (danielcsgomes)
+- `f077a8e `_ #3465 change wording in versionadded example to be consistent with what we use... (xabbuh)
+- `f9f7548 `_ #3462 Replace ... with etc (ifdattic)
+- `65efcc4 `_ #3445 [Reference][Form Types] Add missing (but existing) options to "form" type (bicpi)
+- `1d1b91d `_ #3431 [Config] add cautionary note on ini file loader limitation (cordoval)
+- `f2eaf9b `_ #3419 doctrine file upload example uses dir -- caution added (cordoval)
+- `72b53ad `_ #3404 [#3276] Trying to further clarify the session storage directory details (weaverryan)
+- `67b7bbd `_ #3413 [Cookbook][Bundles] improve explanation of code block for bundle removal (cordoval)
+- `7c5a914 `_ #3369 Indicate that Group Sequence Providers can use YAML (karptonite)
+- `1e0311e `_ #3416 add empty_data option where required option is used (xabbuh)
+- `2be3f52 `_ #3422 [Cookbook][Custom Authentication Provider] add a note of warning for when forbidding anonymous users (cordoval)
diff --git a/components/dependency_injection/parameters.rst b/components/dependency_injection/parameters.rst
index ecf83c853b9..98194076885 100644
--- a/components/dependency_injection/parameters.rst
+++ b/components/dependency_injection/parameters.rst
@@ -25,6 +25,13 @@ and set a parameter in the container with::
$container->setParameter('mailer.transport', 'sendmail');
+.. caution::
+
+ The used ``.`` notation is just a
+ :ref:`Symfony convention ` to make parameters
+ easier to read. Parameters are just flat key-value elements, they can't be
+ organized into a nested array
+
.. note::
You can only set a parameter before the container is compiled. To learn
@@ -190,9 +197,9 @@ making the class of a service a parameter:
Array Parameters
----------------
-Parameters do not need to be flat strings, they can also be arrays. For the XML
-format, you need to use the ``type="collection"`` attribute for all parameters that are
-arrays.
+Parameters do not need to be flat strings, they can also contain array values.
+For the XML format, you need to use the ``type="collection"`` attribute for
+all parameters that are arrays.
.. configuration-block::
diff --git a/components/event_dispatcher/generic_event.rst b/components/event_dispatcher/generic_event.rst
index 9018c145577..3be0b9bb876 100644
--- a/components/event_dispatcher/generic_event.rst
+++ b/components/event_dispatcher/generic_event.rst
@@ -93,7 +93,7 @@ Filtering data::
use Symfony\Component\EventDispatcher\GenericEvent;
- $event = new GenericEvent($subject, array('data' => 'foo'));
+ $event = new GenericEvent($subject, array('data' => 'Foo'));
$dispatcher->dispatch('foo', $event);
echo $event['data'];
@@ -102,6 +102,6 @@ Filtering data::
{
public function filter(GenericEvent $event)
{
- strtolower($event['data']);
+ $event['data'] = strtolower($event['data']);
}
}
diff --git a/components/form/introduction.rst b/components/form/introduction.rst
index 0e6b06ed826..a5e5732978a 100644
--- a/components/form/introduction.rst
+++ b/components/form/introduction.rst
@@ -181,8 +181,10 @@ to bootstrap or access Twig and add the :class:`Symfony\\Bridge\\Twig\\Extension
$defaultFormTheme = 'form_div_layout.html.twig';
$vendorDir = realpath(__DIR__ . '/../vendor');
- // the path to TwigBridge so Twig can locate the form_div_layout.html.twig file
- $vendorTwigBridgeDir = $vendorDir . '/symfony/twig-bridge/Symfony/Bridge/Twig';
+ // the path to TwigBridge so Twig can locate the
+ // form_div_layout.html.twig file
+ $vendorTwigBridgeDir =
+ $vendorDir . '/symfony/twig-bridge/Symfony/Bridge/Twig';
// the path to your other templates
$viewsDir = realpath(__DIR__ . '/../views');
@@ -193,7 +195,9 @@ to bootstrap or access Twig and add the :class:`Symfony\\Bridge\\Twig\\Extension
$formEngine = new TwigRendererEngine(array($defaultFormTheme));
$formEngine->setEnvironment($twig);
// add the FormExtension to Twig
- $twig->addExtension(new FormExtension(new TwigRenderer($formEngine, $csrfProvider)));
+ $twig->addExtension(
+ new FormExtension(new TwigRenderer($formEngine, $csrfProvider))
+ );
// create your form factory as normal
$formFactory = Forms::createFormFactoryBuilder()
@@ -307,7 +311,8 @@ Your integration with the Validation component will look something like this::
$vendorDir = realpath(__DIR__ . '/../vendor');
$vendorFormDir = $vendorDir . '/symfony/form/Symfony/Component/Form';
- $vendorValidatorDir = $vendorDir . '/symfony/validator/Symfony/Component/Validator';
+ $vendorValidatorDir =
+ $vendorDir . '/symfony/validator/Symfony/Component/Validator';
// create the validator - details will vary
$validator = Validation::createValidator();
diff --git a/components/http_foundation/introduction.rst b/components/http_foundation/introduction.rst
index 902a8d93890..d3455a47440 100644
--- a/components/http_foundation/introduction.rst
+++ b/components/http_foundation/introduction.rst
@@ -262,7 +262,8 @@ If you need to get full access to parsed data from ``Accept``, ``Accept-Language
}
// accepts items are sorted by descending quality
- $accepts = AcceptHeader::fromString($request->headers->get('Accept'))->all();
+ $accepts = AcceptHeader::fromString($request->headers->get('Accept'))
+ ->all();
Accessing other Data
~~~~~~~~~~~~~~~~~~~~
@@ -286,8 +287,24 @@ PHP callable that is able to create an instance of your ``Request`` class::
use Symfony\Component\HttpFoundation\Request;
- Request::setFactory(function (array $query = array(), array $request = array(), array $attributes = array(), array $cookies = array(), array $files = array(), array $server = array(), $content = null) {
- return SpecialRequest::create($query, $request, $attributes, $cookies, $files, $server, $content);
+ Request::setFactory(function (
+ array $query = array(),
+ array $request = array(),
+ array $attributes = array(),
+ array $cookies = array(),
+ array $files = array(),
+ array $server = array(),
+ $content = null
+ ) {
+ return SpecialRequest::create(
+ $query,
+ $request,
+ $attributes,
+ $cookies,
+ $files,
+ $server,
+ $content
+ );
});
$request = Request::createFromGlobals();
@@ -458,7 +475,10 @@ abstracts the hard work behind a simple API::
use Symfony\Component\HttpFoundation\ResponseHeaderBag;
- $d = $response->headers->makeDisposition(ResponseHeaderBag::DISPOSITION_ATTACHMENT, 'foo.pdf');
+ $d = $response->headers->makeDisposition(
+ ResponseHeaderBag::DISPOSITION_ATTACHMENT,
+ 'foo.pdf'
+ );
$response->headers->set('Content-Disposition', $d);
@@ -482,7 +502,10 @@ if it should::
You can still set the ``Content-Type`` of the sent file, or change its ``Content-Disposition``::
$response->headers->set('Content-Type', 'text/plain');
- $response->setContentDisposition(ResponseHeaderBag::DISPOSITION_ATTACHMENT, 'filename.txt');
+ $response->setContentDisposition(
+ ResponseHeaderBag::DISPOSITION_ATTACHMENT,
+ 'filename.txt'
+ );
.. _component-http-foundation-json-response:
diff --git a/components/http_foundation/sessions.rst b/components/http_foundation/sessions.rst
index 4a1bf6484bb..837da929b41 100644
--- a/components/http_foundation/sessions.rst
+++ b/components/http_foundation/sessions.rst
@@ -28,7 +28,7 @@ Quick example::
// retrieve messages
foreach ($session->getFlashBag()->get('notice', array()) as $message) {
- echo "$message
";
+ echo ''.$message.'
';
}
.. note::
@@ -254,7 +254,7 @@ has a simple API
Adds a flash message to the stack of specified type;
* :method:`Symfony\\Component\\HttpFoundation\\Session\\Flash\\FlashBagInterface::set`:
- Sets flashes by type; This method conveniently takes both singles messages as
+ Sets flashes by type; This method conveniently takes both single messages as
a ``string`` or multiple messages in an ``array``.
* :method:`Symfony\\Component\\HttpFoundation\\Session\\Flash\\FlashBagInterface::get`:
@@ -308,18 +308,18 @@ Simple, display one type of message::
// display warnings
foreach ($session->getFlashBag()->get('warning', array()) as $message) {
- echo "$message
";
+ echo ''.$message.'
';
}
// display errors
foreach ($session->getFlashBag()->get('error', array()) as $message) {
- echo "$message
";
+ echo ''.$message.'
';
}
Compact method to process display all flashes at once::
foreach ($session->getFlashBag()->all() as $type => $messages) {
foreach ($messages as $message) {
- echo "$message
\n";
+ echo ''.$message.'
';
}
}
diff --git a/components/http_kernel/introduction.rst b/components/http_kernel/introduction.rst
index 70b049e1a3f..5ab8e5c729b 100644
--- a/components/http_kernel/introduction.rst
+++ b/components/http_kernel/introduction.rst
@@ -603,6 +603,7 @@ a built-in ControllerResolver that can be used to create a working example::
use Symfony\Component\HttpKernel\HttpKernel;
use Symfony\Component\EventDispatcher\EventDispatcher;
use Symfony\Component\HttpKernel\Controller\ControllerResolver;
+ use Symfony\Component\HttpKernel\EventListener\RouterListener;
use Symfony\Component\Routing\RouteCollection;
use Symfony\Component\Routing\Route;
use Symfony\Component\Routing\Matcher\UrlMatcher;
@@ -611,7 +612,9 @@ a built-in ControllerResolver that can be used to create a working example::
$routes = new RouteCollection();
$routes->add('hello', new Route('/hello/{name}', array(
'_controller' => function (Request $request) {
- return new Response(sprintf("Hello %s", $request->get('name')));
+ return new Response(
+ sprintf("Hello %s", $request->get('name'))
+ );
}
)
));
@@ -647,7 +650,7 @@ your controller).
:align: center
To execute a sub request, use ``HttpKernel::handle``, but change the second
-arguments as follows::
+argument as follows::
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpKernel\HttpKernelInterface;
diff --git a/components/intl.rst b/components/intl.rst
index 4dbcb7d5a79..fd12431753b 100644
--- a/components/intl.rst
+++ b/components/intl.rst
@@ -78,7 +78,7 @@ code::
These versions are important when you deploy your application to a **server with
a lower ICU version** than your development machines, because deployment will
- fail if
+ fail if:
* the development machines are compiled with ICU 4.4 or higher, but the
server is compiled with a lower ICU version than 4.4;
@@ -282,7 +282,12 @@ multi-valued entries (arrays), the values of the more specific and the fallback
locale will be merged. In order to suppress this behavior, the last parameter
``$fallback`` can be set to ``false``::
- echo $reader->readEntry('/path/to/bundle', 'en', array('Data', 'entry1'), false);
+ echo $reader->readEntry(
+ '/path/to/bundle',
+ 'en',
+ array('Data', 'entry1'),
+ false
+ );
Accessing ICU Data
------------------
diff --git a/components/property_access/introduction.rst b/components/property_access/introduction.rst
index 5f635c7d0da..11c0f5efe68 100644
--- a/components/property_access/introduction.rst
+++ b/components/property_access/introduction.rst
@@ -346,7 +346,7 @@ configured to enable extra features. To do that you could use the
:class:`Symfony\\Component\\PropertyAccess\\PropertyAccessorBuilder`::
// ...
- $accessorBuilder = PropertyAccess::getPropertyAccessorBuilder();
+ $accessorBuilder = PropertyAccess::createPropertyAccessorBuilder();
// Enable magic __call
$accessorBuilder->enableMagicCall();
@@ -361,7 +361,7 @@ configured to enable extra features. To do that you could use the
$accessor = $accessorBuilder->getPropertyAccessor();
// Or all in one
- $accessor = PropertyAccess::getPropertyAccessorBuilder()
+ $accessor = PropertyAccess::createPropertyAccessorBuilder()
->enableMagicCall()
->getPropertyAccessor();
diff --git a/contributing/code/standards.rst b/contributing/code/standards.rst
index 1d512b3855e..aadcb34ef90 100644
--- a/contributing/code/standards.rst
+++ b/contributing/code/standards.rst
@@ -133,6 +133,8 @@ Naming Conventions
* Don't forget to look at the more verbose :doc:`conventions` document for
more subjective naming considerations.
+.. _service-naming-conventions:
+
Service Naming Conventions
~~~~~~~~~~~~~~~~~~~~~~~~~~
diff --git a/contributing/documentation/overview.rst b/contributing/documentation/overview.rst
index 695960bad64..1efc8e9fe15 100644
--- a/contributing/documentation/overview.rst
+++ b/contributing/documentation/overview.rst
@@ -202,7 +202,7 @@ For this example, suppose version 2.1 has just reached its end of maintenance:
* All branches still under maintenance (e.g. 2.2 and higher) are updated
to reflect that pull requests should start from the now-oldest maintained
- version (e.g. 2.2).
+ version (e.g. 2.2) - including the details in the README file.
* Remove all ``versionadded`` directives - and any other notes related to features
changing or being new - for the version (e.g. 2.1) from the master branch.
diff --git a/cookbook/bundles/remove.rst b/cookbook/bundles/remove.rst
index af1dfd774b8..ce36fae32ab 100644
--- a/cookbook/bundles/remove.rst
+++ b/cookbook/bundles/remove.rst
@@ -95,9 +95,9 @@ rely on the bundle you are about to remove.
.. tip::
- If one bundle relies on another, in most it means that it uses some services
- from the bundle. Searching for the bundle alias string may help you spot
- them (e.g. ``acme_demo`` for bundles depending on AcmeDemoBundle).
+ If one bundle relies on another, in most cases it means that it uses
+ some services from the bundle. Searching for the bundle alias string may
+ help you spot them (e.g. ``acme_demo`` for bundles depending on AcmeDemoBundle).
.. tip::
diff --git a/cookbook/doctrine/event_listeners_subscribers.rst b/cookbook/doctrine/event_listeners_subscribers.rst
index fb1274a38a7..bd1f322d0b3 100644
--- a/cookbook/doctrine/event_listeners_subscribers.rst
+++ b/cookbook/doctrine/event_listeners_subscribers.rst
@@ -154,6 +154,12 @@ specific type of entity (e.g. a ``Product`` entity but not a ``BlogPost``
entity), you should check for the entity's class type in your method
(as shown above).
+.. tip::
+
+ In Doctrine 2.4, a feature called Entity Listeners was introduced.
+ It is a lifecycle listener class used for an entity. You can read
+ about it in `the Doctrine Documentation`_.
+
Creating the Subscriber Class
-----------------------------
@@ -211,3 +217,4 @@ interface and have an event method for each event it subscribes to::
For a full reference, see chapter `The Event System`_ in the Doctrine documentation.
.. _`The Event System`: http://docs.doctrine-project.org/projects/doctrine-orm/en/latest/reference/events.html
+.. _`the Doctrine Documentation`: http://docs.doctrine-project.org/projects/doctrine-orm/en/latest/reference/events.html#entity-listeners
diff --git a/cookbook/doctrine/multiple_entity_managers.rst b/cookbook/doctrine/multiple_entity_managers.rst
index 40f54255ea9..e41301f00f2 100644
--- a/cookbook/doctrine/multiple_entity_managers.rst
+++ b/cookbook/doctrine/multiple_entity_managers.rst
@@ -187,11 +187,14 @@ the default entity manager (i.e. ``default``) is returned::
{
public function indexAction()
{
- // both return the "default" em
+ // All three return the "default" entity manager
$em = $this->get('doctrine')->getManager();
$em = $this->get('doctrine')->getManager('default');
+ $em = $this->get('doctrine.orm.default_entity_manager');
- $customerEm = $this->get('doctrine')->getManager('customer');
+ // Both of these return the "customer" entity manager
+ $customerEm = $this->get('doctrine')->getManager('customer');
+ $customerEm = $this->get('doctrine.orm.customer_entity_manager');
}
}
diff --git a/cookbook/form/dynamic_form_modification.rst b/cookbook/form/dynamic_form_modification.rst
index 54c18ceb34a..cddc46f063f 100644
--- a/cookbook/form/dynamic_form_modification.rst
+++ b/cookbook/form/dynamic_form_modification.rst
@@ -123,7 +123,7 @@ the event listener might look like the following::
// check if the Product object is "new"
// If no data is passed to the form, the data is "null".
// This should be considered a new "Product"
- if (!$product || null !== $product->getId()) {
+ if (!$product || null === $product->getId()) {
$form->add('name', 'text');
}
});
@@ -207,7 +207,7 @@ class::
$product = $event->getData();
$form = $event->getForm();
- if (!$product || null !== $product->getId()) {
+ if (!$product || null === $product->getId()) {
$form->add('name', 'text');
}
}
diff --git a/cookbook/security/acl.rst b/cookbook/security/acl.rst
index bb3f20a299e..96f22a93d35 100644
--- a/cookbook/security/acl.rst
+++ b/cookbook/security/acl.rst
@@ -90,6 +90,10 @@ Getting Started
Coming back to the small example from the beginning, you can now implement
ACL for it.
+Once the ACL is created, you can grant access to objects by creating an
+Access Control Entity (ACE) to solidify the relationship between the entity
+and your user.
+
Creating an ACL, and adding an ACE
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
diff --git a/cookbook/testing/simulating_authentication.rst b/cookbook/testing/simulating_authentication.rst
index b67365398b3..56168f09552 100644
--- a/cookbook/testing/simulating_authentication.rst
+++ b/cookbook/testing/simulating_authentication.rst
@@ -35,7 +35,7 @@ with a request. The following example demonstrates this technique::
{
$this->logIn();
- $this->client->request('GET', '/demo/secured/hello/Fabien');
+ $crawler = $this->client->request('GET', '/demo/secured/hello/Fabien');
$this->assertTrue($this->client->getResponse()->isSuccessful());
$this->assertGreaterThan(0, $crawler->filter('html:contains("Hello Fabien")')->count());
diff --git a/cookbook/workflow/new_project_git.rst b/cookbook/workflow/new_project_git.rst
index 598dc6e9554..f0403af21a1 100644
--- a/cookbook/workflow/new_project_git.rst
+++ b/cookbook/workflow/new_project_git.rst
@@ -44,31 +44,25 @@ git repository:
in which case, you can find more information here: `Github .gitignore`_
This way you can exclude files/folders often used by your IDE for all of your projects.
-4. Copy ``app/config/parameters.yml`` to ``app/config/parameters.yml.dist``.
- The ``parameters.yml`` file is ignored by Git (see above) so that machine-specific
- settings like database passwords aren't committed. By creating the ``parameters.yml.dist``
- file, new developers can quickly clone the project, copy this file to
- ``parameters.yml``, customize it, and start developing.
-
-5. Initialize your Git repository:
+4. Initialize your Git repository:
.. code-block:: bash
$ git init
-6. Add all of the initial files to Git:
+5. Add all of the initial files to Git:
.. code-block:: bash
$ git add .
-7. Create an initial commit with your started project:
+6. Create an initial commit with your started project:
.. code-block:: bash
$ git commit -m "Initial commit"
-8. Finally, download all of the third-party vendor libraries by
+7. Finally, download all of the third-party vendor libraries by
executing Composer. For details, see :ref:`installation-updating-vendors`.
At this point, you have a fully-functional Symfony2 project that's correctly
diff --git a/reference/forms/types/timezone.rst b/reference/forms/types/timezone.rst
index ef4769e1cff..6867e89a8e0 100644
--- a/reference/forms/types/timezone.rst
+++ b/reference/forms/types/timezone.rst
@@ -12,7 +12,7 @@ or ``Europe/Istanbul``.
Unlike the ``choice`` type, you don't need to specify a ``choices`` or
``choice_list`` option as the field type automatically uses a large list
-of locales. You *can* specify either of these options manually, but then
+of timezones. You *can* specify either of these options manually, but then
you should just use the ``choice`` type directly.
+-------------+------------------------------------------------------------------------+