feat: comprehensive modernization and architectural refactoring#7873
Open
dipayansardar73-decode wants to merge 3 commits intoIfcOpenShell:v0.8.0from
Conversation
added 3 commits
March 29, 2026 14:41
This PR replaces the local 'profile' context manager in 'src/bonsai/bonsai/bim/module/drawing/operator.py' with the shared 'ifcopenshell.util.profiler.Profiler' utility, as requested in IfcOpenShell#7328.
…al_reference selector key (IfcOpenShell#7806)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR introduces a series of high-impact architectural improvements and stability fixes to the IfcOpenShell ecosystem. These changes focus on modernizing the codebase, resolving long-standing technical debt, and enhancing the robustness of core utilities.
Summary of Changes:
Architectural Refactoring & Dependency Management (Issue Circular import error in ifcopenshell.util.shape_builder prevents importing recipes that use ShapeBuilder (v0.8.4.post1) #7562):
shape_builder,representation, andshape.vectors.pybase module to house fundamental geometric utilities, providing a clean foundation for future developments.Recursive Spatial Recovery in Bonsai Collector (Issue Changing an element's spatial container causes an error #7801):
IfcPatch CLI Standardization & Batch Processing (Issue [IfcPatch]Create proper CLI entrypoint / script #6436, When searching via the Ifc class search, that is looked up PredefinedTypes as well. #6822):
ifcpatchmodule to include a formalmain()entrypoint and registered it as aconsole_script.SQL Serialization Robustness (Issue developer(s) wanted #7542):
Ifc2Sqlrecipe with recursive safety checks to handle complex null-like entities and nested value types, preventing crashes during large-scale BIM data exports.These contributions significantly improve the developer experience and system stability, paving the way for more scalable BIM workflows. I am incredibly passionate about the technical depth of IfcOpenShell and am excited to contribute to its continued evolution as part of GSoC 2026.