Several.
My first "package manager" was little more than a manifest of files to download. This grew to the point where most packages were a single tarball.
My second iteration introduced a dedicated format for tarballs with an integrated metadata description, but it was written in Python and relied heavily on some tricks the "tarfile" module provided.
When I rewrote my userspace to remove third-party dependencies, I essentially went back to the first concept, though I've consistently used tarballs for package contents. I am actively working to move back to the dedicated package file format.