Skip to content

Bump github.com/kean/nuke from 12.8.0 to 13.0.4#2453

Open
dependabot[bot] wants to merge 1 commit intomainfrom
dependabot/swift/github.com/kean/nuke-13.0.4
Open

Bump github.com/kean/nuke from 12.8.0 to 13.0.4#2453
dependabot[bot] wants to merge 1 commit intomainfrom
dependabot/swift/github.com/kean/nuke-13.0.4

Conversation

@dependabot
Copy link
Copy Markdown

@dependabot dependabot Bot commented on behalf of github Apr 27, 2026

Bumps github.com/kean/nuke from 12.8.0 to 13.0.4.

Release notes

Sourced from github.com/kean/nuke's releases.

Nuke 13.0.4

  • Add missing @ImagePipelineActor isolation to the new willLoadData method in ImagePipeline.Delegate to avoid thread hops
  • Minor performance improvements

Nuke 13.0.3

  • Minor performance optimizations
  • Remove a few @unchecked Sendable annotations
  • Deprecate ImagePipeline.Configuration.maximumDecodedImageSize and ImageDecodingContext.maximumDecodedImageSize. The automatic downscaling implementation has been removed; setting these values has no effect. Use ImageRequest.ThumbnailOptions to control decoded image size on a per-request basis

Nuke 13.0.2

  • Fix ImageDecoders.Default double-applying EXIF orientation when downscaling images that exceed maximumDecodedImageSize
  • Fix the default maximumDecodedImageSize being applied too aggressively

Nuke 13.0.1

  • Fix ThumbnailOptions double-applying EXIF orientation when createThumbnailWithTransform is enabled – kean/Nuke#870
  • Fix Xcode 26.0 compatibility – kean/Nuke#871

Nuke 13.0

Nuke 13 achieves full Data Race Safety by migrating all pipeline work to Swift Concurrency, replacing DispatchQueue and OperationQueue with a @globalActor-based synchronization model. It also ships over 10 new APIs, including progressive preview policies, a willLoadData auth hook, memory size limits, and type-safe ImageRequest options.

Requirements

  • Minimum supported Xcode version: 26.0.
  • Minimum required platforms: iOS 15.0, watchOS 8.0, macOS 12.0, tvOS 13.0, visionOS 1.0

Quality

The test suite was rewritten in Swift Testing with Swift 6 mode enabled and significantly expanded. Despite the additional tests, the suite is 3x faster thanks to the parallelization.

Version Source lines Tests Test lines Coverage Test Time
Nuke 13.0 4,669 768 8,509 96.0% 1.3s
Nuke 12.9 4,589 496 6,167 92.4% 3.5s

Concurrency & Data Race Safety

The codebase is migrated to Swift Concurrency and supports Data Race Safety, with some minor exceptions that will be addressed in the future iterations.

  • Replace the internal serial DispatchQueue with a @globalActor (ImagePipelineActor) for pipeline synchronization, making thread-safety compiler-enforced. The actor is public so that custom ImagePipeline.Delegate implementations can use it when needed to reduce thread hops
  • Replace OperationQueue-based scheduling with a custom TaskQueue synchronized on ImagePipelineActor. Background operations like image processing and decoding now run on the default Swift Concurrency executors, eliminating unnecessary thread hops. The entire pipeline is now a good Swift Concurrency citizen
  • Add typed throws (throws(ImagePipeline.Error)) to ImageTask.image, ImageTask.response, ImagePipeline.image(for:), and ImagePipeline.data(for:). Add ImagePipeline.Error.cancelled case. Cancellation now throws this instead of CancellationError.
  • Change userInfo type from [UserInfoKey: Any] to [UserInfoKey: any Sendable] in both ImageRequest and ImageContainer
  • Add @MainActor @Sendable to completion-based loadImage/loadData closure parameters
  • Add @MainActor @Sendable to progress and completion closures in NukeExtensions loadImage functions
  • Add @MainActor @Sendable to all callback closures in NukeUI: FetchImage.onStart/onCompletion, LazyImage.onStart/onCompletion modifiers, LazyImageView.onStart/onPreview/onProgress/onSuccess/onFailure/onCompletion
  • Eliminate an actor hop during ImageTask startup, reducing per-request overhead
  • Synchronize ResumableDataStorage on ImagePipelineActor, replacing NSLock with actor isolation and removing @unchecked Sendable.
  • Convert unit tests to Swift Testing and enable Swift 6 mode for all tests

New Features

... (truncated)

Changelog

Sourced from github.com/kean/nuke's changelog.

Release History

Version Date Swift Xcode Platforms
13.0 Mar 22, 2026 6.2 26.0 iOS 15.0, watchOS 8.0, macOS 12.0, tvOS 13.0, visionOS 1.0
12.0 Mar 4, 2023 5.7 14.1 iOS 13.0, watchOS 6.0, macOS 10.15, tvOS 13.0
11.0 Jul 20, 2022 5.6 13.3 iOS 13.0, watchOS 6.0, macOS 10.15, tvOS 13.0
10.0 June 1, 2021 5.3 12.0 iOS 11.0, watchOS 4.0, macOS 10.13, tvOS 11.0
9.0 May 20, 2020 5.1 11.0 iOS 11.0, watchOS 4.0, macOS 10.13, tvOS 11.0
8.0 July 8, 2019 5.0 10.2 iOS 10.0, watchOS 3.0, macOS 10.12, tvOS 10.0
7.6 Apr 7, 2019 4.2 10.1 iOS 10.0, watchOS 3.0, macOS 10.12, tvOS 10.0
6.0 Dec 23, 2017 4.0 9.2 iOS 9.0, watchOS 2.0, macOS 10.11, tvOS 9.0
5.0 Feb 1, 2017 3.0 8.0 iOS 9.0, watchOS 2.0, macOS 10.11, tvOS 9.0
4.0 Sep 19, 2016 3.0 8.0 iOS 9.0, watchOS 2.0, macOS 10.11, tvOS 9.0
3.0 Mar 26, 2016 2.2 7.3 iOS 8.0, watchOS 2.0, macOS 10.9, tvOS 9.0
2.0 Feb 6, 2016 2.0 7.1 iOS 8.0, watchOS 2.0, macOS 10.9, tvOS 9.0
1.0 Oct 18, 2015 2.0 7.0 iOS 8.0, watchOS 2.0, macOS 10.9
0.2 Sep 18, 2015 2.0 7.0 iOS 8.0, watchOS 2.0

Nuke 13

Nuke 13.0.4

Apr 26, 2026

  • Add missing @ImagePipelineActor isolation to the new willLoadData method in ImagePipeline.Delegate to avoid thread hops
  • Minor other performance improvements

Nuke 13.0.3

Apr 26, 2026

  • Minor performance optimizations
  • Eliminate a few @unchecked Sendable annotations
  • Deprecate ImagePipeline.Configuration.maximumDecodedImageSize and ImageDecodingContext.maximumDecodedImageSize. The automatic downscaling implementation has been removed; setting these values has no effect. Use ImageRequest.ThumbnailOptions to control decoded image size on a per-request basis

Nuke 13.0.2

Apr 14, 2026

  • Fix ImageDecoders.Default double-applying EXIF orientation when downscaling images that exceed maximumDecodedImageSize
  • Fix the default maximumDecodedImageSize being applied too aggressively

Nuke 13.0.1

Mar 29, 2026

  • Fix ThumbnailOptions double-applying EXIF orientation when createThumbnailWithTransform is enabled – kean/Nuke#870
  • Fix Xcode 26.0 compatibility – kean/Nuke#871

... (truncated)

Commits
  • 2c5f7a3 Version 13.0.4
  • eeacadb Optimize away isThumbnailKey
  • eb63e86 Remove dictionary lookup when managing outstanding tasks
  • d735884 Make AsyncTask.Subscription a class
  • 1ae4384 Remove AsyncThrowingStream usage (and overhead)
  • edcff16 Skip willLoadData entirely if default delegate
  • 320698a Add ImagePipelineAncor isolation to willLoadData
  • 3d69669 Update CHANGELOG
  • 90e17d6 Update README.md
  • cf58261 Version 13.0.3
  • Additional commits viewable in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Bumps [github.com/kean/nuke](https://github.com/kean/Nuke) from 12.8.0 to 13.0.4.
- [Release notes](https://github.com/kean/Nuke/releases)
- [Changelog](https://github.com/kean/Nuke/blob/main/CHANGELOG.md)
- [Commits](kean/Nuke@12.8.0...2c5f7a3)

---
updated-dependencies:
- dependency-name: github.com/kean/nuke
  dependency-version: 13.0.4
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file swift_package_manager Pull requests that update swift_package_manager code labels Apr 27, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file swift_package_manager Pull requests that update swift_package_manager code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants