diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 72d4ad84..19788cc4 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -17,7 +17,6 @@ repos: args: ['--maxkb=4000'] - id: check-merge-conflict - id: debug-statements - - id: requirements-txt-fixer - repo: https://github.com/adamchainz/django-upgrade rev: "1.14.1" @@ -31,11 +30,6 @@ repos: - id: pyupgrade args: [--py311] - - repo: https://github.com/PyCQA/isort - rev: 5.12.0 - hooks: - - id: isort - - repo: https://github.com/psf/black rev: 23.7.0 hooks: diff --git a/Makefile b/Makefile index 19e5a416..e2a3033a 100644 --- a/Makefile +++ b/Makefile @@ -61,7 +61,7 @@ dbshell: messages: $(DJMANAGE) makemessages --locale=es -compilemessages: +compile-messages: $(DJMANAGE) compilemessages collectstatic: @@ -85,7 +85,7 @@ check: dockershell: ${DCO} run --rm web bash -showmigrations: +show-migrations: $(DJMANAGE) showmigrations superuser: @@ -97,16 +97,16 @@ migrate: migrations: $(DJMANAGE) makemigrations -shell_plus: +shell-plus: $(DJMANAGE) shell_plus -shell_plus_sql: +shell-plus-sql: $(DJMANAGE) shell_plus --print-sql -clear_cache: +clear-cache: $(DJMANAGE) clear_cache -show_urls: +show-urls: ${DCO} run --rm web python manage.py show_urls clean-python: clean-build clean-pyc diff --git a/blog/locale/es/LC_MESSAGES/django.po b/blog/locale/es/LC_MESSAGES/django.po index 5e1d070f..ccb498cf 100644 --- a/blog/locale/es/LC_MESSAGES/django.po +++ b/blog/locale/es/LC_MESSAGES/django.po @@ -8,15 +8,16 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-08-22 09:44-0300\n" -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME Eduardo Enriquez\n" +"POT-Creation-Date: 2023-08-25 11:16-0300\n" +"PO-Revision-Date: 2023-08-25 11:25-0300\n" +"Last-Translator: Eduardo Enriquez \n" "Language-Team: LANGUAGE \n" "Language: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Translated-Using: django-rosetta 0.9.9\n" #: blog/models.py:18 msgid "word" @@ -43,9 +44,10 @@ msgid "Hello World! My name is Eduardo and I'm a developer 💻." msgstr "¡Hola Mundo! Mi nombre es Eduardo y soy un developer 💻." #: blog/templates/blog/_about.html:10 +#, python-format msgid "" -"I've been working ⛏️ with Python 🐍 for the last %(years)s years, most of the " -"time working as a backend developer with Django." +"I've been working ⛏️ with Python 🐍 for the last %(years)s years, most of the" +" time working as a backend developer with Django." msgstr "" "He estado trabajando ⛏️ con Python 🐍 durante los últimos %(years)s años, " "mayormente como desarrollador backend con Django." @@ -83,24 +85,27 @@ msgid "I'm Eduardo Enriquez, aka eduzen." msgstr "Soy Eduardo Enriquez, alias eduzen." #: blog/templates/blog/_about.html:45 +#, python-format msgid "" "I've been working in the IT industry for quite a long time, %(years)s years " "and counting,mostly as a backend developer 💻." msgstr "" -"He estado trabajando en la industria IT durante bastante tiempo, %(years)s años y " -"contando, principalmente como desarrollador backend 💻." +"He estado trabajando en la industria IT durante bastante tiempo, %(years)s " +"años y contando, principalmente como desarrollador backend 💻." #: blog/templates/blog/_about.html:46 msgid "But I also have some experience working as a team leader." -msgstr "Pero también tengo algo de experiencia trabajando como líder técnico de equipos." +msgstr "" +"Pero también tengo algo de experiencia trabajando como líder técnico de " +"equipos." #: blog/templates/blog/_about.html:47 msgid "" "Python 🐍, Django 🟩, and Flask are the main technologies 🧪 that I've been " "working with." msgstr "" -" Python 🐍, Django 🟩 y Flask 🧪 son las principales tecnologías con " -"las que trabajo." +" Python 🐍, Django 🟩 y Flask 🧪 son las principales tecnologías con las que " +"trabajo." #: blog/templates/blog/_about.html:48 msgid "" @@ -129,9 +134,9 @@ msgstr "O puedes encontrar el código fuente de este sitio web en" #: blog/templates/blog/_about.html:62 #, python-format msgid "" -"Besides computers, I like good music, books, philosophy, movies, series, and " -"good food. I started trying some mechanical keyboards (right now using a Leo " -"pold 75 %%)! But I have also a Keychron K12." +"Besides computers, I like good music, books, philosophy, movies, series, and" +" good food. I started trying some mechanical keyboards (right now using a " +"Leo pold 75 %%)! But I have also a Keychron K12." msgstr "" "Además de las computadoras, me gusta la buena música, los libros, la " "filosofía, las películas, las series y la buena comida. Comencé a probar " @@ -140,8 +145,8 @@ msgstr "" #: blog/templates/blog/_about.html:65 msgid "" -"Some people find it weird that I have a bachelor's degree in philosophy from " -"the University of Buenos Aires 🇦🇷. But I think that rational thinking is " +"Some people find it weird that I have a bachelor's degree in philosophy from" +" the University of Buenos Aires 🇦🇷. But I think that rational thinking is " "something that my profession and studies share." msgstr "" "Algunas personas encuentran extraño que tenga una licenciatura en filosofía " @@ -154,25 +159,26 @@ msgid "" "curiosity. Some of my favorite philosophers are Nietzsche, Descartes, and " "Foucault." msgstr "" -"En general, la filosofía ha moldeado mi pensamiento analítico y fomentado mi " -"curiosidad. Algunos de mis filósofos favoritos son Nietzsche, Descartes y " +"En general, la filosofía ha moldeado mi pensamiento analítico y fomentado mi" +" curiosidad. Algunos de mis filósofos favoritos son Nietzsche, Descartes y " "Foucault." #: blog/templates/blog/_about.html:67 msgid "" -"Writers... many; Jorge Luis Borges, Ursula K. Le Guin, Arthur C. Clarke, and " -"many more..." +"Writers... many; Jorge Luis Borges, Ursula K. Le Guin, Arthur C. Clarke, and" +" many more..." msgstr "" -"Escritores... muchos; Jorge Luis Borges, Ursula K. Le Guin, Arthur C. Clarke " -"y muchos más..." +"Escritores... muchos; Jorge Luis Borges, Ursula K. Le Guin, Arthur C. Clarke" +" y muchos más..." #: blog/templates/blog/_about.html:70 msgid "" -"Last but not least, I'm passionate about teaching 👨🏽‍🏫. I think my background " -"in philosophy has helped me to be a better teacher." +"Last but not least, I'm passionate about teaching 👨🏽‍🏫. I think my " +"background in philosophy has helped me to be a better teacher." msgstr "" -"Por último, pero no menos importante, soy un apasionado de la enseñanza 👨🏽‍🏫. " -"Creo que mi formación en filosofía me ha ayudado a ser un mejor profesor." +"Por último, pero no menos importante, soy un apasionado de la enseñanza " +"👨🏽‍🏫. Creo que mi formación en filosofía me ha ayudado a ser un mejor " +"profesor." #: blog/templates/blog/_about.html:71 msgid "" @@ -229,22 +235,26 @@ msgstr "" "de aprendizaje." #: blog/templates/blog/_classes.html:18 +#, fuzzy msgid "" "We can learn about: Python, or about web frameworks like Django, Flask, or " -"FastAPI. We can also explore other topics like: object-oriented programming, " -"unit tests, clean code or the one that you need." +"FastAPI. We can also explore other topics like: object-oriented programming," +" unit tests, clean code or the one that you need." msgstr "" +"Podemos aprender sobre: Python, o sobre frameworks web como Django, Flask o " +"FastAPI. También podemos explorar otros temas como: programación orientada a" +" objetos, pruebas unitarias, código limpio o el que necesites." #: blog/templates/blog/_classes.html:21 msgid "" -"It's not easy to learn new things. It's hard also to find the motivation and " -"the resources that are good for you. In these modern times, what we have is " -"data 🗃️, data 🗃️ and data 🗃️, available everywhere." +"It's not easy to learn new things. It's hard also to find the motivation and" +" the resources that are good for you. In these modern times, what we have is" +" data 🗃️, data 🗃️ and data 🗃️, available everywhere." msgstr "" "No es fácil aprender cosas nuevas. También es difícil encontrar la " "motivación y los recursos que sean buenos para ti. En estos tiempos " -"modernos, lo que tenemos es datos 🗃️, datos 🗃️ y más datos 🗃️, disponibles en " -"todas partes." +"modernos, lo que tenemos es datos 🗃️, datos 🗃️ y más datos 🗃️, disponibles " +"en todas partes." #: blog/templates/blog/_classes.html:22 msgid "" @@ -301,9 +311,9 @@ msgstr "Imposible no recomendar ChatGPT: " #: blog/templates/blog/_classes.html:43 msgid "" -"I think it's one of the most important resources from our modern times. It's " -"a great companion that could answer almost everything that you need in this " -"field." +"I think it's one of the most important resources from our modern times. It's" +" a great companion that could answer almost everything that you need in this" +" field." msgstr "" "Creo que es uno de los recursos más importantes de nuestros tiempos " "modernos. Es un gran compañero que podría responder casi todo lo que " @@ -359,8 +369,8 @@ msgid "" "Crafting tech magic 🧙🏼‍♀️ for individuals 🧍🏻‍♀️ and businesses 🏭, with a " "sprinkle of fun and a dollop of expertise." msgstr "" -"Creando magia tecnológica 🧙🏼‍♀️ para individuos 🧍🏻‍♀️ y empresas 🏭, con un toque " -"de diversión y una pizca de experiencia." +"Creando magia tecnológica 🧙🏼‍♀️ para individuos 🧍🏻‍♀️ y empresas 🏭, con un " +"toque de diversión y una pizca de experiencia." #: blog/templates/blog/_consultancy.html:10 msgid "Let's code something delightful!" @@ -368,8 +378,8 @@ msgstr "Codeemos algo flashero!" #: blog/templates/blog/_consultancy.html:11 msgid "" -"With over 10 years in the industry 👴🏿, I offer useful insights and expertise " -"for daily challenges." +"With over 10 years in the industry 👴🏿, I offer useful insights and expertise" +" for daily challenges." msgstr "" "Con más de 10 años en la industria 👴🏿, ofrezco información útil y " "experiencia para los desafíos diarios." @@ -400,8 +410,8 @@ msgstr "Para las estrellas tecnológicas en ascenso" #: blog/templates/blog/_consultancy.html:24 msgid "" -"Personalized training 🏋🏼‍♂️, classes 👨🏽‍🏫, and tutoring 🤓 to help you blossom " -"into an autonomous developer." +"Personalized training 🏋🏼‍♂️, classes 👨🏽‍🏫, and tutoring 🤓 to help you " +"blossom into an autonomous developer." msgstr "" "Capacitación personalizada 🏋🏼‍♂️, clases 👨🏽‍🏫 y tutoría 🤓 para ayudarte a " "convertirte en un desarrollador autónomo." @@ -421,8 +431,8 @@ msgid "" "issues, evaluating legacy code 🔖, or upgrading versions ⬆️." msgstr "" "Elaborando soluciones cotidianas, brindando capacitación estelar " -"(unittesting, escritura de código robusto, ¡lo que necesites!), solucionando " -"problemas de performanceen Django/Python 🐍, evaluando código legacy " +"(unittesting, escritura de código robusto, ¡lo que necesites!), solucionando" +" problemas de performanceen Django/Python 🐍, evaluando código legacy " "(heredado) 🔖, o actualizando versiones ⬆️." #: blog/templates/blog/_consultancy.html:33 @@ -455,8 +465,8 @@ msgstr "Hechicería Tecnológica" #: blog/templates/blog/_consultancy.html:56 msgid "" -"From Python 🐍 to Django, from debugging to spellbinding code – I've mastered " -"the digital alchemy ⚗️." +"From Python 🐍 to Django, from debugging to spellbinding code – I've mastered" +" the digital alchemy ⚗️." msgstr "" "Desde Python 🐍 a Django, desde depuración hasta código encantador: he " "dominado la alquimia digital ⚗️." @@ -572,7 +582,8 @@ msgstr "Todavia nada!" msgid "Software Engineer" msgstr "Software Engineer" -#: blog/templates/blog/home.html:11 blog/templates/blog/utils/nav_links.html:25 +#: blog/templates/blog/home.html:11 +#: blog/templates/blog/utils/nav_links.html:25 #: blog/templates/blog/utils/nav_links_mobile.html:26 msgid "Consultancy" msgstr "Consultoria" diff --git a/pyproject.toml b/pyproject.toml index 176612ae..d892fb9e 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -40,6 +40,7 @@ dependencies = [ "djangorestframework", "django-storages[dropbox]", "django-debug-toolbar", + "django-rosetta", "easy-thumbnails", "gunicorn", "gevent", diff --git a/requirements-dev.txt b/requirements-dev.txt index fd433d5d..c1d09a1d 100644 --- a/requirements-dev.txt +++ b/requirements-dev.txt @@ -57,6 +57,7 @@ django==4.2.4 # django-js-asset # django-picklefield # django-ranged-response + # django-rosetta # django-simple-captcha # django-storages # django-stubs @@ -104,6 +105,8 @@ django-ranged-response==0.2.0 # via django-simple-captcha django-robots==5.0 # via website (pyproject.toml) +django-rosetta==0.9.9 + # via website (pyproject.toml) django-simple-captcha==0.5.18 # via website (pyproject.toml) django-storages[dropbox]==1.13.2 @@ -179,6 +182,8 @@ pluggy==1.2.0 # via pytest ply==3.11 # via stone +polib==1.2.0 + # via django-rosetta prompt-toolkit==3.0.39 # via ipython psycopg2-binary==2.9.7 @@ -228,6 +233,7 @@ requests==2.31.0 # via # django-anymail # django-healthchecks + # django-rosetta # dropbox # website (pyproject.toml) sentry-sdk==1.29.2 diff --git a/requirements.txt b/requirements.txt index 0cda9a1f..08c00f79 100644 --- a/requirements.txt +++ b/requirements.txt @@ -39,6 +39,7 @@ django==4.2.4 # django-js-asset # django-picklefield # django-ranged-response + # django-rosetta # django-simple-captcha # django-storages # djangorestframework @@ -82,6 +83,8 @@ django-ranged-response==0.2.0 # via django-simple-captcha django-robots==5.0 # via website (pyproject.toml) +django-rosetta==0.9.9 + # via website (pyproject.toml) django-simple-captcha==0.5.18 # via website (pyproject.toml) django-storages[dropbox]==1.13.2 @@ -110,6 +113,8 @@ pillow==10.0.0 # easy-thumbnails ply==3.11 # via stone +polib==1.2.0 + # via django-rosetta psycopg2-binary==2.9.7 # via website (pyproject.toml) pycparser==2.21 @@ -126,6 +131,7 @@ requests==2.31.0 # via # django-anymail # django-healthchecks + # django-rosetta # dropbox # website (pyproject.toml) sentry-sdk==1.29.2 diff --git a/website/settings/base.py b/website/settings/base.py index d1ee2fbe..84564e2b 100644 --- a/website/settings/base.py +++ b/website/settings/base.py @@ -179,6 +179,7 @@ class Base(ConstanceConfig, Configuration): "rest_framework.authtoken", "robots", "django_htmx", + "rosetta", ] # Application definition diff --git a/website/urls.py b/website/urls.py index a88f8db9..10af1c21 100644 --- a/website/urls.py +++ b/website/urls.py @@ -35,4 +35,5 @@ urlpatterns = [ path("__debug__/", include(debug_toolbar.urls)), path("__reload__/", include("django_browser_reload.urls")), + path("rosetta/", include("rosetta.urls")), ] + urlpatterns # NOQA