mirror of
https://github.com/iluvcapra/wavinfo.git
synced 2025-12-31 17:00:41 +00:00
Compare commits
23 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
925bf4f8a6 | ||
|
|
e98ba0bf07 | ||
| afca634dc3 | |||
|
|
df9ae0f4d6 | ||
|
|
2f23bcb982 | ||
| 5e641b0963 | |||
| 1b57ad0fac | |||
| c7a34e0064 | |||
| 6b788484da | |||
| 76905f1a40 | |||
| 9ac06040a2 | |||
| 1b78f5b821 | |||
| 03d718b4ad | |||
| 61f79760e6 | |||
|
|
afe5ea9ed3 | ||
|
|
c1205d52e8 | ||
|
|
b82b6b6d43 | ||
|
|
8ef664266f | ||
|
|
dfb7e34fc7 | ||
|
|
2ebdefaab5 | ||
|
|
c609e22270 | ||
|
|
ef9c39f1b6 | ||
|
|
cc9d884ea8 |
6
.github/workflows/python-package.yml
vendored
6
.github/workflows/python-package.yml
vendored
@@ -16,7 +16,7 @@ jobs:
|
|||||||
strategy:
|
strategy:
|
||||||
fail-fast: false
|
fail-fast: false
|
||||||
matrix:
|
matrix:
|
||||||
python-version: ["3.8", "3.9", "3.10", "3.11", "3.12", "3.13"]
|
python-version: ["3.9", "3.10", "3.11", "3.12", "3.13", "3.14"]
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2.5.0
|
- uses: actions/checkout@v2.5.0
|
||||||
@@ -27,8 +27,8 @@ jobs:
|
|||||||
- name: Install dependencies
|
- name: Install dependencies
|
||||||
run: |
|
run: |
|
||||||
python -m pip install --upgrade pip
|
python -m pip install --upgrade pip
|
||||||
python -m pip install pytest
|
python -m pip install --group dev
|
||||||
python -m pip install -e .
|
python -m pip install .
|
||||||
- name: Setup FFmpeg
|
- name: Setup FFmpeg
|
||||||
uses: FedericoCarboni/setup-ffmpeg@v2
|
uses: FedericoCarboni/setup-ffmpeg@v2
|
||||||
- name: Test with pytest
|
- name: Test with pytest
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
# This workflow will install Python dependencies, run tests and lint with a variety of Python versions
|
# This workflow will install Python dependencies, run tests and lint with a variety of Python versions
|
||||||
# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-python
|
# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-python
|
||||||
|
|
||||||
name: Flake8
|
name: Lint with Ruff
|
||||||
|
|
||||||
on:
|
on:
|
||||||
push:
|
push:
|
||||||
@@ -11,12 +11,11 @@ on:
|
|||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
build:
|
build:
|
||||||
|
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
strategy:
|
strategy:
|
||||||
fail-fast: false
|
fail-fast: false
|
||||||
matrix:
|
matrix:
|
||||||
python-version: ["3.11"]
|
python-version: ["3.13", "3.14"]
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2.5.0
|
- uses: actions/checkout@v2.5.0
|
||||||
@@ -27,14 +26,8 @@ jobs:
|
|||||||
- name: Install dependencies
|
- name: Install dependencies
|
||||||
run: |
|
run: |
|
||||||
python -m pip install --upgrade pip
|
python -m pip install --upgrade pip
|
||||||
python -m pip install flake8
|
python -m pip install --group dev
|
||||||
python -m pip install -e .
|
python -m pip install .
|
||||||
- name: Lint with flake8
|
- name: Lint with ruff
|
||||||
run: |
|
run: |
|
||||||
# stop the build if there are Python syntax errors or undefined names
|
ruff check src
|
||||||
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: Lint with flake8
|
|
||||||
run: |
|
|
||||||
flake8 wavinfo
|
|
||||||
40
.github/workflows/pythonpublish.yml
vendored
40
.github/workflows/pythonpublish.yml
vendored
@@ -8,29 +8,33 @@ jobs:
|
|||||||
deploy:
|
deploy:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v1
|
- uses: actions/checkout@v4.2.2
|
||||||
- name: Set up Python
|
- name: Set up Python
|
||||||
uses: actions/setup-python@v1
|
uses: actions/setup-python@v5.3.0
|
||||||
with:
|
with:
|
||||||
python-version: '3.x'
|
python-version: '3.x'
|
||||||
- name: Install dependencies
|
- name: Install dependencies
|
||||||
run: |
|
run: |
|
||||||
python -m pip install --upgrade pip
|
python -m pip install --upgrade pip
|
||||||
pip install setuptools build wheel twine lxml
|
- name: Setup uv and Handle Its Cache
|
||||||
- name: Build and publish
|
# You may pin to the exact commit or the version.
|
||||||
env:
|
# uses: hynek/setup-cached-uv@757bedc3f972eb7227a1aa657651f15a8527c817
|
||||||
TWINE_USERNAME: __token__
|
uses: hynek/setup-cached-uv@v2.3.0
|
||||||
TWINE_PASSWORD: ${{ secrets.PYPI_APIKEY }}
|
- name: Build
|
||||||
run: |
|
run: |
|
||||||
python -m build .
|
uv build --wheel
|
||||||
twine upload dist/*
|
- name: Publish to Pypi
|
||||||
- name: Report to Mastodon
|
uses: pypa/gh-action-pypi-publish@v1.13.0
|
||||||
uses: cbrgm/mastodon-github-action@v1.0.1
|
|
||||||
with:
|
with:
|
||||||
message: |
|
password: ${{ secrets.PYPI_APIKEY }}
|
||||||
I just released a new version of wavinfo, my library for reading WAVE file metadata!
|
# - name: Send Bluesky Post
|
||||||
#sounddesign #filmmaking #audio #python
|
# uses: myConsciousness/bluesky-post@v5
|
||||||
${{ github.server_url }}/${{ github.repository }}
|
# with:
|
||||||
env:
|
# text: |
|
||||||
MASTODON_URL: ${{ secrets.MASTODON_URL }}
|
# I've released a new version of wavinfo, my module for
|
||||||
MASTODON_ACCESS_TOKEN: ${{ secrets.MASTODON_ACCESS_TOKEN }}
|
# reading WAVE metadata.
|
||||||
|
# link-preview-url: ${{ github.server_url }}/${{ github.repository }}
|
||||||
|
# identifier: ${{ secrets.BLUESKY_APP_USER }}
|
||||||
|
# password: ${{ secrets.BLUESKY_APP_PASSWORD }}
|
||||||
|
# service: bsky.social
|
||||||
|
# retry-count: 1
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
 [](https://wavinfo.readthedocs.io/en/latest/?badge=latest) 
|
 [](https://wavinfo.readthedocs.io/en/latest/?badge=latest) 
|
||||||
|
|
||||||
[](https://github.com/iluvcapra/wavinfo/actions/workflows/python-package.yml)
|
[](https://github.com/iluvcapra/wavinfo/actions/workflows/python-package.yml)
|
||||||
[](https://github.com/iluvcapra/wavinfo/actions/workflows/python-flake8.yml)
|
[](https://github.com/iluvcapra/wavinfo/actions/workflows/python-ruff.yml)
|
||||||
[](https://codecov.io/gh/iluvcapra/wavinfo)
|
[](https://codecov.io/gh/iluvcapra/wavinfo)
|
||||||
|
|
||||||
# wavinfo
|
# wavinfo
|
||||||
|
|||||||
@@ -1,27 +1,26 @@
|
|||||||
# https://python-poetry.org/docs/pyproject/
|
|
||||||
|
|
||||||
[build-system]
|
[build-system]
|
||||||
requires = ["poetry-core"]
|
requires = ["uv_build>=0.8.18,<0.9.0"]
|
||||||
build-backend = "poetry.core.masonry.api"
|
build-backend = "uv_build"
|
||||||
|
|
||||||
[tool.poetry]
|
[project]
|
||||||
name = "wavinfo"
|
name = "wavinfo"
|
||||||
version = "3.1.0"
|
version = "4.0.0"
|
||||||
description = "Probe WAVE files for all metadata"
|
description = "Probe WAVE files for all metadata"
|
||||||
authors = ["Jamie Hardt <jamiehardt@me.com>"]
|
authors = [{ name = "Jamie Hardt", email = "jamiehardt@me.com"}]
|
||||||
license = "MIT"
|
license = "MIT"
|
||||||
readme = "README.md"
|
readme = "README.md"
|
||||||
|
requires-python = ">=3.8"
|
||||||
classifiers = [
|
classifiers = [
|
||||||
'Development Status :: 5 - Production/Stable',
|
'Development Status :: 5 - Production/Stable',
|
||||||
'License :: OSI Approved :: MIT License',
|
'License :: OSI Approved :: MIT License',
|
||||||
'Topic :: Multimedia',
|
'Topic :: Multimedia',
|
||||||
'Topic :: Multimedia :: Sound/Audio',
|
'Topic :: Multimedia :: Sound/Audio',
|
||||||
"Programming Language :: Python :: 3.8",
|
|
||||||
"Programming Language :: Python :: 3.9",
|
"Programming Language :: Python :: 3.9",
|
||||||
"Programming Language :: Python :: 3.10",
|
"Programming Language :: Python :: 3.10",
|
||||||
"Programming Language :: Python :: 3.11",
|
"Programming Language :: Python :: 3.11",
|
||||||
"Programming Language :: Python :: 3.12",
|
"Programming Language :: Python :: 3.12",
|
||||||
"Programming Language :: Python :: 3.13"
|
"Programming Language :: Python :: 3.13",
|
||||||
|
"Programming Language :: Python :: 3.14"
|
||||||
]
|
]
|
||||||
homepage = "https://github.com/iluvcapra/wavinfo"
|
homepage = "https://github.com/iluvcapra/wavinfo"
|
||||||
repository = "https://github.com/iluvcapra/wavinfo.git"
|
repository = "https://github.com/iluvcapra/wavinfo.git"
|
||||||
@@ -39,17 +38,22 @@ keywords = [
|
|||||||
'broadcast'
|
'broadcast'
|
||||||
]
|
]
|
||||||
|
|
||||||
[tool.poetry.extras]
|
dependencies = [
|
||||||
doc = ['sphinx', 'sphinx_rtd_theme']
|
"lxml>=6.0.2",
|
||||||
|
]
|
||||||
|
|
||||||
[tool.poetry.scripts]
|
[dependency-groups]
|
||||||
wavinfo = 'wavinfo.__main__:main'
|
dev = [
|
||||||
|
"pytest>=8.3.5",
|
||||||
|
"ruff>=0.14.0",
|
||||||
|
]
|
||||||
|
doc = [
|
||||||
|
"sphinx>=7.1.2",
|
||||||
|
"sphinx-rtd-theme>=3.0.2",
|
||||||
|
]
|
||||||
|
|
||||||
[tool.poetry.dependencies]
|
[project.scripts]
|
||||||
python = "^3.8"
|
wavinfo = "wavinfo:__main__.main"
|
||||||
lxml = "~= 5.3.0"
|
|
||||||
sphinx_rtd_theme = {version= '>= 1.1.1', optional=true}
|
|
||||||
sphinx = {version= '>= 5.3.0', optional=true}
|
|
||||||
|
|
||||||
[tool.pyright]
|
[tool.pyright]
|
||||||
typeCheckingMode = "basic"
|
typeCheckingMode = "basic"
|
||||||
@@ -65,3 +69,4 @@ disable = [
|
|||||||
"R0913", # (too-many-arguments)
|
"R0913", # (too-many-arguments)
|
||||||
"W0105", # (pointless-string-statement)
|
"W0105", # (pointless-string-statement)
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|||||||
@@ -2,5 +2,8 @@
|
|||||||
Probe WAVE Files for iXML, Broadcast-WAVE and other metadata.
|
Probe WAVE Files for iXML, Broadcast-WAVE and other metadata.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
|
__all__ = ['WavInfoReader', 'WavInfoEOFError']
|
||||||
|
|
||||||
from .wave_reader import WavInfoReader
|
from .wave_reader import WavInfoReader
|
||||||
from .riff_parser import WavInfoEOFError
|
from .riff_parser import WavInfoEOFError
|
||||||
|
|
||||||
Reference in New Issue
Block a user