Quantcast

Request for Comments: Migration path to new packaging type for p2-enabled products

classic Classic list List threaded Threaded
14 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Request for Comments: Migration path to new packaging type for p2-enabled products

Tobias Oberlies
Tycho developers and users -

As announced before [1], we want to introduce a new packaging type for building p2-enabled products and remove that functionality from eclipse-repository [2]. While the technical details are mostly clear, we haven't decided on how this packaging type shall be introduced.

The new packaging type shall replace the current eclipse-application implementation. There are two options how this could be done:

   1. By assigning a new name to the new packaging type, e.g. "eclipse-product". The current eclipse-application packaging type would be deprecated and eventually be removed.
   2. By replacing "eclipse-application". To avoid the risk of blockers, the current implementation would remain available as fall-back under the name "eclipse-application-old".

What is your opinion on this?


I think that we should go for option 2, because it makes it more clear what we want people to use. I don't want the confusion again that we caused with eclipse-repository and eclipse-update-site. Also, the new packaging type will not need to mature after it has been created (as this was/is the case with eclipse-repository) because it will just be factored out of the eclipse-repository implementation.

Regards
Tobias



[1] http://software.2206966.n2.nabble.com/Request-for-Comments-How-to-build-products-categories-and-p2-repositories-in-Tycho-tp5962554p5962554.html
[2] https://docs.sonatype.org/display/TYCHO/Discussion+on+eclipse-repository+packaging+type+clean-up



--

Tobias Oberlies
SAP AG
www.sap.com

Pflichtangaben/Mandatory Disclosure Statements: http://www.sap.com/company/legal/impressum.epx
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Request for Comments: Migration path to new packaging type for p2-enabled products

Igor Fedorenko-2
I'd like to propose 2a -- replace "eclipse-application" with
implementation that can produce both p2-enabled and "plain" rcp
applications. I don't think we need "eclipse-application-old".

--
Regards,
Igor

On 11-03-17 12:19 PM, Oberlies, Tobias wrote:

> Tycho developers and users -
>
> As announced before [1], we want to introduce a new packaging type for building p2-enabled products and remove that functionality from eclipse-repository [2]. While the technical details are mostly clear, we haven't decided on how this packaging type shall be introduced.
>
> The new packaging type shall replace the current eclipse-application implementation. There are two options how this could be done:
>
>     1. By assigning a new name to the new packaging type, e.g. "eclipse-product". The current eclipse-application packaging type would be deprecated and eventually be removed.
>     2. By replacing "eclipse-application". To avoid the risk of blockers, the current implementation would remain available as fall-back under the name "eclipse-application-old".
>
> What is your opinion on this?
>
>
> I think that we should go for option 2, because it makes it more clear what we want people to use. I don't want the confusion again that we caused with eclipse-repository and eclipse-update-site. Also, the new packaging type will not need to mature after it has been created (as this was/is the case with eclipse-repository) because it will just be factored out of the eclipse-repository implementation.
>
> Regards
> Tobias
>
>
>
> [1] http://software.2206966.n2.nabble.com/Request-for-Comments-How-to-build-products-categories-and-p2-repositories-in-Tycho-tp5962554p5962554.html
> [2] https://docs.sonatype.org/display/TYCHO/Discussion+on+eclipse-repository+packaging+type+clean-up
>
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Request for Comments: Migration path to new packaging type for p2-enabled products

ejain
In reply to this post by Tobias Oberlies
On Thu, Mar 17, 2011 at 09:19, Oberlies, Tobias <[hidden email]> wrote:
> As announced before [1], we want to introduce a new packaging type for building p2-enabled products and remove that functionality from eclipse-repository [2]. While the technical details are mostly clear, we haven't decided on how this packaging type shall be introduced.
>
> The new packaging type shall replace the current eclipse-application implementation. There are two options how this could be done:
>
>   1. By assigning a new name to the new packaging type, e.g. "eclipse-product". The current eclipse-application packaging type would be deprecated and eventually be removed.
>   2. By replacing "eclipse-application". To avoid the risk of blockers, the current implementation would remain available as fall-back under the name "eclipse-application-old".
>
> What is your opinion on this?

Since a product can be application-less (-Declipse.ignoreApp=true),
"eclipse-product" seems like a  better choice? You could still rename
"eclipse-application" to "eclipse-application-old" or
"eclipse-application-deprecated". Doesn't matter much to me, as long
as p2-enabled product builds work :-)
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

