Swiftpack.co - Package - artemnovichkov/Carting

Carting

Make Swift Package Manager Swift Package Manager

Do you use Carthage? Are you feel tired of adding special script and the paths to frameworks (point 4, 5 and 6 in Getting Started guide) manually? Me too. Carting does it for you. It scans Carthage folder and linked frameworks, gets framework names and updates the script.

Carting usage

Using

Run carting update in project folder. That's all.

By default Carting searches a script named Carthage, but you can set a name of your script via command line arguments:

$ carting update -s MyBestScript

If there is no script with the name, Carting will add a new one.

🚨Note: be sure to have no uncommitted changes in project file to prevent project parsing errors 😱. Project parsing error

Run carting help to see available commands:

Usage: carting [command] [options]
  update:
      Adds a new script with input/output file paths or updates the script named `Carthage`.
  -s, --script:
      Updates input/output file paths for the script with passed name.
  -p, --path:
      The project directory path.
  list:
      Prints Carthage frameworks list with linking description.
  help:
      Prints this message.

Installing

Homebrew (recommended):

$ brew install artemnovichkov/projects/carting

Make:

$ git clone https://github.com/artemnovichkov/carting.git
$ cd Carting
$ make

Swift Package Manager:

let package = Package(
    dependencies: [
        .Package(url: "https://github.com/artemnovichkov/carting", majorVersion: 1)
    ]
)

Marathon

  • Install Marathon.
  • Add Carting to Marathon using $ marathon add git@github.com:artemnovichkov/carting.git. Alternatively, add git@github.com:artemnovichkov/carting.git to your Marathonfile.
  • Write your script, then run it using $ marathon run <path-to-your-script>.

Todo

  • [x] Add option for adding new script
  • [x] Add support of multiple targets
  • [x] Add check of linked frameworks
  • [x] Unify errors
  • [ ] Add support of tvOS and watchOS platforms
  • [ ] Check correct work with workspaces
  • [ ] Write tests

Author

Artem Novichkov, novichkoff93@gmail.com

License

Carting is available under the MIT license. See the LICENSE file for more info.

Github

link
Stars: 32
Help us keep the lights on

Used By

Total: 0

Releases

1.2.13 - Apr 25, 2018

Added:

  • An option for project path

1.2.12 - Mar 16, 2018

Fixed:

  • Removing of scripts with default names. Fixed #14.

1.2.11 - Nov 24, 2017

Added:

  • Printing framework information like:
Alamofire.framework		static	armv7, i386, x86_64, arm64
AudioKit.framework		dynamic	i386, x86_64, armv7, arm64

Fixed:

  • Prevent adding paths for static frameworks. Fixed #12.

Breaking Changes:

  • carting command now prints help message. To update projects run carting update.

1.2.10 - Oct 18, 2017

Adds:

  • Disable using the sandbox when executing subprocesses of Swift builds

1.2.9 - Sep 21, 2017

Fixed:

  • Installation via Swift Package Manager

View build details and download artifacts on buddybuild: Carting (iOS, CartingCore - Debug)