| 
8 | 8 | import os  | 
9 | 9 | from collections import OrderedDict  | 
10 | 10 | from typing import List  | 
 | 11 | +from typing import Optional  | 
 | 12 | +from typing import Union  | 
11 | 13 | 
 
  | 
12 | 14 | import attr  | 
13 | 15 | import py  | 
 | 
19 | 21 | from _pytest import nodes  | 
20 | 22 | from _pytest._io import TerminalWriter  | 
21 | 23 | from _pytest.config import Config  | 
 | 24 | +from _pytest.config import ExitCode  | 
 | 25 | +from _pytest.config.argparsing import Parser  | 
22 | 26 | from _pytest.main import Session  | 
23 | 27 | 
 
  | 
24 | 28 | README_CONTENT = """\  | 
@@ -264,7 +268,7 @@ def pytest_collection_modifyitems(self, session, config, items):  | 
264 | 268 |             else:  | 
265 | 269 |                 self._report_status += "not deselecting items."  | 
266 | 270 | 
 
  | 
267 |  | -    def pytest_sessionfinish(self, session):  | 
 | 271 | +    def pytest_sessionfinish(self, session: Session) -> None:  | 
268 | 272 |         config = self.config  | 
269 | 273 |         if config.getoption("cacheshow") or hasattr(config, "slaveinput"):  | 
270 | 274 |             return  | 
@@ -306,15 +310,15 @@ def pytest_collection_modifyitems(  | 
306 | 310 |     def _get_increasing_order(self, items):  | 
307 | 311 |         return sorted(items, key=lambda item: item.fspath.mtime(), reverse=True)  | 
308 | 312 | 
 
  | 
309 |  | -    def pytest_sessionfinish(self, session):  | 
 | 313 | +    def pytest_sessionfinish(self, session: Session) -> None:  | 
310 | 314 |         config = self.config  | 
311 | 315 |         if config.getoption("cacheshow") or hasattr(config, "slaveinput"):  | 
312 | 316 |             return  | 
313 | 317 | 
 
  | 
314 | 318 |         config.cache.set("cache/nodeids", self.cached_nodeids)  | 
315 | 319 | 
 
  | 
316 | 320 | 
 
  | 
317 |  | -def pytest_addoption(parser):  | 
 | 321 | +def pytest_addoption(parser: Parser) -> None:  | 
318 | 322 |     group = parser.getgroup("general")  | 
319 | 323 |     group.addoption(  | 
320 | 324 |         "--lf",  | 
@@ -372,16 +376,18 @@ def pytest_addoption(parser):  | 
372 | 376 |     )  | 
373 | 377 | 
 
  | 
374 | 378 | 
 
  | 
375 |  | -def pytest_cmdline_main(config):  | 
 | 379 | +def pytest_cmdline_main(config: Config) -> Optional[Union[int, ExitCode]]:  | 
376 | 380 |     if config.option.cacheshow:  | 
377 | 381 |         from _pytest.main import wrap_session  | 
378 | 382 | 
 
  | 
379 | 383 |         return wrap_session(config, cacheshow)  | 
 | 384 | +    return None  | 
380 | 385 | 
 
  | 
381 | 386 | 
 
  | 
382 | 387 | @pytest.hookimpl(tryfirst=True)  | 
383 |  | -def pytest_configure(config):  | 
384 |  | -    config.cache = Cache.for_config(config)  | 
 | 388 | +def pytest_configure(config: Config) -> None:  | 
 | 389 | +    # Type ignored: pending mechanism to store typed objects scoped to config.  | 
 | 390 | +    config.cache = Cache.for_config(config)  # type: ignore # noqa: F821  | 
385 | 391 |     config.pluginmanager.register(LFPlugin(config), "lfplugin")  | 
386 | 392 |     config.pluginmanager.register(NFPlugin(config), "nfplugin")  | 
387 | 393 | 
 
  | 
 | 
0 commit comments