Deprecated and removed HOST_CFG and DATA_CFG global variables.

RELNOTES[INC]: Deprecated globals HOST_CFG and DATA_CFG are removed. Use strings "host" and "data" instead.

--
PiperOrigin-RevId: 144069794
MOS_MIGRATED_REVID=144069794
diff --git a/src/main/java/com/google/devtools/build/lib/packages/Attribute.java b/src/main/java/com/google/devtools/build/lib/packages/Attribute.java
index bc2a96d..12b40e4 100644
--- a/src/main/java/com/google/devtools/build/lib/packages/Attribute.java
+++ b/src/main/java/com/google/devtools/build/lib/packages/Attribute.java
@@ -29,8 +29,6 @@
 import com.google.devtools.build.lib.cmdline.Label;
 import com.google.devtools.build.lib.events.EventHandler;
 import com.google.devtools.build.lib.events.Location;
-import com.google.devtools.build.lib.skylarkinterface.SkylarkModule;
-import com.google.devtools.build.lib.skylarkinterface.SkylarkModuleCategory;
 import com.google.devtools.build.lib.syntax.ClassObject;
 import com.google.devtools.build.lib.syntax.EvalException;
 import com.google.devtools.build.lib.syntax.EvalUtils;
@@ -175,13 +173,6 @@
   /**
    * Declaration how the configuration should change when following a label or label list attribute.
    */
-  @SkylarkModule(name = "ConfigurationTransition",
-    category = SkylarkModuleCategory.NONE,
-    doc =
-      "Declares how the configuration should change when following a dependency. "
-    + "It can be either <a href=\"globals.html#DATA_CFG\">DATA_CFG</a> or "
-    + "<a href=\"globals.html#HOST_CFG\">HOST_CFG</a>. "
-    + "This type is deprecated, use string \"host\" or \"data\" instead.")
   public enum ConfigurationTransition implements Transition {
     /** No transition, i.e., the same configuration as the current. */
     NONE,
diff --git a/src/main/java/com/google/devtools/build/lib/rules/SkylarkAttr.java b/src/main/java/com/google/devtools/build/lib/rules/SkylarkAttr.java
index fe4547e..86d6542 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/SkylarkAttr.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/SkylarkAttr.java
@@ -273,13 +273,7 @@
 
     if (containsNonNoneKey(arguments, CONFIGURATION_ARG)) {
       Object trans = arguments.get(CONFIGURATION_ARG);
-      if (trans instanceof ConfigurationTransition) {
-        // TODO(laurentlb): Deprecated, to be removed in August 2016.
-        String message = "Variables HOST_CFG and DATA_CFG are deprecated in favor of strings "
-            + "\"host\" and \"data\" correspondingly";
-        env.handleEvent(Event.warn(loc, message));
-        builder.cfg((ConfigurationTransition) trans);
-      } else if (trans.equals("data")) {
+      if (trans.equals("data")) {
         builder.cfg(ConfigurationTransition.DATA);
       } else if (trans.equals("host")) {
         builder.cfg(ConfigurationTransition.HOST);
@@ -1343,3 +1337,4 @@
     SkylarkSignatureProcessor.configureSkylarkFunctions(SkylarkAttr.class);
   }
 }
+
diff --git a/src/main/java/com/google/devtools/build/lib/rules/SkylarkRuleClassFunctions.java b/src/main/java/com/google/devtools/build/lib/rules/SkylarkRuleClassFunctions.java
index 77341359..a2c6f72 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/SkylarkRuleClassFunctions.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/SkylarkRuleClassFunctions.java
@@ -47,7 +47,6 @@
 import com.google.devtools.build.lib.collect.nestedset.Order;
 import com.google.devtools.build.lib.events.Location;
 import com.google.devtools.build.lib.packages.Attribute;
-import com.google.devtools.build.lib.packages.Attribute.ConfigurationTransition;
 import com.google.devtools.build.lib.packages.AttributeMap;
 import com.google.devtools.build.lib.packages.AttributeValueSource;
 import com.google.devtools.build.lib.packages.ImplicitOutputsFunction.SkylarkImplicitOutputsFunctionWithCallback;
@@ -103,24 +102,6 @@
  */
 public class SkylarkRuleClassFunctions {
 
-  @SkylarkSignature(
-      name = "DATA_CFG",
-      returnType = ConfigurationTransition.class,
-      doc =
-          "Deprecated. Use string \"data\" instead. "
-              + "Specifies a transition to the data configuration."
-  )
-  private static final Object dataTransition = ConfigurationTransition.DATA;
-
-  @SkylarkSignature(
-      name = "HOST_CFG",
-      returnType = ConfigurationTransition.class,
-      doc =
-          "Deprecated. Use string \"host\" instead. "
-              + "Specifies a transition to the host configuration."
-  )
-  private static final Object hostTransition = ConfigurationTransition.HOST;
-
   // TODO(bazel-team): Copied from ConfiguredRuleClassProvider for the transition from built-in
   // rules to skylark extensions. Using the same instance would require a large refactoring.
   // If we don't want to support old built-in rules and Skylark simultaneously
diff --git a/src/test/java/com/google/devtools/build/lib/skylark/SkylarkIntegrationTest.java b/src/test/java/com/google/devtools/build/lib/skylark/SkylarkIntegrationTest.java
index e32fe2e..47905d5 100644
--- a/src/test/java/com/google/devtools/build/lib/skylark/SkylarkIntegrationTest.java
+++ b/src/test/java/com/google/devtools/build/lib/skylark/SkylarkIntegrationTest.java
@@ -489,7 +489,7 @@
         "  return struct(runfiles = rf)",
         "",
         "custom_rule = rule(implementation = custom_rule_impl, executable = True,",
-        "  attrs = {'data': attr.label_list(cfg=DATA_CFG, allow_files=True)})");
+        "  attrs = {'data': attr.label_list(cfg='data', allow_files=True)})");
 
     scratch.file(
         "test/skylark/BUILD",
diff --git a/src/test/java/com/google/devtools/build/lib/skylark/SkylarkRuleClassFunctionsTest.java b/src/test/java/com/google/devtools/build/lib/skylark/SkylarkRuleClassFunctionsTest.java
index 682d987..8c6df5b 100644
--- a/src/test/java/com/google/devtools/build/lib/skylark/SkylarkRuleClassFunctionsTest.java
+++ b/src/test/java/com/google/devtools/build/lib/skylark/SkylarkRuleClassFunctionsTest.java
@@ -683,8 +683,8 @@
   public void testTextMessageInvalidStructure() throws Exception {
     checkErrorContains(
         "Invalid text format, expected a struct, a string, a bool, or an int "
-            + "but got a ConfigurationTransition for struct field 'a'",
-        "struct(a=DATA_CFG).to_proto()");
+            + "but got a function for struct field 'a'",
+        "struct(a=rule).to_proto()");
   }
 
   private void checkJson(String from, String expected) throws Exception {
@@ -730,8 +730,8 @@
   public void testJsonInvalidStructure() throws Exception {
     checkErrorContains(
         "Invalid text format, expected a struct, a string, a bool, or an int but got a "
-            + "ConfigurationTransition for struct field 'a'",
-        "struct(a=DATA_CFG).to_json()");
+            + "function for struct field 'a'",
+        "struct(a=rule).to_json()");
   }
 
   @Test