Swiftpack.co - Search 15,918 Swift Packages

We do our best to crawl github for new packages, but you can also register a package manually.

jonrohan Something's broken? Yell at me @ptrpavlik. Praise and feedback (and money) is also welcome.

The Best of Last 7 Days

realm/SwiftLint 0.51.0
A tool to enforce Swift style and conventions.
⭐️ 17,189
🕓 4 days ago
🔖 Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
0.51.0: bzllint
4 days ago
## 0.51.0: bzllint #### Breaking * Deprecate the `unused_capture_list` rule in favor of the Swift compiler warning. At the same time, make it an opt-in rule. [Cyberbeni](https://github.com/Cyberbeni) [#4656](https://github.com/realm/SwiftLint/issues/4656) * Deprecate the `inert_defer` rule in favor of the Swift compiler warning. At the same time, make it an opt-in rule. [SimplyDanny](https://github.com/SimplyDanny) [#4615](https://github.com/realm/SwiftLint/issues/4615) #### Experimental * None. #### Enhancements * Add `duplicate_conditions` rule which warns when a condition is duplicated in separate branches of the same branching statement (if-else, or switch). [1in1](https://github.com/1in1) [#4666](https://github.com/realm/SwiftLint/issues/4666) * Add local links to rule descriptions to every rule listed in `Rule Directory.md`. [kattouf](https://github.com/kattouf) * Make forceExclude work with directly specified files. [jimmya](https://github.com/jimmya) [#4609](https://github.com/realm/SwiftLint/issues/4609) * Adds `all` pseudo-rule for `opt_in_rules` - enables all opt in rules that are not listed in `disabled_rules` [Martin Redington](https://github.com/mildm8nnered) [#4540](https://github.com/realm/SwiftLint/issues/4540) * Separate analyzer rules as an independent section in the rule directory of the reference. [Ethan Wong](https://github.com/GetToSet) [#4664](https://github.com/realm/SwiftLint/pull/4664) * Add rule identifier to output of Emoji reporter. [SimplyDanny](https://github.com/SimplyDanny) [#4707](https://github.com/realm/SwiftLint/issues/4707) * Interpret strings in `excluded` option of `identifier_name`, `type_name` and `generic_type_name` rules as regex. [Moly](https://github.com/kyounh12) [#4655](https://github.com/realm/SwiftLint/pull/4655) * Add new `direct_return` rule that triggers on `return` statements returning variables that have been declared in the statement before only. [SimplyDanny](https://github.com/SimplyDanny) * Add `period_spacing` opt-in rule that checks periods are not followed by 2 or more spaces in comments. [Julioacarrettoni](https://github.com/Julioacarrettoni) [#4624](https://github.com/realm/SwiftLint/pull/4624) * Allow to pass a rule identifier to the `swiftlint docs` command to open its specific documentation website, e.g. `swiftlint docs for_where`. [SimplyDanny](https://github.com/SimplyDanny) [#4707](https://github.com/realm/SwiftLint/issues/4707) * Allow new Quick APIs `aroundEach` and `justBeforeEach` for `quick_discouraged_call`. [David Steinacher](https://github.com/stonko1994) [#4626](https://github.com/realm/SwiftLint/issues/4626) * Add `relative-path` reporter to generate reports with relative file paths. [Roya1v](https://github.com/roya1v) [#4660](https://github.com/realm/SwiftLint/issues/4660) * Let `number_separator` rule trigger on misplaced separators, e.g. `10_00`. [SimplyDanny](https://github.com/SimplyDanny) [#4637](https://github.com/realm/SwiftLint/issues/4637) * Rewrite `multiline_arguments` rule using SwiftSyntax, ignoring trailing closures. [Marcelo Fabri](https://github.com/marcelofabri) [#3399](https://github.com/realm/SwiftLint/issues/3399) [#3605](https://github.com/realm/SwiftLint/issues/3605) * Speed up linting by up to 6% updating to use a newer version of `SwiftSyntax`. [JP Simard](https://github.com/jpsim) * Catch more valid `legacy_multiple` violations. [JP Simard](https://github.com/jpsim) * Catch more valid `no_magic_numbers` violations. [JP Simard](https://github.com/jpsim) * Add `blanket_disable_command` rule that checks whether rules are re-enabled after being disabled. [Martin Redington](https://github.com/mildm8nnered) [#4731](https://github.com/realm/SwiftLint/pull/4731) * Add `invalid_swiftlint_command` rule that validates `// swiftlint:enable` and `disable` commands. [Martin Redington](https://github.com/mildm8nnered) [#4546](https://github.com/realm/SwiftLint/pull/4546) * Improve `identifier_name` documentation. [Martin Redington](https://github.com/mildm8nnered) [#4767](https://github.com/realm/SwiftLint/issues/4767) * Adds `include_multiline_strings` option to `indentation_width` rule. [Martin Redington](https://github.com/mildm8nnered) [#4248](https://github.com/realm/SwiftLint/issues/4248) * Adds a new `summary` reporter, that displays the number of violations of each rule in a text table. [Martin Redington](https://github.com/mildm8nnered) #### Bug Fixes * Report violations in all `<scope>_length` rules when the error threshold is smaller than the warning threshold. [SimplyDanny](https://github.com/SimplyDanny) [#4645](https://github.com/realm/SwiftLint/issues/4645) * Consider custom attributes in `attributes` rule. [SimplyDanny](https://github.com/SimplyDanny) [#4599](https://github.com/realm/SwiftLint/issues/4599) * Fix whitespaces issue in auto-fix of `redundant_optional_initialization` rule when multiple variable declaration are involved. [SimplyDanny](https://github.com/SimplyDanny) [#4794](https://github.com/realm/SwiftLint/issues/4794) * Stop triggering `strict_fileprivate` rule on symbols implementing a protocol in the same file. [SimplyDanny](https://github.com/SimplyDanny) [#4692](https://github.com/realm/SwiftLint/issues/4692) * Fix false positives on `private_subject` rule when using subjects inside functions. [Marcelo Fabri](https://github.com/marcelofabri) [#4643](https://github.com/realm/SwiftLint/issues/4643) * Fix for compiler directives masking subsequent `opening_brace` violations. [Martin Redington](https://github.com/mildm8nnered) [#3712](https://github.com/realm/SwiftLint/issues/3712) * Rewrite `explicit_type_interface` rule with SwiftSyntax fixing a false-positive in if-case-let statements. [SimplyDanny](https://github.com/SimplyDanny) [#4548](https://github.com/realm/SwiftLint/issues/4548) * Stop triggering `unused_capture_list` on captured variable that is only referenced by a shorthand optional binding (`if let capturedVar { ... }`). [SimplyDanny](https://github.com/SimplyDanny) [#4804](https://github.com/realm/SwiftLint/issues/4804) * Ensure that negative literals in initializers do not trigger `no_magic_numbers` rule. [SimplyDanny](https://github.com/SimplyDanny) [#4677](https://github.com/realm/SwiftLint/issues/4677) * Fix caching of `indentation_width` rule. [SimplyDanny](https://github.com/SimplyDanny) [#4121](https://github.com/realm/SwiftLint/issues/4121) * Updated JUnit reporter to output error count and warning count. [patricks](https://github.com/patricks) [#4725](https://github.com/realm/SwiftLint/pull/4725) * Fix correction on `lower_acl_than_parent` rule for `open` declarations. [Marcelo Fabri](https://github.com/marcelofabri) [#4753](https://github.com/realm/SwiftLint/issues/4753) * Fix `void_return` rule to support async and async throws functions. [Mathias Schreck](https://github.com/lo1tuma) [#4772](https://github.com/realm/SwiftLint/issues/4772) * Fix false positives in `attributes` rule when using property wrappers with keypath arguments. [JP Simard](https://github.com/jpsim) * Fix for `superfluous_disable_command` not being completely disabled by `disable` commands. [Martin Redington](https://github.com/mildm8nnered) [#4788](https://github.com/realm/SwiftLint/issues/4788) * Fixed correction for `trailing_comma` rule wrongly removing trailing comments. [Martin Redington](https://github.com/mildm8nnered) [#4814](https://github.com/realm/SwiftLint/issues/4814) --- ### Using Bazel With bzlmod: ``` bazel_dep(name = "swiftlint", version = "0.51.0", repo_name = "SwiftLint") ``` Without bzlmod, put this in your `WORKSPACE`: <details> <summary>WORKSPACE</summary> ```python load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") http_archive( name = "build_bazel_rules_apple", sha256 = "9e26307516c4d5f2ad4aee90ac01eb8cd31f9b8d6ea93619fc64b3cbc81b0944", url = "https://github.com/bazelbuild/rules_apple/releases/download/2.2.0/rules_apple.2.2.0.tar.gz", ) load( "@build_bazel_rules_apple//apple:repositories.bzl", "apple_rules_dependencies", ) apple_rules_dependencies() load( "@build_bazel_rules_swift//swift:repositories.bzl", "swift_rules_dependencies", ) swift_rules_dependencies() load( "@build_bazel_rules_swift//swift:extras.bzl", "swift_rules_extra_dependencies", ) swift_rules_extra_dependencies() http_archive( name = "SwiftLint", sha256 = "8369ca218c4c898b7af202e2ec6180062396f659debca49a1d6c66902a3a37c3", url = "https://github.com/realm/SwiftLint/releases/download/0.51.0/bazel.tar.gz", ) load("@SwiftLint//bazel:repos.bzl", "swiftlint_repos") swiftlint_repos() load("@SwiftLint//bazel:deps.bzl", "swiftlint_deps") swiftlint_deps() ``` </details> Then you can run SwiftLint in the current directory with this command: ```console bazel run @SwiftLint//:swiftlint -- --help ```
0.51.0-rc.2: bzllint
5 weeks ago
This is a prerelease version. It won't be published to Homebrew, CocoaPods or bzlmod. But there are many other ways to install: * Downloading the attached `SwiftLint.pkg` installer and launching it * Downloading the attached `portable_swiftlint.zip` archive, extracting it and moving the binary from `portable_swiftlint/swiftlint` to `/usr/local/bin` or elsewhere in your `PATH` * Using [Mint](https://github.com/yonaskolb/Mint): `mint install realm/[email protected]` * Cloning and building from source: `git clone https://github.com/realm/SwiftLint.git && cd SwiftLint && git checkout 0.51.0-rc.2 && make install` * Docker: ```docker run -it -v `pwd`:`pwd` -w `pwd` ghcr.io/realm/swiftlint:0.51.0-rc.2``` * Bazel: See instructions at the bottom Changes from 0.50.3: https://github.com/realm/SwiftLint/compare/0.50.3...0.51.0-rc.2 Changes from 0.51.0-rc.1: https://github.com/realm/SwiftLint/compare/0.51.0-rc.1...0.51.0-rc.2 --- #### Breaking * Deprecate the `unused_capture_list` rule in favor of the Swift compiler warning. At the same time, make it an opt-in rule. [Cyberbeni](https://github.com/Cyberbeni) [#4656](https://github.com/realm/SwiftLint/issues/4656) * Deprecate the `inert_defer` rule in favor of the Swift compiler warning. At the same time, make it an opt-in rule. [SimplyDanny](https://github.com/SimplyDanny) [#4615](https://github.com/realm/SwiftLint/issues/4615) #### Experimental * None. #### Enhancements * Add local links to rule descriptions to every rule listed in `Rule Directory.md`. [kattouf](https://github.com/kattouf) * Make forceExclude work with directly specified files. [jimmya](https://github.com/jimmya) [#issue_number](https://github.com/realm/SwiftLint/issues/4609) * Separate analyzer rules as an independent section in the rule directory of the reference. [Ethan Wong](https://github.com/GetToSet) [#4664](https://github.com/realm/SwiftLint/pull/4664) * Add rule identifier to output of Emoji reporter. [SimplyDanny](https://github.com/SimplyDanny) [#4707](https://github.com/realm/SwiftLint/issues/4707) * Interpret strings in `excluded` option of `identifier_name`, `type_name` and `generic_type_name` rules as regex. [Moly](https://github.com/kyounh12) [#4655](https://github.com/realm/SwiftLint/pull/4655) * Add new `direct_return` rule that triggers on `return` statements returning variables that have been declared in the statement before only. [SimplyDanny](https://github.com/SimplyDanny) * Add `period_spacing` opt-in rule that checks periods are not followed by 2 or more spaces in comments. [Julioacarrettoni](https://github.com/Julioacarrettoni) [#4624](https://github.com/realm/SwiftLint/pull/4624) * Allow to pass a rule identifier to the `swiftlint docs` command to open its specific documentation website, e.g. `swiftlint docs for_where`. [SimplyDanny](https://github.com/SimplyDanny) [#4707](https://github.com/realm/SwiftLint/issues/4707) * Allow new Quick APIs `aroundEach` and `justBeforeEach` for `quick_discouraged_call`. [David Steinacher](https://github.com/stonko1994) [#4626](https://github.com/realm/SwiftLint/issues/4626) * Add `relative-path` reporter to generate reports with relative file paths. [Roya1v](https://github.com/roya1v) [#4660](https://github.com/realm/SwiftLint/issues/4660) * Let `number_separator` rule trigger on misplaced separators, e.g. `10_00`. [SimplyDanny](https://github.com/SimplyDanny) [#4637](https://github.com/realm/SwiftLint/issues/4637) * Rewrite `multiline_arguments` rule using SwiftSyntax, ignoring trailing closures. [Marcelo Fabri](https://github.com/marcelofabri) [#3399](https://github.com/realm/SwiftLint/issues/3399) [#3605](https://github.com/realm/SwiftLint/issues/3605) * Speed up linting by up to 6% updating to use a newer version of `SwiftSyntax`. [JP Simard](https://github.com/jpsim) * Catch more valid `legacy_multiple` violations. [JP Simard](https://github.com/jpsim) * Catch more valid `no_magic_numbers` violations. [JP Simard](https://github.com/jpsim) #### Bug Fixes * Report violations in all `<scope>_length` rules when the error threshold is smaller than the warning threshold. [SimplyDanny](https://github.com/SimplyDanny) [#4645](https://github.com/realm/SwiftLint/issues/4645) * Consider custom attributes in `attributes` rule. [SimplyDanny](https://github.com/SimplyDanny) [#4599](https://github.com/realm/SwiftLint/issues/4599) * Stop triggering `strict_fileprivate` rule on symbols implementing a protocol in the same file. [SimplyDanny](https://github.com/SimplyDanny) [#4692](https://github.com/realm/SwiftLint/issues/4692) * Fix false positives on `private_subject` rule when using subjects inside functions. [Marcelo Fabri](https://github.com/marcelofabri) [#4643](https://github.com/realm/SwiftLint/issues/4643) * Fix for compiler directives masking subsequent `opening_brace` violations. [Martin Redington](https://github.com/mildm8nnered) [#3712](https://github.com/realm/SwiftLint/issues/3712) * Rewrite `explicit_type_interface` rule with SwiftSyntax fixing a false-positive in if-case-let statements. [SimplyDanny](https://github.com/SimplyDanny) [#4548](https://github.com/realm/SwiftLint/issues/4548) * Ensure that negative literals in initializers do not trigger `no_magic_numbers` rule. [SimplyDanny](https://github.com/SimplyDanny) [#4677](https://github.com/realm/SwiftLint/issues/4677) * Fix caching of `indentation_width` rule. [SimplyDanny](https://github.com/SimplyDanny) [#4121](https://github.com/realm/SwiftLint/issues/4121) * Updated JUnit reporter to output error count and warning count. [patricks](https://github.com/patricks) [#4725](https://github.com/realm/SwiftLint/pull/4725) * Fix correction on `lower_acl_than_parent` rule for `open` declarations. [Marcelo Fabri](https://github.com/marcelofabri) [#4753](https://github.com/realm/SwiftLint/issues/4753) * Fix `void_return` rule to support async and async throws functions. [Mathias Schreck](https://github.com/lo1tuma) [#4772](https://github.com/realm/SwiftLint/issues/4772) * Fix false positives in `attributes` rule when using property wrappers with keypath arguments. [JP Simard](https://github.com/jpsim) --- ### Using Bazel Put this in your `WORKSPACE`: <details> <summary>WORKSPACE</summary> ```python load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") http_archive( name = "build_bazel_rules_apple", sha256 = "43737f28a578d8d8d7ab7df2fb80225a6b23b9af9655fcdc66ae38eb2abcf2ed", url = "https://github.com/bazelbuild/rules_apple/releases/download/2.0.0/rules_apple.2.0.0.tar.gz", ) load( "@build_bazel_rules_apple//apple:repositories.bzl", "apple_rules_dependencies", ) apple_rules_dependencies() load( "@build_bazel_rules_swift//swift:repositories.bzl", "swift_rules_dependencies", ) swift_rules_dependencies() load( "@build_bazel_rules_swift//swift:extras.bzl", "swift_rules_extra_dependencies", ) swift_rules_extra_dependencies() http_archive( name = "SwiftLint", sha256 = "f0e37c2ca277ef8c50d865cbdb75326592bcba11b786caf1fccc3111e9925e01", url = "https://github.com/realm/SwiftLint/releases/download/0.51.0-rc.2/bazel.tar.gz", ) load("@SwiftLint//bazel:repos.bzl", "swiftlint_repos") swiftlint_repos() load("@SwiftLint//bazel:deps.bzl", "swiftlint_deps") swiftlint_deps() ``` </details> Then you can run SwiftLint in the current directory with this command: ```console bazel run @SwiftLint//:swiftlint -- --help ```
0.51.0-rc.1: bzllint
5 weeks ago
This is a prerelease version. It won't be published to Homebrew, CocoaPods or bzlmod. But there are many other ways to install: * Downloading the attached `SwiftLint.pkg` installer and launching it * Downloading the attached `portable_swiftlint.zip` archive, extracting it and moving the binary from `portable_swiftlint/swiftlint` to `/usr/local/bin` or elsewhere in your `PATH` * Using [Mint](https://github.com/yonaskolb/Mint): `mint install realm/[email protected]` * Cloning and building from source: `git clone https://github.com/realm/SwiftLint.git && cd SwiftLint && git checkout 0.51.0-rc.1 && make install` * Docker: ```docker run -it -v `pwd`:`pwd` -w `pwd` ghcr.io/realm/swiftlint:0.51.0-rc.1``` * Bazel: See instructions at the bottom Changes from 0.50.3: https://github.com/realm/SwiftLint/compare/0.50.3...0.51.0-rc.1 --- #### Breaking * Deprecate the `unused_capture_list` rule in favor of the Swift compiler warning. At the same time, make it an opt-in rule. [Cyberbeni](https://github.com/Cyberbeni) [#4656](https://github.com/realm/SwiftLint/issues/4656) * Deprecate the `inert_defer` rule in favor of the Swift compiler warning. At the same time, make it an opt-in rule. [SimplyDanny](https://github.com/SimplyDanny) [#4615](https://github.com/realm/SwiftLint/issues/4615) #### Experimental * None. #### Enhancements * Add local links to rule descriptions to every rule listed in `Rule Directory.md`. [kattouf](https://github.com/kattouf) * Make forceExclude work with directly specified files. [jimmya](https://github.com/jimmya) [#issue_number](https://github.com/realm/SwiftLint/issues/4609) * Separate analyzer rules as an independent section in the rule directory of the reference. [Ethan Wong](https://github.com/GetToSet) [#4664](https://github.com/realm/SwiftLint/pull/4664) * Add rule identifier to output of Emoji reporter. [SimplyDanny](https://github.com/SimplyDanny) [#4707](https://github.com/realm/SwiftLint/issues/4707) * Interpret strings in `excluded` option of `identifier_name`, `type_name` and `generic_type_name` rules as regex. [Moly](https://github.com/kyounh12) [#4655](https://github.com/realm/SwiftLint/pull/4655) * Add new `direct_return` rule that triggers on `return` statements returning variables that have been declared in the statement before only. [SimplyDanny](https://github.com/SimplyDanny) * Add `period_spacing` opt-in rule that checks periods are not followed by 2 or more spaces in comments. [Julioacarrettoni](https://github.com/Julioacarrettoni) [#4624](https://github.com/realm/SwiftLint/pull/4624) * Allow to pass a rule identifier to the `swiftlint docs` command to open its specific documentation website, e.g. `swiftlint docs for_where`. [SimplyDanny](https://github.com/SimplyDanny) [#4707](https://github.com/realm/SwiftLint/issues/4707) * Allow new Quick APIs `aroundEach` and `justBeforeEach` for `quick_discouraged_call`. [David Steinacher](https://github.com/stonko1994) [#4626](https://github.com/realm/SwiftLint/issues/4626) * Add `relative-path` reporter to generate reports with relative file paths. [Roya1v](https://github.com/roya1v) [#4660](https://github.com/realm/SwiftLint/issues/4660) * Let `number_separator` rule trigger on misplaced separators, e.g. `10_00`. [SimplyDanny](https://github.com/SimplyDanny) [#4637](https://github.com/realm/SwiftLint/issues/4637) * Rewrite `multiline_arguments` rule using SwiftSyntax, ignoring trailing closures. [Marcelo Fabri](https://github.com/marcelofabri) [#3399](https://github.com/realm/SwiftLint/issues/3399) [#3605](https://github.com/realm/SwiftLint/issues/3605) * Speed up linting by up to 6% updating to use a newer version of `SwiftSyntax`. [JP Simard](https://github.com/jpsim) * Catch more valid `legacy_multiple` violations. [JP Simard](https://github.com/jpsim) * Catch more valid `no_magic_numbers` violations. [JP Simard](https://github.com/jpsim) #### Bug Fixes * Report violations in all `<scope>_length` rules when the error threshold is smaller than the warning threshold. [SimplyDanny](https://github.com/SimplyDanny) [#4645](https://github.com/realm/SwiftLint/issues/4645) * Consider custom attributes in `attributes` rule. [SimplyDanny](https://github.com/SimplyDanny) [#4599](https://github.com/realm/SwiftLint/issues/4599) * Stop triggering `strict_fileprivate` rule on symbols implementing a protocol in the same file. [SimplyDanny](https://github.com/SimplyDanny) [#4692](https://github.com/realm/SwiftLint/issues/4692) * Fix false positives on `private_subject` rule when using subjects inside functions. [Marcelo Fabri](https://github.com/marcelofabri) [#4643](https://github.com/realm/SwiftLint/issues/4643) * Fix for compiler directives masking subsequent `opening_brace` violations. [Martin Redington](https://github.com/mildm8nnered) [#3712](https://github.com/realm/SwiftLint/issues/3712) * Rewrite `explicit_type_interface` rule with SwiftSyntax fixing a false-positive in if-case-let statements. [SimplyDanny](https://github.com/SimplyDanny) [#4548](https://github.com/realm/SwiftLint/issues/4548) * Ensure that negative literals in initializers do not trigger `no_magic_numbers` rule. [SimplyDanny](https://github.com/SimplyDanny) [#4677](https://github.com/realm/SwiftLint/issues/4677) * Fix caching of `indentation_width` rule. [SimplyDanny](https://github.com/SimplyDanny) [#4121](https://github.com/realm/SwiftLint/issues/4121) * Updated JUnit reporter to output error count and warning count. [patricks](https://github.com/patricks) [#4725](https://github.com/realm/SwiftLint/pull/4725) * Fix correction on `lower_acl_than_parent` rule for `open` declarations. [Marcelo Fabri](https://github.com/marcelofabri) [#4753](https://github.com/realm/SwiftLint/issues/4753) * Fix `void_return` rule to support async and async throws functions. [Mathias Schreck](https://github.com/lo1tuma) [#4772](https://github.com/realm/SwiftLint/issues/4772) * Fix false positives in `attributes` rule when using property wrappers with keypath arguments. [JP Simard](https://github.com/jpsim) --- ### Using Bazel Put this in your `WORKSPACE`: <details> <summary>WORKSPACE</summary> ```python load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") http_archive( name = "build_bazel_rules_apple", sha256 = "43737f28a578d8d8d7ab7df2fb80225a6b23b9af9655fcdc66ae38eb2abcf2ed", url = "https://github.com/bazelbuild/rules_apple/releases/download/2.0.0/rules_apple.2.0.0.tar.gz", ) load( "@build_bazel_rules_apple//apple:repositories.bzl", "apple_rules_dependencies", ) apple_rules_dependencies() load( "@build_bazel_rules_swift//swift:repositories.bzl", "swift_rules_dependencies", ) swift_rules_dependencies() load( "@build_bazel_rules_swift//swift:extras.bzl", "swift_rules_extra_dependencies", ) swift_rules_extra_dependencies() http_archive( name = "SwiftLint", sha256 = "f44b1e1c9aac0b4febbfae8479fc4e60df099066076fb10dfc0f42fd83731170", url = "https://github.com/realm/SwiftLint/releases/download/0.51.0-rc.1/bazel.tar.gz", ) load("@SwiftLint//bazel:repos.bzl", "swiftlint_repos") swiftlint_repos() load("@SwiftLint//bazel:deps.bzl", "swiftlint_deps") swiftlint_deps() ``` </details> Then you can run SwiftLint in the current directory with this command: ```console bazel run @SwiftLint//:swiftlint -- --help ```
0.50.3: Bundle of Towels
16 weeks ago
#### Breaking * None. #### Experimental * None. #### Enhancements * The `SwiftLintPlugin` SwiftPM plugin now uses a prebuilt binary on macOS. [Tony Arnold](https://github.com/tonyarnold) [JP Simard](https://github.com/jpsim) [#4558](https://github.com/realm/SwiftLint/issues/4558) * Don't trigger `shorthand_operator` violations inside a shorthand operator function declaration. [Marcelo Fabri](https://github.com/marcelofabri) [#4611](https://github.com/realm/SwiftLint/issues/4611) * The `balanced_xctest_lifecycle`, `single_test_class`, `empty_xctest_method` and `test_case_accessibility` rules will now be applied to subclasses of `QuickSpec`, as well as `XCTestCase`, by default. [Martin Redington](https://github.com/mildm8nnered) * Add `test_parent_classes` option to `balanced_xctest_lifecycle`, `single_test_class` and `empty_xctest_method` rules. [Martin Redington](https://github.com/mildm8nnered) [#4200](https://github.com/realm/SwiftLint/issues/4200) * Show warnings in the console for Analyzer rules that are listed in the `opt_in_rules` configuration section. [SimplyDanny](https://github.com/SimplyDanny) [#4612](https://github.com/realm/SwiftLint/issues/4612) #### Bug Fixes * Fix configuration parsing error in `unused_declaration` rule. [SimplyDanny](https://github.com/SimplyDanny) [#4612](https://github.com/realm/SwiftLint/issues/4612) * Skip `defer` statements being last in an `#if` block if the `#if` statement is not itself the last statement in a block. [SimplyDanny](https://github.com/SimplyDanny) [#4615](https://github.com/realm/SwiftLint/issues/4615) * Fix false positives in `empty_enum_arguments` when the called expression is an identifier or an init call. [Steffen Matthischke](https://github.com/heeaad) [#4597](https://github.com/realm/SwiftLint/issues/4597) * Fix correction issue in `comma` when there was too much whitespace following the comma. [JP Simard](https://github.com/jpsim) --- ### Using Bazel Put this in your `WORKSPACE`: <details> <summary>WORKSPACE</summary> ```python load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") http_archive( name = "build_bazel_rules_apple", sha256 = "f94e6dddf74739ef5cb30f000e13a2a613f6ebfa5e63588305a71fce8a8a9911", url = "https://github.com/bazelbuild/rules_apple/releases/download/1.1.3/rules_apple.1.1.3.tar.gz", ) load( "@build_bazel_rules_apple//apple:repositories.bzl", "apple_rules_dependencies", ) apple_rules_dependencies() load( "@build_bazel_rules_swift//swift:repositories.bzl", "swift_rules_dependencies", ) swift_rules_dependencies() load( "@build_bazel_rules_swift//swift:extras.bzl", "swift_rules_extra_dependencies", ) swift_rules_extra_dependencies() http_archive( name = "SwiftLint", sha256 = "b8c4d765bcd8b533fcc2e15f32482a1a17572f143b65af388f7d5ac99994a99a", url = "https://github.com/realm/SwiftLint/releases/download/0.50.3/bazel.tar.gz", ) load("@SwiftLint//bazel:repos.bzl", "swiftlint_repos") swiftlint_repos() load("@SwiftLint//bazel:deps.bzl", "swiftlint_deps") swiftlint_deps() ``` </details> Then you can run SwiftLint in the current directory with this command: ```console bazel run -c opt @SwiftLint//:swiftlint -- --help ```
0.50.1: Artisanal Clothes Pegs Fixup Edition
18 weeks ago
#### Breaking * None. #### Experimental * None. #### Enhancements * Moved the validation of doc comments in local scopes out of `orphaned_doc_comment` and into a new opt-in `local_doc_comment` rule. [JP Simard](https://github.com/jpsim) [#4573](https://github.com/realm/SwiftLint/issues/4573) * SwiftLint's Swift Package Build Tool Plugin will now only scan files in the target being built. [Tony Arnold](https://github.com/tonyarnold) [#4406](https://github.com/realm/SwiftLint/pull/4406) #### Bug Fixes * Fix building with `swift build -c release`. [JP Simard](https://github.com/jpsim) [#4559](https://github.com/realm/SwiftLint/issues/4559) [#4560](https://github.com/realm/SwiftLint/issues/4560) * Fix false positives in `lower_acl_than_parent` when the nominal parent is an extension. [Steffen Matthischke](https://github.com/heeaad) [#4564](https://github.com/realm/SwiftLint/issues/4564) * Fix `minimum_fraction_length` handling in `number_separator`. [JP Simard](https://github.com/jpsim) [#4576](https://github.com/realm/SwiftLint/issues/4576) * Fix false positives in `closure_spacing`. [JP Simard](https://github.com/jpsim) [#4565](https://github.com/realm/SwiftLint/issues/4565) [#4582](https://github.com/realm/SwiftLint/issues/4582) * Fix line count calculation for multiline string literals. [JP Simard](https://github.com/jpsim) [#4585](https://github.com/realm/SwiftLint/issues/4585) * Fix false positives in `unused_closure_parameter` when using identifiers with backticks. [JP Simard](https://github.com/jpsim) [#4588](https://github.com/realm/SwiftLint/issues/4588) * Fix `type_name` regression where names with backticks would trigger violations. [JP Simard](https://github.com/jpsim) [#4571](https://github.com/realm/SwiftLint/issues/4571)
0.50.0: Artisanal Clothes Pegs
19 weeks ago
#### Breaking * SwiftLint now requires Swift 5.7 or higher to build. [JP Simard](https://github.com/jpsim) * Exclude `weak_delegate` rule from autocorrection due to behavioral changes leading to potential undefined behavior or bugs. [SimplyDanny](https://github.com/SimplyDanny) [#3577](https://github.com/realm/SwiftLint/issues/3577) * The `anyobject_protocol` rule is now deprecated and will be completely removed in a future release because it is now handled by the Swift compiler. [JP Simard](https://github.com/jpsim) * Built-in SwiftLint rules are no longer marked as `public` in SwiftLintFramework. This only impacts the programmatic API for the SwiftLintFramework module. [JP Simard](https://github.com/jpsim) #### Experimental * None. #### Enhancements * SwiftSyntax libraries have been updated from the previous 5.6 release and now use the new parser written in Swift. Swift 5.7+ features should now be parsed more accurately. We've also measured an improvement in lint times of up to 15%. This should also fix some deployment issues where the exact version of the internal SwiftSyntax parser needed to be available. If you notice any unexpected changes to lint results, please file an issue on the SwiftLint issue tracker. We can look into it and if it's a SwiftSyntax parser regression we can re-file it upstream. [JP Simard](https://github.com/jpsim) [#4031](https://github.com/realm/SwiftLint/issues/4031) * Rewrite some rules with SwiftSyntax, fixing some false positives and catching more violations: - `anonymous_argument_in_multiline_closure` - `array_init` - `attributes` - `balanced_xctest_lifecycle` - `block_based_kvo` - `class_delegate_protocol` - `closing_brace` - `closure_body_length` - `closure_parameter_position` - `collection_alignment` - `comment_spacing` - `computed_accessors_order` - `conditional_returns_on_newline` - `contains_over_filter_count` - `contains_over_filter_is_empty` - `contains_over_first_not_nil` - `contains_over_range_nil_comparison` - `convenience_type` - `deployment_target` - `discarded_notification_center_observer` - `discouraged_assert` - `discouraged_direct_init` - `discouraged_none_name` - `discouraged_object_literal` - `discouraged_optional_boolean` - `duplicate_enum_cases` - `duplicated_key_in_dictionary_literal` - `dynamic_inline` - `empty_collection_literal` - `empty_count` - `empty_enum_arguments` - `empty_parameters` - `empty_parentheses_with_trailing_closure` - `empty_string` - `enum_case_associated_values_count` - `explicit_enum_raw_value` - `explicit_init` - `explicit_top_level_acl` - `fallthrough` - `file_name` - `first_where` - `flatmap_over_map_reduce` - `for_where` - `force_try` - `force_unwrapping` - `function_body_length` - `function_default_parameter_at_end` - `function_parameter_count` - `generic_type_name` - `ibinspectable_in_extension` - `identical_operands` - `implicit_getter` - `implicitly_unwrapped_optional` - `inclusive_language` - `inert_defer` - `is_disjoint` - `joined_default_parameter` - `large_tuple` - `last_where` - `legacy_cggeometry_functions` - `legacy_constant` - `legacy_constructor` - `legacy_hashing` - `legacy_multiple` - `legacy_nsgeometry_functions` - `legacy_objc_type` - `legacy_random` - `lower_acl_than_parent` - `multiline_arguments_brackets` - `multiline_parameters` - `multiple_closures_with_trailing_closure` - `no_extension_access_modifier` - `no_fallthrough_only` - `no_space_in_method_call` - `notification_center_detachment` - `nslocalizedstring_key` - `nslocalizedstring_require_bundle` - `nsobject_prefer_isequal` - `number_separator` - `object_literal` - `operator_whitespace` - `optional_enum_case_matching` - `orphaned_doc_comment` - `overridden_super_call` - `override_in_extension` - `pattern_matching_keywords` - `prefer_nimble` - `prefer_self_in_static_references` - `prefer_self_type_over_type_of_self` - `prefer_zero_over_explicit_init` - `prefixed_toplevel_constant` - `private_action` - `private_outlet` - `private_over_fileprivate` - `private_subject` - `private_unit_test` - `prohibited_interface_builder` - `prohibited_super_call` - `protocol_property_accessors_order` - `quick_discouraged_focused_test` - `quick_discouraged_pending_test` - `raw_value_for_camel_cased_codable_enum` - `reduce_boolean` - `reduce_into` - `redundant_discardable_let` - `redundant_nil_coalescing` - `redundant_objc_attribute` - `redundant_optional_initialization` - `redundant_set_access_control` - `redundant_string_enum_value` - `required_deinit` - `required_enum_case` - `return_arrow_whitespace` - `self_in_property_initialization` - `shorthand_operator` - `single_test_class` - `sorted_first_last` - `static_operator` - `strict_fileprivate` - `strong_iboutlet` - `switch_case_alignment` - `switch_case_on_newline` - `test_case_accessibility` - `toggle_bool` - `trailing_comma` - `trailing_semicolon` - `type_body_length` - `type_name` - `unneeded_break_in_switch` - `unneeded_parentheses_in_closure_argument` - `unowned_variable_capture` - `untyped_error_in_catch` - `unused_capture_list` - `unused_closure_parameter` - `unused_control_flow_label` - `unused_enumerated` - `unused_optional_binding` - `unused_setter_value` - `valid_ibinspectable` - `vertical_parameter_alignment` - `weak_delegate` - `xct_specific_matcher` - `xctfail_message` [Marcelo Fabri](https://github.com/marcelofabri) [SimplyDanny](https://github.com/SimplyDanny) [JP Simard](https://github.com/jpsim) [#2915](https://github.com/realm/SwiftLint/issues/2915) * The "body length" family of rules have changed how they calculate body line count to be significantly more correct and intuitive. However, this is likely to require adjustments to your configuration or disable commands to account for the changes. [JP Simard](https://github.com/jpsim) * Add ability to filter rules for `generate-docs` subcommand. [kattouf](https://github.com/kattouf) * Add new `excludes_trivial_init` configuration for `missing_docs` rule to exclude initializers without any parameters. [Marcelo Fabri](https://github.com/marcelofabri) [#4107](https://github.com/realm/SwiftLint/issues/4107) * Add new `ns_number_init_as_function_reference` rule to catch `NSNumber.init` and `NSDecimalNumber.init` being used as function references since it can cause the wrong initializer to be used, causing crashes. See https://github.com/apple/swift/issues/51036 for more info. [Marcelo Fabri](https://github.com/marcelofabri) * Add `accessibility_trait_for_button` rule to warn if a SwiftUI View has a tap gesture added to it without having the button or link accessibility trait. [Ryan Cole](https://github.com/rcole34) * Add methods from SE-0348 to `UnusedDeclarationRule`. [JP Simard](https://github.com/jpsim) * Include the configured `bind_identifier` in `self_binding` violation messages. [JP Simard](https://github.com/jpsim) * The `self_binding` rule now catches shorthand optional bindings (for example `if let self {}`) when using a `bind_identifier` different than `self`. [Marcelo Fabri](https://github.com/marcelofabri) * Add `library_content_provider` file type to `file_types_order` rule to allow `LibraryContentProvider` to be ordered independent from `main_type`. [dahlborn](https://github.com/dahlborn) * Add `test_parent_classes` option to `test_case_accessibility` rule, which allows detection in subclasses of XCTestCase. [Martin Redington](https://github.com/mildm8nnered) [#4200](https://github.com/realm/SwiftLint/issues/4200) * Add a new `shorthand_optional_binding` opt-in rule that triggers in Swift 5.7 when a shadowing optional binding is created in an `if` or `guard` statement. [SimplyDanny](https://github.com/SimplyDanny) [#4202](https://github.com/realm/SwiftLint/issues/4202) * Use SwiftSyntax instead of SourceKit to determine if a file has parser errors before applying corrections. This speeds up corrections significantly when none of the rules use SourceKit. [JP Simard](https://github.com/jpsim) * Add Swift Package Build Tool Plugin with support for Swift Packages and Xcode projects. [Johannes Ebeling](https://github.com/technocidal) [#3679](https://github.com/realm/SwiftLint/issues/3679) [#3840](https://github.com/realm/SwiftLint/issues/3840) * Make `private_unit_test` rule correctable. [SimplyDanny](https://github.com/SimplyDanny) * Disregard whitespace differences in `identical_operands` rule. That is, the rule now also triggers if the left-hand side and the right-hand side of an operation only differ in trivia. [SimplyDanny](https://github.com/SimplyDanny) * Print violations in realtime if `--progress` and `--output` are both set. [JP Simard](https://github.com/jpsim) * Trigger `prefer_self_in_static_references` rule on more type references like: * Key paths (e.g. `\MyType.myVar` -> `\Self.myVar`) * Computed properties (e.g. `var i: Int { MyType.myVar )` -> `var i: Int { Self.myVar }`) * Constructor calls (e.g. `MyType()` -> `Self()`) [SimplyDanny](https://github.com/SimplyDanny) * Update `for_where` rule, adding a new configuration `allow_for_as_filter` to allow using `for in` with a single `if` inside when there's a `return` statement inside the `if`'s body. [Marcelo Fabri](https://github.com/marcelofabri) [#4040](https://github.com/realm/SwiftLint/issues/4040) * `quick_discouraged_call`, `quick_discouraged_focused_test` and `quick_discouraged_pending_test` rules now trigger on subclasses of `QuickSpec`. [Marcelo Fabri](https://github.com/marcelofabri) [#4420](https://github.com/realm/SwiftLint/issues/4420) * The `type_name` rule now validates protocol declarations by default. You can opt-out by using the `validate_protocols` key in your configuration: ```yml type_name: validate_protocols: false ``` [Marcelo Fabri](https://github.com/marcelofabri) [#4430](https://github.com/realm/SwiftLint/issues/4430) * Report how much memory was used when `--benchmark` is specified. [JP Simard](https://github.com/jpsim) * Adds `NSError` to the list of types in `discouraged_direct_init`. [jszumski](https://github.com/jszumski) [#4508](https://github.com/realm/SwiftLint/issues/4508) * Fix SwiftLint support on Xcode Cloud. [JagCesar](https://github.com/JagCesar) [westerlund](https://github.com/westerlund) [#4484](https://github.com/realm/SwiftLint/issues/4484) * Add `no_magic_numbers` rule to avoid "Magic Numbers". [Henrik Storch](https://github.com/thisisthefoxe) [#4031](https://github.com/realm/SwiftLint/issues/4024) * Add new option `only_enforce_before_trivial_lines` to `vertical_whitespace_closing_braces` rule. It restricts the rule to apply only before trivial lines (containing only closing braces, brackets and parentheses). This allows empty lines before non-trivial lines of code (e.g. if-else-statements). [benjamin-kramer](https://github.com/benjamin-kramer) [#3940](https://github.com/realm/SwiftLint/issues/3940) #### Bug Fixes * Respect `validates_start_with_lowercase` option when linting function names. [Chris Brakebill](https://github.com/braker1nine) [#2708](https://github.com/realm/SwiftLint/issues/2708) * Do not report variables annotated with `@NSApplicationDelegateAdaptor` and `@WKExtensionDelegateAdaptor` in `weak_delegate` rule. [Till Hainbach](https://github.com/tillhainbach) [#3598](https://github.com/realm/SwiftLint/issues/3456) [#3611](https://github.com/realm/SwiftLint/issues/3611) * Fix false-positives related to the `willMove` lifecycle method in `type_contents_order` rule. [SimplyDanny](https://github.com/SimplyDanny) [#3478](https://github.com/realm/SwiftLint/issues/3478) * Do no longer autocorrect usage of `NSIntersectionRect` in `legacy_nsgeometry_functions` rule. [SimplyDanny](https://github.com/SimplyDanny) [#3703](https://github.com/realm/SwiftLint/issues/3703) * Fix Analyzer rules in Xcode 14. [SimplyDanny](https://github.com/SimplyDanny) [#4208](https://github.com/realm/SwiftLint/issues/4208) * Add column for SourceKit usage to `rules` command. [JP Simard](https://github.com/jpsim) * Make `nsobject_prefer_isequal` rule work for nested `@objc` classes. Also consider the `@objcMembers` annotation. [SimplyDanny](https://github.com/SimplyDanny) * Print fixed content at most once to STDOUT. [SimplyDanny](https://github.com/SimplyDanny) [#4211](https://github.com/realm/SwiftLint/issues/4211) * Fix fatal error when content given via STDIN is corrected in the `trailing_newline` rule. [SimplyDanny](https://github.com/SimplyDanny) [#4234](https://github.com/realm/SwiftLint/issues/4234) * Fix false-positives from `multiline_arguments_brackets` when a function call has a single line trailing closure. [CraigSiemens](https://github.com/CraigSiemens) [#4510](https://github.com/realm/SwiftLint/issues/4510) --- ### Using Bazel Put this in your `WORKSPACE`: <details> <summary>WORKSPACE</summary> ```python load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") http_archive( name = "build_bazel_rules_apple", sha256 = "f94e6dddf74739ef5cb30f000e13a2a613f6ebfa5e63588305a71fce8a8a9911", url = "https://github.com/bazelbuild/rules_apple/releases/download/1.1.3/rules_apple.1.1.3.tar.gz", ) load( "@build_bazel_rules_apple//apple:repositories.bzl", "apple_rules_dependencies", ) apple_rules_dependencies() load( "@build_bazel_rules_swift//swift:repositories.bzl", "swift_rules_dependencies", ) swift_rules_dependencies() load( "@build_bazel_rules_swift//swift:extras.bzl", "swift_rules_extra_dependencies", ) swift_rules_extra_dependencies() http_archive( name = "SwiftLint", sha256 = "c99be76ea5efd6ff7e60b6df8a11b709d50c75dfdbd6fb429de9bbe9e45cdb1f", url = "https://github.com/realm/SwiftLint/releases/download/0.50.0/bazel.tar.gz", ) load("@SwiftLint//bazel:repos.bzl", "swiftlint_repos") swiftlint_repos() load("@SwiftLint//bazel:deps.bzl", "swiftlint_deps") swiftlint_deps() ``` </details> Then you can run SwiftLint in the current directory with this command: ```console bazel run @SwiftLint//:swiftlint -- --help ```
0.50.0-rc.4: Artisanal Clothes Pegs
21 weeks ago
This is a prerelease version. It won't be published to Homebrew or CocoaPods. But there are many other ways to install: * Downloading the attached `SwiftLint.pkg` installer and launching it * Downloading the attached `portable_swiftlint.zip` archive, extracting it and moving the binary from `portable_swiftlint/swiftlint` to `/usr/local/bin` or elsewhere in your `PATH` * Using [Mint](https://github.com/yonaskolb/Mint): `mint install realm/[email protected]` * Cloning and building from source: `git clone https://github.com/realm/SwiftLint.git && cd SwiftLint && git checkout 0.50.0-rc.4 && make install` * Docker: ```docker run -it -v `pwd`:`pwd` -w `pwd` ghcr.io/realm/swiftlint:0.50.0-rc.4``` * Bazel: See instructions at the bottom Changes from 0.49.1: https://github.com/realm/SwiftLint/compare/0.49.1...0.50.0-rc.4 Changes from 0.50.0-rc.3: https://github.com/realm/SwiftLint/compare/0.50.0-rc.3...0.50.0-rc.4 --- #### Breaking * SwiftLint now requires Swift 5.7 or higher to build. [JP Simard](https://github.com/jpsim) * Exclude `weak_delegate` rule from autocorrection due to behavioral changes leading to potential undefined behavior or bugs. [SimplyDanny](https://github.com/SimplyDanny) [#3577](https://github.com/realm/SwiftLint/issues/3577) * The `anyobject_protocol` rule is now deprecated and will be completely removed in a future release because it is now handled by the Swift compiler. [JP Simard](https://github.com/jpsim) #### Experimental * None. #### Enhancements * Adds `NSError` to the list of types in `discouraged_direct_init`. [jszumski](https://github.com/jszumski) [#4508](https://github.com/realm/SwiftLint/issues/4508) * Fix SwiftLint support on Xcode Cloud. [JagCesar](https://github.com/JagCesar) [westerlund](https://github.com/westerlund) [#4484](https://github.com/realm/SwiftLint/issues/4484) * Add `no_magic_numbers` rule to avoid "Magic Numbers". [Henrik Storch](https://github.com/thisisthefoxe) [#4031](https://github.com/realm/SwiftLint/issues/4024) * SwiftSyntax libraries have been updated from the previous 5.6 release and now use the new parser written in Swift. Swift 5.7+ features should now be parsed more accurately. We've also measured an improvement in lint times of up to 15%. This should also fix some deployment issues where the exact version of the internal SwiftSyntax parser needed to be available. If you notice any unexpected changes to lint results, please file an issue on the SwiftLint issue tracker. We can look into it and if it's a SwiftSyntax parser regression we can re-file it upstream. [JP Simard](https://github.com/jpsim) [#4031](https://github.com/realm/SwiftLint/issues/4031) * Add ability to filter rules for `generate-docs` subcommand. [kattouf](https://github.com/kattouf) * Add new `excludes_trivial_init` configuration for `missing_docs` rule to exclude initializers without any parameters. [Marcelo Fabri](https://github.com/marcelofabri) [#4107](https://github.com/realm/SwiftLint/issues/4107) * Add new `ns_number_init_as_function_reference` rule to catch `NSNumber.init` and `NSDecimalNumber.init` being used as function references since it can cause the wrong initializer to be used, causing crashes. See https://github.com/apple/swift/issues/51036 for more info. [Marcelo Fabri](https://github.com/marcelofabri) * Rewrite some rules with SwiftSyntax, fixing some false positives and catching more violations: - `anonymous_argument_in_multiline_closure` - `array_init` - `attributes` - `block_based_kvo` - `class_delegate_protocol` - `closing_brace` - `closure_body_length` - `closure_parameter_position` - `collection_alignment` - `comment_spacing` - `computed_accessors_order` - `conditional_returns_on_newline` - `contains_over_filter_count` - `contains_over_filter_is_empty` - `contains_over_first_not_nil` - `contains_over_range_nil_comparison` - `convenience_type` - `deployment_target` - `discarded_notification_center_observer` - `discouraged_assert` - `discouraged_direct_init` - `discouraged_none_name` - `discouraged_object_literal` - `discouraged_optional_boolean` - `duplicate_enum_cases` - `duplicated_key_in_dictionary_literal` - `dynamic_inline` - `empty_collection_literal` - `empty_count` - `empty_enum_arguments` - `empty_parameters` - `empty_parentheses_with_trailing_closure` - `empty_string` - `enum_case_associated_values_count` - `explicit_enum_raw_value` - `explicit_init` - `explicit_top_level_acl` - `fallthrough` - `file_name` - `first_where` - `flatmap_over_map_reduce` - `for_where` - `force_try` - `force_unwrapping` - `function_body_length` - `function_default_parameter_at_end` - `function_parameter_count` - `generic_type_name` - `ibinspectable_in_extension` - `identical_operands` - `implicit_getter` - `implicitly_unwrapped_optional` - `inclusive_language` - `inert_defer` - `is_disjoint` - `joined_default_parameter` - `large_tuple` - `last_where` - `legacy_cggeometry_functions` - `legacy_constant` - `legacy_constructor` - `legacy_hashing` - `legacy_multiple` - `legacy_nsgeometry_functions` - `legacy_objc_type` - `legacy_random` - `lower_acl_than_parent` - `multiline_arguments_brackets` - `multiline_parameters` - `multiple_closures_with_trailing_closure` - `no_extension_access_modifier` - `no_fallthrough_only` - `no_space_in_method_call` - `notification_center_detachment` - `nslocalizedstring_require_bundle` - `nsobject_prefer_isequal` - `number_separator` - `operator_whitespace` - `optional_enum_case_matching` - `orphaned_doc_comment` - `overridden_super_call` - `override_in_extension` - `prefer_nimble` - `prefer_self_type_over_type_of_self` - `prefer_zero_over_explicit_init` - `prefixed_toplevel_constant` - `private_action` - `private_outlet` - `private_over_fileprivate` - `private_subject` - `private_unit_test` - `prohibited_interface_builder` - `prohibited_super_call` - `protocol_property_accessors_order` - `quick_discouraged_focused_test` - `quick_discouraged_pending_test` - `raw_value_for_camel_cased_codable_enum` - `reduce_boolean` - `reduce_into` - `redundant_discardable_let` - `redundant_nil_coalescing` - `redundant_objc_attribute` - `redundant_optional_initialization` - `redundant_set_access_control` - `redundant_string_enum_value` - `required_deinit` - `return_arrow_whitespace` - `self_in_property_initialization` - `shorthand_operator` - `single_test_class` - `sorted_first_last` - `static_operator` - `strict_fileprivate` - `strong_iboutlet` - `switch_case_alignment` - `switch_case_on_newline` - `test_case_accessibility` - `toggle_bool` - `trailing_comma` - `trailing_semicolon` - `type_body_length` - `type_name` - `unneeded_break_in_switch` - `unneeded_parentheses_in_closure_argument` - `unowned_variable_capture` - `untyped_error_in_catch` - `unused_capture_list` - `unused_closure_parameter` - `unused_control_flow_label` - `unused_enumerated` - `unused_optional_binding` - `unused_setter_value` - `valid_ibinspectable` - `vertical_parameter_alignment` - `weak_delegate` - `xct_specific_matcher` - `xctfail_message` [Marcelo Fabri](https://github.com/marcelofabri) [SimplyDanny](https://github.com/SimplyDanny) [JP Simard](https://github.com/jpsim) [#2915](https://github.com/realm/SwiftLint/issues/2915) * The "body length" family of rules have changed how they calculate body line count to be significantly more correct and intuitive. However, this is likely to require adjustments to your configuration or disable commands to account for the changes. [JP Simard](https://github.com/jpsim) * Add `accessibility_trait_for_button` rule to warn if a SwiftUI View has a tap gesture added to it without having the button or link accessibility trait. [Ryan Cole](https://github.com/rcole34) * Add methods from SE-0348 to `UnusedDeclarationRule`. [JP Simard](https://github.com/jpsim) * Include the configured `bind_identifier` in `self_binding` violation messages. [JP Simard](https://github.com/jpsim) * Add `library_content_provider` file type to `file_types_order` rule to allow `LibraryContentProvider` to be ordered independent from `main_type`. [dahlborn](https://github.com/dahlborn) * Add `test_parent_classes` option to `test_case_accessibility` rule, which allows detection in subclasses of XCTestCase. [Martin Redington](https://github.com/mildm8nnered) [#4200](https://github.com/realm/SwiftLint/issues/4200) * Add a new `shorthand_optional_binding` opt-in rule that triggers in Swift 5.7 when a shadowing optional binding is created in an `if` or `guard` statement. [SimplyDanny](https://github.com/SimplyDanny) [#4202](https://github.com/realm/SwiftLint/issues/4202) * Use SwiftSyntax instead of SourceKit to determine if a file has parser errors before applying corrections. This speeds up corrections significantly when none of the rules use SourceKit. [JP Simard](https://github.com/jpsim) * Add Swift Package Build Tool Plugin with support for Swift Packages and Xcode projects. [Johannes Ebeling](https://github.com/technocidal) [#3679](https://github.com/realm/SwiftLint/issues/3679) [#3840](https://github.com/realm/SwiftLint/issues/3840) * Make `private_unit_test` rule correctable. [SimplyDanny](https://github.com/SimplyDanny) * Disregard whitespace differences in `identical_operands` rule. That is, the rule now also triggers if the left-hand side and the right-hand side of an operation only differ in trivia. [SimplyDanny](https://github.com/SimplyDanny) * Print violations in realtime if `--progress` and `--output` are both set. [JP Simard](https://github.com/jpsim) * Update `for_where` rule, adding a new configuration `allow_for_as_filter` to allow using `for in` with a single `if` inside when there's a `return` statement inside the `if`'s body. [Marcelo Fabri](https://github.com/marcelofabri) [#4040](https://github.com/realm/SwiftLint/issues/4040) * `quick_discouraged_call`, `quick_discouraged_focused_test` and `quick_discouraged_pending_test` rules now trigger on subclasses of `QuickSpec`. [Marcelo Fabri](https://github.com/marcelofabri) [#4420](https://github.com/realm/SwiftLint/issues/4420) * The `type_name` rule now validates protocol declarations by default. You can opt-out by using the `validate_protocols` key in your configuration: ```yml type_name: validate_protocols: false ``` [Marcelo Fabri](https://github.com/marcelofabri) [#4430](https://github.com/realm/SwiftLint/issues/4430) * Report how much memory was used when `--benchmark` is specified. [JP Simard](https://github.com/jpsim) #### Bug Fixes * Respect `validates_start_with_lowercase` option when linting function names. [Chris Brakebill](https://github.com/braker1nine) [#2708](https://github.com/realm/SwiftLint/issues/2708) * Do not report variables annotated with `@NSApplicationDelegateAdaptor` and `@WKExtensionDelegateAdaptor` in `weak_delegate` rule. [Till Hainbach](https://github.com/tillhainbach) [#3598](https://github.com/realm/SwiftLint/issues/3456) [#3611](https://github.com/realm/SwiftLint/issues/3611) * Fix false-positives related to the `willMove` lifecycle method in `type_contents_order` rule. [SimplyDanny](https://github.com/SimplyDanny) [#3478](https://github.com/realm/SwiftLint/issues/3478) * Do no longer autocorrect usage of `NSIntersectionRect` in `legacy_nsgeometry_functions` rule. [SimplyDanny](https://github.com/SimplyDanny) [#3703](https://github.com/realm/SwiftLint/issues/3703) * Fix Analyzer rules in Xcode 14. [SimplyDanny](https://github.com/SimplyDanny) [#4208](https://github.com/realm/SwiftLint/issues/4208) * Add column for SourceKit usage to `rules` command. [JP Simard](https://github.com/jpsim) * Make `nsobject_prefer_isequal` rule work for nested `@objc` classes. Also consider the `@objcMembers` annotation. [SimplyDanny](https://github.com/SimplyDanny) * Print fixed content at most once to STDOUT. [SimplyDanny](https://github.com/SimplyDanny) [#4211](https://github.com/realm/SwiftLint/issues/4211) * Fix fatal error when content given via STDIN is corrected in the `trailing_newline` rule. [SimplyDanny](https://github.com/SimplyDanny) [#4234](https://github.com/realm/SwiftLint/issues/4234) * Fix false-positives from `multiline_arguments_brackets` when a function call has a single line trailing closure. [CraigSiemens](https://github.com/CraigSiemens) [#4510](https://github.com/realm/SwiftLint/issues/4510) --- ### Using Bazel Put this in your `WORKSPACE`: <details> <summary>WORKSPACE</summary> ```python load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") http_archive( name = "build_bazel_rules_apple", sha256 = "90e3b5e8ff942be134e64a83499974203ea64797fd620eddeb71b3a8e1bff681", url = "https://github.com/bazelbuild/rules_apple/releases/download/1.1.2/rules_apple.1.1.2.tar.gz", ) load( "@build_bazel_rules_apple//apple:repositories.bzl", "apple_rules_dependencies", ) apple_rules_dependencies() load( "@build_bazel_rules_swift//swift:repositories.bzl", "swift_rules_dependencies", ) swift_rules_dependencies() load( "@build_bazel_rules_swift//swift:extras.bzl", "swift_rules_extra_dependencies", ) swift_rules_extra_dependencies() http_archive( name = "SwiftLint", sha256 = "ef49a8c0dcb70fb5befe549b016735deef72e1ac9f68562b288f23e496c164af", url = "https://github.com/realm/SwiftLint/releases/download/0.50.0-rc.4/bazel.tar.gz", ) load("@SwiftLint//bazel:repos.bzl", "swiftlint_repos") swiftlint_repos() load("@SwiftLint//bazel:deps.bzl", "swiftlint_deps") swiftlint_deps() ``` </details> Then you can run SwiftLint in the current directory with this command: ```console bazel run @SwiftLint//:swiftlint -- --help ```
0.50.0-rc.3: Artisanal Clothes Pegs
22 weeks ago
This is a prerelease version. It won't be published to Homebrew or CocoaPods. But there are many other ways to install: * Downloading the attached `SwiftLint.pkg` installer and launching it * Downloading the attached `portable_swiftlint.zip` archive, extracting it and moving the binary from `portable_swiftlint/swiftlint` to `/usr/local/bin` or elsewhere in your `PATH` * Using [Mint](https://github.com/yonaskolb/Mint): `mint install realm/[email protected]` * Cloning and building from source: `git clone https://github.com/realm/SwiftLint.git && cd SwiftLint && git checkout 0.50.0-rc.3 && make install` * Docker: ```docker run -it -v `pwd`:`pwd` -w `pwd` ghcr.io/realm/swiftlint:0.50.0-rc.3``` * Bazel: See instructions at the bottom Changes from 0.49.1: https://github.com/realm/SwiftLint/compare/0.49.1...0.50.0-rc.3 Changes from 0.50.0-rc.2: https://github.com/realm/SwiftLint/compare/0.50.0-rc.2...0.50.0-rc.3 --- #### Breaking * SwiftLint now requires Swift 5.7 or higher to build. [JP Simard](https://github.com/jpsim) * Exclude `weak_delegate` rule from autocorrection due to behavioral changes leading to potential undefined behavior or bugs. [SimplyDanny](https://github.com/SimplyDanny) [#3577](https://github.com/realm/SwiftLint/issues/3577) * The `anyobject_protocol` rule is now deprecated and will be completely removed in a future release because it is now handled by the Swift compiler. [JP Simard](https://github.com/jpsim) #### Experimental * None. #### Enhancements * SwiftSyntax libraries have been updated from the previous 5.6 release and now use the new parser written in Swift. Swift 5.7+ features should now be parsed more accurately. We've also measured an improvement in lint times of up to 15%. This should also fix some deployment issues where the exact version of the internal SwiftSyntax parser needed to be available. If you notice any unexpected changes to lint results, please file an issue on the SwiftLint issue tracker. We can look into it and if it's a SwiftSyntax parser regression we can re-file it upstream. [JP Simard](https://github.com/jpsim) [#4031](https://github.com/realm/SwiftLint/issues/4031) * Add ability to filter rules for `generate-docs` subcommand. [kattouf](https://github.com/kattouf) * Add new `excludes_trivial_init` configuration for `missing_docs` rule to exclude initializers without any parameters. [Marcelo Fabri](https://github.com/marcelofabri) [#4107](https://github.com/realm/SwiftLint/issues/4107) * Add new `ns_number_init_as_function_reference` rule to catch `NSNumber.init` and `NSDecimalNumber.init` being used as function references since it can cause the wrong initializer to be used, causing crashes. See https://github.com/apple/swift/issues/51036 for more info. [Marcelo Fabri](https://github.com/marcelofabri) * Rewrite some rules with SwiftSyntax, fixing some false positives and catching more violations: - `anonymous_argument_in_multiline_closure` - `array_init` - `attributes` - `block_based_kvo` - `class_delegate_protocol` - `closing_brace` - `closure_body_length` - `closure_parameter_position` - `collection_alignment` - `comment_spacing` - `computed_accessors_order` - `conditional_returns_on_newline` - `contains_over_filter_count` - `contains_over_filter_is_empty` - `contains_over_first_not_nil` - `contains_over_range_nil_comparison` - `convenience_type` - `deployment_target` - `discarded_notification_center_observer` - `discouraged_assert` - `discouraged_direct_init` - `discouraged_none_name` - `discouraged_object_literal` - `discouraged_optional_boolean` - `duplicate_enum_cases` - `duplicated_key_in_dictionary_literal` - `dynamic_inline` - `empty_collection_literal` - `empty_count` - `empty_enum_arguments` - `empty_parameters` - `empty_parentheses_with_trailing_closure` - `empty_string` - `enum_case_associated_values_count` - `explicit_enum_raw_value` - `explicit_init` - `explicit_top_level_acl` - `fallthrough` - `file_name` - `first_where` - `flatmap_over_map_reduce` - `for_where` - `force_try` - `force_unwrapping` - `function_body_length` - `function_default_parameter_at_end` - `function_parameter_count` - `generic_type_name` - `ibinspectable_in_extension` - `identical_operands` - `implicit_getter` - `implicitly_unwrapped_optional` - `inclusive_language` - `inert_defer` - `is_disjoint` - `joined_default_parameter` - `large_tuple` - `last_where` - `legacy_cggeometry_functions` - `legacy_constant` - `legacy_constructor` - `legacy_hashing` - `legacy_multiple` - `legacy_nsgeometry_functions` - `legacy_objc_type` - `legacy_random` - `lower_acl_than_parent` - `multiple_closures_with_trailing_closure` - `multiline_parameters` - `no_extension_access_modifier` - `no_fallthrough_only` - `no_space_in_method_call` - `notification_center_detachment` - `nslocalizedstring_require_bundle` - `nsobject_prefer_isequal` - `number_separator` - `operator_whitespace` - `override_in_extension` - `nsobject_prefer_isequal` - `prefer_nimble` - `prefer_self_type_over_type_of_self` - `prefer_zero_over_explicit_init` - `prefixed_toplevel_constant` - `private_action` - `private_over_fileprivate` - `private_outlet` - `private_unit_test` - `prohibited_interface_builder` - `protocol_property_accessors_order` - `quick_discouraged_focused_test` - `quick_discouraged_pending_test` - `raw_value_for_camel_cased_codable_enum` - `reduce_boolean` - `reduce_into` - `redundant_discardable_let` - `redundant_nil_coalescing` - `redundant_objc_attribute` - `redundant_set_access_control` - `redundant_optional_initialization` - `redundant_string_enum_value` - `required_deinit` - `return_arrow_whitespace` - `self_in_property_initialization` - `shorthand_operator` - `single_test_class` - `sorted_first_last` - `static_operator` - `strict_fileprivate` - `strong_iboutlet` - `switch_case_alignment` - `switch_case_on_newline` - `test_case_accessibility` - `toggle_bool` - `trailing_comma` - `trailing_semicolon` - `type_body_length` - `type_name` - `unneeded_break_in_switch` - `unneeded_parentheses_in_closure_argument` - `unowned_variable_capture` - `untyped_error_in_catch` - `unused_capture_list` - `unused_closure_parameter` - `unused_control_flow_label` - `unused_enumerated` - `unused_optional_binding` - `unused_setter_value` - `valid_ibinspectable` - `vertical_parameter_alignment` - `weak_delegate` - `xct_specific_matcher` - `xctfail_message` [Marcelo Fabri](https://github.com/marcelofabri) [SimplyDanny](https://github.com/SimplyDanny) [JP Simard](https://github.com/jpsim) [#2915](https://github.com/realm/SwiftLint/issues/2915) * The "body length" family of rules have changed how they calculate body line count to be significantly more correct and intuitive. However, this is likely to require adjustments to your configuration or disable commands to account for the changes. [JP Simard](https://github.com/jpsim) * Add `accessibility_trait_for_button` rule to warn if a SwiftUI View has a tap gesture added to it without having the button or link accessibility trait. [Ryan Cole](https://github.com/rcole34) * Add methods from SE-0348 to `UnusedDeclarationRule`. [JP Simard](https://github.com/jpsim) * Include the configured `bind_identifier` in `self_binding` violation messages. [JP Simard](https://github.com/jpsim) * Add `library_content_provider` file type to `file_types_order` rule to allow `LibraryContentProvider` to be ordered independent from `main_type`. [dahlborn](https://github.com/dahlborn) * Add `test_parent_classes` option to `test_case_accessibility` rule, which allows detection in subclasses of XCTestCase. [Martin Redington](https://github.com/mildm8nnered) [#4200](https://github.com/realm/SwiftLint/issues/4200) * Add a new `shorthand_optional_binding` opt-in rule that triggers in Swift 5.7 when a shadowing optional binding is created in an `if` or `guard` statement. [SimplyDanny](https://github.com/SimplyDanny) [#4202](https://github.com/realm/SwiftLint/issues/4202) * Use SwiftSyntax instead of SourceKit to determine if a file has parser errors before applying corrections. This speeds up corrections significantly when none of the rules use SourceKit. [JP Simard](https://github.com/jpsim) * Add Swift Package Build Tool Plugin with support for Swift Packages and Xcode projects. [Johannes Ebeling](https://github.com/technocidal) [#3679](https://github.com/realm/SwiftLint/issues/3679) [#3840](https://github.com/realm/SwiftLint/issues/3840) * Make `private_unit_test` rule correctable. [SimplyDanny](https://github.com/SimplyDanny) * Disregard whitespace differences in `identical_operands` rule. That is, the rule now also triggers if the left-hand side and the right-hand side of an operation only differ in trivia. [SimplyDanny](https://github.com/SimplyDanny) * Print violations in realtime if `--progress` and `--output` are both set. [JP Simard](https://github.com/jpsim) * Update `for_where` rule, adding a new configuration `allow_for_as_filter` to allow using `for in` with a single `if` inside when there's a `return` statement inside the `if`'s body. [Marcelo Fabri](https://github.com/marcelofabri) [#4040](https://github.com/realm/SwiftLint/issues/4040) * `quick_discouraged_call`, `quick_discouraged_focused_test` and `quick_discouraged_pending_test` rules now trigger on subclasses of `QuickSpec`. [Marcelo Fabri](https://github.com/marcelofabri) [#4420](https://github.com/realm/SwiftLint/issues/4420) * The `type_name` rule now validates protocol declarations by default. You can opt-out by using the `validate_protocols` key in your configuration: ```yml type_name: validate_protocols: false ``` [Marcelo Fabri](https://github.com/marcelofabri) [#4430](https://github.com/realm/SwiftLint/issues/4430) * Report how much memory was used when `--benchmark` is specified. [JP Simard](https://github.com/jpsim) #### Bug Fixes * Respect `validates_start_with_lowercase` option when linting function names. [Chris Brakebill](https://github.com/braker1nine) [#2708](https://github.com/realm/SwiftLint/issues/2708) * Do not report variables annotated with `@NSApplicationDelegateAdaptor` and `@WKExtensionDelegateAdaptor` in `weak_delegate` rule. [Till Hainbach](https://github.com/tillhainbach) [#3598](https://github.com/realm/SwiftLint/issues/3456) [#3611](https://github.com/realm/SwiftLint/issues/3611) * Fix false-positives related to the `willMove` lifecycle method in `type_contents_order` rule. [SimplyDanny](https://github.com/SimplyDanny) [#3478](https://github.com/realm/SwiftLint/issues/3478) * Do no longer autocorrect usage of `NSIntersectionRect` in `legacy_nsgeometry_functions` rule. [SimplyDanny](https://github.com/SimplyDanny) [#3703](https://github.com/realm/SwiftLint/issues/3703) * Fix Analyzer rules in Xcode 14. [SimplyDanny](https://github.com/SimplyDanny) [#4208](https://github.com/realm/SwiftLint/issues/4208) * Add column for SourceKit usage to `rules` command. [JP Simard](https://github.com/jpsim) * Make `nsobject_prefer_isequal` rule work for nested `@objc` classes. Also consider the `@objcMembers` annotation. [SimplyDanny](https://github.com/SimplyDanny) * Print fixed content at most once to STDOUT. [SimplyDanny](https://github.com/SimplyDanny) [#4211](https://github.com/realm/SwiftLint/issues/4211) * Fix fatal error when content given via STDIN is corrected in the `trailing_newline` rule. [SimplyDanny](https://github.com/SimplyDanny) [#4234](https://github.com/realm/SwiftLint/issues/4234) --- ### Using Bazel Put this in your `WORKSPACE`: <details> <summary>WORKSPACE</summary> ```python load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") http_archive( name = "build_bazel_rules_apple", sha256 = "90e3b5e8ff942be134e64a83499974203ea64797fd620eddeb71b3a8e1bff681", url = "https://github.com/bazelbuild/rules_apple/releases/download/1.1.2/rules_apple.1.1.2.tar.gz", ) load( "@build_bazel_rules_apple//apple:repositories.bzl", "apple_rules_dependencies", ) apple_rules_dependencies() load( "@build_bazel_rules_swift//swift:repositories.bzl", "swift_rules_dependencies", ) swift_rules_dependencies() load( "@build_bazel_rules_swift//swift:extras.bzl", "swift_rules_extra_dependencies", ) swift_rules_extra_dependencies() http_archive( name = "SwiftLint", sha256 = "0cc64b76c801242ba440f83a85d4d54aa11303f1f48094555ddc3a818fbc9858", url = "https://github.com/realm/SwiftLint/releases/download/0.50.0-rc.3/bazel.tar.gz", ) load("@SwiftLint//bazel:repos.bzl", "swiftlint_repos") swiftlint_repos() load("@SwiftLint//bazel:deps.bzl", "swiftlint_deps") swiftlint_deps() ``` </details> Then you can run SwiftLint in the current directory with this command: ```console bazel run @SwiftLint//:swiftlint -- --help ```
0.50.0-rc.2: Artisanal Clothes Pegs
23 weeks ago
This is a prerelease version. It won't be published to Homebrew or CocoaPods. But there are many other ways to install: * Downloading the attached `SwiftLint.pkg` installer and launching it * Downloading the attached `portable_swiftlint.zip` archive, extracting it and moving the binary from `portable_swiftlint/swiftlint` to `/usr/local/bin` or elsewhere in your `PATH` * Using [Mint](https://github.com/yonaskolb/Mint): `mint install realm/[email protected]` * Cloning and building from source: `git clone https://github.com/realm/SwiftLint.git && cd SwiftLint && git checkout 0.50.0-rc.2 && make install` * Docker: ```docker run -it -v `pwd`:`pwd` -w `pwd` ghcr.io/realm/swiftlint:0.50.0-rc.2``` * Bazel: See instructions at the bottom Changes from 0.49.1: https://github.com/realm/SwiftLint/compare/0.49.1...0.50.0-rc.2 Changes from 0.50.0-rc.1: https://github.com/realm/SwiftLint/compare/0.50.0-rc.1...0.50.0-rc.2 --- #### Breaking * SwiftLint now requires Swift 5.7 or higher to build. [JP Simard](https://github.com/jpsim) * Exclude `weak_delegate` rule from autocorrection due to behavioral changes leading to potential undefined behavior or bugs. [SimplyDanny](https://github.com/SimplyDanny) [#3577](https://github.com/realm/SwiftLint/issues/3577) * The `anyobject_protocol` rule is now deprecated and will be completely removed in a future release because it is now handled by the Swift compiler. [JP Simard](https://github.com/jpsim) #### Experimental * None. #### Enhancements * SwiftSyntax libraries have been updated from the previous 5.6 release and now use the new parser written in Swift. Swift 5.7+ features should now be parsed more accurately. We've also measured an improvement in lint times of up to 15%. This should also fix some deployment issues where the exact version of the internal SwiftSyntax parser needed to be available. If you notice any unexpected changes to lint results, please file an issue on the SwiftLint issue tracker. We can look into it and if it's a SwiftSyntax parser regression we can re-file it upstream. [JP Simard](https://github.com/jpsim) [#4031](https://github.com/realm/SwiftLint/issues/4031) * Add ability to filter rules for `generate-docs` subcommand. [kattouf](https://github.com/kattouf) * Add new `excludes_trivial_init` configuration for `missing_docs` rule to exclude initializers without any parameters. [Marcelo Fabri](https://github.com/marcelofabri) [#4107](https://github.com/realm/SwiftLint/issues/4107) * Rewrite some rules with SwiftSyntax, fixing some false positives and catching more violations: - `anonymous_argument_in_multiline_closure` - `array_init` - `attributes` - `block_based_kvo` - `class_delegate_protocol` - `closing_brace` - `closure_body_length` - `closure_parameter_position` - `computed_accessors_order` - `conditional_returns_on_newline` - `contains_over_filter_count` - `contains_over_filter_is_empty` - `contains_over_first_not_nil` - `contains_over_range_nil_comparison` - `deployment_target` - `discouraged_assert` - `discouraged_direct_init` - `discouraged_none_name` - `discouraged_object_literal` - `discouraged_optional_boolean` - `duplicate_enum_cases` - `dynamic_inline` - `empty_collection_literal` - `empty_enum_arguments` - `empty_parameters` - `empty_parentheses_with_trailing_closure` - `empty_string` - `enum_case_associated_values_count` - `explicit_enum_raw_value` - `explicit_init` - `fallthrough` - `first_where` - `flatmap_over_map_reduce` - `force_try` - `force_unwrapping` - `function_body_length` - `function_default_parameter_at_end` - `function_parameter_count` - `generic_type_name` - `ibinspectable_in_extension` - `identical_operands` - `implicit_getter` - `implicitly_unwrapped_optional` - `inert_defer` - `is_disjoint` - `large_tuple` - `last_where` - `legacy_cggeometry_functions` - `legacy_constant` - `legacy_constructor` - `legacy_hashing` - `legacy_multiple` - `legacy_nsgeometry_functions` - `legacy_random` - `multiple_closures_with_trailing_closure` - `no_extension_access_modifier` - `no_fallthrough_only` - `no_space_in_method_call` - `nslocalizedstring_require_bundle` - `nsobject_prefer_isequal` - `number_separator` - `operator_whitespace` - `nsobject_prefer_isequal` - `private_action` - `private_over_fileprivate` - `private_outlet` - `private_unit_test` - `prohibited_interface_builder` - `protocol_property_accessors_order` - `quick_discouraged_focused_test` - `quick_discouraged_pending_test` - `reduce_boolean` - `redundant_discardable_let` - `redundant_nil_coalescing` - `redundant_string_enum_value` - `self_in_property_initialization` - `shorthand_operator` - `sorted_first_last` - `static_operator` - `strict_fileprivate` - `strong_iboutlet` - `switch_case_alignment` - `switch_case_on_newline` - `toggle_bool` - `trailing_comma` - `trailing_semicolon` - `type_body_length` - `unneeded_break_in_switch` - `unneeded_parentheses_in_closure_argument` - `unowned_variable_capture` - `untyped_error_in_catch` - `unused_closure_parameter` - `unused_control_flow_label` - `unused_enumerated` - `unused_setter_value` - `valid_ibinspectable` - `weak_delegate` - `xctfail_message` [Marcelo Fabri](https://github.com/marcelofabri) [SimplyDanny](https://github.com/SimplyDanny) [JP Simard](https://github.com/jpsim) [#2915](https://github.com/realm/SwiftLint/issues/2915) * The "body length" family of rules have changed how they calculate body line count to be significantly more correct and intuitive. However, this is likely to require adjustments to your configuration or disable commands to account for the changes. [JP Simard](https://github.com/jpsim) * Add `accessibility_trait_for_button` rule to warn if a SwiftUI View has a tap gesture added to it without having the button or link accessibility trait. [Ryan Cole](https://github.com/rcole34) * Add methods from SE-0348 to `UnusedDeclarationRule`. [JP Simard](https://github.com/jpsim) * Include the configured `bind_identifier` in `self_binding` violation messages. [JP Simard](https://github.com/jpsim) * Add `library_content_provider` file type to `file_types_order` rule to allow `LibraryContentProvider` to be ordered independent from `main_type`. [dahlborn](https://github.com/dahlborn) * Add `test_parent_classes` option to `test_case_accessibility` rule, which allows detection in subclasses of XCTestCase. [Martin Redington](https://github.com/mildm8nnered) [#4200](https://github.com/realm/SwiftLint/issues/4200) * Add a new `shorthand_optional_binding` opt-in rule that triggers in Swift 5.7 when a shadowing optional binding is created in an `if` or `guard` statement. [SimplyDanny](https://github.com/SimplyDanny) [#4202](https://github.com/realm/SwiftLint/issues/4202) * Use SwiftSyntax instead of SourceKit to determine if a file has parser errors before applying corrections. This speeds up corrections significantly when none of the rules use SourceKit. [JP Simard](https://github.com/jpsim) * Add Swift Package Build Tool Plugin with support for Swift Packages and Xcode projects. [Johannes Ebeling](https://github.com/technocidal) [#3679](https://github.com/realm/SwiftLint/issues/3679) [#3840](https://github.com/realm/SwiftLint/issues/3840) * Make `private_unit_test` rule correctable. [SimplyDanny](https://github.com/SimplyDanny) * Disregard whitespace differences in `identical_operands` rule. That is, the rule now also triggers if the left-hand side and the right-hand side of an operation only differ in trivia. [SimplyDanny](https://github.com/SimplyDanny) * Print violations in realtime if `--progress` and `--output` are both set. [JP Simard](https://github.com/jpsim) #### Bug Fixes * Respect `validates_start_with_lowercase` option when linting function names. [Chris Brakebill](https://github.com/braker1nine) [#2708](https://github.com/realm/SwiftLint/issues/2708) * Do not report variables annotated with `@NSApplicationDelegateAdaptor` and `@WKExtensionDelegateAdaptor` in `weak_delegate` rule. [Till Hainbach](https://github.com/tillhainbach) [#3598](https://github.com/realm/SwiftLint/issues/3456) [#3611](https://github.com/realm/SwiftLint/issues/3611) * Fix false-positives related to the `willMove` lifecycle method in `type_contents_order` rule. [SimplyDanny](https://github.com/SimplyDanny) [#3478](https://github.com/realm/SwiftLint/issues/3478) * Do no longer autocorrect usage of `NSIntersectionRect` in `legacy_nsgeometry_functions` rule. [SimplyDanny](https://github.com/SimplyDanny) [#3703](https://github.com/realm/SwiftLint/issues/3703) * Fix Analyzer rules in Xcode 14. [SimplyDanny](https://github.com/SimplyDanny) [#4208](https://github.com/realm/SwiftLint/issues/4208) * Add column for SourceKit usage to `rules` command. [JP Simard](https://github.com/jpsim) * Make `nsobject_prefer_isequal` rule work for nested `@objc` classes. Also consider the `@objcMembers` annotation. [SimplyDanny](https://github.com/SimplyDanny) * Print fixed content at most once to STDOUT. [SimplyDanny](https://github.com/SimplyDanny) [#4211](https://github.com/realm/SwiftLint/issues/4211) * Fix fatal error when content given via STDIN is corrected in the `trailing_newline` rule. [SimplyDanny](https://github.com/SimplyDanny) [#4234](https://github.com/realm/SwiftLint/issues/4234) --- ### Using Bazel Put this in your `WORKSPACE`: <details> <summary>WORKSPACE</summary> ```python load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") http_archive( name = "build_bazel_rules_apple", sha256 = "90e3b5e8ff942be134e64a83499974203ea64797fd620eddeb71b3a8e1bff681", url = "https://github.com/bazelbuild/rules_apple/releases/download/1.1.2/rules_apple.1.1.2.tar.gz", ) load( "@build_bazel_rules_apple//apple:repositories.bzl", "apple_rules_dependencies", ) apple_rules_dependencies() load( "@build_bazel_rules_swift//swift:repositories.bzl", "swift_rules_dependencies", ) swift_rules_dependencies() load( "@build_bazel_rules_swift//swift:extras.bzl", "swift_rules_extra_dependencies", ) swift_rules_extra_dependencies() http_archive( name = "SwiftLint", sha256 = "973587995aab45ac56b963c1768a830a6a66580ccea4d5bf81617106b22bfa3f", url = "https://github.com/realm/SwiftLint/releases/download/0.50.0-rc.2/bazel.tar.gz", ) load("@SwiftLint//bazel:repos.bzl", "swiftlint_repos") swiftlint_repos() load("@SwiftLint//bazel:deps.bzl", "swiftlint_deps") swiftlint_deps() ``` </details> Then you can run SwiftLint in the current directory with this command: ```console bazel run @SwiftLint//:swiftlint -- --help ```
0.50.0-rc.1: Artisanal Clothes Pegs
25 weeks ago
This is a prerelease version. It won't be published to Homebrew or CocoaPods. But there are many other ways to install: * Downloading the attached `SwiftLint.pkg` installer and launching it * Downloading the attached `portable_swiftlint.zip` archive, extracting it and moving the binary from `portable_swiftlint/swiftlint` to `/usr/local/bin` or elsewhere in your `PATH` * Using [Mint](https://github.com/yonaskolb/Mint): `mint install realm/[email protected]` * Cloning and building from source: `git clone https://github.com/realm/SwiftLint.git && cd SwiftLint && git checkout 0.50.0-rc.1 && make install` * Docker: ```docker run -it -v `pwd`:`pwd` -w `pwd` ghcr.io/realm/swiftlint:0.50.0-rc.1``` * Bazel: See instructions at the bottom Changes from 0.49.1: https://github.com/realm/SwiftLint/compare/0.49.1...0.50.0-rc.1 --- #### Breaking * SwiftLint now requires Swift 5.7 or higher to build. [JP Simard](https://github.com/jpsim) * Exclude `weak_delegate` rule from autocorrection due to behavioral changes leading to potential undefined behavior or bugs. [SimplyDanny](https://github.com/SimplyDanny) [#3577](https://github.com/realm/SwiftLint/issues/3577) * The `anyobject_protocol` rule is now deprecated and will be completely removed in a future release because it is now handled by the Swift compiler. [JP Simard](https://github.com/jpsim) #### Experimental * None. #### Enhancements * SwiftSyntax libraries have been updated from the previous 5.6 release and now use the new parser written in Swift. Swift 5.7+ features should now be parsed more accurately. We've also measured an improvement in lint times of up to 15%. This should also fix some deployment issues where the exact version of the internal SwiftSyntax parser needed to be available. If you notice any unexpected changes to lint results, please file an issue on the SwiftLint issue tracker. We can look into it and if it's a SwiftSyntax parser regression we can re-file it upstream. [JP Simard](https://github.com/jpsim) [#4031](https://github.com/realm/SwiftLint/issues/4031) * Add ability to filter rules for `generate-docs` subcommand. [kattouf](https://github.com/kattouf) * Add new `excludes_trivial_init` configuration for `missing_docs` rule to exclude initializers without any parameters. [Marcelo Fabri](https://github.com/marcelofabri) [#4107](https://github.com/realm/SwiftLint/issues/4107) * Rewrite some rules with SwiftSyntax, fixing some false positives and catching more violations: - `anonymous_argument_in_multiline_closure` - `array_init` - `block_based_kvo` - `class_delegate_protocol` - `closing_brace` - `closure_parameter_position` - `computed_accessors_order` - `contains_over_filter_count` - `contains_over_range_nil_comparison` - `deployment_target` - `discouraged_object_literal` - `discouraged_optional_boolean` - `duplicate_enum_cases` - `dynamic_inline` - `empty_collection_literal` - `empty_enum_arguments` - `empty_parameters` - `empty_parentheses_with_trailing_closure` - `empty_string` - `explicit_init` - `fallthrough` - `flatmap_over_map_reduce` - `force_try` - `force_unwrapping` - `generic_type_name` - `ibinspectable_in_extension` - `implicit_getter` - `inert_defer` - `large_tuple` - `legacy_cggeometry_functions` - `legacy_constant` - `legacy_nsgeometry_functions` - `multiple_closures_with_trailing_closure` - `no_extension_access_modifier` - `no_fallthrough_only` - `no_space_in_method_call` - `nsobject_prefer_isequal` - `private_action` - `private_outlet` - `private_unit_test` - `protocol_property_accessors_order` - `redundant_nil_coalescing` - `redundant_string_enum_value` - `strong_iboutlet` - `switch_case_on_newline` - `toggle_bool` - `trailing_semicolon` - `unneeded_break_in_switch` - `unneeded_parentheses_in_closure_argument` - `unowned_variable_capture` - `untyped_error_in_catch` - `xctfail_message` [Marcelo Fabri](https://github.com/marcelofabri) [SimplyDanny](https://github.com/SimplyDanny) [JP Simard](https://github.com/jpsim) [#2915](https://github.com/realm/SwiftLint/issues/2915) * Add `accessibility_trait_for_button` rule to warn if a SwiftUI View has a tap gesture added to it without having the button or link accessibility trait. [Ryan Cole](https://github.com/rcole34) * Add methods from SE-0348 to `UnusedDeclarationRule`. [JP Simard](https://github.com/jpsim) * Include the configured `bind_identifier` in `self_binding` violation messages. [JP Simard](https://github.com/jpsim) * Add `library_content_provider` file type to `file_types_order` rule to allow `LibraryContentProvider` to be ordered independent from `main_type`. [dahlborn](https://github.com/dahlborn) * Add `test_parent_classes` option to `test_case_accessibility` rule, which allows detection in subclasses of XCTestCase. [Martin Redington](https://github.com/mildm8nnered) [#4200](https://github.com/realm/SwiftLint/issues/4200) * Add a new `if_let_shadowing` opt-in rule that triggers in Swift 5.7 when a shadowing optional binding is created in an if- or guard-statement. [SimplyDanny](https://github.com/SimplyDanny) [#4202](https://github.com/realm/SwiftLint/issues/4202) * Use SwiftSyntax instead of SourceKit to determine if a file has parser errors before applying corrections. This speeds up corrections significantly when none of the rules use SourceKit. [JP Simard](https://github.com/jpsim) * Add Swift Package Build Tool Plugin with support for Swift Packages and Xcode projects. [Johannes Ebeling](https://github.com/technocidal) [#3679](https://github.com/realm/SwiftLint/issues/3679) [#3840](https://github.com/realm/SwiftLint/issues/3840) * Make `private_unit_test` rule correctable. [SimplyDanny](https://github.com/SimplyDanny) #### Bug Fixes * Respect `validates_start_with_lowercase` option when linting function names. [Chris Brakebill](https://github.com/braker1nine) [#2708](https://github.com/realm/SwiftLint/issues/2708) * Do not report variables annotated with `@NSApplicationDelegateAdaptor` and `@WKExtensionDelegateAdaptor` in `weak_delegate` rule. [Till Hainbach](https://github.com/tillhainbach) [#3598](https://github.com/realm/SwiftLint/issues/3456) [#3611](https://github.com/realm/SwiftLint/issues/3611) * Fix false-positives related to the `willMove` lifecycle method in `type_contents_order` rule. [SimplyDanny](https://github.com/SimplyDanny) [#3478](https://github.com/realm/SwiftLint/issues/3478) * Do no longer autocorrect usage of `NSIntersectionRect` in `legacy_nsgeometry_functions` rule. [SimplyDanny](https://github.com/SimplyDanny) [#3703](https://github.com/realm/SwiftLint/issues/3703) * Fix Analyzer rules in Xcode 14. [SimplyDanny](https://github.com/SimplyDanny) [#4208](https://github.com/realm/SwiftLint/issues/4208) * Add column for SourceKit usage to `rules` command. [JP Simard](https://github.com/jpsim) --- ### Using Bazel Put this in your `WORKSPACE`: <details> <summary>WORKSPACE</summary> ```python load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") http_archive( name = "build_bazel_rules_apple", sha256 = "90e3b5e8ff942be134e64a83499974203ea64797fd620eddeb71b3a8e1bff681", url = "https://github.com/bazelbuild/rules_apple/releases/download/1.1.2/rules_apple.1.1.2.tar.gz", ) load( "@build_bazel_rules_apple//apple:repositories.bzl", "apple_rules_dependencies", ) apple_rules_dependencies() load( "@build_bazel_rules_swift//swift:repositories.bzl", "swift_rules_dependencies", ) swift_rules_dependencies() load( "@build_bazel_rules_swift//swift:extras.bzl", "swift_rules_extra_dependencies", ) swift_rules_extra_dependencies() http_archive( name = "SwiftLint", sha256 = "ee13554c48ca7845513ae307863525afbb5b8f22d4c3b34b5b2e87311c3d5e26", url = "https://github.com/realm/SwiftLint/releases/download/0.50.0-rc.1/bazel.tar.gz", ) load("@SwiftLint//bazel:repos.bzl", "swiftlint_repos") swiftlint_repos() load("@SwiftLint//bazel:deps.bzl", "swiftlint_deps") swiftlint_deps() ``` </details> Then you can run SwiftLint in the current directory with this command: ```console bazel run @SwiftLint//:swiftlint -- --help ```
macOS
ggerganov/llama.cpp master-fbd4d38
Port of Facebook's LLaMA model in C/C++
⭐️ 16,625
🕓 3 days ago
🔖 Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
master-3525899
8 hours ago
master-1d08882
11 hours ago
master-02c5b27
15 hours ago
master-ee0c40d
Yesterday
master-ed3c680
Yesterday
master-a4755cf
Yesterday
master-77efdf5
Yesterday
master-3bcc129
Yesterday
master-1f0414f
Yesterday
master-f202ada
2 days ago
mozilla-mobile/firefox-ios v111.2
Firefox for iOS
⭐️ 11,285
🕓 3 days ago
🔖 Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
v111.2
3 days ago
# Overview This is our official v111.2 release of Firefox-iOS. It's based on the [v111.0 branch](https://github.com/mozilla-mobile/firefox-ios/tree/release/v111.0) # Differences between v111.1 & v111.2 You can view the changes between our previous and newly released version [here](https://github.com/mozilla-mobile/firefox-ios/compare/v111.1...v111.2).
v111.1
1 week ago
# Overview This is our official v111.1 release of Firefox-iOS. It's based on the [v111.0 branch](https://github.com/mozilla-mobile/firefox-ios/tree/release/v111.0) # Differences between v111.0 & v111.1 You can view the changes between our previous and newly released version [here](https://github.com/mozilla-mobile/firefox-ios/compare/v111.0...v111.1).
v111.0
3 weeks ago
# Overview This is our official v111.0 release of Firefox-iOS. It's based on the [v111.0 branch](https://github.com/mozilla-mobile/firefox-ios/tree/release/v111.0) ## Differences between v110.2 & v111.0 You can view the changes between our previous and newly released version [here](https://github.com/mozilla-mobile/firefox-ios/compare/release/v110.2...release/v111.0). ## Contributions We've had lots of contributions from the community this release, including: @whitelips with commits: #13143, #13130, #13142, #13098, #13071, #13059, #13047 @rvandermeulen with commits: #13156, #12961 @linabutler with commit: #13152 @ahal with commit: #12944 @gutley with commit: #13138 @issammani with commit: #12787 @q2r5 with commits: #9508, #13000, #12993 @TwizzyIndy with commits: #13040, #13055 @jhugman with commits: #13019, #12925 @nayushi with commit: #12999 @rossmassey with commit: #12951 @tarikeshaq with commit: #12750 @charlie with commit: #12935 Thanks everyone!
v110.2
3 weeks ago
# Overview This is our official v110.2 release of Firefox-iOS. It's based on the [v110.2 branch](https://github.com/mozilla-mobile/firefox-ios/tree/release/v110.2) ## Differences between v110.1 & v110.2 You can view the changes between our previous and newly released version [here](https://github.com/mozilla-mobile/firefox-ios/compare/release/v110.1...release/v110.2).
v110.1
4 weeks ago
# Overview This is our official v110.1 release of Firefox-iOS. It's based on the [v110.1 branch](https://github.com/mozilla-mobile/firefox-ios/tree/release/v110.1) ## Differences between v110.0 & v110.1 You can view the changes between our previous and newly released version [here](https://github.com/mozilla-mobile/firefox-ios/compare/release/v110.0...release/v110.1).
v110.0
6 weeks ago
# Overview This is our official v110.0 release of Firefox-iOS. It's based on the [v110.0 branch](https://github.com/mozilla-mobile/firefox-ios/tree/release/v110.0) ## Differences between v109.0 & v110.0 You can view the changes between our previous and newly released version [here](https://github.com/mozilla-mobile/firefox-ios/compare/release/v109.0...release/v110.0). ## Contributions We've had some contributions this release, including: @ACK-J with commit: #12735 @lougeniaC64 with commits: #12784, #12747 @tarikeshaq with commits: #12912, #12420 Thanks everyone!
v109.0
10 weeks ago
# Overview This is our official v109.0 release of Firefox-iOS. It's based on the [v109.0 branch](https://github.com/mozilla-mobile/firefox-ios/tree/release/v109.0) ## Differences between v108.1 & v109.0 You can view the changes between our previous and newly released version [here](https://github.com/mozilla-mobile/firefox-ios/compare/release/v108.1...release/v109.0). ## Contributions We've had lots of contributions this release, including: @tarikeshaq with commits: #12579, #12554, #12578, #12580, #12544, #12377, #12411 @charlie with commit: #12560 @rvandermeulen with commit: #12553 @nayushi with commits: #12467, #12466 @badboy with commit: #12501 @issammani with commit: #12451 @Dilatorily with commit: #10006 @lougeniaC64 with commits: #12306, #12358 @q2r5 with commit: #12324 Thanks everyone!
v108.1
15 weeks ago
# Overview This is our official v108.1 release of Firefox-iOS. It's based on the [v108.1 branch](https://github.com/mozilla-mobile/firefox-ios/tree/release/v108.1) ## Differences between v108.0 & v108.1 You can view the changes between our previous and newly released version [here](https://github.com/mozilla-mobile/firefox-ios/compare/release/v108.0...release/v108.1).
v107.3
16 weeks ago
# Overview This is our official v107.3 release of Firefox-iOS. It's based on the [v107.3 branch](https://github.com/mozilla-mobile/firefox-ios/tree/release/v107.3) ## Differences between v107.2 & v107.3 You can view the changes between our previous and newly released version [here](https://github.com/mozilla-mobile/firefox-ios/compare/release/v107.2...release/v107.3).
v107.2
18 weeks ago
# Overview This is our official v107.2 release of Firefox-iOS. It's based on the [v107.2 branch](https://github.com/mozilla-mobile/firefox-ios/tree/release/v107.2) ## Differences between v107.1 & v107.2 You can view the changes between our previous and newly released version [here](https://github.com/mozilla-mobile/firefox-ios/compare/release/v107.1...release/v107.2).
iOS macOS
krzyzanowskim/CryptoSwift 1.7.0
CryptoSwift is a growing collection of standard and secure cryptographic algorithms implemented in Swift
⭐️ 9,471
🕓 5 days ago
🔖 Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
27 weeks ago
- Improve & extend RSA support with DER (see README for details) - Fix Blowfish memory leaks - Fix PCBC mode - SwiftWasm compatibility
48 weeks ago
- Resolve type name clash by renaming BigInt -> BigInteger #917
49 weeks ago
- RSA (@NathanFallet) - Workaround for Xcode 13.3.1
1 year ago
- Fix PCBC mode.
1 year ago
- Update Xcode project to Xcode 13 - Add SHA3 support for HMAC (@R4v3nPr0) - Update HMAC.Variant API (deprecate current cases)
1 year ago
- Introduce ISO 10126 padding - fix various compiler warnings - Revert Xcode project deployment target
1 year ago
- Customize CFB segment size (cfb8, cfb128). - Adapt Swift @inlineable for better code optimization
Back to Sources
2 years ago
- Revert xcframework revolution. Back to build from sources. (I'm sorry)
2 years ago
1.3.6
2 years ago
- Fix macOS binary - Windows support
iOS macOS watchOS tvOS
apple/swift-package-manager swift-DEVELOPMENT-SNAPSHOT-2023-03-30-a
The Package Manager for the Swift Programming Language
⭐️ 9,191
🕓 11 hours ago
🔖 Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
0.6.0
3 years ago
3 years ago
Swift 5.2 Release
3 years ago
3 years ago
3 years ago
4 years ago
4 years ago
Swift 4.2.1 Release
4 years ago
Swift 4.2 Release
4 years ago
Release SwiftPM 0.2.1
4 years ago
iOS macOS linux windows android
facebook/facebook-ios-sdk v16.0.1
Used to integrate the Facebook Platform with your iOS & tvOS apps.
⭐️ 7,372
🕓 3 days ago
🔖 Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
Facebook SDK v16.0.1
3 days ago
Consult [Changelog](https://github.com/facebook/facebook-ios-sdk/blob/main/CHANGELOG.md#1601)
Facebook SDK v16.0.0
7 weeks ago
Consult [Changelog](https://github.com/facebook/facebook-ios-sdk/blob/main/CHANGELOG.md#1600)
Facebook SDK v15.1.0
21 weeks ago
Consult [Changelog](https://github.com/facebook/facebook-ios-sdk/blob/main/CHANGELOG.md#1510)
Facebook SDK v15.0.0
26 weeks ago
Facebook SDK v14.1.0
38 weeks ago
Consult [Changelog](https://github.com/facebook/facebook-ios-sdk/blob/main/CHANGELOG.md#1410)
Facebook SDK v14.0.0
41 weeks ago
Consult [Changelog](https://github.com/facebook/facebook-ios-sdk/blob/main/CHANGELOG.md#1400)
Facebook SDK v13.2.0
48 weeks ago
Consult [Changelog](https://github.com/facebook/facebook-ios-sdk/blob/main/CHANGELOG.md#1320)
Facebook SDK v13.1.0
1 year ago
Consult [Changelog](https://github.com/facebook/facebook-ios-sdk/blob/main/CHANGELOG.md#1310)
Facebook SDK v13.0.0
1 year ago
Consult [Changelog](https://github.com/facebook/facebook-ios-sdk/blob/main/CHANGELOG.md#1300)
Facebook SDK v12.3.2
1 year ago
Consult [Changelog](https://github.com/facebook/facebook-ios-sdk/blob/main/CHANGELOG.md#1232)
iOS
kean/Nuke 12.1.0
Image loading system
⭐️ 7,277
🕓 6 days ago
🔖 Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
Nuke 12.1
6 days ago
- Add `makeImageView` closure to `LazyImageView` to allow using custom views for rendering images - Add `onCompletion` closure to `LazyImage` and `FetchImage` - Fix an issue with `.videoAssetKey` value missing from `ImageContainer` - Fix an issue with `.gif` being encoded as `.jpeg` when `.storeEncodedImages` policy is used
Nuke 12.0
3 weeks ago
Nuke 12 enhances the two main APIs introduced in the previous release: `LazyImage` and the async `ImagePipeline` methods. They are faster, more robust, and easier to use. > The [migration guide](https://github.com/kean/Nuke/blob/main/Documentation/Migrations/Nuke%2012%20Migration%20Guide.md) is available to help with the update. The minimum requirements are unchanged from Nuke 11. ## NukeUI 2.0 NukeUI started as a separate [repo](https://github.com/kean/NukeUI), but the initial production version was released as part of [Nuke 11](https://github.com/kean/Nuke/releases/tag/11.0.0). Let's call it NukeUI 1.0. The framework was designed before the [`AsyncImage`](https://developer.apple.com/documentation/swiftui/asyncimage) announcement and had a few discrepancies that made it harder to migrate from `AsyncImage`. This release addresses the shortcomings of the original design and features a couple of performance improvements. - `LazyImage` now uses `SwiftUI.Image` instead of `NukeUI.Image` backed by `UIImageView` and `NSImageView`. It eliminates any [discrepancies](https://github.com/kean/Nuke/issues/578) between `LazyImage` and `AsyncImage` layout and self-sizing behavior and fixes issues with `.redacted(reason:)`, `ImageRenderer`, and other SwiftUI APIs that don't work with UIKIt and AppKit based views. - Remove `NukeUI.Image` so the name no longer [clashes](https://github.com/kean/Nuke/discussions/658) with `SwiftUI.Image` - Fix [#669](https://github.com/kean/Nuke/issues/669): `redacted` not working for `LazyImage` - GIF rendering is no longer included in the framework. Please consider using one of the frameworks that specialize in playing GIFs, such as [Gifu](https://github.com/kaishin/Gifu). It's easy to integrate, especially with `LazyImage`. - Extract progress updates from `FetchImage` to a separate observable object, reducing the number of body reloads - `LazyImage` now requires a single body calculation to render the response from the memory cache (instead of three before) - Disable animations by default - Fix an issue where the image won't reload if you change only `LazyImage` `processors` or `priority` without also changing the image source - `FetchImage/image` now returns `Image` instead of `UIImage` - Make `_PlatformImageView` internal (was public) and remove more typealiases ## Concurrency Redesign the concurrency APIs making them more ergonomic and fully `Sendable` compliant. - Add `ImagePipeline/imageTask(with:)` method that returns a new type `AsyncImageTask` ```swift let task = ImagePipeline.shared.imageTask(with: URL(string: "example.com")) task.priority = .high for await progress in task.progress { print("Updated progress: ", progress) } let image = try await task.image ``` - The existing convenience `ImagePipeline/image(for:)` method now returns an image instead of `ImageResponse` - Remove the `delegate` parameter from `ImagePipeline/image(for:)` method to address the upcoming concurrency warnings in Xcode 14.3 - Remove `ImageTaskDelegate` and move its methods to `ImagePipelineDelegate` and add the `pipeline` parameter ## Nuke - Add a new initializer to `ImageRequest.ThumbnailOptions` that accepts the target size, unit, and content mode - [#677](https://github.com/kean/Nuke/pull/677) - ImageCache uses 20% of available RAM which is quite aggressive. It's an OK default on iOS because it clears 90% of the used RAM when entering the background to be a good citizen. But it's not a good default on a Mac. Starting with Nuke 12, the default size is now strictly limited to 512 MB. - `ImageDecoder` now defaults to scale `1` for images (configurable using [`UserInfoKey/scaleKey`](https://kean-docs.github.io/nuke/documentation/nuke/imagerequest/userinfokey/scalekey)) - Removes APIs deprecated in the previous versions - Update the [Performance Guide](https://kean-docs.github.io/nuke/documentation/nuke/performance-guide) ## NukeVideo Video playback can be significantly [more efficient](https://web.dev/replace-gifs-with-videos/) than playing animated GIFs. This is why the initial version of NukeUI provided support for basic video playback. But it is not something that the majority of the users need, so this feature was extracted to a separate module called `NukeVideo`. There is now less code that you need to include in your project, which means faster compile time and smaller code size. With this and some other changes in Nuke 12, the two main frameworks – Nuke and NukeUI – now have 25% less code compared to Nuke 11. In addition to this change, there are a couple of improvements in how the precompiled binary frameworks are generated, significantly reducing their size. - Move all video-related code to `NukeVideo` - Remove `ImageContainer.asset`. The asset is now added to `ImageContainer/userInfo` under the new `.videoAssetKey`. - Reduce the size of binary frameworks by up to 50%
Nuke 12 (RC1)
5 weeks ago
Nuke 12 enhances the two main APIs introduced in the previous release: `LazyImage` and the async `ImagePipeline` methods. They are faster, more robust, and easier to use. > The [migration guide](https://github.com/kean/Nuke/blob/nuke-12/Documentation/Migrations/Nuke%2012%20Migration%20Guide.md) is available to help with the update. The minimum requirements are unchanged from Nuke 11. ## Concurrency Redesign the concurrency APIs making them more ergonomic and fully `Sendable` compliant. - Add `ImagePipeline/imageTask(with:)` method that returns a new type `AsyncImageTask` ```swift let task = ImagePipeline.shared.imageTask(with: URL(string: "example.com")) task.priority = .high for await progress in task.progress { print("Updated progress: ", progress) } let image = try await task.image ``` - The existing convenience `ImagePipeline/image(for:)` method now returns an image instead of `ImageResponse` - Remove the `delegate` parameter from `ImagePipeline/image(for:)` method to address the upcoming concurrency warnings in Xcode 14.3 - Remove `ImageTaskDelegate` and move its methods to `ImagePipelineDelegate` and add the `pipeline` parameter ## NukeUI 2.0 NukeUI started as a separate [repo](https://github.com/kean/NukeUI), but the initial production version was released as part of [Nuke 11](https://github.com/kean/Nuke/releases/tag/11.0.0). Let's call it NukeUI 1.0. The framework was designed before the [`AsyncImage`](https://developer.apple.com/documentation/swiftui/asyncimage) announcement and had a few discrepancies that made it harder to migrate from `AsyncImage`. This release addresses the shortcomings of the original design and features a couple of performance improvements. - `LazyImage` now uses `SwiftUI.Image` instead of `NukeUI.Image` backed by `UIImageView` and `NSImageView`. It eliminates any [discrepancies](https://github.com/kean/Nuke/issues/578) between `LazyImage` and `AsyncImage` layout and self-sizing behavior and fixes issues with `.redacted(reason:)`, `ImageRenderer`, and other SwiftUI APIs that don't work with UIKIt and AppKit based views. - Remove `NukeUI.Image` so the name no longer [clashes](https://github.com/kean/Nuke/discussions/658) with `SwiftUI.Image` - Fix [#669](https://github.com/kean/Nuke/issues/669): `redacted` not working for `LazyImage` - GIF rendering is no longer included in the framework. Please consider using one of the framework that specialize on playing GIFs, such as [Gifu](https://github.com/kaishin/Gifu). It's easy to integrate, especially with `LazyImage`. - Extract progress updates from `FetchImage` to a separate observable object, reducing the number of body reloads - `LazyImage` now requires a single body calculation to render the response from the memory cache (instead of three before) - Disable animations by default - Fix an issue where the image won't reload if you change only `LazyImage` `processors` or `priority` without also changing the image source - `FetchImage/image` now returns `Image` instead of `UIImage` - Make `_PlatformImageView` internal (was public) and remove more typealiases ## Nuke - ImageCache uses 20% of available RAM which is quite aggressive. It's an OK default on iOS because it clears 90% of the used RAM when entering the background to be a good citizen. But it's not a good default on a Mac. Starting with Nuke 12, the default size is now strictly limited to 512 MB. - `ImageDecoder` now defaults to scale `1` for images (configurable using [`UserInfoKey/scaleKey`](https://kean-docs.github.io/nuke/documentation/nuke/imagerequest/userinfokey/scalekey)) - Removes APIs deprecated in the previous versions ## NukeVideo Video playback can be significantly [more efficient](https://web.dev/replace-gifs-with-videos/) than playing animated GIFs. This is why the initial version of NukeUI provided support for basic video playback. But it is not something that the majority of the users need, so this feature was extracted to a separate module called `NukeVideo`. There is now less code that you need to include in your project, which means faster compile time and smaller code size. With this and some other changes in Nuke 12, the two main frameworks – Nuke and NukeUI – now have 25% less code compared to Nuke 11. In addition to this change, there are a couple of improvements in how the precompiled binary frameworks are generated, significantly reducing their size. - Move all video-related code to `NukeVideo` - Remove `ImageContainer.asset`. The asset is now added to `ImageContainer/userInfo` under the new `.videoAssetKey`. - Reduce the size of binary frameworks by up to 50%
Nuke 12.0 (Beta 5)
5 weeks ago
Redesign the concurrency APIs in Nuke ahead of the upcoming changes in Xcode 14.3, making them safer and ergonomic to use, and fully `Sendable`-compliant. - Add `ImagePipeline/imageTask(with:)` method that returns a new type `AsyncImageTask` that you can use to monitor the task progress, change its priority, and, of course, fetch the response. ```swift let task = ImagePipeline.shared.imageTask(with: URL(string: "example.com")) for await progress in task.progress { print("Updated progress: ", progress) } let image = try await task.image ``` - The existing convenience `ImagePipeline/image(for:)` methods now return an image (`UIImage` or `NSImage`) instead of `ImageResponse` - Remove the `delegate` parameter from the existing `ImagePipeline/image(for:)` async/await method to address the upcoming concurrency warnings in Xcode 14.3 - Remove `ImageTaskDelegate` and move its methods to `ImagePipelineDelegate` and add the `pipeline` parameter - Add one final `LazyImage` optimization where when the image is in memory cache, `LazyImage` now requires a single body calculation to render it (instead of three before) – can't get better than this - Use an improved way to generate xcframeworks, significantly reducing their size
Nuke 11.6.4
5 weeks ago
- Fix [#671](https://github.com/kean/Nuke/pull/671): `ImagePipeline/image(for:)` hangs if you cancel the async Task before it is started. Thanks @muukii for reporting and providing a sample.
Nuke 12.0 (Beta 4)
5 weeks ago
- Remove the convenience `LazyImage(url:content:placeholder:)` init method that doesn't offer much compared to the main init and remove public `_LazyImageContents` - Fix an issue where if you change the `LazyImage`'s `processors` or `priority` without also changing the image source, the image wasn't being reloaded - Remove some of the typealises from `NukeUI` - Remove the deprecated APIs in NukeUI - Add missing scale parameter to init with content - `ImageDecoder` now defaults to scale `1` for images - Remove `scale` parameter from `LazyImage` init: it's available via `ImageRequest` `userInfo`
Nuke 11.6.3
5 weeks ago
- Fix warnings in Xcode 14.3
Nuke 12.0 (Beta 3)
5 weeks ago
- `ImageCache` uses 20% of available RAM which is quite aggressive. It's a good default on iOS because it clears 90% of the used RAM when entering the background to be a good citizen. But it's not a good default on a Mac where the app is constantly running, and the RAM usage is highly visible. Starting with Nuke 12, the default size is now strictly limited by 512 MB. - Move all video-related code to a separate module `NukeVideo`, so that the users who don't need it, which are the majority, don't need to pay the extra compile time / code size price. With this and other changes in Nuke 12, if you install NukeUI, you are now adding 25% less code to your project compared to Nuke 11. - Remove `ImageContainer.asset`. The asset is now added to `ImageContainer/userInfo` under the new `.videoAssetKey`. - Make `_PlatformImageView` internal (was public) - Fix an issue with `FetchImage/progress` not delivering updates - `FetchImage/progress` is now created lazily - Remove callbacks from `FetchImage` - `FetchImage/image` now returns `Image` instead of `PlatformImage`
Nuke 12.0 (Beta 2)
6 weeks ago
- Extract progress from `FetchImage` to a separate observable object and reduce a number of `body` reloads - Disable animations by default See also: [Nuke 12.0 (Beta 1) changes](https://github.com/kean/Nuke/releases/tag/12.0.0-beta.1)
Nuke 12.0 (Beta 1)
7 weeks ago
> **Warning**: This is an early preview. The documentation hasn't been updated yet. ## NukeUI 2.0 NukeUI started as a separate [repo](https://github.com/kean/NukeUI), but the initial production version was released as part of [Nuke 11](https://github.com/kean/Nuke/releases/tag/11.0.0). Let's call it NukeUI 1.0. The framework was designed before the [`AsyncImage`](https://developer.apple.com/documentation/swiftui/asyncimage) announcement and had a few discrepancies that made it harder to migrate from `AsyncImage`. This release addresses the shortcomings of the original design. NukeUI 2.0 was developed closely with the open-source [Ice Cubes](https://github.com/Dimillian/IceCubesApp) app for Mastodon, and every single line in `LazyImage` was optimized to achieve the best performance possible. Starting with NukeUI 2.0, `LazyImage` uses `SwiftUI.Image` to display images and eliminates any [discrepancies](https://github.com/kean/Nuke/issues/578) between `LazyImage` and `AsyncImage` layout and self-sizing behavior. And the previously used `NukeUI.Image` was removed so it no longer [conflicts](https://github.com/kean/Nuke/discussions/658) with `SwiftUI.Image`. NukeUI 1.0 tried to do too much in terms of _rendering_ images which is not its primary responsibility – _loading_ images is. The original design resulted in a convoluted and poorly composable API where `LazyImage` would know too much about how the images are rendered. This is no longer the case. - `LazyImage` now uses `SwiftUI.Image` for rendering images and the layout/sizing behavior matches `AsyncImage` exactly - Remove `Image`, `ImageView`, `ImageResizingMode` - Add `LazyImage` initializer that accepts `content` and `placeholder` closures (the same as `AsyncImage`) - Add `scale` parameter to `LazyImage` initializer - Fix [#669](https://github.com/kean/Nuke/issues/669): `redacted` not working for `LazyImage` - GIF rendering is no longer included in the framework. To enable it, use one of the frameworks that support GIF directly, such as [Gifu](https://github.com/kaishin/Gifu) - Video support is also disabled by default (this is subject to change) > **Warning**: GIF and video rendering are now disabled by default ## Deprecations This release also removes the APIs deprecated in the previous versions of the framework
iOS macOS watchOS tvOS
nicklockwood/SwiftFormat 0.51.3
A command-line tool and Xcode Extension for formatting Swift code
⭐️ 6,521
🕓 4 days ago
🔖 Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
0.51.3
4 days ago
- Fixed `hoistTry` and `hoistAwait` rule breaking string interpolations - Fixed bug where `opaqueGenericParameters` rule would remove non-redundant generic type - Fixed parsing bug with trailing closures on optional methods - Fixed `redundantSelf` rule parsing bug affecting string literals - Updated if / switch expression features to be enabled only in Swift 5.9+
0.51.2
3 weeks ago
- Fixed `hoistTry` rule breaking multiline function chains - Added `--asynccapturing` and `--throwcapturing` options for `hoistTry` and `hoistAwait` rules - Fixed changes in last line of file not being correctly tracked
0.51.1
4 weeks ago
- Fixed `redundantNilInit` removing required `nil` inside Result Builders - Fixed `redundantLet` removing required `let` inside Result Builder `switch/case` statements - Fixed `hoistTry` rule removing second `try` inside XCTAssert statements
0.51.0
4 weeks ago
- Added `hoistAwait` and `hoistTry` rules to hoist inline `await`/`try` to start of expression - Extended `redundantPattern` rule to remove redundant `let` in patterns - The `wrapMultilineStatementBraces` rules is now applied more consistently - Updated `redundantReturn`/`Closure` rules to support `if`/`switch` expressions in Swift 5.8 - Added `conditionalAssignment` rule to assign variables using `if`/`switch` expressions in Swift 5.8 - Updated `redundantType` rule to support `if`/`switch` expression assignment Swift 5.8 - Extended `redundantSelf` rule to support implicit `self` in eligible closures in Swift 5.8 - SwiftFormat now ignores `.swiftformat` files when explicit `--config` file is provided - Added `--wrapenumcases with-values` option to only wrap enum cases with values - Added `--wrapeffects` option for wrapping function effects - Removed unsafe `preferDouble` rule
0.50.9
6 weeks ago
- Added Github actions log reporter (see `--reporter` option for details) - Fixed bug where `redundantType` sometimes stripped in cases where it couldn't be inferred - The `redundantType` rule now supports removing type in more cases where supported - Made SwiftFormat for Xcode instructions dynamic according to OS version - Fixed bug where a trailing comma could be left behind by `opaqueGenericParameters` rule - Fixed bug where `wrapAttributes` rule sometimes wrapped inline attributes like `@MainActor` - Improved support for `// swiftformat:options` comment directives - Removed deprecated options from the example `.swiftformat` file
0.50.8
8 weeks ago
- The `redundantBackticks` rule no longer removes required comments around `self` - Associated type headerdoc comments are now handles correctly by the `docComments` rule - Fixed mangled comments when using the `sortedSwitchCases` rule - Hex, octal or binary literals are now sorted correctly in `sortedSwitchCases` rule - Fixed regression in closed brace indentation (introduced in 0.50.7) - Fixed unsafe semicolon removal after inferred `var` properties - Added fileHeader placeholder documentation
0.50.7
13 weeks ago
- Fixed parsing of regex literals preceded by `try` or `await` - Fixed required parens being removed around `await` keyword - Fixed indent for nested, wrapped parameters
0.50.6
16 weeks ago
- Fixed regression in `fileHeader` rule where blank lines were removed after header - Fixed globs matching when command-line tool is invoked from a directory such as `/var/tmp` - Fixed bug in parsing regex literals beginning with `^` character
0.50.5
17 weeks ago
- Fixed incorrect macOS command line binary that accidentally shipped with 0.50.4
0.50.4
18 weeks ago
- Added Swift package command plugin - Added `docComments` rule to convert between regular and documentation comments - Fixed `redundantLet` rule incorrectly stripping `let` inside Result Builders - Fixed `void` rule in cases where `Void` has been locally shadowed - Fixed `fileHeader` rule when file only contains header comment - Fixed unexpected indent and spurious `wrap` warning for blank lines - Fixed parsing bug in `redundantSelf` rule
kean/Pulse 3.6.0-alpha.2
Network logger for Apple platforms
⭐️ 5,221
🕓 2 days ago
🔖 Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
Pulse 3.6.0 (Alpha 2)
2 days ago
## Pulse for Mac - Integrate JSON viewer from Pulse Pro with some improvements - Add "Now" mode for the List view - Fix an issue with Table and Text modes not working if they are selected as the default mode - Fix an issue with an inline filter toolbar appearing for a search view - Fix an issue with the search not updating when new logs are added
Pulse 3.6.0 (Alpha 1)
5 days ago
## Pulse for Mac Introduce the initial version of the [Pulse app](https://user-images.githubusercontent.com/1567433/217407957-4cbf05b4-7560-42a1-b178-f21a40ad7e5d.png) for macOS, written entirely in SwiftUI and designed to be a [Pulse Pro](https://github.com/kean/PulsePro) replacement. ## PulseUI (macOS) - Remove "Store Details" button from Settings (details were moved to a standalone inspector in one of the previous releases) - Remove "Open in Pulse Pro" button from Settings (no reason to do that since they now use the same console) - Move the console toolbar to the top to align the design with other platforms
Pulse 3.5.4
3 weeks ago
- Fix logging on physical tvOS devices – [#173](https://github.com/kean/Pulse/pull/172) by @mmmcheese
Pulse 3.5.3
3 weeks ago
- Improve search performance, especially when dealing with big responses (20+ MB) and short search terms (1 character) that result in a massive number of matches. It's orders of magnitude faster in some scenarios. - Fix [#165](https://github.com/kean/Pulse/issues/165): crash in search
Pulse 3.5.2
6 weeks ago
- Add Swift 5.8 support – [#164](https://github.com/kean/Pulse/pull/164) by [@thedavidharris](https://github.com/thedavidharris)
Pulse 3.5.1
6 weeks ago
- Reduce xcframeworks binary size. Pulse 2.1 MB → 823 KB. PulseUI 7.6 MB → 3.9 MB. - Reduce PulseUI .swiftmodule size: 4.4 MB → 260 KB. - When you focus on one of the groups, it now preserves the order of the logs - On iOS, Insights screen now shows all requests for the current session - When you open slowest requests, redirects, and failures from the Insights screen, the list now updates automatically as new requests are added
Pulse 3.5.0
6 weeks ago
### PulseUI - Fix [#161](https://github.com/kean/Pulse/issues/161): misleading title for successful local URL requests - [macOS] Fix an issue where changing sort descriptors in a table view would affect other display modes - [macOS] Fix an issue where on first selection in a text view or search results list, the main panel would reload - The insights view now shows info for the currently selected tasks - Fix a crash when sharing store and using "This Session" filter ### Pulse - Address [#162](https://github.com/kean/Pulse/issues/162): Add `label` parameter to `LoggerStore/storeRequest` and `NetworkLogger/Configuration` to allow customizing the label associated with the created logs - Remove `NetworkLoggerInsights`
Pulse 3.4.3
7 weeks ago
- Fix [#155](https://github.com/kean/Pulse/issues/155): fix an issue with `GTMSessionFetcher` not working correctly with automation `URLSessionProxyDelegate` registration enabled
Pulse 3.4.2
7 weeks ago
- [macOS] [Update the design](https://user-images.githubusercontent.com/1567433/217407957-4cbf05b4-7560-42a1-b178-f21a40ad7e5d.png) to use the transparent toolbar and move the inspectors to the native left sidebar - [macOS] Fix an issue with navigation from the metrics screen - [macOS] Move the button to switch from the horizontal to vertical layout to the details view - [macOS] Fix an issue with text view not scrolling to the selected match when opened from the full-body console search > *warning*: the new macOS version is still largely experimental and any feedback is appreciated
Pulse 3.4.1
7 weeks ago
- Fix selection not working in search results view on macOS - Fix transaction details opening an empty page - Fix a couple of minor issues in light mode on macOS - Use darker background color for details view (mainly text) on macOS
iOS macOS watchOS tvOS
longitachi/ZLPhotoBrowser 4.4.0
Wechat-like image picker. Support select photos, videos, gif and livePhoto. Support edit image and crop video. 微信样式的图片选择器,支持预览/相册内拍照及录视频、拖拽/滑动选择,编辑图片/视频,支持多语言国际化等功能;
⭐️ 4,384
🕓 2 days ago
🔖 Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
4.4.0
3 days ago
### Add * Limit the maximum number of frames of GIF images to avoid crashes caused by loading too many frames of GIFs, and provide a series of blocks to support custom implementation of GIF image playback. * Modify the UI effect of text input in the image editor. * Support set the default camera position.
4.3.9
6 weeks ago
### Add * Support for customizing the item spacing, row spacing, and column count of the thumbnail view controller. * Moves the camera configuration-related properties from ZLPhotoConfiguration to ZLCameraConfiguration. * Update the UI style of camera interface. * Support callback directly after taking picture. * Increase the maximum zoom ratio of stickers.
4.3.8
15 weeks ago
### Add * Support direct callback after selecting thumbnail. * Add horizontal adjust slider. ### Fix: * Fix the bug of wrong size when merging videos. [#788](https://github.com/longitachi/ZLPhotoBrowser/issues/788) * Hide redo button when filtering or color adjusting.
4.3.7
26 weeks ago
### Add * Modify the parameter type of `selectImageBlock` and use `ZLResultModel` for callback. Delete `shouldAnialysisAsset` property. * Photo editor adapts to iPad. * Arabic supported. @LastSoul * Support redo in graffiti and mosaic tools. * Support for modifying the tint color of the image editor icon. ### Fix: * Fix the bug of getting the wrong version of the video when editing the video.
4.3.6
29 weeks ago
### Add * Support custom alert style. * Improve the experience of image editor.
4.3.5
38 weeks ago
### Add * Support custom alert style. * Improve the experience of image editor.
4.3.4
39 weeks ago
### Fix * Fix a bug of the image editor.
4.3.3
40 weeks ago
### Add * Adjust loading progress hud style to make it prettier. * Add wrapper for ZLPhotoBrowser compatible types. * Support for requesting original images when `allowSelectOriginal = false`. * Update Localizable.strings for Japanese. [#727](https://github.com/longitachi/ZLPhotoBrowser/pull/727) @TowaYamashita
4.3.2
44 weeks ago
### Add * Add Tolerance in Video Editing. * Format code style. ### Fix * Fix some bugs when iOS14 album permissions are limited.
4.3.1 - 4.3.0 Patch
48 weeks ago
### Add * Remove deprecated properties. * Moved some UI related properties to ZLPhotoUIConfiguration. * Add ZLEnlargeButton class instead of extending UIControl to enlarge button click area. * Add fade animation when taking photos.
iOS

Popular Packages

Alamofire/Alamofire 5.6.4
Elegant HTTP Networking in Swift
⭐️ 39,140
🕓 18 weeks ago
🔖 Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
5.6.4
18 weeks ago
Released on 2022-11-21. All issues associated with this milestone can be found using this [filter](https://github.com/Alamofire/Alamofire/milestone/84?closed=1). #### Fixed - Deprecated OS version support in Swift 5.7 SPM Package. - Fixed by [Guglielmo Faglioni](https://github.com/guidev) in Pull Request [#3665](https://github.com/Alamofire/Alamofire/pull/3665). ## New Contributors * @guidev made their first contribution in https://github.com/Alamofire/Alamofire/pull/3665 **Full Changelog**: https://github.com/Alamofire/Alamofire/compare/5.6.3...5.6.4
5.6.3
18 weeks ago
Released on 2022-11-20. All issues associated with this milestone can be found using this [filter](https://github.com/Alamofire/Alamofire/milestone/83?closed=1). #### Updated - Swift package to 5.7, CI to Xcode 14.1. - Updated by [Jon Shier](https://github.com/jshier) in Pull Request [#3653](https://github.com/Alamofire/Alamofire/pull/3653). #### Fixed - Calls to deprecated cancellation handler function. - Fixed by [Sven Münnich](https://github.com/svenmuennich) in Pull Request [#3657](https://github.com/Alamofire/Alamofire/pull/3657). - Unnecessary protocol conformance on Combine publishers. - Fixed by [MoonkiKim(김문기)](https://github.com/tedKim5178) in Pull Request [#3650](https://github.com/Alamofire/Alamofire/pull/3650). - Don't attempt retry when `Request` has already been cancelled. - Fixed by [Jon Shier](https://github.com/jshier) in Pull Request [#3641](https://github.com/Alamofire/Alamofire/pull/3641). #### New Contributors * @tedKim5178 made their first contribution in https://github.com/Alamofire/Alamofire/pull/3650 * @svenmuennich made their first contribution in https://github.com/Alamofire/Alamofire/pull/3657 **Full Changelog**: https://github.com/Alamofire/Alamofire/compare/5.6.2...5.6.3
Safer Encoding
36 weeks ago
Released on 2022-07-17. All issues associated with this milestone can be found using this [filter](https://github.com/Alamofire/Alamofire/milestone/82?closed=1). #### Added - Error when object provided to `JSONEcoding` contains values that can't be passed through `JSONSerialization`. - Added by [Jon Shier](https://github.com/jshier) in Pull Request [#3624](https://github.com/Alamofire/Alamofire/pull/3624). #### Updated - CI support for all supported Xcode, macOS, and Linux versions. - Updated by [Jon Shier](https://github.com/jshier) in Pull Requests [#3607](https://github.com/Alamofire/Alamofire/pull/3607) and [#3622](https://github.com/Alamofire/Alamofire/pull/3622). - Support for various Xcode versions. - Updated by [Jon Shier](https://github.com/jshier) in Pull Requests [#3616](https://github.com/Alamofire/Alamofire/pull/3616) and [#3632](https://github.com/Alamofire/Alamofire/pull/3632). - `Cache-Control` header tests to not require hard-coded delays. - Updated by [Jon Shier](https://github.com/jshier) in Pull Request [#3601](https://github.com/Alamofire/Alamofire/pull/3601). #### Fixed - Swift version check for `SecTrustCopyCertificateChain`. - Fixed by [Jon Shier](https://github.com/jshier) in Pull Request [#3606](https://github.com/Alamofire/Alamofire/pull/3606). - Various documentation issues. - Fixed by [Jacob Lange](https://github.com/jacoblange-dev), [rain2540](https://github.com/rain2540), [bondxf](https://github.com/bondxf), [Ikko Ashimine](https://github.com/eltociear), and [Elon Park](https://github.com/ElonPark) in various Pull Requests.
Missing Cancellation Parameter
49 weeks ago
Released on 2022-04-17. All issues associated with this milestone can be found using this [filter](https://github.com/Alamofire/Alamofire/milestone/81?closed=1). #### Fixed - Missing `automaticallyCancelling` parameter in `serializingDownloadedFileURL`. - Fixed by [Jon Shier](https://github.com/jshier) in Pull Request [#3597](https://github.com/Alamofire/Alamofire/pull/3597).
Concurrency Redux
50 weeks ago
Released on 2022-04-13. All issues associated with this milestone can be found using this [filter](https://github.com/Alamofire/Alamofire/milestone/80?closed=1). #### Added - Support for `HTTPMethod.query` to support the [upcoming standard](https://datatracker.ietf.org/doc/html/draft-ietf-httpbis-safe-method-w-body-02). - Added by [Jon Shier](https://github.com/jshier) in Pull Request [#3553](https://github.com/Alamofire/Alamofire/pull/3553). - Compile-time Swift version check to enforce minimum supported Swift version. - Added by [Dave Verwer](https://github.com/daveverwer) in Pull Request [#3549](https://github.com/Alamofire/Alamofire/pull/3549). - GitHub Sponsors support. You can now sponsor Alamofire directly through GitHub. - Added by [Jon Shier](https://github.com/jshier) in Pull Request [#3543](https://github.com/Alamofire/Alamofire/pull/3543). #### Updated - Swift version required to build [🔥 Experimental 🔥] Swift Concurrency support to 5.6.0 to avoid various Apple bugs with Xcode 13.2.0 and 13.2.1. Support now requires Xcode 13.3.1. - Updated by [Jon Shier](https://github.com/jshier) in Pull Request [#3590](https://github.com/Alamofire/Alamofire/pull/3590). - `DownloadRequest` to avoid producing resume data when not explicitly requested on cancellation. - Updated by [Jon Shier](https://github.com/jshier) in Pull Request [#3538](https://github.com/Alamofire/Alamofire/pull/3538). - Testing infrastructure to use XCTestPlans on Apple platforms. - Updated by [Jon Shier](https://github.com/jshier) in Pull Request [#3538](https://github.com/Alamofire/Alamofire/pull/3538). - GitHub Actions support for greater OS coverage, more SPM platforms, and Swift 5.6. - Updated by [Jon Shier](https://github.com/jshier) in Pull Requests [#3534](https://github.com/Alamofire/Alamofire/pull/3534), [#3545](https://github.com/Alamofire/Alamofire/pull/3545), [#3570](https://github.com/Alamofire/Alamofire/pull/3570), and [#3587](https://github.com/Alamofire/Alamofire/pull/3587). #### Fixed - Various Security framework deprecation warnings when deploying to newer OSes. - Fixed by [Jon Shier](https://github.com/jshier) in Pull Request [#3555](https://github.com/Alamofire/Alamofire/pull/3555). - Various documentation issues. - Fixed by [Jon Shier](https://github.com/jshier), [Emanuele Fumagalli](https://github.com/emanuelef), [Huang-Libo](https://github.com/Huang-Libo), and [rain2540](https://github.com/rain2540) in Pull Requests [#3548](https://github.com/Alamofire/Alamofire/pull/3548), [#3562](https://github.com/Alamofire/Alamofire/pull/3562), [#3573](https://github.com/Alamofire/Alamofire/pull/3573), [#3574](https://github.com/Alamofire/Alamofire/pull/3574), and [#3585](https://github.com/Alamofire/Alamofire/pull/3585).
Swift Concurrency
1 year ago
Alamofire 5.5 is the first release where we're labeling features we consider experimental. These features, while fully designed and well tested, rely on language or framework features which may change or require breaking bug fixes, and we'd rather not have to make a major release in that case. So [🔥 Experimental 🔥] features may require breaking changes in minor, rather than major, releases. This will be rare and compatibility should be preserved in most cases, but cannot be guaranteed. Released on 2021-12-13. All issues associated with this milestone can be found using this [filter](https://github.com/Alamofire/Alamofire/milestone/79?closed=1). #### Added - [🔥 Experimental 🔥] support for Swift Concurrency, including `async`-`await` for requests and `StreamOf` for streaming values. - Added by [Jon Shier](https://github.com/jshier) in Pull Request [#3463](https://github.com/Alamofire/Alamofire/pull/3463). - Generic static accessors for various protocols types for Swift 5.5. - Added by [Jon Shier](https://github.com/jshier) in Pull Request [#3499](https://github.com/Alamofire/Alamofire/pull/3499). - `.indexInBrackets` options for array encoding in query parameters. - Added by [Tiago Lopes](https://github.com/TiagoMaiaL) in Pull Request [#3516](https://github.com/Alamofire/Alamofire/pull/3516). - `RequestAdapterState` and new protocol requirements for `RequestAdapter` to allow for additional state to be available. - Added by [Christian Noon](https://github.com/cnoon) in Pull Request [#3504](https://github.com/Alamofire/Alamofire/pull/3504). #### Updated - `Session` to more safely target provided custom `DispatchQueue`s for internal use. - Updated by [Jon Shier](https://github.com/jshier) in Pull Request [#3523](https://github.com/Alamofire/Alamofire/pull/3523). - `AFError` message regarding unacceptable `Content-Type`s to sort the types. - Updated by [Timur Yusipov](https://github.com/Usipov) in Pull Request [#3518](https://github.com/Alamofire/Alamofire/pull/3518). - Base Swift language version requirement to 5.3. - Updated by [Jon Shier](https://github.com/jshier) in Pull Request [#3495](https://github.com/Alamofire/Alamofire/pull/3495). - Sample app to show proper loading state for requests. - Updated by [Tiago Lopes](https://github.com/TiagoMaiaL) in Pull Request [#3514](https://github.com/Alamofire/Alamofire/pull/3514). #### Deprecated - `responseJSON` and associated methods, in preference to `responseDecodable`. - Deprecated by [Jon Shier](https://github.com/jshier) in Pull Request [#3502](https://github.com/Alamofire/Alamofire/pull/3502). #### Fixed - Use of `Protected` wrapper when accessing properties of the wrapped values to ensure proper thread-safety. - Fixed by [Jon Shier](https://github.com/jshier) in Pull Request [#3505](https://github.com/Alamofire/Alamofire/pull/3505). - Various documentation typos. - Fixed by [Christos Koninis](https://github.com/csknns), [Tiago Lopes](https://github.com/TiagoMaiaL), and [Eugene Berdnikov](https://github.com/evnik) in various Pull Requests.
Xcode 13 Fixes
1 year ago
Released on 2021-09-20. All issues associated with this milestone can be found using this [filter](https://github.com/Alamofire/Alamofire/milestone/78?closed=1). #### Added - Support for Xcode 13, including a workaround for Combine compilation on older architectures. - Added by [Jon Shier](https://github.com/jshier) in Pull Request [#3486](https://github.com/Alamofire/Alamofire/pull/3486). - Testing on watchOS. - Added by [Jon Shier](https://github.com/jshier) in Pull Request [#3449](https://github.com/Alamofire/Alamofire/pull/3449). - Support for building on Windows and Linux. Alamofire is unsupported on these platforms but should build correctly. - Added by [Jon Shier](https://github.com/jshier) and [Alex Taffe](https://github.com/alex-taffe) in Pull Requests [#3446](https://github.com/Alamofire/Alamofire/pull/3446) and [#3462](https://github.com/Alamofire/Alamofire/pull/3462). #### Updated - Usage of `.count >= 0` to `!.isEmpty`. - Updated by [Shafeer P](https://github.com/shafeerp) in Pull Request [#3478](https://github.com/Alamofire/Alamofire/pull/3478). #### Fixed - Async navigation title updating in example app. - Fixed by [Tiago Maia](https://github.com/TiagoMaiaL) in Pull Request [3494](https://github.com/Alamofire/Alamofire/pull/3494). - Various documentation bugs. - Fixed by [Jordan de Laune](https://github.com/jdelaune), [Cédric Luthi](https://github.com/0xced), [Romain Bertozzi](https://github.com/r-mckay), and [Tiago Maia](https://github.com/TiagoMaiaL).
Multipart Order
1 year ago
Released on 2021-04-21. All issues associated with this milestone can be found using this [filter](https://github.com/Alamofire/Alamofire/milestone/77?closed=1). #### Fixed - Change in multipart upload creation order. - Fixed by [Christian Noon](https://github.com/cnoon) in Pull Request [#3438](https://github.com/Alamofire/Alamofire/pull/3438). - Typo in Alamofire 5 migration guide. - Fixed by [DevYeom](https://github.com/DevYeom) in Pull Request [#3431](https://github.com/Alamofire/Alamofire/pull/3431).
Multipart Safety
1 year ago
Released on 2021-04-03. All issues associated with this milestone can be found using this [filter](https://github.com/Alamofire/Alamofire/milestone/76?closed=1). #### Updated - Resume data handling for `DownloadRequest`s to access resume data from errors as well as cancellation. - Updated by [Jon Shier](https://github.com/jshier) in Pull Request [#3419](https://github.com/Alamofire/Alamofire/pull/3419). - Project files and templates for Xcode 12.4 and GitHub templates. - Updated by [Jon Shier](https://github.com/jshier) in Pull Request [#3414](https://github.com/Alamofire/Alamofire/pull/3414). #### Fixed - `MultipartUpload` thread-safety. - Fixed by [Jon Shier](https://github.com/jshier) in Pull Request [#3421](https://github.com/Alamofire/Alamofire/pull/3421). - Multipart body stream length handling to better handle partial streams. - Fixed by [Yu Ao](https://github.com/YuAo) and [Jon Shier](https://github.com/jshier) in Pull Requests [#3380](https://github.com/Alamofire/Alamofire/pull/3380) and [#3420](https://github.com/Alamofire/Alamofire/pull/3420).
Installing Obj-C Headers
2 years ago
Released on 2020-12-20. All issues associated with this milestone can be found using this [filter](https://github.com/Alamofire/Alamofire/milestone/75?closed=1). #### Updated - Project and CocoaPods installation of Obj-C header. - Updated by [Jon Shier](https://github.com/jshier) in Pull Request [#3378](https://github.com/Alamofire/Alamofire/pull/3378).
iOS macOS watchOS tvOS
grpc/grpc v1.53.0
The C based gRPC (C++, Python, Ruby, Objective-C, PHP, C#)
⭐️ 37,462
🕓 1 week ago
🔖 Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
Release v1.53.0
1 week ago
This is release 1.53.0 ([glockenspiel](https://github.com/grpc/grpc/blob/master/doc/g_stands_for.md)) of gRPC Core. For gRPC documentation, see [grpc.io](https://grpc.io/). For previous releases, see [Releases](https://github.com/grpc/grpc/releases). This release contains refinements, improvements, and bug fixes, with highlights listed below. Core --- - xDS: fix crash when removing the last endpoint from the last locality in weighted_target. ([#32592](https://github.com/grpc/grpc/pull/32592)) - filter stack: pass peer name up via recv_initial_metadata batch. ([#31933](https://github.com/grpc/grpc/pull/31933)) - [EventEngine] Add advice against blocking work in callbacks. ([#32397](https://github.com/grpc/grpc/pull/32397)) - [http2] Dont drop connections on metadata limit exceeded. ([#32309](https://github.com/grpc/grpc/pull/32309)) - xDS: reject aggregate cluster with empty cluster list. ([#32238](https://github.com/grpc/grpc/pull/32238)) - Fix Python epoll1 Fork Support. ([#32196](https://github.com/grpc/grpc/pull/32196)) - server: introduce ServerMetricRecorder API and move per-call reporting from a C++ interceptor to a C-core filter. ([#32106](https://github.com/grpc/grpc/pull/32106)) - [EventEngine] Add invalid handle types to the public API. ([#32202](https://github.com/grpc/grpc/pull/32202)) - [EventEngine] Refactoring the EventEngine Test Suite: Part 1. ([#32127](https://github.com/grpc/grpc/pull/32127)) - xDS: fix WeightedClusters total weight handling. ([#32134](https://github.com/grpc/grpc/pull/32134)) C++ --- - Update minimum MSVC version to 2019. ([#32615](https://github.com/grpc/grpc/pull/32615)) - Use CMake variables for paths in pkg-config files. ([#31671](https://github.com/grpc/grpc/pull/31671)) C# --- - Grpc.Tools: Use x86 protoc binaries on arm64 Windows. ([#32017](https://github.com/grpc/grpc/pull/32017)) Python --- - Support python 3.11 on aarch64. ([#32270](https://github.com/grpc/grpc/pull/32270)) - Include .pyi file. ([#32268](https://github.com/grpc/grpc/pull/32268)) - De-experimentalize wait-for-ready. ([#32143](https://github.com/grpc/grpc/pull/32143)) - De-experimentalize compression. ([#32138](https://github.com/grpc/grpc/pull/32138)) Ruby --- - [ruby]: add pre-compiled binaries for ruby 3.2; drop them for ruby 2.6. ([#32089](https://github.com/grpc/grpc/pull/32089))
Release v1.53.0-pre2
3 weeks ago
This is a prerelease of gRPC Core 1.53.0 (glockenspiel). For gRPC documentation, see [grpc.io](https://grpc.io/). For previous releases, see [Releases](https://github.com/grpc/grpc/releases). This prerelease contains refinements, improvements, and bug fixes.
Release v1.47.5
4 weeks ago
This is release 1.47.5 ([gridman](https://github.com/grpc/grpc/blob/master/doc/g_stands_for.md)) of gRPC Core. For gRPC documentation, see [grpc.io](https://grpc.io/). For previous releases, see [Releases](https://github.com/grpc/grpc/releases). This release is a Python-only patch to release universal2 Mac OS artifacts compatible with both x86 and arm64. Python --- - Backport of #31747 to v1.47.x (Build native MacOS arm64 artifacts (universal2)) ([#32446](https://github.com/grpc/grpc/pull/32446))
Release v1.53.0-pre1
5 weeks ago
This is a prerelease of gRPC Core 1.53.0 (glockenspiel). For gRPC documentation, see [grpc.io](https://grpc.io/). For previous releases, see [Releases](https://github.com/grpc/grpc/releases). This prerelease contains refinements, improvements, and bug fixes.
Release v1.51.3
5 weeks ago
This is release gRPC Core 1.51.3 (galaxy). For gRPC documentation, see [grpc.io](https://grpc.io/). For previous releases, see [Releases](https://github.com/grpc/grpc/releases). This release is a Python-only patch to release universal2 Mac OS artifacts compatible with both x86 and arm64. Python --- - Backport of #31747 to v1.51.x (Build native MacOS arm64 artifacts (universal2)) ([#32424](https://github.com/grpc/grpc/pull/32424))
Release v1.52.1
6 weeks ago
This is release 1.52.1 ([gribkoff](https://github.com/grpc/grpc/blob/master/doc/g_stands_for.md)) of gRPC Core. For gRPC documentation, see [grpc.io](https://grpc.io/). For previous releases, see [Releases](https://github.com/grpc/grpc/releases). This release contains refinements, improvements, and bug fixes, with highlights listed below. Core --- - Upgraded Boring SSL to address [CVE-2023-0286](https://www.openssl.org/news/secadv/20230207.txt) (#32353)
Release v1.51.2
6 weeks ago
This is release gRPC Core 1.51.2 (galaxy). For gRPC documentation, see [grpc.io](https://grpc.io/). For previous releases, see [Releases](https://github.com/grpc/grpc/releases). This release contains refinements, improvements, and bug fixes, with highlights listed below. Core --- - Upgraded Boring SSL to address [CVE-2023-0286](https://www.openssl.org/news/secadv/20230207.txt) (#32353)
Release v1.50.2
6 weeks ago
This is release gRPC Core 1.50.2 (galley). For gRPC documentation, see [grpc.io](https://grpc.io/). For previous releases, see [Releases](https://github.com/grpc/grpc/releases). This release contains refinements, improvements, and bug fixes, with highlights listed below. Core --- - Upgraded Boring SSL to address [CVE-2023-0286](https://www.openssl.org/news/secadv/20230207.txt) (#32353)
Release v1.49.3
6 weeks ago
This is release 1.49.3 ([gamma](https://github.com/grpc/grpc/blob/master/doc/g_stands_for.md)) of gRPC Core. For gRPC documentation, see [grpc.io](https://grpc.io/). For previous releases, see [Releases](https://github.com/grpc/grpc/releases). This release contains refinements, improvements, and bug fixes, with highlights listed below. Core --- - Upgraded Boring SSL to address [CVE-2023-0286](https://www.openssl.org/news/secadv/20230207.txt) (#32353)
Release v1.48.4
6 weeks ago
This is release 1.48.4 ([garum](https://github.com/grpc/grpc/blob/master/doc/g_stands_for.md)) of gRPC Core. For gRPC documentation, see [grpc.io](https://grpc.io/). For previous releases, see [Releases](https://github.com/grpc/grpc/releases). This release contains refinements, improvements, and bug fixes, with highlights listed below. Core --- - Upgraded Boring SSL to address [CVE-2023-0286](https://www.openssl.org/news/secadv/20230207.txt) (#32353)
fastlane/fastlane watchbuild/0.1.4
🚀 The easiest way to automate building and releasing your iOS and Android apps
⭐️ 36,802
🕓 14 hours ago
🔖 Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
2.212.1 Fix for Apple ID lockout and Access Forbidden with new hashcash header
5 weeks ago
* [spaceship] Implements new hashcash header in auth flow (#21073) via Josh Holtz (@joshdholtz) * [spaceship] Fix Apple ID 2FA with SMS (#21072) via Josh Holtz (@joshdholtz)
2.212.0 Improvements
5 weeks ago
* [fastlane_core] New FASTLANE_WWDR_USE_HTTP1_AND_RETRIES env (feature flag) to use http 1.1 and retries when installing WWDC certs to fix some CI failures (#21044) via Josh Holtz (@joshdholtz) * [CI] Update deprecated CircleCI images (#20932) via Aaron Brager (@getaaron) * [spaceship] Add language name in stack trace when localization operations fail (#20581) via Cristian Caruceru (@ccaruceru) * [gym] Add show build timing summary option (#20896) via Pol Piella (@polpielladev) * [deliver] add iPad Pro 6th generation (#20993) via Kohki Miki (@giginet) * [action][import_from_git] fix error when cache_path is not specified (#20958) via Vitalii Budnik (@nekrich) * [spaceship] add methods to rename and disable/enable devices (#20928) via Vitalii Budnik (@nekrich) * [spaceship] Remove unused params in ConnectAPI::Device (#20931) via Aaron Brager (@getaaron) * [action][xcodes] add error handling for `xcodes` when running the `installed` cmd (#20867) via Gio Lodi (@mokagio) * [scan] add option to specify result bundle path (#20742) via Benedek Kozma (@Cyberbeni) * [deliver] fix bug when canceling a rejected submission (#20754) via merchang (@merchang) * [fastlane_core] prevent negative argument error for message formatting (#20857) via Akseli Lukkarila (@akselilukkarila) * [spaceship] support fetching `build_bundle_file_sizes` for a `BuildBundle` (#20860) via Liam Nichols (@liamnichols) * [action][update_project_provisioning] redownload AppleIncRootCertificate.cer if file size is 0. (#20812) via Jerry.Qiushi (@JerryZQS) * [docs] add link to Spaceship Debugging docs from Tooling and Debugging docs (#20849) via Rob Mathers (@robmathers) * [screengrab] fix formatting of the `screengrab` / `capture_android_screenshots` docs (#20597) via Olivier Halligon (@AliSoftware) * [action][pod lib lint] fix grammar in success message (#20627) via Tejas Sharma (@tejassharma96) * [match] developer id installer profile for the accessible environments (#20782) via Paul Taykalo (@PaulTaykalo)
2.211.0 Improvements
19 weeks ago
* [release] fix for more forgiving changelog generation for release (#20851) via Josh Holtz (@joshdholtz) * [match][sigh] add support for Apple Silicon Macs in iOS/iPadOS provisioning profiles (#20676) via Philipp Resch (@PinkidG) * [snapshot] fix compiler error on `SnapshotHelper.swift` (#20689) via amcalgates (@amcalgates) * [match] fix match nuke not deleting decrypted files (#20776) via Iulian Onofrei (@revolter) * [docs] update path to iTMSTransporter for Fastlane.swift (#20795) via Rafał Wyszomirski (@rafauke) * [action][update_code_signing_settings] add `sdk` key to update_code_signing_settings (#20655) via gabimoncha (@gabimoncha) * [pilot][deliver] fix private method clone' called for #<Hash> on uploading app (#20662) via freddi(Yuki Aki) (@freddi-kit) * [spaceship] implement resolution center API in Spaceship::ConnectAPI (#20726) via Hiroto Nakamura (@Hiroto-N) * [action] add `xcodes` action, deprecating `xcversion` and `xcode-install` (#20672) via Roger Oba (@rogerluan) * [frameit] fix device detection that would match less specific devices first (#20642) via Guglielmo Faglioni (@guidev) * [deliver] add support to detecting and uploading 6.7" (iPhone 14 Pro Max) screenshots (#20694) via Evgeny Cherpak (@cherpake)
2.210.1 Hotfix for deliver and pilot
27 weeks ago
* [pilot][deliver] Fix how to encode base64 p8 key on deliver and pilot (#20669) via freddi(Yuki Aki) (@freddi-kit)
2.210.0 Improvements
28 weeks ago
* [deliver][pilot] use altool instead of using iTMSTransporter for Xcode 14 (#20631) via freddi(Yuki Aki) (@freddi-kit) * [docs][run_tests] fix typo and improve phrasing of documentation (#20585) via Roger Oba (@rogerluan)
2.209.1 Improvements
31 weeks ago
* [fastlane_core] install all Apple WWDR Intermediate Certificates (#20537) via Tony Li (@crazytonyli) * [Fastlane.swift] the word phrasing used has been standardized. (#20543) via Yusuke Arakawa (@nekolaboratory) * [spaceship] ignoring case sensitive when requesting SMS (#20436) via harrimaatta (@harrimaatta)
2.209.0 Improvements
33 weeks ago
* [deliver] fix typo caused by string concatenation (#20531) via Roger Oba (@rogerluan) * [frameit] faceook.design moved to design.facebook.com (#20513) via Guglielmo Faglioni (@guidev) * [match][sigh][cert] added checking hash of installed wwdr certificates (#20507) via grey442 (@grey442) * [action] adding no overwrite and local only options to the pod repo push command (#20455) via polmum (@polmum) * [core] fix unescaped \ (#20508) via Arthur Baars (@aibaars) * [action][tests] don't create keychain files in lazy manner (#20478) via Bartosz Nowak (@DuMaM) * [pilot] app_version and app_build should not be fetched from a local IPA or PKG when distribute_only is set (#20488) via Colin Tremblay (@tremblay) * [match] suppress null byte message (#20497) via Aaron Brager (@getaaron)
2.208.0 Improvements
36 weeks ago
* [spaceship] fix `fastlane init` and temporarily retrofitting `Spaceship::Tunes::Application.find` (#20480) via Josh Holtz (@joshdholtz) * [match][sigh] prefer default keychain during wwdr cert installation (#20448) via Bartosz Nowak (@DuMaM) * [match][sigh] fix access to certs installed by fastlane tools for productsign command for macOS (#20474) via Bartosz Nowak (@DuMaM) * [match] extract the certificate name from provisioning profiles (#20187) via Tejas Sharma (@tejassharma96) * [action][changelog_from_git_commits] fix description for documentation (#20430) via Mathijs Bernson (@mbernson) * [snapshot] use empty string to blank out operator name by default (#20429) via Zev Eisenberg (@ZevEisenberg) * [trainer] fix ERB.new() deprecation warnings (#20440) via Philipp Wallisch (@wallisch) * [match] fixes set up bugs when using GitLab Secure Files as a Match storage backend (#20452) via Darby Frey (@darbyfrey)
2.207.0 Many Improvements and Dropping Ruby 2.5 Support
39 weeks ago
* [match] add profile_type filtering when checking if profile exists (#20311) via Paul Taykalo (@PaulTaykalo) * [deliver] update deliver/runner.rb to handle both ipa and pkg paths. (#20043) via Stefan Natchev (@snatchev) * [match] add imports, fix linting errors, rename env variable (#20418) via Josh Holtz (@joshdholtz) * [spaceship] allow for removing app from sale by updating territories (#20324) via Lukasz Grabowski (@lucgrabowski) * [sigh][match][spaceship] add missing inhouse to mac profile types (#20353) via Bartosz Nowak (@DuMaM) * [Fastlane.swift] show http error message from AppStore (#20397) via Julian Kalinowski (@kalinjul) * [match] adding support for GitLab Secure Files as a Match storage mode (#20386) via Darby Frey (@darbyfrey) * [match] improve Match::CommandsGenerator's decrypt option unit test (#20395) via Manish Rathi (@crazymanish) * [match] added Match::CommandsGenerator's import option unit test (#20396) via Manish Rathi (@crazymanish) * [fastlane-core][scan] added destination param support inside the `xcodebuild` command (#20399) via Manish Rathi (@crazymanish) * [pilot] added the Pilot::TesterExporter class unit tests (#20394) via Manish Rathi (@crazymanish) * [frameit] add Device Google Pixel 5 (#20389) via Denis Andrašec (@denrase) * [action][update_info_plist] improve the plist file-path option validation check (#20356) via Manish Rathi (@crazymanish) * [match] specify s3 object prefix (#20344) via Hiroshi Ishihara (@iaia) * [snapshot] Add missing iPod touch to Generated Snapshot Reports (#20337) via Kyle Howells (@kylehowells) * [Ruby] Ruby 2.6 is now the minimum (dropping Ruby 2.5) (#20413) via Josh Holtz (@joshdholtz) * [gem] update rack due to security alert from dependabot (#20339) via Lukasz Grabowski (@lucgrabowski) * [fastlane] allow overriding the architecture to run xcodebuild under (#20323) via Manu Wallner (@milch)
2.206.2 Improvements
44 weeks ago
* [Fastlane.swift] fix compile issue with argumentProcessor (#20318) via Josh Holtz (@joshdholtz) * [Fastlane.Swift] Use ArgumentProcessor port to start fastlane socket_server (#20176) via Sven Tiigi (@SvenTiigi) * [pem] fixed "\x82" from ASCII-8BIT to UTF-8 when saving .p12 files to disk (#20317) via Roger Oba (@rogerluan) * [fastlane] fix a grammatical mistake when prompting which lane to run (#20307) via kamimi01 (@kamimi01) * [fastlane][tests] add tests for CLIToolsDistributor (#20315) via Lukasz Grabowski (@lucgrabowski)
AFNetworking/AFNetworking 4.0.1
A delightful networking framework for iOS, macOS, watchOS, and tvOS.
⭐️ 33,346
🕓 10 weeks ago
🔖 Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
Fixes and Updates
2 years ago
Released on Sunday, April 19, 2020. All issues associated with this milestone can be found using this [filter](https://github.com/AFNetworking/AFNetworking/milestone/20?closed=1). #### Updated * Project templates and integrations. * Implemented by Kaspik in [#4531](https://github.com/AFNetworking/AFNetworking/pull/4531). * Various CocoaPods podspec settings. * Implemented by ElfSundae in [#4528](https://github.com/AFNetworking/AFNetworking/pull/4528), [#4532](https://github.com/AFNetworking/AFNetworking/pull/4532), and [#4533](https://github.com/AFNetworking/AFNetworking/pull/4533). #### Fixed * Crash during authentication delegate method. * Implemented by Kaspik, ElfSundae, and jshier in [#4542](https://github.com/AFNetworking/AFNetworking/pull/4542), [#4552](https://github.com/AFNetworking/AFNetworking/pull/4552), and [#4553](https://github.com/AFNetworking/AFNetworking/pull/4553). * SPM integration. * Implemented by jshier in [#4554](https://github.com/AFNetworking/AFNetworking/pull/4554). * Improper update instead of replacement of header values. * Implemented by ElfSundae in [#4550](https://github.com/AFNetworking/AFNetworking/pull/4550). * Nullability of some methods. * Implemented by ElfSundae in [#4551](https://github.com/AFNetworking/AFNetworking/pull/4551). * Typos in CHANGELOG. * Implemented by ElfSundae in [#4537](https://github.com/AFNetworking/AFNetworking/pull/4537). * Missing tvOS compatibility for some methods. * Implemented by ElfSundae in [#4536](https://github.com/AFNetworking/AFNetworking/pull/4536). * Missing `FOUNDATION_EXPORT` for `AFJSONObjectByRemovingKeysWithNullValues`. * Implemented by ElfSundae in [#4529](https://github.com/AFNetworking/AFNetworking/pull/4529). #### Removed * Unused UIImage+AFNetworking.h file. * Implemented by ElfSundae in [#4535](https://github.com/AFNetworking/AFNetworking/pull/4535).
A Long Time Coming
3 years ago
Released on Sunday, March 29, 2020. All issues associated with this milestone can be found using this [filter](https://github.com/AFNetworking/AFNetworking/milestone/16?closed=1). #### Added * Notificate when a downloaded file has been moved successfully. * Implemented by xingheng in [#4393](https://github.com/AFNetworking/AFNetworking/pull/4393). * Specific error for certificate pinning failure. * Implemented by 0xced in [#3425](https://github.com/AFNetworking/AFNetworking/pull/3425). * `WKWebView` extensions. * Implemented by tjanela in [#4439](https://github.com/AFNetworking/AFNetworking/pull/4439). * Automatic location of certificates in the main bundle for certificate pinning. * Implemented by 0xced in [#3752](https://github.com/AFNetworking/AFNetworking/pull/3752). * User-Agent support for tvOS. * Implemented by ghking in [#4014](https://github.com/AFNetworking/AFNetworking/pull/4014). * Ability for `AFHTTPSessionManager` to recreate its underlying `NSURLSession`. * Implemented by Kaspik in [#4256](https://github.com/AFNetworking/AFNetworking/pull/4256). * Ability to set HTTP headers per request. * Implemented by stnslw in [#4113](https://github.com/AFNetworking/AFNetworking/pull/4113). * Ability to capture `NSURLSessionTaskMetrics`. * Implemented by Caelink in [#4237](https://github.com/AFNetworking/AFNetworking/pull/4237). #### Updated * `dataTaskWithHTTPMethod` to be public. * Implemented by smartinspereira in [#4007](https://github.com/AFNetworking/AFNetworking/pull/4007). * Reachability notification to include the instance which issued the notification. * Implemented by LMsgSendNilSelf in [#4051](https://github.com/AFNetworking/AFNetworking/pull/4051). * `AFJSONObjectByRemovingKeysWithNullValues` to be public. * Implemented by ashfurrow in [#4051](https://github.com/AFNetworking/AFNetworking/pull/4051). * `AFJSONObjectByRemovingKeysWithNullValues` to remove `NSNull` values from `NSArray`s. * Implemented by ashfurrow in [#4052](https://github.com/AFNetworking/AFNetworking/pull/4052). #### Changed * Automated CI to GitHub Actions. * Implemented by jshier in [#4523](https://github.com/AFNetworking/AFNetworking/pull/4523). #### Fixed * Explicit `NSSecureCoding` support. * Implemented by jshier in [#4523](https://github.com/AFNetworking/AFNetworking/pull/4523). * Deprecated API usage on Catalyst. * Implemented by jshier in [#4523](https://github.com/AFNetworking/AFNetworking/pull/4523). * Nullability annotations. * Implemented by jshier in [#4523](https://github.com/AFNetworking/AFNetworking/pull/4523). * `AFImageDownloader` to more accurately cancel downloads. * Implemented by kinarobin in [#4407](https://github.com/AFNetworking/AFNetworking/pull/4407). * Double KVO notifications in `AFNetworkActivityManager`. * Implemented by kinarobin in [#4406](https://github.com/AFNetworking/AFNetworking/pull/4406). * Availability annotations around `NSURLSessionTaskMetrics`. * Implemented by ElfSundae in [#4516](https://github.com/AFNetworking/AFNetworking/pull/4516). * Issues with `associated_object` and subclasses. * Implemented by welcommand in [#3872](https://github.com/AFNetworking/AFNetworking/pull/3872). * Memory leak in example application. * Implemented by svoit in [#4196](https://github.com/AFNetworking/AFNetworking/pull/4196). * Crashes in mulithreaded scenarios and `dispatch_barrier`. * Implemetned by streeter in [#4474](https://github.com/AFNetworking/AFNetworking/pull/4474). * Issues with `NSSecureCoding`. * Implemented by ElfSudae in [#4409](https://github.com/AFNetworking/AFNetworking/pull/4409). * Code style issues. * Implemented by svoit in [#4200](https://github.com/AFNetworking/AFNetworking/pull/4200). * Race condition in `AFImageDownloader`. * Implemented by bbeversdorf in [#4246](https://github.com/AFNetworking/AFNetworking/pull/4246). * Coding style issues. * Implemented by LeeHongHwa in [#4002](https://github.com/AFNetworking/AFNetworking/pull/4002). #### Removed * Support for iOS < 9, macOS < 10.10. * Implemented by jshier in [#4523](https://github.com/AFNetworking/AFNetworking/pull/4523). * All previously deprecated APIs. * Implemented by jshier in [#4523](https://github.com/AFNetworking/AFNetworking/pull/4523). * Unnecessary `__block` capture. * Implemented by kinarobin in [#4526](https://github.com/AFNetworking/AFNetworking/pull/4526). * Workaround for `NSURLSessionUploadTask` creation on iOS 7. * Implemented by kinarobin in [#4525](https://github.com/AFNetworking/AFNetworking/pull/4525). * Workaround for safe `NSURLSessionTask` creation on iOS < 8. * Implemented by kinarobin in [#4401](https://github.com/AFNetworking/AFNetworking/pull/4401). * `UIWebView` extensions. * Implemented by tjanela in [#4439](https://github.com/AFNetworking/AFNetworking/pull/4439).
2.7.0
4 years ago
Released on Tuesday, February 12, 2019. All issues associated with this milestone can be found using this [filter](https://github.com/AFNetworking/AFNetworking/issues?q=milestone%3A2.7.0+is%3Aclosed). #### Fixed * Update Podfile to work on modern CocoaPods * Fixed by [SlaunchaMan](https://github.com/SlaunchaMan) in [#4329](https://github.com/AFNetworking/AFNetworking/pull/4329). * Add nullability specifiers to all `id responseObject` parameters * Fixed by [sashaweiss](https://github.com/sashaweiss) in [#4335](https://github.com/AFNetworking/AFNetworking/pull/4335). * Fix empty content crash on `AFHTTPSessionManager.post` * Fixed by [jcravioto](https://github.com/jcravioto) in [#4296](https://github.com/AFNetworking/AFNetworking/pull/4296).
3.2.1
4 years ago
Released on Friday, May 04, 2018. All issues associated with this milestone can be found using this [filter](https://github.com/AFNetworking/AFNetworking/issues?q=milestone%3A3.2.1+is%3Aclosed). #### Updated * Xcode 9.3 Support * Implemented by Jeff Kelley in [#4199](https://github.com/AFNetworking/AFNetworking/pull/4199). * Update HTTPBin certificates for April 2018. * Implemented by Jeff Kelley in [#4198](https://github.com/AFNetworking/AFNetworking/pull/4198). #### Additional Changes * Remove conflicting nullable specifier on init * Implemented by Nick Brook and Jeff Kelley in [#4182](https://github.com/AFNetworking/AFNetworking/pull/4182). * Use @available if available to silence a warning. * Implemented by Jeff Kelley in [#4138](https://github.com/AFNetworking/AFNetworking/pull/4138). * UIImageView+AFNetworking: Prevent stuck state for malformed urlRequest * Implemented by Adam Duflo and aduflo in [#4131](https://github.com/AFNetworking/AFNetworking/pull/4131). * add the link for LICENSE * Implemented by Liao Malin in [#4125](https://github.com/AFNetworking/AFNetworking/pull/4125). * Fix analyzer warning for upload task creation * Implemented by Jeff Kelley in [#4122](https://github.com/AFNetworking/AFNetworking/pull/4122).
3.2.0
5 years ago
Released on Friday, December 15, 2017. All issues associated with this milestone can be found using this [filter](https://github.com/AFNetworking/AFNetworking/issues?q=milestone%3A3.2.0+is%3Aclosed). #### Added * Config `AFImageDownloader` `NSURLCache` and ask `AFImageRequestCache` implementer if an image should be cached * Implemented by wjehenddher in [#4010](https://github.com/AFNetworking/AFNetworking/pull/4010). * Add `XMLParser`/`XMLDocument` serializer tests * Implemented by skyline75489 in [#3753](https://github.com/AFNetworking/AFNetworking/pull/3753). * Enable custom httpbin URL with `HTTPBIN_BASE_URL` environment variable * Implemented by 0xced in [#3748](https://github.com/AFNetworking/AFNetworking/pull/3748). * `AFHTTPSessionManager` now throws exception if SSL pinning mode is set for non https sessions * Implemented by 0xced in [#3687](https://github.com/AFNetworking/AFNetworking/pull/3687). #### Updated * Update security policy test certificates * Implemented by SlaunchaMan in [#4103](https://github.com/AFNetworking/AFNetworking/pull/4103). * Allow return value of HTTP redirection block to be `NULL` * Implemented by TheDom in [#3975](https://github.com/AFNetworking/AFNetworking/pull/3975). * Clarify documentation for supported encodings in `AFJSONResponseSerializer` * Implemented by skyline75489 in [#3750](https://github.com/AFNetworking/AFNetworking/pull/3750). * Handle Error Pointers according to Cocoa Convention * Implemented by tclementdev in [#3653](https://github.com/AFNetworking/AFNetworking/pull/3653). * Updates `AFHTTPSessionManager` documentation to reflect v3.x change * Implemented by ecaselles in [#3476](https://github.com/AFNetworking/AFNetworking/pull/3476). * Improved code base to generate fewer warnings when using stricter compiler settings * Implemented by 0xced in [3431](https://github.com/AFNetworking/AFNetworking/pull/3431). #### Changed * Change “Mac OS X” and “OS X” references to “macOS” * Implemented by SlaunchaMan in [#4104](https://github.com/AFNetworking/AFNetworking/pull/4104). #### Fixed * Fixed crash around customizing `NSURLCache` size for < iOS 8.2 * Implemented by kcharwood in [#3735](https://github.com/AFNetworking/AFNetworking/pull/3735). * Fixed issue where `UIWebView` extension did not preserve all of the request information * Implemented by skyline75489 in [#3733](https://github.com/AFNetworking/AFNetworking/pull/3733). * Fixed bug with webview delegate callback * Implemented by kcharwood in [#3727](https://github.com/AFNetworking/AFNetworking/pull/3727). * Fixed crash when passing invalid JSON to request serialization * Implemented by 0xced in [#3719](https://github.com/AFNetworking/AFNetworking/pull/3719). * Fixed potential KVO crasher for URL Session Task delegates * Implemented by 0xced in [#3718](https://github.com/AFNetworking/AFNetworking/pull/3718). * Removed ambiguous array creation in `AFSecurityPolicy` * Implemented by sgl0v in [#3679](https://github.com/AFNetworking/AFNetworking/pull/3679). * Fixed issue where `NS_UNAVAILABLE` is not reported for `AFNetworkReachabilityManager` * Implemented by Microbee23 in [#3649](https://github.com/AFNetworking/AFNetworking/pull/3649). * Require app extension api only on watchOS * Implemented by ethansinjin in [#3612](https://github.com/AFNetworking/AFNetworking/pull/3612). * Remove KVO of progress in favor of using the NSURLSession delegate APIs * Implemented by coreyfloyd in [#3607](https://github.com/AFNetworking/AFNetworking/pull/3607). * Fixed an issue where registering a `UIProgessView` to a task that was causing a crash * Implemented by Starscream27 in [#3604](https://github.com/AFNetworking/AFNetworking/pull/3604). * Moved `[self didChangeValueForKey:@"currentState"]` into correct scope * Implemented by chenxin0123 in [#3565](https://github.com/AFNetworking/AFNetworking/pull/3565). * Fixed issue where response serializers did not inherit super class copying * Implemented by kcharwood in [#3559](https://github.com/AFNetworking/AFNetworking/pull/3559). * Fixed crashes due to race conditions with `NSMutableDictionary` access in `AFHTTPRequestSerializer` * Implemented by alexbird in [#3526](https://github.com/AFNetworking/AFNetworking/pull/3526). * Updated dash character to improve markdown parsing for license * Implemented by gemmakbarlow in [#3488](https://github.com/AFNetworking/AFNetworking/pull/3488). #### Removed * Deprecate the unused stringEncoding property of `AFHTTPResponseSerializer` * Implemented by 0xced in [#3751](https://github.com/AFNetworking/AFNetworking/pull/3751). * Removed unused `AFTaskStateChangedContext` * Implemented by yulingtianxia in [#3432](https://github.com/AFNetworking/AFNetworking/pull/3432).
3.1.0
7 years ago
Released on Thursday, March 31, 2016. All issues associated with this milestone can be found using this [filter](https://github.com/AFNetworking/AFNetworking/issues?q=milestone%3A3.1.0+is%3Aclosed). #### Added - Improved `AFImageResponseSerializer` test coverage - Implemented by quellish in [#3367](https://github.com/AFNetworking/AFNetworking/pull/3367). - Exposed `AFQueryStringFromParameters` and `AFPercentEscapedStringFromString` for public use. - Implemented by Kevin Harwood in [#3160](https://github.com/AFNetworking/AFNetworking/pull/3160). #### Updated - Updated Test Suite to run on Xcode 7.3 - Implemented by Kevin Harwood in [#3418](https://github.com/AFNetworking/AFNetworking/pull/3418). - Added white space to URLs in code comment to allow Xcode to properly parse them - Implemented by Draveness in [#3384](https://github.com/AFNetworking/AFNetworking/pull/3384). - Updated documentation to match method names and correct compiler warnings - Implemented by Hakon Hanesand in [#3369](https://github.com/AFNetworking/AFNetworking/pull/3369). - Use `NSKeyValueChangeNewKey` constant in change dictionary rather than hardcoded string. - Implemented by Wenbin Zhang in [#3360](https://github.com/AFNetworking/AFNetworking/pull/3360). - Resolved compiler warnings for documentation errors - Implemented by Ricardo Santos in [#3336](https://github.com/AFNetworking/AFNetworking/pull/3336). #### Changed - Reverted `NSURLSessionAuthChallengeDisposition` to `NSURLSessionAuthChallengeCancelAuthenticationChallenge` for SSL Pinning - Implemented by Kevin Harwood in [#3417](https://github.com/AFNetworking/AFNetworking/pull/3417). #### Fixed - Removed trailing question mark in query string if parameters are empty - Implemented by Kevin Harwood in [#3386](https://github.com/AFNetworking/AFNetworking/pull/3386). - Fixed crash if bad URL was passed into the image downloader - Implemented by Christian Wen and Kevin Harwood in [#3385](https://github.com/AFNetworking/AFNetworking/pull/3385). - Fixed image memory calculation - Implemented by 周明宇 in [#3344](https://github.com/AFNetworking/AFNetworking/pull/3344). - Fixed issue where UIButton image downloading called wrong cancel method - Implemented by duanhong in [#3332](https://github.com/AFNetworking/AFNetworking/pull/3332). - Fixed image downloading cancellation race condition - Implemented by Kevin Harwood in [#3325](https://github.com/AFNetworking/AFNetworking/pull/3325). - Fixed static analyzer warnings on AFNetworkReachabilityManager - Implemented by Jeff Kelley in [#3315](https://github.com/AFNetworking/AFNetworking/pull/3315). - Fixed issue where download progress would not be reported in iOS 7 - Implemented by zwm in [#3294](https://github.com/AFNetworking/AFNetworking/pull/3294). - Fixed status code 204/205 handling - Implemented by Kevin Harwood in [#3292](https://github.com/AFNetworking/AFNetworking/pull/3292). - Fixed crash when passing nil/null for progress in UIWebView extension - Implemented by Kevin Harwood in [#3289](https://github.com/AFNetworking/AFNetworking/pull/3289). #### Removed - Removed workaround for NSJSONSerialization bug that was fixed in iOS 7 - Implemented by Cédric Luthi in [#3253](https://github.com/AFNetworking/AFNetworking/pull/3253).
3.0.4
7 years ago
Released on Friday, December 18, 2015. All issues associated with this milestone can be found using this [filter](https://github.com/AFNetworking/AFNetworking/issues?q=milestone%3A3.0.4+is%3Aclosed). #### Fixed - Fixed issue where `AFNSURLSessionTaskDidResumeNotification` was removed twice - Implemented by Kevin Harwood in [#3236](https://github.com/AFNetworking/AFNetworking/pull/3236).
3.0.3
7 years ago
Released on Wednesday, December 16, 2015. All issues associated with this milestone can be found using this [filter](https://github.com/AFNetworking/AFNetworking/issues?q=milestone%3A3.0.3+is%3Aclosed). #### Added - Added tests for response serializers to increase test coverage - Implemented by Kevin Harwood in [#3233](https://github.com/AFNetworking/AFNetworking/pull/3233). #### Fixed - Fixed `AFImageResponseSerializer` serialization macros on watchOS and tvOS - Implemented by Charles Joseph in [#3229](https://github.com/AFNetworking/AFNetworking/pull/3229).
3.0.2
7 years ago
Released on Monday, December 14, 2015. All issues associated with this milestone can be found using this [filter](https://github.com/AFNetworking/AFNetworking/issues?q=milestone%3A3.0.2+is%3Aclosed). #### Fixed - Fixed a crash in `AFURLSessionManager` when resuming download tasks - Implemented by Chongyu Zhu in [#3222](https://github.com/AFNetworking/AFNetworking/pull/3222). - Fixed issue where background button image would not be updated - Implemented by eofs in [#3220](https://github.com/AFNetworking/AFNetworking/pull/3220).
3.0.1
7 years ago
Released on Friday, December 11, 2015. All issues associated with this milestone can be found using this [filter](https://github.com/AFNetworking/AFNetworking/issues?q=milestone%3A3.0.1+is%3Aclosed). #### Added - Added Xcode 7.2 support to Travis - Implemented by Kevin Harwood in [#3216](https://github.com/AFNetworking/AFNetworking/pull/3216). #### Fixed - Fixed race condition with ImageView/Button image downloading when starting/cancelling/starting the same request - Implemented by Kevin Harwood in [#3215](https://github.com/AFNetworking/AFNetworking/pull/3215).
iOS macOS watchOS tvOS
danielgindi/Charts v4.1.0
Beautiful charts for iOS/tvOS/OSX! The Apple side of the crossplatform MPAndroidChart.
⭐️ 26,572
🕓 28 weeks ago
🔖 Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
v4.1.0
28 weeks ago
## What's Changed * Update README.md by @jeremyteh in https://github.com/danielgindi/Charts/pull/4886 * Fix navigation bar transparent issue by @wlixcc in https://github.com/danielgindi/Charts/pull/4875 * Update ChartDataSet.swift by @batikansosun in https://github.com/danielgindi/Charts/pull/4861 * Fixes for Swift 5.7 compiler by @lukeredpath in https://github.com/danielgindi/Charts/pull/4823 * Add double mark for compiler check related with issue #4835 by @eliakorkmaz in https://github.com/danielgindi/Charts/pull/4836 * Fix chart only drawing first entry by @FelixHerrmann in https://github.com/danielgindi/Charts/pull/4829 ## New Contributors * @jeremyteh made their first contribution in https://github.com/danielgindi/Charts/pull/4886 * @wlixcc made their first contribution in https://github.com/danielgindi/Charts/pull/4875 * @batikansosun made their first contribution in https://github.com/danielgindi/Charts/pull/4861 * @lukeredpath made their first contribution in https://github.com/danielgindi/Charts/pull/4823 * @eliakorkmaz made their first contribution in https://github.com/danielgindi/Charts/pull/4836 * @FelixHerrmann made their first contribution in https://github.com/danielgindi/Charts/pull/4829 **Full Changelog**: https://github.com/danielgindi/Charts/compare/v4.0.3...v4.1.0
v4.0.3
44 weeks ago
## What's Changed * Remove Cocoadocs reference from README by @rph8 in https://github.com/danielgindi/Charts/pull/4812 * Highlighter fix by @kcome in https://github.com/danielgindi/Charts/pull/4721 * Added tutorial links by @phuanggh in https://github.com/danielgindi/Charts/pull/4669 * Update ChartData.swift by @truongtho1603 in https://github.com/danielgindi/Charts/pull/4822 * Properties on axis renderers to Objc (Fixes #4800) by @SLambrakis in https://github.com/danielgindi/Charts/pull/4801 ## New Contributors * @rph8 made their first contribution in https://github.com/danielgindi/Charts/pull/4812 * @kcome made their first contribution in https://github.com/danielgindi/Charts/pull/4721 * @phuanggh made their first contribution in https://github.com/danielgindi/Charts/pull/4669 * @truongtho1603 made their first contribution in https://github.com/danielgindi/Charts/pull/4822 * @SLambrakis made their first contribution in https://github.com/danielgindi/Charts/pull/4801 **Full Changelog**: https://github.com/danielgindi/Charts/compare/v4.0.2...v4.0.3
v4.0.2 Release
1 year ago
- Fixes build issues by replacing `class` protocol conformance to `AnyObject` - Update `swift-algorithms` to 1.0 - Add support for cocoapods for 4.0 - Bump lowest supported versions to iOS 10, macOS 10.12, tvOS 10
v4.0.1 Release
2 years ago
## v4.0.1 Release Thanks @jjatie, 4.0.1 release brings: Support Swift Package Manager and switch to another Snapshot test framework. Use Github Actions instead of Travis CI to run faster and work around Carthage issues against Xcode12. Snapshot UT now supports Apple Silicon. Adopt Swift-Algorithm crafted by Apple and the community. Full [changelog](https://github.com/danielgindi/Charts/blob/master/CHANGELOG.md) ------------- We have merged our long waited 4.0 branch into master. It adopts latest Swift trends and benefits and more flexbile and More swift! This is a huge release as a lot of APIs have changed and adopted new protocols. So please expect it will break your code especially about the collection protocols. We will add a few Pull requests in the near future such as https://github.com/danielgindi/Charts/pull/4411. The pre-release could last a little bit longer since we don't want to push people to update. But we do encourage people to try it out and give us feed back.
Xcode 12 support
2 years ago
Xcode 12 support
v3.5.0 Release
2 years ago
### Build on Xcode 11.4 and latest Swift (pod) Change log:https://github.com/danielgindi/Charts/blob/master/CHANGELOG.md **Merged pull requests:** [Full github commit log](https://github.com/danielgindi/Charts/compare/v3.4.0...v3.5.0) - Fix warnings on current code base [\#4321](https://github.com/danielgindi/Charts/pull/4321) ([liuxuan30](https://github.com/liuxuan30)) - Bugfix/legend offset double [\#4277](https://github.com/danielgindi/Charts/pull/4277) ([danielgindi](https://github.com/danielgindi)) - Fix for \#4274 string comparison issue in ChartData::getDataSetByLabel [\#4275](https://github.com/danielgindi/Charts/pull/4275) ([PeterKaminski09](https://github.com/PeterKaminski09)) - Restored correct velocity sampler [\#4273](https://github.com/danielgindi/Charts/pull/4273) ([danielgindi](https://github.com/danielgindi)) - Bugfix/pie highlight [\#4272](https://github.com/danielgindi/Charts/pull/4272) ([danielgindi](https://github.com/danielgindi)) - Call chartViewDidEndPanning on when \*panning\* is ended [\#4271](https://github.com/danielgindi/Charts/pull/4271) ([danielgindi](https://github.com/danielgindi)) - labelXOffset = 10 is default for radar chart only [\#4270](https://github.com/danielgindi/Charts/pull/4270) ([danielgindi](https://github.com/danielgindi)) - Use faster check for line whether it's inside drawing rect [\#4269](https://github.com/danielgindi/Charts/pull/4269) ([danielgindi](https://github.com/danielgindi)) - Refactor/cleanup [\#4268](https://github.com/danielgindi/Charts/pull/4268) ([danielgindi](https://github.com/danielgindi)) - address \#4033 draw half pie chart more accurate [\#4266](https://github.com/danielgindi/Charts/pull/4266) ([liuxuan30](https://github.com/liuxuan30)) - Update README.md, added link to tutorial about Radar Charts. [\#4258](https://github.com/danielgindi/Charts/pull/4258) ([DavidPiper94](https://github.com/DavidPiper94)) - Changes to fix Catalyst compatibility [\#4254](https://github.com/danielgindi/Charts/pull/4254) ([CAPIStkidd](https://github.com/CAPIStkidd)) - Platform separation [\#4178](https://github.com/danielgindi/Charts/pull/4178) ([jjatie](https://github.com/jjatie)) - introduce gracefully degrading abstractions for dark mode for ios and… [\#4171](https://github.com/danielgindi/Charts/pull/4171) ([motocodeltd](https://github.com/motocodeltd)) - Performed recommended localization and internationalization changes. [\#4162](https://github.com/danielgindi/Charts/pull/4162) ([coltonlemmon](https://github.com/coltonlemmon)) - Use interpolation instead of '+' concatenation for problematic expression [\#4123](https://github.com/danielgindi/Charts/pull/4123) ([Jumhyn](https://github.com/Jumhyn)) - Allowing overriding for YAxisRenderer.drawYLabels [\#4089](https://github.com/danielgindi/Charts/pull/4089) ([muclemente](https://github.com/muclemente)) - move isDrawCirclesEnabled check further up in code to avoid creating … [\#4050](https://github.com/danielgindi/Charts/pull/4050) ([xymtek](https://github.com/xymtek))
3.4.0 Release
3 years ago
### Support Xcode 11 and new Swift 5 ### Bug Fix #4029: Index out of bounds exception in v3.2 in createAccessibleElement #4094: Horizontal Bezier Line Graph Not Drawing Through All Points #4093: Line chart x axis animation is broken #4099: Line renderer did not render lines if their coordinates fell outside of the viewport full change log:https://github.com/danielgindi/Charts/blob/master/CHANGELOG.md pod updated
3.3.0 Release
3 years ago
**This will be a breaking update due to #3847 that we changed dataSet initializers API interface and fixed Xcode warnings for previous release.** ***pod has been updated again to 3.3.0 tag, it's previously using 3.3*** ### Now supports Xcode 10.2 and Swift 5.0 #### Highlights of fixed issues and merged requests: - Renamed `values` to `entries` to reflect the property's type [\#3847](https://github.com/danielgindi/Charts/pull/3847) ([jjatie](https://github.com/jjatie)) - Fix horizontal bar chart not drawing values and add unit tests [\#3906](https://github.com/danielgindi/Charts/pull/3906) ([liuxuan30](https://github.com/liuxuan30)) - fix \#3860. maxHeight didn't count the last label [\#3900](https://github.com/danielgindi/Charts/pull/3900) ([liuxuan30](https://github.com/liuxuan30)) - Migrating to built-in algorithms [\#3892](https://github.com/danielgindi/Charts/pull/3892) ([jjatie](https://github.com/jjatie)) - Use a stock iterator instead of a custom one. [\#3891](https://github.com/danielgindi/Charts/pull/3891) ([phughes](https://github.com/phughes)) - Removed unnecessary \#if statements and unified style to align with Xc… [\#3884](https://github.com/danielgindi/Charts/pull/3884) ([jjatie](https://github.com/jjatie)) - Velocity samples calculation [\#3883](https://github.com/danielgindi/Charts/pull/3883) ([jjatie](https://github.com/jjatie)) - Minor updates for Swift 5 [\#3874](https://github.com/danielgindi/Charts/pull/3874) ([jjatie](https://github.com/jjatie)) - Replace AnyObject with Any [\#3864](https://github.com/danielgindi/Charts/pull/3864) ([jjatie](https://github.com/jjatie)) - Data as any [\#3863](https://github.com/danielgindi/Charts/pull/3863) ([jjatie](https://github.com/jjatie)) - Reassess convenience initializers [\#3862](https://github.com/danielgindi/Charts/pull/3862) ([jjatie](https://github.com/jjatie)) - HorizontalBarChar value label offset calculation [\#3854](https://github.com/danielgindi/Charts/pull/3854) ([chaaarly](https://github.com/chaaarly)) - Create `chartViewDidEndAnimate` in ChartViewDelegate [\#3852](https://github.com/danielgindi/Charts/pull/3852) ([Lcsmarcal](https://github.com/Lcsmarcal)) - Align `ChartLimit.LabelPosition` naming with `UIRectCorner` [\#3846](https://github.com/danielgindi/Charts/pull/3846) ([jjatie](https://github.com/jjatie)) #### Full change log https://github.com/danielgindi/Charts/blob/master/CHANGELOG.md
3.2.2 Release
4 years ago
Highlights: **Implemented enhancements:** - Multiple colors for valueline \(Fixes \#3480\) [\#3709](https://github.com/danielgindi/Charts/pull/3709) ([AlexeiGitH](https://github.com/AlexeiGitH)) - use `useValueColorForLine` to enable the same colors - Add Collection conformances to ChartDataSet types [\#3815](https://github.com/danielgindi/Charts/pull/3815) ([jjatie](https://github.com/jjatie)) - improvements in barRect height calculation [\#3650](https://github.com/danielgindi/Charts/pull/3650) ([potato04](https://github.com/potato04)) **Fixed bugs:** - CombinedChartView's candleData don't display in v3.2.0 [\#3662](https://github.com/danielgindi/Charts/issues/3662) - Incorrect behavior for AxisBase.axisMaxLabels [\#3656](https://github.com/danielgindi/Charts/issues/3656) - Horizontal Bar Chart legend issue [\#3301](https://github.com/danielgindi/Charts/issues/3301) - Fixes sharp edges on the line chart [\#3764](https://github.com/danielgindi/Charts/pull/3764) ([stokatyan](https://github.com/stokatyan)) - Fix wrong assignment to axisMaxLabels property [\#3721](https://github.com/danielgindi/Charts/pull/3721) ([ggirotto](https://github.com/ggirotto)) - Fix legend offset bug for horizontal bar chart \(Fixes \#3301\) [\#3736](https://github.com/danielgindi/Charts/pull/3736) ([SvenMuc](https://github.com/SvenMuc)) - Add missing properties to copy\(with:\) methods [\#3715](https://github.com/danielgindi/Charts/pull/3715) ([dstranz](https://github.com/dstranz)) - Fix applying lineCap value for line chart data sets \(Fixes \#3739\) [\#3740](https://github.com/danielgindi/Charts/pull/3740) ([anton-filimonov](https://github.com/anton-filimonov)) - Fix memory leak after rendering [\#3680](https://github.com/danielgindi/Charts/pull/3680) ([YusukeOba](https://github.com/YusukeOba)) - Fix condition that is checked before `chartTranslated` delegate method call [\#3804](https://github.com/danielgindi/Charts/pull/3804) ([anton-filimonov](https://github.com/anton-filimonov)) **Other merged pull requests:** - fix \#3719 [\#3778](https://github.com/danielgindi/Charts/pull/3778) ([liuxuan30](https://github.com/liuxuan30)) - Turned gradient components and locations into constants [\#3775](https://github.com/danielgindi/Charts/pull/3775) ([jjatie](https://github.com/jjatie)) - add chartScaled\(\) call after double tap in BarLineChartViewBase [\#3770](https://github.com/danielgindi/Charts/pull/3770) ([artemiusmk](https://github.com/artemiusmk)) - fix issue \#3662 [\#3664](https://github.com/danielgindi/Charts/pull/3664) ([Michael-Du](https://github.com/Michael-Du)) - Make NSUIAccessibilityElement initializer public. [\#3654](https://github.com/danielgindi/Charts/pull/3654) ([417-72KI](https://github.com/417-72KI)) - Update document to latest format [\#3621](https://github.com/danielgindi/Charts/pull/3621) ([kemchenj](https://github.com/kemchenj)) - Feature - ChartView Pan Ended Delegate Call [\#3612](https://github.com/danielgindi/Charts/pull/3612) ([AntonTheDev](https://github.com/AntonTheDev)) - Axis Renderers Cleanup [\#3164](https://github.com/danielgindi/Charts/pull/3164) ([jjatie](https://github.com/jjatie)) Full changelog: https://github.com/danielgindi/Charts/blob/master/CHANGELOG.md
3.2.1
4 years ago
- Addresses crashes due to out of bounds exception when using stack bar charts - Updates podspec to use new swift version property
iOS macOS tvOS
SDWebImage/SDWebImage 5.15.5
Asynchronous image downloader with cache support as a UIImageView category
⭐️ 24,539
🕓 4 weeks ago
🔖 Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
5.15.5 - Fix
4 weeks ago
See [all tickets marked for the 5.15.5 release](https://github.com/SDWebImage/SDWebImage/milestone/113) ### Fixes - Protect the disk operation when input key is nil and cause exception #3505 #3504 - Fix the blur effect logic by avoid color convert and always use three box-blur methodology #3506
5.15.4 - Hotfix
5 weeks ago
See [all tickets marked for the 5.15.4 release](https://github.com/SDWebImage/SDWebImage/milestone/112) ### Fixes - Fix the crash because of wrong usage of NS_NOESCAPE for SDCallbackQueue async block, should matching DispatchQueue #3500 - - This crash only occurs in specified version of clang compiler. But still recommended to update
5.15.3 - Promotion Fix
5 weeks ago
See [all tickets marked for the 5.15.3 release](https://github.com/SDWebImage/SDWebImage/milestone/111) ### Fixes - Fix the issue when multiple request for same url failed, the completedBlock will callback more times #3497 #3493 - Try to fix the SDAnimatedImageView playback speed issue in Promotion devices (iPhone Pro) #3496 #3491
5.15.2 - Race Condition Fix
7 weeks ago
See [all tickets marked for the 5.15.2 release](https://github.com/SDWebImage/SDWebImage/milestone/110) ### Fixes - Fix the atomic logic between downloader and operation again #3483 ### Warnings - Code garden to change Objc bool from true/false to YES/NO #3484
5.15.1 - Race Condition Fix
7 weeks ago
See [all tickets marked for the 5.15.1 release](https://github.com/SDWebImage/SDWebImage/milestone/109) ### Fixes - Ensure the Downloader and DownloaderOperation callback the completion in atomic and never miss one #3477 - - This fix a long-term issue when multiple download request for same URL at the same time, some callbacks will missing. After fix, this will cause a brand new HTTP request but never miss any callbacks. - Fix the issue the fallback logic of ImageIO Source should avoid passing any UTI hint #3473 - Try to fix the SDAsyncBlockOperation's race condition #3479 #3275 - Avoid compiler generate the wrong property attribute with non-atomic #3474 ### Performance - Remove the unused extra copy for SDAnimatedImage data initializer #3480
5.15.0 - Performance Enhancement
10 weeks ago
See [all tickets marked for the 5.15.0 release](https://github.com/SDWebImage/SDWebImage/milestone/108) ### Features #### Encoder - Added encodeWithFrames API for animation encoding in custom coder, better for usage #3469 - - Previously you have to wrap `SDImageFrame` array into temp image object for encoding, this cause wrap/unwrap performance cost (even bad on macOS because it implicit triggers temp GIF encoding). Now you can directly pass it into new `encodedDataWithFrames:` APIs. #### Decoder - Update the decode solution to allows CoreGraphics avoid using any UIKit method #3468 #### Cache - Seperate the SDImageCache encode queue and IO queue to match waitStoreCache behavior #3466 - - Now, the encode process does not block IO queue and query disk cache faster. Previously `SDWebImageWaitStoreCache` is useless when you use transformer or cache serializer. Now you MUST pass this if you want to query disk cache inside completionBlock. #### Manager/Cache/Loader - Added context option callbackQueue and SDCallbackQueue wrapper for advanced user to control which queue to callback #3465 #3457 - - If you want SDWebImage callback your completion in current non-main queue, pass `.context[.callbackQueue] = SDCallbackQueue.current` - Added SDWebImageContextImageEncodeOptions to pass encode options like compression quality to SDImageCache storeImage API #3466 - - The re-encode and store cache logic happens if you use transformer or custom cache serializer, now you can pass the encode options.
5.14.3 - 5.14 Opt
13 weeks ago
See [all tickets marked for the 5.14.3 release](https://github.com/SDWebImage/SDWebImage/milestone/106) ### Performance - Added ioQueueAttributes to use concurrent or control QoS for image cache internal IO Queue #3460 - When frame timestamp not reached, we should prefetch frame in advance for image render #3452 ### Fixes - Fix the iOS 15+ force-decode hack break Apple's HEIF and JPEG YUV420 optimization #3461 - The poster image should not trigger a frameChange callback #3459
5.14.2 - 5.14 Fix
19 weeks ago
See [all tickets marked for the 5.14.2 release](https://github.com/SDWebImage/SDWebImage/milestone/105) ### Fixes - Move the `SD_CHECK_CGIMAGE_RETAIN_SOURCE` assertion to SDWebImage Demo and Tests only #3443 #3442 #3441
5.14.1 - 5.14 Crash Fix
20 weeks ago
See [all tickets marked for the 5.14.1 release](https://github.com/SDWebImage/SDWebImage/milestone/104) ### Fixes - Fix the iOS 12 crash because the underlyingQueue is nil #3434 #3433 - Fix the missing lock for callbackTokens which may cause thread-safe issue #3439 #3438 - Use CoreGraphics to decode PDF instead of ImageIO to solve iOS 16's issue #3436
5.14.0 - Meet DecodeOptions
20 weeks ago
See [all tickets marked for the 5.14.0 release](https://github.com/SDWebImage/SDWebImage/milestone/102) ### Behavior Changes - Introduce `SDWebImageContextImageDecodeOptions`, deprecate `SDImageCoderWebImageContext` #3421 - - Note the deprecated `SDImageCoderWebImageContext` is no longer used. Update your codebase to use `SDWebImageContextImageDecodeOptions` to pass extra information from manager to coder. Loaded image will also store the same information in `image.sd_decodeOptions` - Refactor the hack when multiple different thumbnail image requests for same url called at the same time #3423 - - Now the SDWebImageDownloader can callback each thumbnail request for same url with the correct image size as well (previously can't) - - Now if manager's callback image is thumbnail (`image.sd_isThumbnail == YES`), or transformed (`image.sd_isTransformed == YES`), the callback data will be nil. This because the image does not match downloaded data actually. If you really need original full size data, query the disk cache again using the original key. You may need `SDWebImageWaitStoreCache` options as well. (previously behavior is undefined, may callback with full size data, or encoded small size data, or even nil) ### Features #### Coder - Support use url.path or custom UTI hint passed to ImageIO, solve the TIFF/NEF/SRW raw image decoding with wrong size #3419 - - Note from 5.14.0, we may pass the file extension to coder as a UTI hint - Added `SDImageCoderDecodeUseLazyDecoding` to control whether to use lazy-decoding for ImageIO #3425 - - Note from 5.14.0, by default we enable lazy decoding for static image coder, disable lazy decoding for animated image coder, suitable for most cases. If you want, pass `.decodeUseLazyDecoding = YES` to context option `.imageDecodeOptions` ### Performance - Introduce new workaround to strip CGImage retained CGImageSource on iOS 15 #3425 #3387 - - Note this also fix the limitation that you can not use lazy-decoding for animated image on iOS 15+. Pass `.decodeUseLazyDecoding = YES` to context option `.imageDecodeOptions` - Replace conformsToProtocol call with appropriate respondsToSelector check to improve performance #3429 Thanks @timonus - Fix del redundant autoreleasepool #3388 Thanks @dongranGG ### Fixes - Avoid store again when origin disk cache hit during Thumbnail or Transformer with smaller pixel size #3428 #3395 - Add the possible nullable logic check when the force-decode/copy failed #3427
iOS macOS watchOS tvOS
airbnb/lottie-ios 4.1.3
An iOS library to natively render After Effects vector animations
⭐️ 23,846
🕓 6 weeks ago
🔖 Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
4.1.3
6 weeks ago
> **Note** > Starting in Lottie 4.0, the Core Animation rendering engine is now enabled by default. > Learn more about this change: **[Announcing Lottie 4.0 for iOS](https://medium.com/airbnb-engineering/announcing-lottie-4-0-for-ios-d4d226862a54)** on the Airbnb Tech Blog ## What's Changed * Add support for 3D rotations on X and Y axis (https://github.com/airbnb/lottie-ios/pull/1930) * Update color parsing to ignore alpha values for consistency with other platforms (https://github.com/airbnb/lottie-ios/pull/1934) * Allow subclassing `LottieAnimationView` (https://github.com/airbnb/lottie-ios/pull/1937) * Expose `AnimationTextProvider` in objc wrapper (https://github.com/airbnb/lottie-ios/pull/1944) * Add dispatch queue parameter to dotLottie loading methods (https://github.com/airbnb/lottie-ios/pull/1956) * Fix macOS build issues for apps using `Lottie.xcframework` / `lottie-spm` (https://github.com/airbnb/lottie-ios/pull/1960)
4.1.2
9 weeks ago
> **Note** > Starting in Lottie 4.0, the Core Animation rendering engine is now enabled by default. > Learn more about this change: **[Announcing Lottie 4.0 for iOS](https://medium.com/airbnb-engineering/announcing-lottie-4-0-for-ios-d4d226862a54)** on the Airbnb Tech Blog 4.1.2 fixes an issue where the [lottie-spm](https://github.com/airbnb/lottie-spm) package would fail to build in some environments: https://github.com/airbnb/lottie-spm/pull/5#issuecomment-1398991609, https://github.com/airbnb/lottie-ios/issues/1926#issuecomment-1398866563 ## 4.1.0 release notes We've added a new way to integrate Lottie into your project using Swift Package Manager. We now provide a separate [lottie-spm](https://github.com/airbnb/lottie-spm) repo that is much smaller than the main lottie-ios repo (~500kb instead of ~300mb). Learn more about this change [here](https://github.com/airbnb/lottie-ios#swift-package-manager). ### Improvements and bug fixes * Made DotLottieAnimation attributes optional to simplify Manifest file (https://github.com/airbnb/lottie-ios/pull/1844) * Fix heap buffer overflow in CGColor+RGB extensions (https://github.com/airbnb/lottie-ios/pull/1858) * Add support for display P3 color space (https://github.com/airbnb/lottie-ios/pull/1857) * Add some missing utility to CompatibleAnimationView (https://github.com/airbnb/lottie-ios/pull/1881) * Fix issue where ShapeTransform could incorrectly affect stroke width (https://github.com/airbnb/lottie-ios/pull/1872) * Fix issue where empty trim item would take precedence over non-empty trim item (https://github.com/airbnb/lottie-ios/pull/1875) * Fix issue where some top-level shape items would be silently ignored (https://github.com/airbnb/lottie-ios/pull/1874) * Fix frame setting issue for CompatibleAnimationView (https://github.com/airbnb/lottie-ios/pull/1878) * Gradient Fill Layer: Support strokes (https://github.com/airbnb/lottie-ios/pull/1818) * Change veryLargeRect size to fix issue with masks (https://github.com/airbnb/lottie-ios/pull/1884) * Fix issue where Fill following other Fill would be silently ignored (https://github.com/airbnb/lottie-ios/pull/1888) * Fix issue where negative `scale.x` values didn't render correctly on iOS 14 (https://github.com/airbnb/lottie-ios/pull/1894) * Fix issue where `LottieAnimationView.currentFrame` would be incorrect after playing animation with `LottieLoopMode.playOnce` (https://github.com/airbnb/lottie-ios/pull/1897) * Fix issue where shape items could be applied in incorrect order (https://github.com/airbnb/lottie-ios/pull/1899) * Fix issue where stroke and fill could be rendered in incorrect order (https://github.com/airbnb/lottie-ios/pull/1903) * Fix issue where `play(fromProgress: 1, toProgress: 0)` animation would not actually play (https://github.com/airbnb/lottie-ios/pull/1908) * Add support for skew animations (https://github.com/airbnb/lottie-ios/pull/1917)
4.1.1
10 weeks ago
> **Note** > Starting in Lottie 4.0, the Core Animation rendering engine is now enabled by default. > Learn more about this change: **[Announcing Lottie 4.0 for iOS](https://medium.com/airbnb-engineering/announcing-lottie-4-0-for-ios-d4d226862a54)** on the Airbnb Tech Blog 4.1.1 fixes an issue where the [lottie-spm](https://github.com/airbnb/lottie-spm) package could not be embedded into iOS app builds (#1925), which could cause apps to crash (#1926). ## 4.1.0 release notes We've added a new way to integrate Lottie into your project using Swift Package Manager. We now provide a separate [lottie-spm](https://github.com/airbnb/lottie-spm) repo that is much smaller than the main lottie-ios repo (~500kb instead of ~300mb). Learn more about this change [here](https://github.com/airbnb/lottie-ios#swift-package-manager). ### Improvements and bug fixes * Made DotLottieAnimation attributes optional to simplify Manifest file (https://github.com/airbnb/lottie-ios/pull/1844) * Fix heap buffer overflow in CGColor+RGB extensions (https://github.com/airbnb/lottie-ios/pull/1858) * Add support for display P3 color space (https://github.com/airbnb/lottie-ios/pull/1857) * Add some missing utility to CompatibleAnimationView (https://github.com/airbnb/lottie-ios/pull/1881) * Fix issue where ShapeTransform could incorrectly affect stroke width (https://github.com/airbnb/lottie-ios/pull/1872) * Fix issue where empty trim item would take precedence over non-empty trim item (https://github.com/airbnb/lottie-ios/pull/1875) * Fix issue where some top-level shape items would be silently ignored (https://github.com/airbnb/lottie-ios/pull/1874) * Fix frame setting issue for CompatibleAnimationView (https://github.com/airbnb/lottie-ios/pull/1878) * Gradient Fill Layer: Support strokes (https://github.com/airbnb/lottie-ios/pull/1818) * Change veryLargeRect size to fix issue with masks (https://github.com/airbnb/lottie-ios/pull/1884) * Fix issue where Fill following other Fill would be silently ignored (https://github.com/airbnb/lottie-ios/pull/1888) * Fix issue where negative `scale.x` values didn't render correctly on iOS 14 (https://github.com/airbnb/lottie-ios/pull/1894) * Fix issue where `LottieAnimationView.currentFrame` would be incorrect after playing animation with `LottieLoopMode.playOnce` (https://github.com/airbnb/lottie-ios/pull/1897) * Fix issue where shape items could be applied in incorrect order (https://github.com/airbnb/lottie-ios/pull/1899) * Fix issue where stroke and fill could be rendered in incorrect order (https://github.com/airbnb/lottie-ios/pull/1903) * Fix issue where `play(fromProgress: 1, toProgress: 0)` animation would not actually play (https://github.com/airbnb/lottie-ios/pull/1908) * Add support for skew animations (https://github.com/airbnb/lottie-ios/pull/1917)
4.1.0
10 weeks ago
> **Note** > Starting in Lottie 4.0, the Core Animation rendering engine is now enabled by default. > Learn more about this change: **[Announcing Lottie 4.0 for iOS](https://medium.com/airbnb-engineering/announcing-lottie-4-0-for-ios-d4d226862a54)** on the Airbnb Tech Blog We've added a new way to integrate Lottie into your project using Swift Package Manager. We now provide a separate [lottie-spm](https://github.com/airbnb/lottie-spm) repo that is much smaller than the main lottie-ios repo (~500kb instead of ~300mb). Learn more about this change [here](https://github.com/airbnb/lottie-ios#swift-package-manager). ### Improvements and bug fixes * Made DotLottieAnimation attributes optional to simplify Manifest file (https://github.com/airbnb/lottie-ios/pull/1844) * Fix heap buffer overflow in CGColor+RGB extensions (https://github.com/airbnb/lottie-ios/pull/1858) * Add support for display P3 color space (https://github.com/airbnb/lottie-ios/pull/1857) * Add some missing utility to CompatibleAnimationView (https://github.com/airbnb/lottie-ios/pull/1881) * Fix issue where ShapeTransform could incorrectly affect stroke width (https://github.com/airbnb/lottie-ios/pull/1872) * Fix issue where empty trim item would take precedence over non-empty trim item (https://github.com/airbnb/lottie-ios/pull/1875) * Fix issue where some top-level shape items would be silently ignored (https://github.com/airbnb/lottie-ios/pull/1874) * Fix frame setting issue for CompatibleAnimationView (https://github.com/airbnb/lottie-ios/pull/1878) * Gradient Fill Layer: Support strokes (https://github.com/airbnb/lottie-ios/pull/1818) * Change veryLargeRect size to fix issue with masks (https://github.com/airbnb/lottie-ios/pull/1884) * Fix issue where Fill following other Fill would be silently ignored (https://github.com/airbnb/lottie-ios/pull/1888) * Fix issue where negative `scale.x` values didn't render correctly on iOS 14 (https://github.com/airbnb/lottie-ios/pull/1894) * Fix issue where `LottieAnimationView.currentFrame` would be incorrect after playing animation with `LottieLoopMode.playOnce` (https://github.com/airbnb/lottie-ios/pull/1897) * Fix issue where shape items could be applied in incorrect order (https://github.com/airbnb/lottie-ios/pull/1899) * Fix issue where stroke and fill could be rendered in incorrect order (https://github.com/airbnb/lottie-ios/pull/1903) * Fix issue where `play(fromProgress: 1, toProgress: 0)` animation would not actually play (https://github.com/airbnb/lottie-ios/pull/1908) * Add support for skew animations (https://github.com/airbnb/lottie-ios/pull/1917)
4.0.1
16 weeks ago
4.0.1 fixes an issue in 4.0.0 where the install could fail due to issues with Git LFS: #1830, #1834. We now publish `xframework` binaries as a part of our release process: https://github.com/airbnb/lottie-ios/discussions/1807#discussioncomment-4346438 ## Major changes in Lottie 4.0 Learn more about this release: **[Announcing Lottie 4.0 for iOS](https://medium.com/airbnb-engineering/announcing-lottie-4-0-for-ios-d4d226862a54)** on the Airbnb Tech Blog * The new Core Animation rendering engine ([first introduced in Lottie 3.4.0](https://github.com/airbnb/lottie-ios/discussions/1627)) is now enabled by default for supported animations. * Specifically, `LottieConfiguration.shared.renderingEngine` now defaults to `.automatic` instead of `.mainThread`. Animations that use features which are not supported by the Core Animation rendering engine will automatically fall back to using the original Main Thread rendering engine. * When using the Core Animation rendering engine, Lottie animations now always animate smoothly regardless of the amount of work being done on the app’s main thread. This **significantly improves animation performance** while also eliminating CPU overhead. * If you encounter any compatibility issues when using `RenderingEngineOption.automatic`, please file an issue with a copy of your animation json. * `DecodingStrategy.dictionaryBased` is now enabled by default * The new dictionary-based decoding implementation is 2x faster than the previous `Codable` decoding implementation * If you encounter any compatibility issues with this new decoding implementation, please file an issue with a copy of your animation json. * Backwards compatibility typealiases for `Animation`, `AnimationView`, `Color`, `Vector1D`, `Vector2D`, and `Vector3D`, which were introduced in [Lottie 3.5.0](https://github.com/airbnb/lottie-ios/releases), have been removed to resolve conflicts with types in Apple frameworks. These types are now named `LottieAnimation`, `LottieAnimationView`, `LottieColor`, `LottieVector1D`, `LottieVector2D`, and `LottieVector3D`. * The default `LottieBackgroundBehavior` used by `LottieAnimationView` is now `.pauseAndRestore` instead of `pause`. * Lottie for iOS now supports the [dotLottie file format](https://dotlottie.io/). * The library's minimum-supported Swift version is now Swift 5.5. XCFramework checksum: b6d8b0b81975d91965b8bb00cffb0eae4b3d94538b6950a90bc1366afd5d4239
4.0.0
16 weeks ago
Learn more about this release: **[Announcing Lottie 4.0 for iOS](https://medium.com/airbnb-engineering/announcing-lottie-4-0-for-ios-d4d226862a54)** on the Airbnb Tech Blog ## Major changes * The new Core Animation rendering engine ([first introduced in Lottie 3.4.0](https://github.com/airbnb/lottie-ios/discussions/1627)) is now enabled by default for supported animations. * Specifically, `LottieConfiguration.shared.renderingEngine` now defaults to `.automatic` instead of `.mainThread`. Animations that use features which are not supported by the Core Animation rendering engine will automatically fall back to using the original Main Thread rendering engine. * When using the Core Animation rendering engine, Lottie animations now always animate smoothly regardless of the amount of work being done on the app’s main thread. This **significantly improves animation performance** while also eliminating CPU overhead. * If you encounter any compatibility issues when using `RenderingEngineOption.automatic`, please file an issue with a copy of your animation json. * `DecodingStrategy.dictionaryBased` is now enabled by default * The new dictionary-based decoding implementation is 2x faster than the previous `Codable` decoding implementation * If you encounter any compatibility issues with this new decoding implementation, please file an issue with a copy of your animation json. * Backwards compatibility typealiases for `Animation`, `AnimationView`, `Color`, `Vector1D`, `Vector2D`, and `Vector3D`, which were introduced in [Lottie 3.5.0](https://github.com/airbnb/lottie-ios/releases), have been removed to resolve conflicts with types in Apple frameworks. These types are now named `LottieAnimation`, `LottieAnimationView`, `LottieColor`, `LottieVector1D`, `LottieVector2D`, and `LottieVector3D`. * The default `LottieBackgroundBehavior` used by `LottieAnimationView` is now `.pauseAndRestore` instead of `pause`. * Lottie for iOS now supports the [dotLottie file format](https://dotlottie.io/). * The library's minimum-supported Swift version is now Swift 5.5. ## Full changelog * Use `RenderingEngineOption.automatic` by default by @calda in https://github.com/airbnb/lottie-ios/pull/1764 * Fix issue where inverted mask layer was clipped incorrectly by @calda in https://github.com/airbnb/lottie-ios/pull/1763 * Bump to 4.0.0, remove backwards compatibility typealiases by @calda in https://github.com/airbnb/lottie-ios/pull/1768 * Update `LottieBackgroundBehavior.default` from `.pause` to `.pauseAndRestore` for Main Thread rendering engine by @calda in https://github.com/airbnb/lottie-ios/pull/1770 * Adds ability to not play the frame of the end marker (#1758) by @lennartstolz in https://github.com/airbnb/lottie-ios/pull/1772 * Change LottieAnimationHelpers default animation cache to LRUAnimationCache.shared (#1773) by @pejato in https://github.com/airbnb/lottie-ios/pull/1778 * Update LottieConfiguration to use DecodingStrategy.dictionaryBased by default by @marcelofabri in https://github.com/airbnb/lottie-ios/pull/1777 * Allow customizing default AnimationCacheProvider by @marcelofabri in https://github.com/airbnb/lottie-ios/pull/1779 * Replace LRUAnimationCache with a thread-safe NSCache-based cache by @marcelofabri in https://github.com/airbnb/lottie-ios/pull/1783 * Update minimum Swift version to 5.5 by @calda in https://github.com/airbnb/lottie-ios/pull/1787 * Adds .lottie file load capability to LottieAnimation by @eharrison in https://github.com/airbnb/lottie-ios/pull/1785 * Add Rounded Corners by @johnny-duo in https://github.com/airbnb/lottie-ios/pull/1795 * Add rounded corner support to Core Animation rendering engine by @calda in https://github.com/airbnb/lottie-ios/pull/1796 * Add support for animating `startPoint` and `endPoint` of radial gradients by @calda in https://github.com/airbnb/lottie-ios/pull/1798 * Update Core Animation rendering engine to use device RGB color space by @calda in https://github.com/airbnb/lottie-ios/pull/1801 * added mask to bounds flag by @BugorBN in https://github.com/airbnb/lottie-ios/pull/1814 * Add completion callbacks to LottieAnimationView DotLottie initializers by @calda in https://github.com/airbnb/lottie-ios/pull/1810
3.5.0
24 weeks ago
> **Note**: Lottie 3.4.0 added a new rendering engine powered by Core Animation. Please try it out and let us know if you encounter any issues! It will be enabled by default in Lottie 4.0, which we plan on releasing later this month. More information is available in this announcement: https://github.com/airbnb/lottie-ios/discussions/1627 ### Lottie 3.5.0 This version renames several public types, to resolve conflicts with types in Apple frameworks (https://github.com/airbnb/lottie-ios/issues/1420): - `Lottie.Animation` has been renamed to `LottieAnimation`, to resolve a conflict with [`SwiftUI.Animation`](https://developer.apple.com/documentation/swiftui/animation) - `Lottie.Color` has been renamed to `LottieColor`, to resolve a conflict with [`SwiftUI.Color`](https://developer.apple.com/documentation/swiftui/color) - `Lottie.Vector3D` has been renamed to `LottieVector3D`, to resolve a conflict with [`Spatial.Vector3D`](https://developer.apple.com/documentation/spatial/vector3d?changes=latest_major) For consistency with these new names, we have also renamed the following public types: - `Lottie.AnimationView` has been renamed to `LottieAnimationView` - `Lottie.Vector1D` has been renamed to `LottieVector1D` - `Lottie.Vector2D` has been renamed to `LottieVector2D`. For backwards compatibility Lottie 3.5.0 includes `typealias`es for the old names, which map to the new names. These `typealias`es are marked as deprecated and include fix-its to update call-sites to the new name. ### Lottie 4.0 We plan on releasing **Lottie 4.0** in the next few weeks. In Lottie 4.0 we will remove the compatibility typealiases (for `Animation`, `AnimationView`, `Color`, etc) , so code using the old names will no longer compile. This will resolve the naming conflicts with SwiftUI types. Consider updating to Lottie 3.5.0 first, applying the fix-its recommended by the deprecation warnings, and then update to Lottie 4.0 once it is released (Lottie 4.0 will no longer include deprecation warnings with fix-its). Thank you for bearing with us through this transition process! Lottie 4.0 will also make the new Core Animation rendering engine ([added in Lottie 3.4.0](https://github.com/airbnb/lottie-ios/discussions/1627)) the default rendering engine option. As mentioned above, please try out the new rendering engine if you haven't yet and let us know if you encounter any issues! We've been hard at work fixing issues reported by the community. ### Known issues If your application has a storyboard that references `AnimationView`, it may crash when using Lottie 3.5.0 (https://github.com/airbnb/lottie-ios/issues/1771). The fix for this issue is to update all references of `AnimationView` to `LottieAnimationView` and update all references of `Animation` to `LottieAnimation`. This should be resolved in Lottie 4.0, where code using the old names will no longer compile.
3.4.4
25 weeks ago
> **Note**: Lottie 3.4.0 added a new rendering engine powered by Core Animation. Please try it out and let us know if you encounter any issues! It will be enabled by default in Lottie 4.0, which we plan on releasing later this month. More information is available in this announcement: https://github.com/airbnb/lottie-ios/discussions/1627 ## What's Changed * Updated Main Thread rendering engine to use `warn` (`print`) instead of `assertionFailure` when detecting unsupported usage of repeaters (https://github.com/airbnb/lottie-ios/pull/1754) * Fixed issue where manually-interpolated shape animations would ignore time remapping (https://github.com/airbnb/lottie-ios/pull/1757) * Added marker duration support (https://github.com/airbnb/lottie-ios/pull/1749) * Updated `animationDidSet` to be `open` (https://github.com/airbnb/lottie-ios/pull/1746) * Updated `AnimatedSwitch` and `AnimatedButton` to allow overrides of begin/end tracking in subclasses (https://github.com/airbnb/lottie-ios/pull/1747) * Added `animateUpdateWhenChangingAnimation` flag to `AnimatedControl` (https://github.com/airbnb/lottie-ios/pull/1750)
3.4.3
30 weeks ago
> **Note**: Lottie 3.4.0 added a new rendering engine powered by Core Animation. Please try it out and let us know if you encounter any issues! It will be enabled by default in a future version of Lottie. More information is available in this announcement: https://github.com/airbnb/lottie-ios/discussions/1627 ## New Features * Updated Core Animation rendering engine to support `TextProvider`s (https://github.com/airbnb/lottie-ios/pull/1723) * Updated Core Animation rendering engine to support time stretch in pre-comp layers (https://github.com/airbnb/lottie-ios/pull/1726) * Updated `Animation.loadedFrom` method to support using a custom `URLSession` (https://github.com/airbnb/lottie-ios/pull/1733) ## Bug fixes * Fixed performance issue with line dash patterns (https://github.com/airbnb/lottie-ios/pull/1736) * Fixed race condition in Core Animation rendering engine's `playbackState` property (https://github.com/airbnb/lottie-ios/pull/1727) * Fixed issue where Core Animation rendering engine would ignore `hidden` flag on some shape items (https://github.com/airbnb/lottie-ios/pull/1728) * Fixed issue where Core Animation rendering engine would ignore `CAGradientLayer` locations / color stops (https://github.com/airbnb/lottie-ios/pull/1734) * Fixed issue where Core Animation rendering engine would not render alpha gradient (https://github.com/airbnb/lottie-ios/pull/1737)
3.4.2
32 weeks ago
> **Note**: Lottie 3.4.0 added a new rendering engine powered by Core Animation. Please try it out and let us know if you encounter any issues! It will be enabled by default in a future version of Lottie. More information is available in this announcement: https://github.com/airbnb/lottie-ios/discussions/1627 ## New features * Added support for Repeater shape items to Core Animation rendering engine (https://github.com/airbnb/lottie-ios/pull/1688) * Added support for inverted matte layers to Core Animation rendering engine (https://github.com/airbnb/lottie-ios/pull/1712) * Added `fillMode` support to `GradientFill` shape items (https://github.com/airbnb/lottie-ios/pull/1702) * Added support for non-integer animation widths/heights (https://github.com/airbnb/lottie-ios/pull/1694) ## Bug fixes * Fixed CocoaPods installation issue by removing `.swift-version` file (https://github.com/airbnb/lottie-ios/pull/1674) * Changeed default behavior when bundle image is not found from `assertionFailure` to `warn` (https://github.com/airbnb/lottie-ios/pull/1680) * Fixed issue where `isAnimationPlaying` would be incorrect when using `LottieLoopMode.playOnce` (https://github.com/airbnb/lottie-ios/pull/1682) * Fixed regression where `InvertedMatteLayer`s wouldn't animate when using Main Thread rendering engine (https://github.com/airbnb/lottie-ios/pull/1684) * Core Animation rendering engine now respects `LayerModel.hidden` and `ShapeItem.hidden` flags (https://github.com/airbnb/lottie-ios/pull/1689) * Fixed where strokes would not appear under certain conditions (https://github.com/airbnb/lottie-ios/pull/1691) * Core Animation rendering engine now supports animating multiple properties of shape bezier paths (https://github.com/airbnb/lottie-ios/pull/1690) * Core Animation rendering engine now correctly Ignores masks with `MaskMode.none` (https://github.com/airbnb/lottie-ios/pull/1693) * Fixed issue where Core Animation engine would render negative stroke offsets incorrectly (https://github.com/airbnb/lottie-ios/pull/1698) * Improved shape fill behavior for overlapping shapes when using Core Animation rendering engine (https://github.com/airbnb/lottie-ios/pull/1699) * Fixed issue that caused text layer descenders to be cut off when using some fonts https://github.com/airbnb/lottie-ios/pull/1697 * `RenderingEngineOption.automatic` now falls back to the Main Thread rendering engine when attempting to apply `Trim` to `Fill` (unsupported by Core Animation rendering engine) (https://github.com/airbnb/lottie-ios/pull/1706) * Fixed bug in `AnimationView.play(fromFrame:toFrame:)` with `fromFrame: nil` (https://github.com/airbnb/lottie-ios/pull/1707) * Fixed issue where some spatial keyframes would be ignored by Core Animation rendering engine (https://github.com/airbnb/lottie-ios/pull/1714) * Fixed issue where certain `AnimationKeypath`s were not applied correctly by Core Animation rendering engine (https://github.com/airbnb/lottie-ios/pull/1715) * Fixed issue where stroke with dash pattern could unexpectedly be rendered as pills instead of circles (https://github.com/airbnb/lottie-ios/pull/1718) * Fixed issue where large `GradientFill` / `GradientStroke` would be cut off when using Core Animation rendering engine (https://github.com/airbnb/lottie-ios/pull/1721)
iOS macOS tvOS
ReactiveX/RxSwift 6.5.0
Reactive Programming in Swift
⭐️ 23,237
🕓 1 year ago
🔖 Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
Atlas
1 year ago
## RxSwift 6.5.0 - Swift Concurrency is here! 🎊💯 You can now use `await` on `Observable`-conforming objects (as well as `Driver`, `Signal`, `Infallible`, `Single`, `Completable`) using the following syntax: ```swift do { for try await value in observable.values { print(value) // Next event } // Completed here } catch { // Error event print("An error occurred:", error.localizedDescription) } ``` Check out the [full documentation](https://github.com/ReactiveX/RxSwift/blob/main/Documentation/SwiftConcurrency.md) for additional information: https://github.com/ReactiveX/RxSwift/blob/main/Documentation/SwiftConcurrency.md
Ethan.2
1 year ago
Support Xcode 12.5
5.Throwback
1 year ago
RxSwift 5.1.3 is a patch release to provide support for Xcode 12.5 for those who are still using RxSwift 5.x. We recommend upgrading to RxSwift 6.x as soon as possible, regardless.
Ethan.1
2 years ago
# RxSwift 6.1 Thanks to @iDevid, @marcelofabri, @faimin and @danielt1263 for their contributions to this release 🤘 💯 ## Breaking Changes 🔥 - **Deprecate withUnretained for `Driver`** > **Note**: It is extremely rare to ship a breaking change in a patch release, but this is a relatively fresh feature with unusual circumstances. For the full story, see #2290. ## Other changes 🆕 - Add new `subscribe(with:onNext:onError:onCompleted:onDisposed:)` alternatives to `withUnretained`. This exists for all traits and types: `Observable`, `Driver`, `Signal`, `Infallible`, `Completable`, `Single`, `Maybe` #2290 - `Reactive` now supports structs and value-types again, with the dynamic look-up specifically dealing with `AnyObject`s #2285 - Fix xcframework support for `RxCocoa` (Drag in new **RxCocoaRuntime.xcframework** alongside `RxCocoa`) - Freeze `MaybeEvent` and `CompletableEvent` #2271 #2272 - Fix missing **RxCocoaRuntime.h** header in `RxCocoa` podspec #2281 - Remove invalid **libswiftXCTest.dylib** linking to support Xcode 12.5 - Print URLRequest body `httpBody`, regardless of HTTP Method #2288
Ethan
2 years ago
# RxSwift 6 is here! ### New year, new version, new logo - such an exciting day! 🥳 <p align="center"> <img src="https://github.com/ReactiveX/RxSwift/raw/main/assets/RxSwift_Logo.png" width="25%" alt="RxSwift Logo" /> </p> To get a glimpse of what this new major version packs, check out the following blog post: [What's new in RxSwift 6](https://dev.to/freak4pc/what-s-new-in-rxswift-6-2nog) > **Note**: RxSwift 6 supports Xcode 12 and Swift 5.3 and has a minimum deployment target of iOS 9. - All `ReactiveCompatible` objects (`.rx` namespace) get `Binder`s for all properties for free using `@dynamicMemberLookup`. - New `Infallible` object which is identical to `Observable` with the guarantee of never failing. - Add variadic `drive()` and `emit()` to multiple observers and relays. - New `decode(type:decoder:)` operator for `ObsrvableType`s of `Data`. - `SingleEvent` is now simply `Result<Element, Swift.Error>` and methods changed accordingly (e.g. `subscribe(onSuccess:onFailure:)`). - Add `ReplayRelay`. - Add new `withUnretained(_:)` operator. - Add `distinctUntilChanged(at keyPath:)`. - Add `UIApplication` Reactive extensions . - Rename `catchError(_:)` to `catch(_:)`. - Rename `catchErrorJustReturn(_:)` to `catchAndReturn(_:)`. - Rename `elementAt(_:)` to `element(at:)`. - Rename `retryWhen(_:)` to `retry(when:)`. - Rename `takeUntil(_:)` to `take(until:)` and `takeUntil(behavior:_:)` to `take(until:behavior:)`. - Rename `takeWhile(_:)` to `take(while:)` and `takeWhile(behavior:_:)` to `take(while:behavior:)`. - Rename `take(_:)` duration overload to `take(for:)` (e.g. `take(for: .seconds(3))`). - Rename `skipWhile(_:)` to `skip(while:)`. - Rename `takeUntil(_:)` to `take(until:)`. - Rename `observeOn` and `subscribeOn` to `observe(on:)` and `subscribe(on:)`. - `ignoreElements()` now returns `Observable<Never>`. - Make `SharedSequence` conform to `ObservableConvertibleType`. - Add `onDisposed` to `Maybe`, `Completable` and `Single`. - Unify and optimize swizzling extensions into a single one. - Add `DisposeBag` function builder to allow easy comma-less initialization of a `DisposeBag`. - Advance support of XCFrameworks by enabling `BUILD_LIBRARY_FOR_DISTRIBUTION` and cleaning up. - Move URLSession logging settings to a more appropriate URLSession.rx.shouldLogRequest configurable closure. - Many, many, **many** quality of life bugs and fixes.
2 years ago
# RxSwift 6.0.0 RC2 **This is the second and (probably) final Release Candidate of RxSwift 6.** **The official 6.0.0 should be released in the upcoming weeks and should be mostly identical to this.** > **Note**: RxSwift 6 supports Xcode 12 and Swift 5.3 and has a minimum deployment target of iOS 9. Everything in RC1, plus: - Support for XCFrameworks, with binaries now bundled with each release. - Updated tests for new `Infallible` trait. - Fix an issue building for watchOS. - Move `URLSession` logging settings to a more appropriate `URLSession.rx.shouldLogRequest` configurable closure. - README, CI, and additional house cleaning.
6.0.0 RC1
2 years ago
# RxSwift 6.0.0 RC1 **This is the first Release Candidate of RxSwift 6.** > **Note**: RxSwift 6 supports Xcode 12 and Swift 5.3 and has a minimum deployment target of iOS 9. - All `ReactiveCompatible` objects (`.rx` namespace) get `Binder`s for all properties for free using `@dynamicMemberLookup`. - New `Infallible` object which is identical to `Observable` with the guarantee of never failing. - Add variadic `drive()` and `emit()` to multiple observers and relays. - New `decode(type:decoder:)` operator for `ObsrvableType`s of `Data`. - `SingleEvent` is now simply `Result<Element, Swift.Error>` and methods changed accordingly (e.g. `subscribe(onSuccess:onFailure:)`). - Add `ReplayRelay`. - Add `distinctUntilChanged(at keyPath:)`. - Add `UIApplication` Reactive extensions . - Rename `catchError(_:)` to `catch(_:)`. - Rename `catchErrorJustReturn(_:)` to `catchAndReturn(_:)`. - Rename `elementAt(_:)` to `element(at:)`. - Rename `retryWhen(_:)` to `retry(when:)`. - Rename `takeUntil(_:)` to `take(until:)` and `takeUntil(behavior:_:)` to `take(until:behavior:)`. - Rename `takeWhile(_:)` to `take(while:)` and `takeWhile(behavior:_:)` to `take(while:behavior:)`. - Rename `take(_:)` duration overload to `take(for:)` (e.g. `take(for: .seconds(3))`). - Rename `skipWhile(_:)` to `skip(while:)`. - Rename `takeUntil(_:)` to `take(until:)`. - Rename `observeOn` and `subscribeOn` to `observe(on:)` and `subscribe(on:)`. - `ignoreElements()` now returns `Observable<Never>`. - Make `SharedSequence` conform to `ObservableConvertibleType`. - Add `onDisposed` to `Maybe`, `Completable` and `Single`. - Unify and optimize swizzling extensions into a single one. - Add `DisposeBag` function builder to allow easy comma-less initialization of a `DisposeBag`. - Advance support of `xcframework`s by enabling `BUILD_LIBRARY_FOR_DISTRIBUTION` and cleaning up. - Many, many, **many** quality of life bugs and fixes.
Catalyst.1
3 years ago
This update is mandatory if you want to use RxSwift in Xcode 11.4 / Swift 5.2 on macOS. * Make `NSTextView` not weak for Swift 5.2 and up. #2125 * Add `WKWebView` navigation delegate reactive extensions. #2144 Note: - The pre-built Carthage binary was built using Xcode 11.4 / Swift 5.2 - We no longer guarantee support for Xcode 10.x. Maintaining these is counter-intuitive as they're over a year old and are ridden with bugs. Other improvements and additions can be found in the project's [CHANGELOG.md](CHANGELOG.md) ### Note: The pre-built Carthage binary was built using Xcode 11.4.1 / Swift 5.2.2
Catalyst
3 years ago
This release removes UIWebView Reactive Extensions due to [Apple's hard deprecation, starting April 2020](https://developer.apple.com/news/?id=12232019b) which also allows RxSwift to be used in Catalyst apps. #2062 Other improvements and additions can be found in the project's [CHANGELOG.md](CHANGELOG.md) ### Note: The pre-built Carthage binary was built using Xcode 11.3.1 / Swift 5.1.3
ShaiTheBravest
3 years ago
* Reverts Carthage integration from using static to dynamic libraries. #1960 **NOTE**: This release is only relevant to Carthage users (#1960), there are **no code changes** between RxSwift 5.0.0 and 5.0.1.
iOS macOS watchOS tvOS linux macOS iOS
vapor/vapor 4.74.2
💧 A server-side Swift HTTP web framework.
⭐️ 22,649
🕓 1 week ago
🔖 Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
Imports fixes
1 week ago
###### _This patch was authored and released by @gwynne._ <!-- 🚀 Thank you for contributing! --> <!-- Describe your changes clearly and use examples if possible. --> <!-- When this PR is merged, the title and body will be --> <!-- used to generate a release automatically. -->
Correctly handle invalid numbers in range validations
2 weeks ago
###### _This patch was authored by @fred-sch and released by @0xTim._ Previously trying to perform a range validation check on `Float.nan` would cause a `fatalError` - this correctly handles it and throws an error instead. Closes https://github.com/vapor/vapor/issues/2965.
Revert "Add support for asynchronous body stream writing"
3 weeks ago
###### _This patch was authored and released by @gwynne._ We're reverting vapor/vapor#2939, which was accidentally merged early, as a precautionary measure. A new PR will be opened to track this work.
Add support for asynchronous body stream writing
3 weeks ago
###### _This patch was authored and released by @Joannis._ - Fixes #2930 - a crash when users try to write a body from within a task towards the ELF APIs. - Introduces a new API for writing chunked HTTP response bodies - Adds a helper that automatically managed failing and closing streams
Add support for Cache-Control header 'immutable' attribute
3 weeks ago
###### _This patch was authored by @Palleas and released by @0xTim._ Improve parsing of Cache-Control header to parse the `immutable` attribute.
Add 308 Redirect
3 weeks ago
###### _This patch was authored by @NeedleInAJayStack and released by @0xTim._ Adds support for a `308 redirect` to support POST method redirection. This is important because not all user-agents preserve the method and body through a 301 redirect: https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/301 `redirect(to:type:)` is now deprecated in favour of `redirect(to:redirectType:)`
Better `DecodingError` description
3 weeks ago
###### _This patch was authored by @MahdiBM and released by @0xTim._ The `DecodingError`'s description, when returned from HTTP requests, was missing some important info and sometimes was not clear enough. Hopefully this PR can resolve that issue.
FileMiddleware redirect option
3 weeks ago
###### _This patch was authored by @NeedleInAJayStack and released by @0xTim._ <!-- 🚀 Thank you for contributing! --> <!-- Describe your changes clearly and use examples if possible. --> Previously, FileMiddleware would just serve the default file when requesting a directory with no trailing slash. This caused rendering issues when the default file loaded additional resources by relative path. This adds an option to either redirect to the url with a trailing slash (fixing rendering issues), or just pass the request through the middleware. The default is set to a redirect to preserve the intended functionality of FileMiddleware <!-- When this PR is merged, the title and body will be --> <!-- used to generate a release automatically. -->
Expose Vapor Request's request-id value, so that it can be passed into logging from other libraries
5 weeks ago
###### _This patch was authored by @Joannis and released by @0xTim._ Exposes the Request's ID as a new property on `Request` as `requestID`. This is useful for any libraries or users who want to be able to trace the request ID through a request handler.
Fix: FileIO headers
8 weeks ago
###### _This patch was authored by @NeedleInAJayStack and released by @Joannis._ <!-- 🚀 Thank you for contributing! --> <!-- Describe your changes clearly and use examples if possible. --> - Adds `Last-Modified` header to file requests - Fixes `ETag` header formatting in file requests: According to [MDN documentation](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/ETag), the `ETag` header should start and end with double-quotes. <!-- When this PR is merged, the title and body will be --> <!-- used to generate a release automatically. -->
iOS macOS watchOS tvOS linux macOS iOS
SwiftyJSON/SwiftyJSON v3.1.1
The better way to deal with JSON data in Swift.
⭐️ 21,851
🕓 5 weeks ago
🔖 Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
Swift 5.0
3 years ago
Nothing breaking new API changed. Just cleaning up some warnings in Xcode 10.2. Compatible with Swift 5 and Xcode 10.2.
4.2.0
4 years ago
SwiftyJSON 4.2.0 requires Swift 4.2 compiler and Xcode 10 to build. The minimum requirement of watchOS bumps to watchOS 3.0+. This version removed all deprecated APIs. If you are still using outdated APIs, you should ship with the latest ones.
4.1.0
4 years ago
## Improvements - `Codable` protocol support #923 (Thanks @wleii) - Xcode 9.3 support #951 (Thanks @wongzigii) - Improve string test for boolean value #947 (Thanks @otaviolima) - Update Travis CI to Xcode 9.3 image #954 (Thanks @wongzigii) ## Docs - README improvements #953, #952, #929 and #504 (Thanks @wongzigii, @tomduncalf and @bojanstef)
4.0.0
5 years ago
This is the official release of SwiftyJSON 4.0.0 This version is Swift 4 compatible. We've improved the documentation since 4.0.0-alpha.1.
4.0.0-alpha.1
5 years ago
This is a pre-release version of SwiftyJSON 4.0.0. ## Changes: - (1c5e902 @MikotoZero) Simplify initialize methods invocation. - (a76d81d @craiggrummitt) Fix "double t" spelling mistake, `writtingOptionsKeys` now is `writingOptionsKeys`. - (f9afe96 @wongzigii) **SwiftyJSON now use `throws` for error handling** `init(data, options opt, error)` now is `init(data, options opt) throws`. - (083c6d7 @wongzigii) Use `Swift.Error` type instead of `NSError`, now JSON's error is `SwiftyJSONError` type. ## Improvements: - (619fba2 @wongzigii) SwiftLint compatible. - (1d64b89 @wongzigii) Add GitHub issue and pull request template. - (d932f64 @matthew-an) Fix a potential crash issue by checking whether index is out of json array’s bound. - (e4b2644 @JeffGuKang @Humoud) Documentation improvement and source code gardening. - (#887 @Taillook, @hitendradeveloper, @Harshit31) Add "yes" and "1" to string.boolValue array ## Thank @JackSteven, @mictab, @neoneye, @Tawfikk and others who helped review the pull requests and contribute to the documentations. 🎉 🎉
3.1.4
6 years ago
This release includes new features and shouldn’t break backwards compatibility with SwiftyJSON 3.1.3. ## Fixes: - Check for pre-escaped URLs to prevent double-escaping of % character. (#678 Thanks @dawvee) - Fix an unexpected behavior when passing Int8 type number into JSON. (#717 Thanks @SumoSimo) - Resolve a warning about expression implicitly coerced from 'String?' to Any in Swift 3.0.1. (#729 Thanks @ldiqual) - Swift 3.0.2 / Xcode 8.2 compatible. (#764 Thanks @lbrndnr) ## New Features: - Add a flag `castNilToNSNull` to json rawString for converting nil to NSNull. (#610 Thanks @gsabran) - Add a function to deep merge a JSON object into another JSON object. See [Merging](https://github.com/SwiftyJSON/SwiftyJSON#merging) (#725 Thanks @danielkiedrowski) - JSON constructors are more explicit now: `init(object: Any)` becomes: `init(_ object: Any)`. (#664 Thanks @MadsBogeskov) ## Documentation improvement: (Thanks all: @cwkatzmann, @victorlin, @looseyi, @takasek and @naeemshaikh90)
3.1.0
6 years ago
Here are a list of changed made into 3.1 release. https://github.com/SwiftyJSON/SwiftyJSON/pulls?q=is%3Apr+milestone%3A3.1+is%3Aclosed

New Releases

skiptools/skiphub 0.0.13
Core Skip Libraries: SkipLib, SkipFoundation, SkipUI
⭐️ 0
🕓 11 minutes ago
iOS macOS watchOS tvOS macCatalyst
Alviere/alviere-remittances-ios 0.9.21
The iOS Remittances Alviere SDK.
⭐️ 1
🕓 16 minutes ago
🔖 Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
0.9.21
10 hours ago
### Added - Cash-pickup cities and locations listing. ### Changed - Update beneficiary creation to support a cash-pickup location. - Updated beneficary model with phone and label fields. - Changed description field to optional on remittance creation.
0.9.20
10 weeks ago
### Added - Added legal type, business name, and external id to the beneficiary model.
0.9.19
21 weeks ago
### Changed - Updated AlCore dependency.
0.9.18
24 weeks ago
### Changed - Add transfer funds method for local beneficiaries.
0.9.17
33 weeks ago
### Added - Added external id field on update beneficiary method.
0.9.16
36 weeks ago
### Changed - Bug fixes and several performance improvements.
0.9.14
42 weeks ago
### Changed - Support nullable fields on the beneficiary address model.
0.9.13
45 weeks ago
### Fixed - Fixed quote model encode.
0.9.12
46 weeks ago
### Changed - Updated AlCore dependency.
0.9.11
46 weeks ago
### Changed - Update Sierra APIs to version 2021-11-18.
iOS
yml-org/YCoreUI 1.6.0
Core components for iOS and tvOS to accelerate building user interfaces in code.
⭐️ 7
🕓 39 minutes ago
🔖 Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
1.6.0
13 hours ago
## What's Changed * [Issue-51] Log warnings when fallback image is delivered. by @mpospese in https://github.com/yml-org/YCoreUI/pull/52 * [Issue-46] Clamp sRGB display values by @mpospese in https://github.com/yml-org/YCoreUI/pull/53 * Account for transparency when calculating WCAG color contrast by @mpospese in https://github.com/yml-org/YCoreUI/pull/54 * [Issue-50] Support scalable system image. by @devyml in https://github.com/yml-org/YCoreUI/pull/57 * [Issue 58] Add Animation struct by @mpospese in https://github.com/yml-org/YCoreUI/pull/59 **Full Changelog**: https://github.com/yml-org/YCoreUI/compare/1.5.0...1.6.0
1.5.0
2 weeks ago
## What's Changed * [Issue-43] Update SwiftLint config file to latest by @mpospese in https://github.com/yml-org/YCoreUI/pull/45 * [Issue-41] Update README by @mpospese in https://github.com/yml-org/YCoreUI/pull/49 * [Issue-47] Add SystemImage protocol by @mpospese in https://github.com/yml-org/YCoreUI/pull/48 **Full Changelog**: https://github.com/yml-org/YCoreUI/compare/1.4.0...1.5.0
1.4.0
12 weeks ago
## What's Changed * [CM-1034] Conform `Elevation` to `Equatable` by @karthikyml in https://github.com/yml-org/YCoreUI/pull/39 * [CM-965] Add image asset protocol by @devyml in https://github.com/yml-org/YCoreUI/pull/40 **Full Changelog**: https://github.com/yml-org/YCoreUI/compare/1.3.0...1.4.0
1.3.0
12 weeks ago
## What's Changed * [CM-995] Add new linter rules and fix warnings by @mpospese in https://github.com/yml-org/YCoreUI/pull/35 * [CM-1003] Add `Elevation` type by @karthikyml in https://github.com/yml-org/YCoreUI/pull/37 * [CM-1012] Add `constrainAspectRatio` method to UIView extension. by @devyml in https://github.com/yml-org/YCoreUI/pull/38 **Full Changelog**: https://github.com/yml-org/YCoreUI/compare/1.2.1...1.3.0
1.2.1
18 weeks ago
## What's Changed * Mark constrainCenter return value as discardable by @mpospese in https://github.com/yml-org/YCoreUI/pull/29 * Fix typo in config file by @mpospese in https://github.com/yml-org/YCoreUI/pull/30 * Make `Localizable`'s default implementation of `tableName` public by @mpospese in https://github.com/yml-org/YCoreUI/pull/32 **Full Changelog**: https://github.com/yml-org/YCoreUI/compare/1.2.0...1.2.1
1.2.0
19 weeks ago
## What's Changed * Update main.yml by @mpospese in https://github.com/yml-org/YCoreUI/pull/13 * Added constrainSize extension by @dharmik-yml in https://github.com/yml-org/YCoreUI/pull/17 * Add GH action by @mpospese in https://github.com/yml-org/YCoreUI/pull/19 * [UPDATE] updated readme file with usage info by @SahilSainiYML in https://github.com/yml-org/YCoreUI/pull/20 * Added extension for UIView constrain center by @dharmik-yml in https://github.com/yml-org/YCoreUI/pull/21 * [CM-921] Added swift package manager integration by @PanchamiShenoy in https://github.com/yml-org/YCoreUI/pull/23 * [CM-929] Added colorable protocol by @PanchamiShenoy in https://github.com/yml-org/YCoreUI/pull/24 * [CM -866] Expand localizable with tableName by @PanchamiShenoy in https://github.com/yml-org/YCoreUI/pull/25 ## New Contributors * @dharmik-yml made their first contribution in https://github.com/yml-org/YCoreUI/pull/17 * @SahilSainiYML made their first contribution in https://github.com/yml-org/YCoreUI/pull/20 **Full Changelog**: https://github.com/yml-org/YCoreUI/compare/1.1.0...1.2.0
1.1.0
26 weeks ago
## What's Changed * Add tvOS support by @mpospese in https://github.com/yml-org/YCoreUI/pull/12 **Full Changelog**: https://github.com/yml-org/YCoreUI/compare/1.0.3...1.1.0
1.0.3
32 weeks ago
## What's Changed * [CM-832] Update README with hero banner and SPI badges by @mpospese in https://github.com/yml-org/YCoreUI/pull/5 * [CM-830] Remove cocoapods support by @mpospese in https://github.com/yml-org/YCoreUI/pull/6 **Full Changelog**: https://github.com/yml-org/YCoreUI/compare/1.0.2...1.0.3
iOS tvOS
tannerdsilva/QuickLMDB 1.4.6
Write LMDB databases with ease and flexibility.
⭐️ 5
🕓 1 hour ago
skiptools/skip 0.3.4
The Swift Kotlin Interoperability Tool
⭐️ 0
🕓 1 hour ago
iOS macOS watchOS tvOS macCatalyst
cleverpush/cleverpush-ios-sdk 1.26.2
Visit https://developers.cleverpush.com/ for more information
⭐️ 5
🕓 1 hour ago
🔖 Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
1.26.2
3 hours ago
## 1.26.2 * Optimizations for HTML app banners
1.26.0
3 weeks ago
## 1.26.0 * Removed `triggerAppBannerEvent` method. App banners can now be triggered with the `trackEvent` method.
1.25.1
4 weeks ago
## 1.25.1 * Added optional `onFailure` callbacks for `addSubscriptionTag`, `removeSubscriptionTag`, `addSubscriptionTopic` and `removeSubscriptionTopic`
1.25.0
4 weeks ago
## 1.25.0 * Support app banner dark mode settings + connected banners (see app banner settings in CleverPush for more information)
1.24.4
7 weeks ago
## 1.24.4 * Fixes for app banner attribute conditions + small optimizations for an edge case where app banners had screens enabled previously and was then showing the wrong contents.
1.15.9
1 year ago
1.15.8
1 year ago
1.15.7
1 year ago
1.15.6
1 year ago
1.15.5
1 year ago
iOS
nomandhq/wolstore 0.1.3
Pure Swift account manager for some blockchain networks
⭐️ 0
🕓 3 hours ago
🔖 Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
0.1.3
14 hours ago
- Added `SpecificInformation` as a wallet specific data field - Added `Hashable & Equtable` to `Account`
0.1.2
Yesterday
0.1.1
Yesterday
- Add TRON
0.1.0
1 week ago
iOS macOS
Sage-Bionetworks/BridgeClientKMM v0.16.1
A Kotlin Multiplatform Mobile Bridge client
⭐️ 3
🕓 4 hours ago
🔖 Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
Release v0.16.1
4 hours ago
Release v0.16.0
4 days ago
Release v0.15.4
1 week ago
Release v0.15.3
1 week ago
Release v0.15.1
2 weeks ago
Release v0.15.0
3 weeks ago
Release v0.14.5
3 weeks ago
Release v0.14.4
5 weeks ago
Release v0.14.3
5 weeks ago
Release v0.14.2
5 weeks ago
iOS macOS
apple/swift-tools-support-core swift-DEVELOPMENT-SNAPSHOT-2023-03-30-a
Contains common infrastructural code for both SwiftPM and llbuild.
⭐️ 357
🕓 4 hours ago
🔖 Release Notes

Releases

The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
1 week ago
7 weeks ago
7 weeks ago
7 weeks ago
7 weeks ago
0.4.0
16 weeks ago
0.2.7
33 weeks ago
0.3.0
33 weeks ago
0.2.6
34 weeks ago
1 year ago
macOS linux windows
Cybrid-app/cybrid-api-bank-swift v0.68.22
Swift client for the Cybrid Bank APIs
⭐️ 0
🕓 4 hours ago
iOS macOS watchOS tvOS

Swiftpack is being maintained by Petr Pavlik | @ptrpavlik | @swiftpackco | API | Analytics