featherless c5fd516b7d
[scripts/release] apidiff now includes any folder with an umbrella header. (#4732)
This change ensures that our release notes include API diffs for sub-components such as our themers.

Closes https://github.com/material-components/material-components-ios/issues/3983

Example output:

### AppBar+ColorThemer

#### MDCAppBarColorThemer

*new* class method: `+applySurfaceVariantWithColorScheme:toAppBarViewController:` in `MDCAppBarColorThemer`

*new* class method: `+applyColorScheme:toAppBarViewController:` in `MDCAppBarColorThemer`

### AppBar

#### MDCAppBarContainerViewController

*new* property: `appBarViewController` in `MDCAppBarContainerViewController`

#### MDCAppBarNavigationControllerDelegate

*new* method: `-appBarNavigationController:willAddAppBarViewController:asChildOfViewController:` in `MDCAppBarNavigationControllerDelegate`

#### MDCAppBarViewController

*new* property: `navigationBar` in `MDCAppBarViewController`

*new* property: `headerStackView` in `MDCAppBarViewController`

*new* class: `MDCAppBarViewController`
2018-08-07 15:11:55 -04:00
..
2018-05-04 18:39:00 -04:00

Scripts

Scripts for maintaining Material Components for iOS—none of these scripts are required to use MDC or for casual contributors.

The important scripts are:

  • prep_all: prepare the Material Components catalog, tests, and demos apps for building.
  • build_all: build the Material Components catalog and each of our demo apps.
  • test_all: build and test the Material Components unit and interation tests.
  • clean_all: remove artifacts from the prep_all, build_all, and test_all scripts.
  • check_components: run component checks for documentation, examples, etc.
  • install_contributor_tools: install local contributor tools to speed up the development cycle.

Languages

Material Components follows Google's language standards for scripting. The following lanaguages can be used for scripts:

Either language can be used for a particular purpose, but larger or more complex scripts should be written in (or converted to) Python. Bash scripts get unwieldy quickly and advanced Bash scripting knowledge is currently less common than advanced Python scripting knowledge.

The intent is that the scripts will run on relatively current OS X machines with (only) Xcode installed.