diff --git a/bundle/src/main/java/dev/cel/bundle/CelFactory.java b/bundle/src/main/java/dev/cel/bundle/CelFactory.java index a2080bc25..6cc6d8192 100644 --- a/bundle/src/main/java/dev/cel/bundle/CelFactory.java +++ b/bundle/src/main/java/dev/cel/bundle/CelFactory.java @@ -40,6 +40,7 @@ public static CelBuilder standardCelBuilder() { CelParserImpl.newBuilder(), CelCheckerLegacyImpl.newBuilder()), CelRuntimeLegacyImpl.newBuilder()) .setOptions(CelOptions.current().build()) + // CEL-Internal-2 .setStandardEnvironmentEnabled(true); } diff --git a/bundle/src/test/java/dev/cel/bundle/CelImplTest.java b/bundle/src/test/java/dev/cel/bundle/CelImplTest.java index 00b47494d..13c3392d3 100644 --- a/bundle/src/test/java/dev/cel/bundle/CelImplTest.java +++ b/bundle/src/test/java/dev/cel/bundle/CelImplTest.java @@ -372,6 +372,7 @@ public void program_setTypeFactoryOnAnyPackedMessage_fieldSelectionSuccess() thr CelAbstractSyntaxTree ast = celCompiler.compile("input.expression").getAst(); CelRuntime celRuntime = CelRuntimeFactory.standardCelRuntimeBuilder() + // CEL-Internal-2 .setTypeFactory( (typeName) -> typeName.equals("google.type.Expr") ? com.google.type.Expr.newBuilder() : null) @@ -401,6 +402,7 @@ public void program_setTypeFactoryOnAnyPackedMessage_messageConstructionSucceeds CelRuntime celRuntime = CelRuntimeFactory.standardCelRuntimeBuilder() + // CEL-Internal-2 .setTypeFactory( (typeName) -> typeName.equals("google.type.Expr") ? com.google.type.Expr.newBuilder() : null) @@ -832,6 +834,7 @@ public void program_duplicateTypeDescriptor() throws Exception { public void program_hermeticDescriptors_wellKnownProtobuf() throws Exception { Cel cel = standardCelBuilderWithMacros() + // CEL-Internal-2 .addMessageTypes(Timestamp.getDescriptor()) .setContainer(CelContainer.ofName("google")) .setResultType(SimpleType.TIMESTAMP) @@ -914,6 +917,7 @@ public void program_deepTypeResolutionEnabledForRuntime_success() throws Excepti CelRuntimeFactory.standardCelRuntimeBuilder() .addFileTypes(CheckedExpr.getDescriptor().getFile()) .setOptions(CelOptions.current().resolveTypeDependencies(true).build()) + // CEL-Internal-2 .build(); CelRuntime.Program program = celRuntime.createProgram(ast); @@ -942,6 +946,7 @@ public void program_deepTypeResolutionDisabledForRuntime_fails() throws Exceptio CelRuntimeFactory.standardCelRuntimeBuilder() .addFileTypes(CheckedExpr.getDescriptor().getFile()) .setOptions(CelOptions.current().resolveTypeDependencies(false).build()) + // CEL-Internal-2 .build(); CelRuntime.Program program = celRuntime.createProgram(ast); @@ -2154,6 +2159,7 @@ public void program_fdsContainsWktDependency_descriptorInstancesMatch() throws E Cel cel = standardCelBuilderWithMacros() .addMessageTypes(descriptors) + // CEL-Internal-2 .setOptions(CelOptions.current().enableTimestampEpoch(true).build()) .setContainer(CelContainer.ofName("cel.expr.conformance.proto3")) .build(); diff --git a/extensions/src/test/java/dev/cel/extensions/CelProtoExtensionsTest.java b/extensions/src/test/java/dev/cel/extensions/CelProtoExtensionsTest.java index f9ec584aa..15f6df5be 100644 --- a/extensions/src/test/java/dev/cel/extensions/CelProtoExtensionsTest.java +++ b/extensions/src/test/java/dev/cel/extensions/CelProtoExtensionsTest.java @@ -295,6 +295,7 @@ public void getExt_onAnyPackedExtensionField_success() throws Exception { TestAllTypesExtensions.registerAllExtensions(extensionRegistry); Cel cel = CelFactory.standardCelBuilder() + // CEL-Internal-2 .addCompilerLibraries(CelExtensions.protos()) .addFileTypes(TestAllTypesExtensions.getDescriptor()) .setExtensionRegistry(extensionRegistry) diff --git a/protobuf/src/main/java/dev/cel/protobuf/JavaFileGenerator.java b/protobuf/src/main/java/dev/cel/protobuf/JavaFileGenerator.java index be1e07cc2..0eb177a96 100644 --- a/protobuf/src/main/java/dev/cel/protobuf/JavaFileGenerator.java +++ b/protobuf/src/main/java/dev/cel/protobuf/JavaFileGenerator.java @@ -20,7 +20,7 @@ import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableMap; import com.google.common.io.ByteStreams; -// CEL-Internal-5 +// CEL-Internal-3 import freemarker.template.Configuration; import freemarker.template.DefaultObjectWrapperBuilder; import freemarker.template.Template; diff --git a/runtime/src/main/java/dev/cel/runtime/CelRuntimeFactory.java b/runtime/src/main/java/dev/cel/runtime/CelRuntimeFactory.java index e19f9d765..322985b22 100644 --- a/runtime/src/main/java/dev/cel/runtime/CelRuntimeFactory.java +++ b/runtime/src/main/java/dev/cel/runtime/CelRuntimeFactory.java @@ -28,6 +28,7 @@ public final class CelRuntimeFactory { public static CelRuntimeBuilder standardCelRuntimeBuilder() { return CelRuntimeLegacyImpl.newBuilder() .setOptions(CelOptions.current().build()) + // CEL-Internal-2 .setStandardEnvironmentEnabled(true); } diff --git a/runtime/src/main/java/dev/cel/runtime/CelRuntimeLegacyImpl.java b/runtime/src/main/java/dev/cel/runtime/CelRuntimeLegacyImpl.java index 15591e680..983f68055 100644 --- a/runtime/src/main/java/dev/cel/runtime/CelRuntimeLegacyImpl.java +++ b/runtime/src/main/java/dev/cel/runtime/CelRuntimeLegacyImpl.java @@ -38,7 +38,7 @@ import dev.cel.common.internal.DefaultDescriptorPool; import dev.cel.common.internal.DefaultMessageFactory; import dev.cel.common.internal.DynamicProto; -// CEL-Internal-3 +// CEL-Internal-1 import dev.cel.common.internal.ProtoMessageFactory; import dev.cel.common.types.CelTypes; import dev.cel.common.values.CelValueProvider; @@ -97,6 +97,7 @@ public CelRuntimeBuilder toRuntimeBuilder() { CelRuntimeBuilder builder = new Builder() .setOptions(options) + // CEL-Internal-2 .setStandardEnvironmentEnabled(standardEnvironmentEnabled) .setExtensionRegistry(extensionRegistry) .addFileTypes(fileDescriptors) @@ -366,7 +367,8 @@ private ImmutableSet newStandardFunctionBindings( break; default: if (!options.enableHeterogeneousNumericComparisons()) { - return !CelStandardFunctions.isHeterogeneousComparison(standardOverload); + return !CelStandardFunctions.isHeterogeneousComparison( + standardOverload); } break; } diff --git a/runtime/src/test/java/dev/cel/runtime/CelRuntimeTest.java b/runtime/src/test/java/dev/cel/runtime/CelRuntimeTest.java index 7d7243384..c7f142602 100644 --- a/runtime/src/test/java/dev/cel/runtime/CelRuntimeTest.java +++ b/runtime/src/test/java/dev/cel/runtime/CelRuntimeTest.java @@ -171,6 +171,7 @@ public void newWellKnownTypeMessage_withDifferentDescriptorInstance() throws Exc .build(); CelRuntime celRuntime = CelRuntimeFactory.standardCelRuntimeBuilder() + // CEL-Internal-2 .addFileTypes( FileDescriptorSet.newBuilder() .addFile( @@ -192,6 +193,7 @@ public void newWellKnownTypeMessage_inDynamicMessage_withSetTypeFactory() throws .build(); CelRuntime celRuntime = CelRuntimeFactory.standardCelRuntimeBuilder() + // CEL-Internal-2 .setTypeFactory( (typeName) -> typeName.equals("google.protobuf.BoolValue") @@ -218,6 +220,8 @@ public void newWellKnownTypeMessage_inAnyMessage_withDifferentDescriptorInstance CelCompilerFactory.standardCelCompilerBuilder().addFileTypes(fds).build(); CelRuntime celRuntime = CelRuntimeFactory.standardCelRuntimeBuilder() + // CEL-Internal-2 + .addFileTypes(fds) .build(); CelAbstractSyntaxTree ast = @@ -241,6 +245,8 @@ public void newWellKnownTypeMessage_inAnyMessage_withSetTypeFactory() throws Exc CelCompilerFactory.standardCelCompilerBuilder().addFileTypes(fds).build(); CelRuntime celRuntime = CelRuntimeFactory.standardCelRuntimeBuilder() + // CEL-Internal-2 + .addFileTypes(fds) .setTypeFactory( (typeName) -> typeName.equals("google.protobuf.Any") diff --git a/runtime/src/test/java/dev/cel/runtime/DescriptorMessageProviderTest.java b/runtime/src/test/java/dev/cel/runtime/DescriptorMessageProviderTest.java index 6ab1638b1..02c8f2b51 100644 --- a/runtime/src/test/java/dev/cel/runtime/DescriptorMessageProviderTest.java +++ b/runtime/src/test/java/dev/cel/runtime/DescriptorMessageProviderTest.java @@ -35,7 +35,7 @@ import dev.cel.common.internal.CelDescriptorPool; import dev.cel.common.internal.DefaultDescriptorPool; import dev.cel.common.internal.DefaultMessageFactory; -// CEL-Internal-3 +// CEL-Internal-1 import dev.cel.common.internal.ProtoMessageFactory; import dev.cel.common.internal.WellKnownProto; import dev.cel.expr.conformance.proto2.TestAllTypes;