Skip to content

Releases: mwvgroup/pittgoogle-client

v0.3.19

07 Oct 19:55
4f67242

Choose a tag to compare

[v0.3.19] - 2025-10-07

Changed

  • pittgoogle/schema.py
    • update _clean_for_json() to return None if math.isinf(value)
    • _name_in_bucket for the LsstSchema class now returns:
      {alert.schema.version}/kafkaPublishTimestamp={_date}/{objectid_key}={alert.objectid}/{sourceid_key}={alert.sourceid}.
      avro
  • tests/test_alert.py
    • update test_name_in_bucket to account for the change in pittgoogle/schema.py/_name_in_bucket

v0.3.18

16 Sep 18:22
efa2d97

Choose a tag to compare

[v0.3.18] - 2025-09-16

Changed

  • pittgoogle/alert.py
    • Address a bug in the get and get_key functions that raises an AttributeError when a field's value is None

v0.3.17

02 Sep 00:30
0615c13

Choose a tag to compare

[v0.3.17] - 2025-09-01

Added

  • schemas/lsst/8/0/
    • lsst.v8_0.alert.avsc
    • lsst.v8_0.diaForcedSources.avsc
    • lsst.v8_0.diaSource.avsc
    • lsst.v8_0.diaObject.avsc
    • lsst.v8_0.ssSource.avsc
    • lsst.v8_0.MPCORB.avsc
  • schemas/lsst/9/0/
    • lsst.v9_0.alert.avsc
    • lsst.v9_0.diaForcedSources.avsc
    • lsst.v9_0.diaSource.avsc
    • lsst.v9_0.diaObject.avsc
    • lsst.v9_0.ssSource.avsc
    • lsst.v9_0.MPCORB.avsc
  • sample_alerts/lsst/
    • lsst.v8_0.avro
    • lsst.v9_0.avro

Changed

  • schemas/maps/lsst.yml
    • updated field name: ssObject -> ssSource
    • the mapping for the field objectid is now a dict[list] type
  • pittgoogle/schema.py
    • added v8_0 and v9_0 to the list of supported schema versions for LSST alerts
    • the _name_in_bucket function uses the ssObjectId instead of the diaObjectId when the value of
      diaObjectId is null (each diaSource will be associated with either a diaObject OR ssObject)
    • _clean_for_json converts datetime.datetime objects to timestamp
  • tests/test_alert.py
    • unit test for name_in_bucket has been updated to reflect the new pathname
  • tests/test_schema.py
    • updated the JSON serialization test in test_sample_alertsto handle type mismatches
  • tests/load_data.py
    • updated field names to accomodate the latest LSST alert schema version (v9_0)
  • pittgoogle/alert.py
    • The get and get_key functions support fields that are list[dict] types
    • healpix9, healpix19, and healpix29 explicitly return int types

Removed

  • alertid and ssobjectid from pittgoogle/alert.py, tests/test_alert.py, and all schema maps

v0.3.16

18 Aug 19:13
5191e4a

Choose a tag to compare

[v0.3.16] - 2025-08-18

Added

  • Data listings for LSST
  • LvkSchema properties _from_yaml and _name_in_bucket.
  • "objectid" added to LVK schema map. Both "objectid" and "sourceid" now point to the
    LVK field "superevent_id" since there is no distinction between an LVK "object" and "source".
  • Added a unit test for LvkSchema._name_in_bucket. Added a "schema_version" field to the test data in
    tests/data/sample_alerts/lvk/ to mimic our broker's ps_to_storage module (required for _name_in_bucket).

v0.3.15

12 May 19:47
143b925

Choose a tag to compare

[v0.3.15] - 2025-05-12

Changed

  • Alert:
    • Updated the separator "." -> "_" used to define attribute key names.

v0.3.14

28 Apr 16:40
9e2a4a0

Choose a tag to compare

[v0.3.14] - 2025-04-28

Added

  • Alert:
    • Added the following fields to Alert.attributes: n_previous_sources and ssobjectid.
  • Unit tests:
    • Tests take into account new Alert.attributes keys.

Changed

  • Rename Alert method _add_id_attributes() -> _add_attributes() to reflect that more properties are added.

Fixed

  • Topic.publish(): Message attributes were improperly defined

v0.3.13

04 Apr 17:35
f5d29d8

