warnings are very important, and we must avoid calling any deprecated
API. Sun JDK is not our only
dependency, and even Sun does eventually remove deprecated API (compare JDK 6
with JDK 1.1 and there are many APIs that have been removed). But more importantly deprecated API
are obsolete and have typically been replaced by much better and better
performing API. Several of our
concurrency and performance problems have been attributed to using deprecated
API and obsolete classes. It is
important to keep our code base current and up to data with the evolving
technologies that we are dependent on.
also important to ensure we are not using any of own deprecated API, and have
not incorrectly deprecated an API.
This is especially important in testing, where we must be testing using
the same API that we intend our clients to use, not deprecated
many of these code warnings can actually be quite simple, and we should be
fixing testing as well as product code.
In many cases Eclipse or other IDEs provide automated ways to fix
warnings for the entire project with a single click. Refactoring and global search and
replace can also fix many issues very
don't agree that our solution to IDE warnings should be to turn off the
warnings (although some seem a little odd). Turning them off ensures that new code
developed will have the same errors.
[mailto:eclipselink-dev-bounces@xxxxxxxxxxx]On Behalf Of Mike Keith
Sent: Wednesday, October 10, 2007 2:02
To: Dev mailing list for
Eclipse Persistence Services
Subject: RE: [eclipselink-dev] Eclipse
IDE Error/Warning Levels
with phase 1.
think that the deprecation warning level need ever be turned on, though, even
in phase 2. Deprecation means nothing, really, and Sun has even said that they
do not ever plan on removing deprecated API. I keep that Eclipse warning
eternally turned off in all my Eclipse projects.
I am not
sure that in phase 3 the same level of quality needs to be in place for the
tests, but as was mentioned I think we can discuss what an acceptable level is
when we reach that bridge.
[mailto:eclipselink-dev-bounces@xxxxxxxxxxx]On Behalf Of Doug Clarke
Sent: Tuesday, October 09, 2007 11:18
Subject: [eclipselink-dev] Eclipse IDE
incubation phase I would like to propose an approach to dealing with the many
warnings we get in the Eclipse IDE for our code base. Historically these have
not been a great concern to TopLink development but I feel that the move to
Eclipse should include an effort to work on overall code quality and we should
leverage the Eclipse IDE tooling to do this.
We have a very
large number of warning across our projects that make addressing these easily
a difficult task. To make this more manageable I would like to propose a
phased approach with concrete items in the project back-log to address
STEP 1: Turn down
the warning levels within the project settings to get to a manageable number
of warnings we can address.
project source projects we will turn off warnings for deprecation,
serialVersionUID, and unchecked generic type operations
test case projects we will turn off these warnings as well as the unused
imports, local variable is never read, an unused local or private member
This will get us
down to a more manageable warning level and we can add specific items to the
project back-log to get these addressed.
STEP 2: After the
above warnings have been addressed through code changes and we have addressed
the deprecated code removal we can increase the warning level to include
deprecation as well as any additional ones the developers feel are useful to
the source projects.
STEP 3: Increase the
warning levels on the test case projects as determined by the
Based on this
proposal I would like to proceed with modifying the existing project's warning
levels and checking them in. Please provide feedback on this proposal by COB
Clarke | Principal Product Manager, Oracle
45 O'Connor, Suite 4000 |