Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 495458

Summary: Tag Neon (4.6) release (after 6/22)
Product: [Eclipse Project] Platform Reporter: David Williams <david_williams>
Component: RelengAssignee: Platform-Releng-Inbox <platform-releng-inbox>
Status: RESOLVED FIXED QA Contact:
Severity: normal    
Priority: P3 CC: akurtakov, arunkumar.thondapu, daniel_megert, jarthana, Lars.Vogel, lshanmug, manoj.palat, markus.kell.r, noopur_gupta, pascal, sarika.sinha, sptaszkiewicz, stephan.herrmann, tjwatson, Vikas.Chandra
Version: 4.6   
Target Milestone: 4.6   
Hardware: PC   
OS: Linux   
Whiteboard:
Bug Depends on:    
Bug Blocks: 495904, 496465    
Attachments:
Description Flags
hash of submodules for "R4_6" none

Description David Williams CLA 2016-06-04 04:23:50 EDT
Do NOT do this now -- but after June 22. I am just opening it now to help remind us all it will need to be done, and there is a chance we will need to re-spin if someone finds a truly blocking regression in the next week or so. 


Our previous "tag a release" work was tracked in bug 487983. 

The reason we do this is to have a convenient "human readable" tag on all the code that "went together" for Neon. 

Since the formal release is scheduled for June 22 (the fourth Wednesday of the month) I suggest we plan to do this tagging on June 23 and June 24. (Suggestions welcome).
Comment 1 David Williams CLA 2016-06-04 04:31:01 EDT
I'll repeat my usual directions here. Improvements or corrections are welcome. 

= = = = = = = = = = = = = = = = = = = = 

I give these steps as "command line" instructions, although the same result can be achieved with EGit. 

In your clone, be sure to pull (or fetch) everything, so your branches and tags are all up to date. Then: 

git tag -a -m 'Bug 495458 - Tag Neon (4.6) release' R4_6  I20160603-1000

and then don't forget to push the tag commit

git push origin tag R4_6

As you tag a repository (or set of repositories) please post a comment here, so 
I'll know when we are done ... or, at least when I should run my script-test.

And, of course, if we do have to respin, the "I-build" tag will change.
Comment 2 David Williams CLA 2016-06-10 13:35:19 EDT
Just so I (we) don't forget, given that we did have to re-build for RC4a, our "tag" would be based off of I20160606-1100, Such as 

git tag -a -m 'Bug 495458 - Tag Neon (4.6) release' R4_6  I20160606-1100


Unless we need yet another re-spin!
Comment 3 David Williams CLA 2016-06-10 14:19:04 EDT
BTW, to be explicit, I think "eclipse.pde" should still be tagged with "4.6", even though it is basically empty, simply because it was still a submodule of the aggregator. 

And after we tag everything for "4.6" I will remove it as a submodule for both master branch and R4_6_maintenance branch. See bug 495904.
Comment 4 Jay Arthanareeswaran CLA 2016-06-23 02:30:39 EDT
Tagged the following repos:

eclipse.jdt.core
eclipse.jdt.core.binaries
Comment 5 Sarika Sinha CLA 2016-06-23 02:36:15 EDT
Tagged the following repos:
eclipse.platform
eclipse.platform.debug
eclipse.jdt.debug
Comment 6 Vikas Chandra CLA 2016-06-23 04:34:01 EDT
Tagged the following 2 PDE repositories:

1) eclipse.pde.build
2) eclipse.pde.ui




It is not possible to tag  "eclipse.pde" with step of comment#2 as  I20160606-1100 doesn't exist for pde.ui repository ( see http://git.eclipse.org/c/pde/eclipse.pde.git/log/)

David, what should be done here?
Comment 7 Vikas Chandra CLA 2016-06-23 04:38:26 EDT
>I20160606-1100 doesn't exist for pde.ui repository

