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

Recursing problem with new plugin API on master #13471

Closed
1 of 10 tasks
nerohmot opened this issue Aug 4, 2020 · 0 comments · Fixed by #13472
Closed
1 of 10 tasks

Recursing problem with new plugin API on master #13471

nerohmot opened this issue Aug 4, 2020 · 0 comments · Fixed by #13472
Projects

Comments

@nerohmot
Copy link

nerohmot commented Aug 4, 2020

Issue Report Checklist

  • Searched the issues page for similar reports
  • Read the relevant sections of the Spyder Troubleshooting Guide and followed its advice
  • Reproduced the issue after updating with conda update spyder (or pip, if not using Anaconda)
  • Could not reproduce inside jupyter qtconsole (if console-related)
  • Tried basic troubleshooting (if a bug/error)
    • Restarted Spyder
    • Reset preferences with spyder --reset
    • Reinstalled the latest version of Anaconda
    • Tried the other applicable steps from the Troubleshooting Guide
  • Completed the Problem Description, Steps to Reproduce and Version sections below

Problem Description

@goanpeca

open_project function project plugin doesn't behave as expected, as spyder/plugins/projects/plugin.py#L373 is called recursively ...

Solution/Work-around

initialization of project instance should not take "self" as argument, this has the consequence that the
project will call itself (it's open_project function) each time the Semi-ATE Plugin called it's open_project
function, and then we stuck in a circle relationship in which Semi-ATE Plugin called open_project function
of the project plugin and vise versa !!!

image

        if project is None:
            project_type = self._load_project_type(path)
            project_types = self.get_project_types()
            if project_type in project_types:
                # project = project_types[project_type](path, self)  !!
                project_type_class = project_types[project_type]
                project = project_type_class(path, project_type_class._PARENT_PLUGIN
            else:
                project = EmptyProject(path, self)

What steps reproduce the problem?

  1. Open an existing Semi-ATE project or Create a Semi-ATE project then restart spyder

What is the expected output? What do you see instead?

N/A

Paste Traceback/Error Below (if applicable)

N/A

Versions

  • Spyder version: master branch
  • Python version: 3.7
  • Qt version: N/A
  • PyQt version: N/A
  • Operating System name/version: observed on Linux&Windows

Dependencies

N/A
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
No open projects
v5.0alpha1
Release
Development

Successfully merging a pull request may close this issue.

1 participant