So perché questo è buono in generale: correzioni di sicurezza più veloci, packaging più semplice, più funzionalità. Tuttavia, sto cercando di convincere alcuni colleghi che non abbiamo bisogno di raggruppare una biblioteca con il nostro programma. Non funzionerà senza questa biblioteca, ma la biblioteca è rimasta stabile per un po 'di tempo e rimarrà tale per il prossimo futuro. Non vedo alcun motivo per NON separarlo.
Quali argomenti potrei usare per convincerli?
La mia situazione specifica è questa: sto lavorando su SymPy , che è una libreria Python open source per la matematica simbolica. Una parte fondamentale di esso è mpmath , che è una libreria per l'aritmetica in virgola mobile multi-previsione. SymPy non funziona senza mpmath, non c'è alternativa. Come tale, è stato fornito in bundle con SymPy sin dall'inizio (mi è stato detto che di solito c'erano piccole incompatibilità da risolvere ogni volta che una nuova versione veniva importata). Va anche notato che lo sviluppatore di mpmath era coinvolto nello sviluppo di SymPy. Ora c'è un problema su unbundling mpmath, puoi leggere tutto qui .
Per riassumere la discussione lì:
Unbundle:
Porting un po 'più semplice su Python 3 (argomento secondario IMHO)
Imballaggio più semplice per le distribuzioni
Aggiornamenti più rapidi (di sicurezza) agli utenti
"L'imballaggio e la gestione delle dipendenze sono problemi difficili, ma sono risolti. Questo non è sicuramente un settore in cui dovremmo fare le nostre cose."
Continua a raggruppare:
Installazione. È facile su Linux, più difficile su Mac e molto difficile su Windows. Mancanza di accesso limitato e altri problemi.
è parte integrante di SymPy, ovvero sympy non funziona senza di essa (affatto)
non esiste nessun altro pacchetto che possa fare il lavoro di mpmath
"Quando, come utente, scarico sympy, mi aspetto che funzioni."
Questa è la mia situazione specifica, ma accetterei una risposta che fornisca anche una buona risposta generale.