schenesort 2.4.0__tar.gz → 2.4.1__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.
Files changed (41) hide show
  1. {schenesort-2.4.0 → schenesort-2.4.1}/PKG-INFO +8 -6
  2. {schenesort-2.4.0 → schenesort-2.4.1}/README.md +7 -5
  3. {schenesort-2.4.0 → schenesort-2.4.1}/pyproject.toml +2 -2
  4. {schenesort-2.4.0 → schenesort-2.4.1}/src/schenesort/cli.py +7 -7
  5. {schenesort-2.4.0 → schenesort-2.4.1}/uv.lock +1 -1
  6. {schenesort-2.4.0 → schenesort-2.4.1}/.envrc +0 -0
  7. {schenesort-2.4.0 → schenesort-2.4.1}/.github/workflows/ci.yml +0 -0
  8. {schenesort-2.4.0 → schenesort-2.4.1}/.github/workflows/publish.yml +0 -0
  9. {schenesort-2.4.0 → schenesort-2.4.1}/.gitignore +0 -0
  10. {schenesort-2.4.0 → schenesort-2.4.1}/.pre-commit-config.yaml +0 -0
  11. {schenesort-2.4.0 → schenesort-2.4.1}/.python-version +0 -0
  12. {schenesort-2.4.0 → schenesort-2.4.1}/CLAUDE.md +0 -0
  13. {schenesort-2.4.0 → schenesort-2.4.1}/LICENSE +0 -0
  14. {schenesort-2.4.0 → schenesort-2.4.1}/docs/browse-autumn.png +0 -0
  15. {schenesort-2.4.0 → schenesort-2.4.1}/docs/browse-destruction.png +0 -0
  16. {schenesort-2.4.0 → schenesort-2.4.1}/docs/browse-greek.png +0 -0
  17. {schenesort-2.4.0 → schenesort-2.4.1}/docs/browse-stallman.png +0 -0
  18. {schenesort-2.4.0 → schenesort-2.4.1}/docs/collage.png +0 -0
  19. {schenesort-2.4.0 → schenesort-2.4.1}/docs/gallery.png +0 -0
  20. {schenesort-2.4.0 → schenesort-2.4.1}/docs/landscape.png +0 -0
  21. {schenesort-2.4.0 → schenesort-2.4.1}/justfile +0 -0
  22. {schenesort-2.4.0 → schenesort-2.4.1}/ollama-setup.md +0 -0
  23. {schenesort-2.4.0 → schenesort-2.4.1}/schenesort.yazi/README.md +0 -0
  24. {schenesort-2.4.0 → schenesort-2.4.1}/schenesort.yazi/main.lua +0 -0
  25. {schenesort-2.4.0 → schenesort-2.4.1}/schenesort.yazi/schenesort.config +0 -0
  26. {schenesort-2.4.0 → schenesort-2.4.1}/src/schenesort/__init__.py +0 -0
  27. {schenesort-2.4.0 → schenesort-2.4.1}/src/schenesort/config.py +0 -0
  28. {schenesort-2.4.0 → schenesort-2.4.1}/src/schenesort/db.py +0 -0
  29. {schenesort-2.4.0 → schenesort-2.4.1}/src/schenesort/thumbnails.py +0 -0
  30. {schenesort-2.4.0 → schenesort-2.4.1}/src/schenesort/tui/__init__.py +0 -0
  31. {schenesort-2.4.0 → schenesort-2.4.1}/src/schenesort/tui/app.py +0 -0
  32. {schenesort-2.4.0 → schenesort-2.4.1}/src/schenesort/tui/grid_app.py +0 -0
  33. {schenesort-2.4.0 → schenesort-2.4.1}/src/schenesort/tui/widgets/__init__.py +0 -0
  34. {schenesort-2.4.0 → schenesort-2.4.1}/src/schenesort/tui/widgets/filter_panel.py +0 -0
  35. {schenesort-2.4.0 → schenesort-2.4.1}/src/schenesort/tui/widgets/image_preview.py +0 -0
  36. {schenesort-2.4.0 → schenesort-2.4.1}/src/schenesort/tui/widgets/metadata_panel.py +0 -0
  37. {schenesort-2.4.0 → schenesort-2.4.1}/src/schenesort/tui/widgets/thumbnail_grid.py +0 -0
  38. {schenesort-2.4.0 → schenesort-2.4.1}/src/schenesort/xmp.py +0 -0
  39. {schenesort-2.4.0 → schenesort-2.4.1}/tests/__init__.py +0 -0
  40. {schenesort-2.4.0 → schenesort-2.4.1}/tests/test_cli.py +0 -0
  41. {schenesort-2.4.0 → schenesort-2.4.1}/tests/test_sanitise.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: schenesort
