Skip to content

Plugins development: Phase two ✌️ 🔌  #11820

@travishathaway

Description

@travishathaway

Summary

This epic outlines the development that will be undertaken during the second phase of development for plugins in conda. We hope that this successfully summarizes all efforts surrounding plugins and serves as a one-stop-shop for those wishing to know how we are progressing. Below, you will find epics related to our ongoing plugins work. These epics are primarily new plugin hooks we will be adding, new plugins themselves or other larger chunks of work related to plugins. Additionally, you will find a list of miscellaneous issues related to this phase of plugin work.

We also invite community members to use this epic as a place to discuss the ongoing work of plugins, especially if they are interested in getting involved with these ongoing development efforts.

What are our goals?

In the initial phase of plugin development, we set out to develop a prototype for how our plugin system could look like. During that phase, we added crucial components to conda such as the pluggy dependency and a hook to add conda sub-commands as registered plugins. Also included in this development were the beginnings of a separate repository that will hold example plugins. Although this initial work was a big step forward in accomplishing our ultimate goal of creating a plugin system, there is still a lot of work left to do to make this a fully featured system.

For the second phase of this work, we intend to accomplish the following goals:

  • Create several new hooks that will allow further overriding and customizing conda's behavior (e.g. hooks for HTTP requests and overriding the solver)
  • Add examples for how to use these hooks to our examples repository
  • Release a plugin for the libmamba solver (this will utilize our new solver hook)
  • Release a plugin for overriding HTTP calls within conda
  • Create lots of new documentation that will empower our community to begin writing their own plugins
  • Further refine our existing plugin hook for creating new conda sub-commands

Plugin Epics 📚

Here is a list of all the ongoing epics that are related to our high-level goals above.

Administrative Tasks

Plugin Issues 📄

Here is a list of miscellaneous tasks related to completing this phase of development that were not large enough for their own epic.

Documentation

New plugin example templates

Refinements to existing plugin system

Metadata

Metadata

Labels

epica highlevel collection of smaller related issueslocked[bot] locked due to inactivitypluginspertains to a plugin/subcommandsource::anacondacreated by members of Anaconda, Inc.

Type

No type

Projects

Status

🏁 Finished

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions