@require kills script after updating to 0.9.14 #1502

Closed
dima-stefantsov opened this Issue Jan 23, 2012 · 15 comments

Comments

Projects
None yet
6 participants
@dima-stefantsov

How to reproduce:

  1. Get 0.9.14
  2. Add new script
  3. Add something like // @require http://jquery.com/src/jquery-latest.js
  4. Save script, update page.
    Wuala, script and it's folder have disappeared, config have empty script filename.

It took me like half of a day to figure the root of the bug. Have fun =)

@arantius

This comment has been minimized.

Show comment
Hide comment
@arantius

arantius Jan 23, 2012

Collaborator

On Windows? This is probably a dupe of #1466.

Collaborator

arantius commented Jan 23, 2012

On Windows? This is probably a dupe of #1466.

@dima-stefantsov

This comment has been minimized.

Show comment
Hide comment
@dima-stefantsov

dima-stefantsov Jan 23, 2012

Win 7 x64 ultimate. I thought it's not dupe because on 0.9.13 everything works great. Plus, in my case script is being lost, not just stops working.

Win 7 x64 ultimate. I thought it's not dupe because on 0.9.13 everything works great. Plus, in my case script is being lost, not just stops working.

@ciaranmcnamara

This comment has been minimized.

Show comment
Hide comment
@ciaranmcnamara

ciaranmcnamara Jan 23, 2012

This happened to me too last night - I changed an @require line, saved the script and reloaded the included page. The script failed to run and the contents of my gm_scripts folder had disappeared, except for config.xml. I'm on Windows XP SP3.

This happened to me too last night - I changed an @require line, saved the script and reloaded the included page. The script failed to run and the contents of my gm_scripts folder had disappeared, except for config.xml. I'm on Windows XP SP3.

@garyking

This comment has been minimized.

Show comment
Hide comment
@garyking

garyking Jan 24, 2012

Yes! I have this same problem on OS X Lion. GS has been real buggy this past year; I recall a similar bug that prevented me from using the @require keyword, I believe, which was pretty annoying to say the least.

Yes! I have this same problem on OS X Lion. GS has been real buggy this past year; I recall a similar bug that prevented me from using the @require keyword, I believe, which was pretty annoying to say the least.

@dima-stefantsov

This comment has been minimized.

Show comment
Hide comment
@dima-stefantsov

dima-stefantsov Jan 24, 2012

A-ha, and after rolling back to 0.9.13, i'm getting symptoms of #1466.
Will wait for 0.9.14+.

A-ha, and after rolling back to 0.9.13, i'm getting symptoms of #1466.
Will wait for 0.9.14+.

@garyking

This comment has been minimized.

Show comment
Hide comment
@garyking

garyking Jan 24, 2012

I guess I'll just write my scripts keep them in a holding pen somewhere for now, then. And, I feel sorry for developers who haven't backed up their scripts...

I guess I'll just write my scripts keep them in a holding pen somewhere for now, then. And, I feel sorry for developers who haven't backed up their scripts...

@Trezoid

This comment has been minimized.

Show comment
Hide comment
@Trezoid

Trezoid Jan 25, 2012

OS X Lion, firefox 12.0a1, GM 0.9.14, same script deletion problem. Wipes out everything in the gm_scripts folder.

Trezoid commented Jan 25, 2012

OS X Lion, firefox 12.0a1, GM 0.9.14, same script deletion problem. Wipes out everything in the gm_scripts folder.

@Ventero

This comment has been minimized.

Show comment
Hide comment
@Ventero

Ventero Jan 25, 2012

Contributor

This patch seems to fix this specific issue (i.e. any data loss). Note that after applying it, scripts will stop running when their dependencies are updated, since a new equivalent for GM_ScriptDownload#finishInstall that deals with the pendingExec seems to be missing.

Contributor

Ventero commented Jan 25, 2012

This patch seems to fix this specific issue (i.e. any data loss). Note that after applying it, scripts will stop running when their dependencies are updated, since a new equivalent for GM_ScriptDownload#finishInstall that deals with the pendingExec seems to be missing.

arantius added a commit to arantius/greasemonkey that referenced this issue Jan 25, 2012

Repair Script.updateFromNewScript() to work properly.
It was breaking in combination with RemoteScript, when dependencies needed to be downloaded.

Fixes #1502

@arantius arantius closed this in 84b2562 Jan 25, 2012

@arantius

This comment has been minimized.

Show comment
Hide comment
@arantius

arantius Jan 25, 2012

Collaborator

Reporters: Please test and report whether this build fixes your issues:
https://github.com/downloads/arantius/greasemonkey/greasemonkey-0.9.15.xpi

Collaborator

arantius commented Jan 25, 2012

Reporters: Please test and report whether this build fixes your issues:
https://github.com/downloads/arantius/greasemonkey/greasemonkey-0.9.15.xpi

