You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@openserverless.apache.org by "miki3421 (via GitHub)" <gi...@apache.org> on 2026/07/10 20:36:22 UTC

[I] CLI release builds misidentify embedded Task version and reject schema v3 [openserverless]

miki3421 opened a new issue, #209:
URL: https://github.com/apache/openserverless/issues/209

   ## Summary
   
   Tagged Apache OpenServerless CLI builds fail their Bats integration tests because the embedded Task engine reports the CLI release version as its own version. Valid Taskfiles using schema version 3 are then rejected whenever the CLI version is lower than 3.
   
   The issue is tracked here because Issues are disabled in both apache/openserverless-cli and sciabarracom/task.
   
   ## Affected components
   
   - apache/openserverless-cli release workflow
   - github.com/sciabarracom/task/v3 v3.38.11
   - Tagged CLI versions including 0.9.1-2607102200.dev and 0.1.1-2607102223.dev
   
   ## Reproduction
   
   1. Build the CLI from a semantic version tag.
   2. Run task tests.
   3. The Go unit tests pass.
   4. The Bats test tests/vars.bats fails when ops invokes a valid opsfile with version: 3.
   
   Observed errors:
   
       Schema version (3.0.0) is greater than the current version of Task (0.9.1-2607102200.dev)
   
   Changing the CLI base version to 0.1.1 produces the same result:
   
       Schema version (3.0.0) is greater than the current version of Task (0.1.1-2607102223.dev)
   
   ## Root cause
   
   The embedded Task version package reads debug.ReadBuildInfo().Main.Version. When Task runs as a library inside ops, the main module is github.com/apache/openserverless-cli, not github.com/sciabarracom/task/v3.
   
   The schema check therefore compares Taskfile schema 3.0.0 against the host CLI version. Local source builds often hide the problem because the main version is reported as (devel), which is not parseable as semver and causes the current-version comparison to be skipped.
   
   ## Expected behavior
   
   The embedded Task engine should identify itself as v3.38.11 and accept Taskfile schema version 3 independently of the host CLI release version.
   
   ## Proposed fix
   
   1. Update sciabarracom/task so its version resolver uses its own entry from debug.BuildInfo.Deps when embedded, while retaining debug.BuildInfo.Main when Task is the main program. Alternatively, expose an explicit embedded-version override.
   2. Add a regression test for an embedded host application whose semantic version is lower than 3.
   3. Publish a new sciabarracom/task module version.
   4. Update the CLI go.mod and rerun the release workflow.
   
   Changing the CLI version or Taskfile schema is not a valid fix because the two versions describe different components.
   
   ## CI evidence
   
   - CLI 0.9.1 failure: https://github.com/apache/openserverless-cli/actions/runs/29120113681
   - CLI 0.1.1 confirmation: https://github.com/apache/openserverless-cli/actions/runs/29121604038
   
   In both runs, dependency license checks and Go unit tests pass; the release is blocked only when the embedded Task schema check runs during Bats integration tests.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: dev-unsubscribe@openserverless.apache.org.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [I] CLI release builds misidentify embedded Task version and reject schema v3 [openserverless]

Posted by "miki3421 (via GitHub)" <gi...@apache.org>.
miki3421 commented on issue #209:
URL: https://github.com/apache/openserverless/issues/209#issuecomment-4943964627

   The definitive fix is now split into the required reviewable PR chain:
   
   - https://github.com/sciabarracom/task/pull/1 fixes embedded Task version detection and includes regression tests.
   - https://github.com/apache/openserverless-cli/pull/34 restores the original `task tests` release step and validates the fixed dependency.
   - https://github.com/apache/openserverless/pull/208 stages the updated subrepo pointers.
   
   The CLI PR remains draft until the Task fix is merged and published as an official tag; its temporary exact-commit fork replacement will then be removed before merge.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: dev-unsubscribe@openserverless.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [I] CLI release builds misidentify embedded Task version and reject schema v3 [openserverless]

Posted by "miki3421 (via GitHub)" <gi...@apache.org>.
miki3421 closed issue #209: CLI release builds misidentify embedded Task version and reject schema v3
URL: https://github.com/apache/openserverless/issues/209


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: dev-unsubscribe@openserverless.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org