Skip to content

Conversation

@ivaylo-matov
Copy link
Contributor

@ivaylo-matov ivaylo-matov commented Oct 17, 2025

PR addresses DYN-7766

Changes add the required Python libraries:

  • shapely
  • alphashape
  • comtypes
  • scikit-learn
  • ifcopenshell
  • tabulate

The wheels were added to the Resources folder in DSPythonNet3Wheels following the existing pattern, and they remain tracked in Git as before.

A small update was made in DSPythonNet3Evaluator to handle comtypes correctly. The evaluator now checks the current .NET thread apartment and sets the COMTYPES_APARTMENT environment variable to match.

The THIRD_PARTY_NOTICES.txt file was updated to include license information for the new libraries and any additional dependencies.

Unit tests were also added.

Total size of wheels resources : 113mb (increased from 89mb)

@zeusongit
@twastvedt

@zeusongit zeusongit requested review from Copilot and twastvedt and removed request for Copilot October 17, 2025 16:13
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR adds support for six new Python libraries (shapely, alphashape, comtypes, scikit-learn, ifcopenshell, tabulate) to the PythonNet3 engine. It includes proper license documentation and handles comtypes threading requirements.

  • Adds six new Python packages to the requirements with appropriate version constraints
  • Implements apartment state detection and environment configuration for comtypes compatibility
  • Provides comprehensive test coverage for all new libraries

Reviewed Changes

Copilot reviewed 4 out of 45 changed files in this pull request and generated 4 comments.

File Description
DSPythonNet3Wheels/requirements.txt Adds version specifications for the six new Python libraries
DSPythonNet3/DSPythonNet3Evaluator.cs Adds comtypes apartment state detection and configuration
DSpythonNet3Tests/PythonLibraryTests.cs Adds unit tests for all new libraries to verify availability and basic functionality
DSPythonNet3/THIRD_PARTY_NOTICES.txt Adds comprehensive license information for new libraries and dependencies

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

ivaylo-matov and others added 4 commits October 17, 2025 17:17
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Copy link
Contributor

@twastvedt twastvedt left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good! We'll also want Claire to check out these new licenses, but I'm pretty sure it's all ok.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants