How to rebase Wine staging patches on the latest master?

Open forum for end-user questions about Wine. Before asking questions, check out the Wiki as a first step.
Forum Rules
Locked
shmerl
Level 2
Level 2
Posts: 13
Joined: Mon Feb 25, 2008 12:35 pm

How to rebase Wine staging patches on the latest master?

Post by shmerl »

I was trying to build Wine with staging patches yesterday, and current Wine staging git is more than a week behind Wine git master: https://github.com/wine-compholio/wine- ... its/master

So various key patches like CMST can't be applied as is, unless I checkout older commit of Wine. Is there a way to rebase Wine staging patches on latest master? This way I wouldn't need to wait for Wine staging repo to be updated.
Indeg
Newbie
Newbie
Posts: 4
Joined: Mon Aug 08, 2016 1:15 pm

Re: How to rebase Wine staging patches on the latest master?

Post by Indeg »

That's covered in the Wiki, Failure to apply all patches. Of course that's still an older version of the tree, but where the Staging patchsets first break instead of all the way back to 2.2. To quote the ending sentence in that section:
Alternatively you can also wait until we push a commit to rebase Wine Staging against the current development branch.
The other option they don't mention is to do it yourself. E.G. for CSMT you just need to understand the various changes Henri & others made in the related areas and then adjust the CSMT patchset so it properly works with the updated code. It doesn't happen automatically.
User avatar
Bob Wya
Level 12
Level 12
Posts: 3068
Joined: Sat Oct 16, 2010 7:40 pm

Re: How to rebase Wine staging patches on the latest master?

Post by Bob Wya »

shmerl wrote:I was trying to build Wine with staging patches yesterday, and current Wine staging git is more than a week behind Wine git master: https://github.com/wine-compholio/wine- ... its/master

So various key patches like CMST can't be applied as is, unless I checkout older commit of Wine. Is there a way to rebase Wine staging patches on latest master? This way I wouldn't need to wait for Wine staging repo to be updated.
It's easier to run on the Wine Staging Git master. Then you can pull that and use the Wine Staging patch tool:

Code: Select all

./patchinstall.sh --upstream-commit    #Print the upstream Wine commit SHA1 and exit
to get the corresponding Wine Git commit.

That's what my Gentoo app-emulation/wine live (9999) ebuild allows - building against the Wine Staging master - rather than the Wine master.

If you desperately need some fixes in version 2.3 - it's a lot easier just to wait 3-4 days... 8)
Bob
ls_boy
Level 2
Level 2
Posts: 45
Joined: Sat Dec 12, 2015 3:24 pm

Re: How to rebase Wine staging patches on the latest master?

Post by ls_boy »

Bob Wya wrote:If you desperately need some fixes in version 2.3 - it's a lot easier just to wait 3-4 days...
Bob
Don't mind shmerl. He's thinking about that new witcher 3 screenshot! :lol:
shmerl
Level 2
Level 2
Posts: 13
Joined: Mon Feb 25, 2008 12:35 pm

Re: How to rebase Wine staging patches on the latest master?

Post by shmerl »

Bob Wya wrote:It's easier to run on the Wine Staging Git master. Then you can pull that and use the Wine Staging patch tool:

Code: Select all

./patchinstall.sh --upstream-commit    #Print the upstream Wine commit SHA1 and exit
to get the corresponding Wine Git commit.
That would still use the commit on which the staging was based. Which at times can fall behind for a week or more. I was asking if there is an automated way to rebase staging patches themselves on the latest wine git master, or it's done manually by staging maintainers?
Indeg wrote:The other option they don't mention is to do it yourself. E.G. for CSMT you just need to understand the various changes Henri & others made in the related areas and then adjust the CSMT patchset so it properly works with the updated code. It doesn't happen automatically.
OK, that makes sense. So they always do some manual analysis and update patches accordingly.
DarkPlayer
Level 2
Level 2
Posts: 23
Joined: Sun Mar 13, 2016 11:15 am

Re: How to rebase Wine staging patches on the latest master?

Post by DarkPlayer »

shmerl wrote:I was asking if there is an automated way to rebase staging patches themselves on the latest wine git master, or it's done manually by staging maintainers?
Rebasing Wine Staging to the current wine development git version is a manual process and can not be automated. There are quite a few patches which affect parts of Wine that are under active development, so it is often not just a matter of removing patches which got upstream. You have to manually adapt the patches to the current logic of the development code base.

Wine Staging is a completely community driven project and all the rebasing is done in the spare time of the maintainers. It is therefore possible that the patches lag behind some days. We also currently working on some other Wine (Staging) related projects, which takes additional time. However, a rebase onto Wine 2.3 was pushed some minutes ago. This is not the Staging release version, since we have some points left on our todo list, but you can already profit from any upstream changes.
shmerl
Level 2
Level 2
Posts: 13
Joined: Mon Feb 25, 2008 12:35 pm

Re: How to rebase Wine staging patches on the latest master?

Post by shmerl »

DarkPlayer wrote:Wine Staging is a completely community driven project and all the rebasing is done in the spare time of the maintainers. It is therefore possible that the patches lag behind some days. We also currently working on some other Wine (Staging) related projects, which takes additional time. However, a rebase onto Wine 2.3 was pushed some minutes ago. This is not the Staging release version, since we have some points left on our todo list, but you can already profit from any upstream changes.
Thanks, that's completely understandable, I wasn't trying to criticize staging developers for falling behind Wine master. Building Wine with latest staging patches now.
shmerl
Level 2
Level 2
Posts: 13
Joined: Mon Feb 25, 2008 12:35 pm

Re: How to rebase Wine staging patches on the latest master?

Post by shmerl »

By the way, I noticed that Wine staging git is being updated sporadically, while actual commits in between happen more often. But apparently they are done on the private branch, and then pushed all at once once in a few weeks. Why aren't they pushed to the public repo as soon as they are done?
User avatar
Bob Wya
Level 12
Level 12
Posts: 3068
Joined: Sat Oct 16, 2010 7:40 pm

Re: How to rebase Wine staging patches on the latest master?

Post by Bob Wya »

shmerl wrote:By the way, I noticed that Wine staging git is being updated sporadically, while actual commits in between happen more often. But apparently they are done on the private branch, and then pushed all at once once in a few weeks. Why aren't they pushed to the public repo as soon as they are done?
I can't speak for Slackner... But it appears that he tends to rebase Wine Staging and then work on adding new patches each cycle. Sometimes he pushes the rebased version and then the updates - sometimes he pushes them all at once.
IMHO it's up to Slackner how he wants to organise things. All the commits are there still - once the block is pushed - which is ultimately the important thing.

I do find that Wine Staging (nearly!) always can be built against the Git master - many projects break when you try to do that... So Slackner must be doing something right!

Bob
Locked