Byaidu 1 năm trước cách đây
mục cha
commit
54d6c9160c

+ 7 - 9
.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

+ 3 - 4
.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

+ 6 - 3
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"]

+ 1 - 1
pdf2zh/__init__.py

@@ -1,2 +1,2 @@
-__version__ = "1.7.8"
+__version__ = "1.7.9"
 __author__ = "Byaidu"

+ 15 - 0
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

+ 5 - 20
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 @@ setup(
     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",