Skip to main content

Changelog

[1.0.0] - 2025-01-21

Initial release.

Added

  • Configuration function
  • Basic panel implementation

[2.0.0] - 2025-02-14

Dev release for API integration testing.

Added

  • MaestroManagerInterface - API for core App->SDK calls
  • MaestroEventInterface - API for event-related App->SDK calls
  • MaestroEventDelegate - API for event-related SDK->App calls
  • Pre-release version of Key Plays UI
  • Key plays data is retrieved once after opening event (no polling yet)

Changed

  • Configuration function now requires real siteID but not a real jwt token
  • MaestroPanel takes new arguments

[2.0.1] - 2025-02-18

Small API changes.

Changed

  • Removed panelType argument from MaestroPanel constructor
  • Changed keyPlaysData(forEventID:) to use async/await

[2.0.2] - 2025-02-19

Change to MaestroPanel constructor and new error handling.

Changed

  • Removed viewModel argument from MaestroPanel constructor
  • Added error handling w/accompanying views

[2.0.3] - 2025-02-19

Small API changes.

Changed

  • Updated event ID handling

[2.0.4] - 2025-02-24

Updates to key plays UI and error handling.

Changed

  • Upgraded key plays UI to match interactive designs - still in progress
  • renamed keyPlaysData() to getKeyPlaysData()
  • Added tab failure condition when getKeyPlaysData() returns nil
  • Added clipDidFailToPlay(atIndex:) to MaestroEventInterface to support single clip failures
  • Added currentEventDoesNotSupportKeyPlays() to MaestroEventInterface to support notifying SDK that an event doesn't support key plays
  • Added shouldShowPanel() and shouldHidePanel() to MaestroEventDelegate

[2.0.5] - 2025-02-24

Updates to key plays UI and MaestroEventInterface.

Changed

  • Upgraded key plays UI to match interactive designs
  • Renamed clipDidFailToPlay(atIndex:) to didFailToPlayClip(atIndex:) in MaestroEventInterface

[2.0.6] - 2025-02-25

Update to MaestroKeyPlaysResponse.

Changed

  • In MaestroKeyPlaysResponse athlete short names are now optional

[2.0.7] - 2025-02-25

Update to MaestroKeyPlaysResponse.

Changed

  • In MaestroKeyPlaysResponse athlete headshots are now optional

[2.0.8] - 2025-02-26

Update to MaestroKeyPlaysResponse.

Changed

  • Made all data in MaestroKeyPlaysResponse optional except id's for teams, players and key plays

[2.0.9] - 2025-03-06

Fixed display bug.

Changed

  • Fixed display bug related to key plays section headers

[2.0.10] - 2025-03-11

Added safeguards to address crash bug.

Changed

  • Added safeguards to allow opening the MaestroPanel immediately after opening an event

[2.0.11] - 2025-03-17

Added safeguards to prevent index out of range errors

Changed

  • Added safeguards to prevent index out of range errors

[2.0.12] - 2025-03-18

Added safeguards to prevent index out of range errors.

Changed

  • Added safeguards to prevent index out of range errors

[3.0.0] - 2025-03-24

Added bets module, MaestroOverlay component and Rive framework.

Changed

  • Added new bets module - currently displaying mock data
  • Added new MaestroOverlay component and accompanying API calls
  • Added Rive animation framework to the SDK, now required of client apps
  • All tabs are active now- stats and fantasy say 'Coming Soon'
  • Key plays panel now uses 'thumbnail' images rather than player headshots
  • Added user authentication API calls to MaestroManagerInterface
  • Added overlay management API calls to MaestroEventInterface and MaestroEventDelegate

[3.0.1] - 2025-03-25

Updated Package.swift to include Rive dependency.

Changed

  • Updated Package.swift to include Rive dependency

[3.0.2] - 2025-03-27

Updated bets module to use live data.

Changed

  • Updated bets module to use live data instead of mock data. Data is now fetched from the qa server using the current eventID. If there is a user logged in, the query also uses the user's swid and jwt.
  • The Rive library is currently included as a transitive dependency at version 6.7.3. The MaestroOverlay component that displays the Rive animation upon winning a bet will be activated in an upcoming release of MaestroKit.