RE: Request for Comments: Migration path to new packaging type for p2-enabled products

Lohre, Jan
In reply to this post by Igor Fedorenko-2
Hi Igor,

what is the use case you see for an Eclipse RCP that is not p2-enabled?
There will be no update or install of new features possible.

What would be the default result of this packaging type? Most likely (as far as I see it) people will want to have a p2-enabled rcp.

Kind regards,
Jan

-----Original Message-----
From: Igor Fedorenko [mailto:[hidden email]]
Sent: Donnerstag, 17. März 2011 18:19
To: [hidden email]
Subject: Re: [Tycho Users] Request for Comments: Migration path to new packaging type for p2-enabled products

I'd like to propose 2a -- replace "eclipse-application" with
implementation that can produce both p2-enabled and "plain" rcp
applications. I don't think we need "eclipse-application-old".

--
Regards,
Igor

On 11-03-17 12:19 PM, Oberlies, Tobias wrote:

> Tycho developers and users -
>
> As announced before [1], we want to introduce a new packaging type for building p2-enabled products and remove that functionality from eclipse-repository [2]. While the technical details are mostly clear, we haven't decided on how this packaging type shall be introduced.
>
> The new packaging type shall replace the current eclipse-application implementation. There are two options how this could be done:
>
>     1. By assigning a new name to the new packaging type, e.g. "eclipse-product". The current eclipse-application packaging type would be deprecated and eventually be removed.
>     2. By replacing "eclipse-application". To avoid the risk of blockers, the current implementation would remain available as fall-back under the name "eclipse-application-old".
>
> What is your opinion on this?
>
>
> I think that we should go for option 2, because it makes it more clear what we want people to use. I don't want the confusion again that we caused with eclipse-repository and eclipse-update-site. Also, the new packaging type will not need to mature after it has been created (as this was/is the case with eclipse-repository) because it will just be factored out of the eclipse-repository implementation.
>
> Regards
> Tobias
>
>
>
> [1] http://software.2206966.n2.nabble.com/Request-for-Comments-How-to-build-products-categories-and-p2-repositories-in-Tycho-tp5962554p5962554.html
> [2] https://docs.sonatype.org/display/TYCHO/Discussion+on+eclipse-repository+packaging+type+clean-up
>
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Request for Comments: Migration path to new packaging type for p2-enabled products

Brian de Alwis
In reply to this post by ejain
My vote is also for #1 (eclipse-product): every difference in terminology between Tycho and PDE increases the chance of confusion for users.

Brian.

On Thu, Mar 17, 2011 at 09:19, Oberlies, Tobias <[hidden email]> wrote:
>   1. By assigning a new name to the new packaging type, e.g. "eclipse-product". The current eclipse-application packaging type would be deprecated and eventually be removed.

Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Request for Comments: Migration path to new packaging type for p2-enabled products

Igor Fedorenko-3
In reply to this post by Lohre, Jan
I talked to developers who just want to ship new version of their app
whenever they need to. And they want to be certain that the app stays
the same from release to release. And I honestly don't see why Tycho
should force p2 onto its users.

As far as default behaviour, I think it should depend on rcp contents.
If the app includes p2 bits, then we generate is the p2 way. If the app
does not include p2, then we don't force it. We can probably add a flag
to the packaging mojo to force p2 on/off too.

--
Regards,
Igor

On 11-03-17 03:27 PM, Lohre, Jan wrote:

