From a35d655d78175a6bd2b5e60a3f76724c6aeafd8f Mon Sep 17 00:00:00 2001 From: Chad Sikorra Date: Sun, 5 Apr 2026 22:57:24 -0400 Subject: [PATCH 1/6] Adjust dependency install. --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index faac5ed..c804823 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -28,7 +28,7 @@ jobs: - name: Install Composer dependencies (8.1) if: ${{ matrix.php-versions == '8.1' }} - run: composer install --no-progress --no-suggest --prefer-dist --optimize-autoloader --ignore-platform-reqs + run: composer install --no-progress --no-suggest --prefer-dist --optimize-autoloader - name: Cache dependencies uses: actions/cache@v4 From 928be71146b0911f1e1f371ca42b52f86e8e2dbe Mon Sep 17 00:00:00 2001 From: Chad Sikorra Date: Sun, 5 Apr 2026 22:59:44 -0400 Subject: [PATCH 2/6] Fix the build on windows. --- .github/workflows/build.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index c804823..e026014 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -20,6 +20,7 @@ jobs: - name: Get Composer Cache Directory id: composer-cache + shell: bash run: echo "dir=$(composer config cache-files-dir)" >> $GITHUB_OUTPUT - name: Install Composer dependencies From de44e705b939e7ef2b46dead6b82144d9dcd644d Mon Sep 17 00:00:00 2001 From: Chad Sikorra Date: Sun, 5 Apr 2026 23:01:30 -0400 Subject: [PATCH 3/6] Add more php versions to the matrix. --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index e026014..9cf31d3 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -6,7 +6,7 @@ jobs: strategy: matrix: operating-system: [ubuntu-latest, windows-latest] - php-versions: ['7.1', '7.2', '7.3', '7.4', '8.0', '8.1', '8.2'] + php-versions: ['7.1', '7.2', '7.3', '7.4', '8.0', '8.1', '8.2', '8.3', '8.4', '8.5'] name: PHP ${{ matrix.php-versions }} Test on ${{ matrix.operating-system }} steps: - name: Checkout From cbdc2a4cd304288159815d5ac4bc4a28aeb506f1 Mon Sep 17 00:00:00 2001 From: Chad Sikorra Date: Sun, 5 Apr 2026 23:13:49 -0400 Subject: [PATCH 4/6] Fix composer dev deps. Drop old version support. --- .github/workflows/analysis.yml | 8 ++++---- .github/workflows/build.yml | 13 ++++--------- composer.json | 6 +++--- phpstan.neon | 1 + 4 files changed, 12 insertions(+), 16 deletions(-) diff --git a/.github/workflows/analysis.yml b/.github/workflows/analysis.yml index 1d9e59b..8ceb27f 100644 --- a/.github/workflows/analysis.yml +++ b/.github/workflows/analysis.yml @@ -11,7 +11,7 @@ jobs: - name: Setup PHP uses: shivammathur/setup-php@v2 with: - php-version: '7.4' + php-version: '8.3' extensions: openssl,mbstring coverage: xdebug @@ -19,9 +19,6 @@ jobs: id: composer-cache run: echo "dir=$(composer config cache-files-dir)" >> $GITHUB_OUTPUT - - name: Install Composer Dependencies - run: composer install --no-progress --no-suggest --prefer-dist --optimize-autoloader - - name: Cache Dependencies uses: actions/cache@v4 with: @@ -29,6 +26,9 @@ jobs: key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }} restore-keys: ${{ runner.os }}-composer- + - name: Install Composer Dependencies + run: composer install --no-progress --prefer-dist --optimize-autoloader + - name: Run Static Analysis run: composer run-script analyse diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 9cf31d3..3ac300a 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -6,7 +6,7 @@ jobs: strategy: matrix: operating-system: [ubuntu-latest, windows-latest] - php-versions: ['7.1', '7.2', '7.3', '7.4', '8.0', '8.1', '8.2', '8.3', '8.4', '8.5'] + php-versions: ['8.1', '8.2', '8.3', '8.4', '8.5'] name: PHP ${{ matrix.php-versions }} Test on ${{ matrix.operating-system }} steps: - name: Checkout @@ -23,14 +23,6 @@ jobs: shell: bash run: echo "dir=$(composer config cache-files-dir)" >> $GITHUB_OUTPUT - - name: Install Composer dependencies - if: ${{ matrix.php-versions != '8.1' }} - run: composer install --no-progress --no-suggest --prefer-dist --optimize-autoloader - - - name: Install Composer dependencies (8.1) - if: ${{ matrix.php-versions == '8.1' }} - run: composer install --no-progress --no-suggest --prefer-dist --optimize-autoloader - - name: Cache dependencies uses: actions/cache@v4 with: @@ -38,5 +30,8 @@ jobs: key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }} restore-keys: ${{ runner.os }}-composer- + - name: Install Composer dependencies + run: composer install --no-progress --prefer-dist --optimize-autoloader + - name: Run Specs run: composer run-script test diff --git a/composer.json b/composer.json index 0d40e01..6704ebc 100644 --- a/composer.json +++ b/composer.json @@ -18,10 +18,10 @@ "php": ">=7.1" }, "require-dev": { - "phpspec/phpspec": "^5.1|^6.1|^7.1", + "phpspec/phpspec": "^7.1|^8.0", "freedsx/asn1": "^0.4.0", - "friends-of-phpspec/phpspec-code-coverage": "^4.3|^6.1", - "phpstan/phpstan": "^0.12" + "friends-of-phpspec/phpspec-code-coverage": "^6.1|^7.0", + "phpstan/phpstan": "^2.0" }, "suggest": { "ext-openssl": "For SSL/TLS support.", diff --git a/phpstan.neon b/phpstan.neon index dfac2ad..858a41d 100644 --- a/phpstan.neon +++ b/phpstan.neon @@ -2,6 +2,7 @@ parameters: level: 6 paths: - %currentWorkingDirectory%/src + phpVersion: 70100 checkMissingIterableValueType: false treatPhpDocTypesAsCertain: false checkGenericClassInNonGenericObjectType: false \ No newline at end of file From 7c5f849804447b946ee46219c18885cd9760b157 Mon Sep 17 00:00:00 2001 From: Chad Sikorra Date: Sun, 5 Apr 2026 23:21:03 -0400 Subject: [PATCH 5/6] Fix the phpstan config. --- phpstan.neon | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/phpstan.neon b/phpstan.neon index 858a41d..b8fa543 100644 --- a/phpstan.neon +++ b/phpstan.neon @@ -3,6 +3,4 @@ parameters: paths: - %currentWorkingDirectory%/src phpVersion: 70100 - checkMissingIterableValueType: false - treatPhpDocTypesAsCertain: false - checkGenericClassInNonGenericObjectType: false \ No newline at end of file + treatPhpDocTypesAsCertain: false \ No newline at end of file From e2bb2cefa1c1237771d02811327347e4f4ff9ca2 Mon Sep 17 00:00:00 2001 From: Chad Sikorra Date: Sun, 5 Apr 2026 23:24:08 -0400 Subject: [PATCH 6/6] Fix phpstan errors. --- src/FreeDSx/Socket/Socket.php | 18 +++++++++--------- src/FreeDSx/Socket/SocketPool.php | 8 ++++---- src/FreeDSx/Socket/SocketServer.php | 12 ++++++------ 3 files changed, 19 insertions(+), 19 deletions(-) diff --git a/src/FreeDSx/Socket/Socket.php b/src/FreeDSx/Socket/Socket.php index 70268f7..28b926a 100644 --- a/src/FreeDSx/Socket/Socket.php +++ b/src/FreeDSx/Socket/Socket.php @@ -54,7 +54,7 @@ class Socket protected $errorNumber; /** - * @var array + * @var array */ protected $sslOptsMap = [ 'ssl_allow_self_signed' => 'allow_self_signed', @@ -68,7 +68,7 @@ class Socket ]; /** - * @var array + * @var array */ protected $sslOpts = [ 'allow_self_signed' => false, @@ -79,7 +79,7 @@ class Socket ]; /** - * @var array + * @var array */ protected $options = [ 'transport' => 'tcp', @@ -98,7 +98,7 @@ class Socket /** * @param resource|null $resource - * @param array $options + * @param array $options */ public function __construct($resource = null, array $options = []) { @@ -269,7 +269,7 @@ public function connect(string $host) /** * Get the options set for the socket. * - * @return array + * @return array */ public function getOptions() : array { @@ -280,7 +280,7 @@ public function getOptions() : array * Create a socket by connecting to a specific host. * * @param string $host - * @param array $options + * @param array $options * @return Socket * @throws ConnectionException */ @@ -293,7 +293,7 @@ public static function create(string $host, array $options = []) : Socket * Create a UNIX based socket. * * @param string $file The full path to the unix socket. - * @param array $options Any additional options. + * @param array $options Any additional options. * @return Socket * @throws ConnectionException */ @@ -314,7 +314,7 @@ public static function unix( * Create a TCP based socket. * * @param string $host - * @param array $options + * @param array $options * @return Socket * @throws ConnectionException */ @@ -327,7 +327,7 @@ public static function tcp(string $host, array $options = []) : Socket * Create a UDP based socket. * * @param string $host - * @param array $options + * @param array $options * @return Socket * @throws ConnectionException */ diff --git a/src/FreeDSx/Socket/SocketPool.php b/src/FreeDSx/Socket/SocketPool.php index 5f6023c..0b6247b 100644 --- a/src/FreeDSx/Socket/SocketPool.php +++ b/src/FreeDSx/Socket/SocketPool.php @@ -20,7 +20,7 @@ class SocketPool { /** - * @var array + * @var array */ protected $options = [ 'servers' => [], @@ -29,7 +29,7 @@ class SocketPool ]; /** - * @var array + * @var list */ protected $socketOpts = [ 'use_ssl', @@ -45,7 +45,7 @@ class SocketPool ]; /** - * @param array $options + * @param array $options */ public function __construct(array $options) { @@ -84,7 +84,7 @@ public function connect(string $hostname = '') : Socket } /** - * @return array + * @return array */ protected function getSocketOptions() : array { diff --git a/src/FreeDSx/Socket/SocketServer.php b/src/FreeDSx/Socket/SocketServer.php index 4578f90..61608d8 100644 --- a/src/FreeDSx/Socket/SocketServer.php +++ b/src/FreeDSx/Socket/SocketServer.php @@ -29,7 +29,7 @@ class SocketServer extends Socket ]; /** - * @var array + * @var array */ protected $serverOpts = [ 'use_ssl' => false, @@ -48,7 +48,7 @@ class SocketServer extends Socket protected $clients = []; /** - * @param array $options + * @param array $options */ public function __construct(array $options = []) { @@ -173,7 +173,7 @@ public function removeClient(Socket $socket): void * * @param string $ip * @param int|null $port - * @param array $options + * @param array $options * @return SocketServer * @throws ConnectionException */ @@ -193,7 +193,7 @@ public static function bind( * * @param string $ip * @param int $port - * @param array $options + * @param array $options * @return SocketServer * @throws ConnectionException */ @@ -217,7 +217,7 @@ public static function bindTcp( * * @param string $ip * @param int $port - * @param array $options + * @param array $options * @return SocketServer * @throws ConnectionException */ @@ -240,7 +240,7 @@ public static function bindUdp( * Created a UNIX based socket server. * * @param string $socketFile - * @param array $options + * @param array $options * @return SocketServer * @throws ConnectionException */