<feed xmlns='http://www.w3.org/2005/Atom'>
<title>subsurface.git/core, branch v5.0.2</title>
<subtitle>forked from https://github.com/subsurface/subsurface</subtitle>
<id>https://git.tsegers.com/subsurface.git/atom/core?h=v5.0.2</id>
<link rel='self' href='https://git.tsegers.com/subsurface.git/atom/core?h=v5.0.2'/>
<link rel='alternate' type='text/html' href='https://git.tsegers.com/subsurface.git/'/>
<updated>2021-05-19T22:15:34Z</updated>
<entry>
<title>desktop: Add the capability to copy / paste dive number and date / time.</title>
<updated>2021-05-19T22:15:34Z</updated>
<author>
<name>mikeller</name>
<email>github@ike.ch</email>
</author>
<published>2021-05-16T03:39:47Z</published>
<link rel='alternate' type='text/html' href='https://git.tsegers.com/subsurface.git/commit/?id=2d734c529b5eb389ca9526575c9520b444d21a30'/>
<id>urn:sha1:2d734c529b5eb389ca9526575c9520b444d21a30</id>
<content type='text'>
This is adding the capability to select 'Dive number' and 'Date / Time'
in the 'Copy dive components' dialog, and then copy them into the
clipboard.
When using 'Paste dive components, these values will then be pasted into
the selected dive(s).
This is intended to help with workflows that import dive information
from two different sources, like general information from another
logging program, and CCR ppO2 sensor readings from a unit log, and then
stitch them together into one cohesive entry with all data per dive.
Copied data is also output into formatted text when pasting the
clipboard outside of the application:

```
Dive number: 401
Date / time: Sun 2 May 2021 12:00 AM
```

No translations have been added as of now - I could not find any
information on how strings are translated for this project.

Signed-off-by: Michael Keller &lt;github@ike.ch&gt;
</content>
</entry>
<entry>
<title>profile: rename GF_LINE color to DURATION_LINE</title>
<updated>2021-05-08T11:40:24Z</updated>
<author>
<name>Berthold Stoeger</name>
<email>bstoeger@mail.tuwien.ac.at</email>
</author>
<published>2021-05-08T11:06:49Z</published>
<link rel='alternate' type='text/html' href='https://git.tsegers.com/subsurface.git/commit/?id=dc645ce8c672af8d8166c27ff581ae44994faf6d'/>
<id>urn:sha1:dc645ce8c672af8d8166c27ff581ae44994faf6d</id>
<content type='text'>
The color was misnamed, since it has only been used for the
duration line for quite some time (since 893bea700c98 to be
exact).

Signed-off-by: Berthold Stoeger &lt;bstoeger@mail.tuwien.ac.at&gt;
</content>
</entry>
<entry>
<title>profile: remove DiveAmbPressureItem</title>
<updated>2021-05-08T11:40:24Z</updated>
<author>
<name>Berthold Stoeger</name>
<email>bstoeger@mail.tuwien.ac.at</email>
</author>
<published>2021-05-08T07:50:00Z</published>
<link rel='alternate' type='text/html' href='https://git.tsegers.com/subsurface.git/commit/?id=a7002f4089e76efc0667d22fc10f44ada35ec1bd'/>
<id>urn:sha1:a7002f4089e76efc0667d22fc10f44ada35ec1bd</id>
<content type='text'>
This was replaced by the tissue map in 893bea700c98.

Signed-off-by: Berthold Stoeger &lt;bstoeger@mail.tuwien.ac.at&gt;
</content>
</entry>
<entry>
<title>The planner should not always ascent from the depth of</title>
<updated>2021-05-07T15:16:41Z</updated>
<author>
<name>Robert C. Helling</name>
<email>helling@atdotde.de</email>
</author>
<published>2021-05-07T08:05:43Z</published>
<link rel='alternate' type='text/html' href='https://git.tsegers.com/subsurface.git/commit/?id=09bbd846da2289a49e566c6b2742b62d9d7bdc79'/>
<id>urn:sha1:09bbd846da2289a49e566c6b2742b62d9d7bdc79</id>
<content type='text'>
the last manually entered waypoint but consider the
possibility that it should first top where we are
before the next stop depth has cleared.

Reported-by: David Carron

Signed-off-by: Robert C. Helling &lt;helling@atdotde.de&gt;
</content>
</entry>
<entry>
<title>xml parsing: add XML_PARSE_HUGE flag to xmlReadMemory()</title>
<updated>2021-04-21T15:39:29Z</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2021-04-20T21:09:29Z</published>
<link rel='alternate' type='text/html' href='https://git.tsegers.com/subsurface.git/commit/?id=a0a631122ab345306fe106288a0bd1d3f2b8f3da'/>
<id>urn:sha1:a0a631122ab345306fe106288a0bd1d3f2b8f3da</id>
<content type='text'>
It looks like libxml2 has some internal limitations by default that
causes parse failures in some situations.  Avoid them with
XML_PARSE_HUGE.

Without this, you get errors like

    test.xml:349250: parser error : internal error: Huge input lookup
    όμουν τουλάχιστον αλλά +2kg και ενδεχομένως +4
                                                                                   ^
when something in the xml file grows too large.

I don't know libxml2 internals, so I have no idea what exactly goes
wrong, but the docs say:

    XML_PARSE_HUGE = 524288 : relax any hardcoded limit from the parser

and that makes us successfully parse the Greek file from Kostas.

