Opened 11 years ago

Closed 11 years ago

#7119 closed defect (fixed)

Expand customBase builds to inject dojo._base dependencies

Reported by: James Burke Owned by: James Burke
Priority: high Milestone: 1.2
Component: BuildSystem Version: 1.1.1
Keywords: Cc:
Blocked By: Blocking:

Description

The customBase: true property on a build layer named "dojo.js" allows you to modify what dojo._base modules you want to include in dojo.js.

This can be error prone, since some of your modules/other dojo modules assume all of the dojo._base modules are loaded and available.

Change the build process so if customBase is specified, inject dojo.require("dojo._base.???") dependencies in modules that appear to be accessing dojo._base methods.

Note that this will be slightly error prone since it will be using regexps to find matches. However, the errors should be on the side of putting in too many dojo.requires for base modules than leaving them out.

This ticket grew out of ticket #7040, and some development notes on this customBase behavior change can be found in that ticket.

Change History (1)

comment:1 Changed 11 years ago by James Burke

Resolution: fixed
Status: newclosed

(In [14292]) Fixes #7119: customBase now injects dojo._base dependencies. Includes standardCustomBase build profile that can generate the smallest possible dojo.js needed for dojo to work. dojo.js with that profile ends up at 13,690 bytes shrinksafed, 5,558 bytes gzipped. dojo.xd.js is 25,387 bytes shrinksafed, 9,101 bytes gzipped. Required a modification to dojo.i18n to trick the customBase regexps to get that dojo.xd.js size. \!strict.

Note: See TracTickets for help on using tickets.