[MLIR][Python] Add more field specifiers to Python-defined operations (#188064)
This PR adds two new field specifiers (`operand` and `attribute`) and
extends the existing one (`result`):
- `default_factory` parameter is added for `result` and `attribute` to
specify default value via a lambda/function
- `kw_only` parameter is added for all these three specifiers, to make a
field a keyword-only parameter (without giving a default value).
```python
def result(
*,
infer_type: bool = False,
default_factory: Optional[Callable[[], Any]] = None,
kw_only: bool = False,
) -> Any: ...
def operand(
[43 lines not shown]
driver(9): fix cdevsw/bdevsw examples
Instead of a chimera that fuses structure definition and variable
definition with an initializer (syntactically incorrect), provide an
example of an actual variable definition with an initializer.
[MLIR] Fix crash in test-bytecode-roundtrip when test dialect is absent (#189163)
When invoking `-test-bytecode-roundtrip=test-dialect-version=X.Y` on a
module that contains no test dialect operations, the reader type
callback in `runTest0` called
`reader.getDialectVersion<test::TestDialect>()` and then immediately
asserted that it succeeded. However, if the test dialect was never
referenced in the bytecode (because no test dialect types appear in the
module), the dialect's version information is not stored in the
bytecode, so `getDialectVersion` legitimately returns failure.
When the test dialect version is unavailable in the bytecode being read,
the module contains no test dialect types, so no "funky"-group overrides
are needed and the callback can safely skip by returning `success()`.
A regression test is added with a module that has no test dialect ops,
exercising the `test-dialect-version=2.0` path that previously crashed.
Fixes #128321
[2 lines not shown]
opa: Update to 1.15.0
Changes:
v1.15.0
This release contains a mix of new features, performance improvements,
and bugfixes. Notably:
- Add logger plugin interface and file logger implementation with log rotation
- Custom HTTPAuthPlugin behavior change, all per-request authentication
logic must be moved from `NewClient()` to `Prepare()`
- AWS signing supports for web identity for assume role credentials