Skip to content
jc-rs
GitHub

pkg-index-apk

--pkg-index-apkv1.0.0

Alpine Linux Package Index file parser

fileslurpable
$ cat input.txt | jc-rs --pkg-index-apk

A real pair

From the reference corpus (generic/pkg-index-apk.json). The left pane is the input the fixture ships; the right pane is the corpus's expected JSON. CI compares jc-rs with it field by field under the published differential. Hover a value to see where it came from.

pkg_index_apkgeneric
C:Q1znBl9k+RKgY6gl5Eg3iz73KZbLY=
P:yasm
V:1.3.0-r4
A:x86_64
S:772109
I:1753088
T:A rewrite of NASM to allow for multiple syntax supported (NASM, TASM, GAS, etc.)
U:http://www.tortall.net/projects/yasm/
L:BSD-2-Clause
o:yasm
m:Natanael Copa <ncopa@alpinelinux.org>
t:1681228881
c:84a227baf001b6e0208e3352b294e4d7a40e93de
D:so:libc.musl-x86_64.so.1
p:cmd:vsyasm=1.3.0-r4 cmd:yasm=1.3.0-r4 cmd:ytasm=1.3.0-r4

C:Q1D3O+vigqMNGhFeVW1bT5Z9mZEf8=
P:yasm-dev
V:1.3.0-r4
A:x86_64
S:449076
I:1773568
T:A rewrite of NASM to allow for multiple syntax supported (NASM, TASM, GAS, etc.) (development files)
U:http://www.tortall.net/projects/yasm/
L:BSD-2-Clause
o:yasm
m:Natanael Copa <ncopa@alpinelinux.org>
t:1681228881
c:84a227baf001b6e0208e3352b294e4d7a40e93de
expected outputjson
Use the Left and Right arrow keys to highlight the matching value in the input.
[
  {
    "checksum": "Q1znBl9k+RKgY6gl5Eg3iz73KZbLY=",
    "package": "yasm",
    "version": "1.3.0-r4",
    "architecture": "x86_64",
    "package_size": 772109,
    "installed_size": 1753088,
    "description": "A rewrite of NASM to allow for multiple syntax supported (NASM, TASM, GAS, etc.)",
    "url": "http://www.tortall.net/projects/yasm/",
    "license": "BSD-2-Clause",
    "origin": "yasm",
    "maintainer": {
      "name": "Natanael Copa",
      "email": "ncopa@alpinelinux.org"
    },
    "build_time": 1681228881,
    "commit": "84a227baf001b6e0208e3352b294e4d7a40e93de",
    "dependencies": [
      "so:libc.musl-x86_64.so.1"
    ],
    "provides": [
      "cmd:vsyasm=1.3.0-r4",
      "cmd:yasm=1.3.0-r4",
      "cmd:ytasm=1.3.0-r4"
    ]
  },
  {
    "checksum": "Q1D3O+vigqMNGhFeVW1bT5Z9mZEf8=",
    "package": "yasm-dev",
    "version": "1.3.0-r4",
    "architecture": "x86_64",
    "package_size": 449076,
    "installed_size": 1773568,
    "description": "A rewrite of NASM to allow for multiple syntax supported (NASM, TASM, GAS, etc.) (development files)",
    "url": "http://www.tortall.net/projects/yasm/",
    "license": "BSD-2-Clause",
    "origin": "yasm",
    "maintainer": {
      "name": "Natanael Copa",
      "email": "ncopa@alpinelinux.org"
    },
    "build_time": 1681228881,
    "commit": "84a227baf001b6e0208e3352b294e4d7a40e93de"
  }
]

Fixture coverage

2/2oracle-valid pairs match under the published structural JSON comparison

Magic syntax

not availableThis parser reads a file or a string rather than a command, so there is nothing for jc-rs to run. Pipe it in.

Source: crates/jc-rs-parsers/src/package/pkg_index_apk.rs. jc-rs targets the schemas defined by the original Python tool. Fixture coverage above is the measured evidence for this parser; test the inputs your pipeline depends on. Compare