> Hi Igor,
>
> what is the use case you see for an Eclipse RCP that is not p2-enabled?
> There will be no update or install of new features possible.
>
> What would be the default result of this packaging type? Most likely (as far as I see it) people will want to have a p2-enabled rcp.
>
> Kind regards,
> Jan
>
> -----Original Message-----
> From: Igor Fedorenko [mailto:[hidden email]]
> Sent: Donnerstag, 17. März 2011 18:19
> To: [hidden email]
> Subject: Re: [Tycho Users] Request for Comments: Migration path to new packaging type for p2-enabled products
>
> I'd like to propose 2a -- replace "eclipse-application" with
> implementation that can produce both p2-enabled and "plain" rcp
> applications. I don't think we need "eclipse-application-old".
>
> --
> Regards,
> Igor
>
> On 11-03-17 12:19 PM, Oberlies, Tobias wrote:
>> Tycho developers and users -
>>
>> As announced before [1], we want to introduce a new packaging type for building p2-enabled products and remove that functionality from eclipse-repository [2]. While the technical details are mostly clear, we haven't decided on how this packaging type shall be introduced.
>>
>> The new packaging type shall replace the current eclipse-application implementation. There are two options how this could be done:
>>
>>      1. By assigning a new name to the new packaging type, e.g. "eclipse-product". The current eclipse-application packaging type would be deprecated and eventually be removed.
>>      2. By replacing "eclipse-application". To avoid the risk of blockers, the current implementation would remain available as fall-back under the name "eclipse-application-old".
>>
>> What is your opinion on this?
>>
>>
>> I think that we should go for option 2, because it makes it more clear what we want people to use. I don't want the confusion again that we caused with eclipse-repository and eclipse-update-site. Also, the new packaging type will not need to mature after it has been created (as this was/is the case with eclipse-repository) because it will just be factored out of the eclipse-repository implementation.
>>
>> Regards
>> Tobias
>>
>>
>>
>> [1] http://software.2206966.n2.nabble.com/Request-for-Comments-How-to-build-products-categories-and-p2-repositories-in-Tycho-tp5962554p5962554.html
>> [2] https://docs.sonatype.org/display/TYCHO/Discussion+on+eclipse-repository+packaging+type+clean-up
>>
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Request for Comments: Migration path to new packaging type for p2-enabled products

davy meers
In reply to this post by Tobias Oberlies

I prefer option #1:

In the project i am currently working on we have several products (containing a different combination of features) who share the eclipse application bundle.

It would be a bit confusing when a bundle that defines a product has "eclipse-application" as packaging type.

Regards, Davy
Tobias Oberlies wrote
.... The new packaging type shall replace the current eclipse-application implementation. There are two options how this could be done: 1. By assigning a new name to the new packaging type, e.g. "eclipse-product". The current eclipse-application packaging type would be deprecated and eventually be removed. 2. By replacing "eclipse-application". To avoid the risk of blockers, the current implementation would remain available as fall-back under the name "eclipse-application-old". What is your opinion on this? ....
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Request for Comments: Migration path to new packaging type for p2-enabled products

Tobias Oberlies
> I prefer option #1:
> In the project i am currently working on we have several products
> (containing a different combination of features) who share the eclipse
> application bundle.
> It would be a bit confusing when a bundle that defines a product has
> "eclipse-application" as packaging type.
> Regards, Davy

What do you mean by "application bundle"?

Actually the new packaging type creates an installation by default (which is an application) from the product definition. We had a discussion before whether we should split defining the product and creating an installation from it into two packaging types, but this idea has conceptual flaws and would be even more confusing.

We kind of have an agreement already, but I'd like to understand your concerns nevertheless.

Regards
Tobias

Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

RE: Request for Comments: Migration path to new packaging type for p2-enabled products

