Skip to content

0.2.9

Compare
Choose a tag to compare
@nxtlo nxtlo released this 01 Dec 14:49
· 169 commits to master since this release

0.2.9 - 2023-12-1

Major Changes

  • Python 3.10 and above is now required, 3.9.0 is no longer supported.
  • Method fetch_player renamed to fetch_membership.
  • download_manifest method has been renamed to download_sqlite_manifest

Performance Improvements.

  • Optimized converting ISO8661 date strings to datetime, dateutil package has been dropped and the converting process has been implemented directly using stdlib datetime.
  • orjson and ujson are a faster replacement for the JSON lib, If were found installed, They will be used as the default JSON encode/decoder.
  • ruff is now used as the default formatter. This is rather an internal change and shouldn't affect users.

Added

  • Added more examples.
  • Lightfall loadouts methods to the RESTClient.
    • equip_loadout
    • clear_loadout
    • snapshot_loadout
    • update_loadout
  • CHARACTER_LOADOUTS components type enum field.
  • If your Python version is 3.10, A backport of datetime.fromisoformat module will be installed.
    This is required due to this specific Python version not able to parse some ISO date formats.
  • aiobungie.EmptyFactory object. See the object docs for more info.
  • Iterator.last() method which return the last item in the iterator.

Changed

  • User.destiny renamed to User.memberships, ClanMember.bungie to ClanMember.bungie_user,
  • LinkedProfile.bungie to LinkedProfile.bungie_user for naming consistency.
  • Both download manifest methods now return pathlib.Path object.
  • All arguments in the client constructors now required to be passed as a kwarg besides the token.
  • Refactor examples code.
  • Factory methods that used to return Optional[T] now returns just T.
  • Enum.__int__ and Flag.__int__ doesn't check the instance of the type anymore.
  • iterators.into_iter function renamed to iterators.iter.
  • Use new str | None union instead of Optional[str, None]
  • Improved documentations on objects.
  • Some object field names has been typo fixed.
  • Method fetch_available_fireteams typo name fixed.
  • Character.total_played_time now returns the total time in seconds instead of string.
  • Fields emblem, emblem_icon and emblem_hash are now Optional.

Removed

  • The net field has been removed from some objects.
  • The UNDEFINED object, Fields now return T or None instead.

Fixed

  • Fixed multiple buggy Factory methods.
  • Factory.deserialize_character was raising KeyError when accessing the emblem keys, Thanks to @spacez320 (#303)