Package Manager needs more intelligence

Started by Jade Elizabeth, March 25, 2010, 06:21:52 PM

Previous topic - Next topic

Jade Elizabeth

As far as I understand it, the Package Manager is falling behind in at least two ways. I feel like it needs to be a little more intelligent, especially for 2.0. I love that it tries to install things on multiple themes...but that has issues of its own....what if my custom themes are all based on core and the mod is trying to install curve edits for example?


I think it needs a rather small update to make it more intelligent so it can do things like:
1) Specify an edit is for Core or Curve based themes
This would allow theme authors to specify whether their theme is core or curve based too, so mods can be installed on it automatically (theme info can do this). IF the theme does not have it specified it should be able to be defined by the admin, in which case the package manager should update the theme info for that theme to reflect it.

I ran into this issue with my mod that deletes 2 lines from Curve and like 6 from Core, to specify the directory in one package would cut out custom themes because I would be going directly into the folder of core or curve. SMF 2.0 is supposed to be custom theme friendly, trying to install things on custom themes, so why would I make my mod inferior to that? Instead I had to make a CURVE and a CORE package. This makes it more confusing to the end user too, who has to sort through my versions and packages. I could have had it all in the one if there was a tag that said "$corebase/index.template.php" or "$curvebase/index.template.php" for example....and it would have let me package my 3.0.1 version in one file.

Theme info is equipt to handle this already? I dunno, maybe this is for something else, but I've never seen it used before.
<!-- Base this theme off another? Default is blank, or no. It could be "default". -->
<based-on></based-on>


2) Check which languages are installed
Some mods have their own language files, for example, Chris' Team Page Mod. On the forum I work on this mod and several others installed around 35 language files, including 6 TeamPage.language.php files for languages the forum didnt have installed, confusing and worrying the owner. Not to mention taking up space. Mods like Simple Portal and Tiny Portal which are rather large currently have these as separate packages, but the little mods arent doing it that way....

It would be good to be able to say "language = "turkish"" in the mod package somewhere and have the package manager check if that is a language the forum uses....if not, it shouldnt install or do anything to do with that language. It's all fine and dandy if the mod edits modifications.language.php because that file exists, but when the mod is large enough to have a custom language file (but not large enough to keep these separate) there's problems.


To be honest both of these issues are pushing me away from making mods....or rather, releasing and maintaining them. It's two fairly quick edits that can be done and save people a lot of pain in the long run.
Once proud Documentation Writer and Help Squad Leader | Check out my new adult coloring career: Color With Jade/Patreon.

Antechinus

Those are good ideas, but realistically they cannot be incorporated into 2.0 at this stage.

Jade Elizabeth

Once proud Documentation Writer and Help Squad Leader | Check out my new adult coloring career: Color With Jade/Patreon.

SlammedDime

I think he means this...
Quote from: Antechinus on March 25, 2010, 06:47:31 PM
Those are good ideas, but realistically they cannot be incorporated into 2.0 at this stage.

Although I disagree with item 2... if a admin installs a language at another time after the mod install, how do you expect them to then get the languages installed for that mod for their new language?  Uninstall and reinstall the mod?
SlammedDime
Former Lead Customizer
BitBucket Projects
GeekStorage.com Hosting
                      My Mods
SimpleSEF
Ajax Quick Reply
Sitemap
more...
                     

Antechinus

What I really mean is that I do not think it is practical to start attempting to incorporate entirely new features in the fourth release candidate.

Jade Elizabeth

Quote from: SlammedDime on March 25, 2010, 07:08:35 PM
I think he means this...
Quote from: Antechinus on March 25, 2010, 06:47:31 PM
Those are good ideas, but realistically they cannot be incorporated into 2.0 at this stage.

Although I disagree with item 2... if a admin installs a language at another time after the mod install, how do you expect them to then get the languages installed for that mod for their new language?  Uninstall and reinstall the mod?

Same way an admin INSTALLS THE MOD ONTO THEIR NEW THEME :P LOL.

