Pertanyaan Apa etika & etiket dari proyek github orang lain untuk melepaskannya sebagai permata?


Saya melakukan beberapa pengodean waktu luang CultureGrid. Mereka memiliki API SOLR untuk mengakses 1,2 juta artefak budaya. Saya telah merilis permata untuk menggunakan layanan mereka, tetapi saya memiliki ide bagus tentang penggunaan Datamapper dengan backend adaptor SOLR untuk melakukannya dengan cara yang lebih baik.

Saya baru saja menemukan proyek dari tahun lalu di Github dengan mudah disebut dm-solr-adapter. Ini adalah garpu pekerjaan orang lain dari 2008 dan untuk menggunakannya Anda harus mengkloning proyek dan menjalankan tugas rake untuk menginstalnya (tidak banyak digunakan pada heroku, jadi saya harus menjualnya). Sayangnya tugas itu sekarang rusak karena mereka tidak menyematkan versi gem mereka, dan Bones telah banyak berubah antara versi 2 dan 3.

Pada dasarnya - dibutuhkan sedikit recode untuk membuatnya menjadi permata, dan jika saya akan melakukan itu saya mungkin juga melepaskannya sendiri dan melakukannya dengan cara yang saya tahu - menggunakan Jeweler sebagai gantinya.

Jadi, tentu saja saya akan menghapus semua penulis, tetapi saya hanya bertanya-tanya apa etika dan etiket di sini. Apakah saya memasukkan nama pengguna saya di permata atau apakah saya menggunakan nama permata asli? Mungkinkah itu berpotensi merusak instalasi orang lain, meskipun permata itu tidak terdaftar di Rubygems.org? Apakah saya mengikuti konvensi penomoran mereka? Mereka tampaknya telah memilih "1.0.0" dan terjebak dengannya, tanpa aktivitas lebih lanjut. Atau apakah saya baru mulai lagi dari versi 0.1.0?

Jika gagal, apakah saya hanya mengambil bit yang saya inginkan, memasukkannya ke dalam proyek baru saya dan memberikan tip topi? Itu tidak terdengar sangat berguna bagi orang lain yang mungkin ingin melakukan hal yang sama.

Atau mungkin saya mengambil bit yang saya temukan berguna, membuat permata yang benar-benar baru yang disebut sesuatu seperti dm-solr-backend dan pergi dari awal?

Oh, dilema - apa yang akan Anda lakukan?


32
2018-01-20 22:36


asal


Jawaban:


Jadi, jika Anda tidak akan merilis sebuah permata, teruskan saja dan garpu (dengan asumsi lisensi mengizinkannya) dan jangan khawatir tentang itu. Itu 100% OK dan bahkan perilaku yang diharapkan pada saat ini. Garpu sebenarnya adalah salah satu cara termudah untuk menerima tambalan dari kontributor. Grafik jaringan seringkali merupakan cara yang baik untuk mengevaluasi baik kesehatan suatu proyek maupun bidang-bidang potensial untuk perbaikan.

Jika Anda berniat merilis permata karena aslinya telah menjadi tidak dijaga, Anda harus:

  • Bebaskan sebagai username-originalgemname
  • Hubungi penulis asli dan tawarkan untuk mengambil alih. Lalu dorong permata baru dengan nama asli.

Jika Anda berniat merilis permata karena Anda perlu perubahan pada permata yang tidak menguntungkan masyarakat secara keseluruhan, Anda harus:

  • Buka paket permata ke direktori vendor dan jangan pernah rilis
  • Bebaskan sebagai username-originalgemname

Dalam banyak kasus, tidak ada masalah dengan rilis gem bernama username-originalgemname. Ini adalah model yang diambil oleh gudang permata GitHub, jadi begitulah kebanyakan orang menangani garpu pada titik ini.


19
2018-01-21 00:15



Satu-satunya contoh yang saya tahu saat ini adalah permata cache-uang. Sudah beberapa kali bercabang, dalam urutan ini:

Dalam setiap kasus, proyek itu sudah tidak aktif selama beberapa waktu. Selain tautan di GitHub yang menunjukkan dari mana garpu datang, tidak ada atribusi ke kode asli dalam kasus-kasus ini (garpu tengah bahkan lupa memperbarui dokumentasi untuk menentukan garpu mana yang akan dipasang ketika menginstal dari gem).

Selama Anda melakukan upaya dengan itikad baik untuk menghubungi pengelola asli dan proyek telah diam selama beberapa waktu, lakukanlah. Pastikan Anda memperbarui dokumentasi. ;)


4
2018-01-20 23:17



Sehubungan dengan memeriksa status proyek, ada situs baru yang disebut http://stillmaintained.com/ di mana beberapa orang mendaftar apakah proyek mereka dipelihara, mencari pengelola, atau ditinggalkan.


4
2018-01-21 02:50