I'm making a Chrome extension. Right now, it's only available to test users. Some of the test users can access it, but some just get a "404" page. Also, when I try to update the code (uploading a new zip to the extensions), it acts like it updates. But when I go to the Web store page, it still lists the old version. It says it might "take a few minutes" for changes to publish, but it's been days and they still aren't published.
Related
INTRODUCTION
I am part of a project team which uses an old GForge system (community edition v5.6.1) to host our source code and provide some further services. One builtin service is the upload and download feature. Thus users can easily get the generated application version. In order to provide this downloadable version, we as developers have to use a browser (e.g. IE or FF) to navigate into the appropriate GForge page, then tick some buttons, fill some text boxes and finally hit an "upload" button which opens a file dialog to specify any file to be uploaded into the GForge download area. For a download, the procedure is similar. Additionally, from time to time there comes a separate WEB page to request a session login.
Now, as we as developers are in a "hot phase" and need to provide downloadable versions with high frequency, the procedure described above is much too error-prone concerning essential parts of the release, and too slow. Besides that, there is always a real person necessary in front of the screen to click around.
QUESTION
How can we manage to programmatically upload and download generated software versions into and out of GForge's download area while overcoming the password page on the first hand (of course using a valid user account)?
WHAT WE'VE TRIED SO FAR
Using a Python script. Python provides very helpful modules like "urllib", "urllib2" and "requests", with which any HTTP access (even the ones with session password protection) should be managable. After many hours of trying, the GForge system only returns the password request page. Not any of the interesting files. Even far away from uploading anything.
Using an AutoIt script. AutoIt can automate mouse movements and keyboard presses as well as direct access of visible elements on the screen. It provides a "Window Info" application to identify any window element. But e.g. buttons and text fields within WEB pages (HTML) are not recognized. So we don't know how to correctly identify GForge's password text field in order to move the mouse there, and type in the necessary text. And from there go on imitating the person sitting in front of the screen.
Does anybody have some experience regarding the solution of our problem?
I'd upgrade your system to v6.4.2 (current GForge version). From there you will have access to the SOAP interface which will make all this possible. When GForgeNEXT is released, https://next.gforge.com, the SOAP interface will be replace by a REST-ful API making this integration even easier.
The upgrade to v6.4.2 from 5.6.x will be a bit painful but our team would be happy to help, just create an account on gforge.com and then open a free support ticket here:
https://gforge.com/gf/project/gforge5/tracker/?action=TrackerItemBrowse&tracker_id=10345
Disclaimer: My company manages GForge so the advice given above I'd give to any paying client. For further clarity, files in GForge are stored in the file system. The SOAP interface allows you to reach into the database for any ticket or document grab the appropriate document and even replace it. Programatically, it is the cleanest answer.
If content scripts are specified in manifest.json for Firefox, Firefox will also load content scripts for already opened tabs and execute them even the tabs are already in loaded and ready state.
Google Chrome does not add any content script when extension is installed for already opened tabs. The content script is loaded when the page is refreshed for the older tabs.
I want to ask is Firefox's behavior is expected or bug?
As far as compatibility goes, it's a bug.
Chrome does not do that.
As a result, many extensions implement custom logic to achieve the effect.
One has to take into account side effects. Suppose your content script injects some UI into the page. Then the extension is updated. That amounts to extension restart, and suddenly you have 2 copies of the UI. Also valid if you just attach event listeners, as (at least in case of Chrome) the old content script's context continues to exist (in an "orphaned" state).
The last point is very important and probably the reason why Chrome doesn't do it by default. At some point I made a very long post about this problem - if you're going to report this as a bug to Mozilla, please include that. There's also this feature request that is related.
What would be sensible (and backwards compatible) is to add a parameter to content script description in the manifest - whether to inject into existing pages. It will be up to developers to guarantee that side effects are taken care of. This usually requires even more code to just communicate to the old script that it needs to wind down and clean up.
Our webapp (an online advertising campaign console) supports ad tags that are converted from flash using Swiffy. In our UI, we have a page where you can preview and edit the ad, and some changes cause the preview (an IFRAME) to be reloaded with an updated preview (e.g. if we change the URL passed as the clickTag value to the ad).
The first time we display a Swiffy preview, everything works fine; but on the second and subsequent attempts, we see the following in the browser (Chrome 43.0.2357.130) console:
Uncaught TypeError: Cannot redefine property: __swiffy_override
(anonymous function) # runtime.js:163
(anonymous function) # runtime.js:799
It seems that what's going on here is that Swiffy is using Object.defineProperty(Date,"__swiffy_override",{value:Fh}). According to MDN, unless you specify {configurable: true} in the third argument, you will get this exception.
We're currently using the version of runtime.js from Google's CDN (https://www.gstatic.com/swiffy/v7.2.0/runtime.js). We could, of course, copy this into our own CDN and edit the javascript, but this has obvious maintainability issues.
Is this something that should be reported back to Google as a bug? (If so, how does one do that?)
Is this a problem other people have run into, and have work-arounds for?
It sounds like you are not actually reloading the contents of the IFRAME when updating the preview, otherwise the error shouldn't occur, Date.__swiffy_override would not be defined at that point.
If you aren't able to completely reload the content of the IFRAME, are you able to load the Swiffy runtime just once, and create a new swiffy.Stage for each preview update?
Note, I've not tested this, and it may not work in some circumstances (if at all). I'd be especially wary of creating swiffy.Stages with different ActionScript versions for instance. The safe bet would always be to completely reload the IFRAME each time.
My website is hosted on OVH (France), with one SQL database.
I have installed manually PrestaShop from the GitHub folder.
After multiple attempts in installing PrestaShop, I finally reached to have it installed but since I choose to use the demo products (in the installation process and as I am new to PrestaShop), I think obtaining a white page with only the logo is surprising to me (see attachment).
I tried to print the errors switching to True the dev parameters from the file defines.inc.php, but nothing was printed.
Also, I see nothing in the console of the browser.
I suspect there is a conflict with the SQL database, but I don't know what to check.
Would you have any tracks to check what's wrong with my installation ?
Regards,
A&A
I'm using Joomla! 1.5.14 and VirtueMart 1.1.3
My codes are hosted on my website. But now that i wanna make changes, i put the codes into XAMPP so that i can run them locally and test it out first before i put them up into the internet.
The problem is, after i logged in as administrator (http://localhost/mysite/administrator/), whenever i click on any links (example: "Manage user fields", "Edit store", etc..), it redirects me to my live site.
If i edit from there, the changes will be made straightaway on my site (which i don't want to).
May i know which files and what are the codes that i should change so that when i click on the links that i want to make changes, it will still be in localhost?
Go to your configuration file in
administrator/com_virtuemart/virtuemart.cfg.php
Change the live-site URL from localhost to your live one.