Contributors mailing list archives

contributors@odoo-community.org

Re: Migration to version 9

by
Camptocamp SA, Guewen Baconnier
- 07/09/2015 06:52:34
I was thinking about doing regular forward ports of the branch with
git merge, but I overlooked that a person migrating one module can't
include a whole forward port in her PR and will indeed need
git-filter.

Still, with 2. most of the history will be the same than 8.0 and then
only a few commits will need to be forwarded from 8.0 to 9.0 when
migrating a module which has 3 effects:

* modules that have not been modified since the last forward port
won't need a 'git filter'
* when we have only a few commits on a module since the last forward
port, they can be manually forwarded with 'git cherry-pick' which is
easy to understand (thinking about the ones afraid to use 'git
filter')
* we are not likely to have a module renamed (the rename happens at
the beginning of a version so will be in the original history), so we
won't have the same issue than in 1. (that 'git filter' does not
follow the renames)


On Sun, Sep 6, 2015 at 8:52 PM, Maxime Chambreuil
<maxime.chambreuil@savoirfairelinux.com> wrote:
> @Guewen Can you update the wiki page with your git merge command ?
>
> I thought we needed to use git filter to get the module history after the
> creation of the 9.0 branch.
>
> Thanks!
> --
> Maxime Chambreuil
> +1 (514) 276-5468 #126
>
> ----- Le 6 Sep 15, à 14:23, Guewen Baconnier
> <guewen.baconnier@camptocamp.com> a écrit :
>
> On Sun, Sep 6, 2015 at 8:37 AM, Maxime Chambreuil
> <maxime.chambreuil@savoirfairelinux.com> wrote:
>> As far as I can understand, we have the same complexity (we have to use
>> git
>> filter) in all solutions if we want to keep the history before and after
>> the
>> creation of the new branch. This complexity can be solved by providing the
>> right steps in the wiki.
>
> Why would you need to use git-filter with option 2?
> The question is in fact for Daniel who said:
>> You can, using exactly the same method prescribed for option 2.
>> I tested that, and found a troubling issue affecting coth option 2 and 3:
>> Using `git checkout 8.0 -- module` command won't bring the change history
>> after 9.0 was created.
>
> Why did you need to use this git checkout instead of a git merge? I
> used git merge successfully on several projects for the migration 7.0
> to 8.0.
>
>>
>> Main differences are the side effects:
>>
>> Option 1 (empty branch)
>>
>> There is no outdated modules sitting there for 9.0 and later version.
>> Every
>> module you see works on version 9.0. No need to filter. No need to update
>> our scripts and infrastructure. Metafiles can be easily created using the
>> latest template from maintainer-quality-tools.
>>
>> Option 2 (installable = False)
>>
>> We have to check the installable flag when pushing to Transifex, when
>> testing on Runbot, when packaging, etc. We basically have to filter
>> everywhere (and maybe in some places where we don't have the control)
>
> AFAIK it is already done at least on travis, and I presume on Runbot as
> well.
>
>> because we can no longer assume that having a module in the 9.0 branch
>> means
>> it works on version 9.0. For 10.0 branch, we will end up with not-migrated
>> modules from 8.0. Metafiles will need to be migrated manually.
>>
>> Option 3 (remove modules)
>>
>> Same as 1) but metafiles will need to be migrated manually.
>>
>>
>> If I am missing any drawback to option 1, please let me know.
>>
>> https://github.com/OCA/maintainer-tools/wiki#wip
>>
>> Thanks.
>> --
>> Maxime Chambreuil
>> +1 (514) 276-5468 #126
>>
>> ----- Le 31 Aoû 15, à 18:07, Daniel Reis <dgreis@sapo.pt> a écrit :
>>
>>
>>
>> And another one is that you cannot merge branch 8.0 against 9.0 for
>> unported
>> modules. If we solve the problem with Odoo loading some parts of
>> uninstalled
>> modules, I would prefer option 2 over 3. Option 1 is still my favourite,
>> but
>> has some drawbacks that we have solved also.
>>
>>
>> You can, using exactly the same method prescribed for option 2.
>> I tested that, and found a troubling issue affecting coth option 2 and 3:
>> Using `git checkout 8.0 -- module` command won't bring the change history
>> after 9.0 was created.
>>
>> Doing so will require some more sophisticated methods.
>> Some sort of partial rebase.
>> Probably that sends options 2 and 3 back to the git-filter path too.
>>
>> --DR
>>
>>
>> _______________________________________________
>> Mailing-List: http://odoo-community.org/groups/oca-contributors-15
>> Post to: mailto:contributors@odoo-community.org
>> Unsubscribe: http://odoo-community.org/groups?unsubscribe
>>
>>
>> _______________________________________________
>> Mailing-List: http://odoo-community.org/groups/oca-contributors-15
>> Post to: mailto:contributors@odoo-community.org
>> Unsubscribe: http://odoo-community.org/groups?unsubscribe
>
> _______________________________________________
> Mailing-List: http://odoo-community.org/groups/oca-contributors-15
> Post to: mailto:contributors@odoo-community.org
> Unsubscribe: http://odoo-community.org/groups?unsubscribe
>
>
> _______________________________________________
> Mailing-List: http://odoo-community.org/groups/oca-contributors-15
> Post to: mailto:contributors@odoo-community.org
> Unsubscribe: http://odoo-community.org/groups?unsubscribe