[3.0.3] - 2025-03-27

Bugfix for intermittent crashes on SDK launch

Changed

  • Addressed bug causing intermittent crashes when launching the SDK and immediately opening an event

[3.0.4] - 2025-03-27

Attempt to remedy authentication crash bug.

Changed

  • Added fix for authentication crash bug

[3.0.5] - 2025-03-27

Attempt to remedy authentication crash bug.

Changed

  • Added fix for authentication crash bug

[4.0.0] - 2025-04-07

Updated key plays API to receive data from client app and other changes.

Changed

  • Updated key plays API to receive data from client app rather than polling the client app
  • Updated bets views to handle expand/contract
  • Updated sample client project for distribution
  • Added bets error screen when there is no data available
  • Added bets server polling every 5 seconds

[4.0.1] - 2025-04-14

Updated userDidStopWatchingEvent(eventID:) to prevent crash .

Changed

  • Added safeguard for userDidSTopWatchingEvent(eventID:)

[4.0.2] - 2025-04-18

Addressed key plays loading issue and memory leak.

Changed

  • Addressed bug involving key plays data not displaying newly-loaded data. Loading key plays data should now display in the panel.
  • Addressed memory leak/allocation issue. Closing an event should now free up its memory allocation where before it was being retained, and any memory leaks should subside.

[4.0.3] - 2025-04-23

Addressed key plays crash issue when navigating up and down.

Changed

  • Addressed a bug where navigating up and down within key plays was crashing the app with a message in the console about the networking code in the SDK.

[4.1.0] - 2025-04-28

Released Fantasy module, including new delegate API call userRequestedLogin()

Changed

  • The Fantasy feature is now available in the Fantasy tab.
  • Clicking the Fantasy login button triggers a new MaestroEventDelegate API call userRequestedLogin() which is intended to signal to the client app that the app's login screen should be shown.

[4.1.1] - 2025-04-30

Fixed network polling bug.

Changed

  • Fixed issue involving network polling w/o an open event.
  • The current Rive version is 6.8.1.

[4.1.2] - 2025-05-07

Fixed empty fantasy panel on qa server, tightened up back button behavior across all panels.

Changed

  • The fantasy panel should show content now for the qa server.
  • The back button should work consistently across all panels.
  • The current Rive version is 6.8.1.

[5.0.0] - 2025-05-14

Added a variety of bug fixes and improvements.

Changed

  • When the play/pause button on the Siri remote is pressed while the MaestroPanel is in focus, it triggers a new playPauseButtonPressed() call to MaestroEventDelegate.
  • The need to make MaestroEventDelegate a singleton should no longer be necessary.
  • The errant bets-polling-on-SDK-initialization should be fixed.
  • The current Rive version is 6.8.1.

[6.0.0] - 2025-05-27

Added Stats panel, analytics, and a handful of API changes.

Changed

  • The MaestroManager.configure() function has been updated with a new parameter that takes a reference to an instance of MaestroManagerDelegate for supporting analytics callbacks, and a MaestroWorkingEnvironment parameter for switching between qa and prod environments.
  • Added trackState(name:attributes:) and trackAction(name:attributes:) as part of MaestroManagerDelegate to enable analytics callbacks from the SDK to the client app.
  • Implemented analytics callbacks for Key Plays, Bets and Fantasy modules. Analytics calls for the Stats module will be in an upcoming release.
  • Updated MaestroOverlay API to eliminate id parameter. The MaestroOverlay now takes two additional parameters, overlayType and payload. These values should be regurgitated from the values received from the shouldShowOverlay(size:overlayType:payload:) call to the MaestroEventDelegate.
  • Added userViewedPanel(panel:) callback to MaestroEventDelegate so the SDK can inform the client app when the user views a panel. This is being added specifically to support the new key plays data refresh logic, wherein new key plays data should be pushed to the SDK via the existing updateKeyPlaysData(to:) whenever the user navigates to the Key Plays panel.
  • Fixed memory leak and memory retention issue with MaestroEventDelegate.