Skip to content
This repository has been archived by the owner on Apr 14, 2021. It is now read-only.

Move bundle viz into a plugin #5180

Closed
2 tasks
kerrizor opened this issue Nov 16, 2016 · 10 comments · Fixed by #5964
Closed
2 tasks

Move bundle viz into a plugin #5180

kerrizor opened this issue Nov 16, 2016 · 10 comments · Fixed by #5964

Comments

@kerrizor
Copy link
Contributor

kerrizor commented Nov 16, 2016

bundle viz generates a basic ERD graph using graphviz. While useful, it could be improved, which would expand its scope and footprint. More realistically, it is a neat feature that could be split off into its own project and loaded using the new plugin API. To that end, I'd like to do the following:

  • split existing functionality into a new bundler-viz project
  • load bundler-viz using plugin API

This would remove the graphviz dependency from bundler core, allow for forward development to improve bundler visualization tools, and provide a roadmap for future bundler plugin development by interested parties.

cc @lynnco and @indirect

@segiddins
Copy link
Member

Since this is technically a breaking change, it'll have to come in a major version bump

@kerrizor
Copy link
Contributor Author

kerrizor commented Nov 16, 2016

@segiddins agreed. I'm unsure as to the roadmap for the project, but would a dep warning for the next release be Standard Operating Procedure here?

@kerrizor
Copy link
Contributor Author

@segiddins alternatively, we could keep the current implementation as a fallback if a new plugin version was not installed, and print a dep notice about the plugin to point it out?

@segiddins
Copy link
Member

Yeah, that could work. Only danger being the user having a different bundle-viz executable in their path

@chrismo chrismo added this to the 2.0 — Breaking Changes milestone Nov 16, 2016
@indirect
Copy link
Member

Since we’re already planing major version bump in the near-ish future, this seems good to me 👍

On Nov 16, 2016, 8:43 AM -0800, Samuel Giddins notifications@github.com, wrote:

Yeah, that could work. Only danger being the user having a different bundle-viz executable in their path


You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub (#5180 (comment)), or mute the thread (https://github.com/notifications/unsubscribe-auth/AAAATuWVVXNr4opdo5afjrrM7d3HHdC2ks5q-zKhgaJpZM4K0Ake).

@kerrizor
Copy link
Contributor Author

@roseaboveit and I knocked out a straight port of the viz code into a new plugin gem here https://rubygems.org/gems/bundler-dependency_graph

It is mostly an MVP that let us get a working example of a Bundler::Plugin::API based project, as no one could point us towards any that currently exist in the wild. In the process, we found a number of issues with the API which we'll tag in other issues. Our goal is to reach a level of feature parity with viz before proposing a removal PR against an eventual 2.0 release.

@segiddins
Copy link
Member

Hey, I'm trying to get a sense of our progress on 2.0, so what's the status of the plugin bundle viz command?

@indirect
Copy link
Member

IMO, we can extract the existing viz command into the bundler/bundle-viz repo, ship it as the gembundle-viz, and then this plugin work can continue 👍

@indirect indirect modified the milestones: Plugin System, 2.0 — Breaking Changes Aug 29, 2017
bundlerbot added a commit that referenced this issue Sep 6, 2017
deprecate the bundle viz command

### What was the end-user problem that led to this PR?

The `bundle viz` command is to been removed from bundler 2 and extracted into a plugin

Closes #5180

### What is your fix for the problem, implemented in this PR?

Deprecate the `bundle viz` command with an error explaining that a new gem will replace it's functionality.
@colby-swandale colby-swandale reopened this Sep 6, 2017
colby-swandale pushed a commit that referenced this issue Sep 22, 2018
deprecate the bundle viz command

### What was the end-user problem that led to this PR?

The `bundle viz` command is to been removed from bundler 2 and extracted into a plugin

Closes #5180

### What is your fix for the problem, implemented in this PR?

Deprecate the `bundle viz` command with an error explaining that a new gem will replace it's functionality.

(cherry picked from commit dbb0aed)
colby-swandale pushed a commit that referenced this issue Sep 22, 2018
deprecate the bundle viz command

### What was the end-user problem that led to this PR?

The `bundle viz` command is to been removed from bundler 2 and extracted into a plugin

Closes #5180

### What is your fix for the problem, implemented in this PR?

Deprecate the `bundle viz` command with an error explaining that a new gem will replace it's functionality.

(cherry picked from commit dbb0aed)
colby-swandale pushed a commit that referenced this issue Sep 22, 2018
deprecate the bundle viz command

The `bundle viz` command is to been removed from bundler 2 and extracted into a plugin

Closes #5180

Deprecate the `bundle viz` command with an error explaining that a new gem will replace it's functionality.

(cherry picked from commit dbb0aed)
@fatkodima
Copy link
Contributor

I've made up-to-date extraction here https://github.com/fatkodima/bundler-visualize
Let me know, what you think.

@deivid-rodriguez
Copy link
Member

Thanks @fatkodima!

The work left to be done is to decide on the final name for the repository and the actual command, to decide whether it should live under the bundler organization or whether an external plugin is also fine, and to verify everything is working properly and provide a smooth deprecation path.

So, since the plugin has already been extracted which was the point of this ticket, I'm going to close it, and move further discussion to https://github.com/bundler/bundler/issues/7041.

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

Successfully merging a pull request may close this issue.

8 participants