Skip to content

Releases: SchmidtDSE/afscgap

v2.0.0

08 Jan 18:52
Compare
Choose a tag to compare

A start to the 2.x series

🐟 We have a new year and now we have a new release! 🎉 The focus of this latest version is to support updated upstream datasets.


🔭 Overview

This new release supports updated upstream datasets. These new data products from NOAA add important features like a system-wide species list. We thank them very much for their hard work on this important service! All that said, though the community flat files have changed in response, the API for this Python library remains (almost entirely) the same.


⭐️ What’s new

Some of the internal mechanics of the library have evolved to accommodate the new upstream datasets.

New major version

Despite largely maintaining the same library API (for pyafscgap), we are moving to a new major version given the new global species list and because some lesser used functionality was deprecated.

Incomplete species information

We now add support for some records which have incomplete species information. These data may report on species outside of the formal species list. Note that they are marked as incomplete and not subject to zero inference.

Community flat files expanded

The new upstream dataset cannot reference catches by metadata. Therefore, catch filtering by survey or haul attribute is no longer efficiently possible from the upstream service. For example, official guidance for R users is to download all catches. In response, community flat files now offer indexed information about catch data via community Avro files in addition to the previous haul index. Avro indicies prevent the need to download the all catches for most requests.


🔧 What’s changed

There are some internal changes to this library even as the API it offers Python developers remains the same.

Community files changed to Avro

The community flat files still maintain a haul index but now use Avro. See the community Avro files documentation for further details. This adds fastavro as a dependency.

New strategy implementors

The structure of the library allows for multiple implementations of the same API (different cursor objects and implementors of the Model interface). We have removed the prior implementors using the now deprecated upstream endpoints. The new implementation interacts with the flat files by making requests for static files via HTTPS.

More specific haul locations

Instead of a haul having a single location, there is now a haul start and end location. For backwards compatibility, the midpoint of these start / end points is used when requesting the point location of a haul. Filters will return records by filtering using midpoint for compatibility.

New inference logic

As reflected in our documentation, the global species list means that zero catch inference is now more accurate. More specifically, zero catch data generation now uses the global species list as opposed to inferring that list from returned catch data. This means that it is no longer an approximation for formally tracked species. That said, this generally only applies to those not using a species filter and reporting on hauls without any catch records.

Manual pagination removed

As catches cannot be filtered by their hauls through ORDS, pagination happens within the library as it moves between different Avro files. Therefore, manually requesting ORDS pages has been removed.


⏳ What’s left

There’s a few leftovers that we are holding out on for the purpose of providing access to 2024 data.

  • The visualization is not updated yet though the code generated is still valid. See #117.
  • The notebook is note technically updated though it may be re-run without changing code which is still valid. See #118.
  • Filters for start and endpoints are not yet added. See #119.

Finally, in conversation with community members, it was desirable to deprecate the community flat files but that is not possible given current available services and a desire to maintain compatibility with the 1.x series. This is currently considered a non-goal until upstream changes or a 3.x release.


⛴️ Thanks

This starts our third year of offering this service. Thank you to the community!

1.0.4

28 Jun 15:25
ed03cfa
Compare
Choose a tag to compare

Python-based tool chain ("Pyafscgap.org") for working with the public bottom trawl surveys data from the NOAA AFSC GAP. This provides information about where certain species were seen and when under what conditions, information useful for research in ocean health.

See webpage, project Github, and example notebook.

This version introduces minor documentation edits over 1.0.0 through 1.0.3.

1.0.3

28 Jun 15:01
e8cc00f
Compare
Choose a tag to compare

Python-based tool chain ("Pyafscgap.org") for working with the public bottom trawl surveys data from the NOAA AFSC GAP. This provides information about where certain species were seen and when under what conditions, information useful for research in ocean health.

See webpage, project Github, and example notebook.

This version introduces minor documentation edits over 1.0.0 through 1.0.2.

1.0.2

02 Jun 15:25
111f437
Compare
Choose a tag to compare

Python-based tool chain ("Pyafscgap.org") for working with the public bottom trawl surveys data from the NOAA AFSC GAP. This provides information about where certain species were seen and when under what conditions, information useful for research in ocean health.

See webpage, project Github, and example notebook.

This version introduces minor documentation edits over 1.0.0 and 1.0.1.

1.0.1: Minor documentation fix

01 Jun 22:30
3b058a3
Compare
Choose a tag to compare

Same as 1.0.0 but with a minor documentation fix in README.

1.0.0

31 May 18:07
e6c7555
Compare
Choose a tag to compare

Through to PyOpenSci with the builder interface, chaining, microsite, and more. Thanks to everyone's help over at pyOpenSci/software-submission#93!