Skip to content

Releases: kean/Pulse

Pulse 5.1.2

11 Oct 01:39
Compare
Choose a tag to compare

What's Changed

  • Fix an issue with isAutomaticConnectionEnabled not starting the browser the first time it's enabled
  • Fix crash when exporting HAR file by @rounak in #299
  • Fix concurrency issue in StoreDetailsViewModel by @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

20 Sep 00:36
d679320
Compare
Choose a tag to compare

What's Changed

  • Implement deep JSON redaction by @briancordanyoung in #292
  • Fix a CoreData multithreading issue in LoggerStore.info() by @ejensen in #293
  • Fix ConsoleView focus state clipping on tvOS by @ejensen in #295
  • Revert the removal of the NetworkLogger’s convenience initializer by @ejensen in #294

New Contributors

Pulse 5.1

17 Sep 02:00
Compare
Choose a tag to compare

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.

Screenshot 2024-09-15 at 7 44 04 PM

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.

Screenshot 2024-09-15 at 7 45 33 PM

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:) and LoggerStore/tasks(sortDescriptors:predicate:). Deprecate allTasks and allMessages.
  • Fix an issue with thumbnails for image responses being too aggressively compressed and add LoggerStore.ThumbnailOptions to 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 .inMemory store option, which is now guaranteed to not write anything on disk, including the store manifest. It also no longer requires the .create option like the regular store and the storeURL parameter can point to anything, including /dev/null.
  • Deprecate UserSettings.displayHeaders (user new ConsoleListDisplaySettings instead)
  • Fix xcprivacy warnings when used with SwiftPM, thanks to @alphatroya
  • Performance optimizations

Pulse 5.0

05 Sep 02:37
Compare
Choose a tag to compare

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 PulseProxy module 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 URLSessionProtocol and URLSessionProxy as 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.isAutomaticConnectionEnabled property to allow automatic connection to Pulse apps
  • Add and document the new public MockingURLProtocol used to enable network debugging features of Pulse apps. It is registered automatically with the new URLSessionProxy
  • Add @MainActor to a few main-thread confined types like RemoteLogger
  • Add new UserSettings properties: isRemoteLoggingHidden and allowedShareStoreOutputs,
  • Increase the default LoggerStore size limit from 128 MB to 256 MB and response body size limit from 5 MB to 8 MB
  • Add support for changing LoggerStore.shared.configuration to make it easier to configure the default store
  • NetworkLogger.shared and LoggerStore.shared can now be both replaced with your custom instances and in any order with any other operations.
  • UpdateRemoteLogger.Connection to perform work on the background queue so that Pulse now runs almost no code on the main queue
  • Make LoggerStore.info an async method
  • Fix export of PDF in dark mode (#288), thanks to @ilyalehchylin
  • LoggerStore/export no longer returns LoggerStore.Info
  • Add .create and .sweep options to the default LoggerStore init`
  • 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:) and LoggerStore.pins
  • Remove support for exporting store as a package (DocumentType.package)
  • Bug fixes and performance improvements

Pusle 4.2.7

24 Jun 00:13
Compare
Choose a tag to compare

What's Changed

  • Remove usage of APIs requiring iOS 17 at runtime by @hallee in #265

New Contributors

Pulse 4.2.6

22 Jun 16:46
Compare
Choose a tag to compare

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 Identifiable conformances to Pulse to remove the "retroactive" conformance warnings in Swift 6

New Contributors

Pulse 4.2.5

20 Jun 02:09
Compare
Choose a tag to compare
  • Fix #263 – crash when tapping "Show All" in a grouped list of logs

Pulse 4.2.4

08 Jun 19:59
Compare
Choose a tag to compare

What's Changed

New Contributors

Pulse 4.2.3

03 Jun 23:59
Compare
Choose a tag to compare

What's Changed

  • Fix: wrong background context for filtering entities during export by @jasesuperhero in #259

New Contributors

Pulse 4.2.2

02 Jun 15:40
Compare
Choose a tag to compare
  • Fix #257, an issue with search only showing top 10 results. If there are more results, it will now indicate that in the UI and will load them automatically when you scroll to the bottom of the list.