Release notes#
Version |
Changelog |
|---|---|
|
• Refactor API and AsyncAPI methods to embrace the new API behavior, allowing for multi-location request in the same request. This change does not imply a breaking change in the API of the package, as the refactor is internal and the public methods remain unchanged. Moreover, old functionality is kept as deprecated. However, it allows for better performance and efficiency when making requests to the API, as multiple locations can now be queried in a single request.
• Add non-blocking Pyodide loading in the interactive example, allowing the user to interact with the page while Pyodide is loading in the background. This change improves the user experience by reducing the initial loading time and allowing users to start exploring the documentation and examples without having to wait for Pyodide to load completely.
• Add notebooks with examples in the Sphinx documentation via the nbsphinx extension.
• Add
force_cache_miss parameter to the get_data method of both the core API and the datasignals accessor. This parameter allows users to bypass any cache in the API and perform a fresh hit to the database, which can be useful in scenarios where data is frequently updated or when users want to ensure they are working with the most recent data.• Add tests for the above changes
|
|
• Increase maximum supported python version from 3.11 to 3.13
• Update pyodide version (
0.29.0 <- 0.27.4) in interactive notebook |
|
• Improve behavior of
api_24sea.utils.estimate_chunk_size to better handle edge cases• Handle tqdm when running in Jupyter notebooks or other interactive environments
• Add tests for the above changes
• Increase test coverage
|
|
• Add
calendarmonth availability to the api_24sea.datasignals.core.API.get_availability endpoint. This allows users to retrieve availability data aggregated by calendar month.• Add tests for the above change
|
|
• Add
HTTPError exception to catch all httpx-related errors• Improve HTTP error handling in both core API and datasignals accessor
• Add tests for the above changes
• Add
utils.handle_request_async method to handle requests other than GET. Currently used by the ai extension |
|
• Move
api_24sea.core.API to api_24sea.datasignals.core.API, hence allowing multiple API classes, e.g. from the ai or annotations extensions. |
|
• Add
api_24sea.core.API.get_availability endpoint to check availability of resources |
|
• Add
api_24sea.core.API.get_stats endpoint to get 10-minute metrics statistics• Add
api_24sea.core.API.get_stats_predefined_intervals endpoint• Add
api_24sea.core.API.get_oldest_timestamp endpoint |
|
• Source code and pipelines migration to Bitbucket Cloud
|
|
• Add error message when invalid sites/locations/metrics combos are requested
|
|
• Pipeline: CICD now orchestrates CI and DOCS pipelines
• Fix logging level in get_data
• Fix bug in get_data when as_star_schema is True
• Add smart chunking to get_data when the forecasted query size exceeds 10 MB
|
|
• Tests: Change test metrics normalization
• Metrics: Allow underscore in regex
|
|
• Add max workers/threads for parallel API requests
|
|
• Fix Python version/classifiers in pyproject
|
|
• Add timeout param in core.API.get_data (httpx-sync)
• Increase default timeout (httpx-sync)
|
|
• Docs: Add recursive GET button, bending moments, vibration dims
|
|
• Add sample dashboard to the documentation
• Fix remaining imports of the requests library
• Reset API base URL from dev to prod address
|
|
• Add support to the httpx library in favor of requests. Add async support
• Adapt the interactive example to the new httpx-dependent environment
|
|
• Full fix matplotlib + matplotlib pyodide compatibility in interactive example
• Set pyodide version to stable
|
|
• Add a retry strategy to overcome temporary server unavailability (502 Gad gateway)
• Partial fix matlab incompatibility in interactive example
|
|
• Fix misplaced dependencies broke pyodide env
• Add the possibility to unselect “convert_object_columns_to_string” option
• Adapt CICD to new pyproject.toml
|
|
Migration to full uv/flit-core project
|
|
Add multiple API authentication environment variable prefixes. Now the API can authenticate using the following environment variables:
• (
24SEA_API_USERNAME, 24SEA_API_PASSWORD)• (
API_24SEA_USERNAME, API_24SEA_PASSWORD)• (
TWOFOURSEA_API_USERNAME, TWOFOURSEA_API_PASSWORD)• (
API_TWOFOURSEA_USERNAME, API_TWOFOURSEA_PASSWORD) |
|
• Coerce return type of column
value in api_24sea.core.to_star_schema FactData table to float, and convert all non-numeric values to NaN• In the
api_24sea.core.to_star_schema FactPivotData table, convert all JSON columns to string for SQL compatibility• Add tests for the above changes
|
|
• Edit
api_24sea.utils.parse_timestamp to test for additional timestamp formats that can be support by older versions of pandas• Using older version of pandas also implies an additional fix to
api_24sea.core.to_category_value |
|
• Fix bug in
get_data that makes the site and location parameters fully case insensitive•
24sea_api.core.API().authenticate() method now returns self to allow method chaining•
24sea_api.DataSignals().authenticate() method now returns self._obj (pandas.DataFrame) to allow method chaining• Try to still load data when timestamp format is invalid by using the
format="mixed" option in the DataSignals.get_data() method |
|
Fix bug in |
|
Add fallback to single-threaded mode when a RuntimeError is raised by the |
|
Losen the dependency on numpy, and restrict it only on the |
|
Losen the dependency on pydantic to allow the use of both V1 and V2 |
|
• Remove option
as_star_schema from datasignals accessor to preserve consistency between function output and dataframe content. Now star schema output can be obtained by importing to_star_schema function from the api_24sea.core module, and passing the dataframe and metrics_overview as argument• Rename
outer_join_on_timestamp to split_by_location in the api_24sea.datasignals.DataSignals.get_data() method• Improve lazy authentication behavior for both the core API and the datasignals accessor
|
|
Add option |
|
Add |
|
Add get data as star schema feature. This feature allows to get data in a star schema format, where Dimensions are DimWindFarm, DimCalendar, DimDataGroup, DimMetric, and the Fact table is the DataFrame with the data |
|
Add data normalization feature |
|
Update the README to reflect the latest changes |
|
Add |
|
Update dependency to latest version of shorthand_datetime |
|
Change project’s documentation homepage |
|
Add test to core API |
|
Make |
|
Add core API to the package so that data now can also be retrieved without instantiating a |
|
Change metrics overview |
|
Increase test coverage |
|
Add shorthand_datetime package-compatible timestamp formats |
|
Add CICD pipeline |
|
Refactor |
|
Add site and location casting to str when parsing |
|
Add fatigue extra for analyzing cycle-count metrics |
|
Rename a backlog to release notes |
|
Bugfix in DataSignals.authenticate() method to get always |
|
Add DataSignals.as_dict() method and move exceptions to dedicated module |
|
Minor bugfix |
|
Convert automatically |
|
Relax requirements |
|
Add documentation |
|
Add support for Python 3.8 onwards |
|
Initial release |