@@ -93,11 +93,11 @@ jobs:
9393 # if: {{ false }}
9494 # continue running if step fails
9595 # continue-on-error: true
96- uses : actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac # v4.0 .0
96+ uses : actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # v4.1 .0
9797
9898 # Setup version of Python to use
9999 - name : Set Up Python ${{ matrix.python-version }}
100- uses : actions/setup-python@61a6322f88396a6271a6ee3565807d608ecaddd1 # v4.7.0
100+ uses : actions/setup-python@65d7f2d534ac1bc67fcd62888c5f4f3d2cb2b236 # v4.7.1
101101 with :
102102 python-version : ${{ matrix.python-version }}
103103 allow-prereleases : true
@@ -184,16 +184,13 @@ jobs:
184184
185185 - name : Install xapian
186186 run : |
187+ set -xv
187188 sudo apt-get install libxapian-dev
188189 # Sphinx required to build the xapian python bindings. Use 1.8.5 on
189190 # older python and newest on newer.
190191 if [[ $PYTHON_VERSION == "2."* ]]; then pip install sphinx==1.8.5; fi
191192 if [[ $PYTHON_VERSION == '3.'* ]] ; then pip install sphinx; fi
192- if [[ $PYTHON_VERSION == '3.12'* ]] ; then \
193- XAPIAN_VER=1.4.22; \
194- else
195- XAPIAN_VER=$(dpkg -l libxapian-dev | tail -n 1 | awk '{print $3}' | cut -d '-' -f 1); echo $XAPIAN_VER; \
196- fi
193+ XAPIAN_VER=$(dpkg -l libxapian-dev | tail -n 1 | awk '{print $3}' | cut -d '-' -f 1); echo $XAPIAN_VER;
197194 cd /tmp
198195 curl -s -O https://oligarchy.co.uk/xapian/$XAPIAN_VER/xapian-bindings-$XAPIAN_VER.tar.xz
199196 tar -Jxvf xapian-bindings-$XAPIAN_VER.tar.xz
@@ -204,8 +201,19 @@ jobs:
204201 # 3.11 or newer.
205202 # Change distutils.sysconfig... to just sysconfig and SO
206203 # to EXT_SUFFIX to get valid value.
207- if [[ $PYTHON_VERSION == "3."* ]]; then sed -i -e '/PYTHON3_SO=/s/distutils\.//g' -e '/PYTHON3_SO=/s/"SO"/"EXT_SUFFIX"/g' configure; ./configure --prefix=$VIRTUAL_ENV --with-python3 --disable-documentation; fi
208- case "$PYTHON_VERSION" in nightly|3.12*) echo skipping xapian build;; *) make && sudo make install; esac
204+ if [[ $PYTHON_VERSION == "3."* ]]; then \
205+ cp configure configure.FCS; \
206+ sed -i \
207+ -e '/PYTHON3_SO=/s/distutils\.//g' \
208+ -e '/PYTHON3_SO=/s/"SO"/"EXT_SUFFIX"/g' \
209+ -e '/PYTHON3_CACHE_TAG=/s/imp;print(imp.get_tag())/sys;print(sys.implementation.cache_tag)/' \
210+ -e '/PYTHON3_CACHE_OPT1_EXT=/s/imp\.get_tag()/sys.implementation.cache_tag/g' \
211+ -e '/PYTHON3_CACHE_OPT1_EXT=/s/imp\b/importlib/g' \
212+ configure; \
213+ diff -u configure.FCS configure || true; \
214+ ./configure --prefix=$VIRTUAL_ENV --with-python3 --disable-documentation; \
215+ fi
216+ case "$PYTHON_VERSION" in nightly) echo skipping xapian build;; *) make && sudo make install; esac
209217
210218 - name : Install pytest and other packages needed for running tests
211219 run : pip install flake8 mock pytest pytest-cov requests
0 commit comments