* fix: Fix installation conflict between onnxruntime and onnxruntime-gpu
* fix: Fix CI, notebooks, type hints, and packaging issues found in audit
* feat: Add new release config
* ci: Automate release pipeline and document release process
* docs: Update docs and examples
* chore: Update tools folder testing for development
* feat: Update indexing to stores and drawing logic
* chore: Update the release version to 3.3.0
* feat: Add python 3.10 support
* build: Add python support for worklows and publishing
* chore: Update all example notebooks
* docs: Update documentation
* fix: Update several missing docs and tests
* docs: Clean up and remove redundants
* fix: Fix the gaze output formula and change the output order
* chore: Update model weights for gaze estimation
* release: Update release version to v3.0.0
* feat: Add XSeg for Face Segmentation DeepFaceLab
* docs: Update model inference related reference
* chore: Update jupyter notebook example for face segmentation
* chore: Rename scripts to tools folder and unify argument parser
* refactor: Centralize dataclasses in types.py and add __call__ to all models
- Move Face and result dataclasses to uniface/types.py
- Add GazeResult, SpoofingResult, EmotionResult (frozen=True)
- Add __call__ to BaseDetector, BaseRecognizer, BaseLandmarker
- Add __repr__ to all dataclasses
- Replace print() with Logger in onnx_utils.py
- Update tools and docs to use new dataclass return types
- Add test_types.py with comprehensive dataclass testschore: Rename files under tools folder and unitify argument parser for them
* refactor: Standardize naming conventions
* chore: Update the version and re-run experiments
* chore: Improve code quality tooling and documentation
- Add pre-commit job to CI workflow for automated linting on PRs
- Update uniface/__init__.py with copyright header, module docstring,
and logically grouped exports
- Revise CONTRIBUTING.md to reflect pre-commit handles all formatting
- Remove redundant ruff check from CI (now handled by pre-commit)
- Update build job Python version to 3.11 (matches requires-python)
* Add BiSeNet face parsing implementation
* Add parsing model weights configuration
* Export BiSeNet in main package
* Add face parsing tests
* Add face parsing examples and script
* Bump version to 1.5.0
* Update documentation for face parsing
* Fix face parsing notebook to use lips instead of mouth
* chore: Update the face parsing example
* fix: Fix model argument to use Enum
* ref: Move vis_parsing_map function into visualization.py
* docs: Update README.md
* ref: Remove type conversion and update face class
* fix: change the type to float32
* chore: Update all examples, testing with latest version
* docs: Update docs reflecting the recent changes
* chore: Style changes and create jupyter notebook template
* docs: Update docstring for detection
* feat: Keyword only for common parameters: model_name, conf_thresh, nms_thresh, input_size
* chore: Update drawing and let the conf text optional for drawing
* feat: add fancy bbox draw
* docs: Add examples of using UniFace
* feat: Add version to all examples
* feat: Update linting and type annotations, return types in detect
* feat: add face analyzer and face classes
* chore: Update the format and clean up some docstrings
* docs: Update usage documentation
* feat: Change AgeGender model output to 0, 1 instead of string (Female, Male)
* test: Update testing code
* feat: Add Apple silicon backend for torchscript inference
* feat: Add face analyzer example and add run emotion for testing