Skip to content

Releases: nxtlo/aiobungie

0.2.5b7 release.

27 Aug 00:56
0.2.5b7
e658e43
Compare
Choose a tag to compare
0.2.5b7 release. Pre-release
Pre-release

Break changes

This release includes huge break changes. Like classes renames. functions removed and different behavior to match the new bungie api design.

  • Renamed impl.BaseClient main client protocol to impl.RESTful
  • Removed Client.fetch_user_from_id since bungie removed this method.
  • Client.fetch_user_from_id is now Client.fetch_user
  • Client.fetch_player Now requires the full name bungie name with its code, i.e., Fate#1234
  • Removed some class attrs from crate.User repr.
  • The HTTPClient now raises an error before continuing the request if the API was down.
  • All id class attrs that used to return a str object of the id now returns an int object, i.e., '1234' -> 1234.
  • Removed PartialUser ABC since it was really slowing things up for no reason.

Features

  • New class attr unique_name that returns the Bungie user/player's unique name, i.e, Fate#1234.
  • New class attr code that returns the bungie user/player code, i.e, 1234.
  • Optimized HTTP requests speed.
  • type parameter is now optional to pass on Client.fetch_player.
  • Added ClanMember.types that returns all membership types for clan member.
  • Added Player.types that returns all membership types for player.
  • Added the version addition to the docs.
  • Removed overload methods __int__ and __str__ on all userlike crates and added them to the base UserLike object.

Bug fixes

  • Fixed a bug where bungie won't allow 301 without using www. redirect for SearchDestinyPlayer endpoint.

0.2.5b6 release.

24 Aug 22:36
5b8698f
Compare
Choose a tag to compare
0.2.5b6 release. Pre-release
Pre-release

Breaking changes

  • HTTPClient will now raise OSError if the Bungie API is shutdown instead of making the request and raising an Unknown error.
  • Moved package metadata to _info.py.
  • Added an aiobungie client User-Agent key as an http kwarg.

Features

  • Bungie Season basic implementation.
  • Removed type hints from __slots__ since mypy is causing errors.
  • Finished All coverage for the User endpoints except one which will be finished by next relese.
  • Added a code spelling fixes to nox tests which requires the codespell module.
  • Improved Docstrings for all methods.

Bug Fixes

  • Fixed a bug where joined_at, last_online, group_id and is_online attribs were the same for all clan members in Client.fetch_clan_members()

0.2.5b5 pre-release.

14 Aug 12:20
0.2.5b5
e85e03d
Compare
Choose a tag to compare
0.2.5b5 pre-release. Pre-release
Pre-release

Breaking changes

  • objects folder name changed to crate
  • fetch_activity() now works but still not stable.
  • fetch_activity() parameters names changed from userid, charid, memtype
    to membed_id, character_id, membership_type.
  • Removed useless Attributes docstrings from all crates.

Features

  • A very basic re-implementation of the Activity / crate.
  • A new crate PostActivity that returns post activity data.
  • A new method Client.fetch_hard_types() which returns HardLinkedMembership crate with the user's hard linked data
  • A new method Client.fetch_post_activity() which returns

Bug Fixes.

  • Fix relative import errors for some of the modules that won't work without typing.TYPE_CHECKING.

0.2.5b4

07 Aug 22:59
0.2.5b4
f902b93
Compare
Choose a tag to compare
0.2.5b4 Pre-release
Pre-release

Breaking changes

  • UserCard class name changed to UserLike.
  • http.PreLock class for thread safety for htto requests.
  • All Entitiy definitions now inherit from the Entity main abc.
  • All as_dict methods has changed into @properties.

Features

  • Version bump to 0.2.5b4
  • ClanMember object is fully implemented.
  • You can now fetch clan members from the Clan object using await fetch_member("NAME") and await fetch_members()
    for the clan members will return all members in a mutable dict
    contains a clan member name and a their id as the value. example: {"Foo": 19823791283, "Bar": 12391203, ...}.
  • InventoryItem entity which's DestinyInventoryItemDifinition is implemented but you might find some buggy stuff.
  • Added a fetch_inventory_item method which returns an InventoryItem entity.

Bug Fixes.

  • Minort http error handling.
  • The main fetch() http method is now decorated with typing.final.

0.2.5b3 release.

31 Jul 01:30
0.2.5b3
86f795e
Compare
Choose a tag to compare
0.2.5b3 release. Pre-release
Pre-release

Breaking changes

  • Profile Component reimplementation.
  • Activity can not be used currently.
  • character variable has been removed from the Profile component with an easier access for the characters. see Features.
  • types module has been deleted since we're using class attrs.

