Code Monkey home page Code Monkey logo

contributing-howto's Introduction

Code of Conduct

We expect anyone who contributes to AdaCore GitHub to follow the AdaCore Code of Conduct.

Contributing to AdaCore Repositories - Frequently Asked Questions

I want to contribute a patch. What do I need to do?

The first time you want to contribute a patch on the AdaCore GitHub, we ask you to electronically approve our Individual Contributor Licence Agreement. CLA assistant will send you a link on your GitHub pull request to do so.

If you’re employed by a company as an employee, an intern or any similar status or if you’re working for hire for someone, you’ll also need a representative of your employer to sign a Corporation Contributor Licence Agreement and send it by e-mail to [email protected].

Once this is done, you won’t need to take any further action: our Contributor Licence Agreements will cover all your subsequent contributions and you’ll be done with paperwork!

Why do we need to bother with all of this?

In most countries, copyright law protects original works of authorship from unlawful copying and exploitation. In other words, the author of such a work, i.e. the developer of an original piece of software, is the only person who can allow others to do certain things (such as making it available to others, copying or modifying it, etc) with the software they created. In some countries, patent law gives the inventor or discoverer of any new and useful process or machine a similar legal monopoly.

Our Contributor License Agreements are there to allow us to accept your contribution without taking undue legal risks, either in the context of GitHub or our business.

How will my contribution be credited?

We know firsthand how important it is, in the digital age, for developers to be acknowledged and recognized in public for their technical works. Whenever you contribute to a github project, your login appears on the project’s contributors list (see an example for GtkAda), a standard feature in GitHub, from which it is possible to see all your patches. The contributor list features the biggest contributors first, so you know what to do if you want to be one top!

Will my name be in mentioned in file headers?

The short answer is “No”. The long answer follows.

It’s customary in the software development community to have a copyright notice in source file headers that looks like Copyright © Foobar, 2017, though these notices have far less legal significance now that the United States has ratified the Bern convention. In addition, they are a nightmare to maintain: not only does the list of contributors keeps expanding over the time, but deciding whose copyright should be mentioned is a complex legal call.

For these reasons, as long as there are no other contributors, the source file headers in our Github repository look like this:

Copyright © AdaCore, YYYY(-XXXX)

When you commit your contribution, you can change at your option the copyright notice to the following (where <PROJECT_NAME> is to be replaced by the appropriate GitHub project name):

Copyright © AdaCore and other contributors, YYYY(-XXXX)
See https://github.com/AdaCore/<PROJECT_NAME>/graphs/contributors for more information

What licenses do you use?

Our policy is to only use licenses for our projects which either meet the definition of Free Software of the Free Software Foundation or the Open Source Definition of the Open Source initiative. In addition, for libraries we choose permissive licenses, i.e. licenses which allow to the licensee to combine and redistribute the covered software in binary form under terms of their choice.

From a practical standpoint, our favorite choices are the GNU General Public License version 3 for software tools and that plus the GCC runtime exception version 3.1 for software libraries. However, when we reuse third party software to start a project, we may be constrained to use either the same license or compatible licenses, which may differ from these two.

This CLA looks like the Apache CLA. Did you copy it?

Definitely! We did for these two legal documents what software developers do for code: we reused it, as the Apache Foundation kindly allows people to do. Our Individual Contributor License Agreement is derived from the Apache Foundation’s Individual Contributor License Agreement (v2.0) and our Corporation Contributor License Agreement is derived from the Apache Foundation’s Corporate Contributor License Agreement (vr190612).

We mostly changed the language to remove the references to the Apache Foundation and adapt it to our corporate organization and to our legal environment.

contributing-howto's People

Contributors

berrendo avatar pmderodat avatar fabien-chouteau avatar enzbang avatar ptroja avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.