Small correction in my previous comment. I meant  I20160606-1100 doesn't exist for eclipse.pde repository
Comment 8 Lars Vogel CLA 2016-06-23 05:13:23 EDT
(In reply to Vikas Chandra from comment #7)
> Small correction in my previous comment. I meant  I20160606-1100 doesn't
> exist for eclipse.pde repository

IIRC we retired eclipse.pde for Neon, so there should be no need to tag it.
Comment 9 Lars Vogel CLA 2016-06-23 05:16:34 EDT
Done for:

eclipse.platform.ui
eclipse.platform.text
eclipse.platform.runtime
eclipse.platform.ua
eclipse.platform.ui.tools
Comment 10 Vikas Chandra CLA 2016-06-23 05:20:07 EDT
Lars, that is exactly what I thought till I read comment#3
Comment 11 Lars Vogel CLA 2016-06-23 05:23:08 EDT
(In reply to Vikas Chandra from comment #10)
> Lars, that is exactly what I thought till I read comment#3

Ah, sorry missed that comment. I don't think Davids request is possible but I leave that for David to clarify.
Comment 12 Lakshmi P Shanmugam CLA 2016-06-23 06:11:44 EDT
Tagged the following repositories:

eclipse.platform.swt
eclipse.platform.swt.binaries
Comment 13 Szymon Ptaszkiewicz CLA 2016-06-23 07:18:26 EDT
Tagged the following repositories:

eclipse.platform.resources
eclipse.platform.team
Comment 14 Szymon Ptaszkiewicz CLA 2016-06-23 07:19:53 EDT
(In reply to Lars Vogel from comment #9)
> Done for:
> 
> eclipse.platform.runtime

This tagging is wrong because the tag is created on I20160603-1000 but it should be on I20160606-1100.
Comment 15 Lars Vogel CLA 2016-06-23 07:47:39 EDT
(In reply to Szymon Ptaszkiewicz from comment #14)
> (In reply to Lars Vogel from comment #9)
> > Done for:
> > 
> > eclipse.platform.runtime
> 
> This tagging is wrong because the tag is created on I20160603-1000 but it
> should be on I20160606-1100.

Ups, copied the instructions from comment 1.
Comment 16 Lars Vogel CLA 2016-06-23 07:50:16 EDT
(In reply to Lars Vogel from comment #15)
> Ups, copied the instructions from comment 1.

Unfortunately I'm not allowed to delete tags:

git tag -d R4_6
git push origin :refs/tags/R4_6

remote: Branch refs/tags/R4_6:
remote: You need 'Push' rights with the 'Force Push'
remote: flag set to delete references.
remote: User: lvogel
remote: Please read the documentation and contact an administrator
remote: if you feel the configuration is incorrect
Comment 17 Thomas Watson CLA 2016-06-23 08:56:01 EDT
Done for Equinox:

rt.equinox.binaries
rt.equinox.bundles
rt.equinox.framework
rt.equinox.p2
Comment 18 David Williams CLA 2016-06-23 13:50:37 EDT
(In reply to Vikas Chandra from comment #6)
> Tagged the following 2 PDE repositories:
> 
> 1) eclipse.pde.build
> 2) eclipse.pde.ui
> 
> 
> 
> 
> It is not possible to tag  "eclipse.pde" with step of comment#2 as 
> I20160606-1100 doesn't exist for pde.ui repository ( see
> http://git.eclipse.org/c/pde/eclipse.pde.git/log/)
> 
> David, what should be done here?

You will have to use the last commit hash to aggregator in place of the I-tag. 

From the command line, it would be 

git tag -a -m 'Bug 495458 - Tag Neon (4.6) release' R4_6  ad69cda946d859024567dfa4ae9e0e4a861c4d26

And then followed by the normal "push".
Comment 19 David Williams CLA 2016-06-23 13:56:47 EDT
(In reply to Lars Vogel from comment #16)
> (In reply to Lars Vogel from comment #15)
> > Ups, copied the instructions from comment 1.
> 
> Unfortunately I'm not allowed to delete tags:
> 
> git tag -d R4_6
> git push origin :refs/tags/R4_6
> 
> remote: Branch refs/tags/R4_6:
> remote: You need 'Push' rights with the 'Force Push'
> remote: flag set to delete references.
> remote: User: lvogel
> remote: Please read the documentation and contact an administrator
> remote: if you feel the configuration is incorrect

Lars, normally I'd see if I could help, but my network is flaky so I'd suggest you send a note (or, better open a bug so there is a public record of it, pointing back to this bug) asking webmasters to change the "change history" hook settings for you temporarily at which time you should be able to delete or 'move' the tag. Typically, when that is needed, the committers and webmasters agree on a relatively small window of time when both you and they are available to "do the work" (say, 30 to 60 minutes). You will need to let them know the list of exactly which repositories.
Comment 20 David Williams CLA 2016-06-23 16:07:03 EDT
I have tagged 

eclipse.platform.releng
eclipse.platform.common

As well as 

eclipse.platform.releng.aggregator

which deserves a special word. 
I actually tagged a revision that was a few days after  I20160606-1100. 
The reason was so that are final R4_6 version would have a persistent URL in it 
for our minor EGit dependency, so so those that want to "build" on R4_6 will not immediately have to change it just for that small repo change. (See bug 494577). 

It happened to also have a few other fixes it in related to correctly publishing "RC4a" (vs. "RC4") but that too is probably good and will effect no one else. 

I confirmed several different ways the modules were all at the same level (hash) as they were for I20160606-1100. [More wordy stuff below]

= = = = =

I also tagged 
eclipse.platform.releng.buildtools
and our 
'eclipse' website repository. 

Since they are not part of the build (and no I20160606-1100 tag) I just tagged HEAD of those, thinking that would be "close enough". [It's just to provide an approximate checkpoint in the repository, in case something goes weird like someone deletes half the files or something]. 

= = = = =

The wordy -- off topic -- part. Normally if I have to adjust aggregator a commit or two it is not far from "HEAD" and I can find it using HEAD~1 or similar. But this time there has been a lot of changes (to run our cron jobs on Releng HIPP) it was "hard to find". But, I discovered another way to specify "revisions" is with 
:/text 
described in http://schacon.github.io/git/git-rev-parse#_specifying_revisions
as 
<quote>
 :/<text>, e.g. :/fix nasty bug

    A colon, followed by a slash, followed by a text, names a commit whose commit message matches the specified regular expression. This name returns the youngest matching commit which is reachable from any ref.
</quote>

So, I could find or "get to" the right commit with 
something like 
git show :/EGit
(Probably should have used whole bug number, but the "diff" made it obvious it was the right one). 

Just thought I'd mention it, in case it helps others. (Or, maybe everyone else knew, but no body told me (ha ha).
Comment 21 David Williams CLA 2016-06-23 16:30:56 EDT
I have a little utility script that simply tries to "show tag" and from it, there are still 3 that need to be tagged -- plus those that Lars needs to redo correctly, I assume. 


  The following projects are NOT tagged with R4_6
    
    
eclipse.jdt
eclipse.jdt.ui
eclipse.pde


  The following projects are tagged with R4_6


eclipse.platform.ua
eclipse.platform.releng.aggregator
eclipse.jdt.core
eclipse
rt.equinox.bundles
eclipse.platform.runtime
eclipse.platform.text
eclipse.platform.common
eclipse.platform.releng.buildtools
eclipse.platform.team
eclipse.platform.debug
rt.equinox.p2
eclipse.pde.ui
rt.equinox.binaries
eclipse.jdt.core.binaries
eclipse.platform.swt.binaries
eclipse.platform.ui
eclipse.pde.build
eclipse.platform.releng
eclipse.jdt.debug
eclipse.platform
rt.equinox.framework
eclipse.platform.resources
eclipse.platform.swt
Comment 22 David Williams CLA 2016-06-23 16:34:38 EDT
Created attachment 262653 [details]
hash of submodules for "R4_6"

Just because I was being careful with the aggregator tag, I did produce a list of what the hashes are for each submodule that was part of "R4_6" and attach it here, just in case anyone ever needs it for reference for some reason.
Comment 23 Vikas Chandra CLA 2016-06-23 23:43:45 EDT
Thanks David !

Tagged the following repository

eclipse.pde
Comment 24 Noopur Gupta CLA 2016-06-24 02:42:06 EDT
Done for eclipse.jdt.ui.
Comment 25 David Williams CLA 2016-06-25 12:56:16 EDT
(In reply to Lars Vogel from comment #9)
> Done for:
> 
> eclipse.platform.ui
> eclipse.platform.text
> eclipse.platform.runtime
> eclipse.platform.ua
> eclipse.platform.ui.tools


(In reply to Szymon Ptaszkiewicz from comment #14)
> (In reply to Lars Vogel from comment #9)
> > Done for:
> > 
> > eclipse.platform.runtime
> 
> This tagging is wrong because the tag is created on I20160603-1000 but it
> should be on I20160606-1100.

I asked Lars in an email if he could correct these by (or on) Monday, so we could begin branching and developing the M and I builds (which requires branching and changes to "parent poms" at a minimum) and he basically said "no" and asked if I could find another UI committer to correct them. 

So, any volunteers? 

I think that "eclipse.platform.runtime" is the only one that *has* to be fixed. Because that one did contain changes for our "RC4a" rebuild. 
I checked it and the other 4 with 
git diff I20160606-1100..I20160603-1000
and only 
eclipse.platform.runtime 
contained changes. 

Does anyone anyone know of a reason we *have* to change the others? I think they all point to the same "commit hash". But, As Szymon pointed out, 
eclipse.platform.runtime does not so we do need to correct that one.  

If someone can volunteer, and name a few "time slots" you would be available to make the change, I'd be willing to try and temporarily disable the hook that prevents deleting or moving tags. (I'm not positive I can, but I think so). 

I'll also note, when the R4_6_maintenance branch is created, it should be done from the R4_6 tag (not the "I2016...." tag. But, I will repeat that in bug 496465 once this bug is handled.
Comment 26 Lars Vogel CLA 2016-06-25 14:04:39 EDT
If no one is available, I can work on this on Tuesday.
Comment 27 Markus Keller CLA 2016-06-27 15:30:26 EDT
(In reply to David Williams from comment #25)
> Does anyone anyone know of a reason we *have* to change the others? I think
> they all point to the same "commit hash".

Correct, and since a tag only points to the commit and not to tag or ref it was created from, there's nothing to do there.


- tagged eclipse.jdt
- fixed tag of eclipse.platform.runtime
- verified all tags with:

$ find . -mindepth 1 -maxdepth 1 -type d -exec sh -c "echo -e \"\n== {}\"; git --no-pager --git-dir={}/.git show -s --pretty=format:%H%n R4_6 -- ; git --git-dir={}/.git show-ref --tags I20160606-1100" \;


- additionally tagged:

eclipse.platform.images
www.eclipse.org/eclipse/news.git
www.eclipse.org/jdt
www.eclipse.org/swt
Comment 28 Markus Keller CLA 2016-06-28 09:30:03 EDT
(In reply to Lars Vogel from comment #15)
Lars, please inform eclipse-dev and platform-ui-dev about this mistake and about steps to fix cloned repos.

Everyone who pulled tags from
git://git.eclipse.org/gitroot/platform/eclipse.platform.runtime.git
needs to manually delete their local R4_6 tag and then pull again to get the correct R4_6 tag from that repo.
Comment 29 Lars Vogel CLA 2016-06-28 09:54:11 EDT
(In reply to Markus Keller from comment #28)
> (In reply to Lars Vogel from comment #15)
> Lars, please inform eclipse-dev and platform-ui-dev about this mistake and
> about steps to fix cloned repos.
> 
> Everyone who pulled tags from
> git://git.eclipse.org/gitroot/platform/eclipse.platform.runtime.git
> needs to manually delete their local R4_6 tag and then pull again to get the
> correct R4_6 tag from that repo.

Done