diff --git a/CHANGELOG.md b/CHANGELOG.md index 58962aab9..deae3eb61 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,22 @@ ## [Unreleased] +## [v254] - 2024-07-05 + +### ADD + +- PHP/8.2.21 [David Zuelke] +- PHP/8.3.9 [David Zuelke] +- ext-newrelic/10.22.0.12 [David Zuelke] +- ext-blackfire/1.92.18 [David Zuelke] + +### CHG + +- Sync Nginx `mime.types` config with upstream to add `application/wasm` for `.wasm` and `image/avif` for `.avif` files (#738) [David Zuelke] +- Add MIME type `text/javascript` for `.mjs` files to Nginx config as per RFC 9239; `application/javascript` remains for `.js` from upstream default `mime.types` (#737) [David Zuelke] +- Apache/2.4.61 [David Zuelke] +- Blackfire/2.28.7 [David Zuelke] + ## [v253] - 2024-06-13 ### ADD @@ -2688,7 +2704,8 @@ - Auto-set and follow (but not enable, for now) the FPM slowlog [David Zuelke] -[unreleased]: https://github.com/heroku/heroku-buildpack-php/compare/v253...main +[unreleased]: https://github.com/heroku/heroku-buildpack-php/compare/v254...main +[v254]: https://github.com/heroku/heroku-buildpack-php/compare/v253...v254 [v253]: https://github.com/heroku/heroku-buildpack-php/compare/v252...v253 [v252]: https://github.com/heroku/heroku-buildpack-php/compare/v251...v252 [v251]: https://github.com/heroku/heroku-buildpack-php/compare/v250...v251 diff --git a/Gemfile.lock b/Gemfile.lock index b70755a7d..8d4c7a4a3 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -1,9 +1,9 @@ GIT remote: https://github.com/heroku/hatchet.git - revision: 0de04fcc3c2125efb07060445e058b643de99d49 + revision: 69e268f694acd5876ff47810bdbd8467b35f8249 branch: timeouts-etc specs: - heroku_hatchet (8.0.2) + heroku_hatchet (8.0.4) excon (~> 0) platform-api (~> 3) rrrretry (~> 1) @@ -14,10 +14,12 @@ GEM remote: https://rubygems.org/ specs: ansi (1.5.0) + base64 (0.2.0) diff-lcs (1.5.1) erubis (2.7.0) - excon (0.109.0) - heroics (0.1.2) + excon (0.110.0) + heroics (0.1.3) + base64 erubis (~> 2.0) excon moneta @@ -25,10 +27,10 @@ GEM webrick moneta (1.0.0) multi_json (1.15.0) - parallel (1.24.0) + parallel (1.25.1) parallel_tests (4.7.1) parallel - platform-api (3.6.0) + platform-api (3.7.0) heroics (~> 0.1.1) moneta (~> 1.0.0) rate_throttle_client (~> 0.1.0) @@ -37,7 +39,7 @@ GEM rrrretry (1.0.0) rspec-core (3.13.0) rspec-support (~> 3.13.0) - rspec-expectations (3.13.0) + rspec-expectations (3.13.1) diff-lcs (>= 1.2.0, < 2.0) rspec-support (~> 3.13.0) rspec-retry (0.6.2) diff --git a/bin/compile b/bin/compile index 1016f3ef2..27d4283bc 100755 --- a/bin/compile +++ b/bin/compile @@ -250,7 +250,7 @@ fi mkdir -p $build_dir/.heroku/php-min ln -s $build_dir/.heroku/php-min /app/.heroku/php-min -curl_retry_on_18 --retry-connrefused --retry 3 --connect-timeout 10 --fail --silent --location -o $build_dir/.heroku/php-min.tar.gz "${s3_url}php-min-8.3.8.tar.gz" || { +curl_retry_on_18 --retry-connrefused --retry 3 --connect-timeout 10 --fail --silent --location -o $build_dir/.heroku/php-min.tar.gz "${s3_url}php-min-8.3.9.tar.gz" || { mcount "failures.bootstrap.download.php-min" error <<-EOF Failed to download minimal PHP for bootstrapping! diff --git a/conf/nginx/heroku.conf.php b/conf/nginx/heroku.conf.php index 0baea4d58..eee80c622 100644 --- a/conf/nginx/heroku.conf.php +++ b/conf/nginx/heroku.conf.php @@ -1,5 +1,6 @@ http { include mime.types; + include heroku.types; default_type application/octet-stream; #log_format main '$remote_addr - $remote_user [$time_local] "$request" ' diff --git a/conf/nginx/heroku.types b/conf/nginx/heroku.types new file mode 100644 index 000000000..373eb75a0 --- /dev/null +++ b/conf/nginx/heroku.types @@ -0,0 +1,9 @@ +# this file is separate from mime.types to allow easier syncing with upstream +types { + # mime.types still defines "application/javascript" for "js" + # We only define "mjs" here to avoid duplicate extension warnings on startup. + # In compliance with RFC 9239, we are using "text/javascript" for "mjs" + # If and when upsteam ever update their default config, we can drop this. + # Also see https://trac.nginx.org/nginx/ticket/2216 + text/javascript mjs; +} diff --git a/conf/nginx/mime.types b/conf/nginx/mime.types index 296125695..1c00d701a 100644 --- a/conf/nginx/mime.types +++ b/conf/nginx/mime.types @@ -15,6 +15,7 @@ types { text/vnd.wap.wml wml; text/x-component htc; + image/avif avif; image/png png; image/svg+xml svg svgz; image/tiff tif tiff; @@ -51,6 +52,7 @@ types { application/vnd.openxmlformats-officedocument.wordprocessingml.document docx; application/vnd.wap.wmlc wmlc; + application/wasm wasm; application/x-7z-compressed 7z; application/x-cocoa cco; application/x-java-archive-diff jardiff; diff --git a/support/build/apache-2.4.59 b/support/build/apache-2.4.61 similarity index 100% rename from support/build/apache-2.4.59 rename to support/build/apache-2.4.61 diff --git a/support/build/blackfire-2.28.4 b/support/build/blackfire-2.28.7 similarity index 100% rename from support/build/blackfire-2.28.4 rename to support/build/blackfire-2.28.7 diff --git a/support/build/extensions/no-debug-non-zts-20180731/blackfire-1.92.17 b/support/build/extensions/no-debug-non-zts-20180731/blackfire-1.92.18 similarity index 100% rename from support/build/extensions/no-debug-non-zts-20180731/blackfire-1.92.17 rename to support/build/extensions/no-debug-non-zts-20180731/blackfire-1.92.18 diff --git a/support/build/extensions/no-debug-non-zts-20180731/newrelic-10.21.0.11 b/support/build/extensions/no-debug-non-zts-20180731/newrelic-10.22.0.12 similarity index 100% rename from support/build/extensions/no-debug-non-zts-20180731/newrelic-10.21.0.11 rename to support/build/extensions/no-debug-non-zts-20180731/newrelic-10.22.0.12 diff --git a/support/build/extensions/no-debug-non-zts-20190902/blackfire-1.92.17 b/support/build/extensions/no-debug-non-zts-20190902/blackfire-1.92.18 similarity index 100% rename from support/build/extensions/no-debug-non-zts-20190902/blackfire-1.92.17 rename to support/build/extensions/no-debug-non-zts-20190902/blackfire-1.92.18 diff --git a/support/build/extensions/no-debug-non-zts-20190902/newrelic-10.21.0.11 b/support/build/extensions/no-debug-non-zts-20190902/newrelic-10.22.0.12 similarity index 100% rename from support/build/extensions/no-debug-non-zts-20190902/newrelic-10.21.0.11 rename to support/build/extensions/no-debug-non-zts-20190902/newrelic-10.22.0.12 diff --git a/support/build/extensions/no-debug-non-zts-20200930/blackfire-1.92.17 b/support/build/extensions/no-debug-non-zts-20200930/blackfire-1.92.18 similarity index 100% rename from support/build/extensions/no-debug-non-zts-20200930/blackfire-1.92.17 rename to support/build/extensions/no-debug-non-zts-20200930/blackfire-1.92.18 diff --git a/support/build/extensions/no-debug-non-zts-20200930/newrelic-10.21.0.11 b/support/build/extensions/no-debug-non-zts-20200930/newrelic-10.22.0.12 similarity index 100% rename from support/build/extensions/no-debug-non-zts-20200930/newrelic-10.21.0.11 rename to support/build/extensions/no-debug-non-zts-20200930/newrelic-10.22.0.12 diff --git a/support/build/extensions/no-debug-non-zts-20210902/blackfire-1.92.17 b/support/build/extensions/no-debug-non-zts-20210902/blackfire-1.92.18 similarity index 100% rename from support/build/extensions/no-debug-non-zts-20210902/blackfire-1.92.17 rename to support/build/extensions/no-debug-non-zts-20210902/blackfire-1.92.18 diff --git a/support/build/extensions/no-debug-non-zts-20210902/newrelic-10.21.0.11 b/support/build/extensions/no-debug-non-zts-20210902/newrelic-10.22.0.12 similarity index 100% rename from support/build/extensions/no-debug-non-zts-20210902/newrelic-10.21.0.11 rename to support/build/extensions/no-debug-non-zts-20210902/newrelic-10.22.0.12 diff --git a/support/build/extensions/no-debug-non-zts-20220829/blackfire-1.92.17 b/support/build/extensions/no-debug-non-zts-20220829/blackfire-1.92.18 similarity index 100% rename from support/build/extensions/no-debug-non-zts-20220829/blackfire-1.92.17 rename to support/build/extensions/no-debug-non-zts-20220829/blackfire-1.92.18 diff --git a/support/build/extensions/no-debug-non-zts-20220829/newrelic-10.21.0.11 b/support/build/extensions/no-debug-non-zts-20220829/newrelic-10.22.0.12 similarity index 100% rename from support/build/extensions/no-debug-non-zts-20220829/newrelic-10.21.0.11 rename to support/build/extensions/no-debug-non-zts-20220829/newrelic-10.22.0.12 diff --git a/support/build/extensions/no-debug-non-zts-20230831/blackfire-1.92.17 b/support/build/extensions/no-debug-non-zts-20230831/blackfire-1.92.18 similarity index 100% rename from support/build/extensions/no-debug-non-zts-20230831/blackfire-1.92.17 rename to support/build/extensions/no-debug-non-zts-20230831/blackfire-1.92.18 diff --git a/support/build/extensions/no-debug-non-zts-20230831/newrelic-10.21.0.11 b/support/build/extensions/no-debug-non-zts-20230831/newrelic-10.22.0.12 similarity index 100% rename from support/build/extensions/no-debug-non-zts-20230831/newrelic-10.21.0.11 rename to support/build/extensions/no-debug-non-zts-20230831/newrelic-10.22.0.12 diff --git a/support/build/php-8.2.20 b/support/build/php-8.2.21 similarity index 100% rename from support/build/php-8.2.20 rename to support/build/php-8.2.21 diff --git a/support/build/php-8.3.8 b/support/build/php-8.3.9 similarity index 100% rename from support/build/php-8.3.8 rename to support/build/php-8.3.9 diff --git a/support/build/php-min-8.3.8 b/support/build/php-min-8.3.9 similarity index 100% rename from support/build/php-min-8.3.8 rename to support/build/php-min-8.3.9 diff --git a/support/devcenter/changelog.twig b/support/devcenter/changelog.twig index bae01637d..1823ad43c 100644 --- a/support/devcenter/changelog.twig +++ b/support/devcenter/changelog.twig @@ -28,7 +28,7 @@ The following new [Composer versions](https://devcenter.heroku.com/articles/php- {% endif -%} {% if apache %} -The Apache HTTPD [web server](https://devcenter.heroku.com/articles/php-support#web-servers) has been updated to version [{{apache.version}}](https://downloads.apache.org/httpd/CHANGES_{{apache.version}}). +The Apache HTTP [web server](https://devcenter.heroku.com/articles/php-support#web-servers) has been updated to version [{{apache.version}}](https://archive.apache.org/dist/httpd/CHANGES_{{apache.version}}). {% endif -%} diff --git a/support/devcenter/composer.lock b/support/devcenter/composer.lock index 3fd8fd7c0..f66bd8062 100644 --- a/support/devcenter/composer.lock +++ b/support/devcenter/composer.lock @@ -466,20 +466,20 @@ }, { "name": "psr/http-factory", - "version": "1.0.2", + "version": "1.1.0", "source": { "type": "git", "url": "https://github.com/php-fig/http-factory.git", - "reference": "e616d01114759c4c489f93b099585439f795fe35" + "reference": "2b4765fddfe3b508ac62f829e852b1501d3f6e8a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-fig/http-factory/zipball/e616d01114759c4c489f93b099585439f795fe35", - "reference": "e616d01114759c4c489f93b099585439f795fe35", + "url": "https://api.github.com/repos/php-fig/http-factory/zipball/2b4765fddfe3b508ac62f829e852b1501d3f6e8a", + "reference": "2b4765fddfe3b508ac62f829e852b1501d3f6e8a", "shasum": "" }, "require": { - "php": ">=7.0.0", + "php": ">=7.1", "psr/http-message": "^1.0 || ^2.0" }, "type": "library", @@ -503,7 +503,7 @@ "homepage": "https://www.php-fig.org/" } ], - "description": "Common interfaces for PSR-7 HTTP message factories", + "description": "PSR-17: Common interfaces for PSR-7 HTTP message factories", "keywords": [ "factory", "http", @@ -515,9 +515,9 @@ "response" ], "support": { - "source": "https://github.com/php-fig/http-factory/tree/1.0.2" + "source": "https://github.com/php-fig/http-factory" }, - "time": "2023-04-10T20:10:41+00:00" + "time": "2024-04-15T12:06:14+00:00" }, { "name": "psr/http-message", @@ -618,25 +618,25 @@ }, { "name": "symfony/deprecation-contracts", - "version": "v2.5.3", + "version": "v3.5.0", "source": { "type": "git", "url": "https://github.com/symfony/deprecation-contracts.git", - "reference": "80d075412b557d41002320b96a096ca65aa2c98d" + "reference": "0e0d29ce1f20deffb4ab1b016a7257c4f1e789a1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/80d075412b557d41002320b96a096ca65aa2c98d", - "reference": "80d075412b557d41002320b96a096ca65aa2c98d", + "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/0e0d29ce1f20deffb4ab1b016a7257c4f1e789a1", + "reference": "0e0d29ce1f20deffb4ab1b016a7257c4f1e789a1", "shasum": "" }, "require": { - "php": ">=7.1" + "php": ">=8.1" }, "type": "library", "extra": { "branch-alias": { - "dev-main": "2.5-dev" + "dev-main": "3.5-dev" }, "thanks": { "name": "symfony/contracts", @@ -665,7 +665,7 @@ "description": "A generic function and convention to trigger deprecation notices", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/deprecation-contracts/tree/v2.5.3" + "source": "https://github.com/symfony/deprecation-contracts/tree/v3.5.0" }, "funding": [ { @@ -681,20 +681,20 @@ "type": "tidelift" } ], - "time": "2023-01-24T14:02:46+00:00" + "time": "2024-04-18T09:32:20+00:00" }, { "name": "symfony/polyfill-ctype", - "version": "v1.29.0", + "version": "v1.30.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-ctype.git", - "reference": "ef4d7e442ca910c4764bce785146269b30cb5fc4" + "reference": "0424dff1c58f028c451efff2045f5d92410bd540" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/ef4d7e442ca910c4764bce785146269b30cb5fc4", - "reference": "ef4d7e442ca910c4764bce785146269b30cb5fc4", + "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/0424dff1c58f028c451efff2045f5d92410bd540", + "reference": "0424dff1c58f028c451efff2045f5d92410bd540", "shasum": "" }, "require": { @@ -744,7 +744,7 @@ "portable" ], "support": { - "source": "https://github.com/symfony/polyfill-ctype/tree/v1.29.0" + "source": "https://github.com/symfony/polyfill-ctype/tree/v1.30.0" }, "funding": [ { @@ -760,20 +760,20 @@ "type": "tidelift" } ], - "time": "2024-01-29T20:11:03+00:00" + "time": "2024-05-31T15:07:36+00:00" }, { "name": "symfony/polyfill-mbstring", - "version": "v1.29.0", + "version": "v1.30.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-mbstring.git", - "reference": "9773676c8a1bb1f8d4340a62efe641cf76eda7ec" + "reference": "fd22ab50000ef01661e2a31d850ebaa297f8e03c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/9773676c8a1bb1f8d4340a62efe641cf76eda7ec", - "reference": "9773676c8a1bb1f8d4340a62efe641cf76eda7ec", + "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/fd22ab50000ef01661e2a31d850ebaa297f8e03c", + "reference": "fd22ab50000ef01661e2a31d850ebaa297f8e03c", "shasum": "" }, "require": { @@ -824,7 +824,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.29.0" + "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.30.0" }, "funding": [ { @@ -840,20 +840,20 @@ "type": "tidelift" } ], - "time": "2024-01-29T20:11:03+00:00" + "time": "2024-06-19T12:30:46+00:00" }, { "name": "symfony/polyfill-php80", - "version": "v1.29.0", + "version": "v1.30.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php80.git", - "reference": "87b68208d5c1188808dd7839ee1e6c8ec3b02f1b" + "reference": "77fa7995ac1b21ab60769b7323d600a991a90433" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/87b68208d5c1188808dd7839ee1e6c8ec3b02f1b", - "reference": "87b68208d5c1188808dd7839ee1e6c8ec3b02f1b", + "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/77fa7995ac1b21ab60769b7323d600a991a90433", + "reference": "77fa7995ac1b21ab60769b7323d600a991a90433", "shasum": "" }, "require": { @@ -904,7 +904,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-php80/tree/v1.29.0" + "source": "https://github.com/symfony/polyfill-php80/tree/v1.30.0" }, "funding": [ { @@ -920,7 +920,7 @@ "type": "tidelift" } ], - "time": "2024-01-29T20:11:03+00:00" + "time": "2024-05-31T15:07:36+00:00" }, { "name": "twig/twig", diff --git a/support/devcenter/generate.php b/support/devcenter/generate.php index 512a371f9..68bfd01b2 100755 --- a/support/devcenter/generate.php +++ b/support/devcenter/generate.php @@ -26,7 +26,7 @@ $stacks = [ 1 => '20', // the offset we start with here is relevant for the numbering of footnotes '22', - // '24', + '24', ]; } diff --git a/test/fixtures/devcenter/changelog/changelog.md b/test/fixtures/devcenter/changelog/changelog.md index fdecf08e0..4a1252726 100644 --- a/test/fixtures/devcenter/changelog/changelog.md +++ b/test/fixtures/devcenter/changelog/changelog.md @@ -17,7 +17,7 @@ The following new [Composer versions](https://devcenter.heroku.com/articles/php- - [Composer 2.8.0](https://getcomposer.org/changelog/2.8.0) -The Apache HTTPD [web server](https://devcenter.heroku.com/articles/php-support#web-servers) has been updated to version [2.4.4](https://downloads.apache.org/httpd/CHANGES_2.4.4). +The Apache HTTP [web server](https://devcenter.heroku.com/articles/php-support#web-servers) has been updated to version [2.4.4](https://archive.apache.org/dist/httpd/CHANGES_2.4.4). The Nginx [web server](https://devcenter.heroku.com/articles/php-support#web-servers) has been updated to version [2.9.0](https://nginx.org/en/CHANGES-2.9). diff --git a/test/spec/nginx_spec.rb b/test/spec/nginx_spec.rb index 24a046bb9..97336dd74 100644 --- a/test/spec/nginx_spec.rb +++ b/test/spec/nginx_spec.rb @@ -1,35 +1,44 @@ require_relative "spec_helper" -describe "A PHP application" do - it "installs a recent stable nginx with OpenSSL support and expected modules" do - new_app_with_stack_and_platrepo('test/fixtures/default').deploy do |app| - nginx = app.output.match(/- nginx \((\d+\.\d*[02468]\.\d+)/) - expect(nginx).not_to be_nil, "expected nginx install line in build output" - expect(Gem::Dependency.new('nginx', '~> 1.14').match?('nginx', nginx[1])).to be == true, "expected nginx version compatible with selector '~> 1.14' but got #{nginx[1]}" - retry_until retry: 3, sleep: 5 do - nginx_v = app.run('nginx -V') - expect(nginx_v).to match(/^built with OpenSSL/) - expect(nginx_v).to match(/--with-http_auth_request_module/) - expect(nginx_v).to match(/--with-http_realip_module/) - expect(nginx_v).to match(/--with-http_ssl_module/) - expect(nginx_v).to match(/--with-http_stub_status_module/) - end - end - end - it "allows access to /.well-known/ with Nginx" do - new_app_with_stack_and_platrepo('test/fixtures/default').tap do |app| +describe "A PHP application using Nginx" do + before(:all) do + @app = new_app_with_stack_and_platrepo('test/fixtures/default').tap do |app| app.before_deploy(:append) do FileUtils.mkdir_p(".well-known/acme") - File.open(".well-known/acme/foo", "w+") do |f| - f.write 'bar' - end - File.open("Procfile", "w+") do |f| - f.write 'web: heroku-php-nginx' - end - end - app.deploy do |app| - expect(successful_body(app, path: '/.well-known/acme/foo')).to eq 'bar' + File.write(".well-known/acme/foo", "bar") + + FileUtils.touch("test.mjs") + + File.write("Procfile", "web: heroku-php-nginx") end end + + @app.deploy + end + + after(:all) do + @app.teardown! + end + + it "gets a recent stable Nginx with OpenSSL support and expected modules" do + nginx = @app.output.match(/- nginx \((\d+\.\d*[02468]\.\d+)/) + expect(nginx).not_to be_nil, "expected nginx install line in build output" + expect(Gem::Dependency.new('nginx', '~> 1.14').match?('nginx', nginx[1])).to be == true, "expected nginx version compatible with selector '~> 1.14' but got #{nginx[1]}" + retry_until retry: 3, sleep: 5 do + nginx_v = @app.run('nginx -V') + expect(nginx_v).to match(/^built with OpenSSL/) + expect(nginx_v).to match(/--with-http_auth_request_module/) + expect(nginx_v).to match(/--with-http_realip_module/) + expect(nginx_v).to match(/--with-http_ssl_module/) + expect(nginx_v).to match(/--with-http_stub_status_module/) + end + end + + it "allows access to /.well-known/" do + expect(successful_body(@app, path: '/.well-known/acme/foo')).to eq 'bar' + end + + it "serves a .mjs file with MIME type text/javascript" do + expect(successful_request(@app, path: '/test.mjs').get_header('Content-Type')).to eq 'text/javascript' end end diff --git a/test/spec/spec_helper.rb b/test/spec/spec_helper.rb index a90510f85..5ff8b1fb5 100644 --- a/test/spec/spec_helper.rb +++ b/test/spec/spec_helper.rb @@ -34,12 +34,16 @@ def product_hash(hash) end end -def successful_body(app, options = {}) +def successful_request(app, options = {}) retry_limit = options[:retry_limit] || 5 retry_interval = options[:retry_interval] || 2 path = options[:path] ? "/#{options[:path]}" : '' web_url = app.platform_api.app.info(app.name).fetch("web_url") - Excon.get("#{web_url}#{path}", :idempotent => true, :expects => 200, :retry_limit => retry_limit, :retry_interval => retry_interval).body + Excon.get("#{web_url}#{path}", :idempotent => true, :expects => 200, :retry_limit => retry_limit, :retry_interval => retry_interval) +end + +def successful_body(app, options = {}) + successful_request(app, options).body end def expect_exit(expect: :to, operator: :eq, code: 0) diff --git a/test/var/log/parallel_runtime_rspec.heroku-20.log b/test/var/log/parallel_runtime_rspec.heroku-20.log index 117db5ecd..0fa02a876 100644 --- a/test/var/log/parallel_runtime_rspec.heroku-20.log +++ b/test/var/log/parallel_runtime_rspec.heroku-20.log @@ -9,7 +9,7 @@ test/spec/composer-2_spec.rb:90 test/spec/devcenter_spec.rb:5 test/spec/httpd_spec.rb:18 test/spec/newrelic_spec.rb:115 -test/spec/nginx_spec.rb:49 +test/spec/nginx_spec.rb:25 test/spec/php-7.3_base_spec.rb:30 test/spec/php-7.3_boot-apache2_spec.rb:65 test/spec/php-7.3_boot-nginx_spec.rb:55 diff --git a/test/var/log/parallel_runtime_rspec.heroku-22.log b/test/var/log/parallel_runtime_rspec.heroku-22.log index 46f94f5f1..c00237086 100644 --- a/test/var/log/parallel_runtime_rspec.heroku-22.log +++ b/test/var/log/parallel_runtime_rspec.heroku-22.log @@ -8,7 +8,7 @@ test/spec/composer-2_spec.rb:90 test/spec/devcenter_spec.rb:5 test/spec/httpd_spec.rb:18 test/spec/newrelic_spec.rb:115 -test/spec/nginx_spec.rb:49 +test/spec/nginx_spec.rb:25 test/spec/php-8.1_base_spec.rb:30 test/spec/php-8.1_boot-apache2_spec.rb:65 test/spec/php-8.1_boot-nginx_spec.rb:55 diff --git a/test/var/log/parallel_runtime_rspec.heroku-24.log b/test/var/log/parallel_runtime_rspec.heroku-24.log index bf7f5c5d0..58b5a8242 100644 --- a/test/var/log/parallel_runtime_rspec.heroku-24.log +++ b/test/var/log/parallel_runtime_rspec.heroku-24.log @@ -8,7 +8,7 @@ test/spec/composer-2_spec.rb:90 test/spec/devcenter_spec.rb:5 test/spec/httpd_spec.rb:18 test/spec/newrelic_spec.rb:115 -test/spec/nginx_spec.rb:49 +test/spec/nginx_spec.rb:25 test/spec/php-8.2_base_spec.rb:30 test/spec/php-8.2_boot-apache2_spec.rb:65 test/spec/php-8.2_boot-nginx_spec.rb:55