@@ -205,25 +205,37 @@ This will create a virtual environment with all required dependencies.
...
@@ -205,25 +205,37 @@ This will create a virtual environment with all required dependencies.
## Development Environment
## Development Environment
### Activate the Development Environment
By defining two separate environments, we ensure that development dependencies (such as testing tools, linters, or other utilities) don't interfere with your production environment. The default environment is the bare minimum required to run the application, while the dev environment includes everything need for development.
- default environment: Includes the core dependencies your app needs to run (e.g., requests, etc.).
- dev environment: Includes additional tools for testing, code formatting, linting, and other development workflows (e.g., pytest, black, mypy, etc.).
### Activate Default Environment
To enter the development environment, use:
To enter the development environment, use:
```sh
```sh
hatch shell
hatch shell
```
```
### Activate the Development Environment
To enter the development environment, use:
```sh
hatch shell dev
```
### Code Formatting
### Code Formatting
The project uses `black` for code formatting. Ensure your code is properly formatted before committing:
The project uses `black` for code formatting. Ensure your code is properly formatted before committing:
```sh
```sh
black acmc
hatch run black --check acmc
```
```
### Type Checking
### Type Checking
The project uses `mypy` for type checking:
The project uses `mypy` for type checking:
```sh
```sh
mypy acmc
hatch run mypy -pacmc
```
```
### Running Tests
### Running Tests
...
@@ -248,33 +260,29 @@ acmc --help
...
@@ -248,33 +260,29 @@ acmc --help
```
```
## Contributing
## Contributing
If you make changes, ensure all tests pass and code formatting is correct before submitting a merge request.
1. Create a new branch for your feature or bugfix:
### GitLab Basic Workflow
1. Create an new issue in the [Issue Tracker](https://git.soton.ac.uk/meldb/concepts-processing/-/issues)
2. Create a new branch for your feature or bugfix: