Announcement on Magentoerpconnect series and releases

Written for Magento OpenERP Connector by Guewen Baconnier @ Camptocamp on 2012-05-30

Dear Magentoerpconnect community,

Here is an announcement on the current and future state of Magentoerpconnect,
the explanations of the differents branches which have maybe mislead you,
and our last updates on the release policy.

In february, S├ębastien Beau at Akretion has initiated a huge refactoring
on the modules base_external_referentials and base_sale_multichannels.
This work started during the Camptocamp-Akretion code-sprint
on the prestashoperpconnect project [1].
The goal was to improve the generic blocks between the connectors,
allowing to have as less code as possible in each connector (magento, prestashop, ...).
Which required a rewriting of the base_external_referentials API, breaking the
backward-compatibility.

Taking advantage of this refactoring and new structure of the base_external_referentials API,
S├ębastien introduced a lot of new features on the new magentoerpconnect "future" branch.
I'll let him resume his work in a further e-mail ;-)

During this time, the development on the "current" version pursued on its own way,
mainly with fixes or optimizations, but also with some more ambitious changes
like the refactoring of the partner addresses management.

So we had to maintain 2 version of each modules together :
the current "legacy" version, and the "future" version which is not backward compatible.
Both run on OpenERP 6.1.
This has led to some misleading in the community / users of magentoerpconnect
and I think we clearly lacked communication here, I hope that this announcement
will remedy to that.

Today, the "current" magentoerpconnect [2] branch is going to be stable, meaning stable
enough to be able to run in production. I see some fingers rising, you are right,
there are still some bugs, especially with some workflows like prepaid. We change the
state of this version to "stable", which means that we won't develop any new feature
on it, and avoid API changes, we'll still fix bugs and merge your bugfixes.
This branch will be attributed to a new serie called "legacy".

Today, the "future" magentoerpconnect [3] branch is going to be soon stable enough to be
able to run in production. Some changes done on the "current" branch still have to
be ported to this one. Our intention is to stabilize it up to the hilt to be a
replacement for the legacy branch. Soon, no new feature will be accepted in
this branch, so this is the last moment to submit your merge proposals.

When the "future" magentoerpconnect will be considered as stable and freezed,
any new feature development / API changes will have to be proposed on the trunk branch.

The new branches are not backward compatible with the legacy branch, so if you start
a new implementation, and are brave enough to face some bugs, we'll recommend you to go with
the "future" branch.

On the developer / committer side, we'll from now always create a merge proposal which
have to be accepted by another committer for any change on a stable / stabilization branch,
this will allow a double-check and peer review before committing anything on a branch used in
production. By the way, we hope to see the community members review and comment the merge
proposals as well.

We also took the opportunity to move out the modules from the pell-mell extra-trunk
branch in smaller project branches (listed below), so extra-trunk won't be necessary anymore

In short, we introduce new series :

 - A serie with the legacy code (before refactoring)
   *openerp6.1-legacy-module*
   The current branch compatible with the modules in extra-trunk,
   which have to be replaced by the "future" branch. Stable branch.
   Merge proposals mandatory for any commit.

 - Series with the refactored code (named "future" so far)
   *openerp6.1-module*
   The stable branch with the refactored code.
   The branch on this serie will stay in state "Development" until
   it is stable enough to be usable in production.
   To be considered currently as a "beta" version.
   Soon, no new features will be merged, only bugfixes.
   Merge proposals mandatory for any commit.

 - The development branch
   *trunk*

Required branches for each serie :
- openerp6.1-legacy-module
lp:openobject-server/6.1
lp:openobject-addons/6.1
lp:magentoerpconnect/openerp6.1-legacy-module
lp:openobject-addons/extra-trunk => for base_sale_multichannels, base_external_referentials, product_m2mcategories, ...
lp:c2c-ecom-addons/6.1 => for product_links
lp:magentoerpconnect/magento-module-trunk => Magento module

 - openerp6.1-module
lp:openobject-server/6.1
lp:openobject-addons/6.1
lp:magentoerpconnect/openerp6.1-module
lp:openobject-extension/openerp6.1-module
lp:e-commerce-addons/openerp6.1-module
lp:magentoerpconnect/magento-module-trunk => Module for Magento
lp:extra-trunk is still needed for some modules (product_images_olbs, product_m2mcategories),
they will be moved very soon to e-commerce-addons so lp:extra-trunk won't be required anymore.

 - trunk
lp:openobject-server/6.1
lp:openobject-addons/6.1
lp:magentoerpconnect
lp:openobject-extension => for base_external_referentials, ...
lp:e-commerce-addons => for base_sale_multichannels, product_links, ...
lp:magentoerpconnect/magento-module-trunk => Module for Magento

Thanks to all the people involved in this project, contributors, bug reporters,
and all who carry forward the project...
In the future, we'll try to communicate more, using this community mailing list.

For the Magentoerpconnect team,
Guewen Baconnier (Camptocamp)

[1] https://code.launchpad.net/prestashoperpconnect
[2] previously known as lp:magentoerpconnect
[3] previously known as lp:~magentoerpconnect-core-editors/magentoerpconnect/futur-trunk

Read all announcements