ahkpm.json & ahkpm.lock

ahkpm uses two files to keep track of the packages you use, ahkpm.json for specifying your direct dependencies, and ahkpm.lock to ensure that you always get the same versions you expect.

ahkpm.json

This file is where the user of ahkpm declares their dependencies and other package data.

{
  "version": "0.0.1",
  "description": "A brief description of what the package does",
  // URL for the package's git repository
  "repository": "github.com/user/my-project",
  // URL for the package's main website
  "website": "example.com",
  // The SPDX License identifier for the package's software license
  "license": "MIT",
  // URL for users to file bugs/issues for the package
  "issueTracker": "github.com/user/my-project/issues",
  // Information about the primary author of the package
  "author": {
    "name": "joshuacc",
    "email": "",
    "website": "joshuaclanton.dev"
  },
  // Lists all dependencies along with the required version
  "dependencies": {
    "github.com/user/repo1": "1.0.0",
    "github.com/user/repo2": "tag:beta2",
    "github.com/user/repo3": "branch:main",
    "github.com/user/repo4": "commit:badcce14f8e828cda4d8ac404a12448700de1441"
  }
}

ahkpm.lock

This file is automatically generated by ahkpm and should not be edited.

{
  "lockfileVersion": 1,
  // This should exactly match ahkpm.json unless ahkpm.json has been manually edited
  "dependencies": {
    "github.com/joshuacc/mock-ahkpm-package-a": "branch:main",
  },
  "resolved": [
    {
      "name": "github.com/joshuacc/mock-ahkpm-package-a",
      "version": "branch:main",
      "sha": "c5b8f8d0d0d1e5c9a5f7f8b8b5c9a5f7f8b8b5c9a",
      "installPath": "ahkpm-modules/github.com/joshuacc/mock-ahkpm-package-a",
      "dependencies": {
          "github.com/joshuacc/mock-ahkpm-package-b": "^1.0.0"
      }
    },
    {
      "name": "github.com/joshuacc/mock-ahkpm-package-b",
      "version": "1.0.2",
      "installPath": "ahkpm-modules/github.com/joshuacc/mock-ahkpm-package-a/ahkpm-modules/github.com/joshuacc/mock-ahkpm-package-b",
      "sha": "c5b8f8d0d0d1e5c9a5f7f8b8b5c9a5f7f8b8b5c9a",
      "dependencies": {}
    }
  ]
}