r3wp [groups: 83 posts: 189283]
  • Home
  • Script library
  • AltME Archive
  • Mailing list
  • Articles Index
  • Site search
 

World: r3wp

[Plugin-2] Browser Plugins

JoshM
4-May-2006
[309x6]
With the current plugin release, new versions require uninstalling 
previous versions, because of the IE plugin architecture (it is finding 
the existing plugin on your computer, so it sees no need to download 
a new version).
Now, that's a real pain for users. There are essentially two solutions 
to this problem:
1) Release a new "ID" for the plugin, so 1.3.3 would install side-by-side 
with 1.3.2. The problem with this approach is that the user now has 
a new plugin object in their Downloaded Program Files for every release 
of the plugin, which looks strange....not to mention problems such 
as: "does this web site support plugin version 1.3.2 or 1.3.3?" how 
do I know which version I have installed?
2) Build an automatic updating mechanism into the plugin, so it will 
check for new updates, prompt the user if he or she wants to download 
those updates, and then install on-top of the previous installation.
(2) is what I am leaning towards, and that is also the approach Flash 
takes. It involves making some changes to the installation architecture, 
developing an installer program to drop the files over-the-top of 
the previous files, and writing some REBOL script to check for new 
updates.
A little work, but I think it is worth it. The alternative is a very 
confusing experience for users.
Henrik
4-May-2006
[315]
it's definitely worth it. if it takes longer than 1-2 minutes to 
install then most users will drop it.
JoshM
4-May-2006
[316x3]
(note: The REBOL standalone EXE currently does something similar, 
but the difference is that the plugin doesn't know where it is installed...yet 
(so it can't drop the files over the old ones), and plus, the installation 
process for updating 2 DLLs is different than updating 1 EXE).
Yes, the installation will have to be quick. That's not a problem 
though, as we can download the files in the background (similar to 
what Flash and Acrobat Reader do).
Thoughts?
Henrik
4-May-2006
[319]
not just that, but there should be a ridicoulus minimum amount of 
instructions to install it. such as: 1. go to this site to observe 
the installation. 2. click here to test. and that should be it. I 
know that's very difficult to do, but it should be the goal.
JoshM
4-May-2006
[320x6]
(I want to change the above priority list. Mozilla 1.3.2 and IE 1.3.3 
are equal priority, pri 2)
Here's my thinking for the installation process:

 1. REBOL script within plugin checks for new version. If new version 
 exists, asks user: "There is a new version of REBOL/Plugin for Internet 
 Explorer. Would you like to update?" [or something like that]
	2.REBOL script within plugin downloads updater EXE.
3. REBOL script within plugin launches updater EXE, which asks user: 
"Would you like to install REBOL/Plugin? Note: Your browser will 
have to be restarted."

 4. Updater EXE closes browser, copies files, and re-opens browser 
 to the page the user was at.
5. new plugin launches seamlessly and runs the old script.
This, of course, assums that new plugin versions will not break old 
REBOL code.
(or I should say: new REBOL versions will not break old code)
Henrik
4-May-2006
[326x2]
I think there should be a way to suppress console output when a script 
crashes
console = popup window and some users hate those
JoshM
4-May-2006
[328]
Henrik: thank you, please post it on the 1.3.3 feature req checklist.
Henrik
4-May-2006
[329]
done
[unknown: 9]
4-May-2006
[330x2]
: ) "WRT to the 1.3.3 release: I'm going to need your help on sifting 
through all the "noise" (i.e. everyone's opinion about we should 
have or not have) to drill down to the features that are absolutely 
necessary for this release." : )
Well, we can throw it into Qtask, let everyone log any task they 
want, and then you can assign them priorities.  This is what Qtask 
does.
Claude
4-May-2006
[332x3]
hi, thank you for updating this plugin !-)
but like the first plugin version do not forget to take proxy configuration 
of IE or FireFox and the bypass-proxy input !!!!!!
like this we will be ok to use rebol/plugin in intranet behin a firewall...... 
thank you again
Graham
4-May-2006
[335]
This is I think an important feature - to be able to use the browser 
to distribute your rebol applications across private network.
[unknown: 9]
4-May-2006
[336]
Agreed.
Graham
4-May-2006
[337]
Security settings often prevent users from installing applications 
.. so a browser app makes it easier for admins to distribute an application.
BrianH
4-May-2006
[338x5]
For plugin updating, you could make the minimum version a parameter 
and have the plugin update if the requested version isn't installed, 
or fail if the requested version doesn't exist.
As for things like do-browser, it would be nice if the copy of REBOL 
called by the plugin could be passed some callbacks to which it would 
delegate some basic functionality like requesting a local file, proxy 
settings, do-browser, etc. This would allow the plugin to better 
integrate with the browser's existing behavior and security infrastructure.
If the REBOL library's runtime environment could be extended with 
arbitrary routines defined in the wrapper plugin that would make 
things like do-browser even easier.
By the way Josh, the security discussion we were having last night 
wasn't noise. Without the security restrictions discussed above noone 
would be able to safely install this plugin and allow it to run scripts 
from any but the most trusted sites. This is important.
I messaged you privately with my concerns.
Anton
4-May-2006
[343]
I agree with Brian wholeheartedly.
JoshM
4-May-2006
[344x2]
thanks for the feedback. i apologize if i conveyed the idea that 
security discussions are noise. What I mean is that I don't have 
the bandwidth to sift through pages of discussion and build the plugin 
at the same time. So, for my sake, we need some kind of itemized 
system where Carl and I can tackle the issues one-by-one.
And -- yes, I need to read through the conversations, but a free-for-all 
format (that includes bugs, etc.) doesn't really work for me. Maybe 
a checklist, or perhaps, Qtask (mentioned above)?
Anton
4-May-2006
[346]
Maybe another RAMBO database ?
JoshM
4-May-2006
[347]
i've never used it before.
Anton
4-May-2006
[348]
It's pretty good, simple and easy to use.
JoshM
4-May-2006
[349x2]
okay. who runs it?
regarding security: so we need a list. i.e. change #1: disable xyz. 
change #2: make xyz a prompt that looks like this. etc.
BrianH
4-May-2006
[351]
I've added a few entries to your 1.3.3 checklist based on reading 
these discussions.
Anton
4-May-2006
[352x2]
http://www.rebol.net/cgi-bin/rambo.r
Guess who :)
JoshM
4-May-2006
[354x2]
okay :) i'll talk to Carl. i think he said no to RAMBO once (above), 
but maybe we can get something working.
Brian: thanks!
BrianH
4-May-2006
[356x3]
Well, I can summarise the security proposals as discussed here and 
post them to your private message area if you prefer.
In between working with Gabreile on parse extensions, of course.
I mean Gabriele.