From 7722ae1d713baa9c3ea268151085ba49c63ad0b4 Mon Sep 17 00:00:00 2001 From: Fiddle-Config Team Date: Tue, 25 Oct 2022 11:49:33 -0700 Subject: [PATCH] Fix a small bug in `unintern_tuples_of_literals` where we were not actually typechecking value ... PiperOrigin-RevId: 483736848 --- fiddle/experimental/transform.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/fiddle/experimental/transform.py b/fiddle/experimental/transform.py index 387a09c2..db27b7b8 100644 --- a/fiddle/experimental/transform.py +++ b/fiddle/experimental/transform.py @@ -44,10 +44,10 @@ def unintern_tuples_of_literals(buildable: AnyBuildable) -> AnyBuildable: def transform(value, state: Optional[daglish.State] = None): state = state or daglish.MemoizedTraversal.begin( transform, value, memoize_internables=False) - # pylint: disable-next=unidiomatic-typecheck # We want tuples only and not things like NamedTuples which are not - # interned by Python. - if type(tuple) is tuple and daglish.is_internable(value): + # interned by Python. So we're using type() instead of isinstance(). + # pylint: disable-next=unidiomatic-typecheck + if type(value) is tuple and daglish.is_internable(value): value = tuple(list(value)) return state.map_children(value)