{"categories":[{"label":"Text Processing","url":"https://skillfed.io/packages/category/text-processing/2"}],"enrichment":{"capability":"Provides a Python 3-style unicode CSV API that works consistently across Python 2.7 and Python 3, with UTF-8 as the default encoding and workarounds for stdlib CSV bugs.","skillfed_tags":["python-2-compat","csv-handling"],"use_cases":["Writing CSV parsing/writing code that must run unchanged on both Python 2.7 and Python 3 without conditional logic.","Reading or writing CSV data directly to binary streams without intermediate disk writes.","Calculating checksums over CSV output by piping to hashlib objects without writing to disk.","Transparently handling compressed CSV files (.bz2, .gz, .xz) with the autocompress option."],"what_it_does":"csv23 bridges the Python 2/3 divide for CSV handling by exposing the Python 3 csv module API (which uses unicode strings) to both Python 2.7 and Python 3 code. The core problem it solves is that Python 2's csv module works with byte strings while Python 3's works with unicode, making it difficult to write CSV code that runs on both versions. csv23 hides this difference and defaults to UTF-8 encoding throughout.\n\nBeyond basic compatibility, it provides convenience utilities like open_csv() context managers for simpler file handling, and on Python 3 it adds read_csv() and write_csv() functions that work with file-like objects (useful for reading/writing CSV data from binary streams). It also includes workarounds for specific stdlib CSV bugs related to escape characters and embedded newlines.","worth_installing":"Yes, if you maintain Python 2.7 code or need to support both Python 2 and 3 in the same codebase. The package is stable, has no known vulnerabilities, and low install friction. However, if you are writing new code for Python 3 only, the standard library csv module is sufficient\u2014install this only if cross-version compatibility is a real requirement."},"id":"csv23","links":{"html":"https://skillfed.io/packages/csv23","md":"https://skillfed.io/packages/csv23.md","pypi":"https://pypi.org/project/csv23/"},"maintenance":{"status":"active"},"meta":{"latest_release":"2022-06-12","license_spdx":null,"license_treatment":"permissive","name":"csv23","python_support":"supports_current","summary":"Python 2/3 unicode CSV compatibility layer"},"popularity":{"monthly_downloads":327602,"position":7567,"tier":"top_15000"},"security":{"n_vulnerabilities":0},"version":"0.3.4"}
