Opened 12 years ago
Closed 9 years ago
#10022 closed defect (fixed)
Do not pick up non-string literal dojo.require calls in the build system.
Reported by: | James Burke | Owned by: | Rawld Gill |
---|---|---|---|
Priority: | low | Milestone: | 1.7 |
Component: | BuildSystem | Version: | 1.3.2 |
Keywords: | needsreview | Cc: | |
Blocked By: | Blocking: |
Description
buildUtil.getDependencyList needs to change its regexp to only pick up ["']value["'] matches.
Check uses of buildUtil.masterDependencyRegExpString, buildUtilXd needs to change too.
Change History (6)
comment:1 Changed 12 years ago by
comment:2 Changed 11 years ago by
Milestone: | 1.5 → future |
---|
comment:3 Changed 9 years ago by
Owner: | changed from James Burke to Rawld Gill |
---|
Bulk update to assign BuildSystem? tickets to Rawld. Many of these are probably already fixed in 1.7.
comment:4 Changed 9 years ago by
Keywords: | needsreview added |
---|---|
Priority: | high → low |
i'd say this should be closed as wontfix
comment:5 Changed 9 years ago by
Assuming that the current build system doesn't choke on something like below, we can close this as fixed in 1.7:
var foo = "dijit/form/DateTextBox"; define([foo], function(){ ... });
(I wouldn't expect it to put dijit/form/DateTextBox into the build but at least it shouldn't crash.)
comment:6 Changed 9 years ago by
Milestone: | future → 1.7 |
---|---|
Resolution: | → fixed |
Status: | new → closed |
We're trying to get our of regex hell with build system. Also AMD gives you exactly the feature you are looking for:
// the module my/subclass define(["my/superclass"], function(super){ return dojo.declare([super], { // etc. }); });
I was hoping it would work like this:
dojo.require(clazz);
--Check to see whether clazz can be loaded.
--If so include it as a dependency in the layer
--If not just ignore it.
This would enable this:
This would avoid having to dojo.require("com.my.other.SomeOtherClass?"); at the top of the class definition as well.