GPX export: missing per-cache desc summary, urlname, short_description, travelbugs elements

オープン
#700 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

メンテナーはふだん 1 日以内に返信

まだ誰も着手していません。

評価

難易度
3/5
見積もり時間
1〜2日
初心者へのやさしさ
45/100
issue の種類
機能追加
明瞭さ
おおむね明確
活発さ
静か
技術スタック
python, xml
領域
data

調査の方向性

The GPX output is built in garmin.py, where the if cache.short_description: guard already exists. Compare the wpt-level <desc> and <urlname> writing against the GCBTPGK sample file, and check how cache.trackables is read. Done means the new <desc> summary, <urlname>, and groundspeak:travelbugs block are written and the export still passes the existing GPX tests.

索引モデルが issue の本文から書いたものです。

説明

area: gps-export improvement
Current State

While verifying the fix for #695 (wrong/missing IDs in GPX export), a side-by-side diff against the original geocaching.com GPX (same cache, GCBTPGK) turned up a few smaller, unrelated gaps in the exported /groundspeak:cache content. None of these affect the ID/owner/finder data #695 was about — cache id, owner, and all finder ids now match the source exactly.

Proposed Improvement

Gaps found
(wpt-level) uses only the cache name, not GSAK's summary format
Geocaching.com / GSAK: Deset kirke by LarsET, Traditional Cache (3/1.5)
OpenSAK: Deset kirke
Missing: owner, cache type, and D/T rating in the summary line.
(wpt-level) is never written
Geocaching.com: Deset kirke
OpenSAK: element absent entirely.
groundspeak:travelbugs is never written
Present (empty) in the source file for this particular cache, so no visible difference in this test — but the export code has no handling for cache.trackables at all, so any cache that actually has travel bugs/trackables present would lose that data on export.
Not a bug (confirmed while investigating)

groundspeak:short_description looked missing in the diff, but this is correct behavior — the source file's short_description was empty, and the export code already correctly skips writing the element when there's no content (if cache.short_description: in garmin.py). No change needed there.

Suggested fix
Build the wpt-level as f"{cache.name} by {cache.placed_by}, {cache.cache_type} ({difficulty}/{terrain})" (or similar), matching GSAK/geocaching.com's format.
Add a element mirroring cache.name.
Add a groundspeak:travelbugs block populated from cache.trackables, matching the structure GSAK uses (this ties into the still-open child-waypoint/.gpi POI export gap noted elsewhere — worth checking both together if/when trackable export is tackled).

Low priority — none of this affects Garmin device recognition (that was the attributes/long_description/log-truncation fix from #656) or data integrity (that was #695). Good candidate for the general backlog rather than the v1.16.2 hotfix.

Expected Benefits

No response

主要言語
Python
スター
37
フォーク
17
平均マージ
16時間 7分
マージ済み PR(30日)
128

環境構築

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

OpenSAK-Org/OpenSAK のほかの issue

OpenSAK-Org/OpenSAK の issue をすべて見る

似ている issue

Python の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。