-
- Fixed an issue with PHP 8.2 #36
-
- Removed support for Symfony 5 Event Dispatcher due to compatibility issues #32
-
- Added PHP 8.1 support
- If you use
ArrayTraits\Seriazable
, make sure you do not override the methods (use PHP 8 methods instead)
-
- Updated phpstan to v1.0
-
- Added
parent@: true
option for blueprints to include rules for parent fields
- Added
-
- Fixed deprecated warnings in PHP 8.1
-
- Improved
UniformResourceLocator
to supportfile://
scheme
- Improved
-
- Fixed blueprint merge where second blueprint has non-array field definition
- Fixed implicit cast from null to string in
UniformResourceLocator
-
- Fixed default field type settings not being merged recursively causing default validation rules to get missing
-
- Pass new phpstan level 8 tests
-
- Fixed
Trying to access array offset on value of type int
inBlueprintSchema::getFieldKey()
- Fixed
-
- Updated minimum requirement to PHP 5.6.0
- Deprecated Event classes in favor of PSR-14
- PHP 7.4 compatibility: implemented required
Stream::stream_set_option()
method (#28, thanks @lcharette) - Pass phpstan level 8 tests
- Added new
UniformResourceLocator::getResource()
method to simplify code where filename is always required - Added support for
replace-name@
in blueprints (#24, thanks @drzraf) - Calling
File::instance()
with empty filename is now deprecated
-
- Fixed
new UniformResourceItarator()
not throwing exception when path is non-existing - Fixed missing frontmatter if markdown file had UTF-8 BOM (#14, thanks @A----)
- Fixed many other edge cases
- Fixed
-
- Fixed
File::writable()
returning true if an existing file is read-only with the folder being writable - Fixed
File::save()
silently ignoring failures with read only streams - Regression: Fixed file saving when temporary file cannot be created to the current folder / stream
- Fixed
-
- Minor code optimizations
- Improved
File::save()
to use a temporary file if file isn't locked
-
- Fixed
Obtaining write lock failed on file...
- Fixed
mkdir(...)
race condition
- Fixed
-
- Added
UniformResourceLocator::clearCache()
to allow resource cache to be cleared - Added
$extends
parameter toBlueprintForm::load()
to overrideextends@
- Added
-
- Improved messages in
Stream
exceptions
- Improved messages in
-
- Fixed bugs when using
mkdir()
,rmdir()
,rename()
or creating new files with URIs
- Fixed bugs when using
-
BlueprintForm
: Implemented support for multipleimport@
s and partialimport@
s (#17)
-
YamlFile
: Added support for@data
without quoting it (fixes issues with Symfony 3.4 ifcompat=true
)YamlFile
: Added compatibility mode which falls back to Symfony YAML 2.8.38 if parsing with newer version failsYamlFile
: Makecompat
andnative
settings global, enablenative
setting by default- General code cleanup, some optimizations
-
Session
: Removed broken request counter
-
- Improved exception message in
File::content()
class when failing to load the data
- Improved exception message in
-
- Fixed
Blueprintform::resolve()
to use slash notation by default instead of dot notation - Fixed warning if badly formatted
$path
parameter is given toUniformResourceLocator::addPath()
- Fixed
Blueprintform::fields()
returning bad value if there were no fields
- Fixed
-
- Blueprint: Add support for a single array field in forms
-
- Fixed
IniFile::content()
should not fail if file doesn't exist - Session: Protection against invalid session cookie name throwing exception
- Session: Do not destroy session on CLI
- BlueprintSchema: Fixed warning when field list is not what was expected
- Fixed
-
- Allow calls without parameter in
UniformResourceLocator::getPaths()
- Add support for
BlueprintSchema::getPropertyName()
andgetProperty()
- Add domain parameter to Session constructor
- Add support for
FilesystemIterator::FOLLOW_SYMLINKS
in RecursiveUniformResourceIterator class
- Allow calls without parameter in
-
- Added a new function BlueprintForm::getFilename()
-
- BlueprintsForm: Detect if user really meant to extend parent blueprint, not another one
-
- Add new function File::rename()
- Add new function UniformResourceLocator::fillCache()
-
- Fix collections support in BluprintSchema::extra()
- Fix exception in stream wrapper when scheme is not defined in locator
- Prevent UniformResourceLocator from resolving paths outside of defined scheme paths (#8)
- Fix breaking YAML files which start with three dashes (#5)
-
- Add new function UniformResourceLocator::isStream()
- Add new class BlueprintForm
- Renamed Blueprints class into BlueprintSchema
- Add new function BlueprintSchema::extra() to return data fields which haven't been defined in blueprints
- Add support to unset and replace blueprint fields and properties
- Allow arbitrary dynamic fields in Blueprints (property@)
- Add default properties support for form field types
- Remove dependency on ircmaxell/password-compat
- Add support for Symfony 3
- Add a few unit tests
-
- UniformResourceLocator::addPath(): Add option to add path after existing one (falls back to be last if path is not found)
-
- Fix blueprint without a form
- Fix merging data with empty blueprint
-
- Backwards compatibility break: Blueprints class needs to be initialized with
init()
if blueprints contain@data-*
fields - Renamed NestedArrayAccess::remove() into NestedArrayAccess::undef() to avoid name clashes
- Backwards compatibility break: Blueprints class needs to be initialized with
-
- Fix regression: Default values for collections were broken
- Fix Argument 1 passed to
RocketTheme\Toolbox\Blueprints\Blueprints::mergeArrays()
must be of the type array - Add exception on Blueprint collection merging; only overridden value should be used
- File locking truncates contents of the file
- Stop duplicate Messages getting added to the queue