Releases: roadrunner-server/roadrunner
v2.10.4
v2.10.3
👀 New:
- ✏️ CLI:
rr stop
command.rr stop
will read the.pid
file to send a graceful-stop signal to the primary RR process (SIGTERM
). To create a.pid
file, add-p
to theserve
command:rr serve -p
. Docs: link, FR (thanks @Baiquette)
🩹 Fixes:
- 🐛 Fix: incorrect
reset
behavior for thetemporal
plugin. BUG, BUG, BUG. (thanks @dmitry-pilipenko, @mzavatsky)
v2.10.2
👀 New:
-
✏️ WORKER: Starting from this release, RR is able to show full error messages sent to the
STDOUT
during the worker bootstrap. FR (thanks @ykweb) -
✏️ HTTP: Connection might be upgraded from the
http/1.1
toh2c
: rfc7540
Headers, which should be sent to upgrade connection:Upgrade
:h2c
Connection
:HTTP2-Settings
Connection
:Upgrade
HTTP2-Settings
:AAMAAABkAARAAAAAAAIAAAAA
RFC
-
✏️ VELOX: Add GitLab support. Starting from the
beta.2
you may useGitHub
andGitLab
plugins together. Configuration updated. Keep in mind, that until the stable release1.0.0
configuration might be changed with breaking changes. -
✏️ protoc-gen-php-grpc: Use of fully qualified names in place of imports. PR (thanks @ryanjcohen)
v2.10.1
👀 New:
- ✏️ Jobs (queues) plugin now can consume any payload from the queue. If RR fails in converting payload into the
Job
structure, it'll create and fill all available fields manually. To turn on this feature, useconsume_all: true
in the driver configuration, e.g.:
Supported drivers:amqp
,sqs
,beanstalk
,nats
.
jobs:
num_pollers: 10
pipeline_size: 100000
pool:
num_workers: 10
pipelines:
test-raw:
driver: sqs
config:
consume_all: true # <------- NEW OPTION
consume: [ "test-raw" ]
- ✏️ SQS Jobs driver now can skip queue declaration in favor of getting queue URL instead. To use this feature, use
skip_queue_declaration: true
sqs driver option. FR, (thanks @sergey-telpuk)
jobs:
num_pollers: 10
pipeline_size: 100000
pool:
num_workers: 10
pipelines:
test-2:
driver: sqs
config:
skip_queue_declaration: true # <----- NEW OPTION
consume: [ "test-2" ]
- ✏️ OpenTelemetry middleware now supports
Jaeger
exporter and propagator.
http:
address: 127.0.0.1:43239
max_request_size: 1024
middleware: [gzip, otel]
pool:
num_workers: 2
max_jobs: 0
allocate_timeout: 60s
destroy_timeout: 60s
otel:
exporter: jaeger # <----- NEW OPTION
- ✏️ HTTP Plugin now supports
mTLS
authentication. Possible values for theclient_auth_type
are the same as for thegRPC
(no_client_cert
,request_client_cert
,require_any_client_cert
,verify_client_cert_if_given
,require_and_verify_client_cert
) FR, (thanks @fwolfsjaeger)
version: '2.7'
server:
command: "php ../../php_test_files/http/client.php echo pipes"
relay: "pipes"
relay_timeout: "20s"
http:
address: :8085
max_request_size: 1024
middleware: [ ]
pool:
num_workers: 1
max_jobs: 0
allocate_timeout: 60s
destroy_timeout: 60s
ssl:
address: :8895
key: "key"
cert: "cert"
root_ca: "rootCA.pem" # <---- REQUIRED to use mTLS
client_auth_type: require_and_verify_client_cert # <---- NEW OPTION
logs:
mode: development
level: error
🩹 Fixes:
v2.10.0
🧳 Deprecated:
- 📦
new_relic
http middleware. Please, consider using the new OpenTelemetry middleware:otel
.
👀 New:
- ✏️ Documentation update: link.
- ✏️ RoadRunner-Temporal plugin now supports local activities. Here is the brief overview: link.
- ✏️ Add Debian
amd64
releases. FR - ✏️ Add signed releases. Starting from the
v2.10.0
, you can check every released binary with a provided*.asc
key. For example:
$ gpg --verify rr.asc
The openPGP key can be verified here: keyserver
- ✏️ All proto api for the
Go
programming language located here: link. To use it, just import the latest stable versiongo.buf.build/protocolbuffers/go/roadrunner-server/api latest
. - ✏️
Service
plugin now supports auto-reload. It can be added to thereload
plugin targets and on change, it'll reload all underlying processes. - ✏️
AutoAck
jobs option. For the messages (jobs), which are acceptable to lose. Or which execution can lead to a worker's stop (for example - OOM). FR, (thanks @hustlahusky) - ✏️ [BETA] OpenTelemetry support. Starting from now, the
new_relic
middleware is deprecated, it'll receive only dependency updates and will be removed from the RR bundle in thev2.12.0
. (thanks @brettmc)
OpenTelemetry plugin supports the following exporters:- OTLP (open telemetry protocol):
datadog
,new relic
. - zipkin
- stdout
All these exporters can send their data viahttp
orgrpc
clients.
- OTLP (open telemetry protocol):
Configuration sample (stdout exporter):
http:
address: 127.0.0.1:43239
max_request_size: 1024
middleware: [gzip, otel]
pool:
num_workers: 2
max_jobs: 0
allocate_timeout: 60s
destroy_timeout: 60s
otel:
insecure: false
compress: true
exporter: stdout
service_name: rr_test
service_version: 1.0.0
New Relic exporter via http
client: link
http:
address: 127.0.0.1:43239
max_request_size: 1024
middleware: [gzip, otel]
pool:
num_workers: 2
max_jobs: 0
allocate_timeout: 60s
destroy_timeout: 60s
otel:
insecure: false
compress: true
client: http
exporter: stdout
custom_url: ""
service_name: rr_test
service_version: 1.0.0
endpoint: otlp.eu01.nr-data.net:4318
headers:
- api-key: xxx # your api key here
PHP worker can access tracing data via w3c
headers.
- ✏️
protoc-gen-php-grpc
now supportsoptional
fields. (thanks @genhoi)
🧹 Chore:
v2.10.0-rc.7
Full Changelog: v2.10.0-rc.6...v2.10.0-rc.7
v2.10.0-rc.6
Full Changelog: v2.10.0-rc.5...v2.10.0-rc.6
v2.10.0-rc.5
Full Changelog: v2.10.0-rc.4...v2.10.0-rc.5
v2.10.0-rc.4
v2.10.0-rc.3
🩹 Fixes:
- 🐛 Fix: HTTP plugin: incorrect parent span propogation.