This is an automated email from the ASF dual-hosted git repository.
aglinxinyuan pushed a change to branch xinyuan-loop-feb
in repository https://gitbox.apache.org/repos/asf/texera.git
from a79fc395b8 fix(loop): fail loudly on non-MATERIALIZED execution mode
add a7d4bc622f fix: drop withDefaultValue from StatisticsManager so
checkpoint state round-trips (#5150)
add 5e56956860 fix: close CloseableIterable owners in Iceberg read paths
(#5149)
add d1cf4ebde7 fix: enforce @RolesAllowed on microservice resources (#5049)
add 0f5f791e78 fix: route share-by-email link to correct dashboard path by
type (#5168)
add 770709b83d fix: Revert"fix: enforce @RolesAllowed on microservice
resources" (#5173)
add 0bce181efd fix(project): correct access privilege lookup (#5156)
add e7e5d4ee74 docs(frontend): add testing guide and refresh README (#5170)
add 0a42fcdbc2 fix: surface SMTP failures from gmail share endpoint to UI
(#5164)
add b228d5186e fix(agent-service): align auto-layout rank separation
(#5176)
add afb29e7502 test(frontend): call fixture.detectChanges() in three
dashboard component specs (#5181)
add 0ebab77c62 chore: ignore vendored and generated paths in Codecov
(#5187)
add cfc6d9aa81 test(frontend): route specs through HttpClientTestingModule
and lint-enforce it (#5185)
add cbe90c74c4 chore(frontend): clean up template-override anti-pattern in
component specs (#5189)
add a25c54348d test(frontend): extend code-debugger and code-editor
coverage (#5191)
add 8633188757 test(frontend): rewrite sync-texera-model spec (#5194)
add c435aa7343 fix(workflow-operator): default boolean metadata fields
(#5177)
add 2153c17879 test(frontend): cover joint-ui.service surface and remove
dead code (#5196)
add 767219abe3 test(frontend): cover three dashboard services (#5203)
add 9b850e2ed8 ci: enable Codecov Test Analytics across all test jobs
(#5207)
add 79a1d170b7 test(amber): cover WorkflowExecutionsResource static
helpers (#5205)
add f89c07cffe fix(pyamber): allow worker state to transit READY ->
COMPLETED (#5214)
add c40f7f5173 chore: clean up sbt clean compile warnings (#5201)
add 69bee152f4 test(amber): DB-backed unit tests for
ExecutionsMetadataPersistService and updateWorkflowState (#5213)
add 1cdfc457c0 test(amber): unit tests for web state stores and websocket
plumbing (#5209)
add 24f7702714 fix: skip datasets with missing LakeFS repos in public
listing (#5171)
add 8a7366f3b1 fix: honor Option contract on tryGetExistingExecution miss
(#5221)
add d5bc8b7cf8 refactor: untrack generated python proto, regenerate in
build (#5077)
add 968144bdfa test: cover SearchBarComponent debounce, cache, and routing
(#5237)
add 7299ddbe13 Merge branch 'main' into xinyuan-loop-feb
No new revisions were added by this update.
Summary of changes:
.github/workflows/build.yml | 132 +-
.gitignore | 3 +
AGENTS.md | 2 +
agent-service/src/agent/util/auto-layout.test.ts | 14 +
agent-service/src/agent/util/auto-layout.ts | 2 +-
amber/build.sbt | 2 +-
amber/dev-requirements.txt | 4 +
.../python/core/architecture/managers/context.py | 25 +-
amber/src/main/python/proto/__init__.py | 0
amber/src/main/python/proto/org/__init__.py | 0
amber/src/main/python/proto/org/apache/__init__.py | 0
.../python/proto/org/apache/texera/__init__.py | 0
.../proto/org/apache/texera/amber/__init__.py | 0
.../proto/org/apache/texera/amber/core/__init__.py | 146 --
.../org/apache/texera/amber/engine/__init__.py | 0
.../texera/amber/engine/architecture/__init__.py | 0
.../amber/engine/architecture/rpc/__init__.py | 2204 --------------------
.../engine/architecture/sendsemantics/__init__.py | 66 -
.../amber/engine/architecture/worker/__init__.py | 49 -
.../apache/texera/amber/engine/common/__init__.py | 156 --
.../python/proto/org/apache/texera/web/__init__.py | 158 --
amber/src/main/python/proto/scalapb/__init__.py | 421 ----
.../worker/managers/StatisticsManager.scala | 17 +-
.../apache/texera/web/resource/GmailResource.scala | 9 +-
.../web/resource/dashboard/hub/HubResource.scala | 31 +-
.../user/project/ProjectAccessResource.scala | 15 +-
.../web/service/ExecutionResultService.scala | 1 +
.../service/ExecutionsMetadataPersistService.scala | 2 +-
.../architecture/managers/test_state_manager.py | 20 +-
.../worker/managers/WorkerManagersSpec.scala | 14 +-
.../engine/faulttolerance/CheckpointSpec.scala | 8 +-
.../texera/web/SubscriptionManagerSpec.scala | 83 +
.../org/apache/texera/web/WebsocketInputSpec.scala | 116 ++
.../texera/web/auth/UserRoleAuthorizerSpec.scala | 60 +
.../texera/web/resource/GmailResourceSpec.scala | 74 +
.../user/project/ProjectAccessResourceSpec.scala | 132 ++
.../workflow/WorkflowExecutionsResourceSpec.scala | 583 +++++-
.../ExecutionsMetadataPersistServiceSpec.scala | 310 +++
.../web/storage/ExecutionStateStoreSpec.scala | 56 +
.../apache/texera/web/storage/StateStoreSpec.scala | 161 ++
.../web/storage/WorkflowStateStoreSpec.scala} | 18 +-
bin/computing-unit-master.dockerfile | 21 +-
bin/computing-unit-worker.dockerfile | 21 +-
bin/protoc-version.txt | 1 +
bin/python-proto-gen.sh | 12 +-
bin/texera-web-application.dockerfile | 22 +-
build.sbt | 12 +
codecov.yml | 12 +
.../texera/amber/pybuilder/BoundaryValidator.scala | 66 +-
.../amber/pybuilder/PythonTemplateBuilder.scala | 10 +-
.../amber/pybuilder/BoundaryValidatorSpec.scala | 72 +
.../storage/result/iceberg/IcebergDocument.scala | 245 ++-
.../org/apache/texera/amber/util/IcebergUtil.scala | 27 +-
.../result/iceberg/IcebergDocumentSpec.scala | 21 +
.../texera/amber/operator/TestOperators.scala | 20 -
.../source/scan/json/JSONLScanSourceOpDesc.scala | 2 +-
.../dumbbellPlot/DumbbellPlotOpDesc.scala | 2 +-
.../filledAreaPlot/FilledAreaPlotOpDesc.scala | 2 +-
.../metadata/OperatorBooleanDefaultSpec.scala | 53 +
.../texera/service/resource/DatasetResource.scala | 45 +-
.../type/serde/DatasetFileNodeSerializer.java | 4 +-
.../service/resource/DatasetResourceSpec.scala | 75 +-
.../type/serde/DatasetFileNodeSerializerSpec.scala | 100 +
frontend/.eslintrc.json | 37 +
frontend/AGENTS.md | 37 +
frontend/README.md | 49 +-
frontend/TESTING.md | 389 ++++
.../preset-wrapper.component.spec.ts | 4 -
.../app/common/service/gmail/gmail.service.spec.ts | 66 +
.../src/app/common/service/gmail/gmail.service.ts | 3 +-
.../admin/user/admin-user.component.spec.ts | 2 -
.../user/filters/filters.component.spec.ts | 2 -
.../user/list-item/list-item.component.spec.ts | 19 +-
.../user/search-bar/search-bar.component.spec.ts | 247 +++
.../share-access/share-access.component.spec.ts | 112 +
.../user/share-access/share-access.component.ts | 14 +-
.../user/user-avatar/user-avatar.component.spec.ts | 3 +-
.../user-computing-unit.component.spec.ts | 12 +-
.../user-dataset-file-renderer.component.spec.ts | 1 +
.../user/user-icon/user-icon.component.spec.ts | 2 -
.../user/user-quota/user-quota.component.spec.ts | 2 -
.../user-workflow/user-workflow.component.spec.ts | 2 -
.../service/user/dataset/dataset.service.spec.ts | 356 ++++
.../dashboard/service/user/search.service.spec.ts | 317 +++
.../workflow-version.service.spec.ts | 445 +++-
.../code-debugger.component.spec.ts | 155 +-
.../code-editor.component.spec.ts | 141 +-
.../left-panel/left-panel.component.spec.ts | 8 -
.../operator-menu/operator-menu.component.spec.ts | 8 -
.../coeditor-user-icon.component.spec.ts | 2 -
.../component/menu/menu.component.spec.ts | 11 +-
.../operator-property-edit-frame.component.spec.ts | 10 +-
.../property-editor.component.spec.ts | 8 -
.../component/workspace.component.spec.ts | 10 +
.../execute-workflow.service.spec.ts | 12 +-
.../service/joint-ui/joint-ui.service.spec.ts | 850 +++++---
.../workspace/service/joint-ui/joint-ui.service.ts | 64 +-
.../operator-menu/operator-menu.service.spec.ts | 4 +-
.../operator-metadata.service.spec.ts | 2 +-
.../model/coeditor-presence.service.spec.ts | 2 -
.../workflow-graph/model/sync-texera-model.spec.ts | 394 +---
.../operator-reuse-cache-status.service.spec.ts | 4 +-
frontend/vitest.browser.config.ts | 5 +
frontend/vitest.config.ts | 5 +
104 files changed, 5442 insertions(+), 4313 deletions(-)
delete mode 100644 amber/src/main/python/proto/__init__.py
delete mode 100644 amber/src/main/python/proto/org/__init__.py
delete mode 100644 amber/src/main/python/proto/org/apache/__init__.py
delete mode 100644 amber/src/main/python/proto/org/apache/texera/__init__.py
delete mode 100644
amber/src/main/python/proto/org/apache/texera/amber/__init__.py
delete mode 100644
amber/src/main/python/proto/org/apache/texera/amber/core/__init__.py
delete mode 100644
amber/src/main/python/proto/org/apache/texera/amber/engine/__init__.py
delete mode 100644
amber/src/main/python/proto/org/apache/texera/amber/engine/architecture/__init__.py
delete mode 100644
amber/src/main/python/proto/org/apache/texera/amber/engine/architecture/rpc/__init__.py
delete mode 100644
amber/src/main/python/proto/org/apache/texera/amber/engine/architecture/sendsemantics/__init__.py
delete mode 100644
amber/src/main/python/proto/org/apache/texera/amber/engine/architecture/worker/__init__.py
delete mode 100644
amber/src/main/python/proto/org/apache/texera/amber/engine/common/__init__.py
delete mode 100644
amber/src/main/python/proto/org/apache/texera/web/__init__.py
delete mode 100644 amber/src/main/python/proto/scalapb/__init__.py
create mode 100644
amber/src/test/scala/org/apache/texera/web/SubscriptionManagerSpec.scala
create mode 100644
amber/src/test/scala/org/apache/texera/web/WebsocketInputSpec.scala
create mode 100644
amber/src/test/scala/org/apache/texera/web/auth/UserRoleAuthorizerSpec.scala
create mode 100644
amber/src/test/scala/org/apache/texera/web/resource/GmailResourceSpec.scala
create mode 100644
amber/src/test/scala/org/apache/texera/web/resource/dashboard/user/project/ProjectAccessResourceSpec.scala
create mode 100644
amber/src/test/scala/org/apache/texera/web/service/ExecutionsMetadataPersistServiceSpec.scala
create mode 100644
amber/src/test/scala/org/apache/texera/web/storage/ExecutionStateStoreSpec.scala
create mode 100644
amber/src/test/scala/org/apache/texera/web/storage/StateStoreSpec.scala
copy
amber/src/{main/scala/org/apache/texera/web/storage/WorkflowStateStore.scala =>
test/scala/org/apache/texera/web/storage/WorkflowStateStoreSpec.scala} (59%)
create mode 100644 bin/protoc-version.txt
create mode 100644
common/pybuilder/src/test/scala/org/apache/texera/amber/pybuilder/BoundaryValidatorSpec.scala
create mode 100644
common/workflow-operator/src/test/scala/org/apache/texera/amber/operator/metadata/OperatorBooleanDefaultSpec.scala
create mode 100644
file-service/src/test/scala/org/apache/texera/service/type/serde/DatasetFileNodeSerializerSpec.scala
create mode 100644 frontend/AGENTS.md
create mode 100644 frontend/TESTING.md
create mode 100644 frontend/src/app/common/service/gmail/gmail.service.spec.ts
create mode 100644
frontend/src/app/dashboard/component/user/search-bar/search-bar.component.spec.ts
create mode 100644
frontend/src/app/dashboard/component/user/share-access/share-access.component.spec.ts
create mode 100644
frontend/src/app/dashboard/service/user/dataset/dataset.service.spec.ts
create mode 100644
frontend/src/app/dashboard/service/user/search.service.spec.ts