From 988a4973606365b377106c06a7919eb65803f424 Mon Sep 17 00:00:00 2001 From: pvl-bot Date: Sat, 27 Jul 2024 17:50:10 -0400 Subject: [PATCH] Add TID252, bans relative imports except siblings --- infinigen/assets/materials/art.py | 4 ++-- infinigen/assets/materials/fabrics/fabric_random.py | 4 ++-- infinigen/assets/materials/hardwood_floor.py | 4 ++-- infinigen/assets/materials/metal/__init__.py | 4 ++-- infinigen/assets/materials/tile.py | 9 +++++---- infinigen/assets/materials/woods/crossed_wood_tile.py | 3 ++- infinigen/assets/materials/woods/hexagon_wood_tile.py | 3 ++- infinigen/assets/materials/woods/non_wood_tile.py | 3 ++- infinigen/assets/materials/woods/square_wood_tile.py | 3 ++- .../assets/materials/woods/staggered_wood_tile.py | 3 ++- infinigen/assets/materials/woods/wood.py | 3 +-- infinigen/assets/objects/seating/bed.py | 10 +++++----- infinigen/assets/scatters/ground_twigs.py | 2 +- .../core/constraints/example_solver/moves/pose.py | 2 +- .../constraints/example_solver/moves/reassignment.py | 2 +- infinigen/core/constraints/reasoning/expr_equal.py | 2 +- infinigen/core/nodes/node_transpiler/__init__.py | 0 infinigen/core/nodes/node_transpiler/transpiler.py | 2 +- infinigen/core/placement/factory.py | 2 +- infinigen/tools/ground_truth/__init__.py | 0 infinigen/tools/ground_truth/bounding_boxes_3d.py | 4 ++-- infinigen/tools/ground_truth/depth_to_normals.py | 2 +- infinigen/tools/ground_truth/optical_flow_warp.py | 2 +- infinigen/tools/ground_truth/rigid_warp.py | 2 +- infinigen/tools/ground_truth/segmentation_lookup.py | 4 ++-- pyproject.toml | 3 ++- 26 files changed, 44 insertions(+), 38 deletions(-) create mode 100644 infinigen/core/nodes/node_transpiler/__init__.py create mode 100644 infinigen/tools/ground_truth/__init__.py diff --git a/infinigen/assets/materials/art.py b/infinigen/assets/materials/art.py index 0c07818ec..d03d90d11 100644 --- a/infinigen/assets/materials/art.py +++ b/infinigen/assets/materials/art.py @@ -6,12 +6,12 @@ from numpy.random import uniform from infinigen.assets.materials.fabrics.fabric_random import fabric_shader_list +from infinigen.assets.utils.decorate import read_uv, write_uv +from infinigen.core.nodes import Nodes, NodeWrangler from infinigen.core.util.math import FixedSeed from infinigen.core.util.random import log_uniform from infinigen.core.util.random import random_general as rg -from ...core.nodes import Nodes, NodeWrangler -from ..utils.decorate import read_uv, write_uv from . import rug, text diff --git a/infinigen/assets/materials/fabrics/fabric_random.py b/infinigen/assets/materials/fabrics/fabric_random.py index 80e6fea77..8dea8b2f6 100644 --- a/infinigen/assets/materials/fabrics/fabric_random.py +++ b/infinigen/assets/materials/fabrics/fabric_random.py @@ -3,10 +3,10 @@ # This source code is licensed under the BSD 3-Clause license found in the LICENSE file in the root directory # of this source tree. +from infinigen.assets.materials import common +from infinigen.assets.utils.uv import unwrap_faces from infinigen.core.util.random import random_general as rg -from ...utils.uv import unwrap_faces -from .. import common from .coarse_knit_fabric import shader_coarse_knit_fabric from .fine_knit_fabric import shader_fine_knit_fabric from .leather import shader_leather diff --git a/infinigen/assets/materials/hardwood_floor.py b/infinigen/assets/materials/hardwood_floor.py index 4ea30601f..cfb9a585b 100644 --- a/infinigen/assets/materials/hardwood_floor.py +++ b/infinigen/assets/materials/hardwood_floor.py @@ -6,9 +6,9 @@ from numpy.random import uniform from infinigen.assets.utils.object import new_plane +from infinigen.core.nodes import Nodes, NodeWrangler +from infinigen.core.util.random import log_uniform -from ...core.nodes import Nodes, NodeWrangler -from ...core.util.random import log_uniform from . import common from .table_materials import shader_wood from .utils.surface_utils import perturb_coordinates diff --git a/infinigen/assets/materials/metal/__init__.py b/infinigen/assets/materials/metal/__init__.py index 1ae37c913..3f6fd35ed 100644 --- a/infinigen/assets/materials/metal/__init__.py +++ b/infinigen/assets/materials/metal/__init__.py @@ -7,12 +7,12 @@ import numpy as np from numpy.random import uniform +from infinigen.assets.materials import common +from infinigen.assets.materials.bark_random import hex_to_rgb from infinigen.core.util.color import hsv2rgba, rgb2hsv from infinigen.core.util.random import log_uniform from infinigen.core.util.random import random_general as rg -from .. import common -from ..bark_random import hex_to_rgb from . import ( brushed_metal, galvanized_metal, diff --git a/infinigen/assets/materials/tile.py b/infinigen/assets/materials/tile.py index f8a1a46c7..957164211 100644 --- a/infinigen/assets/materials/tile.py +++ b/infinigen/assets/materials/tile.py @@ -9,10 +9,11 @@ import numpy as np from numpy.random import uniform -from ...core.nodes import Nodes, NodeWrangler -from ...core.util.math import FixedSeed -from ...core.util.random import log_uniform -from ..utils.object import new_cube +from infinigen.assets.utils.object import new_cube +from infinigen.core.nodes import Nodes, NodeWrangler +from infinigen.core.util.math import FixedSeed +from infinigen.core.util.random import log_uniform + from . import ceramic, common from .utils.surface_utils import perturb_coordinates diff --git a/infinigen/assets/materials/woods/crossed_wood_tile.py b/infinigen/assets/materials/woods/crossed_wood_tile.py index 49ff4baad..b70b1638a 100644 --- a/infinigen/assets/materials/woods/crossed_wood_tile.py +++ b/infinigen/assets/materials/woods/crossed_wood_tile.py @@ -3,7 +3,8 @@ # Authors: Lingjie Mei -from .. import tile +from infinigen.assets.materials import tile + from .wood import shader_wood diff --git a/infinigen/assets/materials/woods/hexagon_wood_tile.py b/infinigen/assets/materials/woods/hexagon_wood_tile.py index 7ce3652c1..e72fce125 100644 --- a/infinigen/assets/materials/woods/hexagon_wood_tile.py +++ b/infinigen/assets/materials/woods/hexagon_wood_tile.py @@ -3,7 +3,8 @@ # Authors: Lingjie Mei -from .. import tile +from infinigen.assets.materials import tile + from .wood import shader_wood diff --git a/infinigen/assets/materials/woods/non_wood_tile.py b/infinigen/assets/materials/woods/non_wood_tile.py index bebca3a77..633b9f288 100644 --- a/infinigen/assets/materials/woods/non_wood_tile.py +++ b/infinigen/assets/materials/woods/non_wood_tile.py @@ -15,7 +15,8 @@ def apply( shape=None, **kwargs, ): - from .. import tile + from infinigen.assets.materials import tile + from .wood import shader_wood shader_funcs = tile.get_shader_funcs() diff --git a/infinigen/assets/materials/woods/square_wood_tile.py b/infinigen/assets/materials/woods/square_wood_tile.py index c846e4121..ef1fdffca 100644 --- a/infinigen/assets/materials/woods/square_wood_tile.py +++ b/infinigen/assets/materials/woods/square_wood_tile.py @@ -3,7 +3,8 @@ # Authors: Lingjie Mei -from .. import tile +from infinigen.assets.materials import tile + from .wood import shader_wood diff --git a/infinigen/assets/materials/woods/staggered_wood_tile.py b/infinigen/assets/materials/woods/staggered_wood_tile.py index 1f2066e72..268e070bd 100644 --- a/infinigen/assets/materials/woods/staggered_wood_tile.py +++ b/infinigen/assets/materials/woods/staggered_wood_tile.py @@ -3,7 +3,8 @@ # Authors: Lingjie Mei -from .. import tile +from infinigen.assets.materials import tile + from .wood import shader_wood diff --git a/infinigen/assets/materials/woods/wood.py b/infinigen/assets/materials/woods/wood.py index f9edbace3..60cbe405c 100644 --- a/infinigen/assets/materials/woods/wood.py +++ b/infinigen/assets/materials/woods/wood.py @@ -8,12 +8,11 @@ from numpy.random import uniform from infinigen.assets.materials import common +from infinigen.assets.utils.object import new_cube from infinigen.core.nodes import Nodes, NodeWrangler from infinigen.core.util.color import hsv2rgba, rgb2hsv from infinigen.core.util.random import log_uniform -from ...utils.object import new_cube - def get_color(): from infinigen.assets.materials.bark_random import get_random_bark_params diff --git a/infinigen/assets/objects/seating/bed.py b/infinigen/assets/objects/seating/bed.py index 3f2ac8bfe..6742f612b 100644 --- a/infinigen/assets/objects/seating/bed.py +++ b/infinigen/assets/objects/seating/bed.py @@ -45,7 +45,7 @@ def mattress_factory(self): @cached_property def quilt_factory(self): - from ..clothes.blanket import BlanketFactory + from infinigen.assets.objects.clothes.blanket import BlanketFactory factory = BlanketFactory(self.factory_seed, self.coarse) factory.width = self.mattress_factory.width * uniform(1.4, 1.6) @@ -54,7 +54,7 @@ def quilt_factory(self): @cached_property def comforter_factory(self): - from ..clothes.blanket import ComforterFactory + from infinigen.assets.objects.clothes.blanket import ComforterFactory factory = ComforterFactory(self.factory_seed, self.coarse) factory.width = self.mattress_factory.width * uniform(1.4, 1.8) @@ -63,7 +63,7 @@ def comforter_factory(self): @cached_property def box_comforter_factory(self): - from ..clothes.blanket import BoxComforterFactory + from infinigen.assets.objects.clothes.blanket import BoxComforterFactory factory = BoxComforterFactory(self.factory_seed, self.coarse) factory.width = self.mattress_factory.width * uniform(1.4, 1.8) @@ -72,7 +72,7 @@ def box_comforter_factory(self): @cached_property def cover_factory(self): - from ..clothes.blanket import BlanketFactory + from infinigen.assets.objects.clothes.blanket import BlanketFactory factory = BlanketFactory(self.factory_seed, self.coarse) factory.width = self.mattress_factory.width * uniform(1.6, 1.8) @@ -81,7 +81,7 @@ def cover_factory(self): @cached_property def towel_factory(self): - from ..clothes import TowelFactory + from infinigen.assets.objects.clothes import TowelFactory return TowelFactory(self.factory_seed) diff --git a/infinigen/assets/scatters/ground_twigs.py b/infinigen/assets/scatters/ground_twigs.py index d454c8c27..c8229c8fe 100644 --- a/infinigen/assets/scatters/ground_twigs.py +++ b/infinigen/assets/scatters/ground_twigs.py @@ -8,10 +8,10 @@ from numpy.random import uniform as U from infinigen.assets.objects.trees.generate import make_twig_collection, random_species +from infinigen.assets.utils.misc import toggle_hide, toggle_show from infinigen.core import surface from infinigen.core.placement.instance_scatter import scatter_instances -from ..utils.misc import toggle_hide, toggle_show from .chopped_trees import approx_settle_transform diff --git a/infinigen/core/constraints/example_solver/moves/pose.py b/infinigen/core/constraints/example_solver/moves/pose.py index 057a4c5af..aca0f727b 100644 --- a/infinigen/core/constraints/example_solver/moves/pose.py +++ b/infinigen/core/constraints/example_solver/moves/pose.py @@ -9,10 +9,10 @@ import numpy as np +from example_solver.state_def import State from infinigen.core.constraints.constraint_language import util as iu from infinigen.core.constraints.example_solver.geometry import dof, validity -from ..state_def import State from . import moves from .reassignment import pose_backup, restore_pose_backup diff --git a/infinigen/core/constraints/example_solver/moves/reassignment.py b/infinigen/core/constraints/example_solver/moves/reassignment.py index 5b5c8be59..ab4fdd52d 100644 --- a/infinigen/core/constraints/example_solver/moves/reassignment.py +++ b/infinigen/core/constraints/example_solver/moves/reassignment.py @@ -9,10 +9,10 @@ import copy from dataclasses import dataclass +from example_solver.state_def import ObjectState, State from infinigen.core.constraints.constraint_language.util import sync_trimesh from infinigen.core.constraints.example_solver.geometry import dof -from ..state_def import ObjectState, State from . import moves diff --git a/infinigen/core/constraints/reasoning/expr_equal.py b/infinigen/core/constraints/reasoning/expr_equal.py index e389304dd..7dcb5a873 100644 --- a/infinigen/core/constraints/reasoning/expr_equal.py +++ b/infinigen/core/constraints/reasoning/expr_equal.py @@ -6,7 +6,7 @@ import dataclasses -from ..constraint_language.types import Node +from infinigen.core.constraints.constraint_language.types import Node @dataclasses.dataclass diff --git a/infinigen/core/nodes/node_transpiler/__init__.py b/infinigen/core/nodes/node_transpiler/__init__.py new file mode 100644 index 000000000..e69de29bb diff --git a/infinigen/core/nodes/node_transpiler/transpiler.py b/infinigen/core/nodes/node_transpiler/transpiler.py index d8b1ca42b..80b23f9e7 100644 --- a/infinigen/core/nodes/node_transpiler/transpiler.py +++ b/infinigen/core/nodes/node_transpiler/transpiler.py @@ -16,7 +16,7 @@ import mathutils import numpy as np -from ..node_info import OUTPUT_NODE_IDS, SINGLETON_NODES, Nodes +from infinigen.core.nodes.node_info import OUTPUT_NODE_IDS, SINGLETON_NODES, Nodes logger = logging.getLogger(__name__) diff --git a/infinigen/core/placement/factory.py b/infinigen/core/placement/factory.py index f02f142a5..1aeaa64ed 100644 --- a/infinigen/core/placement/factory.py +++ b/infinigen/core/placement/factory.py @@ -14,10 +14,10 @@ import numpy as np from tqdm import trange +from infinigen.assets.utils.object import center from infinigen.core.util import blender as butil from infinigen.core.util.math import FixedSeed, int_hash -from ...assets.utils.object import center from . import detail logger = logging.getLogger(__name__) diff --git a/infinigen/tools/ground_truth/__init__.py b/infinigen/tools/ground_truth/__init__.py new file mode 100644 index 000000000..e69de29bb diff --git a/infinigen/tools/ground_truth/bounding_boxes_3d.py b/infinigen/tools/ground_truth/bounding_boxes_3d.py index 869e3517b..e3dbe329a 100644 --- a/infinigen/tools/ground_truth/bounding_boxes_3d.py +++ b/infinigen/tools/ground_truth/bounding_boxes_3d.py @@ -22,8 +22,8 @@ "GT visualization requires `einops`. Please install optional extras via `pip install .[vis]`." ) -from ..compress_masks import recover -from ..dataset_loader import get_frame_path +from infinigen.tools.compress_masks import recover +from infinigen.tools.dataset_loader import get_frame_path """ Usage: python -m tools.ground_truth.bounding_boxes_3d [--query ] diff --git a/infinigen/tools/ground_truth/depth_to_normals.py b/infinigen/tools/ground_truth/depth_to_normals.py index 982fbc508..3e36d9fe7 100644 --- a/infinigen/tools/ground_truth/depth_to_normals.py +++ b/infinigen/tools/ground_truth/depth_to_normals.py @@ -13,7 +13,7 @@ from imageio.v3 import imread, imwrite from numpy.linalg import inv -from ..dataset_loader import get_frame_path +from infinigen.tools.dataset_loader import get_frame_path try: from einops import einsum diff --git a/infinigen/tools/ground_truth/optical_flow_warp.py b/infinigen/tools/ground_truth/optical_flow_warp.py index c03b9fb72..24f1fb386 100644 --- a/infinigen/tools/ground_truth/optical_flow_warp.py +++ b/infinigen/tools/ground_truth/optical_flow_warp.py @@ -10,7 +10,7 @@ import numpy as np from imageio.v3 import imread, imwrite -from ..dataset_loader import get_frame_path +from infinigen.tools.dataset_loader import get_frame_path """ Usage: python -m tools.ground_truth.rigid_warp diff --git a/infinigen/tools/ground_truth/rigid_warp.py b/infinigen/tools/ground_truth/rigid_warp.py index e4cd67f16..33c7d60e7 100644 --- a/infinigen/tools/ground_truth/rigid_warp.py +++ b/infinigen/tools/ground_truth/rigid_warp.py @@ -11,7 +11,7 @@ from imageio.v3 import imread, imwrite from numpy.linalg import inv -from ..dataset_loader import get_frame_path +from infinigen.tools.dataset_loader import get_frame_path try: from einops import einsum diff --git a/infinigen/tools/ground_truth/segmentation_lookup.py b/infinigen/tools/ground_truth/segmentation_lookup.py index ee7bf98e6..3afaf1f01 100644 --- a/infinigen/tools/ground_truth/segmentation_lookup.py +++ b/infinigen/tools/ground_truth/segmentation_lookup.py @@ -15,8 +15,8 @@ from imageio.v3 import imread, imwrite from numba.types import bool_ -from ..compress_masks import recover -from ..dataset_loader import get_frame_path +from infinigen.tools.compress_masks import recover +from infinigen.tools.dataset_loader import get_frame_path try: from einops import pack, rearrange, repeat diff --git a/pyproject.toml b/pyproject.toml index 7f856dde0..8f355d1eb 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -145,7 +145,8 @@ select = [ "E", "I", "F", - "S102", # no exec() + "S102", # no exec(), + "TID252", # relative imports only allowed for siblings ] ignore = [