1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
|
# CHANGELOG
# ๐ v2024.2.1 ๐
### `OTEL` plugin:
- ๐ฅ: Several improvements by @devnev: Do not set `Endpoint` and `Headers` for gRPC if they're empty: [PR](https://github.com/roadrunner-server/otel/pull/62), Support standard `OTEL` exporter protocol environment variables: [PR](https://github.com/roadrunner-server/otel/pull/63). (thanks @devnev)
### `RoadRunner-Temporal` plugin:
- ๐: gRPC client closed too early after shutdown: [BUG](https://github.com/roadrunner-server/roadrunner/issues/1986). (thanks @kkosowski-p)
### `AMQP` driver:
- ๐: `redial_timeout` was not respected when dynamically creating pipeline. [BUG](https://github.com/roadrunner-server/roadrunner/issues/2000), (thanks @algirdasci)
### <center>๐งน Chore:</center>
- ๐งโ๐ญ: All plugins were updated to Go 1.23 (including `Velox` Dockerfile).
---
# ๐ v2024.2.0 ๐
# Upgrade guide: [link](https://docs.roadrunner.dev/docs/general/compatibility#upgrading-to-roadrunner-v2024.2.x)
## Community plugins
We are introducing a new term in the RoadRunner community โ Community plugins.
If you have a brilliant idea for the http middleware or JOBS driver or even a new plugin - feel free to check our
[Customization](../customization) tutorials, create and notify us about your plugin.
## Plugins updates:
### ๐ฅ Meet the new JOBS driver - Google Pub/Sub
RoadRunner now supports the Google Pub/Sub queues. Currently, this driver is released in **BETA** and has a few limitations which you may find in the [docs]()
### `AMQP` and `Kafka` JOBS drivers
- ๐ฅ Support an auto-restart pipeline on redial or some fatal problems when connecting to the RabbitMQ broker. Instead of silently exit from the pipeline, RR will try to re-initialize the pipeline.
Thanks to our PHP team, [KV](https://github.com/roadrunner-php/kv/releases/tag/v4.3.0) now has `AsyncStorageInterface` support which makes your experience with the KV plugin even faster.
Feel free to read the technical details here: [link](https://github.com/roadrunner-php/goridge/pull/22)
### Samples repository
- ๐ฅ Our RoadRunner samples repository was updated and now includes a `Jobs` driver example for the `Jobs` plugin.
More info here: [link](https://github.com/roadrunner-server/samples).
### Our Go-SDK was deprecated
- ๐ญ Our Go-SDK was deprecated and split into separate packages. Read more in the Upgrade guide.
### Velox configuration update
- ๐ฅ Velox configuration was simplified:
```yaml
[roadrunner]
# ref -> reference, tag, commit or branch
ref = "v2024.2.0"
# the debug option is used to build RR with debug symbols to profile it with pprof
[debug]
enabled = false
## Rest is the same ....
```
Now, there is no need to include `linker` flags, and buildtime + build version would be inherited automatically.
If you need to debug your binary, please, use the `debug` option set to `true`.
### Special thanks to our sponsors:
1. [Buhta](https://github.com/buhta)
2. [Coderabbitai](https://github.com/coderabbitai)
3. [Kaspiman](https://github.com/Kaspiman)
4. [benalf](https://github.com/benalf)
5. [rapita](https://github.com/rapita)
6. [uzulla](https://github.com/uzulla)
---
# ๐ v2024.1.5 ๐
### `Status` plugin:
- ๐: Fix k8s-related problem, when status was not available during the graceful shutdown process: [BUG](https://github.com/roadrunner-server/roadrunner/issues/1924). (thanks @cv65kr)
### `JOBS` plugin:
- ๐ฅ: Experimentally added new handlers for the more canonical `ACK`, `NACK`, and `REQUEUE` operations for the `JOBS` drivers. PHP SDK will be updated soon. [FR](https://github.com/roadrunner-server/roadrunner/issues/1941), (thanks @shieldz80)
### โ๏ธ Future changes:
- ๐ก: Configuration includes will be out of experimental status in the next minor release (`v2024.2.0`) and currently don't have restrictions on where to put the included config. Keep in mind that the path for the included configurations is calculated from the working directory of the RoadRunner process. [FR](https://github.com/roadrunner-server/roadrunner/issues/935)
---
# ๐ v2024.1.4 ๐
### `Temporal` plugin:
- ๐: Fix Local activities executed on the Workflow PHP Worker instead of the Activity PHP Worker: [BUG](https://github.com/roadrunner-server/roadrunner/issues/1940). With this fix, LA performance should see a significant increase. (thanks @Zylius)
---
# ๐ v2024.1.3 ๐
### `RR core`:
- ๐ฅ: Deprecate `RR_*` env variables prefix. This was an undocumented feature which caused confusion, because any configuration value might be automatically replaced (without using env in the configuration) with a matching `RR_*` environment variable, [PR](https://github.com/roadrunner-server/roadrunner/pull/1929).
### `Temporal` plugin:
- ๐ฅ: Enable client certificate rotation: [FR](https://github.com/temporalio/roadrunner-temporal/issues/522). With this change you may replace certificate on a Live system. (thanks @benkelukas)
- ๐ฅ: Expose `continue_as_new_suggested` for the PHP Worker: [PR](https://github.com/temporalio/roadrunner-temporal/pull/520).
### `Kafka`
- ๐: Reduce number of `maxPollRecords` from 10k to 100, [PR](https://github.com/roadrunner-server/kafka/commit/f7950cb538e6c670cfc50681e61eb939c591f27b).
### `Endure` container:
- ๐: Fix incorrectly used error log message: [PR](https://github.com/roadrunner-server/endure/pull/175).
### General:
- ๐ฅ: Update Go to `v1.22.4`.
## RoadRunner PHP:
### `Worker`:
- ๐ฅ: Add `RR_VERSION` env to the `Environment` class: [PR](https://github.com/roadrunner-php/worker/pull/37), (thanks @Kaspiman)
---
# ๐ v2024.1.2 ๐
### Upcoming new JOBS driver: `google-pub-sub`:
- ๐ฅ: Currently in a polishing phase, the new plugin will be released as part of the `v2024.2.0`. Stay tuned! (thanks @cv65kr)
### `gRPC` plugin:
- ๐: strip extra slashes when there is no package defined in the protofile: [PR](https://github.com/roadrunner-server/grpc/pull/134), (thanks @satdeveloping)
### `OTEL` plugin:
- ๐: Fix hardcoded AlwaysSample samples: [BUG](https://github.com/roadrunner-server/roadrunner/issues/1918), (thanks @bazilmarkov)
### `RR core` plugin:
- ๐: RR `workers/reset` commands don't respect default config values: [BUG](https://github.com/roadrunner-server/roadrunner/issues/1914), (thanks @r4m-alexd)
---
# ๐ v2024.1.1 ๐
### `HTTP` plugin:
- ๐ Bug: Fix for the NPE on types check: [BUG](https://github.com/roadrunner-server/roadrunner/issues/1903), (thanks @cto-asocial)
### `gRPC` plugin:
- ๐ฅ Remove experimental status from the OTEL in `gRPC`, [PR](https://github.com/roadrunner-server/grpc/pull/133)
### `SDK`:
- ๐ฅ Additional debug logging for the `maxExecs` with `jitter`: [PR](https://github.com/roadrunner-server/sdk/pull/121) (thanks @Kaspiman)
---
# ๐ v2024.1.0 ๐
## Upgrade guide: [link](https://docs.roadrunner.dev/general/compatibility)
### `HTTP` plugin:
- ๐ฅ Use `protobuf` encoded payloads to prevent field reordering and JSON escaped symbols.
### `Kafka` driver:
- ๐ฅ Support [TLS configuration](https://docs.roadrunner.dev/queues-and-jobs/kafka#configuration) (thanks @dkomarek)
### `SDK`:
- ๐ฅ Use a small random jitter to prevent the [Thundering herd problem](https://en.wikipedia.org/wiki/Thundering_herd_problem) when user uses `max_jobs` option and all the workers restarted at the same time. This feature is enabled automatically. (thanks @Kaspiman)
|