Releases: ArtSabintsev/Siren
Fixes Same-Version Update Bug
- #288: It was discovered that Siren would prompt the user with an update if the same version of the app was installed that also happened to be the latest version of the app. This was due to an improper handling of that specific case. This is now fixed in #289. Thanks to @ergunkocak for pointing out this bug!
Fixes to DateExtension
Siren v5 (+ Swift 5 Support)
- Adds Swift 5 Support (#277)
- Implements Swift 5's
Result
type inSiren.swift
andAPIManager.swift
- Renames
LookupModel.swift
toAPIModel.swift
- Exposes all values in
APIModel.swift
in a nice public API on a new struct,Model.swift
. (#276) - Siren's public completion handler now uses the
Result
type and returnsModel.swift
instead ofAPIModel.swift
- Fixes the placement of the
Update
button on.optional
alerts (#278)
If you still need access to the Swift 4.2 version of Siren, please use the swift4.2
branch which is equivalent to Siren v4.2.2
.
Fixed Imports
Simplified Add/Remove Observer Methods
Just some method name changes and code consolidated in Siren.swift around methods dealing with observers. Specific changes can be found here: df6174b#diff-2e790de59976a9805984bb04ac1314d7
Fixed Skip Alert Action Logic
- #270: The skip action had improper conditional logic leading to
skip
mimicking thenext time
logic, instead of actually respecting the end-user's preferences. This has now been fixed. (thanks @nixnoughtnothing)
Result Type Changes and Documentation Improvements
Results.localization
is now alet
Results.lookupModel
is now alet
- Improved documentation in multiple places and regenerated documentation for https://sabintsev.com/Siren
Multiple Bugfixes and Improvements
-
#265 (thanks @erichsu/@BelfDev): Adds a new enum,
PerformCheck
, that is used in thewail
method to allow a developer to select if Siren should performa version check when the app enters the foreground state or have it trigger manually when thewail
method is called. -
#267 (thanks @mmdock/@antoinepemeja): Fixes an alert stacking issue when a user uses
UpdatePromptFrequency.immediately
and the user enters the app switcher before entering the app again. -
#269 (thanks @mmdock): Adds a new built in version checking and presentation rule
Rules(promptFrequency: .weekly, forAlertType: .option)
Fixes "Next Time" Prompt Bug
- #264: Fixes #258 by removing the
shouldPerformVersionCheckOnSubsequentLaunch
UserDefault
. This was done to fix theNext Time
action causing the version check alert from appearing every single time a consuming app is launched from the background, irrespective of what rules were in place withinRulesManager
.
Documentation was also updated.
Quality of Life Bugfixes
- Fixes alerts being layered on top of each other when the consuming app is backgrounded by adding a
didEnterBackgroundNotification
observer. - Changes
PresentationManager
'salertController
variable fromprivate
tointernal
to provide Siren.swift access to this variable. This may get moved intoPresentationManager
in a future update. - Adds missing documentation to
wail
method. - Other minor changes to how code is ordered in Siren.swift
Thanks to @kamrankhan07 for his extensive testing of Siren v4.0.0 and for finding the the alert layering issue.