Skip to main content

Info

ReverseBox is a Python package with a set of functions useful in software reverse engineering.

Why ReverseBox?
It's designed to help with:

  1. Decompressing / compressing data
  2. Decrypting / encrypting data
  3. Tedious reverse engineering tasks e.g. testing different checksum algorithms to find the one that was used in the software or file format
  4. Figuring out file formats
  5. Parsing data structures
  6. Wrapping functions for input/output operations
  7. Searching for raw images

Who should use ReverseBox?
Mostly developers and reverse engineers (e.g. file format researchers or software researchers).

List of functionalities

  • Checksum

    • Adler32 ✔️
    • Cocos2d PVR ✔️
    • Fletcher16 ✔️
    • Fletcher32 ✔️
    • Internet Checksum / IPv4 header checksum ✔️
    • Sum8 ✔️
    • Sum8 2s Complement ✔️
    • Unix Sum BSD16 ✔️
    • Unix Sum SYSV ✔️
    • Xor8 ✔️
  • CRC

    • CRC-8 ✔️
    • CRC-8/CDMA2000 ✔️
    • CRC-8/DARC ✔️ (wrapper only)
    • CRC-16 (ARC) ✔️
    • CRC-16 (Modbus) ✔️
    • CRC-16 (Sick) ✔️
    • CRC-16 (DNP) ✔️
    • CRC-16 (EA CRCF) ✔️
    • CRC-16-CCITT (XModem) ✔️
    • CRC-16-CCITT (0xFFFF) ✔️
    • CRC-16-CCITT (0x1D0F) ✔️
    • CRC-16-CCITT (Kermit) ✔️
    • CRC-32/CKSUM (Unix cksum) ✔️
    • CRC-32 (ISO/HDLC) ✔️
    • CRC-32 (Asobo) ✔️
    • CRC-64 (Asobo) ✔️
    • CRC-64/GO-ISO ✔️ (wrapper only)
  • Compression

    • Asobo (TODO) ❌
    • BZE/BZZ (TODO) ❌
    • BZIP2 ✔️ (wrapper only)
    • GZIP (TODO) ❌
    • JCALG1 (TODO) ❌
    • LZ4 ✔️ (wrapper only)
    • LZMA ✔️ (wrapper only)
    • LZO / LZO1X ✔️ (wrapper only)
    • LZSS (TODO) ❌
    • MIO0 ✔️
    • NitroSDK (TODO) ❌
    • Oodle (TODO) ❌
    • Refpack (EA Games) ✔️ (wrapper only)
    • RNC (TODO) ❌
    • ZLIB ✔️ (wrapper only)
    • PS2 GS Texture Compression ✔️
    • RLE TGA ✔️
    • RLE TGA (reversed condition) ✔️
    • PackBits (Macintosh RLE) ✔️
    • (game-specific) Re:Tiyoruga DAT compression ✔️
    • (game-specific) Intelligent Games Custom Huffman ✔️
    • (game-specific) Executioners RLE ✔️
    • (game-specific) Emergency RLE ✔️
    • (game-specific) Neversoft RLE ✔️
    • (game-specific) Tzar RLE ✔️
    • (game-specific) Leapster RLE ✔️
  • Encryption

    • AES (TODO) ❌
    • DES (TODO) ❌
    • Lucifer / DTD-1 (TODO) ❌
    • ROT13 ✔️
    • XOR Cipher (Basic) ✔️
    • XOR Cipher (Basic) Guesser ✔️
    • Hatch Engine Encryption ✔️
    • (game-specific) XOR Cipher (Retro64 ECO) ✔️
    • (game-specific) XOR Cipher (Giana’s Return ZDA) ✔️
  • Hash

    • Additive Hash ✔️
    • AP ✔️
    • DJB2 ✔️
    • RX3 ✔️
    • FNV0-32 ✔️
    • FNV0-64 ✔️
    • FNV1-32 ✔️
    • FNV1-64 ✔️
    • FNV1A-32 ✔️
    • FNV1A-64 ✔️
    • Jenkins one-at-a-time ✔️
    • SDBM ✔️
    • SHA-1 ✔️ (wrapper only)
    • SHA-2 (256 bits) ✔️ (wrapper only)
    • MD2 ✔️ (wrapper only)
    • MD5 ✔️ (wrapper only)
    • Murmur3 ✔️ (wrapper only)
    • (game-specific) Hercules (TODO) ❌
    • (game-specific) E-racer (TODO) ❌
    • (game-specific) Pivotal Games DAT Hash ✔️
  • Image

    • 3DS Swizzling/Twiddling ✔️
    • CMPR Swizzling/Twiddling ✔️
    • PS2 Swizzling/Twiddling ✔️
    • PS2 Palette Swizzling/Twiddling ✔️
    • PS4 Swizzling/Twiddling ✔️
    • PS5 Swizzling/Twiddling ✔️
    • PSP Swizzling/Twiddling ✔️
    • PS Vita Swizzling/Twiddling ✔️
    • XBOX 360 Swizzling/Twiddling ✔️
    • GameCube/WII Swizzling/Twiddling ✔️
    • Switch Swizzling/Twiddling ✔️
    • WII U Swizzling/Twiddling ✔️
    • XBOX/PS3 Swizzling/Twiddling (Morton Order) ✔️
    • Dreamcast Swizzling/Twiddling (Morton Order) ✔️
    • BC Swizzling/Twiddling ✔️
    • PS2 GS Texture Swizzling/Twiddling ✔️
    • Generating mipmaps ✔️
    • Decoding and encoding images with pixel formats
      mentioned in the following table:
