Releases: kean/Pulse
Pulse 5.1.4
What's Changed
- fixed har export issue by @abhimaanmadhav in #319
- fix: Resolve RichTextView scrolling issue & Prevent app freezing on tvOS (issue: #308) by @lsh424 in #310
- Handle InputStream.read failures by @kabiroberai in #332
- Disable "Report" & "Settings" options in prompts by @parmar-mehul in #331
New Contributors
- @abhimaanmadhav made their first contribution in #319
- @lsh424 made their first contribution in #310
- @parmar-mehul made their first contribution in #331
Pulse 5.1.3
What's Changed
- Fix deadlock in NetworkLogger by @kabiroberai in #312
New Contributors
- @kabiroberai made their first contribution in #312
Full Changelog: 5.1.2...5.1.3
Pulse 5.1.2
What's Changed
- Fix an issue with
isAutomaticConnectionEnablednot starting the browser the first time it's enabled - Fix crash when exporting HAR file by @rounak in #299
- Fix concurrency issue in
StoreDetailsViewModelby @ejensen in #302 - Update the deep search. It will now show all search scopes found and only one match per scope. You can tap on a match to see the scope with a prepopulated search query to see the remaining items.
- Fix an issue with deep search not working for request and response headers
New Contributors
Pulse 5.1.1
What's Changed
- Implement deep JSON redaction by @briancordanyoung in #292
- Fix a CoreData multithreading issue in
LoggerStore.info()by @ejensen in #293 - Fix
ConsoleViewfocus state clipping on tvOS by @ejensen in #295 - Revert the removal of the
NetworkLogger’s convenience initializer by @ejensen in #294
New Contributors
- @briancordanyoung made their first contribution in #292
Pulse 5.1
Appearance
Pulse 5.1 features an enhanced design for console cells with improved information hierarchy. It has multiple tweaks, but the main change is how the URLs are formatted. By default, the console will now show only the path with a host as a secondary field below it.
Customization
The new cells are now also fully customizable using the new ConsoleListDisplaySettings type. And if you are using Pulse Pro (available on App Store), you can configure them using the new "Appearance" settings screen.
CocoaPods
With CocoaPods going into maintenance mode, new Pulse releases will no longer be published to CocoaPods Trunk. However, the Podpsec files will continue to be available for now, and you can install Pulse using CocoaPods by pointing directly to this repo.
Other Changes
- Add new convenience APIs for accessing messages and tasks stored in the logger:
LoggerStore/message(sortDescriptors:predicate:)andLoggerStore/tasks(sortDescriptors:predicate:). DeprecateallTasksandallMessages. - Fix an issue with thumbnails for image responses being too aggressively compressed and add
LoggerStore.ThumbnailOptionsto make it customizable - Update image response viewer to show thumbnails at a 2x resolution
- Display thumbnail resolution in the response viewer
- Fix an issue with app icons send too blurry to the Pulse Pro app
- Improve support for
.inMemorystore option, which is now guaranteed to not write anything on disk, including the store manifest. It also no longer requires the.createoption like the regular store and thestoreURLparameter can point to anything, including/dev/null. - Deprecate
UserSettings.displayHeaders(user newConsoleListDisplaySettingsinstead) - Fix xcprivacy warnings when used with SwiftPM, thanks to @alphatroya
- Performance optimizations
Pulse 5.0
Announcement
Pulse macOS and iOS apps are now available on the App Store. Learn more in the announcement.
Requirements
- Swift 5.10 (Xcode 15.3)
- iOS 15, tvOS 15, macOS 12, watchOS 8, visionOS 1
Changes
Pulse SDK 5.0 greatly simplifies the integration experience and introduces two new ways for capturing network traffic.
- Option 1 (Quickest) Add a new
PulseProxymodule for automatic capturing of all network traffic from the app with a single line – the quickest way to try Pulse
import PulseProxy
#if DEBUG
NetworkLogger.enableProxy()
#endif- Option 2 (Recommended) Add new
URLSessionProtocolandURLSessionProxyas a new recommended way to track network traffic and enable other Pulse features like response mocking
#if DEBUG
let session: URLSessionProtocol = URLSessionProxy(configuration: .default)
#else
let session: URLSessionProtocol = URLSession(configuration: .default)
#endif- Learn more about the new network logging method in the fully rewritten Getting Started and Network Logging & Debugging guides
- Add compatibility with Swift 6 (not official until Xcode 16 RC ships)
- Reduce the size of the framework by nearly 15%
- Add
RemoteLogger.isAutomaticConnectionEnabledproperty to allow automatic connection to Pulse apps - Add and document the new public
MockingURLProtocolused to enable network debugging features of Pulse apps. It is registered automatically with the newURLSessionProxy - Add
@MainActorto a few main-thread confined types likeRemoteLogger - Add new
UserSettingsproperties:isRemoteLoggingHiddenandallowedShareStoreOutputs, - Increase the default
LoggerStoresize limit from 128 MB to 256 MB and response body size limit from 5 MB to 8 MB - Add support for changing
LoggerStore.shared.configurationto make it easier to configure the default store NetworkLogger.sharedandLoggerStore.sharedcan now be both replaced with your custom instances and in any order with any other operations.- Update
RemoteLogger.Connectionto perform work on the background queue so that Pulse now runs almost no code on the main queue - Make
LoggerStore.infoan async method - Fix export of PDF in dark mode (#288), thanks to @ilyalehchylin
LoggerStore/exportno longer returnsLoggerStore.Info- Add
.createand.sweepoptions to the defaultLoggerStoreinit` - Remove the console for MacOS as it is no longer feasible to maintain the reusable code between Pulse SDK and Pulse standalone app for Mac. If you are using the console for macOS, please consider using the standalone Pulse app.
- Remove some of the text-based search filters, which wasn’t the right UX for a phone. In upcoming versions, it will be replaced with convenient controls.
- Remove deprecated
LoggerStore.copy(to:)andLoggerStore.pins - Remove support for exporting store as a package (
DocumentType.package) - Bug fixes and performance improvements
Pusle 4.2.7
Pulse 4.2.6
What's Changed
- Disable Swift 6 compatibility in Swift package to ensure Pulse compiles if added as a dependency under Xcode 16 by @NachoSoto in #264
- Fix some of the Swift 6 errors (more work is needed and will be done in the upcoming versions)
- Move
Identifiableconformances toPulseto remove the "retroactive" conformance warnings in Swift 6
New Contributors
- @NachoSoto made their first contribution in #264
Pulse 4.2.5
- Fix #263 – crash when tapping "Show All" in a grouped list of logs