TestFailure If a class has a method in its trait composition, the method should not be implemented in the class. Violations: - TStDebuggerExtensionTestClass class - TStDebuggerExtensionTestClass class - TStDebuggerExtensionTestClass class ReleaseTest(TestAsserter)>>assert:description:resumable: ReleaseTest(TestAsserter)>>assert:description: ReleaseTest>>assertValidLintRule:withExceptions: ReleaseTest>>testLocalMethodsOfTheClassShouldNotBeRepeatedInItsTraits ReleaseTest(TestCase)>>performTest TestFailure Found undeclared Variables: DAPackageDependenciesPresenter in: ClyShowDependencyCritiqueCommand>>#execute DADependencyChecker in: PharoBootstrapRule>>#dependencyChecker ReleaseTest(TestAsserter)>>assert:description:resumable: ReleaseTest(TestAsserter)>>assert:description: [ "we compile a second method with the undeclared #undeclaredStubInstVar1 to trigger the code path of removing twice in #cleanOutUndeclared" self class compile: 'methodForTest ^undeclaredStubInstVar1'. Smalltalk cleanOutUndeclared. undeclaredVariables := Undeclared associations select: [ :each | each isUndeclaredVariable ]. validExceptions := { #undeclaredStubInstVar1. #undeclaredStubInstVar2. #Gofer }. "The laste one is for Smalltalk CI and our external projects... But we should find a better solution at some point." "for now we filter by name, maybe filtering by variable would be better" remaining := undeclaredVariables reject: [ :each | validExceptions includes: each name ]. "we look for one of the using methods of the undeclared var and report that, this should be enough to fix it quickly" description := String streamContents: [ :stream | stream nextPutAll: 'Found undeclared Variables: '. remaining do: [ :variable | | method | method := variable usingMethods anyOne. stream cr nextPutAll: variable name; nextPutAll: ' in: '; print: method methodClass; nextPutAll: '>>'; print: method selector ] ]. self assert: remaining isEmpty description: description ] in ReleaseTest>>testUndeclared FullBlockClosure(BlockClosure)>>ensure: ReleaseTest>>testUndeclared ReleaseTest(TestCase)>>performTest