Commit Graph

62 Commits

Author SHA1 Message Date
Nicolas Grekas
7e6ba10e9d Merge branch '3.4'
* 3.4:
  typo
  CS: adjust chaining indentation
2017-06-02 16:38:50 +02:00
Nicolas Grekas
349e5fe9b8 Merge branch '3.2' into 3.3
* 3.2:
  typo
  CS: adjust chaining indentation
2017-06-02 16:38:05 +02:00
Nicolas Grekas
89c3f5cccb Merge branch '2.8' into 3.2
* 2.8:
  typo
  CS: adjust chaining indentation
2017-06-02 16:37:52 +02:00
Nicolas Grekas
0057459882 Merge branch '2.7' into 2.8
* 2.7:
  CS: adjust chaining indentation
2017-06-02 16:36:56 +02:00
Dariusz
8c3c0fe65e CS: adjust chaining indentation 2017-05-31 11:30:46 +02:00
Maxime Steinhausser
531156e003 [FrameworkBundle] Remove deprecated code 2017-05-21 12:38:51 +02:00
Nicolas Grekas
4927993835 Merge branch '3.2'
* 3.2:
  Fixed pathinfo calculation for requests starting with a question mark.
  [HttpFoundation] Fix missing handling of for/host/proto info from "Forwarded" header
  [Validator] Add object handling of invalid constraints in Composite
  [WebProfilerBundle] Remove uneeded directive in the form collector styles
  removed usage of $that
  HttpCache: New test for revalidating responses with an expired TTL
  [Serializer] [XML] Ignore Process Instruction
  [Security] simplify the SwitchUserListenerTest
  Revert "bug #21841 [Console] Do not squash input changes made from console.command event (chalasr)"
  [HttpFoundation] Fix Request::getHost() when having several hosts in X_FORWARDED_HOST
2017-03-22 22:42:42 +01:00
Fabien Potencier
7d76227e06 removed usage of $that 2017-03-21 15:48:52 -07:00
Fabien Potencier
7ed3237645 [FrameworkBundle] deprecated cache:clear with warmup 2017-03-21 15:16:20 -07:00
Peter Rehm
c2e80e3b8b Updated PHPUnit namespaces 2017-02-20 14:34:33 +01:00
Nicolas Grekas
66cad2e4c5 Merge branch '2.8' into 3.2
* 2.8:
  Update to PHPUnit namespaces
  Minor typo fix messsagesData -> messagesData
  remove translation data collector when not usable
2017-02-18 18:28:00 +01:00
Nicolas Grekas
33bae93a44 Merge branch '2.7' into 2.8
* 2.7:
  Update to PHPUnit namespaces
  remove translation data collector when not usable
2017-02-18 18:06:33 +01:00
Peter Rehm
ddd2dff9b2 Update to PHPUnit namespaces 2017-02-18 08:02:39 -08:00
Fabien Potencier
3f96468942 Merge branch '3.1' into 3.2
* 3.1:
  fixed obsolete getMock() usage
  fixed obsolete getMock() usage
  fixed obsolete getMock() usage
  [WebProfilerBundle] Display multiple HTTP headers in WDT
  do not remove the Twig ExceptionController service
  removed obsolete condition
  do not try to register incomplete definitions
2016-12-19 17:07:36 +01:00
Fabien Potencier
84e75a78b3 Merge branch '2.7' into 2.8
* 2.7:
  fixed obsolete getMock() usage
  [WebProfilerBundle] Display multiple HTTP headers in WDT
2016-12-19 16:38:44 +01:00
Fabien Potencier
71d059cad1 fixed obsolete getMock() usage 2016-12-19 16:22:46 +01:00
Nicolas Grekas
7e766dae4a erge branch '3.1'
* 3.1:
  Remove trailing space
  CS fixes
  Remove trailing space
  CS: apply rules
  [Yaml] Clean some messages + add test case
  [Console] simplified code
  [Form] Fix UrlType transforms valid protocols
  [SecurityBundle] Changed encoder configuration example to bcrypt
2016-11-03 09:11:03 +01:00
Nicolas Grekas
37956db606 Merge branch '2.7' into 2.8
* 2.7:
  CS fixes
  Remove trailing space
  CS: apply rules
  [Yaml] Clean some messages + add test case
  [Form] Fix UrlType transforms valid protocols
  [SecurityBundle] Changed encoder configuration example to bcrypt
