From 1d9efd259989a233cfb9bb9d29e19e2d46e813fa Mon Sep 17 00:00:00 2001 From: Garrett Michael Flynn Date: Wed, 3 Apr 2024 11:11:55 -0700 Subject: [PATCH 01/11] Ensure proper rendering of pop-up form in table. Also fix the neuroconv patch for table schema resolution --- schemas/base-metadata.schema.ts | 15 ++++++++++++++- src/renderer/src/stories/InstanceManager.js | 2 -- src/renderer/src/stories/JSONSchemaForm.js | 9 ++++++++- src/renderer/src/stories/JSONSchemaInput.js | 5 ++--- .../pages/guided-mode/data/GuidedMetadata.js | 4 +++- .../src/stories/pages/guided-mode/data/utils.js | 6 ------ src/renderer/src/stories/table/cells/base.ts | 1 - src/renderer/src/stories/table/cells/input.ts | 7 +++++-- 8 files changed, 32 insertions(+), 17 deletions(-) diff --git a/schemas/base-metadata.schema.ts b/schemas/base-metadata.schema.ts index 699a5f44b..5ff238c25 100644 --- a/schemas/base-metadata.schema.ts +++ b/schemas/base-metadata.schema.ts @@ -5,6 +5,7 @@ import { header, replaceRefsWithValue } from '../src/renderer/src/stories/forms/ import baseMetadataSchema from './json/base_metadata_schema.json' assert { type: "json" } import { merge } from '../src/renderer/src/stories/pages/utils' +import { drillSchemaProperties } from '../src/renderer/src/stories/pages/guided-mode/data/utils' const UV_MATH_FORMAT = `µV`; //`µV` const UV_PROPERTIES = ["gain_to_uV", "offset_to_uV"] @@ -71,8 +72,20 @@ export const preprocessMetadataSchema = (schema: any = baseMetadataSchema, globa const copy = replaceRefsWithValue(structuredClone(schema)) - copy.additionalProperties = false + // NEUROCONV PATCH: Correct for incorrect array schema + drillSchemaProperties( + copy, + (_, schema) => { + if (schema.properties && schema.type === "array") { + schema.items = { type: "object", properties: schema.properties, required: schema.required }; + delete schema.properties; + delete schema.required; + } + }, + {} + ); + copy.additionalProperties = false copy.required = Object.keys(copy.properties) // Require all properties at the top level diff --git a/src/renderer/src/stories/InstanceManager.js b/src/renderer/src/stories/InstanceManager.js index 20c1a5ba8..af027d954 100644 --- a/src/renderer/src/stories/InstanceManager.js +++ b/src/renderer/src/stories/InstanceManager.js @@ -223,7 +223,6 @@ export class InstanceManager extends LitElement { // Correct bug where multiple instances are selected updated = () => { - console.log(this); const selected = Array.from(this.shadowRoot.querySelectorAll("[selected]")); if (selected.length > 0) selected.slice(1).forEach((element) => { @@ -376,7 +375,6 @@ export class InstanceManager extends LitElement { this.#items = []; const instances = this.#render(); - console.log(this.#items); const hasMultiple = this.#hasMultiple(); diff --git a/src/renderer/src/stories/JSONSchemaForm.js b/src/renderer/src/stories/JSONSchemaForm.js index 9d4695b80..8f2991440 100644 --- a/src/renderer/src/stories/JSONSchemaForm.js +++ b/src/renderer/src/stories/JSONSchemaForm.js @@ -517,7 +517,9 @@ export class JSONSchemaForm extends LitElement { if (e.message.includes("is not of a type(s)")) { if (resolvedSchema.type === "number") { if (resolvedValue === "NaN") return; - else if (resolvedValue === null) return; + else if (resolvedValue === null){ + if (schema.type !== "array") return // Allow null in non-tables + } else if (isRow) e.message = `${e.message}. ${templateNaNMessage}`; } else if (resolvedSchema.type === "string") { if ("properties" in resolvedSchema) return; // Allow for constructing types from object types @@ -904,6 +906,7 @@ export class JSONSchemaForm extends LitElement { const jsonSchemaErrors = validateArgs.length === 2 ? this.validateSchema(...validateArgs, name) : []; const valid = skipValidation ? true : await this.validateOnChange(name, parent, pathToValidate, value); + if (valid === null) return null; // Skip validation / data change if the value is null const isRequired = this.#isRequired(localPath) || (!input.table && input.required); // Do not trust required status of table validations @@ -1153,6 +1156,7 @@ export class JSONSchemaForm extends LitElement { `; } + // Directly render the interactive property element if (!info.properties) return this.#renderInteractiveElement(name, info, required, path); @@ -1189,6 +1193,7 @@ export class JSONSchemaForm extends LitElement { if (renderableInside.length) { const ignore = getIgnore(this.ignore, name); + const ogContext = this; const nested = (this.forms[name] = new JSONSchemaForm({ identifier: this.identifier, @@ -1329,6 +1334,7 @@ export class JSONSchemaForm extends LitElement { return accordion; }); + if (hasPatternProperties) { const patternProps = Object.entries(schema.patternProperties).map(([key, schema]) => { return this.#renderInteractiveElement( @@ -1351,6 +1357,7 @@ export class JSONSchemaForm extends LitElement { // Render additional properties if (allowAdditionalProperties) { + // NOTE: If no pre-existing additional properties exist, exclude the entire rendering group if (!additionalProps.length) return rendered; diff --git a/src/renderer/src/stories/JSONSchemaInput.js b/src/renderer/src/stories/JSONSchemaInput.js index 76f73bbf9..9949bc611 100644 --- a/src/renderer/src/stories/JSONSchemaInput.js +++ b/src/renderer/src/stories/JSONSchemaInput.js @@ -174,7 +174,6 @@ export function createTable(fullPath, { onUpdate, onThrow, overrides = {} }) { merge(overrides.schema, schemaCopy, { arrays: true }); - console.log(schemaPath, nestedIgnore); const tableMetadata = { keyColumn: tempPropertyKey, @@ -928,12 +927,12 @@ export class JSONSchemaInput extends LitElement { const allowPatternProperties = isPatternProperties(this.pattern); const allowAdditionalProperties = isAdditionalProperties(this.pattern); - // Provide default item types // Provide default item types if (isArray) { const hasItemsRef = "items" in schema && "$ref" in schema.items; if (!("items" in schema)) schema.items = {}; if (!("type" in schema.items) && !hasItemsRef) { + // Guess the type of the first item if (this.value) { const itemToCheck = this.value[0]; @@ -1016,7 +1015,7 @@ export class JSONSchemaInput extends LitElement { }); } - const externalPath = this.form ? [...this.form.base, ...resolvedFullPath] : resolvedFullPath; + const externalPath = this.form?.base ? [...this.form.base, ...resolvedFullPath] : resolvedFullPath; const table = createTable.call(this, externalPath, { onUpdate: updateFunction, diff --git a/src/renderer/src/stories/pages/guided-mode/data/GuidedMetadata.js b/src/renderer/src/stories/pages/guided-mode/data/GuidedMetadata.js index 1e35cf2b0..df5683e99 100644 --- a/src/renderer/src/stories/pages/guided-mode/data/GuidedMetadata.js +++ b/src/renderer/src/stories/pages/guided-mode/data/GuidedMetadata.js @@ -260,7 +260,8 @@ export class GuidedMetadataPage extends ManagedPage { if (name !== "Device" && target) { if (name in target) schema.minItems = schema.maxItems = target[name].length; // Skip unresolved deep in pattern properties) - // Remove Ophys requirements if left initially undefined + + // Remove Ophys requirements if left initially undefined else if (parentSchema.required.includes(name)) parentSchema.required = parentSchema.required.filter((n) => n !== name); } @@ -272,6 +273,7 @@ export class GuidedMetadataPage extends ManagedPage { } console.log("schema", structuredClone(schema), structuredClone(results)); + // Create the form const form = new JSONSchemaForm({ identifier: instanceId, diff --git a/src/renderer/src/stories/pages/guided-mode/data/utils.js b/src/renderer/src/stories/pages/guided-mode/data/utils.js index bbc3e0dbe..a2c00b03c 100644 --- a/src/renderer/src/stories/pages/guided-mode/data/utils.js +++ b/src/renderer/src/stories/pages/guided-mode/data/utils.js @@ -88,12 +88,6 @@ export function resolveProperties(properties = {}, target, globals = {}) { for (let name in properties) { const info = properties[name]; - // NEUROCONV PATCH: Correct for incorrect array schema - if (info.properties && info.type === "array") { - info.items = { type: "object", properties: info.properties, required: info.required }; - delete info.properties; - } - const props = info.properties; if (!(name in target)) { diff --git a/src/renderer/src/stories/table/cells/base.ts b/src/renderer/src/stories/table/cells/base.ts index d4f3424be..dfb75862f 100644 --- a/src/renderer/src/stories/table/cells/base.ts +++ b/src/renderer/src/stories/table/cells/base.ts @@ -126,7 +126,6 @@ export class TableCellBase extends LitElement { this.setAttribute('editing', '') const listenForEnter = (ev: KeyboardEvent) => { - console.log(ev) if (ev.key === 'Enter') { ev.preventDefault() diff --git a/src/renderer/src/stories/table/cells/input.ts b/src/renderer/src/stories/table/cells/input.ts index a67486c52..51472ce58 100644 --- a/src/renderer/src/stories/table/cells/input.ts +++ b/src/renderer/src/stories/table/cells/input.ts @@ -44,6 +44,8 @@ export class NestedEditor extends LitElement { const schema = this.schema + console.log('schema', schema, 'data', data) + const container = document.createElement('div') const input = this.#input = new JSONSchemaInput({ schema, value: data, @@ -59,9 +61,10 @@ export class NestedEditor extends LitElement { renderTable: (name, metadata, path) => new SimpleTable(metadata) // NOTE: Would be most ideal to have a reference to the containing input... }) - input.style.padding = '25px 50px' + container.style.padding = '25px' + container.append(input) - modal.append(input) + modal.append(container) modal.open = true } From c993ccbf89126f19f1b945913ff3b6ffa0cdaf70 Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Wed, 3 Apr 2024 18:15:19 +0000 Subject: [PATCH 02/11] [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --- src/renderer/src/stories/JSONSchemaForm.js | 12 +++--------- src/renderer/src/stories/JSONSchemaInput.js | 2 -- .../stories/pages/guided-mode/data/GuidedMetadata.js | 5 ++--- 3 files changed, 5 insertions(+), 14 deletions(-) diff --git a/src/renderer/src/stories/JSONSchemaForm.js b/src/renderer/src/stories/JSONSchemaForm.js index 8f2991440..1af50a2d0 100644 --- a/src/renderer/src/stories/JSONSchemaForm.js +++ b/src/renderer/src/stories/JSONSchemaForm.js @@ -517,10 +517,9 @@ export class JSONSchemaForm extends LitElement { if (e.message.includes("is not of a type(s)")) { if (resolvedSchema.type === "number") { if (resolvedValue === "NaN") return; - else if (resolvedValue === null){ - if (schema.type !== "array") return // Allow null in non-tables - } - else if (isRow) e.message = `${e.message}. ${templateNaNMessage}`; + else if (resolvedValue === null) { + if (schema.type !== "array") return; // Allow null in non-tables + } else if (isRow) e.message = `${e.message}. ${templateNaNMessage}`; } else if (resolvedSchema.type === "string") { if ("properties" in resolvedSchema) return; // Allow for constructing types from object types } @@ -906,7 +905,6 @@ export class JSONSchemaForm extends LitElement { const jsonSchemaErrors = validateArgs.length === 2 ? this.validateSchema(...validateArgs, name) : []; const valid = skipValidation ? true : await this.validateOnChange(name, parent, pathToValidate, value); - if (valid === null) return null; // Skip validation / data change if the value is null const isRequired = this.#isRequired(localPath) || (!input.table && input.required); // Do not trust required status of table validations @@ -1156,7 +1154,6 @@ export class JSONSchemaForm extends LitElement { `; } - // Directly render the interactive property element if (!info.properties) return this.#renderInteractiveElement(name, info, required, path); @@ -1193,7 +1190,6 @@ export class JSONSchemaForm extends LitElement { if (renderableInside.length) { const ignore = getIgnore(this.ignore, name); - const ogContext = this; const nested = (this.forms[name] = new JSONSchemaForm({ identifier: this.identifier, @@ -1334,7 +1330,6 @@ export class JSONSchemaForm extends LitElement { return accordion; }); - if (hasPatternProperties) { const patternProps = Object.entries(schema.patternProperties).map(([key, schema]) => { return this.#renderInteractiveElement( @@ -1357,7 +1352,6 @@ export class JSONSchemaForm extends LitElement { // Render additional properties if (allowAdditionalProperties) { - // NOTE: If no pre-existing additional properties exist, exclude the entire rendering group if (!additionalProps.length) return rendered; diff --git a/src/renderer/src/stories/JSONSchemaInput.js b/src/renderer/src/stories/JSONSchemaInput.js index 9949bc611..4241e833d 100644 --- a/src/renderer/src/stories/JSONSchemaInput.js +++ b/src/renderer/src/stories/JSONSchemaInput.js @@ -174,7 +174,6 @@ export function createTable(fullPath, { onUpdate, onThrow, overrides = {} }) { merge(overrides.schema, schemaCopy, { arrays: true }); - const tableMetadata = { keyColumn: tempPropertyKey, schema: schemaCopy, @@ -932,7 +931,6 @@ export class JSONSchemaInput extends LitElement { const hasItemsRef = "items" in schema && "$ref" in schema.items; if (!("items" in schema)) schema.items = {}; if (!("type" in schema.items) && !hasItemsRef) { - // Guess the type of the first item if (this.value) { const itemToCheck = this.value[0]; diff --git a/src/renderer/src/stories/pages/guided-mode/data/GuidedMetadata.js b/src/renderer/src/stories/pages/guided-mode/data/GuidedMetadata.js index df5683e99..3f806ef08 100644 --- a/src/renderer/src/stories/pages/guided-mode/data/GuidedMetadata.js +++ b/src/renderer/src/stories/pages/guided-mode/data/GuidedMetadata.js @@ -260,8 +260,7 @@ export class GuidedMetadataPage extends ManagedPage { if (name !== "Device" && target) { if (name in target) schema.minItems = schema.maxItems = target[name].length; // Skip unresolved deep in pattern properties) - - // Remove Ophys requirements if left initially undefined + // Remove Ophys requirements if left initially undefined else if (parentSchema.required.includes(name)) parentSchema.required = parentSchema.required.filter((n) => n !== name); } @@ -273,7 +272,7 @@ export class GuidedMetadataPage extends ManagedPage { } console.log("schema", structuredClone(schema), structuredClone(results)); - + // Create the form const form = new JSONSchemaForm({ identifier: instanceId, From 98429f05de56981885f71117229cc9bd5ec0f234 Mon Sep 17 00:00:00 2001 From: Garrett Michael Flynn Date: Wed, 3 Apr 2024 11:34:58 -0700 Subject: [PATCH 03/11] Ensure data provided for empty Ophys tables --- .../pages/guided-mode/data/GuidedMetadata.js | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/src/renderer/src/stories/pages/guided-mode/data/GuidedMetadata.js b/src/renderer/src/stories/pages/guided-mode/data/GuidedMetadata.js index 3f806ef08..6009a3db6 100644 --- a/src/renderer/src/stories/pages/guided-mode/data/GuidedMetadata.js +++ b/src/renderer/src/stories/pages/guided-mode/data/GuidedMetadata.js @@ -245,7 +245,6 @@ export class GuidedMetadataPage extends ManagedPage { const ophys = schema.properties.Ophys; if (ophys) { - // Set most Ophys tables to have minItems / maxItems equal (i.e. no editing possible) drillSchemaProperties( schema, (path, schema, target, isPatternProperties, parentSchema) => { @@ -258,11 +257,18 @@ export class GuidedMetadataPage extends ManagedPage { if (schema.type === "array") { if (name !== "Device" && target) { + + // Set most Ophys tables to have minItems / maxItems equal (i.e. no editing possible) if (name in target) - schema.minItems = schema.maxItems = target[name].length; // Skip unresolved deep in pattern properties) - // Remove Ophys requirements if left initially undefined - else if (parentSchema.required.includes(name)) - parentSchema.required = parentSchema.required.filter((n) => n !== name); + schema.minItems = schema.maxItems = target[name].length; + + + // Remove Ophys property (+ related requirement) if left initially undefined + else { + target[name] = []; // Initialize empty array + if (parentSchema.required.includes(name)) + parentSchema.required = parentSchema.required.filter((n) => n !== name); + } } } } From c4d7cd5f1052fcd614696061d160cc0b9b94b15c Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Wed, 3 Apr 2024 18:35:27 +0000 Subject: [PATCH 04/11] [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --- .../src/stories/pages/guided-mode/data/GuidedMetadata.js | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/src/renderer/src/stories/pages/guided-mode/data/GuidedMetadata.js b/src/renderer/src/stories/pages/guided-mode/data/GuidedMetadata.js index 6009a3db6..32628d879 100644 --- a/src/renderer/src/stories/pages/guided-mode/data/GuidedMetadata.js +++ b/src/renderer/src/stories/pages/guided-mode/data/GuidedMetadata.js @@ -257,12 +257,8 @@ export class GuidedMetadataPage extends ManagedPage { if (schema.type === "array") { if (name !== "Device" && target) { - // Set most Ophys tables to have minItems / maxItems equal (i.e. no editing possible) - if (name in target) - schema.minItems = schema.maxItems = target[name].length; - - + if (name in target) schema.minItems = schema.maxItems = target[name].length; // Remove Ophys property (+ related requirement) if left initially undefined else { target[name] = []; // Initialize empty array From 55199ccb28f5b6dcb31e5f1a3288db7cfa3f1017 Mon Sep 17 00:00:00 2001 From: Garrett Michael Flynn Date: Wed, 3 Apr 2024 11:36:53 -0700 Subject: [PATCH 05/11] Update GuidedMetadata.js --- .../src/stories/pages/guided-mode/data/GuidedMetadata.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/renderer/src/stories/pages/guided-mode/data/GuidedMetadata.js b/src/renderer/src/stories/pages/guided-mode/data/GuidedMetadata.js index 6009a3db6..f22428ebd 100644 --- a/src/renderer/src/stories/pages/guided-mode/data/GuidedMetadata.js +++ b/src/renderer/src/stories/pages/guided-mode/data/GuidedMetadata.js @@ -263,7 +263,7 @@ export class GuidedMetadataPage extends ManagedPage { schema.minItems = schema.maxItems = target[name].length; - // Remove Ophys property (+ related requirement) if left initially undefined + // Remove Ophys property requirement if left initially undefined else { target[name] = []; // Initialize empty array if (parentSchema.required.includes(name)) From 3db02e8a5104de955cfb68063f671642a47bec36 Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Wed, 3 Apr 2024 18:37:49 +0000 Subject: [PATCH 06/11] [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --- .../src/stories/pages/guided-mode/data/GuidedMetadata.js | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/src/renderer/src/stories/pages/guided-mode/data/GuidedMetadata.js b/src/renderer/src/stories/pages/guided-mode/data/GuidedMetadata.js index e940ed412..05b006b59 100644 --- a/src/renderer/src/stories/pages/guided-mode/data/GuidedMetadata.js +++ b/src/renderer/src/stories/pages/guided-mode/data/GuidedMetadata.js @@ -257,12 +257,8 @@ export class GuidedMetadataPage extends ManagedPage { if (schema.type === "array") { if (name !== "Device" && target) { - // Set most Ophys tables to have minItems / maxItems equal (i.e. no editing possible) - if (name in target) - schema.minItems = schema.maxItems = target[name].length; - - + if (name in target) schema.minItems = schema.maxItems = target[name].length; // Remove Ophys property requirement if left initially undefined else { target[name] = []; // Initialize empty array From 32bba9e9fa85fdd9c21e60883cd952c905569305 Mon Sep 17 00:00:00 2001 From: Cody Baker <51133164+CodyCBakerPhD@users.noreply.github.com> Date: Wed, 3 Apr 2024 16:10:35 -0400 Subject: [PATCH 07/11] adjust name on workflow --- .github/workflows/pyflask-build-and-dist-tests.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/pyflask-build-and-dist-tests.yml b/.github/workflows/pyflask-build-and-dist-tests.yml index 105385994..56ef9e891 100644 --- a/.github/workflows/pyflask-build-and-dist-tests.yml +++ b/.github/workflows/pyflask-build-and-dist-tests.yml @@ -15,7 +15,7 @@ env: jobs: testing: - name: PyFlask build and distributable tests on ${{ matrix.os }} + name: ${{ matrix.os }} # Will read on the dashboard as 'Build tests - Flask / {os}' runs-on: ${{ matrix.os }} defaults: run: From 79d70c9fec6a5ca064bba39381ea3c1b06f55b26 Mon Sep 17 00:00:00 2001 From: Cody Baker <51133164+CodyCBakerPhD@users.noreply.github.com> Date: Wed, 3 Apr 2024 16:13:00 -0400 Subject: [PATCH 08/11] adjust workflow name --- .github/workflows/testing.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/testing.yml b/.github/workflows/testing.yml index 7eae1a44c..2ffe28df8 100644 --- a/.github/workflows/testing.yml +++ b/.github/workflows/testing.yml @@ -13,7 +13,7 @@ env: jobs: testing: - name: Dev tests on ${{ matrix.os }} + name: ${{ matrix.os }} # Will read on the dashboard as 'Dev Tests / {os}' runs-on: ${{ matrix.os }} defaults: run: From d029cacfe6cc6f457f5a30dc310ed064098ffad2 Mon Sep 17 00:00:00 2001 From: Cody Baker <51133164+CodyCBakerPhD@users.noreply.github.com> Date: Wed, 3 Apr 2024 16:14:15 -0400 Subject: [PATCH 09/11] adjust workflow name --- .github/workflows/testing-live-services.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/testing-live-services.yml b/.github/workflows/testing-live-services.yml index da1925365..e9503f2d9 100644 --- a/.github/workflows/testing-live-services.yml +++ b/.github/workflows/testing-live-services.yml @@ -13,7 +13,7 @@ env: jobs: testing: - name: Dev tests with live services on ${{ matrix.os }} + name: ${{ matrix.os }} # Will read on the dashboard as 'Dev Tests (Live Services) / {os}' runs-on: ${{ matrix.os }} defaults: run: From 930b0483dd8ea09154aeaa65e31de988034b307c Mon Sep 17 00:00:00 2001 From: Cody Baker <51133164+CodyCBakerPhD@users.noreply.github.com> Date: Wed, 3 Apr 2024 16:23:05 -0400 Subject: [PATCH 10/11] get requirements to recognize name --- .github/workflows/pyflask-build-and-dist-tests.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/pyflask-build-and-dist-tests.yml b/.github/workflows/pyflask-build-and-dist-tests.yml index 56ef9e891..cee21a443 100644 --- a/.github/workflows/pyflask-build-and-dist-tests.yml +++ b/.github/workflows/pyflask-build-and-dist-tests.yml @@ -1,4 +1,4 @@ -name: Build Tests — Flask +name: Build Tests on: schedule: - cron: "0 16 * * *" # Daily at noon EST @@ -15,7 +15,7 @@ env: jobs: testing: - name: ${{ matrix.os }} # Will read on the dashboard as 'Build tests - Flask / {os}' + name: PyInstaller on ${{ matrix.os }} # Will read on the dashboard as 'Build Tests / PyInstaller on {os}' runs-on: ${{ matrix.os }} defaults: run: From 144ef2f1fe32605945eb085abf27064883369c14 Mon Sep 17 00:00:00 2001 From: Cody Baker <51133164+CodyCBakerPhD@users.noreply.github.com> Date: Wed, 3 Apr 2024 16:29:35 -0400 Subject: [PATCH 11/11] Update testing-live-services.yml --- .github/workflows/testing-live-services.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/testing-live-services.yml b/.github/workflows/testing-live-services.yml index e9503f2d9..1169c03d8 100644 --- a/.github/workflows/testing-live-services.yml +++ b/.github/workflows/testing-live-services.yml @@ -1,4 +1,4 @@ -name: Dev Tests (Live Services) +name: Dev Tests (Live) on: schedule: - cron: "0 16 * * *" # Daily at noon EST @@ -13,7 +13,7 @@ env: jobs: testing: - name: ${{ matrix.os }} # Will read on the dashboard as 'Dev Tests (Live Services) / {os}' + name: Services on ${{ matrix.os }} # Will read on the dashboard as 'Dev Tests (Live) / Services on {os}' runs-on: ${{ matrix.os }} defaults: run: