@@ -52,38 +52,6 @@ parameter, which is a Python object that can be used to extract the
5252``FFI_LogicalExtensionCodec `` that is necessary.
5353
5454A complete example can be found in the `FFI example <https://github.com/apache/datafusion-python/tree/main/examples/datafusion-ffi-example >`_.
55- Your methods need to be updated to take an additional parameter like in this
56- example.
57-
58- For example, the ``__datafusion_catalog_provider__ `` signature changed in
59- DataFusion 52 from:
60-
61- .. code-block :: rust
62-
63- pub fn __datafusion_catalog_provider__<'py>(
64- &self,
65- py: Python<'py>,
66- ) -> PyResult<Bound<'py, PyCapsule>>
67-
68- to:
69-
70- .. code-block :: rust
71-
72- pub fn __datafusion_catalog_provider__<'py>(
73- &self,
74- py: Python<'py>,
75- session: Bound<PyAny>,
76- ) -> PyResult<Bound<'py, PyCapsule>>
77-
78- The same additional ``session: Bound<PyAny> `` parameter is required for these
79- FFI hook methods in DataFusion 52:
80-
81- - ``__datafusion_table_provider__ ``
82- - ``__datafusion_schema_provider__ ``
83- - ``__datafusion_table_function__ ``
84-
85- If your hook still uses the old no-``session `` signature, update it to accept
86- ``session ``.
8755
8856.. code-block :: rust
8957
@@ -129,6 +97,38 @@ can implement a helper method such as:
12997 }
13098
13199
100+ Your methods need to be updated to take an additional ``session `` parameter.
101+ For example, the ``__datafusion_catalog_provider__ `` signature changed in
102+ DataFusion 52 from:
103+
104+ .. code-block :: rust
105+
106+ pub fn __datafusion_catalog_provider__<'py>(
107+ &self,
108+ py: Python<'py>,
109+ ) -> PyResult<Bound<'py, PyCapsule>>
110+
111+ to:
112+
113+ .. code-block :: rust
114+
115+ pub fn __datafusion_catalog_provider__<'py>(
116+ &self,
117+ py: Python<'py>,
118+ session: Bound<PyAny>,
119+ ) -> PyResult<Bound<'py, PyCapsule>>
120+
121+ The same additional ``session: Bound<PyAny> `` parameter is required for these
122+ FFI hook methods in DataFusion 52:
123+
124+ - ``__datafusion_table_provider__ ``
125+ - ``__datafusion_schema_provider__ ``
126+ - ``__datafusion_table_function__ ``
127+
128+ If your hook still uses the old no-``session `` signature, update it to accept
129+ ``session ``.
130+
131+
132132The DataFusion FFI interface updates no longer depend directly on the
133133``datafusion `` core crate. You can improve your build times and potentially
134134reduce your library binary size by removing this dependency and instead
0 commit comments