Opened 8 years ago

Closed 8 years ago

#13026 closed enhancement (fixed)

version 1.7 build system does not process requireIf and platformRequire

Reported by: Rawld Gill Owned by: Rawld Gill
Priority: high Milestone: 1.7
Component: BuildSystem Version: 1.6.1
Keywords: Cc:
Blocked By: Blocking:

Description

The new build system does not load dojo to trace dependencies; therefore, a "runtime environment" is not available to compute requireifs/platformRequires. This was always a little suspect because there was no way of guaranteeing the build environment===the target build environment.

Need to add feature to provide a specific environment to compute requireifs/platformRequires during build.

Change History (4)

comment:1 Changed 8 years ago by bill

Component: GeneralBuildSystem

comment:2 Changed 8 years ago by Rawld Gill

Status: newassigned

comment:3 Changed 8 years ago by Rawld Gill

The v1.7 build app will process the following kinds of sync loader applications:

dojo.provide("some.module.name");
dojo.require("some.module.name");
dojo.requireLocalization("some.module.name", "bundleName");
dojo.platformRequire({/* module map */);

Note:

  • the arg to dojo.provide/require must be a single, quoted string
  • the args to dojo.requireLocalization must be a pair of quoted strings
  • the arg to platformRequire must be a module map evaluable by the build app; the object should not contain any executable code--just a static object with a set of properties that are arrays of string literals. The build variable "platform" is used to select the platform. For example, to indicate a build for the browser platform include platform=browser on the command line or in the profile.

dojo.requireIf and dojo.requireAfterIf are not supported.

comment:4 Changed 8 years ago by Rawld Gill

Resolution: fixed
Status: assignedclosed

(In [25379]) added dojo.platformRequire support; improved dojo.require/provide processing; fixes #13026; !strict

Note: See TracTickets for help on using tickets.