{
  "_id": "6a48c6c0b5e98c40829fb2f3",
  "Package": "vetr",
  "Title": "Trust, but Verify",
  "Description": "Declarative template-based framework for verifying that\nobjects meet structural requirements, and auto-composing error\nmessages when they do not.",
  "Version": "0.2.22",
  "Authors@R": "c(\nperson(\"Brodie\", \"Gaslam\", email=\"brodie.gaslam@yahoo.com\",\nrole=c(\"aut\", \"cre\")),\nperson(given=\"Paxdiablo\", role=\"cph\", comment=\"Hash\ntable implementation in src/pfhash.h\"),\nperson(given=\"R Core Team\",\nemail=\"R-core@r-project.org\", role=\"cph\",\ncomment=\"Used/adapted several code snippets from R sources, see src/r-copied.c\"),\nperson(\"Michael\",\"Chirico\", role=\"ctb\",\nemail=\"michaelchirico4@gmail.com\", comment = c(ORCID=\"0000-0003-0787-087X\")\n))",
  "License": "GPL (>=2)",
  "URL": "https://github.com/brodieG/vetr",
  "BugReports": "https://github.com/brodieG/vetr/issues",
  "VignetteBuilder": "knitr",
  "RoxygenNote": "7.3.3",
  "Encoding": "UTF-8",
  "Roxygen": "list(markdown = TRUE, load = \"installed\")",
  "Repository": "https://brodieg.r-universe.dev",
  "Date/Publication": "2026-04-28 15:56:57 UTC",
  "RemoteUrl": "https://github.com/brodieg/vetr",
  "RemoteRef": "HEAD",
  "RemoteSha": "6253a3c9db4f049182617046424d5cd91c816a9d",
  "NeedsCompilation": "yes",
  "Packaged": {
    "Date": "2026-07-04 07:51:56 UTC",
    "User": "root"
  },
  "Author": "Brodie Gaslam [aut, cre],\nPaxdiablo [cph] (Hash table implementation in src/pfhash.h),\nR Core Team [cph] (Used/adapted several code snippets from R sources,\nsee src/r-copied.c),\nMichael Chirico [ctb] (ORCID: <https://orcid.org/0000-0003-0787-087X>)",
  "Maintainer": "Brodie Gaslam <brodie.gaslam@yahoo.com>",
  "_user": "brodieg",
  "_type": "src",
  "_file": "vetr_0.2.22.tar.gz",
  "_fileid": "https://r2.ropensci.org/1e4c6664b95413c0619deec02d1b03f0989d335d9129b9e4089195caf7f64f74",
  "_filesize": 959536,
  "_sha256": "1e4c6664b95413c0619deec02d1b03f0989d335d9129b9e4089195caf7f64f74",
  "_expires": "2026-10-12T08:39:27.000Z",
  "_created": "2026-07-04T07:51:56.000Z",
  "_published": "2026-07-04T08:39:28.860Z",
  "_jobs": [
    {
      "job": 85115518333,
      "time": 135,
      "config": "linux-devel-arm64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "8079795131"
    },
    {
      "job": 85115518341,
      "time": 125,
      "config": "linux-devel-x86_64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "8079793927"
    },
    {
      "job": 85115518351,
      "time": 140,
      "config": "linux-release-arm64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "8079795476"
    },
    {
      "job": 85115518329,
      "time": 109,
      "config": "linux-release-x86_64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "8079792466"
    },
    {
      "job": 85115518321,
      "time": 90,
      "config": "macos-oldrel-arm64",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "8080109247"
    },
    {
      "job": 85115518327,
      "time": 161,
      "config": "macos-oldrel-x86_64",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "8079797756"
    },
    {
      "job": 85115518318,
      "time": 91,
      "config": "macos-release-arm64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "8080097680"
    },
    {
      "job": 85115518314,
      "time": 197,
      "config": "macos-release-x86_64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "8079801300"
    },
    {
      "job": 85115363373,
      "time": 158,
      "config": "source",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "8079780184"
    },
    {
      "job": 85115518295,
      "time": 100,
      "config": "wasm-release",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "8079791422"
    },
    {
      "job": 85115518345,
      "time": 104,
      "config": "windows-devel",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "8079791870"
    },
    {
      "job": 85115518323,
      "time": 119,
      "config": "windows-oldrel",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "8079793272"
    },
    {
      "job": 85115518346,
      "time": 110,
      "config": "windows-release",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "8079792399"
    }
  ],
  "_host": "GitHub-Actions",
  "_buildurl": "https://github.com/r-universe/brodieg/actions/runs/28699618493",
  "_status": "success",
  "_upstream": "https://github.com/brodieg/vetr",
  "_commit": {
    "id": "6253a3c9db4f049182617046424d5cd91c816a9d",
    "author": "brodieG <brodieG@users.noreply.github.com>",
    "committer": "brodieG <brodieG@users.noreply.github.com>",
    "message": "v0.2.22 CRAN MTN\n\nHandle new classed error for 'get' failure in tests\n",
    "time": 1777391817
  },
  "_maintainer": {
    "name": "Brodie Gaslam",
    "email": "brodie.gaslam@yahoo.com",
    "login": "brodieg",
    "description": "Hobbyist programmer based on the East Coast of the USA.  Interested in data analysis and visualization.",
    "uuid": 6105908
  },
  "_distro": "resolute",
  "_registered": true,
  "_dependencies": [
    {
      "package": "R",
      "version": ">= 3.2.0",
      "role": "Depends"
    },
    {
      "package": "methods",
      "role": "Imports"
    },
    {
      "package": "stats",
      "role": "Imports"
    },
    {
      "package": "utils",
      "role": "Imports"
    },
    {
      "package": "knitr",
      "role": "Suggests"
    },
    {
      "package": "rmarkdown",
      "role": "Suggests"
    },
    {
      "package": "unitizer",
      "role": "Suggests"
    }
  ],
  "_owner": "brodieg",
  "_selfowned": true,
  "_usedby": 1,
  "_updates": [
    {
      "week": "2025-48",
      "n": 1
    },
    {
      "week": "2026-04",
      "n": 1
    },
    {
      "week": "2026-14",
      "n": 1
    },
    {
      "week": "2026-18",
      "n": 1
    }
  ],
  "_tags": [
    {
      "name": "v0.2.19",
      "date": "2025-11-25"
    },
    {
      "name": "v0.2.20",
      "date": "2026-01-23"
    },
    {
      "name": "v0.2.21",
      "date": "2026-04-03"
    },
    {
      "name": "v0.2.22",
      "date": "2026-04-28"
    }
  ],
  "_topics": [
    "argument-checks",
    "input-validation"
  ],
  "_stars": 80,
  "_contributors": [
    {
      "user": "brodieg",
      "count": 1115,
      "uuid": 6105908
    },
    {
      "user": "franknarf1",
      "count": 1,
      "uuid": 4649190
    },
    {
      "user": "michaelchirico",
      "count": 1,
      "uuid": 7606389
    }
  ],
  "_userbio": {
    "uuid": 6105908,
    "type": "user",
    "name": "Brodie Gaslam",
    "followers": 180,
    "description": "Hobbyist programmer based on the East Coast of the USA.  Interested in data analysis and visualization."
  },
  "_downloads": {
    "count": 676,
    "source": "https://cranlogs.r-pkg.org/downloads/total/last-month/vetr"
  },
  "_devurl": "https://github.com/brodieg/vetr",
  "_searchresults": 88,
  "_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/vetr.html",
    "manual.pdf"
  ],
  "_homeurl": "https://github.com/brodieg/vetr",
  "_realowner": "brodieg",
  "_cranurl": true,
  "_releases": [
    {
      "version": "0.1.0",
      "date": "2017-07-07"
    },
    {
      "version": "0.2.0",
      "date": "2017-09-17"
    },
    {
      "version": "0.2.1",
      "date": "2017-09-22"
    },
    {
      "version": "0.2.2",
      "date": "2017-09-27"
    },
    {
      "version": "0.2.3",
      "date": "2018-03-03"
    },
    {
      "version": "0.2.4",
      "date": "2018-03-28"
    },
    {
      "version": "0.2.5",
      "date": "2018-06-23"
    },
    {
      "version": "0.2.6",
      "date": "2018-08-15"
    },
    {
      "version": "0.2.7",
      "date": "2019-03-15"
    },
    {
      "version": "0.2.8",
      "date": "2019-12-17"
    },
    {
      "version": "0.2.9",
      "date": "2020-03-06"
    },
    {
      "version": "0.2.10",
      "date": "2020-05-14"
    },
    {
      "version": "0.2.12",
      "date": "2020-11-07"
    },
    {
      "version": "0.2.13",
      "date": "2021-05-03"
    },
    {
      "version": "0.2.14",
      "date": "2022-07-07"
    },
    {
      "version": "0.2.15",
      "date": "2023-01-06"
    },
    {
      "version": "0.2.16",
      "date": "2023-12-08"
    },
    {
      "version": "0.2.18",
      "date": "2024-06-21"
    },
    {
      "version": "0.2.19",
      "date": "2025-11-23"
    },
    {
      "version": "0.2.20",
      "date": "2026-01-23"
    },
    {
      "version": "0.2.21",
      "date": "2026-04-03"
    },
    {
      "version": "0.2.22",
      "date": "2026-04-27"
    }
  ],
  "_exports": [
    "abstract",
    "alike",
    "all_bw",
    "bench_mark",
    "CHR",
    "CHR.1",
    "CPX",
    "CPX.1",
    "GT.0",
    "GTE.0",
    "INT",
    "INT.1",
    "INT.1.NEG",
    "INT.1.NEG.STR",
    "INT.1.POS",
    "INT.1.POS.STR",
    "INT.NEG",
    "INT.NEG.STR",
    "INT.POS",
    "INT.POS.STR",
    "LGL",
    "LGL.1",
    "LT.0",
    "LTE.0",
    "NO.INF",
    "NO.NA",
    "nullify",
    "NUM",
    "NUM.1",
    "NUM.1.NEG",
    "NUM.1.POS",
    "NUM.NEG",
    "NUM.POS",
    "tev",
    "type_alike",
    "type_of",
    "vet",
    "vet_token",
    "vetr",
    "vetr_settings"
  ],
  "_help": [
    {
      "page": "vetr-package",
      "title": "Trust, but Verify",
      "topics": [
        "vetr-package"
      ]
    },
    {
      "page": "abstract",
      "title": "Turn S3 Objects Into Templates",
      "topics": [
        "abstract",
        "abstract.array",
        "abstract.data.frame",
        "abstract.default",
        "abstract.environment",
        "abstract.list",
        "abstract.lm",
        "abstract.matrix",
        "abstract.ts"
      ]
    },
    {
      "page": "alike",
      "title": "Compare Object Structure",
      "topics": [
        "alike"
      ]
    },
    {
      "page": "all_bw",
      "title": "Verify Values in Vector are Between Two Others",
      "topics": [
        "all_bw"
      ]
    },
    {
      "page": "bench_mark",
      "title": "Lightweight Benchmarking Function",
      "topics": [
        "bench_mark"
      ]
    },
    {
      "page": "nullify",
      "title": "Set Element to NULL Without Removing It",
      "topics": [
        "nullify",
        "nullify.default"
      ]
    },
    {
      "page": "type_alike",
      "title": "Fuzzily Compare Types of Objects",
      "topics": [
        "type_alike",
        "type_of"
      ]
    },
    {
      "page": "vet",
      "title": "Verify Objects Meet Structural Requirements",
      "topics": [
        "tev",
        "vet"
      ]
    },
    {
      "page": "vet_token",
      "title": "Vetting Tokens With Custom Error Messages",
      "topics": [
        "CHR",
        "CHR.1",
        "CPX",
        "CPX.1",
        "GT.0",
        "GTE.0",
        "INT",
        "INT.1",
        "INT.1.NEG",
        "INT.1.NEG.STR",
        "INT.1.POS",
        "INT.1.POS.STR",
        "INT.NEG",
        "INT.NEG.STR",
        "INT.POS",
        "INT.POS.STR",
        "LGL",
        "LGL.1",
        "LT.0",
        "LTE.0",
        "NO.INF",
        "NO.NA",
        "NUM",
        "NUM.1",
        "NUM.1.NEG",
        "NUM.1.POS",
        "NUM.NEG",
        "NUM.POS",
        "vet_token"
      ]
    },
    {
      "page": "vetr",
      "title": "Verify Function Arguments Meet Structural Requirements",
      "topics": [
        "vetr"
      ]
    },
    {
      "page": "vetr_settings",
      "title": "Generate Control Settings For vetr and alike",
      "topics": [
        "vetr_settings"
      ]
    }
  ],
  "_readme": "https://github.com/brodieg/vetr/raw/HEAD/README.md",
  "_rundeps": [],
  "_vignettes": [
    {
      "source": "alike.Rmd",
      "filename": "alike.html",
      "title": "alike",
      "author": "Brodie Gaslam",
      "engine": "knitr::rmarkdown",
      "headings": [
        "What is Alikeness?",
        "Declarative Comparison",
        "Object Comparison",
        "Overview",
        "Length Comparison",
        "Type Comparison",
        "Numerics and Integers",
        "Functions",
        "Recursive Objects",
        "Language Objects, Formulas, and Functions",
        "Language Objects",
        "Formulas",
        "S4 and R5 (RC Objects)",
        "Pointer Objects",
        "Attribute Comparison",
        "Normal Attributes",
        "Special Attributes",
        "row.names and names",
        "dim",
        "dimnames",
        "class",
        "tsp",
        "levels",
        "srcref",
        "Normal Attributes that Happen To Have Special Names",
        "Modifying Comparison Behavior",
        "Creating Templates",
        "From The Ground Up",
        "Abstracting Existing Structures",
        "Performance Considerations",
        "Sample Timings",
        "Pre-defining Templates",
        "Miscellaneous",
        "alike as an S3 generic"
      ],
      "created": "2017-07-07 00:51:47",
      "modified": "2025-11-25 14:38:47",
      "commits": 4
    },
    {
      "source": "vetr.Rmd",
      "filename": "vetr.html",
      "title": "vetR - Trust, but Verify",
      "author": "Brodie Gaslam",
      "engine": "knitr::rmarkdown",
      "headings": [
        "Vetting Expressions",
        "Introduction",
        "Non Standard Evaluation",
        "Vetting Expressions are Language Objects",
        "Parsing and Evaluation Rules",
        "Special Cases",
        "In Functions",
        "Performance Considerations",
        "Benchmarks",
        "Templates and Performance",
        "Alternatives"
      ],
      "created": "2017-07-07 00:51:47",
      "modified": "2018-03-05 14:06:05",
      "commits": 3
    }
  ],
  "_score": 8.22778390085372,
  "_indexed": true,
  "_nocasepkg": "vetr",
  "_universes": [
    "brodieg"
  ],
  "_binaries": [
    {
      "r": "4.7.0",
      "os": "linux",
      "version": "0.2.22",
      "date": "2026-07-04T07:54:10.000Z",
      "distro": "resolute",
      "arch": "aarch64",
      "commit": "6253a3c9db4f049182617046424d5cd91c816a9d",
      "fileid": "https://r2.ropensci.org/f94a1f0bd92c74423125b937524fcefb4b713f5247166d9b4855dc95cea020ef",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/brodieg/actions/runs/28699618493"
    },
    {
      "r": "4.7.0",
      "os": "linux",
      "version": "0.2.22",
      "date": "2026-07-04T07:53:51.000Z",
      "distro": "resolute",
      "arch": "x86_64",
      "commit": "6253a3c9db4f049182617046424d5cd91c816a9d",
      "fileid": "https://r2.ropensci.org/dbaff70ecd0a9184518e744cecb371956e9a58c930ac23fbf9ded4df73b95bce",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/brodieg/actions/runs/28699618493"
    },
    {
      "r": "4.6.1",
      "os": "linux",
      "version": "0.2.22",
      "date": "2026-07-04T07:54:10.000Z",
      "distro": "resolute",
      "arch": "aarch64",
      "commit": "6253a3c9db4f049182617046424d5cd91c816a9d",
      "fileid": "https://r2.ropensci.org/ab9c9d5f9edc1e397587bfc0ee72e54e9601c7f890add95356c4a93fde42dcfa",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/brodieg/actions/runs/28699618493"
    },
    {
      "r": "4.6.1",
      "os": "linux",
      "version": "0.2.22",
      "date": "2026-07-04T07:53:36.000Z",
      "distro": "resolute",
      "arch": "x86_64",
      "commit": "6253a3c9db4f049182617046424d5cd91c816a9d",
      "fileid": "https://r2.ropensci.org/51389ef23b56c7479ec220af272f6a90f04400b968e8120e8319e10e114c45c7",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/brodieg/actions/runs/28699618493"
    },
    {
      "r": "4.5.3",
      "os": "mac",
      "version": "0.2.22",
      "date": "2026-07-04T08:38:46.000Z",
      "arch": "aarch64",
      "commit": "6253a3c9db4f049182617046424d5cd91c816a9d",
      "fileid": "https://r2.ropensci.org/e34fcb6617dbbaa87f017fd82501f7ec8b324fd0ddbd645d5a27247e1cc7889d",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/brodieg/actions/runs/28699618493"
    },
    {
      "r": "4.5.3",
      "os": "mac",
      "version": "0.2.22",
      "date": "2026-07-04T07:54:16.000Z",
      "arch": "x86_64",
      "commit": "6253a3c9db4f049182617046424d5cd91c816a9d",
      "fileid": "https://r2.ropensci.org/d533b6cdd3c9c26452e3642d66a7b68fbba01923b6cb0d851bba5b0de11ec5ef",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/brodieg/actions/runs/28699618493"
    },
    {
      "r": "4.6.1",
      "os": "mac",
      "version": "0.2.22",
      "date": "2026-07-04T08:37:06.000Z",
      "arch": "aarch64",
      "commit": "6253a3c9db4f049182617046424d5cd91c816a9d",
      "fileid": "https://r2.ropensci.org/76d094026fae018af0b151ea748f1507b43a469af9706f15e14e608200dd111c",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/brodieg/actions/runs/28699618493"
    },
    {
      "r": "4.6.1",
      "os": "mac",
      "version": "0.2.22",
      "date": "2026-07-04T07:54:46.000Z",
      "arch": "x86_64",
      "commit": "6253a3c9db4f049182617046424d5cd91c816a9d",
      "fileid": "https://r2.ropensci.org/ac4c683289dd4b3726c5c5c3152d1c8aa4b914e3c5933ad7f90c26516093cab6",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/brodieg/actions/runs/28699618493"
    },
    {
      "r": "4.6.0",
      "os": "wasm",
      "version": "0.2.22",
      "date": "2026-07-04T07:53:48.000Z",
      "arch": "emscripten",
      "commit": "6253a3c9db4f049182617046424d5cd91c816a9d",
      "fileid": "https://r2.ropensci.org/02899be41f87e18dd8ecc008bff6bacb3bdfa85ab66d1f28b25df7081182de8c",
      "status": "success",
      "buildurl": "https://github.com/r-universe/brodieg/actions/runs/28699618493"
    },
    {
      "r": "4.7.0",
      "os": "win",
      "version": "0.2.22",
      "date": "2026-07-04T07:53:14.000Z",
      "arch": "x86_64",
      "commit": "6253a3c9db4f049182617046424d5cd91c816a9d",
      "fileid": "https://r2.ropensci.org/99e3b7a50110a2b326ae30b30892fad090ed9f1b0c84168f7c049eb296973044",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/brodieg/actions/runs/28699618493"
    },
    {
      "r": "4.5.3",
      "os": "win",
      "version": "0.2.22",
      "date": "2026-07-04T07:53:20.000Z",
      "arch": "x86_64",
      "commit": "6253a3c9db4f049182617046424d5cd91c816a9d",
      "fileid": "https://r2.ropensci.org/551f1ad81296644cc418c278084eb22ce303501ee058466330b982b2265386d8",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/brodieg/actions/runs/28699618493"
    },
    {
      "r": "4.6.1",
      "os": "win",
      "version": "0.2.22",
      "date": "2026-07-04T07:53:11.000Z",
      "arch": "x86_64",
      "commit": "6253a3c9db4f049182617046424d5cd91c816a9d",
      "fileid": "https://r2.ropensci.org/62363de7c0825033fe261ddab2afabd5176826c5fb16325652ca475eed64a600",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/brodieg/actions/runs/28699618493"
    }
  ]
}