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

HSF / phoenix
49%
master: 38%

Build:
Build:
LAST BUILD BRANCH: main
DEFAULT BRANCH: master
Repo Added 09 Jul 2019 07:52AM UTC
Files 59
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 main
branch: SELECT
CHANGE BRANCH
x
  • No branch selected
  • JiveXML-improvements
  • Pratz/fixes#206-collectioninfo
  • Pratz/fixes-206
  • SelectionManager_Expansion_Pack
  • add-axis-labels
  • add-eta-phi-grid
  • add-jet-origin
  • add-tests
  • addMissingEnergy
  • addThemeConfig
  • better_sliders
  • build-peer-dependencies
  • changeExperimentInfoFont
  • cypress-e2e
  • dependabot/npm_and_yarn/async-2.6.4
  • dependabot/npm_and_yarn/async-3.2.4
  • dependabot/npm_and_yarn/decode-uri-component-0.2.2
  • dependabot/npm_and_yarn/follow-redirects-1.14.8
  • dependabot/npm_and_yarn/http-cache-semantics-4.1.1
  • dependabot/npm_and_yarn/karma-6.3.14
  • dependabot/npm_and_yarn/log4js-6.4.0
  • dependabot/npm_and_yarn/marked-4.0.10
  • dependabot/npm_and_yarn/minimist-1.2.6
  • dependabot/npm_and_yarn/nanoid-3.2.0
  • dependabot/npm_and_yarn/node-fetch-2.6.7
  • dependabot/npm_and_yarn/node-forge-1.3.0
  • dependabot/npm_and_yarn/packages/phoenix-event-display/css-what-5.0.1
  • dependabot/npm_and_yarn/packages/phoenix-event-display/elliptic-6.5.4
  • dependabot/npm_and_yarn/packages/phoenix-event-display/socket.io-2.4.1
  • dependabot/npm_and_yarn/packages/phoenix-event-display/ws-7.4.6
  • dependabot/npm_and_yarn/packages/phoenix-ng/dns-packet-1.3.4
  • dependabot/npm_and_yarn/packages/phoenix-ng/elliptic-6.5.4
  • dependabot/npm_and_yarn/packages/phoenix-ng/normalize-url-4.5.1
  • dependabot/npm_and_yarn/packages/phoenix-ng/postcss-7.0.36
  • dependabot/npm_and_yarn/packages/phoenix-ng/three-0.125.0
  • dependabot/npm_and_yarn/packages/phoenix-ng/ws-6.2.2
  • dependabot/npm_and_yarn/semver-5.7.2
  • dependabot/npm_and_yarn/shelljs-0.8.5
  • dependabot/npm_and_yarn/tough-cookie-4.1.3
  • dependabot/npm_and_yarn/trim-off-newlines-1.0.3
  • dependabot/npm_and_yarn/webpack-5.76.0
  • dependabot/npm_and_yarn/word-wrap-1.2.4
  • dependabot/npm_and_yarn/word-wrap-1.2.5
  • dependabot/npm_and_yarn/yargs-parser-13.1.2
  • docs-event-display
  • event-data-doc-improvements
  • feat-a11y
  • feat-animation-preset
  • feat-api-files
  • feat-ar
  • feat-ar-overlay
  • feat-automate-release
  • feat-automate-release-docs
  • feat-bundle
  • feat-calocluster-options
  • feat-clipping-planes-config
  • feat-color-by-vertex
  • feat-color-options
  • feat-compressed-jivexml
  • feat-config-name
  • feat-cpu-usage
  • feat-custom-import
  • feat-cuts-in-collections
  • feat-cycle-events
  • feat-deploy-master
  • feat-deployment
  • feat-docs
  • feat-embed-menu
  • feat-eslint
  • feat-event-data-explorer
  • feat-event-data-menu-state
  • feat-event-select
  • feat-github-actions
  • feat-import-options
  • feat-improvements
  • feat-io-configurable
  • feat-label
  • feat-loading-bar
  • feat-overlay-bg
  • feat-pre-commit-lint
  • feat-prettier
  • feat-qrcode
  • feat-refactor-geometry-loaders
  • feat-shareable-link
  • feat-tests
  • feat-ui-interface
  • feat-ui-menu-wrapper
  • feat-update-jsroot
  • feat-update-packages
  • feat-upgrade-packages
  • feat-url-options
  • feat-webpack-external
  • feat-yarn
  • feat-yarn-workspaces
  • feat/update-packages
  • fix-angular
  • fix-angular14-simple
  • fix-ar-overlay
  • fix-build
  • fix-calocluster-position
  • fix-cms-geometry-loading
  • fix-collection-color
  • fix-color-by-vertex
  • fix-cuts
  • fix-dev-env
  • fix-docker
  • fix-docker-release
  • fix-edm4-hep-doc
  • fix-edm4hep-json
  • fix-electron-labels
  • fix-embed
  • fix-geometry-demo
  • fix-hit-color
  • fix-hits
  • fix-io-options-dialog-test
  • fix-jets
  • fix-json-hits
  • fix-jsroot
  • fix-labels
  • fix-lhcb-opacity
  • fix-load-state
  • fix-master-main
  • fix-menu-toggle
  • fix-phoenix-menu
  • fix-playground-ar
  • fix-read-files
  • fix-same-sub-items
  • fix-ss-mode
  • fix-tests
  • fix-ui-binding
  • fix-url-config
  • fix527_3
  • fix552
  • fix730
  • fixSurge
  • handle-jivexml-tracks-better
  • hit-color
  • jasmine-ng
  • jest-ng
  • links-from-to
  • main
  • main-animation-improvements
  • main-fix-CI
  • main-fix-config
  • main-fix-warnings
  • main-update-threejs
  • main-upgrade-yarn
  • master
  • master--NSW-collections
  • master--draco
  • master-bk
  • master-fix-339
  • master-fix-typo
  • misc-atlas-fixes
  • misc-fixes
  • object-cuts
  • open_zipped_JiveXML
  • overlay-tracker-hits
  • playground-vr
  • refs/tags/v1.6.0
  • refs/tags/v1.6.1
  • refs/tags/v1.7.0
  • refs/tags/v2.1.0
  • refs/tags/v2.11.0
  • refs/tags/v2.11.1
  • refs/tags/v2.12.0
  • refs/tags/v2.2.0
  • refs/tags/v2.3.1
  • refs/tags/v2.3.2
  • refs/tags/v2.4.0
  • refs/tags/v2.5.2
  • refs/tags/v2.6.0
  • refs/tags/v2.7.0
  • refs/tags/v2.8.0
  • refs/tags/v2.9.0
  • scale-clusters
  • sponce_2400b
  • sponce_FixPictureOnRetina
  • sponce_LHCbTransparency
  • sponce_VPMove
  • sponce_alwaysTransparent
  • sponce_angularOpt
  • sponce_cycleEnhancement
  • sponce_cycleEvents
  • sponce_doc
  • sponce_docFix
  • sponce_doubleSided
  • sponce_dropTransparency
  • sponce_fixEventLoader
  • sponce_fixMenuHierarchy
  • sponce_fixPlanarCaloCells
  • sponce_lhcbData
  • sponce_newLHCbEventData
  • sponce_newLHCbGeometry
  • sponce_tranparency
  • sponce_viewsWithTarget
  • sponce_zipLoading
  • test-branch
  • test-doc
  • unzip-jivexml-from-url
  • update-deps-july2025
  • use-jivexml-by-default
  • v1.0.1
  • v1.0.2
  • v1.1.0
  • v1.2.0
  • v1.3.0
  • v1.4.0
  • v1.4.1
  • yarn-install

