Język Google Dart nie jest obsługiwany przez żadną przeglądarkę internetową inną niż specjalna wersja Chromium znana jako Dartium. Aby użyć Dart do kodu produkcyjnego, musisz uruchomić go za pomocą kompilatora / translatora Dart-> JavaScript, a następnie użyć wyjściowego JavaScript w swojej aplikacji internetowej.
Ponieważ JavaScript jest językiem interpretowanym, każdy, kto otrzymuje „binarny” (Aka, plik .js), również otrzymał kod źródłowy.
Obecnie GNU General Public License v3.0 stwierdza, że:
„„ Kod źródłowy ”utworu oznacza preferowaną formę utworu do wprowadzania modyfikacji.”
Co oznaczałoby, że oryginalny kod Dart oprócz kodu JavaScript musi być również dostarczony użytkownikowi końcowemu. Czy to oznacza, że wszelkie aplikacje internetowe napisane w Dart muszą również dostarczać oryginalny kod Dart wszystkim odwiedzającym ich witrynę, nawet jeśli kopia kodu źródłowego została już dostarczona w postaci czytelnej / zapisywalnej / modyfikowalnej przez człowieka?
źródło
Odpowiedzi:
Tak, jeśli kod jest objęty GPL i dostarczasz wygenerowany kod JavaScript, musisz również podać oryginalny kod Dart. Zazwyczaj robi się to za pomocą linku do pobrania kodu źródłowego z Twojej witryny, ale możesz również osadzić go w komentarzu lub czegoś podobnego.
Myślę, że najłatwiejszym sposobem na przestrzeganie GPL w tym przypadku jest użycie opcji d do dystrybucji źródła
Zasadniczo robisz to, umieszczając plik JS na swojej stronie
źródło
Przede wszystkim mówimy o GPL, a nie AGPL.
Jeśli nie rozpowszechnisz aplikacji GPL, jeśli uruchomisz ją na serwerze, nie musisz podawać kodu źródłowego . Jest na to AGPL. W GPL chodzi o dystrybucję.
Z Drupal FAQ:
Pamiętaj, że Drupal jest licencjonowany na licencji GPL i zawiera pliki js (dużo).
Z GNU:
źródło
Zasadniczo zależy to od licencji. W twoim przypadku Dart jest złym przykładem, ponieważ jest BSD i wydaje się, że GNU 3.0 obejmuje przypadek, o którym mówisz. Jako osoba niebędąca prawnikiem interpretowałbym ten cytat jako „Wygenerowany kod nie jest konkretnie objęty”
Strona główna Dart Odnosi się do: Licencja BSD
Więc pytanie o GPL jest dyskusyjne
Ponadto: Licencja GNU 3.0
Czy jest jakiś sposób, że mogę GPL uzyskać wyniki uzyskiwane przez ludzi z mojego programu? Na przykład, jeśli mój program służy do opracowywania projektów sprzętowych, czy mogę wymagać, aby projekty te były bezpłatne? (#GPLOutput)
Zasadniczo jest to prawnie niemożliwe; prawo autorskie nie daje Ci prawa głosu w zakresie wykorzystania danych uzyskanych przez ludzi z ich danych za pomocą Twojego programu. Jeśli użytkownik korzysta z programu do wprowadzania lub konwertowania własnych danych, prawa autorskie do danych wyjściowych należą do niego, a nie do Ciebie. Mówiąc bardziej ogólnie, gdy program tłumaczy swoje dane wejściowe na inną formę, status praw autorskich wyjścia dziedziczy status danych wejściowych, z których został wygenerowany.
Zatem jedynym sposobem, w jaki możesz wypowiedzieć się na temat wykorzystania danych wyjściowych, jest skopiowanie (mniej więcej) znacznej części danych wyjściowych z tekstu w programie. Na przykład część danych wyjściowych Bison (patrz wyżej) byłaby objęta GNU GPL, gdybyśmy nie zrobili wyjątku w tym konkretnym przypadku.
Możesz sztucznie zmusić program do skopiowania określonego tekstu na jego wynik, nawet jeśli nie ma technicznych powodów. Ale jeśli skopiowany tekst nie ma praktycznego celu, użytkownik może po prostu usunąć tekst z pliku wyjściowego i użyć tylko reszty. Wówczas nie musiałby przestrzegać warunków redystrybucji skopiowanego tekstu.
źródło
Podstawowe pytanie brzmi:
Czy umieszczenie javascript na stronie internetowej (np. Odwoływanie się przez tag skryptu) liczy się jako „Przenoszenie” pracy GPL?
Jeśli tak, musisz udostępnić źródło w preferowanej formie modyfikacji kodu, jeśli nie, to nie. W tym przypadku preferowaną formą jest oryginalny kod źródłowy Dart używany do generowania javascript.
Nie mogę znaleźć jednoznacznej odpowiedzi na to pytanie na stronie FSF, ale esej Stallmana „The Javascript Trap” wydaje się wskazywać, że uważa to za przekazanie i jako taki musiałbyś udostępnić oryginalny kod źródłowy Dart. Zobacz jego notatkę na temat dopuszczania wersji zminimalizowanych, które nie zawierają tekstu licencji, ale nadal są objęte licencją.
Zapoznaj się również z często zadawanymi pytaniami na temat javascript i szablonów, aby uzyskać wyjątek, który zezwalałby szablonom na używanie javascript w GPL bez korzystania z GPL.
Absolutnie najlepszym sposobem, aby dowiedzieć się, czy chcesz zachować zgodność z licencją, jest zwrócenie się do właściciela praw autorskich o kod, ponieważ tylko oni mają prawo do egzekwowania licencji. Mogli interpretować licencję inaczej i byli gotowi dodać wyjątek, aby wyjaśnić swoją interpretację.
źródło