-
Notifications
You must be signed in to change notification settings - Fork 25
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
[python] Add Windows support for the Python API #1811
Conversation
This pull request has been linked to Shortcut Story #35700: Implement Windows support for SOMA. |
This target corresponds to the dynamic libtiledbsoma library, but we already link to it through `TILEDB_SOMA_OBJECTS`.
a05f6dd
to
f67d0a6
Compare
// #include "soma_object.h" | ||
// #include "soma_sparse_ndarray.h" | ||
|
||
#include "tiledbsoma_export.h" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I presume that is a cmake generated file? Should we say so? A bit weird to include something not in the sources themselves but only in the build/
tree.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I will add a comment. We need this file to support exporting symbols in a cross-platform fashion (replacing this). The Core already has one.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Understood from what's in it but I think I have seen many other project have such #define
statements in the normal include directories, no?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for dealing with the Windows build by the way. Much appreciated.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I have seen many other project have such
#define
statements in the normal include directories
We could do that, but having CMake generate the file automatically handles the varying platforms, compilers and static or dynamic linkage.
dbfa5e7
to
b7a5a3b
Compare
b7a5a3b
to
de685d1
Compare
It now runs on `pull_request` instead of `push`, covering PRs from forks (added `workflow_dispatch` for those that might still want to run it without opening a PR), and adds a Windows matrix job (only for python 3.10 to reduce the jobs of the workflow). Also fixed two apparent typos.
Codecov Report
❗ Your organization needs to install the Codecov GitHub app to enable full functionality. Additional details and impacted files@@ Coverage Diff @@
## main #1811 +/- ##
===========================================
- Coverage 63.11% 48.26% -14.86%
===========================================
Files 106 72 -34
Lines 10056 6458 -3598
===========================================
- Hits 6347 3117 -3230
+ Misses 3709 3341 -368
Flags with carried forward coverage won't be shown. Click here to find out more.
|
69550b9
to
09653e6
Compare
43fc4d0
to
d5be97b
Compare
And avoid allocating temporary arrays in some cases.
bcc0f01
to
36ec168
Compare
1cf43dc
to
79cab88
Compare
The only Windows test failure was fixed by TileDB-Inc/TileDB-Py#1863. This is ready for review. |
CI on Windows is green. Failures seem to be network-related; one address it showed in the error message gives 404 to me as well. |
There was an entirely unrelated hickup in the CI we use for R, I just took care of that and am keeping fingers crossed for the re-run that is now happening. |
@@ -151,7 +147,10 @@ def find_or_build_package_data(setuptools_cmd): | |||
# cause that cache to fall out of sync. | |||
# | |||
# See `.github/workflows/python-ci-single.yml` for configuration. | |||
subprocess.run(["./bld"], cwd=scripts_dir) | |||
if os.name == "nt": | |||
subprocess.run(["pwsh.exe", "./bld.ps1"], cwd=scripts_dir, check=True) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@beroy is currently working on removing the bld
script and porting the cmake commands over into setup.py
. I don't think anything needs to be modified in this particular PR but just letting relevant parties be aware.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks!
Merging after discussion with @teo-tsirpanis and @nguyenv . cc @beroy re the additional |
…ata#1811)" (single-cell-data#1959)" This reverts commit e231201.
…ata#1811)" (single-cell-data#1959)" This reverts commit e231201.
Issue and/or context:
Changes:
Notes for Reviewer:
SC-35700
Fixes #1360.