Tôi có nên bao gồm bản thân mình với tư cách là tác giả sau khi sửa đổi mã của bên thứ 3 không?


17

Đó là cách phổ biến để thực hiện một số chỉnh sửa hoặc sửa lỗi trong mã của bên thứ 3 (có thể là một ý chính đơn giản hoặc toàn bộ thư viện). Nhưng điều phổ biến là nhiều mã trong số này có các quy tắc cấp phép riêng và cuối cùng là một tiêu đề trên mỗi tệp có thông tin bản quyền.

Sau khi thực hiện những sửa đổi đó, điều chính xác cần làm tiếp theo là gì? Giữ thông tin giấy phép không thể chạm tới hoặc cố gắng cập nhật nó bao gồm cả bản thân bạn với một cái gì đó như @authorhoặc @revisionthẻ?

Một vấn đề phổ biến khác là thay đổi không gian tên / gói của bên thứ 3 để phù hợp với quy ước dự án của bạn. Một số loại giấy phép bao gồm các loại thông tin này trong khối giấy phép của họ, tôi có thể thay đổi nó một cách tự do không?

Tôi biết câu trả lời cho những câu hỏi này tùy thuộc vào từng loại giấy phép, vì vậy để làm cho câu hỏi của tôi cụ thể hơn ...

Xem xét các quy tắc giấy phép chung (thường là khác nhau về các khía cạnh nhỏ, phải không?), Có đạo đức (hoặc ít nhất là được phép) mà tôi tự do thêm thông tin vào khối giấy phép về các sửa đổi của mình và có lẽ cũng sửa đổi cách tôi đề cập đến nó trong mã của mình (ví dụ sử dụng YACorp.YALibnhư Utils.YALib)?


2
Phụ thuộc vào giấy phép và thực tiễn thành lập dự án. Một số dự án tín dụng tất cả các tác giả trong văn bản giấy phép; những người khác đưa các tác giả lên Github và tham khảo dự án theo tên trong giấy phép. Một số giấy phép yêu cầu ghi công, một số không.
Robert Harvey

@RobertHarvey Bạn nói đúng, nhưng tôi đang cố gắng xác định một số nguyên tắc chung cho những tình huống này. Tôi đã cập nhật câu hỏi.
kbtz

Chỉnh sửa của bạn nghe như một ngã ba. Nếu bạn đang thực hiện dự án, bạn có thể làm bất cứ điều gì bạn muốn (bạn sở hữu ngã ba). Nhưng tôi sẽ không đùa với tên thư viện trừ khi bạn sở hữu dự án.
Robert Harvey


1
Câu hỏi này dường như lạc đề vì đó là về sự khẳng định và phân công bản quyền. Câu hỏi về bản quyền là những câu hỏi pháp lý ngoài chuyên môn của cộng đồng và không phù hợp với trang web. Câu hỏi này rất khó để trả lời chính xác vì có quá nhiều yếu tố liên quan như quyền tài phán địa phương cũng như việc cấp phép và quyền sở hữu bản quyền của chương trình gốc.

Câu trả lời:


9

Sau khi thực hiện những sửa đổi đó, điều chính xác cần làm tiếp theo là gì? Giữ thông tin giấy phép không thể chạm tới hoặc cố gắng cập nhật nó bao gồm cả bản thân bạn với một cái gì đó như thẻ @ Tác giả hoặc @revision?

Tôi nghĩ rằng bạn đang nhầm lẫn giấy phép phần mềm và bất kỳ lời mở đầu nào có thể là một phần của phần mềm.

Giấy phép là nơi chủ sở hữu bản quyền của chương trình chỉ định các điều khoản sử dụng (giấy phép) cho người khác. Một số giấy phép rất dễ dãi, một số khác hạn chế hơn nhiều.

Phần mở đầu là nơi các tác giả chèn @author@revisiongắn thẻ để cung cấp cách theo dõi các thay đổi đối với mã nguồn. Trong một số trường hợp, việc trở thành tác giả của một bổ sung không tầm thường vào mã có thể khiến bạn yêu cầu bản quyền đối với phần đó của mã. Việc giải quyết các vấn đề bản quyền có thể là chông gai và được các luật sư xử lý tốt nhất. Tuy nhiên, bạn đặc biệt tuyên bố rằng bạn không quan tâm đến khía cạnh đó nên tôi sẽ tiếp tục.

Một vấn đề phổ biến khác là thay đổi không gian tên / gói của bên thứ 3 để phù hợp với quy ước dự án của bạn. Một số loại giấy phép bao gồm các loại thông tin này trong khối giấy phép của họ, tôi có thể thay đổi nó một cách tự do không?

Điều này thực sự phụ thuộc vào các quy ước của dự án.

Nếu bạn rẽ nhánh dự án, bạn có thể làm bất cứ điều gì bạn muốn.

Nếu bạn có kế hoạch đóng góp các thay đổi của bạn trở lại dự án, bạn nên tuân thủ quy ước đã thiết lập. Nếu có một lý do thuyết phục để thay đổi không gian tên thì bạn cần trình bày điều đó với cộng đồng của ứng dụng.

Xem xét các quy tắc giấy phép chung (thông thường chúng khác nhau ở các khía cạnh nhỏ, phải không?),

