Releases: brefphp/bref
0.5.31
👋 hey everyone, new Bref release!
This release comes with new runtime versions:
- if you use
serverless.yml
, you don't have anything to do 😎 - if you use SAM or CloudFormation or Terraform or CDK, update the layer version numbers (see runtimes.bref.sh)
Enhancements:
- Bumped PHP versions to latest versions #750, including PHP 8 beta4 in b7f22a7 (@chapeupreto, @mnapoli)
- Enable HTTP/2 for CURL #740 (@shouze)
- Experimental: Add native support for providing handlers from PSR-11 containers #694 (@mnapoli) This feature is not documented and experimental, expect it stable and usable for Bref 1.0.
Fixed bugs:
Documentation updates:
- Fix typo in "PHP functions" #760 (@tywmick)
- Added public IP limitation of Aurora Serverless in the database documentation #751 (@evrend)
Also, in related news serverless 2.3.0 now supports !Sub
and native CloudFormation variables. More details here: https://twitter.com/matthieunapoli/status/1309478526723260416
By the way, still looking for sponsors :) https://github.com/sponsors/mnapoli ❤️
0.5.30
👋 hey everyone, new Bref release!
This release comes with new runtime versions:
- if you use
serverless.yml
, you don't have anything to do 😎 - if you use SAM or CloudFormation or Terraform or CDK, update the layer version numbers (see https://runtimes.bref.sh/)
Enhancements:
- Support multi-value query parameters in URLs 🎉 #672 (@victormacko), #693 (@deleugpn)
- Add a
vendor/bin/bref layers
command to list layer versions #730 (@mnapoli) - Add a getter for
ReceiptHandle
inSQSRecord
#724 (@marcusirgens)
Minor changes:
- Bump PHP versions #706 (@chapeupreto), #717 (@Santos-Luis)
- Set the PHP execution timeout at 27s to get logs when PHP times out #700 (@Nyholm)
- Lighten and improve the "fpm-dev-gateway" Docker image for local development #736 (@shouze)
- Improve generated
serverless.yml
files #691 (@chapeupreto), #690 (@chapeupreto)
Documentation improvements:
- Removing broken link #739 (@spekulatius)
- Fixing a bunch of links into the PHP docs #737 (@spekulatius)
- Document BREF_AUTOLOAD_PATH #731 (@mnapoli)
- Fix typo #729 (@fabpot)
- Improve the Laravel documentation regarding caching #712 (@mnapoli)
- documentation nitpick: add missing quotes #699 (@chapeupreto)
- Update custom-domains documentation #698 (@bertrandjamin)
- Update the Laravel documentation to use the new Laravel bridge #697 (@mnapoli)
- Bump lodash from 4.17.15 to 4.17.19 in /website #695 (@dependabot[bot])
0.5.29
- #680 Updated PHP versions, which means updated Lambda layers (update your layers if you use SAM or Terraform), by @Chtiadrien
- #678 New PHP 8.0 experimental layers (containing PHP 8.0.0-alpha2, not suitable for production of course), by @mnapoli
- Many typo fixes in the documentation, by @chapeupreto
- More documentation improvements by @Chtiadrien, @SOHELAHMED7, @keithbrink
How to test your applications with PHP 8.0 (alpha2)? Replace the PHP version in serverless.yml
:
functions:
function:
...
layers:
- - ${bref:layer.php-74}
+ - ${bref:layer.php-80}
web:
...
layers:
- - ${bref:layer.php-74-fpm}
+ - ${bref:layer.php-80-fpm}
0.5.28
0.5.27
0.5.26
This release brings support for the API Gateway v2 payload format via #604/#602 by @victormacko & @mnapoli.
To use that v2 format, you have to deploy a function using the "HTTP API" (instead of the REST API), and set the payload version to 2.0:
provider:
...
httpApi:
payload: '2.0'
functions:
hello:
...
events:
# `httpApi` instead of `http`
- httpApi: '*'
You don't need to use it, we are simply adding support for forward compatibility.
If you don't know what all that means, that's fine, you can ignore it :)
0.5.25
First, a big thank you to our new sponsors:
Enhancements:
#643 #644 Support the new "Cape Town" and "Milan" regions, by @richardnbanks and @AlessandroMinoccheri
#654 The PDO MySQL extension is now enabled by default, by @mnapoli
#640 Kinesis events can now be handled via a typed handler class, by @i906
Bugfixes:
#639 fixed in #645: Fix PHP-FPM instability in case of timeouts (the process was sometimes killing itself because process IDs can be reused in rare cases), by @cosmok
#659 Fix the parsing of SQS message attributes, by @Nyholm
Other:
0.5.24
- #615 Simplify the console invocation format, by @mnapoli (layers have been updated)
- #627, #634, #635 Loads of improvements to the Laravel documentation (https://bref.sh/docs/frameworks/laravel.html), by @mnapoli
- #623 Revise Lambda/Request context within PHP-FPM handler, by @eddmann
- #626 Expose Lambda invocation context within console runtime, by @eddmann
- Fix #629, #637 Remove the timeout in
vendor/bin/bref cli
, by @mnapoli
#615 New console invocation format: perfect for cron jobs
The console
runtime now takes a simple string as the "event". That makes cron much easier to define, for example:
events:
- schedule:
rate: rate(1 minute)
input: 'doctrine:migrate --force'
Note that backward compatibility is kept with the old input
array format.
0.5.23
The main feature in this new version is the support for DynamoDB events via typed class handlers. Added in #560 and #561 by @jasonmccallister and @pmayet.
Example of such a handler:
class MyHandler extends DynamoDbHandler
{
public function handleDynamoDb(DynamoDbEvent $event, Context $context): void
{
// the $event variable is typed and provides information
// about the records that triggered the event
// for example:
$updatedRecord = $event->getRecords()[0]->getNewImage();
}
}
To configure this in serverless.yml
, create a function using the php-73
/php-74
function runtime and follow the documentation here: https://serverless.com/framework/docs/providers/aws/events/streams/
Additionally, this release should fix the fix of the fix for the vendor/bin/bref dashboard
command 🤓