b2sdk: create_file prioritization should accept an enum, not a string
Les mainteneurs répondent en général sous 1 jour
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 5/5
- Temps estimé
- Plus d'une semaine
- Accessibilité débutants
- 22/100
Piste de recherche
Start with Bucket.create_file and Bucket.create_file_stream in the b2sdk bucket module, and the .. TODO:: note in doc/source/advanced.rst that describes the current string values local, remote and local_verification. The design choices are open: the enum's member names, how strings stay accepted for backwards compatibility, and what an unknown value should raise. Settle those with a maintainer before coding. Done means both methods take the enum, the string values still work, and the typo case in the reproduction fails at the call site.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
Description
Bucket.create_file and Bucket.create_file_stream accept source prioritization as a string, with the supported values being local, remote and local_verification. An enum would make the valid values discoverable through the type system and turn a typo into an immediate error rather than a silently different plan.
This was recorded as a .. TODO:: directive in doc/source/advanced.rst, where it was invisible in published builds and carried no owner or acceptance criteria. It is tracked here instead, as part of #601.
Note that this is an API design change rather than a documentation change, so it is filed separately from the documentation work in #601.
Steps to reproduce
bucket.create_file(input_sources, remote_name, file_info, prioritize='local')
bucket.create_file(input_sources, remote_name, file_info, prioritize='locol') # typo, not rejected at the call site
Expected behavior
Prioritization should be expressed as an enum, with the string values continuing to be accepted for backwards compatibility within the current interface version.
Actual behavior
Only strings are accepted, and an unrecognised value is not caught at the call site.
Environment
- Python version: Any supported version
- b2sdk version:
masteratf3ab7b71 - OS: Any
- Langage dominant
- Python
- Étoiles
- 214
- Forks
- 68
- Merge moyen
- 51 min
- PR mergées (30 j)
- 6
Préparer son environnement
- Aucun Dockerfile ni fichier Docker Compose
- Aucun modèle de pull request
- Lire le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de Backblaze/b2-sdk-python
-
Download and copy sync actions print remote file names without escape_control_charsPeut-être pris @dreyfus92 l’a pris il y a 15 jours. Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
Backblaze/b2-sdk-python#631 ·
Les mainteneurs répondent en général sous 1 jour
-
SqliteAccountInfo profile name validation uses "re.match", so only the first character is checkedPeut-être pris @nazarli-shabnam l’a pris il y a 9 jours. Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 75/100
Backblaze/b2-sdk-python#629 ·
Les mainteneurs répondent en général sous 1 jour
-
Adopt the AI-native SDLC and repository policiesPeut-être pris @goanpeca l’a pris il y a 18 jours. Ouverteenhancement
Difficulté 5/5 Plus d'une semaine Accessibilité débutants 20/100
Backblaze/b2-sdk-python#634 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 4/5 3-5 jours Accessibilité débutants 50/100
Backblaze/b2-sdk-python#630 ·
Les mainteneurs répondent en général sous 1 jour
-
ci: cli-compat fails — 4 sse/sync integration tests broken in B2_Command_Line_Tool (all environments)Peut-être à nouveau libre @ffumero2003 l’a pris il y a 37 jours, et aucune pull request n’est ouverte. Ouvertebug testing
Backblaze/b2-sdk-python#627 · 2 commentaires · 1 personne assignée ·
Les mainteneurs répondent en général sous 1 jour
Toutes les issues de Backblaze/b2-sdk-python
Issues similaires
-
Difficulté 1/5 Moins d'une heure Accessibilité débutants 72/100
btclib-org/btclib-node#2505 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour
-
bug
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
open-webui/open-webui#34462 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
gorakhargosh/watchdog#1462 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 85/100
openwisp/openwisp-monitoring#889 ·
Les mainteneurs répondent en général sous 2 jours
-
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
IETF-Hackathon/pqc-certificates#351 ·
Les mainteneurs répondent en général sous 2 jours