{"id":13407900,"url":"https://github.com/equinor/dlisio","last_synced_at":"2025-04-05T06:04:37.804Z","repository":{"id":33232033,"uuid":"139642179","full_name":"equinor/dlisio","owner":"equinor","description":"Python library for working with the well log formats Digital Log Interchange Standard (DLIS V1) and Log Information Standard (LIS79)","archived":false,"fork":false,"pushed_at":"2024-08-13T12:22:04.000Z","size":3058,"stargazers_count":121,"open_issues_count":20,"forks_count":39,"subscribers_count":11,"default_branch":"master","last_synced_at":"2024-10-13T17:38:23.849Z","etag":null,"topics":["dlis","lis","lis79","rp66v1"],"latest_commit_sha":null,"homepage":"https://dlisio.readthedocs.io/en/latest/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/equinor.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.rst","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-07-03T22:16:39.000Z","updated_at":"2024-08-30T08:15:03.000Z","dependencies_parsed_at":"2024-01-14T17:04:19.947Z","dependency_job_id":"18285712-11ca-4512-b7ce-de4179b3569c","html_url":"https://github.com/equinor/dlisio","commit_stats":{"total_commits":924,"total_committers":12,"mean_commits":77.0,"dds":0.6461038961038961,"last_synced_commit":"9251c8d6d8383d3662b707559e158c448cd2411b"},"previous_names":[],"tags_count":45,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/equinor%2Fdlisio","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/equinor%2Fdlisio/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/equinor%2Fdlisio/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/equinor%2Fdlisio/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/equinor","download_url":"https://codeload.github.com/equinor/dlisio/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247294537,"owners_count":20915340,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["dlis","lis","lis79","rp66v1"],"created_at":"2024-07-30T20:00:49.344Z","updated_at":"2025-04-05T06:04:37.783Z","avatar_url":"https://github.com/equinor.png","language":"Python","funding_links":[],"categories":["Software"],"sub_categories":["Petrophysics","Well Log"],"readme":"\u003cp align=\"center\"\u003e\n  \u003cimg src=\"https://raw.githubusercontent.com/equinor/dlisio/master/dlisio-icon.svg\" alt=\"dlisio icon\" width=\"400\"/\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://pypi.org/project/dlisio/\"\u003e\n    \u003cimg src=\"https://badge.fury.io/py/dlisio.svg\" alt=\"PyPI version\"/\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://github.com/equinor/dlisio/actions/workflows/wheels.yaml\"\u003e\n    \u003cimg src=\"https://github.com/equinor/dlisio/actions/workflows/wheels.yaml/badge.svg\" alt=\"Github Actions\"/\u003e\n  \u003c/a\u003e\n  \u003ca href=\"http://dlisio.readthedocs.io/\"\u003e\n    \u003cimg src=\"https://img.shields.io/readthedocs/dlisio\" alt=\"Read the Docs\"/\u003e\n  \u003c/a\u003e\n\u003c/p\u003e\n\n## Introduction ##\n\ndlisio is an LGPL licensed library for reading well logs in Digital Log\nInterchange Standard (DLIS V1), also known as [RP66\nV1](https://www.energistics.org/sites/default/files/rp66v1.html), and Log Information\nStandard 79 ([LIS79](https://www.energistics.org/sites/default/files/2022-10/lis-79.pdf)).\n\ndlisio is designed as a general purpose library for reading well logs in a\nsimple and easy-to-use manner. Its main focus is making all the data and\nmetadata accessible while putting few assumptions on how the data is to be\nused. This makes it suitable as a building block for higher level applications\nas well as for being used directly.\n\ndlisio focuses above all on correctness, performance and robustness. Its core,\nwhich does all the heavy lifting, is implemented in C++. Both the C++ core and\nthe python wrappers are backed by an extensive test-suite. It strives to be\nrobust against files that do not strictly adhere to the specifications, which\nis a widespread issue with both DLIS and LIS files. dlisio tries to account for\nmany of the known specification violations out there, but only when it can do\nso without compromising correctness. It will not do any guess work on your\nbehalf when such violations pose any ambiguity.\n\n## Installation ##\n\ndlisio supplies pre-built python wheels for a variety of platforms and\narchitectures. The wheels are hosted through the [Python Package Index\n(PyPI)](https://pypi.org/) and can be installed with:\n\n```bash\npip install dlisio\n```\n\n\n|   | macOS Intel | macOS ARM | Windows 64bit | Windows 32bit | manylinux x86_64 | manylinux aarch64 | manylinux i686 | musllinux x86_64\n|---------------|----|-----|-----|----|----|----|----|----|\n| CPython 3.9   | ✅ | ✅  | ✅  | ✅ | ✅ | ✅ | ✅ | ✅ |\n| CPython 3.10  | ✅ | ✅  | ✅  | ✅ | ✅ | ✅ | ✅ | ✅ |\n| CPython 3.11  | ✅ | ✅  | ✅  | ✅ | ✅ | ✅ | ✅ | ✅ |\n| CPython 3.12  | ✅ | ✅  | ✅  | ✅ | ✅ | ✅ | ✅ | ✅ |\n| CPython 3.13  | ✅ | ✅  | ✅  | ✅ | ✅ | ✅ | ✅ | ✅ |\n\nSee [Build dlisio](#Build-dlisio) for building dlisio from source.\n\n## Getting started ##\n\ndlisio's documentation is hosted on\n[readthedocs](https://dlisio.readthedocs.io/en/stable/). Please refer there for\nproper introduction to dlisio and the file-formats DLIS and LIS. Here is a\nmotivating example showcasing how to read the curve-data from a DLIS-file:\n\n```python\nfrom dlisio import dlis\n\nwith dlis.load('myfile.dlis') as files:\n    for f in files:\n        for frame in f.frames:\n            curves = frame.curves()\n            # Do something with the curves\n\n```\nand from a LIS-file:\n\n```python\nfrom dlisio import lis\n\nwith lis.load('myfile.lis') as files:\n    for f in files:\n        for format_spec in f.data_format_specs():\n            curves = lis.curves(f, format_spec)\n            # Do something with the curves\n```\n\nIn both cases the curves are returned as [structured\nnumpy.ndarray](https://numpy.org/doc/stable/user/basics.rec.html) with the\ncurve mnemonics as field names (column names).\n\n## Build dlisio ##\n\nTo develop dlisio, or to build a particular revision from source, you need:\n\n* A C++11 compatible compiler (tested on gcc, clang, and msvc 2019)\n* [CMake](https://cmake.org/) version 3.5 or greater\n* [Python](https://python.org) version 3.9 or greater\n* [fmtlib](http://fmtlib.net/) tested mainly with 7.1.3\n* [mpark_variant](https://github.com/mpark/variant)\n* [pybind11](https://github.com/pybind/pybind11) version 2.6 or greater\n* [setuptools](https://pypi.python.org/pypi/setuptools) version 28 or greater\n* [layered-file-protocols](https://github.com/equinor/layered-file-protocols)\n* python packages pytest and numpy\n\nIf you do not have pybind11 installed on your system, the easiest way to get a\nworking copy is to `pip3 install pybind11` (NP! pybind11, not pybind)\n\nlayered-file-protocols has to be installed from source if you don't already\nhave it on your system:\n\n```bash\ngit clone https://github.com/equinor/layered-file-protocols.git\nmkdir layered-file-protocols/build\ncd layered-file-protocols/build\ncmake .. -DCMAKE_BUILD_TYPE=Release -DBUILD_SHARED_LIBS=ON\n-DLFP_FMT_HEADER_ONLY=ON\nmake\nmake install\n```\n\nTo then build and install dlisio:\n\n```bash\nmkdir dlisio/build\ncd dlisio/build\ncmake .. -DCMAKE_BUILD_TYPE=Release -DBUILD_SHARED_LIBS=ON\nmake\n```\n\ndlisio follows common cmake rules and conventions, e.g. to set install prefix\nuse `-DCMAKE_INSTALL_PREFIX`. To build the python library it is usually a good\nidea to build shared libraries. To disable python, pass `-DBUILD_PYTHON=OFF`.\nBy default, the python library is built.\n\n## Contributing ##\n\nWe welcome all kinds of contributions, including bug reports, issues, feature\nrequests and documentation. The preferred way of submitting a contribution is to\nmake an [issue](https://github.com/equinor/dlisio/issues) on github.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fequinor%2Fdlisio","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fequinor%2Fdlisio","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fequinor%2Fdlisio/lists"}