lannotex 0.1.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- lannotex-0.1.0/CHANGELOG.md +98 -0
- lannotex-0.1.0/LICENSE +21 -0
- lannotex-0.1.0/LICENSES/GPL-3.0-only.txt +674 -0
- lannotex-0.1.0/LICENSES/LGPL-3.0-only.txt +165 -0
- lannotex-0.1.0/LICENSES/Qt-GPL-exception-1.0.txt +22 -0
- lannotex-0.1.0/LICENSES/THIRD_PARTY_NOTICES.md +11 -0
- lannotex-0.1.0/Lannotex.spec +44 -0
- lannotex-0.1.0/MANIFEST.in +9 -0
- lannotex-0.1.0/PKG-INFO +204 -0
- lannotex-0.1.0/README.md +162 -0
- lannotex-0.1.0/docs/MICROSOFT_STORE.md +16 -0
- lannotex-0.1.0/docs/PERFORMANCE.md +36 -0
- lannotex-0.1.0/docs/ROADMAP.md +42 -0
- lannotex-0.1.0/docs/TEAM.md +69 -0
- lannotex-0.1.0/docs/VERIFICATION.md +44 -0
- lannotex-0.1.0/docs/cli.md +97 -0
- lannotex-0.1.0/docs/getting-started/installation.md +95 -0
- lannotex-0.1.0/docs/getting-started/quickstart.md +60 -0
- lannotex-0.1.0/docs/guide/annotating.md +65 -0
- lannotex-0.1.0/docs/guide/import-export.md +69 -0
- lannotex-0.1.0/docs/guide/projects.md +52 -0
- lannotex-0.1.0/docs/index.md +72 -0
- lannotex-0.1.0/docs/migrate-from-labelme.md +62 -0
- lannotex-0.1.0/pyproject.toml +81 -0
- lannotex-0.1.0/requirements-windows-build.txt +13 -0
- lannotex-0.1.0/run_lannotex.py +4 -0
- lannotex-0.1.0/scripts/benchmark.py +70 -0
- lannotex-0.1.0/scripts/build_linux.sh +8 -0
- lannotex-0.1.0/scripts/build_macos.sh +8 -0
- lannotex-0.1.0/scripts/build_windows.ps1 +21 -0
- lannotex-0.1.0/scripts/collect_notices.py +25 -0
- lannotex-0.1.0/scripts/verify_executable.py +27 -0
- lannotex-0.1.0/setup.cfg +4 -0
- lannotex-0.1.0/src/lannotex/__init__.py +2 -0
- lannotex-0.1.0/src/lannotex/__main__.py +4 -0
- lannotex-0.1.0/src/lannotex/app.py +924 -0
- lannotex-0.1.0/src/lannotex/canvas.py +289 -0
- lannotex-0.1.0/src/lannotex/cli.py +97 -0
- lannotex-0.1.0/src/lannotex/domain.py +119 -0
- lannotex-0.1.0/src/lannotex/exporters.py +212 -0
- lannotex-0.1.0/src/lannotex/home.py +130 -0
- lannotex-0.1.0/src/lannotex/models.py +51 -0
- lannotex-0.1.0/src/lannotex/py.typed +0 -0
- lannotex-0.1.0/src/lannotex/storage.py +241 -0
- lannotex-0.1.0/src/lannotex/team.py +248 -0
- lannotex-0.1.0/src/lannotex/theme.py +58 -0
- lannotex-0.1.0/src/lannotex/workers.py +124 -0
- lannotex-0.1.0/src/lannotex.egg-info/PKG-INFO +204 -0
- lannotex-0.1.0/src/lannotex.egg-info/SOURCES.txt +58 -0
- lannotex-0.1.0/src/lannotex.egg-info/dependency_links.txt +1 -0
- lannotex-0.1.0/src/lannotex.egg-info/entry_points.txt +3 -0
- lannotex-0.1.0/src/lannotex.egg-info/requires.txt +9 -0
- lannotex-0.1.0/src/lannotex.egg-info/top_level.txt +1 -0
- lannotex-0.1.0/tests/test_cli.py +46 -0
- lannotex-0.1.0/tests/test_domain.py +43 -0
- lannotex-0.1.0/tests/test_exporters.py +63 -0
- lannotex-0.1.0/tests/test_storage.py +69 -0
- lannotex-0.1.0/tests/test_team.py +94 -0
- lannotex-0.1.0/tests/test_ui.py +148 -0
- lannotex-0.1.0/tests/test_workflows.py +55 -0
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
All notable changes to this project are documented here. The format is based on
|
|
4
|
+
[Keep a Changelog](https://keepachangelog.com/en/1.1.0/) and this project
|
|
5
|
+
adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
6
|
+
|
|
7
|
+
## [Unreleased]
|
|
8
|
+
|
|
9
|
+
## [0.1.0] — 2026-10-14
|
|
10
|
+
|
|
11
|
+
First public release on PyPI: `pip install lannotex` or `uv tool install lannotex`.
|
|
12
|
+
Standalone builds for Windows, macOS, and Linux are attached to the GitHub release.
|
|
13
|
+
|
|
14
|
+
### Added
|
|
15
|
+
|
|
16
|
+
- Documentation site (MkDocs Material) with install, quick start, user guide, CLI
|
|
17
|
+
reference, and a LabelMe migration guide; deployed to GitHub Pages.
|
|
18
|
+
- Issue forms, pull request template, Dependabot, and `CITATION.cff`.
|
|
19
|
+
|
|
20
|
+
### Fixed
|
|
21
|
+
|
|
22
|
+
- `pip install` / `uv tool install` failed on Python 3.14: runtime dependencies are now
|
|
23
|
+
ranges (`PySide6-Essentials>=6.8.3,<7`, `Pillow>=11.1`) instead of exact pins. The
|
|
24
|
+
smaller `PySide6-Essentials` replaces the full `PySide6` bundle.
|
|
25
|
+
- Buttons and menus showed "Save next" and "Keyboard preferences": `&` is now escaped.
|
|
26
|
+
- Test runs added temporary folders to the real recent-projects list. Settings are now
|
|
27
|
+
stored in an INI file, so tests can isolate them. Earlier preferences are not migrated.
|
|
28
|
+
- Fonts follow the operating system instead of a hard-coded Segoe UI.
|
|
29
|
+
- The class list no longer clips rows on newer Qt versions.
|
|
30
|
+
- Version strings in exports, the team server, and window titles come from one place.
|
|
31
|
+
|
|
32
|
+
### Changed
|
|
33
|
+
|
|
34
|
+
- CI tests Python 3.11–3.14 and checks a `uv tool install` on every OS.
|
|
35
|
+
|
|
36
|
+
## [0.0.2] — 2026-10-14
|
|
37
|
+
|
|
38
|
+
### Desktop workflow refresh (local working tree)
|
|
39
|
+
|
|
40
|
+
- Home screen with Create, Continue, recent projects, and explicit pipeline presets.
|
|
41
|
+
- Monochrome white/black themes; classification, detection and segmentation expose only relevant controls.
|
|
42
|
+
- Optional simultaneous team collaboration: host service, reviewer access tokens, revocation, local outbox, incremental sync, conflict resolution, and saved annotation history.
|
|
43
|
+
- Forward migrations for revision and reviewer data; stale saves cannot silently replace newer work.
|
|
44
|
+
- Native Qt interaction and two-client integration tests, including failed writes, PNG imports, all export formats, and native round trips.
|
|
45
|
+
- Fixed PNG validation after EXIF inspection, trigger-inflated import counts, and backup relocation of relative image references.
|
|
46
|
+
- Added reproducible image-import, decode, metadata-cache and memory benchmark.
|
|
47
|
+
|
|
48
|
+
### Added
|
|
49
|
+
|
|
50
|
+
- Project renamed **LabelReview → Lannotex** across the codebase, packaging,
|
|
51
|
+
exports, and documentation (`lannotex` PyPI package, `lannotex` console
|
|
52
|
+
script, `Lannotex.spec`, `src/lannotex/`).
|
|
53
|
+
- Real command-line interface (`lannotex` / `python -m lannotex`):
|
|
54
|
+
- `lannotex` — launch the desktop app (default)
|
|
55
|
+
- `lannotex gui --smoke-test` — bounded Qt event-loop smoke test
|
|
56
|
+
- `lannotex export <project> <dest> [--format ...]` — headless export
|
|
57
|
+
- `lannotex analyze <project>` — headless validation report as JSON
|
|
58
|
+
- `lannotex new <folder>` — create an empty project
|
|
59
|
+
- Cross-platform distribution story:
|
|
60
|
+
- `scripts/build_macos.sh` and `scripts/build_linux.sh` alongside the Windows
|
|
61
|
+
PowerShell build.
|
|
62
|
+
- GitHub Actions CI (`ci.yml`) running tests on Windows/macOS/Linux ×
|
|
63
|
+
Python 3.11/3.12.
|
|
64
|
+
- GitHub Actions release workflow building and attaching PyInstaller
|
|
65
|
+
artifacts for all three operating systems on tags.
|
|
66
|
+
- PyPI publishing metadata: classifiers, keywords, license file, project URLs,
|
|
67
|
+
and a `MANIFEST.in` for complete sdists.
|
|
68
|
+
- Ruff linting (pyflakes + syntax errors) wired into `pyproject.toml` and CI.
|
|
69
|
+
- Community files: `CONTRIBUTING.md`, `CODE_OF_CONDUCT.md`, `SECURITY.md`, and
|
|
70
|
+
`docs/ROADMAP.md`.
|
|
71
|
+
|
|
72
|
+
### Changed
|
|
73
|
+
|
|
74
|
+
- Export metadata renamed from `labelreview`/`labelreview_id` to
|
|
75
|
+
`lannotex`/`lannotex_id`; import still accepts the legacy `labelreview`
|
|
76
|
+
keys so old Labelme files keep working.
|
|
77
|
+
- Window/brand strings, QSettings organization, and the smoke-test
|
|
78
|
+
environment variable now use `Lannotex`/`LANNOTEX_SMOKE_RESULT`.
|
|
79
|
+
- Expanded test coverage (see `tests/`) for domain, storage, exporters, and CLI.
|
|
80
|
+
|
|
81
|
+
### Fixed
|
|
82
|
+
|
|
83
|
+
- `LICENSE` now contains the MIT text that `pyproject.toml` and the README
|
|
84
|
+
declare (the file previously held the Boost Software License 1.0).
|
|
85
|
+
- Repository URLs, badges, and clone instructions now point at the real
|
|
86
|
+
`Lourdhu02/Lannotex` remote instead of a non-existent `Lannotex/Lannotex`.
|
|
87
|
+
- Removed the broken `docs/screenshot.png` reference from the README.
|
|
88
|
+
- Security and conduct reports now use GitHub channels instead of the
|
|
89
|
+
placeholder `@lannotex.dev` addresses.
|
|
90
|
+
- The release workflow only publishes to PyPI on a manual dispatch with
|
|
91
|
+
`publish` enabled; tag pushes build and attach binaries only.
|
|
92
|
+
|
|
93
|
+
## [0.0.1] — 2026-10-14
|
|
94
|
+
|
|
95
|
+
- Initial offline PySide6 desktop application.
|
|
96
|
+
- SQLite project persistence with an explicit migration table and transactional annotation saves.
|
|
97
|
+
- Folder import for JPEG, PNG, and WebP; normalized box and polygon annotations.
|
|
98
|
+
- Labelme, YOLO and COCO conversion primitives plus geometry/persistence tests.
|
lannotex-0.1.0/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Lourdhu Raju
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|