Skip to content

[LoadBrightHub.get_data ] Change default file_extension in LoadBrightHub.get_data from .csv to .parquet #612

Description

@dancasey-ie

Is your feature request related to a problem? Please describe.

#608 added support for reading BrightHub timeseries data as parquet and introduced a DeprecationWarning stating that the default file_extension in LoadBrightHub.get_data would change from .csv to .parquet in the next major release. The deprecation is currently mediated by a _FILE_EXTENSION_NOT_SET sentinel (load.py:34), and the default still resolves to .csv. Parquet downloads are faster and preserve dtypes, so users on the default are missing those benefits and continuing to see the warning.

Describe the solution you'd like

Complete the deprecation by switching the default to .parquet in the next major release (v3.0.0).

In brightwind/load/load.py:

  • Change the default value of file_extension in get_data from _FILE_EXTENSION_NOT_SET to '.parquet'
  • Remove the _FILE_EXTENSION_NOT_SET sentinel (load.py:34)
  • Remove the DeprecationWarning block (load.py:1567-1577)
  • Keep the ('.csv', '.parquet') validation (load.py:1579-1582)
  • Update the docstring (load.py:1521-1531) to state .parquet is the new default, remove the .. deprecated:: note, and change the worked example (load.py:1560-1564) to show how to fall back to .csv
  • Decide whether to make pyarrow a hard install dependency (currently an extra via brightwind[parquet]) or to document clearly that users must install a parquet engine
  • Update CHANGELOG.md under the next major release entry, flagging this as a breaking change

Acceptance criteria:

  • bw.LoadBrightHub.get_data(uuid) returns parquet-sourced data with no warning
  • bw.LoadBrightHub.get_data(uuid, file_extension='.csv') still works
  • Existing tests pass; tests added/updated to assert the new default

Describe alternatives you've considered

  • Leave the default as .csv indefinitely — rejected, because it permanently negates the speed and dtype benefits of parquet for users on the default path and leaves the deprecation warning unresolved.
  • Switch the default in a minor release — rejected, because changing a default return-path is a breaking change for any caller that depends on the .csv round-trip behaviour (e.g. dtype coercion differences).

Additional context

Follows up on #608 (Iss601 — read BrightHub timeseries as parquet). Must land in the next major release (v3.0.0), not a minor release.

Metadata

Metadata

Assignees

Type

No type

Projects

Status
Backlog

Relationships

None yet

Development

No branches or pull requests

Issue actions