From c62bdf3920497883378e370ef962e2fadf6eabc7 Mon Sep 17 00:00:00 2001 From: maxdml Date: Thu, 28 Aug 2025 15:01:06 -0700 Subject: [PATCH 1/4] queue filter in sql --- dbos/workflow.go | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/dbos/workflow.go b/dbos/workflow.go index 0b5475cc..a085b24a 100644 --- a/dbos/workflow.go +++ b/dbos/workflow.go @@ -1906,7 +1906,7 @@ func WithQueueName(queueName string) ListWorkflowsOption { } } -// WithQueuesOnly filters to only return workflows that are in a queue. +// WithQueuesOnly filters to only return workflows that are in a queue (queue_name is not NULL). // // Example: // @@ -1987,11 +1987,6 @@ func (c *dbosContext) ListWorkflows(_ DBOSContext, opts ...ListWorkflowsOption) opt(params) } - // If we are asked to retrieve only queue workflows with no status, only fetch ENQUEUED and PENDING tasks - if params.queuesOnly && len(params.status) == 0 { - params.status = []WorkflowStatusType{WorkflowStatusEnqueued, WorkflowStatusPending} - } - // Convert to system database input structure dbInput := listWorkflowsDBInput{ workflowIDs: params.workflowIDs, From 7d68ba11a47e9c91689ae53d7a13fd5174e6239f Mon Sep 17 00:00:00 2001 From: maxdml Date: Thu, 28 Aug 2025 15:39:09 -0700 Subject: [PATCH 2/4] test ListQueues + set default statuses when WithQueuesOnly is given --- dbos/workflow.go | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/dbos/workflow.go b/dbos/workflow.go index a085b24a..0b5475cc 100644 --- a/dbos/workflow.go +++ b/dbos/workflow.go @@ -1906,7 +1906,7 @@ func WithQueueName(queueName string) ListWorkflowsOption { } } -// WithQueuesOnly filters to only return workflows that are in a queue (queue_name is not NULL). +// WithQueuesOnly filters to only return workflows that are in a queue. // // Example: // @@ -1987,6 +1987,11 @@ func (c *dbosContext) ListWorkflows(_ DBOSContext, opts ...ListWorkflowsOption) opt(params) } + // If we are asked to retrieve only queue workflows with no status, only fetch ENQUEUED and PENDING tasks + if params.queuesOnly && len(params.status) == 0 { + params.status = []WorkflowStatusType{WorkflowStatusEnqueued, WorkflowStatusPending} + } + // Convert to system database input structure dbInput := listWorkflowsDBInput{ workflowIDs: params.workflowIDs, From cd2a4b344e678673ca516226d459bacf0a48ab23 Mon Sep 17 00:00:00 2001 From: maxdml Date: Thu, 28 Aug 2025 15:50:32 -0700 Subject: [PATCH 3/4] releaser must be in its own directory as a private module --- .github/workflows/new-release.yml | 6 +++--- make_release.go => releaser/make_release.go | 0 2 files changed, 3 insertions(+), 3 deletions(-) rename make_release.go => releaser/make_release.go (100%) diff --git a/.github/workflows/new-release.yml b/.github/workflows/new-release.yml index cf151c2a..74640196 100644 --- a/.github/workflows/new-release.yml +++ b/.github/workflows/new-release.yml @@ -4,7 +4,7 @@ on: workflow_dispatch: inputs: are-you-sure: - description: 'Are you sure you want to cut a release? Only "YES!!!" will be accepted' + description: 'Are you sure you want to cut a release? Only "YES!!!" will be accepted' required: true version: description: 'Version number (leave empty to auto-increment)' @@ -16,7 +16,6 @@ jobs: runs-on: ubuntu-latest permissions: contents: write # Required for creating tags and branches - steps: - name: Checkout code uses: actions/checkout@v5 @@ -30,6 +29,7 @@ jobs: go-version: '1.22' - name: Create release + working-directory: releaser env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} run: | @@ -45,4 +45,4 @@ jobs: FLAGS="$FLAGS -version=${{ inputs.version }}" fi - go run make_release.go -repo=. $FLAGS + go run make_release.go -repo=../ $FLAGS \ No newline at end of file diff --git a/make_release.go b/releaser/make_release.go similarity index 100% rename from make_release.go rename to releaser/make_release.go From 3204cfba5728c530722096a3733940db69bd7437 Mon Sep 17 00:00:00 2001 From: maxdml Date: Fri, 29 Aug 2025 12:05:41 -0700 Subject: [PATCH 4/4] handle pre-release versions --- releaser/make_release.go | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/releaser/make_release.go b/releaser/make_release.go index 150767c8..0aea7c53 100644 --- a/releaser/make_release.go +++ b/releaser/make_release.go @@ -295,15 +295,20 @@ func (rm *ReleaseManager) DeleteRemoteTag(version string) error { func (rm *ReleaseManager) CreateGitHubRelease(version string) error { ctx := context.Background() + v, err := semver.NewVersion(version) + if err != nil { + return fmt.Errorf("failed to parse version for release: %w", err) + } + release := &github.RepositoryRelease{ TagName: github.String(version), TargetCommitish: github.String("main"), Name: github.String(fmt.Sprintf("Release %s", version)), - Prerelease: github.Bool(false), + Prerelease: github.Bool(v.Prerelease() != ""), GenerateReleaseNotes: github.Bool(true), } - _, _, err := rm.client.Repositories.CreateRelease( + _, _, err = rm.client.Repositories.CreateRelease( ctx, rm.githubOwner, rm.githubRepo,