Damien George 5327cd1021 tools/pyboard.py: Use '/' exclusively when dealing with paths.
Currently, certain mpremote filesystem operations can fail on Windows due
to a mixing of '/' and '\' for path separators.  Eg if filesystem_command()
is called with a destination that ends in / then dest.endswith(os.path.sep)
will return False, which gives the wrong behaviour (it does end in a path
separator).

For similar reasons to 7e9a15966acf80ff50fdf5c52553dd56de164bb3, it's best
to use '/' everywhere in pyboard.py and mpremote, because the target device
understands only '/'.  mpremote already does this, so the remaining place
to fix it is in pyboard.y, to convert all incoming paths to use '/' instead
of '\'.

This effectively reverts 57fd66b80f8352e4859e6b71536b6083f9d7279c which
tried to fix the problem in a different way.

See also related 1f84440538a017e463aaad9686831ce9527122b5.

Signed-off-by: Damien George <damien@micropython.org>
2023-02-24 13:08:34 +11:00
..