This is an automated email from the ASF dual-hosted git repository.
aglinxinyuan pushed a change to branch dependabot/sbt/sbt-patch-13c662c86b
in repository https://gitbox.apache.org/repos/asf/texera.git
from f1b7caab46 docs(build): refresh the codegen pgjdbc rationale after the
jOOQ 3.19.36 fix
add 5fcb58d8ca test(workflow-operator): add unit test coverage for
AsterixDBConnUtil (#6722)
add 2c1156dd4c fix(deps, pyamber): bump transformers from 5.3.0 to 5.5.0
in /amber (#6614)
add 069c47685d test(pyamber): guard executor module isolation across two
MainLoops (#6530)
add fc2503711b fix(deps, agent-service): bump the agent-service-patch
group in /agent-service with 3 updates (#6707)
add ddd4e3d20e test(workflow-core): cover parsePhysicalAddress (#6697)
add 27dbc095b2 test(frontend): cover getDefaultLinkCell (#6695)
add 43bd4b01ad test(file-service): add DatasetFileNode unit tests (#6703)
add 368227aea6 test(frontend): cover mutateProperty (#6687)
add 9fe6c03126 test(frontend): cover setOperatorInputAttrs schema
transforms (#6693)
add 2cb8f74181 test(frontend): cover getMimeType helper (#6677)
add 6275b80828 test(frontend): cover parseIntOrDefault (#6679)
add 69286ac90f test(workflow-core): cover isFileResolved and parse owner
(#6699)
add b88b93e21a test(pyamber): add unit tests for single_blocking_io (#6671)
add 6ab43b41c4 test(workflow-operator): add unit tests for
SklearnModelOpDesc (#6665)
add 3a555a7599 chore(deps, frontend): bump @types/quill from 2.0.9 to
2.0.14 in /frontend in the frontend-patch group (#6711)
add 3b5c0c371c fix(deps, pyright-language-service): bump ws from 8.21.0 to
8.21.1 in /pyright-language-service in the pyright-patch group (#6706)
add 9ff12c3ab6 test(file-service): cover DatasetResource path validation
(#6701)
add 5f9a6d2d8a test(workflow-operator): add unit tests for
SklearnMLOperatorDescriptor (#6667)
add d3aa22e93f test(frontend): cover formly-utils stream and type helpers
(#6683)
add f3cc2ddc43 test(frontend): cover searchTestEntries (#6681)
add 998899f02f test(pyamber): add unit tests for port_storage_writer
(#6673)
add a4e03e441d fix(frontend): reject null payloads in dashboard type
predicates (#6443)
add 964e915baa test(frontend): add unit tests for AdminUserService (#6467)
add 3da5f49c0a fix(query): Remove duplicated rows when datasets shared
Publicly in the hub page (#6016)
add fb4a0e2ba1 test(frontend): extend DatasetService unit test coverage
(#6740)
add 7f49a83ef5 test(frontend): extend ResultExportationComponent unit test
coverage (#6742)
add 91a701b7c1 fix(amber): carry the loop StateFrame envelope through JVM
operators (#6661)
add a9f384eab4 test(frontend): extend computing-unit util unit test
coverage (#6738)
add fa8547a850 test(frontend): cover DatasetDetailComponent upload-status,
version-node selection, and trackByTask (#6758)
add 140de712b1 test(workflow-operator): add unit tests for
PythonCodegenBase (#6663)
add 287d6ebf47 test(frontend): cover MenuComponent grid/worker toggles,
report generation, and name sizing (#6757)
add 03038c7982 test(frontend): extend TypeCastingDisplayComponent unit
test coverage (#6741)
add 71963f7389 test(frontend): extend WorkflowPersistService unit test
coverage (#6739)
add d28b761ae4 ci: bump the github-actions group with 3 updates (#6710)
add bf1f5897be test(workflow-operator): add unit tests for
ImageTaskCodegen (#6715)
add fa075d1154 feat(python-notebook-migration): add Jupyter panel mapping
highlight service (#5263)
add 055f7bb2f1 test(frontend): extend PropertyEditorComponent unit test
coverage (#6789)
add b248206ab2 test(frontend): extend AdminUserComponent unit test
coverage (#6744)
add 55f75a8310 fix(deps, frontend): bump @ngneat/until-destroy from 8.1.4
to 10.0.0 in /frontend (#6713)
add 87ec5f2479 test(workflow-execution-service): cover ResultExportService
helpers (#6705)
add ddbca30399 test(frontend): cover UserDatasetFileRendererComponent
loadTabularFile and readFileAsText (#6759)
add 01e173cbd6 test(frontend): cover ComputingUnitStatusService
polling/state and WorkflowWebsocketService events (#6765)
add dab5e141ed test(frontend): extend VirtualEnvironmentService unit test
coverage (#6784)
add 106ef1b2e1 test(frontend): extend VersionsListComponent unit test
coverage (#6785)
add 718862c23e test(frontend): extend UserComputingUnitListItemComponent
unit test coverage (#6783)
add f77b572c02 test(frontend): extend NzModalCommentBoxComponent unit test
coverage (#6782)
add c4569b1a35 test(frontend): cover UserService avatar/state and
AuthService registration/auto-logout (#6764)
add f5ce72e1ac test(frontend): cover WorkflowCompilingService
getOperatorInputSchemaMap (#6762)
add ef55ad8edf test(frontend): extend WorkflowActionService unit test
coverage (#6770)
add e81ba0ea47 fix(LogicalOp): register SklearnLogisticRegression(CV)
subtypes exactly once (#6808)
add 991608a3ad fix(TablesPlot): join selected columns with a comma to emit
valid Python (#6806)
add 3a51bfb876 fix(MachineLearningScorer): splice metric_list verbatim
instead of double-encoding (#6805)
add 28a2f9f896 test(frontend): cover FiltersComponent master-filter-list
building and dropdown reset (#6763)
add d89107a365 test(frontend): extend LeftPanelComponent unit test
coverage (#6788)
add aba6e6e162 test(frontend): extend ShareAccessComponent unit test
coverage (#6771)
add b405528cc4 test(frontend): extend CardItemComponent unit test coverage
(#6780)
add 355f121f28 test(frontend): add unit tests for SharedModelChangeHandler
(#6772)
add ba06ab8eed test(frontend): extend ResultPanelComponent unit test
coverage (#6743)
add a8bb1ec7c0 ci: route all Codecov flags through the deferred
workflow_run upload (#6730)
add 6495ebd84a test(frontend): extend HuggingFaceComponent unit test
coverage (#6773)
add c24755c98e fix(BarChart): treat an empty categoryColumn as no category
(px.bar color) (#6807)
add 110a54c151 fix(KeywordSearch): keep punctuation handling consistent in
case-sensitive mode (#6801)
add 1c411dedaa fix(QuiverPlot, RangeSlider): retarget numeric
attributeTypeRules to real fields (#6810)
add e2e441865c test(frontend): cover updateOrCreatePreset and preset
guards (#6691)
add 9c3b94100c test(frontend): extend notebook-migration LLM unit test
coverage (#6781)
add 0ba5d1a22a test(frontend): add unit tests for execute-workflow guards
(#6649)
add dda9e830f5 ci: discover staged Codecov flags instead of a hardcoded
matrix (#6824)
add 931b0d4816 fix: Revert "ci: discover staged Codecov flags instead of a
hardcoded matrix" (#6837)
add 3149eb5ce5 revert: route all Codecov flags through the deferred
workflow_run upload (#6840)
add 362e6baca2 test(frontend): extend HuggingFaceComponent coverage for
template bindings and fallback branches (#6831)
add d2ab9668a7 test(frontend): cover OperatorPropertyEditFrameComponent
modify-logic and subscription handlers (#6832)
add 87415b56db test(frontend): cover WorkflowEditorComponent connection
validation, clipboard, and delete paths (#6829)
add 58e9e0acab test(frontend): extend AdminExecutionComponent unit test
coverage (#6818)
add 17cdba4ecd test(pybuilder): add unit test coverage for
BoundaryValidator and EncodableInspector (#6822)
add 053d8fb411 chore(ci): disable Codecov carryforward for a one-time flag
rebaseline (#6852)
add b394a9f786 fix(deps, frontend): bump hono from 4.12.26 to 4.12.31 in
/frontend (#6844)
add 662f28f821 fix(deps, frontend): bump fast-uri from 3.1.2 to 3.1.4 in
/frontend (#6841)
add 93141d1591 test(frontend): cover JointGraphWrapper highlighting,
flags, zoom and coeditor paths (#6830)
add f57421b41f fix(deps, frontend): bump svgo from 4.0.1 to 4.0.2 in
/frontend (#6842)
add b6abb0790d fix(deps, frontend): bump immutable from 4.3.8 to 4.3.9 in
/frontend (#6843)
add 9ca9c57eb8 test(workflow-core): add storage unit test coverage
(DocumentFactory, DatasetFileDocument, IcebergDocument) (#6823)
add a351f44fbf test(frontend): cover WorkflowUtilService untested helpers
(#6689)
add f02dd2f1cd chore(ci): restore Codecov carryforward after flag
rebaseline (#6856)
add eae4f218a6 ci: switch dependency update automation from Dependabot to
Renovate (#6848)
add 97f0fdb43f fix(operator): interpolate desc.url so failure message
shows the URL (#6800)
add 429be110a7 ci: shorten stale PR timeline to 30 days stale + 7 days
close (#6868)
add bcf9e014fe feat(pyamber): support Python UDF UI parameters (#5603)
add 0467adea49 test(workflow-operator): add unit tests for SQLSourceOpExec
(#6877)
add 1507bc010a test(auth): extend UserActivityTracker unit test coverage
(#6879)
add d5b852a7e3 fix(deps, pyamber): bump tenacity from 8.5.0 to 9.1.4 in
/amber (#6413)
add 52584a80ce fix(workflow-operator): qualify the AsterixDB FROM clause;
add AsterixDBSourceOpExec unit tests (#6878)
add 81d4612dc7 feat(python-notebook-migration, frontend): add Jupyter
panel service (visibility surface and notebook-exists signal) (#5265)
add 7e4a9b46b8 fix(pyamber): stop EndWorker from consuming straggler
messages (#6522)
add 57d4dba20a chore(amber): reduce engine log verbosity and pin the CI
log-level backstop (#6797)
add ebc78fda96 test(workflow-operator): add unit tests for MySQL and
PostgreSQL SourceOpExec (#6888)
add 6b569dff00 test(amber): extend HuggingFaceModelResource unit test
coverage (#6889)
add cc6f09dedb test(pyamber): extend network receiver and heartbeat
runnable coverage (#6890)
add 4af3a85bcd test(amber): trim subsumed loop-body e2e cases to speed up
amber-integration (#6884)
add 38d94ead0e fix(pyamber): repair LinkedBlockingMultiQueue removal
paths; add unit tests (#6903)
add 03a0e3a3b1 fix(workflow-operator): fall back to day semantics for an
unset interval type; extend aggregate and interval-join tests (#6907)
add cb59021826 test(frontend): extend DownloadService coverage; fix jszip
default import (#6817)
add b4d1865658 test(frontend): extend UserDatasetFileRendererComponent
unit test coverage (#6816)
add f5217504c3 fix(amber): order worker state by version, not timestamp
(#6011)
add 9de13865a0 test(workflow-execution-service): extend
ResultExportService unit test coverage (#6902)
add 49f9e2c414 test(workflow-execution-service): add CollaborationResource
unit tests (#6904)
add 5bccc6b3dc refactor(workflow-compiler): unify duplicate compilers into
common/workflow-compiler (#6143)
add e9bf133a5f refactor: Refactor MockTexeraDB into a JVM singleton (#6238)
add bb7af8df35 fix: Correct FilledAreaPlot x-value validation across
groups (#6894)
add 8c7089b3fa chore(operators): Add proper descriptions to text source
fields (#6804)
add 916c9e319f refactor(frontend): extract dataset settings into Settings
tab (#6493)
add 31f1e7bf8a ci: automate backport labeling and open PRs for failed
backports (#6941)
add 1b9a8c6ee8 fix(deps, pyamber): update dependency pillow to v12.3.0
[security] (#6909)
add 589f601d48 fix(deps, pyamber): update dependency torch to v2.13.0
[security] (#6910)
add ee41d9a2a6 ci: move backport preflight out of Required Checks and
report conflicts as neutral (#6959)
add 5040cadf38 ci: report backport auto-label decisions on the PR (#6962)
add 02a04d86a5 ci: harden backport cherry-pick against package/directory
renames (#6964)
add bfe2b535c0 fix(ci): fix backport auto-label and skip fix(ci) from
backport (#6970)
add 214402f052 fix: Add missing license headers to Docs (#6958)
add 06f8e42dfb test(frontend): add unit tests for serializePortIdentity
(#6938)
add 469e8f031c fix(deps, frontend): update dependency ajv to v8.18.0
[security] (#6908)
add 1272137496 fix(docs): use a plain year range in NOTICE copyright
(#6983)
add ab58d477ba test(pyamber): extend core model, proxy and start-worker
handler coverage (#6988)
add 812f17705f fix(query): Remove duplicated rows when workflows shared
Publicly in the hub page (#6017)
add b291f750fb test(workflow-core): extend util and tuple unit test
coverage (#6987)
add d7cb218386 test(frontend): extend ComputingUnitStatusService unit test
coverage (#6819)
add a61702fd10 refactor(storage): return named VFSUriComponents from
decodeURI (#7020)
add 3aed7ea12d Merge branch 'main' into dependabot/sbt/sbt-patch-13c662c86b
No new revisions were added by this update.
Summary of changes:
.github/dependabot.yml | 115 ---
.github/release-branches.yml | 46 ++
.github/release/vote-email-template.md | 19 +
.github/renovate.json5 | 165 +++++
.github/scripts/create-backport-branch.sh | 120 ++++
.github/scripts/prepare-backport-checkout.sh | 13 +-
.github/scripts/release_branches.py | 115 +++
.github/workflows/backport-auto-label.yml | 391 +++++++++++
.github/workflows/backport-checks.yml | 140 ++++
.github/workflows/backport-publish.yml | 129 ++++
.github/workflows/benchmarks.yml | 4 +-
.github/workflows/build-and-push-images.yml | 6 +-
.github/workflows/build.yml | 84 ++-
.github/workflows/dependency-graph.yml | 2 +-
.github/workflows/direct-backport-push.yml | 507 ++++++++++++--
.github/workflows/pr-labeler.yml | 2 +-
.../{required-checks.yml => precheck.yml} | 181 ++---
.github/workflows/required-checks.yml | 248 +------
.github/workflows/stale.yml | 14 +-
.licenserc.yaml | 2 +-
AGENTS.md | 19 +
CLAUDE.md | 19 +
CONTRIBUTING.md | 19 +
NOTICE | 2 +-
README.md | 19 +
SECURITY.md | 19 +
access-control-service/NOTICE-binary | 2 +-
.../apache/texera/AccessControlResourceSpec.scala | 2 +-
agent-service/LICENSE-binary | 8 +-
agent-service/bun.lock | 16 +-
agent-service/package.json | 6 +-
amber/LICENSE-binary-python | 8 +-
amber/NOTICE-binary | 2 +-
amber/README.md | 18 +
amber/operator-requirements.txt | 8 +-
amber/requirements.txt | 2 +-
.../engine/architecture/rpc/controlcommands.proto | 2 +
.../engine/architecture/rpc/controlreturns.proto | 2 +
.../engine/architecture/worker/statistics.proto | 5 +-
.../handlers/control/end_worker_handler.py | 20 +-
.../handlers/control/pause_worker_handler.py | 4 +-
.../handlers/control/query_statistics_handler.py | 4 +-
.../handlers/control/resume_worker_handler.py | 4 +-
.../handlers/control/start_worker_handler.py | 3 +-
.../core/architecture/managers/state_manager.py | 26 +
.../python/core/models/schema/attribute_type.py | 44 ++
amber/src/main/python/core/runnables/main_loop.py | 22 +-
.../main/python/core/storage/document_factory.py | 6 +-
.../main/python/core/storage/vfs_uri_factory.py | 24 +-
.../linked_blocking_multi_queue.py | 11 +-
amber/src/main/python/pytexera/__init__.py | 6 +-
amber/src/main/python/pytexera/udf/udf_operator.py | 168 ++++-
.../common/PekkoActorRefMappingService.scala | 6 +-
.../engine/architecture/common/WorkflowActor.scala | 2 +-
.../engine/architecture/coordinator/Workflow.scala | 29 +-
.../coordinator/execution/ExecutionUtils.scala | 12 +-
.../coordinator/promisehandlers/PauseHandler.scala | 7 +-
.../QueryWorkerStatisticsHandler.scala | 4 +-
.../promisehandlers/ResumeHandler.scala | 2 +-
.../WorkerStateUpdatedHandler.scala | 2 +-
.../deploysemantics/layer/WorkerExecution.scala | 70 +-
.../messaginglayer/OutputManager.scala | 24 +-
.../pythonworker/PythonProxyClient.scala | 7 +-
.../pythonworker/PythonProxyServer.scala | 9 +-
.../scheduling/RegionExecutionManager.scala | 11 +-
.../sendsemantics/partitioners/Partitioner.scala | 4 +-
.../engine/architecture/worker/DPThread.scala | 4 +-
.../engine/architecture/worker/DataProcessor.scala | 28 +-
.../InputPortMaterializationReaderThread.scala | 12 +-
.../worker/promisehandlers/PauseHandler.scala | 3 +-
.../promisehandlers/QueryStatisticsHandler.scala | 3 +-
.../worker/promisehandlers/ResumeHandler.scala | 3 +-
.../worker/promisehandlers/StartHandler.scala | 8 +-
.../engine/common/ambermessage/DataPayload.scala | 13 +-
.../amber/engine/common/client/ClientActor.scala | 2 +-
.../common/statetransition/StateManager.scala | 20 +
.../org/apache/texera/amber/error/ErrorUtils.scala | 17 +-
.../request/EditingTimeCompilationRequest.scala | 2 +-
.../websocket/request/WorkflowExecuteRequest.scala | 10 +-
.../web/resource/SyncExecutionResource.scala | 8 +-
.../dashboard/DatasetSearchQueryBuilder.scala | 47 +-
.../dashboard/WorkflowSearchQueryBuilder.scala | 13 +-
.../user/workflow/WorkflowExecutionsResource.scala | 6 +-
.../web/service/ExecutionResultService.scala | 4 +-
.../web/service/WorkflowExecutionService.scala | 10 +-
.../texera/web/service/WorkflowService.scala | 2 +-
.../apache/texera/workflow/WorkflowCompiler.scala | 160 -----
.../amber/engine/e2e/LoopIntegrationSpec.scala | 102 ++-
.../e2e/MultiRegionWorkflowIntegrationSpec.scala | 2 +-
.../e2e/ReconfigurationIntegrationSpec.scala | 2 +-
.../handlers/control/test_end_worker_handler.py | 93 +++
.../handlers/control/test_start_worker_handler.py | 218 ++++++
.../architecture/managers/test_state_manager.py | 40 ++
.../python/core/models/test_single_blocking_io.py | 230 ++++++
.../test/python/core/proxy/test_proxy_server.py | 185 ++++-
.../test/python/core/runnables/test_heartbeat.py | 204 +++++-
.../test/python/core/runnables/test_main_loop.py | 92 ++-
.../python/core/runnables/test_network_receiver.py | 295 +++++++-
.../storage/runnables/test_port_storage_writer.py | 74 ++
.../python/core/storage/test_document_factory.py | 4 +-
.../python/core/storage/test_vfs_uri_factory.py | 35 +-
.../test_linked_blocking_multi_queue.py | 275 +++++++-
.../test/python/pytexera/udf/test_udf_operator.py | 353 ++++++++++
.../coordinator/WorkflowSchedulerSpec.scala | 2 +-
.../architecture/coordinator/WorkflowSpec.scala | 83 +++
.../coordinator/execution/ExecutionUtilsSpec.scala | 12 +-
.../execution/OperatorExecutionSpec.scala | 13 +-
.../execution/WorkflowExecutionSpec.scala | 10 +-
.../layer/WorkerExecutionSpec.scala | 103 ++-
.../messaginglayer/OutputManagerSpec.scala | 23 +
.../CostBasedScheduleGeneratorSpec.scala | 2 +-
.../scheduling/DefaultCostEstimatorSpec.scala | 4 +-
.../ExpansionGreedyScheduleGeneratorSpec.scala | 2 +-
.../RegionExecutionManagerTestSupport.scala | 3 +-
.../resourcePolicies/ResourcePoliciesSpec.scala | 2 +-
.../partitioners/NetworkOutputBufferSpec.scala | 12 +
.../architecture/worker/DataProcessorSpec.scala | 47 ++
.../statetransition/WorkerStateManagerSpec.scala | 41 ++
.../engine/e2e/BatchSizePropagationSpec.scala | 2 +-
.../amber/engine/e2e/DataProcessingSpec.scala | 2 +-
.../apache/texera/amber/engine/e2e/PauseSpec.scala | 2 +-
.../amber/engine/e2e/ReconfigurationSpec.scala | 2 +-
.../apache/texera/amber/engine/e2e/TestUtils.scala | 41 +-
.../engine/faulttolerance/CheckpointSpec.scala | 2 +-
.../web/resource/CollaborationResourceSpec.scala | 297 ++++++++
.../texera/web/resource/FeedbackResourceSpec.scala | 2 +-
.../resource/HuggingFaceModelResourceSpec.scala | 710 ++++++++++++++++++-
.../dashboard/file/DatasetResourceSpec.scala | 228 ++++++
.../dashboard/file/WorkflowResourceSpec.scala | 58 +-
.../user/project/ProjectAccessResourceSpec.scala | 2 +-
.../user/workflow/WorkflowAccessResourceSpec.scala | 2 +-
.../workflow/WorkflowExecutionsResourceSpec.scala | 11 +-
.../workflow/WorkflowVersionResourceSpec.scala | 2 +-
.../pythonvirtualenvironment/PveResourceSpec.scala | 2 +-
.../ExecutionsMetadataPersistServiceSpec.scala | 2 +-
.../web/service/ResultExportServiceSpec.scala | 352 ++++++++++
.../web/service/WorkflowExecutionServiceSpec.scala | 3 +-
.../texera/workflow/WorkflowCompilerSpec.scala | 212 ------
bin/README.md | 19 +
bin/k8s/README.md | 19 +
bin/local-dev/README.md | 19 +
bin/single-node/README.md | 19 +
build.sbt | 9 +-
.../texera/auth/UserActivityTrackerSpec.scala | 210 +++++-
.../texera/auth/util/ComputingUnitAccessSpec.scala | 2 +-
common/config/src/main/resources/cluster.conf | 3 +
.../apache/texera/common/config/PekkoConfig.scala | 28 +-
.../texera/common/config/PekkoConfigSpec.scala | 40 ++
.../scala/org/apache/texera/dao/MockTexeraDB.scala | 270 ++++----
.../org/apache/texera/dao/SqlServerSpec.scala | 2 +-
.../amber/pybuilder/BoundaryValidatorSpec.scala | 212 +++++-
.../amber/pybuilder/EncodableInspectorSpec.scala | 192 +++++
common/workflow-compiler/build.sbt | 54 ++
.../common/compiler/CompilationErrorHandling.scala | 39 +-
.../texera/common/compiler/WorkflowCompiler.scala | 284 ++++++++
.../common/compiler/model}/LogicalLink.scala | 2 +-
.../common/compiler/model}/LogicalPlan.scala | 9 +-
.../common}/compiler/model/LogicalPlanPojo.scala | 2 +-
.../texera/common/compiler}/LogicalPlanSpec.scala | 4 +-
.../common}/compiler/WorkflowCompilerSpec.scala | 240 ++++++-
.../common/compiler/model}/LogicalLinkSpec.scala | 2 +-
.../org/apache/texera/amber/core/state/State.scala | 12 +-
.../amber/core/storage/DocumentFactory.scala | 6 +-
.../texera/amber/core/storage/VFSURIFactory.scala | 20 +-
.../apache/texera/amber/util/StackTraceUtils.scala | 40 +-
.../apache/texera/amber/core/state/StateSpec.scala | 17 +
.../amber/core/storage/DocumentFactorySpec.scala | 199 +++++-
.../core/storage/LocalHadoopIcebergCatalog.scala | 66 ++
.../amber/core/storage/VFSURIFactorySpec.scala | 9 +-
.../storage/model/DatasetFileDocumentSpec.scala | 24 +
.../result/iceberg/IcebergDocumentSpec.scala | 331 +++++++++
.../storage/util/LakeFSStorageClientSpec.scala | 52 ++
.../amber/core/tuple/AttributeTypeUtilsSpec.scala | 227 ++++++
.../texera/amber/storage/FileResolverSpec.scala | 40 +-
.../texera/amber/util/StackTraceUtilsSpec.scala | 143 ++++
.../service/util/LargeBinaryManagerSpec.scala | 76 ++
.../texera/service/util/S3StorageClientSpec.scala | 284 +++++++-
.../apache/texera/amber/operator/LogicalOp.scala | 5 -
.../operator/intervalJoin/IntervalJoinOpExec.scala | 6 +-
.../keywordSearch/CaseSensitiveAnalyzer.scala | 9 +-
.../Scorer/MachineLearningScorerOpDesc.scala | 6 +-
.../operator/source/fetcher/URLFetcherOpExec.scala | 8 +-
.../source/scan/text/TextInputSourceOpDesc.scala | 3 +-
.../source/scan/text/TextSourceOpDesc.scala | 18 +-
.../sql/asterixdb/AsterixDBSourceOpExec.scala | 2 +-
.../udf/python/PythonUdfUiParameterInjector.scala | 3 +-
.../visualization/barChart/BarChartOpDesc.scala | 4 +-
.../filledAreaPlot/FilledAreaPlotOpDesc.scala | 2 +-
.../quiverPlot/QuiverPlotOpDesc.scala | 11 +-
.../rangeSlider/RangeSliderOpDesc.scala | 5 +-
.../tablesChart/TablesPlotOpDesc.scala | 5 +-
.../texera/amber/operator/LogicalOpSpec.scala | 15 +
.../aggregate/AggregationOperationSpec.scala | 76 ++
.../huggingFace/codegen/ImageTaskCodegenSpec.scala | 190 +++++
.../codegen/PythonCodegenBaseSpec.scala | 146 ++++
.../operator/intervalJoin/IntervalOpExecSpec.scala | 29 +
.../keywordSearch/CaseSensitiveAnalyzerSpec.scala | 22 +-
.../keywordSearch/KeywordSearchOpExecSpec.scala | 18 +-
.../Scorer/MachineLearningScorerOpDescSpec.scala | 16 +
.../base/SklearnAdvancedBaseDescSpec.scala | 138 ++++
.../operator/sklearn/SklearnModelOpDescSpec.scala | 78 +++
.../source/fetcher/URLFetcherOpExecSpec.scala | 23 +
.../operator/source/sql/SQLSourceOpExecSpec.scala | 457 ++++++++++++
.../sql/asterixdb/AsterixDBConnUtilSpec.scala | 482 +++++++++++++
.../sql/asterixdb/AsterixDBSourceOpExecSpec.scala | 734 ++++++++++++++++++++
.../source/sql/mysql/MySQLSourceOpExecSpec.scala | 385 +++++++++++
.../postgresql/PostgreSQLSourceOpExecSpec.scala | 397 +++++++++++
.../python/PythonUdfUiParameterInjectorSpec.scala | 3 -
.../barChart/BarChartOpDescSpec.scala | 10 +
.../quiverPlot/QuiverPlotOpDescSpec.scala | 21 +
.../rangeSlider/RangeSliderOpDescSpec.scala | 20 +
.../tablesChart/TablesPlotOpDescSpec.scala | 11 +
computing-unit-managing-service/NOTICE-binary | 2 +-
config-service/NOTICE-binary | 2 +-
docs/_index.md | 19 +
docs/concepts/_index.md | 19 +
docs/contribution-guidelines/_index.md | 19 +
.../apache-license-header.md | 19 +
.../guide-for-developers.md | 19 +
.../guide-to-frontend-development.md | 19 +
.../guide-to-implement-java-operator.md | 19 +
.../guide-to-implement-python-operator.md | 19 +
.../making-contributions.md | 19 +
.../release-email-template.md | 19 +
docs/examples/_index.md | 19 +
docs/getting-started/AccessLogin.md | 19 +
docs/getting-started/_index.md | 19 +
docs/getting-started/install-texera.md | 19 +
docs/getting-started/installing-using-docker.md | 19 +
docs/getting-started/run-on-kubernetes.md | 19 +
docs/getting-started/ui-overview.md | 19 +
docs/overview.md | 19 +
docs/reference/_index.md | 19 +
docs/reference/configuration.md | 19 +
docs/reference/engine.md | 19 +
docs/reference/frontend.md | 19 +
docs/reference/operators/_index.md | 19 +
docs/reference/operators/control-block/_index.md | 19 +
docs/reference/operators/control-block/if.md | 19 +
docs/reference/operators/control-block/sleep.md | 19 +
docs/reference/operators/data-cleaning/_index.md | 19 +
.../operators/data-cleaning/aggregate/_index.md | 19 +
.../operators/data-cleaning/aggregate/aggregate.md | 19 +
docs/reference/operators/data-cleaning/distinct.md | 19 +
docs/reference/operators/data-cleaning/filter.md | 19 +
.../operators/data-cleaning/join/_index.md | 19 +
.../data-cleaning/join/cartesian-product.md | 19 +
.../operators/data-cleaning/join/hash-join.md | 19 +
.../operators/data-cleaning/join/interval-join.md | 19 +
docs/reference/operators/data-cleaning/limit.md | 19 +
.../operators/data-cleaning/projection.md | 19 +
.../operators/data-cleaning/set/_index.md | 19 +
.../operators/data-cleaning/set/difference.md | 19 +
.../operators/data-cleaning/set/intersect.md | 19 +
.../data-cleaning/set/symmetricdifference.md | 19 +
.../reference/operators/data-cleaning/set/union.md | 19 +
.../operators/data-cleaning/sort/_index.md | 19 +
.../data-cleaning/sort/sort-partitions.md | 19 +
.../reference/operators/data-cleaning/sort/sort.md | 19 +
.../data-cleaning/sort/stable-merge-sort.md | 19 +
.../operators/data-cleaning/type-casting.md | 19 +
docs/reference/operators/data-input/_index.md | 19 +
.../operators/data-input/arrow-file-scan.md | 19 +
.../operators/data-input/csv-file-scan.md | 19 +
.../operators/data-input/csvold-file-scan.md | 19 +
docs/reference/operators/data-input/file-lister.md | 19 +
.../operators/data-input/file-scan-from-input.md | 19 +
docs/reference/operators/data-input/file-scan.md | 19 +
.../operators/data-input/jsonl-file-scan.md | 19 +
docs/reference/operators/data-input/text-input.md | 19 +
.../operators/database-connector/_index.md | 19 +
.../database-connector/asterixdb-source.md | 19 +
.../operators/database-connector/mysql-source.md | 19 +
.../database-connector/postgresql-source.md | 19 +
docs/reference/operators/external-api/_index.md | 19 +
.../operators/external-api/reddit-search.md | 19 +
.../twitter-full-archive-search-api.md | 19 +
.../operators/external-api/twitter-search-api.md | 19 +
.../operators/external-api/url-fetcher.md | 19 +
.../reference/operators/machine-learning/_index.md | 19 +
.../machine-learning/advanced-sklearn/_index.md | 19 +
.../advanced-sklearn/knn-classifier.md | 19 +
.../advanced-sklearn/knn-regressor.md | 19 +
.../advanced-sklearn/svm-classifier.md | 19 +
.../advanced-sklearn/svm-regressor.md | 19 +
.../machine-learning/hugging-face/_index.md | 19 +
.../hugging-face-iris-logistic-regression.md | 19 +
.../hugging-face-sentiment-analysis.md | 19 +
.../hugging-face/hugging-face-spam-detection.md | 19 +
.../hugging-face-text-summarization.md | 19 +
.../machine-learning-general/_index.md | 19 +
.../machine-learning-scorer.md | 19 +
.../operators/machine-learning/sklearn/_index.md | 19 +
.../machine-learning/sklearn/adaptive-boosting.md | 19 +
.../operators/machine-learning/sklearn/bagging.md | 19 +
.../sklearn/bernoulli-naive-bayes.md | 19 +
.../sklearn/complement-naive-bayes.md | 19 +
.../machine-learning/sklearn/decision-tree.md | 19 +
.../machine-learning/sklearn/dummy-classifier.md | 19 +
.../machine-learning/sklearn/extra-tree.md | 19 +
.../machine-learning/sklearn/extra-trees.md | 19 +
.../sklearn/gaussian-naive-bayes.md | 19 +
.../machine-learning/sklearn/gradient-boosting.md | 19 +
.../sklearn/k-nearest-neighbors.md | 19 +
.../machine-learning/sklearn/linear-perceptron.md | 19 +
.../machine-learning/sklearn/linear-regression.md | 19 +
.../sklearn/linear-support-vector-machine.md | 19 +
.../logistic-regression-cross-validation.md | 19 +
.../sklearn/logistic-regression.md | 19 +
.../sklearn/multi-layer-perceptron.md | 19 +
.../sklearn/multinomial-naive-bayes.md | 19 +
.../machine-learning/sklearn/nearest-centroid.md | 19 +
.../machine-learning/sklearn/passive-aggressive.md | 19 +
.../sklearn/probability-calibration.md | 19 +
.../machine-learning/sklearn/random-forest.md | 19 +
.../sklearn/ridge-regression-cross-validation.md | 19 +
.../machine-learning/sklearn/ridge-regression.md | 19 +
.../machine-learning/sklearn/sklearn-prediction.md | 19 +
.../machine-learning/sklearn/sklearn-testing.md | 19 +
.../sklearn/sklearn-training/_index.md | 19 +
.../sklearn-training/training-adaptive-boosting.md | 19 +
.../sklearn-training/training-bagging-training.md | 19 +
.../training-bernoulli-naive-bayes.md | 19 +
.../training-complement-naive-bayes.md | 19 +
.../sklearn-training/training-decision-tree.md | 19 +
.../sklearn-training/training-dummy-classifier.md | 19 +
.../sklearn-training/training-extra-tree.md | 19 +
.../sklearn-training/training-extra-trees.md | 19 +
.../training-gaussian-naive-bayes.md | 19 +
.../sklearn-training/training-gradient-boosting.md | 19 +
.../training-k-nearest-neighbors.md | 19 +
.../sklearn-training/training-linear-perceptron.md | 19 +
.../sklearn-training/training-linear-regression.md | 19 +
.../training-linear-support-vector-machine.md | 19 +
...raining-logistic-regression-cross-validation.md | 19 +
.../training-logistic-regression.md | 19 +
.../training-multi-layer-perceptron.md | 19 +
.../training-multinomial-naive-bayes.md | 19 +
.../sklearn-training/training-nearest-centroid.md | 19 +
.../training-passive-aggressive.md | 19 +
.../training-probability-calibration.md | 19 +
.../sklearn-training/training-random-forest.md | 19 +
.../training-ridge-regression-cross-validation.md | 19 +
.../sklearn-training/training-ridge-regression.md | 19 +
.../training-stochastic-gradient-descent.md | 19 +
.../training-support-vector-machine.md | 19 +
.../sklearn/stochastic-gradient-descent.md | 19 +
.../sklearn/support-vector-machine.md | 19 +
docs/reference/operators/output-modes.md | 19 +
docs/reference/operators/parameters/_index.md | 19 +
.../parameters/sklearn-advanced-knn-parameters.md | 19 +
.../parameters/sklearn-advanced-svc-parameters.md | 19 +
.../parameters/sklearn-advanced-svr-parameters.md | 19 +
docs/reference/operators/search/_index.md | 19 +
.../operators/search/dictionary-matcher.md | 19 +
docs/reference/operators/search/keyword-search.md | 19 +
.../operators/search/regular-expression.md | 19 +
.../reference/operators/search/substring-search.md | 19 +
.../operators/user-defined-functions/_index.md | 19 +
.../user-defined-functions/java/_index.md | 19 +
.../user-defined-functions/java/java-udf.md | 19 +
.../python/1-out-python-udf.md | 19 +
.../python/2-in-python-udf.md | 19 +
.../user-defined-functions/python/_index.md | 19 +
.../python/python-lambda-function.md | 19 +
.../python/python-table-reducer.md | 19 +
.../user-defined-functions/python/python-udf.md | 19 +
.../user-defined-functions/r/1-out-r-udf.md | 19 +
.../operators/user-defined-functions/r/_index.md | 19 +
.../operators/user-defined-functions/r/r-udf.md | 19 +
docs/reference/operators/utilities/_index.md | 19 +
.../operators/utilities/random-k-sampling.md | 19 +
.../operators/utilities/reservoir-sampling.md | 19 +
docs/reference/operators/utilities/split.md | 19 +
.../reference/operators/utilities/unnest-string.md | 19 +
docs/reference/operators/visualization/_index.md | 19 +
.../operators/visualization/advanced/_index.md | 19 +
.../visualization/advanced/choropleth-map.md | 19 +
.../visualization/advanced/scatter3d-chart.md | 19 +
.../operators/visualization/basic/_index.md | 19 +
.../operators/visualization/basic/bar-chart.md | 19 +
.../operators/visualization/basic/bubble-chart.md | 19 +
.../operators/visualization/basic/dot-plot.md | 19 +
.../operators/visualization/basic/dumbbell-plot.md | 19 +
.../visualization/basic/figure-factory-table.md | 19 +
.../visualization/basic/filled-area-plot.md | 19 +
.../operators/visualization/basic/gantt-chart.md | 19 +
.../visualization/basic/hierarchy-chart.md | 19 +
.../operators/visualization/basic/icicle-chart.md | 19 +
.../operators/visualization/basic/line-chart.md | 19 +
.../operators/visualization/basic/pie-chart.md | 19 +
.../operators/visualization/basic/range-slider.md | 19 +
.../visualization/basic/sankey-diagram.md | 19 +
.../operators/visualization/basic/scatter-plot.md | 19 +
.../operators/visualization/basic/tables-plot.md | 19 +
.../visualization/basic/time-series-plot.md | 19 +
.../operators/visualization/financial/_index.md | 19 +
.../visualization/financial/bullet-chart.md | 19 +
.../visualization/financial/candlestick-chart.md | 19 +
.../visualization/financial/funnel-plot.md | 19 +
.../visualization/financial/gauge-chart.md | 19 +
.../visualization/financial/waterfall-chart.md | 19 +
.../operators/visualization/media/_index.md | 19 +
.../visualization/media/html-visualizer.md | 19 +
.../visualization/media/image-visualizer.md | 19 +
.../visualization/media/url-visualizer.md | 19 +
.../operators/visualization/media/word-cloud.md | 19 +
.../operators/visualization/nested-table.md | 19 +
.../operators/visualization/scientific/_index.md | 19 +
.../visualization/scientific/carpet-plot.md | 19 +
.../visualization/scientific/contour-plot.md | 19 +
.../visualization/scientific/dendrogram.md | 19 +
.../operators/visualization/scientific/heatmap.md | 19 +
.../visualization/scientific/network-graph.md | 19 +
.../scientific/parallel-coordinates-plot.md | 19 +
.../visualization/scientific/polar-chart.md | 19 +
.../visualization/scientific/quiver-plot.md | 19 +
.../visualization/scientific/radar-chart.md | 19 +
.../visualization/scientific/radar-plot.md | 19 +
.../visualization/scientific/ternary-contour.md | 19 +
.../visualization/scientific/ternary-plot.md | 19 +
.../visualization/scientific/volcano-plot.md | 19 +
.../visualization/scientific/wind-rose-chart.md | 19 +
.../operators/visualization/statistical/_index.md | 19 +
.../visualization/statistical/boxviolin-plot.md | 19 +
.../statistical/continuous-error-bands.md | 19 +
.../empirical-cumulative-distribution-plot.md | 19 +
.../visualization/statistical/histogram.md | 19 +
.../visualization/statistical/histogram2d.md | 19 +
.../statistical/scatter-matrix-chart.md | 19 +
.../visualization/statistical/strip-chart.md | 19 +
.../visualization/statistical/tree-plot.md | 19 +
docs/reference/project-structure.md | 19 +
docs/reference/storage.md | 19 +
docs/security/_index.md | 19 +
docs/tutorials/_index.md | 19 +
docs/tutorials/create-dataset-upload-data.md | 19 +
docs/tutorials/guide-for-how-to-use-texera.md | 19 +
docs/tutorials/guide-to-enable-llm-agent.md | 19 +
docs/tutorials/guide-to-use-python-udf.md | 19 +
docs/tutorials/migrate-jupyter-notebook.md | 19 +
file-service/NOTICE-binary | 2 +-
.../service/resource/DatasetResourcePathSpec.scala | 80 +++
.../service/resource/DatasetResourceSpec.scala | 33 +-
.../service/type/dataset/DatasetFileNodeSpec.scala | 185 +++++
.../service/util/StagedFileCleanupJobSpec.scala | 2 +-
frontend/AGENTS.md | 19 +
frontend/LICENSE-binary | 21 +-
frontend/README.md | 19 +
frontend/TESTING.md | 19 +
frontend/package.json | 6 +-
frontend/src/app/app.module.ts | 9 +-
.../src/app/common/formly/formly-utils.spec.ts | 118 +++-
.../computing-unit-status.service.spec.ts | 214 +++++-
.../app/common/service/user/auth.service.spec.ts | 97 +++
.../app/common/service/user/user.service.spec.ts | 81 +++
.../workflow-persist.service.spec.ts | 349 ++++++++++
.../app/common/util/computing-unit.util.spec.ts | 164 +++++
frontend/src/app/common/util/format.util.spec.ts | 33 +-
.../app/common/util/port-identity-serde.spec.ts | 80 +++
frontend/src/app/common/util/predicate.spec.ts | 32 +-
frontend/src/app/common/util/predicate.ts | 10 +
.../execution/admin-execution.component.spec.ts | 120 ++++
.../admin/user/admin-user.component.spec.ts | 216 +++++-
.../user/filters/filters.component.spec.ts | 76 ++
.../card-item/card-item.component.spec.ts | 267 ++++++-
.../share-access/share-access.component.spec.ts | 204 ++++++
...user-computing-unit-list-item.component.spec.ts | 201 ++++++
.../dataset-detail.component.html | 770 +++++++++++----------
.../dataset-detail.component.scss | 77 +++
.../dataset-detail.component.spec.ts | 173 ++++-
.../dataset-detail.component.ts | 66 +-
.../user-dataset-file-renderer.component.spec.ts | 251 ++++++-
.../service/admin/user/admin-user.service.spec.ts | 187 +++++
.../service/user/dataset/dataset.service.spec.ts | 246 ++++++-
.../service/user/download/download.service.spec.ts | 102 ++-
.../service/user/download/download.service.ts | 2 +-
.../type/search-filter-parameters.spec.ts | 222 +++++-
.../src/app/dashboard/type/type-predicates.spec.ts | 70 +-
frontend/src/app/dashboard/type/type-predicates.ts | 11 +-
.../hugging-face/hugging-face.component.spec.ts | 538 ++++++++++++++
.../left-panel/left-panel.component.spec.ts | 253 +++++++
.../versions-list/versions-list.component.spec.ts | 162 ++++-
.../component/menu/menu.component.spec.ts | 59 ++
.../operator-property-edit-frame.component.scss | 7 +
.../operator-property-edit-frame.component.spec.ts | 126 ++++
.../property-editor.component.spec.ts | 244 ++++++-
.../type-casting-display.component.spec.ts | 206 +++++-
.../result-exportation.component.spec.ts | 294 ++++++++
.../result-panel/result-panel.component.spec.ts | 383 +++++++++-
.../nz-modal-comment-box.component.spec.ts | 127 +++-
.../workflow-editor.component.spec.ts | 264 +++++++
.../workflow-editor/workflow-editor.component.ts | 7 +-
.../workflow-compiling.service.spec.ts | 265 ++++++-
.../dynamic-schema/dynamic-schema.service.spec.ts | 117 ++++
.../service/joint-ui/joint-ui.service.spec.ts | 26 +
.../jupyter-panel/jupyter-panel.service.spec.ts | 426 ++++++++++++
.../service/jupyter-panel/jupyter-panel.service.ts | 327 +++++++++
.../notebook-migration/migration-llm.spec.ts | 123 ++++
.../service/preset/preset.service.spec.ts | 114 +++
.../app/workspace/service/preset/preset.service.ts | 8 +-
.../virtual-environment.service.spec.ts | 190 ++++-
.../model/joint-graph-wrapper.spec.ts | 321 +++++++++
.../model/shared-model-change-handler.spec.ts | 545 +++++++++++++++
.../model/workflow-action.service.spec.ts | 272 ++++++++
.../util/workflow-util.service.spec.ts | 128 +++-
.../workflow-websocket.service.spec.ts | 62 ++
.../types/execute-workflow.interface.spec.ts | 88 +++
.../workspace/types/execute-workflow.interface.ts | 2 +-
frontend/yarn.lock | 84 +--
notebook-migration-service/NOTICE-binary | 2 +-
.../resource/NotebookMigrationResourceSpec.scala | 2 +-
pyright-language-service/README.md | 19 +
pyright-language-service/package.json | 2 +-
pyright-language-service/yarn.lock | 8 +-
workflow-compiling-service/NOTICE-binary | 2 +-
.../texera/amber/compiler/WorkflowCompiler.scala | 231 -------
.../texera/amber/compiler/model/LogicalLink.scala | 41 --
.../texera/amber/compiler/model/LogicalPlan.scala | 138 ----
.../resource/WorkflowCompilationResource.scala | 10 +-
.../resource/WorkflowCompilationResourceSpec.scala | 4 +-
521 files changed, 27354 insertions(+), 2492 deletions(-)
delete mode 100644 .github/dependabot.yml
create mode 100644 .github/release-branches.yml
create mode 100644 .github/renovate.json5
create mode 100755 .github/scripts/create-backport-branch.sh
create mode 100644 .github/scripts/release_branches.py
create mode 100644 .github/workflows/backport-auto-label.yml
create mode 100644 .github/workflows/backport-checks.yml
create mode 100644 .github/workflows/backport-publish.yml
copy .github/workflows/{required-checks.yml => precheck.yml} (63%)
delete mode 100644
amber/src/main/scala/org/apache/texera/workflow/WorkflowCompiler.scala
create mode 100644
amber/src/test/python/core/architecture/handlers/control/test_end_worker_handler.py
create mode 100644
amber/src/test/python/core/architecture/handlers/control/test_start_worker_handler.py
create mode 100644 amber/src/test/python/core/models/test_single_blocking_io.py
create mode 100644
amber/src/test/python/core/storage/runnables/test_port_storage_writer.py
create mode 100644 amber/src/test/python/pytexera/udf/test_udf_operator.py
create mode 100644
amber/src/test/scala/org/apache/texera/amber/engine/architecture/coordinator/WorkflowSpec.scala
create mode 100644
amber/src/test/scala/org/apache/texera/web/resource/CollaborationResourceSpec.scala
create mode 100644
amber/src/test/scala/org/apache/texera/web/resource/dashboard/file/DatasetResourceSpec.scala
create mode 100644
amber/src/test/scala/org/apache/texera/web/service/ResultExportServiceSpec.scala
delete mode 100644
amber/src/test/scala/org/apache/texera/workflow/WorkflowCompilerSpec.scala
create mode 100644
common/pybuilder/src/test/scala/org/apache/texera/amber/pybuilder/EncodableInspectorSpec.scala
create mode 100644 common/workflow-compiler/build.sbt
copy
frontend/src/app/dashboard/component/user/user-project/user-project-section/ngbd-modal-add-project-workflow/ngbd-modal-add-project-workflow.component.scss
=>
common/workflow-compiler/src/main/scala/org/apache/texera/common/compiler/CompilationErrorHandling.scala
(55%)
create mode 100644
common/workflow-compiler/src/main/scala/org/apache/texera/common/compiler/WorkflowCompiler.scala
rename {amber/src/main/scala/org/apache/texera/workflow =>
common/workflow-compiler/src/main/scala/org/apache/texera/common/compiler/model}/LogicalLink.scala
(97%)
rename {amber/src/main/scala/org/apache/texera/workflow =>
common/workflow-compiler/src/main/scala/org/apache/texera/common/compiler/model}/LogicalPlan.scala
(92%)
rename {workflow-compiling-service/src/main/scala/org/apache/texera/amber =>
common/workflow-compiler/src/main/scala/org/apache/texera/common}/compiler/model/LogicalPlanPojo.scala
(95%)
rename {amber/src/test/scala/org/apache/texera/workflow =>
common/workflow-compiler/src/test/scala/org/apache/texera/common/compiler}/LogicalPlanSpec.scala
(99%)
rename {workflow-compiling-service/src/test/scala/org/apache/texera/amber =>
common/workflow-compiler/src/test/scala/org/apache/texera/common}/compiler/WorkflowCompilerSpec.scala
(57%)
rename {amber/src/test/scala/org/apache/texera/workflow =>
common/workflow-compiler/src/test/scala/org/apache/texera/common/compiler/model}/LogicalLinkSpec.scala
(99%)
copy
frontend/src/app/workspace/component/code-editor-dialog/annotation-suggestion.component.ts
=>
common/workflow-core/src/main/scala/org/apache/texera/amber/util/StackTraceUtils.scala
(56%)
create mode 100644
common/workflow-core/src/test/scala/org/apache/texera/amber/core/storage/LocalHadoopIcebergCatalog.scala
create mode 100644
common/workflow-core/src/test/scala/org/apache/texera/amber/core/storage/result/iceberg/IcebergDocumentSpec.scala
create mode 100644
common/workflow-core/src/test/scala/org/apache/texera/amber/util/StackTraceUtilsSpec.scala
create mode 100644
common/workflow-operator/src/test/scala/org/apache/texera/amber/operator/huggingFace/codegen/ImageTaskCodegenSpec.scala
create mode 100644
common/workflow-operator/src/test/scala/org/apache/texera/amber/operator/huggingFace/codegen/PythonCodegenBaseSpec.scala
create mode 100644
common/workflow-operator/src/test/scala/org/apache/texera/amber/operator/machineLearning/sklearnAdvanced/base/SklearnAdvancedBaseDescSpec.scala
create mode 100644
common/workflow-operator/src/test/scala/org/apache/texera/amber/operator/sklearn/SklearnModelOpDescSpec.scala
create mode 100644
common/workflow-operator/src/test/scala/org/apache/texera/amber/operator/source/sql/SQLSourceOpExecSpec.scala
create mode 100644
common/workflow-operator/src/test/scala/org/apache/texera/amber/operator/source/sql/asterixdb/AsterixDBConnUtilSpec.scala
create mode 100644
common/workflow-operator/src/test/scala/org/apache/texera/amber/operator/source/sql/asterixdb/AsterixDBSourceOpExecSpec.scala
create mode 100644
common/workflow-operator/src/test/scala/org/apache/texera/amber/operator/source/sql/mysql/MySQLSourceOpExecSpec.scala
create mode 100644
common/workflow-operator/src/test/scala/org/apache/texera/amber/operator/source/sql/postgresql/PostgreSQLSourceOpExecSpec.scala
create mode 100644
file-service/src/test/scala/org/apache/texera/service/resource/DatasetResourcePathSpec.scala
create mode 100644
file-service/src/test/scala/org/apache/texera/service/type/dataset/DatasetFileNodeSpec.scala
create mode 100644 frontend/src/app/common/util/port-identity-serde.spec.ts
create mode 100644
frontend/src/app/dashboard/service/admin/user/admin-user.service.spec.ts
create mode 100644
frontend/src/app/workspace/service/jupyter-panel/jupyter-panel.service.spec.ts
create mode 100644
frontend/src/app/workspace/service/jupyter-panel/jupyter-panel.service.ts
create mode 100644
frontend/src/app/workspace/service/workflow-graph/model/shared-model-change-handler.spec.ts
create mode 100644
frontend/src/app/workspace/types/execute-workflow.interface.spec.ts
delete mode 100644
workflow-compiling-service/src/main/scala/org/apache/texera/amber/compiler/WorkflowCompiler.scala
delete mode 100644
workflow-compiling-service/src/main/scala/org/apache/texera/amber/compiler/model/LogicalLink.scala
delete mode 100644
workflow-compiling-service/src/main/scala/org/apache/texera/amber/compiler/model/LogicalPlan.scala