v0.7.1
- The SCOPF Julia wire conversion is structural (#252): every struct reaching
the wire classifies its fields (index, renamed, value) through an exhaustive
destructure, so a new field fails to compile until classified and a value
field reusing an index name is never renumbered. Wire output is unchanged. - GOC3 parses once per read (#250): the reader hands its parsed document
forward asParsed::document, and the package boundary derives the
operating point series from it instead of reparsing the retained text. DcOpfInstancecarries the constant cost termc0(generator and nodal
data), and the DC OPF bundle writesc0.mtx/c0_gen.mtx(bundle schema
0.3.0).- Balanced formats harvest and emit coordinates (#183): PowerWorld aux
Latitude:1/Longitude:1, pandapower busgeoPoint strings, PyPSA
buses.csvx/y, each in both directions. Writers with no geometry concept
warn that locations were dropped. - The standalone geographic document (#184):
GeoLayer/ElementKeywith
tolerant reads (headerless buscoords CSV, aliased CSV/JSON records, GeoJSON)
and canonical GeoJSON writes (.geo.json, thepowerio_geoforeign
member);DisplayFormat::GeoJson/DisplayData::Geo;
Network::geo_layer()/apply_geo_layer()with multiconductor equivalents
inpowerio-pkg;Branch.route/DistLine.routepolyline routing (payload
schemas 1.2.0);.pwdpromotion (geo_layer_from_pwd,
apply_substation_points,pwd_mercator_to_lonlat); and
powerio geo extract | apply | convertin the CLI. - C ABI and Python bindings for the new surfaces (#249, #185), all additive
(PIO_ABI_VERSIONstays 4):pio_acopf_from_network/pio_acopf_to_json
/pio_acopf_instance_free,pio_geo_parse/pio_geo_extract/
pio_geo_apply, andpio_dist_geo_extract/pio_dist_geo_apply. Python
gainsparse_geo,Network.geo_layer()/apply_geo_layer()/acopf_instance(),
and the distribution equivalents. - DeepMind OPFData reader (#258):
SourceFormat::DeepMindOpfDataJsonreads
one raw OPFData JSON document as a solved snapshot, echoes the same format
byte for byte, and converts through the standard surface (CLI, C ABI,
Python).
What's Changed
- Type the SCOPF wire renumbering and parse GOC3 once per read by @samtalki in #254
- Add the geographic document and balanced coordinate harvest by @samtalki in #255
- Bind the AC OPF instance and geographic layer over C and Python by @samtalki in #256
- Fix main CI: regenerate schemas, run PR workflows on stacked PRs by @samtalki in #259
- Add DeepMind OPFData JSON reader and conversion support by @cameronkhanpour in #258
Full Changelog: v0.7.0...v0.7.1