1 Commits

Author SHA1 Message Date
Jamie Hardt
8e466ea9fc Added poetry.lock to gitignore 2025-05-24 22:29:06 -07:00
34 changed files with 58 additions and 61 deletions

View File

@@ -1,4 +1,4 @@
[flake8] [flake8]
per-file-ignores = per-file-ignores =
src/ptulsconv/__init__.py: F401 ptulsconv/__init__.py: F401
src/ptulsconv/docparser/__init__.py: F401 ptulsconv/docparser/__init__.py: F401

View File

@@ -16,7 +16,7 @@ jobs:
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:
python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"] python-version: [3.8, 3.9, "3.10", "3.11", "3.12"]
steps: steps:
- uses: actions/checkout@v2.5.0 - uses: actions/checkout@v2.5.0
@@ -32,9 +32,10 @@ jobs:
- name: Lint with flake8 - name: Lint with flake8
run: | run: |
# stop the build if there are Python syntax errors or undefined names # stop the build if there are Python syntax errors or undefined names
flake8 src/ptulsconv tests --count --select=E9,F63,F7,F82 --show-source --statistics flake8 ptulsconv tests --count --select=E9,F63,F7,F82 --show-source --statistics
# exit-zero treats all errors as warnings. # exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide
flake8 src/ptulsconv tests --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics flake8 ptulsconv tests --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics
- name: Test with pytest - name: Test with pytest
run: | run: |
pytest pytest
flake8 ptulsconv

View File

@@ -26,4 +26,14 @@ jobs:
- name: Build package - name: Build package
run: python -m build run: python -m build
- name: pypi-publish - name: pypi-publish
uses: pypa/gh-action-pypi-publish@v1.13.0 uses: pypa/gh-action-pypi-publish@v1.12.4
# - name: Report to Mastodon
# uses: cbrgm/mastodon-github-action@v1.0.1
# with:
# message: |
# I just released a new version of ptulsconv, my ADR cue sheet generator!
# #python #protools #pdf #filmmaking
# ${{ github.server_url }}/${{ github.repository }}
# env:
# MASTODON_URL: ${{ secrets.MASTODON_URL }}
# MASTODON_ACCESS_TOKEN: ${{ secrets.MASTODON_ACCESS_TOKEN }}

2
.gitignore vendored
View File

@@ -109,3 +109,5 @@ lcov.info
.vim .vim
.vscode .vscode
poetry.lock

View File

@@ -3,7 +3,6 @@
# For the full list of built-in configuration values, see the documentation: # For the full list of built-in configuration values, see the documentation:
# https://www.sphinx-doc.org/en/master/usage/configuration.html # https://www.sphinx-doc.org/en/master/usage/configuration.html
import importlib
import sys import sys
import os import os
@@ -16,9 +15,9 @@ import ptulsconv
# https://www.sphinx-doc.org/en/master/usage/configuration.html#project-information # https://www.sphinx-doc.org/en/master/usage/configuration.html#project-information
project = 'ptulsconv' project = 'ptulsconv'
copyright = '2019-2025 Jamie Hardt. All rights reserved' copyright = '2019-2023 Jamie Hardt. All rights reserved'
version = "Version 2" # author = ptulsconv.__author__
release = importlib.metadata.version("ptulsconv") release = ptulsconv.__version__
# -- General configuration --------------------------------------------------- # -- General configuration ---------------------------------------------------
# https://www.sphinx-doc.org/en/master/usage/configuration.html#general-configuration # https://www.sphinx-doc.org/en/master/usage/configuration.html#general-configuration

View File

@@ -6,12 +6,7 @@ Usage Form
Invocations of ptulsconv take the following form: Invocations of ptulsconv take the following form:
ptulsconv [options] [IN_FILE] ptulsconv [options] IN_FILE
`IN_FILE` is a Pro Tools text export in UTF-8 encoding. If `IN_FILE` is
missing, `ptulsconv` will attempt to connect to Pro Tools and read cue data
from the selected tracks of the currently-open session.
Flags Flags

