Skip to content

Commit

Permalink
[#1684]: pre-release: v2023.3.0-beta.1
Browse files Browse the repository at this point in the history
  • Loading branch information
rustatian committed Aug 18, 2023
2 parents 3a47d0b + 1809676 commit 9f15de1
Show file tree
Hide file tree
Showing 7 changed files with 290 additions and 170 deletions.
7 changes: 0 additions & 7 deletions .github/workflows/release.yml
Expand Up @@ -189,11 +189,4 @@ jobs:
BUILD_TIME=${{ steps.values.outputs.timestamp }}
tags: |
spiralscout/roadrunner:${{ steps.values.outputs.version_full}}
spiralscout/roadrunner:latest
spiralscout/roadrunner:2023
spiralscout/roadrunner:2023.2
ghcr.io/roadrunner-server/roadrunner:${{ steps.values.outputs.version_full}}
ghcr.io/roadrunner-server/roadrunner:latest
ghcr.io/roadrunner-server/roadrunner:2023
ghcr.io/roadrunner-server/roadrunner:2023.2
130 changes: 130 additions & 0 deletions CHANGELOG.md
@@ -1,5 +1,135 @@
# CHANGELOG

# <center> 🚀 v2023.3.0-beta.1 🚀 </center>

## 👀 New

- ✒️ **Service plugin**: Support for the user/group per-service: [FR](https://github.com/roadrunner-server/roadrunner/issues/1570), (thanks @Kaspiman)

#### Configuration example:
```yaml
service:
schedule:run:
command: "bin/console schedule:run"
process_num: 1
exec_timeout: 0s
remain_after_exit: true
service_name_in_log: false
restart_sec: 60
user: www-data # <---------- [NEW]
group: www-data # <---------- [NEW]
```

- ✒️ **Temporal plugin**: Replay API support [SINCE PHP-SDK 2.6.0]: [FR](https://github.com/roadrunner-server/roadrunner/issues/1640)
- ✒️ **RR core**: `sdnotify` support: [FR](https://github.com/roadrunner-server/roadrunner/pull/1671), (thanks @Kaspiman)
- ✒️ **HTTP response streaming support**: : [FR](https://github.com/roadrunner-server/http/pull/152), (thanks @roxblnfk)

#### Worker.php example:

```php
<?php

require __DIR__ . '/vendor/autoload.php';

use Spiral\RoadRunner;

ini_set('display_errors', 'stderr');
require __DIR__ . "/vendor/autoload.php";

$worker = RoadRunner\Worker::create();
$http = new RoadRunner\Http\HttpWorker($worker);
$read = static function (): Generator {
foreach (\file(__DIR__ . '/test.txt') as $line) {
try {
yield $line;
} catch (Spiral\RoadRunner\Http\Exception\StreamStoppedException) {
// Just stop sending data
return;
}
}
};

try {
while ($req = $http->waitRequest()) {
$http->respond(200, $read());
}
} catch (\Throwable $e) {
$worker->error($e->getMessage());
}
```

- ✒️ **HTTP plugin**: Support for the `103` Early Hints via streamed response: [FR](https://github.com/roadrunner-server/roadrunner/issues/918), (thanks @roxblnfk)
- ✒️ **RAW command support**: Support for raw commands, which are not validated by RR and may contain spaces. Note that this feature is only supported via `.rr.yaml` configuration: [FR](https://github.com/roadrunner-server/roadrunner/issues/1667), (thanks @nunomaduro)

#### Configuration:

1.
```yaml
version: "3"

server:
command: ["php", "../../php_test_files/client.php echo pipes"]
relay: "pipes"
relay_timeout: "20s"
```
2.
```yaml
version: "3"

server:
command:
- "php"
- "../../php_test_files/client.php echo pipes"
relay: "pipes"
relay_timeout: "20s"
```

First argument should be a command (executable) and the rest of the arguments are passed to the command as arguments.

- ✒️ **JOBS plugin**: Parallel pipelines start/stop/destroy initialization. If you have a much number of the pipelines, this feature should significantly reduce RR startup/shutdown time: [FR](https://github.com/roadrunner-server/roadrunner/issues/1672), (thanks @Kaspiman)

## 🩹 Fixes

- 🐛 **RR Core**: Actualize according to the docs `./rr jobs list/stop/resume` commands: [PR](https://github.com/roadrunner-server/roadrunner/pull/1675), (thanks @gam6itko).
- 🐛 **JOBS plugin**: Correctly handle OTEL span on listener error: [PR](https://github.com/roadrunner-server/amqp/pull/87), (thanks @Kaspiman).
- 🐛 **RR tests**: Fix tests failures on Darwin: [PR](https://github.com/roadrunner-server/roadrunner/pull/1680), (thanks @shyim).

### <center>🧹 Chore:</center>

- 🧑‍🏭 **Golang**: Update Golang version to v1.21.
- 🧑‍🏭 **Dependencies**: update project dependencies.

---

# <center> 🚀 v2023.2.2 🚀 </center>

## 🩹 Fixes

- 🐛 **JOBS plugin**: Fix typo in the `RPC` span name: [PR](https://github.com/roadrunner-server/jobs/pull/92), (thanks @Kaspiman).
- 🐛 **SDK**: Fix incorrect workers state when worker reached `idleTTL` state: [BUG](https://github.com/roadrunner-server/roadrunner/issues/1669), (thanks @Aleksa1996).

### <center>🧹 Chore:</center>

- 🧑‍🏭 **HTTP plugin**: faster PostForm/MultipartForm processing [PR](https://github.com/roadrunner-server/http/pull/145).
- 🧑‍🏭 **Golang**: Update Golang version to v1.21.
- 🧑‍🏭 **Dependencies**: update project dependencies.

---

# <center> 🚀 v2023.2.1 🚀 </center>

## 🩹 Fixes

- 🐛 **NATS driver**: Segfault when sending job via third-party sender without `consume_all` option set to `true`: [BUG](https://github.com/roadrunner-server/roadrunner/issues/1650), (thanks @KernelMrex).
- 🐛 **Metrics plugin**: Irregular panic when declaring metrics via `on_init` option: [BUG](https://github.com/roadrunner-server/roadrunner/issues/1648), (thanks @Kaspiman).
- 🐛 **Headers middleware**: Inconsistent usage of CORS options, failed to apply `allowed_*` options with spaces: [BUG](https://github.com/roadrunner-server/roadrunner/issues/1655), (thanks @gam6itko).

### <center>🧹 Chore:</center>

- 🧑‍🏭 **Dependencies**: update project dependencies.

---

# <center> 🚀 v2023.2.0 🚀 </center>

## 👀 New
Expand Down
2 changes: 1 addition & 1 deletion container/config.go
Expand Up @@ -2,10 +2,10 @@ package container

import (
"fmt"
"log/slog"
"time"

"github.com/spf13/viper"
"golang.org/x/exp/slog"
)

// Config defines endure container configuration.
Expand Down
2 changes: 1 addition & 1 deletion container/config_test.go
@@ -1,13 +1,13 @@
package container_test

import (
"log/slog"
"testing"
"time"

"github.com/roadrunner-server/config/v4"
"github.com/roadrunner-server/roadrunner/v2023/container"
"github.com/stretchr/testify/assert"
"golang.org/x/exp/slog"
)

func TestNewConfig_SuccessfulReading(t *testing.T) {
Expand Down
2 changes: 1 addition & 1 deletion container/container_test.go
@@ -1,12 +1,12 @@
package container_test

import (
"log/slog"
"testing"
"time"

"github.com/roadrunner-server/endure/v2"
"github.com/stretchr/testify/assert"
"golang.org/x/exp/slog"
)

func TestNewContainer(t *testing.T) { // there is no legal way to test container options
Expand Down
103 changes: 51 additions & 52 deletions go.mod
Expand Up @@ -10,76 +10,75 @@ require (
github.com/fatih/color v1.15.0
github.com/joho/godotenv v1.5.1
github.com/olekukonko/tablewriter v0.0.5
github.com/roadrunner-server/amqp/v4 v4.7.0
github.com/roadrunner-server/amqp/v4 v4.7.1
github.com/roadrunner-server/api/v4 v4.6.2
github.com/roadrunner-server/app-logger/v4 v4.0.9
github.com/roadrunner-server/beanstalk/v4 v4.4.0
github.com/roadrunner-server/boltdb/v4 v4.5.0
github.com/roadrunner-server/centrifuge/v4 v4.3.0-beta.2
github.com/roadrunner-server/config/v4 v4.4.0
github.com/roadrunner-server/endure/v2 v2.4.1
github.com/roadrunner-server/app-logger/v4 v4.0.10
github.com/roadrunner-server/beanstalk/v4 v4.4.1
github.com/roadrunner-server/boltdb/v4 v4.5.1
github.com/roadrunner-server/centrifuge/v4 v4.3.0-beta.3
github.com/roadrunner-server/config/v4 v4.4.1
github.com/roadrunner-server/endure/v2 v2.4.2
github.com/roadrunner-server/errors v1.3.0
github.com/roadrunner-server/fileserver/v4 v4.1.0
github.com/roadrunner-server/fileserver/v4 v4.1.1
github.com/roadrunner-server/goridge/v3 v3.7.0
github.com/roadrunner-server/grpc/v4 v4.4.0-beta.1
github.com/roadrunner-server/gzip/v4 v4.1.0
github.com/roadrunner-server/headers/v4 v4.2.1
github.com/roadrunner-server/http/v4 v4.3.0-beta.3
github.com/roadrunner-server/informer/v4 v4.2.0
github.com/roadrunner-server/jobs/v4 v4.6.0-beta.3
github.com/roadrunner-server/kafka/v4 v4.3.0
github.com/roadrunner-server/grpc/v4 v4.4.0-beta.2
github.com/roadrunner-server/gzip/v4 v4.1.1
github.com/roadrunner-server/headers/v4 v4.2.2
github.com/roadrunner-server/http/v4 v4.3.0-beta.4
github.com/roadrunner-server/informer/v4 v4.2.1
github.com/roadrunner-server/jobs/v4 v4.6.0-beta.5
github.com/roadrunner-server/kafka/v4 v4.3.1
github.com/roadrunner-server/kv/v4 v4.2.2
github.com/roadrunner-server/lock/v4 v4.4.0-beta.1
github.com/roadrunner-server/logger/v4 v4.2.0
github.com/roadrunner-server/memcached/v4 v4.1.10
github.com/roadrunner-server/memory/v4 v4.4.0
github.com/roadrunner-server/metrics/v4 v4.1.2
github.com/roadrunner-server/nats/v4 v4.4.2
github.com/roadrunner-server/otel/v4 v4.2.0
github.com/roadrunner-server/prometheus/v4 v4.1.0
github.com/roadrunner-server/proxy_ip_parser/v4 v4.1.0
github.com/roadrunner-server/redis/v4 v4.2.0
github.com/roadrunner-server/resetter/v4 v4.0.7
github.com/roadrunner-server/rpc/v4 v4.2.0
github.com/roadrunner-server/lock/v4 v4.4.0-beta.2
github.com/roadrunner-server/logger/v4 v4.2.1
github.com/roadrunner-server/memcached/v4 v4.1.11
github.com/roadrunner-server/memory/v4 v4.4.1
github.com/roadrunner-server/metrics/v4 v4.1.3
github.com/roadrunner-server/nats/v4 v4.4.3
github.com/roadrunner-server/otel/v4 v4.2.1
github.com/roadrunner-server/prometheus/v4 v4.1.1
github.com/roadrunner-server/proxy_ip_parser/v4 v4.1.1
github.com/roadrunner-server/redis/v4 v4.2.1
github.com/roadrunner-server/resetter/v4 v4.0.8
github.com/roadrunner-server/rpc/v4 v4.2.1
github.com/roadrunner-server/sdk/v4 v4.4.0-beta.5
github.com/roadrunner-server/send/v4 v4.2.0
github.com/roadrunner-server/server/v4 v4.3.0-beta.3
github.com/roadrunner-server/send/v4 v4.2.1
github.com/roadrunner-server/server/v4 v4.3.0-beta.4
github.com/roadrunner-server/service/v4 v4.3.1
github.com/roadrunner-server/sqs/v4 v4.4.1
github.com/roadrunner-server/static/v4 v4.1.0
github.com/roadrunner-server/status/v4 v4.3.1
github.com/roadrunner-server/tcp/v4 v4.2.0-beta.1
github.com/roadrunner-server/sqs/v4 v4.4.2
github.com/roadrunner-server/static/v4 v4.1.1
github.com/roadrunner-server/status/v4 v4.3.2
github.com/roadrunner-server/tcp/v4 v4.2.0-beta.2
github.com/spf13/cobra v1.7.0
github.com/spf13/viper v1.16.0
github.com/stretchr/testify v1.8.4
github.com/temporalio/roadrunner-temporal/v4 v4.4.0-beta.2
github.com/temporalio/roadrunner-temporal/v4 v4.4.0-beta.3
go.uber.org/automaxprocs v1.5.3
golang.org/x/exp v0.0.0-20230811145659-89c5cff77bcb
)

exclude github.com/uber-go/tally/v4 v4.1.7

require (
github.com/andybalholm/brotli v1.0.5 // indirect
github.com/aws/aws-sdk-go v1.44.324 // indirect
github.com/aws/aws-sdk-go-v2 v1.20.1 // indirect
github.com/aws/aws-sdk-go-v2/config v1.18.33 // indirect
github.com/aws/aws-sdk-go-v2/credentials v1.13.32 // indirect
github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.13.8 // indirect
github.com/aws/aws-sdk-go-v2/internal/configsources v1.1.38 // indirect
github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.4.32 // indirect
github.com/aws/aws-sdk-go-v2/internal/ini v1.3.39 // indirect
github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.9.32 // indirect
github.com/aws/aws-sdk-go-v2/service/sqs v1.24.2 // indirect
github.com/aws/aws-sdk-go-v2/service/sso v1.13.2 // indirect
github.com/aws/aws-sdk-go-v2/service/ssooidc v1.15.2 // indirect
github.com/aws/aws-sdk-go-v2/service/sts v1.21.2 // indirect
github.com/aws/aws-sdk-go v1.44.326 // indirect
github.com/aws/aws-sdk-go-v2 v1.20.2 // indirect
github.com/aws/aws-sdk-go-v2/config v1.18.34 // indirect
github.com/aws/aws-sdk-go-v2/credentials v1.13.33 // indirect
github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.13.9 // indirect
github.com/aws/aws-sdk-go-v2/internal/configsources v1.1.39 // indirect
github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.4.33 // indirect
github.com/aws/aws-sdk-go-v2/internal/ini v1.3.40 // indirect
github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.9.33 // indirect
github.com/aws/aws-sdk-go-v2/service/sqs v1.24.3 // indirect
github.com/aws/aws-sdk-go-v2/service/sso v1.13.3 // indirect
github.com/aws/aws-sdk-go-v2/service/ssooidc v1.15.3 // indirect
github.com/aws/aws-sdk-go-v2/service/sts v1.21.3 // indirect
github.com/aws/smithy-go v1.14.1 // indirect
github.com/beanstalkd/go-beanstalk v0.2.0 // indirect
github.com/beorn7/perks v1.0.1 // indirect
github.com/bradfitz/gomemcache v0.0.0-20230611145640-acc696258285 // indirect
github.com/cactus/go-statsd-client/statsd v0.0.0-20200423205355-cb0885a1018c // indirect
github.com/caddyserver/certmagic v0.19.1 // indirect
github.com/caddyserver/certmagic v0.19.2 // indirect
github.com/cenkalti/backoff/v4 v4.2.1 // indirect
github.com/cespare/xxhash/v2 v2.2.0 // indirect
github.com/davecgh/go-spew v1.1.1 // indirect
Expand Down Expand Up @@ -131,7 +130,7 @@ require (
github.com/prometheus/common v0.44.0 // indirect
github.com/prometheus/procfs v0.11.1 // indirect
github.com/rabbitmq/amqp091-go v1.8.1 // indirect
github.com/redis/go-redis/v9 v9.0.5 // indirect
github.com/redis/go-redis/v9 v9.1.0 // indirect
github.com/rivo/uniseg v0.4.4 // indirect
github.com/roadrunner-server/tcplisten v1.4.0 // indirect
github.com/robfig/cron v1.2.0 // indirect
Expand All @@ -145,7 +144,7 @@ require (
github.com/subosito/gotenv v1.6.0 // indirect
github.com/tklauser/go-sysconf v0.3.12 // indirect
github.com/tklauser/numcpus v0.6.1 // indirect
github.com/twmb/franz-go v1.14.3 // indirect
github.com/twmb/franz-go v1.14.4 // indirect
github.com/twmb/franz-go/pkg/kmsg v1.6.1 // indirect
github.com/twmb/murmur3 v1.1.8 // indirect
github.com/uber-go/tally/v4 v4.1.6 // indirect
Expand Down Expand Up @@ -187,7 +186,7 @@ require (
golang.org/x/sys v0.11.0 // indirect
golang.org/x/text v0.12.0 // indirect
golang.org/x/time v0.3.0 // indirect
golang.org/x/tools v0.12.0 // indirect
golang.org/x/tools v0.12.1-0.20230815132531-74c255bcf846 // indirect
google.golang.org/genproto/googleapis/api v0.0.0-20230815205213-6bfd019c3878 // indirect
google.golang.org/genproto/googleapis/rpc v0.0.0-20230815205213-6bfd019c3878 // indirect
google.golang.org/grpc v1.57.0 // indirect
Expand Down

0 comments on commit 9f15de1

Please sign in to comment.