Skip to content
/ wownow Public

A CLI tool to get the current versions of World of Warcraft

License

Notifications You must be signed in to change notification settings

t-mart/wownow

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

wownow

A stupid CLI tool to get the current versions of World of Warcraft.

This tool is written to support WoW addon development in CI pipelines. For example, you could use it to check that your addon is declares the current version of the game, and not an outdated one.

wownow issues TACT requests to Blizzard's version servers, parses the response, and outputs a JSON object stating the current version and build for each region of each product. See an output example below.

wownow used to be "stupid" because it just scraped from the the homepage of Wago Tools, even though there was a JSON HTTP API endpoint (see #1). Now, it's less stupid.

Installation

Generally, build the project from source:

cargo install wownow

For Linux platforms, you can also download a pre-built binary from the releases page. Or, you can use the binstall cargo tool to install it:

cargo binstall wownow

Usage

$ wownow
{
  "retrieval_datetime": "2024-03-14T17:56:25.593962700Z",
  "products": [
    {
      "name": "wow",
      "versions": [
        {
          "region": "us",
          "version": "10.2.5",
          "build": "53584"
        },
        {
          "region": "eu",
          "version": "10.2.5",
          "build": "53584"
        },
        ...
      ]
    },
    {
      "name": "wow_classic",
      "versions": [
        {
          "region": "us",
          "version": "3.4.3",
          "build": "53622"
        },
        {
          "region": "eu",
          "version": "3.4.3",
          "build": "53622"
        },
        ...
      ]
    },
    {
      "name": "wow_classic_era",
      "versions": [
        {
          "region": "us",
          "version": "1.15.1",
          "build": "53623"
        },
        {
          "region": "eu",
          "version": "1.15.1",
          "build": "53623"
        },
        ...
      ]
    }
  ]
}

Leverage with jq

You can use the jq tool to filter the output to only the information you need.

For example, to get the current version of retail (wow product) World of Warcraft in the us region:

$ wownow | jq -r --arg product "wow" --arg region "us" '.products[] | select(.name == $product).versions[] | select(.region == $region).version'
10.2.5

About

A CLI tool to get the current versions of World of Warcraft

Resources

License

Stars

Watchers

Forks

Sponsor this project

 

Packages

No packages published

Languages