From 61791d7c8fab2e7856c47bd0dbf5c08ca0e98ef5 Mon Sep 17 00:00:00 2001 From: Martin Rechsteiner Date: Sun, 23 Jan 2022 12:57:23 +0100 Subject: [PATCH] Release v3.2.0 --- CHANGELOG.md | 251 +++++++++++++++++++++-------------------- Parchment.podspec.json | 4 +- README.md | 44 ++++---- 3 files changed, 154 insertions(+), 145 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index f7d3fa2b..9a99eaac 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,90 +2,99 @@ `Parchment` adheres to [Semantic Versioning](http://semver.org/). -## [3.1.0](https://github.com/rechsteiner/Parchment/compare/v3.0.1...v3.1.0) - 2020-10-16 +## [3.2.0](https://github.com/rechsteiner/Parchment/compare/v3.1.0...v3.2.0) - 2022-01-23 + +### Fixes + +- Fix issue with menu insets not updating #619 +- Update content size after parent size #623 +- Fix SPM linker settings #622 #615 +- Update Pods file to support iOS >= 9 #620 + +## [3.1.0](https://github.com/rechsteiner/Parchment/compare/v3.0.1...v3.1.0) - 2021-10-16 ### Added -* Add support for `pagingContentBackgroundColor` property #592 -* Add `contentInteraction` property into `PagingOptions` #593 +- Add support for `pagingContentBackgroundColor` property #592 +- Add `contentInteraction` property into `PagingOptions` #593 ### Changes -* Support for Xcode 13 #581 #601 -* Updated API for SwiftUI wrapper #572 #551 -* Drop support for iOS 8 #568 -* Remove support for older Swift versions #595 -* Improve accessibility of default paging cell #602 +- Support for Xcode 13 #581 #601 +- Updated API for SwiftUI wrapper #572 #551 +- Drop support for iOS 8 #568 +- Remove support for older Swift versions #595 +- Improve accessibility of default paging cell #602 ### Fixes -* Remove Carthage reference in FRAMEWORK_SEARCH_PATH #569 -* Fix wrong page direction when current paging item is out of view #567 -* Fix issue with rotation when using SwiftUI wrapper #596 +- Remove Carthage reference in FRAMEWORK_SEARCH_PATH #569 +- Fix wrong page direction when current paging item is out of view #567 +- Fix issue with rotation when using SwiftUI wrapper #596 ## [3.0.1](https://github.com/rechsteiner/Parchment/compare/v3.0.0...v3.0.1) - 2020-12-15 ### Fixes -* Fix layout issue in PageViewController #543 -* Fix crash when using UIColor(patternImage:) #544 +- Fix layout issue in PageViewController #543 +- Fix crash when using UIColor(patternImage:) #544 ## [3.0.0](https://github.com/rechsteiner/Parchment/compare/v2.4.0...v3.0.0) - 2020-12-03 ### Changes -* Custom PageViewController (#468) -* RTL language support (#468) +- Custom PageViewController (#468) +- RTL language support (#468) ## [2.4.0](https://github.com/rechsteiner/Parchment/compare/v2.3.0...v2.4.0) - 2020-01-06 ### Fixes -* Fix PagingTitleCell label horizontal constraints (#480) -* Fix regression causing menuInteraction property not to work properly (#486) -* Reload data when updating paging items in SwiftUI (#470) +- Fix PagingTitleCell label horizontal constraints (#480) +- Fix regression causing menuInteraction property not to work properly (#486) +- Reload data when updating paging items in SwiftUI (#470) ## [2.3.0](https://github.com/rechsteiner/Parchment/compare/v2.2.0...v2.3.0) - 2020-02-04 ### Added -* Add support for SwiftUI (#460) -* Add support for self-sizing menu cells (#461) +- Add support for SwiftUI (#460) +- Add support for self-sizing menu cells (#461) ### Fixes -* Handle menu background color change after viewDidLoad (#465) +- Handle menu background color change after viewDidLoad (#465) ## [2.2.0](https://github.com/rechsteiner/Parchment/compare/v2.1.0...v2.2.0) - 2020-21-03 ### Added -* Add delegate method when selecting item (#450) +- Add delegate method when selecting item (#450) ### Changes -* Update menu constraints when menuItemSize changes (#449) +- Update menu constraints when menuItemSize changes (#449) ## [2.1.0](https://github.com/rechsteiner/Parchment/compare/v2.0.1...v2.1.0) - 2020-11-03 ### Changes -* Add option to position menu vertically (#412) -* Combine all example targets into single target (#442) +- Add option to position menu vertically (#412) +- Combine all example targets into single target (#442) ### Fixes -* Fix missing import causing SwiftPM to fail (#420) -* Fix memory leak occurring when configuring size cache (#433) -* Fix issue with initial selection not being set (#438) -* Fix regression causing indicator not to animate (#441) -* Fix issues with invalidation of size cache (#444) +- Fix missing import causing SwiftPM to fail (#420) +- Fix memory leak occurring when configuring size cache (#433) +- Fix issue with initial selection not being set (#438) +- Fix regression causing indicator not to animate (#441) +- Fix issues with invalidation of size cache (#444) ## [2.0.1](https://github.com/rechsteiner/Parchment/compare/v2.0.0...v2.0.1) - 2020-08-02 ### Fixes -* Remove unused `FixedPagingViewController` file to fix xcodebuild. +- Remove unused `FixedPagingViewController` file to fix xcodebuild. ## [2.0.0](https://github.com/rechsteiner/Parchment/compare/v1.7.0...v2.0.0) - 2020-08-02 @@ -93,118 +102,118 @@ See releases for more details: [https://github.com/rechsteiner/Parchment/release ### Changes -* Removed `FixedPagingViewController` -* Removed generics (#285) -* Moved size delegate into separate protocol -* Replaced `menuItemSource` with `register(cellClass:)` -* Updated naming of data sources +- Removed `FixedPagingViewController` +- Removed generics (#285) +- Moved size delegate into separate protocol +- Replaced `menuItemSource` with `register(cellClass:)` +- Updated naming of data sources ## [1.7.0](https://github.com/rechsteiner/Parchment/compare/v1.6.0...v1.7.0) - 2019-26-09 ### Fixes -* Update to Swift 5 and Xcode 10.2 #339 -* Fix issue changing selection when view is not visible #371 -* Fix unbalanced appearance transitions #373 -* Fix issues when compiled as SPM dependency (Xcode 11) (#386) +- Update to Swift 5 and Xcode 10.2 #339 +- Fix issue changing selection when view is not visible #371 +- Fix unbalanced appearance transitions #373 +- Fix issues when compiled as SPM dependency (Xcode 11) (#386) ### Added -* Add support for Accio as dependency manager #345 +- Add support for Accio as dependency manager #345 ## [1.6.0](https://github.com/rechsteiner/Parchment/compare/v1.5.0...v1.6.0) - 2019-03-03 ### Fixes -* Forward appearance methods from EMPageViewController #306 -* Fix indicator insets with only one item #307 +- Forward appearance methods from EMPageViewController #306 +- Fix indicator insets with only one item #307 ### Added -* Add method for reloading menu #312 +- Add method for reloading menu #312 ## [1.5.0](https://github.com/rechsteiner/Parchment/compare/v1.4.1...v1.5.0) - 2018-11-18 ### Fixes -* Include vertical insets for indicator view #271 -* Remove development team from Parchment target #280 -* Update indicator and border views when changing options #245 -* Fix issue with width delegate not being called #244 -* Fix issue with invalidating collection view layout #240 +- Include vertical insets for indicator view #271 +- Remove development team from Parchment target #280 +- Update indicator and border views when changing options #245 +- Fix issue with width delegate not being called #244 +- Fix issue with invalidating collection view layout #240 ## [1.4.1](https://github.com/rechsteiner/Parchment/compare/v1.4.0...v1.4.1) - 2018-08-15 ### Fixes -* Fix issue with reloadData causing a crash #230 +- Fix issue with reloadData causing a crash #230 ## [1.4.0](https://github.com/rechsteiner/Parchment/compare/v1.3.0...v1.4.0) - 2018-08-11 ### Changes -* Upgrade to Swift 4.2 #228 +- Upgrade to Swift 4.2 #228 ### Added -* Add option for registering cells from NIB #227 +- Add option for registering cells from NIB #227 ## [1.3.0](https://github.com/rechsteiner/Parchment/compare/v1.2.0...v1.3.0) - 2018-05-19 ### Changes -* Add version checks to support Swift >=3.2 #190, #184 +- Add version checks to support Swift >=3.2 #190, #184 ### Fixes -* Fix issue with indicator/border class was not registered #191 -* Fix issue with reloading data when view controllers did not change #201 +- Fix issue with indicator/border class was not registered #191 +- Fix issue with reloading data when view controllers did not change #201 ## [1.2.0](https://github.com/rechsteiner/Parchment/compare/v1.1.0...v1.2.0) - 2018-04-15 ### Changes -* Upgrade to Swift 4.1 #171 -* Prevent unnecessary view controller initializations #160 +- Upgrade to Swift 4.1 #171 +- Prevent unnecessary view controller initializations #160 ### Fixes -* Fix issues with reloading data #157 -* Fix issue with clearing all items in page view controller (a5759ba) -* Fix issue where willScrollToItem delegate was not called #173 -* Fix layout bug with cell heights when using width delegate #155 +- Fix issues with reloading data #157 +- Fix issue with clearing all items in page view controller (a5759ba) +- Fix issue where willScrollToItem delegate was not called #173 +- Fix layout bug with cell heights when using width delegate #155 ## [1.1.0](https://github.com/rechsteiner/Parchment/compare/v1.0.3...v1.1.0) - 2018-03-25 ### Added -* Add method for reloading data without passing initial item (8ebd931) -* Add option for selected font #143 +- Add method for reloading data without passing initial item (8ebd931) +- Add option for selected font #143 ### Fixes -* Fix issue with reloading data when using PagingViewControllerDataSource (07641e2) -* Fix integer overflow causing crash in UnplashExample #140 +- Fix issue with reloading data when using PagingViewControllerDataSource (07641e2) +- Fix integer overflow causing crash in UnplashExample #140 ## [1.0.3](https://github.com/rechsteiner/Parchment/compare/v1.0.2...v1.0.3) - 2018-03-01 ### Fixes -* Fix issue where size delegate was not called #135 +- Fix issue where size delegate was not called #135 ## [1.0.2](https://github.com/rechsteiner/Parchment/compare/v1.0.1...v1.0.2) - 2018-02-22 ### Changes -* Update default background color for menu items #131 +- Update default background color for menu items #131 ## [1.0.1](https://github.com/rechsteiner/Parchment/compare/v1.0.0...v1.0.1) - 2018-02-03 ### Fixes -* Fix issue with selecting items programatically #125 -* Fix wrong color on collection view background #126 -* Fix issue with menu items being clipped #127 +- Fix issue with selecting items programatically #125 +- Fix wrong color on collection view background #126 +- Fix issue with menu items being clipped #127 ## [1.0.0](https://github.com/rechsteiner/Parchment/compare/v0.9.0...v1.0.0) - 2018-01-29 @@ -253,7 +262,7 @@ extension ViewController: PagingViewControllerDataSource { func numberOfViewControllers(in: PagingViewController) -> Int { return items.count - } + } func pagingViewController(_ pagingViewController: PagingViewController, viewControllerForIndex index: Int) -> UIViewController { return ItemViewController(item: items[index]) @@ -322,76 +331,76 @@ extension ViewController: PagingViewControllerDelegate { ### Added -* Add option to always center selected menu item #101 -* Allow subclassing the collection view layout #104 -* Add empty implementations of collection view delegate methods (4840483) -* Add option to disable content interaction #113 -* Add option for selected background color #114 -* Add method for selecting paging items based on index #117 +- Add option to always center selected menu item #101 +- Allow subclassing the collection view layout #104 +- Add empty implementations of collection view delegate methods (4840483) +- Add option to disable content interaction #113 +- Add option for selected background color #114 +- Add method for selecting paging items based on index #117 ### Changed -* Rename selectPagingItem to select(pagingItem:) #105 -* Make PagingState property public #107 -* Make PagingItems struct public #108 -* Make PagingState extension properties public (f842a7b) -* Make indicator layout attributes open to allow subclassing (7c35acc) -* Change collection view delegate methods to open (68b125b) -* Replace PagingTheme with PagingOptions #111 -* Rename `headerBackgroundColor` to `menuBackgroundColor` #116 +- Rename selectPagingItem to select(pagingItem:) #105 +- Make PagingState property public #107 +- Make PagingItems struct public #108 +- Make PagingState extension properties public (f842a7b) +- Make indicator layout attributes open to allow subclassing (7c35acc) +- Change collection view delegate methods to open (68b125b) +- Replace PagingTheme with PagingOptions #111 +- Rename `headerBackgroundColor` to `menuBackgroundColor` #116 ### Fixes -* Fix performance issue with updating content offset #106 -* Set background color for paging cell based on options (1a70bd6) -* Fix layout calculation when using transforms #102 -* Account for menu spacing when generating items #103 -* Fix bug with animation when selecting items (73913f) +- Fix performance issue with updating content offset #106 +- Set background color for paging cell based on options (1a70bd6) +- Fix layout calculation when using transforms #102 +- Account for menu spacing when generating items #103 +- Fix bug with animation when selecting items (73913f) ## [0.9.0](https://github.com/rechsteiner/Parchment/compare/v0.8.0...v0.9.0) - 2017-12-25 ### Added -* Add method for reloading data #94 -* Allow setting different width for selected cell #85 +- Add method for reloading data #94 +- Allow setting different width for selected cell #85 ## [0.8.0](https://github.com/rechsteiner/Parchment/compare/v0.7.0...v0.8.0) - 2017-11-19 ### Fixes -* Fix selecting paging items before view appears #79 -* Fix issues with safe area insets #81 +- Fix selecting paging items before view appears #79 +- Fix issues with safe area insets #81 ## [0.7.0](https://github.com/rechsteiner/Parchment/compare/v0.6.0...v0.7.0) - 2017-11-07 ### Changes -* Change access for EMPageViewController delegate method #72 -* Improve performance by using manual frames for menu cells #68 -* Add option to customize indicator and border view #67 -* Update documentation #60 +- Change access for EMPageViewController delegate method #72 +- Improve performance by using manual frames for menu cells #68 +- Add option to customize indicator and border view #67 +- Update documentation #60 ## [0.6.0](https://github.com/rechsteiner/Parchment/compare/v0.5.0...v0.6.0) - 2017-09-25 ### Changes -* Upgrade to Swift 4.0 #54 +- Upgrade to Swift 4.0 #54 ### Fixes -* Fix bug where selecting items was not working #55 +- Fix bug where selecting items was not working #55 ## [0.5.0](https://github.com/rechsteiner/Parchment/compare/v0.4.0...v0.5.0) - 2017-08-22 ### Added -* Add support for scrolling in header #48 +- Add support for scrolling in header #48 ### Changes -* Require `PagingItem` to conform to `Hashable` and `Comparable`: +- Require `PagingItem` to conform to `Hashable` and `Comparable`: [fbd7aff](https://github.com/rechsteiner/Parchment/pull/48/commits/fbd7aff8c1e3ac17dad8644961d073dc49da6a1e) -* Use custom collection view layout instead of using +- Use custom collection view layout instead of using `UICollectionViewFlowLayout` [c6f78b4](https://github.com/rechsteiner/Parchment/pull/48/commits/c6f78b4521c4cae56050316ae3ec3ac72fe895ba) @@ -399,54 +408,54 @@ extension ViewController: PagingViewControllerDelegate { ### Added -* Add delegate for selected items in FixedPagingViewController #46 +- Add delegate for selected items in FixedPagingViewController #46 ### Fixes -* Fix issue with delayed rendering #45 +- Fix issue with delayed rendering #45 ## [0.3.0](https://github.com/rechsteiner/Parchment/compare/v0.2.0...v0.3.0) - 2017-03-12 ### Changes -* Allow selectPagingItem to be called before viewDidAppear #32 -* Move collection view above paging view #31 +- Allow selectPagingItem to be called before viewDidAppear #32 +- Move collection view above paging view #31 ### Fixes -* Fixes for EMPageViewController #36 -* Fix calculation for transition distance #33 -* Fix background color on header view #41 +- Fixes for EMPageViewController #36 +- Fix calculation for transition distance #33 +- Fix background color on header view #41 ## [0.2.0](https://github.com/rechsteiner/Parchment/compare/v0.1.2...v0.2.0) - 2017-02-19 ### Added -* Add progress value to menu items: #20 -* Scroll menu items alongside content: #22 -* Option to add spacing to indicator: #27 -* Add new icons example project -* Add example for loading view controllers from storyboard +- Add progress value to menu items: #20 +- Scroll menu items alongside content: #22 +- Option to add spacing to indicator: #27 +- Add new icons example project +- Add example for loading view controllers from storyboard ## [0.1.2](https://github.com/rechsteiner/Parchment/compare/v0.1.1...v0.1.2) - 2016-12-08 ### Changes -* Update to Swift 3.0 #11 -* Update public accessors +- Update to Swift 3.0 #11 +- Update public accessors [1f057a9](https://github.com/rechsteiner/Parchment/commit/1f057a94dc8e204343eeb78b9be6f516e1a6af15) ### Fixes -* Account for menuInsets when using sizeToFit #8 -* Add support for centering fixed width menu items #10 +- Account for menuInsets when using sizeToFit #8 +- Add support for centering fixed width menu items #10 ## [0.1.1](https://github.com/rechsteiner/Parchment/compare/v0.1.0...v0.1.1) - 2016-05-22 ### Changes -* Add MIT license #4 +- Add MIT license #4 ## [0.1.0](https://github.com/rechsteiner/Parchment/compare/0ad346e...v0.1.0) - 2016-05-22 -* Inital release +- Inital release diff --git a/Parchment.podspec.json b/Parchment.podspec.json index 106786b4..bb630f46 100644 --- a/Parchment.podspec.json +++ b/Parchment.podspec.json @@ -1,6 +1,6 @@ { "name": "Parchment", - "version": "3.1.0", + "version": "3.2.0", "license": "MIT", "summary": "A flexible paging menu controller with support for infinite data sources.", "description": "Parchment allows you to page between view controllers while showing menu items that scrolls along with the content. It’s build to be very customizable, it’s well-tested and written fully in Swift.", @@ -11,7 +11,7 @@ "social_media_url": "http://twitter.com/rechsteiner", "source": { "git": "https://github.com/rechsteiner/Parchment.git", - "tag": "v3.1.0" + "tag": "v3.2.0" }, "platforms": { "ios": "9.0" diff --git a/README.md b/README.md index e6167f07..973aff3e 100644 --- a/README.md +++ b/README.md @@ -26,29 +26,29 @@ Parchment lets you page between view controllers while showing any type of generic indicator that scrolls along with the content. Here are some benefits of using Parchment: -* **Highly customizable**
The menu items are built using +- **Highly customizable**
The menu items are built using `UICollectionView`, which means you can display pretty much whatever you want. You can even subclass the layout to create completely custom behaviours. -* **Memory-efficient**:
Parchment only allocates view controllers when they’re needed, meaning if you have a lot of view controllers you don’t have to initialize them all up-front. +- **Memory-efficient**:
Parchment only allocates view controllers when they’re needed, meaning if you have a lot of view controllers you don’t have to initialize them all up-front. -* **Infinite scrolling**:
Because view controllers are only allocated as you are scrolling, you can create data sources that are infinitely large. This is perfect for things like [calendars](/Documentation/infinite-data-source.md). +- **Infinite scrolling**:
Because view controllers are only allocated as you are scrolling, you can create data sources that are infinitely large. This is perfect for things like [calendars](/Documentation/infinite-data-source.md). ## Table of contents -* [Getting started](#getting-started) - * [Basic usage](#basic-usage) - * [Data source](#data-source) - * [Infinite data source](#infinite-data-source) - * [Selecting items](#selecting-items) - * [Reloading data](#reloading-data) - * [Delegate](#delegate) - * [Size delegate](#size-delegate) - * [Selecting items](#selecting-items) -* [Customization](#customization) -* [Installation](#installation) -* [Acknowledgements](#acknowledgements) -* [Changelog](#changelog) -* [Licence](#licence) +- [Getting started](#getting-started) + - [Basic usage](#basic-usage) + - [Data source](#data-source) + - [Infinite data source](#infinite-data-source) + - [Selecting items](#selecting-items) + - [Reloading data](#reloading-data) + - [Delegate](#delegate) + - [Size delegate](#size-delegate) + - [Selecting items](#selecting-items) +- [Customization](#customization) +- [Installation](#installation) +- [Acknowledgements](#acknowledgements) +- [Changelog](#changelog) +- [Licence](#licence) ## Getting started @@ -504,15 +504,15 @@ Parchment will be compatible with the lastest public release of Swift. ### Requirements -* iOS 9.0+ -* Xcode 8.0+ +- iOS 9.0+ +- Xcode 8.0+ ### CocoaPods Parchment is available through [CocoaPods](https://cocoapods.org). To install it, add the following to your `Podfile`: ``` -pod 'Parchment', '~> 3.0' +pod 'Parchment', '~> 3.2' ``` ### Swift Package Manager @@ -520,7 +520,7 @@ pod 'Parchment', '~> 3.0' Parchment is available through [Swift Package Manager](https://swift.org/package-manager/). Add Parchment as a dependency to your `Package.swift`: ```Swift -.package(url: "https://github.com/rechsteiner/Parchment", from: "3.0.0") +.package(url: "https://github.com/rechsteiner/Parchment", from: "3.2.0") ``` ### Carthage @@ -528,7 +528,7 @@ Parchment is available through [Swift Package Manager](https://swift.org/package Parchment also supports [Carthage](https://github.com/Carthage/Carthage). To install it, add the following to your `Cartfile`: ``` -github "rechsteiner/Parchment" ~> 3.0 +github "rechsteiner/Parchment" ~> 3.2 ``` See [this guide](https://github.com/Carthage/Carthage#adding-frameworks-to-an-application) for more details on using Carthage.