Empecé a trabajar en una aplicación comercial en Python, y estoy sopesando mis opciones sobre cómo distribuir la aplicación.¿Cuáles son las limitaciones de distribuir archivos .pyc?
Aparte de lo obvio (distribuir fuentes con una licencia comercial apropiada), estoy considerando distribuir solo los archivos .pyc
sin sus correspondientes fuentes .py
. Pero no estoy lo suficientemente familiarizado con las garantías de compatibilidad de Python para saber si esto es incluso viable, y mucho menos si es una buena idea o no.
¿Hay archivos .pyc
independientes del sistema operativo subyacente? Por ejemplo, ¿un archivo .pyc
generado en una máquina Linux de 64 bits funcionaría en una máquina con Windows de 32 bits?
He encontrado que .pyc
archivo should be compatible across bugfix releases, pero ¿qué hay de las versiones principales y secundarias? Por ejemplo, ¿un archivo generado con Python 3.1.5 sería compatible con Python 3.2.x? ¿O un archivo .pyc
generado con Python 2.7.3 sería compatible con una versión de Python 3.x?
Editar:
En primer lugar, voy a tener que apaciguar a las partes interesadas que son fuentes de distribución incómodas. Distribuir .pyc
sin fuentes puede darles cierto nivel de comodidad, ya que requeriría el paso adicional de descompilación para llegar a las fuentes, incluso si ese paso es algo trivial. Lo suficiente como una barrera para mantener honestas a las personas honestas.
Me dio curiosidad, ¿hay alguna (recomendada, o alguna) forma de ofuscar de alguna manera el código de Python y distribuirlo? – Levon
@Levon: No sé, no hago cosas tontas como esa. –
Y, sin embargo, todavía te gano :-) – Levon