Choose a tag to compare

[v0.3.13] - 2025-04-04

Added

  • Alert:
    • Properties: ra, dec, healpix9, healpix19, healpix29, name_in_bucket.
    • Add healpix properties to Alert.attributes.
  • Schema:
    • Properties: _name_in_bucket, serializer, and deserializer. The last two can be used to
      switch between JSON and Avro on the fly.
    • Methods to support the LSST schema consolidation.
    • Schema map for the default schema.
  • Topic.publish(): new keyword arg drop_cutouts.
  • Dedicated classes for all schemas, including DefaultSchema, ElasticcSchema, LsstSchema,
    LvkSchema, and ZtfSchema. These are subclasses of pittgoogle.Schema.
  • schema.Serializers class to hold all serializers and deserializers used by the schemas.
  • Unit tests:
    • Tests for new Alert properties.
    • Tests for Schema and Serializers.
    • Randomly generated data for schema "lsst.v7_4.alert".
  • Schema maps
    • LSST support for ssObjectId

Changed

  • Alert:
    • from_* methods now call Schema._init_from_msg so the schema version can be retrieved from the message.
    • Schema.version is now added to the attributes automatically.
  • Schema:
    • Consolidate LSST schemas into one. Name is "lsst".
    • Change default schema name "default_schema" -> "default".
    • serialize and deserialize methods moved to schema.Serializers.
    • JSON serializer now accepts dicts containing bytes values.
  • Topic.publish() now handles the duties of Alert._prep_for_publish() (which is removed).
  • Documentation updated with new instructions for developers to implement support for a new schema.
  • Unit tests:
    • Move conftest.SampleAlert -> load_data.TestAlert
    • Split TestAlert -> TestAlertFrom, TestAlertProperties, and TestAlertMethods

Fixed

  • Fix issue #76. Make Alert.dataframe succeed even when there are no previous sources.

Removed

  • Alert._prep_for_publish(). Equivalent functionality was added to Topic.publish().
  • SchemaHelpers class removed. These have been promoted to full Schema classes.
  • Schema._init_from_msg. This functionality was moved to the Schema._from_yaml class methods.

v0.3.12

07 Mar 20:36
4430146

Choose a tag to compare

Added

  • Data listings and references for LSST
  • Support for LSST schema versions 7.2, 7.3, and 7.4
  • README.md describing where the new LSST alert schemas were obtained.
  • Add 'package_path' as a package-level variable.
  • Add test data for LSST, LVK, and ZTF.
  • Add unit tests for:
    • registry.Schemas
    • alert.Alert
    • utils.Cast
  • Add Alert properties and methods:
    • skymap
    • drop_cutouts
    • _prep_for_publish
    • _str_to_datetime
  • Add class alert.MockInput with support for Cloud Functions
  • Add dependencies hpgeom and google-cloud-functions.

Changed

  • Update data listings for ZTF and LVK
  • schema.py now specifies all schema versions that are available for LSST
  • Schema mappings for new LSST alert versions incorporated into schemas.yml
  • Implement schema._ConfluentWireAvroSchema.serialize.
  • Add IDs to Alert.attributes the first time it is accessed.
  • Dependencies: Lazy load astropy.

Removed

  • Remove utils.Cast._strip_cutouts_ztf (moved to Alert)

v0.3.11

22 Jul 21:06
73d8865

Choose a tag to compare

[v0.3.11] - 2024-07-22

Added

  • Add 'Surveys' documentation section with pages for ZTF and LVK.
  • Add LVK to Data Listings page.

Changed

  • Reorganize and update data listings.
  • Add FAQ content.
  • Clean up docs. Remove 'TODO's. Add autosummary to module pages.
  • Update Google pricing on FAQ Costs.

Prep v0.3.10 release (#61)

22 Jul 16:35
5cc9559

Choose a tag to compare

[v0.3.10] - 2024-07-22

Added

  • Add bigquery.Client class.
  • Add class attributes Table.query, Table.schema.
  • Add dependency on 'db-dtypes' to support BigQuery -> Pandas.

Changed

  • Remove Table.auth and simplify Table.client. This functionality is now managed by
    bigquery.Client.
  • In Table and Topic, the project ID is no longer changed away from what the user provided.
    It was more confusing and dangerous than it was helpful.

Removed

  • Table.auth