Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
23 commits
Select commit Hold shift + click to select a range
545b8a4
[#187] Removed requirements.txt
Didou09 Mar 30, 2025
10d624c
[#187] Progressing, not there yet
Didou09 Mar 30, 2025
152c164
[#187] __version__ hard-coded in __init__.py
Didou09 Mar 31, 2025
33512cd
[#187] uv build working locally
Didou09 Mar 31, 2025
53188b0
[#187] Github Action now uses uv too
Didou09 Mar 31, 2025
5427d19
[#187] Github Action now uses uv 2
Didou09 Mar 31, 2025
6002901
[#187] Github Action now uses uv 3
Didou09 Mar 31, 2025
83f4c57
[#187] Github Action now uses uv 4
Didou09 Mar 31, 2025
10a9db5
[#187] Github Action now uses uv 5
Didou09 Mar 31, 2025
8c3cea3
[#187] Github Action now uses uv 6
Didou09 Mar 31, 2025
461050d
[#187] Github Action now uses uv 7
Didou09 Mar 31, 2025
3e750e7
[#187] Github Action now uses uv 8
Didou09 Mar 31, 2025
f8fc6f7
[#187] Github Action now uses uv 9
Didou09 Mar 31, 2025
0741edc
[#187] Github Action now uses uv 10
Didou09 Mar 31, 2025
cd9f283
[#187] Github Action now uses uv 11
Didou09 Mar 31, 2025
70be4a5
[#187] Github Action now uses uv 12
Didou09 Mar 31, 2025
d89df12
[#187] Fine tuning 2
Didou09 Mar 31, 2025
4931434
[#187] Try with PySide2
Didou09 Mar 31, 2025
3b87748
[#187] Platform-conditioned PySide2 vs PyQt5 dependencies
Didou09 Mar 31, 2025
4fba586
[#187] Removed PySide2 for Windows
Didou09 Mar 31, 2025
af11953
[#187] github action publish
Didou09 Mar 31, 2025
3cb6c85
[#187] github action publish sdist and wheel
Didou09 Mar 31, 2025
5a78d67
Merge pull request #213 from ToFuProject/Issue187_PyprojectToml
Didou09 Mar 31, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
27 changes: 12 additions & 15 deletions .github/workflows/python-publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,23 +19,20 @@ on:

jobs:
deploy:

name: Publish sdist to Pypi
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v2
- name: Set up Python
uses: actions/setup-python@v2
with:
python-version: '3.8'
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install setuptools wheel twine build
- name: Build package
run: python -m build
- name: Publish package
uses: pypa/gh-action-pypi-publish@27b31702a0e7fc50959f5ad993c78deac1bdfc29
- uses: actions/checkout@v4
- uses: astral-sh/setup-uv@v5
with:
python-version: '3.11'
- run: uv build
# Check that basic features work and we didn't miss to include crucial files
- name: Smoke test (wheel)
run: uv run --isolated --no-project -p 3.11 --with dist/*.whl datastock/tests
- name: Smoke test (source distribution)
run: uv run --isolated --no-project -p 3.11 --with dist/*.tar.gz datastock/tests
- run: uv publish --trusted-publishing always
with:
user: __token__
password: ${{ secrets.PYPI_API_TOKEN }}
38 changes: 17 additions & 21 deletions .github/workflows/python-testing-matrix.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,25 +21,21 @@ jobs:
python-version: ["3.8", "3.9", "3.10", "3.11"]

steps:
- uses: actions/checkout@v2
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v2

# git checkout
- uses: actions/checkout@v4

# Install uv
- name: Install uv
uses: astral-sh/setup-uv@v5
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
run: |
python -m pip install --upgrade pip
python -m pip install flake8 pytest
pip install -r requirements.txt
- name: Lint with flake8
run: |
# stop the build if there are Python syntax errors or undefined names
flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics
# exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide
flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics
- name: install datastock
run: |
pip install -e ".[dev]" # --no-build-isolation
- name: Test with pytest
run: |
pytest datastock/tests -v -x
python-version: ${{ matrix.python-version }}

# Install library
- name: Install the project
run: uv sync --all-extras --dev

# Run tests
- name: Run tests
# For example, using `pytest`
run: uv run pytest datastock/tests
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,9 @@ __pycache__/
# C extensions
*.so

# single sourcing verion file
datastock/_version.py

# Distribution / packaging
.Python
build/
Expand Down
11 changes: 11 additions & 0 deletions CLASSIFIERS.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
"Development Status :: 5 - Production/Stable"
"Intended Audience :: Science/Research"
"Programming Language :: Python :: 3"
"Programming Language :: Python :: 3.6"
"Programming Language :: Python :: 3.7"
"Programming Language :: Python :: 3.8"
"Programming Language :: Python :: 3.9"
"Programming Language :: Python :: 3.10"
"Programming Language :: Python :: 3.11"
"Natural Language :: English"
"License :: OSI Approved :: MIT License"
2 changes: 1 addition & 1 deletion LICENSE → LICENSE.txt
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
MIT License

Copyright (c) 2022 ToFuProject
Copyright (c) 2023 ToFuProject

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
Expand Down
1 change: 1 addition & 0 deletions MANIFEST.in
Original file line number Diff line number Diff line change
Expand Up @@ -3,3 +3,4 @@
include MANIFEST.in
include LICENSE.txt
include pyproject.toml
include CLASSIFIERS.txt
25 changes: 23 additions & 2 deletions datastock/__init__.py
Original file line number Diff line number Diff line change
@@ -1,10 +1,31 @@
# ###############
# __version__
# ###############


from .version import __version__
from . import _version
__version__ = _version.version
__version_tuple__ = _version.version_tuple


# from setuptools_scm import get_version
# __version__ = get_version(root='..', relative_to=__file__)


# from importlib.metadata import version
# __version__ = version(__package__)
# cleanup
# del get_version


# ###############
# sub-packages
# ###############


from . import _generic_check
from ._generic_utils_plot import *
from ._class import DataStock
from ._saveload import load, get_files
from ._direct_calls import *
from . import tests
from . import tests
2 changes: 1 addition & 1 deletion datastock/version.py
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
# Do not edit, pipeline versioning governed by git tags!
__version__ = '0.0.49'
__version__ = '0.0.49-1-g545b8a4'
81 changes: 42 additions & 39 deletions pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,64 +1,67 @@
[build-system]
requires = ["setuptools", "setuptools_scm"]
build-backend = "setuptools.build_meta"


[tool.setuptools.packages.find]
where = ["datastock"]
include = ["datastock*"]
namespaces = false


[tool.setuptools_scm]
version_file = "datastock/_version.py"


[tool.setuptools.dynamic]
readme = {file = ["README.md"]}
classifiers = {file = ["CLASSIFIERS.txt"]}


[project]
name = "datastock"
license = {file = "LICENSE"}
dynamic = ["version"]
license = {text = "MIT"}
dynamic = ["version", "readme", "classifiers"]
description = "Generic handler for multiple heterogenous numpy arrays and subclasses"
readme = "README.md"
requires-python = ">=3.6"
authors = [
{name = "Didier VEZINET", email = "didier.vezinet@gmail.com"},
{name = "Didier VEZINET", email = "didier.vezinet@gmail.com"},
]
maintainers = [
{name = "Didier VEZINET", email = "didier.vezinet@gmail.com"},
{name = "Didier VEZINET", email = "didier.vezinet@gmail.com"},
]
keywords = ["data", "analysis", "interactive", "heterogeneous arrays", "numpy", "Collection"]
classifiers = [
# How mature is this project? Common values are
# 3 - Alpha
# 4 - Beta
# 5 - Production/Stable
"Development Status :: 5 - Production/Stable",

# Indicate who your project is intended for
"Intended Audience :: Science/Research",

# Specify the Python versions you support here.
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.6",
"Programming Language :: Python :: 3.7",
"Programming Language :: Python :: 3.8",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
keywords = [
"data", "analysis", "interactive", "heterogeneous arrays", "numpy", "Collection",
]
requires-python = ">=3.8"
dependencies = [
"numpy",
"scipy",
"matplotlib",
"astropy",
"numpy",
"scipy",
"matplotlib",
"PyQt5 ; platform_system != 'Windows'",
# "PySide2; platform_system == 'Windows'",
"astropy",
]


[build-system]
requires = [
"setuptools>=40.8.0, <64",
"wheel",
"Cython>=0.26",
"numpy",
]
[project.urls]
Homepage = "https://github.com/ToFuProject/datastock"
Issues = "https://github.com/ToFuProject/datastock/issues"


[project.entry-points."datastock"]
datastock = "scripts.main:main"


[dependency-groups]
dev = [
"pytest",
]


[project.optional-dependencies]
linting = [
'ruff'
]
formatting = [
'ruff'
]

[project.entry-points."datastock"]
datastock = "scripts.main:main"
5 changes: 0 additions & 5 deletions requirements.txt

This file was deleted.

5 changes: 0 additions & 5 deletions setup.cfg

This file was deleted.

Loading
Loading