Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.python.announce > #3044

ANN: RsFile 2.2 released

Path csiph.com!fu-berlin.de!uni-berlin.de!not-for-mail
From Pascal Chambon <pythoniks@gmail.com>
Newsgroups comp.lang.python.announce
Subject ANN: RsFile 2.2 released
Date Sun, 20 Jan 2019 11:29:32 +0100
Lines 34
Approved python-announce-list@python.org
Message-ID <mailman.335.1548250375.4816.python-announce-list@python.org> (permalink)
References <29925b6d-febd-38a6-63e4-6936c2a15da3@gmail.com>
Mime-Version 1.0
Content-Type text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding 8bit
X-Trace news.uni-berlin.de ZLVf7Vj7kbPtpKLoSsqEYA4k6QH8fMcD5nOzKjFEbCxg==
Return-Path <pythoniks@gmail.com>
X-Original-To python-announce-list@python.org
Delivered-To python-announce-list@mail.python.org
X-Spam-Status OK 0.002
X-Spam-Evidence '*H*': 1.00; '*S*': 0.00; 'subject:ANN': 0.05; 'subject:released': 0.05; 'handy': 0.07; 'module,': 0.07; 'os,': 0.07; 'sensitive': 0.07; '(when': 0.09; 'concurrently': 0.09; 'fixes': 0.09; 'python2.7': 0.09; 'semantic': 0.09; 'workaround': 0.09; 'api,': 0.16; 'closed,': 0.16; 'ctypes': 0.16; 'descriptor': 0.16; 'drop-in': 0.16; 'locks': 0.16; 'logs': 0.16; 'markers,': 0.16; 'open()': 0.16; 'pascal': 0.16; 'received:209.85.128.42': 0.16; 'received:mail-wm1-f42.google.com': 0.16; 'systems.': 0.18; 'acquired': 0.21; 'library,': 0.21; 'too,': 0.24; 'weird': 0.24; 'data,': 0.26; 'separate': 0.26; 'header:User-Agent:1': 0.27; '2.2': 0.30; 'to:addr:python-announce-list': 0.30; 'message- id:@gmail.com': 0.30; "i'm": 0.30; 'classes': 0.30; 'library': 0.30; 'received:google.com': 0.33; 'file': 0.35; 'subject:: ': 0.35; 'windows': 0.36; 'using': 0.36; 'record': 0.36; 'might': 0.37; 'should': 0.37; 'adds': 0.37; 'received:209.85.128': 0.37; 'unix': 0.37; 'received:192.168': 0.37; 'possible': 0.37; 'received:209.85': 0.37; 'received:209': 0.38; 'cache': 0.38; 'received:192': 0.38; 'use': 0.38; 'some': 0.39; 'data': 0.39; 'through': 0.60; 'features': 0.60; 'advanced': 0.61; 'tested': 0.62; 'provide': 0.62; 'interested': 0.63; 'particularly': 0.64; 'locking': 0.67; 'performed': 0.67; 'fragile': 0.84; 'loses': 0.84; 'python3.6': 0.84; 'reliable,': 0.84; 'ending': 0.93
DKIM-Signature v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=to:from:subject:message-id:date:user-agent:mime-version :content-transfer-encoding:content-language; bh=M3dXlPA+v/w9K28c8bVtW1+XRVj1jwZEZyjublLj8rA=; b=gleq9yqRss7Hii8M6SiGqCb/6mC3PQjDIXFLKICE034Rf0jKDkvZwRK4+9/R+Yijdc 5RQwCOhuzfbL8tdIqwqD6NzXNNNH9fg6V62FVIzPNWi6JEZTKBbFvJcs3GaZv6gqRLNj tsPrQZB+wwn8H5OsoW34RIeOy8cES/XCm+Q7WFk0dLsoxqiG8mlaW24jpJKnNhwdOBv7 JoUh/atD2UaBnEDnwP1FeRxMCiYsp9gyKjXF80Vh+ZHkX9OgILrJAWDei6CEWS5ZyDEO yWvo2EKUJ1wVJGcOOlXX+bpGdVJLKxs82hVxNqkExgTps68spvZp2bg+0Q0/i+nQ7VV6 UA5Q==
X-Google-DKIM-Signature v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:to:from:subject:message-id:date:user-agent :mime-version:content-transfer-encoding:content-language; bh=M3dXlPA+v/w9K28c8bVtW1+XRVj1jwZEZyjublLj8rA=; b=RAw+2uHX7hOL7WbbojVADwGZwzlgjW0uNq3No4tCxXItttwLLNmgbbt4HyCBvFEwJv nAECk/d2eeFOu3x9lLJwjbyEd3eweeK9xbUNpVJQ0M9tPdjSKo/L2b4LPVSE9oCdYZWg WvohgcefMIzlWuiBJmpYSxlTN7BXCWtjZSld/RFEuPUvnrpEEKtlGb6yitwwIcvBeFjM ZzU87jv76bt4joPmJ5pM4j6jQT20qpFM46yVMOPCh7FqCTAVk3t8hNlo3Hc9xxqPW1ni e4dgeB1qm/np8veTVKcItL1K+PSdre+NuhCdP6AaiTRWhuykX3o7y06oYsdtaFUWqFdx uyQA==
X-Gm-Message-State AJcUukeQF1YD1ExRtZvKuY3hZoyt3uTj89GWj7n3RRkhQDKP15M+Zwan XtOlDJg8o14x92tV7AwYn+IDesDF
X-Google-Smtp-Source ALg8bN55ORqYOvt57rGMAGGHiY00nS0sgGABpRzXb40oHo+Bvp1INNVcmYC0eOphm2eT/ZZRkO6D8g==
X-Received by 2002:a1c:2d08:: with SMTP id t8mr19631951wmt.5.1547980173048; Sun, 20 Jan 2019 02:29:33 -0800 (PST)
User-Agent Mozilla/5.0 (Windows NT 10.0; WOW64; rv:52.0) Gecko/20100101 Thunderbird/52.5.0
Content-Language fr
X-Mailman-Approved-At Wed, 23 Jan 2019 08:32:54 -0500
X-BeenThere python-announce-list@python.org
X-Mailman-Version 2.1.29
Precedence list
List-Id Announcement-only list for the Python programming language <python-announce-list.python.org>
List-Unsubscribe <https://mail.python.org/mailman/options/python-announce-list>, <mailto:python-announce-list-request@python.org?subject=unsubscribe>
List-Archive <http://mail.python.org/pipermail/python-announce-list/>
List-Post <mailto:python-announce-list@python.org>
List-Help <mailto:python-announce-list-request@python.org?subject=help>
List-Subscribe <https://mail.python.org/mailman/listinfo/python-announce-list>, <mailto:python-announce-list-request@python.org?subject=subscribe>
X-Mailman-Original-Message-ID <29925b6d-febd-38a6-63e4-6936c2a15da3@gmail.com>
Xref csiph.com comp.lang.python.announce:3044

