Commit Graph

18718 Commits

Author SHA1 Message Date
Yay295
adcd541110 deprecate old rawmodes for 16-bit RGB data 2024-10-12 18:33:58 -05:00
Yay295
f281063941 use new rawmodes in BMP and TGA image plugins 2024-10-12 18:33:58 -05:00
Yay295
5ffaf3f378 clean up rawmode syntax comments 2024-10-12 18:33:58 -05:00
Yay295
3af0e2d9cf add "new" rawmodes for 16-bit RGB data
The existing 16-bit RGB rawmodes do not follow the naming convention given in Unpack.c. These new modes do follow that convention, except since these modes do not all use the same number of bits for each band, the sizes of each band are listed.

Old → New
RGB;15 → XBGR;1555
RGB;16 → BGR;565
BGR;5 → XRGB;1555
BGR;15 → XRGB;1555
BGR;16 → RGB;565
RGB;4B → XBGR;4
RGBA;4B → ABGR;4
RGBA;15 → ABGR;1555
BGRA;15 → ARGB;1555
BGRA;15Z → ARGB;1555Z

These new rawmodes also use a slightly different conversion method. The most accurate conversion from 5 to 8 bits is "round(x * 255 / 31.0)". However, that involves floating point numbers and rounding, so it's not as fast. The current method doesn't include the rounding, allowing us to also use integer instead of floating point division. This is faster, but unfortunately not roundtrippable - when converting from 5 to 8 to 5 bits not every value stays the same. The new method is roundtrippable, even faster than the current method since it uses basic bitwise operations instead of multiplication and division, and if you compare the result to what you get with rounding and floating point numbers, it is actually more accurate.
2024-10-12 18:33:57 -05:00
Yay295
7d5771e56d parametrize test_lib_pack.py 2024-10-12 18:33:57 -05:00
Andrew Murray
dc3751599f
Merge pull request #8463 from hugovk/update-3.13-date
Update Python 3.13 release date
2024-10-13 09:32:26 +11:00
Hugo van Kemenade
c3d81d6375 Update Python 3.13 release date 2024-10-12 23:52:57 +03:00
Andrew Murray
a5c58f2182
Merge pull request #8460 from hugovk/mit-cmu
Update licence to MIT-CMU
2024-10-13 07:10:09 +11:00
Hugo van Kemenade
e74994ed37 Update licence to MIT-CMU 2024-10-12 16:50:36 +03:00
Andrew Murray
b5e1115bf2 Update CHANGES.rst [ci skip] 2024-10-12 21:10:47 +11:00
Hugo van Kemenade
686b5e2cb4
Merge pull request #8392 from radarhere/tiff_seek
Do not create core image in TIFF seek()
2024-10-12 11:46:36 +03:00
Hugo van Kemenade
914f7e1c58
Merge pull request #8365 from radarhere/openjpeg
Removed custom build_openjpeg
2024-10-12 11:46:01 +03:00
Hugo van Kemenade
b0d79c87f1
Merge pull request #8197 from radarhere/imagecms_core
Conditionally define ImageCms type hint to avoid requiring core
2024-10-12 11:30:17 +03:00
Hugo van Kemenade
fd74857bcf
Merge pull request #8417 from radarhere/appendingTiffWriter
Support writing LONG8 offsets in AppendingTiffWriter
2024-10-12 11:29:09 +03:00
Hugo van Kemenade
3dded83076
Merge pull request #8461 from radarhere/undone
Use ImageFile.MAXBLOCK when saving TIFF images
2024-10-12 11:25:55 +03:00
Andrew Murray
00c5989d4e Use MAXBLOCK 2024-10-12 13:44:48 +11:00
Hugo van Kemenade
08b561e25d
Merge pull request #8459 from radarhere/webp 2024-10-11 14:59:26 +03:00
Andrew Murray
e93dcc1578 Update CHANGES.rst [ci skip] 2024-10-11 21:09:52 +11:00
Hugo van Kemenade
ecdd519a0e
Merge pull request #8458 from radarhere/dup 2024-10-11 13:07:44 +03:00
Andrew Murray
afbf45055a Always raise warnings for deprecated feature checks 2024-10-11 20:59:15 +11:00
Andrew Murray
7edf952832 Do not close provided file handles with libtiff 2024-10-11 19:37:56 +11:00
Hugo van Kemenade
3d9c05c224
Merge pull request #8457 from hugovk/sphinx-8.1 2024-10-11 10:58:08 +03:00
Hugo van Kemenade
fdd5d0c0fb Use CVE and CWE roles from Sphinx 8.1 2024-10-10 21:35:48 +03:00
Andrew Murray
97438cb8fd Update CHANGES.rst [ci skip] 2024-10-10 22:50:26 +11:00
Andrew Murray
d99229e4d1
Merge pull request #8455 from radarhere/wheels 2024-10-10 22:18:49 +11:00
Andrew Murray
7777260b6b
Merge pull request #8438 from radarhere/filter 2024-10-10 21:50:51 +11:00
Andrew Murray
ff245fcb40 Revert "Skip QEMU-emulated wheels on workflow dispatch event"
This reverts commit f39ca5db5a.
2024-10-10 19:43:11 +11:00
mergify[bot]
dab9559c04
Merge pull request #8453 from python-pillow/renovate/cibuildwheel-2.x
Update dependency cibuildwheel to v2.21.3
2024-10-09 10:07:27 +00:00
renovate[bot]
e37209ace5
Update dependency cibuildwheel to v2.21.3 2024-10-09 09:11:46 +00:00
Andrew Murray
a9b9a63614 Do not create core image in seek(), when load() might not run 2024-10-08 20:48:32 +11:00
Andrew Murray
949079bf36
Merge pull request #8448 from python-pillow/pre-commit-ci-update-config
[pre-commit.ci] pre-commit autoupdate
2024-10-08 08:28:53 +11:00
pre-commit-ci[bot]
a609d65b33 [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
2024-10-07 17:56:23 +00:00
pre-commit-ci[bot]
ef47d6e5e5
[pre-commit.ci] pre-commit autoupdate
updates:
- [github.com/astral-sh/ruff-pre-commit: v0.6.3 → v0.6.9](https://github.com/astral-sh/ruff-pre-commit/compare/v0.6.3...v0.6.9)
- [github.com/PyCQA/bandit: 1.7.9 → 1.7.10](https://github.com/PyCQA/bandit/compare/1.7.9...1.7.10)
- [github.com/pre-commit/mirrors-clang-format: v18.1.8 → v19.1.1](https://github.com/pre-commit/mirrors-clang-format/compare/v18.1.8...v19.1.1)
- [github.com/pre-commit/pre-commit-hooks: v4.6.0 → v5.0.0](https://github.com/pre-commit/pre-commit-hooks/compare/v4.6.0...v5.0.0)
- [github.com/python-jsonschema/check-jsonschema: 0.29.2 → 0.29.3](https://github.com/python-jsonschema/check-jsonschema/compare/0.29.2...0.29.3)
- [github.com/sphinx-contrib/sphinx-lint: v0.9.1 → v1.0.0](https://github.com/sphinx-contrib/sphinx-lint/compare/v0.9.1...v1.0.0)
- [github.com/tox-dev/pyproject-fmt: 2.2.1 → 2.2.4](https://github.com/tox-dev/pyproject-fmt/compare/2.2.1...2.2.4)
- [github.com/abravalheri/validate-pyproject: v0.19 → v0.20.2](https://github.com/abravalheri/validate-pyproject/compare/v0.19...v0.20.2)
- [github.com/tox-dev/tox-ini-fmt: 1.3.1 → 1.4.1](https://github.com/tox-dev/tox-ini-fmt/compare/1.3.1...1.4.1)
2024-10-07 17:55:54 +00:00
Andrew Murray
7097a9a3b8 Update CHANGES.rst [ci skip] 2024-10-07 22:12:41 +11:00
Hugo van Kemenade
535bf234c3
Merge pull request #8341 from uploadcare/use-ptr
Use ImagingCore.ptr instead of ImagingCore.id
2024-10-07 13:37:44 +03:00
Alexander Karpinsky
a227f22fd9
Apply suggestions from code review [ci skip]
Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
2024-10-07 14:35:25 +04:00
Hugo van Kemenade
029ec8559b
Merge pull request #8445 from radarhere/apply 2024-10-07 12:51:43 +03:00
Hugo van Kemenade
026181ed25
Merge pull request #8447 from radarhere/imagingft_unused 2024-10-07 12:51:25 +03:00
Hugo van Kemenade
f5ce8a9d61
Merge pull request #8446 from radarhere/close 2024-10-07 12:16:17 +03:00
Alexander Karpinsky
8e332eb3b0 Apply suggestions from code review
Co-authored-by: Andrew Murray <3112309+radarhere@users.noreply.github.com>
2024-10-07 13:05:13 +04:00
Andrew Murray
8de66597f9 Removed unused code 2024-10-07 19:17:59 +11:00
Andrew Murray
76dd669e6b Fixed unclosed file warning 2024-10-07 16:50:05 +11:00
Andrew Murray
feeceb9ae6 Simplified code 2024-10-07 15:34:28 +11:00
Andrew Murray
27c1bb2654 Update CHANGES.rst [ci skip] 2024-10-07 07:48:32 +11:00
Hugo van Kemenade
96f1a6e8b1
Merge pull request #8281 from Yay295/eps_test 2024-10-06 15:58:57 +03:00
Hugo van Kemenade
838e0fb1a5
Merge pull request #8443 from radarhere/apng_p_transparency 2024-10-06 15:58:07 +03:00
Andrew Murray
b77cd009e2 Use transparency when combining P frames 2024-10-06 11:30:27 +11:00
Andrew Murray
01bb78a8e7
Merge pull request #8441 from hugovk/attest
Generate and upload attestations to PyPI
2024-10-06 11:11:57 +11:00
Andrew Murray
f3deba0ab6
Merge pull request #8442 from hugovk/appveyor-3.13
Test Python 3.13 on AppVeyor
2024-10-06 10:55:40 +11:00
Hugo van Kemenade
d2dfd126b3
Updated CI target (#128) 2024-10-06 01:04:57 +03:00