Skip to content

Commit

Permalink
Release 0.2.8 (#1147)
Browse files Browse the repository at this point in the history
Co-authored-by: Vikram Sreekanti <[email protected]>
Co-authored-by: Ubuntu <[email protected]>
Co-authored-by: Eunice Chan <[email protected]>
  • Loading branch information
4 people authored Mar 29, 2023
1 parent 63c33f4 commit 931dd65
Show file tree
Hide file tree
Showing 31 changed files with 90 additions and 38 deletions.
32 changes: 32 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,37 @@
# Changelog

## 0.2.8
Released on March 29, 2023.

### Key Features

### Enhancements
* Extends Aqueduct's parameter support to allow parameters to be `None` *if*
there is a default value for the parameter in the function definition.
* Tweaks the design of the workflow details page to reduce the number of shades
of blue.
* Updates SQL query parametrization scheme to use `$1`, `$2`, etc. as parameter
placeholders rather than the previous `{ param }` syntax. This allows a
paramter to be reused multiple times within the same query and is similar
to how traditional RDBMS interfaces work.
* Adds context about the execution configuration of an operator to the workflow
details page. Now, each operator will show the logo of the engine on which
its running.

### Bugfixes
* Fixes bug where the metric history graph's X-axis would not reflect
timescales; all data points would be evenly spaced out rather than
reflecting the amount of time between each point.
* Fixes bug where cross-environment Python requirements gathering would lead to
erroneous installation. Currently, Aqueduct only supports explicit
requirements specification.
* Fixes bug where certain workflow failures would leave unfinished operators in
an infinitely-pending state; now, nodes are correctly marked as canceled.
* Fixes bug where retrieving a non-existent filepath from S3 would return
succesfully but with empty data; now, a detailed error message is shown
instead.
* Fixes bug where attempting to capture a system metric would thrown an error.

## 0.2.7
Released on March 22, 2023.

Expand Down
16 changes: 8 additions & 8 deletions manual_qa_tests/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,21 +19,21 @@ To run with more flexibility, configure the following commandline flags:

## Checklist
* **Workflows** Page:
* There should be **5** workflows. **4** Succeeded and **1** Failed if using `--example-notebooks`
* There should be **6** workflows. **3** Succeeded, **2** Failed, and **1** Registered if **not** using `--example-notebooks`
* There should be **15** workflows. **10** Succeeded, **2** Warning, **2** Failed, and **1** Registered if using `-example-notebooks`
* There should be **9** workflows. **4** Succeeded, **2** Warning, **2** Failed, and **1** Registered if **not** using `-example-notebooks`
* **Notifications**: There should be **2** notifications for failed workflow.
* **Workflow Details** Page: Each page should reflect the **workflow description**. Pay attention to any noted **sidesheets** behaviors in the description.
* **Integration** Page:
* There should be **11** *Data* integrations, **5** *Compute* integrations, and **2** *Notifications* integrations.
* If you are not using additional integration, `aqueduct_demo` should be the only available one.
* There should be **1** *Cloud* integration, **11** *Data* integrations, **6** *Compute* integrations, and **2** *Notifications* integrations.
* If you are not using additional integration, `aqueduct_demo` should be the only available one. If you have passed in slack arguments to `initialize.py`, there should be two.
* **Integration Details** Page:
* In the **Workflows** section of the `aqueduct_demo` page:
* There should be **10** workflows if using `--example-notebooks`
* Ther should be **4** workflows if **not** using `--example-notebooks`
* There should be **13** workflows if using `--example-notebooks`
* There should be **7** workflows if **not** using `--example-notebooks`
* If you are using `aqueduct_demo`, there should be **8** tables in **Data** section.
* **Data** Page: There should be **5** data rows available.
* **Data** Page: There should be **7** data rows available.
* **Slack channel**:
* There should be **16** new notifications.
* If Slack flags are set, there should be **15** new notifications.
* Each notification should have the following aspects:
* A title including the workflow's name and status
* Workflow name
Expand Down
2 changes: 1 addition & 1 deletion sdk/setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@

setuptools.setup(
name="aqueduct-sdk",
version="0.2.7",
version="0.2.8",
author="Aqueduct, Inc.",
author_email="[email protected]",
description="Python SDK for the Aqueduct prediction infrastructure",
Expand Down
2 changes: 1 addition & 1 deletion src/dockerfiles/Makefile
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
.DEFAULT_GOAL = all
VERSION = 0.2.7
VERSION = 0.2.8

# By default, turn off the Makefile practice of printing each command before
# you run it.
Expand Down
2 changes: 1 addition & 1 deletion src/dockerfiles/connectors/athena.dockerfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
FROM aqueducthq/base_connector:0.2.7
FROM aqueducthq/base_connector:0.2.8

MAINTAINER Aqueduct <[email protected]> version: 0.1

Expand Down
2 changes: 1 addition & 1 deletion src/dockerfiles/connectors/bigquery.dockerfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
FROM aqueducthq/base_connector:0.2.7
FROM aqueducthq/base_connector:0.2.8

MAINTAINER Aqueduct <[email protected]> version: 0.1

Expand Down
2 changes: 1 addition & 1 deletion src/dockerfiles/connectors/mysql.dockerfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
FROM aqueducthq/base_connector:0.2.7
FROM aqueducthq/base_connector:0.2.8

MAINTAINER Aqueduct <[email protected]> version: 0.1

Expand Down
2 changes: 1 addition & 1 deletion src/dockerfiles/connectors/postgres.dockerfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
FROM aqueducthq/base_connector:0.2.7
FROM aqueducthq/base_connector:0.2.8

MAINTAINER Aqueduct <[email protected]> version: 0.1

Expand Down
2 changes: 1 addition & 1 deletion src/dockerfiles/connectors/s3.dockerfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
FROM aqueducthq/base_connector:0.2.7
FROM aqueducthq/base_connector:0.2.8

MAINTAINER Aqueduct <[email protected]> version: 0.1

Expand Down
2 changes: 1 addition & 1 deletion src/dockerfiles/connectors/snowflake.dockerfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
FROM aqueducthq/base_connector:0.2.7
FROM aqueducthq/base_connector:0.2.8

MAINTAINER Aqueduct <[email protected]> version: 0.1

Expand Down
2 changes: 1 addition & 1 deletion src/dockerfiles/connectors/sqlserver.dockerfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
FROM aqueducthq/base_connector:0.2.7
FROM aqueducthq/base_connector:0.2.8

MAINTAINER Aqueduct <[email protected]> version: 0.1

Expand Down
2 changes: 1 addition & 1 deletion src/dockerfiles/function/function310.dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ pyarrow==7.0.0 \
boto3==1.18.0 \
pydantic==1.9.0 \
scikit_learn==1.0.2 \
aqueduct-ml==0.2.7
aqueduct-ml==0.2.8

ENV PYTHONUNBUFFERED 1

Expand Down
2 changes: 1 addition & 1 deletion src/dockerfiles/function/function37.dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ boto3==1.18.0 \
pydantic==1.9.0 \
scikit_learn==1.0.2 \
typing_extensions==4.3.0 \
aqueduct-ml==0.2.7
aqueduct-ml==0.2.8


ENV PYTHONUNBUFFERED 1
Expand Down
2 changes: 1 addition & 1 deletion src/dockerfiles/function/function38.dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ pyarrow==7.0.0 \
boto3==1.18.0 \
pydantic==1.9.0 \
scikit_learn==1.0.2 \
aqueduct-ml==0.2.7
aqueduct-ml==0.2.8

ENV PYTHONUNBUFFERED 1

Expand Down
2 changes: 1 addition & 1 deletion src/dockerfiles/function/function39.dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ pyarrow==7.0.0 \
boto3==1.18.0 \
pydantic==1.9.0 \
scikit_learn==1.0.2 \
aqueduct-ml==0.2.7
aqueduct-ml==0.2.8

ENV PYTHONUNBUFFERED 1

Expand Down
2 changes: 1 addition & 1 deletion src/dockerfiles/gpu/py310_env.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,4 +14,4 @@ dependencies:
- pip:
- scikit_learn==1.0.2
- typing_extensions==4.3.0
- aqueduct-ml==0.2.7
- aqueduct-ml==0.2.8
2 changes: 1 addition & 1 deletion src/dockerfiles/gpu/py37_env.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,4 +14,4 @@ dependencies:
- pip:
- scikit_learn==1.0.2
- typing_extensions==4.3.0
- aqueduct-ml==0.2.7
- aqueduct-ml==0.2.8
2 changes: 1 addition & 1 deletion src/dockerfiles/gpu/py38_env.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,4 +14,4 @@ dependencies:
- pip:
- scikit_learn==1.0.2
- typing_extensions==4.3.0
- aqueduct-ml==0.2.7
- aqueduct-ml==0.2.8
2 changes: 1 addition & 1 deletion src/dockerfiles/gpu/py39_env.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,4 +14,4 @@ dependencies:
- pip:
- scikit_learn==1.0.2
- typing_extensions==4.3.0
- aqueduct-ml==0.2.7
- aqueduct-ml==0.2.8
2 changes: 1 addition & 1 deletion src/dockerfiles/lambda/function/requirements-37.txt
Original file line number Diff line number Diff line change
Expand Up @@ -7,4 +7,4 @@ boto3==1.18.0
pydantic==1.9.0
scikit_learn==1.0.2
typing_extensions==4.3.0
aqueduct-ml==0.2.7
aqueduct-ml==0.2.8
2 changes: 1 addition & 1 deletion src/dockerfiles/lambda/function/requirements.txt
Original file line number Diff line number Diff line change
Expand Up @@ -6,4 +6,4 @@ pyarrow==7.0.0
boto3==1.18.0
pydantic==1.9.0
scikit_learn==1.0.2
aqueduct-ml==0.2.7
aqueduct-ml==0.2.8
2 changes: 1 addition & 1 deletion src/dockerfiles/lambda/requirements.txt
Original file line number Diff line number Diff line change
Expand Up @@ -6,4 +6,4 @@ pydantic==1.9.0
pyyaml
SQLAlchemy==1.4.30
typing_extensions==4.3.0
aqueduct-ml==0.2.7
aqueduct-ml==0.2.8
2 changes: 1 addition & 1 deletion src/golang/lib/constants.go
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
package lib

const ServerVersionNumber = "0.2.7"
const ServerVersionNumber = "0.2.8"
2 changes: 1 addition & 1 deletion src/python/bin/aqueduct
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ base_directory = os.path.join(os.environ["HOME"], ".aqueduct")
server_directory = os.path.join(os.environ["HOME"], ".aqueduct", "server")
ui_directory = os.path.join(os.environ["HOME"], ".aqueduct", "ui")

package_version = "0.2.7"
package_version = "0.2.8"
aws_credentials_path = os.path.join(os.environ["HOME"], ".aws", "credentials")

default_server_port = 8080
Expand Down
2 changes: 1 addition & 1 deletion src/python/requirements.txt
Original file line number Diff line number Diff line change
Expand Up @@ -11,4 +11,4 @@ typing_extensions>=4.3.0,<=4.4.0
Pillow<=9.4.0
packaging<=23.0
pymongo<=4.3.3
aqueduct-sdk==0.2.7
aqueduct-sdk==0.2.8
2 changes: 1 addition & 1 deletion src/python/setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@

setup(
name="aqueduct-ml",
version="0.2.7",
version="0.2.8",
install_requires=install_requires,
scripts=["bin/aqueduct"],
packages=find_packages(),
Expand Down
4 changes: 2 additions & 2 deletions src/ui/app/package.json
Original file line number Diff line number Diff line change
@@ -1,15 +1,15 @@
{
"name": "@aqueducthq/ui",
"author": "Aqueduct, Inc. <[email protected]>",
"version": "0.2.7",
"version": "0.2.8",
"scripts": {
"start": "parcel --no-cache index.html",
"build": "parcel build --public-url /dist --dist-dir dist/default index.html",
"lint": "eslint '*/**/*.{js,ts,tsx}' --format table",
"lint:fix": "eslint '*/**/*.{js,ts,tsx}' --format table --fix"
},
"dependencies": {
"@aqueducthq/common": "0.2.7",
"@aqueducthq/common": "0.2.8",
"@emotion/react": "^11.10.5",
"@emotion/styled": "^11.10.5",
"@fortawesome/fontawesome-svg-core": "^6.2.1",
Expand Down
4 changes: 2 additions & 2 deletions src/ui/common/package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion src/ui/common/package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "@aqueducthq/common",
"author": "Aqueduct <[email protected]>",
"version": "0.2.7",
"version": "0.2.8",
"main": "dist/index.js",
"types": "dist/index.d.ts",
"alias": {
Expand Down
20 changes: 20 additions & 0 deletions src/ui/common/src/components/workflows/ReactFlowCanvas.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,26 @@ const ReactFlowCanvas: React.FC<ReactFlowCanvasProps> = ({
);

const { edges, nodes } = dagPositionState.result ?? { edges: [], nodes: [] };
if (edges.length === 0 || nodes.length === 0) {
// The DAG position state is still loading.
return null;
}

// This is a bit of a tricky check; when we switch between workflow versions, the selected DAG
// does not load in sync with the DAG positioning. As a result, we need to ensure
// that we only render the graph once the two sets of Redux state are in sync before
// proceeding; otherwise, our node IDs will be mismatched. Here, we simply check to see
// if the UUIDs for one of the nodes exists in the selected DAG. If it doesn't, that
// means the state has not synced yet, so we return null and wait for it to sync.
const testNode = nodes[0];
if (
(testNode.data.nodeType === ReactflowNodeType.Operator &&
!selectedDag.operators[testNode.id]) ||
(testNode.data.nodeType === ReactflowNodeType.Artifact &&
!selectedDag.artifacts[testNode.id])
) {
return null;
}

const defaultViewport = { x: 0, y: 0, zoom: 1 };

Expand Down
2 changes: 1 addition & 1 deletion src/ui/common/src/components/workflows/workflowHeader.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -175,7 +175,7 @@ const WorkflowHeader: React.FC<Props> = ({ workflowDag }) => {
<Box display="flex" flexDirection="row">
{engines.map((engine) => (
<Box ml={1} key={engine}>
<ResourceItem engine={engine} />
<ResourceItem resource={engine} />
</Box>
))}
</Box>
Expand Down

0 comments on commit 931dd65

Please sign in to comment.