Bug 199983

Summary: Internal classes cannot be relied upon and therefore should not be used
Product: [Fedora] Fedora Reporter: Andrew Overholt <overholt>
Component: eclipse-changelogAssignee: Kyu Lee <klee>
Status: CLOSED NEXTRELEASE QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: rawhide   
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2006-08-03 20:49:45 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Andrew Overholt 2006-07-24 19:13:04 UTC
Description of problem:
eclipse-changelog's "prepare ChangeLog" functionality does not work with Eclipse
SDK 3.2.  It is using an internal class but these cannot be relied upon to
remain consistent and therefore should not be used.  The offending call here is
this:

CVSTeamProvider provider.diff(fresource, Command.NO_LOCAL_OPTIONS, new
PrintStream(os), new SubProgressMonitor(monitor, 500));

at line 56 of:

com/redhat/eclipse/changelog/core/actions/GenerateDiffFile.java

Version-Release number of selected component (if applicable):
eclipse-changelog-2.2.0-2.fc6.i386

How reproducible:
Always

Steps to Reproduce:
1. Check out com.redhat.eclipse.changelog.core from sourceware.org:/cvs/eclipse
2. Observe error
  
Actual results:
Error

Expected results:
No error

Additional info:

Comment 1 Ben Konrath 2006-07-24 19:40:09 UTC
IMO, it's ok to use internal classes as long as there are no other ways to get
the functionality that we need. We just have a be sure to tell people that 3.2
is required. We should also try to get the internal methods exposed as API if
they would be useful to more than one plugin. Another option is to copy the
classes from the SDK to the changelog plugin. This only works if the plugin is
EPL though.

Comment 2 Andrew Overholt 2006-07-24 19:45:48 UTC
(In reply to comment #1)
> IMO, it's ok to use internal classes as long as there are no other ways to get
> the functionality that we need.

Yeah, sorry, this is fine and I shouldn't have worded it so strongly.  What I
just discussed with Kyu was to create a 3.1 branch and have head track the
latest upstream stable release.

Comment 3 Kyu Lee 2006-08-03 20:51:35 UTC
I am working on the next realease to handle both version of eclipses (>=3.2 and
<3.2).

Currently, changelog 2.2.2 works with 3.2, and changelog 2.1.0 works with
previous e version of eclipse(<3.2).