Repository navigation
xbbg 1.0.0b2
Pre-release
Pre-release
Added
- Field-validation toggle for refdata/histdata requests: Added optional
validate_fieldsrequest parameter inrequest()/arequest()and typed wrappers (abdp/bdp,abdh/bdh,abds/bds). This supports per-request strict validation override while still honoring engine-levelvalidation_modedefaults. - Engine-side field-validation enforcement:
xbbg-asyncnow validates requested fields forReferenceDataRequestandHistoricalDataRequestbefore dispatch when validation is enabled, returning configuration errors for unknown Bloomberg fields in strict mode. - Live validation toggle smoke script: Added
py-xbbg/tests/live/field_validation_toggle_smoke.pyto verify on/off behavior against a connected Bloomberg session. - Request-plumbing coverage for
validate_fields: Addedpy-xbbg/tests/test_validate_fields_toggle.pyto verify Python parameter serialization and forwarding through async/sync wrappers.
Changed
- Canonical exception exports:
xbbg.exceptionsnow re-exports Rust_coreexception classes (BlpError,BlpRequestError, etc.) as the single source of truth, with Python-only exceptions remaining additive. - Validation helper compatibility: Preserved
BlpValidationError.from_rust_error(...)by attaching the compatibility classmethod to the canonical Rust-backed validation exception. - Generated sync wrapper metadata:
blp.pygenerated sync wrappers now derive__doc__and__annotations__from async templates directly; remaining manual generated sync wrapper boilerplate was removed. - Integration logging expectations: Updated logging integration assertions to match centralized
arequestrequest logging (bloomberg ... ReferenceDataRequest) instead of deprecated endpoint-specific debug strings. - Optional pandas integration paths: Updated pandas-dependent integration tests to use
pytest.importorskip("pandas"), avoiding hard failures when pandas is not installed.
Fixed
except BlpErrorcatchability gap: Runtime exceptions raised by Rust (for exampleBlpRequestError) are now catchable viaxbbg.exceptions.BlpErrorimport paths because both now point to the same canonical Rust exception hierarchy.
Full Changelog: v0.12.1...v1.0.0b2