Comments (8)
The issue is we need to somehow mark what plugins were manually installed. It's entirely possible, for instance, that a manually installed plugin (Phoenix Core for instance), is meeting a prerequisite for only a single downstream plugin. In most cases, you would not always want removing BMT to also remove the Phoenix Core. Even though BMT might have been the only plugin that was using Phoenix Core, we can't assume that removing BMT should also remove the core. right?
from sagetv.
Correct. I wrote some code that uses a recursive algorithm to walk the
plugin tree and only remove those dependency plugins that are not
dependencies of other plugins. Take a look here:
https://code.google.com/p/tmiranda/source/browse/#svn%2Ftrunk%2FRPAD%2Fsrc%2Ftmiranda%2Frpad
Once I wrap my head around the core I could take a shot at it but right now
I'm not up to it.
On Mon, Aug 17, 2015 at 9:11 PM, Christopher Piper <[email protected]
wrote:
The issue is we need to somehow mark what plugins were manually installed.
It's entirely possible, for instance, that a manually installed plugin
(Phoenix Core for instance), is meeting a prerequisite for only a single
downstream plugin. In most cases, you would not always want removing BMT to
also remove the Phoenix Core. Even though BMT might have been the only
plugin that was using Phoenix Core, we can't assume that removing BMT
should also remove the core. right?—
Reply to this email directly or view it on GitHub
#18 (comment).
from sagetv.
I agree with Fuzzy's comment...I don't think this is a good idea to do unless we are also tracking which plugins were manually installed. Otherwise you could remove something the user manually requested to install.
from sagetv.
Maybe make it an option? I think there are very few users who will
manually install a plugin that happens to be a dependency of another
plugin. Why would a user do that in the first place?
On Aug 18, 2015 2:38 PM, "Jeffrey Kardatzke" [email protected]
wrote:
I agree with Fuzzy's comment...I don't think this is a good idea to do
unless we are also tracking which plugins were manually installed.
Otherwise you could remove something the user manually requested to install.—
Reply to this email directly or view it on GitHub
#18 (comment).
from sagetv.
Fuzzy gave a reason why someone would do it. :) And I don't see that much actual benefit from removing plugins that are no longer needed as they aren't hurting anything....but if you remove something the user actually wanted there, then that's a problem.
Making some other option that removes all the unneeded dependencies via first figuring them out, and then prompting the user about what's going to be removed, that would be fine with me. :) But would of course then require extra things in the STV to make that happen. Lol...I guess this could actually be a plugin. :D
from sagetv.
Ok, you win :)
On Aug 18, 2015 3:19 PM, "Jeffrey Kardatzke" [email protected]
wrote:
Fuzzy gave a reason why someone would do it. :) And I don't see that much
actual benefit from removing plugins that are no longer needed as they
aren't hurting anything....but if you remove something the user actually
wanted there, then that's a problem.Making some other option that removes all the unneeded dependencies via
first figuring them out, and then prompting the user about what's going to
be removed, that would be fine with me. :) But would of course then require
extra things in the STV to make that happen. Lol...I guess this could
actually be a plugin. :D—
Reply to this email directly or view it on GitHub
#18 (comment).
from sagetv.
What about the ability to see what a plugin is dependent on and what dependents on it in its properties. That at least allows for manually removing unneeded plugins.
from sagetv.
Not a bad idea at all. :)
from sagetv.
Related Issues (20)
- How to fix tuners not working and get rid of all the accumulated unused channels HOT 1
- Watched icon/flag behavior HOT 3
- Please open a security advisory HOT 4
- Travis CI integration no longer working HOT 6
- Playback of file crashes when loading external SRT file HOT 3
- Difference in Sage.jar between Windows and Linux builds HOT 6
- How to use EPGDBPublic2.java HOT 1
- Fix existing tuner input type to display all options and configure, it currently does not HOT 4
- Scheduled Direct duplicate program requests HOT 13
- SageTV is making too many celebrity requests on Schedules Direct HOT 3
- Security Policy violation Binary Artifacts HOT 2
- Extract Media Description from video file
- Import folders or media with extenced ascii characters are ignored
- LinuxMPlayerPlugin.java: video out parameter? HOT 1
- Guide data/Manual Recording issue with padding less than show length HOT 10
- 9.2.6.976 - Missing show airings in Future/Additional Airings
- Feature Request web based channel tuning HOT 11
- SageTV Commerical Skip Plugin Not Working on Some Devices But Does On Others HOT 2
- Rename Timed recording not working
- SageTV Webserver stopped working
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from sagetv.