dpctl icon indicating copy to clipboard operation
dpctl copied to clipboard

Meta data improvements

Open ZzEeKkAa opened this issue 1 year ago • 12 comments

Changes in this PR:

  • Move all supported configuration to pyproject.toml from setup.py and setup.cfg (latest one was removed).
  • Populate additional fields to project and build-system sections of pyproject.toml.
  • Use build packages from pyproject's build-system section in the conda meta.yaml to keep it in sync.
  • Use package managed versioneer.

Problems:

  • wheel package removes symbolic links

Checklist:

  • [x] Have you provided a meaningful PR description?
  • [ ] Have you added a test, reproducer or referred to an issue with a reproducer?
  • [ ] Have you tested your changes locally for CPU and GPU devices?
  • [ ] Have you made sure that new changes do not introduce compiler warnings?
  • [ ] Have you checked performance impact of proposed changes?
  • [ ] If this PR is a work in progress, are you opening the PR as a draft?

ZzEeKkAa avatar May 02 '24 20:05 ZzEeKkAa

Coverage Status

coverage: 87.892%. remained the same when pulling 3d51b7cebf7d4ea6d6246f2c044da7ad49d55093 on feature/pyproject into 0df3bec1706dcf1477eaeef98c80194920386094 on master.

coveralls avatar May 02 '24 22:05 coveralls

Deleted rendered PR docs from intelpython.github.com/dpctl, latest should be updated shortly. :crossed_fingers:

github-actions[bot] avatar May 02 '24 22:05 github-actions[bot]

Array API standard conformance tests for dpctl=0.17.0dev0=py310ha798474_322 ran successfully. Passed: 870 Failed: 8 Skipped: 92

github-actions[bot] avatar May 02 '24 22:05 github-actions[bot]

Array API standard conformance tests for dpctl=0.17.0dev0=py310ha798474_322 ran successfully. Passed: 870 Failed: 8 Skipped: 92

github-actions[bot] avatar May 02 '24 22:05 github-actions[bot]

Array API standard conformance tests for dpctl=0.17.0dev0=py310ha798474_323 ran successfully. Passed: 870 Failed: 8 Skipped: 92

github-actions[bot] avatar May 03 '24 21:05 github-actions[bot]

Array API standard conformance tests for dpctl=0.17.0dev0=py310ha798474_334 ran successfully. Passed: 870 Failed: 8 Skipped: 92

github-actions[bot] avatar May 04 '24 04:05 github-actions[bot]

Array API standard conformance tests for dpctl=0.17.0dev0=py310ha798474_334 ran successfully. Passed: 870 Failed: 8 Skipped: 92

github-actions[bot] avatar May 04 '24 05:05 github-actions[bot]

Array API standard conformance tests for dpctl=0.17.0dev0=py310ha798474_334 ran successfully. Passed: 870 Failed: 8 Skipped: 92

github-actions[bot] avatar May 04 '24 05:05 github-actions[bot]

Array API standard conformance tests for dpctl=0.17.0dev0=py310ha798474_334 ran successfully. Passed: 870 Failed: 8 Skipped: 92

github-actions[bot] avatar May 04 '24 05:05 github-actions[bot]

Array API standard conformance tests for dpctl=0.17.0dev0=py310ha798474_334 ran successfully. Passed: 870 Failed: 8 Skipped: 92

github-actions[bot] avatar May 04 '24 06:05 github-actions[bot]

Array API standard conformance tests for dpctl=0.17.0dev0=py310ha798474_334 ran successfully. Passed: 870 Failed: 8 Skipped: 92

github-actions[bot] avatar May 04 '24 06:05 github-actions[bot]

Array API standard conformance tests for dpctl=0.17.0dev0=py310ha798474_334 ran successfully. Passed: 870 Failed: 8 Skipped: 92

github-actions[bot] avatar May 04 '24 14:05 github-actions[bot]

Array API standard conformance tests for dpctl=0.18.0dev0=py310ha798474_38 ran successfully. Passed: 890 Failed: 11 Skipped: 91

github-actions[bot] avatar May 29 '24 19:05 github-actions[bot]

Removal of work-around kludge in setup.py that ensured symbolic links created by cmake stay symbolic in conda package is a change int the right direction, as the ecosystem moves to new generation packaging framework. But the change turns symbolic links into hard copies of shared objects, ballooning the size of both the conda package and wheel package.

I propose to modify build.sh to run python -m wheel unpack wheel_dir, remove duplicate copies of the library, e.g., libDPCTLSyclInterface.so and libDPCTLSyclInterface.so.0.18 while recording their names in script variables.

We would then python -m wheel pack wheel_dir, retag it, and run pip install to install into $PREFIX. We would them post-process the content of installed site-packages/dpctl to move actual libDPCTLSyclInterface.so.0 to libDPCTLSyclInterface.so.0.18 (we saved the filename earlier), and create symbolic links libDPCTLSyclInterface.so.0 -> libDPCTLSyclInterface.so.0.18 and libDPCTLSyclInterface.so -> libDPCTLSyclInterface.so.0.

This way conda package would contain symbolic links as it did previously.

oleksandr-pavlyk avatar Jun 05 '24 21:06 oleksandr-pavlyk

Array API standard conformance tests for dpctl=0.18.0dev0=py310ha798474_76 ran successfully. Passed: 889 Failed: 12 Skipped: 91

github-actions[bot] avatar Jun 07 '24 20:06 github-actions[bot]

Assuming my PR gh-1706 into this branch gets merged, the set of changes is a big step forward. Thank you @ZzEeKkAa for doing this work!

oleksandr-pavlyk avatar Jun 09 '24 14:06 oleksandr-pavlyk

Array API standard conformance tests for dpctl=0.18.0dev0=py310ha798474_115 ran successfully. Passed: 894 Failed: 15 Skipped: 105

github-actions[bot] avatar Jul 16 '24 19:07 github-actions[bot]

Array API standard conformance tests for dpctl=0.18.0dev0=py310ha798474_119 ran successfully. Passed: 894 Failed: 15 Skipped: 105

github-actions[bot] avatar Jul 17 '24 02:07 github-actions[bot]

Coverage Status

coverage: 87.967%. remained the same when pulling c243318474c9669af459737c193fcfb86b3521f6 on feature/pyproject into 6d34a6bebed9d92754ca83236801e98621f4d67d on master.

coveralls avatar Jul 17 '24 02:07 coveralls

Array API standard conformance tests for dpctl=0.18.0dev0=py310ha798474_125 ran successfully. Passed: 894 Failed: 15 Skipped: 105

github-actions[bot] avatar Jul 17 '24 18:07 github-actions[bot]