sigal 2.3__tar.gz → 2.5__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.
- sigal-2.5/.github/dependabot.yml +15 -0
- {sigal-2.3 → sigal-2.5}/.github/workflows/publish.yml +7 -7
- {sigal-2.3 → sigal-2.5}/.github/workflows/python-tests.yml +6 -5
- {sigal-2.3 → sigal-2.5}/.gitignore +2 -2
- sigal-2.5/.pre-commit-config.yaml +19 -0
- sigal-2.5/.readthedocs.yml +20 -0
- {sigal-2.3 → sigal-2.5}/AUTHORS +13 -2
- {sigal-2.3 → sigal-2.5}/LICENSE +1 -1
- {sigal-2.3 → sigal-2.5}/PKG-INFO +28 -18
- {sigal-2.3 → sigal-2.5}/README.rst +4 -5
- {sigal-2.3 → sigal-2.5}/docs/album_information.rst +2 -2
- {sigal-2.3 → sigal-2.5}/docs/changelog.py +13 -13
- {sigal-2.3 → sigal-2.5}/docs/changelog.rst +47 -0
- sigal-2.5/docs/conf.py +100 -0
- {sigal-2.3 → sigal-2.5}/docs/configuration.rst +1 -1
- {sigal-2.3 → sigal-2.5}/docs/faq.rst +0 -2
- {sigal-2.3 → sigal-2.5}/docs/getting_started.rst +16 -2
- {sigal-2.3 → sigal-2.5}/docs/installation.rst +3 -1
- {sigal-2.3 → sigal-2.5}/docs/license.rst +5 -2
- {sigal-2.3 → sigal-2.5}/docs/plugins.rst +4 -6
- {sigal-2.3 → sigal-2.5}/docs/themes.rst +1 -1
- sigal-2.5/pyproject.toml +93 -0
- sigal-2.5/setup.cfg +4 -0
- sigal-2.5/src/sigal/__init__.py +28 -0
- sigal-2.3/sigal/__init__.py → sigal-2.5/src/sigal/__main__.py +95 -94
- {sigal-2.3 → sigal-2.5/src}/sigal/gallery.py +188 -158
- {sigal-2.3 → sigal-2.5/src}/sigal/image.py +113 -115
- {sigal-2.3 → sigal-2.5/src}/sigal/log.py +11 -11
- {sigal-2.3 → sigal-2.5/src}/sigal/plugins/adjust.py +4 -4
- {sigal-2.3 → sigal-2.5/src}/sigal/plugins/compress_assets.py +26 -25
- {sigal-2.3 → sigal-2.5/src}/sigal/plugins/copyright.py +8 -8
- {sigal-2.3 → sigal-2.5/src}/sigal/plugins/encrypt/encrypt.py +7 -7
- {sigal-2.3 → sigal-2.5/src}/sigal/plugins/encrypt/endec.py +2 -2
- {sigal-2.3 → sigal-2.5/src}/sigal/plugins/extended_caching.py +26 -22
- {sigal-2.3 → sigal-2.5/src}/sigal/plugins/feeds.py +19 -21
- {sigal-2.3 → sigal-2.5/src}/sigal/plugins/media_page.py +1 -1
- {sigal-2.3 → sigal-2.5/src}/sigal/plugins/nomedia.py +1 -1
- sigal-2.5/src/sigal/plugins/nonmedia_files.py +160 -0
- sigal-2.5/src/sigal/plugins/titleregexp.py +98 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/plugins/watermark.py +13 -13
- {sigal-2.3 → sigal-2.5/src}/sigal/plugins/zip_gallery.py +17 -8
- {sigal-2.3 → sigal-2.5/src}/sigal/settings.py +92 -78
- sigal-2.5/src/sigal/signals.py +13 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/templates/sigal.conf.py +18 -14
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/default/templates/decrypt.html +1 -0
- sigal-2.5/src/sigal/themes/default/templates/description.html +29 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/default/templates/footer.html +3 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/galleria/templates/album_items.html +4 -23
- sigal-2.5/src/sigal/themes/photoswipe/static/photoswipe-dynamic-caption-plugin.esm.js +414 -0
- sigal-2.5/src/sigal/themes/photoswipe/static/photoswipe-dynamic-caption-plugin.esm.min.js +5 -0
- sigal-2.5/src/sigal/themes/photoswipe/static/photoswipe-fullscreen.esm.js +129 -0
- sigal-2.5/src/sigal/themes/photoswipe/static/photoswipe-fullscreen.esm.min.js +8 -0
- sigal-2.5/src/sigal/themes/photoswipe/static/photoswipe-lightbox.esm.js +1960 -0
- sigal-2.5/src/sigal/themes/photoswipe/static/photoswipe-lightbox.esm.js.map +1 -0
- sigal-2.5/src/sigal/themes/photoswipe/static/photoswipe-lightbox.esm.min.js +5 -0
- sigal-2.5/src/sigal/themes/photoswipe/static/photoswipe-video-plugin.esm.js +257 -0
- sigal-2.5/src/sigal/themes/photoswipe/static/photoswipe-video-plugin.esm.min.js +1 -0
- sigal-2.5/src/sigal/themes/photoswipe/static/photoswipe.css +420 -0
- sigal-2.5/src/sigal/themes/photoswipe/static/photoswipe.esm.js +7081 -0
- sigal-2.5/src/sigal/themes/photoswipe/static/photoswipe.esm.js.map +1 -0
- sigal-2.5/src/sigal/themes/photoswipe/static/photoswipe.esm.min.js +5 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/photoswipe/static/styles.css +53 -0
- sigal-2.5/src/sigal/themes/photoswipe/templates/album.html +93 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/utils.py +80 -12
- sigal-2.5/src/sigal/version.py +21 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/video.py +43 -24
- {sigal-2.3 → sigal-2.5/src}/sigal/writer.py +26 -8
- {sigal-2.3 → sigal-2.5/src}/sigal.egg-info/PKG-INFO +28 -18
- sigal-2.5/src/sigal.egg-info/SOURCES.txt +237 -0
- sigal-2.5/src/sigal.egg-info/entry_points.txt +2 -0
- {sigal-2.3 → sigal-2.5/src}/sigal.egg-info/requires.txt +4 -4
- {sigal-2.3 → sigal-2.5}/tests/conftest.py +4 -4
- sigal-2.5/tests/sample/pictures/dir1/test1/11.md +10 -0
- {sigal-2.3 → sigal-2.5}/tests/sample/pictures/dir1/test1/index.md +2 -0
- sigal-2.5/tests/sample/pictures/dir1/test1/outdoor.heic +0 -0
- {sigal-2.3 → sigal-2.5}/tests/sample/pictures/dir1/test2/21.md +1 -1
- sigal-2.5/tests/sample/pictures/dir1/test2/index.md +2 -0
- sigal-2.5/tests/sample/pictures/video/example video.ogv +0 -0
- {sigal-2.3 → sigal-2.5}/tests/sample/sigal.conf.py +5 -3
- {sigal-2.3 → sigal-2.5}/tests/test_cli.py +38 -23
- {sigal-2.3 → sigal-2.5}/tests/test_compress_assets_plugin.py +16 -16
- {sigal-2.3 → sigal-2.5}/tests/test_encrypt.py +36 -17
- {sigal-2.3 → sigal-2.5}/tests/test_extended_caching.py +12 -12
- sigal-2.5/tests/test_gallery.py +432 -0
- {sigal-2.3 → sigal-2.5}/tests/test_image.py +108 -107
- sigal-2.5/tests/test_plugins.py +65 -0
- sigal-2.5/tests/test_settings.py +54 -0
- sigal-2.5/tests/test_utils.py +131 -0
- {sigal-2.3 → sigal-2.5}/tests/test_video.py +30 -47
- sigal-2.5/tests/test_zip.py +69 -0
- sigal-2.5/tox.ini +43 -0
- sigal-2.3/.pre-commit-config.yaml +0 -23
- sigal-2.3/.readthedocs.yml +0 -12
- sigal-2.3/MANIFEST.in +0 -15
- sigal-2.3/docs/conf.py +0 -168
- sigal-2.3/pyproject.toml +0 -12
- sigal-2.3/setup.cfg +0 -79
- sigal-2.3/setup.py +0 -3
- sigal-2.3/sigal/plugins/nonmedia_files.py +0 -194
- sigal-2.3/sigal/plugins/upload_s3.py +0 -106
- sigal-2.3/sigal/signals.py +0 -13
- sigal-2.3/sigal/themes/photoswipe/static/app.js +0 -214
- sigal-2.3/sigal/themes/photoswipe/static/default-skin/default-skin.css +0 -485
- sigal-2.3/sigal/themes/photoswipe/static/default-skin/default-skin.css.map +0 -10
- sigal-2.3/sigal/themes/photoswipe/static/default-skin/default-skin.png +0 -0
- sigal-2.3/sigal/themes/photoswipe/static/default-skin/default-skin.svg +0 -36
- sigal-2.3/sigal/themes/photoswipe/static/default-skin/preloader.gif +0 -0
- sigal-2.3/sigal/themes/photoswipe/static/echo/blank.gif +0 -0
- sigal-2.3/sigal/themes/photoswipe/static/echo/echo.js +0 -135
- sigal-2.3/sigal/themes/photoswipe/static/echo/echo.min.js +0 -2
- sigal-2.3/sigal/themes/photoswipe/static/photoswipe-ui-default.js +0 -871
- sigal-2.3/sigal/themes/photoswipe/static/photoswipe-ui-default.min.js +0 -1
- sigal-2.3/sigal/themes/photoswipe/static/photoswipe.css +0 -175
- sigal-2.3/sigal/themes/photoswipe/static/photoswipe.css.map +0 -10
- sigal-2.3/sigal/themes/photoswipe/static/photoswipe.js +0 -3592
- sigal-2.3/sigal/themes/photoswipe/static/photoswipe.min.js +0 -1
- sigal-2.3/sigal/themes/photoswipe/templates/album.html +0 -98
- sigal-2.3/sigal/version.py +0 -5
- sigal-2.3/sigal.egg-info/SOURCES.txt +0 -239
- sigal-2.3/sigal.egg-info/entry_points.txt +0 -2
- sigal-2.3/sigal.egg-info/not-zip-safe +0 -1
- sigal-2.3/tests/sample/pictures/dir1/test1/11.md +0 -4
- sigal-2.3/tests/sample/pictures/dir1/test2/index.md +0 -1
- sigal-2.3/tests/sample/pictures/video/example video.ogv +0 -0
- sigal-2.3/tests/test_gallery.py +0 -409
- sigal-2.3/tests/test_plugins.py +0 -49
- sigal-2.3/tests/test_settings.py +0 -54
- sigal-2.3/tests/test_utils.py +0 -92
- sigal-2.3/tests/test_zip.py +0 -63
- sigal-2.3/tox.ini +0 -45
- {sigal-2.3 → sigal-2.5}/.git-blame-ignore-revs +0 -0
- {sigal-2.3 → sigal-2.5}/CONTRIBUTING.rst +0 -0
- {sigal-2.3 → sigal-2.5}/docs/Makefile +0 -0
- {sigal-2.3 → sigal-2.5}/docs/contribute.rst +0 -0
- {sigal-2.3 → sigal-2.5}/docs/image_information.rst +0 -0
- {sigal-2.3 → sigal-2.5}/docs/index.rst +0 -0
- {sigal-2.3 → sigal-2.5}/docs/make.bat +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/plugins/__init__.py +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/plugins/encrypt/__init__.py +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/plugins/encrypt/static/decrypt.js +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/plugins/encrypt/static/keycheck.txt +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/plugins/encrypt/static/sw.js +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/colorbox/static/css/colorbox.css +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/colorbox/static/css/skeleton.css +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/colorbox/static/css/style.css +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/colorbox/static/images/controls.png +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/colorbox/static/images/loading.gif +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/colorbox/static/js/app-with-media-page.js +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/colorbox/static/js/app.js +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/colorbox/static/js/jquery-2.2.1.js +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/colorbox/static/js/jquery-2.2.1.min.js +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/colorbox/static/js/jquery.colorbox-min.js +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/colorbox/static/js/jquery.colorbox.js +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/colorbox/static/js/jquery.touchSwipe.js +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/colorbox/static/js/jquery.touchSwipe.min.js +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/colorbox/templates/album.html +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/colorbox/templates/album_list.html +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/colorbox/templates/base.html +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/colorbox/templates/media.html +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/default/static/leaflet/Control.FullScreen.css +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/default/static/leaflet/Control.FullScreen.js +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/default/static/leaflet/Leaflet.Photo.css +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/default/static/leaflet/Leaflet.Photo.js +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/default/static/leaflet/MarkerCluster.Default.css +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/default/static/leaflet/MarkerCluster.css +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/default/static/leaflet/README +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/default/static/leaflet/icon-fullscreen-2x.png +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/default/static/leaflet/icon-fullscreen.png +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/default/static/leaflet/images/layers-2x.png +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/default/static/leaflet/images/layers.png +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/default/static/leaflet/images/marker-icon-2x.png +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/default/static/leaflet/images/marker-icon.png +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/default/static/leaflet/images/marker-shadow.png +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/default/static/leaflet/leaflet-providers.js +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/default/static/leaflet/leaflet-src.js +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/default/static/leaflet/leaflet.css +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/default/static/leaflet/leaflet.js +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/default/static/leaflet/leaflet.markercluster-src.js +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/default/static/leaflet/leaflet.markercluster.js +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/default/templates/analytics.html +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/default/templates/breadcrumb.html +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/default/templates/default_head.html +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/default/templates/download_zip.html +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/default/templates/gtm.html +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/default/templates/links.html +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/default/templates/map.html +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/default/templates/piwik.html +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/galleria/README +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/galleria/static/css/normalize.css +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/galleria/static/css/style.css +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/galleria/static/galleria.js +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/galleria/static/galleria.min.js +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/galleria/static/img/empty.png +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/galleria/static/img/fullscreen.png +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/galleria/static/jquery-3.3.1.js +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/galleria/static/jquery-3.3.1.min.js +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/galleria/static/plugins/history/galleria.history.js +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/galleria/static/plugins/history/galleria.history.min.js +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/galleria/static/themes/azur/galleria.azur.css +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/galleria/static/themes/azur/galleria.azur.js +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/galleria/static/themes/azur/galleria.azur.min.css +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/galleria/static/themes/azur/galleria.azur.min.js +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/galleria/static/themes/classic/galleria.classic.css +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/galleria/static/themes/classic/galleria.classic.js +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/galleria/static/themes/classic/galleria.classic.min.css +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/galleria/static/themes/classic/galleria.classic.min.js +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/galleria/static/themes/folio/galleria.folio.css +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/galleria/static/themes/folio/galleria.folio.js +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/galleria/static/themes/folio/galleria.folio.min.css +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/galleria/static/themes/folio/galleria.folio.min.js +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/galleria/static/themes/fullscreen/galleria.fullscreen.css +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/galleria/static/themes/fullscreen/galleria.fullscreen.js +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/galleria/static/themes/fullscreen/galleria.fullscreen.min.css +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/galleria/static/themes/fullscreen/galleria.fullscreen.min.js +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/galleria/static/themes/fullscreen/index.html +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/galleria/static/themes/miniml/galleria.miniml.css +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/galleria/static/themes/miniml/galleria.miniml.js +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/galleria/static/themes/miniml/galleria.miniml.min.css +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/galleria/static/themes/miniml/galleria.miniml.min.js +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/galleria/static/themes/twelve/galleria.twelve.css +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/galleria/static/themes/twelve/galleria.twelve.js +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/galleria/static/themes/twelve/galleria.twelve.min.css +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/galleria/static/themes/twelve/galleria.twelve.min.js +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/galleria/templates/album.html +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/galleria/templates/album_list.html +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/galleria/templates/base.html +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/photoswipe/templates/album_list.html +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal/themes/photoswipe/templates/base.html +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal.egg-info/dependency_links.txt +0 -0
- {sigal-2.3 → sigal-2.5/src}/sigal.egg-info/top_level.txt +0 -0
- /sigal-2.3/tests/__init__.py → /sigal-2.5/tests/sample/pictures/.venv/lib64/fake.png +0 -0
- {sigal-2.3 → sigal-2.5}/tests/sample/pictures/accentu/303/251/11.jpg" +0 -0
- {sigal-2.3 → sigal-2.5}/tests/sample/pictures/accentu/303/251/h/303/251lico/303/257de.jpg" +0 -0
- {sigal-2.3 → sigal-2.5}/tests/sample/pictures/accentu/303/251/test?<special> chars#.jpg" +0 -0
- {sigal-2.3 → sigal-2.5}/tests/sample/pictures/dir1/empty/fake.txt +0 -0
- {sigal-2.3 → sigal-2.5}/tests/sample/pictures/dir1/index.md +0 -0
- {sigal-2.3 → sigal-2.5}/tests/sample/pictures/dir1/test1/11.jpg +0 -0
- {sigal-2.3 → sigal-2.5}/tests/sample/pictures/dir1/test1/CMB_Timeline300_no_WMAP.jpg +0 -0
- {sigal-2.3 → sigal-2.5}/tests/sample/pictures/dir1/test1/example.gif +0 -0
- {sigal-2.3 → sigal-2.5}/tests/sample/pictures/dir1/test1/flickr_jerquiaga_2394751088_cc-by-nc.jpg +0 -0
- {sigal-2.3 → sigal-2.5}/tests/sample/pictures/dir1/test1/flickr_jerquiaga_2394751088_cc-by-nc.md +0 -0
- {sigal-2.3 → sigal-2.5}/tests/sample/pictures/dir1/test2/21.tiff +0 -0
- {sigal-2.3 → sigal-2.5}/tests/sample/pictures/dir1/test2/22.jpg +0 -0
- {sigal-2.3 → sigal-2.5}/tests/sample/pictures/dir1/test2/22.md +0 -0
- {sigal-2.3 → sigal-2.5}/tests/sample/pictures/dir1/test2/CMB_Timeline300_no_WMAP.jpg +0 -0
- {sigal-2.3 → sigal-2.5}/tests/sample/pictures/dir1/test2/CMB_Timeline300_no_WMAP.md +0 -0
- {sigal-2.3 → sigal-2.5}/tests/sample/pictures/dir1/test3/3.jpg +0 -0
- {sigal-2.3 → sigal-2.5}/tests/sample/pictures/dir1/test3/index.md +0 -0
- {sigal-2.3 → sigal-2.5}/tests/sample/pictures/dir2/.nozip_gallery +0 -0
- {sigal-2.3 → sigal-2.5}/tests/sample/pictures/dir2/Hubble Interacting Galaxy NGC 5257.jpg +0 -0
- {sigal-2.3 → sigal-2.5}/tests/sample/pictures/dir2/Hubble ultra deep field.jpg +0 -0
- {sigal-2.3 → sigal-2.5}/tests/sample/pictures/dir2/KeckObservatory20071020.jpg +0 -0
- {sigal-2.3 → sigal-2.5}/tests/sample/pictures/dir2/index.md +0 -0
- {sigal-2.3 → sigal-2.5}/tests/sample/pictures/dir2/m57_the_ring_nebula-587px.jpg +0 -0
- {sigal-2.3 → sigal-2.5}/tests/sample/pictures/empty/fake.txt +0 -0
- {sigal-2.3 → sigal-2.5}/tests/sample/pictures/encryptTest/21.jpg +0 -0
- {sigal-2.3 → sigal-2.5}/tests/sample/pictures/encryptTest/22.jpg +0 -0
- {sigal-2.3 → sigal-2.5}/tests/sample/pictures/exifTest/21.jpg +0 -0
- {sigal-2.3 → sigal-2.5}/tests/sample/pictures/exifTest/22.jpg +0 -0
- {sigal-2.3 → sigal-2.5}/tests/sample/pictures/exifTest/noexif.png +0 -0
- {sigal-2.3 → sigal-2.5}/tests/sample/pictures/index.md +0 -0
- {sigal-2.3 → sigal-2.5}/tests/sample/pictures/iptcTest/1.jpg +0 -0
- {sigal-2.3 → sigal-2.5}/tests/sample/pictures/iptcTest/2.jpg +0 -0
- {sigal-2.3 → sigal-2.5}/tests/sample/pictures/iptcTest/2.md +0 -0
- {sigal-2.3 → sigal-2.5}/tests/sample/pictures/iptcTest/3.jpg +0 -0
- {sigal-2.3 → sigal-2.5}/tests/sample/pictures/iptcTest/index.md +0 -0
- {sigal-2.3 → sigal-2.5}/tests/sample/pictures/nomedia/created/.nomedia +0 -0
- {sigal-2.3 → sigal-2.5}/tests/sample/pictures/nomedia/created/ignored/should_be_ignored2.jpg +0 -0
- {sigal-2.3 → sigal-2.5}/tests/sample/pictures/nomedia/created/should_be_created.jpg +0 -0
- {sigal-2.3 → sigal-2.5}/tests/sample/pictures/nomedia/created/should_be_ignored3.jpg +0 -0
- {sigal-2.3 → sigal-2.5}/tests/sample/pictures/nomedia/ignored/.nomedia +0 -0
- {sigal-2.3 → sigal-2.5}/tests/sample/pictures/nomedia/ignored/recursively_ignored/should_be_ignored.jpg +0 -0
- {sigal-2.3 → sigal-2.5}/tests/sample/pictures/nomedia/ignored/should_be_ignored_1.jpg +0 -0
- {sigal-2.3 → sigal-2.5}/tests/sample/pictures/nonmedia_files/dummy.pdf +0 -0
- {sigal-2.3 → sigal-2.5}/tests/sample/pictures/video/example video.md +0 -0
- {sigal-2.3 → sigal-2.5}/tests/sample/pictures/webp/_MG_7805_lossy80.webp +0 -0
- {sigal-2.3 → sigal-2.5}/tests/sample/pictures/webp/_MG_7808_lossy80.webp +0 -0
- {sigal-2.3 → sigal-2.5}/tests/sample/watermark.png +0 -0
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
# To get started with Dependabot version updates, you'll need to specify which
|
|
2
|
+
# package ecosystems to update and where the package manifests are located.
|
|
3
|
+
# Please see the documentation for all configuration options:
|
|
4
|
+
# https://docs.github.com/github/administering-a-repository/configuration-options-for-dependency-updates
|
|
5
|
+
|
|
6
|
+
version: 2
|
|
7
|
+
updates:
|
|
8
|
+
- package-ecosystem: "github-actions" # See documentation for possible values
|
|
9
|
+
directory: ".github/workflows" # Location of package manifests
|
|
10
|
+
schedule:
|
|
11
|
+
interval: "monthly"
|
|
12
|
+
groups:
|
|
13
|
+
actions:
|
|
14
|
+
patterns:
|
|
15
|
+
- "*"
|
|
@@ -10,15 +10,18 @@ jobs:
|
|
|
10
10
|
build-n-publish:
|
|
11
11
|
name: Build and publish Python 🐍 distributions 📦 to PyPI and TestPyPI
|
|
12
12
|
runs-on: ubuntu-latest
|
|
13
|
+
environment: pypi
|
|
14
|
+
permissions:
|
|
15
|
+
id-token: write
|
|
13
16
|
if: ((github.event_name == 'push' && startsWith(github.ref, 'refs/tags')) || contains(github.event.pull_request.labels.*.name, 'Build wheels'))
|
|
14
17
|
|
|
15
18
|
steps:
|
|
16
|
-
- uses: actions/checkout@
|
|
19
|
+
- uses: actions/checkout@v4
|
|
17
20
|
with:
|
|
18
21
|
fetch-depth: 0
|
|
19
|
-
- uses: actions/setup-python@
|
|
22
|
+
- uses: actions/setup-python@v5
|
|
20
23
|
with:
|
|
21
|
-
python-version: 3.
|
|
24
|
+
python-version: "3.13"
|
|
22
25
|
|
|
23
26
|
- name: Install python-build and twine
|
|
24
27
|
run: python -m pip install build twine
|
|
@@ -34,7 +37,4 @@ jobs:
|
|
|
34
37
|
|
|
35
38
|
- name: Publish distribution 📦 to PyPI
|
|
36
39
|
if: startsWith(github.ref, 'refs/tags')
|
|
37
|
-
uses: pypa/gh-action-pypi-publish@
|
|
38
|
-
with:
|
|
39
|
-
user: __token__
|
|
40
|
-
password: ${{ secrets.pypi_password }}
|
|
40
|
+
uses: pypa/gh-action-pypi-publish@release/v1
|
|
@@ -16,14 +16,14 @@ jobs:
|
|
|
16
16
|
runs-on: ubuntu-latest
|
|
17
17
|
strategy:
|
|
18
18
|
matrix:
|
|
19
|
-
python-version: [3.
|
|
19
|
+
python-version: [3.9, "3.10", "3.11", "3.12", "3.13"]
|
|
20
20
|
|
|
21
21
|
steps:
|
|
22
|
-
- uses: actions/checkout@
|
|
22
|
+
- uses: actions/checkout@v4
|
|
23
23
|
with:
|
|
24
24
|
fetch-depth: 0
|
|
25
25
|
- name: Set up Python ${{ matrix.python-version }}
|
|
26
|
-
uses: actions/setup-python@
|
|
26
|
+
uses: actions/setup-python@v5
|
|
27
27
|
with:
|
|
28
28
|
python-version: ${{ matrix.python-version }}
|
|
29
29
|
- name: Install FFmpeg
|
|
@@ -34,10 +34,11 @@ jobs:
|
|
|
34
34
|
- name: Install Tox
|
|
35
35
|
run: python -m pip install tox tox-gh-actions coverage
|
|
36
36
|
- name: Run Tox
|
|
37
|
-
run: tox
|
|
37
|
+
run: tox run
|
|
38
38
|
- name: Convert coverage
|
|
39
39
|
run: python -m coverage xml
|
|
40
40
|
- name: Upload coverage to Codecov
|
|
41
|
-
uses: codecov/codecov-action@
|
|
41
|
+
uses: codecov/codecov-action@v5
|
|
42
42
|
with:
|
|
43
43
|
fail_ci_if_error: true
|
|
44
|
+
token: ${{ secrets.CODECOV_TOKEN }}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
repos:
|
|
2
|
+
|
|
3
|
+
- repo: https://github.com/pre-commit/pre-commit-hooks
|
|
4
|
+
rev: v5.0.0
|
|
5
|
+
hooks:
|
|
6
|
+
- id: check-added-large-files
|
|
7
|
+
- id: check-merge-conflict
|
|
8
|
+
- id: check-yaml
|
|
9
|
+
- id: end-of-file-fixer
|
|
10
|
+
exclude: ".*(galleria|photoswipe|jquery|leaflet).*$"
|
|
11
|
+
- id: trailing-whitespace
|
|
12
|
+
exclude: ".*(galleria|photoswipe|jquery|leaflet).*$"
|
|
13
|
+
|
|
14
|
+
- repo: https://github.com/astral-sh/ruff-pre-commit
|
|
15
|
+
rev: v0.9.7
|
|
16
|
+
hooks:
|
|
17
|
+
- id: ruff
|
|
18
|
+
args: [ --fix, --show-fixes, --exit-non-zero-on-fix ]
|
|
19
|
+
- id: ruff-format
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
version: 2
|
|
2
|
+
|
|
3
|
+
build:
|
|
4
|
+
os: ubuntu-22.04
|
|
5
|
+
tools:
|
|
6
|
+
python: "3.12"
|
|
7
|
+
|
|
8
|
+
sphinx:
|
|
9
|
+
configuration: docs/conf.py
|
|
10
|
+
fail_on_warning: true
|
|
11
|
+
|
|
12
|
+
python:
|
|
13
|
+
install:
|
|
14
|
+
- method: pip
|
|
15
|
+
path: .
|
|
16
|
+
extra_requirements:
|
|
17
|
+
- docs
|
|
18
|
+
|
|
19
|
+
# Don't build any extra formats
|
|
20
|
+
formats: []
|
{sigal-2.3 → sigal-2.5}/AUTHORS
RENAMED
|
@@ -5,16 +5,19 @@ alphabetical order):
|
|
|
5
5
|
- Abdul Qabiz
|
|
6
6
|
- Alexandre Chataignon (@xouillet)
|
|
7
7
|
- Alexey Bazhin
|
|
8
|
+
- amesgen
|
|
8
9
|
- Andreas Sieferlinger
|
|
9
10
|
- Andriy Dzedolik (@IrvinDitz)
|
|
10
11
|
- Antoine Beaupré
|
|
11
12
|
- Antoine Pitrou
|
|
13
|
+
- @amesgen
|
|
12
14
|
- Bowen Ding (@dbw9580)
|
|
13
15
|
- Brent Bandelgar (@brentbb)
|
|
14
16
|
- Cédric Bosdonnat
|
|
15
17
|
- Christophe-Marie Duquesne
|
|
16
18
|
- Craig Gallek
|
|
17
|
-
-
|
|
19
|
+
- datro
|
|
20
|
+
- David Runge
|
|
18
21
|
- David Schultz
|
|
19
22
|
- David Siroky
|
|
20
23
|
- Edward Betts
|
|
@@ -25,6 +28,7 @@ alphabetical order):
|
|
|
25
28
|
- @Glandos
|
|
26
29
|
- Jamie Starke
|
|
27
30
|
- @jdn06
|
|
31
|
+
- Jean Raby
|
|
28
32
|
- Jeff Dairiki
|
|
29
33
|
- Jonas Kaufmann
|
|
30
34
|
- Jorge Gallegos
|
|
@@ -34,12 +38,16 @@ alphabetical order):
|
|
|
34
38
|
- Keith Feldman
|
|
35
39
|
- Keith Johnson
|
|
36
40
|
- Kevin Murray
|
|
41
|
+
- ksfeldman
|
|
42
|
+
- Lixeiden
|
|
37
43
|
- Lucas Cimon
|
|
38
44
|
- Lukas Vacek
|
|
39
|
-
- Luke Cyca
|
|
45
|
+
- Luke Cyca
|
|
46
|
+
- Markus Blöchl
|
|
40
47
|
- Mate Lakat
|
|
41
48
|
- Mathieu Leplatre (@leplatrem)
|
|
42
49
|
- Matthias Vogelgesang
|
|
50
|
+
- max (maauer)
|
|
43
51
|
- Miroslav Pavleski
|
|
44
52
|
- Nicolas Arnaud-Cormos
|
|
45
53
|
- Nikolai Prokoschenko
|
|
@@ -49,14 +57,17 @@ alphabetical order):
|
|
|
49
57
|
- Renan Guilherme
|
|
50
58
|
- Robert Schütz
|
|
51
59
|
- Sébastien Maccagnoni-Munch
|
|
60
|
+
- Sean Grider (@kaibutsux)
|
|
52
61
|
- Simon Conseil
|
|
53
62
|
- Stefano Zacchiroli
|
|
54
63
|
- @subwarpspeed
|
|
55
64
|
- @t-animal
|
|
56
65
|
- @thomasdn
|
|
57
66
|
- Thomas Misilo
|
|
67
|
+
- Tilman Adler
|
|
58
68
|
- Tim AtLee
|
|
59
69
|
- Tim Davies
|
|
70
|
+
- @tired-engineer
|
|
60
71
|
- Tobias Preuss
|
|
61
72
|
- Toke Høiland-Jørgensen (@tohojo)
|
|
62
73
|
- @trapperhoney
|
{sigal-2.3 → sigal-2.5}/LICENSE
RENAMED
{sigal-2.3 → sigal-2.5}/PKG-INFO
RENAMED
|
@@ -1,30 +1,43 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.2
|
|
2
2
|
Name: sigal
|
|
3
|
-
Version: 2.
|
|
3
|
+
Version: 2.5
|
|
4
4
|
Summary: Simple static gallery generator
|
|
5
|
-
|
|
6
|
-
Author: Simon Conseil
|
|
7
|
-
Author-email: contact@saimon.org
|
|
5
|
+
Author-email: Simon Conseil <contact@saimon.org>
|
|
8
6
|
License: MIT License
|
|
7
|
+
Project-URL: repository, https://github.com/saimn/sigal
|
|
8
|
+
Project-URL: documentation, http://sigal.saimon.org/en/latest/
|
|
9
9
|
Keywords: gallery,static,generator,image,video,galleria
|
|
10
|
-
Platform: UNKNOWN
|
|
11
10
|
Classifier: Development Status :: 5 - Production/Stable
|
|
12
11
|
Classifier: Environment :: Console
|
|
13
12
|
Classifier: License :: OSI Approved :: MIT License
|
|
14
13
|
Classifier: Operating System :: OS Independent
|
|
15
14
|
Classifier: Programming Language :: Python :: 3
|
|
16
|
-
Classifier: Programming Language :: Python :: 3.8
|
|
17
|
-
Classifier: Programming Language :: Python :: 3.9
|
|
18
|
-
Classifier: Programming Language :: Python :: 3.10
|
|
19
15
|
Classifier: Topic :: Internet :: WWW/HTTP
|
|
20
16
|
Classifier: Topic :: Multimedia :: Graphics :: Viewers
|
|
21
17
|
Classifier: Topic :: Software Development :: Libraries :: Python Modules
|
|
22
|
-
Requires-Python: >=3.
|
|
18
|
+
Requires-Python: >=3.9
|
|
23
19
|
Description-Content-Type: text/x-rst
|
|
20
|
+
License-File: LICENSE
|
|
21
|
+
Requires-Dist: blinker
|
|
22
|
+
Requires-Dist: click
|
|
23
|
+
Requires-Dist: Jinja2>=2.7
|
|
24
|
+
Requires-Dist: Markdown
|
|
25
|
+
Requires-Dist: Pillow>=8.0.0
|
|
26
|
+
Requires-Dist: pilkit
|
|
27
|
+
Requires-Dist: natsort
|
|
24
28
|
Provides-Extra: all
|
|
29
|
+
Requires-Dist: brotli; extra == "all"
|
|
30
|
+
Requires-Dist: feedgenerator; extra == "all"
|
|
31
|
+
Requires-Dist: zopfli; extra == "all"
|
|
32
|
+
Requires-Dist: cryptography; extra == "all"
|
|
33
|
+
Requires-Dist: pillow-heif; extra == "all"
|
|
25
34
|
Provides-Extra: tests
|
|
35
|
+
Requires-Dist: pytest; extra == "tests"
|
|
36
|
+
Requires-Dist: pytest-cov; extra == "tests"
|
|
26
37
|
Provides-Extra: docs
|
|
27
|
-
|
|
38
|
+
Requires-Dist: Sphinx>=4.1.0; extra == "docs"
|
|
39
|
+
Requires-Dist: furo; extra == "docs"
|
|
40
|
+
Requires-Dist: cryptography; extra == "docs"
|
|
28
41
|
|
|
29
42
|
Sigal - Simple Static Gallery Generator
|
|
30
43
|
=======================================
|
|
@@ -51,14 +64,14 @@ The idea behind Sigal is to ease the use of the javascript libraries like
|
|
|
51
64
|
galleria_. These libraries do a great job to display the images, Sigal does
|
|
52
65
|
what is missing: resize images, create thumbnails, generate HTML pages.
|
|
53
66
|
|
|
54
|
-
Sigal
|
|
67
|
+
Sigal requires Python 3.9+.
|
|
55
68
|
|
|
56
|
-
Links
|
|
69
|
+
Links
|
|
70
|
+
-----
|
|
57
71
|
|
|
58
72
|
* Latest documentation on the website_
|
|
59
73
|
* Source, issues and pull requests on GitHub_
|
|
60
74
|
* Releases on PyPI_
|
|
61
|
-
* ``#sigal`` on Freenode, or with the webchat_ interface.
|
|
62
75
|
|
|
63
76
|
Themes & Demo
|
|
64
77
|
-------------
|
|
@@ -73,13 +86,10 @@ Javascript libraries:
|
|
|
73
86
|
.. _website: http://sigal.saimon.org/
|
|
74
87
|
.. _GitHub: https://github.com/saimn/sigal/
|
|
75
88
|
.. _PyPI: https://pypi.org/project/sigal/
|
|
76
|
-
.. _galleria:
|
|
89
|
+
.. _galleria: https://github.com/GalleriaJS/galleria
|
|
77
90
|
.. _colorbox: http://www.jacklmoore.com/colorbox
|
|
78
91
|
.. _photoswipe: http://photoswipe.com
|
|
79
92
|
.. _galleria demo: http://saimon.org/sigal-demo/galleria/
|
|
80
93
|
.. _colorbox demo: http://saimon.org/sigal-demo/colorbox/
|
|
81
94
|
.. _photoswipe demo: http://saimon.org/sigal-demo/photoswipe/
|
|
82
|
-
.. _webchat: http://webchat.freenode.net/?channels=sigal
|
|
83
95
|
.. _Jinja2: https://palletsprojects.com/p/jinja/
|
|
84
|
-
|
|
85
|
-
|
|
@@ -23,14 +23,14 @@ The idea behind Sigal is to ease the use of the javascript libraries like
|
|
|
23
23
|
galleria_. These libraries do a great job to display the images, Sigal does
|
|
24
24
|
what is missing: resize images, create thumbnails, generate HTML pages.
|
|
25
25
|
|
|
26
|
-
Sigal
|
|
26
|
+
Sigal requires Python 3.9+.
|
|
27
27
|
|
|
28
|
-
Links
|
|
28
|
+
Links
|
|
29
|
+
-----
|
|
29
30
|
|
|
30
31
|
* Latest documentation on the website_
|
|
31
32
|
* Source, issues and pull requests on GitHub_
|
|
32
33
|
* Releases on PyPI_
|
|
33
|
-
* ``#sigal`` on Freenode, or with the webchat_ interface.
|
|
34
34
|
|
|
35
35
|
Themes & Demo
|
|
36
36
|
-------------
|
|
@@ -45,11 +45,10 @@ Javascript libraries:
|
|
|
45
45
|
.. _website: http://sigal.saimon.org/
|
|
46
46
|
.. _GitHub: https://github.com/saimn/sigal/
|
|
47
47
|
.. _PyPI: https://pypi.org/project/sigal/
|
|
48
|
-
.. _galleria:
|
|
48
|
+
.. _galleria: https://github.com/GalleriaJS/galleria
|
|
49
49
|
.. _colorbox: http://www.jacklmoore.com/colorbox
|
|
50
50
|
.. _photoswipe: http://photoswipe.com
|
|
51
51
|
.. _galleria demo: http://saimon.org/sigal-demo/galleria/
|
|
52
52
|
.. _colorbox demo: http://saimon.org/sigal-demo/colorbox/
|
|
53
53
|
.. _photoswipe demo: http://saimon.org/sigal-demo/photoswipe/
|
|
54
|
-
.. _webchat: http://webchat.freenode.net/?channels=sigal
|
|
55
54
|
.. _Jinja2: https://palletsprojects.com/p/jinja/
|
|
@@ -22,8 +22,8 @@ gallery:
|
|
|
22
22
|
represent the gallery.
|
|
23
23
|
- *Author*: the author of the gallery, if present it is used instead of the
|
|
24
24
|
author setting.
|
|
25
|
-
- *Sort*: the sort order for this album. If prefixed with
|
|
26
|
-
reversed order.
|
|
25
|
+
- *Sort*: the sort order for the sub-albums of this album. If prefixed with
|
|
26
|
+
a '-' it will be in reversed order. Not supported to sort medias.
|
|
27
27
|
|
|
28
28
|
Any additional meta-data is available in the templates. For instance::
|
|
29
29
|
|
|
@@ -52,15 +52,15 @@ A total of %d pull requests were merged for this release.
|
|
|
52
52
|
|
|
53
53
|
|
|
54
54
|
def get_authors(revision_range):
|
|
55
|
-
pat =
|
|
56
|
-
lst_release, cur_release = (r.strip() for r in revision_range.split(
|
|
55
|
+
pat = "^.*\\t(.*)$"
|
|
56
|
+
lst_release, cur_release = (r.strip() for r in revision_range.split(".."))
|
|
57
57
|
|
|
58
58
|
# authors, in current release and previous to current release.
|
|
59
|
-
cur = set(re.findall(pat, this_repo.git.shortlog(
|
|
60
|
-
pre = set(re.findall(pat, this_repo.git.shortlog(
|
|
59
|
+
cur = set(re.findall(pat, this_repo.git.shortlog("-s", revision_range), re.M))
|
|
60
|
+
pre = set(re.findall(pat, this_repo.git.shortlog("-s", lst_release), re.M))
|
|
61
61
|
|
|
62
62
|
# Append '+' to new authors.
|
|
63
|
-
authors = [s +
|
|
63
|
+
authors = [s + " +" for s in cur - pre] + [s for s in cur & pre]
|
|
64
64
|
authors.sort()
|
|
65
65
|
return authors
|
|
66
66
|
|
|
@@ -69,7 +69,7 @@ def get_pull_requests(repo, revision_range):
|
|
|
69
69
|
prnums = []
|
|
70
70
|
|
|
71
71
|
# From regular merges
|
|
72
|
-
merges = this_repo.git.log(
|
|
72
|
+
merges = this_repo.git.log("--oneline", "--merges", revision_range)
|
|
73
73
|
issues = re.findall("Merge pull request \\#(\\d*)", merges)
|
|
74
74
|
prnums.extend(int(s) for s in issues)
|
|
75
75
|
|
|
@@ -79,9 +79,9 @@ def get_pull_requests(repo, revision_range):
|
|
|
79
79
|
|
|
80
80
|
# From fast forward squash-merges
|
|
81
81
|
commits = this_repo.git.log(
|
|
82
|
-
|
|
82
|
+
"--oneline", "--no-merges", "--first-parent", revision_range
|
|
83
83
|
)
|
|
84
|
-
issues = re.findall(
|
|
84
|
+
issues = re.findall("^.*\\(\\#(\\d+)\\)$", commits, re.M)
|
|
85
85
|
prnums.extend(int(s) for s in issues)
|
|
86
86
|
|
|
87
87
|
# get PR data from github repo
|
|
@@ -91,10 +91,10 @@ def get_pull_requests(repo, revision_range):
|
|
|
91
91
|
|
|
92
92
|
|
|
93
93
|
def main(token, revision_range):
|
|
94
|
-
lst_release, cur_release = (r.strip() for r in revision_range.split(
|
|
94
|
+
lst_release, cur_release = (r.strip() for r in revision_range.split(".."))
|
|
95
95
|
|
|
96
96
|
github = Github(token)
|
|
97
|
-
github_repo = github.get_repo(
|
|
97
|
+
github_repo = github.get_repo("saimn/sigal")
|
|
98
98
|
|
|
99
99
|
# document authors
|
|
100
100
|
authors = get_authors(revision_range)
|
|
@@ -105,7 +105,7 @@ def main(token, revision_range):
|
|
|
105
105
|
print(author_msg % len(authors))
|
|
106
106
|
|
|
107
107
|
for s in authors:
|
|
108
|
-
print(
|
|
108
|
+
print("* " + s)
|
|
109
109
|
|
|
110
110
|
# document pull requests
|
|
111
111
|
pull_requests = get_pull_requests(github_repo, revision_range)
|
|
@@ -132,7 +132,7 @@ if __name__ == "__main__":
|
|
|
132
132
|
from argparse import ArgumentParser
|
|
133
133
|
|
|
134
134
|
parser = ArgumentParser(description="Generate author/pr lists for release")
|
|
135
|
-
parser.add_argument(
|
|
136
|
-
parser.add_argument(
|
|
135
|
+
parser.add_argument("token", help="github access token")
|
|
136
|
+
parser.add_argument("revision_range", help="<revision>..<revision>")
|
|
137
137
|
args = parser.parse_args()
|
|
138
138
|
main(args.token, args.revision_range)
|
|
@@ -2,6 +2,53 @@
|
|
|
2
2
|
Changelog
|
|
3
3
|
===========
|
|
4
4
|
|
|
5
|
+
Version 2.5
|
|
6
|
+
~~~~~~~~~~~
|
|
7
|
+
|
|
8
|
+
Released on 2025-02-25.
|
|
9
|
+
|
|
10
|
+
Sigal now requires Python 3.9+.
|
|
11
|
+
|
|
12
|
+
- Remove s3 plugin since it relied on boto which is no longer maintained. Help
|
|
13
|
+
is welcome to update the plugin with the new boto3 library. [:issue:`513`]
|
|
14
|
+
- Cache input size to make updating faster [:issue:`506`].
|
|
15
|
+
- Allow sorting albums with negative numbers [:issue:`507`].
|
|
16
|
+
- Write the static files only once [:issue:`510`].
|
|
17
|
+
- Remove subdirectories for the ones skipped with ``ignore_dirs``
|
|
18
|
+
[:issue:`515`].
|
|
19
|
+
- New cli flag ``sigal serve --browser`` to open in default browser
|
|
20
|
+
[:issue:`516`].
|
|
21
|
+
- Add support for ``.heic`` files (requires the optional pillow-heif package)
|
|
22
|
+
[:issue:`519`].
|
|
23
|
+
- Add autoplay setting for galleria [:issue:`520`].
|
|
24
|
+
- Show HTML in media description (with galleria) [:issue:`521`].
|
|
25
|
+
- New ``display_timestamp`` setting to show the generation timestamp
|
|
26
|
+
[:issue:`524`].
|
|
27
|
+
- Update photoswipe to v5.4.4 [:issue:`528`].
|
|
28
|
+
|
|
29
|
+
Version 2.4
|
|
30
|
+
~~~~~~~~~~~
|
|
31
|
+
|
|
32
|
+
Released on 2023-09-29.
|
|
33
|
+
|
|
34
|
+
Sigal now requires Pillow>=8.0.0
|
|
35
|
+
|
|
36
|
+
- Avoid IndexError with empty source dir [:issue:`498`].
|
|
37
|
+
- New cli option ``--force-album`` to reprocess only specific albums
|
|
38
|
+
[:issue:`491`].
|
|
39
|
+
- Added support for black detection in video thumbnail generation
|
|
40
|
+
[:issue:`485`].
|
|
41
|
+
- Don't show the galleria container if there are no medias [:issue:`484`].
|
|
42
|
+
- Force encrypt's password form to be on top [:issue:`483`].
|
|
43
|
+
- Add mkv to ``video_extensions`` [:issue:`481`].
|
|
44
|
+
- Make sure ``zip_gallery`` is set correctly [:issue:`477`].
|
|
45
|
+
- Updates for recent Pillow changes, requires Pillow>=8.0.0 [:issue:`479`].
|
|
46
|
+
- Make theme dir writable after copying to it [:issue:`471`].
|
|
47
|
+
- New plugin: Titleregexp - modify titles of albums with regular expressions
|
|
48
|
+
[:issue:`469`].
|
|
49
|
+
- List of sort-properties as fallback instead of zero-length string
|
|
50
|
+
[:issue:`468`].
|
|
51
|
+
|
|
5
52
|
Version 2.3
|
|
6
53
|
~~~~~~~~~~~
|
|
7
54
|
|
sigal-2.5/docs/conf.py
ADDED
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
import os
|
|
2
|
+
|
|
3
|
+
from sigal import __version__
|
|
4
|
+
|
|
5
|
+
# -- General configuration ----------------------------------------------------
|
|
6
|
+
|
|
7
|
+
# If your documentation needs a minimal Sphinx version, state it here.
|
|
8
|
+
# needs_sphinx = '1.0'
|
|
9
|
+
|
|
10
|
+
# Add any Sphinx extension module names here, as strings. They can be
|
|
11
|
+
# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom ones.
|
|
12
|
+
extensions = ["sphinx.ext.autodoc", "sphinx.ext.extlinks"]
|
|
13
|
+
|
|
14
|
+
extlinks = {"issue": ("https://github.com/saimn/sigal/issues/%s", "#%s")}
|
|
15
|
+
|
|
16
|
+
# Add any paths that contain templates here, relative to this directory.
|
|
17
|
+
templates_path = ["_templates"]
|
|
18
|
+
|
|
19
|
+
# The suffix of source filenames.
|
|
20
|
+
source_suffix = ".rst"
|
|
21
|
+
|
|
22
|
+
# The encoding of source files.
|
|
23
|
+
# source_encoding = 'utf-8-sig'
|
|
24
|
+
|
|
25
|
+
# The master toctree document.
|
|
26
|
+
master_doc = "index"
|
|
27
|
+
|
|
28
|
+
# General information about the project.
|
|
29
|
+
project = "Sigal"
|
|
30
|
+
copyright = "2012-2023, Simon Conseil"
|
|
31
|
+
|
|
32
|
+
# The version info for the project you're documenting, acts as replacement for
|
|
33
|
+
# |version| and |release|, also used in various other places throughout the
|
|
34
|
+
# built documents.
|
|
35
|
+
release = __version__
|
|
36
|
+
version = __version__
|
|
37
|
+
|
|
38
|
+
# The language for content autogenerated by Sphinx. Refer to documentation
|
|
39
|
+
# for a list of supported languages.
|
|
40
|
+
# language = None
|
|
41
|
+
|
|
42
|
+
# There are two options for replacing |today|: either, you set today to some
|
|
43
|
+
# non-false value, then it is used:
|
|
44
|
+
# today = ''
|
|
45
|
+
# Else, today_fmt is used as the format for a strftime call.
|
|
46
|
+
# today_fmt = '%B %d, %Y'
|
|
47
|
+
|
|
48
|
+
# List of patterns, relative to source directory, that match files and
|
|
49
|
+
# directories to ignore when looking for source files.
|
|
50
|
+
exclude_patterns = ["_build"]
|
|
51
|
+
|
|
52
|
+
# If true, '()' will be appended to :func: etc. cross-reference text.
|
|
53
|
+
# add_function_parentheses = True
|
|
54
|
+
|
|
55
|
+
# If true, the current module name will be prepended to all description
|
|
56
|
+
# unit titles (such as .. function::).
|
|
57
|
+
# add_module_names = True
|
|
58
|
+
|
|
59
|
+
# If true, sectionauthor and moduleauthor directives will be shown in the
|
|
60
|
+
# output. They are ignored by default.
|
|
61
|
+
# show_authors = False
|
|
62
|
+
|
|
63
|
+
# The name of the Pygments (syntax highlighting) style to use.
|
|
64
|
+
pygments_style = "sphinx"
|
|
65
|
+
pygments_dark_style = "monokai"
|
|
66
|
+
|
|
67
|
+
# A list of ignored prefixes for module index sorting.
|
|
68
|
+
# modindex_common_prefix = []
|
|
69
|
+
|
|
70
|
+
|
|
71
|
+
# -- Options for HTML output --------------------------------------------------
|
|
72
|
+
|
|
73
|
+
# Define the canonical URL if you are using a custom domain on Read the Docs
|
|
74
|
+
html_baseurl = os.environ.get("READTHEDOCS_CANONICAL_URL", "")
|
|
75
|
+
|
|
76
|
+
# Tell Jinja2 templates the build is running on Read the Docs
|
|
77
|
+
html_context = {"READTHEDOCS": os.environ.get("READTHEDOCS", "") == "True"}
|
|
78
|
+
|
|
79
|
+
html_theme = "furo"
|
|
80
|
+
|
|
81
|
+
html_theme_options = {
|
|
82
|
+
"source_repository": "https://github.com/saimn/sigal/",
|
|
83
|
+
"source_branch": "main",
|
|
84
|
+
"source_directory": "docs/",
|
|
85
|
+
"footer_icons": [
|
|
86
|
+
{
|
|
87
|
+
"name": "GitHub",
|
|
88
|
+
"url": "https://github.com/saimn/sigal",
|
|
89
|
+
"html": """
|
|
90
|
+
<svg stroke="currentColor" fill="currentColor" stroke-width="0" viewBox="0 0 16 16">
|
|
91
|
+
<path fill-rule="evenodd" d="M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27.68 0 1.36.09 2 .27 1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.013 8.013 0 0 0 16 8c0-4.42-3.58-8-8-8z"></path>
|
|
92
|
+
</svg>
|
|
93
|
+
""", # noqa: E501
|
|
94
|
+
"class": "",
|
|
95
|
+
},
|
|
96
|
+
],
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
# Output file base name for HTML help builder.
|
|
100
|
+
htmlhelp_basename = "Sigaldoc"
|
|
@@ -8,5 +8,5 @@ explanations on the settings is available in ``sigal/templates/sigal.conf.py``
|
|
|
8
8
|
and is shown below. This file is copied to the current directory with the
|
|
9
9
|
``sigal init`` commmand.
|
|
10
10
|
|
|
11
|
-
.. literalinclude:: ../sigal/templates/sigal.conf.py
|
|
11
|
+
.. literalinclude:: ../src/sigal/templates/sigal.conf.py
|
|
12
12
|
:language: python
|
|
@@ -18,7 +18,7 @@ Build
|
|
|
18
18
|
a sub-directory and run ``sigal build <your images directory>``.
|
|
19
19
|
|
|
20
20
|
The next time you run ``sigal build``, only the new images will be processed.
|
|
21
|
-
You can use the ``-f`` flag to force the reprocessing of all the images.
|
|
21
|
+
You can use the ``-f`` flag to force the reprocessing of all the images or the ``-a`` flag to force only the specified matching albums.
|
|
22
22
|
Images (resp. videos) that are smaller than the size specified by the
|
|
23
23
|
``img_size`` (resp. ``video_size``) setting will not be resized.
|
|
24
24
|
|
|
@@ -39,7 +39,7 @@ Help on the ``sigal build`` command
|
|
|
39
39
|
|
|
40
40
|
::
|
|
41
41
|
|
|
42
|
-
$ sigal build [-h] [-d] [-v] [-f] [-c CONFIG] [-t THEME] [-n NCPU]
|
|
42
|
+
$ sigal build [-h] [-d] [-v] [-f] [-a PATTERN] [-c CONFIG] [-t THEME] [-n NCPU]
|
|
43
43
|
[source] [destination]
|
|
44
44
|
|
|
45
45
|
Required arguments:
|
|
@@ -58,6 +58,20 @@ Optional arguments:
|
|
|
58
58
|
``-f, --force``
|
|
59
59
|
Force the reprocessing of existing images and thumbnails
|
|
60
60
|
|
|
61
|
+
``-a --force-album``
|
|
62
|
+
Force the reprocessing of existing images matching the given album wildcard pattern.
|
|
63
|
+
Patterns containing wildcards will be matched against the full album path, while patterns without wildcards will be match against the album name only:
|
|
64
|
+
|
|
65
|
+
::
|
|
66
|
+
|
|
67
|
+
-a 'My Pictures/*Pics'
|
|
68
|
+
My Pictures/Old Pics => Force
|
|
69
|
+
My Pictures/New Pics => Force
|
|
70
|
+
My Pictures/Pictures => No Force
|
|
71
|
+
-a 'Landscapes'
|
|
72
|
+
My Pictures/Landscapes => Force
|
|
73
|
+
My Other Pictures/Landscapes => Force
|
|
74
|
+
|
|
61
75
|
``-v, --verbose``
|
|
62
76
|
Show all messages
|
|
63
77
|
|
|
@@ -25,6 +25,7 @@ The mandatory dependencies are:
|
|
|
25
25
|
- Blinker
|
|
26
26
|
- Click
|
|
27
27
|
- Jinja2
|
|
28
|
+
- natsort
|
|
28
29
|
- Pilkit
|
|
29
30
|
- Pillow
|
|
30
31
|
- Python Markdown
|
|
@@ -33,8 +34,9 @@ There are also a number of optional dependencies for the :doc:`plugins`,
|
|
|
33
34
|
installable with the ``[all]`` marker:
|
|
34
35
|
|
|
35
36
|
- Brotli, zopfli (compress assets plugin)
|
|
36
|
-
- Boto (upload to S3 plugin)
|
|
37
37
|
- feedgenerator (feeds plugin)
|
|
38
|
+
- cryptography (encrypt plugin)
|
|
39
|
+
- pillow-heif (HEIF/HEIC support)
|
|
38
40
|
|
|
39
41
|
Packages
|
|
40
42
|
~~~~~~~~
|
|
@@ -50,5 +50,8 @@ tests:
|
|
|
50
50
|
``should_be_ignored.jpg`` : from the apollo 7 mission, public domain:
|
|
51
51
|
https://www.flickr.com/photos/projectapolloarchive/21756099278/in/album-72157657129869694/
|
|
52
52
|
(https://github.com/saimn/sigal/pull/233#issuecomment-275430083)
|
|
53
|
-
- ``example video.ogv`` : https://commons.wikimedia.org/wiki/File:
|
|
54
|
-
(
|
|
53
|
+
- ``example video.ogv`` : https://commons.wikimedia.org/wiki/File:Examplevideo.ogv
|
|
54
|
+
(Public domain)
|
|
55
|
+
- ``outdoor.heic``: From @ususdei,
|
|
56
|
+
https://github.com/saimn/sigal/pull/519#issuecomment-2543310727
|
|
57
|
+
(Public domain)
|