Version History: Ace2
Ace 2.0.4885 - RC2

Changes between 2.0.3940 and 2.0.4883:
  • AceConsole
    • Fixed bug when dealing with ranges that would allow invalid values to go through after a successful one.
    • Added enhancements when you are dealing with percentages in a rage type.
    • Now keeps a registry and updates handlers.
    • More memory efficient handler.
    • Properly handles item links
    • Now errors on 0-length name and desc.
    • Added cmdName and guiName.
    • Changed standby's cmdName to "State" and guiName to "Active"
    • Added a step value to ranges.
    • Argument tab-completion functionality added.
  • AceAddon
    • Now calls/registers OnEnable _after_ OnInitialize
    • :OnInitialize() no longer uses .super.OnInitialize(self)
    • Warning no longer fires if OnInitialize isn't declared
    • Now checks right before OnEnable for :IsActive()
    • Now checks addons to see if they are modules to check their active state and whether to call :OnEnable()
  • AceDB
    • Added :SetModuleMixins(...)
    • Added :IterateModules()
    • added namespacing.
    • Added :AcquireDBNamespace("name")
    • Changed RegisterDefaults("kind", defaults) to :RegisterDefaults("kind", defaults) or ("namespace", "kind", defaults)
    • Changed :SetProfile("name") to :SetProfile("name", "copyFrom")
    • :GetProfile() now returns 2 arguments.
    • Changed :IsEnabled() to :IsActive()
    • Changed :ToggleStandby() to :ToggleActive([state])
    • Added :GetAceOptionsDataTable() so mixins can add options to AceConsole and such automatically.
    • Cannot call AcquireDBNamespace before RegisterDB
    • Added the constants CHAR_ID, REALM_ID, and CLASS_ID.
    • Added :ResetDB(["kind"])
    • Added .REALM, .NAME, .FACTION
  • AceEvent
    • Added :ScheduleDelayedEvent("event" or func, delay, ...)
    • Delayed events are stopped on embed disable.
    • Made ScheduleDelayedEvent mix in properly
    • Added :CancelDelayedEvent(t)
    • :ScheduleDelayedEvent(...) now returns a unique identifier which can be fed into :CancelDelayedEvent(t)
    • Changed :ScheduleDelayedEvent("event" or func, delay, ...) to :ScheduleDelayedEvent("event" or func, delay, ...) or ("id", "event" or func, delay, ...)
    • Said "id" can now be used to cancel the delayed event.
    • Changed :CancelDelayedEvent(id) to :CancelDelayedEvent("id" or id)
    • If you schedule a delayed event by name, it makes sure to remove the old schedule if it exists.
    • :ScheduleDelayedEvent -> :ScheduleEvent
    • :CancelDelayedEvent -> :CancelScheduledEvent
    • added :IsEventScheduled(id or "id")
    • Added :ScheduleRepeatingEvent("id" or id, "event" or func, delay, ...) or ("event" or func, delay, ...)
    • Addons/modules now no longer disable if they haven't been enabled.
    • Added :IsPostPlayerLogin()
    • Now fires AceEvent_PostInitialize after all channels have loaded.
    • Added AceEvent:IsFullyInitialized() and event AceEvent_FullyInitialized
  • AceModuleCore
    • :RegisterDB now works in :OnEnable
    • :SetModuleClass(class)
    • :new() -> :new(name), so :init is now fed the name of the module
    • Added :ToggleModuleActive("name" or module [, state])
    • Added :IsModuleActive("name" or module)
  • AceLocale
    • Caching is prevented if the cached instance is registered with AceLibrary. e.g. BabbleLib.
    • Uses new API
    • Fixed error messages
  • AceOO
    • Uid assigned to each object now.
    • Now with optional Compost support
  • Ace Hook
    • Removed reference to UnhookScript
  • Global
    • All internal Ace2 libraries now use self:error instead of error.
    • Way too many bugfixes to mention.

Ace 2.0.3870 - RC1

Inital Public Release Candidate