jgit/org.eclipse.jgit.archive
Terry Parker ca3ea18371 Update dependencies to use the JGit-internal @Nullable
Update the project-specific Eclipse settings to replace the use of the
org.eclipse.jdt.annotation.Nullable class the new JGit-specific
@Nullable annotation. I verified that Eclipse reports errors when the
return value of a method annotated with
@org.eclipse.jgit.annotations.Nullable is dereferenced without a null
check.

Also remove the Maven and MANIFEST.MF dependencies on
org.eclipse.jdt.annotation.

Eclipse null analysis uses three annotations: @Nullable, @NonNull and
@NonNullByDefault. All three are updated in this patch because it is
invalid to set the Eclipse preferences to empty values. So far only
@Nullable has been introduced in org.eclipse.jgit.annotations.

My personal preference is to follow the advice in Effective Java and
avoid the null-return idiom, and to avoid passing null values in
general. This sets the expectation is that arguments and return types
are assumed non-null unless otherwise documented. If that is the
expectation, then consistent application of @NonNull is redundant and
hurts readability by cluttering the code, obscuring the occasional
@Nullable annotation that really requires attention.

If the JGit community decides there is value in using the @NonNull and
@NonNullByDefault annotations we can add them--this change configures
Eclipse to use them.

Change-Id: I9af1b786d1b44b9b0d9c609480dc842df79bf698
Signed-off-by: Terry Parker <tparker@google.com>
2015-11-09 14:27:52 -08:00
..
.settings Update dependencies to use the JGit-internal @Nullable 2015-11-09 14:27:52 -08:00
META-INF Update dependencies to use the JGit-internal @Nullable 2015-11-09 14:27:52 -08:00
resources/org/eclipse/jgit/archive/internal Fix string externalization warnings in BaseFormat 2015-03-12 18:35:47 -07:00
src/org/eclipse/jgit/archive Fix string externalization warnings in BaseFormat 2015-03-12 18:35:47 -07:00
.classpath Set minimum required Java version to Java 7 2015-02-09 14:11:50 +01:00
.gitignore Move ArchiveCommand into standard porcelain API 2013-05-24 17:30:18 -07:00
.project Move ArchiveCommand into standard porcelain API 2013-05-24 17:30:18 -07:00
about.html Move ArchiveCommand into standard porcelain API 2013-05-24 17:30:18 -07:00
build.properties Move ArchiveCommand into standard porcelain API 2013-05-24 17:30:18 -07:00
plugin.properties Move ArchiveCommand into standard porcelain API 2013-05-24 17:30:18 -07:00
pom.xml Use japicmp instead of clirr to detect API changes 2015-10-01 01:41:52 +02:00