Skip to content

Feature/cython public api#550

Merged
oleksandr-pavlyk merged 2 commits intomasterfrom
feature/cython-public-api
Aug 25, 2021
Merged

Feature/cython public api#550
oleksandr-pavlyk merged 2 commits intomasterfrom
feature/cython-public-api

Conversation

@oleksandr-pavlyk
Copy link
Copy Markdown
Contributor

@oleksandr-pavlyk oleksandr-pavlyk commented Aug 24, 2021

Improved generation of C-API for Cython native extension classes and functions that operate on them.

This is accomplished by using public api for classes, and use if api qualifier for functions.

An example of pybind11 extension was added to demonstrate use of dpctl Python types generated by Cython in native extensions other than Cython.

Use api keyword in declaring API functions.

Use of API defines initializer functions which allows native extensions
that work with dpctl Python types to not link to Python-produced shared
objects on Linux, and allows for pybind11 to portably work with Python
types defined in dpctl.

Example for working with dpctl types is to be added to dpctl/examples
@coveralls
Copy link
Copy Markdown
Collaborator

Coverage Status

Coverage decreased (-0.005%) to 65.046% when pulling 5560978 on feature/cython-public-api into 260573c on master.

@oleksandr-pavlyk oleksandr-pavlyk merged commit 8a2b43e into master Aug 25, 2021
@oleksandr-pavlyk oleksandr-pavlyk deleted the feature/cython-public-api branch August 25, 2021 11:47
oleksandr-pavlyk added a commit to 1e-to/dpctl that referenced this pull request Aug 25, 2021
Added reference to work in pull request IntelPython#550
oleksandr-pavlyk added a commit that referenced this pull request Aug 25, 2021
* Update CHANGELOG

* Update CHANGELOG.md

Expanded fixes in 0.9.0

* Update CHANGELOG.md

Added reference to work in pull request #550

Co-authored-by: Oleksandr Pavlyk <oleksandr.pavlyk@intel.com>
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