#836249 RFP: cavewhere -- Cave survey processing and visualisation

#836249#5
Date:
2016-09-01 03:20:09 UTC
From:
To:
  Package name    : cavewhere
  Version         : 0~20160817
  Upstream Author : Philip Schuchardt <vpicaver@gmail.com>
  URL             : http://www.cavewhere.com/
  License         : GPL3
  Programming Lang: C++
  Description     : Cave survey processing and visualisation

 GUI cave survey software, with data entry entry covering multiple data
 formats. Data is processed using survex. Sketches are distorted to fit
 and displayed in 3D, allowing very fast turnaround maps to be produced.
 Uses QT and works on Windows, Mac and Linux. Data can be imported from
 Walls and Survex.

This is quite new software, with a user-friendly modern GUI and taking
a different approach to Tunnel and Therion, the other free-software
cave-survey drawing packages. It has a very helpful upstream. It has
several dependencies which are not yet in debian and thus will need
packaging first: libsquish, qmath3d, dewalls, qt-qml-tricks.

#836249#10
Date:
2017-08-06 19:56:25 UTC
From:
To:
On 2016-09-01 03:24 +0000, Debian Bug Tracking System wrote:

cavewhere has the following build dependencies:

survex
plotsauce
QMath3d
protobuf
zlib
lib-qt-qml-tricks
squish
dewalls
sqlite
qinputeventrecorder/eventserialiser
cwTriangulate
Forsyth
vcacheopt

After discussion with upstream we find:
qbs:
  Already packaged. 1.8 in testing.
survex:
  actually only a runtime dependency, already packaged
plotsauce:
  by same author as cavewhere. used to process survex output. needs packaging
QMath3d:
  by same author as cavewhere. useful bits of Qt3d. GPL. needs packaging
protobuf, zlib:
  already packaged
lib-qt-qml-tricks:
  Thomas Boutrode library. Will be replaced by  qt-qml-models by the same author.
  local copy has used useful extra code. Upstream has not responded to pull requests.
  So currently must use local version: https://github.com/Cavewhere/lib-qt-qml-trick
  or https://github.com/Cavewhere/qt-qml-model. Upstreaming and packaging would be ideal.
squish:
  Now in debian (as libsquish). ITP bug was: 836247
dewalls:
  Walls-reading library jedwards1211. needs packaging. ITP: 836565
sqlite:
  already packaged. Use system copy
qinputeventrecorder/eventserialise:
  only used for debug. Leave it out.
cwTriangulate:
  from http://vterrain.org/Doc/vtdata/classTriangulate__f.html so part
  of vtdata library, from virtual terrain library.  MIT licence. Needs
  packaging. Local copy slightly modified.
Forsyth:
  optional. Ignore for now
vcacheopt:
  cruft, no longer used (alternative to Forsyth)

I started with squish as it was in Debian numerous times but all as
embedded copies. I merged the various versions and got the new bits
into upstream, and released that to debian (as libsquish), fixing all
the packages with embedded copies to use the new package.
https://tracker.debian.org/pkg/libsquish



Wookey

#836249#19
Date:
2018-12-04 15:35:01 UTC
From:
To:
Dewalls was packaged and uploaded at the end of 2017.

Currently packaging QMath3d, which seems to be proceeding rather slowly.

Unfortunately qbs is now scheduled for removal which is a massive pain
as this entire project and most of its compnents are built with it.

Wookey

#836249#24
Date:
2018-12-13 01:42:22 UTC
From:
To:
qmath3d has now been packaged and uploaded to NEW.

Plotsauce is next.

Wookey

#836249#29
Date:
2023-02-05 20:24:31 UTC
From:
To:
Cavewhere has proved problematic to build and package but I think we are nearly there.

v1.0 added two new dependencies:
asyncfuture and st3c.

Turned out st3c didn't do anything that libsquish didn't already do,
so it was patched to just use libsquish. Then upstream took that fix.

asyncfuture is now packaged, uploaded and in testing.

qt-qml-models is packaged, but not uploaded as I've never actually got
cavewhere to build against it, so it might be broken.

A serious bug in libsquish packaging was found, which broke the cavewhere build,
but none of the other dependencies. That has been fixed in time for bookworm.

The Cavewhere build now gets further than ever before using system
libraries, but the test library build still fails with a c++
issue. Awaiting comment from upstream. So it's missed bookworm, but I
think we really are nearly there.

Wookey