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 '/home/ferd/rpmbuild/REPOS/libopenshot/worktree-package/build/packaging/python/libopenshot'.
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.