Skip to content

processx

3.9.0Package record

Execute and Control System Processes

86packages dependsuggested by 49
15.4Mdownloads / year
79.0%test coverage
13/13flavors OK

Overview

About
Maintained by Gábor CsárdiCRAN page ↗GitHub ↗Website ↗Issues ↗Declared funders: Ascent Digital Services and Posit Software, PBC

Tools to run system processes in the background. It can check if a background process is running; wait on a background process to finish; get the exit status of finished processes; kill background processes. It can read the standard output and error of the processes, using non-blocking connections. 'processx' can poll a process for standard output or error, with a timeout. It can also poll several processes at once.

Changes in 3.9.0
  • New experimental pipeline R6 class for running two or more processes connected by kernel-level pipes, like a Unix shell pipeline (cmd1 | cmd2 | cmd3). Data flows directly between child processes without passing through R. Works on Unix and Windows (#280).
  • New "Process cleanup" article.
  • New linux_pdeathsig argument to process$new(): on Linux, the child process receives the specified signal when the parent R process exits. Set to TRUE for SIGTERM, or pass an integer signal number directly (e.g. tools::SIGKILL). Ignored on non-Linux platforms (#36).
  • New process$get_end_time() method returns the time when the process exited as a POSIXct, or NULL if it is still running (#218).
  • process$new() and run() now support pty = TRUE on Windows 10 version 1809 and later, in addition to Unix. The Windows implementation uses the ConPTY API (CreatePseudoConsole). The API is loaded dynamically so processx continues to load on older Windows and emits a clear error if pty = TRUE is requested on an unsupported version (#231).
Show all changes in 3.9.0Hide the rest of the changes in 3.9.0
  • run() now supports pty = TRUE and pty_options to run a process in a pseudo-terminal (PTY) on Unix and Windows (see above). This causes the child to see a real terminal, so programs that disable colour output or interactive behaviour when not attached to a terminal will behave as if they are. stderr is merged into stdout (the result's $stderr is always NULL). A file-based stdin argument is also supported: its contents are fed to the process via the PTY master, followed by an EOF signal (#230).
  • process$new() now supports ">>" as a prefix for stdout and stderr file paths (e.g. stdout = ">>output.log"), which appends output to the file instead of truncating it. The file is created if it does not exist (#403).
  • env = "current" now works correctly as a standalone value, inheriting the full environment of the current process (#399).
  • run() and process$new() now support encoding = "binary" to capture binary output. In this mode run() returns stdout and stderr as raw vectors, and process$read_output() / process$read_error() return raw vectors instead of character strings. All bytes are preserved exactly, including null bytes and non-UTF-8 byte sequences (#406).
  • New process$read_output_bytes(), process$read_error_bytes() methods and conn_read_bytes() function for reading raw bytes from a processx connection directly (#406).
  • On Linux, process$get_start_time() now returns the correct wall-clock start time. Previously it was systematically ~0.3–0.5 s too early because the boot time was read from /proc/stat btime, which is truncated to whole seconds. processx now derives the boot time from CLOCK_REALTIME − CLOCK_MONOTONIC, which has nanosecond precision. The ps package is updated in tandem to accept handles created by either the old or the new method, so new ps + old processx continues to work (#394, #402).

From NEWS.md in the release

Install

Health

CRAN checks
13OK
Slowest check: 4.0 min · r-devel-windows-x86_64
Status changes
  • OK13 OK2026-08-05
  • NOTE12 OK, 1 NOTE2026-08-01
  • OK13 OK2026-06-09
  • ERROR12 OK, 1 ERROR2026-06-08
  • OK12 OK2026-04-25
Show 5 earlier changesHide 5 earlier changes
  • WARNING13 OK, 1 WARNING2026-04-24
  • OK14 OK2026-04-09
  • WARNING9 OK, 4 NOTE, 1 WARNING2026-03-21
  • NOTE13 OK, 1 NOTE2026-03-17
  • OK14 OK2026-03-10
Advisories

none known

Documentation

In release 3.9.0
READMEYes · 2,263 wordsVignettes· In the repository, left out of the releaseNEWSYes · 100% structured · mentions 3.9.0Citation fileNoWebsiteYes · pkgdown

The repository also keeps web-only articles.

Help pages
13 (3 internal)includes a package overview page
Examples that run
83%5 run in a plain check (3 of them under a condition) · 1 never run
Exported functions with examples
55%
Documented parameters
69%
Return-value docs
55%
Help pages citing references
0%

Downloads

15.4M
CRAN downloads in the past year
Rank #39 · ~42.2K/day · ~1.3M/mo
Daily download trend is not available in this view yet.
1.1M30 days
3.6M90 days
15.4M1 year
Compare downloads with other packages →
Also on213.2K r2u237 autocran1.4M conda_forge22.8K c2d4u

Repository

247Stars
44Forks
0Open issues
1Open PRs
26Releases
1,440Commits
21Commit identities
r
1,440 commits · Last activity 2026-05-17 · 0% stars, 30d · Default branch at 3.9.0.9000, ahead of CRAN 3.9.0 (checked 2026-10-11)
Responsiveness
How these are sampled
PRs merged (all time)
89%
Median days to close, 50 most recently updated closed issues
41
Median days to close, 50 most recently updated closed PRs
0

Stars over time

2025-10-10 · 2402026-09-13 · 247
PracticesBeta

13 development-tooling and community-health practices detected across 6 families in the upstream repository

Checks run against github.com/r-lib/processx on 2026-10-11.

Continuous integration (2)
GitHub ActionsR CMD check workflow

The R CMD check workflow runs on Linux, macOS and Windows, and on R-devel

Governance and community (1)
Code of conduct
Docs source (4)
README.Rmdpkgdown

GitHub Pages site last deployed 2026-05-17 · The repository has a site deploy workflow

pkgdown site last built 2026-04-22

Coverage (2)
Coverage reporting (Codecov).covrignore
Show all practicesHide 2 practices
Reproducibility and dev environment (1)
Makefile
Lint, format, editor (3)
AirVS CodeRStudio project
How this is detected·Detection ruleset v3 (2026-09-26)

Dependencies

Declared dependencies
11 external dependencies (excludes base and recommended)

Installing processx adds 2 packages (1 with compiled code, 231 KB of source tarballs). Heaviest: ps 168 KB, R6 63 KB.

Depends (1)
R >= 3.4.0
Imports (3)
psR6utils
LinkingTo (0)
none
Enhances (0)
none

People & History

People (4)
Author, Maintainer since 2.0.0 (2017), Copyright holder
Author · added in 3.0.3
Copyright holder, Funder · added in 3.8.4
Copyright holder, Funder · added in 3.8.3
Listed in earlier versions (2)
Mango Solutions
no longer listed · 3.1.0 to 3.8.3
RStudio
no longer listed · 3.1.0 to 3.8.2
Releases (30)

Pick two releases to compare their code metrics.

  • R
    R 4.6.0 released · 2026-04-24
  • 3.9.0Latest
    record
    2026-04-22 · current release · diff ↗ ·
    added 4 exports
    conn_create_proc_pipepair, conn_read_bytes, pipeline, processx_conn_read_bytes
  • 3.8.7
    record
    2026-04-01 · diff ↗
  • R
    R 4.5.0 released · 2025-04-11
  • 3.8.6
    record
    2025-02-21 · diff ↗
  • 3.8.5
    record
    2025-01-08 · diff ↗
  • R
    R 4.4.0 released · 2024-04-24
  • 3.8.4
    record
    2024-03-16 · diff ↗
  • 3.8.3
    record
    2023-12-10 · diff ↗
  • 3.8.2
    record
    2023-06-30 · diff ↗
  • R
    R 4.3.0 released · 2023-04-21
  • 3.8.1
    record
    2023-04-18 · diff ↗
  • 3.8.0
    record
    2022-10-26 · diff ↗
  • 3.7.0
    record
    2022-07-07 · diff ↗ ·
    added 7 exports
    conn_accept_unix_socket, conn_connect_fifo, conn_connect_unix_socket, conn_create_fifo, conn_create_unix_socket, conn_file_name, conn_unix_socket_state
  • 3.6.1
    record
    2022-06-17 · diff ↗
  • 3.6.0
    record
    2022-06-10 · diff ↗
Show 24 earlier eventsHide 24 earlier events
  • R
    R 4.2.0 released · 2022-04-22
  • 3.5.3
    record
    2022-03-25 · diff ↗
  • R
    R 4.1.0 released · 2021-05-18
  • 3.5.2
    record
    2021-04-30 · diff ↗ ·
    added 1 export
    supervisor_kill
  • 3.5.1
    record
    2021-04-04 · diff ↗
  • 3.5.0
    record
    2021-03-23 · diff ↗ ·
    added 1 export
    is_valid_fd
  • 3.4.5
    record
    2020-11-30 · diff ↗
  • 3.4.4
    record
    2020-09-03 · diff ↗
  • 3.4.3
    record
    2020-07-05 · diff ↗
  • R
    R 4.0.0 released · 2020-04-24
  • 3.4.2
    record
    2020-02-09 · diff ↗
  • 3.4.1
    record
    2019-07-18 · diff ↗
  • 3.4.0
    record
    2019-07-03 · diff ↗ ·
    added 1 export
    default_pty_options
  • 3.3.1
    record
    2019-05-08 · diff ↗ ·
    added 1 export
    curl_fds
  • R
    R 3.6.0 released · 2019-04-26
  • 3.3.0
    record
    2019-03-10 · diff ↗
  • 3.2.1
    record
    2018-12-05 · diff ↗ ·
    added 7 exports
    base64_decode, base64_encode, processx_conn_close, processx_conn_is_incomplete, processx_conn_read_chars, processx_conn_read_lines, processx_conn_write
  • 3.2.0
    record
    2018-08-16 · diff ↗ ·
    added 11 exports
    conn_create_fd, conn_create_file, conn_create_pipepair, conn_disable_inheritance, conn_get_fileno, conn_is_incomplete, conn_read_chars, conn_read_lines, conn_set_stderr, conn_set_stdout, conn_write
  • 3.1.0
    record
    2018-05-15 · diff ↗
  • 3.0.3
    record
    2018-05-07 · diff ↗
  • R
    R 3.5.0 released · 2018-04-23
  • 2.0.0.1
    record
    2017-07-30 · diff ↗
  • 2.0.0
    record
    2017-05-30
  • R
    R 3.4.0 released · 2017-04-21

Package metadata

First published
2017-05-30
Total releases
30 / 9 yrs
License
MIT + file LICENSE OSI
Minimum R
≥ 3.4.0
Download size
191 KB

Cite

Cite this package

Run in R for the authors' preferred citation:

citation("processx")
Csárdi, G., Ascent Digital Services, Posit Software, PBC, & Chang, W. (2026). processx: Execute and Control System Processes (Version 3.9.0) [Computer software]. https://doi.org/10.32614/CRAN.package.processx

This package has no citation file, so citation() returns this entry built from DESCRIPTION.

Cite the R Observatory

For a number measured here: a download total, a coverage figure, an archival date.

APA

Balamuta, J. J. (2026). R Observatory: Metrics for processx version 3.9.0 [Data set]. HJJB, LLC. Data release v2026-10-18. https://doi.org/10.5281/zenodo.21843040

From data release v2026-10-18, which the citation names so these numbers can be found later. More on citing and the projects behind them.

Report a problem with this page →

Privacy choices

These apply to this browser and are stored on this device only. Nothing about your choice is sent to us.

Read the privacy policy