lfss 0.7.5__py3-none-any.whl → 0.7.6__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
lfss/cli/cli.py CHANGED
@@ -1,7 +1,18 @@
1
1
  from lfss.client import Connector, upload_directory, upload_file, download_file, download_directory
2
- from lfss.src.datatype import FileReadPermission
3
2
  from pathlib import Path
4
3
  import argparse
4
+ from lfss.src.datatype import FileReadPermission
5
+
6
+ def parse_permission(s: str) -> FileReadPermission:
7
+ if s.lower() == "public":
8
+ return FileReadPermission.PUBLIC
9
+ if s.lower() == "protected":
10
+ return FileReadPermission.PROTECTED
11
+ if s.lower() == "private":
12
+ return FileReadPermission.PRIVATE
13
+ if s.lower() == "unset":
14
+ return FileReadPermission.UNSET
15
+ raise ValueError(f"Invalid permission {s}")
5
16
 
6
17
  def parse_arguments():
7
18
  parser = argparse.ArgumentParser(description="Command line interface, please set LFSS_ENDPOINT and LFSS_TOKEN environment variables.")
@@ -16,7 +27,7 @@ def parse_arguments():
16
27
  sp_upload.add_argument("-j", "--jobs", type=int, default=1, help="Number of concurrent uploads")
17
28
  sp_upload.add_argument("--interval", type=float, default=0, help="Interval between files, only works with directory upload")
18
29
  sp_upload.add_argument("--conflict", choices=["overwrite", "abort", "skip", "skip-ahead"], default="abort", help="Conflict resolution")
19
- sp_upload.add_argument("--permission", type=FileReadPermission, default=FileReadPermission.UNSET, help="File permission")
30
+ sp_upload.add_argument("--permission", type=parse_permission, default=FileReadPermission.UNSET, help="File permission, can be public, protected, private, or unset")
20
31
  sp_upload.add_argument("--retries", type=int, default=0, help="Number of retries")
21
32
 
22
33
  # download
lfss/cli/user.py CHANGED
@@ -1,5 +1,6 @@
1
1
  import argparse, asyncio
2
2
  from contextlib import asynccontextmanager
3
+ from .cli import parse_permission, FileReadPermission
3
4
  from ..src.database import Database, FileReadPermission, transaction, UserConn
4
5
  from ..src.connection_pool import global_entrance
5
6
 
@@ -21,9 +22,9 @@ async def _main():
21
22
  sp_add = sp.add_parser('add')
22
23
  sp_add.add_argument('username', type=str)
23
24
  sp_add.add_argument('password', type=str)
24
- sp_add.add_argument('--admin', action='store_true')
25
- sp_add.add_argument('--permission', type=FileReadPermission, default=FileReadPermission.UNSET)
26
- sp_add.add_argument('--max-storage', type=parse_storage_size, default="1G")
25
+ sp_add.add_argument('--admin', action='store_true', help='Set user as admin')
26
+ sp_add.add_argument("--permission", type=parse_permission, default=FileReadPermission.UNSET, help="File permission, can be public, protected, private, or unset")
27
+ sp_add.add_argument('--max-storage', type=parse_storage_size, default="1G", help="Maximum storage size, e.g. 1G, 100M, 10K")
27
28
 
28
29
  sp_delete = sp.add_parser('delete')
29
30
  sp_delete.add_argument('username', type=str)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: lfss
3
- Version: 0.7.5
3
+ Version: 0.7.6
4
4
  Summary: Lightweight file storage service
5
5
  Home-page: https://github.com/MenxLi/lfss
6
6
  Author: li, mengxun
@@ -9,10 +9,10 @@ frontend/scripts.js,sha256=hQ8m3L7P-LplLqrPUWD6pBo4C_tCUl2XZKRNtkWBy8I,21155
9
9
  frontend/styles.css,sha256=wly8O-zF4EUgV12Tv1bATSfmJsLITv2u3_SiyXVaxv4,4096
10
10
  frontend/utils.js,sha256=Ts4nlef8pkrEgpwX-uQwAhWvwxlIzex8ijDLNCa22ps,2372
11
11
  lfss/cli/balance.py,sha256=heOgwH6oNnfYsKJfA4VxWKdEXPstdVbbRXWxcDqLIS0,4176
12
- lfss/cli/cli.py,sha256=Yup3xIVEQPu10uM8dq1bvre1fK5ngweQHxXZsgQq4Hc,4187
12
+ lfss/cli/cli.py,sha256=LH1nx5wI1K2DZ3hvHz7oq5HcXVDoW2V6sr7q9gJ8gqo,4621
13
13
  lfss/cli/panel.py,sha256=iGdVmdWYjA_7a78ZzWEB_3ggIOBeUKTzg6F5zLaB25c,1401
14
14
  lfss/cli/serve.py,sha256=bO3GT0kuylMGN-7bZWP4e71MlugGZ_lEMkYaYld_Ntg,985
15
- lfss/cli/user.py,sha256=h-USWF6lB0Ztm9vwQznqsghKJ5INq5mBmaQeX2D5F-w,3490
15
+ lfss/cli/user.py,sha256=-ePmx_jhqfPQDl_9i_C_St9ujlCyyWSqNJUvc26v4_4,3686
16
16
  lfss/client/__init__.py,sha256=8uvcKs3PYQamDd_cjfN-fX9QUohEzJqeJlOYkBlzC3M,4556
17
17
  lfss/client/api.py,sha256=kSkB4wADTu012-1wl6v90OiZrw6aTQ42GU4jtV4KO0k,5764
18
18
  lfss/sql/init.sql,sha256=C-JtQAlaOjESI8uoF1Y_9dKukEVSw5Ll-7yA3gG-XHU,1210
@@ -27,7 +27,7 @@ lfss/src/log.py,sha256=xOnkuH-gB_jSVGqNnDVEW05iki6SCJ2xdEhjz5eEsMo,5136
27
27
  lfss/src/server.py,sha256=EA5fK4qc98tF8qoS9F6VaxIE65D5X8Ztkjqy8EUYIv8,16276
28
28
  lfss/src/stat.py,sha256=hTMtQyM_Ukmhc33Bb9FGCfBMIX02KrGHQg8nL7sC8sU,2082
29
29
  lfss/src/utils.py,sha256=miGsv7udupDtSpVSd66IvUt0_QMi3JXYCp_BjdPJY-M,2134
30
- lfss-0.7.5.dist-info/METADATA,sha256=cGOrCSM3pjCqYJdrFNrLfO2P08zx1cmwgfmAmTT4MJg,1967
31
- lfss-0.7.5.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
32
- lfss-0.7.5.dist-info/entry_points.txt,sha256=d_Ri3GXxUW-S0E6q953A8od0YMmUAnZGlJSKS46OiW8,172
33
- lfss-0.7.5.dist-info/RECORD,,
30
+ lfss-0.7.6.dist-info/METADATA,sha256=QAv2WFiNKWUy8Dl42v0Of0B7uCkiyyoYwZ2EiVxq-ZM,1967
31
+ lfss-0.7.6.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
32
+ lfss-0.7.6.dist-info/entry_points.txt,sha256=d_Ri3GXxUW-S0E6q953A8od0YMmUAnZGlJSKS46OiW8,172
33
+ lfss-0.7.6.dist-info/RECORD,,
File without changes