This is an automated email from the ASF dual-hosted git repository. linxinyuan pushed a commit to branch xinyuan-source-port in repository https://gitbox.apache.org/repos/asf/texera.git
commit 2b48db62870b0d5cd3dcdf0d39236d867179d09b Merge: d0b40bdf6c f35612631d Author: Xinyuan Lin <[email protected]> AuthorDate: Sun Apr 12 01:05:14 2026 -0700 Merge branch 'xinyuan-dataset-selector' into xinyuan-source-port .github/workflows/build-and-push-images.yml | 6 +- .github/workflows/github-action-build.yml | 2 +- .../proto/org/apache/texera/amber/core/__init__.py | 2 +- .../apache/texera/web/resource/EmailTemplate.scala | 8 +- .../apache/texera/web/resource/GmailResource.scala | 12 +- bin/bootstrap-lakekeeper.sh | 473 +++++++++++++++++++++ bin/k8s/Chart.yaml | 2 +- common/config/src/main/resources/storage.conf | 7 +- .../org/apache/texera/amber/core/workflow.proto | 3 +- .../core/storage/util/LakeFSStorageClient.scala | 45 +- .../texera/amber/operator/PortDescriptor.scala | 2 +- .../texera/amber/operator/dummy/DummyOpDesc.scala | 4 +- .../metadata/OperatorMetadataGenerator.scala | 16 + .../sklearn/testing/SklearnTestingOpDesc.scala | 3 +- .../dataset/DatasetSelectorSourceOpDesc.scala | 4 +- .../dataset/DatasetSelectorSourceOpExec.scala | 16 +- .../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 | 6 +- .../bulletChart/BulletChartOpDesc.scala | 9 +- .../candlestickChart/CandlestickChartOpDesc.scala | 6 +- .../choroplethMap/ChoroplethMapOpDesc.scala | 6 +- .../ContinuousErrorBandsOpDesc.scala | 6 +- .../contourPlot/ContourPlotOpDesc.scala | 6 +- .../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 +- .../quiverPlot/QuiverPlotOpDesc.scala | 6 +- .../radarChart/RadarChartOpDesc.scala | 6 +- .../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 | 6 +- .../timeSeriesplot/TimeSeriesOpDesc.scala} | 6 +- .../{TreeplotOpDesc.scala => TreePlotOpDesc.scala} | 6 +- .../visualization/urlviz/UrlVizOpDesc.scala | 6 +- .../volcanoPlot/VolcanoPlotOpDesc.scala | 6 +- .../waterfallChart/WaterfallChartOpDesc.scala | 6 +- .../visualization/wordCloud/WordCloudOpDesc.scala | 6 +- .../dataset/DatasetSelectorSourceOpDescSpec.scala | 43 ++ .../service/resource/DatasetResourceSpec.scala | 26 ++ frontend/src/app/app.module.ts | 2 + .../src/app/common/service/gmail/gmail.service.ts | 22 +- .../src/app/common/service/user/auth.service.ts | 2 +- .../proto/org/apache/texera/amber/core/workflow.ts | 18 +- .../src/app/common/util/computing-unit.util.ts | 353 +++++++++++++++ .../dashboard/component/dashboard.component.html | 2 +- .../user-computing-unit-list-item.component.html | 212 +++++++++ .../user-computing-unit-list-item.component.scss | 230 ++++++++++ .../user-computing-unit-list-item.component.ts | 316 ++++++++++++++ .../user-computing-unit.component.html | 203 +++++++++ .../user-computing-unit.component.scss | 70 +++ .../user-computing-unit.component.spec.ts | 27 +- .../user-computing-unit.component.ts | 257 ++++++++++- .../computing-unit-actions.service.ts | 133 ++++++ .../dataset-version-selector.component.ts | 19 +- .../computing-unit-selection.component.ts | 467 ++++---------------- .../operator-property-edit-frame.component.ts | 4 +- .../workflow-editor.component.spec.ts | 4 +- .../workflow-editor/workflow-editor.component.ts | 6 +- .../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 +- .../workspace/types/execute-workflow.interface.ts | 2 +- .../workspace/types/operator-schema.interface.ts | 4 +- .../workspace/types/workflow-common.interface.ts | 2 +- sql/texera_lakekeeper.sql | 21 + 93 files changed, 2713 insertions(+), 663 deletions(-)
