Closed JoeMatt closed 4 years ago
I was going to split these up, but rather than make 7 or so PRs, if there are specific objections I can remove those commits since each tool is broken into a commit.
I was going to split these up, but rather than make 7 or so PRs, if there are specific objections I can remove those commits since each tool is broken into a commit.
Nah this makes sense
For merge / review after #620
Overview
Add default configs and scripts for shell, CI, CD.
Contents
Makefile
Based on Ludicrous Makefile
Quick access to shell commands for iOS
For help and commands:
.editorconfig
https://editorconfig.org/
For users of text editors and other IDEs. VS Code, emacs, Atom, VIM etc support
.editorconfig
usually with a plugin, to change text formatting based on the file type.The purpose is to reduce formatting issues with Pull Requests.
travis.ml
A WIP for the testing of CI with Travis CI.
codecov
Codecov is a commercial, free for FOSS projects, test coverage reporting tool. It integrates with XCode coverage reports and can warn on or block Pull Requests that don't meet standards of test coverage.
It can help with the goal of increasing test coverage and encourage contributors to add tests to their PRs without admins having to nag about it. Let the bot do the nagging/shaming.
Integrates with Fastlane and the Makefile also in this PR.
https://codecov.io
Danger
Another bot, allowing creating rules in Ruby (or swift) to automatically warn, comment on, tag, edit, reply to or block Pull Requests based on anything you can code in ruby.
Needs a bot or GitHub action to run on new PRs, or can be run from inside a CI such as Travis, Circle, etc.
Gemfile
Added a gem file so
ruby bundle
can be used to run a specific version of the common Ruby-based tools included in this PR or to come. Cocoapods, Danger, Fastlane and jazzy all are ruby based.A
Gemfile
helps CI/CD servers know which version of tools to use and keeps devs on the same page about what versions of Gems are known to work. (Especially when it comes to Cocoapods which commonly adds backward breaking changes to their DSL)WIP / TODO
fastlane
Lanes to help with
GitHub bots
Swift PM
Once Swift 5 support is merged I have a Package.swift that can run all the ruby based tools as a
swift ...
command. eg;swift lint
. Basically a replacement for cocoapods utility only pods.View rendered CHANGELOG.md View rendered docs/ChangeLog.md