Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [mdt-papyrus.dev] Weekly All Problems Digest for Papyrus

Hi

Your specific slide looks wierd. "@Nonnull". The functionality incorporated by JDT is "@NonNull".

I've been using the Java 7 @NonNull annotations for a couple of years for Eclipse OCL. The checking is 'native' at least anything that JDT does, I regard as native.

The annotations are useful, but far from the hyped panacea. The real killer is that the Java libraries / platform code / EMF generated models have no annotations, so large parts of your code remain unchecked. Deceptively so. You may get used to good diagnosis and erroneously remove checks. You are forced to use quite a few suppress null warnings, which if accidentally applied at method or worse class level can hide problems that would have been diagnosed without any annotations. The flow analysis unfortunately fails in complex control statements (more than a couple of if's/for's and you may have to suppress the false diagnoses here too). Bugzillas on these problems have been outstanding for quite some time.

I haven't yet successfully moved to the Java 8 annotations which are incompatible and syntactically perverse. I have yet to decide whether to stick with obsolete Java 7 annotations, abandon them altogether or try to move on to Java 8 annotations that might yet evolve to something more acceptable.

I suggest that you give them an extended try on a couple of plugins that use a high level of autogenerated code since without accurately annotating your autogeneration your efforts will be fruitless.

There is now support for annotations for libraries. You might want to look at autogenerating annotations for your external dependencies such as EMF / GEF / ...

    Regards

        Ed Willink




On 31/08/2015 07:55, MAGGI Benoit wrote:

Hi everyone,

 

NullPointer seems to be a week point in Papyrus code.

I saw this in a presentation (Eclipsecon Toulouse [1])

 

It may be a solution to take down most of the NPE, but the annotations are not native,

We may have to add dependency to a checker (maybe also change the jdk we use)

 

Any thought on that ?

 

Regards,

Benoit

1 : http://batmat.github.io/presentations/50-slides-of-ide/prez.html#__span_class_tip_count_26_51_span_null_analysis_one_step_further_with_type_annotations_jsr_308

2 : http://types.cs.washington.edu/checker-framework/

 

 

De : mdt-papyrus.dev-bounces@xxxxxxxxxxx [mailto:mdt-papyrus.dev-bounces@xxxxxxxxxxx] De la part de Eclipse Error Reports Bot
Envoyé : lundi 31 août 2015 06:02
À : mdt-papyrus.dev@xxxxxxxxxxx
Objet : [mdt-papyrus.dev] Weekly All Problems Digest for Papyrus

 

Hi,

this is the weekly digest for Papyrus. The status of all problems on this list is open. Items on this list may already be tracked in Bugzilla but were not closed yet. To remove a item from this list, you can either (i) set the status of its associated bug to resolved, verfied, or closed or (ii) mark it as log message in the reporter's web ui.

If you have any questions about this report, please send an email to error-reports-inbox@xxxxxxxxxxx

Top new problems (last 7 days):

 

Problem

Reporters

Bug

1.

IllegalStateException in EcoreUtil.getRootContainer (861)

1

-

2.

NullPointerException in AbstractParametricHandler.getSelectedElements (102)

1

-

3.

NullPointerException in ECrossReferenceAdapter.getCrossReferenceAdapter (55)

1

-

4.

NullPointerException in GraphicalTypeRegistry. (43)

1

-

5.

NullPointerException in OrphanViewPolicy.notifyChanged (395)

1

-

6.

NullPointerException in ValidationDecoratorProvider$StatusDecorator.activate (227)

1

-

7.

StackOverflowError in CompositeChangeDescription.canApply (115)

1

-

8.

StackOverflowError in RecordingCommand.canApplyChange (195)

1

-

9.

StandInException in ExternalBehaviorPortMatcher.matches (54)

1

-

10.

StandInException in RelayPortMatcher.matches (40)

1

-

Top unresolved, active problems (last 7 days):

 

Problem

Reporters

Bug

1.

OperationCanceledException in NestingNotifyingWorkspaceCommandStack.handleError (157)

44

473622 U

2.

IllegalArgumentException in GC.setFont (4407)

38

473157 U

3.

StandInException in ElementTypeRegistry.getMetamodelTypeDescriptor (1432)

32

-

4.

ServiceNotFoundException in ServiceUtilsForResource.getServiceRegistry (63)

30

-

5.

CoreException in PrepareInstallProfileJob.resolve (135)

23

-

6.

NullPointerException in WizardNewFileCreationPage.createNewFile (385)

21

-

7.

FileNotFoundException in FileURIHandlerImpl$1. (65)

19

-

8.

NullPointerException in AbstractTableWizard.addPages (78)

18

-

9.

ServiceNotFoundException in ServicesRegistry.getService (407)

18

-

10.

NullPointerException in XYLayoutEditPolicy.getCurrentConstraintFor (103)

16

-

Top reoccurring problems (last 3 months):

 

Problem

Reporters

Bug

1.

OperationCanceledException in NestingNotifyingWorkspaceCommandStack.handleError (157)

44

473622 U

2.

IllegalArgumentException in GC.setFont (4407)

38

473157 U

3.

StandInException in ElementTypeRegistry.getMetamodelTypeDescriptor (1432)

32

-

4.

ServiceNotFoundException in ServiceUtilsForResource.getServiceRegistry (63)

30

-

5.

CoreException in PrepareInstallProfileJob.resolve (135)

23

-

6.

NullPointerException in WizardNewFileCreationPage.createNewFile (385)

21

-

7.

FileNotFoundException in FileURIHandlerImpl$1. (65)

19

-

8.

NullPointerException in AbstractTableWizard.addPages (78)

18

-

9.

ServiceNotFoundException in ServicesRegistry.getService (407)

18

-

10.

StandInException in PapyrusContentProvider.getElements (105)

17

-

11.

NullPointerException in XYLayoutEditPolicy.getCurrentConstraintFor (103)

16

-

12.

NullPointerException in ResourceUpdateService$3$1ResourceDeltaVisitor.visit (206)

15

-

13.

NullPointerException in SelectRowsHandler.setEnabled (53)

15

-

14.

ArrayIndexOutOfBoundsException in BasicEList.move (663)

14

-

15.

ServiceException in ElementEditServiceProvider.getEditService (119)

14

-

16.

SWTException in StringEditor$2$1.run (445)

12

-

17.

NullPointerException in GraphicalTypeRegistry. (40)

11

-

18.

NullPointerException in OwnerObservableValue.doGetValue (109)

10

-

19.

ServiceNotFoundException in ServiceUtilsForResourceSet.getServiceRegistry (39)

10

-

20.

AssertionFailedException in CreateCommand.doExecuteWithResult (96)

9

-

Links:

Active:

322 problems in last 3 months.

Bugzilla:

66 problems tracked, 45 problems closed, 45 problems fixed.

 

Thank you for your assistance.
Your friendly error-reports-inbox.

-- 
You are receiving this email because you are subscribed to alerts of Papyrus. To alter your subscriptions, visit the project configuration page.



_______________________________________________
mdt-papyrus.dev mailing list
mdt-papyrus.dev@xxxxxxxxxxx
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://dev.eclipse.org/mailman/listinfo/mdt-papyrus.dev


No virus found in this message.
Checked by AVG - www.avg.com
Version: 2015.0.6125 / Virus Database: 4409/10547 - Release Date: 08/30/15



Back to the top