An open API service indexing awesome lists of open source software.

https://github.com/bcylin/cocoapods-acknowledgements-addons

A CocoaPods plugin that adds additional acknowledgements to the plist generated by cocoapods-acknowledgements.
https://github.com/bcylin/cocoapods-acknowledgements-addons

acknowledgements carthage cocoapods cocoapods-plugin ios swift-package-manager

Last synced: 6 months ago
JSON representation

A CocoaPods plugin that adds additional acknowledgements to the plist generated by cocoapods-acknowledgements.

Awesome Lists containing this project

README

          

# CocoaPods Acknowledgements Add-ons

[![GitHub Actions](https://github.com/bcylin/cocoapods-acknowledgements-addons/actions/workflows/run_tests.yml/badge.svg)](https://github.com/bcylin/cocoapods-acknowledgements-addons/actions)
[![Gem Version](https://badge.fury.io/rb/cocoapods-acknowledgements-addons.svg)](https://rubygems.org/gems/cocoapods-acknowledgements-addons)

A CocoaPods plugin that adds additional acknowledgements to the plist generated by [cocoapods-acknowledgements](https://github.com/CocoaPods/cocoapods-acknowledgements).

## Installation

Install via `gem install cocoapods-acknowledgements` or add it to the **Gemfile**:

```rb
gem "cocoapods-acknowledgements-addons"
```

## Prerequisites

1. CocoaPods and [cocoapods-acknowledgements](https://github.com/CocoaPods/cocoapods-acknowledgements)
2. The installed libraries provide podspec

## Use cases

### With Carthage / git submodules

If you have some dependencies installed via CocoaPods and some installed using different ways, such as [Carthage](https://github.com/Carthage/Carthage) or git submodules, you can aggregate the acknowledgements in one place.

Use the plugin in the **Podfile**:

```rb
target :App do
pod "CPDAcknowledgements"
end

# Generates a plist of dependencies installed via CocoaPods
plugin "cocoapods-acknowledgements"

# Adds additional acknowledgements to the generated plist
plugin "cocoapods-acknowledgements-addons", add: ["Carthage/Checkouts"]
```

### With Swift Package Manager

To find the dependencies installed via [Swift Package Manager](https://developer.apple.com/documentation/xcode/adding_package_dependencies_to_your_app) in `~/Library/Developer/Xcode/DerivedData`, specify `with_spm: true` when using the plugin:

```rb
plugin "cocoapods-acknowledgements-addons", add: ["Carthage/Checkouts"], with_spm: true
```

## What's modified?

The plugin searches `**/*.podspec` located in the specified directories and adds the acknowledgements to the plist generated by [cocoapods-acknowledgements](https://github.com/CocoaPods/cocoapods-acknowledgements), which can be found in the `Pods` directory:

```
.
├── App.xcodeproj
├── App.xcworkspace
├── Podfile
├── Podfile.lock
└── Pods
└── Pods-{target_name}-metadata.plist
```

This plugin also updates the app's `Settings.bundle/Pods-{target_name}-settings-metadata.plist` if it exists.

Check out the [example app](https://github.com/bcylin/cocoapods-acknowledgements-addons/tree/master/example) for the configuration to use with [CPDAcknowledgements](https://github.com/CocoaPods/CPDAcknowledgements).

## Pod Commands

### Search: List all podspecs found in $PATHS

```sh
pod acknowledgements search $PATHS
```

Usage:

1. without options

```sh
$ bundle exec pod acknowledgements search example

./Carthage/Checkouts/QuickTableViewController/QuickTableViewController.podspec
./Carthage/Checkouts/Alamofire/Alamofire.podspec
./Acknowledgements/Crypto/Crypto.podspec
```

2. with `--swift-packages`

```sh
$ bundle exec pod acknowledgements search --swift-packages example/App.xcodeproj

~/Library/Developer/Xcode/DerivedData/App-djdfchmfsxwuuqbfczwmhygyunnk/SourcePackages/checkouts/CwlCatchException/CwlCatchException.podspec
~/Library/Developer/Xcode/DerivedData/App-djdfchmfsxwuuqbfczwmhygyunnk/SourcePackages/checkouts/Quick/Quick.podspec
~/Library/Developer/Xcode/DerivedData/App-djdfchmfsxwuuqbfczwmhygyunnk/SourcePackages/checkouts/CwlPreconditionTesting/CwlPreconditionTesting.podspec
~/Library/Developer/Xcode/DerivedData/App-djdfchmfsxwuuqbfczwmhygyunnk/SourcePackages/checkouts/Nimble/Nimble.podspec
```

## License

Released under the [MIT License](https://github.com/bcylin/cocoapods-acknowledgements-addons/blob/master/LICENSE).