Releases: tvup/laravel-fejlvarp
v11.1.8
v11.1.7
v11.1.6
v11.1.5
Description:
This version introduces support for PHP 8.4 and improves test coverage for Laravel Fejlvarp. It includes:
- Support for PHP 8.4 in the GitHub Actions workflow.
- Refactoring of the GeoIP lookup function to use
Http::get()
instead offile_get_contents()
, ensuring better error handling and maintainability. - Content-Type fix for the GeoIP response, explicitly setting it to
application/javascript
. - Addition of new feature tests for API endpoints, increasing overall test coverage.
- Fixture-based testing for incidents, improving consistency in tests.
- Database configuration updates for SQLite in-memory testing.
- Dependency updates, including
guzzlehttp/guzzle
andorchestra/testbench
. - Allowing auto-merge for patch dependencies in
renovate.json
.
Key Changes:
- Modified: [.github/workflows/run-tests.yml](https://github.com/tvup/laravel-fejlvarp/blob/04cfb5433d112f492ec2932c1702bef705ed1966/.github%2Fworkflows%2Frun-tests.yml) → Added PHP 8.4 to the test matrix.
- Modified: [IncidentController.php](https://github.com/tvup/laravel-fejlvarp/blob/04cfb5433d112f492ec2932c1702bef705ed1966/src%2FHttp%2FControllers%2FApi%2FIncidentController.php) → Replaced
file_get_contents()
withHttp::get()
. - Added: [Feature tests for GeoIP lookup](https://github.com/tvup/laravel-fejlvarp/blob/04cfb5433d112f492ec2932c1702bef705ed1966/tests%2FFeature%2FHttp%2FControllers%2FApi%2FIncidentControllerTest.php).
- Added: [Fixture files](https://github.com/tvup/laravel-fejlvarp/tree/04cfb5433d112f492ec2932c1702bef705ed1966/tests/Fixtures) for structured test data.
- Modified: [composer.json](https://github.com/tvup/laravel-fejlvarp/blob/04cfb5433d112f492ec2932c1702bef705ed1966/composer.json) → Updated dependencies for PHP 8.4 compatibility.
- Modified: [TestCase.php](https://github.com/tvup/laravel-fejlvarp/blob/04cfb5433d112f492ec2932c1702bef705ed1966/tests%2FTestCase.php) → Configured SQLite in-memory database for tests.
Additional Notes:
This version ensures forward compatibility with PHP 8.4 and strengthens test reliability by introducing fixtures and additional test cases. 🚀
What's Changed
- Add user data to incident reports by @tvup in #44
- Migrate renovate config by @renovate in #46
- Release 2025Q1-1 by @tvup in #48
Full Changelog: v11.1.4...v11.1.5
v11.1.4
What's Changed
- Update actions/checkout action to v4 by @renovate in #19
- Update stefanzweifel/git-auto-commit-action action to v5 by @renovate in #18
- Refactoring, Dependency Management, and Enhanced Logging Features (#42) by @tvup in #43
- Add user data to incident reports (#44) by @tvup in #45
Enhancements and Updates
-
GitHub Actions Workflow Enhancements:
- Updated the
actions/checkout
action from version 3 to 4 across multiple workflows for improved performance and security. - Removed unnecessary permissions in the
php-cs-fixer.yml
workflow, enhancing security.
- Updated the
-
PHPStan Workflow Improvements:
- Updated PHP version to
8.3
for PHPStan analysis. - Replaced
nunomaduro/larastan
withlarastan/larastan
, ensuring up-to-date static analysis capabilities.
- Updated PHP version to
-
Testing Workflow Enhancements:
- Introduced environment-specific handling for Composer dependencies installation in the
run-tests.yml
workflow, with specific commands for Linux and Windows environments. - Improved error handling during the installation of dependencies to provide clearer feedback in case of issues.
- Introduced environment-specific handling for Composer dependencies installation in the
-
Changelog Update Automation:
- Upgraded
stefanzweifel/git-auto-commit-action
to version 5 in theupdate-changelog.yml
workflow for improved performance and bug fixes.
- Upgraded
-
New Features in Application:
- Introduced
IncidentFactory
for streamlined creation and management ofIncident
models, supporting better testing and data management.
- Introduced
-
Database Query Logging:
- Added logging for database queries in incident reports, providing detailed insights into query performance and database interactions.
-
Apllication data logging:
- Enhanced error logging by including authenticated user data in the incident reports if applicable. This includes capturing user-related data in the error context.
-
Additional Tags and Metadata:
- Added "negoziator" to the list of keywords in
composer.json
, acknowledging contribution.
- Added "negoziator" to the list of keywords in
-
Miscellaneous:
- Refined the validation rules return type in
IncidentStoreRequest.php
for improved type hinting and code clarity. - Various minor fixes and updates to ensure compatibility with Laravel 10 and improved error handling.
- Fixed minor code documentation issues, enhancing clarity and accuracy in codebase annotations.
- Refined the validation rules return type in
This release focuses on enhancing the robustness, security, and maintainability of the project, providing a better foundation for future development, improving compatibility, enhancing error handling, and updating dependencies to leverage the latest features and best practices in the Laravel ecosystem.
Full Changelog: v11.1.3...v11.1.4
v11.1.3
What's Changed
Enhancements:
- Documentation Update: Acknowledged negoziator for contributions in README.md.
- New Section in README: Added detailed instructions for local development and testing of
laravel-fejlvarp
through a Laravel application, including Docker setup and Composer configuration.
Codebase Changes:
- Timezone Configuration: Removed hardcoded timezone settings. The package now defaults to using the application's configured timezone, giving the implementing application full control over timezone settings.
- Removal of Carbon Dependency: Replaced usage of
Carbon
with the nativenow()
helper for handling date and time, enhancing compatibility and reducing external dependencies.
Contributors:
- Added Lars Christian Schou to
composer.json
as a contributor to the project.
Full Changelog: v11.1.2...v11.1.3
v11.1.2
What's Changed
- Compatibility clarified: PHP versions >8.0.2 and 8.3+ by @tvup in #31
- Modified PHP CS Fixer workflow to use --dry-run instead of committing changes automatically
Release Summary
This release clarifies and documents the specific requirements and compatibility for our project, ensuring they are explicitly defined and understood by all users and contributors. The key updates include:
-
PHP Version Requirements:
- The minimum PHP version requirement is now explicitly set to 8.0.2, indicating the project's reliance on features available from this version onward. Official support is confirmed for PHP versions 8.0.2, 8.1, 8.2, and 8.3, ensuring optimal functionality across these environments.
- The package now officially supports PHP version 8.0.2 and above, with updated PHP version constraints and verification of dependency compatibility to accommodate these versions.
-
Laravel Compatibility:
- Compatibility with Laravel versions ^9.47, 10.*, and 11.* is now explicitly documented, along with the corresponding
orchestra/testbench
versions (7.*, 8.*, 9.* respectively). This clarifies the frameworks and testing environments that the project supports.
- Compatibility with Laravel versions ^9.47, 10.*, and 11.* is now explicitly documented, along with the corresponding
-
Required PHP Extensions:
- The requirement for the
ext-curl
extension is now explicitly stated inrequire-dev
. This extension is necessary due to its dependency inspatie/laravel-ray
andspatie/ray
. Documenting this requirement helps prevent potential runtime errors during development and testing.
- The requirement for the
-
Testing and CI/CD Enhancements:
- The GitHub Actions workflow has been enhanced to test a comprehensive matrix of PHP versions (8.0.2 to 8.3), Laravel versions (^9.47, 10.*, 11.*), and
testbench
versions (7.*, 8.*, 9.*) across multiple operating systems (Ubuntu and Windows). - Adjustments ensure that
testbench package:discover
only runs when dev dependencies are present, using a PHP-based check.
- The GitHub Actions workflow has been enhanced to test a comprehensive matrix of PHP versions (8.0.2 to 8.3), Laravel versions (^9.47, 10.*, 11.*), and
-
General Improvements:
composer.json
has been updated to reflect the new minimum PHP version and the addition ofext-curl
inrequire-dev
.- The PHP CS Fixer workflow has been adjusted to remove the auto-commit of fixed styling changes. The workflow now runs with the
--dry-run
flag, ensuring that no changes are automatically committed. This adjustment provides greater control over code style corrections and allows developers to review changes before committing.
These updates clarify the project's existing requirements, provide explicit documentation, and ensure consistent understanding across all development and deployment environments. Additionally, they enhance our CI/CD processes to ensure better coverage and reliability while keeping the package up-to-date with the latest PHP developments and ready for future versions.
Breaking Changes
This release aims to clarify and disallow certain combinations that may have been possible previously, though unlikely. It is possible that some edge cases, particularly with Laravel versions from 9.0.0 up to, but not including, 9.47.0, may have allowed a set of requirements and installations that are no longer permissible as of this release.
We expect no breaking changes but please be aware and report any issues if they arise.
Full Changelog: v11.1.1...v11.1.2
v11.1.1
Support for Laravel 11
What's Changed
- Add support for laravel 11 by @negoziator in #20
New Contributors
- @negoziator made their first contribution in #20
Full Changelog: v11.0.0...v11.1.0
v11.0.0
What's Changed
Full Changelog: v10.2.6...v11.0.0
Versioning
Semantic versioning is sought for. Versioning doesn't follow Laravel versions anymore
Breaking changes
- Remove
dontReport
field from handler - It's not something the package should deal with; it's, of course, up to the user to choose these things. - Remove
dontFlash
field from handler - It's not something the package should deal with; it's, of course, up to the user to choose these things. Besides, Laravel already has a suggestion for this field in the raw installation - even more reason not to override it. - Extend the Handler in the user's installation instead of the Laravel one - We don't want to just ignore what the user has in his/her
Handler.php
.
The behaviour after updating from previuos may dramatically change since your own Handler.php is now used again.