View Issue Details

IDProjectCategoryView StatusLast Update
0002360MMW v4Framework: Scripts/Extensionspublic2008-11-25 23:06
Reporterjiri Assigned To 
PriorityimmediateSeverityminorReproducibilityalways
Status closedResolutionfixed 
Fixed in Version3.0 
Summary0002360: Framework for an easy installation of scripts (UI freeze)
DescriptionThere should be an easy way how user would install new scripts.
TagsNo tags attached.
Fixed in build1097

Relationships

related to 0002817 closedpetr Change extension for skins from WSZ 

Activities

rusty

2006-02-15 18:46

administrator   ~0006878

Raising to 'immediate' for incorporation in some manner in MM 2.5.2 so that when we set up the script repository, it'll be designed from the beginning for these 'new style' scripts.

Note: per discussion, the new file type would be used for both scripts and themes and perhaps other plugins.

rusty

2006-02-15 20:43

administrator   ~0006881

This framework should be used for language packs. i.e. with this framework it should be possible for Hungarian_Langpack_1_2.mmxx to be downloaded, automatically installed, and enabled.

rusty

2006-05-19 02:08

administrator   ~0007252

Last edited: 2006-05-19 05:56

Pavel, I've done some research re. the back end, and summarized the key points below:

Main Requirements:
------------------
-Customizable look and feel to integrate with the rest of the MM site
-Capability to log-in (ideally single log in for Forum, Mailing List, Software Repository, & Faq contributions, however, this would probably require use of an extensible CMS)
-Multiple Categories, top 10, recently added, on main page
-Similar content to what is currently available on the software download page (including images)
-Ability for users to rate plugins
-Ability to include software directly or links to software
-Workflow-capable
 --New scripts: user logs in, submits script / description / etc. --> Reviewer evaluates suitability for posting and approves/rejects --> Either the posting goes live or e-mail is sent to the contributor outlining the problem
 --Update existing scripts: user logs in, edits script entry if he/she has rights to do so

Possible contenders:
------------------------------

http://www.softbizscripts.com/resource-repository-script-features.php
-Commercial $95. Not sure how often they update. Workflow would have to be customized.

http://www.remository.com/Remository/
-Meets most needs. The fact that it's a joomla plugin can be a pro or con.

http://my.filecart.com/launch.php (expensive)

http://www.exefiles.com/
-Seems to meet our needs but has a negative review at: http://www.scripts.com/read-reviews/18336/

http://sourcewell.berlios.de/html/
-Could meet our needs, but I'm not sure since config at berlios doesn't have the kind of portal we'd need. Source is available.

http://www.saribyte.com/scripts/item.php?item=109
-Appears to meet our needs, but I get the feeling that it hasn't been updated in ages.

http://www.gnomefiles.com/index.php
-This looks like one of the best. It's not for sale, but we could probably get it from eloli@hotmail.com

Let me know what you think. I lean a bit towards the joomla solution as it gives us single sign on and (I assume) automatic look and feel integration with other modules (e.g. if we use another module for a mailing list).

jiri

2006-05-19 07:44

administrator   ~0007256

I think that a very important feature for us is what Rusty mentioned as 'Ability to include software directly' because many of the authors of scripts won't run their own website to host their scripts. However, I'd say that none of listed applications has this feature. Therefore we'll need at least some customization (as expected).

Based on a very brief review, I like:

http://www.gnomefiles.com/index.php
 - Question is if we can get it and how hard would it be to customize it.

http://www.saribyte.com/scripts/item.php?item=109
 - I like the simplicity of this one, I guess it would be quite easy to customize.

jiri

2006-10-30 14:13

administrator   ~0008104

The code in FromExtensions.pas uses in some case 'http://localhost/' - I suppose it's just a testing code and so it should be either removed or at least changed to be compiled only in DEBUG version.

jiri

2006-11-20 15:06

administrator   ~0008180

Bug: Extensions menu entry is disabled if no track and no tree node is selected in MM.

user9

