Bahasa Dart Google tidak didukung oleh Peramban Web apa pun selain kromium khusus yang dikenal sebagai Dartium. Untuk menggunakan Dart untuk kode produksi, Anda perlu menjalankannya melalui kompiler / penerjemah JavaScript- Dart dan kemudian menggunakan JavaScript yang dihasilkan dalam aplikasi web Anda.
Karena JavaScript adalah bahasa yang ditafsirkan setiap orang yang menerima "biner" (Aka, file .js) juga telah menerima kode sumber.
Sekarang, Lisensi Publik Umum GNU v3.0 menyatakan bahwa:
"" Kode sumber "untuk suatu karya berarti bentuk karya yang disukai untuk membuat modifikasi.
Yang akan menyiratkan bahwa kode Dart asli selain kode JavaScript juga harus diberikan kepada pengguna akhir. Apakah ini berarti bahwa aplikasi web apa pun yang ditulis dalam Dart juga harus memberikan kode Dart asli kepada semua pengunjung situs web mereka walaupun salinan kode sumber telah disediakan dalam bentuk yang dapat dibaca / ditulis / dimodifikasi oleh manusia?
sumber
Jawaban:
Ya, jika kode berada di bawah GPL dan Anda memberikan JavaScript yang dihasilkan, Anda juga harus memberikan kode Dart asli. Ini biasanya dilakukan dengan tautan untuk mengunduh kode sumber dari situs Anda, tetapi Anda juga dapat menyematkannya dalam komentar atau sesuatu seperti itu.
Saya pikir cara termudah untuk mematuhi GPL dalam hal ini adalah menggunakan opsi d untuk mendistribusikan sumber
Pada dasarnya Anda melakukan ini ketika Anda memasukkan file JS di halaman Anda
sumber
Pertama-tama kita berbicara tentang GPL, bukan AGPL.
Jika Anda tidak mendistribusikan aplikasi GPL, jika Anda menjalankannya di server, Anda tidak harus memberikan kode sumber . Ada AGPL untuk itu. GPL adalah tentang distribusi.
Dari FAQ Drupal:
Harap dicatat bahwa Drupal dilisensikan di bawah GPL dan berisi file js (banyak).
Dari GNU:
sumber
Secara umum, itu sangat tergantung pada lisensi. Dalam kasus Anda, Dart adalah contoh buruk karena BSD, dan sepertinya GNU 3.0 mencakup kasus yang Anda bicarakan. Sebagai seorang non-pengacara saya akan menafsirkan kutipan itu sebagai "Kode yang dihasilkan tidak secara khusus dibahas"
Halaman Beranda Dart Mengacu pada hal ini: Lisensi BSD
Jadi pertanyaan Anda tentang GPL adalah moot
Juga: Lisensi GNU 3.0
Apakah ada cara agar saya bisa mendapatkan hasil keluaran GPL dari penggunaan program saya? Misalnya, jika program saya digunakan untuk mengembangkan desain perangkat keras, dapatkah saya meminta agar desain ini harus gratis? (#GPLOutput)
Secara umum ini tidak mungkin secara hukum; undang-undang hak cipta tidak memberi Anda suara apa pun dalam penggunaan hasil yang dibuat orang dari data mereka menggunakan program Anda. Jika pengguna menggunakan program Anda untuk memasukkan atau mengonversi datanya sendiri, hak cipta pada output menjadi miliknya, bukan Anda. Secara lebih umum, ketika suatu program menerjemahkan inputnya ke dalam bentuk lain,> status hak cipta dari output mewarisi input yang dihasilkannya.
Jadi satu-satunya cara Anda memiliki suara dalam penggunaan output adalah jika sebagian besar output disalin (lebih atau kurang) dari teks dalam program Anda. Sebagai contoh, bagian dari output Bison (lihat di atas) akan dicakup oleh GNU GPL, jika kami tidak membuat pengecualian dalam kasus khusus ini.
Anda dapat secara artifisial membuat program menyalin teks tertentu ke dalam outputnya bahkan jika tidak ada alasan teknis untuk melakukannya. Tetapi jika teks yang disalin itu tidak memiliki tujuan praktis, pengguna hanya dapat menghapus teks dari output dan hanya menggunakan sisanya. Maka dia tidak perlu mematuhi ketentuan redistribusi teks yang disalin.
sumber
Pertanyaan dasarnya adalah:
Apakah termasuk javascript pada halaman web (misalnya referensi melalui tag skrip) dianggap sebagai "Menyampaikan" pekerjaan GPL?
Jika ya, Anda harus membuat sumber tersedia dalam bentuk yang disukai untuk memodifikasi kode, jika tidak Anda tidak. Dalam hal ini bentuk yang disukai adalah kode sumber Dart asli yang digunakan untuk menghasilkan javascript.
Saya tidak dapat menemukan jawaban eksplisit untuk pertanyaan ini di situs FSF tetapi esai Stallman "The Javascript Trap" tampaknya mengindikasikan bahwa ia menganggapnya Menyampaikan dan dengan demikian Anda harus menyediakan kode sumber Dart asli. Lihat catatannya tentang mengizinkan versi yang diperkecil yang tidak menyertakan teks lisensi tetapi masih dilindungi oleh lisensi.
Lihat juga FAQ ini tentang javascript dan templat untuk pengecualian yang memungkinkan templat menggunakan javascript GPL tanpa GPL.
Cara terbaik mutlak untuk mengetahui apakah yang ingin Anda lakukan sesuai dengan lisensi adalah dengan bertanya kepada pemegang Hak Cipta kode, karena hanya mereka yang memiliki hak untuk menegakkan lisensi. Mereka mungkin telah menafsirkan lisensi secara berbeda dan bersedia menambahkan pengecualian untuk membuat interpretasi mereka eksplisit.
sumber