Pixel Format Decode support Encode support
RGB121 ✔️ ❌
ALPHA4 ✔️ ❌
ALPHA4_17X ✔️ ✔️
RGB121_BYTE ✔️ ❌
RGBA2222 ✔️ ❌
RGBX2222 ✔️ ❌
GRAY8 ✔️ ❌
ALPHA8 ✔️ ❌
ALPHA8_17X ✔️ ❌
LA44 ✔️ ❌
RGBX332 (RGB8) ✔️ ❌
BGRX332 (BGR8) ✔️ ❌
RGB565 ✔️ ✔️
BGR565 ✔️ ✔️
RGBX5551 ✔️ ✔️
RGBT5551 ✔️ ✔️
BGRT5551 ✔️ ❌
RGBA5551 ✔️ ✔️
BGRA5551 ✔️ ✔️
BGRA5551_TZAR ✔️ ❌
BGRX5551 ✔️ ❌
RGBX6666 ✔️ ❌
RGBA6666 ✔️ ❌
RGB888 (RGB24) ✔️ ✔️
BGR888 (BGR24) ✔️ ✔️
ARGB4444 ✔️ ❌
RGBA4444 ✔️ ❌
ABGR4444 ✔️ ✔️
XBGR4444 ✔️ ❌
RGBX4444 ✔️ ✔️
BGRA4444 ✔️ ✔️
BGRA4444_LEAPSTER ✔️ ❌
BGRX4444 ✔️ ❌
XRGB1555 ✔️ ❌
ARGB1555 ✔️ ❌
ABGR1555 ✔️ ❌
XBGR1555 ✔️ ❌
ARGB8888 ✔️ ✔️
ABGR8888 ✔️ ❌
RGBA8888 ✔️ ✔️
BGRA8888 ✔️ ✔️
XRGB8888 ✔️ ❌
RGBX8888 ✔️ ❌
XBGR8888 ✔️ ❌
BGRX8888 ✔️ ❌
BGRT8888 ✔️ ❌
BGRA8888_TZAR ✔️ ❌
RGB48 ✔️ ❌
BGR48 ✔️ ❌
PAL4 ✔️ ✔️
PAL8 ✔️ ✔️
PAL8_TZAR ✔️ ❌
PAL16 ✔️ ❌
PAL32 ✔️ ❌
PAL_I8A8 ✔️ ❌
N64_RGB5A3 ✔️ ❌
N64_BGR5A3 ✔️ ✔️
N64_I4 / GRAY4 ✔️ ✔️
N64_I8 / GRAY8 ✔️ ✔️
N64_IA4 ✔️ ✔️
N64_IA8 ✔️ ✔️
N64_RGBA32 ✔️ ❌
N64_CMPR ✔️ ✔️
BC1/DXT1 ✔️ ✔️
PSP_DXT1 ✔️ ❌
DXT2 ✔️ ❌
BC2/DXT3 ✔️ ✔️
PSP_DXT3 ✔️ ❌
DXT4 ✔️ ✔️
BC3/DXT5 ✔️ ✔️
PSP_DXT5 ✔️ ❌
BC4 ✔️ ✔️
BC5 ✔️ ✔️
BC6 ✔️ ✔️
BC7 ✔️ ✔️
PVRTCI_2bpp_RGB ✔️ ✔️
PVRTCI_2bpp_RGBA ✔️ ✔️
PVRTCI_4bpp_RGB ✔️ ✔️
PVRTCI_4bpp_RGBA ✔️ ✔️
PVRTCII_2bpp ✔️ ✔️
PVRTCII_4bpp ✔️ ✔️
ETC1 ✔️ ✔️
BW1bpp ✔️ ✔️
SharedExponentR9G9B9E5 ✔️ ✔️
RGBG8888 ✔️ ✔️
GRGB8888 ✔️ ✔️
ETC2_RGB ✔️ ✔️
ETC2_RGBA ✔️ ✔️
ETC2_RGB_A1 ✔️ ✔️
EAC_R11 ✔️ ✔️
EAC_RG11 ✔️ ✔️
ASTC_4x4 ✔️ ✔️
ASTC_5x4 ✔️ ✔️
ASTC_5x5 ✔️ ✔️
ASTC_6x5 ✔️ ✔️
ASTC_6x6 ✔️ ✔️
ASTC_8x5 ✔️ ✔️
ASTC_8x6 ✔️ ✔️
ASTC_8x8 ✔️ ✔️
ASTC_10x5 ✔️ ✔️
ASTC_10x6 ✔️ ✔️
ASTC_10x8 ✔️ ✔️
ASTC_10x10 ✔️ ✔️
ASTC_12x10 ✔️ ✔️
ASTC_12x12 ✔️ ✔️
ASTC_3x3x3 ✔️ ✔️
ASTC_4x3x3 ✔️ ✔️
ASTC_4x4x3 ✔️ ✔️
ASTC_4x4x4 ✔️ ✔️
ASTC_5x4x4 ✔️ ✔️
ASTC_5x5x4 ✔️ ✔️
ASTC_5x5x5 ✔️ ✔️
ASTC_6x5x5 ✔️ ✔️
ASTC_6x6x5 ✔️ ✔️
ASTC_6x6x6 ✔️ ✔️
BASISU_ETC1S ✔️ ✔️
BASISU_UASTC ✔️ ✔️
RGBM ✔️ ✔️
RGBD ✔️ ✔️
GST121 ✔️ ❌
GST221 ✔️ ❌
GST421 ✔️ ❌
GST821 ✔️ ❌
GST122 ✔️ ❌
GST222 ✔️ ❌
GST422 ✔️ ❌
GST822 ✔️ ❌
YUY2 ✔️ ❌
NV12 ✔️ ❌
NV21 ✔️ ❌
UYVY ✔️ ❌
YUV444P ✔️ ❌
YUV410P ✔️ ❌
YUV420P ✔️ ❌
YUV422P ✔️ ❌
YUV411P ✔️ ❌
UYYVYY411 ✔️ ❌
YUV440P ✔️ ❌
YUVA420P ✔️ ❌
AYUV ✔️ ❌
GRAY8A (LA88) ✔️ ❌
GRAY16 ✔️ ❌
RG88 ✔️ ❌
R8 ✔️ ❌
G8 ✔️ ❌
B8 ✔️ ❌
R16 ✔️ ❌
G16 ✔️ ❌
B16 ✔️ ❌
R32 ✔️ ❌
G32 ✔️ ❌
B32 ✔️ ❌
BUMPMAP_SR ✔️ ❌
  • IO
    • File Reader ✔️
    • File Writer ✔️
    • Bytes Handler ✔️
    • Translation Text Handler ✔️
    • Mod Handler ✔️
    • File extension checking ✔️
    • Padding calculation ✔️
    • File size checking ✔️

