Skip to content

Releases: JohnBaracuda/com.baracuda.runtime-monitoring

3.6.0

06 Apr 09:52
Compare
Choose a tag to compare

[3.6.0] - 2024-04-06

Added

  • Added IMonitorHandle.GetValueAsObject() to get a monitored object without any formattig. As requrest in #26

Fixed

  • Fixed #23 Users can select the update rate of SceneHook in the Settings to Update, FixedUpdate, or LateUpdate
  • Fixed #22 Grouped monitored objctes are now unregistered correctly (TextMeshPro)

3.5.4

11 Jun 10:12
Compare
Choose a tag to compare

[3.5.4] - 2023-06-11

Fixed

  • Fixed #20 WebGL UI is not updating. This was caused because the callback object was created during subsystem registration which seems to not work.
  • Fixed #19 Creating a settings file creates an empty resources folder.
  • Fixed a NullReferenceException when starting the game without a settings file as mentioned in #19.

3.5.3

01 Jun 13:11
Compare
Choose a tag to compare

[3.5.3] - 2023-06-01

Fixed

  • Fixed issue #18 ambiguous reference between 'UnityEditor.Compilation.AssemblyFlags' and '
    System.Reflection.AssemblyFlags'

3.5.2

26 May 13:16
Compare
Choose a tag to compare

[3.5.2] - 2023-05-26

Fixed

  • Fixed an import issue that created multiple Resources folder.

Added

  • Added the option to allow updating monitors even when Time.timeScale is below 0.05

Changed

  • Moved settings access from Window/Runtime Monitoring to Tools/Runtime Monitoring

3.5.1

25 Apr 22:54
Compare
Choose a tag to compare

[3.5.1] - 2023-04-26

Fixed

  • Fixed a NullReferenceException that occured when exiting playmode.
  • Fixed runtime NullReferenceExceptions in MonitoringRegistry caused by race conditions during initialization.

3.5.0

08 Apr 15:42
Compare
Choose a tag to compare

[3.5.0] - 2023-04-08

Fixed

  • Fixed an invalid cast exception that happened in newer versions of unity.
  • Fixed an error that happened when creating an new monitoring settings asset during import.

Changed

  • Removed Thread Dispatcher (com.baracuda.thread-dispatcher) as a dependency.
  • Moved settings access from Tools/Runtime Monitoring to Window/Runtime Monitoring

3.4.2

07 Mar 17:09
Compare
Choose a tag to compare

[3.4.1] - 2023-03-07

Fixed

  • Fixed an exception that occurred in builds when monitoring was set to editor only.

3.4.1

13 Nov 14:02
Compare
Choose a tag to compare

[3.4.1] - 2022-11-13

Fixed

  • Runtime Monitoring now works properly with Disabled Domain and Scene reloads in Enter Play Mode Options.

Deprecated (Removing in [4.0.0])

  • ISettableValue is now deprecated.

3.4.0

30 Oct 16:39
Compare
Choose a tag to compare

[3.4.0] - 2022-10-30

Added

  • Added a filtering editor window: (menu: Tools > Runtime Monitoring > Filter Window)
  • Added Documentation in multiple file formats to samples.
  • MonitoringMetaAttributes can now be applied to interfaces.

Changed

  • Settings are now accessed via: (menu: Tools > Runtime Monitoring > Settings)
  • Changed multiple property types in IMonitoringRegistry from returning an IReadOnlyCollection to returning an IReadOnlyList.

3.3.0

29 Oct 21:00
70f37f9
Compare
Choose a tag to compare

[3.3.0] - 2022-10-29

Known Issues

  • Monitoring structs that implement IEnumerable or IEnumerable are not monitored like a collection.

Added

  • Added better error handling for Editor and Debug builds.

Changed

  • Refactored and reworked API to reduce complexity and improve accessibility.
  • Removed service locator pattern since it introduced a lot of complexity without offering any benefit.
  • Replaced Baracuda.Monitoring.MonitoringSystems with Baracuda.Monitoring.Monitor
  • Improved static initialization.
  • Updated documentation.

Fixed

  • Fixed an issue that occured when registering a monitor target during static initialization / construction.
  • Fixed an issue when monitoring a non generic type with a generic IEnumerable interface.

