Skip to content

Releases: aschleg/petpy

2.4.22 Release

25 Nov 01:00
Compare
Choose a tag to compare

Version 2.4.22

  • A PetfinderInvalidCredentials error will now be raised when initializing the Petfinder API
    if passing invalid credentials.
  • Removed the rate limit decorator for daily number of calls.

2.4.2 Hotfix Release

10 Nov 02:29
Compare
Choose a tag to compare

Version 2.4.2

  • Another hotfix for correctly incrementing re-tries in the event of a 500 error.

2.4.1 Release

09 Nov 01:08
57cef64
Compare
Choose a tag to compare

Version 2.4.1

  • Hotfix to correct issue with change released in 2.4.0 that would return a sparse JSON result
    if an animal ID couldn't be found.
  • There seems to be some intermittent issues with the Petfinder API (at the time of this writing November 7th, 2024)
    where an increased volume of 500 errors are being raised, at least according to my own testing. A
    change has been made to attempt an API call three times in the event of a 500 error rather than immediately
    raising a 500 status code. If a non-authentication request reaches the three count retry, a sparse JSON dictionary
    is returned with the response code.
    • If anyone else has experienced this, please let me know.

2.4.0 Release

08 Nov 03:33
c5d8bd1
Compare
Choose a tag to compare

Version 2.4.0

  • Implemented rate-limiting for API calls that could potentially exceed the quotas
    set by Petfinder (50 calls/second, 1,000/day). An exponential backoff strategy is employed when rates exceed
    the given limits and tries ten more times before giving up and returning the collected results.
  • Access token that is generated on first initialization of Petfinder should now refresh automatically
    after expiring.
  • Removed the max_page_warning that would be displayed when there were fewer total pages
    in the Petfinder API results to those requested in the pages parameter.
  • A response key has been added to the returned animal or organization object. If an ID isn't found,
    the response value will be 404.
  • Type annotations have been added to the Petfinder methods.

petpy 2.3.1 Release

16 Jul 22:53
Compare
Choose a tag to compare

Removed rate check limits that were causing errors with trying to call more than one page for several endpoint functions.

petpy 2.3.0 Release

14 Feb 15:12
Compare
Choose a tag to compare
  • Added several additional search filters to the animals() function.
    • declawed: Filters results by animals that are marked as declawed.
    • house_trained: Filters results by animals that are house trained.
    • special_needs: Filters results by animals that have special needs
  • Search filters that can take multiple values in the animals() function, including age, gender, status, animal_type, size, and coat, should now correctly accept both comma-delimited strings, such as age='baby,'young' and lists or tuples.
  • The required version for pandas has been updated to at least version 1.0.0.

petpy 2.2.0 release

30 Jun 19:00
Compare
Choose a tag to compare
  • Support for Python 3.5 has been discontinued.
  • The animals() method has been updated to include new parameters provided by Petfinder's animal
    endpoint. This parameters include:
    • good_with_cats: Boolean for filtering animals that are designated as good with cats.
    • good_with_children: Boolean for filtering animals that are designated as good with children.
    • good_with_dogs: Boolean for filtering animals that are designated as good with dogs.
    • before_date: Returns results published before the specified time.
    • after_date: Returns results published after the specified time.

petpy 2.1.3 release

29 Jun 16:22
Compare
Choose a tag to compare
  • organization_id parameter in the animals method should now only return animals from specified organization IDs.

petpy 2.1.2 Release

26 Nov 13:53
Compare
Choose a tag to compare

New release includes a bug fix and some additional changes for checking total usage against the Petfinder API.

  • animal_type parameter used in the animals() endpoint has been corrected and should be working properly.
  • New methods for checking the usage of the supplied API key against the limits defined by the Petfinder API have been implemented to better help warn users when they are approaching their API request limit.
    • If the max_pages parameter exceeds 10,000, a warning will be issued to give the user the opportunity to continue or limit their results to 10,000 pages.
    • When the API limits are exceeded, a RuntimeError will be issued.

Thank you to contributor ma755 for submitting the pull request.

petpy 2.1.1 Release

11 Nov 13:27
Compare
Choose a tag to compare

Small update release to fix the distance parameter logic when searching for pets using the animals() or
organizations() methods. Thank you to contributor ljlevins for submitting the pull request.