Checksum calculation - example

// CRC32 calculation

from reversebox.crc import crc32_iso_hdlc
from reversebox.common import common

test_data = b'123456789'
crc32_handler = crc32_iso_hdlc.CRC32Handler()
crc32 = crc32_handler.calculate_crc32(test_data)
print("CRC32_INT: ", crc32)
print("CRC32_STR: ", common.convert_int_to_hex_string(crc32))

// CRC32 output

CRC32_INT:  3421780262
CRC32_STR:  0xCBF43926

XOR encryption - example

// XOR Cipher (Basic)

from reversebox.encryption.encryption_xor_basic import xor_cipher_basic


test_data = b'abcd'
test_key = b'\x3D'
xor_result = xor_cipher_basic(test_data, test_key)
print(xor_result)

// XOR Cipher output

b'\\_^Y'

File Handler - example

// File reading

import os
from reversebox.io_files.file_handler import FileHandler


file_path = os.path.join(os.path.dirname(__file__), "file.bin")
file_reader = FileHandler(file_path, "rb")
file_reader.open()
value = file_reader.read_str(4, "utf8")
print(value)

// File Reader Output

ABCD

Hash calculation - example

// SHA-1 calculation

from reversebox.hash.hash_sha1 import SHA1Handler

test_data = b'abcd'
sha1_handler = SHA1Handler()
sha1 = sha1_handler.calculate_sha1_hash(test_data)
print("SHA-1 hash: ", sha1)

