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
-**Add or improve features** (new extraction steps, new dataset formats, performance improvements)
19
+
-**Improve tests** and CI robustness
20
+
21
+
No contribution is too small — typo fixes and clarifications in documentation are very welcome.
22
+
23
+
---
24
+
25
+
## 🐛 Reporting Issues
26
+
27
+
Before opening a new issue:
28
+
29
+
1.**Search existing issues** to see if your problem has already been reported or discussed.
30
+
2. If not, open a new issue and include:
31
+
- A clear and concise **description** of the problem
32
+
- Steps to **reproduce**
33
+
- What you **expected** to happen
34
+
- What actually **happened**
35
+
- Your environment (OS, Bazel version, Python version, ROS version(s))
36
+
37
+
If the issue is related to a specific dataset or bag, please mention:
38
+
- Which dataset/bag you used
39
+
- Whether it is publicly available or internal
40
+
41
+
---
42
+
43
+
## 🔧 Development Setup
44
+
45
+
1.**Clone the repository**
46
+
47
+
```bash
48
+
git clone https://github.com/UniBwTAS/bagzel.git
49
+
cd bagzel
50
+
```
51
+
52
+
2.**Fetch large files via Git LFS**
53
+
54
+
```bash
55
+
git lfs install
56
+
git lfs pull
57
+
```
58
+
59
+
3.**Install dependencies**
60
+
61
+
Runtime and development dependencies are managed via Bazel where possible.
62
+
If Python tooling is needed (e.g. linters or formatters), follow `docs/bazel` and/or project-specific documentation.
63
+
64
+
4.**Verify Bazel works**
65
+
66
+
Run a small build or test to check your setup:
67
+
68
+
```bash
69
+
bazel query //...
70
+
```
71
+
72
+
or
73
+
74
+
```bash
75
+
bazel test //...
76
+
```
77
+
78
+
4.**Verify that the licensing setup works**
79
+
80
+
Run a small test to validate your configuration:
81
+
82
+
```bash
83
+
reuse --root ./bagzel lint
84
+
```
85
+
86
+
---
87
+
88
+
## 🧹 Code Style and Quality
89
+
90
+
- Follow the existing **structure and style** in the files you modify.
91
+
- Prefer **small, focused changes** over large refactorings.
92
+
- For Python code:
93
+
- Keep functions small and well documented.
94
+
- Avoid introducing new dependencies unless necessary.
95
+
- For Starlark (Bazel) code:
96
+
- Use macros where it improves reuse and clarity.
97
+
- Keep public macros documented (parameters, expected usage, example).
98
+
99
+
If you introduce new public APIs (macros, rules, or Python entrypoints), please add short docstrings and, if possible, a small example in `docs/` or in a minimal Bazel target.
100
+
101
+
---
102
+
103
+
## 🔁 Git Workflow
104
+
105
+
1.**Create a branch**
106
+
107
+
```bash
108
+
git checkout -b feature/my-new-feature
109
+
```
110
+
111
+
2.**Make your changes** and commit them with clear messages, e.g.
112
+
113
+
```
114
+
Add nuScenes export macro for ROS 2 bags
115
+
```
116
+
117
+
or
118
+
119
+
```
120
+
Fix path handling in external_repository local_repo
121
+
```
122
+
123
+
3.**Rebase** on the latest `main` (or relevant base branch) before opening a PR.
124
+
125
+
4.**Open a Pull Request**
126
+
127
+
In your PR description, please include:
128
+
129
+
- What the change does
130
+
- Why it is needed / what problem it solves
131
+
- How it was tested (commands, environment)
132
+
- Any limitations or follow-up work
133
+
134
+
PRs that are easy to review — small, well explained, with tests — are merged much faster.
135
+
136
+
---
137
+
138
+
## 🙌 Code Review
139
+
140
+
All changes are reviewed before being merged.
141
+
142
+
- Be open to feedback and ready to adjust your changes.
143
+
- Reviewers may ask for additional tests, documentation, or refactoring.
144
+
- If a change is controversial or non-trivial, consider starting with an issue or a design discussion before implementing it.
145
+
146
+
---
147
+
148
+
## 🤝 Acknowledgements
149
+
150
+
By contributing to Bagzel, you help improve reproducible data workflows for robotics and autonomous systems.
0 commit comments