Added ellipses for skeleton processing progress messages
Switched from showing balloons to logging errors for serious skeleton generation exceptions
Moved skeleton generation progress on adding a Python interpreter to background
Nullity annotations for overridden methods
Removed unused PythonSdkType.switchPathToInterpreter()
Call a static method via its defining class, not its subclass
Don't report unresolved references and unused imports if the project interpreter is not selected (PY-11589)
Return unknown return type for generator functions if the built-in generator type is not found
Merge branch 'skeletons-in-background' into no-unresolved-without-sdk
Don't report unresolved references and unused imports during skeletons generation
Don't show python-skeletons path in the Python interpreter paths tab (PY-11218)
Don't add python-skeletons to Python paths during skeletons generation
Switched to synchronized count of running Python skeleton generators
Use default Python interpreter from PATH on opening a directory for the first time (PY-4733)
Merge branch 'no-unresolved-without-sdk'
[log] Correctly load details of commits around the selected commit

PROBLEM:
To improve loading commit details we don't load it just for one
selected commit: instead we take several commits before and after it
in the table - and load details of all of them in a single command,
and then save to the cache.

However, we used to work only with Nodes in the graph. And when the
log is filtered, and the graph is built only for the part of the log,
there can be no Nodes for selected Hashes (IDEA-116718). Also commits
which stay near each other in the filtered list, can stay far away in
the graph => loading batch of Nodes around it won't affect commits
which are really around selected one in the current table view
(IDEA-116834).

SOLUTION:
* Declare AroundProvider interface which is to identify which commits
  are currently around the selected one.
* Provide different implementations for logs with graph and without it.
* Since graph model works with Nodes, and non-graph model works with
  Hashes, parametrize AroundProvider with the CommitId type.
* Move load-around-stuff from DataGetter to the NodeAroundProvider,
  and a single DataGetter#getCommitData which works with different
  types of commit ids with the help of supplied AroundProvider
  (instead of separate implementations for Node and for Hash).
IDEA-118245 Retain the last used command line in the Execute Maven Goal dialog