Skip to content

Releases: SpongePowered/SpongeAPI

Release v7.2.0

29 Mar 12:15
Compare
Choose a tag to compare

Some of the highlights are (this is not an exhasutive list):

  • New Data manipulators
    • PlainPagedData for unsigned books
    • ActiveItemData to access the item a Living entity is currently using
    • PotionTypeData and associated PotionType for getting the type of a potion
    • PotionColorData for getting the color of a potion
    • TargetedEntityData for use with ShulkerBullets
    • DisabledSlotsData for ArmorStands
    • AccelerationData for Fireballs
  • Various event additions and updates
    • Added UpdateAnvilEvent
    • Updated ChangeEntityEquipmentEvents
    • Added ClickInventoryEvent.Creative
    • Added PlayerSoundEvents
    • Added Position and Rotation subevents for MoveEntityEvent
    • Added many EventContextKeys
      • Many block event keys were added
      • USED_HAND has been added for interact events
  • Service updates
    • ContextualServices have been updated with better documentation
    • EconomyService now supports account deletions
  • Minor command updates
    • Added GenericArguments#requiringPermissionWeak
    • Added ability to filter commands based on source permission
    • Make the PatternMatchingElement not use regex by default for simpler matching, allowing elements containing [] to be matched with ease
  • Add Shulker and ShulkerBullet intefaces for representing these entities
  • Added Text replacement and removal methods
  • Updated Metrics collection states
  • Upgrade of the Sponge Schematic format to v2
  • Transactions now contain any intermediary transactions that took place to explain how a transaction came to be
  • Ability to get and set the phase of an active EnderDragon
  • Update Configurate to version 3.7

Release 7.1.0

07 Sep 02:40
v7.1.0
ff990df
Compare
Choose a tag to compare

With this release, SpongeAPI has a global MetricsConfigurationManager for specifying the configuration flags for plugins to determine whether metrics are enabled etc.

Full Changelog

Dependencies:

  • Configurate version bump from 3.3 to 3.6

Additions:

  • Timings#generateReport
  • MetricsConfigurationManager
  • BlockTrait#parseValue
  • Add CommandArgs snapshots
  • Add CommandContext#requireOne
  • Add choicesInsensitive for command arguments
  • Add Keys.INVULNERABILITY_TICKS and related data.
  • Add ElytraFlying data
  • Add CollectionValue#copy overrides for better usability of the values themselves to allow copying the value itself and the underlying collection. No guarantees are being made about the elements contained within the collection being copied.
  • Add User#getPosition and other related position methods to allow offline user location manipulation.
  • Added missing EventContextKeys to signify liquid physics during block events
  • Added ClickInventoryEvent.Recipe and sub events
  • Added Crafting events
  • Added InventoryTransformations for allowing more expected transformation usage of inventories
  • Added ItemStack#of(ItemType) to create a single sized item stack of that type
  • Moved ItemStack comparators into the implementation
    • This isn't a breaking change since the fields are still the same declarations, just the initialization is different. The implemented classes previously available were package private and not intended to be used outside the comparators.
  • Add Chunk#getInhabitedTime()

Fixes:

Release 6.0.0

02 May 05:27
v6.0.0
ab735e2
Compare
Choose a tag to compare

