what steps, if any, do you take before incorporating an outside component into your project?
Alcune aziende e flussi di lavoro linguistici sono molto riluttanti a incorporare qualsiasi componente che non proviene dal sistema operativo o dal fornitore della piattaforma. Di solito la prima considerazione non è tanto l'affidabilità quanto le licenze. Ovviamente non è possibile utilizzare il software GPL in software proprietario, ma molte aziende diffidano anche delle licenze aperte non virali.
Does the sheer number of downloads satisfy your assurance that it is safe?
Is it considered safe if you downloaded it from github simply because it was github?
Molte persone nelle comunità Open Source e Javascript considerano tali ipotesi come ragionevoli. Altri sono più cauti. I commit firmati (GPG, ecc.) Sono un modo per rintracciare le modifiche all'origine a sviluppatori specifici.
What about updates? How can you be assured that the component will be kept up to date when you go back years from now to update your application?
Beh, non puoi davvero, a meno che tu non abbia una garanzia dal venditore. E questo di solito arriverà con una fine della vita intenzionale o implicita. Potresti essere costretto a riscrivere un blocco della tua applicazione perché un componente è diventato obsoleto.
Questo porta alla scelta tra copiare il codice sorgente nell'applicazione (stabile, ma non aggiornato automaticamente) o scaricarlo come parte del processo di compilazione (aggiornato automaticamente ma non stabile).