diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000..8a028b9 --- /dev/null +++ b/.dockerignore @@ -0,0 +1,9 @@ +# Only requirements.txt, dsc/ and start.py belong in the build context. +* +!requirements.txt +!start.py +!dsc/ + +# Keep local artifacts out even though dsc/ is re-included above. +dsc/**/__pycache__/ +dsc/**/*.py[cod] diff --git a/IMPROVEMENTS.md b/IMPROVEMENTS.md index 7143150..a2602c5 100644 --- a/IMPROVEMENTS.md +++ b/IMPROVEMENTS.md @@ -171,10 +171,14 @@ Acceptance criteria: - [ ] Separate configuration, subprocess execution, library resolution, and status monitoring so each can be tested independently. -- [ ] Remove unused imports and unnecessary dependencies. +- [x] Remove unused imports and unnecessary dependencies. Both pinned + requirements are used; `urllib3` is imported directly but only pinned + transitively through `requests`. - [ ] Add type annotations and static checks at external-input boundaries. - [ ] Make logging configurable and avoid forced dependency debug logs. -- [ ] Add `.dockerignore` and reduce unnecessary image packages. +- [ ] Add `.dockerignore` and reduce unnecessary image packages. `.dockerignore` + is in place; `binutils` and `squashfs-tools` are still shipped in the final + image because the AppImage is unpacked in the same stage. ### Establish a visible maintenance process diff --git a/dsc/client.py b/dsc/client.py index 6de560a..f91117b 100644 --- a/dsc/client.py +++ b/dsc/client.py @@ -4,7 +4,6 @@ import os import subprocess import time from typing import Optional -from urllib.parse import urlparse from cached_property import cached_property_with_ttl import requests diff --git a/start.py b/start.py index 8990974..9406c93 100755 --- a/start.py +++ b/start.py @@ -3,7 +3,6 @@ import argparse import logging import os -import os.path import sys from dsc import SeafileClient, const