Spaces in Font's name are not escaped
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 2/5
- Temps estimé
- 1-3 heures
- Accessibilité débutants
- 45/100
Piste de recherche
Commencez dans lib/cloudinary/utils.rb, en comparant l’échappement de la transformation de texte autour de la ligne 399 avec la gestion de font-family autour de la ligne 452. Reproduisez l’exemple Open Sans de l’issue et vérifiez que l’URL Cloudinary générée échappe les espaces du nom de la police et peut être analysée comme une URI valide.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
Cloudinary supports all of Google's fonts https://support.cloudinary.com/hc/en-us/articles/203352832-What-is-the-list-of-supported-fonts-for-text-overlay-transformation- and some of them have spaces on them, for example, "Open Sans"
But unlike Text Transformation where spaces are escaped https://github.com/cloudinary/cloudinary_gem/blob/28a9ee65d24c6bac0654919a5a76de95cf356510/lib/cloudinary/utils.rb#L399 font family aren't https://github.com/cloudinary/cloudinary_gem/blob/28a9ee65d24c6bac0654919a5a76de95cf356510/lib/cloudinary/utils.rb#L452
resulting in an invalid URL
[1] pry(main)> Cloudinary::VERSION
=> "1.20.0"
[2] pry(main)> url = Cloudinary::Utils.cloudinary_url("coffee_cup.jpg", transformation: [
{overlay: {font_family: "Open Sans", text: "Text with spaces", font_size: 10}}
])
=> "http://res.cloudinary.com/cookpad/image/upload/l_text:Open Sans_10:Text%20with%20spaces/coffee_cup.jpg"
[3] pry(main)> URI.parse url
URI::InvalidURIError: bad URI(is not URI?): "http://res.cloudinary.com/cookpad/image/upload/l_text:Open Sans_10:Text%20with%20spaces/coffee_cup.jpg"
- Langage dominant
- Ruby
- Étoiles
- 420
- Forks
- 282
- Métriques de merge des PR
- Aucune PR mergée en 30 j
Préparer son environnement
- Aucun Dockerfile ni fichier Docker Compose
- Propose un 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 cloudinary/cloudinary_gem
-
Difficulté 4/5 3-5 jours Accessibilité débutants 55/100
cloudinary/cloudinary_gem#597 · 1 commentaire ·
-
Difficulté 2/5 1-3 heures Accessibilité débutants 52/100
cloudinary/cloudinary_gem#591 · 3 commentaires ·
-
Difficulté 3/5 1-2 jours Accessibilité débutants 45/100
cloudinary/cloudinary_gem#582 · 1 commentaire ·
-
404's when fetching .eml files (from Action Mailbox)Peut-être à nouveau libre @rnamba-cloudinary l’a pris il y a 400 jours, et aucune pull request n’est ouverte. Ouverte
Difficulté 4/5 3-5 jours Accessibilité débutants 30/100
cloudinary/cloudinary_gem#581 · 1 commentaire ·
-
BlobKey, MirrorService and Sidekiq 8 are incompatiblePeut-être à nouveau libre @const-cloudinary l’a pris il y a 541 jours, et aucune pull request n’est ouverte. Ouverte
cloudinary/cloudinary_gem#573 · 3 commentaires · 1 personne assignée ·
Toutes les issues de cloudinary/cloudinary_gem
Issues similaires
-
Difficulté 2/5 1-3 heures Accessibilité débutants 65/100
metacall/core#964 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour
-
area: ci benchmark build developer-experience difficulty: easy dx enhancement github-actions good first issue hacktoberfest help wanted performance quality rank: 8 kyu ruby tech: ruby
Difficulté 1/5 Moins d'une heure Accessibilité débutants 82/100
flisk-sh/flisk-labs#22 ·
-
1.severity: security
Difficulté 2/5 1-3 heures Accessibilité débutants 62/100
Les mainteneurs répondent en général sous 1 jour
-
15-minutes 5-minutes algorithm any-language beginner-friendly c cpp csharp easy go good first issue hacktoberfest help wanted java javascript kotlin python rust swift typescript
Difficulté 1/5 Moins d'une heure Accessibilité débutants 68/100
Huerte/algo-solutions-python#260 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
Les mainteneurs répondent en général sous 1 jour