Skip to content

Latest commit

 

History

History
292 lines (206 loc) · 13.6 KB

CHANGELOG.md

File metadata and controls

292 lines (206 loc) · 13.6 KB

Changelog

v1.9.1 (2024-06-20)

Fix

v1.9.0 (2024-06-18)

Feature

  • chore: Bump deps, might consider >= in the future (9e4a5b8)

v1.8.3 (2024-06-10)

Fix

  • Added test for null_filter condition. (#53) (d022c85)

v1.8.2 (2024-06-10)

Fix

v1.8.1 (2023-11-10)

Fix

  • Critical fix that amends __exit__ and __aexit__ (#49) (b60e3a9)

Documentation

  • Finally formatting changes to README.md (5820110)
  • More formatting changes to README.md (71a66a8)
  • Format code-block in README.md (0db2207)

v1.8.0 (2023-10-10)

Feature

  • Pydantic upgrade to v2, maintaining V1 API internally (#45) (25570ae)
  • Pandas upgrade to v2 (#44) (5d1670b)

v1.7.1 (2023-09-22)

Fix

Documentation

v1.7.0 (2023-09-05)

Feature

  • Async support for subgrounds (+ more) (#36) (929a882)
  • Ability to create custom clients via SubgroundsBase

Changes

  • The entirety of how subgrounds coordinates the production, transformation, and pagination of requests has been completely reworked from the ground up.
    • Instead of a recursive call stack, transformation and pagination is lazily computed.
    • Then, a client (implementing SubgroundsBase), drives the actual processing of requests/responses until completion.
  • Subgrounds models the sans-io approach to handling requests
    • This means subgrounds is untangled from actually making IO
    • This has enabled custom clients, allowing anyone to customize subgrounds interface.
  • Various rewrites, reworks, and improvements to documentation.

v1.6.1 (2023-08-01)

Fix

Documentation

v1.6.0 (2023-05-25)

Feature

  • Add helpers for accessing the playgrounds gateway (#21) (e44aee6)

Documentation

  • Add open in colab button (02ff722)
  • Add gateway notebook as another example (98eab32)
  • Adjust example notebook for colab (6210556)
  • Adjust wording in example notebook (357c6d8)
  • Add example notebook + swap binder for colab (06cc728)
  • Add CI status badge to README.md (4c6dca9)
  • Broken link in README (#19) (211f965)

v1.5.2 (2023-05-17)

Fix

  • Nested orderBy working with DSL (7e320e8)

v1.5.1 (2023-05-15)

Fix

Documentation

v1.5.0 (2023-04-25)

Feature

  • Add all as an extra install (f1adacf)
  • subgrounds[pyodide] patching for requests (7293262)
  • Add plotly as an extra (058e28d)

Fix

v1.4.0 (2023-04-13)

Feature

  • subgrounds.contrib.dash and subgrounds.contrib.plotly (f1d79e8)

Fix

  • Headers bugs w/ non-subgraph apis (7749f8f)
  • Update examples to user modern subgrounds (6e14b89)

Documentation

  • Adjust wording (501b480)
  • Add extra details about contrib and deprecation (6a7bbec)

v1.3.0 (2023-04-07)

Feature

  • Add specific error models (6218076)

v1.2.0 (2023-04-02)

Feature

Documentation

  • Fix changelog formatting (7f8a630)

v1.1.2 (2023-03-15)

Fix

  • Query.map had no default value for priority (#12) (82a5f29)

Documentation

  • Update README.md (dcea873)
  • Update design goals to features (6abecc6)

v1.1.1 (2023-03-03)

Fix

v1.1.0 (2023-03-03)

Feature

  • Export more symbols to subgrounds (3c59fe9)

Documentation

  • Add description about testing (f2231c2)
  • Migrated docs/ and clean up (9deca3b)
  • Add CONTRIBUTING.md + README.md edits (2218d47)
  • Trigger docs flow (removed some files) (1ee17e5)
  • Simplify contributing cmds (#3) (0b4f3a2)

v1.0.3 (2022-08-08)

Fix

  • Issue causing null object in SyntheticFields

v1.0.2 (2022-10-30)

Fix

  • Update SchemaMeta to Pydantic model for extra validation

v1.0.1 (2022-08-08)

Fix

  • Schema cache directory path
  • where filter getting dropped during pagination

v1.0.0 (2022-07-25)

Description

This release overhauls how pagination is performed in Subgrounds.

BREAKING CHANGES

  • The auto_paginate argument of toplevel querying functions has been replaced by the pagination_strategy argument (setting the latter to None disables pagination).

Feature

  • Subgrounds users can now define and use their own pagination strategy (see Custom pagination strategy for more details).

  • Users select the pagination strategies to use when calling toplevel querying functions:

    df = sg.query_df(field_paths, pagination_strategy=MyPaginationStrategy) 
  • Subgrounds provides two pagination strategies out of the box:

    • LegacyStrategy (the strategy used prior to this update)
    • ShallowStrategy, which is much faster than LegacyStrategy in some cases, but does not support pagination on nested fields (see Available pagination strategies for more details).

Fix

  • Fix bug that would cause a crash when calling one of the toplevel querying functions with only one FieldPath object (e.g.: sg.query_df(pairs.id)).

v0.2.0 (2023-06-23)

Feature

  • Iterative versions of toplevel querying functions to allow developers to process queried data page by page when automatic pagination returns more than one page
    • query_df -> query_df_iter
    • query -> query_iter
    • query_json -> query_json_iter
    • execute -> execute_iter
  • Add option to set subgraph schema cache directory in load_subgraph and load_api.
    • Defaults to ./schemas/
  • Add useful SyntheticField helper datetime_of_timestamp
  • Subgrounds class can now be imported from toplevel module: from subgrounds import Subgrounds
  • Add SyntheticField.datetime_of_timestamp helper function to easily create a SyntheticField that converts a Unix timestamp into a human readable datetime string
  • Add SyntheticField.map helper function to easily create a "map" SyntheticField from a dictionary

Fix

  • Fix bug that caused some queries to fail with automatic pagination enabled

Chore

  • Migrate package manager from pipenv to poetry
  • Migrate docs from plain sphinx to mudkip
  • Made dash an optional extra dependency.
    • To use Subgrounds dash and plotly wrappers, run pip install subgrounds[dash]

v0.1.1 (2022-04-29)

Fix

  • Scalar lists were not handled properly

v0.1.0 (2022-04-27)

Feature

  • Partial fieldpaths

    • Querying partial fieldpaths will automatically select all non-list fields of the fieldpath leaf.

    • For example, using the Ribbon V2 subgraph, the following Subgrounds query:

      sg.query_df([
          ribbon.Query.vaults
      ])

      will result in the following query being made to the subgraph:

      query {
          vaults {
          id
          name
          symbol
          underlyingAsset
          underlyingName
          underlyingSymbol
          underlyingDecimals
          totalPremiumEarned
          totalNominalVolume
          totalNotionalVolume
          numDepositors
          totalBalance
          cap
          round
          performanceFeeCollected
          managementFeeCollected
          totalFeeCollected
          }
      }
  • Code completion

    • When using Subgrounds in Jupyter notebooks and a subgraph has been loaded in a previous cell, fieldpaths will now autocomplete.

v0.0.9 (2023-03-29)

Feature

  • Subgrounds.load_api
    • Allows you to safely query non-subgraph GrahpQL APIs with Subgrounds!
  • New boolean flag argument, auto_paginate, in Subgrounds.query, Subgrounds.query_json and Subgrounds.query_df
    • Selectively disable automatic pagination

Documentation

  • Refactor, cleanup and add tons of docstrings