Commit graph

20366 commits

Author SHA1 Message Date
Berthold Stoeger
4f7d567571 planner: use value semantics for computeVariations()
When computing the variations in a background thread, the
code has to work on a copy of the dive plan and the deco
state. Instead of passing a copy via a unique_ptr<>, simply
use value semantics when calling computeVariations().

This does an unnecessary copy of the deco state, when
computeVariations is not run in the background, but so what.

Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
2024-11-17 08:40:24 +13:00
Berthold Stoeger
9f55f167b2 planner: fix calculations of variations
In 8704a8b the code in cloneDiveplan() was replaced by a simple
assignment statement.

Alas, the original code was more complex: it copied only up
to a certain point (it stopped at automatically generated
steps).

The new behavior made the calculations of variations fail,
because a call to plan() adds deco stops.

Therefore, copy the plan _before_ calling plan().

Fixes #4368

Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
2024-11-17 08:40:24 +13:00
Dirk Hohndel
beb352d47c Ubuntu: update supported versions
Drop 23.10 / Mantic
Add  24.10 / Oracular

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2024-11-11 14:22:28 +13:00
Dirk Hohndel
e7900c514c export-html: prevent invalid json
A dive without events could lead to json with extra closing brackets that
prevents browsers from rendering the dive log.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2024-11-05 19:17:12 +01:00
dependabot[bot]
8e9010a000 build(deps): bump com.github.mik3y:usb-serial-for-android
Bumps [com.github.mik3y:usb-serial-for-android](https://github.com/mik3y/usb-serial-for-android) from v3.8.0 to 3.8.1.
- [Release notes](https://github.com/mik3y/usb-serial-for-android/releases)
- [Changelog](https://github.com/mik3y/usb-serial-for-android/blob/master/CHANGELOG.txt)
- [Commits](https://github.com/mik3y/usb-serial-for-android/compare/v3.8.0...v3.8.1)

---
updated-dependencies:
- dependency-name: com.github.mik3y:usb-serial-for-android
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-04 15:59:52 +13:00
Michael Keller
0e7d3a6466 Desktop: Fix Saving of the Divesite Country.
Fix a bug in the edit divesite country command preventing the
country of the divesite from ever being saved.

Fixes #4357.

Signed-off-by: Michael Keller <github@ike.ch>
2024-11-03 00:31:09 +13:00
crofrog
534bf68639 Update INSTALL.md
corrected missing ``` to allow the file to render the markup correctly

Signed-off-by: crofrog <cshafer@gmail.com>
2024-11-01 06:55:12 +13:00
Victor Arvidsson
077f078151 Updated user-maunal with new instructions for subtitles.
Signed-off-by: Victor Arvidsson <victarv@gmail.com>
2024-10-27 01:37:04 +13:00
Victor Arvidsson
e58824e636 Fixed small bug in replace_all.
Start_pos should of course be 0...

Signed-off-by: Victor Arvidsson <victarv@gmail.com>
2024-10-27 01:37:04 +13:00
Victor Arvidsson
6886c9ccf8 Make the "Save dive data as subtitles" feature more configurable.
Previously, the subtitle generation was hardcoded, making it unsuitable
if you didn't want all of the displayed values. This has been replaced
by a format string that is configurable in the settings, using predefined
tags that are replaced with the values. The default value for this has
been set to (mostly) match the currently generated subtitle string. This
also provides a good starting point for users that want to modify the string.

Signed-off-by: Victor Arvidsson <victarv@gmail.com>
2024-10-27 01:37:04 +13:00
Michael Keller
1a9b09682a Windows: Switch to Build on ubuntu 24.04
Switch the Windows build to run on ubuntu 24.04, and also update to use the latest version of MXE.

Signed-off-by: Michael Keller <github@ike.ch>
2024-10-24 15:54:34 +13:00
Michael Keller
8212b28641 Make MXE Build on ubuntu 24.04.
As per a31368b037.

Signed-off-by: Michael Keller <github@ike.ch>
2024-10-23 12:45:45 +13:00
Michael Keller
f60f01838c Update MXE docker Image Version Number.
Signed-off-by: Michael Keller <github@ike.ch>
2024-10-23 12:45:45 +13:00
dependabot[bot]
f7d32c850d build(deps): bump ubuntu in /scripts/docker/mxe-build-container
Bumps ubuntu from 22.04 to 24.04.

---
updated-dependencies:
- dependency-name: ubuntu
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-23 12:45:45 +13:00
Michael Keller
2244f3f528 Export: Cleanup jqplot Module References.
Clean up references to the jqplot modules that were overlooked in #4350.

Signed-off-by: Michael Keller <mikeller@042.ch>
2024-10-22 10:23:29 +13:00
Michael Keller
364c776ff1 Export: Update jquery to a Secure Version.
Update jquery to a version that fixes known security vulnerabilities.
Triggered by https://github.com/subsurface/subsurface/security/dependabot/7

Signed-off-by: Michael Keller <github@ike.ch>
2024-10-21 09:25:19 +13:00
Dirk Hohndel
3bd7be809a mobile: fix dive detail scrolling
When using the current version of Subsurface-mobile, you cannot scroll
the dive details (i.e. you cannot see the bottom of the dive
information, depending on the size of your screen), nor can you scroll
the notes editor.

I'm not sure how I didn't stumble across this earlier, but a git bisect
appears to pinpoint commit a39f0e2891 ("Mobile: Fix QML Warnings.")
which is quite old.

Partially reverting this seems sufficient to get scrolling for the dive
details and dive notes edit working again.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2024-10-03 15:40:59 +13:00
Michael Keller
b392052c37 CICD: Fix Windows Build.
Fix missing define introduced in #4343.

Signed-off-by: Michael Keller <github@ike.ch>
2024-10-03 09:04:42 +13:00
Michael Keller
c72a26afe1 Remove misleading comment about smtk2ssrf build.
Signed-off-by: Michael Keller <github@ike.ch>
2024-09-30 22:22:39 +13:00
Salvador Cuñat
f81cf77886 Make libraw support build optional
Build in by default if libraw is found, but make it optional for builds
were it's not needed, like smtk2ssrf or subsurface-downloader.

Signed-off-by: Salvador Cuñat <salvador.cunat@gmail.com>
2024-09-30 22:22:39 +13:00
dependabot[bot]
821f3fc551 build(deps): bump com.github.mik3y:usb-serial-for-android
Bumps [com.github.mik3y:usb-serial-for-android](https://github.com/mik3y/usb-serial-for-android) from v3.4.3 to v3.8.0.
- [Release notes](https://github.com/mik3y/usb-serial-for-android/releases)
- [Changelog](https://github.com/mik3y/usb-serial-for-android/blob/master/CHANGELOG.txt)
- [Commits](https://github.com/mik3y/usb-serial-for-android/compare/v3.4.3...v3.8.0)

---
updated-dependencies:
- dependency-name: com.github.mik3y:usb-serial-for-android
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-29 09:23:36 +13:00
dependabot[bot]
b1493c3540 build(deps): bump com.android.support:support-v4 in /android-mobile
Bumps com.android.support:support-v4 from 25.3.1 to 28.0.0.

---
updated-dependencies:
- dependency-name: com.android.support:support-v4
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-29 08:36:07 +13:00
Michael Keller
8a64d1f4b9 Cleanup: Fix Warnings in MacOS build.
Signed-off-by: Michael Keller <github@ike.ch>
2024-09-28 23:50:55 +12:00
Michael Keller
784eddc166 Android: Update the docker Image Version Used to Build.
Update to the latest version (5.15.3).

Signed-off-by: Michael Keller <github@ike.ch>
2024-09-28 23:25:02 +12:00
dependabot[bot]
5613014124 build(deps): bump DamianReeves/write-file-action from 1.2 to 1.3
Bumps [DamianReeves/write-file-action](https://github.com/damianreeves/write-file-action) from 1.2 to 1.3.
- [Release notes](https://github.com/damianreeves/write-file-action/releases)
- [Commits](https://github.com/damianreeves/write-file-action/compare/v1.2...v1.3)

---
updated-dependencies:
- dependency-name: DamianReeves/write-file-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-27 09:50:34 +12:00
dependabot[bot]
b5e5e4c212 build(deps): bump actions/setup-python from 4 to 5
Bumps [actions/setup-python](https://github.com/actions/setup-python) from 4 to 5.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](https://github.com/actions/setup-python/compare/v4...v5)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-27 09:49:23 +12:00
dependabot[bot]
968599c7d9 build(deps): bump insightsengineering/pip-action from 2.0.0 to 2.0.1
Bumps [insightsengineering/pip-action](https://github.com/insightsengineering/pip-action) from 2.0.0 to 2.0.1.
- [Release notes](https://github.com/insightsengineering/pip-action/releases)
- [Commits](https://github.com/insightsengineering/pip-action/compare/v2.0.0...v2.0.1)

---
updated-dependencies:
- dependency-name: insightsengineering/pip-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-27 09:48:46 +12:00
Michael Keller
6418d3acbc Update Version in docker Tag, Clean up Dependencies.
Signed-off-by: Michael Keller <github@ike.ch>
2024-09-27 09:47:40 +12:00
dependabot[bot]
9873c86192 build(deps): bump ubuntu in /scripts/docker/android-build-container
Bumps ubuntu from 22.04 to 24.04.

---
updated-dependencies:
- dependency-name: ubuntu
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-27 09:47:40 +12:00
dependabot[bot]
b806c5371f build(deps): bump actions/cache from 3 to 4
Bumps [actions/cache](https://github.com/actions/cache) from 3 to 4.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](https://github.com/actions/cache/compare/v3...v4)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-27 07:10:25 +12:00
Michael Keller
89b2b3bf70 CICD: Add Dependency Scanning / Updates by Dependabot.
Add scanning and updates of dependencies with Dependabot where this is
possible.

While this isn't currently available for the majority of our code that
is in C / C++, there are some things 'around the edges' where we can
offload some of the dependency management:
- GitHub actions
- docker images
- the gradle build for android

Signed-off-by: Michael Keller <github@ike.ch>
2024-09-26 19:41:11 +12:00
Michael Keller
716b350af2 Add libraw to the Remaining debian Based CICD Workflows.
Signed-off-by: Michael Keller <github@ike.ch>
2024-09-21 11:03:53 +12:00
Michael Keller
478e444cd9 Fix problems from rebase, clean up debian packaging definition.
Signed-off-by: Michael Keller <github@ike.ch>
2024-09-21 11:03:53 +12:00
Dirk Hohndel
28cd093d37 build-system: Fedora surprisingly uses CamelCase for LibRaw
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2024-09-21 11:03:53 +12:00
Dirk Hohndel
40c22f0fe9 deal with typo in older versions of libraw
longtitude instead of longitude prior to libraw 0.20.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2024-09-21 11:03:53 +12:00
Dirk Hohndel
ffa49cfd34 build-system: add libraw to smtk2ssrf if main build uses libraw
Otherwise the link step will fail.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2024-09-21 11:03:53 +12:00
Dirk Hohndel
435d5f5436 build-system: add libraw to more builds
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2024-09-21 11:03:53 +12:00
Dirk Hohndel
8e48a323e7 build-system: add libraw to Ubuntu build
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2024-09-21 11:03:53 +12:00
Dirk Hohndel
6537192e1d build-system: add libraw to Fedora/copr build
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2024-09-21 11:03:53 +12:00
Dirk Hohndel
3d552b84d1 build-system: add libraw to OBS daily build
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2024-09-21 11:03:53 +12:00
Dirk Hohndel
236203bf06 build-system: add libraw to macOS build
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2024-09-21 11:03:53 +12:00
Dirk Hohndel
09f59211ed build-system: de-clutter output of get-version.sh
In certain situations git merge-base would report errors if the branch
you are working in is older than the latest CICD builds. This simply
hides those pointless errors.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2024-09-21 11:03:53 +12:00
Dirk Hohndel
c8ef53c43f build-system: show if libraw was found
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2024-09-21 11:03:53 +12:00
Dirk Hohndel
68f8ca5fd0 build-system: allow empty option for pkg_config_library macro
Especially when adding new optional dependencies, you might want to have
neither REQUIRED nor QUIET there - this way we can see in the CICD where the
library is found and tested against.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2024-09-21 11:03:53 +12:00
Michael Keller
c866d2bead Add a package dependency on libraw20 to the debian package manifest.
Signed-off-by: Michael Keller <github@ike.ch>
2024-09-21 11:03:53 +12:00
Michał Sawicz
b92475d9c9 snap: add libraw dependency
Signed-off-by: Michał Sawicz <michal@sawicz.net>
2024-09-21 11:03:53 +12:00
Berthold Stoeger
d9f8570728 ubuntu/debian: add libraw-dev to build dependencies
I have not idea if this is enough to make parsing of raw files
work for the Ubuntu/Debian package.

Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
2024-09-21 11:03:53 +12:00
Berthold Stoeger
13d1188c41 media: load metadata and thumbnails of raw pictures using libraw
The distinguished photographer shoots raw images. There is a
comprehensive library that can extract metadata and thumbnails
from these images. Let's use it if available.

Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
2024-09-21 11:03:53 +12:00
Michael Keller
02638d7c3e CICD: Use the Updated 3.2.0 docker Image for Windows Builds.
This updates MXE to a current version and includes libraw.

Signed-off-by: Michael Keller <github@ike.ch>
2024-09-18 21:22:27 +12:00
Richard Fuchs
a6a15f9d3a core: add missing types to return values
Fixes build failing on Debian Buster (gcc 8.3.0) with:

/build/subsurface-beta-202409160411/./core/units.h: In function 'duration_t operator""_sec(long long unsigned int)':
/build/subsurface-beta-202409160411/./core/units.h:149:48: error: could not convert '{((int32_t)sec)}' from '<brace-enclosed initializer list>' to 'duration_t'
  return { .seconds = static_cast<int32_t>(sec) };

Signed-off-by: Richard Fuchs <dfx@dfx.at>
2024-09-16 22:02:51 +02:00