43 Commits

Author SHA1 Message Date
orrisroot 4283481695 fix: apply NFC normalization to filenames and folder names sent to server
On macOS, local filenames and directory names may be in NFD encoding
(decomposed Unicode). Without normalization, files and folders are
created on the server with NFD names, inconsistent with the server's
NFC convention.

Apply normalize("NFC", ...) before sending names to the server in:
- FilesApi.create(): filename in multipart upload
- FilesApi.update(): filename in multipart upload
- UploadCommand: directory name in FoldersApi.create()

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-04-20 12:25:59 +09:00
orrisroot ddb4300d85 feat(config): simplify list command and add subcommand aliases
- config list: remove -l/--long option, always display URL
- config list: add ls alias (already existed, kept)
- config delete: add rm alias (alongside existing remove alias)
- README: add config update, config list, config delete sections

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-04-17 18:59:07 +09:00
orrisroot 68670a6588 fix(ls): rename --quick to --quiet; add version command; bump to 1.3.14
- Fix ls -q long option name: --quick → --quiet (typo fix)
- Remove mdrsclient/VERSION file; read version via importlib.metadata
- Bump version 1.3.13 → 1.3.14
- Add Python 3.14 to supported classifiers; promote to Development Status 4 - Beta
- Add `version` subcommand (prints "mdrs <version>")
- Document `version` command in README

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-04-17 17:41:37 +09:00
pw-serizawa 95f22ea5f9 fix for file.list api pagination 2025-06-26 17:13:06 +09:00
orrisroot 893bc77128 fixed bug to download file if skip flag is present. 2025-05-20 17:50:11 +09:00
orrisroot 6a2810f603 show summary when file download fails and delete broken files. 2024-12-23 13:58:14 +09:00
orrisroot d5ac5cd427 fixed compatibility with python 3.10. 2024-10-23 18:33:12 +09:00
orrisroot 24172dc65c implemented -s --skip-if-file-exists option for download commnad. 2024-09-18 10:56:40 +09:00
orrisroot f2c5a06cb4 implemented --exclude argument for download subcommand. 2024-07-22 14:35:34 +09:00
orrisroot d392379235 implemented to cancel to recursive download if some files failed to download. 2024-07-08 20:35:48 +09:00
orrisroot 4696b9799c add some aliases for config sub command. 2024-07-04 12:35:59 +09:00
orrisroot 020ef8835a fixed bug to upload large file. 2024-07-04 12:33:57 +09:00
orrisroot dbfc68c396 implemented -s --skip-if-file-exists option for upload commnad. 2024-02-13 10:48:01 +09:00
orrisroot c3e2dfbd8e add -u and -p option to login commnand. 2024-02-09 18:22:13 +09:00
orrisroot ce0a608db2 fixed bug to resolve local files for recursive file upload. 2023-12-20 19:42:06 +09:00
orrisroot 219858e0b6 removed debug comment. 2023-12-18 17:21:31 +09:00
orrisroot a281a97b3e show folder size. 2023-12-18 16:59:53 +09:00
orrisroot 64f64b82dc fixed download url and removed debug comment. 2023-12-18 16:32:24 +09:00
orrisroot 9284346153 real path should not be used when creating distination file list. 2023-12-18 16:23:46 +09:00
orrisroot 292ca1df27 changed API endpoint from v2 to v3. 2023-12-12 20:05:46 +09:00
orrisroot f10b42a1f2 updated auth token handling using new users api. 2023-12-07 14:46:57 +09:00
orrisroot 4641b9304e set destination folder name using name attribute of folder copy api. 2023-07-26 19:59:07 +09:00
orrisroot 4d87b55b40 add new command cp. 2023-07-20 11:43:07 +09:00
orrisroot 08d8a0626a fixed type errors when pylance type checking mode is strict. 2023-07-19 21:47:47 +09:00
orrisroot 23025bd679 migrate obsoleted function parse_obj_as to TypeAdapter().validate_python(). 2023-07-19 14:43:16 +09:00
orrisroot b569c20b6e support case insensitive and normalized file and folder names. 2023-07-19 13:46:23 +09:00
orrisroot 96637e2d12 fixed bug to output redandant sub_folders/files array list. 2023-06-07 11:05:10 +09:00
orrisroot a1ef26897f implemented -J json output option for ls command. 2023-06-06 22:12:44 +09:00
orrisroot 3982521530 add -r recursive option for ls command. 2023-06-06 19:59:55 +09:00
orrisroot da57fc7c6c use utf8 endoding for json output. 2023-06-06 17:04:32 +09:00
orrisroot 1ffafd25ba sort laboratory list by name and hide numeric id. 2023-06-04 18:53:21 +09:00
orrisroot 1a0a26d7b3 support 'recursive' flag to recursively delete folders. 2023-05-26 17:58:25 +09:00
orrisroot 837f035bc1 serialize dict to a JSON formated string. 2023-05-18 11:45:18 +09:00
orrisroot b028c86b20 implemented to change folder access level chacl command. 2023-05-11 17:00:14 +09:00
orrisroot 995e4cc467 add -p option for support to open PW_OPEN folder. 2023-05-10 20:10:43 +09:00
orrisroot 97007233c6 split source code for each command. 2023-05-10 18:17:35 +09:00
orrisroot 0281dd2ccb update document and remove debug code. 2023-05-09 19:45:03 +09:00
orrisroot 8ee220137f implemented to remove file or folder commnand rm. 2023-05-09 18:48:15 +09:00
orrisroot fd2238f5ca implemented to move or rename file/folder command mv 2023-05-09 18:38:58 +09:00
orrisroot e7197673fc implemented mutiple download feature. 2023-05-09 14:38:13 +09:00
orrisroot c724af538b use concurrent for the multiple file uploads instead of multiprocess. 2023-05-09 13:08:50 +09:00
orrisroot 06a91de15e retrieve laboratories data again if the token has been expied. 2023-05-08 17:06:53 +09:00
orrisroot 819c4a6a07 first commit 2023-05-01 20:00:32 +09:00