Opened 7 years ago

Closed 7 years ago

#15536 closed defect (fixed)

1.7.3RC1 build profile dojo-v1x-i18n-Api: 1

Reported by: Pete Smith Owned by: Rawld Gill
Priority: low Milestone: 1.8
Component: Internationalization Version: 1.7.3rc1
Keywords: Cc: ben hockey
Blocked By: Blocking:

Description (last modified by Kenneth G. Franqueiro)

I cannot build a working version without setting this to 1. If I don't, I get:

(void 0) is not a function
[Break On This Error] 	

...--G||e(c.delegate(m[z]))};l.forEach(b,function(b){var a=D+"/"+b;j("dojo-preload-...

Change History (12)

comment:1 Changed 7 years ago by bill

Component: GeneralBuildSystem
Milestone: tbd1.7.3
Owner: set to Rawld Gill

The good thing is that it's set to 1 by default. But we do have a few build profiles the set it to 0. Do we need this in 1.7.3?

comment:2 Changed 7 years ago by ben hockey

Cc: ben hockey added

comment:3 Changed 7 years ago by Pete Smith

I got that from the amd.profile.js which i used as my base. I have a shiny new all AMD project and I wanted to establish a best practice baseline for folks.

comment:4 Changed 7 years ago by Kenneth G. Franqueiro

Description: modified (diff)
Version: 1.7.21.7.3rc1

comment:5 Changed 7 years ago by Colin Snover

Owner: changed from Rawld Gill to Pete Smith
Status: newpending

amd.profile.js does not exist in 1.7, only in 1.8. Why are you trying to set this feature? Does your build work OK otherwise if you just leave it alone?

Last edited 7 years ago by Colin Snover (previous) (diff)

comment:6 Changed 7 years ago by Colin Snover

Milestone: 1.7.31.7.4

1.7.3 has been tagged. Moving tickets to next milestone. Ticket owners, if you are not planning on addressing this issue in 1.7.x branch please do something with your ticket.

comment:6 Changed 7 years ago by Pete Smith

Status: pendingnew

csnover, my build does work with this set. I just used the amd.profile.js as a starting point for a clean AMD pure build. I am able to work fine with that set alone.

comment:7 Changed 7 years ago by bill

Oh, so this should be closed as fixed in 1.7.3? @httpete, not sure what you mean by "this set"... it seems like you mean 1.7.3rc1, but the title of this ticket is "1.7.3RC1 build profile dojo-v1x-i18n-Api: 1", which implies that it's broken in 1.7.3rc1.

comment:8 Changed 7 years ago by Pete Smith

the amd.profile.js had:

dojo-v1x-i18n-Api: 0

and broke.

I had to do

dojo-v1x-i18n-Api: 1

which worked. My expectations are, I am not using any old v1 api, so I thought it would work.

I am looking to leave all the old stuff behind. But it is ok, I can get a working build. The message is quite cryptic however.

comment:9 Changed 7 years ago by Kitson Kelly

Several people seem to coming upon this regression when doing custom builds.

I think this is more than a non trivial issue. At least from a code stability viewpoint.

comment:10 Changed 7 years ago by Rawld Gill

Component: BuildSystemInternationalization
Milestone: 1.7.41.8
Owner: changed from Pete Smith to Rawld Gill
Priority: undecidedlow
Status: newassigned

I believe the problem is that setting the has feature "dojo-v1x-i18n-Api" to false over-agressively clips the function checkForLegacyModules, which is used when the has feature "dojo-preload-i18n-Api" is enabled.

Note: it is possible that this is an incorrect diagnosis. If possible, please build with the command-line switches

--optimize 0 --layerOptimize 0

Which will remove all compression and give much better error messages. I recognize that sometimes removing compression causes the error to go away...but this too is helpful debugging information.

If I'm correct in my assumption, there are three possible solutions:

  1. Enable "dojo-v1x-i18n-Api" in the build static has switches as already mentioned.
  2. Disable "dojo-preload-i18n-Api" analogously:
    "dojo-preload-i18n-Api":0
    
  3. Set the has feature dojo-preload-i18n-Api to false in dojoConfig:
    <script>
    	var dojoConfig = {
    		has:{
    			"dojo-preload-i18n-Api":0
    		},
    //etc.
    

I'm fixing in trunk presently.

comment:11 Changed 7 years ago by Rawld Gill

Resolution: fixed
Status: assignedclosed

In [29070]:

added stub checkForLegacyModules() so builds that trim backcompat code won't choke; fixes #15536; !strict

Note: See TracTickets for help on using tickets.