// SHA-1 Output

SHA-1 hash:  b'\x81\xfe\x8b\xfe\x87Wl>\xcb"Bo\x8eW\x84s\x82\x91z\xcf'

Image decoding - example

// DXT1 compressed image decoding

from reversebox.image.image_decoder import ImageDecoder
from reversebox.image.image_formats import ImageFormats
from reversebox.image.pillow_wrapper import PillowWrapper


def show_img():
    with open("image_data_dxt1_64x64.bin", "rb") as f:
        image_data = f.read()

    img_width: int = 64
    img_height: int = 64
    decoder = ImageDecoder()
    wrapper = PillowWrapper()
    converted_data: bytes = decoder.decode_compressed_image(image_data, img_width, img_height, ImageFormats.BC1_DXT1)
    pil_image = wrapper.get_pillow_image_from_rgba8888_data(converted_data, img_width, img_height)
    pil_image.show()


if __name__ == '__main__':
    show_img()

More Examples

Need more examples?
Check out list of tools written using ReverseBox:

Badges

PyPI Downloads PyPI - Downloads GitHub License GitHub commit activity GitHub repo size PyPI - Version

Metadata

Release files for ReverseBox 0.85.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for ReverseBox 0.85.0
File Size Uploaded
reversebox-0.85.0.tar.gz 1.9 MB Details

Release files / reversebox-0.85.0.tar.gz

Download URL reversebox-0.85.0.tar.gz
Size 1.9 MB
Tags Source
SHA-256 checksum
How to use checksums
cddc904bf95c00af9378da7c4a837e4db49c158520d7f9e5b568a1007c5cf618
BLAKE2b-256 checksum
How to use checksums
6fd71595af4c2471522ae2a77e434ede5071f8a6bc69a9d63fd31d9aa193b8e8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.11.6

Release history Release notifications | RSS feed

This release

0.85.0 This release

1 release file

0.84.5

1 release file

0.84.4

1 release file

0.84.3

1 release file

0.84.2

1 release file

0.84.1

1 release file

0.84.0

1 release file

0.83.3

1 release file

0.83.2

1 release file

0.83.1

1 release file

0.83.0

1 release file

0.82.4

1 release file

0.82.3

1 release file

0.82.2

1 release file

0.82.1

1 release file

0.82.0

1 release file

0.81.0

1 release file

0.80.0

1 release file

0.79.2

1 release file

0.79.1

1 release file

0.79.0

1 release file

0.78.3

1 release file

0.78.2

1 release file

0.78.1

1 release file

0.78.0

1 release file

0.77.0

1 release file

0.75.4

1 release file

0.75.3

1 release file

0.75.2

1 release file

0.75.1

1 release file

0.75.0

1 release file

0.74.0

1 release file

0.73.1

1 release file

0.73.0

1 release file

0.72.0

1 release file

0.71.0

1 release file

0.70.0

1 release file

0.69.0

1 release file

0.68.0

1 release file

0.66.0

1 release file

0.65.0

1 release file

0.64.0

1 release file

0.63.1

1 release file

0.63.0

1 release file

0.62.5

1 release file

0.62.3