@garyking

This comment has been minimized.

Show comment
Hide comment
@garyking

garyking Jan 26, 2012

0.9.15 doesn't delete scripts anymore, but @require also does not work. When using it, the required script is not downloaded locally, and the script that had the @require but then removed the @require no longer works.

On a side note, I notice that new scripts have their folder names in whatever case you put it in (upper/lower), rather than always in lowercase. Is that a new thing?

0.9.15 doesn't delete scripts anymore, but @require also does not work. When using it, the required script is not downloaded locally, and the script that had the @require but then removed the @require no longer works.

On a side note, I notice that new scripts have their folder names in whatever case you put it in (upper/lower), rather than always in lowercase. Is that a new thing?

@arantius

This comment has been minimized.

Show comment
Hide comment
@arantius

arantius Jan 26, 2012

Collaborator

If I install https://gist.github.com/1157543 then I get the "@require works!" line as expected.

If I install https://gist.github.com/1677686 then I get both lines as expected. If I edit it to remove one, then it still runs and I get one line. All as expected.

Can you be (a lot) more specific about what exactly does and does not work?

(And yes. URL -> saved file name logic was updated to be much more flexible in what it allows.)

Collaborator

arantius commented Jan 26, 2012

If I install https://gist.github.com/1157543 then I get the "@require works!" line as expected.

If I install https://gist.github.com/1677686 then I get both lines as expected. If I edit it to remove one, then it still runs and I get one line. All as expected.

Can you be (a lot) more specific about what exactly does and does not work?

(And yes. URL -> saved file name logic was updated to be much more flexible in what it allows.)

@dima-stefantsov

This comment has been minimized.

Show comment
Hide comment
@dima-stefantsov

dima-stefantsov Jan 26, 2012

I have not tested it good enough, but problem appears after I manually add new script, paste new line "@require http://jquery.com/src/jquery-latest.js", then I add alert("qwe"); below config header. I could see no alert. Then script got lost after FF reboot.

I have not tested it good enough, but problem appears after I manually add new script, paste new line "@require http://jquery.com/src/jquery-latest.js", then I add alert("qwe"); below config header. I could see no alert. Then script got lost after FF reboot.

@arantius

This comment has been minimized.

Show comment
Hide comment
@arantius

arantius Jan 26, 2012

Collaborator

Add how? New how?

On Thu, Jan 26, 2012 at 9:20 AM, Dimps <
reply@reply.github.com

wrote:

after I manually add new script

Collaborator

arantius commented Jan 26, 2012

Add how? New how?

On Thu, Jan 26, 2012 at 9:20 AM, Dimps <
reply@reply.github.com

wrote:

after I manually add new script

@dima-stefantsov

This comment has been minimized.

Show comment
Hide comment
@dima-stefantsov

dima-stefantsov Jan 26, 2012

GM icon, little arrow to the right, New User Script..., Some Good Name, Somenamespace, empty description, /path//morepath/,
I get
// ==UserScript==
// @name Some Good Name
// @namespace Somenamespace
// @include */path/
/morepath/*
// ==/UserScript==

make it look

// ==UserScript==
// @name Some Good Name
// @namespace Somenamespace
// @require http://jquery.com/src/jquery-latest.js
// @include /path//morepath/*
// ==/UserScript==

alert("qwe");

Save, refresh page. Nothing happened. I can see script in list of page scripts on little arrow to the right of GM icon. Restart FF. Script disappears from this list. It still is in folder on disk (name with upper case characters), Config.xml have no records about this script. jquery-latest is not downloaded (in 0.9.14 when it was bugging, it used to be downloaded near Config.xml)
I have just repeated it again, same thing.

GM icon, little arrow to the right, New User Script..., Some Good Name, Somenamespace, empty description, /path//morepath/,
I get
// ==UserScript==
// @name Some Good Name
// @namespace Somenamespace
// @include */path/
/morepath/*
// ==/UserScript==

make it look

// ==UserScript==
// @name Some Good Name
// @namespace Somenamespace
// @require http://jquery.com/src/jquery-latest.js
// @include /path//morepath/*
// ==/UserScript==

alert("qwe");

Save, refresh page. Nothing happened. I can see script in list of page scripts on little arrow to the right of GM icon. Restart FF. Script disappears from this list. It still is in folder on disk (name with upper case characters), Config.xml have no records about this script. jquery-latest is not downloaded (in 0.9.14 when it was bugging, it used to be downloaded near Config.xml)
I have just repeated it again, same thing.

@arantius

This comment has been minimized.

Show comment
Hide comment
@arantius

arantius Jan 26, 2012

Collaborator

Thanks, recorded as #1504.

Collaborator

arantius commented Jan 26, 2012

Thanks, recorded as #1504.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment