WoWInterface

WoWInterface (https://www.wowinterface.com/forums/index.php)
-   Minion (https://www.wowinterface.com/forums/forumdisplay.php?f=124)
-   -   Things I've noticed (https://www.wowinterface.com/forums/showthread.php?t=50509)

Ovario 11-18-14 06:58 PM

Things I've noticed
 
Bug: Addon versions are only recognized correctly about 50% of the time, which results in updating back to an older version or a wrong addon altogether.

Feature Request: Give us the ability to update compilations hosted on WoWInterface. :banana:

ComputerNerd 11-19-14 09:10 AM

Version numbering is iffy, as it is trying to compare numbers in a very simplistic fashion.
Is X number bigger than Y or not.

That tends to fail when they insert extra letters randomly, or revert to revision / build numbers suddenly instead of some decimal version of major/minor releases.

I think curse works because of the curseforge backend which they likely refer to for the sequence of version numbering.

Phanx 11-19-14 02:09 PM

Quote:

Originally Posted by ComputerNerd (Post 300699)
Version numbering is iffy, as it is trying to compare numbers in a very simplistic fashion.
Is X number bigger than Y or not.

It's not even that sophisticated... it's literally just checking if both version numbers/strings are the same and telling you to update if they're not. If you have version 9 installed, but the WoWI page is still on version 2, you'll be told to update. :p

JDoubleU00 11-19-14 05:02 PM

Quote:

Originally Posted by Phanx (Post 300722)
It's not even that sophisticated... it's literally just checking if both version numbers/strings are the same and telling you to update if they're not. If you have version 9 installed, but the WoWI page is still on version 2, you'll be told to update. :p

That does not make sense. Shouldn't the logic be WI has a newer (i.e. higher) version number than what you have? I realize authors can put any number for their addon.

Phanx 11-19-14 05:46 PM

You'd think that would be the case, but it's not, unless it's been changed in the last few weeks. Every time I've tried it, it reports tons of addons as needing updates, but if I actually look at the "latest" version vs installed version, there are many cases where both versions are using the same format and the "latest" version is clearly numerically inferior, but I'm told to "update" anyway.

If you only have addons you installed from WoWI you shouldn't ever run into this situation, but unfortunately that isn't a viable option for me, as many of the addons I use are either not on WoWI at all, or have WoWI versions that lag far behind the versions available on Curse.

Dolby 11-20-14 10:56 AM

Quote:

Originally Posted by rocnroll (Post 300732)
That does not make sense. Shouldn't the logic be WI has a newer (i.e. higher) version number than what you have? I realize authors can put any number for their addon.

Version numbers don't always have numbers. We are working to improve this though as right now Minion only checks if the version is different. So we are working on ones where authors do have only int based versions and doing just that. It still will have trouble with authors that put letters and words into the version string.

This is why we make the version numbers big and visible when Minion wants to update it. You can right click the AddOn wanting an update and choose to ignore updates for that AddOn.

Seerah 11-20-14 04:13 PM

Also, what if author A uses this versioning scheme:
  • 1.8
  • 1.9
  • 1.10
  • 1.11
But author B uses this:
  • 1.08
  • 1.09
  • 1.10
  • 1.11

JDoubleU00 11-20-14 07:51 PM

I realize this may be difficult to implement, but some kind of validation check could be useful.

Digital_Utopia 11-21-14 07:16 AM

Quote:

Originally Posted by Seerah (Post 300802)
Also, what if author A uses this versioning scheme:
  • 1.8
  • 1.9
  • 1.10
  • 1.11
But author B uses this:
  • 1.08
  • 1.09
  • 1.10
  • 1.11

That shouldn't be a problem - the tricky part would be handling letters, such as 1.03a or 0.2(beta), etc.
if it was just numbers, then simply removing any decimal points after the first one, casting them as floats and comparing would be easy enough. You could even probably do some minor regex and at least check for any letters immediately following the numbers, cast them to a char, and compare the values.

I would imagine that would handle the vast majority of addons.

Tymesink 11-28-14 11:20 PM

Couldn't WOWI append each .toc file uploaded with its own internal identifier to help determine which version is latest? I know this doesn't help with all the current addons. But moving forward this would help?

I really want this MMOUI minon to work well this time around. I'm so tired throwing money at curse and I hate using their website to find addons. The only thing decent is their curse client. I really like the direction the MMOUI minon is going. Keep up the great work!

Dridzt 11-29-14 11:36 AM

This would be a nice opportunity for some community effort in coming up with a sane pattern for version checking.

https://docs.oracle.com/javase/7/doc...x/Pattern.html

Test version strings (eg. 'v2.08-3a') here and submit pattern proposals :)
http://ocpsoft.org/tutorials/regular...-regex-tester/

Digital_Utopia 12-02-14 07:17 AM

Quote:

Originally Posted by Dridzt (Post 301325)
This would be a nice opportunity for some community effort in coming up with a sane pattern for version checking.

https://docs.oracle.com/javase/7/doc...x/Pattern.html

Test version strings (eg. 'v2.08-3a') here and submit pattern proposals :)
http://ocpsoft.org/tutorials/regular...-regex-tester/

