Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .github/workflows/pages.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/configure-pages@v4
- name: Upload artifact
uses: actions/upload-pages-artifact@v3
with:
Expand Down
33 changes: 29 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,10 +5,11 @@ Targets **minimal, unique** puzzles (17-clue hunt capable).

> © 2025 Stamatis-Christos Saridakis — MIT. Core algorithm: exact cover (Knuth). This implementation is original and bitset-based.

[![CI](https://github.com/#SaridakisStamatisChristos/sudoku-dlx-bitset/actions/workflows/ci.yml/badge.svg)](https://github.com/<your-username>/sudoku-dlx/actions/workflows/ci.yml)
[![codecov](https://codecov.io/gh/SaridakisStamatisChristos/sudoku-dlx-bitset/branch/main/graph/badge.svg)](https://codecov.io/gh/<your-username>/sudoku_dlx)
[![PyPI version](https://img.shields.io/pypi/v/sudoku_dlx-bitset.svg)](https://pypi.org/project/sudoku_dlx/)
[![pages](https://img.shields.io/badge/GitHubPages-demo-blue)](https://sudoku_dlx.github.io/sudoku-dlx)
[![CI](https://github.com/SaridakisStamatisChristos/sudoku_dlx/actions/workflows/ci.yml/badge.svg?branch=main)](https://github.com/SaridakisStamatisChristos/sudoku_dlx/actions/workflows/ci.yml)
[![Codecov](https://codecov.io/gh/SaridakisStamatisChristos/sudoku_dlx/branch/main/graph/badge.svg)](https://codecov.io/gh/SaridakisStamatisChristos/sudoku_dlx)
[![License: MIT](https://img.shields.io/github/license/SaridakisStamatisChristos/sudoku_dlx.svg)](LICENSE)
[![PyPI version](https://img.shields.io/pypi/v/sudoku-dlx-bitset.svg)](https://pypi.org/project/sudoku-dlx-bitset/)
[![GitHub Pages](https://img.shields.io/badge/GitHub%20Pages-demo-blue)](https://SaridakisStamatisChristos.github.io/sudoku_dlx/)

## Features
- Bitset DLX (no pointer structs), precomputed 729×324 exact-cover matrix
Expand Down Expand Up @@ -78,3 +79,27 @@ print(hardness_estimate(g)) # e.g., 3.8
## License

MIT — see LICENSE.

## Publish to PyPI

This repository is already structured as a Python package (`src` layout, metadata in `pyproject.toml`).
To publish a new version on [PyPI](https://pypi.org/project/sudoku-dlx-bitset/):

1. Update `pyproject.toml` with the new `version` and adjust the changelog/release notes.
2. Make sure the build backend is installed, then build the distribution artifacts:

```bash
python -m pip install --upgrade build twine
python -m build # creates dist/*.tar.gz and dist/*.whl
```

3. Upload the artifacts with [Twine](https://twine.readthedocs.io/):

```bash
python -m twine upload dist/*
```

4. Tag the release in Git and push the tag so GitHub releases stay in sync.

The CI workflow already runs tests against multiple Python versions and uploads coverage
reports to Codecov; the `pages` workflow deploys the static demo from the `web/` directory.
Loading