tidyverse / tidyverse/ggplot2

bug(install): `element_geom()` causes issues for macos w/ R 4.2

Open
#6,702 11 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug
Dominant language
R
Stars
7k
Forks
2.1k
Avg merge
59m
Merged PRs (30d)
2

Description

When trying to install ggplot2 v4.0.0 from CRAN for rstudio/shinycoreci (hard to make a min reprex), macos w/ R4.2 states:

2025-10-16T05:15:46.1158060Z * installing *source* package ‘ggplot2’ ...
2025-10-16T05:15:46.1762700Z ** package ‘ggplot2’ successfully unpacked and MD5 sums checked
2025-10-16T05:15:46.1875950Z staged installation is only possible with locking
2025-10-16T05:15:46.1876520Z ** using non-staged installation
2025-10-16T05:15:46.1983780Z ** R
2025-10-16T05:15:46.2151380Z ** data
2025-10-16T05:15:46.2384970Z *** moving datasets to lazyload DB
2025-10-16T05:15:46.2546800Z ** inst
2025-10-16T05:15:46.2711360Z ** byte-compile and prepare package for lazy loading
2025-10-16T05:15:46.2872170Z Error : <element_geom> object properties are invalid:
2025-10-16T05:15:46.2981310Z - @ink 
2025-10-16T05:15:46.3089570Z - @paper 
2025-10-16T05:15:46.3195950Z - @accent 
2025-10-16T05:15:46.3310180Z - @colour 
2025-10-16T05:15:46.3420000Z - @fill 

I see that element_geom() is used to immediately create .default_element_geom object, but I don't see why the error is occurring. Any ideas as to why?

Related install output (full logs):

