zetacomponents/base
The Base package provides the basic infrastructure that all packages rely on. Therefore every component relies on this package.
1.9.5
8.3M downloads/mo
#2442 most downloaded on Packagist
zetacomponents/Base
What this package is like to depend on
Last release 9 months ago
12 Nov 2025
Release timing varies
gaps range from 2 weeks to 4.7 years
Nearly every release is documented
notes for 40 of 40 stable releases
Nothing withdrawn
no release was ever pulled
20 years old
40 releases · first in 2006
1 release in the last 12 months
see the full history below
Release timeline
40 releases · Apr 2006 to Nov 2025
2007
2009
2011
2013
2015
2017
2019
2021
2023
2025
Releases
latest 40-
1.9.512 Nov 2025Release notes
Open source →- PHP 8.5 compatibility: Case statements followed by a semicolon (;) are deprecated, use a colon (:) instead.
-
1.9.430 Nov 2022 -
1.9.325 Jul 2021Release notes
Open source →- PHP 8.1 compatibility, by adding the ReturnTypeWillChange attribute to ezcBaseOptions.
-
1.9.225 Jul 2021Release notes
Open source →- Move from Travis to GHA
- Disable the testRecursive tests, as they cause an incompatibility with PHPUnit 8
- Remove default value for arguments to ezcBaseFile::walkRecursive
- Upgrade to PHPUnit 8
- These all make this, and the tests, work with PHP 7.2 and later.
-
1.9.128 Nov 2017Release notes
Open source →- PHP 7.2 support, which deprecates __autoload and "Object" is now a keyword.
-
1.6.109 Feb 2009Release notes
Open source →- Fixed issue #14402: Auto detection of external programs (binaries) does not throw warnings anymore.
-
1.5.206 Oct 2008Release notes
Open source →- Fixed an issue in ezcBaseFile::removeRecursive, where the parent directory could not be written to. We now make sure nothing is deleted until we're sure everything can be deleted.
-
1.5.104 Aug 2008Release notes
Open source →- Fixed issue #13370: Infinitive loop in ezcBaseFile::calculateRelativePath().
- Implemented issue #11865: Different development modes.
-
1.4.114 Jan 2008Release notes
Open source →- Fixed issue #11448: ezc_bootsrap.php uses relative paths.
- Fixed issue #12316: Numbers in own component prefix not possible.
- Fixed issue #12329: ezcBaseFeatures::findExecutableInPath's return value does not include the extension to the executable at the end on Windows.
- Added an optional argument to the ezcBaseValueException constructor to allow the exception to be used for non-property/setting type violations as well.
-
1.3.130 Jul 2007Release notes
Open source →- Fixed issue #11057: The ezcBaseConfigurationInitializer inteface is not enforced for callback classes.
-
1.1.128 Aug 2006Release notes
Open source →- Added the ezcBaseStruct class from which all structs in all components should inherit from.
-
1.919 Sep 2014Release notes
Open source →- Adjusted source headers of Base to Apache license.
- Updated: Moving copyright information to NOTICE files.
- Use ezc_autoload() instead of __autoload(). (tests)
- Use assertInternalType() instead of assertType() where appropriate. (tests)
- Use assertInstanceOf() instead of assertType(). (tests)
- Fixed #ZETACOMP-39: ezcBaseOptions implements Iterator.
- Fixed #ZETACOMP-59: ezcBaseFileFindRecursiveTest::testRecursive1|2|4() now work.
- Fixed #ZETACOMP-33: Many dead links (404).
- Remove custom test runner.
- Fix ezcBaseTest.
- Added composer.json and test dependencies.
- Added Travis configuration.
-
1.821 Dec 2009 -
1.7rc122 Jun 2009Release notes
Open source →- Fixed an issue with the PEAR reader as sometimes the returned structure is different.
-
1.7beta108 Jun 2009Release notes
Open source →- Made sure that we (try) to load the PEAR Registry class so that PEAR doesn't have to be in autoload.
-
1.7alpha126 May 2009Release notes
Open source →- Added 'SunOS' to the list of Unices to make finding binaries work on Solaris as well.
- Implemented issue #13718: Include metadata about installed components that can be queried to figure out required PHP versions, dependencies and component versions.
-
1.729 Jun 2009 -
1.6rc115 Dec 2008Release notes
Open source →- Implemented issue #12542: Refactored the ezcBaseFile::findRecursive() method into the ezcBase::walkRecursive() method so that you can setup your own callbacks to "do things". The findRecursive() method is now implemented through this.
- Fixed issue #14091: Incorrect documentation for ezcBaseConfigurationInitializer.
-
1.6beta101 Dec 2008 -
1.605 Jan 2009 -
1.5rc110 Jun 2008 -
1.5beta127 May 2008Release notes
Open source →- Added the ezcBasePersistable interface that can be used to ensure that the object implementing this interface can be used with PersistentObject and Search.
-
1.5alpha213 May 2008Release notes
Open source →- Fixed a bug in ezcBaseFile::findRecursive that prevented you from passing an empty array to collect statistics.
- Changed ezcBase::getInstallationPath() so that it always returns a trailing directory separator.
-
1.5alpha107 Apr 2008Release notes
Open source →- Implemented issue #8529: Added a by-reference argument to ezcBaseFile::findRecursive that returns statistsics (count and total size) of all files that are returned by this function.
- Implemented issue #11506: Added the static method ezcBase::getInstallationPath().
- Implemented issue #12694: replace reflection test for class type with spl function.
-
1.516 Jun 2008 -
1.4rc105 Dec 2007 -
1.4beta128 Nov 2007 -
1.4alpha229 Oct 2007Release notes
Open source →- Added the ezcBaseFile::copyRecursive() method, to recursively copy files or directories
- Fixed issue #11540: Problems with ezcFile::findRecursive and ezcFile::calculateRelativePath on systems where DIRECTORY_SEPERATOR is not //.
-
1.4alpha118 Sep 2007Release notes
Open source →- Added the ezcBaseFile class, which was moved from the File component.
- Added the ezcBaseFile::isAbsolutePath() method, which returns whether a path is absolute or relative.
-
1.417 Dec 2007 -
1.3rc125 Jun 2007 -
1.3beta231 May 2007Release notes
Open source →- Fixed issue #10704: Autoload fails on class not found. The exception is now off by default, but can be turned on through the "debug" property of the ezcBaseAutoloadOptions class. This option class can be set with ezcBase::setOptions().
-
1.302 Jul 2007 -
1.2beta220 Nov 2006Release notes
Open source →- Fixed issue #8507: Two autoload directories with the same basepath don't work.
- Fixed issue #9390: Classes in external repositories that map to the same autoload filename of an internal component were added to the external autoload cache array as well.
-
1.2beta124 Oct 2006Release notes
Open source →- Added the ezcBaseFeatures class to check whether the current PHP installation and environment provides features that can be used in the components.
- Added the ezcBaseInit class that assists you by setting up on-demand configurations for objects (most notable useful for singleton classes).
- Implemented FR #8508: Display search paths for the autoload files in case of a missing class.
- Implemented FR #8753: Added the 'Base/ezc_bootstrap.php' file which sets up the autoload environment for you to facilitate an easier way of starting to use the eZ components.
-
1.218 Dec 2006Release notes
Open source →- Fixed issue #9658: Checking if $_ENV['PATH'] is set before using it in ezcBaseFeatures.
- Fixed issue #9780: ezcBaseFeatures throws notice about non-existing array key "PATH".
- Fixed issue #9819: Let all components deal with the ezcBaseAutoloadException properly.
- Fixed the exception name for 'ezcBaseDoubleClassRepositoryPrefix' - it was missing "Exception".
- Implemented issue #9811: If a file for a class can not be found through autoloading, we now throw the ezcBaseAutoloadException which makes debugging easier.
- Added the static method ezcBaseFeatures::findExecutableInPath() that searches the path for the given executable.
- Added the static method ezcBaseFeatures::os() that returns a sanitized version of the current OS' name.
-
1.1rc129 May 2006Release notes
Open source →- Fixed bug #8252: Autoloading for external repositories only works for the first such class.
-
1.1beta209 May 2006Release notes
Open source →- Added support for external class repositories. You can now add a class repository to the autoload mechanism by using the addClassRepository() method.
- Added a method to return all configured class repositories.
- Added the REMOVE constant to the ezcBaseFileException.
- Added the ezcBaseOptions class that serves as base class for all option classes in the components.
-
1.1beta119 Apr 2006Release notes
Open source →- Changed the way how files are included when the SVN checkout of the eZ components was used. This does not affect normal use of the components.
- Fixed class descriptions for the exceptions in the documentation.
-
1.109 Jun 2006Release notes
Open source →- Fixed bug #8434: ezcBase autoload system does not handle classes without a prefix.
- Fixed bug #8435: ezcBase::addClassRepository assumes the ezc way of structuring files. From now on the path specifying the autoload directory is not relative to the repository directory anymore.