Skip to content

Releases: equinor/segyio

Version 2.0.0-alpha.1

02 Dec 14:45
50ed155

Choose a tag to compare

Version 2.0.0-alpha.1 Pre-release
Pre-release

segyio 2.0

The main goal of this release is to add support for files following the SEG-Y rev. 2.1 standard.

⚠️ This is a pre-release and interfaces/functionality may change with a proper release.

  • We don't know when segyio 2.0 will be released properly, but 2026 is unlikely.
  • Development is set on hold and you should expect no support.

Release notes:

  • Main functionality of the 2.1 specification is supported.
    Note that we do not have real SEG-Y revision 2.1 files yet, so there has been limited testing of the new functionality. The standard has been interpreted to the best of our understanding. We are aware that this may mismatch community understanding. The Readme is not yet updated and would be updated after as part of a proper 2.0 release.

  • The following SEG-Y rev 2 features are implemented:

    • support for int64, uint64 and floating-point types in trace headers
    • support for trace header extension 1 and proprietary trace headers. Users can read standard, extended and proprietary trace header data via f.traceheader
    • support for XML-defined trace header layouts (see Sec. D8 in SEG-Y standard). The layout can be embedded inside the SEG-Y file or provided as a separate XML. Users can get all trace header layout information via f.tracefield. File-independent trace field offsets like segyio.TraceField.TRACE_SEQUENCE_LINE should not be used anymore if files have non-standard layouts.
  • Added support for accessing files from various sources (e.g. in-memory files and custom datasources like cloud storages) via self-defined Python streams. Reading via a Python stream won't be as fast as reading local files, but can be of use when reading from cloud. Some pointers are provided in the next tutorial.

  • Added automatic discovery of encoding (EBCDIC/ASCII) and endianness (big-endian file or little-endian).

  • Added f.stanza interface to read extended text headers as stanzas.

  • Breaking change:
    the following code using headers data after the file is closed is no longer valid:

with segyio.open(path) as f:
    binh = f.bin
    trh = f.header[0]

print("Binary header:", binh)
print("Trace header:", trh)

All the operations on trace headers should happen while file is still open:

with segyio.open(path) as f:
    binh = f.bin
    trh = f.header[0]

    print("Binary header:", binh)
    print("Trace header:", trh)
  • Issues described in breaking-changes.md are implemented. File would be deleted with proper 2.0 release.
  • C library users (if you exist): interface is adapted to support new features and is not backwards-compatible. As we hope no-one uses it directly, no additional pointers are given. Examples of use can be found in the Python binding and in tests.

Version 1.9.14

02 Dec 15:58
88ffaa6

Choose a tag to compare

1.9.14

  • Distribute wheels for Python 3.14
  • Support for Python 3.9 has been dropped, as it is end-of-life

Version 1.9.13

04 Feb 13:13
142e45a

Choose a tag to compare

Version 1.9.13

  • Distribute wheels for Python 3.13
  • Support for python 3.6, 3.7, 3.8 has been dropped, as it is end-of-life

# Version 1.9.12

29 Nov 14:17
87dfb08

Choose a tag to compare

Version 1.9.12

  • Distribute wheels for Python 3.12
  • Distribute wheels for Apple ARM

Version 1.9.11

28 Mar 09:40
de1db4e

Choose a tag to compare

Version 1.9.11

  • Fixed a bug where segyio used the Delay Recording Time without it's scaling factor when setting up the sample offsets on open.

Version 1.9.10

21 Dec 09:12
6107089

Choose a tag to compare

1.9.10

  • Distribute wheels for Python 3.11

Version 1.9.9

18 Feb 07:09
507855c

Choose a tag to compare

Version 1.9.9

  • Fix packaging support for linux/aarch64

Version 1.9.8

26 Oct 21:02
a98c2bc

Choose a tag to compare

Version 1.9.8

  • Packaging support for linux/aarch64

Version 1.9.7

13 Aug 06:18

Choose a tag to compare

Version 1.9.7

This release only comes with packaging updates and python versions.

Version 1.9.6

19 Feb 13:15

Choose a tag to compare

Version 1.9.6

  • gather[] selects the right offsets
  • Python 3.9 packages