• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

hypothesis / h
70%
master: 97%

Build:
Build:
LAST BUILD BRANCH: realtime-update-v1-h-only-1
DEFAULT BRANCH: master
Repo Added 06 Mar 2015 06:33AM UTC
Files 34
Badge
Embed â–¾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

LAST BUILD ON BRANCH faster-docker
branch: faster-docker
CHANGE BRANCH
x
Reset
  • faster-docker
  • 1142-no-client-side-error-message-when-saving-annotation-fails
  • 1334-latest-pdfjs
  • 1542-source-url-not-visible-on-older-annotations
  • 1612-hide-orphans
  • 1615-update-timestamps
  • 174-let-me-change-my-email
  • 1755-handle-internal-server-error-in-registration-form
  • 1759-fix-reply-permissions
  • 1776-bring-padded-scrolling-back
  • 179-focus-in-username-field-when-sign-in-is-clicked
  • 1815-streamer-doc-not
  • 1916-message-not-available-in-stream
  • 1916-message-not-available-in-stream-2
  • 1916-rework-stream
  • 1916-stream-cards
  • 1916-stream-message-not-available
  • 1916-stream-message-not-available-2
  • 1979-clear-selected-annotations
  • 1979-fix-annotation-creation
  • 1992-fix
  • 2013-fix-fuzzy
  • 2026-module-isolate-env
  • 2033-fix-focusing
  • 2041-fix-show-diff
  • 2052-scroll-to-sign-in-form-on-clicking-sign-in-link
  • 2053-scroll-sidebar-to-new-annotations
  • 2053-scroll-sidebar-to-new-annotations-2
  • 2263-tooltip-for-note-button
  • 2273-gunicorn-ssl-crash
  • 2326-fix-search-with-no-document
  • 2440-replies-dont-match-search-normalized-url-queries
  • 2440-replies-dont-match-search-normalized-url-queries-2
  • 2441-fix-change-email-form
  • 2484-fix-page-notes
  • 2515-fix-uri-normalization-crash-when-no-hostname
  • 2519-crash-when-annotation-document-link-is-None
  • 2521-hide-unanchored-warnings-when-not-on-sidebar
  • 2525-new-annotations-disappearing
  • 2555-fix-email-notifications
  • 2589-fix-bug-incorrect-search-results
  • 2598-enable-literal-mid-word-underscores
  • 2701-delete-unsaved-drafts-on-sign-out
  • 2702-fix-diplay-of-num-replies-on-collapsed-replies
  • 2713-change-permissions-when-moving-annotations-btwn-groups
  • 2716-save-permissions-to-drafts
  • 2728-misc-AnnotationController-refactors-part-2
  • 2728-refactor-annotation-controller
  • 2728-refactor-annotation-controller-tests
  • 2728-refactor-highlight-saving
  • 2728-remove-USER_CHANGED-event-from-AnnotationController
  • 2728-translate-annotation-controller-to-js
  • 2771-fix-notifications-crash-on-parent-with-no-text
  • 2799-dont-update-wrong-annotations
  • 2810-no-error-on-sign-in-to-unactivated-account
  • 2823-fix-annotation-thread-collapsing
  • 2838-fix-wrong-group-shown-on-stream
  • 2845-unsafe-eval-on-github
  • 2848-TypeError-Cannot-read-property-show_sidebar_tutorial-of-undefined
  • 2852-fill-hole-in-groups-dropdown-button
  • 2928-restore-counting-of-private-and-group-annotations-in-badge
  • 2NiiPelT-limit-group-names-to-25-characters
  • 3001-fix-hypothesis-admin-command
  • 3007-fix-tags-autocomplete-dropdown-css
  • 391-add-atom-feeds
  • 391-add-atom-feeds-2
  • 404-should-be-a-404
  • 404-style-fix
  • 6vnMlymZ-alias-tag-to-tags-in-search-api
  • 800-fancy-selected-annotations
  • 930-loading-icon
  • 9sqXWtNi-fix-title-for-local-file-pdf-annotations
  • AnnotationController-domain-model-view-model-refactor
  • BPA1eZ9O-add-developer-api-tokens
  • EqRZwdZC-clear-selection-before-creating-new-annotation
  • Kj8vWkme-show-filenames-of-local-files
  • NUoaiUO4-add-create-account-banner
  • PfK5vbcM-add-tutorial-to-sidebar
  • TPUsXCk4-add-media-embeds-feature
  • User.get_by_id-refactor
  • User.get_by_id-refactor-2
  • accounts-views
  • add-admin-users
  • add-anno-count-to-admin
  • add-api-cors-support
  • add-authors-to-rss
  • add-caching-to-Chrome-badge-api
  • add-clickToClose-option
  • add-debug-arg-to-buildext
  • add-docs-for-how-authenticate-to-the-api
  • add-guidelines-for-model-code
  • add-help-text-to-nipsa
  • add-hpt.is-support-to-chrome-extension
  • add-ie-autodetect
  • add-jscs-to-hound-config
  • add-pyramid-redis-sessions-dependency
  • add-pyroma-dependency
  • add-robots-txt
  • add-rss
  • add-sphinx-httpdomain-dependency
  • add-staff-users
  • add-unit-test-factories
  • add-userid-domain-setting
  • admin-account-deletion
  • admin-views-cleanup
  • alembic-logging
  • allow-disabling-websocket-uri-equiv
  • allow-missing-parents
  • allow-missing-permissions
  • anchoring-rewrite
  • angular-1.4
  • angular-csp
  • annotation-element-directive
  • annotation-html-presenter
  • annotation-test-cleanup
  • annotation-test-refactor
  • annotator-css-separation
  • api-blueprint
  • api-exception-handling
  • api-view-tests-refactor
  • api-view-tests-refactor-event
  • app-to-extension-comms
  • atom-feed-link-tweaks
  • autoprefix_css
  • aw/csp
  • aw/features_pending_removal
  • aw/sentry-logging
  • b13OFeU2-allow-skinnier-sidebar
  • b9PFMDM7-add-activate-button-to-admin-users-page
  • better-custom-pdf-viewer-handling
  • better-dockerfile-caching
  • better-handling-of-missing-blacklist
  • better-login-form
  • blank-og-description
  • build-artifacts
  • building-chrome-extension-docs
  • buildkite-pipeline
  • bump-initial-load-count
  • canceling-edits-loses-changes
  • capture-request-context-for-sentry
  • centralise-api-storage-calls
  • centralise-models
  • check-manifest
  • chrome-error-handling
  • chrome-inject-error-capture
  • claim-account
  • claim-invite
  • clarify-effective-principals
  • clean-up-debug-helpers
  • clean-up-thread-show-logic
  • cleaner-direct-es-access
  • cleanup-pdf-anchoring
  • cleanup-socket-threading-mapper-routes
  • cleanup-transactions
  • client-auth-refactor
  • code-style-conformance
  • conditional-http
  • consolidate-gitignore
  • consolidate-templates
  • consolidate-validation
  • constraint-naming-convention
  • convert-filters-to-functions
  • convert-views-module-to-package
  • correct-x-annotator-auth-token-to-authorization
  • coverage
  • coverage-does-not-include-tests
  • create_group_ux_tweaks
  • csp-friendly-settings
  • csrf-tween
  • csv-unicode-fix
  • debug-logging-database
  • decaf
  • decouple-tm-from-session
  • decouple_app_template_from_pyramid
  • decouple_ext_build_from_pyramid
  • deduplicate-profile-pages
  • deduplicate-script
  • defensive-feed-construction
  • deform-form-rendering
  • dehorusify-authcontroller
  • dehorusify-forgotpasswordcontroller
  • dehorusify-profilecontroller
  • dehorusify-registercontroller
  • describe-virtualenvs-in-install-docs
  • develop
  • disentangle-form-helpers
  • dismiss_app_route
  • do-not-update-annotation-times-too-often
  • do-not-via-via
  • docker-deployment-docs
  • docker-entrypoint
  • docker-prod
  • docs-tweaks
  • document-id-param-of-search-api
  • document-model-tweaks
  • document_link_cleanups
  • document_link_refactor
  • dont-autofocus-group-share-link
  • dont-expand-canonical-uris
  • dont-explode-on-invalid-json
  • dont-open-welcome-page-when-admin-install
  • dont-save-null-data-to-draft-store
  • dont-sentry-404s
  • drop-cc0-license-from-only-me-annotations
  • dumb-makefile
  • editor-js-conversion-and-tests
  • editor-markdown-commands-refactor
  • editorconfig
  • embed-instruction-hostname
  • enriched-stream
  • excerpt-hysteresis
  • explicit-settings-for-websocket
  • explicitly-state-visibility-level
  • exponential-backoff-features
  • export-showframe
  • extend-search-api-docs
  • extension-analytics
  • faster-api
  • faster-database-tests
  • faster-travis
  • feature-flags-admin
  • features-pending-removal
  • finish-indirection-through-storage
  • firefox-addon-fixes
  • firefox-webextensions-build
  • fix-2429
  • fix-2452
  • fix-a-comment
  • fix-a-pep257-warning
  • fix-admin-annotations-query
  • fix-angular-is-not-defined
  • fix-bouncer-url
  • fix-broken-document-equivalence-lookups
  • fix-broken-promises-ie
  • fix-broken-uri-query
  • fix-changing-size-socketlist
  • fix-crash-on-login-with-non-json-body
  • fix-digest-problem
  • fix-docker-build
  • fix-docs-help
  • fix-failing-tests
  • fix-form-button-gradients
  • fix-group-annot-edit-from-stream
  • fix-group-page-js
  • fix-groups-principals
  • fix-groups-race
  • fix-groups-views
  • fix-guest-embedding
  • fix-http-syntax-highlighting-in-api-docs
  • fix-hypothesis-admin-command
  • fix-invalid-manifest-error-when-building-stage-and-prod-chrome-extensions
  • fix-links-in-readme
  • fix-logout
  • fix-nipsa-migration
  • fix-password-reset
  • fix-passwordresetevent
  • fix-pdf-uris
  • fix-realtime
  • fix-realtime-for-replies-standalone
  • fix-registration-process
  • fix-replies-hover-highlight
  • fix-reply-notification-worker
  • fix-signed-out-top-bar
  • fix-split-user
  • fix-standalone-reply-pages
  • fix-stream-banner-flash
  • fix-streamer-for-namespaced-nsq
  • fix-subscription-event
  • fix-tag-links
  • fix-token-command-for-non-default-ports
  • fix-tooltip-on-share-icon
  • fix-unsubscribe-auth
  • fix-video-embeds-in-firefox-less-than-45
  • fix-websocket-auth-policies
  • focus-on-a-group
  • four-space-js
  • frame-rpc
  • front-page-font-size-quick-fix
  • frontend-cleanups
  • frontend-fixes
  • fullscreen-video-embeds
  • generate-token
  • gevent-bump
  • gh1900-chrome_pdf_viewer_detection
  • gh2590-app_init_race
  • gh2671-group_notification_consistency
  • gh2675-wait_for_features
  • gh2819-new-annot-timestamp
  • gh2820-date-formatting-perf
  • gh2830-chrome_ext_inline_install
  • github-2686-fix-invalid-permissions-when-creating-annotations-when-signed-out
  • group-page-update
  • group-share-page-design-tweaks
  • guest-embedding
  • gulp-frontend-build
  • gulp-frontend-build-admin
  • hSxsjvim-add-WebTrends-to-blacklisted-URL-params
  • handle-missing-permissions-fields
  • handle-null-targets
  • hide-old-sort-control-in-sidebar
  • homepage-aak-banner
  • host-sidebar-split
  • hound-python
  • ie-cache-fixes
  • increase-max-annot-body-size
  • isolate-config-env
  • jpm
  • jscs-require-spaces-after-function
  • jscsrc
  • jshint-tweaks
  • jsonld-renderer
  • jsonschema-annotation-validation
  • jwt-bearer
  • kill-comment-icon-on-card
  • kill-sqlite
  • lenazun-fixed-link
  • lenient-search
  • limit-what-admins-can-do
  • lint-tweaks
  • lookahead-tags-3
  • make-activation-fields-nullable
  • make-bridge-a-factory
  • manage-own-search-client
  • master
  • match-tags-according-to-mapping-analyzer
  • move-auth-to-api
  • move-es-config-into-search
  • move-i18n-helper
  • move-login-form-to-directive
  • move-models-to-api
  • move-nipsa-to-app
  • move-nipsa-to-prepare
  • move-token-to-app
  • multitarget
  • namespaced-nsqd
  • new-group
  • ng-annotate
  • ng-csp-everywhere
  • ng15-upgrade
  • nipsa
  • no-explicit-typechecks
  • nodtm
  • oWe60V8v-signal-when-there-are-public-annotations-on-a-page
  • observer-3
  • one-time-bindings
  • open-sidebar-when-annot-fragment-present
  • optimistic-save
  • optional-websocket
  • p-decouple_app_template_from_pyramid
  • packaging-cleanups
  • paginate-groups-admin
  • paste-api-entrypoint
  • percolator
  • percolator-sse
  • pin-webassets
  • postgres
  • postgres-annotations
  • postgres-documents
  • postgres-read-write
  • presalt-hashids
  • prevent-annotation-attempt-when-not-signed-in
  • proper-feature-flags
  • prospector-allow-id-as-valid-name
  • publish-to-a-group
  • publish-to-a-group-permissions
  • publish-to-a-group-squashed
  • publisher-cli-commands
  • purge-fontawesome
  • purge-yaml
  • py3-compat
  • quote-hysteresis
  • r-squash_test_error_logging
  • randomize-websocket-reconnects
  • realtime-update-v1-1
  • realtime-update-v1-h-only-1
  • redirect-after-login
  • redirect-after-login-groups-join
  • redirect-to-welcome-after-claim
  • refactor-accounts-view-config
  • refactor-auth-controller-test
  • refactor-blocklist
  • refactor-chrome-badge-client
  • refactor-chrome-tab-error-handling
  • refactor-search
  • refactor-ux
  • refactor_search
  • releaser
  • reload-annotations-auth-change
  • remove-256-character-limit-from-uri-column
  • remove-angular-animate
  • remove-blocklist
  • remove-broken-cla-links
  • remove-claim-feature-flag
  • remove-claim-invite-module
  • remove-dead-code
  • remove-dependencies-on-threading
  • remove-diff-remnants
  • remove-es-test
  • remove-get-by-userid
  • remove-groups-feature-flag
  • remove-hiring-banner
  • remove-horus-from-subscriptions
  • remove-legacy-firefox-extension
  • remove-model-dependence-from-search
  • remove-momentjs
  • remove-notification-flag
  • remove-old-capability-url-serializer
  • remove-old-feature-flag-data
  • remove-old-internals-docs
  • remove-pulse-remnants
  • remove-queue-flag
  • remove-search-normalized-flag
  • remove-show-unanchored-feature
  • remove-streamer-flag
  • remove-unanchored-annotations-flag
  • remove-unnecessary-flashes
  • remove-unnecessary-group-filter
  • remove-unused-annotation-deleted-property
  • remove-unused-streamer-code
  • remove_assets_ext_build_arg
  • replace-%20-with-space-when-displaying-URIs
  • replace-accounts-forms
  • replace-hashids-with-pubids
  • replace-profile-form
  • report-form-level-errors
  • resource-refactoring
  • script-subscribers
  • search-endpoint-default-and
  • search-for-one-uri
  • search-module-to-package
  • send-activation-emails-from-worker
  • sentry-stream-errors
  • separate-controllers
  • separate-service-uri-from-base-uri
  • separete-host-service
  • session-load-retry
  • set-min-chrome-version
  • share-a-group
  • sharing-via-link-from-extension
  • sheetaluk/298-add-product-version-and-environment-info-to-the-tool
  • show-orphans
  • show-traceback-on-exception-in-dev
  • sidebaropenclose-callback
  • signin-directive
  • silence-horus-sqlalchemy-warnings
  • simpler-layouts
  • simpler-version-management
  • simplify-admin-permission-handling
  • simplify-code
  • simplify-db-session-handling
  • simplify-routing
  • simplify-server-side-auth-code
  • simplify-streamer
  • small-UX-improvements
  • some-dev-install-docs-fixes
  • speedup-npm-deps-checking
  • stable
  • standalone-websocket-server
  • straightforward-api-inclusion
  • stream-group-hashid-query
  • streamer-workqueue
  • style
  • support-epub-integrations
  • swagger-docs
  • syncbridge
  • t105-group_push_notifications
  • t120-client_sentry
  • t158-truncated_annot_design
  • t187-nav_blog_tweaks
  • t187-new_homepage_design
  • t87-group_scope_dropdown_ui
  • t89-combined_scope_save_btn
  • t91-sort_dropdown_move_to_top_bar
  • test-fix-tests
  • test-mock-version-on-travis
  • thread-collapsing
  • thread-collapsing-redux
  • toastr
  • toggle-resize-tooltip
  • toggle-sidebar-tooltip
  • tooltips-on-adder
  • topbar-toolbar-harmony
  • touch
  • translate-annotation-mapper
  • travis-node-upgrade
  • travis-node-upgrade-test
  • trello-135-while-drafting-an-annotation-the-group-name-or-lack-thereof-should-reflect-its-current-visibility
  • trello-143-make-replies-default-to-group-and-visibility-of-parent
  • trello-144-add-a-list-of-most-recently-annotated-by-the-group-urls-to-the-group-page
  • trello-155-simplify-group-share-link
  • trello-176-enable-staff-to-look-up-user-email-addresses
  • trello-177-change-the-default-behavior-of-the-embed-to-highlights-on-by-default
  • trello-178-new-homepage
  • unified_session_and_features
  • update-docs
  • update-package-data
  • upgrade-annotator-store
  • uri-module
  • uri-normalisation
  • urlencode-badge-uri
  • use-python-time-where-possible
  • userid-symbol-consistency
  • username-or-email-address
  • users-admin-always-query-by-userid
  • users-dashboard
  • v0.4.2
  • v0.5.0
  • v0.5.1
  • v0.6.0
  • v0.7.0
  • v0.7.1
  • v0.7.10
  • v0.7.11
  • v0.7.12
  • v0.7.13
  • v0.7.2
  • v0.7.3
  • v0.7.4
  • v0.7.5
  • v0.7.6
  • v0.7.8
  • v0.7.9
  • v0.8.0
  • v0.8.1
  • v0.8.10
  • v0.8.11
  • v0.8.12
  • v0.8.13
  • v0.8.14
  • v0.8.15
  • v0.8.2
  • v0.8.3
  • v0.8.4
  • v0.8.5
  • v0.8.6
  • v0.8.7
  • v0.8.8
  • v0.8.9
  • v0.9.0
  • v0.9.1
  • v0.9.2
  • v0.9.3
  • validate-permissions-field
  • vendor-assets-from-npm
  • via
  • via-plain-html-form
  • viewable-visible
  • viewable-vs-visible
  • visible-vs-viewable
  • visual-truncation
  • w/community-guidelines-signup
  • w/csv-groups-report
  • w/groups-report-in-admin-dashboard
  • w/pwd-reset
  • w/remove-2char-pw-copy
  • warn-for-relative-import
  • wdtO5Zzk-dont-404-when-opening-an-old-activation-link
  • welcome-page-tweaks
  • ws_exception_handling
  • xgknj2RP-disable-Chrome-badge-on-certain-pages
  • xwyKzlwp-strip-via-prefixes-in-normalization
  • yapf-config

