Opened 6 years ago

Closed 6 years ago

#16706 closed defect (wontfix)

dojo web builder does not analyze - no visible errors returned

Reported by: kkasravi Owned by: James Thomas
Priority: undecided Milestone: tbd
Component: WebBuilder Version: 1.8.3
Keywords: Cc:
Blocked By: Blocking:

Description

I've tried the web builder on two different sites with no results. These sites are: http://dv10.freegigs.net/git/kam/CloudSt/panel.html http://dojorama.org Steps to reproduce:

  1. Go to http://build.dojotoolkit.org/ and select the Auto-analyze option
  2. Enter either url above in the input field
  3. Select analyze

Using the first URL, Analyze returns with no visible errors. Using the second URL, Analyze complains but with no specific details.

Change History (2)

comment:1 Changed 6 years ago by bill

Component: GeneralWebBuilder
Owner: set to James Thomas

comment:2 Changed 6 years ago by James Thomas

Resolution: wontfix
Status: newclosed

I've investigated the issues with both the sites and found separate issues.

For http://dv10.freegigs.net/git/kam/CloudSt/panel.html the configuration flags for Dojo are wrapped within an IIFE http://benalman.com/news/2010/11/immediately-invoked-function-expression/. The backend uses static analysis to discover configuration values, parsing through the AST nodes generated for a JavaScript? source file. When it encounters this configuration, because it assigns a non-object literal, the parser cannot handle this case and fails. We cannot therefore read the configuration which signals this application is an AMD application, async, and default to look for old style Dojo module calls. Therefore, missing the "require" call later on.

For the second site, it's already using a built version of the Dojo toolkit rather than a source version. This makes analysing for source modules difficult.

We've tried to make auto-analysis work with lots of applications and scenarios but there's a limit to how far we can take static analysis. I'm afraid there's no fix available to work with these sites as the application currently stands.

Note: See TracTickets for help on using tickets.