Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Figure out who is going to release to app stores #9

Closed
alerque opened this issue Mar 1, 2014 · 25 comments
Closed

Figure out who is going to release to app stores #9

alerque opened this issue Mar 1, 2014 · 25 comments
Assignees

Comments

@alerque
Copy link
Collaborator

alerque commented Mar 1, 2014

The new build process (See #5) auto-generates extensions for major browsers in a ready to upload format. The only catch is at least with the Chrome Web Store, packages need to be consistently signed with the same key. Whoever this is should be decided upon and generate a autoreviewcomments.pem file. If this is Derek, he should already have the one he's been using, but this build process should replace his. If it is somebody else we should probably start them with a clean cert.

@oliversalzburg
Copy link
Collaborator

The Web Store actually won't let you upload already signed packages. Instead, you only upload a ZIP file (dist/autoreviewcomments-webstore.zip in our case) and they generate a key for you and sign the package with it.

Either way, the question still remains. I just like to mention that registering for the Chrome Web Store costs a few dollars and publishing for Firefox and Opera includes a lengthy review process which can be time consuming and frustrating to pass.

@alerque
Copy link
Collaborator Author

alerque commented Mar 3, 2014

Interesting. I don't think it used to be that way but the last time I used the Chrome Store was before it had public in Chrome. Go figure.

So basically anybody who has the build tools setup can run this and submit to the various stores and it doen't have to be the same person. In my mind this should be @Benjol, but if this sounds like too much work and he doesn't want to fiddle with it I would be happy to. I'm also going to point Derek at this to see if he's interested in submitting based on this build process.

@Benjol
Copy link
Owner

Benjol commented Mar 3, 2014

I'm not against doing it myself, I'll just need help grokking what needs to be done...

@alerque
Copy link
Collaborator Author

alerque commented Mar 3, 2014

Once you get ant going over there it will leave you with all the packaged extensions in a ready-to-upload format for each browser store in the /dist folder. You just need accounts and to login and upload at the Chrome Store, Mozilla Addons, and Opera Extensions.

@Benjol
Copy link
Owner

Benjol commented Mar 3, 2014

I guess it also depends a bit on some feedback from Derek?

@alerque
Copy link
Collaborator Author

alerque commented Mar 3, 2014

I pinged Derek in SE chat about this already but don't have a Github handle for him. A also asked about his art work for the extension.

@derek1906
Copy link
Contributor

I can update the current extension I uploaded through my account to the new ones (if this the topic you are discussing here). About the icon of the extension you can reuse it however you want.

@alerque
Copy link
Collaborator Author

alerque commented Mar 4, 2014

Hey @derek1906 that would be awesome on both counts. It looks like you have used git some but in case you are not too familiar with branching, here's how you could do that:

## Get yourself a fork of the repository from Benjol
# Visiting this URL in a browser will setup your fork:
# https://github.com/Benjol/SE-AutoReviewComments/fork

## Clone it to a working space on your computer
git clone https://github.com/derek1906/SE-AutoReviewComments.git

## Change to that folder
cd SE-AutoReviewComments

## Start a new branch based on the devel branch for working on the artwork
git checkout -b artwork origin/devel

## Swap out your artwork
# Use whatever file manager or graphics app to replace the files
# in  src/icons with your versions

## Mark those changes for commit
git add src/icons

## Commit them
git commit -m "replace artwork with version already used in Chrome Store"

## Push it back to your fork so we can merge it upstream
git push -u origin artwork:artwork

## Build the project locally
# For help on setting this up see:
# https://github.com/Benjol/SE-AutoReviewComments/wiki/Building
./build.sh

A finished set of extensions ready for upload should be available in the dist directory.

@oliversalzburg
Copy link
Collaborator

Be sure to generate all existing sizes of the icons. The different extensions require different variants ;)

@derek1906
Copy link
Contributor

Ok I will try and see if I can get a hang of this, maybe this week or so.

@alerque
Copy link
Collaborator Author

alerque commented Mar 5, 2014

@derek1906 If you don't have time to fiddle with getting the hang of git (I'll help you with that but it does take a little time the first time around if you aren't familiar with the tools) I'd be happy to mail you the latest fully built packages so you can get the store version up to date.

@derek1906
Copy link
Contributor

Okay I uploaded the new icons to the artwork branch. All sizes are showing the same icon, but I modified the 16x16 one since if I simply shrink down the original image it would be too small.

@alerque
Copy link
Collaborator Author

alerque commented Mar 10, 2014

Thanks @derek1906 that's awesome. I have opened a pull request between your branch and the main devel branch on Benjol's repository. This will make it easy for him to review and hit a button to merge in your contribution.

Since the 1.3.3 release is already out the door this contribution technically can't land in the master branch until the next release, but I have token the liberty of cherry picking this commit and adding it to another branch as well that is basically a hotfix for 1.3.3. I have compiled this version into a ready made package. The zip file is here in my Dropbox and to my knowledge this is what you need to update the Chrome Store for now. Starting with the next release you should be able to easily build this yourself by checking out the master branch and running ./build.sh. (See Building for details on the tools used for that).

@alerque
Copy link
Collaborator Author

