Skip to content

v2023.1.0

Compare
Choose a tag to compare
@rustatian rustatian released this 13 Apr 16:46
· 492 commits to stable since this release
2d61603

🚀 v2023.1.0 🚀

⚠️ The reload plugin has been removed from the default plugins list. Please use *.pool.debug=true instead.

👀 New

  • ✒️ Kafka plugin: Completely rewritten Kafka plugin. Now supports regexps for topics, marked commits for group consumers, and SASL authentication. Configuration reference: link.
  • ✒️ RPC plugin: The RPC plugin would be available immediately before worker initialization. This means that PHP worker can use all RPC methods immediately.
  • ✒️ Endure v2 support (internal change).
  • ✒️ Bash script to download the latest RR archive. Later we'll release a non-archived binary in addition to the regular archived releases. Sample of usage:
curl --proto '=https' --tlsv1.2 -sSf  https://raw.githubusercontent.com/roadrunner-server/roadrunner/master/download-latest.sh | sh
  • ✒️ RoadRunner Composer metapackage: Removed the require section: PR, (thanks @roxblnfk)
  • ✒️ Lock plugin: New plugin to handle shared resource access.
  • ✒️ AMQP plugin: RR passes the queue, pipeline, and driver names to the PHP client in all modes, including the consuming payloads from the other senders.
  • ✒️ AMQP plugin: consumer_id can now be set in configuration, FR, (thanks @codercms)
  • ✒️ AMQP plugin: Since v2023.1.0 RR did not accept the empty queue name, CH
  • ✒️ OTEL plugin: ️Support OpenTelemetry for the temporal, http, gRPC and Jobs plugins, including all Jobs drivers.
  • ✒️ Config plugin: Configuration version updated to version: '3'. ️
  • ✒️ Logger plugin: Now uses UTC timestamps CH, (thanks @cv65kr)
  • ✒️ Service plugin: Instead of SIGKILL, send SIGINT with a 5s timeout to stop the underlying processes.
  • ✒️ Configuration plugin: Support for bash syntax with default values for keys. Starting from this release, you can use the following variables anywhere (values) in the configuration: ${LOG-LEVEL:-debug}. That is, if the LOG-LEVEL env variable is not set, use debug.
  • ✒️ gRPC plugin: Support for custom interceptors. Will be generally available in the 2023.2.0.
  • ✒️ Temporal plugin: Support for custom interceptors. Will be generally available in the 2023.2.0.

🩹 Fixes

  • 🐛 HTTP plugin: Edge case where empty form value overwrites existing value, PR, (thanks @tungfinblox).
  • 🐛 AMQP plugin: Redial failed if user only uses consumer, PR, (thanks @iborysenko).
  • 🐛 RR CLI: ./rr jobs` command panics when used without arguments, BUG, (thanks @embargo2710)
  • 🐛 gRPC Plugin: panic when calling grpc.Workers immediately after RR start.BUG, (thanks @genhoi)
  • 🐛 Proxy IP parser middleware: Correctly handle the proxy headers from CloudFlare: Discussion, (thanks @victor-sudakov, @vladimir-vv)