Repository navigation
chore(deps): update pipeline perf python dependencies - #4010
Conversation
There was a problem hiding this comment.
🟡 Changes recommended
The lockfile headers now document pip-compile --no-index, which is likely not reproducible in a clean environment and should be corrected (or supplemented with the needed local source flags/documentation).
Once you've addressed the issues Copilot identified, you can request another Copilot review.
Pull request overview
Updates pinned Python dependencies used by the tools/pipeline_perf_test orchestrator and load generator to keep the pipeline performance test tooling current and reproducible via refreshed lockfiles.
Changes:
- Bump
pydanticto2.13.5in both orchestrator and load generator requirements. - Bump
grpcioto1.83.1in the load generator requirements. - Regenerate both
requirements.lock.txtfiles (updated hashes and transitive pins likepydantic-core).
File summaries
| File | Description |
|---|---|
| tools/pipeline_perf_test/orchestrator/requirements.txt | Bumps pydantic pin for the orchestrator. |
| tools/pipeline_perf_test/orchestrator/requirements.lock.txt | Refreshes orchestrator lockfile for the updated pydantic/transitives. |
| tools/pipeline_perf_test/load_generator/requirements.txt | Bumps grpcio and pydantic pins for the load generator. |
| tools/pipeline_perf_test/load_generator/requirements.lock.txt | Refreshes load generator lockfile for the updated pins and transitive dependencies. |
Review details
- Files reviewed: 4/4 changed files
- Comments generated: 2
- Review effort level: Lite
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
| # by the following command: | ||
| # | ||
| # pip-compile --generate-hashes --output-file=tools/pipeline_perf_test/load_generator/requirements.lock.txt tools/pipeline_perf_test/load_generator/requirements.txt | ||
| # pip-compile --generate-hashes --no-index --output-file=tools/pipeline_perf_test/load_generator/requirements.lock.txt tools/pipeline_perf_test/load_generator/requirements.txt |
Pull request dashboard statusMerged · refreshed 2026-09-28 16:38 UTC Status above doesn't look right?
|
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #4010 +/- ##
=======================================
Coverage 88.43% 88.43%
=======================================
Files 939 939
Lines 379536 379536
=======================================
Hits 335651 335651
Misses 43885 43885
🚀 New features to boost your workflow:
|
efab8cd to
7a9eb0e
Compare
eb87c47 to
f86910f
Compare
f86910f to
248643d
Compare
f5b7721 to
60dcab4
Compare
60dcab4 to
a250c2f
Compare
…pen-telemetry#4194) # Chore Summary The Python SDK upgrade from 1.44.0 to 1.45.0 changed cumulative synchronous gauges: the SDK now re-exports their last value even without a new measurement. The benchmark shares a `MeterProvider` across scenarios, so stopped containers keep contributing samples with fresh timestamps. Reports aggregate by component and time, mixing these stale values into later scenarios and creating apparent performance regressions. For example, two stopped containers retaining 65% CPU and a current container using 38% would produce a reported average of 56%. Request `DELTA` temporality for synchronous gauges in the framework's reporting exporter to restore fresh-samples-only collection. Gauge values remain absolute, and counters remain cumulative. The fix changes benchmark reporting only; engine behavior is unchanged. ## Related issue - SDK upgrade: open-telemetry#4010 - Upstream gauge behavior change: open-telemetry/opentelemetry-python#5637 ## Validation - Orchestrator suite: **249 tests passed**, including a regression test covering stale gauge suppression, absolute gauge values, and cumulative counters. - Confirmed the new test fails with the previous cumulative gauge configuration.
This PR contains the following updates:
==1.5.5→==1.5.6==1.83.0→==1.84.0==1.44.0→==1.45.0==1.44.0→==1.45.0==1.44.0→==1.45.0==3.0.5→==3.0.6==2.13.4→==2.13.5Release Notes
duckdb/duckdb-python (duckdb)
v1.5.6: Bugfix ReleaseCompare Source
See DuckDB's changelog for all changes in DuckDB.
grpc/grpc (grpcio)
v1.84.0Compare Source
This is release 1.84.0 (gimbal) of gRPC Core.
For gRPC documentation, see grpc.io. For previous releases, see Releases.
This release contains refinements, improvements, and bug fixes, with highlights listed below.
Core
C#
Python
UsageErrorexception from registered method. (#43086)Ruby
v1.83.1Compare Source
This is release gRPC Core 1.83.1 (garden).
For gRPC documentation, see grpc.io. For previous releases, see Releases.
This release contains refinements, improvements, and bug fixes.
open-telemetry/opentelemetry-python (opentelemetry-exporter-otlp)
v1.45.0: Version 1.45.0/0.66b0Compare Source
Added
opentelemetry-exporter-prometheus: add support to configure Resource attributes as metric labels (#5122)opentelemetry-api,opentelemetry-sdk: add support for extended attribute values everywhere. (#5266)opentelemetry-sdk: wire the top-levellog_levelfield in declarative configuration — when set, maps the OTelSeverityNumbervalue to a Python logging level and applies it to theopentelemetrylogger so SDK internal diagnostics respect the configured severity. (#5351)opentelemetry-sdk: add the new stableAlwaysRecordSampler(#5354)opentelemetry-configuration,opentelemetry-sdk: wire top-levelattribute_limitsinto per-signal providers via declarative config; addlog_record_limitssupport toLoggerProvider(#5365)opentelemetry-exporter-otlp-json-http: add OTLP JSON HTTP exporter package (#5374)opentelemetry-api,opentelemetry-sdk: addenabled()support to the Logger API, SDK, andLogRecordProcessorto let instrumentation skip expensive work when logging is disabled (#5380)opentelemetry-exporter-otlp-json-file: add OTLP JSON file Docker tests (#5412)opentelemetry-configuration: wire the experimentaltracer_configurator/development,meter_configurator/developmentandlogger_configurator/developmentfields intocreate_tracer_provider,create_meter_providerandcreate_logger_provider, so per-instrumentation-scopeenabledoverrides declared in the config file are applied to the provider (previously these fields were parsed but silently discarded). The loggerminimum_severity/trace_basedfields are not supported by the Python SDK and are ignored with a warning. (#5418)docs/examples: add example on how to manually setup the SDK to get SDK metrics (#5449)opentelemetry-docker-tests: add Prometheus exporter docker tests (#5457)opentelemetry-sdk: count records dropped after shutdown onotel.sdk.processor.{span,log}.processedwitherror.type=already_shutdown(batch span/log and simple log processors), which the semantic conventions define as a valid value for this metric. (#5509)opentelemetry-semantic-conventions: update semantic conventions to v1.44.0 (#5511)opentelemetry-sdk: addhost.idto the host resource detector (#5653)opentelemetry-test-utils: addCapturingSamplerto record what samplers receive in instrumentation tests (#5681)Changed
PIE(flake8-pie) ruff rule and fix all violations (#5150)opentelemetry.util.types.AttributeValuetype in packageopentelemetry-apiis being expanded to includeNone, heterogeneous sequences of primitive types (and nested sequences) as opposed to only homogeneous primitive sequences, and Mappings of strings to any primitive types or sequences/mappings (which themselves must only contain primitive types or sequences/mappings validated the same way). If abytestype is set as an attribute value in the SDK, it will no longer be utf-8 decoded to a string, instead it will be passed along as is in accordance with the OTEL spec, sincebytesis a valid type in the OTLP proto. (#5266)opentelemetry-exporter-otlp-proto-http: add amax_request_sizeargument to the OTLP HTTP exporters (traces, logs, metrics); serialized requests larger than the limit are dropped before sending, measured before compression. Defaults to 64 MiB (enabled); set to 0 to disable. Mirrors opentelemetry-go#8157. (#5369)opentelemetry-api: subclasses ofLoggerneed to implement theenabledmethod (#5380)opentelemetry-exporter-otlp-proto-http: refactor to use shared opentelemetry-exporter-otlp-common and opentelemetry-exporter-http-transport packages and switch default HTTP backend to urllib3 (#5389)opentelemetry-sdk: unify logging force_flush timeout defaults to 30000ms (#5438)opentelemetry-python: enable Ruff default ruleset and fix auto-fixable lint issues (#5491)opentelemetry-sdk:SimpleSpanProcessornow drops spans ended aftershutdown()instead of passing them to the exporter, and counts them onotel.sdk.processor.span.processedwitherror.type=already_shutdown. (#5512)opentelemetry-exporter-otlp-proto-http: clarify that theendpoint=kwarg requires the full signal path (#5633)opentelemetry-sdk: fix typos in SpanLimits docstring (#5658)Fixed
opentelemetry-configuration: perform environment variable substitution on scalar values after parsing the configuration file, so${VAR}references inside comments and mapping keys are no longer substituted and undefined references in comments no longer abort loading (#5407)opentelemetry-configuration: declarative config environment variable substitution now replaces an unset variable that has no default with an empty value instead of raising an error, per the configuration spec. Resource attributes whose value resolves to null (an unset${VAR}with no default) are skipped with a warning instead of being inserted as a null value. (#5408): addopentelemetry-configurationandopentelemetry-proto-json` to the package to release (#5425)opentelemetry-sdk: fixViewinstrument-name matching so a view configured with an instrument's real (mixed-case) name is applied; matching is now case-insensitive and platform-independent instead of relying onfnmatch's OS-dependent case handling (#5430)opentelemetry-sdk: fix missing f-prefix in exponential histogram error messages (#5434)opentelemetry-configuration: resolve false-positive warning logs for newer schema minor version (#5436)opentelemetry-sdk: make methods onFixedSizeExemplarReservoirABCthread safe (#5437)opentelemetry-propagator-jaeger: fix typing issues and enable pyright typechecking for the packageopentelemetry-propagator-jaeger: skipuberctx-baggage headers with an empty value on extraction instead of raisingTypeError(#5440)opentelemetry-sdk: fixTypeErrorwhen instantiating a_BaseConfiguratorsubclass whose__init__takes arguments (#5441)opentelemetry-sdk: fixTypeErrorinos.fork()when aBatchProcessororPeriodicExportingMetricReaderis garbage collected (#5453)opentelemetry-configuration: a declarative config key present with an empty (null) value on an object-typed node (e.g.always_on:, a- service:detector, or a metricconsole:exporter) is now treated the same as an explicit empty config (always_on: {}) instead of failing type dispatch or silently skipping the node. Bothdict-typed nodes and dataclasses constructible with no arguments are covered. (#5454)opentelemetry-api: fix copy-pasted log message inSpanContext.__delattr__(#5455)opentelemetry-sdk: reject views withExponentialBucketHistogramAggregationfor asynchronous instruments instead of silently producing no data (#5461)opentelemetry-sdk: fill every bucket ofSimpleFixedSizeExemplarReservoirbefore random sampling (#5462)opentelemetry-sdk: Import code_attributes from stable semconv package (#5465)opentelemetry-sdk: for both the simple and batch span/log processors, countotel.sdk.processor.{span,log}.processedwhen the processor submits records to the exporter instead of after export completes, and stop stamping exporter failures onto this metric aserror.type(#5472)opentelemetry-sdk: fix misleading instrument name validation error message (name max length is 255, not 63). (#5513)opentelemetry-configuration: add missing process executable name to default service name when available in resource attributes (#5534)opentelemetry-sdk: fix values forprocess.executable.nameandprocess.executable.pathto match semantic conventions. (#5535)opentelemetry-api: fixTraceState.updatedropping all entries when adding a new key at the 32-key limit (#5543)opentelemetry-sdk: boundget_aggregated_resources()wait to the timeout (#5545)opentelemetry-sdk: don't readprocess.executable.nameresource attribute when building defaultservice.name(#5547)opentelemetry-propagator-jaeger: enforce baggage limits on bothuberctx-extract and inject, borrowing the same limits (180 entries, 4096 bytes per entry, 8192 bytes total) the package's coreW3CBaggagePropagatoralready uses, so neither an inbound carrier nor an in-process baggage map can produce unbounded work or headers. (#5556)opentelemetry-sdk: keep metric attribute values that Python considers equal but the data model does not, such asTrue,1and1.0, in separate metric streams (#5573)opentelemetry-sdk: keepResourcehashable and serialisable when an attribute value isbytes, instead of raisingTypeErrorfrom every OTLP encoder (#5577)opentelemetry-sdk: fix instrumentation scope name matching in the tracer, meter and logger configurators so it is case-sensitive on every platform instead of relying onfnmatch's OS-dependent case handling (#5584)opentelemetry-sdk: fixTracerProvider()raisingValueErrorwhenOTEL_TRACES_SAMPLER_ARGis a syntactically valid number outside the[0.0, 1.0]range, instead of logging a warning and falling back like other invalid values (#5594)opentelemetry-sdk: retain values from synchronous instruments using last-value aggregation across cumulative collections (#5637)opentelemetry-api: Added guard for negative value on max_value_len (#5647)opentelemetry-sdk: fix overriding of the service.instance.id which has been populated from the user provided values through the resource detectors (#5660)opentelemetry-exporter-otlp-proto-grpc: Fix incorrect default port for OTLP gRPC exporter self-metrics (#5668)opentelemetry-api: update W3CBaggagePropagator to properly handle whitespace (#5680)pandas-dev/pandas (pandas)
v3.0.6: pandas 3.0.6Compare Source
We are pleased to announce the release of pandas 3.0.6.
This is a patch release in the 3.0.x series and includes some regression fixes and bug fixes. We recommend that all users of the 3.0.x series upgrade to this version. This is also the first release to support Python 3.15.
See the full whatsnew for a list of all the changes.
Pandas 3.0 supports Python 3.11 and higher.
The release can be installed from PyPI:
Or from conda-forge
Please report any issues with the release on the pandas issue tracker.
Thanks to all the contributors who made this release possible.
pydantic/pydantic (pydantic)
v2.13.5Compare Source
Configuration
📅 Schedule: (UTC)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.
This PR was generated by Mend Renovate. View the repository job log.