3
- Version: 2.4.0
3
+ Version: 2.4.1
4
4
  Summary: Wallpaper collection management CLI tool
5
5
  License-File: LICENSE
6
6
  Requires-Python: >=3.13
@@ -12,7 +12,7 @@ Requires-Dist: textual>=0.95.0
12
12
  Requires-Dist: typer>=0.21.1
13
13
  Description-Content-Type: text/markdown
14
14
 
15
- # Schenesort v2.4.0
15
+ # Schenesort v2.4.1
16
16
 
17
17
  ![Collage example](docs/collage.png)
18
18
 
@@ -124,6 +124,8 @@ The TUI uses textual-image for rendering, which auto-detects terminal graphics s
124
124
 
125
125
  ## Gallery Browser
126
126
 
127
+ ![Gallery example](docs/gallery.png)
128
+
127
129
  Browse your indexed collection with a thumbnail grid and filter panel:
128
130
 
129
131
  ```bash
@@ -219,10 +221,10 @@ The database is stored at `$XDG_DATA_HOME/schenesort/index.db` (default: `~/.loc
219
221
 
220
222
  ## Collage Generation
221
223
 
222
- Create a collage grid (up to 4x4) from wallpapers matching query criteria:
224
+ Create a collage grid from wallpapers matching query criteria:
223
225
 
224
226
  ```bash
225
- # Create a 2x2 collage (default)
227
+ # Create a 6x6 collage (default)
226
228
  schenesort collage output.png --mood peaceful
227
229
 
228
230
  # Create a 4x4 collage of landscape images
@@ -241,8 +243,8 @@ schenesort collage night_cities.png --time night --subject urban --cols 3 --rows
241
243
 
242
244
  | Option | Description | Default |
243
245
  |-----------------|--------------------------------------|---------|
244
- | `--cols` | Number of columns (1-4) | 2 |
245
- | `--rows` | Number of rows (1-4) | 2 |
246
+ | `--cols` | Number of columns | 6 |
247
+ | `--rows` | Number of rows | 6 |
246
248
  | `--tile-width` | Width of each tile in pixels | 480 |
247
249
  | `--tile-height` | Height of each tile in pixels | 270 |
248
250
  | `--random` | Select images randomly | True |
@@ -1,4 +1,4 @@
1
- # Schenesort v2.4.0
1
+ # Schenesort v2.4.1
2
2
 
3
3
  ![Collage example](docs/collage.png)
4
4
 
@@ -110,6 +110,8 @@ The TUI uses textual-image for rendering, which auto-detects terminal graphics s
110
110
 
111
111
  ## Gallery Browser
112
112
 
113
+ ![Gallery example](docs/gallery.png)
114
+
113
115
  Browse your indexed collection with a thumbnail grid and filter panel:
114
116
 
115
117
  ```bash