2006-11-21 10:55

  ~0008185

Last edited: 2006-11-21 10:58

On the FTP server (folder MMBugs\2360) I have uploaded some examples of the extensions for this bug testing.
File extension *.mmip (Media Monkey installation package) is associated with the Media Monkey application and the installation will be running automatically, after installation dialog confirmation. The mmip package is exactly zip file format with the *.mmip extension.
Control of the installed extensions (update, unistall) is available in the application menu Tools->Extensions. For the update testing is necessary to upload all the files in the folder "Update" (e.g. MMBugs\2360\Extension1\Update) to the web server. The folder name, on the web server, must be the same as extension ID. Value of the extension ID, can be found in the [Header] section of the "install.ini" file (mmip package). Finally is necessary to modify the URL addresses in the "version.xml" file (<UpdateURL> node) or in the "install.ini" file (mmip package, UpdateURL inside the [Header] section).

jiri

2007-05-02 11:05

administrator   ~0009093

The system of Installation Packages is described at http://www.mediamonkey.com/wiki/index.php/Installation_Packages - any updates should be described there.

jiri

2007-05-03 10:03

administrator   ~0009099

Last edited: 2007-05-03 10:17

1. There were several bugs (freezing, etc.) that I fixed in SVN commit 0002815 - review it and make sure everything is ok now!
2. Related source code doesn't comply standard in formatting, e.g. it can't be like '_ ('...');' - see our Wiki for more details and fix accordingly.
3. In TFExtensionInstall.VTExtensionGetText() there are unlocalizable text - should be fixed. Also the text shouldn't containt leading or trailing spaces like ' Product type : '.
4. Extensions dialog should look more like that in Firefox - but this subissue should be discussed more with Rusty.
5. Mouse cursor should change when on 'Get more Extensions...' like in other places in MM.

Other suggested improvements by users:
6. Src parameter should accept full paths (not only filenames) in ZIP file, so that files to be installed can be structured in folders.
7. Add a new flag 'regserver' that would be used for automatic registration of deployed dlls.
8. Add support for {sys} constant (as in Innosetup) to let users to install to Windows System folder.

rusty

2007-09-07 15:10

administrator   ~0010571

Last edited: 2007-09-07 15:12

Re-opening to fix the issues documented by Jiri: (items 2, 3, 5, 6, 7, 8)

In addition I'm going to suggest a few other usability issues and
related fixes:
9) The Update function is a combined 1-step operation to check if
updates are available and install them. Moreover, there's no
description of what an update is, so the user can't make a decision re.
whether they want to install it or not.
10) The operation to check for updates should occur for _all_ Extensions
(not just the selected ones), whereas installation should be selectable
per Extension

Suggested changes:
a) Back end: update the .ini file structure to include
'NewVersionDescription' so that the UI can present the user with
sufficient information to know whether it's worth installing an update.

b) UI:


---------------------------------------------------------------
Extensions |
--------------------------------------------------------------|
----------------------------------------------------------- |
Title Type Version | |
----------------------------------------------------------| |
WMP11 Skin 1.1 | |
Windows Media Player skin | |
No updates available | |
[Options] [Uninstall] | |
                                                          | |
Last-FM Script 2.0 | |
Uses LAST-FM to auto-matically play tracks | |
Update available: 2.1 Fixes occasional crashes | |
Via: http://www.addons.mediamonkey.com/lastfm | |
[Options] [Install Update] [Uninstall] | |
                                                          | |
German Translation Language 1.1 | |
Deutsches fur MediaMonkey | |
No Update Server Available | |
                                           [Uninstall] | |
----------------------------------------------------------- |
 Download more extensions... [Find Updates] [Install updates] |
---------------------------------------------------------------


Notes:
-Checkboxes are removed because most operations are performed on a per
track basis, except for mass updates or mass installs which have new buttons
-<Update Available> and <Update Source> (the two lines of text that follow the Description) are both only displayed after the user clicks 'Find Updates'. The data isn't persisted once the dialog is closed.
-<Update Available> strings are:
--Update Available: <version> <New Version Desc>
  Via: <URL>
