diff --git a/CLA.md b/CLA.md new file mode 100644 index 0000000..a0efcf4 --- /dev/null +++ b/CLA.md @@ -0,0 +1,130 @@ + + +# Contributor License Agreement + +Any person or entity who wants to participate in a FOSS project of Industria de Diseño Textil, S.A. ("INDITEX") must have a Contributor License Agreement ("CLA") signed. + +By signing this CLA, You accept and agree to the following terms and conditions for Your present and future Contributions submitted to INDITEX. Except for the license granted herein to INDITEX and recipients of software distributed by INDITEX, You reserve all right, title, and interest in and to Your Contributions. + +Please read this document carefully before signing and contributing. + +This Agreement is effective as of the date of signature. The rights that you grant to us under these terms are effective on the date you first submitted a Contribution to us, even if your submission took place before the date you agreed to these terms and conditions. + +## 1. Definitions + +**"You" (or "Your")** shall mean the copyright owner or legal entity authorized by the copyright owner that is making this Agreement with INDITEX. + +For legal entities, the entity making a Contribution and all other entities that control, are controlled by, or are under common control with that entity are considered to be a single Contributor. + +For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. + +**"Contribution"** shall mean any original work of authorship, including any modifications or additions to an existing work, that is submitted by You to INDITEX for inclusion in, or documentation of, any of the products owned or managed by INDITEX (the "Work"). + +**"Property Rights"** means all types of legal rights that protect creative work, inventions, brands, and confidential information. This includes: + +- Copyright-related rights +- Industrial property rights, like patents, trademarks or designs. +- trade secrets +- Image Rights +- Domain names on the internet + +It also includes the right to register or protect these rights legally and the ability to create and profit from modified or new works based on the original contribution. + +**"Submit"** means any form of electronic communication, including, without limitation, upload, communication on mailing lists, source code control systems, pull requests and bug tracking systems that are used by INDITEX for its FOSS Project. + +**"Third Party Materials"**: Anything you didn't create, like someone else's software. + +## 2. Grant of Rights in Contributions + +By submitting your Contribution, and subject to this Agreement, you grant INDITEX and anyone who receives the software from INDITEX a worldwide, permanent, non-exclusive, royalty-free license to: + +- use, copy, modify, adapt, test, run, host, access, share, sublicense, and distribute your Contribution and any derivative works; +- use your Contribution whether commercial or non commercial purposes, including the right to sell, lease, or otherwise make it available, in whole or in part, to others, publicly or privately; +- fix bugs, maintain, and further develop the Contribution for any purpose. + +This license applies to your Contribution in any format. + +INDITEX is expressly authorized to determine the licensing terms of the project, and by extension, of your contribution once integrated, whether under open source or proprietary terms. + +INDITEX is not required to accept your Contribution. If INDITEX chooses not to use it, the rights and licenses granted will no longer apply. + +## 3 Guarantees + +You guarantee that: + +- a. You have the legal right to share your Contribution. If your employer or someone else owns any rights to it, you confirm that: + + - You got clear permission to contribute it, + - Or your employer gave up their rights, + - Or your employer signed a separate agreement with INDITEX. + +- b. Your Contribution is your own original work. +- c. You have the legal authorizations and/or permissions to submit third-parties Works. If it includes anything under a third-party license (like patents, trademarks, or other restrictions), you must fully disclose that. +- d. If anything changes or becomes inaccurate you agree to immediately notify INDITEX. +- e. You comply with any legal obligations, requirements and responsibilities including those established by the European Union, including the Cyber Resilience Act, and/or Spanish law. + +Any breach of these minimum quality assurance requirements may result in the rejection of the Contribution by INDITEX. + +## 4. Miscellaneous + +### **a. Independent Contractors** + +The relationship of the parties under this Agreement is that of independent contractors, and neither party will have the right to act as the agent of the other party. + +#### **b. Entire Agreement** + +This Agreement is the only agreement that covers this topic. It replaces any previous negotiations or agreements about the same subject matter. + +In the event that any provision is held to be invalid, such provision shall be modified to make it enforceable. Notwithstanding the invalid provision, the remainder of the Agreement shall remain in full force and effect. + +If the provision cannot be modified, it shall be deemed not to have been made, and the remainder of the Agreement shall be construed in a manner that best reflects the original intent of the parties. + +#### **c. Prevalence** + +If you have another separate agreement with INDITEX on the same subject, that separate agreement will take priority, e.g, if you are an INDITEX Provider your Contribution will be governed by the INDITEX's Providers Terms of Conditions + +If that separate agreement doesn't grant the same rights as this one, the intellectual property terms in this Agreement will still apply. + +These separate agreements don't affect others involved in the Project. + +#### **d. Modifications** + +Any changes to this Agreement must be in writing to be valid. + +## 5. Data Protection + +INDITEX wants you to know that it will handle your personal data to manage and carry out this Agreement. Your data will only be kept for as long as needed to do that, or as required by law in case any legal responsibility arises later. + +The reason INDITEX is allowed to process your data is because it's necessary to fulfill this Agreement. + +Sometimes, to meet legal or business needs, INDITEX may share your data with other companies in the Inditex Group. These companies are all located within the European Economic Area and are involved in areas like real estate, logistics, clothing, home products, cosmetics, and e-commerce support. + +You have rights over your personal data. You can: + +- See what data they have about you +- Ask to correct or delete it +- Object to how it's used +- Limit how it's used +- Request a copy (data portability) + +To use these rights, email: + +If you're not satisfied with how your data is handled, you can file a complaint with your local data protection authority, or with the Spanish Data Protection Authority. + +If you have any questions about your data, you can also contact INDITEX's Data Protection Officer. + +## 6. Governing law and Jurisdiction + +This Agreement, and any conflict resulting from it, will be governed by the laws of Spain. + +The parties agree to try to resolve any dispute about the interpretation or performance of this Agreement in a friendly way. + +If no agreement is reached within fifteen days, the dispute will be submitted to the Courts of Madrid, Spain. The parties expressly and voluntarily waive any other jurisdiction that may apply. + +## 7. Electronic signature + +The parties hereby agree that this Agreement may be executed with electronic signatures and shall be valid and binding on the parties. diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 6189f9f..3f45597 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -8,23 +8,61 @@ SPDX-License-Identifier: CC-BY-SA-4.0 Thank you for your interest in contributing to this project! We value and appreciate any contributions you can make. To maintain a collaborative and respectful environment, please consider the following guidelines when contributing to this project. -## Prerequisites +## Commit and Pull Request Signature Requirements -Before starting to contribute to the code, you must first sign the [Contributor License Agreement (CLA)](./documents/CLA.pdf). +When you open a Pull Request (PR), you must ensure that: -Once signed, send the completed CLA to the email address provided in the document (oso@inditex.com). +1. **Contributor License Agreement (CLA):** + - You are agreeing to the terms of the CLA by submitting your PR. The CLA document is available [here](./CLA.md). -After submission, you will need to wait for a confirmation email response from us before you can start contributing. If there are any issues with your CLA, we will contact you for clarification. +2. **Sign Off Each Commit:** + - Every commit in your PR must include the `Signed-off-by` line in the commit message. This is done by using the `-s` option with `git commit`: -If you have any questions or encounter issues during the process, please reach out to us via the project's communication channels or the contact email provided in the CLA document. + ```sh + git commit -s -m "Your commit message" + ``` -## Contribution Guidelines + - This line certifies your agreement to the CLA for each contribution. For more details, see the [git commit documentation](https://git-scm.com/docs/git-commit#Documentation/git-commit.txt--s). + +3. **GPG-Sign All Commits:** + - All commits must be signed with a valid and verified GPG signature. + - The signature must be verified by GitHub and use a verified email address associated with your GitHub account. + - For instructions on setting up GPG signing, refer to: + - [GitHub: About commit signature verification](https://docs.github.com/en/authentication/managing-commit-signature-verification/about-commit-signature-verification) + - [Git Book: Signing Your Work](https://git-scm.com/book/en/v2/Git-Tools-Signing-Your-Work) + - *Tip:* After configuring your client to sign commits, it is advisable to activate signing by default in your local repository: + + ```sh + git config --local commit.gpgsign true + ``` + + > This ensures all your commits are signed automatically. + +## Pull Request Validation Process + +When you open a PR: + +- An automated comment will confirm that your commit signatures are valid and provide a link to the CLA document you are signing. +- If there are any errors (missing sign-off, invalid GPG signature, or unverified email), the comment will include details about the issue. + +Please ensure all requirements are met before submitting your PR to avoid delays in the review process. + +## Code of Conduct and Technical Guidelines + +All contributions must adhere to the following: + +1. **Code of Conduct:** + - All contributors are expected to follow the project's [Code of Conduct](./CODE_OF_CONDUCT.md). Please be respectful and considerate towards other contributors. + +2. **Technical Guidelines:** + - Contributions must follow the technical guidelines specified in each repository. Please review the repository-specific documentation before starting work. + +### General Contribution Guidelines -- All contributors are expected to follow the project's [code of conduct](CODE_OF_CONDUCT.md). Please be respectful and considerate towards other contributors. - Before starting work on a new feature or fix, check existing issues and pull requests to avoid duplications and unnecessary discussions. - If you wish to work on an existing issue, comment on the issue to inform other contributors that you are working on it. This will help coordinate efforts and prevent conflicts. -- It is always advisable to discuss and gather feedback from the community before making significant changes to the project's structure or architecture. -- Ensure a clean and organized commit history. Divide your changes into logical and descriptive commits. We recommend to use the [Conventional Commits Specification](https://www.conventionalcommits.org/en/v1.0.0/) +- Discuss and gather feedback from the community before making significant changes to the project's structure or architecture. +- Ensure a clean and organized commit history. Divide your changes into logical and descriptive commits. We recommend using the [Conventional Commits Specification](https://www.conventionalcommits.org/en/v1.0.0/). - Document any new changes or features you add. This will help other contributors and project users understand your work and its purpose. - Be sure to link the corresponding issue in your pull request to maintain proper tracking of contributions. - Remember to add license and copyright information following the [REUSE Specification](https://reuse.software/spec/#copyright-and-licensing-information). diff --git a/documents/CLA.pdf b/documents/CLA.pdf deleted file mode 100644 index fbeaf6a..0000000 Binary files a/documents/CLA.pdf and /dev/null differ diff --git a/documents/CLA.pdf.license b/documents/CLA.pdf.license deleted file mode 100644 index ef44578..0000000 --- a/documents/CLA.pdf.license +++ /dev/null @@ -1,3 +0,0 @@ -SPDX-FileCopyrightText: 2024 INDUSTRIA DE DISEÑO TEXTIL S.A. (INDITEX S.A.) - -SPDX-License-Identifier: CC-BY-SA-4.0 \ No newline at end of file