Because the check for existence of a valid user-config.py file is performed immediately on import of the pywikibot module, and results in a fatal error if that check fails, the check interferes with the ability to access the module documentation using pydoc in the absence of a configuration file or supported override:
$ pip3 install --user pywikibot # Before $ pydoc3 pywikibot problem in pywikibot - RuntimeError: No user-config.py found in directory '/path/to/current/directory'. Please check that user-config.py is stored in the correct location. Directory where user-config.py is searched is determined as follows: Return the directory in which user-specific information is stored. This is determined in the following order: 1. If the script was called with a -dir: argument, use the directory provided in this argument. 2. If the user has a PYWIKIBOT_DIR environment variable, use the value of it. 3. If user-config is present in current directory, use the current directory. 4. If user-config is present in pwb.py directory, use that directory 5. Use (and if necessary create) a 'pywikibot' folder under 'Application Data' or 'AppData\Roaming' (Windows) or '.pywikibot' directory (Unix and similar) under the user's home directory. Set PYWIKIBOT_NO_USER_CONFIG=1 to disable loading user-config.py @param test_directory: Assume that a user config file exists in this directory. Used to test whether placing a user config file in this directory will cause it to be selected as the base directory. @type test_directory: str or None @rtype: str # After $ PYWIKIBOT_NO_USER_CONFIG=1 pydoc3 pywikibot Skipping loading of user-config.py. family and mylang are not set. Defaulting to family='wikipedia' and mylang='test'. Help on package pywikibot: NAME pywikibot - The initialization file for the Pywikibot framework. PACKAGE CONTENTS __metadata__ _wbtypes bot bot_choice comms (package) config2 cosmetic_changes daemonize data (package) date diff echo editor exceptions families (package) family fixes flow i18n interwiki_graph logentries logging login page (package) pagegenerators plural proofreadpage site (package) site_detect specialbots (package) textlib throttle titletranslate tools (package) userinterfaces (package) version xmlreader SUBMODULES config [...]
Obviously, this is a low-severity issue as it can be worked around with little trouble by simply inserting PYWIKIBOT_NO_USER_CONFIG=1 into the environment, or even just creating a dummy user-config.py file. The current behavior is little more than a paper cut.
Still, it's one that will divide users into just two basic groups: either this issue becomes their very _first_ impression of pywikibot, or they never encounter it at all. If there's any way to put off the config-file check so that it's only performed when the module code is being executed (as opposed to merely imported) — or even just to special-case importing into the pydoc environment, specifically — it'd make the experience of the first group a bit more pleasant.