There is currently no way of tracking nested field metadata on lists. For example, if a list's children are nullable, there's no way of telling just by looking at the Field.
This causes problems with integration testing, and also affects Parquet roundtrips.
I propose the breaking change of [Large|FixedSize]List taking a Field instead of Box<DataType>, as this will overcome this issue, and ensure that the Rust implementation passes integration tests.
I'm leaning towards this landing in 3.0.0, as I'd love for us to have completed or made significant traction on the Arrow Parquet writer (and reader), and integration testing, by then.