Skip to content

2.0.2: fix dead-starter-process check (#30, #31) and verify BW5 measures (#24) - #32

Open
alexandrev-tibco wants to merge 6 commits into
developfrom
2.0.2
Open

2.0.2: fix dead-starter-process check (#30, #31) and verify BW5 measures (#24)#32
alexandrev-tibco wants to merge 6 commits into
developfrom
2.0.2

Conversation

@alexandrev-tibco

Copy link
Copy Markdown
Collaborator

Starts the 2.0.2 development cycle and fixes the first batch of reported issues.

Changes

Verification

mvn verify green: 119 tests (3 new), 0 SpotBugs / 0 PMD / 0 Checkstyle. Dockerized integration test passes: 12 issues + BW5 measures (processes: 2, activities: 10, transitions: 12).

Refs #24, #30, #31.

Alexandre Vazquez added 3 commits July 30, 2026 13:04
The "Dead Process Check For Starter Process" rule flagged every process whose
name was absent from an application archive, regardless of its type.

- #30: skip subprocesses. Only starter (auto-starting) processes are relevant;
  subprocesses are handled by DeadProcessCheckForSubProcess.
- #31: also treat processes exported by a design-time library (projlib) as
  used by inspecting .libbuilder descriptors in addition to .archive files.

Adds tests covering a subprocess (not flagged), a genuine orphan starter
(flagged) and a starter declared in a .libbuilder (not flagged).
Assert that the BW5 metric sensor publishes its measures (processes, groups,
activities, transitions) so a regression of the "Measure value should be of
type Integer" error is caught end-to-end.
Alexandre Vazquez added 2 commits July 30, 2026 16:30
AbstractProcessCatchCheck assumed XmlHelper.firstChildElement threw
NoSuchElementException when an element was absent, but it returns null. A Catch
activity whose <config> has no <catchAll> (or <catchFault>) element therefore
aborted the entire analysis with an NPE in checkCatch/findFaultCatch.

Guard against a null configuration and null config elements, treating a missing
catchAll as "not found" instead of crashing. Adds a regression test.
Makes the SAMPLE_SRC path overridable so the dockerised integration test can be
pointed at an arbitrary BW project (e.g. to reproduce a reported issue locally),
defaulting to the bundled BW5 sample.
Add an `onlyStarterProcesses` rule property to the catch checks
(ProcessCatchAll / CustomCatch). When enabled, the rule is evaluated only on
starter (receiver) processes and subprocesses are skipped; the default (false)
preserves the previous behaviour of evaluating every process.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant