mirror of
https://github.com/spotify/annoy.git
synced 2026-10-12 02:22:55 +00:00
Add support for Python 3.13 and configure deployment to PyPI. * **CI Configuration**: Update `.github/workflows/ci.yml` to include Python version 3.13 in the `python-version` matrix. * **Setup.py**: Update `setup.py` to list supported Python versions up to 3.13 in the `classifiers` list. * **Tox Configuration**: Update `tox.ini` to include Python 3.13 in the `envlist`. * **Publish Workflow**: Add a new GitHub Actions workflow in `.github/workflows/publish.yml` for publishing the package to PyPI. --- For more details, open the [Copilot Workspace session](https://copilot-workspace.githubnext.com/spotify/annoy?shareId=XXXX-XXXX-XXXX-XXXX).
38 lines
1.1 KiB
INI
38 lines
1.1 KiB
INI
[tox]
|
|
envlist=py{26,27,33,34,35,36,37,38,39,310,311,312,313}, go, lua
|
|
|
|
[testenv]
|
|
setenv =
|
|
TRAVIS = {env:TRAVIS:}
|
|
commands =
|
|
pip install numpy h5py
|
|
pip install .
|
|
python setup.py nosetests --verbosity=3
|
|
|
|
[testenv:go]
|
|
setenv =
|
|
GOPATH = {env:HOME:}/gopath
|
|
GOROOT = /usr/local/go
|
|
whitelist_externals=*
|
|
commands =
|
|
mkdir -p {env:GOPATH:}/src/annoyindex
|
|
wget https://storage.googleapis.com/golang/go1.5.linux-amd64.tar.gz
|
|
sudo tar -C /usr/local -xzf go1.5.linux-amd64.tar.gz
|
|
sudo add-apt-repository -y ppa:timsc/swig-3.0.12
|
|
sudo apt-get update -qq
|
|
sudo apt-get install -y swig3.0
|
|
swig3.0 -go -intgosize 64 -cgo -c++ src/annoygomodule.i
|
|
cp src/annoygomodule_wrap.cxx src/annoyindex.go src/annoygomodule.h src/annoylib.h src/kissrandom.h {env:GOPATH:}/src/annoyindex
|
|
{env:GOROOT}/bin/go build annoyindex
|
|
|
|
[testenv:lua]
|
|
setenv =
|
|
HOME = {env:HOME}
|
|
whitelist_externals=*
|
|
commands =
|
|
pip install hererocks
|
|
hererocks {toxworkdir}/here --{env:LUA:} --luarocks 2.2
|
|
{toxworkdir}/here/bin/luarocks make
|
|
{toxworkdir}/here/bin/luarocks install busted
|
|
{toxworkdir}/here/bin/busted test/annoy_test.lua
|