Releases: bluewing/sierra
1.17.3
1.17.2
1.17.1
What's fixed
- To support Laravel 9's change to how
getFacadeAccessor's resolve classes from the service container,Bluewing/Schema/Schemahas been updated, and a binding of the customised schema builder to the 'db.schema' key has been included inBluewing/Providers/BluewingServiceProvider. More information here.
1.17.0
What's changed
- Bumped the minimum PHP version to
8.1.4. - Support for Laravel 9, by bumping the following
composer.jsondependencies:laravel/framework8.81.0 → 9.10.1stripe/stripe-php7.112.0 → 7.125.0laravel/ui3.4.2 → 3.4.5phpunit/phpunit9.5.13 → 9.5.20orchestra/testbench6.24.0 → 7.4.0
1.16.0
What's new
- Introduces
Bluewing\Enumerations\InstantiatesFromKeytrait to allow a PHP 8 enumeration to be created from a key present on the enumeration. - Introduces
Bluewing\Enumerations\MapsToArraystrait to allow PHP 8 enumerations to be converted to arrays containing the keys of the enumeration, the backed values of the enumeration, or an associativearrayof keys to backed values. - Introduces
Bluewing\Testing\InteractsWithDatabaseJsontrait supporting JSON columns in a PostgreSQL database to have their keys and values asserted via theassertDatabaseJson, similar to the already presentassertDatabaseHasmethod.
What's changed
- Readability and type improvements to expandable functionality. Introduces the
Bluewing\Expandables\BaseExpandableabstract class to support clearer calculation of what expansion query string parameters are valid.
What's fixed
- Fixed a bug in
Bluewing\Rules\IsCoordinateComponentwhere coordinate values that were integers would be improperly validated (even if provided as a float with suffixed zeroes).
1.15.2
What's changed
Bluewing\Rules\ValidEnumhas been removed, as it has been superseded by the native enumeration rule provided by Laravel.
1.15.1
What's changed
-
Bluewing\Rules\ValidEnumerationValuehas been renamed toBluewing\Rules\ValidEnum, and now accepts any PHP 8.1 native enumeration which implements theBackedEnuminterface. Example usage:$rule = new ValidEnum(MyEnum::class); $rule->passes('attributeName', 'valueOnBackedEnumeration'); // true or false
1.15.0
What's changed
bluewing/sierranow requires PHP 8.1 via composer.json, as well as via itsDockerfile.- The
bluewing/sierradocker image now provides Composer 2.2.5, as well as XDebug 3.1.2. - Explicitly bumped the following composer.json dependencies:
laravel/framework8.78.0 → 8.81.0stripe/stripe-php7.108.0 → 7.112.0laravel/ui3.4.1 → 3.4.2mockery/mockery1.4.4 → 1.5.0phpunit/phpunit9.5.11 → 9.5.13orchestra/testbench6.23.2 → 6.24.0
- Removed
myclabs/php-enum, as we now implement PHP enumerations natively 🎉. docker-compose.yamlschema is now explicitly set to'3.8'.
1.14.1
What's changed
Explicitly bumped the following composer.json dependencies:
lcobucci/jwt4.1.4 → 4.1.5laravel/framework8.55.0 → 8.78.0stripe/stripe-php7.94.0 → 7.108.0laravel/ui3.3.0 → 3.4.1mockery/mockery1.4.3 → 1.4.4phpunit/phpunit9.5.8 → 9.5.11orchestra/testbench6.20.0 → 6.23.2
1.14.0
What's changed
-
Custom validation rules under the
Bluewing\Rulesnamespace can now use the traitBluewing\Rules\Support\HasCustomizableMessagesto expose functionality to the consumer to modify the returned error message if the validation rule fails, using thewithCustomMessagemethod, which fluently returns the modifiedRuleobject. -
Both
Bluewing\Rules\MissingInTenancyandBluewing\Rules\ExistsInTenancynow have static constructors and instance methods that more fluently build the respective rule objects. For example:// Previously: new MissingInTenancy('Departments', 'name') $rules = [ 'name' => [ MissingInTenancy::inTable('Departments')→forColumn('name') ] ];