Tobias Oberlies
In reply to this post by Brian de Alwis
We have an agreement that we want to keep the current eclipse-application implementation (as long as it doesn't get in our way), but clearly mark it as deprecated by renaming it to something like "eclipse-application-deprecated".


Independent of this is the question how we want to call the new packaging type. From the Tycho users we have three +1 votes for "eclipse-product" and no votes for "eclipse-application"

A bit contrary to what I have said before, I would also vote for "eclipse-product". I was convinced by Eric's argument that a product does not need to have an "application" (as in extension to the application extension point), and therefore eclipse-product better matches what can be done with the packaging type.

@Jan, @Igor: Do you also want to vote for either name?


I'd like to have a decision now because I would like to document that old implementation is out of development - to avoid that more people spend effort on trying to fix issues (like in https://issues.sonatype.org/browse/TYCHO-608).

Regards
Tobias



Context: http://software.2206966.n2.nabble.com/Request-for-Comments-Migration-path-to-new-packaging-type-for-p2-enabled-products-tt6181589.html

Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

RE: Request for Comments: Migration path to new packaging type for p2-enabled products

Igor Fedorenko-3
I am +1 for eclipse-product.

I am -0 on renaming eclipse-application. I think it is enough to log a warning.

"Oberlies, Tobias" <[hidden email]> wrote:

>We have an agreement that we want to keep the current
>eclipse-application implementation (as long as it doesn't get in our
>way), but clearly mark it as deprecated by renaming it to something
>like "eclipse-application-deprecated".
>
>
>Independent of this is the question how we want to call the new
>packaging type. From the Tycho users we have three +1 votes for
>"eclipse-product" and no votes for "eclipse-application"
>
>A bit contrary to what I have said before, I would also vote for
>"eclipse-product". I was convinced by Eric's argument that a product
>does not need to have an "application" (as in extension to the
>application extension point), and therefore eclipse-product better
>matches what can be done with the packaging type.
>
>@Jan, @Igor: Do you also want to vote for either name?
>
>
>I'd like to have a decision now because I would like to document that
>old implementation is out of development - to avoid that more people
>spend effort on trying to fix issues (like in
>https://issues.sonatype.org/browse/TYCHO-608).
>
>Regards
>Tobias
>
>
>
>Context:
>http://software.2206966.n2.nabble.com/Request-for-Comments-Migration-path-to-new-packaging-type-for-p2-enabled-products-tt6181589.html

--
Sent from my SGS
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

RE: Request for Comments: Migration path to new packaging type for p2-enabled products

Sievers, Jan
I second Igor.

just log a warning. This will not break existing builds but tell people to move to the new implementation.

Jan

-----Original Message-----
From: Igor Fedorenko [mailto:[hidden email]]
Sent: Donnerstag, 31. März 2011 14:59
To: [hidden email]; [hidden email]
Subject: RE: [Tycho Users] Request for Comments: Migration path to new packaging type for p2-enabled products

I am +1 for eclipse-product.

I am -0 on renaming eclipse-application. I think it is enough to log a warning.

"Oberlies, Tobias" <[hidden email]> wrote:

>We have an agreement that we want to keep the current
>eclipse-application implementation (as long as it doesn't get in our
>way), but clearly mark it as deprecated by renaming it to something
>like "eclipse-application-deprecated".
>
>
>Independent of this is the question how we want to call the new
>packaging type. From the Tycho users we have three +1 votes for
>"eclipse-product" and no votes for "eclipse-application"
>
>A bit contrary to what I have said before, I would also vote for
>"eclipse-product". I was convinced by Eric's argument that a product
>does not need to have an "application" (as in extension to the
>application extension point), and therefore eclipse-product better
>matches what can be done with the packaging type.
>
>@Jan, @Igor: Do you also want to vote for either name?
>
>
>I'd like to have a decision now because I would like to document that
>old implementation is out of development - to avoid that more people
>spend effort on trying to fix issues (like in
>https://issues.sonatype.org/browse/TYCHO-608).
>
>Regards
>Tobias
>
>
>
>Context:
>http://software.2206966.n2.nabble.com/Request-for-Comments-Migration-path-to-new-packaging-type-for-p2-enabled-products-tt6181589.html

--
Sent from my SGS
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Request for Comments: Migration path to new packaging type for p2-enabled products

davy meers
In reply to this post by Tobias Oberlies
Tobias Oberlies wrote
What do you mean by "application bundle"?
By "application bundle" i mean a bundle that provide an extension using the eclipse RCP application extension point.

Tobias Oberlies wrote
We kind of have an agreement already, but I'd like to understand your concerns nevertheless.
It is not really a concern.

When i see "eclipse-application" i assume that the project provides an extension to the eclipse application extension point.
When i see "eclipse-product" i assume that the project contains a .product file.
(These assumptions might be wrong)

Since there is no need to provide an extension to the eclipse application extension point with the new packaging type i think "eclipse-product" is more appropriate.

Regards,
Davy



Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Request for Comments: Migration path to new packaging type for p2-enabled products

Tobias Oberlies
davy meers wrote:

> Tobias Oberlies wrote:
> >
> > What do you mean by "application bundle"?
> >
> By "application bundle" i mean a bundle that provide an extension using
> the
> eclipse RCP application extension point.
>
>
> Tobias Oberlies wrote:
> >
> > We kind of have an agreement already, but I'd like to understand your
> > concerns nevertheless.
> >
> It is not really a concern.
>
> When i see "eclipse-application" i assume that the project provides an
> extension to the eclipse application extension point.
> When i see "eclipse-product" i assume that the project contains a .product
> file.
> (These assumptions might be wrong)

Got it. Tycho aims at being as intuitive as possible, so your feedback is very welcome.


And I've got good news: We decided to call the new packaging type "eclipse-product" :-)

Regards
Tobias

Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

RE: Request for Comments: Migration path to new packaging type for p2-enabled products

Tobias Oberlies
In reply to this post by Igor Fedorenko-3
We had discussed this at EclipseCon, and I also wanted to share the results here.

The behaviour of eclipse-application and the planned eclipse-product [1] differs in case of products that are not "valid" (according to the product editor's validate button), i.e. products that list bundles but not all of their dependencies. In that situation, eclipse-product adds the missing dependencies, whereas eclipse-application creates an installation with bundles that cannot be resolved & started. We consider the former to be the better default.

Also eclipse-product does not imply that the installed product has to contain the p2 bundles. It only includes p2 metadata that would allow updates through an external program (the p2 director). If that option is not desired, the update metadata may be removed without breaking the installation.

All-in-all, there are not sufficient reasons for having two implementations product support in Tycho. eclipse-application will be deprecated as soon as eclipse-product is implemented - and the implementation will be removed eventually, but certainly before a 1.0 release.

@Igor, Jan: Does this match your memories of our discussion?

Tobias


[1] https://docs.sonatype.org/display/TYCHO/Discussion+on+eclipse-repository+packaging+type+clean-up (updated today)


> -----Original Message-----
> From: Igor Fedorenko [mailto:[hidden email]]
> Sent: 17 March 2011 23:45
> To: [hidden email]
> Subject: Re: [Tycho Users] Request for Comments: Migration path to new
> packaging type for p2-enabled products
>
> I talked to developers who just want to ship new version of their app
> whenever they need to. And they want to be certain that the app stays
> the same from release to release. And I honestly don't see why Tycho
> should force p2 onto its users.
>
> As far as default behaviour, I think it should depend on rcp contents.
> If the app includes p2 bits, then we generate is the p2 way. If the app
> does not include p2, then we don't force it. We can probably add a flag
> to the packaging mojo to force p2 on/off too.
>
> --
> Regards,
> Igor
>
> On 11-03-17 03:27 PM, Lohre, Jan wrote:
> > Hi Igor,
> >
> > what is the use case you see for an Eclipse RCP that is not p2-enabled?
> > There will be no update or install of new features possible.
> >
> > What would be the default result of this packaging type? Most likely (as
> far as I see it) people will want to have a p2-enabled rcp.
> >
> > Kind regards,
> > Jan
> >
> > -----Original Message-----
> > From: Igor Fedorenko [mailto:[hidden email]]
> > Sent: Donnerstag, 17. März 2011 18:19
> > To: [hidden email]
> > Subject: Re: [Tycho Users] Request for Comments: Migration path to new
> packaging type for p2-enabled products
> >
> > I'd like to propose 2a -- replace "eclipse-application" with
> > implementation that can produce both p2-enabled and "plain" rcp
> > applications. I don't think we need "eclipse-application-old".
> >
> > --
> > Regards,
> > Igor
> >
> > On 11-03-17 12:19 PM, Oberlies, Tobias wrote:
> >> Tycho developers and users -
> >>
> >> As announced before [1], we want to introduce a new packaging type for
> building p2-enabled products and remove that functionality from eclipse-
> repository [2]. While the technical details are mostly clear, we haven't
> decided on how this packaging type shall be introduced.
> >>
> >> The new packaging type shall replace the current eclipse-application
> implementation. There are two options how this could be done:
> >>
> >>      1. By assigning a new name to the new packaging type, e.g.
> "eclipse-product". The current eclipse-application packaging type would be
> deprecated and eventually be removed.
> >>      2. By replacing "eclipse-application". To avoid the risk of
> blockers, the current implementation would remain available as fall-back
> under the name "eclipse-application-old".
> >>
> >> What is your opinion on this?
> >>
> >>
> >> I think that we should go for option 2, because it makes it more clear
> what we want people to use. I don't want the confusion again that we
> caused with eclipse-repository and eclipse-update-site. Also, the new
> packaging type will not need to mature after it has been created (as this
> was/is the case with eclipse-repository) because it will just be factored
> out of the eclipse-repository implementation.
> >>
> >> Regards
> >> Tobias
> >>
> >>
> >>
> >> [1] http://software.2206966.n2.nabble.com/Request-for-Comments-How-to-
> build-products-categories-and-p2-repositories-in-Tycho-
> tp5962554p5962554.html
> >> [2] https://docs.sonatype.org/display/TYCHO/Discussion+on+eclipse-
> repository+packaging+type+clean-up
> >>
Loading...