alerque commented Mar 10, 2014

The other package formats for Opera, Firefox, Chrome testing, etc are also in that folder. (All at v1.3.3 + artwork). Who should we have setup accounts and push to the other app stores?

@derek1906
Copy link
Contributor

@alerque I already uploaded the 1.3.3 to the webstore manually. For future release I'll just switch to building it from here. One thing to notice is that since now the code is also applied to HTTPS, the URL for accessing the API doesn't work anymore and I changed it to use HTTPS (just a slight modification). Chrome needs it to be HTTPS to include the script.

@alerque
Copy link
Collaborator Author

alerque commented Mar 10, 2014

@derek1906 Did you also manually fix the other things that went into 1.3.3 such as removing the auto-update code (that only works for userscript folks) from the extension builds? If you just used the userscript version and stuffed it in an extension it will have code that does not belong in the build at all.

Also if you could create a branch for you HTTPS fix and contribute that too it would be great. I hope you did that in such a way that it works on both HTTP and HTTPS. Not supporting HTTPS in favor or normal HTTP working properly is preferable at this point since SE hasn't even officially released SSL support themselves.

@derek1906
Copy link
Contributor

@alerque I didn't really touch anything else. I just made sure the code works and I uploaded it.

I will try to make it to support both HTTP and HTTPS (only uses https when the page is in https).

@alerque
Copy link
Collaborator Author

alerque commented Mar 10, 2014

@derek1906 If you did not make any modifications to the userscript version, it is actually going to be broken. Specifically on the next release it will prompt users to upgrade using a URL that will not work for the Chrome extension users. This should NOT go out labeled as 1.3.3 if it is not actually built using the build process for 1.3.3 as it is not the same code. Can you replace the one you uploaded with the one from my Dropbox? Or is a version bump required to re-upload so we need to make a 1.3.3.1 release to fix this? We could include your HTTPS fix too in that case, but it needs to get fixed in the Chrome Store before we can make another master release otherwise we will be bogus prompting users to do something they can't do!

@derek1906
Copy link
Contributor

@alerque - Okay I will replace it with the build you gave me and upload it probably by tomorrow (I will make it to 1.3.3.1 because yea it needs a version bump.)

alerque added a commit to alerque/SE-AutoReviewComments that referenced this issue Mar 10, 2014
Per discussion in Benjol#9, version 1.3.3 git incorrectly uploaded
to the Chrome Store with the userscript code instead ef the
extension code. This is a version bump so that the package can
be re-uploaded and existing users will not get and error next
time the userscript version is update.

Rebuilt packages to include hotfix for URL issue from 1fad101
alerque added a commit to alerque/SE-AutoReviewComments that referenced this issue Mar 10, 2014
Per discussion in Benjol#9, version 1.3.3 git incorrectly uploaded
to the Chrome Store with the userscript code instead ef the
extension code. This is a version bump so that the package can
be re-uploaded and existing users will not get and error next
time the userscript version is update.

Rebuilt packages to include hotfix for URL issue from 1fad101
@alerque
Copy link
Collaborator Author

alerque commented Mar 10, 2014

@derek1906 Let me make this easy.

I have fixed the URL issue with a proper fix to use the same protocol as the site was loaded from and bumped the version number. The pre-built packages in my Dropbox folder are now all 1.3.3.1 and include the URL fix and of course the artwork. You should be able to upload that zip to the store now.

@oliversalzburg
Copy link
Collaborator

I already have accounts set up on the Opera and Mozilla store, but it
only takes a few seconds anyway.
I'd be happy to publish the extension packages, but if someone else is
preferred, that's fine as well :)

On 2014-03-10 8:56, Caleb Maclennan wrote:

The other package formats for Opera, Firefox, Chrome testing, etc are
also in that folder
https://www.dropbox.com/sh/4ogswo70kdsfbs2/PBSTrDQQZN. (All at
v1.3.3 + artwork). Who should we have setup accounts and push to the
other app stores?


Reply to this email directly or view it on GitHub
#9 (comment).

@alerque
Copy link
Collaborator Author

alerque commented Mar 10, 2014

@oliversalzburg I'd say go for it (assuming you actually test 1.3.3.1 in each browser first), but who does the upload should be @Benjol's call. Ideally he would be doing it as he has to be the one to sign off on releases to master anyway, but I don't think it's a big deal if he wants the easy way for you to do it.

@Benjol
Copy link
Owner

Benjol commented Mar 10, 2014

@alerque, yeah, should be me, but... if @oliversalzburg has already got everything set up... Can these things be shared? Ideally it's good to have more than one person who can step in (if I'm on holiday, for example)

@oliversalzburg
Copy link
Collaborator

You can add additional authors for an extension on Mozilla Add-Ons, but I don't know if that means they get administrative access to the listing.

I don't see such an option on Opera Addons.

Either way, I don't think a vacation would be issue. Reviews of new versions can take several weeks for these two platforms. Only Chrome releases are pretty much instant.

The more I think about it, @Benjol should do it :)

@oliversalzburg
Copy link
Collaborator

As it currently stands @Benjol is releasing all extensions

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

No branches or pull requests

4 participants