--No Update Available
--No Update Server Available
--No Update Server Configured

Deprecated proposal: The following proposal is a bit more similar to our current implementation, but rejected on account of it being less usable
-----------------------------------------------------------------------------
Extensions |
----------------------------------------------------------------------------|
----------------------------------------------------------- |
Title Type Version | [Options] |
----------------------------------------------------------| [Install Update]|
WMP11 Skin 1.1 | [Uninstall] |
<One line description> | |
(Update Available: <version> <update desc.> | |
(<Update source>) | |
                                                          | |
Last-FM Script 2.0 | |
Uses LAST-FM to auto-matically play tracks | |
Update available: 2.1 Fixes occasional crashes | |
Via: http://www.addons.mediamonkey.com/lastfm | |
                                                          | |
----------------------------------------------------------- |
Download more extensions... [Find Updates] [Install all updates] |
-----------------------------------------------------------------------------


user9

2007-09-14 13:51

  ~0010790

Fixed in build 1075.

rusty

2007-09-19 21:38

administrator   ~0010830

Tested 1075 and it's looking really good. A couple of tweaks:

1) "Description:", and "Update available:" strings do not need to preface the <Description> and <Update> strings.
2) "Via: <url>" should only appear if an update is available
3) Upon further reflection, I think we can remove the [Install all updates] button --it's a bit confusing (note: move the [Find updates] button to the right).
4) We should add a Close button to the lower right corner (aligned horizontally and vertically with the other buttons).

user9

2007-09-25 14:26

  ~0010959

Fixed in build 1080.

rusty

2007-09-26 06:03

administrator   ~0010985

Tested 1080. Looking good, but a couple of minor issues:

5) The 'Find updates' button should be on the bottom row, next to the close button (since it applies to all installed plugins, whereas the other buttons apply to the selected plugin).

6) Question: I once installed a WMP11 skin and now MM always shows that skin in the list of plugins. Why does it do this even though I did a clean uninstall of MediaMonkey? It makes me think that something isn't being properly cleaned at uninstall time.

jiri

2007-09-26 12:39

administrator   ~0010996

Fixed 6) in build 1081, 5) remains for Pavel.

user9

2007-10-01 10:16

  ~0011081

Fixed in build 1082.

rusty

2007-10-11 22:01

administrator   ~0011265

Tested 1085:

5) The 'Find updates' button should be _to the left_ of the Close button. For esthetic purposes, the Close button should be the same size as the 3 buttons above it, and the Find updates button should also be the same width.

7) Install updates should not be active unless 'Find Updates' has detected that an update is available.

user9

2007-10-14 09:39

  ~0011323

Fixed in build 1089.

rusty

2007-10-15 00:00

administrator   ~0011355

UI looks good. But found another major problem:

If the user tries to uninstall a script that appears in the list, but can't be found, an error dialog appears. If the user clicks 'ignore' then:
i) The entry isn't removed from the list
ii) The dialog is frozen.

user9

2007-10-16 11:36

  ~0011380

Fixed in build 1092.

rusty

2007-10-25 16:30

administrator   ~0011524

Tested 1093. These 2 issues still remain open. i.e.:
If the user tries to uninstall a script that appears in the list, but can't be found, an error dialog appears. If the user clicks 'ignore' then:
i) The entry isn't removed from the list
ii) The dialog is frozen (note: the dialog doesn't get frozen right away--it only freezes when the user clicks the 'close' button).

jiri

2007-10-28 15:29

administrator   ~0011649

As a part of this fix, I'm changing

'This action will uninstall all selected products.'

to

'This action will uninstall '%s'.'

So that user is better informed what exactly is about to happen.

jiri

2007-10-29 00:10

administrator   ~0011654

Fixed in build 1097 (together will several other smaller improvements).

rusty

2007-10-29 03:42

administrator   ~0011662

Verified 1096.