@@ -205,10 +207,10 @@ The database is stored at `$XDG_DATA_HOME/schenesort/index.db` (default: `~/.loc
205
207
 
206
208
  ## Collage Generation
207
209
 
208
- Create a collage grid (up to 4x4) from wallpapers matching query criteria:
210
+ Create a collage grid from wallpapers matching query criteria:
209
211
 
210
212
  ```bash
211
- # Create a 2x2 collage (default)
213
+ # Create a 6x6 collage (default)
212
214
  schenesort collage output.png --mood peaceful
213
215
 
214
216
  # Create a 4x4 collage of landscape images
@@ -227,8 +229,8 @@ schenesort collage night_cities.png --time night --subject urban --cols 3 --rows
227
229
 
228
230
  | Option | Description | Default |
229
231
  |-----------------|--------------------------------------|---------|
230
- | `--cols` | Number of columns (1-4) | 2 |
231
- | `--rows` | Number of rows (1-4) | 2 |
232
+ | `--cols` | Number of columns | 6 |
233
+ | `--rows` | Number of rows | 6 |
232
234
  | `--tile-width` | Width of each tile in pixels | 480 |
233
235
  | `--tile-height` | Height of each tile in pixels | 270 |
234
236
  | `--random` | Select images randomly | True |
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "schenesort"
3
- version = "2.4.0"
3
+ version = "2.4.1"
4
4
  description = "Wallpaper collection management CLI tool"
5
5
  readme = "README.md"
6
6
  requires-python = ">=3.13"
@@ -56,7 +56,7 @@ testpaths = ["tests"]
56
56
  pythonpath = ["src"]
57
57
 
58
58
  [tool.bumpversion]
59
- current_version = "2.4.0"
59
+ current_version = "2.4.1"
60
60
  commit = true
61
61
  tag = true
62
62
  tag_name = "v{new_version}"
@@ -1367,8 +1367,8 @@ def collage(
1367
1367
  search: Annotated[
1368
1368
  str | None, typer.Option("--search", "-q", help="Search description, scene, style, subject")
1369
1369
  ] = None,
1370
- cols: Annotated[int, typer.Option("--cols", help="Number of columns (1-4)")] = 2,
1371
- rows: Annotated[int, typer.Option("--rows", help="Number of rows (1-4)")] = 2,
1370
+ cols: Annotated[int, typer.Option("--cols", help="Number of columns")] = 6,
1371
+ rows: Annotated[int, typer.Option("--rows", help="Number of rows")] = 6,
1372
1372
  tile_width: Annotated[
1373
1373
  int, typer.Option("--tile-width", "-w", help="Width of each tile in pixels")
1374
1374
  ] = 480,
@@ -1377,17 +1377,17 @@ def collage(
1377
1377
  ] = 270,
1378
1378
  random: Annotated[bool, typer.Option("--random", "-R", help="Select images randomly")] = True,
1379
1379
  ) -> None:
1380
- """Create a collage of wallpapers matching the given criteria (max 4x4 grid)."""
1380
+ """Create a collage of wallpapers matching the given criteria."""
1381
1381
  from PIL import Image
1382
1382
 
1383
1383
  from schenesort.db import WallpaperDB
1384
1384
 
1385
1385
  # Validate grid size
1386
- if cols < 1 or cols > 4:
1387
- typer.echo("Error: --cols must be between 1 and 4.", err=True)
1386
+ if cols < 1:
1387
+ typer.echo("Error: --cols must be at least 1.", err=True)
1388
1388
  raise typer.Exit(1)
1389
- if rows < 1 or rows > 4:
1390
- typer.echo("Error: --rows must be between 1 and 4.", err=True)
1389
+ if rows < 1:
1390
+ typer.echo("Error: --rows must be at least 1.", err=True)
1391
1391
  raise typer.Exit(1)
1392
1392
 
1393
1393
  num_images = cols * rows
@@ -595,7 +595,7 @@ wheels = [
595
595
 
596
596
  [[package]]
597
597
  name = "schenesort"
598
- version = "2.3.0"
598
+ version = "2.4.0"
599
599
  source = { editable = "." }
600
600
  dependencies = [
601
601
  { name = "defusedxml" },
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes