mirror of
https://github.com/SheffieldML/GPy.git
synced 2026-05-11 21:12:38 +02:00
add poetry setup
This commit is contained in:
parent
bfa1d67fda
commit
875e3f4253
3 changed files with 3324 additions and 0 deletions
62
build.py
Normal file
62
build.py
Normal file
|
|
@ -0,0 +1,62 @@
|
|||
import sys
|
||||
import numpy as np
|
||||
from setuptools import setup, Extension
|
||||
|
||||
|
||||
def ismac():
|
||||
return sys.platform[:6] == "darwin"
|
||||
|
||||
if ismac():
|
||||
compile_flags = ["-O3"]
|
||||
link_args = []
|
||||
else:
|
||||
compile_flags = ["-fopenmp", "-O3"]
|
||||
link_args = ["-lgomp"]
|
||||
|
||||
extensions = [
|
||||
Extension(
|
||||
name="GPy.kern.src.stationary_cython",
|
||||
sources=[
|
||||
"GPy/kern/src/stationary_cython.pyx",
|
||||
"GPy/kern/src/stationary_utils.c",
|
||||
],
|
||||
include_dirs=[np.get_include(), "."],
|
||||
extra_compile_args=compile_flags,
|
||||
extra_link_args=link_args,
|
||||
),
|
||||
Extension(
|
||||
name="GPy.util.choleskies_cython",
|
||||
sources=["GPy/util/choleskies_cython.pyx"],
|
||||
include_dirs=[np.get_include(), "."],
|
||||
extra_link_args=link_args,
|
||||
extra_compile_args=compile_flags,
|
||||
),
|
||||
Extension(
|
||||
name="GPy.util.linalg_cython",
|
||||
sources=["GPy/util/linalg_cython.pyx"],
|
||||
include_dirs=[np.get_include(), "."],
|
||||
extra_compile_args=compile_flags,
|
||||
extra_link_args=link_args,
|
||||
),
|
||||
Extension(
|
||||
name="GPy.kern.src.coregionalize_cython",
|
||||
sources=["GPy/kern/src/coregionalize_cython.pyx"],
|
||||
include_dirs=[np.get_include(), "."],
|
||||
extra_compile_args=compile_flags,
|
||||
extra_link_args=link_args,
|
||||
),
|
||||
Extension(
|
||||
name="GPy.models.state_space_cython",
|
||||
sources=["GPy/models/state_space_cython.pyx"],
|
||||
include_dirs=[np.get_include(), "."],
|
||||
extra_compile_args=compile_flags,
|
||||
extra_link_args=link_args,
|
||||
),
|
||||
]
|
||||
|
||||
def build(setup_kwargs):
|
||||
"""Needed for the poetry building interface."""
|
||||
setup_kwargs.update({
|
||||
'ext_modules': extensions,
|
||||
# 'include_dirs': [np.get_include()],
|
||||
})
|
||||
3217
poetry.lock
generated
Normal file
3217
poetry.lock
generated
Normal file
File diff suppressed because it is too large
Load diff
45
pyproject.toml
Normal file
45
pyproject.toml
Normal file
|
|
@ -0,0 +1,45 @@
|
|||
[tool.poetry]
|
||||
name = "GPy"
|
||||
version = "1.13.1"
|
||||
description = "The Gaussian Process Toolbox"
|
||||
authors = ["GPy Authors <https://github.com/SheffieldML/GPy/graphs/contributors"]
|
||||
license = "BSD-3-Clause"
|
||||
keywords = ["machine-learning", "gaussian-processes", "kernels"]
|
||||
homepage = "https://sheffieldml.github.io/GPy/"
|
||||
repository = "https://github.com/SheffieldML/GPy"
|
||||
documentation = "https://github.com/SheffieldML/GPy"
|
||||
readme = "README.md"
|
||||
build = "build.py"
|
||||
include = ["build.py"]
|
||||
|
||||
[tool.poetry.dependencies]
|
||||
python = ">=3.9"
|
||||
numpy = "^1.7"
|
||||
six = "*"
|
||||
paramz = ">=0.9.6"
|
||||
cython = "^0.29"
|
||||
scipy = ">=1.3.0,<=1.12.0" # TODO: why this upper bound?
|
||||
sphinx = { version = "*", optional = true }
|
||||
mpi4py = { version = "*", optional = true }
|
||||
ipython = { version = ">=4.0.0", optional = true }
|
||||
matplotlib = { version = ">=3.3.4", optional = true }
|
||||
plotly = { version = ">=1.8.6", optional = true }
|
||||
jupyter_client = { version = ">=4.0.6", optional = true }
|
||||
ipywidgets = { version = ">=4.0.3", optional = true }
|
||||
ipykernel = { version = ">=4.1.0", optional = true }
|
||||
notebook = { version = ">=4.0.5", optional = true }
|
||||
|
||||
[tool.poetry.extras]
|
||||
docs = ["sphinx"]
|
||||
optional = ["mpi4py", "ipython"]
|
||||
plotting = ["matplotlib", "plotly"]
|
||||
notebook = ["jupyter_client", "ipywidgets", "ipykernel", "notebook"]
|
||||
|
||||
[tool.poetry.group.dev.dependencies]
|
||||
matplotlib = "^3.9.1"
|
||||
pytest = "^8.2.2"
|
||||
pods = "^0.1.14"
|
||||
|
||||
[build-system]
|
||||
requires = ["poetry-core>=1.0.0", "setuptools", "wheel", "numpy", "cython"]
|
||||
build-backend = "poetry.core.masonry.api"
|
||||
Loading…
Add table
Add a link
Reference in a new issue