sebastian/recursion-context
Provides functionality to recursively process PHP variables
8.0.1
945M downloads/mo
#45 most downloaded on composer
sebastianbergmann/recursion-context
What this package is like to depend on
Last release 12 days ago
11 Aug 2026
Release timing varies
gaps range from 2 weeks to 2.2 years
Some releases are documented
notes for 16 of 29 stable releases
Nothing withdrawn
no release was ever pulled
12 years old
29 releases · first in 2015
5 releases in the last 12 months
see the full history below
Release timeline
29 releases · Jan 2015 to Aug 2026Releases
latest 29-
8.0.103 Aug 2026Release notes
Open source →Changed
Context::contains()no longer has to look at more than one element of an array to recognise it; for arrays whose internal hash table has gaps, for instance because elements were removed usingunset(), this used to take time proportional to the size of the array
Fixed
Context::add()returned a key that neitherContext::contains()nor a subsequentContext::add()would report for arrays that already have an element with the largest possible integer key
Release notes
Open source →Changed
Context::contains()no longer has to look at more than one element of an array to recognise it; for arrays whose internal hash table has gaps, for instance because elements were removed usingunset(), this used to take time proportional to the size of the array
Fixed
Context::add()returned a key that neitherContext::contains()nor a subsequentContext::add()would report for arrays that already have an element with the largest possible integer key
-
8.0.006 Feb 2026 -
7.0.113 Aug 2025Release notes
Open source →Changed
- Do not use
SplObjectStoragemethods that will be deprecated in PHP 8.5
Release notes
Open source →Changed
- Do not use
SplObjectStoragemethods that will be deprecated in PHP 8.5
- Do not use
-
7.0.007 Feb 2025 -
6.0.313 Aug 2025Release notes
Open source →Changed
- Do not use
SplObjectStoragemethods that will be deprecated in PHP 8.5
Release notes
Open source →Changed
- Do not use
SplObjectStoragemethods that will be deprecated in PHP 8.5
- Do not use
-
6.0.203 Jul 2024Release notes
Open source →Changed
- This project now uses PHPStan instead of Psalm for static analysis
-
6.0.117 Jun 2024 -
6.0.002 Feb 2024 -
5.0.211 Aug 2026Release notes
Open source →Changed
- Suppress the PHP 8.6 deprecation of
spl_object_hash()for now; migrating the code tospl_object_id()would be a break of backward compatibility
- Suppress the PHP 8.6 deprecation of
-
5.0.110 Aug 2025Release notes
Open source →Changed
- Do not use
SplObjectStoragemethods that will be deprecated in PHP 8.5
Release notes
Open source →Changed
- Do not use
SplObjectStoragemethods that will be deprecated in PHP 8.5
- Do not use
-
5.0.003 Feb 2023Release notes
Open source →Removed
- This component is no longer supported on PHP 7.3, PHP 7.4 and PHP 8.0
-
4.0.711 Aug 2026Nothing published for this version
-
4.0.610 Aug 2025Nothing published for this version
-
4.0.503 Feb 2023Release notes
Open source →Fixed
- #26: Don't clobber
nullvalues ifarray_key_exists(PHP_INT_MAX, $array)
- #26: Don't clobber
-
4.0.426 Oct 2020Release notes
Open source →Fixed
SebastianBergmann\RecursionContext\Exceptionnow correctly extends\Throwable
-
4.0.328 Sep 2020Release notes
Open source →Changed
- #21: Add type annotations for in/out parameters
- Changed PHP version constraint in
composer.jsonfrom^7.3 || ^8.0to>=7.3
-
4.0.226 Jun 2020 -
4.0.115 Jun 2020 -
4.0.007 Feb 2020Nothing published for this version
-
3.0.411 Aug 2026Nothing published for this version
-
3.0.310 Aug 2025Nothing published for this version
-
3.0.201 Mar 2024Nothing published for this version
-
3.0.130 Nov 2020Nothing published for this version
-
3.0.003 Mar 2017Nothing published for this version
-
2.0.019 Nov 2016Nothing published for this version
-
1.0.503 Oct 2016Nothing published for this version
-
1.0.211 Nov 2015Nothing published for this version
-
1.0.121 Jun 2015Nothing published for this version
-
1.0.024 Jan 2015Nothing published for this version