{
  "_id": "6a129265acfb0bcc41d0b332",
  "Package": "wyz.code.offensiveProgramming",
  "Type": "Package",
  "Title": "Wizardry Code Offensive Programming",
  "Version": "1.1.24",
  "Author": "Fabien Gelineau <neonira@gmail.com>",
  "Maintainer": "Fabien Gelineau <neonira@gmail.com>",
  "Description": "Allows to turn standard R code into offensive programming\ncode. Provides code instrumentation to ease this change and\ntools to assist and accelerate code production and tuning while\nusing offensive programming code technics. Should improve code\nrobustness and quality. Function calls can be easily verified\non-demand or in batch mode to assess parameter types and length\nconformities. Should improve coders productivity as offensive\nprogramming reduces the code size due to reduced number of\ncontrols all along the call chain. Should speed up processing\nas many checks will be reduced to one single check.",
  "Encoding": "UTF-8",
  "License": "GPL-3",
  "RoxygenNote": "6.1.1",
  "VignetteBuilder": "knitr",
  "URL": "https://neonira.github.io/offensiveProgrammingBook_v1.2.2/",
  "NeedsCompilation": "no",
  "Packaged": {
    "Date": "2026-05-24 05:50:41 UTC",
    "User": "root"
  },
  "Config/pak/sysreqs": "libicu-dev",
  "Repository": "https://neonira.r-universe.dev",
  "Date/Publication": "2023-09-25 08:32:40 UTC",
  "RemoteUrl": "https://github.com/cran/wyz.code.offensiveProgramming",
  "RemoteRef": "HEAD",
  "RemoteSha": "5d74405a7ea9b346e50b24ae7fb59a7cf8f03cd4",
  "MD5sum": "5b63bcadaf93a0e9dcffe67aad140aef",
  "_user": "neonira",
  "_type": "src",
  "_file": "wyz.code.offensiveProgramming_1.1.24.tar.gz",
  "_fileid": "3786cf29e72d21bfb0b99c8dad0fe69e66242bcaea6443b0aeaf9f44487b3f7f",
  "_filesize": 468237,
  "_sha256": "3786cf29e72d21bfb0b99c8dad0fe69e66242bcaea6443b0aeaf9f44487b3f7f",
  "_created": "2026-05-24T05:50:41.000Z",
  "_published": "2026-05-24T05:53:41.508Z",
  "_distro": "noble",
  "_jobs": [
    {
      "job": 77575319264,
      "time": 145,
      "config": "linux-devel-x86_64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "7182653060"
    },
    {
      "job": 77575319252,
      "time": 145,
      "config": "linux-release-x86_64",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "7182653011"
    },
    {
      "job": 77575319267,
      "time": 80,
      "config": "macos-oldrel-arm64",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "7182646458"
    },
    {
      "job": 77575319256,
      "time": 86,
      "config": "macos-release-arm64",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "7182646981"
    },
    {
      "job": 77575180120,
      "time": 166,
      "config": "source",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "7182637584"
    },
    {
      "job": 77575319258,
      "time": 102,
      "config": "wasm-release",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "7182648714"
    },
    {
      "job": 77575319266,
      "time": 115,
      "config": "windows-devel",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "7182650094"
    },
    {
      "job": 77575319276,
      "time": 95,
      "config": "windows-oldrel",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "7182647996"
    },
    {
      "job": 77575319268,
      "time": 100,
      "config": "windows-release",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "7182648441"
    }
  ],
  "_buildurl": "https://github.com/r-universe/neonira/actions/runs/26353278386",
  "_status": "success",
  "_host": "GitHub-Actions",
  "_upstream": "https://github.com/cran/wyz.code.offensiveProgramming",
  "_commit": {
    "id": "5d74405a7ea9b346e50b24ae7fb59a7cf8f03cd4",
    "author": "Fabien Gelineau <neonira@gmail.com>",
    "committer": "cran-robot <csardi.gabor+cran@gmail.com>",
    "message": "version 1.1.24\n",
    "time": 1695630760
  },
  "_maintainer": {
    "name": "Fabien Gelineau",
    "email": "neonira@gmail.com",
    "login": "neonira",
    "description": "think, experiment and iterate",
    "uuid": 37214634
  },
  "_registered": true,
  "_dependencies": [
    {
      "package": "R",
      "version": ">= 4.0",
      "role": "Depends"
    },
    {
      "package": "methods",
      "role": "Imports"
    },
    {
      "package": "data.table",
      "version": ">= 1.11.8",
      "role": "Imports"
    },
    {
      "package": "tidyr",
      "role": "Imports"
    },
    {
      "package": "stringr",
      "version": ">= 1.4.0",
      "role": "Imports"
    },
    {
      "package": "R6",
      "version": ">= 2.4.0",
      "role": "Imports"
    },
    {
      "package": "crayon",
      "role": "Imports"
    },
    {
      "package": "testthat",
      "role": "Suggests"
    },
    {
      "package": "knitr",
      "role": "Suggests"
    },
    {
      "package": "rmarkdown",
      "role": "Suggests"
    }
  ],
  "_owner": "cran",
  "_selfowned": true,
  "_usedby": 3,
  "_updates": [],
  "_tags": [],
  "_stars": 0,
  "_contributors": [
    {
      "user": "neonira",
      "count": 13,
      "uuid": 37214634
    }
  ],
  "_userbio": {
    "uuid": 37214634,
    "type": "user",
    "name": "neonira",
    "description": "think, experiment and iterate"
  },
  "_downloads": {
    "count": 223,
    "source": "https://cranlogs.r-pkg.org/downloads/total/last-month/wyz.code.offensiveProgramming"
  },
  "_devurl": "https://github.com/neonira/offensiveprogrammingbook_v1.2.2",
  "_searchresults": 4,
  "_rbuild": "4.6.0",
  "_assets": [
    "extra/citation.cff",
    "extra/citation.html",
    "extra/citation.json",
    "extra/citation.txt",
    "extra/contents.json",
    "extra/wyz.code.offensiveProgramming.html",
    "manual.pdf"
  ],
  "_realowner": "neonira",
  "_cranurl": false,
  "_releases": [
    {
      "version": "1.1.6",
      "date": "2019-07-18"
    },
    {
      "version": "1.1.7",
      "date": "2019-07-27"
    },
    {
      "version": "1.1.8",
      "date": "2019-07-27"
    },
    {
      "version": "1.1.9",
      "date": "2019-08-27"
    },
    {
      "version": "1.1.11",
      "date": "2019-09-21"
    },
    {
      "version": "1.1.12",
      "date": "2019-09-30"
    },
    {
      "version": "1.1.14",
      "date": "2019-10-28"
    },
    {
      "version": "1.1.15",
      "date": "2020-01-15"
    },
    {
      "version": "1.1.16",
      "date": "2020-01-19"
    },
    {
      "version": "1.1.17",
      "date": "2020-02-02"
    },
    {
      "version": "1.1.18",
      "date": "2020-04-19"
    },
    {
      "version": "1.1.23",
      "date": "2021-10-05"
    },
    {
      "version": "1.1.24",
      "date": "2023-09-25"
    }
  ],
  "_exports": [
    "defineEvaluationModes",
    "defineFunctionReturnTypesParameterName",
    "defineTestCaseDefinitionsParameterName",
    "EvaluationMode",
    "exploreObjectNamesVerification",
    "findFilesInPackage",
    "FunctionParameterName",
    "FunctionParameterTypeFactory",
    "getEllipsisName",
    "getObjectClassKind",
    "getObjectClassNames",
    "getObjectFunctionArgumentNames",
    "getObjectFunctionNames",
    "identifyOPInstrumentationLevel",
    "isAuditable",
    "matchFunctionSignature",
    "opInformation",
    "retrieveFactory",
    "retrieveFunctionArgumentNames",
    "retrieveFunctionArguments",
    "retrieveFunctionReturnTypes",
    "retrievePackageFunctionNames",
    "retrieveTestCaseDefinitions",
    "retrieveTestCaseDescriptions",
    "runFunction",
    "runTestCase",
    "runTransientFunction",
    "TestCaseDefinition",
    "verifyClassName",
    "verifyFunctionArguments",
    "verifyFunctionName",
    "verifyFunctionReturnTypesDefinition",
    "verifyObjectNames",
    "verifyTestCaseDefinitions"
  ],
  "_help": [
    {
      "page": "defineEvaluationModes",
      "title": "Define evaluation modes",
      "concept": [
        "code evaluation mode"
      ],
      "topics": [
        "defineEvaluationModes"
      ]
    },
    {
      "page": "defineFunctionReturnTypesParameterName",
      "title": "define function return type parameter name",
      "concept": [
        "code evaluation mode"
      ],
      "topics": [
        "defineFunctionReturnTypesParameterName"
      ]
    },
    {
      "page": "defineTestCaseDefinitionsParameterName",
      "title": "Test case definition parameter name",
      "concept": [
        "code evaluation mode"
      ],
      "topics": [
        "defineTestCaseDefinitionsParameterName"
      ]
    },
    {
      "page": "EvaluationMode",
      "title": "Evaluation mode definition",
      "concept": [
        "code evaluation mode"
      ],
      "topics": [
        "EvaluationMode"
      ]
    },
    {
      "page": "exploreObjectNamesVerification",
      "title": "Verify object names",
      "concept": [
        "code evaluation mode"
      ],
      "topics": [
        "exploreObjectNamesVerification"
      ]
    },
    {
      "page": "findFilesInPackage",
      "title": "find files in package",
      "topics": [
        "findFilesInPackage"
      ]
    },
    {
      "page": "FunctionParameterName",
      "title": "Function parameter name",
      "concept": [
        "code evaluation mode"
      ],
      "topics": [
        "FunctionParameterName"
      ]
    },
    {
      "page": "FunctionParameterTypeFactory",
      "title": "Function parameter type factory",
      "concept": [
        "code evaluation mode"
      ],
      "topics": [
        "FunctionParameterTypeFactory"
      ]
    },
    {
      "page": "getEllipsisName",
      "title": "Get ellipsis.",
      "topics": [
        "getEllipsisName"
      ]
    },
    {
      "page": "getObjectClassKind",
      "title": "Get R object class kind",
      "concept": [
        "class management"
      ],
      "topics": [
        "getObjectClassKind"
      ]
    },
    {
      "page": "getObjectClassNames",
      "title": "Retrieve Function Arguments.",
      "topics": [
        "getObjectClassNames",
        "hasMainClass"
      ]
    },
    {
      "page": "getObjectFunctionArgumentNames",
      "title": "Retrieve Function Arguments.",
      "topics": [
        "getObjectFunctionArgumentNames"
      ]
    },
    {
      "page": "getObjectFunctionNames",
      "title": "Retrieve Function Names From Object",
      "topics": [
        "getClassTypicalFunctionNames",
        "getObjectFunctionNames"
      ]
    },
    {
      "page": "identifyOPInstrumentationLevel",
      "title": "Identify Offensive Programming Instrumentation Level",
      "concept": [
        "code evaluation mode"
      ],
      "topics": [
        "identifyOPInstrumentationLevel"
      ]
    },
    {
      "page": "isAuditable",
      "title": "Is Auditable",
      "topics": [
        "isAuditable"
      ]
    },
    {
      "page": "matchFunctionSignature",
      "title": "Retrieve Function Arguments.",
      "topics": [
        "matchFunctionSignature"
      ]
    },
    {
      "page": "opInformation",
      "title": "Package functions information",
      "concept": [
        "code evaluation mode"
      ],
      "topics": [
        "opInformation"
      ]
    },
    {
      "page": "print.EvaluationMode",
      "title": "Print generic method for S3 class *_'EvaluationMode'_*",
      "topics": [
        "print.EvaluationMode"
      ]
    },
    {
      "page": "print.FunctionParameterName",
      "title": "Print generic method for S3 class *_'FunctionParameterName'_*",
      "topics": [
        "print.FunctionParameterName"
      ]
    },
    {
      "page": "print.TestCaseDefinition",
      "title": "Print generic method for S3 class *_'TestCaseDefinition'_*",
      "topics": [
        "print.TestCaseDefinition"
      ]
    },
    {
      "page": "retrieveFactory",
      "title": "Retrieve the type factory object",
      "concept": [
        "code evaluation mode"
      ],
      "topics": [
        "retrieveFactory"
      ]
    },
    {
      "page": "retrieveFunctionArgumentsNames",
      "title": "Retrieve Function Argument Names.",
      "topics": [
        "retrieveFunctionArgumentNames"
      ]
    },
    {
      "page": "retrieveFunctionArguments",
      "title": "Retrieve Function Arguments.",
      "topics": [
        "retrieveFunctionArguments"
      ]
    },
    {
      "page": "retrieveFunctionReturnTypes",
      "title": "Retrieve function return types",
      "concept": [
        "code evaluation mode"
      ],
      "topics": [
        "retrieveFunctionReturnTypes"
      ]
    },
    {
      "page": "retrievePackageFunctionNames",
      "title": "Retrieve Package Function Names",
      "topics": [
        "retrievePackageFunctionNames"
      ]
    },
    {
      "page": "retrieveTestCaseDefinitions",
      "title": "Retrieve test case definitions or test case descriptions.",
      "concept": [
        "code evaluation mode"
      ],
      "topics": [
        "retrieveTestCaseDefinitions",
        "retrieveTestCaseDescriptions"
      ]
    },
    {
      "page": "runFunction",
      "title": "Run a _'function'_",
      "concept": [
        "code evaluation mode"
      ],
      "topics": [
        "runFunction"
      ]
    },
    {
      "page": "runTestCase",
      "title": "Run test cases",
      "concept": [
        "code evaluation mode"
      ],
      "topics": [
        "runTestCase"
      ]
    },
    {
      "page": "runTransientFunction",
      "title": "Run Transient Function",
      "concept": [
        "code evaluation mode"
      ],
      "topics": [
        "runTransientFunction"
      ]
    },
    {
      "page": "TestCaseDefinition",
      "title": "Test Case Definition",
      "concept": [
        "code evaluation mode"
      ],
      "topics": [
        "TestCaseDefinition"
      ]
    },
    {
      "page": "verifyClassName",
      "title": "Verify Class Name",
      "concept": [
        "code evaluation mode"
      ],
      "topics": [
        "verifyClassName"
      ]
    },
    {
      "page": "verifyFunctionArguments",
      "title": "Verify Function Arguments",
      "topics": [
        "verifyFunctionArguments"
      ]
    },
    {
      "page": "verifyFunctionName",
      "title": "Verify function name",
      "concept": [
        "code evaluation mode"
      ],
      "topics": [
        "verifyFunctionName"
      ]
    },
    {
      "page": "verifyFunctionReturnTypesDefinition",
      "title": "Verify Function Return Types Definition",
      "concept": [
        "code evaluation mode"
      ],
      "topics": [
        "verifyFunctionReturnTypesDefinition"
      ]
    },
    {
      "page": "verifyObjectNames",
      "title": "Verify Object Names",
      "concept": [
        "code evaluation mode"
      ],
      "topics": [
        "verifyObjectNames"
      ]
    },
    {
      "page": "verifyTestCaseDefinitions",
      "title": "Verify Test Case Definitions",
      "concept": [
        "code evaluation mode"
      ],
      "topics": [
        "verifyTestCaseDefinitions"
      ]
    }
  ],
  "_rundeps": [
    "cli",
    "cpp11",
    "crayon",
    "data.table",
    "dplyr",
    "generics",
    "glue",
    "lifecycle",
    "magrittr",
    "pillar",
    "pkgconfig",
    "purrr",
    "R6",
    "rlang",
    "stringi",
    "stringr",
    "tibble",
    "tidyr",
    "tidyselect",
    "utf8",
    "vctrs",
    "withr"
  ],
  "_vignettes": [
    {
      "source": "release-notes.Rmd",
      "filename": "release-notes.html",
      "title": "wyz.code.offensiveProgramming releases",
      "author": "Fabien GELINEAU",
      "engine": "knitr::rmarkdown",
      "headings": [
        "name [awesome-asterion-omega] package-version [1.1.24] timestamp [2023-09-25 08:27:33]",
        "name [awesome-asterion-psi] package-version [1.1.23] timestamp [2021-10-05 22:58:54]",
        "name [awesome-asterion-khi] package-version [1.1.22] timestamp [2021-10-05 20:17:45]",
        "name [awesome-asterion-phi] package-version [1.1.21] timestamp [2020-11-09 19:57:38]",
        "",
        "Release awesome-asterion-tau - 1.1.19 - 2020-05-04",
        "Release 1.1.18 - awesome-asterion-sigma - 2005-05-04",
        "Release 1.1.17",
        "Release 1.1.16 - January 2020",
        "Release 1.1.15",
        "Release 1.1.14",
        "Release 1.1.10",
        "Release 1.1.9"
      ],
      "created": "2019-07-18 11:00:02",
      "modified": "2023-09-25 08:32:40",
      "commits": 5
    }
  ],
  "_score": 2.9542425094393248,
  "_indexed": true,
  "_nocasepkg": "wyz.code.offensiveprogramming",
  "_universes": [
    "neonira"
  ],
  "_binaries": [
    {
      "r": "4.7.0",
      "os": "linux",
      "version": "1.1.24",
      "date": "2026-05-24T05:52:51.000Z",
      "distro": "noble",
      "commit": "5d74405a7ea9b346e50b24ae7fb59a7cf8f03cd4",
      "fileid": "3cfb0b6b1c19c029e32fffcc738586a6f4bd212106228815c0a1d2ab64ad2d0c",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/neonira/actions/runs/26353278386"
    },
    {
      "r": "4.6.0",
      "os": "linux",
      "version": "1.1.24",
      "date": "2026-05-24T05:52:54.000Z",
      "distro": "noble",
      "commit": "5d74405a7ea9b346e50b24ae7fb59a7cf8f03cd4",
      "fileid": "bd90f031024a696a14edbef985e81522b865b21e5c02e5f304c449dceacfe68b",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/neonira/actions/runs/26353278386"
    },
    {
      "r": "4.5.3",
      "os": "mac",
      "version": "1.1.24",
      "date": "2026-05-24T05:52:02.000Z",
      "commit": "5d74405a7ea9b346e50b24ae7fb59a7cf8f03cd4",
      "fileid": "95fc6c9559c8c8dde05c6d7bc5c2e482b59cf17ebf3ef070929264f58d0f1fbe",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/neonira/actions/runs/26353278386"
    },
    {
      "r": "4.6.0",
      "os": "mac",
      "version": "1.1.24",
      "date": "2026-05-24T05:52:07.000Z",
      "commit": "5d74405a7ea9b346e50b24ae7fb59a7cf8f03cd4",
      "fileid": "27f7c9384fd6a025056dbd604bc4946219cfad5566f6315dbef8e8e83adf7782",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/neonira/actions/runs/26353278386"
    },
    {
      "r": "4.6.0",
      "os": "wasm",
      "version": "1.1.24",
      "date": "2026-05-24T05:52:41.000Z",
      "commit": "5d74405a7ea9b346e50b24ae7fb59a7cf8f03cd4",
      "fileid": "92d768d7ddd9d8d130625c3493d9fffd582b629f1a6315fc83056e95e88781b3",
      "status": "success",
      "buildurl": "https://github.com/r-universe/neonira/actions/runs/26353278386"
    },
    {
      "r": "4.7.0",
      "os": "win",
      "version": "1.1.24",
      "date": "2026-05-24T05:52:13.000Z",
      "commit": "5d74405a7ea9b346e50b24ae7fb59a7cf8f03cd4",
      "fileid": "ae344416089cba13973e5b39afb4b5a8d332054cae3a9c498a54347086819fe5",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/neonira/actions/runs/26353278386"
    },
    {
      "r": "4.5.3",
      "os": "win",
      "version": "1.1.24",
      "date": "2026-05-24T05:51:56.000Z",
      "commit": "5d74405a7ea9b346e50b24ae7fb59a7cf8f03cd4",
      "fileid": "c58f5bebabde41e389ba7d8dd1cf0bbae28b999e301ebb77033fb6e3f19d0bf1",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/neonira/actions/runs/26353278386"
    },
    {
      "r": "4.6.0",
      "os": "win",
      "version": "1.1.24",
      "date": "2026-05-24T05:52:00.000Z",
      "commit": "5d74405a7ea9b346e50b24ae7fb59a7cf8f03cd4",
      "fileid": "cc5d0f5392226d58bcfbe5ecbb1cee5eeabe87d14577a1d0f213ef0301762fd2",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/neonira/actions/runs/26353278386"
    }
  ]
}