This is an automated email from the ASF dual-hosted git repository.

Xiao-zhen-Liu pushed a change to branch xinyuan-fix-email-url
in repository https://gitbox.apache.org/repos/asf/texera.git


    from afcbca3159 Merge branch 'main' into xinyuan-fix-email-url
     add 852ebee5a4 feat(gui): Display the status for each operator during 
execution (#4195)
     add 3e92803d84 feat: introduce sklearn testing operator (#4211)
     add 286a39626a fix: Added setup python section to frontend test to pin 
python to 3.12 (#4215)
     add 9bc1ebdff0 fix: prevent orphaned sessions when lakeFS abort fails 
(#4197)
     add 179f177d72 feat: add user registration form (#4185)
     add 61726182b8 fix: Fix/macos testcase (#4222)
     add 93f587fa32 feat: add Markdown editor for dataset/workflow descriptions 
(#4212)
     add 127c26abe7 fix(ui): add links to region display (#4226)
     add 9fd356c3b9 feat(release): include container images and deployment 
artifacts in release (#4219)
     add 9e76865b2a feat: add inline edit modes for dataset description (#4232)
     add ab9a84b198 fix(ci): use consistent 9-char commit hash for image tags 
(#4231)
     add 95496cce27 feat: Separate Runtime Statistics Collection from UI 
Updates (#4205)
     add 6a58780f39 fix: prediction input shape in sklearn testing operator 
(#4236)
     add 34a8fad0f5 refactor(helm): switch postgres image from bitnami to 
groonga and fix the texera image registry configuration (#4233)
     add 5b3cabff46 chore: remove deprecated result storage flag (#4210)
     add 264b72f666 fix: syntax for accessing DataFrame column in 
SklearnTrainingOpDesc (#4237)
     add 157241ab3b chore: Remove duplicate JOOQ generator and libraries (#3748)
     add e908c60de8 chore: make service log levels configurable via 
TEXERA_SERVICE_LOG_LEVEL (#4244)
     add 349a1aa18b feat: add startup message to docker-compose (#4245)
     add b480feb890 feat: add example datasets and workflows to Docker Compose 
(#4247)
     add 52c44c5ddd refactor: align docker-compose service and container names 
with image names (#4249)
     add 3c50566da1 fix(ci): replace removed JooqCodeGenerator with sbt 
jooqGenerate task (#4252)
     add dee51b0986 fix(ci): include example datasets and workflows into the 
docker compose tarball when creating the release candidate (#4253)
     add 465b850383 fix: update example-data-loader to reference correct 
service names in docker-compose (#4255)
     add 98cf478c0a feat(ci): set TEXERA_SERVICE_LOG_LEVEL to ERROR for docker 
compose tarball in release candidate CI (#4256)
     add c1bb23094a feat: add a new radar chart operator (#4248)
     add 206f3f3dcf fix(docker-compose): improve the startup banner (#4260)
     add ac909a07dc fix(operator): correct regex escaping in WordCloud operator 
(#4261)
     add 34af5f7d22 fix(helm): align the header name specified in the envoy 
gateway with the header definition in AccessControService  (#4254)
     add f8999290fa feat(ci): automatically send an email to dev list on ddl 
change (#4250)
     add 3e46ceaf3d fix(operator): prevent KeywordSearch operator from running 
with an empty keywords field (#4277)
     add 25f0b362e0 fix(dashboard): copy workflow opens preview page instead of 
workspace (#4280)
     add 0b3f97d9ad chore(ci): replace `nightly` with `latest` for image 
building cron job (#4282)
     add 47bb2e43b1 chore(license): switch to DISCLAIMER-WIP and add ASF 
licensing files to JARs and Docker images (#4288)
     add 46f7a26231 chore: rewrite code snippets that are referenced to Stack 
Overflow (#4283)
     add bcbf58b6a1 chore(gui): add edit description button in workspace (#4271)
     add d08bf698a7 fix(frontend): handle multi-item array updates in 
updateYTypeFromObject (#4265)
     add 6a4baacde7 chore(ci): Bumped pyiceberg to v0.11.1 (#4297)
     add e8c1f5d474 chore(dep): bump typing_extensions to 4.14.1 (#4300)
     add 9ac58cf60b fix(backend): Update PHYSICAL_ADDRESS_EXPIRATION_TIME_HRS 
to 24hrs (#4269)
     add 0806b4a8c9 chore(dep): bump pillow to 12.1.1 (#4310)
     add 31308a29eb fix: reduce catalog round-trips in 
`IcebergDocument.hasNext()` to improve result read performance (#4293)
     add aebd456540 chore(ci): Support Python 3.13 (#4088)
     add a7c33414fe fix: initialize large-binary S3 bucket at startup to 
prevent NoSuchBucketException (#4241)
     add c240a296f4 feat(backend): Add 'method' type annotation support for 
PyBuilder (#4267)
     add 8e2d20c165 refactor(auth): use SecureRandom for random hex string 
generation (#4285)
     add bf5a4029f8 fix(ci): change unallowed action to curl for sending email 
on ddl change (#4323)
     add be158d73ee chore: Reduce Texera k8 Resources for Development (#4165)
     add 325f697e28 feat(frontend): improve dataset detail page layout (#4337)
     add f9be03ae22 feat: add view more toggle for markdown description (#4330)
     add 9aa6bbc386 fix: path issue in frontend protobuf generation script 
(#4332)
     add cd9f9a7ae1 chore(docs): include the wiki instruction as the README in 
the docker compose folder (#4320)
     add 70021f66c2 feat(gui): add computing unit types in frontend dashboard 
(#4327)
     add b852f7d99b fix: regenerate protobuf files in the frontend (#4334)
     add 09f04c8f0b feat(amber): add RESTCatalog support for result storage 
(#4272)
     add 8cd5a56f11 fix: regenerate protobuf files in the python (#4336)
     add 50636fdb41 chore(SECURITY.md): add more description regarding the UDF 
security model (#4299)
     add 5bd1417bbe fix(ci): update Docker action SHAs to Apache-approved 
versions (#4345)
     add 9b63619220 feat(gui): add computing unit tab shell (#4328)
     add e68abc3af1 fix(ci): Update sbt setup action to version 1.1.22 (#4355)
     add b50f4e57c8 feat(gui): add full computing unit tab (#4331)
     add 84c0821d4f chore: add affiliation and joiningReason to email (#4326)
     add 39b42c3cc7 chore(helm): bump LakeFS version in the helm chart from 
1.4.5 to 1.8.1 (#4357)
     add 46803c39c9 fix: handle LakeFS pagination to return all results beyond 
default 100-item limit (#4349)
     add 353a31e3c2 feat(script): add a bootstrap script for setting up 
Lakekeeper in the local development environment (#4273)
     add dffd0312c0 feat: allow Multi-Link on Input Ports (#4342)
     add 9fafe474ab refactor: change Compute tab url from "unit" to "compute" 
(#4361)
     add b24a44d2da fix(core): Fix Amber Home Path Resolution (#4356)
     add 786f7d75b1 feat: enable text selection by default across the platform 
(#4366)
     add ddf5e5d68d feat: change project name in email to be configurable 
(#4373)
     add b74f9c9cd3 fix: old workflows failing to run after input port field 
rename (#4379)
     add babb1b868e refactor: move text selection handling to workspace 
component (#4383)
     add e0fc7df17e feat: add File Lister operator (#4364)
     add ec025091aa chore: remove R support from Docker images for license 
compliance (#4385)
     add 8560cca80b fix(operator): guard against NoSuchElementException in 
ParallelCSVScanSourceOpDesc.getPhysicalOp (#4375)
     add 407a91fa65 refactor(frontend): move shared computing unit types and 
services to `frontend/src/app/common` (#4358)
     add ea1e9d1237 fix(helm): Add `AUTH_JWT_SECRET` to `values.yaml` (#4388)
     add d547c76e07 feat: add File Scan From Input operator (#4369)
     add b3db209d41 fix(frontend): unsubscribe connection-status subscription 
in WorkflowWebsocketService.closeWebsocket (#4377)
     add fee6f8caa2 feat: add a new wind rose chart operator (#4224)
     add 2b6253909c fix: only run workflow build and deploy image action if 
scheduled or auto run if on… (#4214)
     add d868b85225 feat: add Radar Plot Visualization Operator (#3500)
     add 8cd1570dd2 feat: add a new webgl polar chart operator (#4221)
     add 41e7339f1b fix(operator): convert booleans to Python-compatible values 
in BubbleChart/ContourPlot/TernaryPlot (#4238)
     add d883210c8b Merge branch 'main' into xinyuan-fix-email-url

No new revisions were added by this update.

Summary of changes:
 .asf.yaml                                          |    1 +
 .github/release/vote-email-template.md             |   24 +-
 .../automatic-email-notif-on-ddl-change.yml        |   62 ++
 .github/workflows/build-and-push-images.yml        |  112 ++-
 .github/workflows/create-release-candidate.yml     |  324 ++++--
 .github/workflows/github-action-build.yml          |   19 +-
 .licenserc.yaml                                    |    5 +
 DISCLAIMER                                         |   10 -
 DISCLAIMER-WIP                                     |   23 +
 SECURITY.md                                        |   24 +-
 .../access-control-service-web-config.yaml         |    7 +-
 .../src/main/resources/logback.xml                 |    2 +-
 .../texera/service/AccessControlService.scala      |   14 +-
 amber/operator-requirements.txt                    |    2 +-
 amber/requirements.txt                             |    7 +-
 .../engine/architecture/rpc/controlcommands.proto  |    7 +
 .../storage/iceberg/iceberg_catalog_instance.py    |   36 +-
 .../python/core/storage/iceberg/iceberg_utils.py   |   40 +-
 .../core/storage/iceberg/test_iceberg_document.py  |    3 +
 .../input_port_materialization_reader_runnable.py  |    3 +-
 .../src/main/python/core/storage/storage_config.py |   12 +-
 .../proto/org/apache/texera/amber/core/__init__.py |    6 +-
 .../amber/engine/architecture/rpc/__init__.py      |    7 +
 .../engine/architecture/sendsemantics/__init__.py  |    4 +-
 .../amber/engine/architecture/worker/__init__.py   |    4 +-
 .../pytexera/storage/test_large_binary_manager.py  |    3 +
 amber/src/main/python/texera_run_python_worker.py  |    6 +
 .../resources/computing-unit-master-config.yml     |    8 +-
 amber/src/main/resources/logback.xml               |    2 +-
 .../texera-compiling-service-web-config.yml        |    5 +-
 amber/src/main/resources/web-config.yml            |    5 +-
 .../architecture/controller/ClientEvent.scala      |    3 +
 .../architecture/controller/Controller.scala       |    6 +-
 .../controller/ControllerTimerService.scala        |   54 +-
 .../controller/promisehandlers/PauseHandler.scala  |   14 +-
 .../promisehandlers/PortCompletedHandler.scala     |   11 +-
 .../QueryWorkerStatisticsHandler.scala             |   52 +-
 .../controller/promisehandlers/ResumeHandler.scala |   15 +-
 .../promisehandlers/StartWorkflowHandler.scala     |    1 +
 .../WorkerExecutionCompletedHandler.scala          |    6 +-
 .../WorkerStateUpdatedHandler.scala                |   11 +-
 .../pythonworker/PythonWorkflowWorker.scala        |    3 +
 .../scheduling/RegionExecutionCoordinator.scala    |   15 +-
 .../apache/texera/amber/engine/common/Utils.scala  |    4 +-
 .../apache/texera/web/ComputingUnitMaster.scala    |   35 +
 .../texera/web/ServletAwareConfigurator.scala      |   11 +-
 .../apache/texera/web/TexeraWebApplication.scala   |   36 +-
 .../apache/texera/web/auth/GuestAuthFilter.scala   |    2 +-
 .../apache/texera/web/auth/UserAuthenticator.scala |    1 +
 .../websocket/event/WebResultUpdateEvent.scala     |    3 +-
 .../apache/texera/web/resource/EmailTemplate.scala |   15 +-
 .../apache/texera/web/resource/GmailResource.scala |   12 +-
 .../dashboard/admin/user/AdminUserResource.scala   |    6 +-
 .../web/resource/dashboard/user/UserResource.scala |   61 +-
 .../web/service/ExecutionResultService.scala       |    8 +-
 .../texera/web/service/ExecutionStatsService.scala |   17 +-
 bin/access-control-service.dockerfile              |    3 +
 bin/bootstrap-lakekeeper.sh                        |  473 +++++++++
 bin/build-images.sh                                |   34 +-
 bin/computing-unit-master.dockerfile               |   60 +-
 bin/computing-unit-worker.dockerfile               |   57 +-
 bin/config-service.dockerfile                      |    3 +
 bin/file-service.dockerfile                        |    3 +
 bin/frontend-proto-gen.sh                          |    2 +-
 bin/k8s/Chart.yaml                                 |    2 +-
 bin/k8s/README.md                                  |   26 +-
 .../access-control-service-deployment.yaml         |    6 +-
 bin/k8s/templates/config-service-deployment.yaml   |    2 +-
 bin/k8s/templates/example-data-loader-job.yaml     |    2 +-
 bin/k8s/templates/file-service-deployment.yaml     |    2 +-
 bin/k8s/templates/gateway-security-policy.yaml     |    2 +-
 bin/k8s/templates/webserver-deployment.yaml        |    2 +-
 .../workflow-compiling-service-deployment.yaml     |    2 +-
 ...workflow-computing-unit-manager-deployment.yaml |    4 +-
 ...ow-computing-unit-master-prepull-daemonset.yaml |    2 +-
 bin/k8s/{values.yaml => values-development.yaml}   |   82 +-
 bin/k8s/values.yaml                                |   33 +-
 bin/postgres17-pgroonga.dockerfile                 |   50 -
 bin/single-node/.env                               |   20 +-
 bin/single-node/README.md                          |  174 +++-
 bin/single-node/docker-compose.yml                 |   97 +-
 .../examples/datasets/iris-species/Iris.csv        |  151 +++
 .../examples/datasets/iris-species/description.txt |    1 +
 .../popular-movies-of-imdb/TMDb_updated.csv        | 1002 +++++++++++++++++++
 .../popular-movies-of-imdb/description.txt         |    1 +
 bin/single-node/examples/load-examples.sh          |  288 ++++++
 ...xample] Data Exploration on Movies Dataset.json |  652 ++++++++++++
 ...[Example] Machine Learning on Iris Dataset.json |  800 +++++++++++++++
 bin/single-node/nginx.conf                         |   16 +-
 bin/texera-web-application.dockerfile              |    3 +
 bin/workflow-compiling-service.dockerfile          |    3 +
 ...flow-computing-unit-managing-service.dockerfile |    3 +
 build.sbt                                          |   33 +-
 common/auth/build.sbt                              |    4 +-
 .../scala/org/apache/texera/auth/JwtParser.scala   |    3 +-
 .../apache/texera/auth/RequestLoggingFilter.scala  |   64 ++
 common/config/src/main/resources/application.conf  |    3 +
 common/config/src/main/resources/cluster.conf      |    1 +
 common/config/src/main/resources/storage.conf      |   17 +-
 common/config/src/main/resources/user-system.conf  |    3 +
 .../texera/amber/config/ApplicationConfig.scala    |    2 +
 .../amber/config/EnvironmentalVariable.scala       |    6 +-
 .../apache/texera/amber/config/StorageConfig.scala |    7 +-
 .../org/apache/texera/config/AuthConfig.scala      |    7 +-
 .../apache/texera/config/UserSystemConfig.scala    |    1 +
 common/dao/build.sbt                               |    2 -
 .../org/apache/texera/dao/JooqCodeGenerator.scala  |   75 --
 .../amber/pybuilder/EncodableInspector.scala       |   16 +-
 .../amber/pybuilder/EncodableStringAnnotation.java |    3 +-
 .../pybuilder/PythonTemplateBuilderSpec.scala      |   16 +
 common/workflow-core/build.sbt                     |   19 +-
 .../org/apache/texera/amber/core/workflow.proto    |    3 +-
 .../amber/core/storage/DocumentFactory.scala       |  102 +-
 .../core/storage/IcebergCatalogInstance.scala      |    2 +-
 .../storage/result/iceberg/IcebergDocument.scala   |    6 +
 .../result/iceberg/IcebergTableWriter.scala        |    6 +-
 .../core/storage/util/LakeFSStorageClient.scala    |   45 +-
 .../texera/amber/core/workflow/PhysicalOp.scala    |    4 +-
 .../org/apache/texera/amber/util/IcebergUtil.scala |   44 +-
 .../texera/service/util/LargeBinaryManager.scala   |    4 +-
 .../texera/service/util/S3StorageClient.scala      |    3 +-
 .../result/iceberg/IcebergDocumentSpec.scala       |   78 +-
 .../jackson/jsonSchema/JsonSchemaGenerator.scala   |   37 +-
 .../apache/texera/amber/operator/LogicalOp.scala   |   17 +-
 .../texera/amber/operator/PortDescriptor.scala     |    7 +-
 .../texera/amber/operator/dummy/DummyOpDesc.scala  |    4 +-
 .../keywordSearch/KeywordSearchOpDesc.scala        |    3 +-
 .../metadata/OperatorMetadataGenerator.scala       |   16 +
 .../sklearn/testing/SklearnTestingOpDesc.scala     |  114 +++
 .../sklearn/training/SklearnTrainingOpDesc.scala   |    2 +-
 .../dataset/FileListerSourceOpDesc.scala}          |   34 +-
 .../source/dataset/FileListerSourceOpExec.scala    |   59 ++
 .../source/scan/csv/CSVScanSourceOpDesc.scala      |    2 +-
 .../scan/csv/ParallelCSVScanSourceOpDesc.scala     |    2 +-
 .../FileScanOpDesc.scala}                          |   48 +-
 .../scan/file/FileScanOpExec.scala}                |   44 +-
 .../scan/{ => file}/FileScanSourceOpDesc.scala     |    5 +-
 .../file/FileScanSourceOpExec.scala}               |   36 +-
 .../FileScanUtils.scala}                           |  120 ++-
 .../amber/operator/udf/java/JavaUDFOpDesc.scala    |    4 +-
 .../python/DualInputPortsPythonUDFOpDescV2.scala   |    3 +-
 .../operator/udf/python/PythonUDFOpDescV2.scala    |    4 +-
 .../texera/amber/operator/udf/r/RUDFOpDesc.scala   |    4 +-
 .../texera/amber/operator/union/UnionOpDesc.scala  |    2 +-
 .../visualization/DotPlot/DotPlotOpDesc.scala      |    6 +-
 .../IcicleChart/IcicleChartOpDesc.scala            |    6 +-
 .../ImageViz/ImageVisualizerOpDesc.scala           |    6 +-
 .../ScatterMatrixChartOpDesc.scala                 |    6 +-
 .../visualization/barChart/BarChartOpDesc.scala    |    6 +-
 .../boxViolinPlot/BoxViolinPlotOpDesc.scala        |    6 +-
 .../bubbleChart/BubbleChartOpDesc.scala            |    8 +-
 .../bulletChart/BulletChartOpDesc.scala            |    9 +-
 .../candlestickChart/CandlestickChartOpDesc.scala  |    6 +-
 .../choroplethMap/ChoroplethMapOpDesc.scala        |    6 +-
 .../ContinuousErrorBandsOpDesc.scala               |    6 +-
 .../contourPlot/ContourPlotOpDesc.scala            |    8 +-
 .../dendrogram/DendrogramOpDesc.scala              |    6 +-
 .../dumbbellPlot/DumbbellPlotOpDesc.scala          |   30 +-
 .../FigureFactoryTableOpDesc.scala                 |    6 +-
 .../filledAreaPlot/FilledAreaPlotOpDesc.scala      |    6 +-
 .../funnelPlot/FunnelPlotOpDesc.scala              |    6 +-
 .../ganttChart/GanttChartOpDesc.scala              |    6 +-
 .../gaugeChart/GaugeChartOpDesc.scala              |    6 +-
 .../visualization/heatMap/HeatMapOpDesc.scala      |    6 +-
 .../hierarchychart/HierarchyChartOpDesc.scala      |    6 +-
 .../histogram/HistogramChartOpDesc.scala           |    6 +-
 .../histogram2d/Histogram2DOpDesc.scala            |    6 +-
 .../visualization/htmlviz/HtmlVizOpDesc.scala      |    6 +-
 .../visualization/lineChart/LineChartOpDesc.scala  |    6 +-
 .../nestedTable/NestedTableOpDesc.scala            |    6 +-
 .../networkGraph/NetworkGraphOpDesc.scala          |    6 +-
 .../visualization/pieChart/PieChartOpDesc.scala    |    6 +-
 .../PolarChartOpDesc.scala}                        |  106 +-
 .../quiverPlot/QuiverPlotOpDesc.scala              |    6 +-
 .../RadarChartOpDesc.scala}                        |  127 +--
 .../RadarPlotLinePattern.java}                     |   23 +-
 .../visualization/radarPlot/RadarPlotOpDesc.scala  |  230 +++++
 .../rangeSlider/RangeSliderOpDesc.scala            |    6 +-
 .../sankeyDiagram/SankeyDiagramOpDesc.scala        |    6 +-
 .../scatter3DChart/Scatter3dChartOpDesc.scala      |    6 +-
 .../scatterplot/ScatterplotOpDesc.scala            |    6 +-
 .../stripChart/StripChartOpDesc.scala              |    6 +-
 .../tablesChart/TablesPlotOpDesc.scala             |    6 +-
 .../ternaryPlot/TernaryPlotOpDesc.scala            |    8 +-
 .../timeSeriesplot/TimeSeriesOpDesc.scala}         |    6 +-
 .../{TreeplotOpDesc.scala => TreePlotOpDesc.scala} |    6 +-
 .../visualization/urlviz/UrlVizOpDesc.scala        |    6 +-
 .../volcanoPlot/VolcanoPlotOpDesc.scala            |    6 +-
 .../waterfallChart/WaterfallChartOpDesc.scala      |    6 +-
 .../WindRoseChartOpDesc.scala}                     |   87 +-
 .../visualization/wordCloud/WordCloudOpDesc.scala  |    9 +-
 .../dataset/FileListerSourceOpDescSpec.scala}      |   30 +-
 .../source/scan/csv/CSVScanSourceOpDescSpec.scala  |   32 +
 .../source/scan/file/FileScanOpDescSpec.scala      |   99 ++
 .../{text => file}/FileScanSourceOpDescSpec.scala  |    9 +-
 .../scan/{ => file}/FileScanSourceOpExecSpec.scala |    3 +-
 .../wordCloud/WordCloudOpDescSpec.scala            |   57 ++
 .../computing-unit-managing-service-config.yaml    |    7 +-
 .../service/ComputingUnitManagingService.scala     |   14 +-
 .../resource/ComputingUnitManagingResource.scala   |    2 +
 .../main/resources/config-service-web-config.yaml  |    7 +-
 .../org/apache/texera/service/ConfigService.scala  |   13 +-
 .../main/resources/file-service-web-config.yaml    |    7 +-
 .../org/apache/texera/service/FileService.scala    |   17 +-
 .../texera/service/resource/DatasetResource.scala  |   25 +-
 .../service/resource/DatasetResourceSpec.scala     |   71 +-
 frontend/.yarnrc.yml                               |    1 +
 frontend/custom-webpack.config.js                  |    4 +-
 frontend/src/app/app-routing.constant.ts           |    1 +
 frontend/src/app/app-routing.module.ts             |    5 +
 frontend/src/app/app.module.ts                     |   18 +-
 frontend/src/app/common/formly/formly-config.ts    |    6 +-
 .../computing-unit-actions.service.ts              |  130 +++
 .../computing-unit-status.service.ts               |   12 +-
 .../mock-computing-unit-status.service.ts          |    2 +-
 .../workflow-computing-unit-managing.service.ts    |    4 +-
 .../src/app/common/service/gmail/gmail.service.ts  |   22 +-
 .../src/app/common/service/user/auth.service.ts    |  110 ++-
 .../registration-request-modal.component.html      |   54 +
 .../registration-request-modal.component.scss}     |   19 +-
 .../registration-request-modal.component.ts}       |   40 +-
 .../app/common/service/user/stub-user.service.ts   |    2 +
 .../src/app/common/service/user/user.service.ts    |   32 -
 .../type}/computing-unit-connection.interface.ts   |    0
 .../src/app/common/type/generic-web-response.ts    |    5 +-
 frontend/src/app/common/type/physical-plan.ts      |    4 +-
 .../type/proto/google/protobuf/descriptor.ts       | 1045 ++++++++++++++------
 .../{engine/common => core}/virtualidentity.ts     |   67 +-
 .../amber/{engine/common => core}/workflow.ts      |  255 +++--
 .../src/app/common/type/proto/scalapb/scalapb.ts   |  293 +++---
 frontend/src/app/common/type/user.ts               |    1 +
 .../type}/workflow-computing-unit.ts               |    0
 .../src/app/common/util/computing-unit.util.ts     |  353 +++++++
 .../src/app/common/util/port-identity-serde.ts     |    2 +-
 .../component/admin/user/admin-user.component.html |    6 +
 .../component/admin/user/admin-user.component.ts   |    5 +
 .../dashboard/component/dashboard.component.html   |   43 +-
 .../app/dashboard/component/dashboard.component.ts |   69 +-
 .../user/list-item/list-item.component.html        |   15 +-
 .../user/list-item/list-item.component.scss        |    1 +
 .../user/list-item/list-item.component.ts          |   49 +-
 .../markdown-description.component.html            |  112 +++
 .../markdown-description.component.scss            |  102 ++
 .../markdown-description.component.ts              |  173 ++++
 .../user-computing-unit-list-item.component.html   |  212 ++++
 .../user-computing-unit-list-item.component.scss}  |  245 +++--
 .../user-computing-unit-list-item.component.ts     |  316 ++++++
 .../user-computing-unit.component.html             |  232 +++++
 .../user-computing-unit.component.scss             |   99 ++
 .../user-computing-unit.component.spec.ts          |   65 ++
 .../user-computing-unit.component.ts               |  280 ++++++
 .../dataset-detail.component.html                  |  134 ++-
 .../dataset-detail.component.scss                  |  149 +--
 .../dataset-detail.component.ts                    |   21 +
 .../user/user-workflow/user-workflow.component.ts  |    3 +
 .../service/user/download/download.service.ts      |    2 +-
 frontend/src/app/dashboard/type/dashboard-entry.ts |   39 +-
 frontend/src/app/dashboard/type/search-result.ts   |    2 +-
 frontend/src/app/dashboard/type/type-predicates.ts |    5 +
 .../detail/hub-workflow-detail.component.html      |    5 +-
 frontend/src/app/hub/service/hub.service.ts        |    1 +
 .../dataset-file-selector.component.html}          |   18 +-
 .../dataset-file-selector.component.ts}            |   34 +-
 .../dataset-selection-modal.component.html         |   67 ++
 .../dataset-selection-modal.component.scss}        |   16 +-
 .../dataset-selection-modal.component.ts           |  108 ++
 .../dataset-version-selector.component.html}       |   18 +-
 .../dataset-version-selector.component.ts          |   60 ++
 .../file-selection/file-selection.component.html   |   77 --
 .../file-selection/file-selection.component.scss   |   89 --
 .../file-selection/file-selection.component.ts     |  127 ---
 .../input-autocomplete.component.html              |   42 -
 .../input-autocomplete.component.scss              |   50 -
 .../input-autocomplete.component.spec.ts           |   49 -
 .../time-travel/time-travel.component.spec.ts      |    4 +-
 .../coeditor-user-icon.component.ts                |   10 +-
 .../workspace/component/menu/menu.component.html   |   17 +
 .../workspace/component/menu/menu.component.scss   |    4 +
 .../app/workspace/component/menu/menu.component.ts |   63 +-
 .../computing-unit-selection.component.spec.ts     |    4 +-
 .../computing-unit-selection.component.ts          |  476 ++-------
 .../operator-property-edit-frame.component.spec.ts |    4 +-
 .../operator-property-edit-frame.component.ts      |   22 +-
 .../property-editor.component.spec.ts              |    4 +-
 .../result-exportation.component.ts                |    4 +-
 .../console-frame/console-frame.component.spec.ts  |    4 +-
 .../error-frame/error-frame.component.spec.ts      |    4 +-
 .../result-panel/result-panel.component.spec.ts    |    4 +-
 .../result-table-frame.component.ts                |   17 +-
 .../workflow-editor/workflow-editor.component.scss |    4 +
 .../workflow-editor.component.spec.ts              |    8 +-
 .../workflow-editor/workflow-editor.component.ts   |   55 +-
 .../workspace/component/workspace.component.scss   |    4 +
 .../execute-workflow.service.spec.ts               |    4 +-
 .../execute-workflow/execute-workflow.service.ts   |    2 +-
 .../workspace/service/joint-ui/joint-ui.service.ts |   19 +
 .../operator-menu/operator-menu.service.spec.ts    |    4 +-
 .../mock-operator-metadata.data.ts                 |    2 +-
 .../validation/validation-workflow.service.ts      |   10 +-
 .../model/workflow-action.service.ts               |    8 +-
 .../workflow-graph/util/workflow-util.service.ts   |    4 +-
 .../workflow-result-export.service.ts              |    2 +-
 .../workflow-result/workflow-result.service.ts     |   12 +-
 .../workflow-websocket.service.spec.ts             |   60 ++
 .../workflow-websocket.service.ts                  |    4 +-
 .../workspace/types/execute-workflow.interface.ts  |    3 +-
 .../workspace/types/operator-schema.interface.ts   |    4 +-
 .../workspace/types/shared-editing.interface.ts    |  125 ++-
 .../workspace/types/workflow-common.interface.ts   |    2 +-
 .../{CSVFileScan.png => FileLister.png}            |  Bin
 .../{CSVFileScan.png => FileScanOp.png}            |  Bin
 frontend/src/assets/operator_images/PolarChart.png |  Bin 0 -> 133686 bytes
 frontend/src/assets/operator_images/RadarChart.png |  Bin 0 -> 171348 bytes
 frontend/src/assets/operator_images/RadarPlot.png  |  Bin 0 -> 48432 bytes
 .../src/assets/operator_images/SklearnTesting.png  |  Bin 0 -> 843070 bytes
 .../src/assets/operator_images/WindRoseChart.png   |  Bin 0 -> 24191 bytes
 frontend/src/styles.scss                           |    4 +-
 sql/texera_ddl.sql                                 |    5 +-
 sql/{texera_lakefs.sql => texera_lakekeeper.sql}   |    4 +-
 sql/updates/{16.sql => 21.sql}                     |    2 +-
 sql/updates/{18.sql => 22.sql}                     |    7 +-
 .../workflow-compiling-service-config.yaml         |    7 +-
 .../texera/service/WorkflowCompilingService.scala  |   32 +
 323 files changed, 11040 insertions(+), 3277 deletions(-)
 create mode 100644 .github/workflows/automatic-email-notif-on-ddl-change.yml
 delete mode 100644 DISCLAIMER
 create mode 100644 DISCLAIMER-WIP
 create mode 100755 bin/bootstrap-lakekeeper.sh
 copy bin/k8s/{values.yaml => values-development.yaml} (83%)
 delete mode 100644 bin/postgres17-pgroonga.dockerfile
 create mode 100644 bin/single-node/examples/datasets/iris-species/Iris.csv
 create mode 100644 
bin/single-node/examples/datasets/iris-species/description.txt
 create mode 100644 
bin/single-node/examples/datasets/popular-movies-of-imdb/TMDb_updated.csv
 create mode 100644 
bin/single-node/examples/datasets/popular-movies-of-imdb/description.txt
 create mode 100755 bin/single-node/examples/load-examples.sh
 create mode 100644 bin/single-node/examples/workflows/[Example] Data 
Exploration on Movies Dataset.json
 create mode 100644 bin/single-node/examples/workflows/[Example] Machine 
Learning on Iris Dataset.json
 create mode 100644 
common/auth/src/main/scala/org/apache/texera/auth/RequestLoggingFilter.scala
 delete mode 100644 
common/dao/src/main/scala/org/apache/texera/dao/JooqCodeGenerator.scala
 create mode 100644 
common/workflow-operator/src/main/scala/org/apache/texera/amber/operator/sklearn/testing/SklearnTestingOpDesc.scala
 copy 
common/workflow-operator/src/main/scala/org/apache/texera/amber/operator/{sleep/SleepOpDesc.scala
 => source/dataset/FileListerSourceOpDesc.scala} (67%)
 create mode 100644 
common/workflow-operator/src/main/scala/org/apache/texera/amber/operator/source/dataset/FileListerSourceOpExec.scala
 copy 
common/workflow-operator/src/main/scala/org/apache/texera/amber/operator/source/scan/{FileScanSourceOpDesc.scala
 => file/FileScanOpDesc.scala} (66%)
 copy 
common/workflow-operator/src/main/scala/org/apache/texera/amber/operator/{split/SplitOpExec.scala
 => source/scan/file/FileScanOpExec.scala} (58%)
 rename 
common/workflow-operator/src/main/scala/org/apache/texera/amber/operator/source/scan/{
 => file}/FileScanSourceOpDesc.scala (93%)
 copy 
common/workflow-operator/src/main/scala/org/apache/texera/amber/operator/source/{fetcher/URLFetcherOpExec.scala
 => scan/file/FileScanSourceOpExec.scala} (55%)
 rename 
common/workflow-operator/src/main/scala/org/apache/texera/amber/operator/source/scan/{FileScanSourceOpExec.scala
 => file/FileScanUtils.scala} (54%)
 copy 
common/workflow-operator/src/main/scala/org/apache/texera/amber/operator/visualization/{candlestickChart/CandlestickChartOpDesc.scala
 => polarChart/PolarChartOpDesc.scala} (53%)
 copy 
common/workflow-operator/src/main/scala/org/apache/texera/amber/operator/visualization/{rangeSlider/RangeSliderOpDesc.scala
 => radarChart/RadarChartOpDesc.scala} (51%)
 copy 
common/workflow-operator/src/main/scala/org/apache/texera/amber/operator/visualization/{histogram2d/NormalizationType.java
 => radarPlot/RadarPlotLinePattern.java} (71%)
 create mode 100644 
common/workflow-operator/src/main/scala/org/apache/texera/amber/operator/visualization/radarPlot/RadarPlotOpDesc.scala
 rename 
common/workflow-operator/src/main/scala/org/apache/texera/amber/operator/{timeSeriesPlot/TimeSeriesPlot.scala
 => visualization/timeSeriesplot/TimeSeriesOpDesc.scala} (97%)
 rename 
common/workflow-operator/src/main/scala/org/apache/texera/amber/operator/visualization/treeplot/{TreeplotOpDesc.scala
 => TreePlotOpDesc.scala} (98%)
 copy 
common/workflow-operator/src/main/scala/org/apache/texera/amber/operator/visualization/{waterfallChart/WaterfallChartOpDesc.scala
 => windRoseChart/WindRoseChartOpDesc.scala} (61%)
 copy 
common/workflow-operator/src/test/scala/org/apache/texera/amber/operator/{visualization/scatterplot/ScatterPlotOpDescSpec.scala
 => source/dataset/FileListerSourceOpDescSpec.scala} (52%)
 create mode 100644 
common/workflow-operator/src/test/scala/org/apache/texera/amber/operator/source/scan/file/FileScanOpDescSpec.scala
 rename 
common/workflow-operator/src/test/scala/org/apache/texera/amber/operator/source/scan/{text
 => file}/FileScanSourceOpDescSpec.scala (97%)
 rename 
common/workflow-operator/src/test/scala/org/apache/texera/amber/operator/source/scan/{
 => file}/FileScanSourceOpExecSpec.scala (97%)
 create mode 100644 
common/workflow-operator/src/test/scala/org/apache/texera/amber/operator/visualization/wordCloud/WordCloudOpDescSpec.scala
 create mode 100644 
frontend/src/app/common/service/computing-unit/computing-unit-actions/computing-unit-actions.service.ts
 rename frontend/src/app/{workspace/service => 
common/service/computing-unit}/computing-unit-status/computing-unit-status.service.ts
 (94%)
 rename frontend/src/app/{workspace/service => 
common/service/computing-unit}/computing-unit-status/mock-computing-unit-status.service.ts
 (94%)
 rename frontend/src/app/{workspace/service => 
common/service/computing-unit}/workflow-computing-unit/workflow-computing-unit-managing.service.ts
 (98%)
 create mode 100644 
frontend/src/app/common/service/user/registration-request-modal/registration-request-modal.component.html
 copy 
frontend/src/app/{dashboard/component/user/search-bar/search-bar.component.scss 
=> 
common/service/user/registration-request-modal/registration-request-modal.component.scss}
 (83%)
 copy 
frontend/src/app/{dashboard/component/user/files-uploader/conflicting-file-modal-content/conflicting-file-modal-content.component.ts
 => 
common/service/user/registration-request-modal/registration-request-modal.component.ts}
 (52%)
 rename frontend/src/app/{workspace/types => 
common/type}/computing-unit-connection.interface.ts (100%)
 rename 
frontend/src/app/common/type/proto/org/apache/texera/amber/{engine/common => 
core}/virtualidentity.ts (88%)
 rename 
frontend/src/app/common/type/proto/org/apache/texera/amber/{engine/common => 
core}/workflow.ts (62%)
 rename frontend/src/app/{workspace/types => 
common/type}/workflow-computing-unit.ts (100%)
 create mode 100644 frontend/src/app/common/util/computing-unit.util.ts
 create mode 100644 
frontend/src/app/dashboard/component/user/markdown-description/markdown-description.component.html
 create mode 100644 
frontend/src/app/dashboard/component/user/markdown-description/markdown-description.component.scss
 create mode 100644 
frontend/src/app/dashboard/component/user/markdown-description/markdown-description.component.ts
 create mode 100644 
frontend/src/app/dashboard/component/user/user-computing-unit/user-computing-unit-list-item/user-computing-unit-list-item.component.html
 copy 
frontend/src/app/dashboard/component/user/{list-item/list-item.component.scss 
=> 
user-computing-unit/user-computing-unit-list-item/user-computing-unit-list-item.component.scss}
 (52%)
 create mode 100644 
frontend/src/app/dashboard/component/user/user-computing-unit/user-computing-unit-list-item/user-computing-unit-list-item.component.ts
 create mode 100644 
frontend/src/app/dashboard/component/user/user-computing-unit/user-computing-unit.component.html
 create mode 100644 
frontend/src/app/dashboard/component/user/user-computing-unit/user-computing-unit.component.scss
 create mode 100644 
frontend/src/app/dashboard/component/user/user-computing-unit/user-computing-unit.component.spec.ts
 create mode 100644 
frontend/src/app/dashboard/component/user/user-computing-unit/user-computing-unit.component.ts
 copy 
frontend/src/app/{common/formly/collab-wrapper/collab-wrapper/collab-wrapper.component.html
 => 
workspace/component/dataset-file-selector/dataset-file-selector.component.html} 
(70%)
 rename 
frontend/src/app/workspace/component/{input-autocomplete/input-autocomplete.component.ts
 => dataset-file-selector/dataset-file-selector.component.ts} (64%)
 create mode 100644 
frontend/src/app/workspace/component/dataset-selection-modal/dataset-selection-modal.component.html
 copy 
frontend/src/app/{dashboard/component/user/user-workflow/ngbd-modal-workflow-executions/workflow-runtime-statistics/workflow-runtime-statistics.component.scss
 => 
workspace/component/dataset-selection-modal/dataset-selection-modal.component.scss}
 (84%)
 create mode 100644 
frontend/src/app/workspace/component/dataset-selection-modal/dataset-selection-modal.component.ts
 copy 
frontend/src/app/workspace/component/{result-panel/result-panel-modal.component.html
 => dataset-version-selector/dataset-version-selector.component.html} (78%)
 create mode 100644 
frontend/src/app/workspace/component/dataset-version-selector/dataset-version-selector.component.ts
 delete mode 100644 
frontend/src/app/workspace/component/file-selection/file-selection.component.html
 delete mode 100644 
frontend/src/app/workspace/component/file-selection/file-selection.component.scss
 delete mode 100644 
frontend/src/app/workspace/component/file-selection/file-selection.component.ts
 delete mode 100644 
frontend/src/app/workspace/component/input-autocomplete/input-autocomplete.component.html
 delete mode 100644 
frontend/src/app/workspace/component/input-autocomplete/input-autocomplete.component.scss
 delete mode 100644 
frontend/src/app/workspace/component/input-autocomplete/input-autocomplete.component.spec.ts
 copy frontend/src/assets/operator_images/{CSVFileScan.png => FileLister.png} 
(100%)
 mode change 100755 => 100644
 copy frontend/src/assets/operator_images/{CSVFileScan.png => FileScanOp.png} 
(100%)
 mode change 100755 => 100644
 create mode 100644 frontend/src/assets/operator_images/PolarChart.png
 create mode 100644 frontend/src/assets/operator_images/RadarChart.png
 create mode 100644 frontend/src/assets/operator_images/RadarPlot.png
 create mode 100644 frontend/src/assets/operator_images/SklearnTesting.png
 create mode 100644 frontend/src/assets/operator_images/WindRoseChart.png
 copy sql/{texera_lakefs.sql => texera_lakekeeper.sql} (91%)
 copy sql/updates/{16.sql => 21.sql} (93%)
 copy sql/updates/{18.sql => 22.sql} (83%)


Reply via email to