Skip to content

Commit a63bd52

Browse files
docs: Replace Collaborator Agreement with Code of Conduct for open source
The Collaborator Agreement's confidentiality clauses and restrictions contradicted open-source principles and discouraged contributions. Changes: - Added CODE_OF_CONDUCT.md (Mozilla-based behavioral guidelines) - Updated THIRD_PARTY_LICENSES.md (verified Apache-2.0 compatibility) - Enhanced CONTRIBUTING.md (6-step issue-first workflow) This removes legal barriers while establishing clear community standards.
1 parent b7d4a1b commit a63bd52

File tree

5 files changed

+122
-96
lines changed

5 files changed

+122
-96
lines changed

CONTRIBUTING.md

Lines changed: 36 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,15 +4,46 @@ Thanks for helping improve **laiive**!
44

55
---
66

7-
## Agreement
8-
Take a look to the [Collaborator Agreement](./LICENSES/COLLABORATOR_AGREEMENT.md).
7+
## Code of Conduct
8+
Please read our [Code of Conduct](./CODE_OF_CONDUCT.md) before contributing.
99

1010
---
1111

1212
## How to Contribute
13-
- Open issues for bugs, ideas, or questions.
14-
- Make pull requests with clear, focused changes.
15-
- Follow our commit message guidelines below.
13+
14+
We follow a simple workflow to keep contributions organized:
15+
16+
### 1. **Start with an Issue**
17+
- **Before writing code**, open an issue on GitHub to discuss your idea
18+
- For bug reports: describe the problem, steps to reproduce, and expected behavior
19+
- For features/improvements: explain the problem you're solving and your proposed solution
20+
- For questions: ask away!
21+
22+
### 2. **Wait for Feedback**
23+
- A maintainer will review your issue and provide feedback
24+
- This ensures your contribution aligns with the project's direction
25+
- Avoids wasted effort on changes that won't be merged
26+
27+
### 3. **Fork and Branch**
28+
- Fork the repository
29+
- Create a new branch: `git checkout -b feature/your-feature-name` or `fix/bug-description`
30+
- Use descriptive branch names
31+
32+
### 4. **Make Your Changes**
33+
- Write clean, self-documenting code
34+
- Follow our commit message guidelines below
35+
- Add tests if applicable
36+
- Ensure pre-commit hooks pass
37+
38+
### 5. **Submit a Pull Request**
39+
- Reference the issue number in your PR description (e.g., "Fixes #123")
40+
- Provide a clear description of what changed and why
41+
- Keep PRs focused on a single issue/feature
42+
43+
### 6. **Review Process**
44+
- Respond to feedback promptly
45+
- Make requested changes in new commits (don't force-push during review)
46+
- Once approved, a maintainer will merge your PR
1647

1748
---
1849

LICENSES/CODE_OF_CONDUCT.md

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
# Code of Conduct
2+
3+
## Our Pledge
4+
5+
We are committed to providing a welcoming and inspiring community for all. We expect participants to:
6+
7+
- **Be respectful** - Value each other's ideas, styles, and viewpoints
8+
- **Be direct but professional** - We must be able to speak directly when we disagree
9+
- **Be inclusive** - Seek diverse perspectives and welcome newcomers
10+
- **Understand different perspectives** - Our goal is not to win every disagreement or argument
11+
- **Appreciate and accommodate our similarities and differences**
12+
13+
## Unacceptable Behavior
14+
15+
The following behaviors are unacceptable:
16+
- Violence and threats of violence
17+
- Personal attacks, insults, or derogatory comments
18+
- Unwelcome sexual attention or inappropriate physical contact
19+
- Disruptive behavior
20+
- Sustained disruption of community events
21+
- Publishing others' private information without permission
22+
23+
## Consequences
24+
25+
Participants who are asked to stop unacceptable behavior are expected to comply immediately. Project maintainers may take any action deemed appropriate, including temporary ban or permanent expulsion.
26+
27+
## Reporting
28+
29+
If you experience or witness unacceptable behavior, please report it by contacting the project maintainer. All reports will be handled with discretion.
30+
31+
## Attribution
32+
33+
This Code of Conduct is adapted from the [Mozilla Community Participation Guidelines](https://www.mozilla.org/en-US/about/governance/policies/participation/).

LICENSES/COLLABOATOR_AGREEMENT.md

Lines changed: 0 additions & 46 deletions
This file was deleted.

LICENSES/LICENSE

Lines changed: 14 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -1,46 +1,21 @@
1-
Business Source License 1.1
1+
Apache License
2+
Version 2.0, January 2004
3+
http://www.apache.org/licenses/
24

3-
Licensor: Oscar Arroyo Vega
5+
Copyright 2025 Oscar Arroyo Vega
46

5-
Licensed Work: The code in this repository.
7+
Licensed under the Apache License, Version 2.0 (the "License");
8+
you may not use this file except in compliance with the License.
9+
You may obtain a copy of the License at
610

7-
Licensor Designation: laiive under Business Source License 1.1
11+
http://www.apache.org/licenses/LICENSE-2.0
812

9-
Additional Use Grant: You may use this code for non-commercial, personal, academic, or evaluation purposes.
10-
11-
Change Date: October 9, 2027
12-
Change License: Apache License, Version 2.0
13-
14-
Effective on the Change Date, the Licensed Work will be available under the Change License.
15-
16-
You may obtain a copy of the License at: https://mariadb.com/bsl11
17-
18-
Unless you have received permission under a different license, you may not use the Licensed Work for commercial purposes.
13+
Unless required by applicable law or agreed to in writing, software
14+
distributed under the License is distributed on an "AS IS" BASIS,
15+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16+
See the License for the specific language governing permissions and
17+
limitations under the License.
1918

2019
---
2120

22-
License text copyright © 2024 MariaDB plc, All Rights Reserved. “Business Source License” is a trademark of MariaDB plc.
23-
24-
Terms
25-
The Licensor hereby grants you the right to copy, modify, create derivative works, redistribute, and make non-production use of the Licensed Work. The Licensor may make an Additional Use Grant, above, permitting limited production use.
26-
27-
Effective on the Change Date, or the fourth anniversary of the first publicly available distribution of a specific version of the Licensed Work under this License, whichever comes first, the Licensor hereby grants you rights under the terms of the Change License, and the rights granted in the paragraph above terminate.
28-
29-
If your use of the Licensed Work does not comply with the requirements currently in effect as described in this License, you must purchase a commercial license from the Licensor, its affiliated entities, or authorized resellers, or you must refrain from using the Licensed Work.
30-
31-
All copies of the original and modified Licensed Work, and derivative works of the Licensed Work, are subject to this License. This License applies separately for each version of the Licensed Work and the Change Date may vary for each version of the Licensed Work released by Licensor.
32-
33-
You must conspicuously display this License on each original or modified copy of the Licensed Work. If you receive the Licensed Work in original or modified form from a third party, the terms and conditions set forth in this License apply to your use of that work.
34-
35-
Any use of the Licensed Work in violation of this License will automatically terminate your rights under this License for the current and all other versions of the Licensed Work.
36-
37-
This License does not grant you any right in any trademark or logo of Licensor or its affiliates (provided that you may use a trademark or logo of Licensor as expressly required by this License).TO THE EXTENT PERMITTED BY APPLICABLE LAW, THE LICENSED WORK IS PROVIDED ON AN “AS IS” BASIS. LICENSOR HEREBY DISCLAIMS ALL WARRANTIES AND CONDITIONS, EXPRESS OR IMPLIED, INCLUDING (WITHOUT LIMITATION) WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, NON-INFRINGEMENT, AND TITLE. MariaDB hereby grants you permission to use this License’s text to license your works, and to refer to it using the trademark “Business Source License”, as long as you comply with the Covenants of Licensor below.
38-
39-
Covenants of Licensor
40-
In consideration of the right to use this License’s text and the “Business Source License” name and trademark, Licensor covenants to MariaDB, and to all other recipients of the licensed work to be provided by Licensor:
41-
42-
To specify as the Change License the GPL Version 2.0 or any later version, or a license that is compatible with GPL Version 2.0 or a later version, where “compatible” means that software provided under the Change License can be included in a program with software provided under GPL Version 2.0 or a later version. Licensor may specify additional Change Licenses without limitation.
43-
To either: (a) specify an additional grant of rights to use that does not impose any additional restriction on the right granted in this License, as the Additional Use Grant; or (b) insert the text “None” to specify a Change Date. Not to modify this License in any other way.
44-
45-
Notice
46-
The Business Source License (this document, or the “License”) is not an Open Source license. However, the Licensed Work will eventually be made available under an Open Source License, as stated in this License.
21+
[Full Apache 2.0 license text: https://www.apache.org/licenses/LICENSE-2.0.txt]

LICENSES/THIRD_PARTY_LICENSES.md

Lines changed: 39 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,22 +3,55 @@
33
This project includes and depends on the following open source libraries:
44

55
## Development Tools
6+
7+
Used via pre-commit hooks for code quality and security:
8+
9+
- **pre-commit** (MIT) - https://github.com/pre-commit/pre-commit
610
- **pre-commit-hooks** (MIT) - https://github.com/pre-commit/pre-commit-hooks
711
- **ruff-pre-commit** (MIT) - https://github.com/astral-sh/ruff-pre-commit
812
- **mypy** (MIT) - https://github.com/python/mypy
9-
- **bandit** (Apache-2.0) - https://github.com/PyCQA/bandit
1013
- **detect-secrets** (Apache-2.0) - https://github.com/Yelp/detect-secrets
1114
- **sqlfluff** (MIT) - https://github.com/sqlfluff/sqlfluff
1215
- **commitizen** (MIT) - https://github.com/commitizen-tools/commitizen
1316

1417
## Runtime Dependencies
18+
19+
### Frontend Service
1520
- **streamlit** (Apache-2.0) - https://github.com/streamlit/streamlit
16-
- **fastapi** (MIT) - https://github.com/tiangolo/fastapi
17-
- **pgvector** (PostgreSQL License) - https://github.com/ankane/pgvector
21+
- **pydantic** (MIT) - https://github.com/pydantic/pydantic
22+
- **pydantic-settings** (MIT) - https://github.com/pydantic/pydantic-settings
23+
24+
### Scraper Service
25+
- **scrapy** (BSD-3-Clause) - https://github.com/scrapy/scrapy
26+
- **pandas** (BSD-3-Clause) - https://github.com/pandas-dev/pandas
27+
- **psycopg2-binary** (LGPL-3.0-or-later) - https://github.com/psycopg/psycopg2
28+
- **loguru** (MIT) - https://github.com/Delgan/loguru
29+
- **rapidfuzz** (MIT) - https://github.com/maxbachmann/RapidFuzz
30+
- **pydantic** (MIT) - https://github.com/pydantic/pydantic
31+
- **pydantic-settings** (MIT) - https://github.com/pydantic/pydantic-settings
1832

19-
[Add other runtime dependencies from your requirements.txt/pyproject.toml]
33+
### Retriever Service
34+
- **fastapi** (MIT) - https://github.com/tiangolo/fastapi
35+
- **uvicorn** (BSD-3-Clause) - https://github.com/encode/uvicorn
36+
- **sqlalchemy** (MIT) - https://github.com/sqlalchemy/sqlalchemy
37+
- **asyncpg** (Apache-2.0) - https://github.com/MagicStack/asyncpg
38+
- **pgvector** (PostgreSQL License) - https://github.com/pgvector/pgvector-python
39+
- **openai** (Apache-2.0) - https://github.com/openai/openai-python
40+
- **loguru** (MIT) - https://github.com/Delgan/loguru
41+
- **pydantic** (MIT) - https://github.com/pydantic/pydantic
42+
- **pydantic-settings** (MIT) - https://github.com/pydantic/pydantic-settings
2043

2144
---
2245

23-
All third-party software is used in compliance with their respective licenses.
24-
Full license texts are available in the linked repositories.
46+
## License Compatibility
47+
48+
All dependencies listed above are compatible with our Apache-2.0 license:
49+
50+
- **MIT, BSD-3-Clause, Apache-2.0, PostgreSQL License**: Fully compatible permissive licenses
51+
- **LGPL-3.0-or-later** (`psycopg2-binary`): Compatible when dynamically linked (as it is with Python packages)
52+
53+
## Notes
54+
55+
All third-party software is used in compliance with their respective licenses. Full license texts are available in the linked repositories.
56+
57+
**Dynamic Linking**: LGPL-3.0 licensed components are dynamically linked as Python packages, which means they do not impose copyleft requirements on the entire project.

0 commit comments

Comments
 (0)