Opened 4 years ago

Closed 4 years ago

#9034 closed project (fixed)

Firefox browser add-on

Reported by: dcf Owned by: dcf
Priority: Medium Milestone:
Component: Archived/Flashproxy Version:
Severity: Keywords:
Cc: Actual Points:
Parent ID: Points:
Reviewer: Sponsor:

Child Tickets

Change History (6)

comment:1 Changed 4 years ago by dcf

Status: newneeds_review

comment:2 Changed 4 years ago by bastik

Version 0.2.x has not been available for testing, yet. (I disabled the add-on (0.1.1) for the moment)

I ran (0.1.x) and was trying to find out why it would turn red.

I saw

Error: Firefox can't establish a connection to the server at ws://[censored]:9000/.

for the badge and the add-on.

Once I got

Error: The connection to ws://[censored]:9000/ was interrupted while the page was loading.

for the add-on along with

Error: tor-flashproxy-badge: An exception occurred.
ReferenceError: clearTimeout is not defined

After I resolved the issue on my side (the add-on couldn't make connections from about:blank, because of a filtering add-on) the badge stayed green AND turned to its working color, without any errors showing up in the error console. Therefore I concluded it's working. Also it never gave the "clearTimeout" error again (or any other error beside failing connections).

(There are so many proxies polling for clients; my badge didn't serve any client, while being available for 6+ hours, this makes it hard to see if something is actually working)

(I appreciate the work by Christan Sturm, who might not have created this, if Cupcake would work for Firefox as it was planned according to its readme.)

(everything prior 0.1.x, actually worked since it was "just" Flashproxy itself, like it appears to be now the case again.)

comment:3 Changed 4 years ago by cypherpunks

A bit of status on this. My first implementation, the 0.0.3x series was the badge integrated as UI element. It was a quick hack. However it had two problems. First of all it was part of the UI so it was only running, when attached. The other problem is that people wrote me how they don't like it, because it is quite noisy and the badge simply was made for web pages, blogs etc. It doesn't integrate well with the browser and isn't an icon.

Since the add-on really got a bunch of users I started reading up on extension development. Because there was also a mail about the size of the iframe and memory usage, etc. and because I thought it would be benificial (and just because I wanted to dig into it) I changed the approach, hacking on Flashproxy directly, basically hoping it would remain stable and I would have enough time to keep it updated. I kinda knew it probably wouldn't work out, but I thought maybe it could go into a direction where the core functionality is just a little library, so people could do most of the stuff that these days is done via query strings using an event frameworks or an API. It's mainly because installing an extension is in general a different approach, one actively puts effort in it, has really long running connections, wants to provide more resources, already opts in to it, etc. Anyway, I thought that could be the way to go.

Sadly, it was too much experimentation, less time, etc. and so it became buggy rather quickly. But lesson learned. I decided to strip all that away again trying to not actively interfere withe the badge. I am now only reading the messages the badge prints in debug mode. Should I want to do configuration I will use the normal query string and for opting in I set the required cookie (like I did in the early version). I currently do that in a really simple way and also really inefficiently. That's most likely to change. The benefit of this approach is that the badge will always be used like it is meant to be, having its usual environment and if there is any problem with the add-on it will most likely still work correctly, but maybe show wrong statistics or something, which is a benefit for everyone. I will also inform users of NoScript (which of course is extremely popular among users of this add-on).

This is implemented, but not on yet, which mainly is because they appear to have a problem with add-on upload in the recent hours. This however gives me time to test things more throughly before releasing it.

One more related thing: The add-on is created using the SDK, so more high level than some other add-ons. This currently means that the add-on can NOT be used for other Mozilla products. There are tickets on GitHub for this. It (hopefully) is a temporary problem, because it is something many Mozilla people want to change. So as soon as this changes there will also be Seamonkey, Thunderbird, etc. add-ons based on the same code.

comment:4 Changed 4 years ago by cypherpunks

Another update: I deleted the 0.1.x version from So every new user should have a working version again.

comment:6 Changed 4 years ago by dcf

Resolution: fixed
Status: needs_reviewclosed

This Firefox add-on is now mentioned in the documentation and on the home page.

Note: See TracTickets for help on using tickets.