Làm thế nào để đăng xuất CLA ngăn ngừa các vấn đề pháp lý trong các dự án nguồn mở?


22

Ví dụ: yeoman . Nó được cấp phép theo giấy phép BSD. Biểu mẫu CLA (Thỏa thuận cấp phép cộng tác viên) không phải là dự án cụ thể và có thể được ký điện tử.

  • Làm thế nào và những vấn đề có thể đăng xuất thỏa thuận này ngăn chặn?
  • Có vấn đề gì tôi đóng góp lớn hay nhỏ?
  • Tại sao một số dự án yêu cầu CLA đã ký để chấp nhận các bản vá, trong khi những dự án khác thì không? (ví dụ: node.js vs rails)

Câu trả lời:


27

CLA thường tồn tại để làm một số điều:

  • Họ ngăn bạn thu hồi mã của bạn xuống đường. Ở các quốc gia được ký kết theo công ước Bern, các tác giả chỉ giữ bản quyền trên tất cả các tác phẩm gốc, với các quốc gia khác chỉ được phép sao chép nó với sự cho phép rõ ràng. CLA khiến bạn cấp quyền đó một cách rõ ràng và thường xuyên vĩnh viễn, do đó bạn không thể thay đổi suy nghĩ của mình sau này. CLA này có một điều khoản như vậy, do đó, không lấy lại mã sau khi bạn đóng góp.
  • Họ có thể ngăn bạn kiện họ vì vi phạm bằng sáng chế. Một số người đóng góp là trùng lặp và có thể đóng góp mã mà họ biết được bảo vệ bởi một trong các bằng sáng chế của họ, hy vọng rằng sau đó họ sẽ kiện mọi người xuống đường khi mã được phổ biến. Điều này đã xảy ra trong một số cơ quan tiêu chuẩn chính và cũng đã xuất hiện trong phần mềm nguồn mở. CLA ở đây cấm bạn kéo diễn viên đóng thế này: khi bạn gửi mã cho dự án này, bạn cũng cấp cho họ và người dùng của họ, giấy phép miễn phí bản quyền vĩnh viễn cho bất kỳ bằng sáng chế nào bạn sở hữu mã số mà bạn tự gửi.
  • Nó che mông của họ nếu người khác kiện họ hoặc yêu cầu bản quyền. Hầu hết các CLA, bao gồm cả điều này, khiến bạn thề rằng mọi thứ bạn đóng góp là của bạn để đóng góp. Điều này về cơ bản phục vụ như một cách cho Google (hoặc một số dự án thượng nguồn khác), người bị kiện vì vi phạm bản quyền, chỉ vào bạn và nói, Xin lỗi, nhưng đó không phải là chúng tôi, đó là anh ấy.
  • Nó có thể tùy ý gán lại bản quyền, cung cấp cho tổ chức phụ huynh một số răng để kiện những người vi phạm giấy phép. Cuối cùng, trong khi CLA mà bạn liên kết không làm điều này, nhiều dự án nguồn mở, bao gồm tất cả được điều hành bởi FSF, có CLA yêu cầu chuyển nhượng bản quyền hoàn toàn, có nghĩa là bất kỳ mã nào bạn gửi sẽ mang bản quyền của dự án chứ không phải bạn. Điều này có hai lợi thế đối với tổ chức mẹ: họ không cần phải làm tròn tất cả những người đóng góp nếu họ muốn kiện vi phạm nguồn mở; và họ không cần tham khảo ý kiến ​​của những người đóng góp nếu họ muốn thay đổi giấy phép. Hầu hết các CLA yêu cầu chuyển nhượng bản quyền cũng cấp giấy phép miễn phí bản quyền vĩnh viễn cho người đóng góp và khách hàng của họ theo cách ngược lại với cách hoạt động của các CLA khác. Như đã đề cập, CLA này không yêu cầu xác định lại bản quyền.

Hầu hết các dự án tình nguyện, chẳng hạn như Rails và Node, không yêu cầu CLA, nếu không vì lý do nào khác vì không có thực thể hỗ trợ nào yêu cầu hoặc làm bất cứ điều gì có ý nghĩa với họ ngay từ đầu. (Các dự án được hỗ trợ bởi FSF là ngoại lệ chính ở đây, như đã lưu ý trước đây.) Hầu hết các dự án nguồn mở được hỗ trợ thương mại, như các sản phẩm chính thức của Google / Oracle / Apple, đều yêu cầu một số hình thức CLA, bởi vì hầu hết các công ty đều có luật sư người suy nghĩ về những loại của sự vật, và bởi vì một tổ chức ủng hộ duy nhất để thi hành mà loại điều.


1
Khá nhiều điểm vì vậy thay vì trả lời của riêng tôi một bổ sung: Một số CLA cho phép chủ sở hữu dự án chính thay đổi giấy phép sau đó. tức là một số dự án đã thay đổi từ "GPL2 trở lên" thành "GPL2" hoặc cấp phép kép với giấy phép thương mại. Theo kinh nghiệm cá nhân của tôi, hầu hết các CLA đều cố gắng giúp chủ dự án tránh xa bản thân trong trường hợp có vấn đề ...
johannes

Nút yêu cầu CLA . Tại sao CLA được yêu cầu ký ngay cả khi đóng góp các bản vá nhỏ? Làm thế nào để họ biết rằng tôi đã đăng xuất CLA, nhưng không ai khác?
NARKOZ

Giả sử, tôi đã gửi các bản vá cho yeomanAngular.js . Làm thế nào để họ biết rằng tôi đã ký CLA không chỉ cho một dự án, mà cho cả hai dự án?
NARKOZ

