Skip to content

Commit aaf0bbd

Browse files
authored
Merge branch 'main' into release-notes
2 parents 887017e + 4cf1a06 commit aaf0bbd

29 files changed

+388
-130
lines changed

.github/FUNDING.yml

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1 @@
11
github: BoboTiG
2-
polar: tiger-222
3-
issuehunt: BoboTiG

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
.DS_Store
55
*.orig
66
*.jpg
7+
*.mp4
78
/*.png
89
*.png.old
910
*.pickle
@@ -13,6 +14,7 @@
1314
build/
1415
.cache/
1516
dist/
17+
docs/__intersphinx_cache__/
1618
docs_out/
1719
*.egg-info/
1820
.idea/

CHANGELOG.md

Lines changed: 91 additions & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,9 @@
22

33
See Git commit messages for full history.
44

5-
## 10.2.0.dev0 (2026-xx-xx)
5+
## v10.2.0.dev0
6+
(2026-xx-xx)
7+
- Add Versioning chapter to docs (#496)
68
- Add `is_primary`, `name`, and `unique_id` keys to Monitor dicts for primary monitor detection, device names, and stable per-monitor identification (#153)
79
- Add `primary_monitor` property to MSS base class for easy access to the primary monitor (#153)
810
- Windows: add primary monitor detection using `GetMonitorInfoW` API (#153)
@@ -20,19 +22,22 @@ See Git commit messages for full history.
2022
- Add full demos for different ways to use MSS (#444, #456, #465)
2123
- :heart: contributors: @jholveck, @halldorfannar
2224

23-
## 10.1.0 (2025-08-16)
25+
## v10.1.0
26+
(2025-08-16)
2427
- Mac: up to 60% performances improvement by taking screenshots at nominal resolution (e.g. scaling is off by default). To enable back scaling, set `mss.darwin.IMAGE_OPTIONS = 0`. (#257)
2528
- docs: use the [shibuya](https://shibuya.lepture.com) theme
2629
- :heart: contributors: @brycedrennan
2730

28-
## 10.0.0 (2024-11-14)
31+
## v10.0.0
32+
(2024-11-14)
2933
- removed support for Python 3.8
3034
- added support for Python 3.14
3135
- Linux: fixed a threading issue in `.close()` when calling `XCloseDisplay()` (#251)
3236
- Linux: minor optimization when checking for a X extension status (#251)
3337
- :heart: contributors: @kianmeng, @shravanasati, @mgorny
3438

35-
## 9.0.2 (2024-09-01)
39+
## v9.0.2
40+
(2024-09-01)
3641
- added support for Python 3.13
3742
- leveled up the packaging using `hatchling`
3843
- used `ruff` to lint the code base (#275)
@@ -41,10 +46,12 @@ See Git commit messages for full history.
4146
- CI: automated release publishing on tag creation
4247
- :heart: contributors: @Andon-Li
4348

44-
## 9.0.1 (2023-04-20)
49+
## v9.0.1
50+
(2023-04-20)
4551
- CLI: fixed entry point not taking into account arguments
4652

47-
## 9.0.0 (2023-04-18)
53+
## v9.0.0
54+
(2023-04-18)
4855
- Linux: add failure handling to `XOpenDisplay()` call (fixes #246)
4956
- Mac: tiny improvement in monitors finding
5057
- Windows: refactored how internal handles are stored (fixes #198)
@@ -55,7 +62,8 @@ See Git commit messages for full history.
5562
- tests: automatic rerun in case of failure (related to #251)
5663
- :heart: contributors: @mgorny, @CTPaHHuK-HEbA
5764

58-
## 8.0.3 (2023-04-15)
65+
## v8.0.3
66+
(2023-04-15)
5967
- added support for Python 3.12
6068
- MSS: added PEP 561 compatibility
6169
- MSS: include more files in the sdist package (#240)
@@ -66,16 +74,19 @@ See Git commit messages for full history.
6674
- dev: review the structure of the repository to fix/improve packaging issues (#243)
6775
- :heart: contributors: @mgorny, @relent95
6876

69-
## 8.0.2 (2023-04-09)
77+
## v8.0.2
78+
(2023-04-09)
7079
- fixed `SetuptoolsDeprecationWarning`: Installing 'XXX' as data is deprecated, please list it in packages
7180
- CLI: fixed arguments handling
7281

73-
## 8.0.1 (2023-04-09)
82+
## v8.0.1
83+
(2023-04-09)
7484
- MSS: ensure `--with-cursor`, and `with_cursor` argument & attribute, are simple NOOP on platforms not supporting the feature
7585
- CLI: do not raise a `ScreenShotError` when `-q`, or `--quiet`, is used but return `
7686
- tests: fixed `test_entry_point()` with multiple monitors having the same resolution
7787

78-
## 8.0.0 (2023-04-09)
88+
## v8.0.0
89+
(2023-04-09)
7990
- removed support for Python 3.6
8091
- removed support for Python 3.7
8192
- MSS: fixed PEP 484 prohibits implicit Optional
@@ -88,10 +99,12 @@ See Git commit messages for full history.
8899
- tests: added PyPy 3.9, removed `tox`, and improved GNU/Linux coverage
89100
- :heart: contributors: @zorvios
90101

91-
## 7.0.1 (2022-10-27)
102+
## v7.0.1
103+
(2022-10-27)
92104
- fixed the wheel package
93105

94-
## 7.0.0 (2022-10-27)
106+
## v7.0.0
107+
(2022-10-27)
95108
- added support for Python 3.11
96109
- added support for Python 3.10
97110
- removed support for Python 3.5
@@ -100,31 +113,35 @@ See Git commit messages for full history.
100113
- MSS: fixed typos here, and there
101114
- docs: fixed an error when building the documentation
102115

103-
## 6.1.0 (2020-10-31)
116+
## v6.1.0
117+
(2020-10-31)
104118
- MSS: reworked how C functions are initialized
105119
- Mac: reduce the number of function calls
106120
- Mac: support macOS Big Sur (fixes #178)
107121
- tests: expand Python versions to 3.9 and 3.10
108122
- tests: fixed macOS interpreter not found on Travis-CI
109123
- tests: fixed `test_entry_point()` when there are several monitors
110124

111-
## 6.0.0 (2020-06-30)
125+
## v6.0.0
126+
(2020-06-30)
112127
- removed usage of deprecated `license_file` option for `license_files`
113128
- fixed flake8 usage in pre-commit
114129
- the module is now available on Conda (closes #170)
115130
- MSS: the implementation is now thread-safe on all OSes (fixes #169)
116131
- Linux: better handling of the Xrandr extension (fixes #168)
117132
- tests: fixed a random bug on `test_grab_with_tuple_percents()` (fixes #142)
118133

119-
## 5.1.0 (2020-04-30)
134+
## v5.1.0
135+
(2020-04-30)
120136
- produce wheels for Python 3 only
121137
- MSS: renamed again `MSSMixin` to `MSSBase`, now derived from `abc.ABCMeta`
122138
- tools: force write of file when saving a PNG file
123139
- tests: fixed tests on macOS with Retina display
124140
- Windows: fixed multi-thread safety (fixes #150)
125141
- :heart: contributors: @narumishi
126142

127-
## 5.0.0 (2019-12-31)
143+
## v5.0.0
144+
(2019-12-31)
128145
- removed support for Python 2.7
129146
- MSS: improve type annotations and add CI check
130147
- MSS: use `__slots__` for better performances
@@ -137,15 +154,18 @@ See Git commit messages for full history.
137154
- tests: move tests files into the package
138155
- :heart: contributors: @hugovk, @foone, @SergeyKalutsky
139156

140-
## 4.0.2 (2019-02-23)
157+
## v4.0.2
158+
(2019-02-23)
141159
- Windows: ignore missing `SetProcessDPIAware()` on Window XP (fixes #109)
142160
- :heart: contributors: @foone
143161

144-
## 4.0.1 (2019-01-26)
162+
## v4.0.1
163+
(2019-01-26)
145164
- Linux: fixed several Xlib functions signature (fixes #92)
146165
- Linux: improve monitors finding by a factor of 44
147166

148-
## 4.0.0 (2019-01-11)
167+
## v4.0.0
168+
(2019-01-11)
149169
- MSS: remove use of `setup.py` for `setup.cfg`
150170
- MSS: renamed `MSSBase` to `MSSMixin` in `base.py`
151171
- MSS: refactor ctypes `argtype`, `restype` and `errcheck` setup (fixes #84)
@@ -158,29 +178,34 @@ See Git commit messages for full history.
158178
- MSS: fixed PyLint bad-super-call: Bad first argument 'Exception' given to `super()`
159179
- tests: use `tox`, enable PyPy and PyPy3, add macOS and Windows CI
160180

161-
## 3.3.2 (2018-11-20)
181+
## v3.3.2
182+
(2018-11-20)
162183
- MSS: do monitor detection in MSS constructor (fixes #79)
163184
- MSS: specify compliant Python versions for pip install
164185
- tests: enable Python 3.7
165186
- tests: fixed `test_entry_point()` with multiple monitors
166187
- :heart: contributors: @hugovk, @andreasbuhr
167188

168-
## 3.3.1 (2018-09-22)
189+
## v3.3.1
190+
(2018-09-22)
169191
- Linux: fixed a memory leak introduced with 7e8ae5703f0669f40532c2be917df4328bc3985e (fixes #72)
170192
- docs: add the download statistics badge
171193

172-
## 3.3.0 (2018-09-04)
194+
## v3.3.0
195+
(2018-09-04)
173196
- Linux: add an error handler for the XServer to prevent interpreter crash (fixes #61)
174197
- MSS: fixed a `ResourceWarning`: unclosed file in `setup.py`
175198
- tests: fixed a `ResourceWarning`: unclosed file
176199
- docs: fixed a typo in `Screenshot.pixel()` method (thanks to @mchlnix)
177200
- big code clean-up using `black`
178201

179-
## 3.2.1 (2018-05-21)
202+
## v3.2.1
203+
(2018-05-21)
180204
- Windows: enable Hi-DPI awareness
181205
- :heart: contributors: @ryanfox
182206

183-
## 3.2.0 (2018-03-22)
207+
## v3.2.0
208+
(2018-03-22)
184209
- removed support for Python 3.4
185210
- MSS: add the `Screenshot.bgra` attribute
186211
- MSS: speed-up grabbing on the 3 platforms
@@ -189,17 +214,20 @@ See Git commit messages for full history.
189214
- docs: add an example about capturing part of the monitor 2
190215
- docs: add an example about computing BGRA values to RGB
191216

192-
## 3.1.2 (2018-01-05)
217+
## v3.1.2
218+
(2018-01-05)
193219
- removed support for Python 3.3
194220
- MSS: possibility to get the whole PNG raw bytes
195221
- Windows: capture all visible window
196222
- docs: improvements and fixes (fixes #37)
197223
- CI: build the documentation
198224

199-
## 3.1.1 (2017-11-27)
225+
## v3.1.1
226+
(2017-11-27)
200227
- MSS: add the `mss` entry point
201228

202-
## 3.1.0 (2017-11-16)
229+
## v3.1.0
230+
(2017-11-16)
203231
- MSS: add more way of customization to the output argument of `save()`
204232
- MSS: possibility to use custom class to handle screenshot data
205233
- Mac: properly support all display scaling and resolutions (fixes #14, #19, #21, #23)
@@ -211,22 +239,26 @@ See Git commit messages for full history.
211239
- add the 'Say Thanks' button
212240
- :heart: contributors: @karanlyons
213241

214-
## 3.0.1 (2017-07-06)
242+
## v3.0.1
243+
(2017-07-06)
215244
- fixed examples links
216245

217-
## 3.0.0 (2017-07-06)
246+
## v3.0.0
247+
(2017-07-06)
218248
- big refactor, introducing the `ScreenShot` class
219249
- MSS: add Numpy array interface support to the `Screenshot` class
220250
- docs: add OpenCV/Numpy, PIL pixels, FPS
221251

222-
## 2.0.22 (2017-04-29)
252+
## v2.0.22
253+
(2017-04-29)
223254
- MSS: better use of exception mechanism
224255
- Linux: use of `hasattr()` to prevent Exception on early exit
225256
- Mac: take into account extra black pixels added when screen with is not divisible by 16 (fixes #14)
226257
- docs: add an example to capture only a part of the screen
227258
- :heart: contributors: David Becker, @redodo
228259

229-
## 2.0.18 (2016-12-03)
260+
## v2.0.18
261+
(2016-12-03)
230262
- change license to MIT
231263
- MSS: add type hints
232264
- MSS: remove unused code (reported by `Vulture`)
@@ -239,7 +271,8 @@ See Git commit messages for full history.
239271
- tests: add tests and use Travis CI (fixes #9)
240272
- :heart: contributors: @cycomanic
241273

242-
## 2.0.0 (2016-06-04)
274+
## v2.0.0
275+
(2016-06-04)
243276
- add issue and pull request templates
244277
- split the module into several files
245278
- MSS: a lot of code refactor and optimizations
@@ -251,13 +284,16 @@ See Git commit messages for full history.
251284
- Linux: `get_pixels()` insanely fast, use of MSS library (C code)
252285
- Windows: screenshot not correct on Windows 8 (fixes #6)
253286

254-
## 1.0.2 (2016-04-22)
287+
## v1.0.2
288+
(2016-04-22)
255289
- MSS: fixed non-existent alias
256290

257-
## 1.0.1 (2016-04-22)
291+
## v1.0.1
292+
(2016-04-22)
258293
- MSS: `libpng` warning (ignoring bad filter type) (fixes #7)
259294

260-
## 1.0.0 (2015-04-16)
295+
## v1.0.0
296+
(2015-04-16)
261297
- Python 2.6 to 3.5 ready
262298
- MSS: code clean-up and review, no more debug information
263299
- MSS: add a shortcut to take automatically use the proper `MSS` class (fixes #5)
@@ -269,30 +305,35 @@ See Git commit messages for full history.
269305
- Windows: huge optimization of `get_pixels()`
270306
- CLI: delete `--debug` argument
271307

272-
## 0.1.1 (2015-04-10)
308+
## v0.1.1
309+
(2015-04-10)
273310
- MSS: little code review
274311
- Linux: fixed monitor count
275312
- tests: remove `test-linux` binary
276313
- docs: add `doc/TESTING`
277314
- docs: remove Bonus section from README
278315

279-
## 0.1.0 (2015-04-10)
316+
## v0.1.0
317+
(2015-04-10)
280318
- MSS: fixed code with `YAPF` tool
281319
- Linux: fully functional using Xrandr library
282320
- Linux: code clean-up (no more XML files to parse)
283321
- docs: better tests and examples
284322

285-
## 0.0.8 (2015-02-04)
323+
## v0.0.8
324+
(2015-02-04)
286325
- MSS: filename's directory is not used when saving (fixes #3)
287326
- MSS: fixed flake8 error: E713 test for membership should be 'not in'
288327
- MSS: raise an exception for unimplemented methods
289328
- Windows: robustness to `MSSWindows.get_pixels` (fixes #4)
290329
- :heart: contributors: @sergey-vin, @thehesiod
291330

292-
## 0.0.7 (2014-03-20)
331+
## v0.0.7
332+
(2014-03-20)
293333
- MSS: fixed path where screenshots are saved
294334

295-
## 0.0.6 (2014-03-19)
335+
## v0.0.6
336+
(2014-03-19)
296337
- Python 3.4 ready
297338
- PEP8 compliant
298339
- MSS: review module structure to fit the "Code Like a Pythonista: Idiomatic Python"
@@ -304,23 +345,28 @@ See Git commit messages for full history.
304345
- CLI: possibility to append `--debug` to the command line
305346
- :heart: contributors: @sametmax
306347

307-
## 0.0.5 (2013-11-01)
348+
## v0.0.5
349+
(2013-11-01)
308350
- MSS: code simplified
309351
- Windows: few optimizations into `_arrange()`
310352

311-
## 0.0.4 (2013-10-31)
353+
## v0.0.4
354+
(2013-10-31)
312355
- Linux: use of memoization → huge time/operations gains
313356

314-
## 0.0.3 (2013-10-30)
357+
## v0.0.3
358+
(2013-10-30)
315359
- MSS: removed PNG filters
316360
- MSS: removed `ext` argument, using only PNG
317361
- MSS: do not overwrite existing image files
318362
- MSS: few optimizations into `png()`
319363
- Linux: few optimizations into `get_pixels()`
320364

321-
## 0.0.2 (2013-10-21)
365+
## v0.0.2
366+
(2013-10-21)
322367
- added support for python 3 on Windows and GNU/Linux
323368
- :heart: contributors: Oros, Eownis
324369

325-
## 0.0.1 (2013-07-01)
370+
## v0.0.1
371+
(2013-07-01)
326372
- first release

LICENSE.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
MIT License
2-
Copyright (c) 2013-2025, Mickaël 'Tiger-222' Schoentgen
2+
Copyright (c) 2013-2026, Mickaël 'Tiger-222' Schoentgen
33

44
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
55

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
[![PyPI version](https://badge.fury.io/py/mss.svg)](https://badge.fury.io/py/mss)
44
[![Anaconda version](https://anaconda.org/conda-forge/python-mss/badges/version.svg)](https://anaconda.org/conda-forge/python-mss)
5-
[![Tests workflow](https://github.com/BoboTiG/python-mss/actions/workflows/tests.yml/badge.svg?branch=main)](https://github.com/BoboTiG/python-mss/actions/workflows/tests.yml)
5+
[![Tests](https://github.com/BoboTiG/python-mss/actions/workflows/tests.yml/badge.svg)](https://github.com/BoboTiG/python-mss/actions/workflows/tests.yml)
66
[![Downloads](https://static.pepy.tech/personalized-badge/mss?period=total&units=international_system&left_color=black&right_color=orange&left_text=Downloads)](https://pepy.tech/project/mss)
77

88
> [!TIP]

0 commit comments

Comments
 (0)