Skip to content

Releases: ManicJamie/speedruncompy

v0.5.0

12 Jan 03:40
Compare
Choose a tag to compare

Updated typing, async client (see README), context manager lifetime sessions, new endpoints and tests :)

Full Changelog: v0.4.0...v0.5.0

v0.4.0

04 May 19:04
Compare
Choose a tag to compare

Breaking changes:

  • .datatypes.STRICT_TYPE_CONFORMANCE replaced with .config.COERCION. Default is still coercion w/ warning on incomplete types.
  • Endpoints moved out of the main namespace & to .endpoints.
  • Paginated requests without _combine_results defined now raise NotImplementedError

New features:

  • Dozens of new endpoints
  • Majority inline documentation
  • Majority enum coverage
  • You can pass autovary=True to .perform() to pass a random vary with your request, bypassing cache
  • You can pass max_pages to .perform_all() to set a maximum number of pages retrieved.

Full Changelog: v0.3.3...v0.4.0

v0.3.3

04 Feb 08:04
Compare
Choose a tag to compare

Fix auth & readme

Full Changelog: v0.3.2...v0.3.3

v0.3.2

04 Feb 04:45
Compare
Choose a tag to compare

Adds a script srcompy-login to grab a PHPSESSID.

Full Changelog: v0.3.1...v0.3.2

v0.3.0

03 Feb 20:30
Compare
Choose a tag to compare

Adds Datatypes. Lack of testing on POST, but released to allow usage on GET. If stuff breaks, set datatypes.DISABLE_TYPE_CONFORMANCE = True.

Datatypes allow accessing return attributes by both dictlike (result["key"]) and objectlike (result.key) accessors. In future, this will also allow for convenience properties and automatically fetching relevant data.

Full Changelog: v0.2.0...v0.3.0

v0.2.0

01 Jan 04:21
Compare
Choose a tag to compare

Switches entire backend to async, which may break applications where the synchronous interface is used within an async context. As this should be rare to nonexistent, I'm just throwing an error, as this would be an antipattern in any async application.

Adds some endpoints too, see full changelog for details. Some endpoints have been moved from POST to GET to better separate endpoints that require auth; this will probably need a better solution Later(tm).

Partial testing coverage, but should now be enough for relative confidence that nothing massive breaks per-update. Complete test coverage will come prior to a v1.0 release, but not much sooner than that.

Full Changelog: v0.1.0...v0.2.0

v0.1.0

15 Dec 16:02
Compare
Choose a tag to compare

v0.0.5

23 Sep 17:13
Compare
Choose a tag to compare

Close to complete functionality, still alpha as testing is only partial

v0.0.4

21 Aug 17:45
Compare
Choose a tag to compare

No longer imports tkinter lol (thanks vscode)

Changes various method names to be more pythonic - check your code!

Full Changelog: v0.0.3...v0.0.4

v0.0.3

11 Aug 03:01
Compare
Choose a tag to compare

Adds paginated calls. Paginated.performAll() returns a dict {page: data} for now; note that only the primary list is paginated - secondary lists (eg playerList in GetGameLeaderboard2) return all relevant objects to the entire main list, not just the page. This means you can simply append all pages' relevant main list & use the final object for the rest of the fields.

Full Changelog: v0.0.2...v0.0.3