Python 3.14t build
まだ誰も着手していません。
評価
- 難易度
- 5/5
- 見積もり時間
- 1週間以上
- 初心者へのやさしさ
- 35/100
- issue の種類
- 機能追加
- 明瞭さ
- 説明が足りない
- 活発さ
- 活発
- 領域
- build-system, ci-cd
調査の方向性
まず、リンクされたフォークの python3.14t ブランチを確認し、そのビルド変更を OCP の現在のビルドシステムと比較します。Windows runner、pybind で生成されたファイルのキャッシュ、および OCCT 8.0.0 に対してビルドする場合の VTK への影響を確認してください。提案された Python 3.14t のビルドアプローチが検証され、その互換性の範囲が文書化されれば完了です。
索引モデルが issue の本文から書いたものです。
説明
I had opened issue https://github.com/CadQuery/cadquery/issues/2029 a bunch of months ago and there wasn't a giant amount of support or help to get cadquery to compile for Python 3.14t. The build system that was in place at the time was causing me a very large amount of grief so I walked away from it for a while. Yesterday I decided to revisit trying to make this happen. I discovered that the build system had been completely rewritten to something that was a whole lot easier to work with.
I want to say TY for rewriting the build system, it has allowed me to make the modifications needed to get a working build for Python 3.14t. If you are interested in seeing what was done to get it to work you can find the code in my fork located HERE. There is value to doing this because it would allow an application to have a thread for handling OCP related tasks and another thread handling UI type stuff and the threads would be able to run parallel to each other. I posted some example code on how to handle making sure that OCP is only accessed from a single thread. I do however want to mention that not everything needs to run using a single thread. I was able to create shapes for every single glyph for for a font for each of the 4 styles using 4 threads at the same time. That process also involved tessellating the shape into a mesh array as well. by using 4 threads there was a 348% speedup which is a substantial increase.
The code should compile for all of the previous Python versions but I have disabled that from happening to speed up the compile times. I also set up a self hosted runner for the windows build because the CI would take about 5.5 hours to complete where as with the self hosted running it takes about 30 minutes. I also added caching of the pybind generated files as well which is something would would need to be removed. I am building against OCCT 8.0.0 that doesn't have VTK. there is no 3.14t build of VTK available and I personally didn't need to have that available. That is the only thing that would need to be dealt with and it might only have to be dealt with in cadquery and not in OCP. I don't know if OCP needs to use the Python c extension of VTK or if it only needs to link against a shared library of VTK not specifically compiled for use with Python.
If you have any questions about the code in that link above ask away. Most of it should be pretty self explanatory.
- 主要言語
- C++
- スター
- 200
- フォーク
- 48
- 平均マージ
- 1日 13時間
- マージ済み PR(30日)
- 4
コントリビューションガイド
このリポジトリのコントリビューションガイドは索引されていません
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
CadQuery/OCP のほかの issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 68/100
-
難易度 3/5 1〜2日 初心者へのやさしさ 68/100
-
難易度 3/5 1〜2日 初心者へのやさしさ 58/100
-
OCCT8
難易度 3/5 1〜2日 初心者へのやさしさ 35/100
-
難易度 4/5 3〜5日 初心者へのやさしさ 35/100
似ている issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
-
good first issue
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
ros2/message_filters#338 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 70/100
subsurface/subsurface#4984 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
flutter-webrtc/flutter-webrtc#2206 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 70/100
google-ai-edge/LiteRT-LM#3739 ·