Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[dsdp-tm-dev] Fixed broken N-builds

Hi all,

once more there's an "I broke the Build" award
to give -- Dave Dykstal broke the build when 
refactoring IConnectorService, apparently because
he did not have the 
   org.eclipse.rse.processes.shell.linux
plug-in in his workspace.

It turned out to be my fault this time, and I have
fixed the issue in HEAD by editing 
AbstractDelegatingConnectorService.java, but 
what can we learn from it this time?

- It's good we have N-builds to check consistency
  beyond individual committer's workspaces.

- Please keep your workspaces on top of all the
  plugins we work on. It's my fault this time that
  although I did add the new plugin to the team 
  project sets, I did not announce it properly; 
  update the www-tm-development project and reload 
  rse-committer.psf in order to get it.

- It's important that we have actual clients for
  every concept. Although the bug was in 
  AbstractDelegatingConnectorService, it became
  evident only in the subclass, 
  DelegatingShellProcessConnectorService.

- When adding methods to an interface in the course
  of refactoring, take a really close look especially
  at abstract classes implementing the interface.
  What's the exact semantic behavior of the class?
  Not implementing new interface methods will NOT be
  a compiler error in the abstract class (since it is
  declared abstract), but it may be an error in 
  deriving classes further down the hierarchy.

Cheers,
--
Martin Oberhuber
Wind River Systems, Inc.
Target Management Project Lead, DSDP PMC Member
http://www.eclipse.org/dsdp/tm


Back to the top