From 0d3826b3549d93c00c494e105d0d17e27ac3dd52 Mon Sep 17 00:00:00 2001 From: Campbell Barton Date: Fri, 27 Jun 2025 23:41:07 +1000 Subject: [PATCH] Cleanup: make the blend file header private This was split out as part of a refactor but isn't intended to be a new public module for other scripts to use. Ref !141088 --- ...endfile_header.py => _blendfile_header.py} | 0 scripts/modules/blend_render_info.py | 8 +++---- tests/python/bl_blendfile_header.py | 22 +++++++++---------- tools/modules/blendfile.py | 8 +++---- 4 files changed, 19 insertions(+), 19 deletions(-) rename scripts/modules/{blendfile_header.py => _blendfile_header.py} (100%) diff --git a/scripts/modules/blendfile_header.py b/scripts/modules/_blendfile_header.py similarity index 100% rename from scripts/modules/blendfile_header.py rename to scripts/modules/_blendfile_header.py diff --git a/scripts/modules/blend_render_info.py b/scripts/modules/blend_render_info.py index 279bc404e45..da405928d40 100755 --- a/scripts/modules/blend_render_info.py +++ b/scripts/modules/blend_render_info.py @@ -10,7 +10,7 @@ __all__ = ( "read_blend_rend_chunk", ) -import blendfile_header +import _blendfile_header class RawBlendFileReader: @@ -77,8 +77,8 @@ def _read_blend_rend_chunk_from_file(blendfile, filepath): from os import SEEK_CUR try: - blender_header = blendfile_header.BlendFileHeader(blendfile) - except blendfile_header.BlendHeaderError: + blender_header = _blendfile_header.BlendFileHeader(blendfile) + except _blendfile_header.BlendHeaderError: sys.stderr.write("Not a blend file: {:s}\n".format(filepath)) return [] @@ -87,7 +87,7 @@ def _read_blend_rend_chunk_from_file(blendfile, filepath): endian_str = b'<' if blender_header.is_little_endian else b'>' block_header_struct = blender_header.create_block_header_struct() - while bhead := blendfile_header.BlockHeader(blendfile, block_header_struct): + while bhead := _blendfile_header.BlockHeader(blendfile, block_header_struct): if bhead.code == b'ENDB': break remaining_bytes = bhead.size diff --git a/tests/python/bl_blendfile_header.py b/tests/python/bl_blendfile_header.py index 8a2b172dd3b..356a8f8ccce 100644 --- a/tests/python/bl_blendfile_header.py +++ b/tests/python/bl_blendfile_header.py @@ -2,7 +2,7 @@ # # SPDX-License-Identifier: GPL-2.0-or-later -import blendfile_header +import _blendfile_header # Not part of the Public API, allow use for testing. import blend_render_info import bpy import pathlib @@ -26,7 +26,7 @@ class BlendFileHeaderTest(unittest.TestCase): def test_small_bhead_8(self): path = self.testdir / "SmallBHead8.blend" with gzip.open(path, "rb") as f: - header = blendfile_header.BlendFileHeader(f) + header = _blendfile_header.BlendFileHeader(f) self.assertEqual(header.magic, b"BLENDER") self.assertEqual(header.file_format_version, 0) self.assertEqual(header.pointer_size, 8) @@ -34,7 +34,7 @@ class BlendFileHeaderTest(unittest.TestCase): self.assertEqual(header.version, 300) header_struct = header.create_block_header_struct() - self.assertIs(header_struct.type, blendfile_header.SmallBHead8) + self.assertIs(header_struct.type, _blendfile_header.SmallBHead8) buffer = f.read(header_struct.struct.size) block = header_struct.parse(buffer) @@ -49,7 +49,7 @@ class BlendFileHeaderTest(unittest.TestCase): def test_large_bhead_8(self): path = self.testdir / "LargeBHead8.blend" with open(path, "rb") as f: - header = blendfile_header.BlendFileHeader(f) + header = _blendfile_header.BlendFileHeader(f) self.assertEqual(header.magic, b"BLENDER") self.assertEqual(header.file_format_version, 1) self.assertEqual(header.pointer_size, 8) @@ -57,7 +57,7 @@ class BlendFileHeaderTest(unittest.TestCase): self.assertEqual(header.version, 500) header_struct = header.create_block_header_struct() - self.assertIs(header_struct.type, blendfile_header.LargeBHead8) + self.assertIs(header_struct.type, _blendfile_header.LargeBHead8) buffer = f.read(header_struct.struct.size) block = header_struct.parse(buffer) @@ -72,7 +72,7 @@ class BlendFileHeaderTest(unittest.TestCase): def test_bhead_4(self): path = self.testdir / "BHead4.blend" with gzip.open(path, "rb") as f: - header = blendfile_header.BlendFileHeader(f) + header = _blendfile_header.BlendFileHeader(f) self.assertEqual(header.magic, b"BLENDER") self.assertEqual(header.file_format_version, 0) self.assertEqual(header.pointer_size, 4) @@ -80,7 +80,7 @@ class BlendFileHeaderTest(unittest.TestCase): self.assertEqual(header.version, 260) header_struct = header.create_block_header_struct() - self.assertIs(header_struct.type, blendfile_header.BHead4) + self.assertIs(header_struct.type, _blendfile_header.BHead4) buffer = f.read(header_struct.struct.size) block = header_struct.parse(buffer) @@ -95,7 +95,7 @@ class BlendFileHeaderTest(unittest.TestCase): def test_bhead_4_big_endian(self): path = self.testdir / "BHead4_big_endian.blend" with gzip.open(path, "rb") as f: - header = blendfile_header.BlendFileHeader(f) + header = _blendfile_header.BlendFileHeader(f) self.assertEqual(header.magic, b"BLENDER") self.assertEqual(header.file_format_version, 0) self.assertEqual(header.pointer_size, 4) @@ -103,7 +103,7 @@ class BlendFileHeaderTest(unittest.TestCase): self.assertEqual(header.version, 170) header_struct = header.create_block_header_struct() - self.assertIs(header_struct.type, blendfile_header.BHead4) + self.assertIs(header_struct.type, _blendfile_header.BHead4) buffer = f.read(header_struct.struct.size) block = header_struct.parse(buffer) @@ -131,7 +131,7 @@ class BlendFileHeaderTest(unittest.TestCase): version_int = version[0] * 100 + version[1] with open(path, "rb") as f: - header = blendfile_header.BlendFileHeader(f) + header = _blendfile_header.BlendFileHeader(f) self.assertEqual(header.magic, b"BLENDER") self.assertEqual(header.file_format_version, 1) self.assertEqual(header.pointer_size, 8) @@ -139,7 +139,7 @@ class BlendFileHeaderTest(unittest.TestCase): self.assertEqual(header.version, version_int) header_struct = header.create_block_header_struct() - self.assertIs(header_struct.type, blendfile_header.LargeBHead8) + self.assertIs(header_struct.type, _blendfile_header.LargeBHead8) buffer = f.read(header_struct.struct.size) block = header_struct.parse(buffer) diff --git a/tools/modules/blendfile.py b/tools/modules/blendfile.py index 146ede209f6..bc2a9241aa2 100644 --- a/tools/modules/blendfile.py +++ b/tools/modules/blendfile.py @@ -22,7 +22,7 @@ import os import sys sys.path.append(os.path.join(os.path.dirname(__file__), "..", "..", "scripts", "modules")) -import blendfile_header +import _blendfile_header import gzip import logging import struct @@ -57,7 +57,7 @@ class BlendFile: "filepath_orig", # BlendFileHeader "header", - # blendfile_header.BlockHeaderStruct + # _blendfile_header.BlockHeaderStruct "block_header_struct", # BlendFileBlock "blocks", @@ -245,7 +245,7 @@ class BlendFile: return structs, sdna_index_from_id -class BlendFileBlock(blendfile_header.BlockHeader): +class BlendFileBlock(_blendfile_header.BlockHeader): """ Instance of a struct. """ @@ -703,7 +703,7 @@ class BlendFileBlockRaw: # Read Magic -class BlendFileHeader(blendfile_header.BlendFileHeader): +class BlendFileHeader(_blendfile_header.BlendFileHeader): endian_index: int endian_str: bytes