Skip to content

Commit

Permalink
Merge branch 'release-4.6.0'
Browse files Browse the repository at this point in the history
  • Loading branch information
tsolomko committed Aug 4, 2021
2 parents 594cc19 + 97323fa commit ff8113e
Show file tree
Hide file tree
Showing 64 changed files with 1,023 additions and 711 deletions.
4 changes: 2 additions & 2 deletions .jazzy.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,11 @@ sourcekitten_sourcefile: docs.json
clean: false
author: Timofey Solomko
module: SWCompression
module_version: 4.5.11
module_version: 4.6.0
copyright: '© 2021 Timofey Solomko'
readme: README.md
github_url: https://github.com/tsolomko/SWCompression
github_file_prefix: https://github.com/tsolomko/SWCompression/tree/4.5.11
github_file_prefix: https://github.com/tsolomko/SWCompression/tree/4.6.0
theme: fullwidth

custom_categories:
Expand Down
21 changes: 21 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,26 @@
# Changelog

## 4.6.0

- Swift 4.2 is no longer supported.
- Minimum iOS deployment version (when installed via CocoaPods or Carthage) is now 9.0.
- Increased the lowest required version of BitByteData dependency to 2.0.
- Added the `TarContainer.create(from:force:)` function which allows to specify TAR format.
- It is now possible to create TAR containers of GNU, ustar (POSIX), and pre-POSIX formats.
- The `TarContainer.create(from:)` function (alongside with the newly added function) no longer throws.
- The `TarCreateError.utf8NonEncodable` error is now never thrown.
- Handling of truncated TAR containers should now be more consistent.
- Previously introduced check for truncated containers now throws the `TarError.tooSmallFileIsPassed` error instead
of `TarError.wrongField`.
- Documentation has been updated:
- Adjusted documentation of the `TarEntryInfo` properties to account for other formats used in creation of a
container.
- Adjusted documentation of the `TarError.tooSmallFileIsPassed` error to mention its use in all situations when
truncated data is encountered.
- swcomp changes:
- `zip -i` command now prints entry comments only if they are not empty.
- Slight grammatical improvements to the help messages of swcomp.

## 4.5.11