16 Sep 2026 04:47AM UTC coverage: 48.9%. Remained the same
35056971269

push

github

web-flow
fix(ui-components): defer object URL revoke in panel downloads (#1031)

`URL.createObjectURL` hands the browser a handle to the blob, and the anchor
click that follows starts the download asynchronously. Revoking the URL in the
same synchronous task can therefore tear the blob down before the browser has
taken its own reference, cancelling the download.

`saveFile` already defers its revoke to the next tick for exactly this reason,
with a comment saying so. Three UI panels hand-roll the same download instead of
calling it and revoke synchronously:

- kinematics panel "Export TSV"
- masterclass panel "Export results"
- session pill ".phnxreplay" download

The user clicks export and, depending on blob size and browser, either gets the
file or silently gets nothing. Larger exports fail more often, since a bigger
blob gives the browser a wider window in which to lose the race.

PR #992 fixed `saveFile` and stated these call sites "all revoke correctly".
They do revoke, which is why they were passed over, but they revoke in the wrong
task - so the leak was fixed there while this race stayed live here.

Defer the revoke with `setTimeout` in all three, matching `saveFile`. The
kinematics and masterclass anchors are also hidden and removed after the click,
as `saveFile` does, so an unstyled anchor never lands in the layout.

Added tests asserting the URL is not revoked synchronously and is revoked after
the tick. The kinematics and masterclass "not revoked synchronously" cases fail
before this change; the session-pill suite is new.

Fixes #1030

Co-authored-by: Claude Opus 5 <noreply@anthropic.com>

885 of 2131 branches covered (41.53%)

Branch coverage included in aggregate %.

3337 of 6503 relevant lines covered (51.31%)

203.87 hits per line

Relevant lines Covered
Build:
Build:
6503 RELEVANT LINES 3337 COVERED LINES
203.87 HITS PER LINE
Source Files on master
  • Tree
  • List 59
  • Changed 0
  • Source Changed 0
  • Coverage Changed 0
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses

Recent builds

Builds Branch Commit Type Ran Committer Via Coverage
35056971269 main fix(ui-components): defer object URL revoke in panel downloads (#1031) `URL.createObjectURL` hands the browser a handle to the blob, and the anchor click that follows starts the download asynchronously. Revoking the URL in the same synchronous ta... push 16 Sep 2026 04:51AM UTC web-flow github
48.9
35056838490 main fix(ui-components): report invalid .phnx files instead of failing silently (#1033) `parsePhoenixDisplay` calls `JSON.parse` on the raw file text. It is `async`, so a malformed file surfaces as a rejected promise rather than a synchronous throw, a... push 16 Sep 2026 04:49AM UTC web-flow github
48.9
34966708756 main fix(ui-components): cancel SSMode's deferred listener timer on destroy (#1035) `toggleSSMode` defers attaching the document click/touchstart listeners by 1ms, working around the activating click firing them immediately. The timer id was never sto... push 15 Sep 2026 12:08PM UTC web-flow github
48.9
34966602850 main fix(event-display): keep a cut's default range over clone and save/load (#1037) A Cut captures the bounds it is constructed with as the values `reset()` restores. Both `clone()` and `fromJSON()` rebuild a Cut through that same constructor using i... push 15 Sep 2026 12:06PM UTC web-flow github
48.9
34711053576 main feat(app): hide the menu scrollbar if not needed (#1027) push 12 Sep 2026 06:27PM UTC web-flow github
48.8
34689094615 main chore(release): v4.2.3 push 12 Sep 2026 10:45AM UTC EdwardMoyse github
48.8
34688333979 main feat(event-display): put "Color by" first and color at random from a seed (#1026) The color options menu showed the collection's color swatch and a "Random" button above the "Color by" selector, so the controls for a single color sat outside the ... push 12 Sep 2026 10:27AM UTC web-flow github
48.8
34687884693 main fix(event-display): keep a collection's color over a save and load (#1025) The color of a collection was lost as soon as its state was loaded back. `selectedColorByOption` was initialised to the first color by option, which for tracks is charge, ... push 12 Sep 2026 10:17AM UTC web-flow github
48.72
34687725852 main feat(event-display): put "Color by" first and color at random from a seed The color options menu showed the collection's color swatch and a "Random" button above the "Color by" selector, so the controls for a single color sat outside the mechanis... push 12 Sep 2026 10:13AM UTC EdwardMoyse github
48.8
34687245625 main fix(event-display): keep a collection's color over a save and load (#1025) The color of a collection was lost as soon as its state was loaded back. `selectedColorByOption` was initialised to the first color by option, which for tracks is charge, ... push 12 Sep 2026 10:03AM UTC web-flow github
48.72
See All Builds (1126)
  • Repo on GitHub
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc