✨ Glad to see you here! ✨
- Visit our FAQs
- Or talk to us directly in the Arkime Slack
First, checkout the main Arkime AWS AIO README for information on how to build and run Arkime. We do all development on MacBook Pros.
Documentation, READMEs, examples, and FAQs are important. Please help improve and add to them.
Before submitting a bug report:
- Ensure the bug was not already reported by searching for existing issues in Arkime AWS AIO
- If an issues is already open, make a comment that you are experiencing the same thing and provide any additional details
- Check the FAQs for a list of common questions and problems
Bugs are tracked as GitHub Issues. Please follow these guidelines when submitting a bug:
- Provide a clear and descriptive title
- Describe the exact steps to reproduce the problem
- Explain the expected behavior
Feature requests include new features and minor improvements to existing functionality.
Feature requests are tracked as GitHub Issues. Please follow these guidelines when submitting a feature request:
- Please use a fork to submit a pull request for your contribution.
- Provide a clear and descriptive title
- Describe the suggested feature in as much detail as possible
- Use examples to help us understand the use case of the feature
- If you are requesting a minor improvement, describe the current behavior and why it is not sufficient
- If possible, provide examples of where this feature exists elsewhere in other tools
We welcome all collaboration! If you can fix it or implement it, please do! 🔨 To implement something new, please create an issue first so we can discuss it together.
To better help us review your pull request, please follow these guidelines:
- Provide a clear and descriptive title
- Clearly describe the problem and solution
- Include the relevant issue number(s) if applicable
- Additionally, any substantive changes should include:
- A clear explanation of what automated and manual testing you performed
- The output from the CLI of the test commands you ran to confirm the change operated as expected
- Screenshots of the AWS Console/Arkime Dashboard/etc as appropriate to demonstrate the change operates as expected
- Run unit tests and lint as described below
- When creating a Pull Request please follow best practices for creating git commits.
- When your code is ready to be submitted, submit a Pull Request to begin the code review process.
Versioning:
We use a GitHub workflow to automatically tag merges to main
using semver rules. By default, it increments the minor version number. If you need to increment the major version or patch version, include #major or #patch somewhere in your merge commit's message.
We require that the ruff linter and unit tests pass before merging PRs.
To isolate the Python environment for the project from your local machine, create virtual environment like so:
python3 -m venv .venv
source .venv/bin/activate
(cd manage_arkime ; pip install -r requirements.txt)
You can exit the Python virtual environment and remove its resources like so:
deactivate
rm -rf .venv
Learn more about venv here.
The unit tests are executed by invoking Pytest:
python -m pytest test_manage_arkime/ --cov manage_arkime
You can read more about running unit tests with Pytest here.
The Python linter is executed by invoking Ruff:
ruff .
You can read more about Python linting with Ruff here.
The Typescript linter is executed by invoking [eslint]((https://eslint.org/):
npx eslint .