Jump to content

Please, stop renaming hook files in Plugins


Adriano Faria

Recommended Posts

Posted

Honestly, I don't see any sense in doing this. You require us to inform a file name when creating a hook and when you install it, it goes away:

Capturar.png

I have nothing else to do but enter in each of those files to find the one I want to edit! >_<

You already stopped renaming the plugin folder, that's a HUGE step forward. Now please, stop renaming file names too.

EDIT: other situation: sometimes we need to support a client and very often make some quick change in a hook while we don't release a new version. How to do that ? I don't know which file to edit!

Posted

this is one of the reasons why i don't do "plugins" for custom work anymore. lately i've just been creating applications, even if i don't need the "full" application abilities, just cause its a pain the butt to try to keep it in a "dev" environment if i ever need to do any work on it in the future. i use to have a script that would take a plugin and convert it back into a dev build, but it stopped working and just haven't gotten around to figure out why.

Posted

For my dev scripts, I just utilize a bit of a hackish way of re-importing the development resources on plugin installation. You can take a look at my Query Toolbox plugin on GitHub to get a general overview of how I do it,
https://github.com/FujiMakoto/IPS-Query-Toolbox/blob/master/dev/setup/install.php

It's basically just base64ing a tarball that contains your development resources (or any other libraries your plugin may need) and then extracting them on setup. It's a bit tedious to maintain, so I plan on writing a utility of some sort to do automate before building the plugin. I could post it here whenever I do get around to writing it if it'd be useful to you.

Posted

Thanks, you can release to others if you like. I'll just continue to make applications. In most systems out there, there is no real distinction between "plugins" and "applications". Plus an application allows me to easily write my own class files to call upon, where a plugin, not so much :). maybe with 4.2 they could make it where there isn't that "divide".

Posted

There are a ton of marketplace items that are really just more or less "tweaks". I believe the idea was that those could stay out of the application namespace by being "plugins".

Its an interesting problem. With thousands of plugins that share class namespaces, there is going to undoubtedly be conflicts. Its already a possibility with apps.

There should probably be a master registry that tracks namespaces and their availability.

The marketplace would also be much more friendly if there was clear seperation between the apps which offer unique new feature sets, and plugins that tweak existing features.

Posted

I think the plugin system could definitely use a bit of overhaul in 4.2. I use the above method to get around some of the plugin limitations in my other plugins. For example, out of the box, it's not possible to easily include any third party libraries with plugins.

I don't think you should need to create an app just to be able to utilize third party libraries, when the end result is just to use that third party library to make some small tweaks to an existing plugin or application.

That, in my mind, is what separates plugins and applications anyways. Plugins are designed to alter the behavior of existing applications. Applications.. well, introduce something entirely new into the software suite. They don't exist just to modify other existing applications. I really hate having to create applications just to do that, which is why I've gone a bit above and beyond to avoid it in a couple situations.

Posted
37 minutes ago, Makoto said:

I don't think you should need to create an app just to be able to utilize third party libraries, when the end result is just to use that third party library to make some small tweaks to an existing plugin or application.

I recognized this problem back before IPS4 even released. Thats why I built the libraries app with the idea that it could serve as a common repository to include 3rd party libraries to be shared between apps and plugins.

Seemed like a good idea. Thats how it gets done in other frameworks like Drupal.

Sadly, the culture around here is for everyone to stay in their own corners.

Posted
Just now, Kevin Carwile said:

Sadly, the culture around here is for everyone to stay in their own corners.

But I like my corner. It's nice and cozy over here.

In all seriousness though, I think the main problem is that approach suffers from a major inherent flaw, which is that it requires people install multiple other third party plugins or applications in addition to your own application or plugin. It's less of a problem when licensing allows for free distribution of the third party resources, but it's still not really ideal.

To be fair though, I haven't seriously reviewed your libraries application yet, I should look it over sometime.

I've been wanting to see how feasible it is to develop a system where third party resources can be packaged into other applications and plugins directly, so that they are installed automatically (and upgraded if the users already has an older version of the library installed), but I'm not really sure how feasible that is going to be.

This is also why I think a repository system would be a great idea. A repository would make it incredibly easy to list application / plugin dependencies.

Posted

well look how it is done in wordpress or xenforo.  you create the "apps" / "plugins" using the same system, and you are able to make it as simple as a quick theme hook to a full blown application.

sure you are going to run the risk of having namespacing conflicts, regardless of how you go. It is one of the reasons i try to append "cj" to everything i do, its less likely to have that conflict when it comes to simple names

Archived

This topic is now archived and is closed to further replies.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...