Reported-by: Kostas Katsioulis &lt;kostaskatsioulis@gmail.com&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>cleanup: don't hardcode array length</title>
<updated>2021-04-19T19:51:01Z</updated>
<author>
<name>Dirk Hohndel</name>
<email>dirk@hohndel.org</email>
</author>
<published>2021-04-19T18:37:46Z</published>
<link rel='alternate' type='text/html' href='https://git.tsegers.com/subsurface.git/commit/?id=194fe28d5053027cb6f3818f836ffb0f57667ef7'/>
<id>urn:sha1:194fe28d5053027cb6f3818f836ffb0f57667ef7</id>
<content type='text'>
Move the ARRAY_SIZE macro into a header file and use it to determine the
number of cloud servers that we need to check.

Suggested-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
Signed-off-by: Dirk Hohndel &lt;dirk@hohndel.org&gt;
</content>
</entry>
<entry>
<title>cloudstorage: update remote if cloud server changes</title>
<updated>2021-04-19T19:51:01Z</updated>
<author>
<name>Dirk Hohndel</name>
<email>dirk@hohndel.org</email>
</author>
<published>2021-04-18T23:28:25Z</published>
<link rel='alternate' type='text/html' href='https://git.tsegers.com/subsurface.git/commit/?id=9620d1182885bb8ac0dd05eeaf8d4e108461cfab'/>
<id>urn:sha1:9620d1182885bb8ac0dd05eeaf8d4e108461cfab</id>
<content type='text'>
If we can't reach the cloud server in the URL (which might come from the
settings or be passed in by the user), we try the alternative server(s).
If we end up changing servers, we need to update the remote that we have
already parsed from the URL.

Signed-off-by: Dirk Hohndel &lt;dirk@hohndel.org&gt;
</content>
</entry>
<entry>
<title>cloudstorage: try alternative server if first connection fails</title>
<updated>2021-04-19T19:51:01Z</updated>
<author>
<name>Dirk Hohndel</name>
<email>dirk@hohndel.org</email>
</author>
<published>2021-04-16T19:55:05Z</published>
<link rel='alternate' type='text/html' href='https://git.tsegers.com/subsurface.git/commit/?id=766f297bc4c01b81ee11ceb724460240403068a1'/>
<id>urn:sha1:766f297bc4c01b81ee11ceb724460240403068a1</id>
<content type='text'>
If we can't reach our preferred server, try using a different one.
The diff makes more sense when ignoring white space.

With this we check the connection to the cloud server much earlier and
in case of failure to connect try a different cloud_base_url.

Signed-off-by: Dirk Hohndel &lt;dirk@hohndel.org&gt;
</content>
</entry>
<entry>
<title>cloudstorage: create consistent local directory names</title>
<updated>2021-04-19T19:51:01Z</updated>
<author>
<name>Dirk Hohndel</name>
<email>dirk@hohndel.org</email>
</author>
<published>2021-04-11T22:26:06Z</published>
<link rel='alternate' type='text/html' href='https://git.tsegers.com/subsurface.git/commit/?id=cfe20ee5f4f77a3a42ba301bdd69f5585c46184c'/>
<id>urn:sha1:cfe20ee5f4f77a3a42ba301bdd69f5585c46184c</id>
<content type='text'>
With the new names for the cloud server we'd get different local cache
directory names depending on which server gets used. In order to avoid
that, normalize the name before generating the hash that determines the
local directory name.

Additionally, the old code had an extra '/' in the URL, due to the way
the URL was assembled. Again, to match the existing hash for people
upgrading from older Subsurface versions, add that to our normalized
name as well.

Signed-off-by: Dirk Hohndel &lt;dirk@hohndel.org&gt;
</content>
</entry>
<entry>
<title>cloudstorage: try to pick between multiple cloud servers</title>
<updated>2021-04-19T19:51:01Z</updated>
<author>
<name>Dirk Hohndel</name>
<email>dirk@hohndel.org</email>
</author>
<published>2021-04-11T01:03:08Z</published>
<link rel='alternate' type='text/html' href='https://git.tsegers.com/subsurface.git/commit/?id=7fa031b648fedeaa35eb4da8003cd521cf65c4e3'/>
<id>urn:sha1:7fa031b648fedeaa35eb4da8003cd521cf65c4e3</id>
<content type='text'>
The backend infrastructure will soon be able to support more than one
cloud server which automagically stay in sync with each other.

One critical requirement for that to work is that once a session was
started with one of the servers, the complete session happens with that
server - we must not switch from server to server while doing a git
transaction. To make sure that's the case, we aren't trying to use DNS
tricks to make this load balancing scheme work, but instead try to
determine at program start which server is the best one to use.

Right now this is super simplistic. Two servers, one in the US, one in
Europe. By default we use the European server (most of our users appear
to be in Europe), but if we can figure out that the client is actually
in the Americas, use the US server. We might improve that heuristic over
time, but as a first attempt it seems not entirely bogus.

The way this is implemented is a simple combination of two free
webservices that together appear to give us a very reliable estimate
which continent the user is located on.

api.ipify.org gives us our external IP address
ip-api.com gives us the continent that IP address is on

If any of this fails or takes too long to respond, we simply ignore it
since either server will work. One oddity is that if we decide to change
servers we only change the settings that are stored on disk, not the
runtime preferences. This goes back to the comment above that we have to
avoid changing servers in mid sync.

Signed-off-by: Dirk Hohndel &lt;dirk@hohndel.org&gt;
</content>
</entry>
</feed>