some php code that should parse most versions - including the example.
only reason why php, is that it's quicker to play with - as opposed to compiling and UI stuff.

Code:

<?
//pattern - checks for the presence of a "v", with or without space,
//then checks for numbers, dashes and dots - and captures those.
//and finally, recognizes the posibility of whitespace, and looks for any letters following it.
$pat = '/[vV\s]*([0-9\-\.]+)[\s]*([a-zA-Z]?)/';
//test string
$str="v2.08-3a";
//do the match
preg_match($pat,$str,$match);
//replace dashes with dots
$newstr = str_replace("-",".",$match[1]);
//split it by the dots
$sstring = explode(".",$newstr);
//init vars
$ver ="0";
$subver ="0";
//test if there are actually any dots
if(count($sstring)>1)
{
        //if so, combine the first two (i.e. 2.08)
        $ver=strval($sstring[0]).".".strval($sstring[1]);
        //check for moar dots!
        if(count($sstring)>2)
        {
                //loop through the rest, appending any additional parts
                for($i=2; $i < count($sstring);$i++)
                {
                        $ver.=strval($sstring[$i]);
                }
        }
}else{
        //otherwise, just set it to the first value.
        $ver=$sstring[0];
}
//check if we have a letter;
if(count($match)>2)
{
        //if so, drop it low, then get the char value of it - 97 in this case
        //char values go up in alphabetical order, but 'A' and 'a' need to be treated the same.
        $subver=ord(strtolower($match[2]));
}

//and output the version (2.083) and the subversion (97)
echo "Version: ".$ver."<br>";
echo "SubVersion: ".$subver;
// 2.08.4 will be a newer version, as will 2.08.3b, and so forth.

?>

I'd be willing to take on more "challenges" to put it to the test of course.

Dolby 12-02-14 04:05 PM

Thats a good idea! If you guys have suggestions on ways to detect versions and if they are newer or older please post them. It's much appreciated.

Digital_Utopia, thank you. I like your idea and I think it would be pretty simple to implement into Minion.

Digital_Utopia 12-02-14 06:28 PM

Quote:

Originally Posted by Dolby (Post 301624)
Thats a good idea! If you guys have suggestions on ways to detect versions and if they are newer or older please post them. It's much appreciated.

Digital_Utopia, thank you. I like your idea and I think it would be pretty simple to implement into Minion.

Not a problem at all - it's a fun puzzle :p

The most significant issue that I can see, is if Minion attempts to compare the Author provided version information, to the version of the .toc, and they differ. If that's how it's currently working - it might help if you run a script on the available downloads, to get the actual .toc version(s), and store those with the individual download entries in the appropriate table. That way you can get a much more accurate comparison, instead of what might be apples to oranges.

Some other odds and ends.

Usability:
  1. Login text boxes should listen for enter/return - to avoid having to manually click the "Login" button.
  2. Scan drive window should contain a "select/deselect all" button/checkbox. Having to deselect each box can get a bit tedious if you have multiple partitions.
  3. The Detecting Game Installs process should supply a window, to allow the user to choose which installs they want to add, before adding it to "My Games"
  4. The My games panel, should allow multiple selections
  5. Since the "Detect games" prompt is displayed upon first run, that option should provide a redundant "add game" option in the same window, as an all inclusive convenience feature.

UI/Appearance:
  1. Multiple text rendering issues - Most noticeable on mousing-over the Search field, and the top edge of the build version text becomes transparent when/after the window is moved around.
  2. Incomplete visual feedback on all UI elements, as they're all missing "mouse-down" states.
  3. Scrolling is very...jarring with the mouse wheel. Seems like it's designed to go from one entry to the next, instead of a smooth flow.
  4. Some degree of visual feedback is needed for both Scrolling, and sorting. Minion attempts to silently handle all operations, even when the process isn't instant. This leads to choppy(er) scrolling, and sort buttons that don't seem to be doing anything until it does. Clicking a different sort arrow while it's still working on the previous one, will cause craziness to happen.
  5. The big red square, with the white number - next to the options button, should have a tooltip; because I'm not even sure what it means. It's one higher than the one that appears next to the game; but it's the one by the game that's showing how many updates there are.
  6. Due to the height of each row, the byline should be moved underneath the Addon name. Doing this will allow for greater flexibility with resizing the window smaller.

That being said, and graphical glitches aside, it's a very sharp looking app, and although I got it to hang briefly a couple of times - it's very stable. Considering it is beta, and features/improvements will be forthcoming, the only real fault I can see, is a clumsy, cheapish feeling UI.


All times are GMT -6. The time now is 06:41 AM.

vBulletin © 2020, Jelsoft Enterprises Ltd
© 2004 - 2019 MMOUI