davsclaus opened a new pull request, #29933:
URL: https://github.com/apache/camel/pull/29933

   Items 5 and 8 (in part) of 
[CAMEL-26931](https://issues.apache.org/jira/browse/CAMEL-26931).
   
   ## camel eval expression printed the state of its own Camel
   
   `camel eval expression` (and `camel transform`) start a Camel in the 
background for themselves. `Run.runBackgroundProcess` printed "Camel Main: 
transform (state: Running)" on stdout for that Camel too, so `X=$(camel eval 
...)` got two lines. The line is now printed only for an integration a user 
starts in the background, as the `Running ...` and `Log:` lines already were.
   
   On the launcher (main, then this branch):
   
   ```
   $ X=$(camel eval expression --template='${body.toUpperCase()}' 
--body=hello); echo "$X"
   Camel Main: transform (state: Running)        # main
   HELLO
   HELLO                                         # this branch
   ```
   
   ## camel doctor reported Maven as failed on every SNAPSHOT CLI
   
   `Doctor` resolves `org.apache.camel:camel-api:<version>` to check Maven, but 
without the Apache snapshots repository, so a SNAPSHOT CLI with a fresh home 
always got "Artifact resolution failed ... camel-api:jar:4.24.0-SNAPSHOT" and 
exit 1. It now uses the snapshots repository for a SNAPSHOT version, as 
`DependencyCopy` does.
   
   ```
   $ camel doctor
     Maven:       Artifact resolution failed (... camel-api:jar:4.24.0-SNAPSHOT 
(absent) ...)    # main, exit 1
     Maven:       Artifact resolution (OK)                                      
                # this branch, exit 0
   ```
   
   The rest of item 8 (the remote stack trace before the error line of a syntax 
error, `--json`) is not in this PR.
   
   ## Tests
   
   - `RunBackgroundStateLineTest` (new): a process that writes a started status 
for its own pid. An integration says "(state: Running)", and the Camel of 
eval/transform says nothing. Without the fix, the second test fails.
   - `camel doctor` resolves from the network, so it is checked end to end with 
the launcher, as above.
   - `EvalSimpleTest` expected two lines (the state line, then the value) and 
now expects the value alone. `TransformMessageITCase` waited for the state line 
and now checks that it is not printed; it already waits for the output file.
   - `DoctorTest.usesConfiguredMavenEnvironment` expects the snapshots flag for 
a SNAPSHOT version. With `camel.jbang.maven.apache.snapshots=false`, as in that 
test, the downloader has no snapshots repository to add, so that setting still 
wins.
   - camel-jbang-run: 303 pass. camel-jbang-core: 3004 + 259 pass.
   
   _Claude Code on behalf of davsclaus_
   
   🤖 Generated with [Claude Code](https://claude.com/claude-code)
   


-- 
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: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to