{
  "_id": "6a4fd206c30f0868bbf1eef1",
  "Package": "xldiff",
  "Title": "Compare excel sheets",
  "Version": "0.2.0",
  "Authors@R": "person(\"Collin\", \"Edwards\", , \"Collin.Edwards@dfw.wa.gov\", role = c(\"aut\", \"cre\"),\ncomment = c(ORCID = \"0000-0002-4937-5159\"))",
  "Description": "`xldiff` provides tools to compare excel sheets, broadly\ninspired by \"diff\"-type functions. Provided functions can read\nsheets of two excel files and produce a third file that\nhighlights cells that have changed. In the case of numeric\nchanges, the direction of change is highlighted. These tools do\nnot account for structural changes in the sheets (e.g., the\naddition of a column), but are useful in tracking changed\nvalues in tables or parameter files. Utility functions\ndeveloped to streamline formatting output files are also more\nbroadly useful in programmatically formatting excel files using\nopenxlsx.",
  "License": "MIT + file LICENSE",
  "Encoding": "UTF-8",
  "Roxygen": "list(markdown = TRUE)",
  "RoxygenNote": "7.3.2",
  "Config/testthat/edition": "3",
  "URL": "https://framverse.r-universe.dev/xldiff,\nhttps://github.com/cbedwards-dfw/xldiff,\nhttps://cbedwards-dfw.github.io/xldiff/",
  "Remotes": [
    "JanMarvin/openxlsx2"
  ],
  "Config/pak/sysreqs": "libcairo2-dev cmake libfontconfig1-dev\nlibfreetype6-dev libfribidi-dev make libharfbuzz-dev libicu-dev\nlibjpeg-dev libpng-dev libtiff-dev libuv1-dev libwebp-dev\nlibxml2-dev libssl-dev",
  "Repository": "https://framverse.r-universe.dev",
  "Date/Publication": "2026-02-03 23:36:54 UTC",
  "RemoteUrl": "https://github.com/cbedwards-dfw/xldiff",
  "RemoteRef": "HEAD",
  "RemoteSha": "cfebb1a9cf7f440a10a08d0dcfbbdd34f6a75126",
  "NeedsCompilation": "no",
  "Packaged": {
    "Date": "2026-07-09 16:49:13 UTC",
    "User": "root"
  },
  "Author": "Collin Edwards [aut, cre] (ORCID:\n<https://orcid.org/0000-0002-4937-5159>)",
  "Maintainer": "Collin Edwards <Collin.Edwards@dfw.wa.gov>",
  "_user": "framverse",
  "_type": "src",
  "_file": "xldiff_0.2.0.tar.gz",
  "_fileid": "https://r2.ropensci.org/97330760e0b69ca210ff334fb73bb77c4550483bec70faf20eed8372d30e5876",
  "_filesize": 251058,
  "_sha256": "97330760e0b69ca210ff334fb73bb77c4550483bec70faf20eed8372d30e5876",
  "_expires": "2026-10-17T16:53:25.000Z",
  "_created": "2026-07-09T16:49:13.000Z",
  "_published": "2026-07-09T16:53:26.808Z",
  "_jobs": [
    {
      "job": 86176796399,
      "time": 147,
      "config": "linux-devel-x86_64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "8205468461"
    },
    {
      "job": 86176796391,
      "time": 141,
      "config": "linux-release-x86_64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "8205465924"
    },
    {
      "job": 86176796392,
      "time": 128,
      "config": "macos-oldrel-arm64",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "8205453915"
    },
    {
      "job": 86176796356,
      "time": 173,
      "config": "macos-release-arm64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "8205468722"
    },
    {
      "job": 86175740877,
      "time": 297,
      "config": "source",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "8205404852"
    },
    {
      "job": 86176796361,
      "time": 216,
      "config": "wasm-release",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "8205496654"
    },
    {
      "job": 86176796437,
      "time": 81,
      "config": "windows-devel",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "8205441247"
    },
    {
      "job": 86176796446,
      "time": 88,
      "config": "windows-oldrel",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "8205443796"
    },
    {
      "job": 86176796405,
      "time": 85,
      "config": "windows-release",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "8205443005"
    }
  ],
  "_host": "GitHub-Actions",
  "_buildurl": "https://github.com/r-universe/framverse/actions/runs/29034496065",
  "_status": "success",
  "_upstream": "https://github.com/cbedwards-dfw/xldiff",
  "_commit": {
    "id": "cfebb1a9cf7f440a10a08d0dcfbbdd34f6a75126",
    "author": "Collin Edwards <collin.edwards@dfw.wa.gov>",
    "committer": "Collin Edwards <collin.edwards@dfw.wa.gov>",
    "message": "updating check yaml\n",
    "time": 1770161814
  },
  "_maintainer": {
    "name": "Collin Edwards",
    "email": "collin.edwards@dfw.wa.gov",
    "login": "cbedwards-dfw",
    "description": "",
    "uuid": 155684316,
    "orcid": "0000-0002-4937-5159"
  },
  "_distro": "resolute",
  "_registered": true,
  "_dependencies": [
    {
      "package": "R",
      "version": ">= 4.1.0",
      "role": "Depends"
    },
    {
      "package": "cli",
      "role": "Imports"
    },
    {
      "package": "dplyr",
      "role": "Imports"
    },
    {
      "package": "flextable",
      "role": "Imports"
    },
    {
      "package": "glue",
      "role": "Imports"
    },
    {
      "package": "lifecycle",
      "role": "Imports"
    },
    {
      "package": "openxlsx2",
      "version": ">= 1.22.0.9000",
      "role": "Imports"
    },
    {
      "package": "purrr",
      "role": "Imports"
    },
    {
      "package": "readxl",
      "role": "Imports"
    },
    {
      "package": "rlang",
      "role": "Imports"
    },
    {
      "package": "tibble",
      "role": "Imports"
    },
    {
      "package": "tidyr",
      "role": "Imports"
    },
    {
      "package": "tidyxl",
      "role": "Imports"
    },
    {
      "package": "openxlsx",
      "role": "Suggests"
    },
    {
      "package": "testthat",
      "version": ">= 3.0.0",
      "role": "Suggests"
    }
  ],
  "_owner": "cbedwards-dfw",
  "_selfowned": true,
  "_usedby": 2,
  "_updates": [
    {
      "week": "2025-38",
      "n": 5
    },
    {
      "week": "2025-47",
      "n": 1
    },
    {
      "week": "2026-02",
      "n": 6
    },
    {
      "week": "2026-06",
      "n": 3
    }
  ],
  "_tags": [],
  "_topics": [
    "excel"
  ],
  "_stars": 1,
  "_contributors": [
    {
      "user": "cbedwards-dfw",
      "count": 48,
      "uuid": 155684316
    }
  ],
  "_userbio": {
    "uuid": 72824513,
    "type": "organization",
    "name": "FRAMverse",
    "followers": 13,
    "description": "FRAM (Fisheries Regulation Assessment Model) Users"
  },
  "_downloads": {
    "count": 0,
    "source": "https://cranlogs.r-pkg.org/downloads/total/last-month/xldiff"
  },
  "_devurl": "https://github.com/framverse/xldiff",
  "_pkgdown": "https://cbedwards-dfw.github.io/xldiff/",
  "_searchresults": 0,
  "_rbuild": "4.6.1",
  "_assets": [
    "extra/citation.cff",
    "extra/citation.html",
    "extra/citation.json",
    "extra/citation.txt",
    "extra/contents.json",
    "extra/NEWS.html",
    "extra/NEWS.txt",
    "extra/readme.html",
    "extra/readme.md",
    "extra/xldiff.html",
    "LICENSE",
    "manual.pdf"
  ],
  "_cranurl": false,
  "_exports": [
    "add_cell_borders",
    "add_changed_formats",
    "cell_range_translate",
    "cells_stylize",
    "diff_to_table",
    "excel_diff",
    "excel_diff_table",
    "excel_diff_tibble",
    "formula_diff",
    "mat_to_a1",
    "present_rows_changed",
    "sheet_comp",
    "wb_get_col_widths"
  ],
  "_help": [
    {
      "page": "add_cell_borders",
      "title": "*[Deprecated]* Adds cell borders to openxlsx spreadsheet",
      "topics": [
        "add_cell_borders"
      ]
    },
    {
      "page": "add_changed_formats",
      "title": "Format 'openxlsx2' worksheet based on changes",
      "topics": [
        "add_changed_formats"
      ]
    },
    {
      "page": "cell_range_translate",
      "title": "Translates from excel cell address to rows and columns",
      "topics": [
        "cell_range_translate"
      ]
    },
    {
      "page": "cells_stylize",
      "title": "*[Deprecated]* Apply style to worksheet based on one or more excel-style cell ranges",
      "topics": [
        "cells_stylize"
      ]
    },
    {
      "page": "diff_to_table",
      "title": "Compares two dataframes and returns diff as flextable",
      "topics": [
        "diff_to_table"
      ]
    },
    {
      "page": "excel_diff",
      "title": "Minimal spreadsheet comparison function",
      "topics": [
        "excel_diff"
      ]
    },
    {
      "page": "excel_diff_table",
      "title": "Diff excel sheets and show table",
      "topics": [
        "excel_diff_table"
      ]
    },
    {
      "page": "excel_diff_tibble",
      "title": "Diff excel sheet and return tibble",
      "topics": [
        "excel_diff_tibble"
      ]
    },
    {
      "page": "formula_diff",
      "title": "Compare two sheets to see if formula use changed",
      "topics": [
        "formula_diff"
      ]
    },
    {
      "page": "mat_to_a1",
      "title": "Provide Excel addresses from matrix of logicals",
      "topics": [
        "mat_to_a1"
      ]
    },
    {
      "page": "present_rows_changed",
      "title": "Summarize the rows changed between two dataframes",
      "topics": [
        "present_rows_changed"
      ]
    },
    {
      "page": "sheet_comp",
      "title": "Compare two dataframes of spreadsheets",
      "topics": [
        "sheet_comp"
      ]
    },
    {
      "page": "sheet_comp_basic",
      "title": "Stripped down version of sheet_comp",
      "topics": [
        "sheet_comp_basic"
      ]
    },
    {
      "page": "wb_get_col_widths",
      "title": "*[Experimental]* Get column widths of openxlsx2 Workbook sheet",
      "topics": [
        "wb_get_col_widths"
      ]
    }
  ],
  "_readme": "https://github.com/cbedwards-dfw/xldiff/raw/HEAD/README.md",
  "_rundeps": [
    "askpass",
    "base64enc",
    "bslib",
    "cachem",
    "cellranger",
    "cli",
    "cpp11",
    "crayon",
    "data.table",
    "digest",
    "dplyr",
    "evaluate",
    "fastmap",
    "flextable",
    "fontawesome",
    "fontBitstreamVera",
    "fontLiberation",
    "fontquiver",
    "fs",
    "gdtools",
    "generics",
    "glue",
    "highr",
    "hms",
    "htmltools",
    "jquerylib",
    "jsonlite",
    "knitr",
    "lifecycle",
    "magrittr",
    "memoise",
    "mime",
    "officer",
    "openssl",
    "openxlsx2",
    "pillar",
    "piton",
    "pkgconfig",
    "prettyunits",
    "progress",
    "purrr",
    "R6",
    "ragg",
    "rappdirs",
    "Rcpp",
    "readxl",
    "rematch",
    "rlang",
    "rmarkdown",
    "sass",
    "stringi",
    "stringr",
    "sys",
    "systemfonts",
    "textshaping",
    "tibble",
    "tidyr",
    "tidyselect",
    "tidyxl",
    "tinytex",
    "utf8",
    "uuid",
    "vctrs",
    "withr",
    "xfun",
    "xml2",
    "yaml",
    "zip"
  ],
  "_score": 3.0791812460476247,
  "_indexed": true,
  "_nocasepkg": "xldiff",
  "_universes": [
    "framverse",
    "cbedwards-dfw"
  ],
  "_binaries": [
    {
      "r": "4.7.0",
      "os": "linux",
      "version": "0.2.0",
      "date": "2026-07-09T16:51:45.000Z",
      "distro": "resolute",
      "commit": "cfebb1a9cf7f440a10a08d0dcfbbdd34f6a75126",
      "fileid": "https://r2.ropensci.org/2e7dad238a79ca9f78b3402aa805b38bf95ddd15e30996a31a458255d403b92f",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/framverse/actions/runs/29034496065"
    },
    {
      "r": "4.6.1",
      "os": "linux",
      "version": "0.2.0",
      "date": "2026-07-09T16:51:39.000Z",
      "distro": "resolute",
      "commit": "cfebb1a9cf7f440a10a08d0dcfbbdd34f6a75126",
      "fileid": "https://r2.ropensci.org/925a5ab60c990e611e430c1009e3b7f6b93abeb2c28512aa26a13086eda71d5b",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/framverse/actions/runs/29034496065"
    },
    {
      "r": "4.5.3",
      "os": "mac",
      "version": "0.2.0",
      "date": "2026-07-09T16:51:14.000Z",
      "commit": "cfebb1a9cf7f440a10a08d0dcfbbdd34f6a75126",
      "fileid": "https://r2.ropensci.org/de66b3deba9302bc9ad269e77b763546fcccfb97652d4c3a3757a2f6a051822a",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/framverse/actions/runs/29034496065"
    },
    {
      "r": "4.6.1",
      "os": "mac",
      "version": "0.2.0",
      "date": "2026-07-09T16:51:42.000Z",
      "commit": "cfebb1a9cf7f440a10a08d0dcfbbdd34f6a75126",
      "fileid": "https://r2.ropensci.org/2f3327792d19ef7bbd17bc1dba18d9293f7aa2b3b04c99d38df118bfb5f413ad",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/framverse/actions/runs/29034496065"
    },
    {
      "r": "4.6.0",
      "os": "wasm",
      "version": "0.2.0",
      "date": "2026-07-09T16:53:06.000Z",
      "commit": "cfebb1a9cf7f440a10a08d0dcfbbdd34f6a75126",
      "fileid": "https://r2.ropensci.org/657f2e6af91bbbc204c9ccba1884d3f83b8e5ca8065b15cd87a8f7cc08c1b617",
      "status": "success",
      "buildurl": "https://github.com/r-universe/framverse/actions/runs/29034496065"
    },
    {
      "r": "4.7.0",
      "os": "win",
      "version": "0.2.0",
      "date": "2026-07-09T16:50:31.000Z",
      "commit": "cfebb1a9cf7f440a10a08d0dcfbbdd34f6a75126",
      "fileid": "https://r2.ropensci.org/baffff473588e927f140609a1ca0278030b6c28068bd17cf0de0deaa3d38232a",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/framverse/actions/runs/29034496065"
    },
    {
      "r": "4.5.3",
      "os": "win",
      "version": "0.2.0",
      "date": "2026-07-09T16:50:41.000Z",
      "commit": "cfebb1a9cf7f440a10a08d0dcfbbdd34f6a75126",
      "fileid": "https://r2.ropensci.org/ee2650fef091a642d05c947b2a7340bab46d0ffcb400740edbb65a661c0e078f",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/framverse/actions/runs/29034496065"
    },
    {
      "r": "4.6.1",
      "os": "win",
      "version": "0.2.0",
      "date": "2026-07-09T16:50:39.000Z",
      "commit": "cfebb1a9cf7f440a10a08d0dcfbbdd34f6a75126",
      "fileid": "https://r2.ropensci.org/c1bd157c90e17661c600aab7ed9a95bbcd47e02f7d26f96b0c7d4308a270c21c",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/framverse/actions/runs/29034496065"
    }
  ]
}