This PR tells git to ignore ephemeral files that are created when
developers use clangd.
clangd needs a `compile_commands.json` file at the root of the repo (or
in a `build/` directory) to tell it how to compile each file. CMake can
generate this file with something like the following:
```console
$ cmake -Scmake -B.build \
-DCMAKE_EXPORT_COMPILE_COMMANDS=ON \
-Dprotobuf_BUILD_TESTS=OFF
$ ln -sf .build/compile_commands.json .
```
Then clangd will compile and index files into the `.cache` directory.
Two small fixes to update_version.py:
- The regex for updating SOVERSION in cmake files was not quite right. I
fixed it to reflect that the value is a plain integer and not of the
form x.y.z
- For some reason the code for updating PHP_PROTO_VERSION appeared 3
times and led to a spurious warning, so I removed the extra calls
there.
Now that two files use the format, tweak the naming to the format for the file
vs. the usage(s).
Also add a "usage" param so the two places can provide a little context for any
error messages generated while parsing.
anything other than `string|int` is not a valid offset type. `bool` may be added, but it's not a true offset because it will be cast to an `int` if used:
```php
$a = [false => '1' , true => '2'];
$a[0] = '3';
$a[1] = '4';
var_dump($a);
// array(2) {
// [0]=>
// string(1) "3"
// [1]=>
// string(1) "4"
// }
```
Soname was set for libprotobuf.so in commit a9cf69a0ed,
but similar changes for libprotobuf-lite.so and libprotoc.so were missed.
Fixes: #8635
Co-authored-by: Arfrever Frehtes Taifersar Arahesis <Arfrever@GMail.Com>
Our benchmark job starting failing when we stopped supporting Python 3.5
and 3.6, but this change fixes it by running it in our java_stretch
Docker container, which has a more recent Python version. I also deleted
all configs related to old Python versions that we no longer support.
* #9293 - fix Missing function's return type declaration (incompatible return type php 8.1)
* #9293 - remove return type void for compatible with php 7.0
* #9293 - add todo for mixed return type
Co-authored-by: Adam Cozzette <acozzette@google.com>