v0.7
A chunkier update than previously anticipated. Honestly thought this would have been ready 2 weeks ago.
Hopefully there aren't any major bugs in this release (like #5)
Added/Changed:
- Monitors using the
windows.VCPmethod can now have their actual serial numbers retrieved (instead of the Windows UID) - If the
--verboseflag is used with--listin the CLI it will list all known information about the monitors, not just the names - If the
--verboseflag is used with--getin the CLI it will show each monitors serial and which method they use with the brightness value - Added a top-level
list_monitors_infofunction for more details about connected monitors - Added support for retrieving EDID strings in Windows. These are used internally as the primary form of differentiating monitors (instead of serials)
- Added a top-level
Monitorclass, which does the same thing as the oldwindows.Monitorandlinux.Monitor - Added a top-level
filter_monitorsfunction, which filters a list of displays by the parameters you supply (see the docs for more info on how this happens) - Sped up the module by caching information for short periods of time (short so that the info doesn't expire). The cache can be disabled if this causes issues
Removed/Deprecated:
- Deprecated the
'model_name'attribute in WindowsMonitorobjects (the'model'attribute should be used instead) - Deprecated the
'model_name'key in monitor's information on Windows (the'model'key should be used instead) - Removed the Windows and Linux specific
Monitorclasses. They just use the top-level generic one - Deprecated
windows.VCP.filter_displaysin favour of the top-levelfilter_displaysfunction - Removed
windows.WMI._get_display_index
Fixes:
- Fixed the CLI returning the monitor names incorrectly if one monitor got turned off
- DDC requests on Windows will try up to 10 times (with 0.02 seconds in between each attempt) to reduce errors from spamming this interface
That should be about it for now. The next update will be focused on optimizations (and probably patches)
v0.7.1
- Patched issue #6