Moin!
In letzter Zeit benutze ich oft folgendes Pattern um Bibliotheken einzubinden:
<script src="https://raw.github.com/user/project/master/build/example.min.js"></script>
>
> Jetzt frage ich mich, ob das überhaupt legal ist, denn immerhin verursache ich Traffic bei github. Ähnliche Vorgehensweisen sind zum Beispiel oft bei jQuery-Einbindungen zu finden, aber bei jQuery empfiehlt man es den Nutzern ja sogar, um immer die aktuelle Version zu benutzen. Kennt sich jemand mit der Rechtslage aus?
Die Rechtslage dürfte erstmal egal sein, viel spannender ist, ob du es dir leisten willst, immer die maximal aktuelle Version aus dem Master-Branch zu verwenden. Bei jQuery definierst du ja die zu verwendende Version, und die wird sich nicht spontan anders verhalten. Deine obige Referenz hingegen ist dynamisch und potentiell mit Defekten versehen, bzw. zumindest abhängig von der je nach Projekt unterschiedlichen Arbeitsweise beim Mergen von Features - du bist dennoch nicht gegen inkompatible Updates gefeit.
Und wenn man das dann mal durchdenkt, und mit der Idee des jQuery-Hostings auf einem zentralen Server vergleicht, welcher deswegen attraktiv ist, weil diese eine Library durch langlaufende Caching-Erlaubnis mit guter Wahrscheinlichkeit ohne Download schon im Browser vorliegt, dann kommt man zur Erkenntnis, dass der Github-Link diese Eigenschaft eben gerade nicht besitzen kann. Langfristiges Caching einer Ressource, die sich bei jedem Commit verändern muss, funktioniert nicht.
Du machst also deinen Besuchern keine Freude, weil sie dieses Javascript bei jedem Request herunterladen müssen. Würdest du irgendein Kopie des Skripts einfach lokal hosten, würde sich das Caching vermutlich schon von allein verbessern, zumindest aber durch dich optimierbar sein.
Und schon erledigt sich die Rechtsfrage von ganz allein.
- Sven Rautenberg