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 May 31, 2024

  1. Configuration menu
    Copy the full SHA
    888d15a View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    9a2d18f View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    cda2fff 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 May 31, 2024
    Configuration menu
    Copy the full SHA
    63f9bb2 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    099089e View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    2ce811e 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 May 31, 2024
    Configuration menu
    Copy the full SHA
    7d12f9d View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    6880a0a View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    9995525 View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    892a79b 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 May 31, 2024
    Configuration menu
    Copy the full SHA
    123586c 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 May 31, 2024
    Configuration menu
    Copy the full SHA
    af77a0d 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 May 31, 2024
    Configuration menu
    Copy the full SHA
    7826390 View commit details
    Browse the repository at this point in the history
  14. Configuration menu
    Copy the full SHA
    0476a6c 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 May 31, 2024
    Configuration menu
    Copy the full SHA
    dc7ef7c View commit details
    Browse the repository at this point in the history
  16. Configuration menu
    Copy the full SHA
    d276f5b 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 May 31, 2024
    Configuration menu
    Copy the full SHA
    ec4023e 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 May 31, 2024
    Configuration menu
    Copy the full SHA
    271ebf2 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 May 31, 2024
    Configuration menu
    Copy the full SHA
    6941cdc 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 May 31, 2024
    Configuration menu
    Copy the full SHA
    60110cf 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 May 31, 2024
    Configuration menu
    Copy the full SHA
    33b5964 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 May 31, 2024
    Configuration menu
    Copy the full SHA
    8c750c8 View commit details
    Browse the repository at this point in the history
  23. Configuration menu
    Copy the full SHA
    3d519fc 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 May 31, 2024
    Configuration menu
    Copy the full SHA
    a1ce825 View commit details
    Browse the repository at this point in the history
  25. Configuration menu
    Copy the full SHA
    29d2596 View commit details
    Browse the repository at this point in the history
  26. Update main window test

    mrclary committed May 31, 2024
    Configuration menu
    Copy the full SHA
    63ba87a View commit details
    Browse the repository at this point in the history
  27. Update export_pythonpath

    mrclary committed May 31, 2024
    Configuration menu
    Copy the full SHA
    189e56f 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 May 31, 2024
    Configuration menu
    Copy the full SHA
    94eced2 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 May 31, 2024
    Configuration menu
    Copy the full SHA
    64b1b0f View commit details
    Browse the repository at this point in the history
  30. Configuration menu
    Copy the full SHA
    21dd974 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 May 31, 2024
    Configuration menu
    Copy the full SHA
    74bf1ae 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/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 May 31, 2024
    Configuration menu
    Copy the full SHA
    e91e283 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/spyder-kernels.git --update --force external-deps/spyder-kernels
    
    subrepo:
      subdir:   "external-deps/spyder-kernels"
      merged:   "bd5fc817f"
    upstream:
      origin:   "https://github.com/mrclary/spyder-kernels.git"
      branch:   "ppm-syspath"
      commit:   "bd5fc817f"
    git-subrepo:
      version:  "0.4.6"
      origin:   "???"
      commit:   "???"
    mrclary committed May 31, 2024
    Configuration menu
    Copy the full SHA
    f93eb7d View commit details
    Browse the repository at this point in the history