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.
The public API of this library consists of all public or protected methods, properties and constants belonging to the src folder.
As far as possible, we try to adhere to Symfony guidelines when deciding whether a change is a breaking change or not.
3.5.2 - 2026-02-06
- Fix
curl_closedeprecation warning in PHP 8.5
3.5.1 - 2025-09-26
- Always reindex pushed signals to avoid issues with non-sequential keys
3.5.0 - 2025-06-13
- Fallback to machine id for metrics machine name instead of first part of user agent
- Allow metrics machine name to have a length of 64 characters
3.4.0 - 2025-01-31
- Allow Monolog 3 package (Use
crowdsec/common^3.0.0dependency)
3.3.0 - 2025-01-16
- Allow Symfony 7 packages
3.2.0 - 2024-09-12
- Allow
machine_id_prefixto have a length of 48 characters (full length of a machine ID)
- Add
contextsupport for Signals builder helper
3.1.0 - 2023-12-07
- Add
api_connect_timeoutconfiguration
3.0.0 - 2023-03-09
- Breaking change: Use
crowdsec/common^2.0.0dependency instead of^1.2.0 - Breaking change: Use CAPI V3 endpoints instead of V2
- Breaking change: If not null, the third param of the
Watcher::__contructmethod must implementCapiHandlerInterface
- Add
symfony/uiddependency to handle UUID in signals data
2.1.0 - 2023-02-24
- Add
metricsin signals
2.0.0 - 2023-02-02
-
Use
crowdsec/commonpackage as a dependency for code factoring-
Breaking change: Use
CrowdSec\Commonclasses for the following files and folder:HttpMessageLoggerRequestHanlderAbstractClient.php
-
Breaking change: If not null, the third param of
Watcherconstructor must be of typeCrowdSec\Common\Client\RequestHandler\AbstractRequestHandler -
Breaking change: Move
Watcher,SignalandConfiguration\Signalconstants inConstants
-
-
Breaking change: Remove deprecated
Watcher::createSignalmethod
1.0.1 - 2023-01-27
- Add public API declaration
1.0.0 - 2023-01-27
- Change version to
1.0.0: first stable release
0.11.0 - 2023-01-13
- Add two signal builder helper methods:
buildSimpleSignalForIpandbuildSignal
- Deprecate the
createSignalmethod
0.10.0 - 2023-01-12
- Unexpected configuration keys are automatically removed by a new
cleanConfigsmethod - Update some logs
0.9.0 - 2023-01-05
- Do not throw error on CAPI 404 response
- Use compressed requests for
Curl - Use message log instead of a context message field
- Do not log error on
formatResponseBodyto avoid double reporting (#21) - Log retries as
infoand not aserror(#21)
0.8.0 - 2022-12-30
- Add some relevant debug and error logs
createSignalthrows now aClientExceptioninstead of a genericExceptionduring date manipulation
0.7.0 - 2022-12-29
- Update validation rules for
user_agent_versionandscenariossettings
0.6.2 - 2022-12-26
- Fix
createSignalby adding required decision id
0.6.1 - 2022-12-16
- Fix
Curlunlimited timeout when negative value is configured inapi_timeout
0.6.0 - 2022-12-16
- Default
api_timeoutis now 120 seconds instead of 10 seconds
- Add
createSignalhelper method to create ready-to-use signal
0.5.0 - 2022-12-15
- Add
user_agent_versionconfiguration
0.4.1 - 2022-12-08
- Allow older version (v4) of
symfony/configdependency
0.4.0 - 2022-12-01
- Breaking change: Make method
AbstractClient::sendRequestprivate instead of public - Breaking change: Make method
AbstractClient::requestprotected instead of public
- Add
api_timeoutconfiguration - Add an optional param
$configsinCurlandFileGetContentsconstructors
0.3.0 - 2022-11-04
- Add optional logger parameter in client constructor
0.2.0 - 2022-10-28
- Breaking change: Missing
scenarioskey inconfigswill throw an exception
0.1.0 - 2022-10-21
- Breaking change: Supported PHP versions starts with
7.2.5(instead of5.3) - Breaking change:
loginandregisterare now private methods - Breaking change:
Watcherconstructor is totally changed :- No more
passwordandmachine_idto pass, there are now automatically handled in background - An array of
configsmust be passed as first argument - An implementation of a
StorageInterfacemust be passed as a second argument
- No more
- Change User Agent format:
csphpcapi_custom-suffix/vX.Y.Z
- Add
enrollpublic method
0.0.1 - 2022-06-24
- Initial release