Skip to content

OCCT7.6 - #1156

Merged
adam-urbanczyk merged 17 commits into
masterfrom
occt7.6
Oct 1, 2022
Merged

OCCT7.6#1156
adam-urbanczyk merged 17 commits into
masterfrom
occt7.6

Conversation

@adam-urbanczyk

@adam-urbanczyk adam-urbanczyk commented Sep 16, 2022

Copy link
Copy Markdown
Member

By popular request - CQ with OCCT 7.6

@codecov

codecov Bot commented Sep 20, 2022

Copy link
Copy Markdown

Codecov Report

Merging #1156 (35c2047) into master (3d6d2ab) will increase coverage by 0.02%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##           master    #1156      +/-   ##
==========================================
+ Coverage   93.99%   94.01%   +0.02%     
==========================================
  Files          26       26              
  Lines        5408     5411       +3     
  Branches      993      995       +2     
==========================================
+ Hits         5083     5087       +4     
  Misses        193      193              
+ Partials      132      131       -1     
Impacted Files Coverage Δ
cadquery/cq.py 92.20% <ø> (ø)
cadquery/occ_impl/jupyter_tools.py 100.00% <ø> (ø)
cadquery/occ_impl/shapes.py 92.65% <100.00%> (+0.09%) ⬆️

📣 We’re building smart automated test selection to slash your CI/CD build times. Learn more

@adam-urbanczyk adam-urbanczyk linked an issue Sep 20, 2022 that may be closed by this pull request

@lorenzncode lorenzncode left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

LGTM! Since this is the first OCP update since pip support was added, the procedure is probably not very well defined and automated.

For pip support, should OCP update PRs like this include a change to setup.py to pin say cadquery-ocp=7.6? The new cadquery-ocp package would have to be prepared ahead of time.

After the new cadquery-ocp is uploaded, pip installs will start to break since there is no version pin currently. Adding a version pin should improve the situation in the future.

Anyway, without some careful coordination there will likely be some pip install downtime/breakage.

@jmwright

Copy link
Copy Markdown
Member

The OCP releases on conda-forge went from 7.6.2-alpha to 7.6.3-alpha, with no releases in-between. Is 7.6.2 going to have a production release, or will it always be pre-release? Is 7.6.3 really alpha quality, or is the "alpha" just denoting that it's a first release?

https://anaconda.org/CadQuery/ocp/files

@lorenzncode

After the new cadquery-ocp is uploaded, pip installs will start to break since there is no version pin currently. Adding a version pin should improve the situation in the future.

I can start updating the ocp-build-system repo to 7.6.3 now to try to get it ready to publish to PyPi. It's always going to be hard to prevent builds from breaking during a small window of time though.

@adam-urbanczyk

Copy link
Copy Markdown
Member Author

The OCP releases on conda-forge went from 7.6.2-alpha to 7.6.3-alpha, with no releases in-between. Is 7.6.2 going to have a production release, or will it always be pre-release? Is 7.6.3 really alpha quality, or is the "alpha" just denoting that it's a first release?

https://anaconda.org/CadQuery/ocp/files

@lorenzncode

After the new cadquery-ocp is uploaded, pip installs will start to break since there is no version pin currently. Adding a version pin should improve the situation in the future.

I can start updating the ocp-build-system repo to 7.6.3 now to try to get it ready to publish to PyPi. It's always going to be hard to prevent builds from breaking during a small window of time though.

Unless you need it for something, I propose to forget about 7.6.2. I'll update setup.py to reflect the reality better.

@adam-urbanczyk

Copy link
Copy Markdown
Member Author

So what do you think @jmwright ?

@jmwright

Copy link
Copy Markdown
Member

So what do you think @jmwright ?

The PR itself is fine, but we have run into a GLIBC version problem when building the Python wheels. The wheel builds use conda for the environment, but wheels don't bundle the system libraries like conda seems to.

CadQuery/ocp-build-system#1

@adam-urbanczyk

Copy link
Copy Markdown
Member Author

Do you want to block this PR on that issue? OCP was compiled with gcc 8 AFAICT, I do not compile other libraries myself.

@jmwright

Copy link
Copy Markdown
Member

Do you want to block this PR on that issue?

Not really, but we should at least take the version pin back out of setup.py since it will point to a non-existent package version until we figure out how to fix the wheel builds.

@adam-urbanczyk

Copy link
Copy Markdown
Member Author

Do you want to block this PR on that issue?

Not really, but we should at least take the version pin back out of setup.py since it will point to a non-existent package version until we figure out how to fix the wheel builds.

7.6 and 7.5 are not compatible. If you point to 7.5 in setup.py , you'll get errors when importing/running. IMO it is better to fail at install than at runtime.

@fpq473

fpq473 commented Sep 28, 2022

Copy link
Copy Markdown
Contributor

I might suggest adding a 7.5.3 pin to setup.py right before committing these changes (which would update the pin). That way, we can always point pip users to a commit that works, regardless of what wheels have been built.

@jmwright jmwright left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

With #1160 I think this is ready to merge @adam-urbanczyk

@fpq473

fpq473 commented Sep 29, 2022

Copy link
Copy Markdown
Contributor

Please see #1161 for a fix to the version pin.

@adam-urbanczyk

Copy link
Copy Markdown
Member Author

After #1161 master is green, merging.

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.

occt 7.6.0 support isn't ready yet loft() chooses "incorrect" wire? cut with solid from parametricCurve

4 participants