Releases: apiato/apiato
Releases · apiato/apiato
v12.4.1
v12.4.0
Full Changelog: v12.2.0...v12.4.0
Dependencies
Features
- feat(config): Add
unset
macro which can be used to completely remove a config key.config()->unset($key)
- feat(repository):
- Add
findById
method which returnsModel|Null
- Add
getById
method which returnsModel
or throws exception - Add
findMany
method which returnsCollection
(empty or not) - Add
pushCriteriaWith
method which is a wrapper aroundpushCriteria
method that allows for easier testing
- Add
Bug fixes
- fix(auth): Web authentication doesn't work with "login with custom attributes" feature
- fix(config): Debugbar feature is enabled by default (if DEBUGBAR_ENABLED is not specified in the .env)
Enhancements
- test: Add +400 tests. We are at +90% coverage now.
- refactor: Remove
Welcome
vendor container dependency and move it's features/endpoints toAuthentication
container:Landing/Welcome
&Login
pages - ci: Setup GitHub actions:
test runner
,php cs fixer
- ci: Setup
code coverage
- feat: Remove
lang
folder - refactor(test): Move all tests under
app/Containers/{SectionName}/{ContainerName}/Tests
directory - refactor(test): Replace PHPUnit annotations with new PHPUnit v10 attributes
- refactor: Remove useless PHP docs
- refactor: Remove
AuthorizationTrait
- refactor: Remove
IsResourceOwnerTrait
(use policies instead) - refactor: Use method injection (instead of constructor injection) in controllers to inject Actions
- refactor(container): Rename
GetAllResources
files toListResources
- refactor(user): Move default password rule definition from User model to
User/Providers/MainServicePorvider
v12.3.0
INVALID RELEASE
UPGRADE TO v12.4.0
v12.2.0
Full Changelog: v12.1.0...v12.2.0
Dependencies updated to
Core v8.7.0 & Doc Generator v3.0.5
Features
- feat: Add
activeGuard
helper to get the current logged-in user guard. - refactor: use
Core/Traits/ModelTrait.php
on
App\Containers\AppSection\Authorization\Models\Permission
and
App\Containers\AppSection\Authorization\Models\Role
instead of adding required traits manually. - feat: generate
verify email
route only if email verification is enabled
Bug fixes
- fix: use hash ids in
DetachPermissionsFromUserRequest
- fix:
reset password
endpoint accepts all http verbs. Now only acceptpost
.
Enhancements
- feat:
GetAllPermissionsTask
&GetAllRolesTask
now only return roles & permissions for the current logged-in user guard. - feat: added
guard_name
field to the response ofRole
&Permission
transformers. (Only for admin)
v12.1.1
Full Changelog: v12.1.0...v12.1.1
- fix: unable to generate docs (introduced in v12.1.0)
A PHP CS Fixer rule was changing the API Docs documentation in an unexpected way which was causing an error while generating the docs.
Note: If you are on v12.1.0
please see the fix and apply it to your code.
v12.1.0
Full Changelog: v12.0.2...v12.1.0
- chore(dep): update composer dependencies
- feat: add automated
php-cs-fixer
workflow - refactor: LoginCustomAttribute class
- feat(ExceptionHandling): render proper response based on request accept header
v12.0.2
- fix: lock
lcobucci/clock
version to prevent composer package conflicts
v12.0.1
Apiato:
- fix: PHPUnit correctly excludes files from coverage now
- chore(dep): update composer dependencies
Core:
https://github.com/apiato/core/releases/tag/v8.4.0
- feat: don't load routes if routes are cached
- fix: replace removed exception HashidsException -> InvalidArgumentException
v12.0.0
What's Changed
Full Changelog: v11.3.2...v12.0.0
Breaking changes
- Upgraded to Laravel v10 (All Laravel files (e.g. configs, .env, etc...) are now synced with the latest Laravel changes)
- Updated Composer dependencies to their latest version
- Laravel Passport route registration & customization has changed. Passport routes are now reside in a dedicated route file (Instead of registering them in the provider).
- Middleware
$routeMiddleware
field is renamed to$middlewareAliases
- Trimmed down the TestCase by removing some useless traits including:
TestsMockHelperTrait
TestsResponseHelperTrait
encode()
method return value has changed -> In case of unencodable value (e.g.null
), now returnsnull
instead of''
decode()
method return value has changed -> In case of undecodable value (e.g.null
), now returnsnull
instead of[]
- StateKeeperTrait is removed from
Request
None breaking changes
- Everything is refactored to use
constructor
injection instead of directly using the Service Container like soapp(CreateUserByCredentialsTask::class)->run()
- Added more tests and refactored the rest
- Switched to
invokable
controllers
\\ from
Route::get('profile', [GetAuthenticatedUserController::class, 'getAuthenticatedUser']);
\\ to
Route::get('profile', GetAuthenticatedUserController::class);
- All rotues are moved into the private documentation. e.g.
RefreshProxyForWebClient.v1.public.php
->RefreshProxyForWebClient.v1.private.php
- Added some getter methods to the Request including:
withUrlParameters()
getAccessArray()
getDecodeArray()
getUrlParametersArray()
- Added a
TestAssertionHelperTrait
to the TestCase which provides some usefull assertions
Bug fixes
withMeta()
method on ResponseTrait now correctly includes added meta data- Calling invokable controllers from routes #174
- Exception when try to generate an WEB CRUD Controller from generator #171
- PHP 8.1 warning on passing null to explode #176
11.3.4
- update(vendor): update composer dependencies
- update(node_modules): update npm dependencies
- fix test