Features

  • Profile component now has 5x faster responses and safer.
  • Added a PartialProfile and 3 new async methods to PartialProfile. titan, warlock, hunter. All three returns the selected Character object instead of character class var.
  • Added a new method in Time. format_played that formats the total played time for characters and players.
  • Profile object is now serialized.
  • Character object is now serialized.
  • Added a new runtime protocol RESTful for accessing and making rest methods from other objects.
  • New Errors

Minor Changes

  • Better http error handling.
  • All http errors now derives from HTTPException

Bug Fixes.

Profile component fixes and error handling.

0.2.5b2

29 Jul 18:35
Compare
Choose a tag to compare
0.2.5b2 Pre-release
Pre-release

Breaking changes

  • meta.py has been moved to aiobungie/ext as a aiobungie extension.
  • Class RedisCache has been renamed to Cache.
  • HTTPClient.fetch() now has two more paramaters for Manifest client bindings.

Features

  • Manifest now auto-checks for the version and warn if there's a new one.

Minor Changes

  • Asserting responses before returning them for catching bugs.

New Modules

db.py for Bungie manifest database.

Bug Fixes.

  • HTTPClient now only raises the error message instead of the whole data.
  • Better error handling for the manifest.
  • README fixes for the python versions tags.

0.2.5b1 release.

26 Jul 19:15
Compare
Choose a tag to compare
0.2.5b1 release. Pre-release
Pre-release

Breaking changes

  • types module being cleaned. Why? because i'm switching from TypedDict
    to attrs module and ABCs, which's way cleaner and faster.
  • A new module serialize.py for deserializing objetcs then passing them to the http request for cleaner and faster access methods.
  • a new module impl.py which will include all typing protocols and implementaions of other clients.
  • Now all user like objects will inherit from UserCard abc. i.e., Player, ClanOwner.
  • OAuth2 is now dropped since my focus on this lib is not OAuth.
  • human_time property is renamed to human_timedelta.
  • Client now inherits from the base runtime protocol impl.BaseClient.

Features

  • Version Bumped to Beta 1 and ready for testing.
  • Added BaseCache implementation protocol for cache access from BaseClient.
  • Objects Speed optimization.
  • Redis Hash cache now can be accessed from Client for cache testing purposes.
  • New return types in helpers.py, JsonDict and JsonList.
  • http.py requests now return JsonDict or JsonList depends on the returned data.
    Returned are now deserialized in client.py.
  • Removed all types except character.py and profile.py and activity.py which will be deleted and moved as an abc classes in 0.2.5 Stable release.
  • Added a .link property which will return the url of the objects, this can be a ClanOwner, ApplicationOwner or any User like object.
  • Added BUNGIE enum as a MembershipType

New Modules

  • impl.py includes every base client runtime protocol.
  • serialize.py includes data and objects deserialazition.

Removed

  • oauth.py already mentioned above.
  • security.py was a helper module for oauth.py.

Paused

  • Manifest is currently not being worked on until i finish all objects implementation.

Bug Fixes.

  • HTTPClient was not raising HTTPException on http errors.

0.2.5a4

23 Jul 18:22
Compare
Choose a tag to compare
0.2.5a4 Pre-release
Pre-release

Breaking changes

Features

  • Better Error messages on http.py and all objects.
  • Added examples.
  • Added a new exception for handling Components using ComponentError
  • Added __aenter__ for async with support.
  • Supports Python 3.10dev

Bug Fixes.

  • Player returns TypeError when a player is not found and not raising the actual error.
  • Removed characters from as_dict method on Profile because it was causing errors when fetching a profile component.

Alpha3 0.2.5

21 Jul 19:04
Compare
Choose a tag to compare
Alpha3 0.2.5 Pre-release
Pre-release

Breaking changes

  • utils folder name changed to internal
  • All enums starts with Destiny* changed to its name Only i.e.
    • DestinyClass -> Class
    • DestinynGender -> Gender
    • etc.

Features

  • Profile Implementaion and types
  • base urls are now in url.py
  • Added as_dict() method which returns a dict object of the class to all objects.
  • fetch_profile() function currently works for the profile and character component only
  • More enums
  • The meta.py module wich include Manifest class stuff now works.
  • all __repr__() methods now return the string of the enums instead of theint for better readability.
  • docs are now in master.

Bug Fixes.

  • HTTPClient returning text during 404 errors instead of raising NotFound
  • General Character object fixes.

0.2.5a2

21 Jul 07:59
Compare
Choose a tag to compare
0.2.5a2 Pre-release
Pre-release
Version bump `0.2.5a2`