macos-12 runner image is deprecated and is EOL 12/3/24 per https://github.com/actions/runner-images/issues/10721
Note that Python 3.8 is EOL and these tests should also be dropped / upgraded in
favor of 3.9 soon anyways.
#test-continuous
PiperOrigin-RevId: 687002433
This also prevents the validate_yaml script from erroring when trying to log that a step is mishandling continuous-run / continuous-prefix
PiperOrigin-RevId: 686952188
This flips the default behavior to "fetch", downloading local copies of required dependencies. This can be disabled by setting `-Dprotobuf_FETCH_DEPENDENCIES=OFF`, in which case we will look for a local installation using find_package. Setting `-Dprotobuf_ABSL_PROVIDER=package` will continue to have the same behavior as before.
See https://protobuf.dev/news/2024-10-02/#replace-cmake-submods for more details.
#test-continuous
PiperOrigin-RevId: 686649864
This ports upb's WORKSPACE scraping logic to protobuf, and allows us to dynamically fetch our dependencies at the exact same pinned version as in Bazel via protobuf_FETCH_DEPENDENCIES=ON. This is mostly for development purposes, and is preferable to git submodules. In a later cl we will flip the default behavior to "package"
#test-continuous
PiperOrigin-RevId: 686265348
Bumps [shivammathur/setup-php](https://github.com/shivammathur/setup-php) from 2.30.2 to 2.31.1.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/shivammathur/setup-php/releases">shivammathur/setup-php's releases</a>.</em></p>
<blockquote>
<h2>2.31.1</h2>
<h2>Changelog</h2>
<ul>
<li>
<p>Fix installing PECL extensions on Windows with a build version <a href="https://redirect.github.com/shivammathur/setup-php/issues/855">#855</a></p>
</li>
<li>
<p>Fix cache support for ioncube extension <a href="https://redirect.github.com/shivammathur/setup-php/issues/856">#856</a></p>
</li>
<li>
<p>Updated Node.js dependencies.</p>
</li>
</ul>
<p>For the complete list of changes, please refer to the <a href="https://github.com/shivammathur/setup-php/compare/2.31.0...2.31.1">Full Changelog</a></p>
<!-- raw HTML omitted -->
<h2>2.31.0</h2>
<h2>Changelog</h2>
<ul>
<li>
<p>Added support for a fallback mirror for <code>ondrej/php</code> PPA when launchpad is down (<a href="https://redirect.github.com/shivammathur/setup-php/issues/834">#834</a>).</p>
</li>
<li>
<p>Fixed installing packages on self-hosted environments with existing conf files (<a href="https://redirect.github.com/shivammathur/setup-php/issues/852">#852</a>).</p>
</li>
<li>
<p>Fixed support for <code>oci8</code> and <code>pdo_oci</code> extensions on <code>ubuntu-24.04</code>.</p>
</li>
<li>
<p>Fixed support for <code>couchbase</code> extension on <code>ubuntu-24.04</code>.</p>
</li>
<li>
<p>Fixed support for <code>ubuntu-24.04</code> after <code>apt-fast</code> was dropped from the GA images.</p>
</li>
<li>
<p>Fixed support for <code>firebird</code> extension on <code>macos-14</code></p>
</li>
<li>
<p>Fixed support for <code>blackfire</code> extension on <code>macos-14</code>.</p>
</li>
<li>
<p>Fixed support for <code>relay</code> extension.</p>
</li>
<li>
<p>Fixed support for <code>phalcon</code> extension for PHP 7.4 on Ubuntu.</p>
</li>
<li>
<p>Updated Node.js dependencies.</p>
</li>
</ul>
<p>For the complete list of changes, please refer to the <a href="https://github.com/shivammathur/setup-php/compare/2.30.5...2.31.0">Full Changelog</a></p>
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="c541c155ee"><code>c541c15</code></a> Bump version 2.31.1</li>
<li><a href="afff805ea3"><code>afff805</code></a> Fix cache support for ioncube</li>
<li><a href="594bd591ec"><code>594bd59</code></a> Fix version regex in Add-Extension</li>
<li><a href="2e947f1f69"><code>2e947f1</code></a> Bump version to 2.31.0</li>
<li><a href="2a5212466c"><code>2a52124</code></a> Add fallback mirror for php PPA when launchpad is down</li>
<li><a href="9c28f9ba58"><code>9c28f9b</code></a> Fix support for phalcon on PHP 7.4</li>
<li><a href="b9f1db485f"><code>b9f1db4</code></a> Improve support for firebird</li>
<li><a href="588b5da142"><code>588b5da</code></a> Fix support for couchbase on Ubuntu 24.04</li>
<li><a href="a0edbac27b"><code>a0edbac</code></a> Fix support for blackfire</li>
<li><a href="606ac25b84"><code>606ac25</code></a> Fix oci extension support on Ubuntu 24.04</li>
<li>Additional commits viewable in <a href="8872c784b0...c541c155ee">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=shivammathur/setup-php&package-manager=github_actions&previous-version=2.30.2&new-version=2.31.1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
You can trigger a rebase of this PR by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
</details>
> **Note**
> Automatic rebases have been disabled on this pull request as it has been open for over 30 days.
Closes#17855
COPYBARA_INTEGRATE_REVIEW=https://github.com/protocolbuffers/protobuf/pull/17855 from protocolbuffers:dependabot/github_actions/shivammathur/setup-php-2.31.1 5cdf92ee64
PiperOrigin-RevId: 684962209
This PR does the following:
* Special-case descriptor.proto to allow for codegen despite being proto2
* Fix a pre-existing bug that gets exercised now during descriptor builds
* Expand test coverage of conformance tests, and fix pre-existing issues
* Properly hook up gencode to staleness infrastructure for automated regen
Closes#18610
COPYBARA_INTEGRATE_REVIEW=https://github.com/protocolbuffers/protobuf/pull/18610 from protocolbuffers:php-regen 773a1bf01a
PiperOrigin-RevId: 682477438
Adding java8 tests as a presubmit test to ensure no regression on java8 compatibility since the option will no longer apply to tests.
PiperOrigin-RevId: 681615348
Github dropped support for the current image:
https://github.com/actions/runner-images/issues/10559
There is a new image that has visionOS, but it is listed as
"beta", so it might make sense to wait and revisit when
generally updating the macOS images/tools.
PiperOrigin-RevId: 679264196
We need this type to be trivial and standard layout because we directly read
its contents in Rust. This change removes its user-defined constructors so that
it becomes a trivial type.
PiperOrigin-RevId: 670572557
This ensures the names of these jobs will properly be prefixed with "[SKIPPED] (Continuous)" and will show as passed instead of skipped.
PiperOrigin-RevId: 666918220
Putting it into BUILD files unintentionally forces it on all our downstream users. Instead, we just want to enable this during testing and let them choose for themselves in their builds.
Note, that this expands the scope of -Werror to our entire repo for CI, so a bunch of fixes and opt-outs had to be applied to get this change passing.
Closed#14714
PiperOrigin-RevId: 666903224
If there's an unexpected failure message or an unexpected succeeding test from a wildcard expansion users will be made to remove the wildcarded equivalent. Once removed, they must rerun the conformance test to add the failures contained within the removed wildcarded equivalent.
PiperOrigin-RevId: 663040062
For some reason, the current if statement also causes the blocking test to be skipped if any of the needs are skipped. We fix this by going back to `if: always()` to ensure that this is always run.
PiperOrigin-RevId: 663033872
Before this PR, we stored a list internally of tests that must pass on presubmit and tried to keep it up to date.
This PR moves that information keeping into GitHub by adding a 'continuous-only' variable to most testing matrices to allow authors to specify which of their tests should be skipped on presubmit. During presubmit, tests that were specified to not run on presubmit will not be run and their names will be prefixed with "[SKIPPED]". All continuous only tests will be suffixed with "(Continuous)".
At the end of running all the tests, we have a single "All Blocking Tests" signal that will tell us whether all of the necessary tests have passed (either for presubmit or continuous based on how the test was triggered).
I've tested this from a different branch [here](https://github.com/protocolbuffers/protobuf/actions/runs/9602443750?pr=17151) and from a different fork [here](https://github.com/protocolbuffers/protobuf/actions/runs/9602554500?pr=17192). These should be the same and are as far as I can tell.
I also have a continuous test run [here](https://github.com/protocolbuffers/protobuf/actions/runs/9603824200) which runs the entire test suite.
Closes#17198
PiperOrigin-RevId: 662940724
We mostly use generated pom files in our release currently, so we can delete all the files that aren't used and the tools to update them.
Note, java/bom/pom.xml java/pom.xml and java/protoc/pom.xml are all still used at release and java/kotlin/pom.xml is used for documentation so all of those need to stay for now.
PiperOrigin-RevId: 659664012