Bug 432664 - Tycho requires build.properties of shared license
Summary: Tycho requires build.properties of shared license
Status: NEW
Alias: None
Product: z_Archived
Classification: Eclipse Foundation
Component: Tycho (show other bugs)
Version: unspecified   Edit
Hardware: PC Linux
: P3 normal (vote)
Target Milestone: ---   Edit
Assignee: Project Inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-04-12 02:55 EDT by David Williams CLA
Modified: 2021-04-28 16:53 EDT (History)
3 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description David Williams CLA 2014-04-12 02:55:32 EDT
As original discussed in bug 431255 comment 31 (plus/minus) ... 

Tycho requires that a "shared license" have its build.properties exported on its "bin.includes". 

This is unlike any other builder, and is contrary to the usual "best practice" of not exporting build.properties, and is not documented in Eclipse Help, such as see 

http://help.eclipse.org/kepler/index.jsp?topic=%2Forg.eclipse.pde.doc.user%2Ftasks%2Fpde_shared_license.htm&resultof=%22shared%22%20%22share%22%20%22feature%22%20%22featur%22

Normally, I'd consider this "minor", but suspect it's symptomatic of the implementation that causes Tycho to not be able to use "two licenses" in same build. (For which I'll open another bug).
Comment 1 Jan Sievers CLA 2014-04-14 04:11:09 EDT
this was originally implemented with

http://git.eclipse.org/c/tycho/org.eclipse.tycho.git/commit/?id=d9e8dc7cde6cab7f6b5939df1354de537aba6483


we read bin.includes from build.properties to determine license feature content.

I wonder if that's really needed or we can simply assume that all files included in the license feature jar (except for obviously feature.xml, feature.properties and META-INF/ maybe) should be taken over if the license feature is referenced.

Igor may be able to comment better here.
Comment 2 Jan Sievers CLA 2014-04-14 04:17:20 EDT
(In reply to David Williams from comment #0)
> This is unlike any other builder, and is contrary to the usual "best
> practice" of not exporting build.properties, and is not documented in
> Eclipse Help, such as see 

one could argue that license features are actually design time-only artifacts and it makes sense to include build.properties in the feature jar as this makes it explicit which files should be included.
Comment 3 Igor Fedorenko CLA 2014-04-14 06:43:19 EDT
(In reply to Jan Sievers from comment #2)
> (In reply to David Williams from comment #0)
> > This is unlike any other builder, and is contrary to the usual "best
> > practice" of not exporting build.properties, and is not documented in
> > Eclipse Help, such as see 
> 
> one could argue that license features are actually design time-only
> artifacts and it makes sense to include build.properties in the feature jar
> as this makes it explicit which files should be included.

Right, there is no way to reliably determine what license feature's files to use unless it comes with build.properties. 


http://dev.eclipse.org/mhonarc/lists/cbi-dev/msg00232.html
Comment 4 David Williams CLA 2014-04-14 09:13:10 EDT
I think to better match documentation, and other builders, you could "fallback", to default behavior, that if build.properties was not exported, to assume some  standard files, if present,  

epl-*.html
feature.properties
license.html

And, if you really feel there is a need to handle something beyond those three standard files, then to say (and document) that build.properties must be exported to handle other cases. Seems wrong to automatically fail, though, where other builders work. 

Perhaps you already found wild variation in what people name these files? 

Compliments on having a good error message though.
Comment 5 Tobias Oberlies CLA 2014-04-14 11:50:27 EDT
(In reply to comment #3)
> Right, there is no way to reliably determine what license feature's files to use
> unless it comes with build.properties.
Wouldn't it make sense to include all files except META-INF/**/* from the license feature jar?
Comment 6 Igor Fedorenko CLA 2014-04-14 12:05:33 EDT
What happens during reactor build now, are license features fully packaged as jars by the time they are consumed in other reactor projects?

Also, I vaguely remember there were some "extra" files in the license feature used at the time, which I needed a way to filter out. I'd double check the current license feature only includes required files.
Comment 7 Mickael Istria CLA 2021-04-08 18:10:39 EDT
Eclipse Tycho is moving away from this bugs.eclipse.org issue tracker to https://github.com/eclipse/tycho/issues/ instead. If this issue is relevant to you, your action is required.
0. Verify this issue is still happening with latest Tycho 2.4.0-SNAPSHOT
  if issue has disappeared, please change status of this issue to "CLOSED WORKFORME" with some details about your testing environment and how you did verify the issue; and you're done
  if issue is still present when latest release:
* Create a new issue at https://github.com/eclipse/tycho/issues/
  ** Use as title in GitHub the title of this Bugzilla ticket (may include the bug number or not, at your own convenience)
  ** In the GitHub description, start with a link to this bugzilla ticket
  ** Optionally add new content to the description if it can helps towards resolution
  ** Submit GitHub issue
* Update bugzilla ticket
  ** Add to "See also" property (up right column) the link to the newly created GitHub issue
  ** Add a comment "Migrated to <link-to-newly-created-GitHub-issue>"
  ** Set status as CLOSED MOVED
  ** Submit

All issues that remain open will be automatically closed next week or so. Then the Bugzilla component for Tycho will be archived and made read-only.