This is an automated email from the ASF dual-hosted git repository.

tbonelee pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/zeppelin.git


The following commit(s) were added to refs/heads/master by this push:
     new 5a262cd76c [MINOR] Fix import-boundary consumer scan skipping 
non-consumer dependencies
5a262cd76c is described below

commit 5a262cd76c9028fadca6aad285797acda1a8486d
Author: YONGJAE LEE (이용재) <[email protected]>
AuthorDate: Sun Sep 13 19:36:55 2026 +0900

    [MINOR] Fix import-boundary consumer scan skipping non-consumer dependencies
    
    ### What is this PR for?
    Fix CI failure introduced by #5469 (already merged as 788d45aa37). Its 
`findReactNotebookConsumerViolations` scan restricted recursion to 
`consumers.has(target)`, but a consumer's own dependency (e.g. a helper file) 
is never itself added to `consumers`, so the scan stopped detecting forbidden 
transport imports reached through it. Reverts to the original unconditional 
recursion.
    
    ### What type of PR is it?
    Bug Fix
    
    ### Todos
    
    ### What is the Jira issue?
    
    ### How should this be tested?
    `npm run test:notebook-core`: the 3 previously-failing cases 
(`helper`/`javascript`/`require-outside`) now pass.
    
    ### Screenshots (if appropriate)
    N/A
    
    ### Questions:
    * Does the license files need to update? No
    * Is there breaking changes for older versions? No
    * Does this needs documentation? No
    
    
    Closes #5478 from voidmatcha/hotfix/import-boundary-consumer-scan.
    
    Signed-off-by: ChanHo Lee <[email protected]>
---
 zeppelin-web-angular/test/notebook-core/import-boundary.ts | 7 +------
 1 file changed, 1 insertion(+), 6 deletions(-)

diff --git a/zeppelin-web-angular/test/notebook-core/import-boundary.ts 
b/zeppelin-web-angular/test/notebook-core/import-boundary.ts
index e79389112e..b99b0a811a 100644
--- a/zeppelin-web-angular/test/notebook-core/import-boundary.ts
+++ b/zeppelin-web-angular/test/notebook-core/import-boundary.ts
@@ -162,12 +162,7 @@ export const findReactNotebookConsumerViolations = (
     for (const target of module.dependencies) {
       if (target === main) {
         violations.push(`${path}: notebook consumer must use the contract 
bridge instead of the public aggregator`);
-      } else if (consumers.has(target)) {
-        // Only walk further into files the upward propagation above already 
marked as
-        // consumers. Otherwise a shared route/aggregator file that imports 
both a real
-        // notebook-core consumer and an unrelated pre-existing SDK-backed 
page would drag
-        // that page's own dependency subtree into this scan, flagging its 
legitimate
-        // `@zeppelin/sdk`/`rxjs` imports as boundary violations.
+      } else {
         check(target);
       }
     }

Reply via email to