Come dovrei includere jQuery in una libreria?

0

Sto scrivendo una libreria di grafica JavaScript usando la tela che sono sotto licenza al MIT, e sto usando jQuery, così come un paio di altre librerie open source, tutte sotto il MIT. Sto anche usando Bower per gestire le mie dipendenze front-end. Come dovrei gestire al meglio queste dipendenze senza violare la licenza?

Preferibilmente, l'utente non dovrebbe includere più script, solo un <script src = "graph.js></script> , e dovrebbe includere tutti i plugin.

Dovrei semplicemente chiedere all'utente di includere jQuery e le altre librerie nel proprio tag script, o dovrei concatenare tutti gli script insieme in un unico file grande, incluse le intestazioni?

    
posta scrblnrd3 20.07.2014 - 17:22
fonte

3 risposte

1

How should I best handle these dependencies without violating the license?

Se impacchettate i vostri moduli di dipendenza, dovreste solo assicurare di mantenere i requisiti del MIT

The MIT License is a free software license originating at the Massachusetts Institute of Technology (MIT). It is a permissive free software license, meaning that it permits reuse within proprietary software provided all copies of the licensed software include a copy of the MIT License terms. Such proprietary software retains its proprietary nature even though it incorporates software under the MIT License. The license is also GPL-compatible, meaning that the GPL permits combination and redistribution with software that uses the MIT License.

Should I just ask the user to include jQuery and the other libraries in its own script tag, or should I concat all of the scripts together into one big file, headers included?

Penso che dipenda completamente da te, ma penso che l'utente non abbia problemi ad includere JQuery se usassero Bootstrap

    
risposta data 20.07.2014 - 18:26
fonte
0

Ignorando le licenze, è generalmente preferibile fornire almeno una versione del tuo script che non includa nessuna delle sue dipendenze esterne. Alcune librerie includono un'ampia varietà di wrapper e bundle (ad es. HistoryJS ) per semplificare le cose i loro utenti.

  1. I siti complicati potrebbero o meno includere già dipendenze (e non necessariamente la stessa versione che avresti incluso).
  2. Gli utenti potrebbero voler aggiornare lo script senza aggiornare le altre dipendenze.
  3. Le dipendenze più diffuse sono disponibili su CDN di grandi dimensioni. Gli utenti potrebbero preferire il download di tali dipendenze da questi CDN, per sfruttare il caching tra siti (ad esempio, gli utenti del mio sito possono evitare di scaricare JQuery se sia io sia gli altri colleghiamo a una copia sul CDN di Google).
  4. È meno sforzo concatenare le dipendenze in uno script piuttosto che dividere un copione (e gli utenti che lo desiderano possono usare molto bene un framework che lo fa automaticamente).
risposta data 21.07.2014 - 21:12
fonte
-1

Ci sono due fattori importanti che non hai menzionato.

  1. Vuoi mantenere il copyright per futuri benefici per te, o è puramente comunitario?
  2. Vuoi guadagnare da questo o competerai con qualcuno che lo fa?

La scomposizione di base è questa. Se non ne fai soldi e non fai del male a nessuno, fai del tuo meglio, riconosci il lavoro degli altri e non preoccuparti troppo. Distribuisci il tuo codice in qualsiasi modo abbia senso per te, incluse le dipendenze, se lo desideri. Nessuno sarà danneggiato e la comunità ti amerà. Non sudare. Se devi fare qualcosa di diverso, aspetta fino a quando qualcuno ti dice e poi parla con loro.

Se guadagni denaro dal tuo prodotto o servizio e / o se puoi causare danni a qualcuno o competere con qualcuno che lo fa, allora devi prendere una consulenza legale competente. Questo non ti proteggerà, ma ti avviserà dei rischi e forse aiuterà a mitigarli. Sei a rischio, anche se non te ne rendi conto, e più soldi fai più rischierai.

Il punto di questa risposta è che dovresti preoccuparti molto di più del fatto che il codice sia valido per gli altri, se contribuisci alla comunità e se è probabile che turbi qualcuno piuttosto che dovresti preoccuparti delle sfumature del testo. Non si può ottenere esattamente nel modo giusto senza un avvocato, ma non è necessario un avvocato per "fare la cosa giusta". Fai del tuo meglio e continua con quello che sai fare meglio: scrivere codice.

    
risposta data 21.07.2014 - 12:21
fonte

Leggi altre domande sui tag