Experimental browser SDK e0149076aeff009d35fd495e55379cb78f1eb53f
Experimental browser SDK from master. Optimized and ASan browser validation passed. Validation: https://github.com/fluent/fluent-bit/actions/runs/42546763161 Download the archive, verify its checksum, and deploy the complete SDK on your application origin. HTTPS and COOP/COEP are required. This is not a production support promise.
4.53
- fix(s3tables,s3vectors): bind DeleteNamespace and the vector bucket cleanup to the authorized records by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12331
- filer: allow renaming into a sibling that shares the name prefix by @fazpu in https://github.com/seaweedfs/seaweedfs/pull/12337
- compression: compress JSON uploads, and match file types by extension by @patwhite in https://github.com/seaweedfs/seaweedfs/pull/12339
- filer: reuse IsEqualOrUnder for the rename subdirectory check by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12338
- s3vectors: support TagResource, UntagResource and ListTagsForResource by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12335
- volume: replicas keep the primary's compression and metadata by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12350
- admin: manage S3 vector buckets by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12334
- admin: configurable file browser upload size limit by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12348
- build(deps): bump go.etcd.io/etcd/client/pkg/v3 from 3.7.1 to 3.7.3 by @dependabot[bot] in https://github.com/seaweedfs/seaweedfs/pull/12344
- build(deps): bump actions/setup-python from 5 to 7 by @dependabot[bot] in https://github.com/seaweedfs/seaweedfs/pull/12345
- build(deps): bump google.golang.org/api from 0.297.0 to 0.310.0 by @dependabot[bot] in https://github.com/seaweedfs/seaweedfs/pull/12343
- build(deps): bump github.com/aws/aws-sdk-go-v2/service/sts from 1.51.1 to 1.51.6 by @dependabot[bot] in https://github.com/seaweedfs/seaweedfs/pull/12346
- build(deps): bump github.com/peterh/liner from 1.2.2 to 1.2.3 by @dependabot[bot] in https://github.com/seaweedfs/seaweedfs/pull/12341
- build(deps): bump actions/setup-go from 5 to 7 by @dependabot[bot] in https://github.com/seaweedfs/seaweedfs/pull/12347
- s3vectors: support tag conditions in vector bucket policies by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12351
- build(deps): bump cloud.google.com/go/kms from 1.35.0 to 1.36.1 by @dependabot[bot] in https://github.com/seaweedfs/seaweedfs/pull/12342
- operation: pad the marginal gzip test past Go 1.26's stored block by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12352
- filer: say jwt.filer_signing.key gates only the IAM gRPC service by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12353
- fix(s3api): reject an invalid storage class before uploading the body by @omninguyen in https://github.com/seaweedfs/seaweedfs/pull/12354
- s3api: known-answer fixture generator for SSE-S3 and filer-encrypted chunks by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12355
- test/s3vectors: a hardened cluster with TLS volume servers, read JWTs and encrypted chunks by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12356
- admin: summarize the EC delete_count accounting warning per refresh by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12359
- admin: scope plugin job and activity fetches to the selected job type by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12360
- fix(fsck): inspect references to deleted volumes by @Neo1228 in https://github.com/seaweedfs/seaweedfs/pull/12357
- shell: keep fs.mergeVolumes and fs.distributeChunks from reverting entries written while they run by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12362
- fix(storage): update deletion metrics in SortedFileNeedleMap.Delete (#12363) by @Tyagiquamar in https://github.com/seaweedfs/seaweedfs/pull/12364
- rust volume: count sorted-map files and deletes the way Go does by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12365
- filer.sync: skip a rewritten source version regardless of its mtime order by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12366
- filer.sync: stop chunk retries with the same supersession check the skip uses by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12367
- rust volume: exit cleanly on SIGTERM, and make the harness notice when a server does not by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12370
- rust volume: run each gRPC TLS handshake on its own task by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12372
- filer UI, admin: upload a folder by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12371
- weed-vector: gRPC TLS to the masters and for the gateway by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12368
- admin: fail an in-flight detection when its worker disconnects by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12376
- weed-vector: check master certificates against the server allowlists, read -config_dir by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12374
- topology: refresh EC file and delete counts from heartbeats by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12378
- admin: let a buffered detection completion win over the stream closing by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12379
- test/s3vectors: wait for the S3 port before handing out the cluster by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12383
- weed-worker: find jwt.filer_signing.key where the Go worker does, and let the chart deliver it by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12373
- volume: a read plan waits for a vacuum commit instead of answering 404 by @pingqiu in https://github.com/seaweedfs/seaweedfs/pull/12375
- s3api: per-bucket Block Public Access (BlockPublicAcls, IgnorePublicAcls) by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12381
- remote.uncache, remote.meta.sync, remote.cache: keep local writes that land while they run by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12382
- admin: count executor slots per job type and stop lanes waiting on capacity they cannot free by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12384
- admin: credit an unitemized slot to a pending job only after a later heartbeat by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12385
- master: tell a warming-up Assign or LookupVolume client when warm-up ends by @pingqiu in https://github.com/seaweedfs/seaweedfs/pull/12386
- filer: clear a dead test replica's reachability record before closing it by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12387
- seaweed-vector: record seaweed-worker-core's toml dependency in Cargo.lock by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12388
- s3: keep service account keys when a pushed identity replaces its parent by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12394
- plugin worker: stop forwarding the stream's admin token to job RPCs by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12391
- fix(s3tables): validate policy conditions and fail safe on unusable ones by @omninguyen in https://github.com/seaweedfs/seaweedfs/pull/12389
- volume: count EC intervals served by reconstruction by @pingqiu in https://github.com/seaweedfs/seaweedfs/pull/12392
- grafana: chart EC reconstruction and other unplotted metrics by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12406
- ec: rebuild a needle when other shards are corrupt over its range by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12401
- fix(s3): accept fresh admin tokens when context carries stale authorization (#12390) by @Tyagiquamar in https://github.com/seaweedfs/seaweedfs/pull/12397
- s3: reject POST Object header fields with control characters by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12400
- s3: expose ReadAcp/WriteAcp in shell and admin UI, log ACL-upload denials by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12396
- volume: report EC file and delete counts in incremental shard messages by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12404
- admin/plugin: fail a dispatch its restarted worker no longer lists by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12402
- admin: regenerate the plugin pages' templ output from weed/admin by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12405
- seaweed-vector: dev plan for ANN search over S3 Vectors indexes by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12408
- seaweed-vector: build a vector index from the CLI and measure it in the perf suite (ANN phase 0) by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12411
- seaweed-vector: probe policy for indexed queries (ANN phase 1) by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12412
- weed-worker: build the vector index of S3 Vectors tables past a row threshold (ANN phase 2) by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12413
- weed-worker: keep a vector index covering as its table grows (ANN phase 3) by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12414
- s3vectors test: skip a query lease tag released between list and HEAD by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12409
- seaweed-volume: run the preallocating max-volume test on a fake disk by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12423
- seaweed-volume: stage optional EC sidecar copies before replacing by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12403
- ec.rebuild: repair shards that fail a checksum scrub in complete volumes by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12410
- volume: redial a master that just dropped a registered stream after a second by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12420
- volume: bound each FetchAndWriteNeedle replica write by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12415
- s3api: answer success when a failed completion already committed by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12416
- volume: bound each replica forward so a silent peer cannot hold a write by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12417
- filer.remote.sync: stop a touched file from being restamped forever by @impuls42 in https://github.com/seaweedfs/seaweedfs/pull/12419
- weed/shell: resolve collection from topology when ec.decode is given only volumeId by @Tyagiquamar in https://github.com/seaweedfs/seaweedfs/pull/12424
- admin: make the cluster lock's fairness window configurable by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12426
- weed/command: skip remote bucket delete when bucket is unmounted (#12418) by @Tyagiquamar in https://github.com/seaweedfs/seaweedfs/pull/12425
- weed/server: verify data shards against bitrot sidecar before ec decode (#12422) by @Tyagiquamar in https://github.com/seaweedfs/seaweedfs/pull/12427
- filer: hide write controls in the UI on the read-only port by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12429
- admin: re-send the master vacuum disable every poll so it survives leader changes by @kpei in https://github.com/seaweedfs/seaweedfs/pull/12430
- s3api: apply copy bucket-default SSE after the ACL re-auth by @stefan-wisbric in https://github.com/seaweedfs/seaweedfs/pull/12436
- s3: commit the delete marker in the owner's finalize transaction by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12432
- s3: require their own actions to change a bucket's CORS or versioning by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12433
- s3api: speed up recursive listing of branched directory trees by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12438
- master: export Hashicorp raft metrics through the go-metrics global raft uses by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12448
- fix(s3tables): route REST RenameTable and refuse unrouted S3 Tables requests by @omninguyen in https://github.com/seaweedfs/seaweedfs/pull/12446
- volume: a delete cancels writes of its needle still in flight by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12445
- filer.remote.sync: bounded filer lookups, one chunk cache per process by @jsas in https://github.com/seaweedfs/seaweedfs/pull/12441
- filer.remote.sync: bound the stamp and offset writes, startup offset fixes, stamp a copy by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12447
- volume: stop serving EC reads from quarantined shards by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12450
- s3 lifecycle: walker deletes carry the listed identity and must target the latest version by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12452
- filer: release metadata log chunks a failed append leaves unreferenced by @MorezMartin in https://github.com/seaweedfs/seaweedfs/pull/12455
- s3api: mint a versioned PUT's id at commit, after the lock wait and the upload by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12454
- filer: no lazy remote fetch inside a store transaction by @jsas in https://github.com/seaweedfs/seaweedfs/pull/12439
- filer: a full remote-deletion tombstone table keeps the lazy fetch off by @jsas in https://github.com/seaweedfs/seaweedfs/pull/12440
- filer.meta.backup: stream from the start of an unfinished walk by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12458
- filer.remote.gateway: keep the remote object while a version under a delete marker is locked by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12459
- filer: fold small chunks into manifests 256 at a time by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12462
- master: stop the resumed single-master leader from checking quorum every 1 ms by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12463
- grafana: chart the remote-deletion tombstone gauges by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12444
- mount: keep retrying writeback chunk uploads through a volume outage by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12465
- admin: show disk usage on the dashboard instead of the data size by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12466
- S3 Vectors: the gateway resolves the table it sends to weed-vector by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12468
- S3 Vectors: weed-vector reads tables from the filers and volume servers by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12469
- s3tables, iceberg: one catalog record per table location by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12473
- filer.remote.sync: skip pre-mount mount-table versions, decide the unmount before admitting later events by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12472
- S3 Vectors: weed-vector, weed-worker and the CLI write tables to the filers and volume servers by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12470
- volume: check a needle's CRC the first time a range of it is read by @jrcichra in https://github.com/seaweedfs/seaweedfs/pull/12467
- fix(iceberg): keep a losing table create from deleting the winner's metadata by @omninguyen in https://github.com/seaweedfs/seaweedfs/pull/12474
- ec_balance: drain a server holding far more shards than its siblings by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12477
- filer.remote.sync: -allMounts writes back every mounted directory from one process by @jatorre in https://github.com/seaweedfs/seaweedfs/pull/12476
- ec_balance: make the per-rack cap on global moves a worker setting by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12478
- s3tables, iceberg: give tables created without a location their own directory by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12475
- Retry transient failures in star history generation by @chrislusf with @Copilot in https://github.com/seaweedfs/seaweedfs/pull/12479
- volume.fsck: batch and deduplicate filer entry deletions by @Tyagiquamar in https://github.com/seaweedfs/seaweedfs/pull/12480
- s3: don't report a version delete as done when the filer lookup failed by @mansur-akhmadi in https://github.com/seaweedfs/seaweedfs/pull/12482
- S3 Vectors: refuse an SSE-S3 index when the engine has no key for it by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12484
- S3 Vectors: weed-vector drops the ignored --namespace and --filer-signing-key by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12485
- S3 Vectors: help text for weed-vector, weed-vector-cli and weed-worker by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12486
- Volume encryption follows the filer: weed s3, weed-vector, weed-worker, weed-vector-cli by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12487
- helm: say what the Lance worker needs from security.toml by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12489
- shell: include collection names when topology statistics are unavailable by @pingqiu in https://github.com/seaweedfs/seaweedfs/pull/12490
- shell: test collection.list keeps live statistics next to offline names by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12492
- master: keep a re-registered filer in the lock ring when its old stream ends by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/12494
- @fazpu made their first contribution in https://github.com/seaweedfs/seaweedfs/pull/12337
- @Neo1228 made their first contribution in https://github.com/seaweedfs/seaweedfs/pull/12357
- @kpei made their first contribution in https://github.com/seaweedfs/seaweedfs/pull/12430
- @stefan-wisbric made their first contribution in https://github.com/seaweedfs/seaweedfs/pull/12436
- @mansur-akhmadi made their first contribution in https://github.com/seaweedfs/seaweedfs/pull/12482
Full Changelog: https://github.com/seaweedfs/seaweedfs/compare/4.52...4.53
Experimental browser SDK fc966e90da4d99afc36bee42e3ac444dcab9372e
Experimental browser SDK from master. Optimized and ASan browser validation passed. Validation: https://github.com/fluent/fluent-bit/actions/runs/42444933244 Download the archive, verify its checksum, and deploy the complete SDK on your application origin. HTTPS and COOP/COEP are required. This is not a production support promise.
Experimental browser SDK 28ebf30c97d5bcb9ac6e3af3794023f1ebc92543
Experimental browser SDK from master. Optimized and ASan browser validation passed. Validation: https://github.com/fluent/fluent-bit/actions/runs/42431835660 Download the archive, verify its checksum, and deploy the complete SDK on your application origin. HTTPS and COOP/COEP are required. This is not a production support promise.
Experimental browser SDK f6c314476f1fc9d6aac2bff1154a33a40a8a721a
Experimental browser SDK from master. Optimized and ASan browser validation passed. Validation: https://github.com/fluent/fluent-bit/actions/runs/42400769149 Download the archive, verify its checksum, and deploy the complete SDK on your application origin. HTTPS and COOP/COEP are required. This is not a production support promise.
Experimental browser SDK 9c04b3bcfcb50a036692ab30f2added0cb682215
Experimental browser SDK from master. Optimized and ASan browser validation passed. Validation: https://github.com/fluent/fluent-bit/actions/runs/42396466902 Download the archive, verify its checksum, and deploy the complete SDK on your application origin. HTTPS and COOP/COEP are required. This is not a production support promise.
Experimental browser SDK 78911a0ff0594a2198235a96d6048d72909ff041
Experimental browser SDK from master. Optimized and ASan browser validation passed. Validation: https://github.com/fluent/fluent-bit/actions/runs/42376091253 Download the archive, verify its checksum, and deploy the complete SDK on your application origin. HTTPS and COOP/COEP are required. This is not a production support promise.
Experimental browser SDK a88af96c92534e1bb0d585f63e97e41cd543a059
Experimental browser SDK from master. Optimized and ASan browser validation passed. Validation: https://github.com/fluent/fluent-bit/actions/runs/42338462392 Download the archive, verify its checksum, and deploy the complete SDK on your application origin. HTTPS and COOP/COEP are required. This is not a production support promise.
Experimental browser SDK 364a2d700a05893618527fff8d4d1f9e5e2e35cd
Experimental browser SDK from master. Optimized and ASan browser validation passed. Validation: https://github.com/fluent/fluent-bit/actions/runs/42333135908 Download the archive, verify its checksum, and deploy the complete SDK on your application origin. HTTPS and COOP/COEP are required. This is not a production support promise.
Experimental browser SDK a0c6ac530896994398822df052015582e3830243
Experimental browser SDK from master. Optimized and ASan browser validation passed. Validation: https://github.com/fluent/fluent-bit/actions/runs/42311502169 Download the archive, verify its checksum, and deploy the complete SDK on your application origin. HTTPS and COOP/COEP are required. This is not a production support promise.