Skip to content

Enhance URL handling in file version commands to support relative URLs and improve decoding logic#4892

Merged
gautamdsheth merged 1 commit intopnp:devfrom
gautamdsheth:fix/4723
May 2, 2025
Merged

Enhance URL handling in file version commands to support relative URLs and improve decoding logic#4892
gautamdsheth merged 1 commit intopnp:devfrom
gautamdsheth:fix/4723

Conversation

@gautamdsheth
Copy link
Copy Markdown
Collaborator

Type

  • Bug Fix
  • New Feature
  • Sample

Related Issues?

Fixes #4723

What is in this Pull Request ?

Improved decoding logic for file versions

@gautamdsheth gautamdsheth requested a review from Copilot May 2, 2025 13:06
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR enhances URL handling in file version commands by ensuring relative URL processing and improving the URL decoding logic. Key changes include:

  • Converting absolute URLs to relative ones using UrlUtility.MakeRelativeUrl.
  • Modifying URL decoding logic to preserve the "+" character.
  • Applying the same changes across RestoreFileVersion, RemoveFileVersion, and GetFileVersion commands.

Reviewed Changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated no comments.

File Description
src/Commands/Files/RestoreFileVersion.cs Added absolute URL check and customized URL decoding logic
src/Commands/Files/RemoveFileVersion.cs Added absolute URL check and customized URL decoding logic
src/Commands/Files/GetFileVersion.cs Added absolute URL check and customized URL decoding logic
Comments suppressed due to low confidence (3)

src/Commands/Files/RestoreFileVersion.cs:38

  • Consider using StartsWith with a StringComparison parameter (e.g., StringComparison.OrdinalIgnoreCase) instead of converting both strings to lower case for clarity and efficiency.
if (!Url.ToLower().StartsWith(webUrl.ToLower()))

src/Commands/Files/RemoveFileVersion.cs:47

  • Consider using StartsWith with a StringComparison parameter (e.g., StringComparison.OrdinalIgnoreCase) for a more robust case-insensitive comparison.
if (!Url.ToLower().StartsWith(webUrl.ToLower()))

src/Commands/Files/GetFileVersion.cs:34

  • Consider using StartsWith with a StringComparison parameter (e.g., StringComparison.OrdinalIgnoreCase) to avoid potential issues with culture-specific casing.
if (!Url.ToLower().StartsWith(webUrl.ToLower()))

@gautamdsheth gautamdsheth merged commit f463324 into pnp:dev May 2, 2025
3 checks passed
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.

[BUG] PnP-RemoveFileVersion fails if URL contains encoded characters

2 participants