Cherry-picking changes for the next Swift release?


(Alex Blewitt) #1

I have a couple of Calendar related fixes into swift-corelibs-foundation master:

https://github.com/apple/swift-corelibs-foundation/pull/675
https://github.com/apple/swift-corelibs-foundation/pull/677

How do I go about cherry-picking these to be in the next release? There are several remote branches that have the 'swift-3' moniker including several 'preview' ones:

  origin/swift-3
  origin/swift-3.0-branch
  origin/swift-3.0-preview-1-branch
  origin/swift-3.0-preview-2-branch
  origin/swift-3.0-preview-3-branch
  origin/swift-3.0-preview-4-branch
  origin/swift-3.0-preview-5-branch
  origin/swift-3.0-preview-5-speculative
  origin/swift-3.0.1-preview-2-branch

Why are we representing previews as branches, instead of tags? If I wanted to submit a pull request for one of these previews, it's not clear which one(s) I should target.

There are also a number of branches that are old (in many cases, over a month):

  origin/dabrahams-patch-1
  origin/dabrahams-patch-2
  origin/data-associated-type-fixes-3.0
  origin/more_value_types
  origin/nscoding
  origin/revert-540-SR-2151
  origin/revert-567-pr-grabbag

Can we get these cleaned up if they are no longer necessary?

Alex


(Tony Parker) #2

Hi Alex,

I have a couple of Calendar related fixes into swift-corelibs-foundation master:

https://github.com/apple/swift-corelibs-foundation/pull/675
https://github.com/apple/swift-corelibs-foundation/pull/677

How do I go about cherry-picking these to be in the next release? There are several remote branches that have the 'swift-3' moniker including several 'preview' ones:

  origin/swift-3
  origin/swift-3.0-branch
  origin/swift-3.0-preview-1-branch
  origin/swift-3.0-preview-2-branch
  origin/swift-3.0-preview-3-branch
  origin/swift-3.0-preview-4-branch
  origin/swift-3.0-preview-5-branch
  origin/swift-3.0-preview-5-speculative
  origin/swift-3.0.1-preview-2-branch

Why are we representing previews as branches, instead of tags? If I wanted to submit a pull request for one of these previews, it's not clear which one(s) I should target.

I agree this is a bit confusing.

Right now, swift-3.0-branch is the one that is used as the “development” branch for any updates to swift 3.0.

There are also a number of branches that are old (in many cases, over a month):

  origin/dabrahams-patch-1
  origin/dabrahams-patch-2
  origin/data-associated-type-fixes-3.0
  origin/more_value_types
  origin/nscoding
  origin/revert-540-SR-2151
  origin/revert-567-pr-grabbag

Can we get these cleaned up if they are no longer necessary?

Alex

Yes, I think we should delete these. I’ll do that for a bunch of these.

- Tony

···

On Oct 12, 2016, at 9:52 AM, Alex Blewitt via swift-corelibs-dev <swift-corelibs-dev@swift.org> wrote:


(Alex Blewitt) #3

Thanks for cleaning up the old branches, Tony.

I wonder if we need to keep the -preview- branches? It seems they are all replaced by equivalent tags, except for -preview-5-speculative (which is contained in both swift-3.0 branch and in the swift-3.0-PREVIEW-6 tag, as shown below):

$ git ls-remote --heads | grep preview
From https://github.com/apple/swift-corelibs-foundation
3d10cf76b1faa86bae48a5e7d9876ee7ad3af422 refs/heads/swift-3.0-preview-1-branch
c8c1ff0f8b274567f9018297269258290238be73 refs/heads/swift-3.0-preview-2-branch
0ff9f494a66fe7130536c70f23ef5f30b1d2aa9f refs/heads/swift-3.0-preview-3-branch
686d9b6db204a330f8bacf792e552dbd2f5f82df refs/heads/swift-3.0-preview-4-branch
686d9b6db204a330f8bacf792e552dbd2f5f82df refs/heads/swift-3.0-preview-5-branch
958a93ee647dc8aa66f2fc31de5000681d42604f refs/heads/swift-3.0-preview-5-speculative

