diff --git a/.trufflehogignore b/.trufflehogignore new file mode 100644 index 000000000..b679f0f1c --- /dev/null +++ b/.trufflehogignore @@ -0,0 +1,2 @@ +larky/src/main/java/com/verygood/security/larky/modules/openssl/SSLUtils.java +larky/src/test/ \ No newline at end of file diff --git a/larky/src/main/java/com/verygood/security/larky/objects/type/LarkyBaseObjectType.java b/larky/src/main/java/com/verygood/security/larky/objects/type/LarkyBaseObjectType.java index dadfbf995..252ac24fb 100644 --- a/larky/src/main/java/com/verygood/security/larky/objects/type/LarkyBaseObjectType.java +++ b/larky/src/main/java/com/verygood/security/larky/objects/type/LarkyBaseObjectType.java @@ -2,18 +2,17 @@ import com.google.common.collect.ImmutableCollection; import com.google.common.collect.ImmutableSet; +import com.google.common.collect.MapMaker; import com.google.common.collect.Maps; import com.google.common.collect.Sets; -import java.util.HashSet; +import com.verygood.security.larky.modules.types.PyProtocols; +import com.verygood.security.larky.objects.LarkyPyObject; +import com.verygood.security.larky.objects.PyObject; +import java.util.Collections; import java.util.List; import java.util.Map; import java.util.Set; import java.util.stream.Stream; - -import com.verygood.security.larky.modules.types.PyProtocols; -import com.verygood.security.larky.objects.LarkyPyObject; -import com.verygood.security.larky.objects.PyObject; - import net.starlark.java.eval.Dict; import net.starlark.java.eval.EvalException; import net.starlark.java.eval.Starlark; @@ -21,7 +20,6 @@ import net.starlark.java.eval.StarlarkThread; import net.starlark.java.eval.Tuple; import net.starlark.java.syntax.TokenKind; - import org.jetbrains.annotations.Nullable; @@ -45,7 +43,9 @@ final public class LarkyBaseObjectType SpecialMethod.dunder_gt, SpecialMethod.dunder_ge ); - private final Set allSubclasses = new HashSet<>(); + private final Set allSubclasses = Collections.synchronizedSet(Collections.newSetFromMap( + new MapMaker().weakKeys().makeMap())); + private final Map __dict__; private final LarkyType type;