Modernise build of galaxy-app package

Also:
- Add missing files to `MANIFEST.in`
- Add missing requirements
This commit is contained in:
Nicola Soranzo
2022-06-10 00:51:05 +01:00
parent 922263089d
commit c5f3d2d04c
6 changed files with 93 additions and 129 deletions
+9
View File
@@ -1,2 +1,11 @@
include *.rst *.txt LICENSE
include galaxy/dependencies/*.txt
include galaxy/dependencies/*.sh
include galaxy/jobs/runners/util/job_script/*.sh
include galaxy/managers/licenses.json
include galaxy/managers/markdown_export_base.css
recursive-include galaxy/tools/ *.xml
recursive-include galaxy/tools/bundled/ *.pl *.py *.R *.sh
include galaxy/tools/bundled/interactive/default_notebook.ipynb
include galaxy/tools/expressions/*.js
include galaxy/workflow/resources/*.sample
@@ -1,7 +0,0 @@
__version__ = "22.5.0.dev0"
PROJECT_NAME = "galaxy-app"
PROJECT_URL = "https://github.com/galaxyproject/galaxy"
PROJECT_AUTHOR = "Galaxy Project and Community"
PROJECT_DESCRIPTION = "Galaxy Application (backend)"
PROJECT_EMAIL = "galaxy-committers@lists.galaxyproject.org"
+1
View File
@@ -0,0 +1 @@
../package-pyproject.toml
-31
View File
@@ -1,31 +0,0 @@
galaxy-auth
galaxy-config
galaxy-data
galaxy-files
galaxy-job-execution
galaxy-job-metrics
galaxy-objectstore
galaxy-tool-util[cwl,edam]
galaxy-web-framework
galaxy-web-stack
Beaker
celery
cloudauthz==0.6.0
Fabric3
gxformat2
kombu
lagom
Mako
Markdown
paramiko!=2.9.0,!=2.9.1
pebble
pulsar-galaxy-lib>=0.14.13
pydantic
PyJWT
refgenconf>=0.12.0
sqlitedict
starlette
svgwrite
typing-extensions
Whoosh
+83
View File
@@ -0,0 +1,83 @@
[metadata]
author = Galaxy Project and Community
author_email = galaxy-committers@lists.galaxyproject.org
classifiers =
Development Status :: 5 - Production/Stable
Environment :: Console
Intended Audience :: Developers
License :: OSI Approved :: Academic Free License (AFL)
Natural Language :: English
Operating System :: POSIX
Programming Language :: Python :: 3
Programming Language :: Python :: 3.7
Programming Language :: Python :: 3.8
Programming Language :: Python :: 3.9
Programming Language :: Python :: 3.10
Topic :: Software Development
Topic :: Software Development :: Code Generators
Topic :: Software Development :: Testing
description = Galaxy application (backend)
keywords =
Galaxy
license = AFL
license_files =
LICENSE
long_description = file: README.rst, HISTORY.rst
long_description_content_type = text/x-rst
name = galaxy-app
url = https://github.com/galaxyproject/galaxy
version = 22.5.0.dev0
[options]
include_package_data = True
install_requires =
galaxy-auth
galaxy-config
galaxy-data
galaxy-files
galaxy-job-execution
galaxy-job-metrics
galaxy-objectstore
galaxy-tool-util[cwl,edam]
galaxy-util
galaxy-web-framework
galaxy-web-stack
Beaker
boltons
bx-python
celery
cloudauthz==0.6.0
gxformat2
kombu
lagom
lxml
Mako
Markdown
packaging
paramiko!=2.9.0,!=2.9.1
pebble
pulsar-galaxy-lib>=0.14.13
pydantic
pysam
PyJWT
PyYAML
refgenconf>=0.12.0
requests
SQLAlchemy>=1.4.25,<2
sqlitedict
starlette
svgwrite
typing-extensions
WebOb
Whoosh
packages = find:
python_requires = >=3.7
[options.entry_points]
console_scripts =
galaxy-main = galaxy.main:main
[options.packages.find]
exclude =
galaxy.tools.bundled*
tests*
-91
View File
@@ -1,91 +0,0 @@
#!/usr/bin/env python
import ast
import os
import re
from setuptools import (
find_packages,
setup,
)
SOURCE_DIR = "galaxy"
project_short_name = os.path.basename(os.path.dirname(os.path.realpath(__file__)))
with open(f"{SOURCE_DIR}/project_galaxy_{project_short_name}.py") as f:
init_contents = f.read()
def get_var(var_name):
pattern = re.compile(rf"{var_name}\s+=\s+(.*)")
match = pattern.search(init_contents)
assert match
return str(ast.literal_eval(match.group(1)))
version = get_var("__version__")
PROJECT_NAME = get_var("PROJECT_NAME")
PROJECT_URL = get_var("PROJECT_URL")
PROJECT_AUTHOR = get_var("PROJECT_AUTHOR")
PROJECT_EMAIL = get_var("PROJECT_EMAIL")
PROJECT_DESCRIPTION = get_var("PROJECT_DESCRIPTION")
PACKAGES = find_packages(where=".", exclude=["galaxy.tools.bundled*", "tests*"])
ENTRY_POINTS = """
[console_scripts]
galaxy-main=galaxy.main:main
"""
PACKAGE_DATA = {
# Be sure to update MANIFEST.in for source dist.
"tool_shed": [
"scripts/bootstrap_tool_shed/user_info.xml",
],
}
PACKAGE_DIR = {
SOURCE_DIR: SOURCE_DIR,
}
readme = open("README.rst").read()
history = open("HISTORY.rst").read()
if os.path.exists("requirements.txt"):
requirements = open("requirements.txt").read().split("\n")
else:
# In tox, it will cover them anyway.
requirements = []
setup(
name=PROJECT_NAME,
version=version,
description=PROJECT_DESCRIPTION,
long_description=readme + "\n\n" + history,
long_description_content_type="text/x-rst",
author=PROJECT_AUTHOR,
author_email=PROJECT_EMAIL,
url=PROJECT_URL,
packages=PACKAGES,
entry_points=ENTRY_POINTS,
package_data=PACKAGE_DATA,
package_dir=PACKAGE_DIR,
include_package_data=True,
install_requires=requirements,
license="AFL",
zip_safe=False,
keywords="galaxy",
classifiers=[
"Development Status :: 5 - Production/Stable",
"Intended Audience :: Developers",
"Environment :: Console",
"License :: OSI Approved :: Academic Free License (AFL)",
"Operating System :: POSIX",
"Topic :: Software Development",
"Topic :: Software Development :: Code Generators",
"Topic :: Software Development :: Testing",
"Natural Language :: English",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.7",
"Programming Language :: Python :: 3.8",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
],
)