[
https://issues.apache.org/jira/browse/MENFORCER-390?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17790148#comment-17790148
]
ASF GitHub Bot commented on MENFORCER-390:
------------------------------------------
roadSurfer commented on PR #297:
URL: https://github.com/apache/maven-enforcer/pull/297#issuecomment-1828111369
No, they are not intended. That will be my IDE doing its own thing, I'll
use a different editor and update.
On Mon, 27 Nov 2023 at 15:20, Torbjorn-Svensson ***@***.***>
wrote:
> Are all the white space changes in the .md files intended?
> As far as I know, some of the trailing white spaces are needed in order to
> not join the lines.
>
> —
> Reply to this email directly, view it on GitHub
>
<https://github.com/apache/maven-enforcer/pull/297#issuecomment-1828041274>,
> or unsubscribe
>
<https://github.com/notifications/unsubscribe-auth/AJHMQU65AH2DOVYZVDQKTUTYGSVUVAVCNFSM6AAAAAA7ZJWO7OVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQMRYGA2DCMRXGQ>
> .
> You are receiving this because you authored the thread.Message ID:
> ***@***.***>
>
> "requireFilesExist" no longer handles non-canonical paths
> ---------------------------------------------------------
>
> Key: MENFORCER-390
> URL: https://issues.apache.org/jira/browse/MENFORCER-390
> Project: Maven Enforcer Plugin
> Issue Type: Bug
> Components: requireFilesExist, Standard Rules
> Affects Versions: 3.0.0
> Reporter: Gene Smith
> Priority: Major
>
> With the commit to resolve MENFORCER-364, the rule "requireFileExists" checks
> that the canonical path of a file is the same as the absolute path.
> But not all absolute paths are canonical.
> * absolute paths can involve symbolic links
> * and they are allowed to have parts which are relative
> ** {{/../}}
> ** {{/./}}
> And when it fails to handle a path, it can report that a file does not exist,
> even though the local system will resolve the path.
> A blunt solution might be three separate rules:
> * requireFileExists
> ** the provided path must resolve to a file (which may be a directory or
> link)
> * requireCanonicalFileExists
> ** the provided path must exist as a canonical file
> * requireCasesenstiveFileExists
> ** the provided path must file a file
> ** the file name must have the same case (upper//lower) as the
> ** the parts of the path from the file up must have the same case until they
> go through a symbolic link
> I have used the "nio" package to handle some of stuff before. I will add a
> comment with some java code I would start with. Since the outcome here is
> very dependent on the use case you pick, the java will be "meta code" with
> ??? where you have to know the use case to know the outcome.
> but basically, with "nio" you can march up a path checking for symbolic links
> and such.
>
--
This message was sent by Atlassian Jira
(v8.20.10#820010)