Skip to content

Commit

Permalink
Merge branch 'develop'
Browse files Browse the repository at this point in the history
  • Loading branch information
tsolomko committed Sep 24, 2022
2 parents 0714d44 + bba5eb7 commit 5419717
Show file tree
Hide file tree
Showing 41 changed files with 1,551 additions and 818 deletions.
11 changes: 7 additions & 4 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -64,14 +64,17 @@ fastlane/Preview.html
fastlane/screenshots
fastlane/test_output

# Ignore symbolic link to swcomp executable built by SPM
# Symbolic link to swcomp executable built by SPM
/swcomp

# Ignore Package.resolved, because we don't want to fix dependencies' versions
# Package.resolved, because we don't want to fix dependencies' versions
Package.resolved

# Ignore docs generated by SourceKitten
# Docs generated by SourceKitten
docs.json

# Ignore docs generated by Jazzy
# Docs generated by Jazzy
docs/

# Vscode launch.json generated by Swift extension
.vscode/launch.json
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.8.1
module_version: 4.8.2
copyright: '© 2022 Timofey Solomko'
readme: README.md
github_url: https://github.com/tsolomko/SWCompression
github_file_prefix: https://github.com/tsolomko/SWCompression/tree/4.8.1
github_file_prefix: https://github.com/tsolomko/SWCompression/tree/4.8.2
theme: fullwidth

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

## 4.8.2

- Swift 5.1 is no longer supported.
- Increased minimum deployment versions (when installed via CocoaPods or Carthage) for Darwin platforms: macOS from 10.10
to 10.13, iOS from 9.0 to 11.0, tvOS from 9.0 to 11.0, and watchOS from 2.0 to 4.0.
- Fixed issues when building for iOS either directly or via Carthage on systems with Xcode 14.
- Fixed potential crashes that could occur when decompressing truncated Deflate inputs.
- swcomp changes:
- swcomp is now enabled by default in Swift Package Manager manifest.
- Added `-l`, `--list` option to container commands (`7z`, `tar`, and `zip`).
- Systematized error exit codes and messages.
- Added `-s`, `--save` option to the `benchmark` command.
- Added `-c`, `--compare` option to the `benchmark` command.
- Added `-i`, `--iteration-count` option to the `benchmark` command.
- Added `-W`, `--no-warmup` option to the `benchmark` command.
- Benchmarks now output standard deviation instead of speed uncertainty.

## 4.8.1

- Fix incorrect detection of truncated GZip archives.
Expand Down
20 changes: 9 additions & 11 deletions Package.swift
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// swift-tools-version:5.1
// swift-tools-version:5.2
import PackageDescription

let package = Package(
Expand All @@ -9,24 +9,22 @@ let package = Package(
targets: ["SWCompression"]),
],
dependencies: [
// SWCOMP: Uncomment the line below to build swcomp example program.
// .package(url: "https://github.com/jakeheis/SwiftCLI",
// from: "6.0.0"),
.package(url: "https://github.com/tsolomko/BitByteData",
.package(name: "BitByteData", url: "https://github.com/tsolomko/BitByteData",
from: "2.0.0"),
.package(name: "SwiftCLI", url: "https://github.com/jakeheis/SwiftCLI",
from: "6.0.0"),
],
targets: [
// SWCOMP: Uncomment the lines below to build swcomp example program.
// .target(
// name: "swcomp",
// dependencies: ["SWCompression", "SwiftCLI"],
// path: "Sources",
// sources: ["swcomp"]),
.target(
name: "SWCompression",
dependencies: ["BitByteData"],
path: "Sources",
sources: ["Common", "7-Zip", "BZip2", "Deflate", "GZip", "LZ4", "LZMA", "LZMA2", "TAR", "XZ", "ZIP", "Zlib"]),
.target(
name: "swcomp",
dependencies: ["SWCompression", "SwiftCLI"],
path: "Sources",
sources: ["swcomp"]),
],
swiftLanguageVersions: [.v5]
)
18 changes: 9 additions & 9 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# SWCompression

[![Swift 5.1+](https://img.shields.io/badge/Swift-5.1+-blue.svg)](https://developer.apple.com/swift/)
[![Swift 5.2+](https://img.shields.io/badge/Swift-5.2+-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://dev.azure.com/tsolomko/SWCompression/_apis/build/status/tsolomko.SWCompression?branchName=develop)](https://dev.azure.com/tsolomko/SWCompression/_build/latest?definitionId=3&branchName=develop)

Expand All @@ -19,7 +19,7 @@ It also works on Apple platforms, Linux, __and Windows__.
All features are listed in the tables below. "TBD" means that feature is planned but not implemented (yet).

| | Deflate | BZip2 | LZMA/LZMA2 | LZ4 |
| ------------- | ------- | ----- | ---------- | --- |
| ------------- | ------- | ----- | ---------- | --- |
| Decompression |||||
| Compression ||| TBD ||

Expand All @@ -44,8 +44,8 @@ import PackageDescription
let package = Package(
name: "PackageName",
dependencies: [
.package(url: "https://github.com/tsolomko/SWCompression.git",
from: "4.7.0")
.package(name: "SWCompression", url: "https://github.com/tsolomko/SWCompression.git",
from: "4.8.0")
],
targets: [
.target(
Expand All @@ -60,7 +60,7 @@ More details you can find in [Swift Package Manager's Documentation](https://git

### CocoaPods

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

To complete installation, run `pod install`.

Expand Down Expand Up @@ -105,7 +105,7 @@ BZip2, LZMA/LZMA2 and LZ4 support).

### Carthage

Add to your Cartfile `github "tsolomko/SWCompression" ~> 4.7`.
Add to your Cartfile `github "tsolomko/SWCompression" ~> 4.8`.

Then:

Expand Down Expand Up @@ -168,8 +168,8 @@ Every function or type of SWCompression's public API is documented. This documen

### Sophisticated example

There is a small command-line program, "swcomp", which is included in this repository in "Sources/swcomp". To build it
you need to uncomment several lines in "Package.swift" and run `swift build -c release`.
There is a small command-line program, "swcomp", which is included in this repository in "Sources/swcomp". It can be
built using Swift Package Manager.

## Contributing

Expand Down Expand Up @@ -236,7 +236,7 @@ provide missing (and sometimes existing) functionality through the unified API w

Secondly, in some cases it may be important to have a compression framework written entirely in Swift, without relying
on either system libraries or solutions implemented in other languages. Additionaly, since SWCompression is written
completely in Swift without Objective-C, it can also be used on __Linux__.
completely in Swift without Objective-C, it can also be used on Linux, __and Windows__.

## Future plans

Expand Down
10 changes: 5 additions & 5 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.8.1"
s.version = "4.8.2"
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,10 +15,10 @@ Pod::Spec.new do |s|

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

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.ios.deployment_target = "11.0"
s.osx.deployment_target = "10.13"
s.tvos.deployment_target = "11.0"
s.watchos.deployment_target = "4.0"

s.swift_versions = ["5"]

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.8.1</string>
<string>4.8.2</string>
<key>CFBundleVersion</key>
<string>86</string>
<string>87</string>
<key>NSHumanReadableCopyright</key>
<string>Copyright © 2022 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.8.1</string>
<string>4.8.2</string>
<key>CFBundleVersion</key>
<string>86</string>
<string>87</string>
</dict>
</plist>
Loading

0 comments on commit 5419717

Please sign in to comment.