Tener varias versiones de Python en el mismo ordenador, estado de Durus, su licencia y cómo funciona la persistencia de datos https://podcast.jcea.es/python/28
Participantes:
Jesús Cea, email: jcea@jcea.es, twitter:@jcea, https://blog.jcea.es/,https://www.jcea.es/. Conectando desde Madrid.
Jesús, conectando desde Ferrol.
Felipem, conectando desde Cantabria.
Eduardo Castro, email:info@ecdesign.es. Conectando desde AGuarda.
Víctor Ramírez, twitter: @virako,programador python y amante devim, conectando desdeHuelva.
Sergio, conectando desde Vigo.
Juan José, Nekmo, https://nekmo.com/,https://github.com/Nekmo/. Madrileño conectando desde Málaga.
Miguel Sánchez, email:msanchez@uninet.edu, conectando desdeLas Palmas.
Audio editado por Pablo Gómez, twitter:@julebek.
La música de la entrada y la salida es "Lightning Bugs", de JasonShaw. Publicada en https://audionautix.com/ con licencia- Creative Commons Attribution 4.0 InternationalLicense.
[00:52] Presentaciones.
[03:47] Utilizar diferentes versiones de Python en el mismoordenador.
Cada paquete instalado está vinculado a una instanciaconcreta de Python instalada en el sistema.
Nunca hacer pip install, sino indicar la versión: pip3.9install.
A la hora de instalar paquetes Python en la versión nativadel sistema operativo, se puede usar pip o bien el gestorde paquetes del sistema operativo. Mezclar ambas es unareceta para el desastre.
[16:37] Un problema de los paquetes precompilados ("wheels"https://www.python.org/dev/peps/pep-0427/) es que no se suelenprecompilar de forma retroactiva para la última versión dePython que acaba de salir.
[19:52] ¿Bibliotecas para manejar imágenes, compatibles con PyPyhttps://www.pypy.org/?
[21:17] ¿Qué es PyPy https://www.pypy.org/ exactamente?
Jit: Compilación al vuelohttps://es.wikipedia.org/wiki/Compilaci%C3%B3n_en_tiempo_de_ejecuci%C3%B3n.
Barrera de entrada muy grande para entrar en el proyecto.Curva de aprendizaje.
Problemas con los módulos en C. No valoraron laimportancia del ecosistema.
[27:27] Experiencia de un par de semanas con Flithttps://pypi.org/project/flit/.
Jesús Cea lo está utilizando para publicar su bibliotecatoc2audio https://docs.jcea.es/toc2audio/.
Herramienta propuesta en la charla "Python Packaging: Loestás haciendo mal"https://www.youtube.com/watch?v=OeOtIEDFr4Y, de Juan LuisCano.
PEP 621 -- Storing project metadata in pyproject.tomlhttps://www.python.org/dev/peps/pep-0621/.
Lo importante que es tener enlaces directos al "changelog" oa la documentación en PyPI https://pypi.org/.
[31:32] Módulos de documentación. Carencias.
Docstrings.
Sphinx https://pypi.org/project/Sphinx/.
Tema eterno: Incluir una biblioteca en la bibliotecaestándar o como biblioteca estándar.
ReST: reStructuredTexthttps://docutils.sourceforge.io/rst.html.
docutils: https://pypi.org/project/docutils/.
[40:02] ¿Formato tertulia o preguntas y respuestas?
[41:22] Estado actual de Durushttps://www.mems-exchange.org/software/DurusWorks/ ycomentarios variados sobre el sistema de persistencia.
Jesús Cea ha estado intentando conectar con los autores, conpoco éxito.
Jesús Cea tiene problemas con la licencia.
¿Abandonar el proyecto y pasarse a ZODBhttps://zodb.org/en/latest/?
La gente está haciendo "forks"https://en.wikipedia.org/wiki/Fork_(software_development)pasando olímpicamente de las licencias.
Jesús Cea se está currando varios cambios de licencia enciertos proyectos que le interesan, con muy poco éxito.
COPYRIGHT ASSIGNMENThttps://www.copylaw.com/forms/copyassn.html.
[50:32] ¿Cómo funciona un sistema de persistencia?
Modelo completamente diferente a un ORMhttps://en.wikipedia.org/wiki/Object%E2%80%93relational_mapping.
Working set: https://en.wikipedia.org/wiki/Working_set.
[58:17] Volvemos al tema de licencias.
[59:52] Explícame esto:https://lists.es.python.org/pipermail/general/2021-April/003476.html.
Creamos un fichero "a.py" con el contenido:
def x():print('X')
Creamos otro fichero "b.py" con el contenido:
import a
class clase:x = a.x
def p(self):print(self.x)self.x()
if __name__ == '__main__':a.x()b = clase()b.p()
Ejecutas "b.py" y me explicas por qué sale lo que sale :-).
[01:03:42] A la gente le encanta que le "piquen".
[01:03:52] Las versiones actuales de Python ya han integrado elparche del "memory leak" que se habló en navidades.
[01:04:22] Llamada a ponencias de la PyConEShttps://2021.es.pycon.org/.
[01:05:22] Volvemos al reto enhttps://lists.es.python.org/pipermail/general/2021-April/003476.html.
Pista: los métodos son descriptores:https://docs.python.org/3/howto/descriptor.html.
Bound method:https://www.geeksforgeeks.org/bound-methods-python/.
Métodos estáticos:https://pythonbasics.org/static-method/.
No se ha entendido nada porque ha habido numerosos cortes desonido. El tema está bastante mejor explicado y se entiendeen, por ejemplo, From Function to Methodhttps://wiki.python.org/moin/FromFunctionToMethod.
[01:10:02] Atributos de función. PEP 232 -- Function Attributeshttps://www.python.org/dev/peps/pep-0232/.
Se pueden meter atributos a un método, pero se hace a nivelde clase, no de instancia, porque los métodos pertenecen ala clase, no a la instancia:class clase:def p(self):clase.p.hola = 78
>>> x=clase()>>> x.p()>>> x.p.hola78>>> y=clase()>>> a.p.hola78>>> clase.p.hola78
[01:14:42] Notas de las grabaciones, temas futuros y enviartemas con algún tiempo previo a la tertulia si requieren pensar.
[01:16:06] Final.
Podchaser is the ultimate destination for podcast data, search, and discovery. Learn More