- 11 Feb, 2016 6 commits
-
-
Nick Stenning authored
I broke this in f7b519d, it seems.
-
Nick Stenning authored
Fix RavenJS initialization in app and stream
-
Nick Stenning authored
Improve Chrome sidebar injection error detection and handling
-
Nick Stenning authored
Improve capture of sidebar injection errors
-
Robert Knight authored
Put the Error first as the most important argument, followed by a string describing when the error happened, followed by optional context information. This also reduces unnecessary nesting in the 'extra' field of the captured exception that is sent to Sentry.
-
Robert Knight authored
app.coffee failed to initialize Raven because it looked for config info in window.RAVEN_CONFIG instead of the #hypothesis-settings <script> tag. This commit makes the web service expose the Raven config info to the site and the application in the same way, using JSON <script> tags which are compatible with the strict CSP policy used by the Chrome extension. * Expose and consume config info in the same way on the site and in the app. * Refactor settings.js to make it independent of Angular, for use on the site. Fixes #2938
-
- 10 Feb, 2016 1 commit
-
-
Robert Knight authored
* Capture the tab URL as context when injecting the sidebar fails, for use in debugging. * Switch tests to use the toResult() helper instead of Promise.catch() to handle assert errors inside catch blocks properly. * Handle the Error-like objects used by chrome.extension.lastError better. When a Chrome async API fails, it sets chrome.extension.lastError to an Error-like object with a 'message' property. Since this object is not an instance of Error, RavenJS stringified it with .toString(), resulting in an unhelpful '[object Object]' message in Sentry. This commit adds logic to extract out the message property of such objects when capturing exceptions.
-
- 09 Feb, 2016 5 commits
-
-
Nick Stenning authored
Merge pull request #2929 from hypothesis/2928-restore-counting-of-private-and-group-annotations-in-badge Restore counting of private and group annotations in badge
-
Nick Stenning authored
Specify the minimum Chrome version in the manifest
-
Nick Stenning authored
Fix base URL not being specified for /app/dismiss_sidebar_tutorial route
-
Nick Stenning authored
Simplify server side auth code
-
Alice Wyan authored
Add a PENDING_REMOVAL bucket for features on their way out
-
- 08 Feb, 2016 3 commits
-
-
Robert Knight authored
The dismiss_sidebar_tutorial session action overrode the whole URL, including replacing the base URL with just '/app'. Therefore it would have failed when app.html's origin did not match the service URL - as in the Chrome extension. * Pass the complete URL for the dismiss_sidebar_tutorial action * Remove several unused actions from session.js that have been replaced by server-rendered forms * Add test for dimiss_sidebar_tutorial action
-
Nick Stenning authored
Add automated retry with backoff for session loads
-
Christof Dorner authored
Always count annotations with the correct userid
-
- 05 Feb, 2016 2 commits
-
-
Robert Knight authored
Don't autofocus the group share link
-
Nick Stenning authored
Unfortunately, on group pages for groups who have annotated lots of documents, this results in a rather confusing jump to the bottom of the page. Fixes #2917.
-
- 04 Feb, 2016 7 commits
-
-
Robert Knight authored
If a session load fails, subsequent calls to session.load() would trigger another request immediately. Together with feature flag checks triggering session.load(), this could result in a cycle if no network connection was present: 1. App loads during initial digest cycle, 'flag.featureEnabled()' is called to test whether to show certain UI elements 2. session.load() is triggered 3. session.load() fails and the HTTP response error triggers a digest cycle 4. GOTO 1 This commit resolves the problem by automatically retrying session.load() calls with an exponential backoff.
-
Christof Dorner authored
Standalone websocket server
-
Nick Stenning authored
Group page update
-
Lena Gunn authored
-
Nick Stenning authored
Add help text to nipsa form
-
Nick Stenning authored
Fix client-side router on site
-
Nick Stenning authored
Don't 404 if a user visits an activation link twice
-
- 03 Feb, 2016 9 commits
-
-
Sean Hammond authored
Do not update the group for existing annotations on edit
-
Nick Stenning authored
Fix flash of 'Create Account' banner in stream
-
Nick Stenning authored
Admin account deletion
-
Nick Stenning authored
Remove the need to specify the Chrome extension ID when building with bundled assets
-
Robert Knight authored
Whenever an annotation was edited, its current group was set to whichever group was focused in the UI. Our current model does not allow for moving annotations between groups however. The only time when annotations should have their groups set is when the annotation is newly created and when switching groups before saving the annotation. We already have separate logic to deal with both of these cases. Fixes #2902
-
Robert Knight authored
Fix user annotation query in admin panel
-
Robert Knight authored
The JS for the group share page failed to load because of an incorrect comparison of the result of String.match() against a number and also because of an attempt to load Bootstrap unnecessarily on this pages. This commit fixes the issue and prepares us for adding new pages in future by: * Adding a client-side micro-router to simplify running page-specific JS * Only loading the Bootstrap components on pages that actually need it. Fixes #2867
-
Robert Knight authored
Make connecting the WebSocket optional
-
Nick Stenning authored
In preparation for splitting the hosting of the WebSocket server into a separate process, make it possible to run the client without attempting to connect to the WebSocket. If the `websocketUrl` setting is missing, we will not attempt to connect.
-
- 01 Feb, 2016 2 commits
-
-
Robert Knight authored
The WebSocket only accepts connections from a whitelist of origins. When connecting to a local H service, provide a useful hint when connections (eg. from a local Chrome extension build with bundled assets) are rejected due to the H service not having the sidebar app's origin whitelisted.
-
Nick Stenning authored
Add YAPF config and docs for automatic formatting of Python source code
-
- 26 Jan, 2016 4 commits
-
-
Nick Stenning authored
Double the truncation threshold height for annotations
-
Nick Stenning authored
Prevent double-posting of new annotations
-
Robert Knight authored
As per https://trello.com/c/7QtpfMB5/ increase the threshold so that only very long annotation bodies are truncated.
-
Robert Knight authored
When the user clicks the 'Post' button to create an annotation, optimistically switch the card back to View mode but display a 'Saving...' indicator in place of the Reply/Edit/Delete links. This makes the UI appear more responsive when the user clicks the Post button and also prevents an issue where the user could click 'Post' multiple times during the save and create multiple annotations. * Fix a possible inconsistency between the 'Post' button's enabled state and whether or not the save() function can succeed. The hasContent() and isShared() methods also already have tests, so this lets us remove several redundant tests. * Fix inconsistency in the return type of the save() function - always return a promise. * Treat negative status values as network errors as well as 0. If the server is unreachable, the real status value may be -1. Fixes #2864
-
- 25 Jan, 2016 1 commit
-
-
Nick Stenning authored
Decouple sidebar app HTML / embed JS template rendering from Pyramid
-