2025-10-16T05:15:33.2579110Z → Will download 13 CRAN packages (15.04 MB).
2025-10-16T05:15:33.2690950Z + crosstalk            1.2.2.9000  👷🏼‍♂️ ⬇ (416.15 kB)
2025-10-16T05:15:33.2792670Z + DT                   0.34.0.9000 👷‍♀️ ⬇ (1.71 MB)
2025-10-16T05:15:33.2894250Z + farver               2.1.2        ⬇ (1.97 MB)
2025-10-16T05:15:33.2995990Z + ggplot2              4.0.0       👷🏾 ⬇ (3.81 MB)
2025-10-16T05:15:33.3037740Z + gtable               0.3.6       👷‍♂️ ⬇ (148.15 kB)
2025-10-16T05:15:33.3045520Z + htmlwidgets  1.6.4 → 1.6.4.9000  👷🏼 ⬇ (2.92 MB)
2025-10-16T05:15:33.3126160Z + isoband              0.2.7        ⬇ (1.87 MB)
2025-10-16T05:15:33.3129130Z + labeling             0.4.3        ⬇ (61.31 kB)
2025-10-16T05:15:33.3139280Z + lazyeval             0.2.2        ⬇ (159.75 kB)
2025-10-16T05:15:33.3140960Z + RColorBrewer         1.1-3        ⬇ (52.94 kB)
2025-10-16T05:15:33.3142110Z + S7                   0.1.1        ⬇ (289.42 kB)
2025-10-16T05:15:33.3143250Z + scales               1.4.0       👷🏾‍♂️ ⬇ (328.67 kB)
2025-10-16T05:15:33.3144210Z + viridisLite          0.4.2        ⬇ (1.30 MB)
2025-10-16T05:15:33.4300630Z ℹ Getting 13 pkgs (15.04 MB)
2025-10-16T05:15:34.1472710Z ✔ Got RColorBrewer 1.1-3 (aarch64-apple-darwin20) (52.94 kB)
2025-10-16T05:15:34.5795680Z ✔ Got labeling 0.4.3 (aarch64-apple-darwin20) (61.31 kB)
2025-10-16T05:15:34.6110220Z ✔ Got lazyeval 0.2.2 (aarch64-apple-darwin20) (159.75 kB)
2025-10-16T05:15:34.6162950Z ✔ Got S7 0.1.1 (aarch64-apple-darwin20) (289.42 kB)
2025-10-16T05:15:34.6652890Z ✔ Got crosstalk 1.2.2.9000 (source) (416.15 kB)
2025-10-16T05:15:34.6943680Z ✔ Got gtable 0.3.6 (source) (148.15 kB)
2025-10-16T05:15:34.7022720Z ✔ Got scales 1.4.0 (source) (328.67 kB)
2025-10-16T05:15:34.7079270Z ✔ Got viridisLite 0.4.2 (aarch64-apple-darwin20) (1.30 MB)
2025-10-16T05:15:34.7136860Z ✔ Got isoband 0.2.7 (aarch64-apple-darwin20) (1.87 MB)
2025-10-16T05:15:34.7432650Z ✔ Got DT 0.34.0.9000 (source) (1.71 MB)
2025-10-16T05:15:34.7488470Z ✔ Got farver 2.1.2 (aarch64-apple-darwin20) (1.97 MB)
2025-10-16T05:15:34.7943300Z ✔ Got htmlwidgets 1.6.4.9000 (source) (2.92 MB)
2025-10-16T05:15:34.8013440Z ✔ Got ggplot2 4.0.0 (source) (3.81 MB)
2025-10-16T05:15:34.8186270Z ℹ Building gtable 0.3.6
2025-10-16T05:15:35.1397470Z ℹ Building htmlwidgets 1.6.4.9000
2025-10-16T05:15:35.2608380Z ✔ Installed lazyeval 0.2.2  (46ms)
2025-10-16T05:15:35.2655670Z ℹ Building crosstalk 1.2.2.9000
2025-10-16T05:15:37.0995320Z ✔ Built gtable 0.3.6 (1.9s)
2025-10-16T05:15:37.1141490Z ✔ Built htmlwidgets 1.6.4.9000 (2s)
2025-10-16T05:15:37.1649060Z ✔ Installed RColorBrewer 1.1-3  (17ms)
2025-10-16T05:15:37.2158370Z ✔ Installed S7 0.1.1  (31ms)
2025-10-16T05:15:37.2701590Z ✔ Installed farver 2.1.2  (30ms)
2025-10-16T05:15:37.3609440Z ✔ Installed isoband 0.2.7  (53ms)
2025-10-16T05:15:37.4197770Z ✔ Installed labeling 0.4.3  (29ms)
2025-10-16T05:15:37.5101790Z ✔ Installed viridisLite 0.4.2  (97ms)
2025-10-16T05:15:37.5193500Z ℹ Building scales 1.4.0
2025-10-16T05:15:37.5581420Z ✔ Built crosstalk 1.2.2.9000 (2.3s)
2025-10-16T05:15:37.5922510Z ✔ Installed gtable 0.3.6  (143ms)
2025-10-16T05:15:37.6803190Z ✔ Installed crosstalk 1.2.2.9000  (68ms)
2025-10-16T05:15:37.7565360Z ✔ Installed htmlwidgets 1.6.4.9000  (44ms)
2025-10-16T05:15:37.7669060Z ℹ Building DT 0.34.0.9000
2025-10-16T05:15:40.7920960Z ✔ Built DT 0.34.0.9000 (3s)
2025-10-16T05:15:40.9743840Z ✔ Installed DT 0.34.0.9000  (139ms)
2025-10-16T05:15:42.0769460Z ✔ Built scales 1.4.0 (4.5s)
2025-10-16T05:15:42.1612010Z ✔ Installed scales 1.4.0  (49ms)
2025-10-16T05:15:42.1714400Z ℹ Building ggplot2 4.0.0
2025-10-16T05:15:44.7569640Z ✖ Failed to build ggplot2 4.0.0 (2.5s)
2025-10-16T05:15:46.0497790Z Error : ! in callr subprocess.
2025-10-16T05:15:46.0599600Z Caused by error: 
2025-10-16T05:15:46.0702350Z ! error in pak subprocess
2025-10-16T05:15:46.0805430Z Caused by error in `stop_task_build(state, worker)`:
2025-10-16T05:15:46.0905870Z ! Failed to build source package ggplot2.
2025-10-16T05:15:46.1006970Z Full installation output:
2025-10-16T05:15:46.1158060Z * installing *source* package ‘ggplot2’ ...
2025-10-16T05:15:46.1762700Z ** package ‘ggplot2’ successfully unpacked and MD5 sums checked
2025-10-16T05:15:46.1875950Z staged installation is only possible with locking
2025-10-16T05:15:46.1876520Z ** using non-staged installation
2025-10-16T05:15:46.1983780Z ** R
2025-10-16T05:15:46.2151380Z ** data
2025-10-16T05:15:46.2384970Z *** moving datasets to lazyload DB
2025-10-16T05:15:46.2546800Z ** inst
2025-10-16T05:15:46.2711360Z ** byte-compile and prepare package for lazy loading
2025-10-16T05:15:46.2872170Z Error : <element_geom> object properties are invalid:
2025-10-16T05:15:46.2981310Z - @ink 
2025-10-16T05:15:46.3089570Z - @paper 
2025-10-16T05:15:46.3195950Z - @accent 
2025-10-16T05:15:46.3310180Z - @colour 
2025-10-16T05:15:46.3420000Z - @fill 
2025-10-16T05:15:46.3591230Z ##[error]Error: unable to load R code in package ‘ggplot2’

Ideally, r-lib/actions would install a binary that packagemanger has: https://packagemanager.posit.co/client/#/repos/cran/packages/overview?search=ggplot2&distribution=macos . But currently, r-lib/actions only installs PM binaries for windows/linux.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the package installation on macOS with R 4.2, using the linked shinycoreci logs and the reported element_geom() entry point. Inspect how .default_element_geom is created and determine what must change so ggplot2 loads successfully and the installation completes without the invalid object properties error.

Written by the indexing model from the issue text.

Assessment

Tech stack
macos, r
Domain
build-system, operating-systems
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Needs clarification
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.