diff --git a/.vscode/settings.json b/.vscode/settings.json index 0d15acf1..5f97c7fc 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -23,7 +23,6 @@ "terminal.ansiBrightWhite": "#ffffff", }, "python.testing.pytestEnabled": false, - "python.testing.nosetestsEnabled": false, "python.testing.unittestEnabled": true, "python.testing.unittestArgs": [ "-v", @@ -35,18 +34,40 @@ "python.linting.pylintEnabled": true, "python.linting.flake8Enabled": true, "python.linting.banditEnabled": true, + "python.linting.mypyEnabled": true, + "python.linting.mypyArgs": [ + "--ignore-missing-imports", + "--follow-imports=silent", + "--show-column-numbers", + "--strict" + ], "python.linting.flake8Args": [ "--max-line-length=120", - "--ignore=E722,F405,E203,W503,W293,E402", + "--ignore=E722,F405,E203,W503,W293,E402,E501,E128", ], "python.linting.banditArgs": [ "--ignore=B104" ], + "python.linting.pylintArgs": [ + "--disable=missing-module-docstring", + "--disable=missing-class-docstring", + "--disable=missing-function-docstring", + "--disable=wrong-import-position", + "--disable=raise-missing-from", + "--disable=bare-except", + "--disable=invalid-name", + "--disable=line-too-long", + "--disable=consider-using-f-string" + ], + // python3 -m isort --py=27 --profile=black copyparty/ "python.formatting.provider": "black", "editor.formatOnSave": true, "[html]": { "editor.formatOnSave": false, }, + "[css]": { + "editor.formatOnSave": false, + }, "files.associations": { "*.makefile": "makefile" }, diff --git a/copyparty/fsutil.py b/copyparty/fsutil.py index 88b33ef8..39f44418 100644 --- a/copyparty/fsutil.py +++ b/copyparty/fsutil.py @@ -2,12 +2,12 @@ from __future__ import print_function, unicode_literals import ctypes -import time import re +import time from .__init__ import ANYWIN, MACOS -from .util import min_ex, chkcmd -from .authsrv import VFS, AXS +from .authsrv import AXS, VFS +from .util import chkcmd, min_ex try: from typing import Optional, Union @@ -117,7 +117,7 @@ class Fstab(object): def get_w32(self, path: str): # list mountpoints: fsutil fsinfo drives - from ctypes.wintypes import LPCWSTR, LPWSTR, DWORD, LPDWORD, BOOL, MAX_PATH + from ctypes.wintypes import BOOL, DWORD, LPCWSTR, LPDWORD, LPWSTR, MAX_PATH def echk(rc, fun, args): if not rc: diff --git a/copyparty/httpcli.py b/copyparty/httpcli.py index a0d5d566..662e4465 100644 --- a/copyparty/httpcli.py +++ b/copyparty/httpcli.py @@ -2065,7 +2065,7 @@ class HttpCli(object): for v in self.rvol: d1, d2 = v.rsplit("/", 1) if "/" in v else ["", v] if d1 == top: - vfs_virt[d2] = vn # typechk, value never read + vfs_virt[d2] = self.asrv.vfs # typechk, value never read dirs = [] diff --git a/copyparty/up2k.py b/copyparty/up2k.py index 3eac983d..8e6f4ff2 100644 --- a/copyparty/up2k.py +++ b/copyparty/up2k.py @@ -21,8 +21,8 @@ from queue import Queue from .__init__ import ANYWIN, PY2, TYPE_CHECKING, WINDOWS from .authsrv import LEELOO_DALLAS, VFS, AuthSrv from .bos import bos -from .mtag import MParser, MTag from .fsutil import Fstab +from .mtag import MParser, MTag from .util import ( HAVE_SQLITE3, SYMTIME, diff --git a/copyparty/util.py b/copyparty/util.py index d626d760..1177fb5c 100644 --- a/copyparty/util.py +++ b/copyparty/util.py @@ -1697,7 +1697,9 @@ def termsize() -> tuple[int, int]: def ioctl_GWINSZ(fd): try: - import fcntl, termios, struct + import fcntl + import struct + import termios cr = struct.unpack("hh", fcntl.ioctl(fd, termios.TIOCGWINSZ, "1234")) except: diff --git a/scripts/deps-docker/Dockerfile b/scripts/deps-docker/Dockerfile index 9b15fd4d..7656faf9 100644 --- a/scripts/deps-docker/Dockerfile +++ b/scripts/deps-docker/Dockerfile @@ -1,10 +1,10 @@ -FROM alpine:3.15 +FROM alpine:3.16 WORKDIR /z ENV ver_asmcrypto=5b994303a9d3e27e0915f72a10b6c2c51535a4dc \ ver_hashwasm=4.9.0 \ - ver_marked=4.0.16 \ + ver_marked=4.0.17 \ ver_mde=2.16.1 \ - ver_codemirror=5.65.4 \ + ver_codemirror=5.65.5 \ ver_fontawesome=5.13.0 \ ver_zopfli=1.0.3 @@ -32,7 +32,7 @@ RUN mkdir -p /z/dist/no-pk \ && npm install \ && npm i grunt uglify-js -g ) \ && (tar -xf codemirror.tgz \ - && cd CodeMirror-$ver_codemirror \ + && cd codemirror5-$ver_codemirror \ && npm install ) \ && (tar -xf mde.tgz \ && cd easy-markdown-editor* \ @@ -87,7 +87,7 @@ RUN cd marked-$ver_marked \ # build codemirror COPY codemirror.patch /z/ -RUN cd CodeMirror-$ver_codemirror \ +RUN cd codemirror5-$ver_codemirror \ && patch -p1 < /z/codemirror.patch \ && sed -ri '/^var urlRE = /d' mode/gfm/gfm.js \ && npm run build \ diff --git a/scripts/deps-docker/Makefile b/scripts/deps-docker/Makefile index 6e919fda..e24eee9f 100644 --- a/scripts/deps-docker/Makefile +++ b/scripts/deps-docker/Makefile @@ -23,4 +23,4 @@ purge: sh: @printf "\n\033[1;31mopening a shell in the most recently created docker image\033[0m\n" - docker run --rm -it `docker images -aq | head -n 1` /bin/bash + docker run --rm -it `docker images -aq | head -n 1` /bin/ash diff --git a/scripts/deps-docker/marked-ln.patch b/scripts/deps-docker/marked-ln.patch index 01e326a1..9a60a8ea 100644 --- a/scripts/deps-docker/marked-ln.patch +++ b/scripts/deps-docker/marked-ln.patch @@ -1,5 +1,5 @@ diff --git a/src/Lexer.js b/src/Lexer.js -adds linetracking to marked.js v4.0.6; +adds linetracking to marked.js v4.0.17; add data-ln="%d" to most tags, %d is the source markdown line --- a/src/Lexer.js +++ b/src/Lexer.js