You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
docs: add Development category with testing, limitations, building, and contributing guides
Add four new documentation pages under the Development category:
- Testing: test infrastructure, categories, CI/CD pipeline, how to write tests
- Known Limitations: consolidated limitations from all feature docs
- Building from Source: prerequisites, feature flags, WASM, cross-compilation
- Contributing: development rules, coding standards, PR workflow
Update CONTRIBUTING.md with accurate tooling (cargo nextest, clippy flags).
Clean up .gitignore entries.
Thank you for your interest in contributing to Stoolap! This document provides guidelines and information about the contribution process.
3
+
Thank you for your interest in contributing to Stoolap! For the full contributing guide, see our [documentation](https://stoolap.github.io/stoolap/docs/development/contributing/).
4
4
5
-
## Code of Conduct
5
+
## Quick Start
6
6
7
-
By participating in this project, you agree to uphold our Code of Conduct (to be added).
Stoolap is licensed under the [Apache License, Version 2.0](LICENSE). By contributing to Stoolap, you agree that your contributions will be licensed under the same license.
21
+
# Format
22
+
cargo fmt
23
+
```
12
24
13
-
### What this means for contributors
25
+
##Development Rules
14
26
15
-
1.**Contribution Licensing**: All contributions you submit will be under the Apache License 2.0. If you submit code that is not your original work, please identify its source and confirm it's compatible with the Apache License 2.0.
27
+
-**No TODOs**: Never write `// TODO`, `unimplemented!()`, or `todo!()`
28
+
-**Performance first**: Minimize allocations, avoid unnecessary `.clone()` and `.format()`
29
+
-**Test everything**: `cargo nextest run` must pass before submitting
2.**Contributor License Agreement (CLA)**: We currently do not require a formal CLA, but by submitting a contribution, you are agreeing that your work will be licensed under the project's Apache License 2.0.
33
+
## Testing
18
34
19
-
3.**Patent Rights**: The Apache License 2.0 includes an express grant of patent rights from contributors to users. Be aware of this when contributing patented intellectual property.
35
+
```bash
36
+
# Run all tests (debug mode, never use --release)
37
+
cargo nextest run
20
38
21
-
4.**Attribution Requirements**: You must retain all copyright, patent, trademark, and attribution notices from the source form of the work in any derivative works you distribute.
39
+
# Run a specific test file (faster, compiles only that target)
40
+
cargo nextest run --test my_feature_test
41
+
```
42
+
43
+
**Important**: Use `cargo nextest run --test <name>` instead of keyword filtering. The `--test` flag compiles only the specified test binary, which is significantly faster.
44
+
45
+
## Pull Request Process
46
+
47
+
1. Ensure all tests pass
48
+
2. Ensure clippy passes with zero warnings
49
+
3. Ensure code is formatted (`cargo fmt`)
50
+
4. Write clear commit messages
51
+
5. Open a pull request against `main`
52
+
53
+
## License
54
+
55
+
Stoolap is licensed under the [Apache License, Version 2.0](LICENSE). By contributing, you agree that your contributions will be licensed under the same license.
22
56
23
57
### License Headers
24
58
25
-
All source files in the project should include a license header:
59
+
All `.rs`source files must include the Apache 2.0 header:
26
60
27
61
```rust
28
62
// Copyright 2025 Stoolap Contributors
@@ -39,123 +73,3 @@ All source files in the project should include a license header:
39
73
// See the License for the specific language governing permissions and
40
74
// limitations under the License.
41
75
```
42
-
43
-
When creating new files, please include this header.
0 commit comments