[jira] [Comment Edited] (MYFACES-4736) Replace/remove javascript functions with share-alike license
[
https://issues.apache.org/jira/browse/MYFACES-4736?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18047823#comment-18047823
]
Werner Punz edited comment on MYFACES-4736 at 12/27/25 9:03 PM:
I have merged the pull request into 4.1.x.
I have issued two other pull requests with the same changes for 4.0 and main,
which also use the new codebase. I will merge them as soon as they are oked,
and then will close this issue as resolved! (Again thanks for reporting it)
Another update regarding newer dependencies and a slightly cleaned up node
build infrastructure will follow the next few days in its own issue!
was (Author: werpu):
Merge the pull request into 4.1.x. I will merge them as soon as they are oked!
I have issued two other pull requests with the same changes for 4.0 and main,
which also use the new codebase.
Another update regarding newer dependencies and a slightly cleaned up node
build infrastructure will follow the next few days in its own issue!
> Replace/remove javascript functions with share-alike license
>
>
> Key: MYFACES-4736
> URL: https://issues.apache.org/jira/browse/MYFACES-4736
> Project: MyFaces Core
> Issue Type: Improvement
> Components: General
>Affects Versions: 4.1.2
>Reporter: Florian Schwarz
>Assignee: Werner Punz
>Priority: Major
>
> Some javascript function, e.g. _mozMatchesSelector in
> /META-INF/resources/jakarta.faces/faces-development.js, line 7152, contain a
> comment
> {code:java}
> // source: https:// developer.mozilla.org/en-US/docs/Web/API/Element/matches
> // code snippet license: https:// creativecommons.org/licenses/by-sa/2.5/
> {code}
> From my understanding, this by-sa (share-alike) means, that if one uses
> myfaces in its project, one has to use also the CC-BY-SA-2.5 license for his
> project ([https://creativecommons.org/licenses/by-sa/2.5/deed.en] ). So I
> wanted to ask if it would be possible to replace or remove those functions,
> allowing users of myfaces to use a different license.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
[jira] [Comment Edited] (MYFACES-4736) Replace/remove javascript functions with share-alike license
[
https://issues.apache.org/jira/browse/MYFACES-4736?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18047823#comment-18047823
]
Werner Punz edited comment on MYFACES-4736 at 12/27/25 9:03 PM:
I have merged the pull request into 4.1.x.
I have issued two other pull requests with the same changes for 4.0 and main,
which also use the new codebase. I will merge them as soon as they are oked,
and then will close this issue as resolved! (Again thanks for reporting it)
Another update regarding newer build dependencies and a slightly cleaned up
node build infrastructure will follow the next few days in its own issue!
was (Author: werpu):
I have merged the pull request into 4.1.x.
I have issued two other pull requests with the same changes for 4.0 and main,
which also use the new codebase. I will merge them as soon as they are oked,
and then will close this issue as resolved! (Again thanks for reporting it)
Another update regarding newer dependencies and a slightly cleaned up node
build infrastructure will follow the next few days in its own issue!
> Replace/remove javascript functions with share-alike license
>
>
> Key: MYFACES-4736
> URL: https://issues.apache.org/jira/browse/MYFACES-4736
> Project: MyFaces Core
> Issue Type: Improvement
> Components: General
>Affects Versions: 4.1.2
>Reporter: Florian Schwarz
>Assignee: Werner Punz
>Priority: Major
>
> Some javascript function, e.g. _mozMatchesSelector in
> /META-INF/resources/jakarta.faces/faces-development.js, line 7152, contain a
> comment
> {code:java}
> // source: https:// developer.mozilla.org/en-US/docs/Web/API/Element/matches
> // code snippet license: https:// creativecommons.org/licenses/by-sa/2.5/
> {code}
> From my understanding, this by-sa (share-alike) means, that if one uses
> myfaces in its project, one has to use also the CC-BY-SA-2.5 license for his
> project ([https://creativecommons.org/licenses/by-sa/2.5/deed.en] ). So I
> wanted to ask if it would be possible to replace or remove those functions,
> allowing users of myfaces to use a different license.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
[jira] [Comment Edited] (MYFACES-4736) Replace/remove javascript functions with share-alike license
[
https://issues.apache.org/jira/browse/MYFACES-4736?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18047313#comment-18047313
]
Werner Punz edited comment on MYFACES-4736 at 12/23/25 11:22 PM:
-
Pull request is available under: [https://github.com/apache/myfaces/pull/944]
was (Author: werpu):
Pull request is available under: [https://github.com/apache/myfaces/pull/944]
I noticed due to changes in the handling of modules in node, I will have a
smaller reorganization of the build infrastructure ahead of me for the client
sources. For now I have a hotfix in place, but in the next months I will change
the build slightly (I need to move to tsx from the node-typescript
infrastructure, and also I will upgrade typescript again to a higher version,
which also will cause some code fixes and changes)
But for now it looks good and npm audit also again is green!
The merge and of course rolling it out into the other branches will happen
after the holidays!The client build infrastructure update will happen first in
my github upstream project before being rolled into myfaces.
This came quite unexpected and cost me a ton of time of what was supposed to be
a small fix!
> Replace/remove javascript functions with share-alike license
>
>
> Key: MYFACES-4736
> URL: https://issues.apache.org/jira/browse/MYFACES-4736
> Project: MyFaces Core
> Issue Type: Improvement
> Components: General
>Affects Versions: 4.1.2
>Reporter: Florian Schwarz
>Assignee: Werner Punz
>Priority: Major
>
> Some javascript function, e.g. _mozMatchesSelector in
> /META-INF/resources/jakarta.faces/faces-development.js, line 7152, contain a
> comment
> {code:java}
> // source: https:// developer.mozilla.org/en-US/docs/Web/API/Element/matches
> // code snippet license: https:// creativecommons.org/licenses/by-sa/2.5/
> {code}
> From my understanding, this by-sa (share-alike) means, that if one uses
> myfaces in its project, one has to use also the CC-BY-SA-2.5 license for his
> project ([https://creativecommons.org/licenses/by-sa/2.5/deed.en] ). So I
> wanted to ask if it would be possible to replace or remove those functions,
> allowing users of myfaces to use a different license.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
[jira] [Comment Edited] (MYFACES-4736) Replace/remove javascript functions with share-alike license
[
https://issues.apache.org/jira/browse/MYFACES-4736?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18047313#comment-18047313
]
Werner Punz edited comment on MYFACES-4736 at 12/23/25 10:35 PM:
-
Pull request is available under: [https://github.com/apache/myfaces/pull/944]
I noticed due to changes in the handling of modules in node, I will have a
smaller reorganization of the build infrastructure ahead of me for the client
sources. For now I have a hotfix in place, but in the next months I will change
the build slightly (I need to move to tsx from the node-typescript
infrastructure, and also I will upgrade typescript again to a higher version,
which also will cause some code fixes and changes)
But for now it looks good and npm audit also again is green!
The merge and of course rolling it out into the other branches will happen
after the holidays!The client build infrastructure update will happen first in
my github upstream project before being rolled into myfaces.
This came quite unexpected and cost me a ton of time of what was supposed to be
a small fix!
was (Author: werpu):
Pull request is available under: [https://github.com/apache/myfaces/pull/944]
I noticed due to changes in the handling of modules in node, I will have a
smaller reorganization of the build infrastructure ahead of me for the client
sources. For now I have a hotfix in place, but in the next months I will change
the build slightly (I need to move to tsx from the node-typescript
infrastructure, and also I will upgrade typescript again to a higher version,
which also will cause some code fixes and changes)
But for now it looks good and npm audit also again is green!
The merge and of course rolling it out into the other branches will happen
after the holidays!
The client build infrastructure update will happen first in my github upstream
project
before being rolled into myfaces. This came quite unexpected and cost me a ton
of time
of what was supposed to be a small fix!
> Replace/remove javascript functions with share-alike license
>
>
> Key: MYFACES-4736
> URL: https://issues.apache.org/jira/browse/MYFACES-4736
> Project: MyFaces Core
> Issue Type: Improvement
> Components: General
>Affects Versions: 4.1.2
>Reporter: Florian Schwarz
>Assignee: Werner Punz
>Priority: Major
>
> Some javascript function, e.g. _mozMatchesSelector in
> /META-INF/resources/jakarta.faces/faces-development.js, line 7152, contain a
> comment
> {code:java}
> // source: https:// developer.mozilla.org/en-US/docs/Web/API/Element/matches
> // code snippet license: https:// creativecommons.org/licenses/by-sa/2.5/
> {code}
> From my understanding, this by-sa (share-alike) means, that if one uses
> myfaces in its project, one has to use also the CC-BY-SA-2.5 license for his
> project ([https://creativecommons.org/licenses/by-sa/2.5/deed.en] ). So I
> wanted to ask if it would be possible to replace or remove those functions,
> allowing users of myfaces to use a different license.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
[jira] [Comment Edited] (MYFACES-4736) Replace/remove javascript functions with share-alike license
[
https://issues.apache.org/jira/browse/MYFACES-4736?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18047313#comment-18047313
]
Werner Punz edited comment on MYFACES-4736 at 12/23/25 10:34 PM:
-
Pull request is available under: [https://github.com/apache/myfaces/pull/944]
I noticed due to changes in the handling of modules in node, I will have a
smaller reorganization of the build infrastructure ahead of me for the client
sources. For now I have a hotfix in place, but in the next months I will change
the build slightly (I need to move to tsx from the node-typescript
infrastructure, and also I will upgrade typescript again to a higher version,
which also will cause some code fixes and changes)
But for now it looks good and npm audit also again is green!
The merge and of course rolling it out into the other branches will happen
after the holidays!
The client build infrastructure update will happen first in my github upstream
project
before being rolled into myfaces. This came quite unexpected and cost me a ton
of time
of what was supposed to be a small fix!
was (Author: werpu):
Pull request is available under: [https://github.com/apache/myfaces/pull/944]
I noticed due to changes in the handling of modules in node, I will have a
smaller reorganization of the build infrastructure ahead of me for the client
sources. For now I have a hotfix in place, but in the next months I will change
the build slightly (I need to move to tsx from the node-typescript
infrastructure, and also I will upgrade typescript again to a higher version,
which also will cause some code fixes and changes)
But for now it looks good and npm audit also again is green!
The merge and of course rolling it out into the other branches will happen
after the holidays!
The client build infrastructure update will happen first in my github upstream
project
before being rolled into myfaces.
> Replace/remove javascript functions with share-alike license
>
>
> Key: MYFACES-4736
> URL: https://issues.apache.org/jira/browse/MYFACES-4736
> Project: MyFaces Core
> Issue Type: Improvement
> Components: General
>Affects Versions: 4.1.2
>Reporter: Florian Schwarz
>Assignee: Werner Punz
>Priority: Major
>
> Some javascript function, e.g. _mozMatchesSelector in
> /META-INF/resources/jakarta.faces/faces-development.js, line 7152, contain a
> comment
> {code:java}
> // source: https:// developer.mozilla.org/en-US/docs/Web/API/Element/matches
> // code snippet license: https:// creativecommons.org/licenses/by-sa/2.5/
> {code}
> From my understanding, this by-sa (share-alike) means, that if one uses
> myfaces in its project, one has to use also the CC-BY-SA-2.5 license for his
> project ([https://creativecommons.org/licenses/by-sa/2.5/deed.en] ). So I
> wanted to ask if it would be possible to replace or remove those functions,
> allowing users of myfaces to use a different license.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
[jira] [Comment Edited] (MYFACES-4736) Replace/remove javascript functions with share-alike license
[
https://issues.apache.org/jira/browse/MYFACES-4736?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18047313#comment-18047313
]
Werner Punz edited comment on MYFACES-4736 at 12/23/25 10:34 PM:
-
Pull request is available under: [https://github.com/apache/myfaces/pull/944]
I noticed due to changes in the handling of modules in node, I will have a
smaller reorganization of the build infrastructure ahead of me for the client
sources. For now I have a hotfix in place, but in the next months I will change
the build slightly (I need to move to tsx from the node-typescript
infrastructure, and also I will upgrade typescript again to a higher version,
which also will cause some code fixes and changes)
But for now it looks good and npm audit also again is green!
The merge and of course rolling it out into the other branches will happen
after the holidays!
The client build infrastructure update will happen first in my github upstream
project
before being rolled into myfaces.
was (Author: werpu):
Pull request is available under: [https://github.com/apache/myfaces/pull/944]
I noticed due to changes in the handling of modules in node, I will have a
smaller reorganization of the build infrastructure ahead of me for the client
sources. For now I have a hotfix in place, but in the next months I will change
the build slightly (I need to move to tsx from the node-typescript
infrastructure, and also I will upgrade typescript again to a higher version,
which also will cause some code fixes and changes)
But for now it looks good and npm audit also again is green!
The merge and of course rolling it out into the other branches will happen
after the holidays!
> Replace/remove javascript functions with share-alike license
>
>
> Key: MYFACES-4736
> URL: https://issues.apache.org/jira/browse/MYFACES-4736
> Project: MyFaces Core
> Issue Type: Improvement
> Components: General
>Affects Versions: 4.1.2
>Reporter: Florian Schwarz
>Assignee: Werner Punz
>Priority: Major
>
> Some javascript function, e.g. _mozMatchesSelector in
> /META-INF/resources/jakarta.faces/faces-development.js, line 7152, contain a
> comment
> {code:java}
> // source: https:// developer.mozilla.org/en-US/docs/Web/API/Element/matches
> // code snippet license: https:// creativecommons.org/licenses/by-sa/2.5/
> {code}
> From my understanding, this by-sa (share-alike) means, that if one uses
> myfaces in its project, one has to use also the CC-BY-SA-2.5 license for his
> project ([https://creativecommons.org/licenses/by-sa/2.5/deed.en] ). So I
> wanted to ask if it would be possible to replace or remove those functions,
> allowing users of myfaces to use a different license.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
[jira] [Comment Edited] (MYFACES-4736) Replace/remove javascript functions with share-alike license
[
https://issues.apache.org/jira/browse/MYFACES-4736?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18047313#comment-18047313
]
Werner Punz edited comment on MYFACES-4736 at 12/23/25 10:31 PM:
-
Pull request is available under: [https://github.com/apache/myfaces/pull/944]
I noticed due to changes in the handling of modules in node, I will have a
smaller reorganization of the build infrastructure ahead of me for the client
sources. For now I have a hotfix in place, but in the next months I will change
the build slightly (I need to move to tsx from the node-typescript
infrastructure, and also I will upgrade typescript again to a higher version,
which also will cause some code fixes and changes)
But for now it looks good and npm audit also again is green!
The merge and of course rolling it out into the other branches will happen
after the holidays!
was (Author: werpu):
Pull request is available under: [https://github.com/apache/myfaces/pull/944]
I noticed due to changes in the handling of modules in node, I will have a
smaller reorganization of the build infrastructure ahead of me for the client
sources. For now I have a hotfix in place, but in the next months I will change
the build slightly (I need to move to tsx from the node-typescript
infrastructure, and also I will upgrade typescript again to a higher version,
which also will cause some code fixes and changes)
But for now it looks good and npm audit also again is green!
> Replace/remove javascript functions with share-alike license
>
>
> Key: MYFACES-4736
> URL: https://issues.apache.org/jira/browse/MYFACES-4736
> Project: MyFaces Core
> Issue Type: Improvement
> Components: General
>Affects Versions: 4.1.2
>Reporter: Florian Schwarz
>Assignee: Werner Punz
>Priority: Major
>
> Some javascript function, e.g. _mozMatchesSelector in
> /META-INF/resources/jakarta.faces/faces-development.js, line 7152, contain a
> comment
> {code:java}
> // source: https:// developer.mozilla.org/en-US/docs/Web/API/Element/matches
> // code snippet license: https:// creativecommons.org/licenses/by-sa/2.5/
> {code}
> From my understanding, this by-sa (share-alike) means, that if one uses
> myfaces in its project, one has to use also the CC-BY-SA-2.5 license for his
> project ([https://creativecommons.org/licenses/by-sa/2.5/deed.en] ). So I
> wanted to ask if it would be possible to replace or remove those functions,
> allowing users of myfaces to use a different license.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
[jira] [Comment Edited] (MYFACES-4736) Replace/remove javascript functions with share-alike license
[
https://issues.apache.org/jira/browse/MYFACES-4736?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18047118#comment-18047118
]
Werner Punz edited comment on MYFACES-4736 at 12/22/25 10:07 PM:
-
ok the fix wont make it in anymore tonight, I had to upgrade several outdated
dependencies and now I have some falling tests. I have to investigate that and
fix it before merging the fix into the myfaces codebase.
the problem seems to be related to some dependency updates where domjs was also
upgraded!
was (Author: werpu):
ok the fix wont make it in anymore tonight, I had to upgrade several outdated
dependencies and now I have some falling tests. I have to investigate that and
fix it before merging the fix into the myfaces codebase.
> Replace/remove javascript functions with share-alike license
>
>
> Key: MYFACES-4736
> URL: https://issues.apache.org/jira/browse/MYFACES-4736
> Project: MyFaces Core
> Issue Type: Improvement
> Components: General
>Affects Versions: 4.1.2
>Reporter: Florian Schwarz
>Assignee: Werner Punz
>Priority: Major
>
> Some javascript function, e.g. _mozMatchesSelector in
> /META-INF/resources/jakarta.faces/faces-development.js, line 7152, contain a
> comment
> {code:java}
> // source: https:// developer.mozilla.org/en-US/docs/Web/API/Element/matches
> // code snippet license: https:// creativecommons.org/licenses/by-sa/2.5/
> {code}
> From my understanding, this by-sa (share-alike) means, that if one uses
> myfaces in its project, one has to use also the CC-BY-SA-2.5 license for his
> project ([https://creativecommons.org/licenses/by-sa/2.5/deed.en] ). So I
> wanted to ask if it would be possible to replace or remove those functions,
> allowing users of myfaces to use a different license.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
[jira] [Comment Edited] (MYFACES-4736) Replace/remove javascript functions with share-alike license
[
https://issues.apache.org/jira/browse/MYFACES-4736?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18047110#comment-18047110
]
Werner Punz edited comment on MYFACES-4736 at 12/22/25 8:44 PM:
ok this is pretty old code, I remember roughly that there were browser issues
back then when I implemented it, but by now it is definitely not needed
anymore, following code now should do the trick properly:
{color:#cf8e6d}private {color}{color:#56a8f5}_matchesSelector{color}(toMatch:
Element, selector: {color:#cf8e6d}string{color}): {color:#cf8e6d}boolean
{color}{
{color:#cf8e6d}if{color}(toMatch.{color:#56a8f5}matches{color}) {
{color:#cf8e6d}return {color}toMatch.{color:#56a8f5}matches{color}(selector);
}
{color:#cf8e6d}var {color}{color:#a9b7c6}foundElements {color}=
({color:#c77dba}document {color}||
{color:#a9b7c6}ownerDocument{color}).{color:#56a8f5}querySelectorAll{color}(selector);
{color:#cf8e6d}return
{color}{color:#56a8f5}Array{color}.{color:#c77dbb}prototype{color}.{color:#56a8f5}indexOf{color}.{color:#56a8f5}call{color}({color:#a9b7c6}foundElements{color},
toMatch) !== -{color:#2aacb8}1{color};
}
what the old code did was to use the vendor specific prefixes with query
selectorall prefix, to cover as many browsers as possible, but given that
{color:#172b4d}matches is supported by all new browsers a simple querySelectAll
fallback probably suffices by now, no need to check for vendor specific methods
anymore!{color}
So we have slain two dragons with this, removal of vendor specific fallbacks,
removal of code stemming from an incompatible license!
I will roll a new version of the underlying library and then have the updated
code rolled into the new myfaces branches!
The reason I copied the code over was that the original code was documented on
the Mozilla site and covered literally all known vendor specific prefix methods
and I quickly checked the license and thought it was compatible. My fault,
sorry about that!
was (Author: werpu):
ok this is pretty old code, I remember roughly that there were browser issues
back then when I implemented it, but by now it is definitely not needed
anymore, following code now should do the trick properly:
{color:#cf8e6d}private {color}{color:#56a8f5}_matchesSelector{color}(toMatch:
Element, selector: {color:#cf8e6d}string{color}): {color:#cf8e6d}boolean
{color}{
{color:#cf8e6d}if{color}(toMatch.{color:#56a8f5}matches{color}) {
{color:#cf8e6d}return {color}toMatch.{color:#56a8f5}matches{color}(selector);
}
{color:#cf8e6d}var {color}{color:#a9b7c6}foundElements {color}=
({color:#c77dba}document {color}||
{color:#a9b7c6}ownerDocument{color}).{color:#56a8f5}querySelectorAll{color}(selector);
{color:#cf8e6d}return
{color}{color:#56a8f5}Array{color}.{color:#c77dbb}prototype{color}.{color:#56a8f5}indexOf{color}.{color:#56a8f5}call{color}({color:#a9b7c6}foundElements{color},
toMatch) !== -{color:#2aacb8}1{color};
}
what the old code did was to use the vendor specific prefixes with query
selectorall prefix, to cover as many browsers as possible, but given that
{color:#56a8f5}matches is supported by all new browsers a simple querySelectAll
fallback probably suffices by now, no need to check for vendor specific methods
anymore!{color}
So we have slain two dragons with this, removal of vendor specific fallbacks,
removal of code stemming from an incompatible license!
I will roll a new version of the underlying library and then have the updated
code rolled into the new myfaces branches!
> Replace/remove javascript functions with share-alike license
>
>
> Key: MYFACES-4736
> URL: https://issues.apache.org/jira/browse/MYFACES-4736
> Project: MyFaces Core
> Issue Type: Improvement
> Components: General
>Affects Versions: 4.1.2
>Reporter: Florian Schwarz
>Assignee: Werner Punz
>Priority: Major
>
> Some javascript function, e.g. _mozMatchesSelector in
> /META-INF/resources/jakarta.faces/faces-development.js, line 7152, contain a
> comment
> {code:java}
> // source: https:// developer.mozilla.org/en-US/docs/Web/API/Element/matches
> // code snippet license: https:// creativecommons.org/licenses/by-sa/2.5/
> {code}
> From my understanding, this by-sa (share-alike) means, that if one uses
> myfaces in its project, one has to use also the CC-BY-SA-2.5 license for his
> project ([https://creativecommons.org/licenses/by-sa/2.5/deed.en] ). So I
> wanted to ask if it would be possible to replace or remove those functions,
> allowing users of myfaces to use a different license.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
[jira] [Comment Edited] (MYFACES-4736) Replace/remove javascript functions with share-alike license
[
https://issues.apache.org/jira/browse/MYFACES-4736?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18047110#comment-18047110
]
Werner Punz edited comment on MYFACES-4736 at 12/22/25 8:44 PM:
ok this is pretty old code, I remember roughly that there were browser issues
back then when I implemented it, but by now it is definitely not needed
anymore, following code now should do the trick properly:
{color:#cf8e6d}private {color}{color:#56a8f5}_matchesSelector{color}(toMatch:
Element, selector: {color:#cf8e6d}string{color}): {color:#cf8e6d}boolean
{color}{
{color:#cf8e6d}if{color}(toMatch.{color:#56a8f5}matches{color}) {
{color:#cf8e6d}return {color}toMatch.{color:#56a8f5}matches{color}(selector);
}
{color:#cf8e6d}var {color}{color:#a9b7c6}foundElements {color}=
({color:#c77dba}document {color}||
{color:#a9b7c6}ownerDocument{color}).{color:#56a8f5}querySelectorAll{color}(selector);
{color:#cf8e6d}return
{color}{color:#56a8f5}Array{color}.{color:#c77dbb}prototype{color}.{color:#56a8f5}indexOf{color}.{color:#56a8f5}call{color}({color:#a9b7c6}foundElements{color},
toMatch) !== -{color:#2aacb8}1{color};
}
what the old code did was to use the vendor specific prefixes with query
selectorall prefix, to cover as many browsers as possible, but given that
{color:#172b4d}matches is supported by all new browsers a simple querySelectAll
fallback probably suffices by now, no need to check for vendor specific methods
anymore! In the end it was my own lazyness, but given that I document always
code I drag in from other sources as licenses demand it and to keep a clean
track this was detected. Thanks for pointing it out!{color}
So we have slain two dragons with this, removal of vendor specific fallbacks,
removal of code stemming from an incompatible license!
I will roll a new version of the underlying library and then have the updated
code rolled into the new myfaces branches!
The reason I copied the code over was that the original code was documented on
the Mozilla site and covered literally all known vendor specific prefix methods
and I quickly checked the license and thought it was compatible. My fault,
sorry about that!
was (Author: werpu):
ok this is pretty old code, I remember roughly that there were browser issues
back then when I implemented it, but by now it is definitely not needed
anymore, following code now should do the trick properly:
{color:#cf8e6d}private {color}{color:#56a8f5}_matchesSelector{color}(toMatch:
Element, selector: {color:#cf8e6d}string{color}): {color:#cf8e6d}boolean
{color}{
{color:#cf8e6d}if{color}(toMatch.{color:#56a8f5}matches{color}) {
{color:#cf8e6d}return {color}toMatch.{color:#56a8f5}matches{color}(selector);
}
{color:#cf8e6d}var {color}{color:#a9b7c6}foundElements {color}=
({color:#c77dba}document {color}||
{color:#a9b7c6}ownerDocument{color}).{color:#56a8f5}querySelectorAll{color}(selector);
{color:#cf8e6d}return
{color}{color:#56a8f5}Array{color}.{color:#c77dbb}prototype{color}.{color:#56a8f5}indexOf{color}.{color:#56a8f5}call{color}({color:#a9b7c6}foundElements{color},
toMatch) !== -{color:#2aacb8}1{color};
}
what the old code did was to use the vendor specific prefixes with query
selectorall prefix, to cover as many browsers as possible, but given that
{color:#172b4d}matches is supported by all new browsers a simple querySelectAll
fallback probably suffices by now, no need to check for vendor specific methods
anymore!{color}
So we have slain two dragons with this, removal of vendor specific fallbacks,
removal of code stemming from an incompatible license!
I will roll a new version of the underlying library and then have the updated
code rolled into the new myfaces branches!
The reason I copied the code over was that the original code was documented on
the Mozilla site and covered literally all known vendor specific prefix methods
and I quickly checked the license and thought it was compatible. My fault,
sorry about that!
> Replace/remove javascript functions with share-alike license
>
>
> Key: MYFACES-4736
> URL: https://issues.apache.org/jira/browse/MYFACES-4736
> Project: MyFaces Core
> Issue Type: Improvement
> Components: General
>Affects Versions: 4.1.2
>Reporter: Florian Schwarz
>Assignee: Werner Punz
>Priority: Major
>
> Some javascript function, e.g. _mozMatchesSelector in
> /META-INF/resources/jakarta.faces/faces-development.js, line 7152, contain a
> comment
> {code:java}
> // source: https:// developer.mozilla.org/en-US/docs/Web/API/Element/matches
> // code snippet license: https:// creativecommons.org/licenses/by-sa/2.5/
> {code}
> From my understanding, this by-sa (share-alike) means, that if one uses
> myfaces in its
[jira] [Comment Edited] (MYFACES-4736) Replace/remove javascript functions with share-alike license
[
https://issues.apache.org/jira/browse/MYFACES-4736?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18047110#comment-18047110
]
Werner Punz edited comment on MYFACES-4736 at 12/22/25 8:42 PM:
ok this is pretty old code, I remember roughly that there were browser issues
back then when I implemented it, but by now it is definitely not needed
anymore, following code now should do the trick properly:
{color:#cf8e6d}private {color}{color:#56a8f5}_matchesSelector{color}(toMatch:
Element, selector: {color:#cf8e6d}string{color}): {color:#cf8e6d}boolean
{color}{
{color:#cf8e6d}if{color}(toMatch.{color:#56a8f5}matches{color}) {
{color:#cf8e6d}return {color}toMatch.{color:#56a8f5}matches{color}(selector);
}
{color:#cf8e6d}var {color}{color:#a9b7c6}foundElements {color}=
({color:#c77dba}document {color}||
{color:#a9b7c6}ownerDocument{color}).{color:#56a8f5}querySelectorAll{color}(selector);
{color:#cf8e6d}return
{color}{color:#56a8f5}Array{color}.{color:#c77dbb}prototype{color}.{color:#56a8f5}indexOf{color}.{color:#56a8f5}call{color}({color:#a9b7c6}foundElements{color},
toMatch) !== -{color:#2aacb8}1{color};
}
what the old code did was to use the vendor specific prefixes with query
selectorall prefix, to cover as many browsers as possible, but given that
{color:#56a8f5}matches is supported by all new browsers a simple querySelectAll
fallback probably suffices by now, no need to check for vendor specific methods
anymore!{color}
So we have slain two dragons with this, removal of vendor specific fallbacks,
removal of code stemming from an incompatible license!
I will roll a new version of the underlying library and then have the updated
code rolled into the new myfaces branches!
was (Author: werpu):
ok this is pretty old code, I remember roughly that there were browser issues
back then when I implemented it, but by now it is definitely not needed
anymore, following code now should do the trick properly:
{color:#cf8e6d}private {color}{color:#56a8f5}_matchesSelector{color}(toMatch:
Element, selector: {color:#cf8e6d}string{color}): {color:#cf8e6d}boolean
{color}{
{color:#cf8e6d}if{color}(toMatch.{color:#56a8f5}matches{color}) {
{color:#cf8e6d}return {color}toMatch.{color:#56a8f5}matches{color}(selector);
}
{color:#cf8e6d}var {color}{color:#a9b7c6}foundElements {color}=
({color:#c77dba}document {color}||
{color:#a9b7c6}ownerDocument{color}).{color:#56a8f5}querySelectorAll{color}(selector);
{color:#cf8e6d}return
{color}{color:#56a8f5}Array{color}.{color:#c77dbb}prototype{color}.{color:#56a8f5}indexOf{color}.{color:#56a8f5}call{color}({color:#a9b7c6}foundElements{color},
toMatch) !== -{color:#2aacb8}1{color};
}
what the old code did was to use the vendor specific prefixes with query
selectorall prefix, to cover as many browsers as possible, but given that
{color:#56a8f5}matches is supported by all new browsers a simple querySelectAll
fallback probably suffices by now, no need to check for vendor specific methods
anymore!{color}
So we have slain two dragons with this, removal of vendor specific fallbacks,
removal of code stemming from an incompatible license!
> Replace/remove javascript functions with share-alike license
>
>
> Key: MYFACES-4736
> URL: https://issues.apache.org/jira/browse/MYFACES-4736
> Project: MyFaces Core
> Issue Type: Improvement
> Components: General
>Affects Versions: 4.1.2
>Reporter: Florian Schwarz
>Assignee: Werner Punz
>Priority: Major
>
> Some javascript function, e.g. _mozMatchesSelector in
> /META-INF/resources/jakarta.faces/faces-development.js, line 7152, contain a
> comment
> {code:java}
> // source: https:// developer.mozilla.org/en-US/docs/Web/API/Element/matches
> // code snippet license: https:// creativecommons.org/licenses/by-sa/2.5/
> {code}
> From my understanding, this by-sa (share-alike) means, that if one uses
> myfaces in its project, one has to use also the CC-BY-SA-2.5 license for his
> project ([https://creativecommons.org/licenses/by-sa/2.5/deed.en] ). So I
> wanted to ask if it would be possible to replace or remove those functions,
> allowing users of myfaces to use a different license.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
[jira] [Comment Edited] (MYFACES-4736) Replace/remove javascript functions with share-alike license
[
https://issues.apache.org/jira/browse/MYFACES-4736?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18047110#comment-18047110
]
Werner Punz edited comment on MYFACES-4736 at 12/22/25 8:41 PM:
ok this is pretty old code, I remember roughly that there were browser issues
back then when I implemented it, but by now it is definitely not needed
anymore, following code now should do the trick properly:
{color:#cf8e6d}private {color}{color:#56a8f5}_matchesSelector{color}(toMatch:
Element, selector: {color:#cf8e6d}string{color}): {color:#cf8e6d}boolean
{color}{
{color:#cf8e6d}if{color}(toMatch.{color:#56a8f5}matches{color}) {
{color:#cf8e6d}return {color}toMatch.{color:#56a8f5}matches{color}(selector);
}
{color:#cf8e6d}var {color}{color:#a9b7c6}foundElements {color}=
({color:#c77dba}document {color}||
{color:#a9b7c6}ownerDocument{color}).{color:#56a8f5}querySelectorAll{color}(selector);
{color:#cf8e6d}return
{color}{color:#56a8f5}Array{color}.{color:#c77dbb}prototype{color}.{color:#56a8f5}indexOf{color}.{color:#56a8f5}call{color}({color:#a9b7c6}foundElements{color},
toMatch) !== -{color:#2aacb8}1{color};
}
what the old code did was to use the vendor specific prefixes with query
selecot all prefix, to cover as many browsers as possible, but given that
{color:#56a8f5}{color:#172b4d}matches is supported by all new browsers a simple
querySelectAll fallback probably suffices by now, no need to check for vendor
specific methods anymore!{color}{color}
So we have slain two dragons with this, removal of vendor specific fallbacks,
removal of code stemming from an incompatible license!
was (Author: werpu):
ok this is pretty old code, I remember roughly that there were browser issues
back then when I implemented it, but by now it is definitely not needed
anymore, following code now should do the trick properly:
{color:#cf8e6d}private {color}{color:#56a8f5}_matchesSelector{color}(toMatch:
Element, selector: {color:#cf8e6d}string{color}): {color:#cf8e6d}boolean
{color}{
{color:#cf8e6d}if{color}(toMatch.{color:#56a8f5}matches{color}) {
{color:#cf8e6d}return {color}toMatch.{color:#56a8f5}matches{color}(selector);
}
{color:#cf8e6d}var {color}{color:#a9b7c6}foundElements {color}=
({color:#c77dba}document {color}||
{color:#a9b7c6}ownerDocument{color}).{color:#56a8f5}querySelectorAll{color}(selector);
{color:#cf8e6d}return
{color}{color:#56a8f5}Array{color}.{color:#c77dbb}prototype{color}.{color:#56a8f5}indexOf{color}.{color:#56a8f5}call{color}({color:#a9b7c6}foundElements{color},
toMatch) !== -{color:#2aacb8}1{color};
}
what the old code did was to use the vendor specific prefixes with query
selecot all prefix, to cover as many browsers as possible, but given that
{color:#56a8f5}matches is supported by all new browsers a simple querySelectAll
fallback probably suffices by now, no need to check for vendor specific methods
anymore!{color}
> Replace/remove javascript functions with share-alike license
>
>
> Key: MYFACES-4736
> URL: https://issues.apache.org/jira/browse/MYFACES-4736
> Project: MyFaces Core
> Issue Type: Improvement
> Components: General
>Affects Versions: 4.1.2
>Reporter: Florian Schwarz
>Assignee: Werner Punz
>Priority: Major
>
> Some javascript function, e.g. _mozMatchesSelector in
> /META-INF/resources/jakarta.faces/faces-development.js, line 7152, contain a
> comment
> {code:java}
> // source: https:// developer.mozilla.org/en-US/docs/Web/API/Element/matches
> // code snippet license: https:// creativecommons.org/licenses/by-sa/2.5/
> {code}
> From my understanding, this by-sa (share-alike) means, that if one uses
> myfaces in its project, one has to use also the CC-BY-SA-2.5 license for his
> project ([https://creativecommons.org/licenses/by-sa/2.5/deed.en] ). So I
> wanted to ask if it would be possible to replace or remove those functions,
> allowing users of myfaces to use a different license.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
[jira] [Comment Edited] (MYFACES-4736) Replace/remove javascript functions with share-alike license
[
https://issues.apache.org/jira/browse/MYFACES-4736?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18047110#comment-18047110
]
Werner Punz edited comment on MYFACES-4736 at 12/22/25 8:41 PM:
ok this is pretty old code, I remember roughly that there were browser issues
back then when I implemented it, but by now it is definitely not needed
anymore, following code now should do the trick properly:
{color:#cf8e6d}private {color}{color:#56a8f5}_matchesSelector{color}(toMatch:
Element, selector: {color:#cf8e6d}string{color}): {color:#cf8e6d}boolean
{color}{
{color:#cf8e6d}if{color}(toMatch.{color:#56a8f5}matches{color}) {
{color:#cf8e6d}return {color}toMatch.{color:#56a8f5}matches{color}(selector);
}
{color:#cf8e6d}var {color}{color:#a9b7c6}foundElements {color}=
({color:#c77dba}document {color}||
{color:#a9b7c6}ownerDocument{color}).{color:#56a8f5}querySelectorAll{color}(selector);
{color:#cf8e6d}return
{color}{color:#56a8f5}Array{color}.{color:#c77dbb}prototype{color}.{color:#56a8f5}indexOf{color}.{color:#56a8f5}call{color}({color:#a9b7c6}foundElements{color},
toMatch) !== -{color:#2aacb8}1{color};
}
what the old code did was to use the vendor specific prefixes with query
selectorall prefix, to cover as many browsers as possible, but given that
{color:#56a8f5}matches is supported by all new browsers a simple querySelectAll
fallback probably suffices by now, no need to check for vendor specific methods
anymore!{color}
So we have slain two dragons with this, removal of vendor specific fallbacks,
removal of code stemming from an incompatible license!
was (Author: werpu):
ok this is pretty old code, I remember roughly that there were browser issues
back then when I implemented it, but by now it is definitely not needed
anymore, following code now should do the trick properly:
{color:#cf8e6d}private {color}{color:#56a8f5}_matchesSelector{color}(toMatch:
Element, selector: {color:#cf8e6d}string{color}): {color:#cf8e6d}boolean
{color}{
{color:#cf8e6d}if{color}(toMatch.{color:#56a8f5}matches{color}) {
{color:#cf8e6d}return {color}toMatch.{color:#56a8f5}matches{color}(selector);
}
{color:#cf8e6d}var {color}{color:#a9b7c6}foundElements {color}=
({color:#c77dba}document {color}||
{color:#a9b7c6}ownerDocument{color}).{color:#56a8f5}querySelectorAll{color}(selector);
{color:#cf8e6d}return
{color}{color:#56a8f5}Array{color}.{color:#c77dbb}prototype{color}.{color:#56a8f5}indexOf{color}.{color:#56a8f5}call{color}({color:#a9b7c6}foundElements{color},
toMatch) !== -{color:#2aacb8}1{color};
}
what the old code did was to use the vendor specific prefixes with query
selecot all prefix, to cover as many browsers as possible, but given that
{color:#56a8f5}{color:#172b4d}matches is supported by all new browsers a simple
querySelectAll fallback probably suffices by now, no need to check for vendor
specific methods anymore!{color}{color}
So we have slain two dragons with this, removal of vendor specific fallbacks,
removal of code stemming from an incompatible license!
> Replace/remove javascript functions with share-alike license
>
>
> Key: MYFACES-4736
> URL: https://issues.apache.org/jira/browse/MYFACES-4736
> Project: MyFaces Core
> Issue Type: Improvement
> Components: General
>Affects Versions: 4.1.2
>Reporter: Florian Schwarz
>Assignee: Werner Punz
>Priority: Major
>
> Some javascript function, e.g. _mozMatchesSelector in
> /META-INF/resources/jakarta.faces/faces-development.js, line 7152, contain a
> comment
> {code:java}
> // source: https:// developer.mozilla.org/en-US/docs/Web/API/Element/matches
> // code snippet license: https:// creativecommons.org/licenses/by-sa/2.5/
> {code}
> From my understanding, this by-sa (share-alike) means, that if one uses
> myfaces in its project, one has to use also the CC-BY-SA-2.5 license for his
> project ([https://creativecommons.org/licenses/by-sa/2.5/deed.en] ). So I
> wanted to ask if it would be possible to replace or remove those functions,
> allowing users of myfaces to use a different license.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
[jira] [Comment Edited] (MYFACES-4736) Replace/remove javascript functions with share-alike license
[
https://issues.apache.org/jira/browse/MYFACES-4736?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18047110#comment-18047110
]
Werner Punz edited comment on MYFACES-4736 at 12/22/25 8:40 PM:
ok this is pretty old code, I remember roughly that there were browser issues
back then when I implemented it, but by now it is definitely not needed
anymore, following code now should do the trick properly:
{color:#cf8e6d}private {color}{color:#56a8f5}_matchesSelector{color}(toMatch:
Element, selector: {color:#cf8e6d}string{color}): {color:#cf8e6d}boolean
{color}{
{color:#cf8e6d}if{color}(toMatch.{color:#56a8f5}matches{color}) {
{color:#cf8e6d}return {color}toMatch.{color:#56a8f5}matches{color}(selector);
}
{color:#cf8e6d}var {color}{color:#a9b7c6}foundElements {color}=
({color:#c77dba}document {color}||
{color:#a9b7c6}ownerDocument{color}).{color:#56a8f5}querySelectorAll{color}(selector);
{color:#cf8e6d}return
{color}{color:#56a8f5}Array{color}.{color:#c77dbb}prototype{color}.{color:#56a8f5}indexOf{color}.{color:#56a8f5}call{color}({color:#a9b7c6}foundElements{color},
toMatch) !== -{color:#2aacb8}1{color};
}
what the old code did was to use the vendor specific prefixes with query
selecot all prefix, to cover as many browsers as possible, but given that
{color:#56a8f5}matches is supported by all new browsers a simple querySelectAll
fallback probably suffices by now, no need to check for vendor specific methods
anymore!{color}
was (Author: werpu):
ok this is pretty old code, I remember roughly that there were browser issues
back then when I implemented it, but by now it is definitely not needed
anymore, following code now should do the trick properly:
{color:#cf8e6d}private {color}{color:#56a8f5}_matchesSelector{color}(toMatch:
Element, selector: {color:#cf8e6d}string{color}): {color:#cf8e6d}boolean
{color}{
{color:#cf8e6d}var {color}{color:#a9b7c6}foundElements {color}=
({color:#c77dba}document {color}||
{color:#a9b7c6}ownerDocument{color}).{color:#56a8f5}querySelectorAll{color}(selector);
{color:#cf8e6d}return
{color}{color:#56a8f5}Array{color}.{color:#c77dbb}prototype{color}.{color:#56a8f5}indexOf{color}.{color:#56a8f5}call{color}({color:#a9b7c6}foundElements{color},
toMatch) !== -{color:#2aacb8}1{color};
}
> Replace/remove javascript functions with share-alike license
>
>
> Key: MYFACES-4736
> URL: https://issues.apache.org/jira/browse/MYFACES-4736
> Project: MyFaces Core
> Issue Type: Improvement
> Components: General
>Affects Versions: 4.1.2
>Reporter: Florian Schwarz
>Assignee: Werner Punz
>Priority: Major
>
> Some javascript function, e.g. _mozMatchesSelector in
> /META-INF/resources/jakarta.faces/faces-development.js, line 7152, contain a
> comment
> {code:java}
> // source: https:// developer.mozilla.org/en-US/docs/Web/API/Element/matches
> // code snippet license: https:// creativecommons.org/licenses/by-sa/2.5/
> {code}
> From my understanding, this by-sa (share-alike) means, that if one uses
> myfaces in its project, one has to use also the CC-BY-SA-2.5 license for his
> project ([https://creativecommons.org/licenses/by-sa/2.5/deed.en] ). So I
> wanted to ask if it would be possible to replace or remove those functions,
> allowing users of myfaces to use a different license.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
[jira] [Comment Edited] (MYFACES-4736) Replace/remove javascript functions with share-alike license
[
https://issues.apache.org/jira/browse/MYFACES-4736?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18046694#comment-18046694
]
Werner Punz edited comment on MYFACES-4736 at 12/19/25 5:58 PM:
I cannot say anything about the release, I will start to work on it next
monday! Shouldn´t take too long to fix this.
was (Author: werpu):
I cannot say anything about the release, I will start to work on it next monday!
> Replace/remove javascript functions with share-alike license
>
>
> Key: MYFACES-4736
> URL: https://issues.apache.org/jira/browse/MYFACES-4736
> Project: MyFaces Core
> Issue Type: Improvement
> Components: General
>Affects Versions: 4.1.2
>Reporter: Florian Schwarz
>Priority: Major
>
> Some javascript function, e.g. _mozMatchesSelector in
> /META-INF/resources/jakarta.faces/faces-development.js, line 7152, contain a
> comment
> {code:java}
> // source: https:// developer.mozilla.org/en-US/docs/Web/API/Element/matches
> // code snippet license: https:// creativecommons.org/licenses/by-sa/2.5/
> {code}
> From my understanding, this by-sa (share-alike) means, that if one uses
> myfaces in its project, one has to use also the CC-BY-SA-2.5 license for his
> project ([https://creativecommons.org/licenses/by-sa/2.5/deed.en] ). So I
> wanted to ask if it would be possible to replace or remove those functions,
> allowing users of myfaces to use a different license.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
