Sign in to confirm you’re not a bot
This helps protect our community. Learn more
OSS Power-Ups: CliWrap
CLI is quite possibly one of the best things to have happened to the world of computing. Using a ubiquitous interface that lends itself extremely well for automation, we can create executables that allow us to share code across all operating systems and all programming languages – essentially the perfect library format! However, interacting with external command line processes is not a simple task. Moreover, it's a task that the standard Process class in .NET is particularly poorly equipped for. Not only is the API it provides quite difficult to work with, but it's also really easy to get yourself into one of the dozen possible deadlocking scenarios. Enter CliWrap, a library for working with command-line executables in a functional manner. It provides a convenient model for launching external processes, redirecting inputs and outputs, awaiting completion, and handling cancellation. At its core, it's based on a very robust piping model that lets you create intricate execution setups with minimal effort. Back to the roots of command-line invocations! 00:00 - Introduction 04:30 - Intro To CLI Wrap 15:03 - Code Samples 25:30 - WithArguments Items 34:00 - Command.ListenAsync 40:00 - PipeTarget 55:00 - Pipe (|) Operator 1:00:08 - PipeSource, Input Pipes, & Output Pipes 1:12:00 - Questions 1:18:01 - Wrap Up Speaker: Oleksii Holub Bio: Oleksii Holub is a software developer, primarily experienced in cloud & web technologies. He's the maintainer of multiple popular open-source projects, including CliWrap, DiscordChatExporter, YoutubeDownloaded, and LightBulb. He's also a vivid tech blogger, frequent conference speaker, Microsoft MVP, and GitHub Star. You can reach him on Twitter through @tyrrrz.   / tyrrrz   https://github.com/Tyrrrz https://github.com/Tyrrrz/CliWrap

Follow along using the transcript.

JetBrains

209K subscribers