2016-11-03 08:52:58 +01:00
Dariusz Ruminski
22d4e15634 CS: apply rules 2016-11-03 08:44:53 +01:00
Nicolas Grekas
9a2bc59205 Merge branch '3.1'
* 3.1:
  Fix event annotation for arguments resolving event
  [HttpKernel] Fix nullable types handling
  [FrameworkBundle] Alter container class instead of kernel name in cache:clear command
  [VarDumper] Fix ReflectionNamedType->getName() detection
  [Console] Fix validation of null values using SymfonyStyle::ask()
  [Validator] Add Czech and Slovak translations for BIC
  [Console] Escape default value and question in SymfonyStyle::ask()
2016-10-05 10:12:34 +02:00
Nicolas Grekas
ed8ccd1689 Merge branch '2.7' into 2.8
* 2.7:
  [FrameworkBundle] Alter container class instead of kernel name in cache:clear command
  [Console] Fix validation of null values using SymfonyStyle::ask()
  [Console] Escape default value and question in SymfonyStyle::ask()
2016-10-05 10:09:05 +02:00
Nicolas Grekas
73c96939cd [FrameworkBundle] Alter container class instead of kernel name in cache:clear command 2016-10-04 16:32:03 +02:00
Jakub Zalas
d093c406ca [FrameworkBundle] Fix TranslationUpdateCommand tests after a merge 2016-09-13 11:19:55 +01:00
Nicolas Grekas
f5c1b1c077 Merge branch '3.1'
* 3.1:
  [travis/appveyor] Wire simple-phpunit
  [Console] fixed PHP7 Errors are now handled and converted to Exceptions
  Fix #19721
  Fix translation:update command count
  bumped Symfony version to 2.8.12
  updated VERSION for 2.8.11
  updated CHANGELOG for 2.8.11
  bumped Symfony version to 2.7.19
  updated VERSION for 2.7.18
  update CONTRIBUTORS for 2.7.18
  updated CHANGELOG for 2.7.18
  [Security] Optimize RoleHierarchy's buildRoleMap method
  [FrameworkBundle] Fix Incorrect line break in exception message (500 debug page)
  [Security] Added note inside phpdoc.
  Minor cleanups and improvements
  [form] lazy trans `post_max_size_message`.
  [DI] Fix setting synthetic services on ContainerBuilder
  [ClassLoader] Fix ClassCollectionLoader inlining with declare(strict_types=1)
2016-09-12 21:03:45 +02:00
Titouan Galopin
ffdd15ee06 Fix translation:update command count 2016-09-07 10:57:26 +02:00
Nicolas Grekas
d2d4b3ca82 [Yaml] Fix test scanning the full tmp directory 2016-08-29 17:14:38 +02:00
antograssiot
a8f3a93874 [FrameworkBundle] Allow to specify a domain when updating translations 2016-07-18 06:58:23 +02:00
Robin Chalas
33402ea747 Add Yaml LintCommand
Add tests

Fix tests & YamlLintCommand help formatting

fabbot fixes

Use Generator to iterate over the filesystem

Move STDIN related code in a method
Use RecursiveIteratorIterator::LEAVES_ONLY rather than SELF_FIRST
Stop using the Finder component when available (Make findFiles() private)
Re-add FrameworkBundle YamlLintCommandTest
Use CommandTester::getStatusCode() rather than assign execute()

Re-add feature for bundle directories, Test it
2016-06-23 13:12:38 +02:00
Fabien Potencier
c5ae309592 bug #16954 [TranslationUpdateCommand] fixed undefined resultMessage var. (aitboudad)
This PR was merged into the 2.8 branch.

Discussion
----------

[TranslationUpdateCommand] fixed undefined resultMessage var.

| Q             | A
| ------------- | ---
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets |  #16950
| License       | MIT
| Doc PR        | n/a

Commits
-------

1999e89 [TranslationUpdateCommand] fixed undefined resultMessage var.
2016-01-25 12:58:18 +01:00
Nicolas Grekas
111f51dfa5 Merge branch '2.7' into 2.8
* 2.7:
  [Process] Fix potential race condition
  [PhpUnitBridge] Re-enable the garbage collector
  typo
  [FrameworkBundle] Set the kernel.name properly after a cache warmup
  Removed spaces before semicolon
2016-01-06 10:59:23 +01:00
Nicolas Grekas
6cd79e92f6 Merge branch '2.3' into 2.7
* 2.3:
  [Process] Fix potential race condition
  typo
  [FrameworkBundle] Set the kernel.name properly after a cache warmup
  Removed spaces before semicolon
