Download from remote session running on Windows includes full path
- Dominant language
- Python
- Stars
- 83
- Forks
- 37
- Avg merge
- 1d 3m
- Merged PRs (30d)
- 26
Description
### 🔍 Before submitting the issue
- [x] I have searched among the existing issues
- [x] I am using a Python virtual environment
### 🐞 Description of the bug
When initializing a Mechanical remote session on a Windows evaluator from a vertical application running on a Linux host, the mechanical.download() method will include the full path, where the Mechanical session was running.
This can be seen in the console of the Linux host:
```
Downloading dns:///192.168.39.59:52195:C:\Users\dsoukup\AppData\Local\Temp\AnsysMech28A4\Project_Mech_Files\mechanical.log to /projects/69006a97de2ca10007ca82df/bdm/method_9efm626v/C:\Users\dsoukup\AppData\Local\Temp\AnsysMech28A4\Project_Mech_Files\mechanical.log
```
When the remote session is initialized on the same Windows machine where the host is running, it will only contain the file name as expected:
```
Downloading dns:///127.0.0.1:59662:C:\Users\dsoukup\AppData\Local\Temp\AnsysMechA9C7\Project_Mech_Files\mechanical.log to C:\Users\dsoukup\AppData\Roaming\Ansys\glow\MySolution\project_files\6900c4a2d3298393409b6035\bdm\method_nzwqvb14\mechanical.log
```
### 📝 Steps to reproduce
Initialize a Mechanical session on a Windows machine from an Linux host and download a file:
```python
result_folder : Path = storage_root
mechanical_log = mechanical.download("*.log", target_dir=str(result_folder), progress_bar=False)[0]
```
### 💻 Which operating system are you using?
Linux
### 📀 Which ANSYS version are you using?
242
### 🐍 Which Python version are you using?
3.12
### 📦 Installed packages
```shell
aiofiles 23.2.1
aioshutil 1.6
aiosqlite 0.19.0
annotated-types 0.7.0
ansys-api-mechanical 0.1.3
ansys-hps-client 0.9.1
ansys-mechanical-core 0.11.34
ansys-mechanical-stubs 0.1.6
ansys-pythonnet 3.1.0rc6
ansys-tools-path 0.7.3
ansys-translation-utilities 0.1.0
anyio 4.11.0
appdirs 1.4.4
ariadne 0.26.2
asgiref 3.10.0
asyncpg 0.30.0
backoff 2.2.1
bson 0.5.10
certifi 2025.10.5
cffi 2.0.0
charset-normalizer 3.4.4
click 8.3.0
clr-loader 0.2.8
cryptography 44.0.3
debugpy 1.8.17
deprecated 1.2.18
et-xmlfile 2.0.0
fastapi 0.115.14
googleapis-common-protos 1.71.0
gql 3.5.3
graphql-core 3.2.5
greenlet 3.2.4
grpcio 1.75.1
grpcio-health-checking 1.62.3
h11 0.16.0
httpcore 1.0.9
httpx 0.28.1
idna 3.11
importlib-metadata 8.4.0
joserfc 1.4.0
lxml 6.0.2
marshmallow 3.26.1
marshmallow-oneofschema 3.2.0
multidict 6.7.0
networkx 3.4.2
numpy 2.3.4
oauthlib 3.3.1
openpyxl 3.1.5
opentelemetry-api 1.27.0
opentelemetry-exporter-otlp 1.27.0
opentelemetry-exporter-otlp-proto-common 1.27.0
opentelemetry-exporter-otlp-proto-grpc 1.27.0
opentelemetry-exporter-otlp-proto-http 1.27.0
opentelemetry-instrumentation 0.48b0
opentelemetry-instrumentation-asgi 0.48b0
opentelemetry-instrumentation-fastapi 0.48b0
opentelemetry-instrumentation-flask 0.48b0
opentelemetry-instrumentation-httpx 0.48b0
opentelemetry-instrumentation-logging 0.48b0
opentelemetry-instrumentation-wsgi 0.48b0
opentelemetry-proto 1.27.0
opentelemetry-sdk 1.27.0
opentelemetry-semantic-conventions 0.48b0
opentelemetry-util-http 0.48b0
packaging 24.2
pandas 2.3.3
platformdirs 4.5.0
propcache 0.4.1
protobuf 4.25.8
psutil 6.1.1
pycparser 2.23
pydantic 2.12.3
pydantic-core 2.41.4
pydantic-settings 2.11.0
pyjwt 2.10.1
python-dateutil 2.9.0.post0
python-docx 1.1.2
python-dotenv 1.1.1
python-multipart 0.0.19
pytz 2025.2
pyyaml 6.0.3
requests 2.32.5
requests-oauthlib 2.0.0
requests-toolbelt 1.0.0
setuptools 80.9.0
six 1.17.0
sniffio 1.3.1
sqlalchemy 2.0.44
starlette 0.46.2
tqdm 4.67.1
typing-extensions 4.15.0
typing-inspection 0.4.2
tzdata 2025.2
urllib3 2.5.0
uvicorn 0.38.0
wrapt 1.17.3
wsproto 1.2.0
yarl 1.22.0
zipp 3.23.0
```
Contributor guide
Research direction
Start at the mechanical.download entry point and reproduce the remote Windows-session case from a Linux host using the example pattern in the issue. Trace how the downloaded remote path is converted into the local destination, then verify that only the file name is used and run the relevant download tests or reproduction to confirm the local and same-host behaviors.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- api
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100