Release API revision 6.0.0. This release has breaking changes in comparison to API 5.x:

  • Removing long deprecated methods in GameProfileManager
  • Default implement PluginContainer#getMinecraftVersion()
  • Add isMainThread check to the game
  • Refactor RespawnPlayerEvent to properly consider player cloning during respawns
  • Add methods to ChannelRegistrar for getting existing channels
  • Deprecate several entity meta related CatalogTypes due to Minecraft 1.11.x changes
  • Deprecate HorseVariant
  • Deprecate SkeletonType
  • Deprecate ElderGuardianData
  • Deprecate ZombieType
  • Deprecate ZombieData
  • Add Husk and ZombieVillager as new Entity interfaces
  • Add Action Bar Title options
  • Update MobSpawnerData to use EntityArchetypes
  • Update TradeOffer to provide a World context, primarily useful for locating structures in worlds
  • Expand Horse related data. Add Llama data.
  • Add doWeatherCycle and maxEntityCramming gamerules
  • Update SoundTypes for 1.11 additions
  • Update Enchantments for 1.11 additions
  • Rename Skeleton entity interface hierarchy, somewhat backwards compatible. Adds WitherSkeleton, WhiteSkeleton, and Stray.
  • Expose plugin dependencies with plugin-meta
  • Add Minecraft container to Platform
  • Add HitTarget for targeting events with blocks or entities
  • Add getTargetPos and isUsingBlock to TabCompleteEvent
  • Add helper methods to GameProfile for creating profiles
  • Add createEntity and spawnEntity methods to Location
  • Add missing catalog types in CatalogTypes
  • Add method to create an entity naturally in a world
  • Add EndGateway
  • Add Structure and Structure related data
  • Refactor Statistics API for full implementation
  • Add LocatableBlock for high use events, replaces BlockSnapshot in certain events as causes.
  • Add Extent#getHighestBlockAt
  • Add queryAny and containsAny for Inventory
  • Move some registrations of type serializers into the GameRegistry
  • Update ProjectileSources
  • Replace Passenger Entity lists with UUID lists
  • Add BlockState.StateMatcher for loose state matching specific properties and values
  • Refactor ChunkGeneration events
  • Add shield damage modiifiers
  • Update AgeableData with minor changes to handle implementation required changes for the API
  • Add methods to require data with the Data API
    -Add ChunkTicketManager$LoadingTicket#getWorld() for better use with plugins and mods
  • Add AreaEffectCloudData updates
  • Clean up code to fix a majority of codestyle issues
  • Refactor Event generation to use precompiled sources generated at project setup, Optimizes event creation
  • Make use of DismountTypes in events
  • Add Player chat simulation API
  • Add Absorption Data
  • Make all living entities ProjectileSources
  • Add methods to control spectator cameras
  • Add WorldArchetype#randomSeed
  • TextSerializer changes, making all serializers catalog types
  • Add fossil populator with 1.11 changes
  • Retrun Archetype#create types for better usage
  • Add ItemStack#isEmpty to signifiy that the itemstack is not usable wwith the game
  • Refactor the way custom data is registered with the DataManager to use DataRegistrations.Provides the first step towards dynamic custom data generation
  • Add JSONDataFormat
  • Add GameRule removal
  • Add annotations to channel bindings
  • Enhance injection support
  • Refactor DamageEntityEvent and other modifier related events to use ModifierFunctions.

Signed-off-by: Gabriel Harris-Rouquette [email protected]

Release 5.1.0

25 Feb 20:56
v5.1.0
cf4dfb1
Compare
Choose a tag to compare

Summary of changes since API 5.0.0 release:

  • Minor changes to default implement PluginContainer#getMinecraftVersion
  • Add isMainThread check for server threadedness
  • Update RespawnPlayerEvent to handle player cloning during respawn
  • Add methods to ChannelRegistrar for getting existing channels
  • Add AreaEffectCloudData for manipulating AreaEffectClouds
  • Add Minecraft container to Platform
  • Add NamedCause 'HitTarget' for events targeting a block or an entity
  • Add #getTargetPos and #isUsingBlock to TabCompleteEvent
  • Add More NamedCauses for ChangeBlockEvent.Pre
  • Add LocatableBlock for location based events where a snapshot is unnecessary
  • Add NamedCause for block decay
  • Make EnderDragon a ProjectileSource to launch DragonFireballs
  • Add BlockState.StateMatcher for matching BlockStates specific values
  • Provide CatalogtypeAlreadyRegisteredException a useful message
  • Add methods to CompositeValueStore and ValueContainer to require a value returned
  • Add ChunkTicketManager#loadingTicket#getCompanionData() for mod compatibility
  • Improve event generation performance. All events are pre-compiled for the project.
  • Fix all checkstyle issues and codestyle issues
  • Enhance DataTransactionResult with some functional methods for consumers and throwing exceptions
  • Add spectator controlling methods to Player
  • Add API to simulate Player chatting

All of this is a minor addition for API 5. API 5 is the last major release to target Minecraft 1.10.2
as API 6 requires deprecation changes and some minor breaking changes to target Minecraft 1.11.2 feature
changes.

Signed-off-by: Gabriel Harris-Rouquette [email protected]

Release 5.0.0

16 Oct 14:35
Compare
Choose a tag to compare
5.0.0 Release.

Signed-off-by: Chris Sanders <[email protected]>

Release 3.0.0

01 Jan 07:56
Compare
Choose a tag to compare

This marks the release of SpongeAPI 3.0.0

Release v2.0

21 Apr 04:21
Compare
Choose a tag to compare

A second release featuring plenty of new features and changes throughout the API.

Release v1.0

01 Dec 19:52
Compare
Choose a tag to compare

The first of a few rolling releases, version 1.0.