2016-01-06 10:57:37 +01:00
Jakub Zalas
1438b9a067 [FrameworkBundle] Set the kernel.name properly after a cache warmup 2016-01-04 18:15:54 +01:00
Abdellatif Ait boudad
1999e89e7c [TranslationUpdateCommand] fixed undefined resultMessage var. 2015-12-10 19:14:16 +00:00
Javier Eguiluz
c3ce7ca141 Updated the stlyes of the YAML commands 2015-10-02 15:03:16 +02:00
Nicolas Grekas
5549f4c5ff [FrameworkBundle] Fix tests 2015-09-29 14:11:23 +02:00
Fabien Potencier
58ed0762e9 Merge branch '2.7' into 2.8
* 2.7:
  Detect Mintty for color support on Windows
  Detect Mintty for color support on Windows
  Add a group for tests of the finder against the FTP server
  Fix license headers
  Forbid serializing a Crawler
  Fix phpdoc block of NativeSessionStorage class
  Added exception when setAutoInitialize is called when locked
  [FrameworkBundle] Advanced search templates of bundles
  [Security] Allow user providers to be defined in many files
  Use random_bytes function if it is available for random number generation
2015-09-27 12:09:46 +02:00
Fabien Potencier
3ba54c1c31 Merge branch '2.3' into 2.7
* 2.3:
  Detect Mintty for color support on Windows
  Add a group for tests of the finder against the FTP server
  Fix license headers
  Forbid serializing a Crawler
  Fix phpdoc block of NativeSessionStorage class
  Added exception when setAutoInitialize is called when locked
  [FrameworkBundle] Advanced search templates of bundles
  [Security] Allow user providers to be defined in many files
  Use random_bytes function if it is available for random number generation
2015-09-27 12:08:38 +02:00
Christophe Coevoet
e610b416c9 Merge branch '2.7' into 2.8
* 2.7:
  Fix license headers
  Ensure the ClockMock is loaded before using it in the testsuite
  Fix with_minutes option in time widget
  Fixed properties not explicitily declared
