Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Requiring pre-build libbezier when building bezier._speedup Python binary extension #176

Merged
merged 20 commits into from
Jan 18, 2020

Conversation

dhermes
Copy link
Owner

@dhermes dhermes commented Jan 17, 2020

In the process, splitting the nox -s cmake session into two nox -s libbezier-* sessions that are re-usable (and get used by many of the sessions that rely on libbezier).

Towards #62.

In particular:

- Splitting into two jobs `libbezier-debug` and `libbezier-release`
- Factoring out a `_cmake` helper function that can be used both by
  the `libbezier-*` sessions and by other sessions that want to depend
  on `libbezier`
- Adding helper to create a nox directory, e.g. `.nox/libbezier-debug`
  if it is needed by a session that depends on a `libbezier-*`
  having already been run
This now **fully** removes the Python components used to
build the Fortran library / ABI. (This is a good thing.)
Also (temporarily) deleting content from `docs/python/binary-extension`
about "pieces" of `libbezier` that were previously included with the
Python package (but now will be removed)

- `lib/bezier.lib`
- `include/`
- `lib/libbezier.a`

Also removed comments about `extra-dll/`.

This content needs to move in `docs/abi/index.rst` and possibly
a new file in `docs/abi/`.
Also (attempting to) make sure `cmake` is pre-installed on
all platforms before running tests.
The `cmake` dep has been added to the image and pushed to
Docker Hub.
In the process, updating the `expected_journal.txt` files for
each CI platform (or intentionally making them invalid).

Temporarily putting the "check_journal" sessions first in all CI
runs.
I mistakenly used 3.7 (instead of 3.8) as the Python version in the
`check_journal` session (was testing locally where I don't have 3.8
official install from `python.org`).
Still running `check_journal` **FIRST** on AppVeyor to verify 3.8
(vs. 3.7).

[travis skip]
@dhermes
Copy link
Owner Author

dhermes commented Jan 17, 2020

I am leaning towards merging this as-is, but want to sleep on it because there are a few remaining things to "clean up" after this:

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

Successfully merging this pull request may close these issues.

1 participant