Quote from: Antechinus on March 25, 2010, 09:35:22 PM
What I really mean is that I do not think it is practical to start attempting to incorporate entirely new features in the fourth release candidate.

But you agree with the points and that it's discouraging to mod authors. That's what I was pointing out.


I'm not expecting it to be incorporated into 2.0. I would absolutely LOVE it to be but I really don't see it happening. Everyone's too anti-changes to 2.0 lol. I'm just sad cause I came in when it was frozen :(.
Once proud Documentation Writer and Help Squad Leader | Check out my new adult coloring career: Color With Jade/Patreon.

Kindred

it is a good idea, Jade...  I typically make my own edits, removing such files... (although I don't see how someone could think they were bad files, LOL)


and, as you recognize, 2.0 is technically feature frozen.

It is probably a fairly minor adjustment which could make its way into 2.1
Слaва
Украинi

Please do not PM, IM or Email me with support questions.  You will get better and faster responses in the support boards.  Thank you.

"Loki is not evil, although he is certainly not a force for good. Loki is... complicated."

Jade Elizabeth

Quote from: Kindred on March 26, 2010, 01:30:24 PM
it is a good idea, Jade...  I typically make my own edits, removing such files... (although I don't see how someone could think they were bad files, LOL)

No he was worried because he thought the forum would think Turkish or what ever was installed....and because he was getting notices about bandwidth but I fixed that for him :D.


Quote from: Kindred on March 26, 2010, 01:30:24 PMand, as you recognize, 2.0 is technically feature frozen.

It is probably a fairly minor adjustment which could make its way into 2.1

I don't see why really small adjustments can't make it to 2.0. I mean, if you want it to be tested I will give hours to test to have these changes made. I'm willing to put work in to help, because I feel with these rather small edits we could encourage a lot more mods and more compatibility for them :).


I think some of the "NO WE CANT IT'S FROZEN" moments are over dramatic. Some changes would be very fast and simple to implement and test, and prevent a fair bit of pain.
Once proud Documentation Writer and Help Squad Leader | Check out my new adult coloring career: Color With Jade/Patreon.

SlammedDime

Maybe because I'm a seasoned mod author, but even when I wasn't, I didn't see either of these things as issues that would have kept me from making mods...

BTW, moved this to Feedback and Discussion, it's more appropriate there.
SlammedDime
Former Lead Customizer
BitBucket Projects
GeekStorage.com Hosting
                      My Mods
SimpleSEF
Ajax Quick Reply
Sitemap
more...
                     

aw06

When you install a theme it should be default... and the old default renamed to default-orig lol ...

Naw, just kidding, that makes no sense dwl  :P
:: ShopinJA.com Powered by SMF 1.1.19 | Ig-Oh Theme by Koni | 70 Rock Solid Error Free Mods | Many Custom Edits & Tweaks ::
- Host Unlimited Websites - Free Website Builder & Templates - Unlimited Disk Space & Bandwidth

Arantor

A theme doesn't itself know if it's Core or Curve based, all it knows that it inherits from default or uses its own files.

Unless you add something to the theme-info.xml file to denote it's Curve or Core based, ain't no way you can do that...


Also, speaking as a mod author - and bearing in mind I'm working on a very large mod for 2.0 - it's never been a real issue for me either. (Heck, SimpleDesk looks great in both Curve and Core themes)

Jade Elizabeth

Quote from: Arantor on March 27, 2010, 06:47:22 AM
A theme doesn't itself know if it's Core or Curve based, all it knows that it inherits from default or uses its own files.

I said you should make it know, from the theme author telling it. I just asked if it was able to be used for that already, I don't know what the based on thing is for.

Besides that, they can't use their own files....that would be 1) a huge theme, and 2) an issue for mods with their own templates because the theme wouldnt be allowed to look for missing files in the default folder.

Quote from: Arantor on March 27, 2010, 06:47:22 AMUnless you add something to the theme-info.xml file to denote it's Curve or Core based, ain't no way you can do that...

I suggested that
* Jade Elizabeth smacks Pete and tells him to go re-read her post


Quote from: Arantor on March 27, 2010, 06:47:22 AMAlso, speaking as a mod author - and bearing in mind I'm working on a very large mod for 2.0 - it's never been a real issue for me either. (Heck, SimpleDesk looks great in both Curve and Core themes)

Yeah well how do you manage editing both core and curve in the same package? I can't do it, it merges my edits together and errors and other bull. I had to have two separate packages :(.

Now my should be two packages is three packages.
Once proud Documentation Writer and Help Squad Leader | Check out my new adult coloring career: Color With Jade/Patreon.

Arantor

Point is, it isn't going to happen in 2.0, maybe not in 2.1.

As for having it not mash edits... that's surprisingly easy.

For Curve only, have it modify $theme_dir/default/ and for Core only have it modify $theme_dir/core/


I would still point out this flag is sort of pointless anyway. You know that Core is still quite heavily related to Curve anyway if you look at the templates...?

Jade Elizabeth

* Jade Elizabeth smacks her head on the desk

Pete, you're reading but you're not listening to anything I'm saying :(.

Quote from: Jade Elizabeth on March 25, 2010, 06:21:52 PM
I ran into this issue with my mod that deletes 2 lines from Curve and like 6 from Core, to specify the directory in one package would cut out custom themes because I would be going directly into the folder of core or curve. SMF 2.0 is supposed to be custom theme friendly, trying to install things on custom themes, so why would I make my mod inferior to that? Instead I had to make a CURVE and a CORE package. This makes it more confusing to the end user too, who has to sort through my versions and packages. I could have had it all in the one if there was a tag that said "$corebase/index.template.php" or "$curvebase/index.template.php" for example....and it would have let me package my 3.0.1 version in one file.
Once proud Documentation Writer and Help Squad Leader | Check out my new adult coloring career: Color With Jade/Patreon.

Arantor

I don't get what the problem is.

If you have a custom theme at some point the code is going to have to be CUSTOM.

The only way you can actually avoid the issue you're referring to is to never have anything other than the core template.

aw06

I don't mind the custom edits, what i do mind is mods filled with errors or countless bugs, so after you spend time editing it's like a waste when the mod doesn't work well..
:: ShopinJA.com Powered by SMF 1.1.19 | Ig-Oh Theme by Koni | 70 Rock Solid Error Free Mods | Many Custom Edits & Tweaks ::
- Host Unlimited Websites - Free Website Builder & Templates - Unlimited Disk Space & Bandwidth

Norv

I agree with both points, even with the relative emergency of the first... (on the contrary I'd say the second has really low priority, given that I didn't see any other user feedback on it - please point it out to me if there are other discussions on it)

We ship two official themes, with 2.x, so it makes sense IMHO that package manager knows how to use them AND those based on them, properly, or closer to expectations... The simple truth today is that if you take custom themes based on Core and the edits for Core and Core-based themes don't match those of Curve, you'll never have a choice, but to edit it manually and have your mod's users do the same.
While some things (many, not only from package manager, but others as well) will always remain tied up to the default theme, still I agree that we should try to make Core more of a first-class citizen for package manager. After all, I might be wrong here, but it seems to me that, contrary to 1.1.x official custom themes, Babylon and Classic, the Core of 2.x is and will continue to be much more used as basis of custom themes.

I have no possible estimation to make at this point, though. But I prefer this thread to be in Feature Requests, for the dev team to keep an eye on it.
To-do lists are for deferral. The more things you write down the later they're done... until you have 100s of lists of things you don't do.

File a security report | Developers' Blog | Bug Tracker


Also known as Norv on D* | Norv N. on G+ | Norv on Github

JBlaze

Jason Clemons
Former Team Member 2009 - 2012

Jade Elizabeth

I fully agree Norv :).


But I don't think the Devs really hang out in feature requests.
Once proud Documentation Writer and Help Squad Leader | Check out my new adult coloring career: Color With Jade/Patreon.

Arantor


Advertisement: