Migrating from Periphery
outskirts is the community-maintained successor of peripheryapp/periphery, archived in August 2026. It was renamed from Periphery in 3.16.0 (2026-11), and the rename breaks nothing.
On this page
In short#
There is nothing to do: the rename to outskirts (3.16.0) breaks nothing.
- New names: the executable is
outskirts, the Homebrew formula istiny-earth-moon/tap/outskirts, the configuration file is.outskirts.ymland comment commands are written// outskirts:ignore. - The
peripheryalias: outskirts also installs aperipheryexecutable, which behaves exactly likeoutskirts. It prints no warning and has no announced end date, so existing scripts, CI jobs and Xcode run scripts keep working. - Configuration file:
.periphery.ymlis still read next to.outskirts.yml. Rename it whenever you like. - Comment commands:
// periphery:ignore,// periphery:ignore:all,// periphery:ignore:parametersand// periphery:overrideare equivalent to theiroutskirts:form. - Baselines: baseline files written by Periphery keep matching, see Baselines.
- Update check: it now points at the outskirts repository.
Installing over Periphery#
- From this fork's former tap (
tiny-earth-moon/tap/periphery):brew upgrademoves you tooutskirts. - From homebrew-core or the original tap: the outskirts formula installs a
peripheryalias, so it conflicts on purpose with the Periphery formulae. Uninstall the one you have, then install outskirts:
brew uninstall periphery
brew install tiny-earth-moon/tap/outskirts
- Mint: install
tiny-earth-moon/outskirts; bothoutskirtsandperipheryare linked, see Mint.
What changed since Periphery 3.x#
Most changes are additions; the following ones may need a look when you come from an older upstream release.
- Bazel: the Bazel mode (
--bazeland every--bazel-*option) was removed in 3.13.0. Passing one of these options, or abazelorbazel_*key in the configuration file, fails with an explicit error. See Bazel for the alternative. - Build arguments: commands are run without a shell since 3.12.12. Each element of
build_arguments,xcode_list_argumentsand of the arguments after--is passed as exactly one argument, so an element such as"-destination generic/platform=iOS"must be written as two elements. - Build cache: it lives in
~/Library/Caches/com.github.tiny-earth-moon.outskirts. The first scan moves a cache left under the former directory, so nothing is rebuilt. - Configuration values: values are checked when the file is loaded, and a value of the wrong type or an unknown key is reported instead of being ignored. Run
outskirts config checkonce to see what your file contains. - SARIF: the SARIF driver is named
outskirts, and the fingerprint key keeps itsperipheryResult/v1name, so the alerts already tracked by GitHub code scanning keep matching. See Output formats.
The changelog lists every change, version by version.
Relationship with Periphery#
Periphery was created by Ian Leitch, whom we thank for years of excellent work and for keeping the project open source. See Credits for the full attribution, including the sibling fork agoodkind/periphery.
The original author now develops Periphery Pro, a separate closed-source product. This fork takes nothing from it. It is not affiliated with, nor endorsed by, the original author or Periphery Pro. The periphery name is kept as an alias and for the configuration file and comment commands for compatibility; it is not a claim on the Periphery brand.