macro_traffic_sim 0.1.2

gRPC interface for macroscopic traffic simulation via 4-step demand model
Documentation
## Bump version

Update version in the following files (replace `0.1.2` with the new version):

1. **Rust crate:** `Cargo.toml` -> `version = "0.1.2"`
2. **Python client:** `clients/python/pyproject.toml` -> `version = "0.1.2"`
3. **Go client:** versioned via git tag (see [Git tags]#git-tags--golang-client-tag-for-pkggodev section below)

## Regenerate clients (if proto files changed)
```bash
# Python
./scripts/gen_python.sh

# Go
./scripts/gen_go.sh
```

## Run tests
```bash
cargo test --features server
```


## Build release binaries
```bash
./scripts/build_release.sh
```

## Publish to crates.io
```bash
cargo publish
```

## Publish python client to PyPI
```bash
cd clients/python

# Activate venv
source .venv/bin/activate

# Install build tools
pip install build twine

# Build package
python -m build

# Upload to PyPI
twine upload dist/*

cd ../..
```

## Build and push Docker images
```bash
# Build
docker build -f Dockerfile.server -t macro-traffic-sim/server:latest .

# Tag for Docker Hub
docker tag macro-traffic-sim/server:latest dimahkiin/macro-traffic-sim-server:0.1.2
docker tag macro-traffic-sim/server:latest dimahkiin/macro-traffic-sim-server:latest

# Tag for GitHub Container Registry
docker tag macro-traffic-sim/server:latest ghcr.io/lddl/macro-traffic-sim-server:0.1.2
docker tag macro-traffic-sim/server:latest ghcr.io/lddl/macro-traffic-sim-server:latest

# Push to Docker Hub
docker push dimahkiin/macro-traffic-sim-server:0.1.2
docker push dimahkiin/macro-traffic-sim-server:latest

# Push to GitHub Container Registry
docker push ghcr.io/lddl/macro-traffic-sim-server:0.1.2
docker push ghcr.io/lddl/macro-traffic-sim-server:latest
```

## Git tags (+ golang client tag for pkg.go.dev)
```bash
# Main repo tag
git tag v0.1.2
git push origin v0.1.2

# Go submodule tag (for pkg.go.dev)
git tag clients/go/v0.1.2
git push origin clients/go/v0.1.2
```

## Verify releases

- **crates.io:** https://crates.io/crates/macro_traffic_sim
- **PyPI:** https://pypi.org/project/macro-traffic-sim/
- **pkg.go.dev:** https://pkg.go.dev/github.com/LdDl/macro_traffic_sim_grpc/clients/go
- **Docker Hub:** https://hub.docker.com/r/dimahkiin/macro-traffic-sim-server/tags
- **GitHub Releases:** https://github.com/LdDl/macro_traffic_sim_grpc/releases