đạo đức (hoặc ít nhất là được phép) mà tôi có thể tự do thêm thông tin vào khối giấy phép về các sửa đổi của mình và có lẽ cũng sửa đổi làm thế nào để tôi tham chiếu nó trong mã của mình (ví dụ: sử dụng YACorp.

Đừng thay đổi giấy phép!

Trước hết, bạn có thể không có quyền hợp pháp để thay đổi giấy phép. Thứ hai, bất kỳ thay đổi nào bạn thực hiện có khả năng sẽ làm xáo trộn giấy phép. Để lại giấy phép thay đổi cho các luật sư.

Theo như cập nhật phần mở đầu, nó phụ thuộc vào định mức dự án. Một số dự án không muốn mở đầu vì họ sử dụng kiểm soát nguồn để theo dõi điều đó. Các dự án khác làm. Thực hiện theo các quy ước của dự án.

Thực tế mối quan tâm của tôi liên quan nhiều đến "tôn trọng cộng đồng" hơn là các khía cạnh pháp lý, tôi đang hỏi nhiều hơn về việc chúng ta có thể "phát điên" đến mức nào nếu dự án của chúng ta có thể được coi là riêng tư hoặc cá nhân.

Nếu bạn đang giữ những thay đổi của mình cho chính mình, tại sao bạn lại quan tâm người khác nghĩ gì? Một cái gì đó mà bạn chỉ sử dụng cho chính mình và không bao giờ phân phối cho người khác không có tác động trở lại dự án ban đầu. Vì vậy, họ không quan tâm những gì bạn làm.

Nếu bạn có kế hoạch phân phối các thay đổi của mình hoặc đóng góp lại cho dự án, bạn cần đánh giá các quy ước của dự án đó. Một số dự án không muốn rẽ nhánh và sẽ có giấy phép tại chỗ ngăn chặn điều đó. Những người khác đi xa đến mức nói "làm những gì bạn muốn" và bạn được trao cho carte blush để làm khi bạn thấy phù hợp. Cuối cùng, câu trả lời ở đây phụ thuộc vào dự án cụ thể mà bạn đang xem.


Đúng như tôi dự đoán, câu trả lời gần như rõ ràng, nhưng thật nhẹ nhõm khi thấy mọi người nói lên suy nghĩ của mình. Cảm ơn tất cả các câu trả lời!
kbtz

Các dự án chấp nhận đóng góp nhưng không cho phép thực sự tồn tại? Hay bạn có nghĩa là những thứ như thư viện thương mại cũng đi kèm với mã nguồn của họ?
Svick

@svick - Cả hai sẽ được áp dụng trong trường hợp này. Một số dự án nguồn mở gần tồn tại (cố gắng) ngăn chặn ngã ba. Hãy nghĩ về các dự án mà họ đang cố gắng bảo lưu khả năng thương mại vào một thời điểm nào đó trong tương lai. Các thư viện thương mại hiện tại sẽ ngăn chặn ngã ba theo các điều khoản cấp phép.

@ GlenH7 Tôi nghĩ rằng các dự án như vậy (ví dụ: MySQL) thường yêu cầu bản quyền đóng góp đi theo phiên bản chính thức được giao cho tổ chức quản lý. Sau đó, phiên bản nguồn mở được phát hành theo giấy phép nguồn mở phổ biến (như GPL), nhưng chúng cũng có thể có phiên bản nguồn đóng thương mại. Nhưng điều đó không ngăn cản các phiên bản nguồn mở (xem MariaDB).
Svick

5

Tôi sẽ thêm một nhận xét, một phần để báo hiệu cho người đọc rằng tệp không phải là "vanilla", với các liên kết đến bất kỳ tài liệu liên quan hoặc hệ thống theo dõi vấn đề.

Chỉnh sửa: Vì vậy, tình huống này nhắc nhở tôi khi một gói phân phối Linux, ví dụ như thư viện. Debian có các hướng dẫn và tiêu chuẩn xung quanh cách các gói nên được xây dựng và đặt tên, có thể khác với cách thư viện thường được phân phối trước khi xây dựng.

Tôi không nghĩ bạn nên ngại ngùng khi đặt tên / xây dựng / sửa đổi thư viện, vì tôi đoán bạn sẽ không phân phối kết quả cho thế giới rộng lớn hơn? Trong trường hợp này, tôi sẽ bao gồm một README cùng với nguồn mô tả những thay đổi bạn đã thực hiện và tại sao. Ví dụ: README. $ {CompanyName} .changes


Tôi cũng sẽ làm một cái gì đó như thế này nhưng câu hỏi của tôi quan tâm nhiều hơn đến những gì được xem là đúng theo quan điểm của phần 3 và / hoặc các quy tắc cấp phép chung.
kbtz

2

Bạn sẽ phải tham khảo quy tắc cấp phép của mã.

Nói chung, nhiều ứng dụng lối vào nguồn mở (ví dụ Firefox, OpenOffice) coi tên ứng dụng và logo của chúng là nhãn hiệu; do đó, nếu bạn phát hành phiên bản sửa đổi của ứng dụng, bạn sẽ không thể sử dụng nhãn hiệu / trang phục thương mại ban đầu (như IceWeasel, Torbrowser, LibreOffice).

Tuy nhiên, hầu hết các thư viện lập trình thường ít quan tâm đến nhãn hiệu miễn là nó khá rõ ràng ai làm gì (thường có thể tìm thấy điều này từ siêu dữ liệu kiểm soát phiên bản).

Thông tin tác giả phục vụ hai mục đích:

  1. Cung cấp tín dụng khi đến hạn
  2. Đổ lỗi cho nơi xứng đáng

Cái sau trở nên quan trọng hơn khi những thay đổi của bạn trở nên lớn hơn. Thông tin về quyền tác giả thực tế thường có thể được tìm thấy trong kiểm soát phiên bản, nhưng một số dự án chính thức ghi có một nhóm tác giả trong một tệp riêng biệt. Điểm cắt mà mọi người sẽ được ghi có chính thức khác nhau cho từng dự án, liên hệ với các tác giả ban đầu nếu nghi ngờ.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.