Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

PR: Add option to prepend or append Pythonpath Manager paths to sys.path #21769

Open
wants to merge 33 commits into
base: master
Choose a base branch
from

Commits on Jun 19, 2024

  1. Configuration menu
    Copy the full SHA
    97ca54b View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    f951137 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    b723d69 View commit details
    Browse the repository at this point in the history
  4. Add path priority to IPython Console plugin

    Remove SPY_PYTHONPATH; run update_syspath on setup_spyder_kernel.
    
    I think this would be much cleaner if the the emitted signal carried old/new spyder_pythonpath instead of the dictionary. I don't know of any plugin listening for sig_pythonpath_changed that requires the dictionary version.
    mrclary committed Jun 19, 2024
    Configuration menu
    Copy the full SHA
    942ac29 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    34a8310 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    1a2588e View commit details
    Browse the repository at this point in the history
  7. Update ipythonconsole plugin tests

    test_ipythoncosonle.py had many failures on latest master; attempting CI=1 skipped many tests but hangs on test_pdb_ignore_lib[True]
    mrclary committed Jun 19, 2024
    Configuration menu
    Copy the full SHA
    8849115 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    b0f10f2 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    db17e6a View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    4a7772c View commit details
    Browse the repository at this point in the history
  11. Convert (path, project_path, not_active_path) to (user_paths, project…

    …_paths, system_paths) and dictionary type
    mrclary committed Jun 19, 2024
    Configuration menu
    Copy the full SHA
    ce51e24 View commit details
    Browse the repository at this point in the history
  12. Only set user_paths, project_paths, system_paths, and prioritize in u…

    …pdate_paths method and call setup in update-paths method.
    
    This will allow the container to instantiate the PathManager widget before providing paths. Paths will not be retrieved or determined within the widget, only passed to it by the container.
    mrclary committed Jun 19, 2024
    Configuration menu
    Copy the full SHA
    69f8394 View commit details
    Browse the repository at this point in the history
  13. Send new user paths, system paths, and prioritize back to container.

    These will be dictionaries and the container will handle updating the pythonpath_manager configuration and assembling the final spyder_pythonpath. There is no need for _update_system_path method because the container will handle updates to the underlying system path. Again, the widget will only handle user-interactive changes.
    mrclary committed Jun 19, 2024
    Configuration menu
    Copy the full SHA
    b5f902c View commit details
    Browse the repository at this point in the history
  14. Configuration menu
    Copy the full SHA
    8fa393f View commit details
    Browse the repository at this point in the history
  15. Remove algorithm to save system PYTHONPATH.

    This will be done in the container instead.
    mrclary committed Jun 19, 2024
    Configuration menu
    Copy the full SHA
    86c6178 View commit details
    Browse the repository at this point in the history
  16. Configuration menu
    Copy the full SHA
    e7e3ab5 View commit details
    Browse the repository at this point in the history
  17. Update container attributes (path, not_active_path, project_path, pri…

    …oritize) -> (_user_paths, _system_paths, _project_paths, _prioritize, _spyder_pythonpath). Path lists are now OrderedDict
    
    * Simplifies _load_pythonpath -> _load_paths
    * Move migration method from setup to _load_paths
    mrclary committed Jun 19, 2024
    Configuration menu
    Copy the full SHA
    93c2118 View commit details
    Browse the repository at this point in the history
  18. Revise configuration migration method.

    * Promptly exits if remnants of old configuration are not present
    * Removes remnants of old configuration if present
    * Constructs user paths from old configuration remnants
    mrclary committed Jun 19, 2024
    Configuration menu
    Copy the full SHA
    30007d2 View commit details
    Browse the repository at this point in the history
  19. Revise _save_paths

    * Configuration keys and private attributes for user paths, system paths, prioritize, and spyder_pythonpath are set conditionally in this method and nowhere else.
    * sig_pythonpath_changed is conditionally emitted from this method and nowhere else. This signal now sends only the spyder_pythonpath and prioritize, not the old spyder_pythonpath. Subscribers should update accordingly.
    mrclary committed Jun 19, 2024
    Configuration menu
    Copy the full SHA
    8eedf2f View commit details
    Browse the repository at this point in the history
  20. Simplify get_spyder_pythonpath. spyder_pythonpath is now straightforw…

    …ardly constructed from project, user, and system paths attributes.
    mrclary committed Jun 19, 2024
    Configuration menu
    Copy the full SHA
    a585a63 View commit details
    Browse the repository at this point in the history
  21. Simplify update_active_project_path. sig_pythonpath_changed is emitte…

    …d in _save_paths if spyder_pythonpath is changed.
    mrclary committed Jun 19, 2024
    Configuration menu
    Copy the full SHA
    5cf2241 View commit details
    Browse the repository at this point in the history
  22. Update show_path_manager method. Note that PathManager.setup is calle…

    …d in PathManager.updat_paths
    mrclary committed Jun 19, 2024
    Configuration menu
    Copy the full SHA
    9a33e60 View commit details
    Browse the repository at this point in the history
  23. Configuration menu
    Copy the full SHA
    5d7e736 View commit details
    Browse the repository at this point in the history
  24. Propagate changes to sig_pythonpath_changed to ipythonconsole plugin.…

    … Note that spyder-kernels must be updated to accommodate.
    mrclary committed Jun 19, 2024
    Configuration menu
    Copy the full SHA
    95f62a3 View commit details
    Browse the repository at this point in the history
  25. Configuration menu
    Copy the full SHA
    9c18fc3 View commit details
    Browse the repository at this point in the history
  26. Update main window test

    mrclary committed Jun 19, 2024
    Configuration menu
    Copy the full SHA
    73a2f10 View commit details
    Browse the repository at this point in the history
  27. Update export_pythonpath

    mrclary committed Jun 19, 2024
    Configuration menu
    Copy the full SHA
    7db0ee2 View commit details
    Browse the repository at this point in the history
  28. Update widget icon.

    Icon and tooltip are changed to reflect current state.
    mrclary committed Jun 19, 2024
    Configuration menu
    Copy the full SHA
    dc88c48 View commit details
    Browse the repository at this point in the history
  29. Apply suggestions from code review

    Co-authored-by: Jitse Niesen <jitseniesen@yahoo.com>
    
    Typographical errors.
    Improved docstring clarity
    mrclary committed Jun 19, 2024
    Configuration menu
    Copy the full SHA
    cd27c2f View commit details
    Browse the repository at this point in the history
  30. Configuration menu
    Copy the full SHA
    bf9ef78 View commit details
    Browse the repository at this point in the history
  31. Python 3.8 does not support | operator on OrderedDict.

    The desired affect is project paths | user paths | system paths, where the paths are in that order and are overwritten in that order. System paths cannot overwrite user paths, which cannot overwrite project paths, i.e we cannot just do project_paths.update(user_paths) etc.
    mrclary committed Jun 19, 2024
    Configuration menu
    Copy the full SHA
    1d98114 View commit details
    Browse the repository at this point in the history
  32. git subrepo pull --branch=ppm-syspath --remote=https://github.com/mrc…

    …lary/spyder-kernels.git --update --force external-deps/spyder-kernels
    
    subrepo:
      subdir:   "external-deps/spyder-kernels"
      merged:   "1285e11fd"
    upstream:
      origin:   "https://github.com/mrclary/spyder-kernels.git"
      branch:   "ppm-syspath"
      commit:   "1285e11fd"
    git-subrepo:
      version:  "0.4.6"
      origin:   "???"
      commit:   "???"
    mrclary committed Jun 19, 2024
    Configuration menu
    Copy the full SHA
    91f2b10 View commit details
    Browse the repository at this point in the history
  33. git subrepo pull --branch=ppm-syspath --remote=https://github.com/mrc…

    …lary/python-lsp-server.git --update --force external-deps/python-lsp-server
    
    subrepo:
      subdir:   "external-deps/python-lsp-server"
      merged:   "8c8807af5"
    upstream:
      origin:   "https://github.com/mrclary/python-lsp-server.git"
      branch:   "ppm-syspath"
      commit:   "8c8807af5"
    git-subrepo:
      version:  "0.4.6"
      origin:   "???"
      commit:   "???"
    mrclary committed Jun 19, 2024
    Configuration menu
    Copy the full SHA
    cd3aedc View commit details
    Browse the repository at this point in the history