Metadata-Version: 2.1
Name: arcticfreeze
Version: 0.1.1
Summary: Enjoy Python on the rocks with deeply (recursively) frozen data structures.
Author-email: KerstenBreuer <kersten-breuer@outlook.com>
License: Apache 2.0
Project-URL: Repository, https://github.com/kerstenbreuer/arcticfreeze
Classifier: Development Status :: 1 - Planning
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Topic :: Software Development :: Libraries
Classifier: Intended Audience :: Developers
Requires-Python: >=3.9
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: immutabledict <5,>=4
Provides-Extra: pydantic
Requires-Dist: pydantic <3,>=2 ; extra == 'pydantic'

[![tests](https://github.com/kerstenbreuer/arcticfreeze/actions/workflows/tests.yaml/badge.svg)](https://github.com/kerstenbreuer/arcticfreeze/actions/workflows/tests.yaml)

# articfreeze

Enjoy Python on the rocks with deeply (recursively) frozen data structures.

## Description

<!-- Please provide a short overview of the features of this service. -->

Coming soon.

## Development

For setting up the development environment, we rely on the
[devcontainer feature](https://code.visualstudio.com/docs/remote/containers) of VS Code
in combination with Docker Compose.

To use it, you have to have Docker Compose as well as VS Code with its "Remote - Containers"
extension (`ms-vscode-remote.remote-containers`) installed.
Then open this repository in VS Code and run the command
`Remote-Containers: Reopen in Container` from the VS Code "Command Palette".

This will give you a full-fledged, pre-configured development environment including:
- infrastructural dependencies of the service (databases, etc.)
- all relevant VS Code extensions pre-installed
- pre-configured linting and auto-formatting
- a pre-configured debugger
- automatic license-header insertion

Moreover, inside the devcontainer, a convenience commands `dev_install` is available.
It installs the service with all development dependencies, installs pre-commit.

The installation is performed automatically when you build the devcontainer. However,
if you update dependencies in the [`./pyproject.toml`](./pyproject.toml) or the
[`./requirements-dev.txt`](./requirements-dev.txt), please run it again.

## License

This repository is free to use and modify according to the
[Apache 2.0 License](./LICENSE).
