All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Remove log statements from control exports
- Lazy role not always returning IDs
- Made exports more memory efficient
- Lazy model not returning group ID
- Lazy models for lazyloading of control models through repositories
- Events fired on all repository actions with side effects
- Reduced scope of some cache to avoid lingering changes not being cleared
- Dummy models that can be substituted for models that have been deleted
- Use new Laravel factories rather than legacy factories.
- Upgrades to use Laravel 8
2.1.5 - (16/06/2020)
- Removed the AirTable integration since it is now provided by an external package
2.1.4 - (15/06/2020)
- Added the Airtable export handler for exporting control
2.1.3 - (01/05/2020)
- Passing null to DataUserController::update sets a field to null
- Passing null to DataGroupController::update sets a field to null
- Passing null to DataRoleController::update sets a field to null
- Passing null to DataPositionController::update sets a field to null
- DataUserNotify notified create method on updating
2.1.2 - (28/04/2020)
- DataUser::getAllWhere matched any base attributes not all base attributes
- DataGroup::getAllWhere matched any base attributes not all base attributes
- DataRole::getAllWhere matched any base attributes not all base attributes
- DataPosition::getAllWhere matched any base attributes not all base attributes
2.1.1 - (27/04/2020)
- Return date format of Y-m-d h:i:s for data user date of birth
2.1 - (27/04/2020)
- Repositories to cache all get repository calls
- Observer framework for repositories
- Clear cache when needed
- Cascade deletes to preserve data integrity
2.0 - (22/04/2020)
- \BristolSU\ControlDB\Contracts\Repositories\User::paginate()
- \BristolSU\ControlDB\Contracts\Repositories\User::count()
- \BristolSU\ControlDB\Contracts\Repositories\DataUser::getAllWhere()
- \BristolSU\ControlDB\Contracts\Repositories\Group::paginate()
- \BristolSU\ControlDB\Contracts\Repositories\Group::count()
- \BristolSU\ControlDB\Contracts\Repositories\DataGroup::getAllWhere()
- \BristolSU\ControlDB\Contracts\Repositories\Role::paginate()
- \BristolSU\ControlDB\Contracts\Repositories\Role::count()
- \BristolSU\ControlDB\Contracts\Repositories\DataRole::getAllWhere()
- \BristolSU\ControlDB\Contracts\Repositories\Position::paginate()
- \BristolSU\ControlDB\Contracts\Repositories\Position::count()
- \BristolSU\ControlDB\Contracts\Repositories\DataPosition::getAllWhere()
- \BristolSU\ControlDB\Http\Controllers\Controller::paginate to slice and paginate through a list of items
- \BristolSU\ControlDB\Http\Controllers\Controller::paginationResponse to paginate through a sliced list of items
- Add timings of formatters to logs when exporting
-
\BristolSU\ControlDB\Http\Controllers\Group\GroupController::index returns a LengthAwarePaginator
-
\BristolSU\ControlDB\Http\Controllers\Group\GroupGroupTagController::index returns a LengthAwarePaginator
-
\BristolSU\ControlDB\Http\Controllers\Group\GroupRoleController::index returns a LengthAwarePaginator
-
\BristolSU\ControlDB\Http\Controllers\Group\GroupUserController::index returns a LengthAwarePaginator
-
\BristolSU\ControlDB\Http\Controllers\GroupTag\GroupTagController::index returns a LengthAwarePaginator
-
\BristolSU\ControlDB\Http\Controllers\GroupTag\GroupTagGroupController::index returns a LengthAwarePaginator
-
\BristolSU\ControlDB\Http\Controllers\GroupTagCategory\GroupTagCategoryController::index returns a LengthAwarePaginator
-
\BristolSU\ControlDB\Http\Controllers\GroupTagCategory\GroupTagCategoryGroupTagController::index returns a LengthAwarePaginator
-
\BristolSU\ControlDB\Http\Controllers\Position\PositionController::index returns a LengthAwarePaginator
-
\BristolSU\ControlDB\Http\Controllers\Position\PositionPositionTagController::index returns a LengthAwarePaginator
-
\BristolSU\ControlDB\Http\Controllers\Position\PositionRoleController::index returns a LengthAwarePaginator
-
\BristolSU\ControlDB\Http\Controllers\PositionTag\PositionTagController::index returns a LengthAwarePaginator
-
\BristolSU\ControlDB\Http\Controllers\PositionTag\PositionTagPositionController::index returns a LengthAwarePaginator
-
\BristolSU\ControlDB\Http\Controllers\PositionTagCategory\PositionTagCategoryController::index returns a LengthAwarePaginator
-
\BristolSU\ControlDB\Http\Controllers\PositionTagCategory\PositionTagCategoryPositionTagController::index returns a LengthAwarePaginator
-
\BristolSU\ControlDB\Http\Controllers\Role\RoleController::index returns a LengthAwarePaginator
-
\BristolSU\ControlDB\Http\Controllers\Role\RoleRoleTagController::index returns a LengthAwarePaginator
-
\BristolSU\ControlDB\Http\Controllers\Role\RoleUserController::index returns a LengthAwarePaginator
-
\BristolSU\ControlDB\Http\Controllers\RoleTag\RoleTagController::index returns a LengthAwarePaginator
-
\BristolSU\ControlDB\Http\Controllers\RoleTag\RoleTagRoleController::index returns a LengthAwarePaginator
-
\BristolSU\ControlDB\Http\Controllers\RoleTagCategory\RoleTagCategoryController::index returns a LengthAwarePaginator
-
\BristolSU\ControlDB\Http\Controllers\RoleTagCategory\RoleTagCategoryRoleTagController::index returns a LengthAwarePaginator
-
\BristolSU\ControlDB\Http\Controllers\User\UserController::index returns a LengthAwarePaginator
-
\BristolSU\ControlDB\Http\Controllers\User\UserGroupController::index returns a LengthAwarePaginator
-
\BristolSU\ControlDB\Http\Controllers\User\UserRoleController::index returns a LengthAwarePaginator
-
\BristolSU\ControlDB\Http\Controllers\User\UserUserTagController::index returns a LengthAwarePaginator
-
\BristolSU\ControlDB\Http\Controllers\UserTag\UserTagController::index returns a LengthAwarePaginator
-
\BristolSU\ControlDB\Http\Controllers\UserTag\UserTagUserController::index returns a LengthAwarePaginator
-
\BristolSU\ControlDB\Http\Controllers\UserTagCategory\UserTagCategoryController::index returns a LengthAwarePaginator
-
\BristolSU\ControlDB\Http\Controllers\UserTagCategory\UserTagCategoryUserTagController::index returns a LengthAwarePaginator
1.3.0 - (08/04/2020)
- Create the exporter framework for exporting control information
1.2.4 - (03/04/2020)
- Return a full_reference attribute in the tag model by default
1.2.3 - (02/04/2020)
- Updated repositories to use findOrFail
- Role Caching
1.2.2 - (26/03/2020)
- Always loading control factories
- Only load control factories when the faker class exists
1.2.1 - (18/03/2020)
- .gitattributes file
- Reference correct config file when publishing
1.2 - (04/02/2020)
- DataGroupRepository::getWhere allows searching with additional attributes
- DataUserRepository::getWhere allows searching with additional attributes
- DataRoleRepository::getWhere allows searching with additional attributes
- DataPositionRepository::getWhere allows searching with additional attributes
1.1 - (04/02/2020)
- Retrieve additional attributes through a static function in HasAdditionalProperties trait
- StoreRoleRequest position_name validation changed to role_name
- Save additional attribute function to set and save an additional attribute in one call
- Allow creation of and editing of additional attributes through the User API
- Allow creation of and editing of additional attributes through the Group API
- Allow creation of and editing of additional attributes through the Role API
- Allow creation of and editing of additional attributes through the Position API
1.0.2 - (03/02/2020)
- Default additional_attributes column to an empty array if null
1.0.1 - (02/02/2020)
- Removed default value for JSON column in database
1.0 - (30/01/2020)
- API
- model/repository implementations
- model/repository contracts