diff options
author | 2017-10-23 19:02:31 +0200 | |
---|---|---|
committer | 2017-10-24 10:39:30 +0200 | |
commit | dbff8b81bec72dd0f8a2fef825128e5f33c650d0 (patch) | |
tree | 68ba03941dfb5647a567848252b9f98033395b54 /src/main/java/com/google/devtools/build/lib/skyframe/WorkspaceFileFunction.java | |
parent | e287d4bf333e412033c8f484018cc431100eeee6 (diff) |
Propagate skylark flags to WORKSPACE and repo rules
RELNOTES: Skylark semantics flags now affect WORKSPACE files and repository rules.
PiperOrigin-RevId: 173130286
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/skyframe/WorkspaceFileFunction.java')
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/skyframe/WorkspaceFileFunction.java | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/WorkspaceFileFunction.java b/src/main/java/com/google/devtools/build/lib/skyframe/WorkspaceFileFunction.java index 71f2c98ff6..3f0f3f8ec2 100644 --- a/src/main/java/com/google/devtools/build/lib/skyframe/WorkspaceFileFunction.java +++ b/src/main/java/com/google/devtools/build/lib/skyframe/WorkspaceFileFunction.java @@ -27,6 +27,7 @@ import com.google.devtools.build.lib.skyframe.WorkspaceFileValue.WorkspaceFileKe import com.google.devtools.build.lib.syntax.BuildFileAST; import com.google.devtools.build.lib.syntax.Environment.Extension; import com.google.devtools.build.lib.syntax.Mutability; +import com.google.devtools.build.lib.syntax.SkylarkSemantics; import com.google.devtools.build.lib.vfs.Path; import com.google.devtools.build.lib.vfs.RootedPath; import com.google.devtools.build.skyframe.SkyFunction; @@ -66,6 +67,10 @@ public class WorkspaceFileFunction implements SkyFunction { if (workspaceASTValue == null) { return null; } + SkylarkSemantics skylarkSemantics = PrecomputedValue.SKYLARK_SEMANTICS.get(env); + if (skylarkSemantics == null) { + return null; + } Path repoWorkspace = workspaceRoot.getRoot().getRelative(workspaceRoot.getRelativePath()); Package.Builder builder = packageFactory.newExternalPackageBuilder( @@ -112,7 +117,7 @@ public class WorkspaceFileFunction implements SkyFunction { if (importResult == null) { return null; } - parser.execute(ast, importResult.importMap); + parser.execute(ast, importResult.importMap, skylarkSemantics); } catch (NoSuchPackageException e) { throw new WorkspaceFileFunctionException(e, Transience.PERSISTENT); } catch (NameConflictException e) { |