question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

question: what is unified cli input?

See original GitHub issue

Hiya!

I am excited to see support for deps.exe (as clojure.exe) on Windows. Thanks so much for adding that as a feature!

The current README suggests selecting via:

  cmd-exe-workaround: 'latest' # Replaces `clojure` with `deps.clj` on Windows

But the source code sez cmd-exe-workaround is deprecated https://github.com/DeLaGuardo/setup-clojure/blob/3199aaaa9cf140bcb7a5f36a72d1aa42658ee991/action.yml#L17-L24

But I don’t know what a “unified cli input” is.

Let’s say I have a matrix build for macOS, Windows, and Linux, how should I select deps.exe (as clojure.exe) for windows?

Issue Analytics

  • State:open
  • Created a year ago
  • Comments:23 (7 by maintainers)

github_iconTop GitHub Comments

1reaction
borkdudecommented, Oct 13, 2022

Well, I think that is mostly the case since deps.clj as a binary it solves a problem on Windows mostly.

1reaction
lreadcommented, Aug 9, 2022

The exit code for PowerShell launches directly from GitHub Actions is handled properly, but if you call clojure yourself from a script you have to be aware of this:

TIL, (I am powershell naive, so maybe obvious to most of you): If you run powershell -command my-command the exit code from my-command is not returned to the caller. For that you need tag on an exit $LASTEXITCODE, like: powershell -command "my-command;exit $LASTEXITCODE" Kind of important if you are wanting to know about little things like test failures.

I don’t have specific examples of escaping woes, but I’ve felt them.

I do see an old slack post from me about me about trying to install clojure core team cli:

For what it is worth, I had a pleasant experience experimenting with @borkdude’s deps.clj (using its deps.exe) when setting up testing of rewrite-cljc on GitHub Actions on Windows. I was even bold enough to rename deps.exe to clojure.exe. I did initially try installing the official alpha Clojure PowerShell module, but GitHub Actions did not see the module, so I gave up, admittedly, rather quickly. Using a renamed deps.clj allowed me the luxury of calling clojure easily from any shell.

I think you’ve solved the installation part of this problem with your setup-clojure Action, but not the easily “runnable from any shell” part.

If you want a blurb for the README, maybe something like?:

cmd-exe-workaround

Some people bump into challenges using the clojure core team alpha cli on Windows because it is runnable only from Powershell. Launching a Powershell module from a script can make such things as argument escaping and exit code capturing extra tricky. For these people, we offer cmd-exe-workaround to instead install borkdude/deps.clj’s deps.exe as clojure.exe when on Windows.

Read more comments on GitHub >

github_iconTop Results From Across the Web

Program Usage
Commandline options; Selecting specific tracks from an input file; URLs and paths ... The Unified Packager is a command-line driven program.
Read more >
What is a command-line interface (CLI)?
A command-line interface (CLI) is a text-based user interface (UI) used to run programs, manage computer files and interact with the computer. Command-line ......
Read more >
Configure Read only Command Line Interface (CLI) for ...
This document describes the new Read only CLI feature introduced in Cisco Unified Communications Manager (CUCM) version 11.5.
Read more >
gcloud CLI overview | Google Cloud CLI Documentation
The --quiet option (also, -q ) for the gcloud CLI disables all interactive prompts when running gcloud CLI commands and is useful for...
Read more >
platformsh/platformsh-cli: The unified tool for managing ...
The Platform.sh CLI is the official command-line interface for Platform.sh. Use this tool to interact with your Platform.sh projects, and to build them ......
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found