Releases: GW2ToolBelt/api-generator
Releases · GW2ToolBelt/api-generator
0.12.0
Fixes
- Endpoints:
/v2/achievements:Itemrewards are now correctly named (previouslyItems) [GH-550]MiniPetbits now use correct capitalization for disambiguation (Minipet).
/v2/gliders:- Made
unlock_itemsoptional to support old legendary gliders. [GW2-151]
- Made
/v2/skills:dual_wieldis now correctly specified as string again.iconis now optional.- Added support for
Durationfacts. - Added basic support for
HealingAdjustfacts. The semantics of these facts are unclear as they appear to be incomplete.
/v2/skins:- Added support for skins without dye slots.
0.11.0
Improvements
- Added support for strings formats to encode additional semantic properties of a string's contents via the
SchemaString.formatproperty. [GH-461]- ISO-8601 timestamps and UUIDs are now properly marked as such and can now be mapped to more appropriate types.
Fixes
0.10.1
Fixes
- The API reference is now correctly published again.
0.10.0
Improvements
- Endpoints:
- Added support for
/v2/logos. [GH-489] - The achievement bits for
/v2/achievementsare now a conditional based on the "type" field.- This enables type-safe access to the ID of the bit depending on the bits type.
- Added support for
Fixes
- Endpoints:
Breaking Changes
- Increased minimum required Java version to 17 (from 8).
- Increased minimum required Kotlin version to 2.2 (from 1.8).
- The
copyfunctions of data classes with no publicly accessible constructors are no longer available. This includes (but is not limited to) the IR and schema types.
0.9.0
Improvements
- Endpoints:
/v2/guild/:id/members:- Added support for
wvw_member.
- Added support for
0.8.1
Fixes
- Endpoints:
/v2/account- Fixed the WvW
rankproperty introduced in schema version2024-07-20T01:00:00.000Z.
- Fixed the WvW
/v2/character- Fixed the nesting of item attributes in equipment tabs.
0.8.0
Improvements
- Endpoints
- Added support for
/v2/account/homestead/decorations. [GH-357] - Added support for
/v2/account/homestead/glyphs. [GH-355] - Added support for
/v2/account/wvw. [GH-326] - Added support for
/v2/homestead/decorations. [GH-356] - Added support for
/v2/homestead/decorations/categories. [GH-358] - Added support for
/v2/homestead/glyphs. [GH-354] - Added support for
/v2/wvw/guilds. [GH-331] - Added support for
/v2/wvw/guilds/:region. [GH-332] - Added support for
/v2/wvw/timers. [GH-327] - Added support for
/v2/wvw/timers/lockout. [GH-328] - Added support for
/v2/wvw/timers/teamAssignment. [GH-329] - Added
inventoriesto required permissions to access/v2/characters/:id/equipment. [GH-342]
- Added support for
- Added support for V2 schema
2024-07-20T01:00:00.000Z. - Added support for fields whose presence is dependent on the availability of multiple token scopes.
- Introduced aliases for many unmapped ID types. [GH-283]
Fixes
- Endpoints:
/v2/character- Corrected token scope information for conditional fields. [GH-342]
Breaking Changes
- The API of
Optionality.MANDATEDhas been changed to expose aSet<TokenScope>instead of single token scope.
0.7.0
Improvements
- Endpoints
- Added support for
/v2/account/jadebots. [GH-259] - Added support for
/v2/account/skiffs. [GH-261] - Added support for
/v2/account/wizardsvault/daily. [GH-297] - Added support for
/v2/account/wizardsvault/listings. [GH-298] - Added support for
/v2/account/wizardsvault/special. [GH-299] - Added support for
/v2/account/wizardsvault/weekly. [GH-300] - Added support for
/v2/jadebots. [GH-258] - Added support for
/v2/skiffs. [GH-260] - Added support for
/v2/wizardsvault. [GH-296] - Added support for
/v2/wizardsvault/listings. [GH-294] - Added support for
/v2/wizardsvault/objectives. [GH-295]
- Added support for
- Added a
SchemaBitfieldtype to be used for bitfields. This type should always be mapped to 64bit integers. - Added support for V2 schema
2022-03-23T19:00:00.000Z. - Introduced a low-level API to move the version information out of the schema API into an intermediate representation (IR).
- APIs can now be generated for specific schema versions making it significantly easier for consumers to work with.
- Introduced a
Nameabstraction to make case conversion for names an explicit operation. - Introduced the concept of inlined properties for reference types.
- Inlined properties can be used to group elements into logical units without affecting the serial representation.
- Introduced enums. Enums allow defining a known set of values for an element. [GH-152]
- Introduced tuples. Tuples are arrays with a fixed size where each element may carry different semantic information. [GH-189]
Fixes
- Endpoints:
/v2/account:- Fixed the optionality of
build_storage_slotsfor tokens withoutBUILDSscope.
- Fixed the optionality of
/v2/characters:- Made
amuletandrunesoptional.
- Made
- Changed the type of
worldIDin theMumbleLinkIdentitytoBITFIELD.
Breaking Changes
- The library now requires Kotlin 1.8.
0.6.0
Improvements
- Updated the library to Kotlin 1.6 and replaced all experimental functionality.
Breaking Changes
- The library now requires Kotlin 1.6.
0.5.0
Improvements
- Endpoints:
- Added support for
/v2/account/legendaryarmory. [GH-179] - Added support for
/v2/characters. [GH-46] - Added support for
/v2/characters/:id/buildtabs/active. [GH-49] - Added support for
/v2/characters/:id/equipment. [GH-53] - Added support for
/v2/characters/:id/equipmenttabs. [GH-54] - Added support for
/v2/characters/:id/equipmenttabs/active. [GH-55] - Added support for
/v2/guild/:id/log. [GH-82] - Added support for
/v2/guild/:id/stash. [GH-85] - Added support for
/v2/legendaryarmory. [GH-178] - Added support for
/v2/skills. [GH-128] - Added support for
/v2/traits. [GH-135] /v2/account:- Added support for
build_storage_slots(since2019-12-19T00:00:00.000Z).
- Added support for
/v2/legends:- Added support for
code(since2019-12-19T00:00:00.000Z).
- Added support for
- Added support for
- Added support for V2 schema
2021-07-15T13:00:00.000Z. - Added support for V2 schema
2022-03-09T02:00:00.000Z.
Fixes
- Endpoints:
/v1/guild_details- Changed types of color and emblem ID fields from
STRINGtoINTEGER.
- Changed types of color and emblem ID fields from
/v1/map_floor:- Changed type of file IDs from
STRINGtoINTEGER.
- Changed type of file IDs from
/v2/guild/:id- Changed types of emblem ID fields from
STRINGtoINTEGER.
- Changed types of emblem ID fields from
/v2/guild/:id/stash- Changed types of
upgrade_id,idandcountfromSTRINGtoINTEGER.
- Changed types of
/v2/guild/upgrades- Changed types of
countfromSTRINGtoINTEGER.
- Changed types of
/v2/mounts/skins- Changed type of color ID fields from
STRINGtoINTEGER.
- Changed type of color ID fields from
/v2/pets:- Changed
IDtype of pet skill objects fromSTRINGtoINTEGER.
- Changed
/v2/pvp/seasons/:id/leaderboards/:board/:region:- Rename type
LeaderboardEntrytoPvPSeasonsLeaderboardEntry. - Changed type of
teamfromINTEGERtoSTRING. - Changed type of
valuefromSTRINGtoINTEGER.
- Rename type
/v2/pvp/seasons:- Made
durationoptional.
- Made
/v2/wvw/matches:- Changed types of map and skirmish IDs from
STRINGtoINTEGER.
- Changed types of map and skirmish IDs from
/v2/wvw/matches/stats:- Changed types of map and skirmish IDs from
STRINGtoINTEGER.
- Changed types of map and skirmish IDs from
/v2/wvw/matches/scores:- Changed types of map and skirmish IDs from
STRINGtoINTEGER.
- Changed types of map and skirmish IDs from
Breaking Changes
- The libraries' API was restructured to support working with only a subset of
endpoints and to implement a better type-system.