1 release file

0.62.2

1 release file

0.62.1

1 release file

0.62.0

1 release file

0.61.2

1 release file

0.61.1

1 release file

0.61.0

1 release file

0.60.0

1 release file

0.59.0

1 release file

0.58.0

1 release file

0.57.3

1 release file

0.57.2

1 release file

0.57.1

1 release file

0.57.0

1 release file

0.56.0

1 release file

0.55.1

1 release file

0.55.0

1 release file

0.54.0

1 release file

0.52.1

1 release file

0.52.0

1 release file

0.51.0

1 release file

0.50.0

1 release file

0.49.5

1 release file

0.49.4

1 release file

0.49.3

1 release file

0.49.2

1 release file

0.49.1

1 release file

0.49.0

1 release file

0.48.3

1 release file

0.48.2

1 release file

0.48.1

1 release file

0.48.0

1 release file

0.47.2

1 release file

0.47.1

1 release file

0.47.0

1 release file

0.46.0

1 release file

0.45.1

1 release file

0.45.0

1 release file

0.44.0

1 release file

0.43.2

1 release file

0.43.1

1 release file

0.43.0

1 release file

0.42.0

1 release file

0.41.0

1 release file

0.40.0

1 release file

0.39.0

1 release file

0.38.0

1 release file

0.37.1

1 release file

0.36.0

1 release file

0.35.7

1 release file

0.35.6

1 release file

0.35.5

1 release file

0.35.3

1 release file

0.35.2

1 release file

0.35.1

1 release file

0.35.0

1 release file

0.34.1

1 release file

0.34.0

1 release file

0.33.1

1 release file

0.33.0

1 release file

0.32.0

1 release file

0.31.0

1 release file

0.30.0

1 release file

0.29.0

1 release file

0.28.0

1 release file

0.27.9

1 release file

0.27.8

1 release file

0.27.7

1 release file

0.27.6

1 release file

0.27.5

1 release file

0.27.4

1 release file

0.27.3

1 release file

0.27.2

1 release file

0.27.1

1 release file

0.27.0

1 release file

0.26.8

1 release file

0.26.7

1 release file

0.26.6

1 release file

0.26.5

1 release file

0.26.3

1 release file

0.26.2

1 release file

0.26.1

1 release file

0.26.0

1 release file

0.25.6

1 release file

0.25.5

1 release file

0.25.4

1 release file

0.25.3

1 release file

0.25.2

1 release file

0.25.1

1 release file

0.25.0

1 release file

0.24.9

1 release file

0.24.8

1 release file

0.24.7

1 release file

0.24.6

1 release file

0.24.5

1 release file

0.24.4

1 release file

0.24.3

1 release file

0.24.2

1 release file

0.24.1

1 release file

0.24.0

1 release file

0.23.9

1 release file

0.23.8

1 release file

0.23.7

1 release file

0.23.6

1 release file

0.23.5

1 release file

0.23.4

1 release file

0.23.3

1 release file

0.23.2

1 release file

0.23.1

1 release file

0.23.0

1 release file

0.22.0

1 release file

0.21.9

1 release file

0.21.8

1 release file

0.21.7

1 release file

0.21.6

1 release file

0.21.5

1 release file

0.21.4

1 release file

0.21.3

1 release file

0.21.2

1 release file

0.21.1

1 release file

0.21.0

1 release file

0.20.8

1 release file

0.20.7

1 release file

0.20.6

1 release file

0.20.5

1 release file

0.20.4

1 release file

0.20.3

1 release file

0.20.2

1 release file

0.20.1

1 release file

0.20.0

1 release file

0.19.9

1 release file

0.19.8

1 release file

0.19.7

1 release file

0.19.6

1 release file

0.19.5

1 release file

0.19.4

1 release file

0.19.3

1 release file

0.19.2

1 release file

0.19.1

1 release file

0.19.0

1 release file

0.18.9

1 release file

0.18.8

1 release file

0.18.7

1 release file

0.18.6

1 release file

0.18.5

1 release file

0.18.4

1 release file

0.18.3

1 release file

0.18.2

1 release file

0.18.1

1 release file

0.18.0

1 release file

0.17.9

1 release file

0.17.8

1 release file

0.17.7

1 release file

0.17.6

1 release file

0.17.5

1 release file

0.17.4

1 release file

0.17.3

1 release file

0.17.2

1 release file

0.17.0

1 release file

0.16.9

1 release file

0.16.8

1 release file

0.16.7

1 release file

0.16.6

1 release file

0.16.5

1 release file

0.16.4

1 release file

0.16.3

1 release file

0.16.2

1 release file

0.16.1

1 release file

0.16.0

1 release file

0.15.9

1 release file

0.15.6

1 release file

0.15.5

1 release file

0.15.4

1 release file

0.15.3

1 release file

0.15.2

1 release file

0.15.1

1 release file

0.15.0

1 release file

0.14.9

1 release file

0.14.8

1 release file

0.14.7

1 release file

0.14.6

1 release file

0.14.4

1 release file

0.14.3

1 release file

0.14.1

1 release file

0.14.0

1 release file

0.13.9

1 release file

0.13.8

1 release file

0.13.7

1 release file

0.13.6

1 release file

0.13.5

1 release file

0.13.4

1 release file

0.13.3

1 release file

0.13.2

1 release file

0.13.0

1 release file

0.12.9

1 release file

0.12.8

1 release file

0.12.7

1 release file

0.12.6

1 release file

0.12.5

1 release file

0.12.4

1 release file

0.12.3

1 release file

0.12.2

1 release file

0.12.1

1 release file

0.12.0

1 release file

0.11.9

1 release file

0.11.8

1 release file

0.11.7

1 release file

0.11.6

1 release file

0.11.5

1 release file

0.11.4

1 release file

0.11.3

1 release file

0.11.2

1 release file

0.11.1

1 release file

0.11.0

1 release file

0.10.9

1 release file

0.10.8

1 release file

0.10.6

1 release file

0.10.5

1 release file

0.10.4

1 release file

0.10.3

1 release file

0.10.2

1 release file

0.10.1

1 release file

0.10.0

1 release file

0.9.9

1 release file

0.9.8

1 release file

0.9.7

1 release file

0.9.6

1 release file

0.9.5

1 release file

0.9.4

1 release file

0.9.3

1 release file

0.9.2

1 release file

0.9.1

1 release file

0.9.0

1 release file

0.8.14

1 release file

0.8.13

1 release file

0.8.12

1 release file

0.8.11

1 release file

0.8.10

1 release file

0.8.9

1 release file

0.8.8

1 release file

0.8.7

1 release file

0.8.6

1 release file

0.8.5

1 release file

0.8.4

1 release file

0.8.3

1 release file

0.8.2

1 release file

0.8.1

1 release file

0.8.0

1 release file

0.7.0

1 release file

0.6.7

1 release file

0.6.6

1 release file

0.6.5

1 release file

0.6.4

1 release file

0.6.3

1 release file

0.6.2

1 release file

0.6.1

1 release file

0.6.0

1 release file

0.5.6

1 release file

0.5.5

1 release file

0.5.4

1 release file

0.5.3

1 release file

0.5.2

1 release file

0.5.1

1 release file

0.5.0

1 release file

0.4.9

1 release file

0.4.8

1 release file

0.4.7

1 release file

0.4.6

1 release file

0.4.5

1 release file

0.4.4

1 release file

0.4.3

1 release file

0.4.2

1 release file

0.4.1

1 release file

0.4.0

1 release file

0.3.2

1 release file

0.3.1

1 release file

0.3.0

1 release file

0.2.4

1 release file

0.2.3

1 release file

0.2.2

1 release file

0.2.1

1 release file

0.1.2

1 release file

0.1.1

1 release file

0.1.0

1 release file

0.0.32

1 release file

0.0.31

1 release file

0.0.29

1 release file

0.0.28

1 release file

0.0.27

1 release file

0.0.26

1 release file

0.0.25

1 release file

0.0.24

1 release file

0.0.23

1 release file

0.0.22

1 release file

0.0.20

1 release file

0.0.19

1 release file

0.0.18

1 release file

0.0.17

1 release file

0.0.16

1 release file

0.0.15

1 release file

0.0.14

1 release file

0.0.13

1 release file

0.0.12

1 release file

0.0.11

1 release file

0.0.10

1 release file

0.0.9

1 release file

0.0.8

1 release file

0.0.7

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page