pending completion
9674

push

travis-ci

nickstenning
Speed up repeated docker builds

This commit attempts to improve the lives of people frequently building
and deploying the h docker image by increasing the proportion of the
image that remains cached across multiple builds, at the cost of a
somewhat larger image.

Changes include:

- Build dependencies are now installed once and left in the image, as
  opposed to installed only for the duration of the build and then
  removed. The impact of this change is analysed below.
- CHANGES.rst no longer invalidates application dependency build.
- Source files are not chowned to the hypothesis user, so source code
  doesn't take up twice the space in the image.

With this set of changes, at this commit, the total size of the image is
460 MB, compared to 282 MB for the image for v0.8.9. But when we look at
the layer breakdown for each of these images we see a different story:

v0.8.9 image:

    LAYER                                 SIZE        CUMULATIVE
    base image                            5.249 MB    5.249 MB
    system dependencies                   73.88 MB    79.13 MB
    packaging files                       85.55 kB*   79.22 MB
    build and application dependencies    130.5 MB*   209.7 MB
    application source code               64.95 MB*   274.7 MB
    application static asset build        7.571 MB*   282.2 MB

This commit:

    LAYER                                 SIZE        CUMULATIVE
    base image                            5.249 MB    5.249 MB
    build and system dependencies         308.1 MB    313.4 MB
    packaging files                       87.95 kB    313.4 MB
    application dependencies              106.2 MB    419.6 MB
    application source code               30.73 MB*   450.4 MB
    application static asset build        6.145 MB*   456.5 MB

The difference here is that a typical build (one which didn't change the
python or node dependencies) would rebuild each of the starred layers,
amounting to a ~203 MB diff previously, and a... (continued)

2622 of 3764 relevant lines covered (69.66%)

0.7 hits per line

Relevant lines Covered
Build:
Build:
3764 RELEVANT LINES 2622 COVERED LINES
0.7 HITS PER LINE
Source Files on faster-docker
Detailed source file information is not available for this build.

Recent builds

Builds Branch Commit Type Ran Committer Via Coverage
9674 faster-docker Speed up repeated docker builds This commit attempts to improve the lives of people frequently building and deploying the h docker image by increasing the proportion of the image that remains cached across multiple builds, at the cost of a somewh... push 12 Jan 2016 01:26PM UTC nickstenning travis-ci pending completion  
9671 faster-docker Speed up repeated docker builds This commit attempts to improve the lives of people frequently building and deploying the h docker image by increasing the proportion of the image that remains cached across multiple builds, at the cost of a somewh... push 12 Jan 2016 01:19PM UTC nickstenning travis-ci pending completion  
See All Builds (3935)
  • Repo on GitHub
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc