uv/crates/puffin-client
Andrew Gallant a42b385e9b
puffin-client: add SimpleMetadataRaw (#1150)
This adds what is effectively an owned wrapper around
`Archived<SimpleMetadata>`. Normally, an `Archived<SimpleMetadata>`
has to be used behind a pointer (since it has a lifetime
attached to its underlying byte buffer), but we create a
wrapper around it that owns the underlying buffer and provides
free access to the archived type.

This in effect creates an anchor point for the archived type
and lets us pass it around easily. (There has to be an anchor
point for it somewhere.)

An alternative to this approach would be to store it as a file
backed memory map. But in practice, we're dealing with small
files, and just reading them on to the heap is likely to be
faster. (Memory maps also have wildly different perf characteristics
across platforms.)

Note that this commit just defines the type. It isn't actually
used anywhere yet.
2024-01-29 09:37:06 -05:00
..
src puffin-client: add SimpleMetadataRaw (#1150) 2024-01-29 09:37:06 -05:00
tests Preserve verbatim URLs (#639) 2023-12-14 15:03:39 +00:00
Cargo.toml add initial rkyv support (#1135) 2024-01-28 12:14:59 -05:00
README.md Add client networking stack 2023-10-05 12:45:38 -04:00

pypi-client

A general-use client for interacting with PyPI.

Loosely modeled after Orogene's oro-client.