ndahlquist / whaler Goto Github PK
View Code? Open in Web Editor NEWSquash merges from the GitHub merge button
License: Apache License 2.0
Squash merges from the GitHub merge button
License: Apache License 2.0
Because it includes a memcache caching layer.
To check whether a repo has given access to cicitheandroidtester.
422 {u'documentation_url': u'https://developer.github.com/v3/git/commits/#create-a-commit', u'message': u'Validation Failed', u'errors': [{u'field': u'email', u'code': u'missing_field', u'resource': u'author'}]}
Traceback (most recent call last):
File "/base/data/home/runtimes/python27/python27_lib/versions/third_party/webapp2-2.5.2/webapp2.py", line 1535, in __call__
rv = self.handle_exception(request, response, e)
File "/base/data/home/runtimes/python27/python27_lib/versions/third_party/webapp2-2.5.2/webapp2.py", line 1529, in __call__
rv = self.router.dispatch(request, response)
File "/base/data/home/runtimes/python27/python27_lib/versions/third_party/webapp2-2.5.2/webapp2.py", line 1278, in default_dispatcher
return route.handler_adapter(request, response)
File "/base/data/home/runtimes/python27/python27_lib/versions/third_party/webapp2-2.5.2/webapp2.py", line 1102, in __call__
return handler.dispatch()
File "/base/data/home/runtimes/python27/python27_lib/versions/third_party/webapp2-2.5.2/webapp2.py", line 572, in dispatch
return self.handle_exception(e, self.app.debug)
File "/base/data/home/runtimes/python27/python27_lib/versions/third_party/webapp2-2.5.2/webapp2.py", line 570, in dispatch
return method(*args, **kwargs)
File "/base/data/home/apps/s~whaler-on-fleek/master.381158370045424596/MergeEndpoint.py", line 60, in post
new_commit = repo.repo.create_git_commit(squash_commit_message, tree, parents, author, committer)
File "/base/data/home/apps/s~whaler-on-fleek/master.381158370045424596/lib/github/Repository.py", line 722, in create_git_commit
input=post_parameters
File "/base/data/home/apps/s~whaler-on-fleek/master.381158370045424596/lib/github/Requester.py", line 169, in requestJsonAndCheck
return self.__check(*self.requestJson(verb, url, parameters, headers, input, cnx))
File "/base/data/home/apps/s~whaler-on-fleek/master.381158370045424596/lib/github/Requester.py", line 177, in __check
raise self.__createException(status, responseHeaders, output)
GithubException: 422 {u'documentation_url': u'https://developer.github.com/v3/git/commits/#create-a-commit', u'message': u'Validation Failed', u'errors': [{u'field': u'email', u'code': u'missing_field', u'resource': u'author'}]}
They should have links to each other.
Saw this error:
Refused to connect to 'https://dev-dot-whaler-on-fleek.appspot.com/merge' because it violates the following Content Security Policy directive: "connect-src 'self' ghconduit.com:25035 live.github.com wss://live.github.com uploads.github.com www.google-analytics.com s3.amazonaws.com".
Seems like there is a possibility that the content security policy is not being set fast enough.
We should delete the OauthEntry from the database.
422 {u'documentation_url': u'https://developer.github.com/v3/git/refs/#update-a-reference', u'message': u'Update is not a fast forward'}
Traceback (most recent call last):
File "/base/data/home/runtimes/python27/python27_lib/versions/third_party/webapp2-2.5.2/webapp2.py", line 1535, in __call__
rv = self.handle_exception(request, response, e)
File "/base/data/home/runtimes/python27/python27_lib/versions/third_party/webapp2-2.5.2/webapp2.py", line 1529, in __call__
rv = self.router.dispatch(request, response)
File "/base/data/home/runtimes/python27/python27_lib/versions/third_party/webapp2-2.5.2/webapp2.py", line 1278, in default_dispatcher
return route.handler_adapter(request, response)
File "/base/data/home/runtimes/python27/python27_lib/versions/third_party/webapp2-2.5.2/webapp2.py", line 1102, in __call__
return handler.dispatch()
File "/base/data/home/runtimes/python27/python27_lib/versions/third_party/webapp2-2.5.2/webapp2.py", line 572, in dispatch
return self.handle_exception(e, self.app.debug)
File "/base/data/home/runtimes/python27/python27_lib/versions/third_party/webapp2-2.5.2/webapp2.py", line 570, in dispatch
return method(*args, **kwargs)
File "/base/data/home/apps/s~whaler-on-fleek/master.381084231506798240/QueueMergeEndpoint.py", line 56, in post
branch_base.edit(new_commit.sha)
File "/base/data/home/apps/s~whaler-on-fleek/master.381084231506798240/lib/github/GitRef.py", line 88, in edit
input=post_parameters
File "/base/data/home/apps/s~whaler-on-fleek/master.381084231506798240/lib/github/Requester.py", line 169, in requestJsonAndCheck
return self.__check(*self.requestJson(verb, url, parameters, headers, input, cnx))
File "/base/data/home/apps/s~whaler-on-fleek/master.381084231506798240/lib/github/Requester.py", line 177, in __check
raise self.__createException(status, responseHeaders, output)
GithubException: 422 {u'documentation_url': u'https://developer.github.com/v3/git/refs/#update-a-reference', u'message': u'Update is not a fast forward'}
We currently wait for window.onload, which can take a long time. This is also unreliable, because the merge button may not yet be active when the window loads.
Instead of modifying GitHub's content security policy.
Right now, this endpoint makes many serial requests, taking about 2 seconds to complete. I don't think we can do this work completely asynchronously, since we want to return a response depending on the result, but we might be able to do certain requests in parallel (or add to a task queue).
Currently, when someone presses the merge button, we use that user's public email address, if available, and fallback to their private @noreply.github.com email if not. (https://github.com/ndahlquist/whaler/blob/dev/appengine/MergeEndpoint.py#L101)
Ideally, we would always use the user's canonical email address. This could be accomplished by using the user:email application permission (see https://developer.github.com/v3/oauth/#scopes).
If GitHub is doing its "checking if we can merge," for example, we will fail to update the HTML correctly.
None
Traceback (most recent call last):
File "/base/data/home/runtimes/python27/python27_lib/versions/third_party/webapp2-2.5.2/webapp2.py", line 1535, in __call__
rv = self.handle_exception(request, response, e)
File "/base/data/home/runtimes/python27/python27_lib/versions/third_party/webapp2-2.5.2/webapp2.py", line 1529, in __call__
rv = self.router.dispatch(request, response)
File "/base/data/home/runtimes/python27/python27_lib/versions/third_party/webapp2-2.5.2/webapp2.py", line 1278, in default_dispatcher
return route.handler_adapter(request, response)
File "/base/data/home/runtimes/python27/python27_lib/versions/third_party/webapp2-2.5.2/webapp2.py", line 1102, in __call__
return handler.dispatch()
File "/base/data/home/runtimes/python27/python27_lib/versions/third_party/webapp2-2.5.2/webapp2.py", line 572, in dispatch
return self.handle_exception(e, self.app.debug)
File "/base/data/home/runtimes/python27/python27_lib/versions/third_party/webapp2-2.5.2/webapp2.py", line 570, in dispatch
return method(*args, **kwargs)
File "/base/data/home/apps/s~whaler-on-fleek/master.381158370045424596/MergeEndpoint.py", line 58, in post
author = self.get_git_author(pull)
File "/base/data/home/apps/s~whaler-on-fleek/master.381158370045424596/MergeEndpoint.py", line 77, in get_git_author
return github.InputGitAuthor(user.name, user.email)
File "/base/data/home/apps/s~whaler-on-fleek/master.381158370045424596/lib/github/InputGitAuthor.py", line 41, in __init__
assert isinstance(email, (str, unicode)), email
AssertionError: None
To reduce the number of necessary calls to the GitHub API.
They are under an incompatible license, and should not be distributed in this repo.
This means that the extension will not work with the GitHub workflow.
Currently, the default message included in the GitHub merge text field is short / truncates the original text.
The whaler account will be rate-limited at 5000 requests/hour. This is troublesome.
Instead of using this whaler account to make requests, we should use the GitHub oauth flow for web-apps, as described here: https://developer.github.com/v3/oauth/#redirect-urls
This is because the redirect URL is chosen too early.
Previously, the first "merge" button would trigger the Oauth flow, if necessary, but now that button is not being found by our Javascript. Needs a fix.
There are times when it is still useful to use an ordinary merge, so it would be nice to have the original Merge button, at least as an option.
In the case that a session token expires, pressing the "squash merge" button redirects back to the same page.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.