question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Feature Request: Add plugin support to enable new protocols

See original GitHub issue

Problem description

I was thinking maybe we could provide a plugin system so that people can build their own packages and provide support for other file systems/protocols, (e.g. dropbox:// to access a file on Dropbox) without having to put all of them in smart_open() and make it a heavyweight package. For example, one could implement https://github.com/RaRe-Technologies/smart_open/issues/228 as a plugin so that we don’t need to make everyone install the Azure Python client even if they’re never going to use it.

There is prior art around this. setuptools supports entry points for building plugins, and we could use pluggy to provide hooks for recognizing and implementing file system protocols. PyFilesystem2 does something very similar already so we could look there for inspiration.

Issue Analytics

  • State:closed
  • Created 3 years ago
  • Comments:6 (2 by maintainers)

github_iconTop GitHub Comments

2reactions
mpenkovcommented, Mar 23, 2020

It’s an interesting idea, but I don’t think it’s worth the effort at the moment, because it introduces additional complexity and doesn’t solve any problems that are hurting us at the moment.

For example, if we started to get overwhelmed with dependencies like boto3, gcs, etc. (currently, it’s manageable), then we could make them optional, like we do with paramiko.

If people were contributing backends faster than we could merge PRs (again, we’re nowhere near that now) then it would make sense to think about plugins.

0reactions
darguetacommented, Mar 24, 2020

Will do, but don’t count on it being anytime soon.

Read more comments on GitHub >

github_iconTop Results From Across the Web

[Simple Feature Requests Free - User Feedback Board] Support
This plugin is dead – do not use it for new projects ... Single feature page not working ... Disable title link and...
Read more >
Feature Request - Tenable Community
Please submit feature request as support Case. ... can do a custom policy, and only enable the one or two plugins. and then...
Read more >
Enable native ActivityPub support for WordPress.com sites
The ActivityPub protocol can be supported on WordPress sites through the use of this plugin: https://wordpress.org/plugins/activitypub/.
Read more >
Feature Requests - Platform and API - Overwolf Developers Q&A
Topic Replies Views Activity How to request a new feature · category‑overvew 3 795 May 23, 2019 C# Plugin Elevated Mode 3 67 December 8,...
Read more >
Support Plugins / Add-Ons - Mimestream Roadmap
Support Plugins / Add-Ons. Develop a plugin API to enable development of plugins for Mimestream. Let us know what services you'd want to...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found