Path: csiph.com!fu-berlin.de!uni-berlin.de!not-for-mail From: Dan Gass Newsgroups: comp.lang.python.announce Subject: [plum-py 0.2.0] Pack/Unpack Memory Date: Wed, 11 Mar 2020 23:17:13 -0500 Lines: 28 Approved: python-announce-list@python.org Message-ID: <158398747645.25192.python-announce-list@python.org> Reply-To: python-list@python.org Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" X-Trace: news.uni-berlin.de 5i0q0UEGQcLEnPSUo27uegZk8Z0oW9EFhgvYaJssUK+w== X-Spam-Status: OK 0.000 X-Spam-Evidence: '*H*': 1.00; '*S*': 0.00; 'library': 0.03; 'variable': 0.05; 'package.': 0.07; 'arbitrary': 0.09; 'fundamental': 0.09; 'nested': 0.09; 'numbers,': 0.09; 'offers.': 0.09; 'url-ip:151.101.0.223/32': 0.09; 'url- ip:151.101.128.223/32': 0.09; 'url-ip:151.101.192.223/32': 0.09; 'url-ip:151.101.64.223/32': 0.09; 'buffer': 0.16; 'capability': 0.16; 'conform': 0.16; 'conforms': 0.16; 'dan': 0.16; 'license:': 0.16; 'received:mail-vs1-xe33.google.com': 0.16; 'structures,': 0.16; 'url-ip:104.208.221.96/32': 0.16; 'url-ip:104.208.221/24': 0.16; 'url-ip:104.208/16': 0.16; 'url-ip:35.231.145.151/32': 0.16; 'url-ip:35.231.145/24': 0.16; 'url-ip:35.231/16': 0.16; 'url:gitlab': 0.16; 'url:latest': 0.16; 'url:project': 0.16; 'url:pypi': 0.16; 'url:readthedocs': 0.16; 'utility': 0.16; 'announce': 0.17; 'api': 0.22; 'subject:] ': 0.22; 'classes': 0.27; '(e.g.': 0.30; 'handling': 0.30; 'combined': 0.31; 'url:io': 0.32; 'message-id:@mail.gmail.com': 0.32; 'functions': 0.34; 'use': 0.34; 'received:google.com': 0.34; 'subject:[': 0.35; 'from:addr:gmail.com': 0.37; 'ability': 0.39; 'module': 0.39; '8bit%:13': 0.39; 'availability': 0.40; 'provided.': 0.40; 'structures': 0.40; 'to:addr:python-announce-list': 0.40; 'more': 0.61; 'skip:& 20': 0.61; 'skip:t 30': 0.61; 'your': 0.64; 'access': 0.67; '8bit%:7': 0.68; 'deeply': 0.68; 'similar': 0.69; 'pack': 0.70; 'url:index': 0.70; 'combination': 0.76; 'powerful': 0.82; 'type.': 0.84 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:from:date:message-id:subject:to; bh=QKftRCyQLjSQy8byywpN2GzYO0XN1DqN4PxB+AXdGxE=; b=FLyxszoVI+XdE5S+dRy+mcfwnOH1qhEAWymHLBBcu02iM+ASqWvi9IAwM1T5uzUk8i XrIfckzTykb89ul6ecmhN71KMoXjqnqGOqnsui264GCEXMVWsQRuPyn+yHqel4xwsGBU aX1s7VkLYGKAsxEsgSTxiO0+zR9NITXUOAiFP8eBKVbmzDeJn6T72n8e4DGNIrpO2X65 ClSMuvgW2sd2kzxzMhsi6vCIGhaiLsbBEmeOj251h0L7eBGGq7uWVu5PxOVpQ9vghaBI A0p4kRW6aqhKFqzDoaOOehIlw2Ne+FRPF3UmEkxSputlR112v7jxxsrv2RG6hziLagC2 X/8w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=QKftRCyQLjSQy8byywpN2GzYO0XN1DqN4PxB+AXdGxE=; b=hLFJcLyp/CvFr+U1VZb8VLKJBZ0UuNDXg1scpwTVS63PuPO7TO6h/+kaV33+3k2q0C hlN7lK+W+2GAYKr+/mD4g7O6ErQDioVXvL8w6PxOJaLb5Mnwso6CwlydWRCVyLuLyYU0 B34wYOMTOFMzg+MDhGguOAtIdiF6lUhYDFdbLzuIz/Oo45kQe+xKpwXABTkJZaT97GnP 6BnpjYkRNUqwP9eR1ns2MzKyRO6D/VWNDqx/Oc+PqJtVwySsHUNMsqAy6RS6m9qCs9lq doc4DtwAbOulee8uR8KB/d7w62MeDd/vhQN9uT9eCnO+11F1XkGC/uvrqmFDD+neyfHr FQ7w== X-Gm-Message-State: ANhLgQ3MaTrnhAQSWPkGdbBwoq9e0UxygOeyFuK5ZXRYm0yLyWJAsE/0 vQlmPxu0pp0RZj4VB/gpJlPFKryr8vBdoE9nNlyXWRKi X-Google-Smtp-Source: ADFU+vvzZxNmHoH9NX3NzyroSZ4bMMeKp4+3mqDEmnjxeBHQw6akQgn0Gocffenvx0j8gvMYQQreaCFIS6CIvrhWttA= X-Received: by 2002:a67:f9d2:: with SMTP id c18mr4005611vsq.183.1583986643872; Wed, 11 Mar 2020 21:17:23 -0700 (PDT) X-MailFrom: dan.gass@gmail.com X-Mailman-Rule-Hits: emergency X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved Message-ID-Hash: GBKMIOKFG66J6G67I5ZW5BMVFVGPLPE5 X-Message-ID-Hash: GBKMIOKFG66J6G67I5ZW5BMVFVGPLPE5 X-Mailman-Approved-At: Thu, 12 Mar 2020 00:31:07 -0400 X-Content-Filtered-By: Mailman/MimeDel 3.3.1 X-Mailman-Version: 3.3.1 Precedence: list List-Id: Announcement-only list for the Python programming language Archived-At: List-Archive: List-Help: List-Post: List-Subscribe: List-Unsubscribe: Xref: csiph.com comp.lang.python.announce:3336 I am please to announce the availability of the first beta release of the "plum-py" package. This package provides classes and utility functions to efficiently pack and unpack bytes similar to what the standard library `struct` module offers. This package expands significantly on that capability with much more powerful and convenient access and control of bytes within a buffer (including handling variable size/type relationships within the buffer data). The package provides a large number of fundamental types (e.g. numbers, structures, arrays, etc.) for specifying buffer data structure. Each type conforms to a "plug-and-play" architecture facilitating the ability to be combined in any way, including deeply nested structures of arbitrary type. You may also write your own custom types that conform to the "plug-and-play" architecture API and use them in combination with any of the fundamental types provided. Docs: https://plum-py.readthedocs.io/en/latest/index.html PyPi: https://pypi.org/project/plum-py/ Repo: https://gitlab.com/dangass/plum License: MIT With Regards, Dan Gass (dan.gass at gmail)