xsheetjs/CONTRIBUTING.md

2.7 KiB

Contributing

SheetJS CE should be free and clear to use in your projects. To ensure that remains true, each contributor must be vigilant and each contribution must be carefully scrutinized from a technical and legal perspective.

Many commercial products and open source projects have been very lax regarding licensing. They are ticking timebombs that no commercial product should use.

Required Reading

These are pretty short reads and emphasize the importance of proper licensing:

Raising Issues

Issues should generally be accompanied by test files. It is strongly recommended to use the issue tracker.

If they cannot be shared publicly, please send files to oss@sheetjs.com (subject line should contain issue number or message) or share links to files hosted on a storage service. Unless expressly permitted, attachments will not be shared outside of SheetJS LLC or included in a test suite.

If a NDA is required, please send an email to oss@sheetjs.com with subject line "Non-Disclosure Agreemeant Request".

Opening Pull Requests

Please raise an issue before opening pull requests. It is easy to solve a specific problem without considering the full context or implications.

Pre-Contribution Checklist

Before thinking about contributing, make sure that:

  • You are not, nor have ever been, an employee of Microsoft Corporation.

  • You have not signed any NDAs or Shared Source Agreements with Microsoft Corporation or a subsidiary.

  • You have not consulted any existing relevant codebase (if you have, please take note of which codebases were consulted).

If you cannot attest to each of these items, the best approach is to raise an issue. If it is a particularly high-priority issue, please drop an email to support@sheetjs.com and it will be prioritized.

Intra-Contribution

Keep these in mind as you work:

  • Your contributions are your original work. Take note of any resources you consult in the process. Be extra careful not to use unlicensed code on the Internet or code generated by a large language model or other AI tool.

  • You are working on your own time. Unless they explicitly grant permission, your employer may be the ultimate owner of your IP

Post-Contribution

Before certain contributions are merged, you will receive an email (at the address associated with the git commit) and will be asked to confirm the aforementioned items. Ensure that the email addresses associated with the commits are valid.