Deprecated (Removing in [4.0.0])

  • Baracuda.Monitoring.MonitoringSystems is now obsolete. Use Baracuda.Monitoring.Monitor instead!
  • MonitoringSystems.Initialized is now obsolete. Use Monitor.Initialized instead!
  • MonitoringSystems.Manager is now obsolete. Use Monitor, MonitoringEvents and MonitoringRegistry instead!
  • MonitoringSystems.Settings is now obsolete. Use Monitor.Settings instead!
  • MonitoringSystems.Utility is now obsolete. Use Baracuda.Monitor.Registry instead!
  • MonitoringSystems.UI is now obsolete. Use Monitor.UI instead!
  • MonitoringSystems.Resolve{T} is now obsolete. Use Baracuda.Monitoring.Monitor to access API instead!
  • MonitoringSystems.Register{T} is now obsolete. Use Baracuda.Monitoring.Monitor to access API instead!
  • MonitoringSystems.SystemNotRegisteredException is now obsolete.
  • MonitoringExtensions.RegisterMonitor{T}(T target) is now obsolete. Use MonitoringExtensions.BeginMonitoring{T}(T target) instead!
  • MonitoringExtensions.UnregisterMonitor{T}(T target) is now obsolete. Use MonitoringExtensions.EndMonitoring{T}(T target) instead!
  • IMonitoringManager is now obsolete.
  • IMonitoringManager.IsInitialized is now obsolete. Use Monitor.Initialized instead!
  • IMonitoringManager.ProfilingCompleted is now obsolete. Use Monitor.Events.ProfilingCompleted instead!
  • IMonitoringManager.UnitCreated is now obsolete. Use Monitor.Events.MonitorHandleCreated instead!
  • IMonitoringManager.UnitDisposed is now obsolete. Use Monitor.Events.MonitorHandleDisposed!
  • IMonitoringManager.RegisterTarget{T}(T target) is now obsolete. Use Monitor.BeginMonitoring instead!
  • IMonitoringManager.UnregisterTarget{T}(T target) is now obsolete. Use Monitor.EndMonitoring!
  • IMonitoringManager.GetStaticUnits() is now obsolete. Use Monitor.Registry.GetMonitorHandles(HandleTypes.Static) instead!
  • IMonitoringManager.GetInstanceUnits() is now obsolete. Use Monitor.Registry.GetMonitorHandles(HandleTypes.Instance) instead!
  • IMonitoringManager.GetAllMonitoringUnits() is now obsolete. Use Monitor.Registry.GetMonitorHandles() instead!
  • IMonitoringUtility is now obsolete.
  • IMonitoringUtility.IsFontHashUsed(int fontHash) is now obsolete. Use Baracuda.Monitor.Registry.UsedFonts instead!
  • IMonitoringUtility.GetMonitorUnitsForTarget() is now obsolete. Use Baracuda.Monitor.Registry.GetMonitorHandlesForTarget instead!
  • IMonitoringUtility.GetAllTags() is now obsolete. Use Baracuda.Monitor.Registry.UsedTags instead!
  • IMonitoringUtility.GetAllTypeStrings() is now obsolete. Use Baracuda.Monitor.Registry.UsedTypes instead!
  • IMonitoringManager.IsFontHashUsed(int fontHash) is now obsolete. Use Baracuda.Monitor.Registry.UsedFonts instead!
  • IMonitoringManager.GetMonitorUnitsForTarget(object target) is now obsolete. Use Baracuda.Monitor.Registry.UsedFonts instead!
  • IMonitoringManager.GetAllTags() is now obsolete. Use Baracuda.Monitor.Registry.UsedTags instead!
  • IMonitoringManager.GetAllTypeStrings() is now obsolete. Use Baracuda.Monitor.Registry.UsedTypes instead!
  • IMonitorUnit is now obsolete. Use IMonitorHandle instead!
  • IMonitoringSubsystem{T} is now obsolete.
  • IMonitorHandle.TargetName is now obsolete. Use IMonitorHandle.DisplayName instead!
  • IMonitorSettings.UIController is now obsolete. Use MonitoringUIOverride instead!
  • IMonitorSettings.EnableMonitoring is now obsolete. Use IMonitoringSettings.IsMonitoringEnabled instead!
  • IMonitorSettings.AutoInstantiateUI is now obsolete.
  • ProfilingCompletedListener is now obsolete. Use ProfilingCompletedDelegate instead!