File: development.rst

package info (click to toggle)
fdb 5.20.1-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 89,268 kB
  • sloc: cpp: 40,830; python: 5,079; sh: 4,996; makefile: 32; ansic: 8
file content (48 lines) | stat: -rw-r--r-- 1,522 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
Development
############

Follow the guide in :ref:`installation-label`. We advise to use `uv` for installation of the build dependencies.

After building the project with `ninja`, set the following environment variable:

.. code-block:: sh

   export IS_LOCAL_BUILD=1

This disables the version pinning for the python dependency of the `FDB`. Make sure `findlibs` is installed
in your `venv` and export:

.. code-block:: sh

   export FINDLIBS_DISABLE_PACKAGE=yes

Furthermore set the `FDB5_HOME` environment variable to the build folder of the stack, to make the correct
version of the `FDB` visible for `findlibs`.

.. code-block:: sh

   export FDB5_HOME=<path_to_stack_folder>/build

Now you are able to install the `pyfdb` wheel from the build folder (or the `pyfdb-python-package-staging`) to your
`venv`. Switch to the build folder and execute, e.g.:

.. code-block:: sh

   uv pip install pyfdb-<version>-cp311-cp311-macosx_26_0_arm64.whl 
   # or
   uv pip install -e pyfdb-python-package-staging

You can check the installation afterwards by switching to the `pyfdb` tests folder in the `fdb` source folder and
execute `pytest` in there.

.. code-block:: sh

   cd <path_to_stack>/fdb/tests/pyfdb
   pytest

.. note

   Currently there is an issue with non-released file handles during a run of pytest, depending on
   the ulimits of your user this may lead to an error `OSError: [Errno 24] Too many open files:`.
   
   In that case re-run pytest with the `--lf` flag for executing only the last failed tests.