- Fixed a crash when processing a truncated TAR file.
Expand Down
2 changes: 1 addition & 1 deletion Cartfile
Original file line number Diff line number Diff line change
@@ -1 +1 @@
github "tsolomko/BitByteData" ~> 1.4.4
github "tsolomko/BitByteData" ~> 2.0.0
2 changes: 1 addition & 1 deletion Package.swift
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ let package = Package(
// .package(url: "https://github.com/jakeheis/SwiftCLI",
// from: "5.2.0"),
.package(url: "https://github.com/tsolomko/BitByteData",
from: "1.4.4"),
from: "2.0.0"),
],
targets: [
// SWCOMP: Uncomment the lines below to build swcomp example program.
Expand Down
32 changes: 0 additions & 32 deletions Package@swift-4.2.swift

This file was deleted.

35 changes: 17 additions & 18 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
# SWCompression

[![Swift 4.2](https://img.shields.io/badge/Swift-4.2-blue.svg)](https://developer.apple.com/swift/)
[![Swift 5.X](https://img.shields.io/badge/Swift-5.X-blue.svg)](https://developer.apple.com/swift/)
[![GitHub license](https://img.shields.io/badge/license-MIT-lightgrey.svg)](https://raw.githubusercontent.com/tsolomko/SWCompression/master/LICENSE)
[![Build Status](https://travis-ci.com/tsolomko/SWCompression.svg?branch=develop)](https://travis-ci.com/tsolomko/SWCompression)
Expand All @@ -10,7 +9,7 @@ A framework with (de)compression algorithms and functions for working with vario

## What is this?

SWCompression — is a framework with a collection of functions for:
SWCompression is a framework with a collection of functions for:

1. Decompression (and sometimes compression) using different algorithms.
2. Reading (and sometimes writing) archives of different formats.
Expand All @@ -34,7 +33,7 @@ Also, SWCompression is _written with Swift only._

## Installation

SWCompression can be integrated into your project using Swift Package Manager, CocoaPods or Carthage.
SWCompression can be integrated into your project using Swift Package Manager, CocoaPods, or Carthage.

### Swift Package Manager

Expand All @@ -47,7 +46,7 @@ let package = Package(
name: "PackageName",
dependencies: [
.package(url: "https://github.com/tsolomko/SWCompression.git",
from: "4.5.0")
from: "4.6.0")
],
targets: [
.target(
Expand All @@ -58,11 +57,11 @@ let package = Package(
)
```

More details you can find in [Swift Package Manager's Documentation](https://github.com/apple/swift-package-manager/tree/master/Documentation).
More details you can find in [Swift Package Manager's Documentation](https://github.com/apple/swift-package-manager/tree/main/Documentation).

### CocoaPods

Add `pod 'SWCompression', '~> 4.5'` and `use_frameworks!` lines to your Podfile.
Add `pod 'SWCompression', '~> 4.6'` and `use_frameworks!` lines to your Podfile.

To complete installation, run `pod install`.

Expand Down Expand Up @@ -105,19 +104,17 @@ BZip2 and LZMA/LZMA2 support).

### Carthage

__Important:__ Only Swift 5.x is supported when installing SWCompression via Carthage.

Add to your Cartfile `github "tsolomko/SWCompression" ~> 4.5`.
Add to your Cartfile `github "tsolomko/SWCompression" ~> 4.6`.

Then:

1. If you use Xcode 12 or later you should run `carthage update --use-xcframeworks --no-use-binaries`. After that drag
and drop both `SWCompression.xcframework` and `BitByteData.xcframework` files from from the `Carthage/Build/` directory
into the "Frameworks, Libraries, and Embedded Content" section of your target's "General" tab in Xcode.
1. If you use Xcode 12 or later you should run `carthage update --use-xcframeworks`. After that drag and drop both
`SWCompression.xcframework` and `BitByteData.xcframework` files from from the `Carthage/Build/` directory into the
"Frameworks, Libraries, and Embedded Content" section of your target's "General" tab in Xcode.

2. If you use Xcode 11 or earlier you should run `carthage update --no-use-binaries`. After that drag and drop both
`SWCompression.framework` and `BitByteData.framework` files from from the `Carthage/Build/<platform>/` directory into the
"Embedded Binaries" section of your target's "General" tab in Xcode.
2. If you use Xcode 11 or earlier you should run `carthage update`. After that drag and drop both
`SWCompression.framework` and `BitByteData.framework` files from from the `Carthage/Build/<platform>/` directory into
the "Embedded Binaries" section of your target's "General" tab in Xcode.

For Xcode 12 or later you can currently also use the
[xconfig workaround](https://github.com/Carthage/Carthage/blob/master/Documentation/Xcode12Workaround.md).
Expand Down Expand Up @@ -165,7 +162,8 @@ do {
### Documentation

Every function or type of SWCompression's public API is documented. This documentation can be found at its own
[website](http://tsolomko.github.io/SWCompression).
[website](http://tsolomko.github.io/SWCompression) or via a slightly shorter link:
[swcompression.tsolomko.me](http://swcompression.tsolomko.me)

### Sophisticated example

Expand All @@ -175,7 +173,8 @@ you need to uncomment several lines in "Package.swift" and run `swift build -c r
## Contributing

Whether you find a bug, have a suggestion, idea, feedback or something else, please
[create an issue](https://github.com/tsolomko/SWCompression/issues) on GitHub.
[create an issue](https://github.com/tsolomko/SWCompression/issues) on GitHub. If you have any questions, you can ask
them on the [Discussions](https://github.com/tsolomko/SWCompression/discussions) page.

In the case of a bug, it will be especially helpful if you attach a file (archive, etc.) that caused the bug to occur.

Expand Down Expand Up @@ -205,7 +204,7 @@ There are two reasons for this complicated setup. Firstly, some of these files c
unfortunate if the users of SWCompression had to download them every time during the installation. Secondly, Swift
Package Manager and contemporary versions of Xcode don't always work well with git-lfs-enabled repositories. To prevent
any potential problems test files were moved into another repository. Additionaly, the custom command line tool `utils.py`
is used to work around issues occuring on certain user systems (see, for example, #9).
is used to work around issues occuring on certain user systems (see, for example, [#9](https://github.com/tsolomko/SWCompression/issues/9)).

Please note, that if you want to add a new _type_ of test files, in addition to running `git lfs track`, you have to
also copy into the "Tests/Test Files/gitattributes-copy" file a line this command adds to the "Tests/Test Files/.gitattributes"
Expand Down
8 changes: 4 additions & 4 deletions SWCompression.podspec
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
Pod::Spec.new do |s|

s.name = "SWCompression"
s.version = "4.5.11"
s.version = "4.6.0"
s.summary = "A framework with functions for working with compression, archives and containers."

s.description = "A framework with (de)compression algorithms and functions for processing various archives and containers."
Expand All @@ -15,14 +15,14 @@ Pod::Spec.new do |s|

s.source = { :git => "https://github.com/tsolomko/SWCompression.git", :tag => "#{s.version}" }

s.ios.deployment_target = "8.0"
s.ios.deployment_target = "9.0"
s.osx.deployment_target = "10.10"
s.tvos.deployment_target = "9.0"
s.watchos.deployment_target = "2.0"

s.swift_versions = ["4", "5"]
s.swift_versions = ["5"]

s.dependency "BitByteData", "~> 1.4.4"
s.dependency "BitByteData", "~> 2.0"

s.subspec "Deflate" do |sp|
sp.source_files = "Sources/{Deflate/*,Common/*,Common/CodingTree/*}.swift"
Expand Down
4 changes: 2 additions & 2 deletions SWCompression.xcodeproj/SWCompression.plist
Original file line number Diff line number Diff line change
Expand Up @@ -15,9 +15,9 @@
<key>CFBundlePackageType</key>
<string>FMWK</string>
<key>CFBundleShortVersionString</key>
<string>4.5.11</string>
<string>4.6.0</string>
<key>CFBundleVersion</key>
<string>78</string>
<string>80</string>
<key>NSHumanReadableCopyright</key>
<string>Copyright © 2021 Timofey Solomko</string>
</dict>
Expand Down
4 changes: 2 additions & 2 deletions SWCompression.xcodeproj/TestSWCompression.plist
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,8 @@
<key>CFBundlePackageType</key>
<string>BNDL</string>
<key>CFBundleShortVersionString</key>
<string>4.5.11</string>
<string>4.6.0</string>
<key>CFBundleVersion</key>
<string>78</string>
<string>80</string>
</dict>
</plist>
Loading

0 comments on commit ff8113e

Please sign in to comment.