Releases: byjg/php-anydataset
Release 5.0.1
Release 5.0.0
This release includes several changes to update PHP version compatibility, introduce new configurations, and refactor the codebase for better type safety and modern PHP practices. The most important changes include updating the PHP versions in the PHPUnit workflow, adding new run configurations, and refactoring code to use stricter type declarations and enums.
Breaking Changes
Method | Changed To |
---|---|
IteratorFilter::addRelation() | IteratorFilter::and() |
IteratorFilter::addRelationOr() | IteratorFilter::or() |
class Relation | enum Relation |
PHP Version and Configuration Updates:
.github/workflows/phpunit.yml
: Updated the PHP versions matrix to include "8.3" and removed "8.0" and "7.4".
New Run Configurations:
.run/PSalm.run.xml
: Added a new run configuration for PSalm..run/Test Project.run.xml
: Added a new run configuration for PHPUnit.
Codebase Refactoring:
composer.json
: Updated PHP requirement to ">=8.1" and updated dependencies to newer versions. Addedautoload-dev
for test namespaces.src/AnyDataset.php
: Refactored class to use strict types, updated method signatures, and replaced deprecated methods. [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12]src/Enum/Relation.php
: ConvertedRelation
class to an enum for better type safety.
Other Improvements:
example.php
: Updated method call to useand
instead ofaddRelation
.src/Formatter/BaseFormatter.php
,src/Formatter/FormatterInterface.php
,src/Formatter/JsonFormatter.php
: Updated method signatures to use strict types and added type hints. [1] [2] [3] [4]
These changes collectively improve the codebase by ensuring compatibility with newer PHP versions, adding helpful configurations for development, and enforcing stricter type safety throughout the code.
Full Changelog: 4.9.2...5.0.0
Relase 4.9.2
What's Changed
Full Changelog: 4.9.1...4.9.2
Release 4.9.1
Release 4.9.0
What's Changed
- Fix deprecation warning for PHP 8.1.7 by @byjg in #13
- Fix deprecation warning in PHP 8.1.7
- Bump byjg/serializer which had a major refactory
- add toArray($fields = []) to get specific fields instead all of the fierds.
- Validate code agains PSalm
Full Changelog: 4.1.0...4.9.0
Release 4.1.0
Major changes
- Added Formatter classes
- Added Github actions
- Added field name case insensitive to Row class
- Added Validator field content
Detailed Changes
- Added AnyIterator::withFilter() method
- Added IteratorFilter::getInstance() method
- Added JsonFormatter class
- Added Row::enableFieldNameCaseInsensitive() method
- Added Row::fieldExists() method
- Added Row::isFieldNameCaseSensitive() method
- Added RowOutput class
- Added RowValidator class
- Added XmlFormatter class
- Removed AnyDataset::getAsDom() method, use XmlFormatter instead
- Removed Row::getAsDom() method, use XmlFormatter instead
- Removed Row::getAsJson() method, use JsonFormatter instead
- Switch argument position on method AnyDataset::getArray()
Release 4.0.1
- Minor adjustments.
- Expose the anydataset filename
- Explicit support for php://memory
- Added tests for PHP 7.3
Release 4.0.0
This version breaks compatibility with previous versions.
Anydataset was splitted in several specialized projects.This is good because you need to download only the dependencies will really use and it is easier to maintain and document features.
The features remains the same, but namespaces of the classes were changed. The projects wants to use the new AnyDataset version needs to rename the namespaces.\ByJG\Anydataset\Dataset is now \ByJG\Anydataset\Core (or each implementation like \ByJG\Anydataset\Lists, \ByJG\Anydaset\Db and so on).
Release 3.0.5
Added support for SSL Connection in MySQL
Release 3.0.4
Removed sobre PHPDoc comments