diff --git a/.github/workflows/docker-publish.yml b/.github/workflows/docker-publish.yml index 544f707d..77d0f86d 100644 --- a/.github/workflows/docker-publish.yml +++ b/.github/workflows/docker-publish.yml @@ -6,9 +6,8 @@ name: Upload Docker Image # documentation. on: - push: - # Publish semver tags as releases. - tags: [ 'v*.*.*' ] + release: + types: [published] env: # Use docker.io for Docker Hub if empty @@ -39,13 +38,12 @@ jobs: # multi-platform images and export cache # https://github.com/docker/setup-buildx-action - name: Set up Docker Buildx - uses: docker/setup-buildx-action@f95db51fddba0c2d1ec667646a06c2ce06100226 # v3.0.0 + uses: docker/setup-buildx-action@v3 # Login against a Docker registry except on PR # https://github.com/docker/login-action - name: Log into registry ${{ env.REGISTRY }} - if: github.event_name != 'pull_request' - uses: docker/login-action@343f7c4344506bcbf9b4de18042ae17996df046d # v3.0.0 + uses: docker/login-action@v3 with: registry: ${{ env.REGISTRY }} username: ${{ secrets.DOCKER_USERNAME }} @@ -55,7 +53,7 @@ jobs: # https://github.com/docker/metadata-action - name: Extract Docker metadata id: meta - uses: docker/metadata-action@96383f45573cb7f253c731d3b3ab81c87ef81934 # v5.0.0 + uses: docker/metadata-action@v5 with: images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }} @@ -63,10 +61,10 @@ jobs: # https://github.com/docker/build-push-action - name: Build and push Docker image id: build-and-push - uses: docker/build-push-action@0565240e2d4ab88bba5387d719585280857ece09 # v5.0.0 + uses: docker/build-push-action@v6 with: context: . - push: ${{ github.event_name != 'pull_request' }} + push: true tags: ${{ steps.meta.outputs.tags }} labels: ${{ steps.meta.outputs.labels }} cache-from: type=gha diff --git a/.github/workflows/python-publish.yml b/.github/workflows/python-publish.yml index 9ce7caa0..907de411 100644 --- a/.github/workflows/python-publish.yml +++ b/.github/workflows/python-publish.yml @@ -9,9 +9,8 @@ name: Upload Python Package on: - push: - # Publish semver tags as releases. - tags: [ 'v*.*.*' ] + release: + types: [published] permissions: contents: read @@ -34,4 +33,4 @@ jobs: - name: Build package run: python -m build - name: Publish package - uses: pypa/gh-action-pypi-publish@27b31702a0e7fc50959f5ad993c78deac1bdfc29 + uses: pypa/gh-action-pypi-publish@release/v1 diff --git a/Dockerfile b/Dockerfile index d3a0d2ce..ee506fd2 100644 --- a/Dockerfile +++ b/Dockerfile @@ -2,11 +2,14 @@ FROM python:3.12 WORKDIR /app +COPY . . + ENV PYTHONUNBUFFERED=1 -RUN apt-get update && apt-get install -y libgl1 \ - && rm -rf /var/lib/apt/lists/* +RUN apt-get update && apt-get install -y libgl1 + +RUN pip install -r requirements.txt -RUN pip install pdf2zh +RUN pip install . CMD ["pdf2zh", "-i"] \ No newline at end of file diff --git a/pdf2zh/__init__.py b/pdf2zh/__init__.py index c0b26639..c03a9d9d 100644 --- a/pdf2zh/__init__.py +++ b/pdf2zh/__init__.py @@ -1,2 +1,2 @@ -__version__ = "1.7.8" +__version__ = "1.7.9" __author__ = "Byaidu" diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 00000000..0cc9bdcf --- /dev/null +++ b/requirements.txt @@ -0,0 +1,15 @@ +charset-normalizer +cryptography +requests +pymupdf +tqdm +tenacity +doclayout-yolo +numpy +ollama +deepl<1.19.1 +openai +azure-ai-translation-text<=1.0.1 +gradio +huggingface_hub +torch \ No newline at end of file diff --git a/setup.py b/setup.py index fdce12e5..57225f72 100644 --- a/setup.py +++ b/setup.py @@ -1,11 +1,12 @@ -from pathlib import Path from pdf2zh import __version__, __author__ from setuptools import setup -root_dir = Path(__file__).parent -with open(root_dir / "README.md", encoding='utf-8') as f: +with open("README.md", encoding='utf-8') as f: readme = f.read() +with open("requirements.txt", encoding='utf-8') as f: + requirements = f.readlines() + setup( name="pdf2zh", long_description=readme, @@ -17,23 +18,7 @@ author_email="byaidux@gmail.com", url="https://github.com/Byaidu/PDFMathTranslate", packages=["pdf2zh"], - install_requires=[ - "charset-normalizer", - "cryptography", - "requests", - "pymupdf", - "tqdm", - "tenacity", - "doclayout-yolo", - "numpy", - "ollama", - "deepl<1.19.1", - "openai", - "azure-ai-translation-text<=1.0.1", - "gradio", - "huggingface_hub", - "torch", - ], + install_requires=requirements, classifiers=[ "Programming Language :: Python :: 3", "Operating System :: OS Independent",