Show key headers only | View raw


Dear pythoneers,

I'm pleased to announce version 2.2 of RSFile I/O Library, which adds 
support for python3.6 and python3.7, and fixes some corner cases when 
using PIPEs.

RSFile provides pure-python drop-in replacements for the classes of the 
io module, and for the open() builtin.

Its goal is to provide a cross-platform, reliable, and comprehensive 
synchronous file I/O API, with advanced features like fine-grained 
opening modes, shared/exclusive file record locking, thread-safety, 
cache synchronization, file descriptor inheritability, and handy stat 
getters (size, inode, times…).

Locking is performed using actual file record locking capabilities of 
the OS, not by using separate files/directories as locking markers, or 
other fragile gimmicks. Unix users might particularly be interested by 
the workaround that this library provides, concerning the weird semantic 
of fcntl() locks (when any descriptor to a disk file is closed, the 
process loses ALL locks acquired on this file through any descriptor).

Possible use cases for this library: concurrently writing to logs 
without ending up with garbled data, manipulating sensitive data like 
disk-based databases, synchronizing heterogeneous producer/consumer 
processes when multiprocessing semaphores aren’t an option…

Tested on python2.7 and python3.5+, on windows and unix-like systems. 
Should work with IronPython/Jython/PyPy too, since it uses stdlib 
utilities and ctypes bridges.

regards,
Pascal Chambon

Back to comp.lang.python.announce | Previous | Next | Find similar | Unroll thread


Thread

ANN: RsFile 2.2 released Pascal Chambon <pythoniks@gmail.com> - 2019-01-20 11:29 +0100

csiph-web