Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 17 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,23 @@

## Unreleased

## 0.4.0 - 2026-07-04

- preserve WKT CRS records during LAS/LAZ-to-COPC conversion and set the LAS
WKT global-encoding bit when a WKT CRS is carried through
- preserve LAS Extra Bytes point payloads and LASF_Spec Extra Bytes descriptor
VLRs through streaming conversion, disk spill, LAZ encoding, and read-back
- pass through source non-CRS VLRs and EVLRs while regenerating COPC info,
LASzip, CRS, hierarchy, and Extra Bytes records in the required output order
- keep streaming conversion out-of-core by carrying Extra Bytes through the
spill file and retaining the temp-file-backed LOD index path
- add release gates for combined CRS, Extra Bytes, VLR, and EVLR round-trips,
plus structural and opt-in large-N bounded-memory writer guards
- reject GeoTIFF-only CRS inputs with a specific unsupported-conversion error
until GeoTIFF-to-WKT conversion is implemented
- breaking: `LasPointRecord` now carries raw `extra_bytes`, and
`StreamingLayout` now carries `extra_bytes` plus Extra Bytes descriptor VLRs

## 0.3.0 - 2026-06-22

- add LAS/COPC-native column types in `copc-core`, materialized column reads in
Expand Down
10 changes: 5 additions & 5 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ members = ["copc-core", "copc-reader", "copc-writer"]
resolver = "2"

[workspace.package]
version = "0.3.0"
version = "0.4.0"
edition = "2021"
rust-version = "1.77"
license = "MIT OR Apache-2.0"
Expand Down
3 changes: 3 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -104,13 +104,16 @@ behind a future optional feature.
- Source-trait writer API for caller-owned point storage
- COPC writing from neutral `LasColumnBatch` values via `ColumnBatchSource`
- Streaming LAS/LAZ-to-COPC conversion through a disk-backed mmap spill
- Streaming conversion preserves WKT CRS records, LAS Extra Bytes payloads and
descriptors, and source non-CRS VLRs/EVLRs
- LAS 1.4 point formats 6 and 7 with LAZ variable-size chunks
- Interior-node representative points for native LOD reads

## Not Yet Supported

- Zero-copy column views directly over compressed COPC/LAZ point data
- Built-in Arrow or DataFusion conversion
- GeoTIFF-only CRS conversion to WKT during LAS/LAZ-to-COPC conversion

## Testing

Expand Down
2 changes: 1 addition & 1 deletion copc-reader/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,6 @@ exclude = [

[dependencies]
byteorder = { workspace = true }
copc-core = { version = "0.3.0", path = "../copc-core" }
copc-core = { version = "0.4.0", path = "../copc-core" }
las = { workspace = true }
laz = { workspace = true }
4 changes: 2 additions & 2 deletions copc-writer/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -14,11 +14,11 @@ categories = ["science", "encoding"]

[dependencies]
byteorder = { workspace = true }
copc-core = { version = "0.3.0", path = "../copc-core" }
copc-core = { version = "0.4.0", path = "../copc-core" }
las = { workspace = true }
laz = { workspace = true }
memmap2 = { workspace = true }
tempfile = { version = "3", default-features = false }

[dev-dependencies]
copc-reader = { version = "0.3.0", path = "../copc-reader" }
copc-reader = { version = "0.4.0", path = "../copc-reader" }
Loading