Commit Graph

35 Commits

Author SHA1 Message Date
Titouan Galopin
ffdd15ee06 Fix translation:update command count 2016-09-07 10:57:26 +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
Fabien Potencier
b07eca5453 Merge branch '2.6' into 2.7
* 2.6: (21 commits)
  Revert "bug #14262 [TwigBundle] Refresh twig paths when resources change. (aitboudad)"
  InvalidResourceException file name
  [Validators] Remove forgotten space in a translation key [nl]
  [Validators] Correct translation key and content [nl]
  bumped Symfony version to 2.6.9
  updated VERSION for 2.6.8
  updated CHANGELOG for 2.6.8
  added missing CVE number
  bumped Symfony version to 2.3.30
  updated VERSION for 2.3.29
  update CONTRIBUTORS for 2.3.29
  updated CHANGELOG for 2.3.29
  [Validators] Missing translations for arabic language.
  Code style
  fixed C
  [HttpKernel][Bundle] Check extension implements ExtensionInterface
  [DebugBundle] Fix config XSD
  [CS] [Console] StreamOuput : fix loose comparison
  [Framework][router commands] fixed failing test.
  [HttpKernel] Do not call the FragmentListener if _controller is already defined
  ...

Conflicts:
	src/Symfony/Component/HttpKernel/Kernel.php
	src/Symfony/Component/Serializer/Normalizer/PropertyNormalizer.php
2015-05-29 16:44:44 +02:00
Abdellatif Ait boudad
39cb6616a2 [Framework][router commands] fixed failing test. 2015-05-22 19:35:43 +00:00
Fabien Potencier
58efb98c6f Merge branch '2.6' into 2.7
* 2.6: (30 commits)
  [Translation] fixed JSON loader on PHP 7 when file is empty
  Fix typo
  Check instance of FormBuilderInterface instead of FormBuilder
  [Security] TokenBasedRememberMeServices test to show why encoding username is required
  [Security] AbstractRememberMeServices::encodeCookie() validates cookie parts
  fixed typo
  [console][formater] allow format toString object.
  [HttpFoundation] Fix baseUrl when script filename is contained in pathInfo
  Avoid redirection to XHR URIs
  [HttpFoundation] IpUtils::checkIp4() should allow  networks
  [2.6] Fix HTML escaping of to-source links
  Fix HTML escaping of to-source links
  ExceptionHandler: More Encoding
  Fix the rendering of deprecation log messages
  [FrameworkBundle] Removed unnecessary parameter in TemplateController
  [DomCrawler] Throw an exception if a form field path is incomplete.
  Fixed the indentation in the compiled template for the DumpNode
  [Console] Delete duplicate test in CommandTest
  [TwigBundle] Refresh twig paths when resources change.
  WebProfiler break words
  ...

Conflicts:
	src/Symfony/Bridge/Twig/composer.json
	src/Symfony/Bundle/WebProfilerBundle/Resources/views/Collector/logger.html.twig
	src/Symfony/Component/Debug/ExceptionHandler.php
2015-05-22 16:54:25 +02:00
Fabien Potencier
dd744c9f53 Merge branch '2.3' into 2.6
* 2.3:
  Fix typo
  Check instance of FormBuilderInterface instead of FormBuilder
  [Security] TokenBasedRememberMeServices test to show why encoding username is required
  [Security] AbstractRememberMeServices::encodeCookie() validates cookie parts
  [console][formater] allow format toString object.
  [HttpFoundation] Fix baseUrl when script filename is contained in pathInfo
  Avoid redirection to XHR URIs
  [HttpFoundation] IpUtils::checkIp4() should allow  networks
  Fix HTML escaping of to-source links
  [FrameworkBundle] Removed unnecessary parameter in TemplateController
  [DomCrawler] Throw an exception if a form field path is incomplete.
  [Console] Delete duplicate test in CommandTest
  [TwigBundle] Refresh twig paths when resources change.
  WebProfiler break words
  fixed typo
  Update README.md
  [HttpKernel] Handle an array vary header in the http cache store
  [Security][Translation] fixes #14584
  [Framework] added test for Router commands.
  Handled bearer authorization header in REDIRECT_ form

Conflicts:
	src/Symfony/Component/Debug/ExceptionHandler.php
2015-05-22 16:53:08 +02:00
Abdellatif Ait boudad
f75790a216 [TranslationDebugCommand] fixed failing tests. 2015-05-11 18:17:01 +00:00
Abdellatif Ait boudad
9a50252507 [Framework][Translation] added test for debug command. 2015-05-04 14:53:25 +00:00
Abdellatif Ait boudad
6d403a7795 [Framework] added test for Router commands. 2015-04-21 20:02:11 +01:00
Strate
76273bf459 [FrameworkBundle] cache:clear command fills *.php.meta files with wrong data 2014-11-21 08:48:44 +01:00
Tobias Schultze
83f556f0f9 remove obsolete test file 2014-09-25 02:08:46 +03:00
Fabien Potencier
15ca8b4076 [FrameworkBundle] removed obsolete file 2010-09-24 16:34:03 +02:00
Fabien Potencier
bf82cf42dd renamed Symfony\Components to Symfony\Component 2010-08-20 23:09:55 +02:00
Fabien Potencier
3f270f5faa [FrameworkBundle] added a skeleton for configuration in plain PHP 2010-07-20 16:34:40 +02:00