Skip to content
Open
Show file tree
Hide file tree
Changes from 196 commits
Commits
Show all changes
203 commits
Select commit Hold shift + click to select a range
aa69e2c
new hook for easier panel event usage
imanjra Jul 24, 2025
de35816
return panel event return-value as result
imanjra Jul 24, 2025
cd9fc67
fix: standardize Apache license format in model metadata
CharlesCNorton Jul 31, 2025
d16cf5b
Update TF model descriptions and standardize format
CharlesCNorton Jul 31, 2025
ec3c8d6
Removing all typos from FiftyOne repo
CharlesCNorton Aug 12, 2025
d3ed142
[docs] Allow custom tag for independent deployments
AdonaiVera Aug 12, 2025
ebef0c2
feat(dashboard): copy + paste and other actions
ritch Aug 13, 2025
789635f
Update manifest-tf.json
CharlesCNorton Aug 13, 2025
79148e2
cleaned up efficientdent descriptions
CharlesCNorton Aug 13, 2025
d8790d8
Update manifest-tf.json
CharlesCNorton Aug 13, 2025
c4ebf7a
Segmentation&FO_Zoo
paularamo May 22, 2025
e7765c1
docs.voxel51.com
paularamo May 22, 2025
5b56dc3
fix: Algolia search on mobile
Oloxx Aug 13, 2025
b186eed
feat: move the search bar to the top navbar
Oloxx Aug 13, 2025
f8dd8f5
fix: match desktop search button style to mobile
Oloxx Aug 14, 2025
7ef355d
feat(dashboard): export support
ritch Aug 14, 2025
bff1db5
Moved model dataset and segmentation to new docs format rst
AdonaiVera Aug 14, 2025
0da319b
chore: update header width
dgarcia360 Aug 15, 2025
539af27
chore(versions): bump develop to 1.9.0 (#6258)
swheaton Aug 15, 2025
f2f926a
Merge pull request #6256 from voxel51/oloxx/fix-search-bar
AdonaiVera Aug 15, 2025
de914f0
Merge pull request #6259 from voxel51/oloxx/fix-search-mobile
AdonaiVera Aug 15, 2025
affbdb7
fix(dashboard): copy paste fixes
ritch Aug 15, 2025
1854c85
Added integration with dinov3, embeddings, classification and pca
AdonaiVera Aug 16, 2025
1a4bfbf
Apply suggestion sample.get_field
AdonaiVera Aug 16, 2025
3733f55
Fixed two typos
AdonaiVera Aug 16, 2025
686ef6e
Merge pull request #6261 from voxel51/docs/add-tutorial-dinov3
AdonaiVera Aug 16, 2025
a93d2c1
Bump actions/checkout from 4 to 5 (#6263)
dependabot[bot] Aug 18, 2025
f5e02a7
chore: allow for the use of eta 0.15.0 (#6264)
findtopher Aug 18, 2025
3baba7d
build(deps): bump form-data from 4.0.0 to 4.0.4 in /app (#6221)
dependabot[bot] Aug 18, 2025
7f9442b
Fix issue inference openvino and added more webp ilustrations
AdonaiVera Aug 18, 2025
f310361
fix(dashboard): resize handles
ritch Aug 18, 2025
7eb1552
feat(dashboard): improve color of placeholder for layout
ritch Aug 18, 2025
b278206
fix(dashboard): fix export PNG layout and background
ritch Aug 18, 2025
2b8d060
fix(dashboard): resizing plots
ritch Aug 18, 2025
cac50e6
Merge pull request #6224 from voxel51/all-typos-fixed
CharlesCNorton Aug 18, 2025
1d3a4cf
feat(dashboard): resize handler styling
ritch Aug 18, 2025
1b8d3fa
fix(dashboard): export
ritch Aug 18, 2025
e4598a0
replace default / shortcut with Ctrl/⌘+K in DocSearch
AdonaiVera Aug 19, 2025
bef096e
Enterprise Management SDK right-nav shows all modules
AdonaiVera Aug 19, 2025
b112baf
Merge pull request #6271 from voxel51/docs/docsearch-keybinding
AdonaiVera Aug 20, 2025
fde36a5
Merge pull request #6253 from voxel51/docs/custom-tag-deploy
AdonaiVera Aug 20, 2025
c6920b6
Merge pull request #6273 from voxel51/docs/enterprise-management-sdk-…
AdonaiVera Aug 20, 2025
e304c00
Add Training Data field to all model manifest entries
CharlesCNorton Aug 20, 2025
20dfcef
Merge pull request #6278 from voxel51/add-training-data-field
CharlesCNorton Aug 20, 2025
fb54cf1
Merge pull request #6210 from voxel51/update-tf-model-zoo-descriptions
CharlesCNorton Aug 20, 2025
520cb9e
Merge pull request #6207 from voxel51/standardize-apache-license-format
CharlesCNorton Aug 20, 2025
15b3b74
FOEPD-1957: Disable Relay cache in App router (#6267)
benjaminpkane Aug 20, 2025
5dd2ad5
populate dataset information for all pytorch zoo models
CharlesCNorton Aug 20, 2025
404c103
feat(dashboard): multi delete
ritch Aug 20, 2025
450a96b
Modify dataset links - WIP
CharlesCNorton Aug 21, 2025
a51add4
Refined imagenet dataset link
CharlesCNorton Aug 21, 2025
6670c91
Update fiftyone/zoo/models/manifest-torch.json
CharlesCNorton Aug 21, 2025
ab19243
"Not publicly available" -> null
CharlesCNorton Aug 21, 2025
f780f28
Properly handle skip failures in compute metadata (#6279)
CamronStaley Aug 21, 2025
c738e26
Merge pull request #6281 from voxel51/add-training-data-and-urls
CharlesCNorton Aug 21, 2025
4ad3cbb
fix: add version numbers for SqueezeNet models
CharlesCNorton Aug 22, 2025
1284f92
fix: two typos in remote.rst (#6284)
CharlesCNorton Aug 22, 2025
fb70d0d
Save to DB in background thread
exupero Aug 14, 2025
567af77
Provide exception info via exc_info=True rather than string formatting
exupero Aug 20, 2025
12cf39a
Return future so callers can await it
exupero Aug 20, 2025
9ee964e
Move save_batch after definition of var it uses
exupero Aug 20, 2025
f27d0a9
Log async batch errors the same as on the main thread
exupero Aug 20, 2025
df28786
Provide exc_info in warning log
exupero Aug 22, 2025
aff8fac
Rename 'handle_batch_error' to indicate internal use only
exupero Aug 22, 2025
9c51027
Rename 'futures' to '_async_executor'
exupero Aug 22, 2025
09b80cc
Use context stack for async executor rather than 'with' statement
exupero Aug 25, 2025
0ceafcd
Move `_async_executor` to core utils module
exupero Aug 25, 2025
ad6b2f2
store empty Classification, not None
brimoor Aug 19, 2025
b8b7cb9
handle classifications without label in the app
imanjra Aug 19, 2025
bb2bbc9
limit grid rows to 200 (#6287)
benjaminpkane Aug 25, 2025
91de38d
Remove unused import
exupero Aug 26, 2025
34968cb
update compute scene metadata for url definition (#6295)
CamronStaley Aug 26, 2025
1823f5c
feat(dashboard): multi paste
ritch Aug 26, 2025
824ce04
Add docstring to `async_executor`
exupero Aug 27, 2025
2c90638
check for convexHull (#6296)
benjaminpkane Aug 27, 2025
17fd1a7
separate error boundary markup component and side effect component
sashankaryal Aug 27, 2025
13ef26f
Merge pull request #6301 from voxel51/improv/error-boundary
sashankaryal Aug 28, 2025
10cdfb5
Add Training Data field to all TF model manifest entries
CharlesCNorton Aug 28, 2025
ef9ea1a
Save embeddings in background thread
exupero Aug 28, 2025
269b15f
Merge pull request #6305 from voxel51/add-tf-training-data-field
CharlesCNorton Aug 28, 2025
78bdf85
Only call ctx.save() when ctx is defined
exupero Aug 28, 2025
c33ef79
Wrap save_batch code in _handle_batch_error
exupero Aug 28, 2025
7273637
populate dataset information for all tensorflow models
CharlesCNorton Aug 28, 2025
b3e7520
Merge pull request #6306 from voxel51/add-tf-training-data-urls
CharlesCNorton Aug 28, 2025
2853b72
Merge pull request #6288 from voxel51/task/ess/apply-model-perf-FOEPD…
exupero Aug 28, 2025
bc343f3
Render docstring example correctly
exupero Aug 29, 2025
4bdc31f
bump eta to 0.14.5
Br2850 Aug 29, 2025
53a3726
add training_data dosctring to ZooModel
Br2850 Aug 29, 2025
7a450fe
bump to 0.15.1
Br2850 Aug 29, 2025
cbdf259
fix: correct training_data for all SAM 2 Hiera models
CharlesCNorton Aug 29, 2025
e185242
Merge pull request #6310 from voxel51/correct-sam-training-data
CharlesCNorton Aug 29, 2025
332b813
Bump actions/download-artifact from 4 to 5 (#6246)
dependabot[bot] Sep 2, 2025
ca9a71c
build(deps): bump google-github-actions/setup-gcloud from 2 to 3 (#6311)
dependabot[bot] Sep 2, 2025
23b6268
build(deps): bump google-github-actions/auth from 2 to 3 (#6312)
dependabot[bot] Sep 2, 2025
c3b1edd
Merge pull request #6286 from voxel51/model-metadata-version-update
CharlesCNorton Sep 2, 2025
30a246f
Merge pull request #6309 from voxel51/bugfix/ess/async-executor-docst…
exupero Sep 2, 2025
7f2b929
Add medsiglip-448-torch
CharlesCNorton Sep 3, 2025
fea0bf1
Merge pull request #6316 from voxel51/main
afoley587 Sep 4, 2025
9f53208
fix caltech dataset downloads
brimoor Sep 4, 2025
ad8b699
Merge pull request #6308 from voxel51/bump/eta
Br2850 Sep 4, 2025
d069ad0
use snapshot for current dynamic group (#6300)
benjaminpkane Sep 4, 2025
41f664c
Merge pull request #6315 from voxel51/add-medsiglip-448
CharlesCNorton Sep 4, 2025
6c90762
Add monet-zero-torch model
CharlesCNorton Sep 4, 2025
bf82f62
fix tags for suinleelab/monet
CharlesCNorton Sep 4, 2025
5618701
Merge pull request #6319 from voxel51/add-suinleelab-monet
CharlesCNorton Sep 5, 2025
6b08c34
Add pubmed-clip-vit32
CharlesCNorton Sep 5, 2025
33a7e43
Merge pull request #6320 from voxel51/add-pubmed-clip-vit32
CharlesCNorton Sep 5, 2025
f8fe8de
New getting started guides manufacturing in progress
AdonaiVera Sep 5, 2025
651bf38
doc update external orchestrators
allenleetc Sep 5, 2025
25e1f67
feat(dashboard): copy and paste polish
ritch Sep 5, 2025
37ffd67
pr comments
ritch Sep 5, 2025
4bf0a5e
Merge pull request #6257 from voxel51/dashboard-copy-paste
ritch Sep 5, 2025
c337c4a
Replace all the square image to rectangle images in Integrations, Rec…
AdonaiVera Sep 6, 2025
5400280
Merge pull request #6321 from voxel51/al_doc_update
AdonaiVera Sep 6, 2025
18e1a91
Fixed typo in LanceDB
AdonaiVera Sep 6, 2025
44e63c0
Updated buttom to follow FO style
AdonaiVera Sep 6, 2025
b565dec
Integrate Kapa in the Algolia Search
AdonaiVera Sep 6, 2025
4b0f971
Wrap the CSS Style in the tabs
AdonaiVera Sep 7, 2025
ca9e1b2
Fix DOM XSS vulnerability with textContent
AdonaiVera Sep 7, 2025
2ea223c
Improve last getting started, updated images, remove emojis, fix typo…
AdonaiVera Sep 8, 2025
acc8f95
Added valid images
AdonaiVera Sep 8, 2025
0e440f8
build(deps): bump actions/setup-node from 4 to 5 (#6326)
dependabot[bot] Sep 8, 2025
ae7e3e4
Merge pull request #6325 from voxel51/dependabot/github_actions/actio…
dependabot[bot] Sep 8, 2025
77145b3
add fiftyone delegated output CLI command
brimoor Sep 8, 2025
b840caa
Merge pull request #6322 from voxel51/docs/update_square_images
AdonaiVera Sep 8, 2025
e299b7b
Merge pull request #6323 from voxel51/docs/update-agent-button
AdonaiVera Sep 8, 2025
67f8f74
Merge branch 'develop' into docs/wrap-tab-style
AdonaiVera Sep 8, 2025
3ca8ba0
Merge pull request #6324 from voxel51/docs/wrap-tab-style
AdonaiVera Sep 8, 2025
7bd4d32
add --match option
brimoor Sep 8, 2025
f94d36f
fix(dashboard): width calculation
ritch Sep 8, 2025
69bfaa2
fix(dashboard): copy and paste backwards compatibility
ritch Sep 8, 2025
1c8c2c6
Merge pull request #6317 from voxel51/bugfix/zoo-caltech-datasets
brimoor Sep 8, 2025
cf14ac0
Merge pull request #6329 from voxel51/dashboard-copy-paste
ritch Sep 8, 2025
9773daa
Merge pull request #6330 from voxel51/dashboard-fix-bc
ritch Sep 8, 2025
72c4a60
thx rabbit
brimoor Sep 9, 2025
590465c
Merge pull request #6327 from voxel51/fiftyone-delegated-output
brimoor Sep 9, 2025
258db57
Added how to get the tiff files
AdonaiVera Sep 9, 2025
65eb179
ensure model inference on empty view works (#6331)
brimoor Sep 9, 2025
23b4ae2
Merge pull request #5949 from paularamo/main
AdonaiVera Sep 9, 2025
68d5c74
Fix word wrapping of 'Required?' column
exupero Sep 10, 2025
ada5fd1
Merge pull request #6335 from voxel51/bugfix/ess/required-column-width
exupero Sep 10, 2025
f0565d3
build(deps): bump vite from 6.3.4 to 6.3.6 in /e2e-pw (#6333)
dependabot[bot] Sep 11, 2025
348671c
build(deps-dev): bump vite from 5.4.19 to 5.4.20 in /app (#6332)
dependabot[bot] Sep 11, 2025
1aa4c2a
Adding utils for 3d to 2d projections (#6277)
prernadh Sep 12, 2025
2b7c40f
fiftyone/operators requires plugin pros or backend (#6340)
swheaton Sep 13, 2025
2aa1e0a
don't create indexes by default
brimoor Sep 13, 2025
1ff3c24
updating index-related tests
brimoor Sep 15, 2025
48ecd2a
build(actions): AS-898 utilizing trusted publisher workflows (#6339)
afoley587 Sep 15, 2025
368648d
docs: update dependencies to latest version (#6345)
dgarcia360 Sep 22, 2025
f7cc808
Update metrics average to binary for binary classification eval (#6283)
manushreegangwar Sep 22, 2025
93f5b95
Fix for sam/sam2 overwriting bounding boxes from prompt_label field (…
manushreegangwar Sep 22, 2025
feef26e
Add option to monitor DOs for manual termination (#6350)
CamronStaley Sep 23, 2025
a57e299
Update installation script (#6348)
mcdoh Sep 23, 2025
00611d8
Merge remote-tracking branch 'origin/main' into merge-main-into-develop
AdonaiVera Sep 25, 2025
6cd4466
Merge pull request #6356 from voxel51/merge-main-into-develop
AdonaiVera Sep 25, 2025
35e8e63
Merge branch 'main' into afoley/release-1-8-1-merge
afoley587 Sep 25, 2025
0b123fb
Merge pull request #6179 from voxel51/py-panel-tweaks-imx1
ritch Sep 25, 2025
2f835d9
Fix pymongo connect after close (#6354)
kaixi-wang Sep 26, 2025
a3777d7
Merge pull request #6360 from voxel51/afoley/release-1-8-1-merge
afoley587 Sep 26, 2025
ac17383
Add heartbeat for DOs (#6359)
CamronStaley Sep 26, 2025
b40750c
Merge pull request #6344 from voxel51/create-index-false-default
brimoor Sep 26, 2025
8a3f82d
fix #6346
brimoor Sep 29, 2025
cdc1174
add support for updating existing indexes in-place
brimoor Sep 29, 2025
0d86728
use full index conversion pipeline
brimoor Sep 29, 2025
3172ea4
feat(operators): new download file operators
ritch Sep 29, 2025
5872c4f
fix default index checks
brimoor Sep 30, 2025
2a5567e
optimize merging of video samples
brimoor Sep 30, 2025
8b8b581
FOEPD-2039 OSS changes to support DO pipelines (#6341)
swheaton Sep 30, 2025
f03dc76
explain why indexes are necessary
brimoor Sep 30, 2025
c930a93
Bugfix for yolo classification models for ultralytics>=8.3.158 (#6367)
manushreegangwar Sep 30, 2025
98136ac
chore(download-operators): cleanup
ritch Oct 2, 2025
3f51cab
allow compute_embeddings() to write to embedded fields
brimoor Oct 2, 2025
bb5fc3a
use ctx.view by default for target views
brimoor Oct 2, 2025
836de52
Merge pull request #6369 from voxel51/feat/new-download-ops
ritch Oct 2, 2025
5ec9202
Add patch sample endpoint in embedded server (#6368)
CamronStaley Oct 2, 2025
9223dc7
Merge pull request #6364 from voxel51/bugfix/iss-6346
brimoor Oct 2, 2025
5d5c1db
smarter default
brimoor Oct 3, 2025
e6a8456
Merge pull request #6375 from voxel51/default-target-view
brimoor Oct 3, 2025
ae304ba
chore(deprecation): AS-735 adding deprecation docs (#6380)
afoley587 Oct 6, 2025
af0f685
`route` decorator explcitly re-raise starlette http exceptions
j053y Oct 6, 2025
d45f483
throw HTTPExceptions instead of returning error responses (#6383)
CamronStaley Oct 6, 2025
01cd890
Disable async DB writes in apply_model and compute_embeddings (#6384)
exupero Oct 6, 2025
7a9dba3
refactor field selection into utils
brimoor Oct 7, 2025
bcc96b8
adding debug log
brimoor Oct 7, 2025
376becf
Merge pull request #6374 from voxel51/compute-embeddings-nested-field
brimoor Oct 7, 2025
6fc3983
Merge pull request #6365 from voxel51/convert-existing-indexes
brimoor Oct 7, 2025
29a5cfc
Merge pull request #6370 from voxel51/bugfix/merge-samples-video-frames
brimoor Oct 7, 2025
c9dcfa4
FOEPD-2094 move around pipeline types a bit (#6385)
swheaton Oct 7, 2025
a8651ef
Revert #6288 - improve consistency of apply_model and compute_embeddi…
exupero Oct 8, 2025
8998db9
Merge pull request #6394 from voxel51/task/ess/revert-6288-release
jleven Oct 9, 2025
136a650
check that audience matches urls
jleven Oct 10, 2025
4c2dbb3
fix(do-doc): dont deepcopy full exec context in to_pymongo (#6406)
swheaton Oct 10, 2025
98a5241
Merge pull request #6405 from voxel51/fix/use-fo-loader
jleven Oct 10, 2025
eef150a
force brace-expansion version resolution to fix CVE-2025-5889
tom-vx51 Oct 14, 2025
126520c
Merge pull request #6413 from voxel51/chore/cve-2025-5889
tom-vx51 Oct 14, 2025
bc36a17
release notes for 1.9.0 and 2.12.0
jleven Oct 16, 2025
8f55565
remove unnecessary returns from me panel events
imanjra Oct 16, 2025
4559f99
Updates to release notes
jleven Oct 16, 2025
e716408
improve error details for when an operator returns non-serializable v…
imanjra Oct 15, 2025
5a0096f
add warning for return value of panel event
imanjra Oct 16, 2025
6653df7
Merge pull request #6425 from voxel51/bugfix/panel-event-return
jleven Oct 16, 2025
0bc3e00
Update release date to Monday
jleven Oct 17, 2025
d8f8556
Merge pull request #6428 from voxel51/josh/release-v1.9.0/notes
jleven Oct 17, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/CODEOWNERS
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
/e2e-pw/ @voxel51/frontend-devs
/fiftyone/server/ @voxel51/frontend-devs
/plugins/panels/ @voxel51/plugin-pros
/fiftyone/operators/ @voxel51/plugin-pros
/fiftyone/operators/ @voxel51/plugin-pros @voxel51/backend-squad

# Backend
/fiftyone/api/ @voxel51/backend-squad
Expand Down
42 changes: 20 additions & 22 deletions .github/workflows/build-db.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,9 +24,9 @@ jobs:
- windows-x86_64
steps:
- name: Clone fiftyone
uses: actions/checkout@v4
uses: actions/checkout@v5
- name: Set up Python 3.9
uses: actions/setup-python@v5
uses: actions/setup-python@v6
with:
python-version: 3.9
- name: Install dependencies
Expand Down Expand Up @@ -84,14 +84,14 @@ jobs:
FIFTYONE_DO_NOT_TRACK: true
steps:
- name: Clone fiftyone
uses: actions/checkout@v4
uses: actions/checkout@v5
- name: Download fiftyone-db
uses: actions/download-artifact@v4
uses: actions/download-artifact@v5
with:
name: dist-sdist
path: downloads
- name: Set up Python 3.9
uses: actions/setup-python@v5
uses: actions/setup-python@v6
with:
python-version: 3.9
- name: Install fiftyone-db
Expand All @@ -109,23 +109,21 @@ jobs:
runs-on: ubuntu-latest
needs: [build, test]
if: startsWith(github.ref, 'refs/tags/db-v')
environment: release # For trusted publishing. See below.
permissions:
contents: read
id-token: write
steps:
- name: Download
uses: actions/download-artifact@v4
uses: actions/download-artifact@v5
with:
path: downloads
- name: Install dependencies
run: |
pip3 install -U twine packaging
- name: Set environment
env:
RELEASE_TAG: ${{ github.ref }}
run: |
echo "TWINE_PASSWORD=${{ secrets.FIFTYONE_PYPI_TOKEN }}" >> $GITHUB_ENV
echo "TWINE_REPOSITORY=pypi" >> $GITHUB_ENV
- name: Upload to pypi
env:
TWINE_USERNAME: __token__
TWINE_NON_INTERACTIVE: 1
run: |
python3 -m twine upload downloads/dist-*/*
pattern: dist-*
merge-multiple: true
path: dist
# Utilize
# [trusted publishers](https://docs.pypi.org/trusted-publishers/)
# This will use OIDC to publish the dists/ package to pypi.
# See
# [fiftyone-db](https://pypi.org/manage/project/fiftyone-db/settings/publishing/)
- name: Publish
uses: pypa/[email protected]
8 changes: 4 additions & 4 deletions .github/workflows/build-docker-internal.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,20 +25,20 @@ jobs:
GCP_LOCATION: us-central1
steps:
- name: Clone fiftyone
uses: actions/checkout@v4
uses: actions/checkout@v5
- name: Download dist
uses: actions/download-artifact@v4
uses: actions/download-artifact@v5
with:
name: dist
path: dist/
- name: Authenticate to Google Cloud
uses: google-github-actions/auth@v2
uses: google-github-actions/auth@v3
with:
project_id: ${{ secrets.REPO_GCP_PROJECT }}
service_account: ${{ secrets.REPO_GCP_SERVICE_ACCOUNT }}
workload_identity_provider: ${{ secrets.REPO_GOOGLE_WORKLOAD_IDP }}
- name: Set Up Cloud SDK
uses: google-github-actions/setup-gcloud@v2
uses: google-github-actions/setup-gcloud@v3
- name: Docker login
run: |
gcloud auth configure-docker "${{ env.GCP_LOCATION }}-docker.pkg.dev" --quiet
Expand Down
20 changes: 10 additions & 10 deletions .github/workflows/build-docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -46,13 +46,13 @@ jobs:
steps:
- name: Clone fiftyone for tag builds
if: github.ref_type == 'tag'
uses: actions/checkout@v4
uses: actions/checkout@v5
with:
# Fetch full history for rev-parse to work
fetch-depth: 0
- name: Clone fiftyone for branch builds
if: github.ref_type == 'branch'
uses: actions/checkout@v4
uses: actions/checkout@v5
- name: Get Branch Name
id: get_branch
run: |
Expand Down Expand Up @@ -90,14 +90,14 @@ jobs:
esac
fi
- name: Checkout fiftyone-teams
uses: actions/checkout@v4
uses: actions/checkout@v5
with:
repository: voxel51/fiftyone-teams
path: fiftyone-teams
token: ${{ secrets.RO_FOT_FG_PAT }}
ref: ${{ steps.get_branch.outputs.branch_name }}
- name: Set up Python 3.11
uses: actions/setup-python@v5
uses: actions/setup-python@v6
with:
python-version: "3.11"
- name: Install pip dependencies
Expand Down Expand Up @@ -157,16 +157,16 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Download docs
uses: actions/download-artifact@v4
uses: actions/download-artifact@v5
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🛠️ Refactor suggestion | 🟠 Major

🧩 Analysis chain

Verify the actions/download-artifact@v5 upgrade.

Confirm v5 compatibility and check for any breaking changes.


🌐 Web query:

What is the latest stable version of actions/download-artifact and are there any breaking changes in v5?

💡 Result:

Latest stable: v5.0.0 (release). [1][2]

Breaking changes in v5:

  • Fixes an inconsistency in extraction path for single-artifact downloads by ID — previously downloading by ID placed files in path//, now a single-artifact download by ID extracts directly into the provided path (matching downloads by name). This can change the output location for workflows that relied on the old nested directory; migration guidance recommends explicitly including the artifact name in path if you need the old behaviour. [1][2]

Sources: GitHub Releases for actions/download-artifact (v5.0.0) and changelog. [1][2]


Update download-artifact step to include artifact name in path for v5
actions/[email protected] removes the default artifact-name subfolder for single-ID downloads and extracts directly into the given path. If your workflow expects a nested directory, amend the path in .github/workflows/build-docs.yml:160 to include the artifact name explicitly.

🤖 Prompt for AI Agents
.github/workflows/build-docs.yml around line 160: the
actions/download-artifact@v5 step now extracts directly into the specified path
(no implicit artifact-name subfolder), so update the step's "path" to include
the artifact name explicitly (e.g., append the artifact directory you expect, or
use the artifact name variable) so subsequent steps that rely on a nested
artifact-name directory continue to find files; ensure the new path matches the
artifact name used when uploading.

with:
name: docs
path: docs-download/
- name: Authorize gcloud
uses: google-github-actions/auth@v2
uses: google-github-actions/auth@v3
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🛠️ Refactor suggestion | 🟠 Major

🧩 Analysis chain

Verify the google-github-actions/auth@v3 upgrade.

Ensure v3 is stable and check for breaking changes in authentication setup.


🌐 Web query:

What is the latest stable version of google-github-actions/auth and are there any breaking changes in v3?

💡 Result:

Latest stable: v3 (published as v3.0.0). [1][2]

Breaking changes in v3: bump to Node 24 (runner must support Node 24+) and removal of some older parameters/flags (and removal of a legacy "hacky" script). These are the primary breaking items called out in the v3 release notes. [1][2]

Sources:
[1] google-github-actions/auth Releases (v3 / v3.0.0).
[2] Release: v3.0.0 — changelog (Bump to Node 24; remove old parameters; remove hacky script).


Ensure runner supports Node 24+ and remove deprecated flags for google-github-actions/auth@v3: v3.0.0 is the latest stable release; it bumps to Node 24 and removes older parameters/flags and a legacy script—update your runner environment to Node 24+ and remove or update any deprecated flags in .github/workflows/build-docs.yml.

🤖 Prompt for AI Agents
.github/workflows/build-docs.yml around line 165: the workflow uses
google-github-actions/auth@v3 which requires Node 24+ and no longer accepts
deprecated flags/legacy script options; update the workflow's runner to a Node
24+ environment (e.g., ubuntu-latest with actions/setup-node@v4 configuring
node-version: 24) and remove or replace any deprecated parameters or legacy
script invocations passed to google-github-actions/auth (update to the
v3-compatible inputs as documented), ensuring the auth step only uses supported
inputs for v3.

with:
credentials_json: "${{ secrets.DOCS_GCP_CREDENTIALS }}"
- name: Set up gcloud
uses: google-github-actions/setup-gcloud@v2
uses: google-github-actions/setup-gcloud@v3
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🔴 Critical

🧩 Analysis chain

Verify the google-github-actions/setup-gcloud@v3 upgrade.

Confirm v3 compatibility and check for any breaking changes.


🌐 Web query:

What is the latest stable version of google-github-actions/setup-gcloud and are there any breaking changes in v3?

💡 Result:

Latest stable release: v3.0.1. [1]

Breaking changes in v3:

  • Requires Node 24+ on the runner. [1][2]
  • The skip_tool_cache option was removed; the action no longer uses the tool-cache by default (to use the old behavior enable caching with cache: true). [1][2]

Sources: GitHub releases and repo README. [1][2]


Ensure Node 24+ runner and update caching for setup-gcloud v3

  • v3.0.1 requires Node 24+ (update your runner image or add actions/setup-node@v3)
  • skip_tool_cache was removed (caching disabled by default; use cache: true to re-enable)
    File: .github/workflows/build-docs.yml:169
🤖 Prompt for AI Agents
In .github/workflows/build-docs.yml around line 169, update the setup for
google-github-actions/setup-gcloud@v3 to meet v3 requirements by ensuring the
job runs on a Node 24+ environment (either set the runner image that includes
Node 24 or add an actions/setup-node@v3 step before this action to install Node
24+), remove any use of the removed skip_tool_cache option, and if you want
caching re-enabled set the action input with with: cache: true (or leave omitted
to keep caching disabled).

- name: publish
run: gsutil -m rsync -dR -x '^SBOMs/.*' docs-download gs://docs.voxel51.com

Expand All @@ -178,15 +178,15 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Download docs
uses: actions/download-artifact@v4
uses: actions/download-artifact@v5
with:
name: docs
path: docs-download/
- name: Authorize gcloud
uses: google-github-actions/auth@v2
uses: google-github-actions/auth@v3
with:
credentials_json: "${{ secrets.DOCS_GCP_CREDENTIALS }}"
- name: Set up gcloud
uses: google-github-actions/setup-gcloud@v2
uses: google-github-actions/setup-gcloud@v3
- name: publish
run: gsutil -m rsync -dR -x '^robots.txt' docs-download gs://docs.dev.voxel51.com
6 changes: 3 additions & 3 deletions .github/workflows/build-graphql.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,9 +14,9 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Clone fiftyone
uses: actions/checkout@v4
uses: actions/checkout@v5
- name: Set up Python 3.9
uses: actions/setup-python@v5
uses: actions/setup-python@v6
with:
python-version: 3.9
- name: Install dependencies
Expand Down Expand Up @@ -45,7 +45,7 @@ jobs:
if: startsWith(github.ref, 'refs/tags/db-v')
steps:
- name: Download wheels
uses: actions/download-artifact@v4
uses: actions/download-artifact@v5
with:
path: downloads
- name: Install dependencies
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ jobs:
outputs:
changes: ${{ steps.filter.outputs.changes }}
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5
- uses: dorny/paths-filter@v3
id: filter
with:
Expand All @@ -23,11 +23,11 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Clone fiftyone
uses: actions/checkout@v4
uses: actions/checkout@v5
with:
submodules: true
- name: Set up Python 3.9
uses: actions/setup-python@v5
uses: actions/setup-python@v6
with:
python-version: 3.9
- name: Install dependencies
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/e2e.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,12 +19,12 @@ jobs:
shell: bash
steps:
- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v5
with:
submodules: true

- name: Setup node 22
uses: actions/setup-node@v4
uses: actions/setup-node@v5
with:
node-version: 22

Expand All @@ -39,7 +39,7 @@ jobs:
mongodb-version: latest

- name: Setup
uses: actions/setup-python@v5
uses: actions/setup-python@v6
id: pip-cache
with:
python-version: 3.10.16
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/lint-app.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,9 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
uses: actions/checkout@v5

- uses: actions/checkout@v4
- uses: actions/checkout@v5
Comment on lines +10 to +12
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟠 Major

Remove duplicate checkout step.

Lines 10 and 12 both perform actions/checkout@v5, which is redundant and wasteful. Remove the duplicate at line 12.

Apply this diff to remove the duplicate:

       - name: Checkout repository
         uses: actions/checkout@v5

-      - uses: actions/checkout@v5
       - uses: dorny/paths-filter@v3
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
uses: actions/checkout@v5
- uses: actions/checkout@v4
- uses: actions/checkout@v5
uses: actions/checkout@v5
- uses: dorny/paths-filter@v3
🤖 Prompt for AI Agents
.github/workflows/lint-app.yml around lines 10 to 12 contains a duplicate
actions/checkout@v5 step; remove the second occurrence (the one at line 12) so
only a single checkout action remains, keeping surrounding indentation and job
structure intact.

- uses: dorny/paths-filter@v3
id: changes
with:
Expand All @@ -18,7 +18,7 @@ jobs:
- 'app/**'
- name: Set up Node.js
uses: actions/setup-node@v4
uses: actions/setup-node@v5
with:
node-version: "22"

Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/pr.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ jobs:
e2e-changes: ${{ steps.filter.outputs.e2e-pw }}
fiftyone-changes: ${{ steps.filter.outputs.fiftyone }}
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5
- uses: dorny/paths-filter@v3
id: filter
with:
Expand Down
30 changes: 13 additions & 17 deletions .github/workflows/publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,27 +19,23 @@ jobs:
publish:
runs-on: ubuntu-latest
needs: [build, test]
environment: release # For trusted publishing. See below.
permissions:
contents: read
id-token: write
steps:
- name: Download dist
uses: actions/download-artifact@v4
uses: actions/download-artifact@v5
with:
name: dist
path: dist/
- name: Install dependencies
run: |
pip3 install -U twine packaging
- name: Set environment
env:
RELEASE_TAG: ${{ github.ref }}
run: |
echo "TWINE_PASSWORD=${{ secrets.FIFTYONE_PYPI_TOKEN }}" >> $GITHUB_ENV
echo "TWINE_REPOSITORY=pypi" >> $GITHUB_ENV
- name: Upload to pypi
env:
TWINE_USERNAME: __token__
TWINE_NON_INTERACTIVE: 1
run: |
python3 -m twine upload dist/*
# Utilize
# [trusted publishers](https://docs.pypi.org/trusted-publishers/)
# This will use OIDC to publish the dists/ package to pypi.
# See
# [fiftyone](https://pypi.org/manage/project/fiftyone/settings/publishing)
- name: Publish
uses: pypa/[email protected]

publish-docker-images:
needs: [publish]
Expand All @@ -53,7 +49,7 @@ jobs:
- "3.12"
steps:
- name: Clone fiftyone
uses: actions/checkout@v4
uses: actions/checkout@v5

- name: Set Env Vars
run: |
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/push-release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ jobs:
pr:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5
with:
ref: develop
fetch-depth: 0
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ jobs:
timeout-minutes: 90
steps:
- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v5

- name: Enable corepack
run: corepack enable
Expand Down Expand Up @@ -49,9 +49,9 @@ jobs:
shell: bash
steps:
- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v5
- name: Setup
uses: actions/setup-python@v5
uses: actions/setup-python@v6
id: pip-cache
with:
python-version: ${{ matrix.python }}
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/windows-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,9 +23,9 @@ jobs:
shell: bash
steps:
- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v5
- name: Setup
uses: actions/setup-python@v5
uses: actions/setup-python@v6
id: pip-cache
with:
python-version: ${{ matrix.python }}
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -116,7 +116,7 @@ Then run the install script:

```shell
# Mac or Linux
bash install.bash
./install.sh

# Windows
.\install.bat
Expand Down
5 changes: 4 additions & 1 deletion app/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@
"typedoc": "^0.23.21",
"typescript": "^4.7.4",
"typescript-plugin-css-modules": "^5.0.2",
"vite": "^5.4.19",
"vite": "^5.4.20",
"vite-plugin-eslint": "^1.8.1",
"vite-plugin-relay": "^2.0.0",
"vitest": "^3.0.8"
Expand All @@ -56,5 +56,8 @@
"colormap": "^2.3.2",
"react-player": "^2.16.0",
"react-plotly.js": "^2.6.0"
},
"resolutions": {
"brace-expansion": "^2.0.2"
}
}
2 changes: 1 addition & 1 deletion app/packages/aggregations/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,6 @@
"lodash": "^4.17.21",
"prettier": "2.2.1",
"typescript": "4.2.4",
"vite": "^5.4.19"
"vite": "^5.4.20"
}
}
Loading
Loading