2015-09-26 21:48:07 +02:00
Gábor Egyed
db8239ffab Fix license headers 2015-09-26 14:15:17 +02:00
Gábor Egyed
b03bcb34ec Fix license headers 2015-09-26 13:59:49 +02:00
Fabien Potencier
d60428c9ca feature #15738 Implement service-based Resource (cache) validation (mpdude)
This PR was squashed before being merged into the 2.8 branch (closes #15738).

Discussion
----------

Implement service-based Resource (cache) validation

| Q             | A
| ------------- | ---
| Bug fix?      | no
| New feature?  | yes
| BC breaks?    | no
| Deprecations? | yes
| Tests pass?   | yes
| Fixed tickets | #7230, #15692, #7782
| License       | MIT
| Doc PR        | symfony/symfony-docs#5136

### Overview

Currently, any metadata passed to `ConfigCache` (namely implementations of `ResourceInterface`) is serialized to disk. When the `ConfigCache` is validated, the metadata is unserialized and queried through `ResourceInterface::isFresh()` to determine whether the cache is fresh. That way, `ResourceInterface` implementations cannot interact with services, for example a database connection.

This PR introduces the new concept of `ResourceCheckers`. Services implementing `ResourceCheckerInterface` can be tagged as `config_cache.resource_checker` with an optional priority.

Clients that wish to use `ConfigCache` can then obtain an instance from the `config_cache_factory` service (which implements `ConfigCacheFactoryInterface`). The factory will take care of injecting resource checkers into the `ConfigCache` instance so that they can be used for cache validation.

Checking cache metadata is easy for `ResourceCheckers`:
* First, the `ResourceCheckerInterface::supports()` implementation is passed the metadata object in question. If the checker cannot handle the type of resource passed, `supports()` should return `false`.
* Otherwise, the `ResourceCheckerInterface::isFresh()` method will be called and given the resource as well as the timestamp at which the cache was initialized. If that method returns `false`, the cache is considered stale. If it returns `true`, the resource is considered unchanged and will *not* be passed to any additional checkers.

### BC and migration path

This PR does not (intend to) break BC but it comes with deprecations. The main reason is that `ResourceInterface` contains an `isFresh()` method that does not make sense in the general case of resources.

Thus, `ResourceInterface::isFresh()` is marked as deprecated and should be removed in Symfony 3.0. Resource implementations that can (or wish to) be validated in that simple manner can implement the `SelfCheckingResourceInterface` sub-interface that still contains (and will keep) the `isFresh()` method. The change should be as simple as changing the `extends` list.

Apart from that, `ResourceInterface` will be kept as the base interface for resource implementations. It is used in several `@api` interfaces and thus cannot easily be substituted.

For the Symfony 2.x series, a `BCResourceInterfaceChecker` will be kept that performs validation through `ResourceInterface::isFresh()` but will trigger a deprecation warning. The remedy is to either implement a custom ResourceChecker with a priority higher than -1000; or to switch to the aforementioned `SelfCheckingResourceInterface` which is used at a priority of -990 (without deprecation warning).

The `ConfigCache` and `ConfigCacheFactory` classes can be used as previously but do not feature checker-based cache validation.

### Outlook and closing remarks:

This PR supersedes #7230, #15692 and works at least in parts towards the goal of #7176.

The `ResourceCheckerInterface`, `...ConfigCache` and `...ConfigCacheFactory` no longer need to be aware of the `debug` flag. The different validation rules applied previously are now just a matter of `ResourceChecker` configuration (i. e. "no checkers" in `prod`).

It might be possible to remove the `debug` flag from Symfony's `Router` and/or `Translator` classes in the future as well because it was only passed on to the `ConfigCache` there.

Commits
-------

20d3722 Implement service-based Resource (cache) validation
2015-09-25 08:33:07 +02:00
Matthias Pigulla
20d3722120 Implement service-based Resource (cache) validation 2015-09-25 08:31:17 +02:00
Fabien Potencier
cafd4af7cd Merge branch '2.3' into 2.7
* 2.3:
  [DomCrawler] Invalid uri created from forms if base tag present
  [Console] update param type phpdoc for StreamOutput
  [Console] fix typo in OutputInterface
  [HttpKernel] fix broken multiline <esi:remove>
  [DoctrineBridge] Fixed #14840
  [FrameworkBundle] add a suggest for the serializer component
  [Yaml] Fix the parsing of float keys
  [Console] Ensure the console output is only detected as decorated when both stderr and stdout support colors
  Improve exception messages.
  Fix that two DirectoryResources with different patterns would be deduplicated
  Tests fix clockmock
  [WebProfilerBundle] Added tabindex="-1" to not interfer with normal UX
  missing "YAML" in the exception message.
  [framework-bundle] Add Test for TranslationUpdateCommand
  Use ObjectManager interface instead of EntityManager
2015-09-14 16:14:09 +02:00
Michael Lee
232f6fd534 [framework-bundle] Add Test for TranslationUpdateCommand
Added the test script as per the discussion in PR #15562

| Q             | A
| ------------- | ---
| Bug fix?      | no
| New feature?  | no
| BC breaks?    | no
| Deprecations? | yes
| Tests pass?   | yes
| Fixed tickets | n/a
| License       | MIT
| Doc PR        | n/a
2015-09-03 17:05:39 +08:00
Fabien Potencier
175af7f3ac Merge branch '2.6' into 2.7
* 2.6:
  Added 'default' color
  [HttpFoundation] Reload the session after regenerating its id
  [HttpFoundation] Add a test case to confirm a bug in session migration
  [2.6] Static Code Analysis for Components and Bundles
  [Finder] Command::addAtIndex() fails with Command instance argument
  [DependencyInjection] Freeze also FrozenParameterBag::remove
  [Twig][Bridge] replaced `extends` with `use` in bootstrap_3_horizontal_layout.html.twig
  fix CS
  fixed CS
  Add a way to reset the singleton
  [Security] allow to use `method` in XML configs
  Remove duplicate example
  Remove var not used due to returning early (introduced in 8982c32)
  Enhance hhvm test skip message
2015-07-09 18:07:40 +02:00
Vladimir Reznichenko
1dac1277a3 [2.6] Static Code Analysis for Components and Bundles 2015-07-08 07:59:48 +02:00
Abdellatif Ait boudad
33413153c9 [Translation][debug cmd] fixed failing tests. 2015-06-25 12:14:41 +00:00
Fabien Potencier
99f95ac212 Merge branch '2.6' into 2.7
* 2.6:
  fixed CS
  Allow new lines in Messages translated with transchoice() (replacement for #14867)
  [2.3] Fix tests on Windows
2015-06-11 19:26:34 +02:00
Fabien Potencier
f0045deaba Merge branch '2.3' into 2.6
* 2.3:
  fixed CS
  Allow new lines in Messages translated with transchoice() (replacement for #14867)
  [2.3] Fix tests on Windows
2015-06-11 19:26:27 +02:00
WouterJ
e3e5f3d661 [2.3] Fix tests on Windows 2015-06-10 02:09:26 +02:00