Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Integrate python-native-libs#303

Open
kiendang wants to merge 20 commits into
scalapy:mainfrom
kiendang:integrate-python-native-libs
Open

Integrate python-native-libs#303
kiendang wants to merge 20 commits into
scalapy:mainfrom
kiendang:integrate-python-native-libs

Conversation

@kiendang

@kiendang kiendang commented Aug 26, 2022

Copy link
Copy Markdown
Member

This PR moves the scalapy/python-native-libs repo here. See #301.

We should settle stuff around publishing artifacts first, including #282 before merging this. Then I'll work on moving sbt-scalapy here as well.

@kiendang kiendang force-pushed the integrate-python-native-libs branch from 5ad5f55 to 2c140a3 Compare August 26, 2022 08:40
Comment thread project/plugins.sbt Outdated
@kiendang kiendang force-pushed the integrate-python-native-libs branch 3 times, most recently from a5102aa to be4fbfa Compare August 29, 2022 12:07
@kiendang kiendang mentioned this pull request Aug 29, 2022
@kiendang kiendang force-pushed the integrate-python-native-libs branch 22 times, most recently from 0da7d7c to f1892ba Compare September 1, 2022 15:46
Comment thread python-native-libs/project/metals.sbt Outdated
Comment thread project/plugins.sbt Outdated
@kiendang

kiendang commented Sep 6, 2022

Copy link
Copy Markdown
Member Author

Added python-native-libs as a separate sbt build since the scalapy main build depends on it. Almost everything works well except now sbt start time is longer since it has to start 2 sbt builds.

Keeping these 2 in separated projects also means we can make separate releases with different version numbers for them. To make a release for python-native-libs just push to a python-native-libs-v<version> tag. ThisBuild / dynverTagPrefix := "python-native-libs-v" in python-native-libs/build.sbt enables this. Nothing needs to be changed for scalapy. See https://github.com/sbt/sbt-dynver#tag-requirements.

Decided to leave sbt-scalapy out of this. I don't think it added much value over just using python-native-libs directly. For the default use case, the amount of code reduction is minimal, plus it's more complicated (to develop and maintain) when you only want to enable scalapy for some axes (e.g. only in Test, run).

Scalapy for windows now works for JVM and has been added to CI. Native is more complicated. Will create a separate issue for this (#307).

Next is just adding tests for python-native-libs (for virtualenv, for when users want to use a specific Python, ...).

@kiendang kiendang force-pushed the integrate-python-native-libs branch 5 times, most recently from 1014a17 to ec2e537 Compare June 18, 2023 10:52
@kiendang

Copy link
Copy Markdown
Member Author

@shadaj this is ready for review now. Sorry took me a while to get back to this. Summary of changes:

  • The scalapy/python-native-libs repo has been moved here, into the python-native-libs directory.
  • A release for python-native-libs can be made by pushing to a python-native-libs-v<version> tag.
  • scalapy built.sbt is now set up using python-native-libs
  • Tests for python-native-libs is located in python-native-libs-test and can be run with
    sbt +pythonNativeLibsJVMTest +pythonNativeLibsNativeTest.
  • Add support for Python 3.11. Remove Python 3.7 from CI due to it being EOL in a week. I haven't removed it from the code yet (CPythonAPI.scala) so that it won't break suddenly for people who are still using 3.7.

Decided not to enable CI for Windows. ScalaPy for Windows works on JVM but currently only when using the default python on PATH. I've tried to test it with virtualenv or a specific python that is different from the default python on PATH but have not been successful. Will create a separate PR for Windows support.

@kiendang kiendang marked this pull request as ready for review June 18, 2023 11:34
@kiendang kiendang force-pushed the integrate-python-native-libs branch from 79ff9b0 to b02c86b Compare June 18, 2023 12:29
@guersam

guersam commented Jan 31, 2024

Copy link
Copy Markdown

@shadaj @kiendang What's left to move this PR forward? Built-in support for Python 3.11 seems pretty useful.

@kiendang kiendang force-pushed the integrate-python-native-libs branch from 69ac395 to 16a06c4 Compare September 19, 2024 03:17
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.

3 participants