* ui
- new terrain ramp High Contrast
- fix unreadable icons in task manager and status dialog
- render icons at 300 dpi
* data files
- fix bogus "Latin-1 to UTF-8 conversion failed" error
- parse elevations in feet correctly in cup files
- ignore unit for radio frequency in airspace files
* devices
- validate wind direction
* user interface
- new mountain pass and bridge icons
* Android
- update 'white list' of USB devices with more PIDs for SoftRF Academy
* data files
- fix crash with empty user.cup
* Android
- fix BLE/HM10 data corruption
- fix crash if IOIO connect was canceled quickly
- fix crash if not allowed to start service in foreground
* user interface
- Added infobox that combines ETA with AAT dT
- FLARM: Add 100m zoom option.
- Move glider icon on thermal assist according to 30s average.
* Android
- raise targetSdkVersion to 33
- fix Bluetooth device list on Android versions older than 12
- do not request permission WRITE_EXTERNAL_STORAGE on Android 11 or newer
* WeGlide
- fix crash bug
* Android
- request ACCESS_FINE_LOCATION only when internal GPS is used
- request BLUETOOTH_CONNECT and BLUETOOTH_SCAN only when Bluetooth is used
- re-enable background location (yet another attempt)
- fix crash with disallowed IOIO Accessory connection
- remove Nook support
- add SoftRF Ham and Midi into 'white list' of USB devices
* task
- save outer radius and angle of custom keyholes in task files
* calculations
- implement the "predict" option for Netcoupe FFVV, WeGlide, Charron
* WeGlide
- allow downloading all user tasks and public task declarations
* Lua scripting
- add blackboard.altitude_agl
* user interface
- fix crash in plane list
- show terrain, topopgraphy and airspaces on task/contest analysis pages
* calculations
- fix bogus "Task Started" after re-entering the start zone
* fix IGC logger crash with very long turnpoint names
* user interface
- fix crash with long InfoBox set names
- rename "Inverse InfoBoxes" to "Dark mode"
- planes: "New" creates an empty plane
- planes: add "Copy" button
* map display
- thicker border on disappeared FLARM traffic
* devices
- allow listing up to 512 flights (increased from 128)
* calculations
- fix freeze bug in route planner
* Android
- fix crash with failed IOIO Accessory connection
- use the global dark mode setting by default
- fix crash after loading new map file
- fix AAT OZ angles in tasks loaded from CUP files
- fix terrain reach display
- fix task manager crash bug
- fix WeGlide 'Automatic Upload' not persistent
- file manager, show description and update date
- ATC Radial infobox can display magnetic radial with configurable declination
- fix wrong type in waypoint editor
- add more SeeYou waypoint types
- add SoftRF Balkan and Prime Mk3 into 'white list' of USB devices
* user interface
- vertical scroll bar in some modal dialogs
- rasp sources from repository
- fix file manager crash
* devices
- FLARM: fix crash bug
* weather
- New Rasp Color schemes for Thermalmap
- Support 15 minute intervals in RASP files
* add WeGlide declared task download
* allow file explorer to access the XCSoar data files
* add JS polars
* fix IGC logger crash on I/O errors
* user interface
- fix pressed InfoBox colors in inverted mode
* task
- add custom keyhole support
* Android
- improve native serial port enumeration
- fix UsbSerial/FTDI crash bug
- fix UsbSerial/FT4232 data corruption
* stricter airspace parser
- add radio frequency buttons to airspace dialogs
- fix the airspace warning "Enable" button
- fix thermalmap.info icon display
- IMI: fix task declaration bug
- prompt before deleting data when uninstalling XCSoar
- support USB serial adapters with more than one port and multiple USB serial adapters of the same kind
- fix crash when GPS access was rejected by user
- add U-BLOX 7 USB GPS into 'white list' of USB devices
* map
- fix crash in the topography loader
* tracking
- SkyLines: fix "URL using bad/illegal format"
* Android
- disable background location access due to Google Play Store policy
- fix compatibility with Android older than 7
* data files
- fix bug in OpenAir arc parser
- fix crash bug in terrain loader
- support short name in CUP files
* devices
- improved support for LXNAV S8x/S10x varios, including task declaration.
- IMI: fix task declaration over Bluetooth
- IMI: show progress bar for flight download
* user interface
- consistent progress bar during startup
* Android
- fix crash with USB serial adapter
- add WCH CH9102F into the list of accepted USB serial adapters
* data files
- load terrain while XCSoar is running
* devices
- TCP Client: fix crash bug
* tracking
- SkyLines: fix "Show nearby traffic" setting
* user interface
- add 3x5 InfoBoxes layout
* Android
- fix opening waypoint pictures
* user interface
- don't draw "---" over graphical InfoBoxes
* Android
- fix deadlock bug with Bluetooth sensors and the internal GPS
* user interface
- don't draw "---" over graphical InfoBoxes
* Android
- fix deadlock bug with Bluetooth sensors and the internal GPS
- keep screen on, even if not in full-screen mode
- fix bottom bar background in non-full-screen mode
- fix touch position in non-full-screen mode
* fix crash bug in pc_met viewer
- new vario gauge background
- fix truncated labels in many dialogs
* Android
- show Bluetooth LE device features
- support Bluetooth LE heart rate sensors
- support the Flytec Sensbox
- add DroidSoar/I2C calibration dialog
- fix reconnect to Bluetooth LE devices
- fix distorted colors on some devices
- detect USB serial adapter disconnect
- support baud rate switching on USB serial adapters
* Polars
- new Wassmer WA 26 P Squale polar
* weather
- work around connection problems to NOAA server (for METAR/TAF)
* Android
- fix crash with reconnected USB serial adapter
* don't delete old IGC files automatically
* devices
- TCP: fix error "Address already in use" on reconnect
* Android
- fix downloads on Android 10 and later
- fix logging while in background on Android 10 and later
- fix disappearing aircraft symbol
- fix crash bug in task editor
* fix crash bug in terrain loader
* fix paths with backslashes
* user interface
- use different colors to indicate relative traffic altitude
* calculations
- support for WeGlide distance contests
* user interface
- properly save and apply updated settings in the configuration dialog
- fix overlapping observation zones in the task point list
- fix text background in the analysis graphs
* tracking
- SkyLines: update tracking IP address
* terrain
- fix several crash bugs (JasPer)
* input events
- fix two crash bugs with malformed files
* user interface
- fix crash bug in waypoint editor
* devices
- added ports 8880, 8881, 8882 to tcp-client
* glide computer
- fix crash bug
* terrain
- fix several crash bugs (JasPer)
* Android
- fix several crash bugs
- fix rendering errors on very wide text lines
* user interface
- vario: fix overlapping text lines
* tracking
- SkyLines: update tracking IP address
* support for long-form `DTE` header in IGC files
* user interface
- fix average needle color in inverted mode
* Android
- compatibility with Android 9
- request all permissions without manual restarts
- fix crash bug
* devices
- LX: fix buffer overflow
- LX: support downloading flights from LX7000 Pro IGC
* Android
- use the full screen on very narrow/wide displays
* allow the hyphen in XCI files
* weather
- update source URLs for METARs and TAFs (https://)
* Android
- increase targetSdkVersion to 26 (required by Google Play)
- request storage and GPS permissions on Android 6+
- fix crash when permission to use GPS is revoked
- fix notification on Android 8+
* Task Editor
- fixed task editor crashes (Ticket 3930).
* devices
- IMI: raise max payload size to 2kB
* fix IGC logger crash when no date is available
Android 8 crash fixed.
Crash bugs in terrain loader fixed.
Terrain loader crash bug fixed
- support "GSEC" in OpenAir files- update source URLs for METARs and TAFs- CAI302: fix waypoint download (#3830)- IMI: fix PGRMZ parsing (was interpreted as altitude, now is pressure altitude)- LX: fix Nano 3 task declaration (#3858)- support for Kobo Aura Edition 2, Glo Refurbished- fix Wi-Fi on recent Kobo firmware releases (#3850)- fix USB storage compatibility with Windows 10- fix Raspbian Stretch compatibility- fix for freeze on shutdown
* two crash bug fixes* one minor SkyLines live tracking fix* introducing the new online service "XCSoar Cloud" (experimental)