Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

Add a warning about routes parameters names limitations #7133

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 1,209 commits into from
Closed
Show file tree
Hide file tree
Changes from 16 commits
Commits
Show all changes
1209 commits
Select commit Hold shift + click to select a range
b9ebf03
after merge fixes
xabbuh Jul 20, 2016
8ae23dc
minor #109 after merge fixes (xabbuh)
xabbuh Jul 20, 2016
7ea1141
Merge branch '3.0' into 3.1
xabbuh Jul 20, 2016
fb27875
Merge branch '3.1'
xabbuh Jul 20, 2016
3f2f7b3
Merge branch '2.8' into 3.0
xabbuh Jul 20, 2016
e2c36a7
Merge branch '3.0' into 3.1
xabbuh Jul 20, 2016
d6ec754
Merge branch '3.1'
xabbuh Jul 20, 2016
9fb9fa8
Merge remote-tracking branch 'mercury/2.8' into 2.8
xabbuh Jul 20, 2016
d782d83
Merge branch '2.7' into 2.8
xabbuh Jul 20, 2016
088955b
Merge remote-tracking branch 'mercury/3.0' into 3.0
xabbuh Jul 21, 2016
912bc74
Merge branch '2.8' into 3.0
xabbuh Jul 21, 2016
8d984d8
Merge remote-tracking branch 'mercury/3.1' into 3.1
xabbuh Jul 21, 2016
148a713
Merge branch '3.0' into 3.1
xabbuh Jul 21, 2016
8204b4f
Merge remote-tracking branch 'mercury/master'
xabbuh Jul 21, 2016
1b532b1
Merge branch '3.1'
xabbuh Jul 21, 2016
c395c74
Merge branch '2.7' into 2.8
xabbuh Jul 28, 2016
19cc445
Merge branch '2.8' into 3.0
xabbuh Jul 28, 2016
8594d98
Merge branch '3.0' into 3.1
xabbuh Jul 28, 2016
299d3b4
Merge branch '3.1'
xabbuh Jul 28, 2016
2611798
Simplex\Framework - add argumentResolver property
alchimik Jul 30, 2016
fb24c74
minor #6748 Fix web/front.php (ranqiangjun)
weaverryan Aug 2, 2016
8d60d5c
fixed missing level in namespace
themasch Jul 21, 2016
c2c4bf8
bug #6761 fixed missing level in namespace (themasch)
weaverryan Aug 2, 2016
732bb33
Merge branch '2.7' into 2.8
weaverryan Aug 2, 2016
bbb72b4
Merge branch '2.8' into 3.0
weaverryan Aug 2, 2016
03ce45f
Merge branch '3.0' into 3.1
weaverryan Aug 2, 2016
b97d442
Merge branch '3.1'
weaverryan Aug 2, 2016
396cf06
update `cache` and `logs` folder locations
georgiana-gligor Aug 2, 2016
fa57021
minor #6825 update `cache` and `logs` folder locations (georgiana-gli…
wouterj Aug 4, 2016
b92f305
bug #6793 Simplex\Framework - add argumentResolver property (alchimik)
wouterj Aug 4, 2016
c5a4ea3
Simplex\Framework contructor - extra parameter
alchimik Jul 30, 2016
e00c866
bug #6790 Simplex\Framework contructor - remove extra parameter (alch…
wouterj Aug 4, 2016
21fcb72
custom error pages - Reference to security functions warning is no mo…
hvt Jul 27, 2016
e051e98
minor #6850 Remove outdated reference (hvt)
wouterj Aug 5, 2016
d6c8a2e
Merge branch '2.7' into 2.8
wouterj Aug 5, 2016
6e7a7cb
Merge branch '2.8' into 3.0
wouterj Aug 5, 2016
8a53e58
Merge branch '3.0' into 3.1
wouterj Aug 5, 2016
c7156e4
Merge branch '3.1'
wouterj Aug 5, 2016
e7c865e
Merge branch '2.7' into 2.8
wouterj Aug 5, 2016
4a15c8d
Added July changelog
wouterj Aug 5, 2016
0a36579
Merge branch '2.8' into 3.0
wouterj Aug 5, 2016
3ff5a22
Added July changelog
wouterj Aug 5, 2016
28d345a
Merge branch '3.0' into 3.1
wouterj Aug 5, 2016
0aba73d
Added July changelog
wouterj Aug 5, 2016
e1f83cc
Merge branch '3.1'
wouterj Aug 5, 2016
42d7888
Added July changelog
wouterj Aug 5, 2016
1a8c9ab
Fix Cache Pools: SQLite3Cache constructor argument
wimme002 Aug 5, 2016
1707db1
Update argument_value_resolver.rst
asandjivy Aug 8, 2016
d7e3c96
bug #6852 Fix Cache Pools: SQLite3Cache constructor argument (wimme002)
wouterj Aug 11, 2016
5f07a5c
bug #6863 Update argument_value_resolver.rst (asandjivy)
wouterj Aug 11, 2016
c56d5d8
Merge branch '2.7' into 2.8
wouterj Aug 11, 2016
1a3614c
Merge branch '2.8' into 3.0
wouterj Aug 11, 2016
79bd63c
Merge branch '3.0' into 3.1
wouterj Aug 11, 2016
da458d5
Merge branch '3.1'
wouterj Aug 11, 2016
cf7a0ea
Add PropertyInfo Component Documentation
Dec 5, 2015
96b139b
Suggested Changes
zanbaldwin Jul 11, 2016
7b786af
Fix Incorrect Indent
zanbaldwin Jul 11, 2016
78ea4a5
Update PropertyAccess Component Path
zanbaldwin Aug 16, 2016
a0409d7
Update Reference to Service Container Tags
zanbaldwin Aug 16, 2016
f7dad82
Merge branch '2.7' into 2.8
wouterj Aug 17, 2016
3b9db1f
Merge branch '2.8' into 3.0
wouterj Aug 17, 2016
1c8d4f1
Merge branch '3.0' into 3.1
wouterj Aug 17, 2016
a7f704c
Merge branch '3.1'
wouterj Aug 17, 2016
6d282e4
Fix typos
rendler-denis Aug 18, 2016
d8da21c
Update http_kernel_controller_resolver.rst
kostia-tarnashynskyi Aug 18, 2016
794563f
feature #5974 [PropertyInfo] Add Component Documentation (zanderbaldwin)
weaverryan Aug 20, 2016
7e296d8
[WIP] Tweaks to property info
weaverryan Aug 20, 2016
bf5188f
final tweaks
weaverryan Aug 20, 2016
fcf5e69
fixing indentation
weaverryan Aug 20, 2016
c9ea21f
bad link!
weaverryan Aug 20, 2016
bc00741
Merge branch '2.7' into 2.8
weaverryan Aug 20, 2016
a465d06
Merge branch '2.8' into 3.0
weaverryan Aug 20, 2016
0986e5e
Merge remote-tracking branch 'origin/3.0' into 3.0
weaverryan Aug 20, 2016
fc76f45
Merge branch '3.0' into 3.1
weaverryan Aug 20, 2016
c04ac56
Merge branch '3.1'
weaverryan Aug 20, 2016
d63a2f2
minor #6887 [FormComponent] Fix typos (rendler-denis)
weaverryan Aug 21, 2016
795ca15
minor #6888 Update http_kernel_controller_resolver.rst (audiua)
weaverryan Aug 21, 2016
2d5b420
Update custom_provider.rst
asandjivy Aug 19, 2016
f11f34b
bug #6892 Update custom_provider.rst (asandjivy)
weaverryan Aug 21, 2016
563bab8
Merge branch '2.7' into 2.8
weaverryan Aug 21, 2016
98e65bf
Merge branch '2.8' into 3.0
weaverryan Aug 21, 2016
d7585ee
Merge branch '3.0' into 3.1
weaverryan Aug 21, 2016
626ab4f
Merge branch '3.1'
weaverryan Aug 21, 2016
081c2d6
minor #6896 Tweaks to property info component (weaverryan)
weaverryan Aug 21, 2016
09ecf5f
Add deprecation warnings to relevant profiler options
jameshalsall Aug 23, 2016
5aeec90
feature #6908 Add deprecation warnings to relevant profiler options (…
wouterj Aug 26, 2016
5a9865f
[#6908] Add deprecations on some other places as well
wouterj Aug 26, 2016
0fffa1c
Merge branch '2.7' into 2.8
wouterj Aug 26, 2016
dadb75c
Merge branch '2.8' into 3.0
wouterj Aug 26, 2016
c084375
Remove reference to profiler lifetime property that was removed in 3.x
Aug 22, 2016
b2125c0
feature #6903 Remove reference to profiler lifetime property that was…
wouterj Aug 26, 2016
f7ba37a
Merge branch '2.7' into 2.8
wouterj Aug 28, 2016
d59b560
Merge branch '2.8' into 3.0
wouterj Aug 28, 2016
87cbecd
Merge branch '3.0' into 3.1
wouterj Aug 28, 2016
f78d06b
Merge branch '3.1'
wouterj Aug 28, 2016
f0fe739
[WCM][Config] Add ExprBuilder::ifEmpty()
ogizanagi Aug 27, 2016
299ac85
[Serializer] Add information about name converter parameter
michaelperrin Aug 29, 2016
75ed392
Add doc about unicode requirements
nicolas-grekas Aug 19, 2016
456dc05
[Guard] Improve clarity using the configured provider
chalasr Aug 24, 2016
5535c88
Updated single command How to
mickaelandrieu Aug 15, 2016
cb66d83
[VarDumper] Doc for the Data::seek() method
nicolas-grekas Aug 19, 2016
0ffc261
[Cache] Add chapter about invalidation, tags, etc.
nicolas-grekas Sep 2, 2016
2fecab5
Update tags.rst
TheBabaYaga Sep 6, 2016
3572a3d
[Filesystem] Add documentation for the readlink method
tgalopin Sep 7, 2016
9e56a2b
add back the option's description
xabbuh Sep 11, 2016
5e3b315
minor #6954 Typo fix in tags.rst (NoScopie)
xabbuh Sep 11, 2016
46825ab
[Bridge/PhpUnit] doc bin/simple-phpunit
nicolas-grekas Sep 12, 2016
c600921
Making changes thanks to Javier!
weaverryan Sep 15, 2016
b386600
feature #6962 [Bridge/PhpUnit] doc bin/simple-phpunit (nicolas-grekas…
weaverryan Sep 15, 2016
c6b4738
Update coloring.rst
SpacePossum Sep 16, 2016
f744396
Update doc about IDE file link format
nicolas-grekas Sep 1, 2016
852ce22
feature #6622 Documentation for YAML flags added in 3.1 (dantleech)
weaverryan Sep 17, 2016
20b3b37
[#6622] Fixing bad placement of anchor
weaverryan Sep 17, 2016
f2e2914
[#6622] Changing line from parse() to dump()
weaverryan Sep 17, 2016
8126206
minor #6922 [Config] Add ExprBuilder::ifEmpty() (ogizanagi)
weaverryan Sep 18, 2016
e151754
Method "$this->getMock()" is depreciated
Aug 29, 2016
db1bd1e
minor #6925 Method "$this->getMock()" is deprecated (JohnnyEvo)
weaverryan Sep 18, 2016
bba10f7
Merge branch '2.7' into 2.8
weaverryan Sep 18, 2016
78ae2a7
Merge branch '2.8' into 3.0
weaverryan Sep 18, 2016
49492b7
Merge remote-tracking branch 'origin/3.0' into 3.0
weaverryan Sep 18, 2016
7bc40da
Merge branch '3.0' into 3.1
weaverryan Sep 18, 2016
0c35a63
Update deployment.rst
adyassine Sep 20, 2016
8645262
Update input.rst
adyassine Sep 20, 2016
3682e6b
minor #6987 Update input.rst (adyassine)
xabbuh Sep 21, 2016
0878b32
minor #6960 [Reference] add back the option's description (xabbuh)
xabbuh Sep 21, 2016
79bc283
Callback doesn't have to be static
patrick-mcdougle Sep 17, 2016
649ee61
feature #6973 Callback doesn't have to be static (patrick-mcdougle)
xabbuh Sep 21, 2016
2182353
feature #6956 [Filesystem] Add documentation for the readlink method …
xabbuh Sep 21, 2016
021e3d7
feature #6968 [Console] Add multiple options for the output example (…
xabbuh Sep 21, 2016
f58526e
feature #6944 Update doc about IDE file link format (nicolas-grekas)
xabbuh Sep 21, 2016
ca53cb5
Use the standard cache and logs dir for the micro kernel example
javiereguiluz Aug 31, 2016
7be8b3f
minor #6935 Use the standard cache and logs dir for the micro kernel …
xabbuh Sep 21, 2016
4f89612
replace dirname() call with ..
xabbuh Sep 21, 2016
fa8d09f
minor #6931 [Guard] Improve clarity using the configured provider (ch…
xabbuh Sep 21, 2016
e9ce9ec
feature #6890 [Routing] Add doc about unicode requirements (nicolas-g…
xabbuh Sep 21, 2016
3baba73
[#6890] double backticks for enclose inlined code
xabbuh Sep 21, 2016
730686f
feature #6891 [VarDumper] Doc for the Data::seek() method (nicolas-gr…
xabbuh Sep 21, 2016
d64c19b
[#6891] move the versionadded directive
xabbuh Sep 21, 2016
3033bc7
[VarDumper] Adding semantics with metadata
nicolas-grekas Sep 2, 2016
cb50d14
feature #6926 [Serializer] Add information about name converter param…
xabbuh Sep 21, 2016
c4e46d8
[#6926] some tweaks after review
xabbuh Sep 21, 2016
80e84b9
Update voters.rst
asandjivy Aug 21, 2016
a8305b5
minor #6897 Update voters.rst (asandjivy)
xabbuh Sep 21, 2016
b5fe1b4
[#6897] some tweaks after review
xabbuh Sep 21, 2016
e1c55d0
Added paths options in Framework::translator configuration
mickaelandrieu Sep 21, 2016
7620abf
feature #6989 Added paths options in Framework::translator configurat…
xabbuh Sep 21, 2016
6f50d90
[#6989] some minor tweaks
xabbuh Sep 21, 2016
469d611
versionadded directive for name_converter option
xabbuh Sep 21, 2016
5c146d8
Update heroku.rst
adyassine Sep 21, 2016
762a00e
minor #6991 Update heroku.rst (adyassine)
xabbuh Sep 21, 2016
b032584
Merge branch '2.7' into 2.8
xabbuh Sep 21, 2016
6cb57d2
Merge branch '2.8' into 3.1
xabbuh Sep 21, 2016
f68f046
Merge branch '3.1'
xabbuh Sep 21, 2016
aa66771
[Reference] remove 2.8 versionadded directive
xabbuh Sep 21, 2016
d9481d8
fix reference syntax
xabbuh Sep 22, 2016
9eb60f3
minor #6996 fix reference syntax (xabbuh)
xabbuh Sep 22, 2016
7ea70c8
[Debug] Added configuration reference for new debug options
lyrixx Aug 12, 2016
a1dfcc5
Merge branch '2.8' into 3.1
xabbuh Sep 22, 2016
918d5c2
Merge branch '3.1'
xabbuh Sep 22, 2016
4f67cd7
minor #6984 Update deployment.rst (adyassine)
xabbuh Sep 22, 2016
618a1b1
minor #6994 [Reference] remove 2.8 versionadded directive (xabbuh)
xabbuh Sep 22, 2016
bdbb305
Update create_custom_field_type.rst
yceruto Sep 21, 2016
0f7e857
minor #6993 Update create_custom_field_type.rst (yceruto)
xabbuh Sep 22, 2016
13cff5b
Merge branch '2.7' into 2.8
xabbuh Sep 22, 2016
e22115e
Merge branch '2.8' into 3.1
xabbuh Sep 22, 2016
09975d7
Merge branch '3.1'
xabbuh Sep 22, 2016
e45779a
Several typo fixes
emirb Sep 22, 2016
7340268
Several typo fixes
emirb Sep 22, 2016
70d2dac
minor #7000 Several typo fixes (emirb)
xabbuh Sep 22, 2016
7de9f36
Merge branch '2.7' into 2.8
xabbuh Sep 22, 2016
894fd6d
Merge branch '2.8' into 3.1
xabbuh Sep 22, 2016
d0a0a04
minor #7001 Several typo fixes (emirb)
xabbuh Sep 22, 2016
463f9db
Merge branch '3.1'
xabbuh Sep 22, 2016
8588820
Use new array syntax and make a few minor tweaks
bocharsky-bw Sep 23, 2016
089214a
minor #7005 Use new array syntax and make a few minor tweaks (bochars…
xabbuh Sep 24, 2016
65256d7
minor #6992 [Serializer] versionadded directive for name_converter op…
xabbuh Sep 24, 2016
d973d0d
minor #6990 replace dirname() call with .. (xabbuh)
xabbuh Sep 24, 2016
29e4241
normalize versionadded wording
xabbuh Sep 24, 2016
ac678c8
minor #7007 normalize versionadded wording (xabbuh)
wouterj Sep 24, 2016
57923b9
Missing semicolon
Saphyel Sep 25, 2016
36a460d
minor #7008 Missing semicolon (Saphyel)
xabbuh Sep 27, 2016
2569aca
Document new utf8 option of Routing component
mickaelandrieu Sep 1, 2016
3a0c0d8
[Framework] Update link-to-source mapping definition
nicolas-grekas Sep 30, 2016
a529157
[ServiceContainer] Remove any references to the implementation detail…
lemoinem Oct 1, 2016
d657abd
Routing: add explanation for the "_fragment" parameter
Jul 29, 2016
5e8d015
feature #6783 Routing: add explanation for the "_fragment" parameter …
wouterj Oct 6, 2016
0a22dda
[#6783] Fixed a syntax error
wouterj Oct 6, 2016
255ef43
feature #6870 [Debug] Added configuration reference for new debug opt…
wouterj Oct 6, 2016
a3b3ac6
[#6870] Move versionadded directives directly after the headline
wouterj Oct 6, 2016
2f866f2
feature #6876 Updated single command How to (mickaelandrieu)
weaverryan Oct 6, 2016
4c10ea8
Explain the limitations of the custom messages in UniqueEntity
javiereguiluz Aug 30, 2016
ee2ab69
feature #6932 Explain the limitations of the custom messages in Uniqu…
wouterj Oct 6, 2016
4d1b926
feature #6938 Document new utf8 option of Routing component (mickaela…
wouterj Oct 6, 2016
c5328d7
[#6938] Syntax error fixes and splitting the big note
wouterj Oct 6, 2016
8120c70
Merge branch '2.7' into 2.8
wouterj Oct 6, 2016
4240817
Merge branch '2.8' into 3.1
wouterj Oct 6, 2016
2b027a9
Merge branch '3.1'
wouterj Oct 6, 2016
9348ccf
[#6938] tweak the wording a bit
xabbuh Oct 7, 2016
9a37e98
feature #7019 [Framework] Update link-to-source mapping definition (n…
xabbuh Oct 14, 2016
d3346d8
Update ProgressBar docs with regress information
Sep 2, 2016
cbe1aad
feature #6949 Update ProgressBar docs with regress information (james…
xabbuh Oct 14, 2016
7464f75
Update the Apache Router article to deprecate it entirely
javiereguiluz Aug 29, 2016
b1e3f55
minor #6928 Update the Apache Router article to deprecate it entirely…
xabbuh Oct 14, 2016
ec21fc8
Merge branch '2.7' into 2.8
xabbuh Oct 14, 2016
fe66a3b
Merge branch '2.8' into 3.1
xabbuh Oct 14, 2016
cea26fc
Merge branch '3.1'
xabbuh Oct 14, 2016
fd43061
feature #6946 [VarDumper] Adding semantics with metadata (nicolas-gre…
xabbuh Oct 14, 2016
eda0441
use FCQN to reference the form type in add()
xabbuh Oct 20, 2016
982fdf8
minor #7069 use FCQN to reference the form type in add() (xabbuh)
wouterj Oct 20, 2016
37066fa
minor #7048 [#6938] tweak the wording a bit (xabbuh)
wouterj Oct 20, 2016
6ffdd07
feature #7021 [ServiceContainer] Remove implementation details of pri…
wouterj Oct 20, 2016
6a7b054
[#7021] Fixed a minor typo
wouterj Oct 20, 2016
e2e0585
feature #6947 [Cache] Add chapter about invalidation, tags, etc. (nic…
wouterj Oct 20, 2016
12c3ec4
Merge branch '2.7' into 2.8
wouterj Oct 20, 2016
f17e4fe
Added August and September changelog
wouterj Oct 20, 2016
3658a5a
Merge branch '2.8' into 3.1
wouterj Oct 20, 2016
e9bd794
Added August and September changelog
wouterj Oct 20, 2016
b84e1b8
Merge branch '3.1'
wouterj Oct 20, 2016
b2d38b2
Added August and September changelog
wouterj Oct 20, 2016
a5e3c7e
Accept only array in TagAwareAdapter::invalidateTags()
Koc Oct 21, 2016
152aecc
minor #7073 Accept only array in TagAwareAdapter::invalidateTags() (Koc)
xabbuh Oct 22, 2016
70bf1a6
Simple typo fix
Oct 22, 2016
a1682de
[PhpUnitBridge] Doc for @expectedDeprecation & new configuration env …
nicolas-grekas Oct 21, 2016
4bc8726
remove caution message
Oct 22, 2016
9d5ae6b
minor #7077 remove caution message (snoek09)
xabbuh Oct 26, 2016
ec0ddfc
minor #7078 Simple typo fix (Renrhaf)
xabbuh Oct 26, 2016
94827c5
feature #7074 [PhpUnitBridge] Doc for @expectedDeprecation & new conf…
xabbuh Oct 26, 2016
e714cda
[#7074] minor typo fix
xabbuh Oct 26, 2016
0e0bdc3
[FrameworkBundle] add support for prioritizing form type extension tags
dmaicher Sep 9, 2016
c2e58d5
feature #6958 [FrameworkBundle] add support for prioritizing form typ…
xabbuh Oct 26, 2016
dab168f
[#6958] add missing versionadded directive
xabbuh Oct 26, 2016
3ce4093
Update birthday.rst
angyvolin Oct 30, 2016
30fbfc3
minor #7100 Update birthday.rst (angyvolin)
xabbuh Oct 30, 2016
c675825
Merge branch '2.7' into 2.8
xabbuh Oct 30, 2016
b462510
Merge branch '2.8' into 3.1
xabbuh Oct 30, 2016
6a90c82
Merge branch '3.1'
xabbuh Oct 30, 2016
b7056b6
[Profiler] Fix rst typo
hason Nov 1, 2016
cfaaf08
Update input.rst
andreybolonin Nov 2, 2016
e40ab02
minor #7107 [Profiler] Fix rst typo (hason)
xabbuh Nov 5, 2016
99045ab
minor #7109 fixed app/console to bin/console on 3.1 branch (andreybol…
xabbuh Nov 5, 2016
4a17054
Remove AssetsHelper from the templating component
alexpts Oct 30, 2016
0bb20a5
minor #7101 Remove AssetsHelper from the templating component (alexpts)
xabbuh Nov 5, 2016
f865f93
[#6947] some minor tweaks
xabbuh Oct 21, 2016
b0495e0
Documented the Lockable Trait
javiereguiluz Sep 5, 2016
0e7abbb
feature #6953 Documented the Lockable Trait (javiereguiluz)
xabbuh Nov 5, 2016
50469f2
[#6953] add versionadded directive
xabbuh Nov 5, 2016
b87b882
minor #7075 [#6947] some minor tweaks (xabbuh)
xabbuh Nov 5, 2016
2ed4f1a
Merge branch '2.7' into 2.8
xabbuh Nov 5, 2016
da25d3c
Merge branch '2.8' into 3.1
xabbuh Nov 5, 2016
06b4761
Merge branch '3.1'
xabbuh Nov 5, 2016
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
151 changes: 94 additions & 57 deletions 151 components/property_info.rst
Original file line number Diff line number Diff line change
Expand Up @@ -5,18 +5,14 @@
The PropertyInfo Component
==========================

The PropertyInfo component provides the functionality to get information
about class properties using metadata of popular sources.
The PropertyInfo component allows you to get information
about class properties by using different sources of metadata.

While the :doc:`PropertyAccess component </components/property_access>`
allows you to read and write values to/from objects and arrays, the PropertyInfo
component works solely with class definitions to provide information such
as data type and visibility about properties within that class.

Similar to PropertyAccess, the PropertyInfo component combines both class
properties (such as ``$property``) and properties defined via accessor and
mutator methods such as ``getProperty()``, ``isProperty()``, ``setProperty()``,
``addProperty()``, ``removeProperty()``, etc.
component works solely with class definitions to provide information about the
data type and visibility - including via getter or setter methods - of the properties
within that class.

.. _`components-property-information-installation`:

Expand All @@ -39,22 +35,48 @@ Additional dependencies may be required for some of the
Usage
-----

The entry point of this component is a new instance of the
:class:`Symfony\\Component\\PropertyInfo\\PropertyInfoExtractor`
class, providing sets of information extractors.
To use this component, create a new
:class:`Symfony\\Component\\PropertyInfo\\PropertyInfoExtractor` instance and
provide it with a set of information extractors.

.. code-block:: php

use Symfony\Component\PropertyInfo\PropertyInfoExtractor;
use Symfony\Component\PropertyInfo\Extractor\PhpDocExtractor;
use Symfony\Component\PropertyInfo\Extractor\ReflectionExtractor;
use Example\Namespace\YourAwesomeCoolClass;

// a full list of extractors is shown further below
$phpDocExtractor = new PhpDocExtractor();
$reflectionExtractor = new ReflectionExtractor();

// array of PropertyListExtractorInterface
$listExtractors = array($reflectionExtractor);

// array of PropertyTypeExtractorInterface
$typeExtractors = array($phpDocExtractor, $reflectionExtractor);

// array of PropertyDescriptionExtractorInterface
$descriptionExtractors = array($phpDocExtractor);

// array of PropertyAccessExtractorInterface
$accessExtractors = array($reflectionExtractor);

$propertyInfo = new PropertyInfoExtractor(
$arrayOfListExtractors,
$arrayOfTypeExtractors,
$arrayOfDescriptionExtractors,
$arrayOfAccessExtractors
$listExtractors,
$typeExtractors,
$descriptionExtractors,
$accessExtractors
);

The order of extractor instances within an array matters, as the first non-null
// see below for more examples
$class = YourAwesomeCoolClass::class;
$properties = $propertyInfo->getProperties($class);

Extractor Ordering
~~~~~~~~~~~~~~~~~~

The order of extractor instances within an array matters: the first non-null
result will be returned. That is why you must provide each category of extractors
as a separate array, even if an extractor provides information for more than
one category.
Expand Down Expand Up @@ -98,21 +120,26 @@ Extractable Information
-----------------------

The :class:`Symfony\\Component\\PropertyInfo\\PropertyInfoExtractor`
class exposes public methods to extract four types of information: list,
type, description and access information. The first type of information is
about the class, while the remaining three are about the individual properties.
class exposes public methods to extract four types of information:

* :ref:`*List* of properties <property-info-list>`: `getProperties()`
* :ref:`Property *type* <property-info-type>`: `getTypes()`
* :ref:`Property *description* <property-info-description>`: `getShortDescription()` and `getLongDescription()`
* :ref:`Property *access* details <property-info-access>`: `isReadable()` and `isWritable()`

.. note::

When specifiying a class that the PropertyInfo component should work
with, use the fully-qualified class name. Do not directly pass an object
as some extractors (the
:class:`Symfony\\Component\\PropertyInfo\\Extractor\\SerializerExtractor`
is an example) may not automatically resolve objects to their class
names - use the ``get_class()`` function.
Be sure to pass a *class* name, not an object to the extractor methods::

// bad! It may work, but not with all extractors
$propertyInfo->getProperties($awesomeObject);

Since the PropertyInfo component requires PHP 5.5 or greater, you can
also make use of the `class constant`_.
// Good!
$propertyInfo->getProperties(get_class($awesomeObject));
$propertyInfo->getProperties('Example\Namespace\YourAwesomeClass');
$propertyInfo->getProperties(YourAwesomeClass::class);

.. _property-info-list:

List Information
~~~~~~~~~~~~~~~~
Expand All @@ -134,6 +161,8 @@ containing each property name as a string.
}
*/

.. _property-info-type:

Type Information
~~~~~~~~~~~~~~~~

Expand Down Expand Up @@ -161,6 +190,10 @@ for a property.
}
*/

See :ref:`components-property-info-type` for info about the ``Type`` class.

.. _property-info-description:

Description Information
~~~~~~~~~~~~~~~~~~~~~~~

Expand All @@ -186,6 +219,8 @@ strings.
It can span multiple lines.
*/

.. _property-info-access:

Access Information
~~~~~~~~~~~~~~~~~~

Expand All @@ -200,6 +235,11 @@ provide whether properties are readable or writable as booleans.
$propertyInfo->isWritable($class, $property);
// Example Result: bool(false)

The :class:`Symfony\\Component\\PropertyInfo\\Extractor\\ReflectionExtractor` looks
for getter/isser/setter method in addition to whether or not a property is public
to determine if it's accessible. This based on how the :doc:`PropertyAccess </components/property_access>`
works.

.. tip::

The main :class:`Symfony\\Component\\PropertyInfo\\PropertyInfoExtractor`
Expand All @@ -216,10 +256,9 @@ Type Objects
------------

Compared to the other extractors, type information extractors provide much
more information than can be represented as simple scalar values - because
of this, type extractors return an array of objects. The array will contain
an instance of the :class:`Symfony\\Component\\PropertyInfo\\Type`
class for each type that the property supports.
more information than can be represented as simple scalar values. Because
of this, type extractors return an array of :class:`Symfony\\Component\\PropertyInfo\\Type`
objects for each type that the property supports.

For example, if a property supports both ``integer`` and ``string`` (via
the ``@return int|string`` annotation),
Expand All @@ -233,15 +272,12 @@ class.
instance. The :class:`Symfony\\Component\\PropertyInfo\\Extractor\\PhpDocExtractor`
is currently the only extractor that returns multiple instances in the array.

Each object will provide 6 attributes; the first four (built-in type, nullable,
class and collection) are scalar values and the last two (collection key
type and collection value type) are more instances of the :class:`Symfony\\Component\\PropertyInfo\\Type`
class again if collection is ``true``.
Each object will provide 6 attributes, available in the 6 methods:

.. _`components-property-info-type-builtin`:

Built-in Type
~~~~~~~~~~~~~
Type::getBuiltInType()
~~~~~~~~~~~~~~~~~~~~~~

The :method:`Type::getBuiltinType() <Symfony\\Component\\PropertyInfo\\Type::getBuiltinType>`
method will return the built-in PHP data type, which can be one of 9 possible
Expand All @@ -251,22 +287,22 @@ string values: ``array``, ``bool``, ``callable``, ``float``, ``int``, ``null``,
Constants inside the :class:`Symfony\\Component\\PropertyInfo\\Type`
class, in the form ``Type::BUILTIN_TYPE_*``, are provided for convenience.

Nullable
~~~~~~~~
Type::isNullable()
~~~~~~~~~~~~~~~~~~

The :method:`Type::isNullable() <Symfony\\Component\\PropertyInfo\\Type::isNullable>`
method will return a boolean value indicating whether the property parameter
can be set to ``null``.

Class
~~~~~
Type::getClassName()
~~~~~~~~~~~~~~~~~~~~

If the :ref:`built-in PHP data type <components-property-info-type-builtin>`
is ``object``, the :method:`Type::getClassName() <Symfony\\Component\\PropertyInfo\\Type::getClassName>`
method will return the fully-qualified class or interface name accepted.

Collection
~~~~~~~~~~
Type::isCollection()
~~~~~~~~~~~~~~~~~~~~

The :method:`Type::isCollection() <Symfony\\Component\\PropertyInfo\\Type::isCollection>`
method will return a boolean value indicating if the property parameter is
Expand All @@ -278,8 +314,8 @@ this returns ``true`` if:
* The mutator method the property is derived from has a prefix of ``add``
or ``remove`` (which are defined as the list of array mutator prefixes).

Collection Key & Value Types
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Type::getCollectionKeyType() & Type::getCollectionValueType()
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

If the property is a collection, additional type objects may be returned
for both the key and value types of the collection (if the information is
Expand Down Expand Up @@ -312,13 +348,14 @@ Using PHP reflection, the :class:`Symfony\\Component\\PropertyInfo\\Extractor\\R
provides list, type and access information from setter and accessor methods.
It can also provide return and scalar types for PHP 7+.

This service is automatically registered with the ``property_info`` service.
This service is automatically registered with the ``property_info`` service in
the Symfony Framework.

.. code-block:: php

use Symfony\Component\PropertyInfo\Extractor\ReflectionExtractor;

$reflectionExtractor = new ReflectionExtractor;
$reflectionExtractor = new ReflectionExtractor();

// List information.
$reflectionExtractor->getProperties($class);
Expand All @@ -338,13 +375,14 @@ PhpDocExtractor
Using `phpDocumentor Reflection`_ to parse property and method annotations,
the :class:`Symfony\\Component\\PropertyInfo\\Extractor\\PhpDocExtractor`
provides type and description information. This extractor is automatically
registered with the ``property_info`` providing its dependencies are detected.
registered with the ``property_info`` in the Symfony Framework *if* the dependent
library is present.

.. code-block:: php

use Symfony\Component\PropertyInfo\Extractor\PhpDocExtractor;

$phpDocExtractor = new PhpDocExtractor;
$phpDocExtractor = new PhpDocExtractor();

// Type information.
$phpDocExtractor->getTypes($class, $property);
Expand All @@ -359,10 +397,11 @@ SerializerExtractor

This extractor depends on the `symfony/serializer`_ library.

Using groups metadata from the :doc:`Serializer component </components/serializer>`,
Using :ref:`groups metadata <serializer-using-serialization-groups-annotations>`
from the :doc:`Serializer component </components/serializer>`,
the :class:`Symfony\\Component\\PropertyInfo\\Extractor\\SerializerExtractor`
provides list information. This extractor is not registered automatically
with the ``property_info`` service.
provides list information. This extractor is *not* registered automatically
with the ``property_info`` service in the Symfony Framework.

.. code-block:: php

Expand All @@ -389,9 +428,8 @@ DoctrineExtractor

Using entity mapping data from `Doctrine ORM`_, the
:class:`Symfony\\Bridge\\Doctrine\\PropertyInfo\\DoctrineExtractor`
- located in the Doctrine bridge - provides list and type information.
This extractor is not registered automatically with the ``property_info``
service.
provides list and type information. This extractor is not registered automatically
with the ``property_info`` service in the Symfony Framework.

.. code-block:: php

Expand Down Expand Up @@ -440,4 +478,3 @@ service by defining it as a service with one or more of the following
.. _`symfony/serializer`: https://packagist.org/packages/symfony/serializer
.. _`symfony/doctrine-bridge`: https://packagist.org/packages/symfony/doctrine-bridge
.. _`doctrine/orm`: https://packagist.org/packages/doctrine/orm
.. _`class constant`: http://php.net/manual/en/language.oop5.basic.php#language.oop5.basic.class.class
4 changes: 2 additions & 2 deletions 4 form/unit_testing.rst
Original file line number Diff line number Diff line change
Expand Up @@ -127,7 +127,7 @@ make sure the ``FormRegistry`` uses the created instance::
protected function setUp()
{
// mock any dependencies
$this->entityManager = $this->getMock('Doctrine\Common\Persistence\ObjectManager');
$this->entityManager = $this->getMockBuilder('Doctrine\Common\Persistence\ObjectManager')->getMock();

parent::setUp();
}
Expand Down Expand Up @@ -178,7 +178,7 @@ allows you to return a list of extensions to register::

protected function getExtensions()
{
$this->validator = $this->getMock(
$this->validator = $this->createMock(
'Symfony\Component\Validator\Validator\ValidatorInterface'
);
$this->validator
Expand Down
29 changes: 21 additions & 8 deletions 29 reference/configuration/framework.rst
Original file line number Diff line number Diff line change
Expand Up @@ -42,9 +42,9 @@ Configuration
* `only_exceptions`_
* `only_master_requests`_
* `dsn`_
* `username`_
* `password`_
* `lifetime`_
* `username`_ (deprecated since 2.8)
* `password`_ (deprecated since 2.8)
* `lifetime`_ (deprecated since 2.8)
* `matcher`_
* `ip`_
* :ref:`path <reference-profiler-matcher-path>`
Expand Down Expand Up @@ -559,20 +559,33 @@ The DSN where to store the profiling information.
username
........

**type**: ``string`` **default**: ``''``
.. caution::

When needed, the username for the profiling storage.
The ``framework.profiler.username`` setting is deprecated since Symfony 2.8
and will be removed in Symfony 3.0.

**type**: ``string`` **default**: ``''``

password
........

.. caution::

The ``framework.profiler.password`` setting is deprecated since Symfony 2.8
and will be removed in Symfony 3.0.

**type**: ``string`` **default**: ``''``

When needed, the password for the profiling storage.

lifetime
........

.. caution::

The ``framework.profiler.lifetime`` setting is deprecated since Symfony 2.8
and will be removed in Symfony 3.0.

**type**: ``integer`` **default**: ``86400``

The lifetime of the profiling storage in seconds. The data will be deleted
Expand Down Expand Up @@ -1474,9 +1487,9 @@ Full Default Configuration
only_exceptions: false
only_master_requests: false
dsn: file:%kernel.cache_dir%/profiler
username:
password:
lifetime: 86400
username: ~ # deprecated since 2.8, to be removed in 3.0.
password: ~ # deprecated since 2.8, to be removed in 3.0.
lifetime: 86400 # deprecated since 2.8, to be removed in 3.0.
matcher:
ip: ~

Expand Down
2 changes: 1 addition & 1 deletion 2 service_container/tags.rst
Original file line number Diff line number Diff line change
Expand Up @@ -195,7 +195,7 @@ Create a Compiler Pass
~~~~~~~~~~~~~~~~~~~~~~

You can now use a :ref:`compiler pass <components-di-separate-compiler-passes>` to ask the
container for any services with the ``acme_mailer.transport`` tag::
container for any services with the ``app.mail_transport`` tag::

// src/AppBundle/DependencyInjection/Compiler/MailTransportPass.php
namespace AppBundle\DependencyInjection\Compiler;
Expand Down
2 changes: 1 addition & 1 deletion 2 testing/database.rst
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,7 @@ it's easy to pass a mock object within a test::
public function testCalculateTotalSalary()
{
// First, mock the object to be used in the test
$employee = $this->getMock(Employee::class);
$employee = $this->createMock(Employee::class);
$employee->expects($this->once())
->method('getSalary')
->will($this->returnValue(1000));
Expand Down
Morty Proxy This is a proxified and sanitized view of the page, visit original site.