Skip to content

Merge - #127

Open
kola1197 wants to merge 2037 commits into
kola1197:mergeTestBranchfrom
ArduPilot:master
Open

Merge#127
kola1197 wants to merge 2037 commits into
kola1197:mergeTestBranchfrom
ArduPilot:master

Conversation

@kola1197

@kola1197 kola1197 commented Dec 7, 2021

Copy link
Copy Markdown
Owner

No description provided.

meee1 and others added 16 commits December 13, 2024 15:04
Also adds the new beta download URL
This returns a response as soon as the header comes in, which makes the
progress bar/ETA work as intended. Previously, the entire file would be
downloaded before the response could even be checked, causing timeouts
for large files or slow connections.
This fixes an issue where commands that used the <Z> parameter for
anything other than altitude were getting unit conversions applied
when they shouldn't have been.

This also opens up the possibility of converting units for other
columns.
EosBandi and others added 30 commits May 28, 2026 10:51
…ided-mode endpoint (#3738)

* Initial plan

* Fix security vulnerabilities: path traversal, DoS, and unauthenticated guided endpoint

* Fix code review issues: add return after stream.Close, use lambda for ThreadPool

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
* Initial plan

* Fix graph axis scaling order in MavlinkLog.cs

* Fix AxisChange/Invalidate ordering in fftui.cs (5 locations)

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: Michael Oborne <mich146@hotmail.com>
* Initial plan

* Add French translation resource files

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: Michael Oborne <mich146@hotmail.com>
LogBrowse: fix exception on old logs
LogSort: add rlog as well
CurrentState: handle more messages - many legacy
Locationwp: prevent exception
LogIndex: spin less
Fix two bugs in DroneCAN.GetParameters() that caused parameter
enumeration to stop before retrieving all parameters:

1. SemaphoreSlim(1) allowed the while loop to send duplicate
   GetSet requests before receiving responses. When both duplicate
   responses arrived, the index was incremented twice, skipping
   intermediate parameter indices. Changed to SemaphoreSlim(0)
   so the loop blocks until each response arrives.

2. Message filter used a single AND condition that failed to
   filter out service messages from wrong nodes. A stray
   GetSet_res with name_len==0 from another node could trigger
   premature end-of-enumeration. Fixed to use two separate
   conditions matching the proven pattern in SetParameter().
…rew casks

Homebrew deleted the xamarin-ios, xamarin-android and xamarin-mac casks
on 2026-08-21 and mono-mdk-for-visual-studio on 2026-09-03, as Xamarin
is discontinued.  Runner images built after that (macos-14-arm64
20260831.0302 onwards) can no longer install them, so msbuild fails
with MSB4226 looking for Xamarin.Mac.CSharp.targets.

Download and install the same Microsoft and Mono packages the casks
wrapped, verifying the checksums the casks recorded.  Each job installs
only what it builds with; nothing here needed xamarin-android.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Ask for a directory listing with modification times, and fall back to the
plain listing if the vehicle NAKs the opcode. The fallback is remembered
for the life of the MAVFtp, so a vehicle which does not know the opcode
costs one extra round trip rather than one per listing. Only a NAK to the
very first request, and to the timed request itself, means the opcode is
unknown; one part way through a listing is a real error and is still
reported as such.

Entries in a timed listing are "<type><name>\t<size>\t<mtime>", where the
time is seconds since the UNIX epoch UTC and zero means the vehicle does
not know it. A directory carries the two trailing fields as well, so it is
split the same way; a plain listing still takes the whole string after the
D as the name, where a tab would be part of the name. A time outside the
uint32 the wire carries is treated as unknown rather than thrown on.

FtpFileInfo carries the time as ModifiedUtc, null when unknown.
The mounted filesystem stamped every entry with the current time. Use the
time the vehicle reported where there is one, so a listing shows when logs
were actually written; entries without one are unchanged.
The browser listed name, type and size, so the time a ListDirectoryWithTime
listing reports had nowhere to appear. Add a Date modified column, filled
for directories as well as files since a timed listing gives both.

Shown in local time, as that is what a user compares against their own
files, and blank where the vehicle reported no time. The format sorts
correctly under the existing string column sort.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
MAVFtp keeps a nameless directory entry in place of each skip (S) entry
in a listing, since the entry still takes up an offset. Nothing filtered
it out: the browser showed it as a folder whose path is its parent, so
expanding it listed the parent again, and the mounted filesystem handed
Dokan an empty file name.

PX4 already sends skip entries, and ArduPilot will once it can list with
times (a name containing a tab cannot be represented).

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
…change

The custom action lookup added in #3744 indexes the CustomActions
dictionary with the selected action name. Only actions registered by a
plugin are in that dictionary, so every built in action (preflight
calibration, set mode, and so on) threw KeyNotFoundException before it
was handled. Look the action up with TryGetValue instead.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.