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

Custom Plug‐In Tasks #195

Closed
SDGGiesbrecht opened this issue Nov 9, 2018 · 3 comments
Closed

Custom Plug‐In Tasks #195

SDGGiesbrecht opened this issue Nov 9, 2018 · 3 comments
Labels
🇬🇧🇺🇸🇨🇦EN English Enhancement A request for a new feature. Released Addressed in a stable release.

Comments

@SDGGiesbrecht
Copy link
Owner

Workspace should provide a general plug‐in system to allow custom tasks to be shared across projects.

  • A standard plug‐in would be a Swift Package which provides an executable.
  • Plug‐ins would be applied using an addition to the WorkspaceConfiguration so that a user can specify the package URL, version, product, command line arguments, etc.
  • Plug‐ins would be separately applicable to the refresh, proofread and validate phases.
  • To start with, plug‐in output should be displayed and success based on the exit code. Tighter integration could be added at a later date.

(This is almost how SwiftLint integration in implemented now. It just needs to generalized and surfaced in the configuration API. As part of implementing this feature, SwiftLint should lose its privileged status and become default plug‐in for the proofread phase.)

@SDGGiesbrecht SDGGiesbrecht added 🇬🇧🇺🇸🇨🇦EN English Enhancement A request for a new feature. Designed Design finalized, but not yet implemented. labels Nov 9, 2018
@SDGGiesbrecht
Copy link
Owner Author

Plug‐ins should also support shell commands which do not originate from a Swift package.

@SDGGiesbrecht SDGGiesbrecht added Implemented Implemented in a pull request, but not yet merged into the master branch. and removed Designed Design finalized, but not yet implemented. labels Apr 2, 2019
@SDGGiesbrecht
Copy link
Owner Author

Implemented in #262.

@SDGGiesbrecht SDGGiesbrecht added Merged Implemented in the master branch, but not released yet. Released Addressed in a stable release. and removed Implemented Implemented in a pull request, but not yet merged into the master branch. Merged Implemented in the master branch, but not released yet. labels Apr 3, 2019
@SDGGiesbrecht
Copy link
Owner Author

Custom tasks are available in Workspace 0.18.0.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
🇬🇧🇺🇸🇨🇦EN English Enhancement A request for a new feature. Released Addressed in a stable release.
Projects
None yet
Development

No branches or pull requests

1 participant