Skip to content

Commit

Permalink
Version 9.5.0
Browse files Browse the repository at this point in the history
  • Loading branch information
kean committed Apr 4, 2021
1 parent abdb7f0 commit 200016d
Show file tree
Hide file tree
Showing 5 changed files with 15 additions and 15 deletions.
6 changes: 3 additions & 3 deletions Documentation/Guides/image-pipeline.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ If the image is stored in the [memory cache](#memory-cache), it is displayed imm

This section describes the basic steps that pipeline performs when delivering an image.

> As a visual aid, use this [Block Diagram](https://github.com/kean/Nuke/blob/9.3.0/Documentation/Assets/image-pipeline.svg) (warning: the data cache portion does not yet reflect changes from Nuke 9).
> As a visual aid, use this [Block Diagram](https://github.com/kean/Nuke/blob/9.5.0/Documentation/Assets/image-pipeline.svg) (warning: the data cache portion does not yet reflect changes from Nuke 9).
1. Check if the requested image is already stored in the [memory cache](#memory-cache). If it is, deliver it to the client.
2. Check if the encoded requested image is stored in the disk cache (this feature is disabled by default). If yes, the image is
Expand Down Expand Up @@ -61,7 +61,7 @@ The `URLSession` class natively supports the following URL schemes: `data`, `fil

Most developers either implement their own networking layer or use a third-party framework. Nuke supports both of these workflows. You can integrate your custom networking layer by implementing `DataLoading` protocol.

> See [Third Party Libraries](https://github.com/kean/Nuke/blob/9.3.0/Documentation/Guides/third-party-libraries.md#using-other-caching-libraries) guide to learn more. See also [Alamofire Plugin](https://github.com/kean/Nuke-Alamofire-Plugin).
> See [Third Party Libraries](https://github.com/kean/Nuke/blob/9.5.0/Documentation/Guides/third-party-libraries.md#using-other-caching-libraries) guide to learn more. See also [Alamofire Plugin](https://github.com/kean/Nuke-Alamofire-Plugin).
### Aggressive LRU Disk Cache

Expand Down Expand Up @@ -150,7 +150,7 @@ For every image request, the system needs to fetch the following resources:
- One or more processed images (depending on the number of processors)
- Decompressed image (if needed)

In Nuke, each of the resources is represented by a task ([`Task`](https://github.com/kean/Nuke/blob/9.2.4/Sources/Task.swift)). A task retrieves its resource incrementally, enabling progressive image decoding (see [progressive JPEG](https://github.com/kean/Nuke/blob/9.3.0/Documentation/Guides/image-formats.md#progressive-jpeg)).
In Nuke, each of the resources is represented by a task ([`Task`](https://github.com/kean/Nuke/blob/9.2.4/Sources/Task.swift)). A task retrieves its resource incrementally, enabling progressive image decoding (see [progressive JPEG](https://github.com/kean/Nuke/blob/9.5.0/Documentation/Guides/image-formats.md#progressive-jpeg)).

When the request is started, the system creates a chain of tasks needed to produce the final image. Tasks send events *upstream*: data chunks, image scans, progress updates, errors. Tasks send priority updates and cancellation requests *downstream*.

Expand Down
2 changes: 1 addition & 1 deletion Documentation/Guides/third-party-libraries.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ By default, Nuke uses a `Foundation.URLCache` which is a part of Foundation URL

> See [Image Caching Guide](https://kean.blog/post/image-caching) to learn more about URLCache, HTTP caching, and more
> See [Performance Guide: On-Disk Caching](https://github.com/kean/Nuke/blob/9.3.0/Documentation/Guides/performance-guide.md#on-disk-caching) for more info
> See [Performance Guide: On-Disk Caching](https://github.com/kean/Nuke/blob/9.5.0/Documentation/Guides/performance-guide.md#on-disk-caching) for more info
Nuke can be used with any third party caching library.

Expand Down
2 changes: 1 addition & 1 deletion Nuke.podspec
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
Pod::Spec.new do |s|
s.name = 'Nuke'
s.version = '9.4.1'
s.version = '9.5.0'
s.summary = 'A powerful image loading and caching system'
s.description = <<-EOS
A powerful image loading and caching system which makes simple tasks like loading images into views extremely simple, while also supporting more advanced features for more demanding apps.
Expand Down
4 changes: 2 additions & 2 deletions Nuke.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -1508,7 +1508,7 @@
"@executable_path/Frameworks",
"@loader_path/Frameworks",
);
MARKETING_VERSION = 9.4.1;
MARKETING_VERSION = 9.5.0;
OTHER_SWIFT_FLAGS = "-D DEBUG -D TRACK_ALLOCATIONS";
PRODUCT_BUNDLE_IDENTIFIER = com.github.kean.Nuke;
PRODUCT_NAME = Nuke;
Expand All @@ -1530,7 +1530,7 @@
"@executable_path/Frameworks",
"@loader_path/Frameworks",
);
MARKETING_VERSION = 9.4.1;
MARKETING_VERSION = 9.5.0;
PRODUCT_BUNDLE_IDENTIFIER = com.github.kean.Nuke;
PRODUCT_NAME = Nuke;
SKIP_INSTALL = YES;
Expand Down
16 changes: 8 additions & 8 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
<img src="https://github.com/kean/Nuke/workflows/Nuke%20CI/badge.svg">
</p>

> Upgrading from the previous version? Use a [**Migration Guide**](https://github.com/kean/Nuke/blob/9.3.0/Documentation/Migrations).
> Upgrading from the previous version? Use a [**Migration Guide**](https://github.com/kean/Nuke/blob/9.5.0/Documentation/Migrations).
Nuke provides a simple and efficient way to download and display images in your app. Behind its clear and concise API is an advanced architecture which enables its unique features and offers virtually unlimited possibilities for customization. The primary Nuke feature is [performance](https://kean.blog/post/nuke-9). Nuke is trusted by $1B+ apps.

Expand All @@ -38,14 +38,14 @@ Nuke is easy to learn and use. Here is an overview of its APIs and features:
- **Advanced Features**[Prefetching Images](#image-prefetching) · [Progressive Decoding](#progressive-decoding)
- [**Extensions**](#h_plugins)[FetchImage](#fetch-image) · [Builder](#builder) · [Combine](#combine) · [RxNuke](#rxnuke) · [And More](#h_plugins)

To learn more see a full [**API Reference**](https://kean-org.github.io/docs/nuke/reference/9.3.0/), and check out the [demo project](https://github.com/kean/NukeDemo). When you are ready to install, follow the [**Installation Guide**](https://github.com/kean/Nuke/blob/9.3.0/Documentation/Guides/installation-guide.md). See [**Requirements**](#h_requirements) for a list of supported platforms. If you encounter any issues, please refer to [**FAQ**](https://github.com/kean/Nuke/blob/master/Documentation/Guides/faq.md) or [**Troubleshooting Guide**](https://github.com/kean/Nuke/blob/9.3.0/Documentation/Guides/troubleshooting.md).
To learn more see a full [**API Reference**](https://kean-org.github.io/docs/nuke/reference/9.5.0/), and check out the [demo project](https://github.com/kean/NukeDemo). When you are ready to install, follow the [**Installation Guide**](https://github.com/kean/Nuke/blob/9.5.0/Documentation/Guides/installation-guide.md). See [**Requirements**](#h_requirements) for a list of supported platforms. If you encounter any issues, please refer to [**FAQ**](https://github.com/kean/Nuke/blob/master/Documentation/Guides/faq.md) or [**Troubleshooting Guide**](https://github.com/kean/Nuke/blob/9.5.0/Documentation/Guides/troubleshooting.md).

<img src="https://img.shields.io/badge/supports-Swift%20Package%20Manager%2C%20CocoaPods%2C%20Carthage-green.svg">

To learn more about the pipeline and the supported formats, see the dedicated guides.

- [**Image Formats**](https://github.com/kean/Nuke/blob/9.3.0/Documentation/Guides/image-formats.md)[Progressive JPEG](https://github.com/kean/Nuke/blob/9.3.0/Documentation/Guides/image-formats.md#progressive-jpeg) · [HEIF](https://github.com/kean/Nuke/blob/9.3.0/Documentation/Guides/image-formats.md#heif) · [GIF](https://github.com/kean/Nuke/blob/9.3.0/Documentation/Guides/image-formats.md#gif) · [SVG](https://github.com/kean/Nuke/blob/9.3.0/Documentation/Guides/image-formats.md#svg) · [WebP](https://github.com/kean/Nuke/blob/9.3.0/Documentation/Guides/image-formats.md#webp)
- [**Guides**](https://github.com/kean/Nuke/blob/9.3.0/Documentation/Guides)[Image Pipeline](https://github.com/kean/Nuke/blob/9.3.0/Documentation/Guides/image-pipeline.md) · [Performance](https://github.com/kean/Nuke/blob/9.3.0/Documentation/Guides/performance-guide.md) · [Third-Party Libraries](https://github.com/kean/Nuke/blob/9.3.0/Documentation/Guides/third-party-libraries.md)
- [**Image Formats**](https://github.com/kean/Nuke/blob/9.5.0/Documentation/Guides/image-formats.md)[Progressive JPEG](https://github.com/kean/Nuke/blob/9.5.0/Documentation/Guides/image-formats.md#progressive-jpeg) · [HEIF](https://github.com/kean/Nuke/blob/9.5.0/Documentation/Guides/image-formats.md#heif) · [GIF](https://github.com/kean/Nuke/blob/9.5.0/Documentation/Guides/image-formats.md#gif) · [SVG](https://github.com/kean/Nuke/blob/9.5.0/Documentation/Guides/image-formats.md#svg) · [WebP](https://github.com/kean/Nuke/blob/9.5.0/Documentation/Guides/image-formats.md#webp)
- [**Guides**](https://github.com/kean/Nuke/blob/9.5.0/Documentation/Guides)[Image Pipeline](https://github.com/kean/Nuke/blob/9.5.0/Documentation/Guides/image-pipeline.md) · [Performance](https://github.com/kean/Nuke/blob/9.5.0/Documentation/Guides/performance-guide.md) · [Third-Party Libraries](https://github.com/kean/Nuke/blob/9.5.0/Documentation/Guides/third-party-libraries.md)
- [**Articles**](https://kean.blog)[Performance](https://kean.blog/post/nuke-9) · [Concurrency](https://kean.blog/post/concurrency) · [Caching](https://kean.blog/post/image-caching) · [Prefetching](https://kean.blog/post/image-preheating)

If you'd like to contribute to Nuke see [**Contributing**](#h_contribute).
Expand All @@ -64,7 +64,7 @@ Nuke.loadImage(with: url, into: imageView)

Nuke will check if the image exists in the memory cache, and if it does, will instantly display it. If not, the image data will be loaded, decoded, processed, and decompressed in the background.

> See [Image Pipeline Guide](https://github.com/kean/Nuke/blob/9.3.0/Documentation/Guides/image-pipeline.md) to learn how images are downloaded and processed.
> See [Image Pipeline Guide](https://github.com/kean/Nuke/blob/9.5.0/Documentation/Guides/image-pipeline.md) to learn how images are downloaded and processed.
### In a Table View

Expand Down Expand Up @@ -252,7 +252,7 @@ task.priority = .high

If you want to build a system that fits your specific needs, you won't be disappointed. There are a _lot of things_ to tweak. You can set custom data loaders and caches, configure image encoders and decoders, change the number of concurrent operations for each individual stage, disable and enable features like deduplication and rate limiting, and more.

> To learn more see the inline documentation for `ImagePipeline.Configuration` and [Image Pipeline Guide](https://github.com/kean/Nuke/blob/9.3.0/Documentation/Guides/image-pipeline.md).
> To learn more see the inline documentation for `ImagePipeline.Configuration` and [Image Pipeline Guide](https://github.com/kean/Nuke/blob/9.5.0/Documentation/Guides/image-pipeline.md).
<img align="right" src="https://user-images.githubusercontent.com/1567433/59148462-94f60280-8a09-11e9-906a-6c7209b8f8c8.png" width="360"/>

Expand Down Expand Up @@ -447,7 +447,7 @@ prefetcher.startPrefetching(with: urls)
prefetcher.stopPrefetching(with: urls)
```

> To learn more about other performance optimizations you can do, see [Performance Guide](https://github.com/kean/Nuke/blob/9.3.0/Documentation/Guides/performance-guide.md).
> To learn more about other performance optimizations you can do, see [Performance Guide](https://github.com/kean/Nuke/blob/9.5.0/Documentation/Guides/performance-guide.md).
Keep in mind that prefetching takes up users' data and puts extra pressure on CPU and memory. To reduce the CPU and memory usage, you have an option to choose only the disk cache as a prefetching destination:

Expand Down Expand Up @@ -603,7 +603,7 @@ Observable.concat(pipeline.loadImage(with: lowResUrl).orEmpty,
| Nuke 9.0 | Swift 5.1 | Xcode 11.0 | iOS 11.0 / watchOS 4.0 / macOS 10.13 / tvOS 11.0 |
| Nuke 8.0 | Swift 5.0 | Xcode 10.2 | iOS 10.0 / watchOS 3.0 / macOS 10.12 / tvOS 10.0 |

See [Installation Guide](https://github.com/kean/Nuke/blob/9.3.0/Documentation/Guides/installation-guide.md#h_requirements) for information about the older versions.
See [Installation Guide](https://github.com/kean/Nuke/blob/9.5.0/Documentation/Guides/installation-guide.md#h_requirements) for information about the older versions.

# License

Expand Down

0 comments on commit 200016d

Please sign in to comment.