aboutsummaryrefslogtreecommitdiffstats
path: root/docs
diff options
context:
space:
mode:
authorMike McQuaid2016-10-09 12:57:30 +0100
committerGitHub2016-10-09 12:57:30 +0100
commitd8c500cb4c1402573661b7b701b87431e70fca0c (patch)
tree29918adcd183ededed151c4149e798c71adfbc8b /docs
parentf71e4a7e0e4647819d5d3ba6ee6c76c18d7c2f3c (diff)
parentc3771336cff5630ce09248a57728e67393008087 (diff)
downloadbrew-d8c500cb4c1402573661b7b701b87431e70fca0c.tar.bz2
Merge pull request #1204 from MikeMcQuaid/migrate-a-formula-to-multiple-versions-docs
Migrate a Formula to Multiple Versions: add docs.
Diffstat (limited to 'docs')
-rw-r--r--docs/Migrate-A-Formula-To-Multiple-Versions.md27
1 files changed, 27 insertions, 0 deletions
diff --git a/docs/Migrate-A-Formula-To-Multiple-Versions.md b/docs/Migrate-A-Formula-To-Multiple-Versions.md
new file mode 100644
index 000000000..cd69790b0
--- /dev/null
+++ b/docs/Migrate-A-Formula-To-Multiple-Versions.md
@@ -0,0 +1,27 @@
+# Migrate a Formula to Multiple Versions
+## Migrating an existing formula to multiple versions
+
+In separate pull-requests:
+
+1. [Rename the formula](Rename-A-Formula.md) from e.g. `boost.rb` to e.g. `boost@1.61.rb` and, in the same pull request, add an alias named `boost`. This should not require any `revision`ing or significant formula modification beyond the formula name.
+2. Add the new `keg_only` version formula e.g. `boost@1.62.rb`
+3. Tap authors should have their `depends_on "boost"` updated to `depends_on "boost@1.61"` or `depends_on "boost@1.62"`.
+4. Modify the `boost` alias to point to `boost@1.62.rb`. Any formulae that need the old version of `boost` should have their `depends_on "boost"` to be updated to `depends_on "boost@1.61"`. `boost@1.62.rb` should no longer be `keg_only` and `boost@1.61.rb` should become `keg_only`.
+5. When `boost@1.62` has two major/minor versions newer than it (e.g. `boost@1.64`) then consider removing `boost@1.62.rb` and anything that depends on it.
+
+## Upgrading a multiple version formula
+
+In separate pull-requests:
+
+1. Add the new `keg_only` version formula e.g. `boost@1.63.rb`
+2. Modify the `boost` alias to point to `boost@1.63.rb`. Any formulae that need the old version of `boost` should have their `depends_on "boost"` to be updated to `depends_on "boost@1.62"`. `boost@1.63.rb` should no longer be `keg_only` and `boost@1.62.rb` should become `keg_only`.
+3. When `boost@1.63` has two major/minor versions newer than it (e.g. `boost@1.65`) then consider removing `boost@1.63.rb` and anything that depends on it.
+
+## Importing a homebrew/versions formula into homebrew/core
+
+In separate pull-requests:
+
+1. [Migrate the formula](Migrating-A-Formula-To-A-Tap.md) from Homebrew/homebrew-versions to Homebrew/homebrew-core with the same, old name e.g. `boost160.rb` and to be `keg_only`.
+2. [Rename the formula](Rename-A-Formula.md) from e.g. `boost160.rb` to e.g. `boost@1.60.rb`. This should not require any `revision`ing or significant formula modification beyond the formula name.
+3. Tap authors should have their `depends_on "boost160"` updated to `depends_on "boost@1.60"`.
+5. When `boost@1.60` has two major/minor versions newer than it (e.g. `boost@1.62`) then consider removing `boost@1.60.rb` and anything that depends on it.