$ git ls-remote --tags | grep PREVIEW
From https://github.com/apple/swift-corelibs-foundation
29480f5e877fec0b1c430d9605d0fb1a97c24c9b refs/tags/swift-3.0-PREVIEW-1
3d10cf76b1faa86bae48a5e7d9876ee7ad3af422 refs/tags/swift-3.0-PREVIEW-1^{}
c8c1ff0f8b274567f9018297269258290238be73 refs/tags/swift-3.0-PREVIEW-2
0ff9f494a66fe7130536c70f23ef5f30b1d2aa9f refs/tags/swift-3.0-PREVIEW-3
686d9b6db204a330f8bacf792e552dbd2f5f82df refs/tags/swift-3.0-PREVIEW-4
686d9b6db204a330f8bacf792e552dbd2f5f82df refs/tags/swift-3.0-PREVIEW-5
cf473150c9bc1ede5a53b451d32cbe30c231b63d refs/tags/swift-3.0-PREVIEW-6
2eccd197f2c41fe05a7a557c7eff382b3303f030 refs/tags/swift-3.0.1-PREVIEW-1
b6898c75e42fe73552b22a32361fb440cc9fdefc refs/tags/swift-3.0.1-PREVIEW-2
b6898c75e42fe73552b22a32361fb440cc9fdefc refs/tags/swift-3.0.1-PREVIEW-3

$ git log --oneline --decorate refs/remotes/origin/swift-3.0-preview-5-speculative^...refs/tags/swift-3.0-PREVIEW-6 | grep swift-
cf47315 (tag: swift-DEVELOPMENT-SNAPSHOT-2016-08-07-a, tag: swift-DEVELOPMENT-SNAPSHOT-2016-08-04-a, tag: swift-3.0-PREVIEW-6) Merge branch 'filemanager-default' of https://github.com/jpsim/swift-corelibs-foundation
3b9a917 (tag: swift-DEVELOPMENT-SNAPSHOT-2016-07-29-a) Revert "Revert "UnsafePointer conversion fixes.""
541f035 (tag: swift-DEVELOPMENT-SNAPSHOT-2016-07-28-a) Merge pull request #477 from swiftix/SE-130
958a93e (origin/swift-3.0-preview-5-speculative) Update for SE-0025 ('private' and 'fileprivate') (#445)

···

On 12 Oct 2016, at 18:25, Tony Parker <anthony.parker@apple.com> wrote:

Hi Alex,

On Oct 12, 2016, at 9:52 AM, Alex Blewitt via swift-corelibs-dev <swift-corelibs-dev@swift.org <mailto:swift-corelibs-dev@swift.org>> wrote:

There are several remote branches that have the 'swift-3' moniker including several 'preview' ones:

  origin/swift-3
  origin/swift-3.0-branch
  origin/swift-3.0-preview-1-branch
  origin/swift-3.0-preview-2-branch
  origin/swift-3.0-preview-3-branch
  origin/swift-3.0-preview-4-branch
  origin/swift-3.0-preview-5-branch
  origin/swift-3.0-preview-5-speculative
  origin/swift-3.0.1-preview-2-branch

Why are we representing previews as branches, instead of tags? If I wanted to submit a pull request for one of these previews, it's not clear which one(s) I should target.

I agree this is a bit confusing.

Right now, swift-3.0-branch is the one that is used as the “development” branch for any updates to swift 3.0.

There are also a number of branches that are old (in many cases, over a month):

  origin/dabrahams-patch-1
  origin/dabrahams-patch-2
  origin/data-associated-type-fixes-3.0
  origin/more_value_types
  origin/nscoding
  origin/revert-540-SR-2151
  origin/revert-567-pr-grabbag

Can we get these cleaned up if they are no longer necessary?

Alex

Yes, I think we should delete these. I’ll do that for a bunch of these.

- Tony