caronc / apprise

Apprise - Push Notifications that work with just about every platform!
https://hub.docker.com/r/caronc/apprise
BSD 2-Clause "Simplified" License
10.9k stars 384 forks source link

Do not sanitize http:// attachment URLs #1122

Closed caronc closed 1 month ago

caronc commented 1 month ago

Description:

Related issue (if applicable): #1118

Apprise Attachments that are HTTP based should not sanitize their URLs to the level others are handled at. Hence

Checklist

Testing

Anyone can help test this source code as follows:

# Create a virtual environment to work in as follows:
python3 -m venv apprise

# Change into our new directory
cd apprise

# Activate our virtual environment
source bin/activate

# Install the branch
pip install git+https://github.com/caronc/apprise.git@1118-do-not-sanitize-http-attachments

# Test out the changes with the following command:
apprise -t "Test Title" -b "Test Message" \
   --attach="http://a-location/?Where=CaseSensitive-KeYS&Content=MaTTER"
    schema://credentials"
codecov-commenter commented 1 month ago

Codecov Report

All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 99.29%. Comparing base (5fd912f) to head (65a2cb6).

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.

Additional details and impacted files ```diff @@ Coverage Diff @@ ## master #1122 +/- ## ========================================== + Coverage 99.28% 99.29% +0.01% ========================================== Files 139 139 Lines 18067 18066 -1 Branches 3690 3689 -1 ========================================== + Hits 17937 17938 +1 + Misses 121 119 -2 Partials 9 9 ```

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

stv0g commented 1 month ago

Thanks this indeed fixes #1118 for me

caronc commented 1 month ago

I'll need to revisit this in another release Apprise. I can't reproduce the testing on the GitHub servers that hang indefinitely and timeout after these changes. ~I've introduced some kind of deadlock of some sort with this (what seems like a) small change.~

n/m; I found the deadlock situation and resolved it :rocket: