kylebarron commented on issue #39689: URL: https://github.com/apache/arrow/issues/39689#issuecomment-2245805836
It looks like there's consensus here? If I'm understanding it right: Defining a "data object" as one that has either an `__arrow_c_array__` or `__arrow_c_stream__` method: - It is suggested that all data objects also have an `__arrow_c_schema__` method to describe the existing schema of the Arrow data - If data objects support schema negotiation when exporting data (i.e. they respect `requested_schema` input), then they _must_ have an `__arrow_c_schema__` method - It is permissible for data objects to not have an `__arrow_c_schema__` method, but then schema negotiation will not be possible. - An object with _only_ `__arrow_c_schema__` _is_ a schema object - An object with `__arrow_c_schema__` _and_ one of the data methods _has_ a schema object I'm implementing the PyCapsule Interface for polars and this was brought up because polars uses newer view types internally, and was unsure what to export https://github.com/pola-rs/polars/pull/17676#discussion_r1687902688 -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