3
ptulsconv/__init__.py Normal file
View File

@@ -0,0 +1,3 @@
"""
Parse and convert Pro Tools text exports
"""

View File

@@ -2,10 +2,7 @@ from optparse import OptionParser, OptionGroup
import datetime import datetime
import sys import sys
import importlib.metadata from ptulsconv import __name__, __copyright__
from ptulsconv import __name__
import ptulsconv
from ptulsconv.commands import convert from ptulsconv.commands import convert
from ptulsconv.reporting import print_status_style, \ from ptulsconv.reporting import print_status_style, \
print_banner_style, print_section_header_style, \ print_banner_style, print_section_header_style, \
@@ -84,10 +81,8 @@ def main():
'and exit.') 'and exit.')
parser.add_option_group(informational_options) parser.add_option_group(informational_options)
version = importlib.metadata.version(ptulsconv.__name__) print_banner_style(__copyright__)
print_banner_style(f"{ptulsconv.__name__} - version {version}")
print_banner_style(ptulsconv.__copyright__)
(options, args) = parser.parse_args(sys.argv) (options, args) = parser.parse_args(sys.argv)

View File

@@ -1,52 +1,49 @@
[project] [project]
name = "ptulsconv" name = "ptulsconv"
version = "4.0.0"
description = "Read Pro Tools Text exports and generate PDF ADR Reports, JSON"
readme = "README.md"
requires-python = ">=3.9"
license = { file = "LICENSE" } license = { file = "LICENSE" }
keywords = ["text-processing", "parsers", "film",
"broadcast", "editing", "editorial"]
classifiers = [ classifiers = [
'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",
"Development Status :: 5 - Production/Stable", "Development Status :: 5 - Production/Stable",
"Topic :: Text Processing :: Filters" "Topic :: Text Processing :: Filters"
] ]
authors = [{name = "Jamie Hardt", email = "<jamiehardt@me.com>"}] requires-python = ">=3.8"
dependencies = [ keywords = ["text-processing", "parsers", "film",
"parsimonious>=0.10.0", "broadcast", "editing", "editorial"]
"py-ptsl>=600.0.0",
"reportlab>=4.4.4", [tool.poetry]
"tqdm>=4.67.1", name = "ptulsconv"
] version = "2.2.2"
description = "Read Pro Tools Text exports and generate PDF ADR Reports, JSON"
authors = ["Jamie Hardt <jamiehardt@me.com>"]
license = "MIT"
readme = "README.md"
[tool.poetry.dependencies]
python = "^3.8"
parsimonious = "^0.10.0"
tqdm = "^4.67.1"
reportlab = "^4.4.1"
py-ptsl = "^101.1.0"
[tool.poetry.extras]
doc = ['sphinx', 'sphinx_rtd_theme']
[tool.poetry.scripts]
wavinfo = 'ptulsconv.__main__:main'
[project.urls] [project.urls]
Source = 'https://github.com/iluvcapra/ptulsconv' Source = 'https://github.com/iluvcapra/ptulsconv'
Issues = 'https://github.com/iluvcapra/ptulsconv/issues' Issues = 'https://github.com/iluvcapra/ptulsconv/issues'
Documentation = 'https://ptulsconv.readthedocs.io/' Documentation = 'https://ptulsconv.readthedocs.io/'
[project.optional-dependencies]
doc = [
"sphinx>=7.4.7",
"sphinx-rtd-theme>=3.0.2",
]
[project.scripts]
ptulsconv = "ptulsconv:__main__.main"
[build-system] [build-system]
requires = ["uv_build>=0.8.18,<0.9.0"] requires = ["poetry-core"]
build-backend = "uv_build" build-backend = "poetry.core.masonry.api"
[dependency-groups]
dev = [
"flake8>=7.3.0",
]

View File

@@ -1,5 +0,0 @@
"""
Parse and convert Pro Tools text exports
"""
__copyright__ = "ptulsconv (c) 2025 Jamie Hardt. All rights reserved."