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 plugin teardown operations to the plugin registry #16012

Merged
merged 68 commits into from
Oct 6, 2021

Conversation

andfoy
Copy link
Member

@andfoy andfoy commented Jul 13, 2021

Description of Changes

This PR adds plugin teardown capabilities to the already existing plugin registration mechanism. By using the teardown functions, Spyder will be able to disable and enable plugins without restarting.

image

  • Wrote at least one-line docstrings (for any new functions)
  • Added unit test(s) covering the changes (if testable)
  • Included a screenshot or animation (if affecting the UI, see Licecap)

Issue(s) Resolved

Fixes #15594

Affirmation

By submitting this Pull Request or typing my (user)name below,
I affirm the Developer Certificate of Origin
with respect to all commits and content included in this PR,
and understand I am releasing the same under Spyder's MIT (Expat) license.

I certify the above statement is true and correct: @andfoy

Stacked PR Chain: [spy-plugin-registry-teardown]

PR Title Merges Into
#16012 [spy-plugin-registry-teardown] PR: Add plugin teardown operations to the plugin registry N/A
andfoy#1 [spy-plugin-registry-teardown] PR: Migrate application teardown to use the new teardown mechanism #16012
andfoy#2 [spy-plugin-registry-teardown] PR: Migrate breakpoints to use the new teardown mechanism andfoy#1
andfoy#3 [spy-plugin-registry-teardown] PR: Migrate completions plugin to use the new teardown mechanism andfoy#2
andfoy#4 [spy-plugin-registry-teardown] PR: Migrate Console, Explorer and Find in files to use the new teardown mechanism andfoy#3
andfoy#5 [spy-plugin-registry-teardown] PR: Migrate help to use the new teardown mechanism andfoy#4
andfoy#6 [spy-plugin-registry-teardown] PR: Migrate history and layouts to use the new teardown mechanism andfoy#5
andfoy#7 [spy-plugin-registry-teardown] PR: Migrate Outline explorer, plots, preferences and profiler to use the new teardown mechanism andfoy#6
andfoy#8 [spy-plugin-registry-teardown] PR: Migrate projects to use the new teardown mechanism andfoy#7
andfoy#9 [spy-plugin-registry-teardown] PR: Migrate pylint, run and shortcuts to use the new teardown mechanism andfoy#8
andfoy#10 [spy-plugin-registry-teardown] PR: Migrate statusbar, toolbar and tours to use the new teardown mechanism andfoy#9
andfoy#11 [spy-plugin-registry-teardown] PR: Migrate variable explorer and working directory to use the new teardown mechanism andfoy#10
andfoy#12 [spy-plugin-registry-teardown] PR: Add preference page to enable and disable plugins andfoy#11

@andfoy andfoy added this to the v5.1.0 milestone Jul 13, 2021
@andfoy andfoy self-assigned this Jul 13, 2021
@pep8speaks
Copy link

pep8speaks commented Jul 13, 2021

Hello @andfoy! Thanks for updating this PR. We checked the lines you've touched for PEP 8 issues, and found:

Line 26:80: E501 line too long (80 > 79 characters)
Line 27:80: E501 line too long (82 > 79 characters)
Line 29:80: E501 line too long (81 > 79 characters)
Line 100:80: E501 line too long (81 > 79 characters)
Line 103:80: E501 line too long (81 > 79 characters)

Line 123:80: E501 line too long (94 > 79 characters)
Line 126:80: E501 line too long (94 > 79 characters)
Line 213:33: E127 continuation line over-indented for visual indent

Line 1466:80: E501 line too long (81 > 79 characters)
Line 1827:14: E128 continuation line under-indented for visual indent

Line 265:80: E501 line too long (83 > 79 characters)

Line 110:80: E501 line too long (80 > 79 characters)
Line 112:21: E127 continuation line over-indented for visual indent
Line 310:5: E303 too many blank lines (2)

Line 138:80: E501 line too long (80 > 79 characters)

Line 337:80: E501 line too long (85 > 79 characters)
Line 338:80: E501 line too long (88 > 79 characters)

Comment last updated at 2021-10-06 22:37:21 UTC

@andfoy andfoy changed the title PR: Add plugin teardown operations to the plugin registry [spy-plugin-registry-teardown] PR: Add plugin teardown operations to the plugin registry Jul 14, 2021
@andfoy andfoy force-pushed the implement_plugin_teardown branch from 3f14f7b to 5fff317 Compare July 14, 2021 22:47
@andfoy andfoy changed the base branch from master to 5.x July 14, 2021 23:48
@andfoy andfoy force-pushed the implement_plugin_teardown branch 2 times, most recently from f147a4f to 9a844b4 Compare July 15, 2021 00:04
@andfoy andfoy force-pushed the implement_plugin_teardown branch 2 times, most recently from 53c3c26 to 4c91825 Compare July 15, 2021 19:28
@andfoy andfoy force-pushed the implement_plugin_teardown branch 2 times, most recently from 24407ef to aaefe8d Compare July 16, 2021 19:13
@ccordoba12 ccordoba12 modified the milestones: v5.1.0, v5.1.1 Jul 24, 2021
@ccordoba12 ccordoba12 modified the milestones: v5.1.1, v5.1.2 Aug 2, 2021
@ccordoba12 ccordoba12 removed this from the v5.1.2 milestone Aug 11, 2021
@andfoy andfoy changed the title [spy-plugin-registry-teardown] PR: Add plugin teardown operations to the plugin registry PR: Add plugin teardown operations to the plugin registry Oct 6, 2021
Copy link
Member

@ccordoba12 ccordoba12 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hey @andfoy, one last, tiny review, then this should be (at last!) ready.

.github/workflows/test-linux.yml Outdated Show resolved Hide resolved
.github/workflows/test-mac.yml Outdated Show resolved Hide resolved
.github/workflows/test-win.yml Outdated Show resolved Hide resolved
Copy link
Member

@ccordoba12 ccordoba12 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks a lot @andfoy for your hard work and patience with this one. This is a great improvement!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants