Replace binary wheel and source distribution archives in dist/ for rupload 1.3.37,
and bump PKG-INFO metadata version from 2.1 to 2.4 in the egg-info directory.
The diff shows a single change in `src/rupload/app.py` within the `handle_thumbnail` function: the attribute `request.app.upload_path` is replaced with `request.app.upload_folder` when constructing the `thumbnail_path`. This aligns the thumbnail generation logic with the correct configuration key used elsewhere in the application, fixing a potential `AttributeError` or path mismatch when the `upload_path` attribute is undefined or deprecated.
The thumbnail path was incorrectly derived from the safe_path parent directory,
causing thumbnails to be stored relative to the file location rather than the
configured upload root. This change ensures thumbnails are consistently placed
under the application's upload_path/.thumbnail/ directory, fixing path resolution
for files in nested subdirectories.
The previous implementation joined the user-supplied path with the configured upload directory, but the resulting path was not validated against the intended base directory. This change removes the base path join entirely, leaving the path resolution to the caller or a separate validation layer. The fix prevents potential directory traversal attacks where a malicious path could escape the upload directory.
Implements a complete blacked-out visual state where all content is replaced by a solid black overlay covering the entire viewport. The overlay includes smooth fade-in animation and prevents any user interaction with underlying elements. This creates an immersive dark experience suitable for cinematic transitions or focus modes.
Updated the main layout component's background styling by swapping the previous static image URL for a CSS linear-gradient using brand colors. This change improves page load performance and aligns the visual theme with the updated design system.
The handle_index function now properly constructs HTML anchor tags by splitting the message at the "here: " prefix instead of using the raw upload URL, fixing broken link rendering when the upload URL appears in the success message. The handle_upload function also adds a trailing space after the "here:" prefix to ensure consistent parsing.
The previous implementation used a hardcoded offset of `len("here: ")` from the start of the string after `"here:"`, which would fail if the URL appeared at a different position or if the message structure changed. This commit replaces the brittle slice with a dynamic `str.find()` call to locate the `"here: "` substring, ensuring the URL is correctly extracted regardless of its position in the message. The fix applies to the `handle_index` handler in `src/rupload/app.py`.
The previous implementation incorrectly sliced the URL from the message by starting at the found index without accounting for the length of the upload URL, causing malformed anchor tags when the URL contained trailing slashes. This fix adjusts the slicing to start after the full upload URL string and properly escapes double quotes in the href attribute.
The generate_upload_url method previously concatenated self.upload_url directly with the filename, producing malformed URLs when upload_url did not end with a trailing slash. Changed the concatenation to insert "/" between the base URL and filename, ensuring correct redirect paths regardless of upload_url format.