OSSILE follows typical open source processes for community contributions. This article contains great guidance on doing so: http://blog.davidecoppola.com/2016/11/howto-contribute-to-open-source-project-on-github/
Contributions to OSSILE will be accepted if the following conditions are met:
- Processes on this page have been followed
- Code quality is believed to be acceptable by the maintainers of the project
- The code contributes sufficient value and is aligned with the spirit of the project
- The submitter has joined the OSSILE project (to allow any issues to be routed to that person)
- The code can be licensed under the terms of (the OSSILE project license) (MIT), or can be licensed under a secondary license for the project. The feasibility of a secondary license will be evaluated on a case-by-case basis, but will not be allowed for non-permissive licenses such as the GNU GPL license.
- Any copyright declarations follow the requirements in the "copyright, ownership, and license" section of this document
There are no special processes. Just fork the project, make your changes, test them, and send us a pull request!
- As is standard, start by creating a new fork for your contributions, use that fork for the following steps.
- Create a new subdirectory within the "main" directory with a logical name for your build item. By convention, use all lowercase
- Drop the code into this new directory
- In this new directory, create a file called "setup".
- Put all the build/compilation steps necessary in the "setup" file. It will be invoked as a script. Start with a '#!' line. The script should build your ILE code into the OSSILE library on IBM i!
Please have your script obey the following rules:
- Write useful information to standard out in cases of build failure (for instance, dependencies missing, etc)
- Explicitly check that all operations finished successfully. If the build failed, exit with a nonzero return code
- Update the buildlist.txt file (in the main/ directory) to include your new subdirectory name
- Update the README.md text file to include:
- A reference to your item in the "What's included in OSSILE" section, which should include
- A link to your item's own README.md file
- Basic (20 words or less) description of what the item does
- A reference to your item in the "What's included in OSSILE" section, which should include
- Test and commit your changes, send us a pull request!
- As is standard, start by creating new fork for your contributions, use that fork for the following steps.
- Create a new file in the "xxx_examples" directory (where 'xxx' is the programming language of interest, in all lowercase)
- Test and commit your changes, send us a pull request!
-
As is standard, you retain ownership and copyright of any code that you created (whether you explicitly claim it or not)
-
All contributed code is to be available under the terms of (the OSSILE project license) (MIT)
-
If you'd like to explicitly claim copyright for a piece of code, do so in the header or prolog of your code. It must be in the following format:
Copyright (C) [years] [name] - Made available under the terms of the license of the containing project
For instance:
Copyright (C) 2015-2016 John Doe - Made available under the terms of the license of the containing project