Offset 1, 9 lines modified | Offset 1, 9 lines modified | ||
1 | -rw-r--r--···0·root·········(0)·root·········(0)·····9167·2023-08-05·23:02:05.000000·.BUILDINFO | 1 | -rw-r--r--···0·root·········(0)·root·········(0)·····9167·2023-08-05·23:02:05.000000·.BUILDINFO |
2 | -rw-r--r--···0·root·········(0)·root·········(0)····1029 | 2 | -rw-r--r--···0·root·········(0)·root·········(0)····10297·2023-08-05·23:02:05.000000·.MTREE |
3 | -rw-r--r--···0·root·········(0)·root·········(0)······756·2023-08-05·23:02:05.000000·.PKGINFO | 3 | -rw-r--r--···0·root·········(0)·root·········(0)······756·2023-08-05·23:02:05.000000·.PKGINFO |
4 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2023-08-05·23:02:05.000000·usr/ | 4 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2023-08-05·23:02:05.000000·usr/ |
5 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2023-08-05·23:02:05.000000·usr/lib/ | 5 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2023-08-05·23:02:05.000000·usr/lib/ |
6 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2023-08-05·23:02:05.000000·usr/lib/python3.11/ | 6 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2023-08-05·23:02:05.000000·usr/lib/python3.11/ |
7 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2023-08-05·23:02:05.000000·usr/lib/python3.11/site-packages/ | 7 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2023-08-05·23:02:05.000000·usr/lib/python3.11/site-packages/ |
8 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2023-08-05·23:02:05.000000·usr/lib/python3.11/site-packages/pyudev/ | 8 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2023-08-05·23:02:05.000000·usr/lib/python3.11/site-packages/pyudev/ |
9 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2023-08-05·23:02:05.000000·usr/lib/python3.11/site-packages/pyudev-0.24.1.dist-info/ | 9 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2023-08-05·23:02:05.000000·usr/lib/python3.11/site-packages/pyudev-0.24.1.dist-info/ |
Offset 146, 36 lines modified | Offset 146, 36 lines modified | ||
146 | -rw-r--r--···0·root·········(0)·root·········(0)·····5675·2023-08-05·23:02:05.000000·usr/share/doc/python-pyudev/html/api/index.html | 146 | -rw-r--r--···0·root·········(0)·root·········(0)·····5675·2023-08-05·23:02:05.000000·usr/share/doc/python-pyudev/html/api/index.html |
147 | -rw-r--r--···0·root·········(0)·root·········(0)·····4860·2023-08-05·23:02:05.000000·usr/share/doc/python-pyudev/html/api/pyudev.glib.html | 147 | -rw-r--r--···0·root·········(0)·root·········(0)·····4860·2023-08-05·23:02:05.000000·usr/share/doc/python-pyudev/html/api/pyudev.glib.html |
148 | -rw-r--r--···0·root·········(0)·root·········(0)·····6286·2023-08-05·23:02:05.000000·usr/share/doc/python-pyudev/html/api/pyudev.html | 148 | -rw-r--r--···0·root·········(0)·root·········(0)·····6286·2023-08-05·23:02:05.000000·usr/share/doc/python-pyudev/html/api/pyudev.html |
149 | -rw-r--r--···0·root·········(0)·root·········(0)·····4899·2023-08-05·23:02:05.000000·usr/share/doc/python-pyudev/html/api/pyudev.pyqt4.html | 149 | -rw-r--r--···0·root·········(0)·root·········(0)·····4899·2023-08-05·23:02:05.000000·usr/share/doc/python-pyudev/html/api/pyudev.pyqt4.html |
150 | -rw-r--r--···0·root·········(0)·root·········(0)·····4415·2023-08-05·23:02:05.000000·usr/share/doc/python-pyudev/html/api/pyudev.pyqt5.html | 150 | -rw-r--r--···0·root·········(0)·root·········(0)·····4415·2023-08-05·23:02:05.000000·usr/share/doc/python-pyudev/html/api/pyudev.pyqt5.html |
151 | -rw-r--r--···0·root·········(0)·root·········(0)·····4914·2023-08-05·23:02:05.000000·usr/share/doc/python-pyudev/html/api/pyudev.pyside.html | 151 | -rw-r--r--···0·root·········(0)·root·········(0)·····4914·2023-08-05·23:02:05.000000·usr/share/doc/python-pyudev/html/api/pyudev.pyside.html |
152 | -rw-r--r--···0·root·········(0)·root·········(0)·····6724·2023-08-05·23:02:05.000000·usr/share/doc/python-pyudev/html/api/pyudev.wx.html | 152 | -rw-r--r--···0·root·········(0)·root·········(0)·····6724·2023-08-05·23:02:05.000000·usr/share/doc/python-pyudev/html/api/pyudev.wx.html |
153 | -rw-r--r--···0·root·········(0)·root·········(0)····43 | 153 | -rw-r--r--···0·root·········(0)·root·········(0)····43718·2023-08-05·23:02:05.000000·usr/share/doc/python-pyudev/html/changes.html |
154 | -rw-r--r--···0·root·········(0)·root·········(0)·····6707·2023-08-05·23:02:05.000000·usr/share/doc/python-pyudev/html/contribute.html | 154 | -rw-r--r--···0·root·········(0)·root·········(0)·····6707·2023-08-05·23:02:05.000000·usr/share/doc/python-pyudev/html/contribute.html |
155 | -rw-r--r--···0·root·········(0)·root·········(0)·····5730·2023-08-05·23:02:05.000000·usr/share/doc/python-pyudev/html/endorsements.html | 155 | -rw-r--r--···0·root·········(0)·root·········(0)·····5730·2023-08-05·23:02:05.000000·usr/share/doc/python-pyudev/html/endorsements.html |
156 | -rw-r--r--···0·root·········(0)·root·········(0)····17426·2023-08-05·23:02:05.000000·usr/share/doc/python-pyudev/html/genindex.html | 156 | -rw-r--r--···0·root·········(0)·root·········(0)····17426·2023-08-05·23:02:05.000000·usr/share/doc/python-pyudev/html/genindex.html |
157 | -rw-r--r--···0·root·········(0)·root·········(0)····48 | 157 | -rw-r--r--···0·root·········(0)·root·········(0)····48818·2023-08-05·23:02:05.000000·usr/share/doc/python-pyudev/html/guide.html |
158 | -rw-r--r--···0·root·········(0)·root·········(0)····13972·2023-08-05·23:02:05.000000·usr/share/doc/python-pyudev/html/index.html | 158 | -rw-r--r--···0·root·········(0)·root·········(0)····13972·2023-08-05·23:02:05.000000·usr/share/doc/python-pyudev/html/index.html |
159 | -rw-r--r--···0·root·········(0)·root·········(0)·····8 | 159 | -rw-r--r--···0·root·········(0)·root·········(0)·····8786·2023-08-05·23:02:05.000000·usr/share/doc/python-pyudev/html/install.html |
160 | -rw-r--r--···0·root·········(0)·root·········(0)····31131·2023-08-05·23:02:05.000000·usr/share/doc/python-pyudev/html/licencing.html | 160 | -rw-r--r--···0·root·········(0)·root·········(0)····31131·2023-08-05·23:02:05.000000·usr/share/doc/python-pyudev/html/licencing.html |
161 | -rw-r--r--···0·root·········(0)·root·········(0)·····8621·2023-08-05·23:02:05.000000·usr/share/doc/python-pyudev/html/modules.html | 161 | -rw-r--r--···0·root·········(0)·root·········(0)·····8621·2023-08-05·23:02:05.000000·usr/share/doc/python-pyudev/html/modules.html |
162 | -rw-r--r--···0·root·········(0)·root·········(0)·····1266·2023-08-05·23:02:05.000000·usr/share/doc/python-pyudev/html/objects.inv | 162 | -rw-r--r--···0·root·········(0)·root·········(0)·····1266·2023-08-05·23:02:05.000000·usr/share/doc/python-pyudev/html/objects.inv |
163 | -rw-r--r--···0·root·········(0)·root·········(0)·····5430·2023-08-05·23:02:05.000000·usr/share/doc/python-pyudev/html/py-modindex.html | 163 | -rw-r--r--···0·root·········(0)·root·········(0)·····5430·2023-08-05·23:02:05.000000·usr/share/doc/python-pyudev/html/py-modindex.html |
164 | -rw-r--r--···0·root·········(0)·root·········(0)····3 | 164 | -rw-r--r--···0·root·········(0)·root·········(0)····31472·2023-08-05·23:02:05.000000·usr/share/doc/python-pyudev/html/pyudev.core.html |
165 | -rw-r--r--···0·root·········(0)·root·········(0)·····4613·2023-08-05·23:02:05.000000·usr/share/doc/python-pyudev/html/pyudev.device.html | 165 | -rw-r--r--···0·root·········(0)·root·········(0)·····4613·2023-08-05·23:02:05.000000·usr/share/doc/python-pyudev/html/pyudev.device.html |
166 | -rw-r--r--···0·root·········(0)·root·········(0)····3 | 166 | -rw-r--r--···0·root·········(0)·root·········(0)····38441·2023-08-05·23:02:05.000000·usr/share/doc/python-pyudev/html/pyudev.discover.html |
167 | -rw-r--r--···0·root·········(0)·root·········(0)·····3916·2023-08-05·23:02:05.000000·usr/share/doc/python-pyudev/html/pyudev.glib.html | 167 | -rw-r--r--···0·root·········(0)·root·········(0)·····3916·2023-08-05·23:02:05.000000·usr/share/doc/python-pyudev/html/pyudev.glib.html |
168 | -rw-r--r--···0·root·········(0)·root·········(0)····21548·2023-08-05·23:02:05.000000·usr/share/doc/python-pyudev/html/pyudev.html | 168 | -rw-r--r--···0·root·········(0)·root·········(0)····21548·2023-08-05·23:02:05.000000·usr/share/doc/python-pyudev/html/pyudev.html |
169 | -rw-r--r--···0·root·········(0)·root·········(0)····4 | 169 | -rw-r--r--···0·root·········(0)·root·········(0)····46147·2023-08-05·23:02:05.000000·usr/share/doc/python-pyudev/html/pyudev.monitor.html |
170 | -rw-r--r--···0·root·········(0)·root·········(0)·····3923·2023-08-05·23:02:05.000000·usr/share/doc/python-pyudev/html/pyudev.pyqt4.html | 170 | -rw-r--r--···0·root·········(0)·root·········(0)·····3923·2023-08-05·23:02:05.000000·usr/share/doc/python-pyudev/html/pyudev.pyqt4.html |
171 | -rw-r--r--···0·root·········(0)·root·········(0)·····3923·2023-08-05·23:02:05.000000·usr/share/doc/python-pyudev/html/pyudev.pyqt5.html | 171 | -rw-r--r--···0·root·········(0)·root·········(0)·····3923·2023-08-05·23:02:05.000000·usr/share/doc/python-pyudev/html/pyudev.pyqt5.html |
172 | -rw-r--r--···0·root·········(0)·root·········(0)·····3930·2023-08-05·23:02:05.000000·usr/share/doc/python-pyudev/html/pyudev.pyside.html | 172 | -rw-r--r--···0·root·········(0)·root·········(0)·····3930·2023-08-05·23:02:05.000000·usr/share/doc/python-pyudev/html/pyudev.pyside.html |
173 | -rw-r--r--···0·root·········(0)·root·········(0)·····3937·2023-08-05·23:02:05.000000·usr/share/doc/python-pyudev/html/pyudev.pyside6.html | 173 | -rw-r--r--···0·root·········(0)·root·········(0)·····3937·2023-08-05·23:02:05.000000·usr/share/doc/python-pyudev/html/pyudev.pyside6.html |
174 | -rw-r--r--···0·root·········(0)·root·········(0)·····4005·2023-08-05·23:02:05.000000·usr/share/doc/python-pyudev/html/pyudev.version.html | 174 | -rw-r--r--···0·root·········(0)·root·········(0)·····4005·2023-08-05·23:02:05.000000·usr/share/doc/python-pyudev/html/pyudev.version.html |
175 | -rw-r--r--···0·root·········(0)·root·········(0)····12874·2023-08-05·23:02:05.000000·usr/share/doc/python-pyudev/html/pyudev.wx.html | 175 | -rw-r--r--···0·root·········(0)·root·········(0)····12874·2023-08-05·23:02:05.000000·usr/share/doc/python-pyudev/html/pyudev.wx.html |
176 | -rw-r--r--···0·root·········(0)·root·········(0)·····4246·2023-08-05·23:02:05.000000·usr/share/doc/python-pyudev/html/search.html | 176 | -rw-r--r--···0·root·········(0)·root·········(0)·····4246·2023-08-05·23:02:05.000000·usr/share/doc/python-pyudev/html/search.html |
177 | -rw-r--r--···0·root·········(0)·root·········(0)····45311·2023-08-05·23:02:05.000000·usr/share/doc/python-pyudev/html/searchindex.js | 177 | -rw-r--r--···0·root·········(0)·root·········(0)····45311·2023-08-05·23:02:05.000000·usr/share/doc/python-pyudev/html/searchindex.js |
178 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2023-08-05·23:02:05.000000·usr/share/doc/python-pyudev/html/tests/ | 178 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2023-08-05·23:02:05.000000·usr/share/doc/python-pyudev/html/tests/ |
179 | -rw-r--r--···0·root·········(0)·root·········(0)·····7510·2023-08-05·23:02:05.000000·usr/share/doc/python-pyudev/html/tests/index.html | 179 | -rw-r--r--···0·root·········(0)·root·········(0)·····7510·2023-08-05·23:02:05.000000·usr/share/doc/python-pyudev/html/tests/index.html |
180 | -rw-r--r--···0·root·········(0)·root·········(0)····10 | 180 | -rw-r--r--···0·root·········(0)·root·········(0)····11071·2023-08-05·23:02:05.000000·usr/share/doc/python-pyudev/html/tests/plugins.html |
181 | -rw-r--r--···0·root·········(0)·root·········(0)·····6248·2023-08-05·23:02:05.000000·usr/share/doc/python-pyudev/html/tests/running.html | 181 | -rw-r--r--···0·root·········(0)·root·········(0)·····6248·2023-08-05·23:02:05.000000·usr/share/doc/python-pyudev/html/tests/running.html |
Offset 1, 11 lines modified | Offset 1, 11 lines modified | ||
1 | #mtree | 1 | #mtree |
2 | /set·type=file·uid=0·gid=0·mode=644 | 2 | /set·type=file·uid=0·gid=0·mode=644 |
3 | ./.BUILDINFO·time=1691276525.0·size=9167·md5digest=8003fdb7d2a4da759b8a81a1ecd4f8f6·sha256digest=6746f3cfbe8ac4427e423f8d1488790e67a8595a34f96343b9d27673c3351c72 | 3 | ./.BUILDINFO·time=1691276525.0·size=9167·md5digest=8003fdb7d2a4da759b8a81a1ecd4f8f6·sha256digest=6746f3cfbe8ac4427e423f8d1488790e67a8595a34f96343b9d27673c3351c72 |
4 | ./.PKGINFO·time=1691276525.0·size=756·md5digest= | 4 | ./.PKGINFO·time=1691276525.0·size=756·md5digest=89412746a5b39ade0023463f986e1185·sha256digest=0b4f9b73c075d4b17176e946098e9dc1f46db160e18e700485ea037702f71dd4 |
5 | /set·mode=755 | 5 | /set·mode=755 |
6 | ./usr·time=1691276525.0·type=dir | 6 | ./usr·time=1691276525.0·type=dir |
7 | ./usr/lib·time=1691276525.0·type=dir | 7 | ./usr/lib·time=1691276525.0·type=dir |
8 | ./usr/lib/python3.11·time=1691276525.0·type=dir | 8 | ./usr/lib/python3.11·time=1691276525.0·type=dir |
9 | ./usr/lib/python3.11/site-packages·time=1691276525.0·type=dir | 9 | ./usr/lib/python3.11/site-packages·time=1691276525.0·type=dir |
10 | /set·mode=644 | 10 | /set·mode=644 |
11 | ./usr/lib/python3.11/site-packages/pyudev·time=1691276525.0·mode=755·type=dir | 11 | ./usr/lib/python3.11/site-packages/pyudev·time=1691276525.0·mode=755·type=dir |
Offset 95, 31 lines modified | Offset 95, 31 lines modified | ||
95 | ./usr/lib/python3.11/site-packages/pyudev-0.24.1.dist-info/WHEEL·time=1691276525.0·size=92·md5digest=73c4f1c5f98f6dd6e608649446740e78·sha256digest=a6472d658cd44b8018567e9d27eef7ebb389662bc5d9ef1103d6ff6418e27f5f | 95 | ./usr/lib/python3.11/site-packages/pyudev-0.24.1.dist-info/WHEEL·time=1691276525.0·size=92·md5digest=73c4f1c5f98f6dd6e608649446740e78·sha256digest=a6472d658cd44b8018567e9d27eef7ebb389662bc5d9ef1103d6ff6418e27f5f |
96 | ./usr/lib/python3.11/site-packages/pyudev-0.24.1.dist-info/top_level.txt·time=1691276525.0·size=7·md5digest=03e6f220f5dafba17e7653b90728a76c·sha256digest=55a858e8b6cf9c81e36bf33891d49bb8e23e152c4bb578224209c4231d51de1a | 96 | ./usr/lib/python3.11/site-packages/pyudev-0.24.1.dist-info/top_level.txt·time=1691276525.0·size=7·md5digest=03e6f220f5dafba17e7653b90728a76c·sha256digest=55a858e8b6cf9c81e36bf33891d49bb8e23e152c4bb578224209c4231d51de1a |
97 | ./usr/share·time=1691276525.0·mode=755·type=dir | 97 | ./usr/share·time=1691276525.0·mode=755·type=dir |
98 | ./usr/share/doc·time=1691276525.0·mode=755·type=dir | 98 | ./usr/share/doc·time=1691276525.0·mode=755·type=dir |
99 | ./usr/share/doc/python-pyudev·time=1691276525.0·mode=755·type=dir | 99 | ./usr/share/doc/python-pyudev·time=1691276525.0·mode=755·type=dir |
100 | ./usr/share/doc/python-pyudev/html·time=1691276525.0·mode=755·type=dir | 100 | ./usr/share/doc/python-pyudev/html·time=1691276525.0·mode=755·type=dir |
101 | ./usr/share/doc/python-pyudev/html/.buildinfo·time=1691276525.0·size=230·md5digest=4ebf8a32c05d3ac6d66439123709ae7e·sha256digest=59ba7496fa7d16ec726384095a2a07fd327d2da68f5cb4adf0b8bf3d4aa3a616 | 101 | ./usr/share/doc/python-pyudev/html/.buildinfo·time=1691276525.0·size=230·md5digest=4ebf8a32c05d3ac6d66439123709ae7e·sha256digest=59ba7496fa7d16ec726384095a2a07fd327d2da68f5cb4adf0b8bf3d4aa3a616 |
102 | ./usr/share/doc/python-pyudev/html/changes.html·time=1691276525.0·size=43 | 102 | ./usr/share/doc/python-pyudev/html/changes.html·time=1691276525.0·size=43718·md5digest=36ad8958d709e1e9320d983fb36ec663·sha256digest=cb74e6868e7ab8358d666634eb2be92936ac30f582aa442c3f1a9fdb122771f5 |
103 | ./usr/share/doc/python-pyudev/html/contribute.html·time=1691276525.0·size=6707·md5digest=3580f1bde1cce94847f07822688b97c5·sha256digest=fcf3ace84ceb1fb9308584838d22ca064d3f9393069be573c40883bba2529986 | 103 | ./usr/share/doc/python-pyudev/html/contribute.html·time=1691276525.0·size=6707·md5digest=3580f1bde1cce94847f07822688b97c5·sha256digest=fcf3ace84ceb1fb9308584838d22ca064d3f9393069be573c40883bba2529986 |
104 | ./usr/share/doc/python-pyudev/html/endorsements.html·time=1691276525.0·size=5730·md5digest=de6d9c8661ef8e3a1b3dc242b8c237e2·sha256digest=6076f3785f8cc80d8a882deda8e3e80b31482c291982d13c2aca0e1b33d8d1dd | 104 | ./usr/share/doc/python-pyudev/html/endorsements.html·time=1691276525.0·size=5730·md5digest=de6d9c8661ef8e3a1b3dc242b8c237e2·sha256digest=6076f3785f8cc80d8a882deda8e3e80b31482c291982d13c2aca0e1b33d8d1dd |
105 | ./usr/share/doc/python-pyudev/html/genindex.html·time=1691276525.0·size=17426·md5digest=1652d929457f664666d61afa9377a34e·sha256digest=f46d058befa39a9b6eea49142722c4f0f89eef0498e895d980ac0a269bec4158 | 105 | ./usr/share/doc/python-pyudev/html/genindex.html·time=1691276525.0·size=17426·md5digest=1652d929457f664666d61afa9377a34e·sha256digest=f46d058befa39a9b6eea49142722c4f0f89eef0498e895d980ac0a269bec4158 |
106 | ./usr/share/doc/python-pyudev/html/guide.html·time=1691276525.0·size=48 | 106 | ./usr/share/doc/python-pyudev/html/guide.html·time=1691276525.0·size=48818·md5digest=ca13f07528eaeadba9ad5f513353a910·sha256digest=5fb80e83ff0c7bab57d3b3ea0a063bf7fa3c435a9b4534ca47e75c9d89ff541a |
107 | ./usr/share/doc/python-pyudev/html/index.html·time=1691276525.0·size=13972·md5digest=e72f05d8e1a1b03e41b6a2fb82c998a4·sha256digest=62be5f1774c2851d8422ee563f4201e075afcba26053aac999216985f8f2a5a4 | 107 | ./usr/share/doc/python-pyudev/html/index.html·time=1691276525.0·size=13972·md5digest=e72f05d8e1a1b03e41b6a2fb82c998a4·sha256digest=62be5f1774c2851d8422ee563f4201e075afcba26053aac999216985f8f2a5a4 |
108 | ./usr/share/doc/python-pyudev/html/install.html·time=1691276525.0·size=8 | 108 | ./usr/share/doc/python-pyudev/html/install.html·time=1691276525.0·size=8786·md5digest=2818dfa2caea77c74d3649ae32e6f75b·sha256digest=f650971d490a03dba6bb9a3b8983b08ed4870f5163a27ff02ca5758658f84bdd |
109 | ./usr/share/doc/python-pyudev/html/licencing.html·time=1691276525.0·size=31131·md5digest=a3f93fcfbe3970d1b56b5a25b4aaa791·sha256digest=1511acc9e406635b89f377fd4251271d89b26aed6c225ccbb2c1414ac4797d07 | 109 | ./usr/share/doc/python-pyudev/html/licencing.html·time=1691276525.0·size=31131·md5digest=a3f93fcfbe3970d1b56b5a25b4aaa791·sha256digest=1511acc9e406635b89f377fd4251271d89b26aed6c225ccbb2c1414ac4797d07 |
110 | ./usr/share/doc/python-pyudev/html/modules.html·time=1691276525.0·size=8621·md5digest=b0403d438272849feb2d405e080a386f·sha256digest=c7772f11e4360dd5d1ea8481b7c8d2ba15b71d8fca4868380001532fbf4596b8 | 110 | ./usr/share/doc/python-pyudev/html/modules.html·time=1691276525.0·size=8621·md5digest=b0403d438272849feb2d405e080a386f·sha256digest=c7772f11e4360dd5d1ea8481b7c8d2ba15b71d8fca4868380001532fbf4596b8 |
111 | ./usr/share/doc/python-pyudev/html/objects.inv·time=1691276525.0·size=1266·md5digest=00dd564f58432aba388b47ab0f88a853·sha256digest=81926a028fcf883afcf0254bb6b19c1ff307801a6935d1174670673110462b37 | 111 | ./usr/share/doc/python-pyudev/html/objects.inv·time=1691276525.0·size=1266·md5digest=00dd564f58432aba388b47ab0f88a853·sha256digest=81926a028fcf883afcf0254bb6b19c1ff307801a6935d1174670673110462b37 |
112 | ./usr/share/doc/python-pyudev/html/py-modindex.html·time=1691276525.0·size=5430·md5digest=062c482571c17bb513131d2a2667e4d2·sha256digest=da205978280bdaed40e9122068fc5f59853de36acb92dbdfd10501e5d1dbe806 | 112 | ./usr/share/doc/python-pyudev/html/py-modindex.html·time=1691276525.0·size=5430·md5digest=062c482571c17bb513131d2a2667e4d2·sha256digest=da205978280bdaed40e9122068fc5f59853de36acb92dbdfd10501e5d1dbe806 |
113 | ./usr/share/doc/python-pyudev/html/pyudev.core.html·time=1691276525.0·size=3 | 113 | ./usr/share/doc/python-pyudev/html/pyudev.core.html·time=1691276525.0·size=31472·md5digest=a8fc393aec1a8096bcdf3a06305cd54a·sha256digest=ed47ae48292ab0478dba3ab79e249975504d7b7f4b5e7bc197c4b8b04e9d7698 |
114 | ./usr/share/doc/python-pyudev/html/pyudev.device.html·time=1691276525.0·size=4613·md5digest=bed627ecaccd88015dc17fe1f669e75f·sha256digest=25441e23f06e32b7cbcd7d8a627d34cf7cebe84c857e0d0fc900a4f4858243d7 | 114 | ./usr/share/doc/python-pyudev/html/pyudev.device.html·time=1691276525.0·size=4613·md5digest=bed627ecaccd88015dc17fe1f669e75f·sha256digest=25441e23f06e32b7cbcd7d8a627d34cf7cebe84c857e0d0fc900a4f4858243d7 |
115 | ./usr/share/doc/python-pyudev/html/pyudev.discover.html·time=1691276525.0·size=3 | 115 | ./usr/share/doc/python-pyudev/html/pyudev.discover.html·time=1691276525.0·size=38441·md5digest=a888a979c9187c8f40e8cd61d097aee4·sha256digest=53e3cc36b5fda11a4c4d88ed3ce8ef8b9bb4ba5d3c899b0d7e2d4377a42304f3 |
116 | ./usr/share/doc/python-pyudev/html/pyudev.glib.html·time=1691276525.0·size=3916·md5digest=9261a2af5172bc2bfbbc0014e3d45f29·sha256digest=9a030ae46289341824c7fa17154e02261792e79602569f993458db0251ed758c | 116 | ./usr/share/doc/python-pyudev/html/pyudev.glib.html·time=1691276525.0·size=3916·md5digest=9261a2af5172bc2bfbbc0014e3d45f29·sha256digest=9a030ae46289341824c7fa17154e02261792e79602569f993458db0251ed758c |
117 | ./usr/share/doc/python-pyudev/html/pyudev.html·time=1691276525.0·size=21548·md5digest=f7672f9de684319e5c8e081ce53076cb·sha256digest=9bb4d7aad17bc23ee36abe41869a130481c43a5f53c42c0b196e33ec3d300c03 | 117 | ./usr/share/doc/python-pyudev/html/pyudev.html·time=1691276525.0·size=21548·md5digest=f7672f9de684319e5c8e081ce53076cb·sha256digest=9bb4d7aad17bc23ee36abe41869a130481c43a5f53c42c0b196e33ec3d300c03 |
118 | ./usr/share/doc/python-pyudev/html/pyudev.monitor.html·time=1691276525.0·size=4 | 118 | ./usr/share/doc/python-pyudev/html/pyudev.monitor.html·time=1691276525.0·size=46147·md5digest=c8f2f376a29fbddb39294be039467a90·sha256digest=a268b59b9d8bf396cce9b7b2a1e6326d6d80b8defeabc9d7ed622bb957022ea7 |
119 | ./usr/share/doc/python-pyudev/html/pyudev.pyqt4.html·time=1691276525.0·size=3923·md5digest=dfc408284b813bb1dc02a174b414e876·sha256digest=23fa5d00c8409d14e4632414aaf818c60a8b6e4ca9c1eba7fcaf41c86f600cfd | 119 | ./usr/share/doc/python-pyudev/html/pyudev.pyqt4.html·time=1691276525.0·size=3923·md5digest=dfc408284b813bb1dc02a174b414e876·sha256digest=23fa5d00c8409d14e4632414aaf818c60a8b6e4ca9c1eba7fcaf41c86f600cfd |
120 | ./usr/share/doc/python-pyudev/html/pyudev.pyqt5.html·time=1691276525.0·size=3923·md5digest=165c34812ff92f2cc6619ccc3b3db5b3·sha256digest=19b1290c6b6b26c4e21575538eae3328e70c17b7afe7b314d639ce552a50b7d0 | 120 | ./usr/share/doc/python-pyudev/html/pyudev.pyqt5.html·time=1691276525.0·size=3923·md5digest=165c34812ff92f2cc6619ccc3b3db5b3·sha256digest=19b1290c6b6b26c4e21575538eae3328e70c17b7afe7b314d639ce552a50b7d0 |
121 | ./usr/share/doc/python-pyudev/html/pyudev.pyside.html·time=1691276525.0·size=3930·md5digest=bdeb8a0f97d2a9b473895407b439e9b7·sha256digest=d6104fd395a3b96f87771c31524e99f24f69b0fa49f937c767f4d2dba81a87a6 | 121 | ./usr/share/doc/python-pyudev/html/pyudev.pyside.html·time=1691276525.0·size=3930·md5digest=bdeb8a0f97d2a9b473895407b439e9b7·sha256digest=d6104fd395a3b96f87771c31524e99f24f69b0fa49f937c767f4d2dba81a87a6 |
122 | ./usr/share/doc/python-pyudev/html/pyudev.pyside6.html·time=1691276525.0·size=3937·md5digest=5a2303c4378da07828c1bbe2de17fdc8·sha256digest=75187c033c383fef6bf73a8348814bc17af36d12f2cd4a33aa92070b34888251 | 122 | ./usr/share/doc/python-pyudev/html/pyudev.pyside6.html·time=1691276525.0·size=3937·md5digest=5a2303c4378da07828c1bbe2de17fdc8·sha256digest=75187c033c383fef6bf73a8348814bc17af36d12f2cd4a33aa92070b34888251 |
123 | ./usr/share/doc/python-pyudev/html/pyudev.version.html·time=1691276525.0·size=4005·md5digest=efb3392131e268947cecfe619c93cd7c·sha256digest=f6163aeeb71541ae223b733e1d648da67f5acf664b10bbdd1bafbe92c2606628 | 123 | ./usr/share/doc/python-pyudev/html/pyudev.version.html·time=1691276525.0·size=4005·md5digest=efb3392131e268947cecfe619c93cd7c·sha256digest=f6163aeeb71541ae223b733e1d648da67f5acf664b10bbdd1bafbe92c2606628 |
124 | ./usr/share/doc/python-pyudev/html/pyudev.wx.html·time=1691276525.0·size=12874·md5digest=7b40bcbb95b8129db46b9ae4c6e709e6·sha256digest=03af3f8d951a03a22872dfd6720e7209f44bc139f32e9dbab7d806f8354c0d98 | 124 | ./usr/share/doc/python-pyudev/html/pyudev.wx.html·time=1691276525.0·size=12874·md5digest=7b40bcbb95b8129db46b9ae4c6e709e6·sha256digest=03af3f8d951a03a22872dfd6720e7209f44bc139f32e9dbab7d806f8354c0d98 |
125 | ./usr/share/doc/python-pyudev/html/search.html·time=1691276525.0·size=4246·md5digest=069859c54a59bbf948a5b10b1b32fcdc·sha256digest=d074f70fd6553f9e1433dc276843fc37b7bf82d800a1ee9ec65163723bc9bdf4 | 125 | ./usr/share/doc/python-pyudev/html/search.html·time=1691276525.0·size=4246·md5digest=069859c54a59bbf948a5b10b1b32fcdc·sha256digest=d074f70fd6553f9e1433dc276843fc37b7bf82d800a1ee9ec65163723bc9bdf4 |
Offset 176, 9 lines modified | Offset 176, 9 lines modified | ||
176 | ./usr/share/doc/python-pyudev/html/api/pyudev.html·time=1691276525.0·size=6286·md5digest=98497ac7404d0a3d0938cb11564796dc·sha256digest=c44e0a935a737ab5dd0d0897f746cd13e53772d98475d63b298d88a084130e02 | 176 | ./usr/share/doc/python-pyudev/html/api/pyudev.html·time=1691276525.0·size=6286·md5digest=98497ac7404d0a3d0938cb11564796dc·sha256digest=c44e0a935a737ab5dd0d0897f746cd13e53772d98475d63b298d88a084130e02 |
177 | ./usr/share/doc/python-pyudev/html/api/pyudev.pyqt4.html·time=1691276525.0·size=4899·md5digest=3f3700f779d9cf27cda26271d1993dd9·sha256digest=8632ee31feb45cb137d2696cae60bf75d7c2c3046c6444c6a479e4def6b24abd | 177 | ./usr/share/doc/python-pyudev/html/api/pyudev.pyqt4.html·time=1691276525.0·size=4899·md5digest=3f3700f779d9cf27cda26271d1993dd9·sha256digest=8632ee31feb45cb137d2696cae60bf75d7c2c3046c6444c6a479e4def6b24abd |
178 | ./usr/share/doc/python-pyudev/html/api/pyudev.pyqt5.html·time=1691276525.0·size=4415·md5digest=5efa629344e3bc11dbcd51c5a58eae1e·sha256digest=201e59bc28a9318617eddc3d5a150c9bb5cfaf1bd91738dda54e3c5cbb578074 | 178 | ./usr/share/doc/python-pyudev/html/api/pyudev.pyqt5.html·time=1691276525.0·size=4415·md5digest=5efa629344e3bc11dbcd51c5a58eae1e·sha256digest=201e59bc28a9318617eddc3d5a150c9bb5cfaf1bd91738dda54e3c5cbb578074 |
179 | ./usr/share/doc/python-pyudev/html/api/pyudev.pyside.html·time=1691276525.0·size=4914·md5digest=fc55f1c1441921d733856aebeccfe4fd·sha256digest=7c5f7cf1ad014a6f6fdaed7f13f4702fd17b4250e2b72828ba8cf872906fc713 | 179 | ./usr/share/doc/python-pyudev/html/api/pyudev.pyside.html·time=1691276525.0·size=4914·md5digest=fc55f1c1441921d733856aebeccfe4fd·sha256digest=7c5f7cf1ad014a6f6fdaed7f13f4702fd17b4250e2b72828ba8cf872906fc713 |
180 | ./usr/share/doc/python-pyudev/html/api/pyudev.wx.html·time=1691276525.0·size=6724·md5digest=7013ddf2b5b625ddda516428e3af1ba6·sha256digest=aa7cb5df53fda19acbd6f5671125d9d39e434b954905a5bfc4a4a5dd6f2d767e | 180 | ./usr/share/doc/python-pyudev/html/api/pyudev.wx.html·time=1691276525.0·size=6724·md5digest=7013ddf2b5b625ddda516428e3af1ba6·sha256digest=aa7cb5df53fda19acbd6f5671125d9d39e434b954905a5bfc4a4a5dd6f2d767e |
181 | ./usr/share/doc/python-pyudev/html/tests·time=1691276525.0·mode=755·type=dir | 181 | ./usr/share/doc/python-pyudev/html/tests·time=1691276525.0·mode=755·type=dir |
182 | ./usr/share/doc/python-pyudev/html/tests/index.html·time=1691276525.0·size=7510·md5digest=d5cc347c28cab9448b81ab05f69ccc55·sha256digest=e79c6e0499c18068017813fb50e21811db737048daec869ac28aaac36e22af57 | 182 | ./usr/share/doc/python-pyudev/html/tests/index.html·time=1691276525.0·size=7510·md5digest=d5cc347c28cab9448b81ab05f69ccc55·sha256digest=e79c6e0499c18068017813fb50e21811db737048daec869ac28aaac36e22af57 |
183 | ./usr/share/doc/python-pyudev/html/tests/plugins.html·time=1691276525.0·size=10 | 183 | ./usr/share/doc/python-pyudev/html/tests/plugins.html·time=1691276525.0·size=11071·md5digest=5a0a1468fe04a9abe1e522da3e3fbf51·sha256digest=7ddb83c42ba2a5c87d77ba58921915f88d15c8e2053fc1f258d37d3fdc346528 |
184 | ./usr/share/doc/python-pyudev/html/tests/running.html·time=1691276525.0·size=6248·md5digest=fc25eb5f63e20e95f1ad02f3eb369b42·sha256digest=c78732f5d724d96279e63be470bad0aa905d379b9307c9edc477d0faa9b501df | 184 | ./usr/share/doc/python-pyudev/html/tests/running.html·time=1691276525.0·size=6248·md5digest=fc25eb5f63e20e95f1ad02f3eb369b42·sha256digest=c78732f5d724d96279e63be470bad0aa905d379b9307c9edc477d0faa9b501df |
Offset 3, 15 lines modified | Offset 3, 15 lines modified | ||
3 | pkgname·=·python-pyudev | 3 | pkgname·=·python-pyudev |
4 | pkgbase·=·python-pyudev | 4 | pkgbase·=·python-pyudev |
5 | pkgver·=·0.24.1-1 | 5 | pkgver·=·0.24.1-1 |
6 | pkgdesc·=·Python·bindings·to·libudev | 6 | pkgdesc·=·Python·bindings·to·libudev |
7 | url·=·https://github.com/pyudev/pyudev | 7 | url·=·https://github.com/pyudev/pyudev |
8 | builddate·=·1691276525 | 8 | builddate·=·1691276525 |
9 | packager·=·Reproducible·Arch·Linux·tests·<reproducible@archlinux.org> | 9 | packager·=·Reproducible·Arch·Linux·tests·<reproducible@archlinux.org> |
10 | size·=·11 | 10 | size·=·1132444 |
11 | arch·=·any | 11 | arch·=·any |
12 | license·=·LGPL | 12 | license·=·LGPL |
13 | depend·=·python-six | 13 | depend·=·python-six |
14 | depend·=·systemd | 14 | depend·=·systemd |
15 | optdepend·=·python-pyqt5:·PyQt·integration | 15 | optdepend·=·python-pyqt5:·PyQt·integration |
16 | optdepend·=·pyside2:·PySide·integration | 16 | optdepend·=·pyside2:·PySide·integration |
17 | optdepend·=·python-wxpython:·WX·integration | 17 | optdepend·=·python-wxpython:·WX·integration |
Offset 271, 15 lines modified | Offset 271, 15 lines modified | ||
271 | </section> | 271 | </section> |
272 | <section·id="mar-1-2012"> | 272 | <section·id="mar-1-2012"> |
273 | <h2>0.15·(Mar·1,·2012)<a·class="headerlink"·href="#mar-1-2012"·title="Permalink·to·this·heading">¶</a></h2> | 273 | <h2>0.15·(Mar·1,·2012)<a·class="headerlink"·href="#mar-1-2012"·title="Permalink·to·this·heading">¶</a></h2> |
274 | <ul·class="simple"> | 274 | <ul·class="simple"> |
275 | <li><p>#20:·Add·<code·class="xref·py·py-meth·docutils·literal·notranslate"><span·class="pre">remove_filter()</span></code>.</p></li> | 275 | <li><p>#20:·Add·<code·class="xref·py·py-meth·docutils·literal·notranslate"><span·class="pre">remove_filter()</span></code>.</p></li> |
276 | <li><p>#40:·Add·user·guide·to·the·documentation.</p></li> | 276 | <li><p>#40:·Add·user·guide·to·the·documentation.</p></li> |
277 | <li><p>#39:·Add·<code·class="xref·py·py-meth·docutils·literal·notranslate"><span·class="pre">pyudev.Device.from_device_file()</span></code>.</p></li> | 277 | <li><p>#39:·Add·<code·class="xref·py·py-meth·docutils·literal·notranslate"><span·class="pre">pyudev.Device.from_device_file()</span></code>.</p></li> |
278 | <li><p><code·class="xref·py·py-data·docutils·literal·notranslate"><span·class="pre">errno.EINVAL</span></code>·from·underlying·libudev·functions·causes | 278 | <li><p><a·class="reference·external"·href="https://docs.python.org/3/library/errno.html#errno.EINVAL"·title="(in·Python·v3.11)"><code·class="xref·py·py-data·docutils·literal·notranslate"><span·class="pre">errno.EINVAL</span></code></a>·from·underlying·libudev·functions·causes |
279 | <code·class="xref·py·py-exc·docutils·literal·notranslate"><span·class="pre">ValueError</span></code>·instead·of·<code·class="xref·py·py-exc·docutils·literal·notranslate"><span·class="pre">EnvironmentError</span></code>.</p></li> | 279 | <code·class="xref·py·py-exc·docutils·literal·notranslate"><span·class="pre">ValueError</span></code>·instead·of·<code·class="xref·py·py-exc·docutils·literal·notranslate"><span·class="pre">EnvironmentError</span></code>.</p></li> |
280 | <li><p><code·class="xref·py·py-class·docutils·literal·notranslate"><span·class="pre">pyudev.MonitorObserver</span></code>·calls | 280 | <li><p><code·class="xref·py·py-class·docutils·literal·notranslate"><span·class="pre">pyudev.MonitorObserver</span></code>·calls |
281 | <code·class="xref·py·py-meth·docutils·literal·notranslate"><span·class="pre">pyudev.Monitor.enable_receiving()</span></code>·when·started.</p></li> | 281 | <code·class="xref·py·py-meth·docutils·literal·notranslate"><span·class="pre">pyudev.Monitor.enable_receiving()</span></code>·when·started.</p></li> |
282 | <li><p>#20:·<code·class="xref·py·py-meth·docutils·literal·notranslate"><span·class="pre">pyudev.Monitor.filter_by()</span></code>·and | 282 | <li><p>#20:·<code·class="xref·py·py-meth·docutils·literal·notranslate"><span·class="pre">pyudev.Monitor.filter_by()</span></code>·and |
283 | <code·class="xref·py·py-meth·docutils·literal·notranslate"><span·class="pre">pyudev.Monitor.filter_by_tag()</span></code>·can·be·called·after | 283 | <code·class="xref·py·py-meth·docutils·literal·notranslate"><span·class="pre">pyudev.Monitor.filter_by_tag()</span></code>·can·be·called·after |
284 | <code·class="xref·py·py-meth·docutils·literal·notranslate"><span·class="pre">pyudev.Monitor.enable_receiving()</span></code>.</p></li> | 284 | <code·class="xref·py·py-meth·docutils·literal·notranslate"><span·class="pre">pyudev.Monitor.enable_receiving()</span></code>.</p></li> |
285 | </ul> | 285 | </ul> |
Offset 333, 15 lines modified | Offset 333, 15 lines modified | ||
333 | <section·id="apr-20-2011"> | 333 | <section·id="apr-20-2011"> |
334 | <h2>0.10·(Apr·20,·2011)<a·class="headerlink"·href="#apr-20-2011"·title="Permalink·to·this·heading">¶</a></h2> | 334 | <h2>0.10·(Apr·20,·2011)<a·class="headerlink"·href="#apr-20-2011"·title="Permalink·to·this·heading">¶</a></h2> |
335 | <ul·class="simple"> | 335 | <ul·class="simple"> |
336 | <li><p>Add·<code·class="xref·py·py-attr·docutils·literal·notranslate"><span·class="pre">pyudev.__version_info__</span></code></p></li> | 336 | <li><p>Add·<code·class="xref·py·py-attr·docutils·literal·notranslate"><span·class="pre">pyudev.__version_info__</span></code></p></li> |
337 | <li><p>Add·<code·class="xref·py·py-attr·docutils·literal·notranslate"><span·class="pre">pyudev.Device.device_type</span></code></p></li> | 337 | <li><p>Add·<code·class="xref·py·py-attr·docutils·literal·notranslate"><span·class="pre">pyudev.Device.device_type</span></code></p></li> |
338 | <li><p><code·class="xref·py·py-class·docutils·literal·notranslate"><span·class="pre">pyudev.Context</span></code>,·<code·class="xref·py·py-class·docutils·literal·notranslate"><span·class="pre">pyudev.Enumerator</span></code>,·<code·class="xref·py·py-class·docutils·literal·notranslate"><span·class="pre">pyudev.Device</span></code> | 338 | <li><p><code·class="xref·py·py-class·docutils·literal·notranslate"><span·class="pre">pyudev.Context</span></code>,·<code·class="xref·py·py-class·docutils·literal·notranslate"><span·class="pre">pyudev.Enumerator</span></code>,·<code·class="xref·py·py-class·docutils·literal·notranslate"><span·class="pre">pyudev.Device</span></code> |
339 | and·<code·class="xref·py·py-class·docutils·literal·notranslate"><span·class="pre">pyudev.Monitor</span></code>·can·directly·be·passed·to | 339 | and·<code·class="xref·py·py-class·docutils·literal·notranslate"><span·class="pre">pyudev.Monitor</span></code>·can·directly·be·passed·to |
340 | <code·class="xref·py·py-mod·docutils·literal·notranslate"><span·class="pre">ctypes</span></code>-wrapped·functions.</p></li> | 340 | <a·class="reference·external"·href="https://docs.python.org/3/library/ctypes.html#module-ctypes"·title="(in·Python·v3.11)"><code·class="xref·py·py-mod·docutils·literal·notranslate"><span·class="pre">ctypes</span></code></a>-wrapped·functions.</p></li> |
341 | <li><p>#24:·Add·<code·class="xref·py·py-attr·docutils·literal·notranslate"><span·class="pre">pyudev.Context.run_path</span></code>.</p></li> | 341 | <li><p>#24:·Add·<code·class="xref·py·py-attr·docutils·literal·notranslate"><span·class="pre">pyudev.Context.run_path</span></code>.</p></li> |
342 | </ul> | 342 | </ul> |
343 | </section> | 343 | </section> |
344 | <section·id="mar-09-2011"> | 344 | <section·id="mar-09-2011"> |
345 | <h2>0.9·(Mar·09,·2011)<a·class="headerlink"·href="#mar-09-2011"·title="Permalink·to·this·heading">¶</a></h2> | 345 | <h2>0.9·(Mar·09,·2011)<a·class="headerlink"·href="#mar-09-2011"·title="Permalink·to·this·heading">¶</a></h2> |
346 | <ul·class="simple"> | 346 | <ul·class="simple"> |
347 | <li><p>#21:·Add·<code·class="xref·py·py-meth·docutils·literal·notranslate"><span·class="pre">pyudev.Device.find_parent()</span></code>.</p></li> | 347 | <li><p>#21:·Add·<code·class="xref·py·py-meth·docutils·literal·notranslate"><span·class="pre">pyudev.Device.find_parent()</span></code>.</p></li> |
Offset 332, 15 lines modified | Offset 332, 15 lines modified | ||
332 | <span·class="gp">...</span> | 332 | <span·class="gp">...</span> |
333 | <span·class="gp">>>>·</span><span·class="n">observer</span>·<span·class="o">=</span>·<span·class="n">pyudev</span><span·class="o">.</span><span·class="n">MonitorObserver</span><span·class="p">(</span><span·class="n">monitor</span><span·class="p">,</span>·<span·class="n">callback</span><span·class="o">=</span><span·class="n">log_event</span><span·class="p">)</span> | 333 | <span·class="gp">>>>·</span><span·class="n">observer</span>·<span·class="o">=</span>·<span·class="n">pyudev</span><span·class="o">.</span><span·class="n">MonitorObserver</span><span·class="p">(</span><span·class="n">monitor</span><span·class="p">,</span>·<span·class="n">callback</span><span·class="o">=</span><span·class="n">log_event</span><span·class="p">)</span> |
334 | <span·class="gp">>>>·</span><span·class="n">observer</span><span·class="o">.</span><span·class="n">start</span><span·class="p">()</span> | 334 | <span·class="gp">>>>·</span><span·class="n">observer</span><span·class="o">.</span><span·class="n">start</span><span·class="p">()</span> |
335 | </pre></div> | 335 | </pre></div> |
336 | </div> | 336 | </div> |
337 | <p>The·<code·class="docutils·literal·notranslate"><span·class="pre">observer</span></code>·gets·a·callback·(<code·class="docutils·literal·notranslate"><span·class="pre">log_event()</span></code>·in·this·case)·which·is | 337 | <p>The·<code·class="docutils·literal·notranslate"><span·class="pre">observer</span></code>·gets·a·callback·(<code·class="docutils·literal·notranslate"><span·class="pre">log_event()</span></code>·in·this·case)·which·is |
338 | asynchronously·invoked·on·every·event·emitted·by·the·underlying·<code·class="docutils·literal·notranslate"><span·class="pre">monitor</span></code> | 338 | asynchronously·invoked·on·every·event·emitted·by·the·underlying·<code·class="docutils·literal·notranslate"><span·class="pre">monitor</span></code> |
339 | after·the·observer·has·been·started·using·<code·class="xref·py·py-meth·docutils·literal·notranslate"><span·class="pre">start()</span></code>.</p> | 339 | after·the·observer·has·been·started·using·<a·class="reference·external"·href="https://docs.python.org/3/library/threading.html#threading.Thread.start"·title="(in·Python·v3.11)"><code·class="xref·py·py-meth·docutils·literal·notranslate"><span·class="pre">start()</span></code></a>.</p> |
340 | <div·class="admonition·warning"> | 340 | <div·class="admonition·warning"> |
341 | <p·class="admonition-title">Warning</p> | 341 | <p·class="admonition-title">Warning</p> |
342 | <p>The·callback·is·invoked·from·a·<em>different</em>·thread·than·the·one·in·which·the | 342 | <p>The·callback·is·invoked·from·a·<em>different</em>·thread·than·the·one·in·which·the |
343 | <code·class="docutils·literal·notranslate"><span·class="pre">observer</span></code>·was·created.··Be·sure·to·protect·access·to·shared·resource | 343 | <code·class="docutils·literal·notranslate"><span·class="pre">observer</span></code>·was·created.··Be·sure·to·protect·access·to·shared·resource |
344 | properly·when·you·access·them·from·the·callback·(e.g.·by·locking).</p> | 344 | properly·when·you·access·them·from·the·callback·(e.g.·by·locking).</p> |
345 | </div> | 345 | </div> |
346 | <p>The·<code·class="docutils·literal·notranslate"><span·class="pre">observer</span></code>·can·be·stopped·at·any·moment·using·<code·class="xref·py·py-meth·docutils·literal·notranslate"><span·class="pre">stop()`()</span></code>:</p> | 346 | <p>The·<code·class="docutils·literal·notranslate"><span·class="pre">observer</span></code>·can·be·stopped·at·any·moment·using·<code·class="xref·py·py-meth·docutils·literal·notranslate"><span·class="pre">stop()`()</span></code>:</p> |
Offset 49, 15 lines modified | Offset 49, 15 lines modified | ||
49 | <h2>Python·versions·and·implementations<a·class="headerlink"·href="#python-versions-and-implementations"·title="Permalink·to·this·heading">¶</a></h2> | 49 | <h2>Python·versions·and·implementations<a·class="headerlink"·href="#python-versions-and-implementations"·title="Permalink·to·this·heading">¶</a></h2> |
50 | <p>pyudev·supports·CPython·3·and·compatible·versions·of·PyPy.</p> | 50 | <p>pyudev·supports·CPython·3·and·compatible·versions·of·PyPy.</p> |
51 | </section> | 51 | </section> |
52 | <section·id="dependencies"> | 52 | <section·id="dependencies"> |
53 | <h2>Dependencies<a·class="headerlink"·href="#dependencies"·title="Permalink·to·this·heading">¶</a></h2> | 53 | <h2>Dependencies<a·class="headerlink"·href="#dependencies"·title="Permalink·to·this·heading">¶</a></h2> |
54 | <p>pyudev·needs·libudev·151·and·newer,·earlier·versions·of·libudev·as·found·on | 54 | <p>pyudev·needs·libudev·151·and·newer,·earlier·versions·of·libudev·as·found·on |
55 | dated·Linux·systems·may·work,·but·are·not·tested·and·not·officially·supported. | 55 | dated·Linux·systems·may·work,·but·are·not·tested·and·not·officially·supported. |
56 | It·is·written·in·pure·Python·based·on·<code·class="xref·py·py-mod·docutils·literal·notranslate"><span·class="pre">ctypes</span></code>,·so·no·compilers·or·headers | 56 | It·is·written·in·pure·Python·based·on·<a·class="reference·external"·href="https://docs.python.org/3/library/ctypes.html#module-ctypes"·title="(in·Python·v3.11)"><code·class="xref·py·py-mod·docutils·literal·notranslate"><span·class="pre">ctypes</span></code></a>,·so·no·compilers·or·headers |
57 | are·required·for·installation.</p> | 57 | are·required·for·installation.</p> |
58 | <p>To·use·any·of·the·toolkit·integration·modules.·the·corresponding·toolkit·must·be | 58 | <p>To·use·any·of·the·toolkit·integration·modules.·the·corresponding·toolkit·must·be |
59 | available,·but·no·toolkit·is·required·during·installation.</p> | 59 | available,·but·no·toolkit·is·required·during·installation.</p> |
60 | </section> | 60 | </section> |
61 | <section·id="installation-from-cheeseshop"> | 61 | <section·id="installation-from-cheeseshop"> |
62 | <h2>Installation·from·Cheeseshop<a·class="headerlink"·href="#installation-from-cheeseshop"·title="Permalink·to·this·heading">¶</a></h2> | 62 | <h2>Installation·from·Cheeseshop<a·class="headerlink"·href="#installation-from-cheeseshop"·title="Permalink·to·this·heading">¶</a></h2> |
63 | <p>Install·pyudev·from·the·<a·class="reference·external"·href="http://pypi.python.org/pypi/pyudev">Cheeseshop</a>·with·<a·class="reference·external"·href="http://www.pip-installer.org/">pip</a>:</p> | 63 | <p>Install·pyudev·from·the·<a·class="reference·external"·href="http://pypi.python.org/pypi/pyudev">Cheeseshop</a>·with·<a·class="reference·external"·href="http://www.pip-installer.org/">pip</a>:</p> |
Offset 37, 24 lines modified | Offset 37, 24 lines modified | ||
37 | ············ | 37 | ············ |
38 | ··<section·id="module-pyudev.core"> | 38 | ··<section·id="module-pyudev.core"> |
39 | <span·id="pyudev-core-module"></span><h1>pyudev.core·module<a·class="headerlink"·href="#module-pyudev.core"·title="Permalink·to·this·heading">¶</a></h1> | 39 | <span·id="pyudev-core-module"></span><h1>pyudev.core·module<a·class="headerlink"·href="#module-pyudev.core"·title="Permalink·to·this·heading">¶</a></h1> |
40 | <p>Core·types·and·functions·of·<a·class="reference·internal"·href="pyudev.html#module-pyudev"·title="pyudev"><code·class="xref·py·py-mod·docutils·literal·notranslate"><span·class="pre">pyudev</span></code></a>.</p> | 40 | <p>Core·types·and·functions·of·<a·class="reference·internal"·href="pyudev.html#module-pyudev"·title="pyudev"><code·class="xref·py·py-mod·docutils·literal·notranslate"><span·class="pre">pyudev</span></code></a>.</p> |
41 | <dl·class="py·class"> | 41 | <dl·class="py·class"> |
42 | <dt·class="sig·sig-object·py"·id="pyudev.core.Context"> | 42 | <dt·class="sig·sig-object·py"·id="pyudev.core.Context"> |
43 | <em·class="property"><span·class="pre">class</span><span·class="w">·</span></em><span·class="sig-prename·descclassname"><span·class="pre">pyudev.core.</span></span><span·class="sig-name·descname"><span·class="pre">Context</span></span><a·class="headerlink"·href="#pyudev.core.Context"·title="Permalink·to·this·definition">¶</a></dt> | 43 | <em·class="property"><span·class="pre">class</span><span·class="w">·</span></em><span·class="sig-prename·descclassname"><span·class="pre">pyudev.core.</span></span><span·class="sig-name·descname"><span·class="pre">Context</span></span><a·class="headerlink"·href="#pyudev.core.Context"·title="Permalink·to·this·definition">¶</a></dt> |
44 | <dd><p>Bases:·<code·class="xref·py·py-class·docutils·literal·notranslate"><span·class="pre">object</span></code></p> | 44 | <dd><p>Bases:·<a·class="reference·external"·href="https://docs.python.org/3/library/functions.html#object"·title="(in·Python·v3.11)"><code·class="xref·py·py-class·docutils·literal·notranslate"><span·class="pre">object</span></code></a></p> |
45 | <p>A·device·database·connection.</p> | 45 | <p>A·device·database·connection.</p> |
46 | <p>This·class·represents·a·connection·to·the·udev·device·database,·and·is | 46 | <p>This·class·represents·a·connection·to·the·udev·device·database,·and·is |
47 | really·<em>the</em>·central·object·to·access·udev.··You·need·an·instance·of·this | 47 | really·<em>the</em>·central·object·to·access·udev.··You·need·an·instance·of·this |
48 | class·for·almost·anything·else·in·pyudev.</p> | 48 | class·for·almost·anything·else·in·pyudev.</p> |
49 | <p>This·class·itself·gives·access·to·various·udev·configuration·data·(e.g. | 49 | <p>This·class·itself·gives·access·to·various·udev·configuration·data·(e.g. |
50 | <a·class="reference·internal"·href="#pyudev.core.Context.sys_path"·title="pyudev.core.Context.sys_path"><code·class="xref·py·py-attr·docutils·literal·notranslate"><span·class="pre">sys_path</span></code></a>,·<a·class="reference·internal"·href="#pyudev.core.Context.device_path"·title="pyudev.core.Context.device_path"><code·class="xref·py·py-attr·docutils·literal·notranslate"><span·class="pre">device_path</span></code></a>),·and·provides·device·enumeration | 50 | <a·class="reference·internal"·href="#pyudev.core.Context.sys_path"·title="pyudev.core.Context.sys_path"><code·class="xref·py·py-attr·docutils·literal·notranslate"><span·class="pre">sys_path</span></code></a>,·<a·class="reference·internal"·href="#pyudev.core.Context.device_path"·title="pyudev.core.Context.device_path"><code·class="xref·py·py-attr·docutils·literal·notranslate"><span·class="pre">device_path</span></code></a>),·and·provides·device·enumeration |
51 | (<a·class="reference·internal"·href="#pyudev.core.Context.list_devices"·title="pyudev.core.Context.list_devices"><code·class="xref·py·py-meth·docutils·literal·notranslate"><span·class="pre">list_devices()</span></code></a>).</p> | 51 | (<a·class="reference·internal"·href="#pyudev.core.Context.list_devices"·title="pyudev.core.Context.list_devices"><code·class="xref·py·py-meth·docutils·literal·notranslate"><span·class="pre">list_devices()</span></code></a>).</p> |
52 | <p>Instances·of·this·class·can·directly·be·given·as·<code·class="docutils·literal·notranslate"><span·class="pre">udev</span>·<span·class="pre">*</span></code>·to·functions | 52 | <p>Instances·of·this·class·can·directly·be·given·as·<code·class="docutils·literal·notranslate"><span·class="pre">udev</span>·<span·class="pre">*</span></code>·to·functions |
53 | wrapped·through·<code·class="xref·py·py-mod·docutils·literal·notranslate"><span·class="pre">ctypes</span></code>.</p> | 53 | wrapped·through·<a·class="reference·external"·href="https://docs.python.org/3/library/ctypes.html#module-ctypes"·title="(in·Python·v3.11)"><code·class="xref·py·py-mod·docutils·literal·notranslate"><span·class="pre">ctypes</span></code></a>.</p> |
54 | <dl·class="py·property"> | 54 | <dl·class="py·property"> |
55 | <dt·class="sig·sig-object·py"·id="pyudev.core.Context.device_path"> | 55 | <dt·class="sig·sig-object·py"·id="pyudev.core.Context.device_path"> |
56 | <em·class="property"><span·class="pre">property</span><span·class="w">·</span></em><span·class="sig-name·descname"><span·class="pre">device_path</span></span><a·class="headerlink"·href="#pyudev.core.Context.device_path"·title="Permalink·to·this·definition">¶</a></dt> | 56 | <em·class="property"><span·class="pre">property</span><span·class="w">·</span></em><span·class="sig-name·descname"><span·class="pre">device_path</span></span><a·class="headerlink"·href="#pyudev.core.Context.device_path"·title="Permalink·to·this·definition">¶</a></dt> |
57 | <dd><p>The·device·directory·path·defaulting·to·<code·class="docutils·literal·notranslate"><span·class="pre">/dev</span></code>·as·unicode·string.</p> | 57 | <dd><p>The·device·directory·path·defaulting·to·<code·class="docutils·literal·notranslate"><span·class="pre">/dev</span></code>·as·unicode·string.</p> |
58 | </dd></dl> | 58 | </dd></dl> |
59 | <dl·class="py·method"> | 59 | <dl·class="py·method"> |
Offset 72, 18 lines modified | Offset 72, 18 lines modified | ||
72 | </div> | 72 | </div> |
73 | </dd></dl> | 73 | </dd></dl> |
74 | <dl·class="py·property"> | 74 | <dl·class="py·property"> |
75 | <dt·class="sig·sig-object·py"·id="pyudev.core.Context.log_priority"> | 75 | <dt·class="sig·sig-object·py"·id="pyudev.core.Context.log_priority"> |
76 | <em·class="property"><span·class="pre">property</span><span·class="w">·</span></em><span·class="sig-name·descname"><span·class="pre">log_priority</span></span><a·class="headerlink"·href="#pyudev.core.Context.log_priority"·title="Permalink·to·this·definition">¶</a></dt> | 76 | <em·class="property"><span·class="pre">property</span><span·class="w">·</span></em><span·class="sig-name·descname"><span·class="pre">log_priority</span></span><a·class="headerlink"·href="#pyudev.core.Context.log_priority"·title="Permalink·to·this·definition">¶</a></dt> |
77 | <dd><p>The·logging·priority·of·the·interal·logging·facitility·of·udev·as | 77 | <dd><p>The·logging·priority·of·the·interal·logging·facitility·of·udev·as |
78 | integer·with·a·standard·<code·class="xref·py·py-mod·docutils·literal·notranslate"><span·class="pre">syslog</span></code>·priority.··Assign·to·this | 78 | integer·with·a·standard·<a·class="reference·external"·href="https://docs.python.org/3/library/syslog.html#module-syslog"·title="(in·Python·v3.11)"><code·class="xref·py·py-mod·docutils·literal·notranslate"><span·class="pre">syslog</span></code></a>·priority.··Assign·to·this |
79 | property·to·change·the·logging·priority.</p> | 79 | property·to·change·the·logging·priority.</p> |
80 | <p>UDev·uses·the·standard·<code·class="xref·py·py-mod·docutils·literal·notranslate"><span·class="pre">syslog</span></code>·priorities.··Constants·for·these | ||
81 | p | 80 | <p>UDev·uses·the·standard·<a·class="reference·external"·href="https://docs.python.org/3/library/syslog.html#module-syslog"·title="(in·Python·v3.11)"><code·class="xref·py·py-mod·docutils·literal·notranslate"><span·class="pre">syslog</span></code></a>·priori[·...·truncated·by·diffoscope;·len:·26,·SHA:·592baa871389e1e207853e22061ee14a353a5ea4e9a6c8e97b77eab420ada7ad·...·] |
81 | priorities·are·defined·in·the·<a·class="reference·external"·href="https://docs.python.org/3/library/syslog.html#module-syslog"·title="(in·Python·v3.11)"><code·class="xref·py·py-mod·docutils·literal·notranslate"><span·class="pre">syslog</span></code></a>·module·in·the·standard | ||
82 | library:</p> | 82 | library:</p> |
83 | <div·class="doctest·highlight-default·notranslate"><div·class="highlight"><pre><span></span><span·class="gp">>>>·</span><span·class="kn">import</span>·<span·class="nn">syslog</span> | 83 | <div·class="doctest·highlight-default·notranslate"><div·class="highlight"><pre><span></span><span·class="gp">>>>·</span><span·class="kn">import</span>·<span·class="nn">syslog</span> |
84 | <span·class="gp">>>>·</span><span·class="n">context</span>·<span·class="o">=</span>·<span·class="n">pyudev</span><span·class="o">.</span><span·class="n">Context</span><span·class="p">()</span> | 84 | <span·class="gp">>>>·</span><span·class="n">context</span>·<span·class="o">=</span>·<span·class="n">pyudev</span><span·class="o">.</span><span·class="n">Context</span><span·class="p">()</span> |
85 | <span·class="gp">>>>·</span><span·class="n">context</span><span·class="o">.</span><span·class="n">log_priority</span>·<span·class="o">=</span>·<span·class="n">syslog</span><span·class="o">.</span><span·class="n">LOG_DEBUG</span> | 85 | <span·class="gp">>>>·</span><span·class="n">context</span><span·class="o">.</span><span·class="n">log_priority</span>·<span·class="o">=</span>·<span·class="n">syslog</span><span·class="o">.</span><span·class="n">LOG_DEBUG</span> |
86 | </pre></div> | 86 | </pre></div> |
87 | </div> | 87 | </div> |
88 | <div·class="versionadded"> | 88 | <div·class="versionadded"> |
Offset 109, 15 lines modified | Offset 109, 15 lines modified | ||
109 | </dd></dl> | 109 | </dd></dl> |
110 | </dd></dl> | 110 | </dd></dl> |
111 | <dl·class="py·class"> | 111 | <dl·class="py·class"> |
112 | <dt·class="sig·sig-object·py"·id="pyudev.core.Enumerator"> | 112 | <dt·class="sig·sig-object·py"·id="pyudev.core.Enumerator"> |
113 | <em·class="property"><span·class="pre">class</span><span·class="w">·</span></em><span·class="sig-prename·descclassname"><span·class="pre">pyudev.core.</span></span><span·class="sig-name·descname"><span·class="pre">Enumerator</span></span><span·class="sig-paren">(</span><em·class="sig-param"><span·class="n"><span·class="pre">context</span></span></em><span·class="sig-paren">)</span><a·class="headerlink"·href="#pyudev.core.Enumerator"·title="Permalink·to·this·definition">¶</a></dt> | 113 | <em·class="property"><span·class="pre">class</span><span·class="w">·</span></em><span·class="sig-prename·descclassname"><span·class="pre">pyudev.core.</span></span><span·class="sig-name·descname"><span·class="pre">Enumerator</span></span><span·class="sig-paren">(</span><em·class="sig-param"><span·class="n"><span·class="pre">context</span></span></em><span·class="sig-paren">)</span><a·class="headerlink"·href="#pyudev.core.Enumerator"·title="Permalink·to·this·definition">¶</a></dt> |
114 | <dd><p>Bases:·<code·class="xref·py·py-class·docutils·literal·notranslate"><span·class="pre">object</span></code></p> | 114 | <dd><p>Bases:·<a·class="reference·external"·href="https://docs.python.org/3/library/functions.html#object"·title="(in·Python·v3.11)"><code·class="xref·py·py-class·docutils·literal·notranslate"><span·class="pre">object</span></code></a></p> |
115 | <p>A·filtered·iterable·of·devices.</p> | 115 | <p>A·filtered·iterable·of·devices.</p> |
116 | <p>To·retrieve·devices,·simply·iterate·over·an·instance·of·this·class. | 116 | <p>To·retrieve·devices,·simply·iterate·over·an·instance·of·this·class. |
117 | This·operation·yields·<code·class="xref·py·py-class·docutils·literal·notranslate"><span·class="pre">Device</span></code>·objects·representing·the·available | 117 | This·operation·yields·<code·class="xref·py·py-class·docutils·literal·notranslate"><span·class="pre">Device</span></code>·objects·representing·the·available |
118 | devices.</p> | 118 | devices.</p> |
119 | <p>Before·iteration·the·device·list·can·be·filtered·by·subsystem·or·by | 119 | <p>Before·iteration·the·device·list·can·be·filtered·by·subsystem·or·by |
120 | property·values·using·<a·class="reference·internal"·href="#pyudev.core.Enumerator.match_subsystem"·title="pyudev.core.Enumerator.match_subsystem"><code·class="xref·py·py-meth·docutils·literal·notranslate"><span·class="pre">match_subsystem()</span></code></a>·and | 120 | property·values·using·<a·class="reference·internal"·href="#pyudev.core.Enumerator.match_subsystem"·title="pyudev.core.Enumerator.match_subsystem"><code·class="xref·py·py-meth·docutils·literal·notranslate"><span·class="pre">match_subsystem()</span></code></a>·and |
121 | <a·class="reference·internal"·href="#pyudev.core.Enumerator.match_property"·title="pyudev.core.Enumerator.match_property"><code·class="xref·py·py-meth·docutils·literal·notranslate"><span·class="pre">match_property()</span></code></a>.··Multiple·subsystem·(property)·filters·are | 121 | <a·class="reference·internal"·href="#pyudev.core.Enumerator.match_property"·title="pyudev.core.Enumerator.match_property"><code·class="xref·py·py-meth·docutils·literal·notranslate"><span·class="pre">match_property()</span></code></a>.··Multiple·subsystem·(property)·filters·are |
Offset 130, 15 lines modified | Offset 130, 15 lines modified | ||
130 | <p>means·the·following:</p> | 130 | <p>means·the·following:</p> |
131 | <div·class="highlight-default·notranslate"><div·class="highlight"><pre><span></span><span·class="n">subsystem</span>·<span·class="o">==</span>·<span·class="s1">'block'</span>·<span·class="ow">and</span>·<span·class="p">(</span><span·class="n">ID_TYPE</span>·<span·class="o">==</span>·<span·class="s1">'disk'</span>·<span·class="ow">or</span>·<span·class="n">DEVTYPE</span>·<span·class="o">==</span>·<span·class="s1">'disk'</span><span·class="p">)</span> | 131 | <div·class="highlight-default·notranslate"><div·class="highlight"><pre><span></span><span·class="n">subsystem</span>·<span·class="o">==</span>·<span·class="s1">'block'</span>·<span·class="ow">and</span>·<span·class="p">(</span><span·class="n">ID_TYPE</span>·<span·class="o">==</span>·<span·class="s1">'disk'</span>·<span·class="ow">or</span>·<span·class="n">DEVTYPE</span>·<span·class="o">==</span>·<span·class="s1">'disk'</span><span·class="p">)</span> |
132 | </pre></div> | 132 | </pre></div> |
133 | </div> | 133 | </div> |
134 | <p>Once·added,·a·filter·cannot·be·removed·anymore.··Create·a·new·object | 134 | <p>Once·added,·a·filter·cannot·be·removed·anymore.··Create·a·new·object |
135 | instead.</p> | 135 | instead.</p> |
136 | <p>Instances·of·this·class·can·directly·be·given·as·given·<code·class="docutils·literal·notranslate"><span·class="pre">udev_enumerate</span>·<span·class="pre">*</span></code> | 136 | <p>Instances·of·this·class·can·directly·be·given·as·given·<code·class="docutils·literal·notranslate"><span·class="pre">udev_enumerate</span>·<span·class="pre">*</span></code> |
137 | to·functions·wrapped·through·<code·class="xref·py·py-mod·docutils·literal·notranslate"><span·class="pre">ctypes</span></code>.</p> | 137 | to·functions·wrapped·through·<a·class="reference·external"·href="https://docs.python.org/3/library/ctypes.html#module-ctypes"·title="(in·Python·v3.11)"><code·class="xref·py·py-mod·docutils·literal·notranslate"><span·class="pre">ctypes</span></code></a>.</p> |
138 | <dl·class="py·method"> | 138 | <dl·class="py·method"> |
139 | <dt·class="sig·sig-object·py"·id="pyudev.core.Enumerator.match"> | 139 | <dt·class="sig·sig-object·py"·id="pyudev.core.Enumerator.match"> |
140 | <span·class="sig-name·descname"><span·class="pre">match</span></span><span·class="sig-paren">(</span><em·class="sig-param"><span·class="o"><span·class="pre">**</span></span><span·class="n"><span·class="pre">kwargs</span></span></em><span·class="sig-paren">)</span><a·class="headerlink"·href="#pyudev.core.Enumerator.match"·title="Permalink·to·this·definition">¶</a></dt> | 140 | <span·class="sig-name·descname"><span·class="pre">match</span></span><span·class="sig-paren">(</span><em·class="sig-param"><span·class="o"><span·class="pre">**</span></span><span·class="n"><span·class="pre">kwargs</span></span></em><span·class="sig-paren">)</span><a·class="headerlink"·href="#pyudev.core.Enumerator.match"·title="Permalink·to·this·definition">¶</a></dt> |
141 | <dd><p>Include·devices·according·to·the·rules·defined·by·the·keyword | 141 | <dd><p>Include·devices·according·to·the·rules·defined·by·the·keyword |
142 | arguments.··These·keyword·arguments·are·interpreted·as·follows:</p> | 142 | arguments.··These·keyword·arguments·are·interpreted·as·follows:</p> |
143 | <ul·class="simple"> | 143 | <ul·class="simple"> |
144 | <li><p>The·value·for·the·keyword·argument·<code·class="docutils·literal·notranslate"><span·class="pre">subsystem</span></code>·is·forwarded·to | 144 | <li><p>The·value·for·the·keyword·argument·<code·class="docutils·literal·notranslate"><span·class="pre">subsystem</span></code>·is·forwarded·to |
Offset 54, 29 lines modified | Offset 54, 29 lines modified | ||
54 | <dt·class="field-odd">Parameters<span·class="colon">:</span></dt> | 54 | <dt·class="field-odd">Parameters<span·class="colon">:</span></dt> |
55 | <dd·class="field-odd"><p><strong>context</strong>·(<a·class="reference·internal"·href="pyudev.core.html#pyudev.core.Context"·title="pyudev.core.Context"><em>Context</em></a>)·–·the·context</p> | 55 | <dd·class="field-odd"><p><strong>context</strong>·(<a·class="reference·internal"·href="pyudev.core.html#pyudev.core.Context"·title="pyudev.core.Context"><em>Context</em></a>)·–·the·context</p> |
56 | </dd> | 56 | </dd> |
57 | <dt·class="field-even">Returns<span·class="colon">:</span></dt> | 57 | <dt·class="field-even">Returns<span·class="colon">:</span></dt> |
58 | <dd·class="field-even"><p>a·sorted·list·of·directories·that·contain·device·links</p> | 58 | <dd·class="field-even"><p>a·sorted·list·of·directories·that·contain·device·links</p> |
59 | </dd> | 59 | </dd> |
60 | <dt·class="field-odd">Return·type<span·class="colon">:</span></dt> | 60 | <dt·class="field-odd">Return·type<span·class="colon">:</span></dt> |
61 | <dd·class="field-odd"><p>list</p> | 61 | <dd·class="field-odd"><p><a·class="reference·external"·href="https://docs.python.org/3/library/stdtypes.html#list"·title="(in·Python·v3.11)">list</a></p> |
62 | </dd> | 62 | </dd> |
63 | </dl> | 63 | </dl> |
64 | </dd></dl> | 64 | </dd></dl> |
65 | <dl·class="py·method"> | 65 | <dl·class="py·method"> |
66 | <dt·class="sig·sig-object·py"·id="pyudev.discover.DeviceFileHypothesis.lookup"> | 66 | <dt·class="sig·sig-object·py"·id="pyudev.discover.DeviceFileHypothesis.lookup"> |
67 | <em·class="property"><span·class="pre">classmethod</span><span·class="w">·</span></em><span·class="sig-name·descname"><span·class="pre">lookup</span></span><span·class="sig-paren">(</span><em·class="sig-param"><span·class="n"><span·class="pre">context</span></span></em>,·<em·class="sig-param"><span·class="n"><span·class="pre">key</span></span></em><span·class="sig-paren">)</span><a·class="headerlink"·href="#pyudev.discover.DeviceFileHypothesis.lookup"·title="Permalink·to·this·definition">¶</a></dt> | 67 | <em·class="property"><span·class="pre">classmethod</span><span·class="w">·</span></em><span·class="sig-name·descname"><span·class="pre">lookup</span></span><span·class="sig-paren">(</span><em·class="sig-param"><span·class="n"><span·class="pre">context</span></span></em>,·<em·class="sig-param"><span·class="n"><span·class="pre">key</span></span></em><span·class="sig-paren">)</span><a·class="headerlink"·href="#pyudev.discover.DeviceFileHypothesis.lookup"·title="Permalink·to·this·definition">¶</a></dt> |
68 | <dd><p>Lookup·the·device·under·the·assumption·that·the·key·is·part·of | 68 | <dd><p>Lookup·the·device·under·the·assumption·that·the·key·is·part·of |
69 | the·name·of·a·device·file.</p> | 69 | the·name·of·a·device·file.</p> |
70 | <dl·class="field-list·simple"> | 70 | <dl·class="field-list·simple"> |
71 | <dt·class="field-odd">Parameters<span·class="colon">:</span></dt> | 71 | <dt·class="field-odd">Parameters<span·class="colon">:</span></dt> |
72 | <dd·class="field-odd"><ul·class="simple"> | 72 | <dd·class="field-odd"><ul·class="simple"> |
73 | <li><p><strong>context</strong>·(<a·class="reference·internal"·href="pyudev.core.html#pyudev.core.Context"·title="pyudev.core.Context"><em>Context</em></a>)·–·the·context</p></li> | 73 | <li><p><strong>context</strong>·(<a·class="reference·internal"·href="pyudev.core.html#pyudev.core.Context"·title="pyudev.core.Context"><em>Context</em></a>)·–·the·context</p></li> |
74 | <li><p><strong>key</strong>·(<em>str</em>)·–·a·portion·of·the·device·file·name</p></li> | 74 | <li><p><strong>key</strong>·(<a·class="reference·external"·href="https://docs.python.org/3/library/stdtypes.html#str"·title="(in·Python·v3.11)"><em>str</em></a>)·–·a·portion·of·the·device·file·name</p></li> |
75 | </ul> | 75 | </ul> |
76 | </dd> | 76 | </dd> |
77 | </dl> | 77 | </dl> |
78 | <p>It·is·assumed·that·either·it·is·the·whole·name·of·the·device·file | 78 | <p>It·is·assumed·that·either·it·is·the·whole·name·of·the·device·file |
79 | or·it·is·the·basename.</p> | 79 | or·it·is·the·basename.</p> |
80 | <p>A·device·file·may·be·a·device·node·or·a·device·link.</p> | 80 | <p>A·device·file·may·be·a·device·node·or·a·device·link.</p> |
81 | </dd></dl> | 81 | </dd></dl> |
Offset 87, 15 lines modified | Offset 87, 15 lines modified | ||
87 | <dd><p>Match·the·given·string·according·to·the·hypothesis.</p> | 87 | <dd><p>Match·the·given·string·according·to·the·hypothesis.</p> |
88 | <p>The·purpose·of·this·method·is·to·obtain·a·value·corresponding·to | 88 | <p>The·purpose·of·this·method·is·to·obtain·a·value·corresponding·to |
89 | <code·class="docutils·literal·notranslate"><span·class="pre">value</span></code>·if·that·is·possible.·It·may·use·a·regular·expression,·but | 89 | <code·class="docutils·literal·notranslate"><span·class="pre">value</span></code>·if·that·is·possible.·It·may·use·a·regular·expression,·but |
90 | in·general·it·should·just·return·<code·class="docutils·literal·notranslate"><span·class="pre">value</span></code>·and·let·the·lookup·method | 90 | in·general·it·should·just·return·<code·class="docutils·literal·notranslate"><span·class="pre">value</span></code>·and·let·the·lookup·method |
91 | sort·out·the·rest.</p> | 91 | sort·out·the·rest.</p> |
92 | <dl·class="field-list·simple"> | 92 | <dl·class="field-list·simple"> |
93 | <dt·class="field-odd">Parameters<span·class="colon">:</span></dt> | 93 | <dt·class="field-odd">Parameters<span·class="colon">:</span></dt> |
94 | <dd·class="field-odd"><p><strong>value</strong>·(<em>str</em>)·–·the·string·to·inspect</p> | 94 | <dd·class="field-odd"><p><strong>value</strong>·(<a·class="reference·external"·href="https://docs.python.org/3/library/stdtypes.html#str"·title="(in·Python·v3.11)"><em>str</em></a>)·–·the·string·to·inspect</p> |
95 | </dd> | 95 | </dd> |
96 | <dt·class="field-even">Returns<span·class="colon">:</span></dt> | 96 | <dt·class="field-even">Returns<span·class="colon">:</span></dt> |
97 | <dd·class="field-even"><p>the·matched·thing·or·None·if·unmatched</p> | 97 | <dd·class="field-even"><p>the·matched·thing·or·None·if·unmatched</p> |
98 | </dd> | 98 | </dd> |
99 | <dt·class="field-odd">Return·type<span·class="colon">:</span></dt> | 99 | <dt·class="field-odd">Return·type<span·class="colon">:</span></dt> |
100 | <dd·class="field-odd"><p>the·type·of·lookup’s·key·parameter·or·NoneType</p> | 100 | <dd·class="field-odd"><p>the·type·of·lookup’s·key·parameter·or·NoneType</p> |
101 | </dd> | 101 | </dd> |
Offset 127, 15 lines modified | Offset 127, 15 lines modified | ||
127 | <em·class="property"><span·class="pre">classmethod</span><span·class="w">·</span></em><span·class="sig-name·descname"><span·class="pre">find_subsystems</span></span><span·class="sig-paren">(</span><em·class="sig-param"><span·class="n"><span·class="pre">context</span></span></em><span·class="sig-paren">)</span><a·class="headerlink"·href="#pyudev.discover.DeviceNameHypothesis.find_subsystems"·title="Permalink·to·this·definition">¶</a></dt> | 127 | <em·class="property"><span·class="pre">classmethod</span><span·class="w">·</span></em><span·class="sig-name·descname"><span·class="pre">find_subsystems</span></span><span·class="sig-paren">(</span><em·class="sig-param"><span·class="n"><span·class="pre">context</span></span></em><span·class="sig-paren">)</span><a·class="headerlink"·href="#pyudev.discover.DeviceNameHypothesis.find_subsystems"·title="Permalink·to·this·definition">¶</a></dt> |
128 | <dd><p>Find·all·subsystems·in·sysfs.</p> | 128 | <dd><p>Find·all·subsystems·in·sysfs.</p> |
129 | <dl·class="field-list·simple"> | 129 | <dl·class="field-list·simple"> |
130 | <dt·class="field-odd">Parameters<span·class="colon">:</span></dt> | 130 | <dt·class="field-odd">Parameters<span·class="colon">:</span></dt> |
131 | <dd·class="field-odd"><p><strong>context</strong>·(<a·class="reference·internal"·href="pyudev.core.html#pyudev.core.Context"·title="pyudev.core.Context"><em>Context</em></a>)·–·the·context</p> | 131 | <dd·class="field-odd"><p><strong>context</strong>·(<a·class="reference·internal"·href="pyudev.core.html#pyudev.core.Context"·title="pyudev.core.Context"><em>Context</em></a>)·–·the·context</p> |
132 | </dd> | 132 | </dd> |
133 | <dt·class="field-even">Return·type<span·class="colon">:</span></dt> | 133 | <dt·class="field-even">Return·type<span·class="colon">:</span></dt> |
134 | <dd·class="field-even"><p>frozenset</p> | 134 | <dd·class="field-even"><p><a·class="reference·external"·href="https://docs.python.org/3/library/stdtypes.html#frozenset"·title="(in·Python·v3.11)">frozenset</a></p> |
135 | </dd> | 135 | </dd> |
136 | <dt·class="field-odd">Returns<span·class="colon">:</span></dt> | 136 | <dt·class="field-odd">Returns<span·class="colon">:</span></dt> |
137 | <dd·class="field-odd"><p>subsystems·in·sysfs</p> | 137 | <dd·class="field-odd"><p>subsystems·in·sysfs</p> |
138 | </dd> | 138 | </dd> |
139 | </dl> | 139 | </dl> |
140 | </dd></dl> | 140 | </dd></dl> |
Offset 143, 15 lines modified | Offset 143, 15 lines modified | ||
143 | <dt·class="sig·sig-object·py"·id="pyudev.discover.DeviceNameHypothesis.lookup"> | 143 | <dt·class="sig·sig-object·py"·id="pyudev.discover.DeviceNameHypothesis.lookup"> |
144 | <em·class="property"><span·class="pre">classmethod</span><span·class="w">·</span></em><span·class="sig-name·descname"><span·class="pre">lookup</span></span><span·class="sig-paren">(</span><em·class="sig-param"><span·class="n"><span·class="pre">context</span></span></em>,·<em·class="sig-param"><span·class="n"><span·class="pre">key</span></span></em><span·class="sig-paren">)</span><a·class="headerlink"·href="#pyudev.discover.DeviceNameHypothesis.lookup"·title="Permalink·to·this·definition">¶</a></dt> | 144 | <em·class="property"><span·class="pre">classmethod</span><span·class="w">·</span></em><span·class="sig-name·descname"><span·class="pre">lookup</span></span><span·class="sig-paren">(</span><em·class="sig-param"><span·class="n"><span·class="pre">context</span></span></em>,·<em·class="sig-param"><span·class="n"><span·class="pre">key</span></span></em><span·class="sig-paren">)</span><a·class="headerlink"·href="#pyudev.discover.DeviceNameHypothesis.lookup"·title="Permalink·to·this·definition">¶</a></dt> |
145 | <dd><p>Lookup·by·the·path.</p> | 145 | <dd><p>Lookup·by·the·path.</p> |
146 | <dl·class="field-list·simple"> | 146 | <dl·class="field-list·simple"> |
147 | <dt·class="field-odd">Parameters<span·class="colon">:</span></dt> | 147 | <dt·class="field-odd">Parameters<span·class="colon">:</span></dt> |
148 | <dd·class="field-odd"><ul·class="simple"> | 148 | <dd·class="field-odd"><ul·class="simple"> |
149 | <li><p><strong>context</strong>·(<a·class="reference·internal"·href="pyudev.core.html#pyudev.core.Context"·title="pyudev.core.Context"><em>Context</em></a>)·–·the·context</p></li> | 149 | <li><p><strong>context</strong>·(<a·class="reference·internal"·href="pyudev.core.html#pyudev.core.Context"·title="pyudev.core.Context"><em>Context</em></a>)·–·the·context</p></li> |
150 | <li><p><strong>key</strong>·(<em>str</em>)·–·the·device·path</p></li> | 150 | <li><p><strong>key</strong>·(<a·class="reference·external"·href="https://docs.python.org/3/library/stdtypes.html#str"·title="(in·Python·v3.11)"><em>str</em></a>)·–·the·device·path</p></li> |
151 | </ul> | 151 | </ul> |
152 | </dd> | 152 | </dd> |
153 | <dt·class="field-even">Returns<span·class="colon">:</span></dt> | 153 | <dt·class="field-even">Returns<span·class="colon">:</span></dt> |
154 | <dd·class="field-even"><p>a·list·of·matching·devices</p> | 154 | <dd·class="field-even"><p>a·list·of·matching·devices</p> |
155 | </dd> | 155 | </dd> |
156 | <dt·class="field-odd">Return·type<span·class="colon">:</span></dt> | 156 | <dt·class="field-odd">Return·type<span·class="colon">:</span></dt> |
157 | <dd·class="field-odd"><p>frozenset·of·<code·class="xref·py·py-class·docutils·literal·notranslate"><span·class="pre">Device</span></code></p> | 157 | <dd·class="field-odd"><p>frozenset·of·<code·class="xref·py·py-class·docutils·literal·notranslate"><span·class="pre">Device</span></code></p> |
Offset 164, 15 lines modified | Offset 164, 15 lines modified | ||
164 | <em·class="property"><span·class="pre">classmethod</span><span·class="w">·</span></em><span·class="sig-name·descname"><span·class="pre">match</span></span><span·class="sig-paren">(</span><em·class="sig-param"><span·class="n"><span·class="pre">value</span></span></em><span·class="sig-paren">)</span><a·class="headerlink"·href="#pyudev.discover.DeviceNameHypothesis.match"·title="Permalink·to·this·definition">¶</a></dt> | 164 | <em·class="property"><span·class="pre">classmethod</span><span·class="w">·</span></em><span·class="sig-name·descname"><span·class="pre">match</span></span><span·class="sig-paren">(</span><em·class="sig-param"><span·class="n"><span·class="pre">value</span></span></em><span·class="sig-paren">)</span><a·class="headerlink"·href="#pyudev.discover.DeviceNameHypothesis.match"·title="Permalink·to·this·definition">¶</a></dt> |
165 | <dd><p>Match·<code·class="docutils·literal·notranslate"><span·class="pre">value</span></code>·under·the·assumption·that·it·is·a·device·name.</p> | 165 | <dd><p>Match·<code·class="docutils·literal·notranslate"><span·class="pre">value</span></code>·under·the·assumption·that·it·is·a·device·name.</p> |
166 | <dl·class="field-list·simple"> | 166 | <dl·class="field-list·simple"> |
167 | <dt·class="field-odd">Returns<span·class="colon">:</span></dt> | 167 | <dt·class="field-odd">Returns<span·class="colon">:</span></dt> |
168 | <dd·class="field-odd"><p>the·device·path·or·None</p> | 168 | <dd·class="field-odd"><p>the·device·path·or·None</p> |
169 | </dd> | 169 | </dd> |
170 | <dt·class="field-even">Return·type<span·class="colon">:</span></dt> | 170 | <dt·class="field-even">Return·type<span·class="colon">:</span></dt> |
171 | <dd·class="field-even"><p>str·or·NoneType</p> | 171 | <dd·class="field-even"><p><a·class="reference·external"·href="https://docs.python.org/3/library/stdtypes.html#str"·title="(in·Python·v3.11)">str</a>·or·NoneType</p> |
172 | </dd> | 172 | </dd> |
173 | </dl> | 173 | </dl> |
174 | </dd></dl> | 174 | </dd></dl> |
175 | </dd></dl> | 175 | </dd></dl> |
176 | <dl·class="py·class"> | 176 | <dl·class="py·class"> |
Offset 189, 28 lines modified | Offset 189, 28 lines modified | ||
189 | <dt·class="field-odd">Parameters<span·class="colon">:</span></dt> | 189 | <dt·class="field-odd">Parameters<span·class="colon">:</span></dt> |
190 | <dd·class="field-odd"><p><strong>context</strong>·(<a·class="reference·internal"·href="pyudev.core.html#pyudev.core.Context"·title="pyudev.core.Context"><em>Context</em></a>)·–·the·context</p> | 190 | <dd·class="field-odd"><p><strong>context</strong>·(<a·class="reference·internal"·href="pyudev.core.html#pyudev.core.Context"·title="pyudev.core.Context"><em>Context</em></a>)·–·the·context</p> |
191 | </dd> | 191 | </dd> |
192 | <dt·class="field-even">Returns<span·class="colon">:</span></dt> | 192 | <dt·class="field-even">Returns<span·class="colon">:</span></dt> |
193 | <dd·class="field-even"><p>a·lis·of·available·subsystems</p> | 193 | <dd·class="field-even"><p>a·lis·of·available·subsystems</p> |
194 | </dd> | 194 | </dd> |
195 | <dt·class="field-odd">Return·type<span·class="colon">:</span></dt> | 195 | <dt·class="field-odd">Return·type<span·class="colon">:</span></dt> |
196 | <dd·class="field-odd"><p>list·of·str</p> | 196 | <dd·class="field-odd"><p><a·class="reference·external"·href="https://docs.python.org/3/library/stdtypes.html#list"·title="(in·Python·v3.11)">list</a>·of·<a·class="reference·external"·href="https://docs.python.org/3/library/stdtypes.html#str"·title="(in·Python·v3.11)">str</a></p> |
197 | </dd> | 197 | </dd> |
198 | </dl> | 198 | </dl> |
199 | </dd></dl> | 199 | </dd></dl> |
200 | <dl·class="py·method"> | 200 | <dl·class="py·method"> |
201 | <dt·class="sig·sig-object·py"·id="pyudev.discover.DeviceNumberHypothesis.lookup"> | 201 | <dt·class="sig·sig-object·py"·id="pyudev.discover.DeviceNumberHypothesis.lookup"> |
202 | <em·class="property"><span·class="pre">classmethod</span><span·class="w">·</span></em><span·class="sig-name·descname"><span·class="pre">lookup</span></span><span·class="sig-paren">(</span><em·class="sig-param"><span·class="n"><span·class="pre">context</span></span></em>,·<em·class="sig-param"><span·class="n"><span·class="pre">key</span></span></em><span·class="sig-paren">)</span><a·class="headerlink"·href="#pyudev.discover.DeviceNumberHypothesis.lookup"·title="Permalink·to·this·definition">¶</a></dt> | 202 | <em·class="property"><span·class="pre">classmethod</span><span·class="w">·</span></em><span·class="sig-name·descname"><span·class="pre">lookup</span></span><span·class="sig-paren">(</span><em·class="sig-param"><span·class="n"><span·class="pre">context</span></span></em>,·<em·class="sig-param"><span·class="n"><span·class="pre">key</span></span></em><span·class="sig-paren">)</span><a·class="headerlink"·href="#pyudev.discover.DeviceNumberHypothesis.lookup"·title="Permalink·to·this·definition">¶</a></dt> |
203 | <dd><p>Lookup·by·the·device·number.</p> | 203 | <dd><p>Lookup·by·the·device·number.</p> |
204 | <dl·class="field-list·simple"> | 204 | <dl·class="field-list·simple"> |
205 | <dt·class="field-odd">Parameters<span·class="colon">:</span></dt> | 205 | <dt·class="field-odd">Parameters<span·class="colon">:</span></dt> |
206 | <dd·class="field-odd"><ul·class="simple"> | 206 | <dd·class="field-odd"><ul·class="simple"> |
207 | <li><p><strong>context</strong>·(<a·class="reference·internal"·href="pyudev.core.html#pyudev.core.Context"·title="pyudev.core.Context"><em>Context</em></a>)·–·the·context</p></li> | 207 | <li><p><strong>context</strong>·(<a·class="reference·internal"·href="pyudev.core.html#pyudev.core.Context"·title="pyudev.core.Context"><em>Context</em></a>)·–·the·context</p></li> |
208 | <li><p><strong>key</strong>·(<em>int</em>)·–·the·device·number</p></li> | 208 | <li><p><strong>key</strong>·(<a·class="reference·external"·href="https://docs.python.org/3/library/functions.html#int"·title="(in·Python·v3.11)"><em>int</em></a>)·–·the·device·number</p></li> |
209 | </ul> | 209 | </ul> |
210 | </dd> | 210 | </dd> |
211 | <dt·class="field-even">Returns<span·class="colon">:</span></dt> | 211 | <dt·class="field-even">Returns<span·class="colon">:</span></dt> |
212 | <dd·class="field-even"><p>a·list·of·matching·devices</p> | 212 | <dd·class="field-even"><p>a·list·of·matching·devices</p> |
213 | </dd> | 213 | </dd> |
214 | <dt·class="field-odd">Return·type<span·class="colon">:</span></dt> | 214 | <dt·class="field-odd">Return·type<span·class="colon">:</span></dt> |
215 | <dd·class="field-odd"><p>frozenset·of·<code·class="xref·py·py-class·docutils·literal·notranslate"><span·class="pre">Device</span></code></p> | 215 | <dd·class="field-odd"><p>frozenset·of·<code·class="xref·py·py-class·docutils·literal·notranslate"><span·class="pre">Device</span></code></p> |
Offset 223, 15 lines modified | Offset 223, 15 lines modified | ||
223 | <em·class="property"><span·class="pre">classmethod</span><span·class="w">·</span></em><span·class="sig-name·descname"><span·class="pre">match</span></span><span·class="sig-paren">(</span><em·class="sig-param"><span·class="n"><span·class="pre">value</span></span></em><span·class="sig-paren">)</span><a·class="headerlink"·href="#pyudev.discover.DeviceNumberHypothesis.match"·title="Permalink·to·this·definition">¶</a></dt> | 223 | <em·class="property"><span·class="pre">classmethod</span><span·class="w">·</span></em><span·class="sig-name·descname"><span·class="pre">match</span></span><span·class="sig-paren">(</span><em·class="sig-param"><span·class="n"><span·class="pre">value</span></span></em><span·class="sig-paren">)</span><a·class="headerlink"·href="#pyudev.discover.DeviceNumberHypothesis.match"·title="Permalink·to·this·definition">¶</a></dt> |
224 | <dd><p>Match·the·number·under·the·assumption·that·it·is·a·device·number.</p> | 224 | <dd><p>Match·the·number·under·the·assumption·that·it·is·a·device·number.</p> |
225 | <dl·class="field-list·simple"> | 225 | <dl·class="field-list·simple"> |
226 | <dt·class="field-odd">Returns<span·class="colon">:</span></dt> | 226 | <dt·class="field-odd">Returns<span·class="colon">:</span></dt> |
Max diff block lines reached; 9102/19538 bytes (46.59%) of diff not shown. |
Offset 37, 15 lines modified | Offset 37, 15 lines modified | ||
37 | ············ | 37 | ············ |
38 | ··<section·id="module-pyudev.monitor"> | 38 | ··<section·id="module-pyudev.monitor"> |
39 | <span·id="pyudev-monitor-module"></span><h1>pyudev.monitor·module<a·class="headerlink"·href="#module-pyudev.monitor"·title="Permalink·to·this·heading">¶</a></h1> | 39 | <span·id="pyudev-monitor-module"></span><h1>pyudev.monitor·module<a·class="headerlink"·href="#module-pyudev.monitor"·title="Permalink·to·this·heading">¶</a></h1> |
40 | <p>Monitor·implementation.</p> | 40 | <p>Monitor·implementation.</p> |
41 | <dl·class="py·class"> | 41 | <dl·class="py·class"> |
42 | <dt·class="sig·sig-object·py"·id="pyudev.monitor.Monitor"> | 42 | <dt·class="sig·sig-object·py"·id="pyudev.monitor.Monitor"> |
43 | <em·class="property"><span·class="pre">class</span><span·class="w">·</span></em><span·class="sig-prename·descclassname"><span·class="pre">pyudev.monitor.</span></span><span·class="sig-name·descname"><span·class="pre">Monitor</span></span><span·class="sig-paren">(</span><em·class="sig-param"><span·class="n"><span·class="pre">context</span></span></em>,·<em·class="sig-param"><span·class="n"><span·class="pre">monitor_p</span></span></em><span·class="sig-paren">)</span><a·class="headerlink"·href="#pyudev.monitor.Monitor"·title="Permalink·to·this·definition">¶</a></dt> | 43 | <em·class="property"><span·class="pre">class</span><span·class="w">·</span></em><span·class="sig-prename·descclassname"><span·class="pre">pyudev.monitor.</span></span><span·class="sig-name·descname"><span·class="pre">Monitor</span></span><span·class="sig-paren">(</span><em·class="sig-param"><span·class="n"><span·class="pre">context</span></span></em>,·<em·class="sig-param"><span·class="n"><span·class="pre">monitor_p</span></span></em><span·class="sig-paren">)</span><a·class="headerlink"·href="#pyudev.monitor.Monitor"·title="Permalink·to·this·definition">¶</a></dt> |
44 | <dd><p>Bases:·<code·class="xref·py·py-class·docutils·literal·notranslate"><span·class="pre">object</span></code></p> | 44 | <dd><p>Bases:·<a·class="reference·external"·href="https://docs.python.org/3/library/functions.html#object"·title="(in·Python·v3.11)"><code·class="xref·py·py-class·docutils·literal·notranslate"><span·class="pre">object</span></code></a></p> |
45 | <p>A·synchronous·device·event·monitor.</p> | 45 | <p>A·synchronous·device·event·monitor.</p> |
46 | <p>A·<a·class="reference·internal"·href="#pyudev.monitor.Monitor"·title="pyudev.monitor.Monitor"><code·class="xref·py·py-class·docutils·literal·notranslate"><span·class="pre">Monitor</span></code></a>·objects·connects·to·the·udev·daemon·and·listens·for | 46 | <p>A·<a·class="reference·internal"·href="#pyudev.monitor.Monitor"·title="pyudev.monitor.Monitor"><code·class="xref·py·py-class·docutils·literal·notranslate"><span·class="pre">Monitor</span></code></a>·objects·connects·to·the·udev·daemon·and·listens·for |
47 | changes·to·the·device·list.··A·monitor·is·created·by·connecting·to·the | 47 | changes·to·the·device·list.··A·monitor·is·created·by·connecting·to·the |
48 | kernel·daemon·through·netlink·(see·<a·class="reference·internal"·href="#pyudev.monitor.Monitor.from_netlink"·title="pyudev.monitor.Monitor.from_netlink"><code·class="xref·py·py-meth·docutils·literal·notranslate"><span·class="pre">from_netlink()</span></code></a>):</p> | 48 | kernel·daemon·through·netlink·(see·<a·class="reference·internal"·href="#pyudev.monitor.Monitor.from_netlink"·title="pyudev.monitor.Monitor.from_netlink"><code·class="xref·py·py-meth·docutils·literal·notranslate"><span·class="pre">from_netlink()</span></code></a>):</p> |
49 | <div·class="doctest·highlight-default·notranslate"><div·class="highlight"><pre><span></span><span·class="gp">>>>·</span><span·class="kn">from</span>·<span·class="nn">pyudev</span>·<span·class="kn">import</span>·<span·class="n">Context</span><span·class="p">,</span>·<span·class="n">Monitor</span> | 49 | <div·class="doctest·highlight-default·notranslate"><div·class="highlight"><pre><span></span><span·class="gp">>>>·</span><span·class="kn">from</span>·<span·class="nn">pyudev</span>·<span·class="kn">import</span>·<span·class="n">Context</span><span·class="p">,</span>·<span·class="n">Monitor</span> |
50 | <span·class="gp">>>>·</span><span·class="n">context</span>·<span·class="o">=</span>·<span·class="n">Context</span><span·class="p">()</span> | 50 | <span·class="gp">>>>·</span><span·class="n">context</span>·<span·class="o">=</span>·<span·class="n">Context</span><span·class="p">()</span> |
51 | <span·class="gp">>>>·</span><span·class="n">monitor</span>·<span·class="o">=</span>·<span·class="n">Monitor</span><span·class="o">.</span><span·class="n">from_netlink</span><span·class="p">(</span><span·class="n">context</span><span·class="p">)</span> | 51 | <span·class="gp">>>>·</span><span·class="n">monitor</span>·<span·class="o">=</span>·<span·class="n">Monitor</span><span·class="o">.</span><span·class="n">from_netlink</span><span·class="p">(</span><span·class="n">context</span><span·class="p">)</span> |
Offset 63, 18 lines modified | Offset 63, 18 lines modified | ||
63 | <span·class="gp">>>>·</span><span·class="k">if</span>·<span·class="n">device</span><span·class="p">:</span> | 63 | <span·class="gp">>>>·</span><span·class="k">if</span>·<span·class="n">device</span><span·class="p">:</span> |
64 | <span·class="gp">...·</span>····<span·class="nb">print</span><span·class="p">(</span><span·class="s1">'</span><span·class="si">{0.action}</span><span·class="s1">:·</span><span·class="si">{0}</span><span·class="s1">'</span><span·class="o">.</span><span·class="n">format</span><span·class="p">(</span><span·class="n">device</span><span·class="p">))</span> | 64 | <span·class="gp">...·</span>····<span·class="nb">print</span><span·class="p">(</span><span·class="s1">'</span><span·class="si">{0.action}</span><span·class="s1">:·</span><span·class="si">{0}</span><span·class="s1">'</span><span·class="o">.</span><span·class="n">format</span><span·class="p">(</span><span·class="n">device</span><span·class="p">))</span> |
65 | <span·class="gp">...</span> | 65 | <span·class="gp">...</span> |
66 | </pre></div> | 66 | </pre></div> |
67 | </div> | 67 | </div> |
68 | <p>Or·you·can·monitor·events·asynchronously·with·<a·class="reference·internal"·href="#pyudev.monitor.MonitorObserver"·title="pyudev.monitor.MonitorObserver"><code·class="xref·py·py-class·docutils·literal·notranslate"><span·class="pre">MonitorObserver</span></code></a>.</p> | 68 | <p>Or·you·can·monitor·events·asynchronously·with·<a·class="reference·internal"·href="#pyudev.monitor.MonitorObserver"·title="pyudev.monitor.MonitorObserver"><code·class="xref·py·py-class·docutils·literal·notranslate"><span·class="pre">MonitorObserver</span></code></a>.</p> |
69 | <p>To·integrate·into·various·event·processing·frameworks,·the·monitor·provides | 69 | <p>To·integrate·into·various·event·processing·frameworks,·the·monitor·provides |
70 | a·<code·class="xref·py·py-func·docutils·literal·notranslate"><span·class="pre">selectable</span></code>·file·description·by·<a·class="reference·internal"·href="#pyudev.monitor.Monitor.fileno"·title="pyudev.monitor.Monitor.fileno"><code·class="xref·py·py-meth·docutils·literal·notranslate"><span·class="pre">fileno()</span></code></a>. | 70 | a·<a·class="reference·external"·href="https://docs.python.org/3/library/select.html#select.select"·title="(in·Python·v3.11)"><code·class="xref·py·py-func·docutils·literal·notranslate"><span·class="pre">selectable</span></code></a>·file·description·by·<a·class="reference·internal"·href="#pyudev.monitor.Monitor.fileno"·title="pyudev.monitor.Monitor.fileno"><code·class="xref·py·py-meth·docutils·literal·notranslate"><span·class="pre">fileno()</span></code></a>. |
71 | However,·do·<em>not</em>··read·or·write·directly·on·this·file·descriptor.</p> | 71 | However,·do·<em>not</em>··read·or·write·directly·on·this·file·descriptor.</p> |
72 | <p>Instances·of·this·class·can·directly·be·given·as·<code·class="docutils·literal·notranslate"><span·class="pre">udev_monitor</span>·<span·class="pre">*</span></code>·to | 72 | <p>Instances·of·this·class·can·directly·be·given·as·<code·class="docutils·literal·notranslate"><span·class="pre">udev_monitor</span>·<span·class="pre">*</span></code>·to |
73 | functions·wrapped·through·<code·class="xref·py·py-mod·docutils·literal·notranslate"><span·class="pre">ctypes</span></code>.</p> | 73 | functions·wrapped·through·<a·class="reference·external"·href="https://docs.python.org/3/library/ctypes.html#module-ctypes"·title="(in·Python·v3.11)"><code·class="xref·py·py-mod·docutils·literal·notranslate"><span·class="pre">ctypes</span></code></a>.</p> |
74 | <div·class="versionchanged"> | 74 | <div·class="versionchanged"> |
75 | <p><span·class="versionmodified·changed">Changed·in·version·0.16:·</span>Remove·<code·class="xref·py·py-meth·docutils·literal·notranslate"><span·class="pre">from_socket()</span></code>·which·is·deprecated,·and·even·removed·in | 75 | <p><span·class="versionmodified·changed">Changed·in·version·0.16:·</span>Remove·<code·class="xref·py·py-meth·docutils·literal·notranslate"><span·class="pre">from_socket()</span></code>·which·is·deprecated,·and·even·removed·in |
76 | recent·udev·versions.</p> | 76 | recent·udev·versions.</p> |
77 | </div> | 77 | </div> |
78 | <dl·class="py·method"> | 78 | <dl·class="py·method"> |
79 | <dt·class="sig·sig-object·py"·id="pyudev.monitor.Monitor.enable_receiving"> | 79 | <dt·class="sig·sig-object·py"·id="pyudev.monitor.Monitor.enable_receiving"> |
80 | <span·class="sig-name·descname"><span·class="pre">enable_receiving</span></span><span·class="sig-paren">(</span><span·class="sig-paren">)</span><a·class="headerlink"·href="#pyudev.monitor.Monitor.enable_receiving"·title="Permalink·to·this·definition">¶</a></dt> | 80 | <span·class="sig-name·descname"><span·class="pre">enable_receiving</span></span><span·class="sig-paren">(</span><span·class="sig-paren">)</span><a·class="headerlink"·href="#pyudev.monitor.Monitor.enable_receiving"·title="Permalink·to·this·definition">¶</a></dt> |
Offset 93, 15 lines modified | Offset 93, 15 lines modified | ||
93 | </dd></dl> | 93 | </dd></dl> |
94 | <dl·class="py·method"> | 94 | <dl·class="py·method"> |
95 | <dt·class="sig·sig-object·py"·id="pyudev.monitor.Monitor.fileno"> | 95 | <dt·class="sig·sig-object·py"·id="pyudev.monitor.Monitor.fileno"> |
96 | <span·class="sig-name·descname"><span·class="pre">fileno</span></span><span·class="sig-paren">(</span><span·class="sig-paren">)</span><a·class="headerlink"·href="#pyudev.monitor.Monitor.fileno"·title="Permalink·to·this·definition">¶</a></dt> | 96 | <span·class="sig-name·descname"><span·class="pre">fileno</span></span><span·class="sig-paren">(</span><span·class="sig-paren">)</span><a·class="headerlink"·href="#pyudev.monitor.Monitor.fileno"·title="Permalink·to·this·definition">¶</a></dt> |
97 | <dd><p>Return·the·file·description·associated·with·this·monitor·as·integer.</p> | 97 | <dd><p>Return·the·file·description·associated·with·this·monitor·as·integer.</p> |
98 | <p>This·is·really·a·real·file·descriptor·;),·which·can·be·watched·and | 98 | <p>This·is·really·a·real·file·descriptor·;),·which·can·be·watched·and |
99 | <code·class="xref·py·py-func·docutils·literal·notranslate"><span·class="pre">select.select()</span></code>ed.</p> | 99 | <a·class="reference·external"·href="https://docs.python.org/3/library/select.html#select.select"·title="(in·Python·v3.11)"><code·class="xref·py·py-func·docutils·literal·notranslate"><span·class="pre">select.select()</span></code></a>ed.</p> |
100 | </dd></dl> | 100 | </dd></dl> |
101 | <dl·class="py·method"> | 101 | <dl·class="py·method"> |
102 | <dt·class="sig·sig-object·py"·id="pyudev.monitor.Monitor.filter_by"> | 102 | <dt·class="sig·sig-object·py"·id="pyudev.monitor.Monitor.filter_by"> |
103 | <span·class="sig-name·descname"><span·class="pre">filter_by</span></span><span·class="sig-paren">(</span><em·class="sig-param"><span·class="n"><span·class="pre">subsystem</span></span></em>,·<em·class="sig-param"><span·class="n"><span·class="pre">device_type</span></span><span·class="o"><span·class="pre">=</span></span><span·class="default_value"><span·class="pre">None</span></span></em><span·class="sig-paren">)</span><a·class="headerlink"·href="#pyudev.monitor.Monitor.filter_by"·title="Permalink·to·this·definition">¶</a></dt> | 103 | <span·class="sig-name·descname"><span·class="pre">filter_by</span></span><span·class="sig-paren">(</span><em·class="sig-param"><span·class="n"><span·class="pre">subsystem</span></span></em>,·<em·class="sig-param"><span·class="n"><span·class="pre">device_type</span></span><span·class="o"><span·class="pre">=</span></span><span·class="default_value"><span·class="pre">None</span></span></em><span·class="sig-paren">)</span><a·class="headerlink"·href="#pyudev.monitor.Monitor.filter_by"·title="Permalink·to·this·definition">¶</a></dt> |
104 | <dd><p>Filter·incoming·events.</p> | 104 | <dd><p>Filter·incoming·events.</p> |
105 | <p><code·class="docutils·literal·notranslate"><span·class="pre">subsystem</span></code>·is·a·byte·or·unicode·string·with·the·name·of·a | 105 | <p><code·class="docutils·literal·notranslate"><span·class="pre">subsystem</span></code>·is·a·byte·or·unicode·string·with·the·name·of·a |
Offset 160, 23 lines modified | Offset 160, 23 lines modified | ||
160 | failed.</p> | 160 | failed.</p> |
161 | </dd></dl> | 161 | </dd></dl> |
162 | <dl·class="py·method"> | 162 | <dl·class="py·method"> |
163 | <dt·class="sig·sig-object·py"·id="pyudev.monitor.Monitor.poll"> | 163 | <dt·class="sig·sig-object·py"·id="pyudev.monitor.Monitor.poll"> |
164 | <span·class="sig-name·descname"><span·class="pre">poll</span></span><span·class="sig-paren">(</span><em·class="sig-param"><span·class="n"><span·class="pre">timeout</span></span><span·class="o"><span·class="pre">=</span></span><span·class="default_value"><span·class="pre">None</span></span></em><span·class="sig-paren">)</span><a·class="headerlink"·href="#pyudev.monitor.Monitor.poll"·title="Permalink·to·this·definition">¶</a></dt> | 164 | <span·class="sig-name·descname"><span·class="pre">poll</span></span><span·class="sig-paren">(</span><em·class="sig-param"><span·class="n"><span·class="pre">timeout</span></span><span·class="o"><span·class="pre">=</span></span><span·class="default_value"><span·class="pre">None</span></span></em><span·class="sig-paren">)</span><a·class="headerlink"·href="#pyudev.monitor.Monitor.poll"·title="Permalink·to·this·definition">¶</a></dt> |
165 | <dd><p>Poll·for·a·device·event.</p> | 165 | <dd><p>Poll·for·a·device·event.</p> |
166 | <p>You·can·use·this·method·together·with·<code·class="xref·py·py-func·docutils·literal·notranslate"><span·class="pre">iter()</span></code>·to·synchronously | 166 | <p>You·can·use·this·method·together·with·<a·class="reference·external"·href="https://docs.python.org/3/library/functions.html#iter"·title="(in·Python·v3.11)"><code·class="xref·py·py-func·docutils·literal·notranslate"><span·class="pre">iter()</span></code></a>·to·synchronously |
167 | monitor·events·in·the·current·thread:</p> | 167 | monitor·events·in·the·current·thread:</p> |
168 | <div·class="highlight-default·notranslate"><div·class="highlight"><pre><span></span><span·class="k">for</span>·<span·class="n">device</span>·<span·class="ow">in</span>·<span·class="nb">iter</span><span·class="p">(</span><span·class="n">monitor</span><span·class="o">.</span><span·class="n">poll</span><span·class="p">,</span>·<span·class="kc">None</span><span·class="p">):</span> | 168 | <div·class="highlight-default·notranslate"><div·class="highlight"><pre><span></span><span·class="k">for</span>·<span·class="n">device</span>·<span·class="ow">in</span>·<span·class="nb">iter</span><span·class="p">(</span><span·class="n">monitor</span><span·class="o">.</span><span·class="n">poll</span><span·class="p">,</span>·<span·class="kc">None</span><span·class="p">):</span> |
169 | ····<span·class="nb">print</span><span·class="p">(</span><span·class="s1">'</span><span·class="si">{0.action}</span><span·class="s1">·on·</span><span·class="si">{0.device_path}</span><span·class="s1">'</span><span·class="o">.</span><span·class="n">format</span><span·class="p">(</span><span·class="n">device</span><span·class="p">))</span> | 169 | ····<span·class="nb">print</span><span·class="p">(</span><span·class="s1">'</span><span·class="si">{0.action}</span><span·class="s1">·on·</span><span·class="si">{0.device_path}</span><span·class="s1">'</span><span·class="o">.</span><span·class="n">format</span><span·class="p">(</span><span·class="n">device</span><span·class="p">))</span> |
170 | </pre></div> | 170 | </pre></div> |
171 | </div> | 171 | </div> |
172 | <p>Since·this·method·will·never·return·<code·class="docutils·literal·notranslate"><span·class="pre">None</span></code>·if·no·<code·class="docutils·literal·notranslate"><span·class="pre">timeout</span></code>·is | 172 | <p>Since·this·method·will·never·return·<code·class="docutils·literal·notranslate"><span·class="pre">None</span></code>·if·no·<code·class="docutils·literal·notranslate"><span·class="pre">timeout</span></code>·is |
173 | specified,·this·is·effectively·an·endless·loop.·With | 173 | specified,·this·is·effectively·an·endless·loop.·With |
174 | <code·class="xref·py·py-func·docutils·literal·notranslate"><span·class="pre">functools.partial()</span></code>·you·can·also·create·a·loop·that·only·waits | 174 | <a·class="reference·external"·href="https://docs.python.org/3/library/functools.html#functools.partial"·title="(in·Python·v3.11)"><code·class="xref·py·py-func·docutils·literal·notranslate"><span·class="pre">functools.partial()</span></code></a>·you·can·also·create·a·loop·that·only·waits |
175 | for·a·specified·time:</p> | 175 | for·a·specified·time:</p> |
176 | <div·class="highlight-default·notranslate"><div·class="highlight"><pre><span></span><span·class="k">for</span>·<span·class="n">device</span>·<span·class="ow">in</span>·<span·class="nb">iter</span><span·class="p">(</span><span·class="n">partial</span><span·class="p">(</span><span·class="n">monitor</span><span·class="o">.</span><span·class="n">poll</span><span·class="p">,</span>·<span·class="mi">3</span><span·class="p">),</span>·<span·class="kc">None</span><span·class="p">):</span> | 176 | <div·class="highlight-default·notranslate"><div·class="highlight"><pre><span></span><span·class="k">for</span>·<span·class="n">device</span>·<span·class="ow">in</span>·<span·class="nb">iter</span><span·class="p">(</span><span·class="n">partial</span><span·class="p">(</span><span·class="n">monitor</span><span·class="o">.</span><span·class="n">poll</span><span·class="p">,</span>·<span·class="mi">3</span><span·class="p">),</span>·<span·class="kc">None</span><span·class="p">):</span> |
177 | ····<span·class="nb">print</span><span·class="p">(</span><span·class="s1">'</span><span·class="si">{0.action}</span><span·class="s1">·on·</span><span·class="si">{0.device_path}</span><span·class="s1">'</span><span·class="o">.</span><span·class="n">format</span><span·class="p">(</span><span·class="n">device</span><span·class="p">))</span> | 177 | ····<span·class="nb">print</span><span·class="p">(</span><span·class="s1">'</span><span·class="si">{0.action}</span><span·class="s1">·on·</span><span·class="si">{0.device_path}</span><span·class="s1">'</span><span·class="o">.</span><span·class="n">format</span><span·class="p">(</span><span·class="n">device</span><span·class="p">))</span> |
178 | </pre></div> | 178 | </pre></div> |
179 | </div> | 179 | </div> |
180 | <p>This·loop·will·only·wait·three·seconds·for·a·new·device·event.·If·no | 180 | <p>This·loop·will·only·wait·three·seconds·for·a·new·device·event.·If·no |
181 | device·event·occurred·after·three·seconds,·the·loop·will·exit.</p> | 181 | device·event·occurred·after·three·seconds,·the·loop·will·exit.</p> |
Offset 262, 15 lines modified | Offset 262, 15 lines modified | ||
262 | <dd><p>Set·the·receive·buffer·<code·class="docutils·literal·notranslate"><span·class="pre">size</span></code>.</p> | 262 | <dd><p>Set·the·receive·buffer·<code·class="docutils·literal·notranslate"><span·class="pre">size</span></code>.</p> |
263 | <p><code·class="docutils·literal·notranslate"><span·class="pre">size</span></code>·is·the·requested·buffer·size·in·bytes,·as·integer.</p> | 263 | <p><code·class="docutils·literal·notranslate"><span·class="pre">size</span></code>·is·the·requested·buffer·size·in·bytes,·as·integer.</p> |
264 | <div·class="admonition·note"> | 264 | <div·class="admonition·note"> |
265 | <p·class="admonition-title">Note</p> | 265 | <p·class="admonition-title">Note</p> |
266 | <p>The·CAP_NET_ADMIN·capability·must·be·contained·in·the·effective | 266 | <p>The·CAP_NET_ADMIN·capability·must·be·contained·in·the·effective |
267 | capability·set·of·the·caller·for·this·method·to·succeed.··Otherwise | 267 | capability·set·of·the·caller·for·this·method·to·succeed.··Otherwise |
268 | <code·class="xref·py·py-exc·docutils·literal·notranslate"><span·class="pre">EnvironmentError</span></code>·will·be·raised,·with·<code·class="docutils·literal·notranslate"><span·class="pre">errno</span></code> | 268 | <code·class="xref·py·py-exc·docutils·literal·notranslate"><span·class="pre">EnvironmentError</span></code>·will·be·raised,·with·<code·class="docutils·literal·notranslate"><span·class="pre">errno</span></code> |
269 | set·to·<code·class="xref·py·py-data·docutils·literal·notranslate"><span·class="pre">EPERM</span></code>.··Unprivileged·processes·typically·lack | 269 | set·to·<a·class="reference·external"·href="https://docs.python.org/3/library/errno.html#errno.EPERM"·title="(in·Python·v3.11)"><code·class="xref·py·py-data·docutils·literal·notranslate"><span·class="pre">EPERM</span></code></a>.··Unprivileged·processes·typically·lack |
270 | this·capability.··You·can·check·the·capabilities·of·the·current | 270 | this·capability.··You·can·check·the·capabilities·of·the·current |
271 | process·with·the·<a·class="reference·external"·href="http://packages.python.org/python-prctl">python-prctl</a>·module:</p> | 271 | process·with·the·<a·class="reference·external"·href="http://packages.python.org/python-prctl">python-prctl</a>·module:</p> |
272 | <div·class="doctest·highlight-default·notranslate"><div·class="highlight"><pre><span></span><span·class="gp">>>>·</span><span·class="kn">import</span>·<span·class="nn">prctl</span> | 272 | <div·class="doctest·highlight-default·notranslate"><div·class="highlight"><pre><span></span><span·class="gp">>>>·</span><span·class="kn">import</span>·<span·class="nn">prctl</span> |
273 | <span·class="gp">>>>·</span><span·class="n">prctl</span><span·class="o">.</span><span·class="n">cap_effective</span><span·class="o">.</span><span·class="n">net_admin</span> | 273 | <span·class="gp">>>>·</span><span·class="n">prctl</span><span·class="o">.</span><span·class="n">cap_effective</span><span·class="o">.</span><span·class="n">net_admin</span> |
274 | </pre></div> | 274 | </pre></div> |
275 | </div> | 275 | </div> |
276 | </div> | 276 | </div> |
Offset 316, 17 lines modified | Offset 316, 17 lines modified | ||
316 | </dd></dl> | 316 | </dd></dl> |
317 | </dd></dl> | 317 | </dd></dl> |
318 | <dl·class="py·class"> | 318 | <dl·class="py·class"> |
319 | <dt·class="sig·sig-object·py"·id="pyudev.monitor.MonitorObserver"> | 319 | <dt·class="sig·sig-object·py"·id="pyudev.monitor.MonitorObserver"> |
320 | <em·class="property"><span·class="pre">class</span><span·class="w">·</span></em><span·class="sig-prename·descclassname"><span·class="pre">pyudev.monitor.</span></span><span·class="sig-name·descname"><span·class="pre">MonitorObserver</span></span><span·class="sig-paren">(</span><em·class="sig-param"><span·class="n"><span·class="pre">monitor</span></span></em>,·<em·class="sig-param"><span·class="n"><span·class="pre">event_handler</span></span><span·class="o"><span·class="pre">=</span></span><span·class="default_value"><span·class="pre">None</span></span></em>,·<em·class="sig-param"><span·class="n"><span·class="pre">callback</span></span><span·class="o"><span·class="pre">=</span></span><span·class="default_value"><span·class="pre">None</span></span></em>,·<em·class="sig-param"><span·class="o"><span·class="pre">*</span></span><span·class="n"><span·class="pre">args</span></span></em>,·<em·class="sig-param"><span·class="o"><span·class="pre">**</span></span><span·class="n"><span·class="pre">kwargs</span></span></em><span·class="sig-paren">)</span><a·class="headerlink"·href="#pyudev.monitor.MonitorObserver"·title="Permalink·to·this·definition">¶</a></dt> | 320 | <em·class="property"><span·class="pre">class</span><span·class="w">·</span></em><span·class="sig-prename·descclassname"><span·class="pre">pyudev.monitor.</span></span><span·class="sig-name·descname"><span·class="pre">MonitorObserver</span></span><span·class="sig-paren">(</span><em·class="sig-param"><span·class="n"><span·class="pre">monitor</span></span></em>,·<em·class="sig-param"><span·class="n"><span·class="pre">event_handler</span></span><span·class="o"><span·class="pre">=</span></span><span·class="default_value"><span·class="pre">None</span></span></em>,·<em·class="sig-param"><span·class="n"><span·class="pre">callback</span></span><span·class="o"><span·class="pre">=</span></span><span·class="default_value"><span·class="pre">None</span></span></em>,·<em·class="sig-param"><span·class="o"><span·class="pre">*</span></span><span·class="n"><span·class="pre">args</span></span></em>,·<em·class="sig-param"><span·class="o"><span·class="pre">**</span></span><span·class="n"><span·class="pre">kwargs</span></span></em><span·class="sig-paren">)</span><a·class="headerlink"·href="#pyudev.monitor.MonitorObserver"·title="Permalink·to·this·definition">¶</a></dt> |
321 | <dd><p>Bases:·<code·class="xref·py·py-class·docutils·literal·notranslate"><span·class="pre">Thread</span></code></p> | 321 | <dd><p>Bases:·<a·class="reference·external"·href="https://docs.python.org/3/library/threading.html#threading.Thread"·title="(in·Python·v3.11)"><code·class="xref·py·py-class·docutils·literal·notranslate"><span·class="pre">Thread</span></code></a></p> |
322 | <p>An·asynchronous·observer·for·device·events.</p> | 322 | <p>An·asynchronous·observer·for·device·events.</p> |
323 | <p>This·class·subclasses·<code·class="xref·py·py-class·docutils·literal·notranslate"><span·class="pre">Thread</span></code>·class·to·asynchronously | 323 | <p>This·class·subclasses·<a·class="reference·external"·href="https://docs.python.org/3/library/threading.html#threading.Thread"·title="(in·Python·v3.11)"><code·class="xref·py·py-class·docutils·literal·notranslate"><span·class="pre">Thread</span></code></a>·class·to·asynchronously |
324 | observe·a·<a·class="reference·internal"·href="#pyudev.monitor.Monitor"·title="pyudev.monitor.Monitor"><code·class="xref·py·py-class·docutils·literal·notranslate"><span·class="pre">Monitor</span></code></a>·in·a·background·thread:</p> | 324 | observe·a·<a·class="reference·internal"·href="#pyudev.monitor.Monitor"·title="pyudev.monitor.Monitor"><code·class="xref·py·py-class·docutils·literal·notranslate"><span·class="pre">Monitor</span></code></a>·in·a·background·thread:</p> |
325 | <div·class="doctest·highlight-default·notranslate"><div·class="highlight"><pre><span></span><span·class="gp">>>>·</span><span·class="kn">from</span>·<span·class="nn">pyudev</span>·<span·class="kn">import</span>·<span·class="n">Context</span><span·class="p">,</span>·<span·class="n">Monitor</span><span·class="p">,</span>·<span·class="n">MonitorObserver</span> | 325 | <div·class="doctest·highlight-default·notranslate"><div·class="highlight"><pre><span></span><span·class="gp">>>>·</span><span·class="kn">from</span>·<span·class="nn">pyudev</span>·<span·class="kn">import</span>·<span·class="n">Context</span><span·class="p">,</span>·<span·class="n">Monitor</span><span·class="p">,</span>·<span·class="n">MonitorObserver</span> |
326 | <span·class="gp">>>>·</span><span·class="n">context</span>·<span·class="o">=</span>·<span·class="n">Context</span><span·class="p">()</span> | 326 | <span·class="gp">>>>·</span><span·class="n">context</span>·<span·class="o">=</span>·<span·class="n">Context</span><span·class="p">()</span> |
327 | <span·class="gp">>>>·</span><span·class="n">monitor</span>·<span·class="o">=</span>·<span·class="n">Monitor</span><span·class="o">.</span><span·class="n">from_netlink</span><span·class="p">(</span><span·class="n">context</span><span·class="p">)</span> | 327 | <span·class="gp">>>>·</span><span·class="n">monitor</span>·<span·class="o">=</span>·<span·class="n">Monitor</span><span·class="o">.</span><span·class="n">from_netlink</span><span·class="p">(</span><span·class="n">context</span><span·class="p">)</span> |
328 | <span·class="gp">>>>·</span><span·class="n">monitor</span><span·class="o">.</span><span·class="n">filter_by</span><span·class="p">(</span><span·class="n">subsystem</span><span·class="o">=</span><span·class="s1">'input'</span><span·class="p">)</span> | 328 | <span·class="gp">>>>·</span><span·class="n">monitor</span><span·class="o">.</span><span·class="n">filter_by</span><span·class="p">(</span><span·class="n">subsystem</span><span·class="o">=</span><span·class="s1">'input'</span><span·class="p">)</span> |
329 | <span·class="gp">>>>·</span><span·class="k">def</span>·<span·class="nf">print_device_event</span><span·class="p">(</span><span·class="n">device</span><span·class="p">):</span> | 329 | <span·class="gp">>>>·</span><span·class="k">def</span>·<span·class="nf">print_device_event</span><span·class="p">(</span><span·class="n">device</span><span·class="p">):</span> |
330 | <span·class="gp">...·</span>····<span·class="nb">print</span><span·class="p">(</span><span·class="s1">'background·event·</span><span·class="si">{0.action}</span><span·class="s1">:·</span><span·class="si">{0.device_path}</span><span·class="s1">'</span><span·class="o">.</span><span·class="n">format</span><span·class="p">(</span><span·class="n">device</span><span·class="p">))</span> | 330 | <span·class="gp">...·</span>····<span·class="nb">print</span><span·class="p">(</span><span·class="s1">'background·event·</span><span·class="si">{0.action}</span><span·class="s1">:·</span><span·class="si">{0.device_path}</span><span·class="s1">'</span><span·class="o">.</span><span·class="n">format</span><span·class="p">(</span><span·class="n">device</span><span·class="p">))</span> |
Offset 338, 16 lines modified | Offset 338, 16 lines modified | ||
338 | </div> | 338 | </div> |
339 | <p>In·the·above·example,·input·device·events·will·be·printed·in·background, | 339 | <p>In·the·above·example,·input·device·events·will·be·printed·in·background, |
340 | until·<a·class="reference·internal"·href="#pyudev.monitor.MonitorObserver.stop"·title="pyudev.monitor.MonitorObserver.stop"><code·class="xref·py·py-meth·docutils·literal·notranslate"><span·class="pre">stop()</span></code></a>·is·called·on·<code·class="docutils·literal·notranslate"><span·class="pre">observer</span></code>.</p> | 340 | until·<a·class="reference·internal"·href="#pyudev.monitor.MonitorObserver.stop"·title="pyudev.monitor.MonitorObserver.stop"><code·class="xref·py·py-meth·docutils·literal·notranslate"><span·class="pre">stop()</span></code></a>·is·called·on·<code·class="docutils·literal·notranslate"><span·class="pre">observer</span></code>.</p> |
341 | <div·class="admonition·note"> | 341 | <div·class="admonition·note"> |
342 | <p·class="admonition-title">Note</p> | 342 | <p·class="admonition-title">Note</p> |
343 | <p>Instances·of·this·class·are·always·created·as·daemon·thread.··If·you·do | 343 | <p>Instances·of·this·class·are·always·created·as·daemon·thread.··If·you·do |
344 | not·want·to·use·daemon·threads·for·monitoring,·you·need·explicitly·set | 344 | not·want·to·use·daemon·threads·for·monitoring,·you·need·explicitly·set |
345 | <code·class="xref·py·py-attr·docutils·literal·notranslate"><span·class="pre">daemon</span></code>·to·<code·class="docutils·literal·notranslate"><span·class="pre">False</span></code>·before·invoking | ||
346 | <code·class="xref·py·py- | 345 | <a·class="reference·external"·href="https://docs.python.org/3/library/threading.html#threading.Thread.daemon"·title="(in·Python·v3.11)"><code·class="xref·py·py-attr·docutils·literal·notranslate"><span·class="pre">daemon</span></code></a>·to·<code·class="doc[·...·truncated·by·diffoscope;·len:·80,·SHA:·cf7520dd82f58ab8a34eb1e2506fabda35f09d7f40c2694bc83bea9679d0badc·...·] |
346 | <a·class="reference·external"·href="https://docs.python.org/3/library/threading.html#threading.Thread.start"·title="(in·Python·v3.11)"><code·class="xref·py·py-meth·docutils·literal·notranslate"><span·class="pre">start()</span></code></a>.</p> | ||
347 | </div> | 347 | </div> |
348 | <div·class="admonition·seealso"> | 348 | <div·class="admonition·seealso"> |
349 | <p·class="admonition-title">See·also</p> | 349 | <p·class="admonition-title">See·also</p> |
350 | <dl·class="simple"> | 350 | <dl·class="simple"> |
351 | <dt><code·class="xref·py·py-attr·docutils·literal·notranslate"><span·class="pre">Device.action</span></code></dt><dd><p>The·action·that·created·this·event.</p> | 351 | <dt><code·class="xref·py·py-attr·docutils·literal·notranslate"><span·class="pre">Device.action</span></code></dt><dd><p>The·action·that·created·this·event.</p> |
352 | </dd> | 352 | </dd> |
353 | <dt><code·class="xref·py·py-attr·docutils·literal·notranslate"><span·class="pre">Device.sequence_number</span></code></dt><dd><p>The·sequence·number·of·this·event.</p> | 353 | <dt><code·class="xref·py·py-attr·docutils·literal·notranslate"><span·class="pre">Device.sequence_number</span></code></dt><dd><p>The·sequence·number·of·this·event.</p> |
Offset 395, 15 lines modified | Offset 395, 15 lines modified | ||
Max diff block lines reached; 1681/20311 bytes (8.28%) of diff not shown. |
Offset 49, 16 lines modified | Offset 49, 16 lines modified | ||
49 | <p>Plugins·to·support·the·pyudev·testsuite.</p> | 49 | <p>Plugins·to·support·the·pyudev·testsuite.</p> |
50 | <p>The·following·plugins·are·provided·and·enabled:</p> | 50 | <p>The·following·plugins·are·provided·and·enabled:</p> |
51 | <table·class="autosummary·longtable·docutils·align-default"> | 51 | <table·class="autosummary·longtable·docutils·align-default"> |
52 | <tbody> | 52 | <tbody> |
53 | </tbody> | 53 | </tbody> |
54 | </table> | 54 | </table> |
55 | <section·id="pytest-namespace"> | 55 | <section·id="pytest-namespace"> |
56 | <h2><code·class="xref·py·py-mod·docutils·literal·notranslate"><span·class="pre">pytest</span></code>·namespace<a·class="headerlink"·href="#pytest-namespace"·title="Permalink·to·this·heading">¶</a></h2> | ||
57 | < | 56 | <h2><a·class="reference·external"·href="https://pytest.org/en/7.4.x/index.html#module-pytest"·title="(in·pytest·v7.4.1.dev10+g350122abb)"><code·class="xref·py·py-mod·docutils·literal·notranslate"><span·class="pre">pytest</span></code></a>·namespace<a·class=[·...·truncated·by·diffoscope;·len:·81,·SHA:·aca6111a968300d5a73906550e8f77644a31457818f4fc243612599e7cab2b62·...·]> |
57 | <p>The·plugin·adds·the·following·functions·to·the·<a·class="reference·external"·href="https://pytest.org/en/7.4.x/index.html#module-pytest"·title="(in·pytest·v7.4.1.dev10+g350122abb)"><code·class="xref·py·py-mod·docutils·literal·notranslate"><span·class="pre">pytest</span></code></a>·namespace:</p> | ||
58 | <section·id="fake-monitor-a-fake-monitor"> | 58 | <section·id="fake-monitor-a-fake-monitor"> |
59 | <h3><code·class="xref·py·py-mod·docutils·literal·notranslate"><span·class="pre">fake_monitor</span></code>·–·A·fake·<code·class="xref·py·py-class·docutils·literal·notranslate"><span·class="pre">Monitor</span></code><a·class="headerlink"·href="#fake-monitor-a-fake-monitor"·title="Permalink·to·this·heading">¶</a></h3> | 59 | <h3><code·class="xref·py·py-mod·docutils·literal·notranslate"><span·class="pre">fake_monitor</span></code>·–·A·fake·<code·class="xref·py·py-class·docutils·literal·notranslate"><span·class="pre">Monitor</span></code><a·class="headerlink"·href="#fake-monitor-a-fake-monitor"·title="Permalink·to·this·heading">¶</a></h3> |
60 | </section> | 60 | </section> |
61 | </section> | 61 | </section> |
62 | <section·id="funcargs"> | 62 | <section·id="funcargs"> |
63 | <h2>Funcargs<a·class="headerlink"·href="#funcargs"·title="Permalink·to·this·heading">¶</a></h2> | 63 | <h2>Funcargs<a·class="headerlink"·href="#funcargs"·title="Permalink·to·this·heading">¶</a></h2> |
64 | <p>The·plugin·provides·the·following·<span·class="xref·std·std-ref">funcargs</span>:</p> | 64 | <p>The·plugin·provides·the·following·<span·class="xref·std·std-ref">funcargs</span>:</p> |
Offset 81, 16 lines modified | Offset 81, 16 lines modified | ||
81 | </pre></div> | 81 | </pre></div> |
82 | </div> | 82 | </div> |
83 | <p><code·class="docutils·literal·notranslate"><span·class="pre">test_foo</span></code>·will·not·be·run·on·Travis·CI.</p> | 83 | <p><code·class="docutils·literal·notranslate"><span·class="pre">test_foo</span></code>·will·not·be·run·on·Travis·CI.</p> |
84 | </dd></dl> | 84 | </dd></dl> |
85 | </section> | 85 | </section> |
86 | <section·id="id1"> | 86 | <section·id="id1"> |
87 | <h2><code·class="xref·py·py-mod·docutils·literal·notranslate"><span·class="pre">pytest</span></code>·namespace<a·class="headerlink"·href="#id1"·title="Permalink·to·this·heading">¶</a></h2> | ||
88 | < | 87 | <h2><a·class="reference·external"·href="https://pytest.org/en/7.4.x/index.html#module-pytest"·title="(in·pytest·v7.4.1.dev10+g350122abb)"><code·class="xref·py·py-mod·docutils·literal·notranslate"><span·class="pre">pytest</span></code></a>·namespace<a·class=[·...·truncated·by·diffoscope;·len:·68,·SHA:·811667631ae99ab7b4fd774e658728136ddf25835515adf007e3ed83a11ec9fc·...·]> |
88 | <p>The·plugin·adds·the·following·functions·to·the·<a·class="reference·external"·href="https://pytest.org/en/7.4.x/index.html#module-pytest"·title="(in·pytest·v7.4.1.dev10+g350122abb)"><code·class="xref·py·py-mod·docutils·literal·notranslate"><span·class="pre">pytest</span></code></a>·namespace:</p> | ||
89 | </section> | 89 | </section> |
90 | </section> | 90 | </section> |
91 | ············<div·class="clearer"></div> | 91 | ············<div·class="clearer"></div> |
92 | ··········</div> | 92 | ··········</div> |
93 | ········</div> | 93 | ········</div> |