"chuyển nhượng, có nghĩa là bất kỳ mã nào bạn gửi sẽ mang bản quyền của dự án chứ không phải bạn" - thực tế một số CLA như Thỏa thuận cộng tác viên của Oracle "chia sẻ" bản quyền ... vì vậy bạn vẫn sở hữu mã của mình nhưng họ vẫn có thể thực hiện các phiên bản thương mại hoặc bảo vệ giấy phép nguồn mở tại tòa án - oracle.com/technetwork/community/oca-486395.html
johannes

4

CLA cũng có thể (ngoài những điều khác được đề cập trên trang này) bảo vệ những người đóng góp khỏi các vấn đề pháp lý. Hãy xem đoạn trích này từ CLA của Google :

Bạn không được mong đợi cung cấp hỗ trợ cho Đóng góp của bạn, ngoại trừ trong phạm vi bạn muốn cung cấp hỗ trợ. Bạn có thể cung cấp hỗ trợ miễn phí, có tính phí hoặc hoàn toàn không. Trừ khi được luật pháp hiện hành yêu cầu hoặc đồng ý bằng văn bản, Bạn cung cấp Đóng góp của bạn trên CƠ SỞ "NHƯ VẬY", KHÔNG CÓ ĐẢM BẢO HOẶC ĐIỀU KIỆN NÀO, dù rõ ràng hay ngụ ý, bao gồm, nhưng không giới hạn, bất kỳ bảo đảm hoặc điều kiện nào của TITLE, NON- TẠO RA, KHẢ NĂNG SINH LỢI, hoặc PHÙ HỢP ĐỐI VỚI MỘT MỤC ĐÍCH THAM GIA.


"Bạn không được mong đợi cung cấp hỗ trợ cho Đóng góp của bạn, ngoại trừ trong phạm vi Bạn muốn cung cấp hỗ trợ" <- không phải đã được cấp phép bởi chính giấy phép? Bạn không cần CLA để nêu điều này?
Rudolf Olah

1
@RudolfOlah Có thể đôi khi (tôi không chắc chắn), nhưng không phải lúc nào cũng vậy. Ví dụ: Những người đóng góp cấp cho chủ dự án giấy phép bản quyền - sau đó chủ sở hữu dự án có thể thay đổi giấy phép phần mềm thành bất cứ điều gì họ muốn, ví dụ [loại bỏ những thứ bảo vệ người đóng góp] khỏi giấy phép cho người dùng cuối. Tuy nhiên, nếu có CLA thì những người đóng góp vẫn được bảo vệ.
KajMagnus

1
@RudolfOlah Một ví dụ khác: Giấy phép phần mềm thương mại độc quyền, thực sự có thể hứa với người dùng phần mềm (nhà sản xuất phần mềm của công ty phần mềm) rằng các nhà phát triển thực sự sẽ hỗ trợ và bồi thường thiệt hại cho các lỗi. - Sau đó, nếu bạn đóng góp cho phần mềm này (ví dụ: vì bạn sử dụng nó và bạn muốn khắc phục nhanh), bạn sẽ muốn một CLA nói rằng bạn sẽ không cần phải làm những việc đó.
KajMagnus

Cảm ơn những ví dụ đó, tôi vẫn thấy CLA là một rào cản để tham gia đóng góp cho một dự án; Tôi có thể hiểu nó có ý nghĩa như thế nào đối với các dự án lớn hơn
Rudolf Olah

3

Câu trả lời của Benjamin khá rõ ràng nhưng tôi muốn nhấn mạnh một điểm duy nhất. CLA bảo vệ các công ty sử dụng hoặc đóng góp cho các dự án. Các công ty, đặc biệt là những công ty lớn, rất sợ bị mất cảnh giác bởi các vấn đề pháp lý. Tôi đã có luật sư của công ty nói với mọi người rằng tôi biết rằng ngay cả trong các vụ kiện tát mà luật pháp đứng về phía bạn, bạn chỉ có thể chắc chắn khoảng 60% rằng bạn sẽ thắng kiện.

Hãy xem xét tình hình của một công ty, đặc biệt là một công ty rất lớn với nhiều doanh thu, xây dựng một sản phẩm xung quanh một công cụ nguồn mở. Họ có được khách hàng, xây dựng cơ sở hạ tầng và thuê nhân viên. Nếu bất ngờ một người đóng góp cho công cụ ban đầu kiện họ vì vi phạm bằng sáng chế hoặc bản quyền, công ty đang ở trong nước nóng hợp pháp. Nếu họ ngừng cung cấp sản phẩm của mình, họ đã lãng phí tiền cho cơ sở hạ tầng và nhân viên mà họ không cần và quan trọng hơn, họ đang chọc giận khách hàng. Mặt khác, nếu họ ngừng cung cấp dự án của họ, trách nhiệm của họ kết thúc trong khi vụ việc đã được tìm ra.

Xem xét bối cảnh phần mềm pháp lý hiện tại, CLA là cách tốt nhất để khiến các công ty cảm thấy thoải mái khi sử dụng và đóng góp cho phần mềm nguồn mở. Điều đó không lý tưởng (thật tuyệt khi không bao giờ phải đối phó với bất kỳ nội dung hợp pháp nào này) nhưng ngay bây giờ, đây là một trong số ít cách thực hiện những đóng góp này.


Đó không chỉ là về các công ty có nhiều doanh thu - Nền tảng phần mềm miễn phí không có nhiều doanh thu mà còn yêu cầu CLA để có thể chống lại các vi phạm giấy phép tại tòa án hoặc đơn giản là tái cấp phép
johannes
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.