Re: [VOTE] Release Apache Sling Repoinit JCR 1.1.48

2024-05-27 Thread Radu Cotescu
+1

On Sat, 25 May 2024 at 11:54, Julian Sedding  wrote:
> Please vote to approve this release:
>
> [  ]  +1 Approve the release
> [  ]0 Don't care
> [  ]   -1 Don't release, because ...


[jira] [Closed] (SLING-12320) Add support for retrieving a service resource resolver with impersonation without requiring extra configuration

2024-05-27 Thread Radu Cotescu (Jira)


 [ 
https://issues.apache.org/jira/browse/SLING-12320?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Radu Cotescu closed SLING-12320.


> Add support for retrieving a service resource resolver with impersonation 
> without requiring extra configuration
> ---
>
> Key: SLING-12320
> URL: https://issues.apache.org/jira/browse/SLING-12320
> Project: Sling
>  Issue Type: Improvement
>  Components: JCR
>Reporter: Radu Cotescu
>    Assignee: Radu Cotescu
>Priority: Major
> Fix For: JCR Resource 3.3.2
>
>
> SLING-4888 simplified retrieving impersonated sessions from service users, 
> however the JCR Resource Provider seems to still use the approach before this 
> improvement.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[RESULT] [VOTE] Release Apache Sling JCR Resource 3.3.2

2024-05-27 Thread Radu Cotescu
Hi,

The vote has passed with the following result:

+1 (binding): Radu Cotescu, Robert Munteanu, Stefan Seifert, Joerg Hoh
+1 (non-binding): none

I will copy this release to the Sling dist directory and
promote the artifacts to the central Maven repository.

Regards,
Radu Cotescu


Re: [VOTE] Release Apache Sling JCR Resource 3.3.2

2024-05-20 Thread Radu Cotescu
+1

On Mon, 20 May 2024 at 18:03, Radu Cotescu  wrote:
>
> Please vote to approve this release:
>
>   [ ] +1 Approve the release
>   [ ]  0 Don't care
>   [ ] -1 Don't release, because ...
>
> This majority vote is open for at least 72 hours.
>
> Regards,
> Radu Cotescu


[VOTE] Release Apache Sling JCR Resource 3.3.2

2024-05-20 Thread Radu Cotescu
Hi,

We solved 1 issue in this release:
https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12310710=12354675=Text

Staging repository:
https://repository.apache.org/content/repositories/orgapachesling-2861/

You can use this UNIX script to download the release and verify the signatures:
https://raw.githubusercontent.com/apache/sling-tooling-release/master/check_staged_release.sh

Usage:
sh check_staged_release.sh 2861 /tmp/sling-staging

Please vote to approve this release:

  [ ] +1 Approve the release
  [ ]  0 Don't care
  [ ] -1 Don't release, because ...

This majority vote is open for at least 72 hours.

Regards,
Radu Cotescu


[jira] [Resolved] (SLING-12320) Add support for retrieving a service resource resolver with impersonation without requiring extra configuration

2024-05-20 Thread Radu Cotescu (Jira)


 [ 
https://issues.apache.org/jira/browse/SLING-12320?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Radu Cotescu resolved SLING-12320.
--
Resolution: Fixed

> Add support for retrieving a service resource resolver with impersonation 
> without requiring extra configuration
> ---
>
> Key: SLING-12320
> URL: https://issues.apache.org/jira/browse/SLING-12320
> Project: Sling
>  Issue Type: Improvement
>  Components: JCR
>Reporter: Radu Cotescu
>    Assignee: Radu Cotescu
>Priority: Major
> Fix For: JCR Resource 3.3.2
>
>
> SLING-4888 simplified retrieving impersonated sessions from service users, 
> however the JCR Resource Provider seems to still use the approach before this 
> improvement.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (SLING-12320) Add support for retrieving a service resource resolver with impersonation without requiring extra configuration

2024-05-17 Thread Radu Cotescu (Jira)
Radu Cotescu created SLING-12320:


 Summary: Add support for retrieving a service resource resolver 
with impersonation without requiring extra configuration
 Key: SLING-12320
 URL: https://issues.apache.org/jira/browse/SLING-12320
 Project: Sling
  Issue Type: Improvement
  Components: JCR
Reporter: Radu Cotescu
 Fix For: JCR Resource 3.3.2


SLING-4888 simplified retrieving impersonated sessions from service users, 
however the JCR Resource Provider seems to still use the approach before this 
improvement.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (SLING-12094) Use GitHub for the Maven scm.url value

2024-05-14 Thread Radu Cotescu (Jira)


 [ 
https://issues.apache.org/jira/browse/SLING-12094?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Radu Cotescu updated SLING-12094:
-
Fix Version/s: (was: JCR Resource 3.3.0)

> Use GitHub for the Maven scm.url value
> --
>
> Key: SLING-12094
> URL: https://issues.apache.org/jira/browse/SLING-12094
> Project: Sling
>  Issue Type: Improvement
>  Components: Build and Source Control
>Reporter: Robert Munteanu
>Assignee: Robert Munteanu
>Priority: Major
>
> Currently, the "Browsing URL" in the POMs is pointing to GitBox. Those 
> URLs are used by various tooling and humans.
> We should switch it directly to GitHub to easy the discovery process
> The Source Code URLs used for Release Process stick with GitBox



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


Re: [VOTE] Release Apache Sling JCR Resource 3.3.0

2024-05-14 Thread Radu Cotescu
Ah, I didn't realise. I'll remove the fix version. Thanks for that!

On Tue, 14 May 2024 at 12:02, Robert Munteanu  wrote:
> Because it affected all Sling modules, not just this one.


[jira] [Closed] (SLING-12092) Build fails with Java 11

2024-05-14 Thread Radu Cotescu (Jira)


 [ 
https://issues.apache.org/jira/browse/SLING-12092?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Radu Cotescu closed SLING-12092.


> Build fails with Java 11
> 
>
> Key: SLING-12092
> URL: https://issues.apache.org/jira/browse/SLING-12092
> Project: Sling
>  Issue Type: Improvement
>  Components: JCR
>Affects Versions: JCR Resource 3.2.4
>Reporter: Konrad Windszus
>Assignee: Konrad Windszus
>Priority: Major
> Fix For: JCR Resource 3.3.0
>
>
> From 
> [https://ci-builds.apache.org/blue/rest/organizations/jenkins/pipelines/Sling/pipelines/modules/pipelines/sling-org-apache-sling-jcr-resource/branches/master/runs/216/nodes/60/steps/105/log/?start=0:]
> {code}
> [ERROR] 
> org.apache.sling.jcr.resource.internal.JcrResourceListenerTest.testSimpleOperations
>   Time elapsed: 0.095 s  <<< ERROR!
> java.lang.ExceptionInInitializerError
>   at 
> org.mockito.cglib.core.KeyFactory$Generator.generateClass(KeyFactory.java:167)
>   at 
> org.mockito.cglib.core.DefaultGeneratorStrategy.generate(DefaultGeneratorStrategy.java:25)
>   at 
> org.mockito.cglib.core.AbstractClassGenerator.create(AbstractClassGenerator.java:217)
>   at 
> org.mockito.cglib.core.KeyFactory$Generator.create(KeyFactory.java:145)
>   at org.mockito.cglib.core.KeyFactory.create(KeyFactory.java:117)
>   at org.mockito.cglib.core.KeyFactory.create(KeyFactory.java:109)
>   at org.mockito.cglib.core.KeyFactory.create(KeyFactory.java:105)
>   at org.mockito.cglib.proxy.Enhancer.(Enhancer.java:70)
>   at 
> org.mockito.internal.creation.jmock.ClassImposterizer.createProxyClass(ClassImposterizer.java:85)
>   at 
> org.mockito.internal.creation.jmock.ClassImposterizer.imposterise(ClassImposterizer.java:62)
>   at 
> org.mockito.internal.creation.jmock.ClassImposterizer.imposterise(ClassImposterizer.java:56)
>   at 
> org.mockito.internal.creation.CglibMockMaker.createMock(CglibMockMaker.java:23)
>   at org.mockito.internal.util.MockUtil.createMock(MockUtil.java:26)
>   at org.mockito.internal.MockitoCore.mock(MockitoCore.java:51)
>   at org.mockito.Mockito.mock(Mockito.java:1243)
>   at org.mockito.Mockito.mock(Mockito.java:1120)
>   at 
> org.apache.sling.jcr.resource.internal.helper.jcr.SlingRepositoryProvider.getFakeContext(SlingRepositoryProvider.java:56)
>   at 
> org.apache.sling.jcr.resource.internal.helper.jcr.SlingRepositoryProvider.getRepository(SlingRepositoryProvider.java:41)
>   at 
> org.apache.sling.jcr.resource.internal.JcrResourceListenerTest.setUp(JcrResourceListenerTest.java:74)
>   at 
> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>   at 
> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
>   at 
> java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>   at java.base/java.lang.reflect.Method.invoke(Method.java:568)
>   at 
> org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:59)
>   at 
> org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
>   at 
> org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:56)
>   at 
> org.junit.internal.runners.statements.RunBefores.invokeMethod(RunBefores.java:33)
>   at 
> org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:24)
>   at 
> org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
>   at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
>   at 
> org.junit.runners.BlockJUnit4ClassRunner$1.evaluate(BlockJUnit4ClassRunner.java:100)
>   at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:366)
>   at 
> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:103)
>   at 
> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:63)
>   at org.junit.runners.ParentRunner$4.run(ParentRunner.java:331)
>   at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79)
>   at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329)
>   at org.junit.runners.ParentRunner.access$100(ParentRunner.java:66)
>   at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293)
>   at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
>   at org.junit.runners.ParentRunner.run(ParentRunner.java:413)
>   at 
> org.apache.m

[jira] [Closed] (SLING-12076) ResourceListener should expose the JCR observation's user data

2024-05-14 Thread Radu Cotescu (Jira)


 [ 
https://issues.apache.org/jira/browse/SLING-12076?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Radu Cotescu closed SLING-12076.


> ResourceListener should expose the JCR observation's user data
> --
>
> Key: SLING-12076
> URL: https://issues.apache.org/jira/browse/SLING-12076
> Project: Sling
>  Issue Type: Improvement
>  Components: JCR
>Reporter: Konrad Windszus
>Assignee: Konrad Windszus
>Priority: Major
> Fix For: JCR Resource 3.3.0
>
>
> The ResourceChange 
> (https://github.com/apache/sling-org-apache-sling-api/blob/f58111baf07b6ae525aec2c6792e949786df7beb/src/main/java/org/apache/sling/api/resource/observation/ResourceChange.java#L50)
>  should optionally expose a context (arbitrary String). In the case of the 
> JCR Resource Provider this should be populated by the JCR Event's User Data 
> (https://developer.adobe.com/experience-manager/reference-materials/spec/jcr/2.0/12_Observation.html#12.3.5%20User%20Data).



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Closed] (SLING-12300) Provide a way to retrieve a JCR backed resource by its node identifier

2024-05-14 Thread Radu Cotescu (Jira)


 [ 
https://issues.apache.org/jira/browse/SLING-12300?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Radu Cotescu closed SLING-12300.


> Provide a way to retrieve a JCR backed resource by its node identifier
> --
>
> Key: SLING-12300
> URL: https://issues.apache.org/jira/browse/SLING-12300
> Project: Sling
>  Issue Type: New Feature
>  Components: JCR
>    Reporter: Radu Cotescu
>Assignee: Radu Cotescu
>Priority: Major
> Fix For: JCR Resource 3.3.0
>
>
> Since all {{javax.jcr.Nodes}} have an identifier [0], a useful feature would 
> be {{Resource}} retrieval by node id, which could be its {{jcr:uuid}} 
> property for referenceable nodes or the path. In systems that would like to 
> use UUID addressing, this would reduce the need for executing JCR queries for 
> resource retrieval and would avoid double-reads via the JCR and then Sling 
> API to obtain the resource.
> In order to provide a unified behaviour, paths starting with the {{/jcr:id/}} 
> prefix should use the resource retrieval by node identifier.
> [0] - 
> https://javadoc.io/static/javax.jcr/jcr/2.0/javax/jcr/Node.html#getIdentifier()



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[RESULT] [VOTE] Release Apache Sling JCR Resource 3.3.0

2024-05-14 Thread Radu Cotescu
Hi,

The vote has passed with the following result:

+1 (binding): Radu Cotescu, Joerg Hoh, Robert Munteanu
+1 (non-binding): none

I will copy this release to the Sling dist directory and
promote the artifacts to the central Maven repository.

Regards,
Radu Cotescu


Re: [VOTE] Release Apache Sling JCR Resource 3.3.0

2024-05-14 Thread Radu Cotescu
Hi Robert,

On Tue, 7 May 2024 at 10:57, Robert Munteanu  wrote:
>
> FWIW, you probably did not want to tag
> https://issues.apache.org/jira/browse/SLING-12094 as being fixed for
> this release.
>

Why not? It was committed in
https://github.com/apache/sling-org-apache-sling-jcr-resource/commit/1849e113a0ae94ca4484b1a766b97149959a06cc.

Thanks,
Radu


Re: [VOTE] Release Apache Sling JCR Resource 3.3.0

2024-05-06 Thread Radu Cotescu
+1

On Mon, 6 May 2024 at 18:20, Radu Cotescu  wrote:
>
> Please vote to approve this release:
>
>   [ ] +1 Approve the release
>   [ ]  0 Don't care
>   [ ] -1 Don't release, because ...
>
> This majority vote is open for at least 72 hours.
>
> Regards,
> Radu Cotescu


[VOTE] Release Apache Sling JCR Resource 3.3.0

2024-05-06 Thread Radu Cotescu
Hi,

We solved 4 issues in this release:
https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12310710=12354599=Text

Staging repository:
https://repository.apache.org/content/repositories/orgapachesling-2860/

You can use this UNIX script to download the release and verify the signatures:
https://raw.githubusercontent.com/apache/sling-tooling-release/master/check_staged_release.sh

Usage:
sh check_staged_release.sh 2860 /tmp/sling-staging

Please vote to approve this release:

  [ ] +1 Approve the release
  [ ]  0 Don't care
  [ ] -1 Don't release, because ...

This majority vote is open for at least 72 hours.

Regards,
Radu Cotescu


[jira] [Updated] (SLING-12076) ResourceListener should expose the JCR observation's user data

2024-05-06 Thread Radu Cotescu (Jira)


 [ 
https://issues.apache.org/jira/browse/SLING-12076?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Radu Cotescu updated SLING-12076:
-
Fix Version/s: JCR Resource 3.3.0
   (was: JCR Resource 3.2.6)

> ResourceListener should expose the JCR observation's user data
> --
>
> Key: SLING-12076
> URL: https://issues.apache.org/jira/browse/SLING-12076
> Project: Sling
>  Issue Type: Improvement
>  Components: JCR
>Reporter: Konrad Windszus
>Assignee: Konrad Windszus
>Priority: Major
> Fix For: JCR Resource 3.3.0
>
>
> The ResourceChange 
> (https://github.com/apache/sling-org-apache-sling-api/blob/f58111baf07b6ae525aec2c6792e949786df7beb/src/main/java/org/apache/sling/api/resource/observation/ResourceChange.java#L50)
>  should optionally expose a context (arbitrary String). In the case of the 
> JCR Resource Provider this should be populated by the JCR Event's User Data 
> (https://developer.adobe.com/experience-manager/reference-materials/spec/jcr/2.0/12_Observation.html#12.3.5%20User%20Data).



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (SLING-12094) Use GitHub for the Maven scm.url value

2024-05-06 Thread Radu Cotescu (Jira)


 [ 
https://issues.apache.org/jira/browse/SLING-12094?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Radu Cotescu updated SLING-12094:
-
Fix Version/s: JCR Resource 3.3.0

> Use GitHub for the Maven scm.url value
> --
>
> Key: SLING-12094
> URL: https://issues.apache.org/jira/browse/SLING-12094
> Project: Sling
>  Issue Type: Improvement
>  Components: Build and Source Control
>Reporter: Robert Munteanu
>Assignee: Robert Munteanu
>Priority: Major
> Fix For: JCR Resource 3.3.0
>
>
> Currently, the "Browsing URL" in the POMs is pointing to GitBox. Those 
> URLs are used by various tooling and humans.
> We should switch it directly to GitHub to easy the discovery process
> The Source Code URLs used for Release Process stick with GitBox



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (SLING-12092) Build fails with Java 11

2024-05-06 Thread Radu Cotescu (Jira)


 [ 
https://issues.apache.org/jira/browse/SLING-12092?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Radu Cotescu updated SLING-12092:
-
Fix Version/s: JCR Resource 3.3.0
   (was: JCR Resource 3.2.6)

> Build fails with Java 11
> 
>
> Key: SLING-12092
> URL: https://issues.apache.org/jira/browse/SLING-12092
> Project: Sling
>  Issue Type: Improvement
>  Components: JCR
>Affects Versions: JCR Resource 3.2.4
>Reporter: Konrad Windszus
>Assignee: Konrad Windszus
>Priority: Major
> Fix For: JCR Resource 3.3.0
>
>
> From 
> [https://ci-builds.apache.org/blue/rest/organizations/jenkins/pipelines/Sling/pipelines/modules/pipelines/sling-org-apache-sling-jcr-resource/branches/master/runs/216/nodes/60/steps/105/log/?start=0:]
> {code}
> [ERROR] 
> org.apache.sling.jcr.resource.internal.JcrResourceListenerTest.testSimpleOperations
>   Time elapsed: 0.095 s  <<< ERROR!
> java.lang.ExceptionInInitializerError
>   at 
> org.mockito.cglib.core.KeyFactory$Generator.generateClass(KeyFactory.java:167)
>   at 
> org.mockito.cglib.core.DefaultGeneratorStrategy.generate(DefaultGeneratorStrategy.java:25)
>   at 
> org.mockito.cglib.core.AbstractClassGenerator.create(AbstractClassGenerator.java:217)
>   at 
> org.mockito.cglib.core.KeyFactory$Generator.create(KeyFactory.java:145)
>   at org.mockito.cglib.core.KeyFactory.create(KeyFactory.java:117)
>   at org.mockito.cglib.core.KeyFactory.create(KeyFactory.java:109)
>   at org.mockito.cglib.core.KeyFactory.create(KeyFactory.java:105)
>   at org.mockito.cglib.proxy.Enhancer.(Enhancer.java:70)
>   at 
> org.mockito.internal.creation.jmock.ClassImposterizer.createProxyClass(ClassImposterizer.java:85)
>   at 
> org.mockito.internal.creation.jmock.ClassImposterizer.imposterise(ClassImposterizer.java:62)
>   at 
> org.mockito.internal.creation.jmock.ClassImposterizer.imposterise(ClassImposterizer.java:56)
>   at 
> org.mockito.internal.creation.CglibMockMaker.createMock(CglibMockMaker.java:23)
>   at org.mockito.internal.util.MockUtil.createMock(MockUtil.java:26)
>   at org.mockito.internal.MockitoCore.mock(MockitoCore.java:51)
>   at org.mockito.Mockito.mock(Mockito.java:1243)
>   at org.mockito.Mockito.mock(Mockito.java:1120)
>   at 
> org.apache.sling.jcr.resource.internal.helper.jcr.SlingRepositoryProvider.getFakeContext(SlingRepositoryProvider.java:56)
>   at 
> org.apache.sling.jcr.resource.internal.helper.jcr.SlingRepositoryProvider.getRepository(SlingRepositoryProvider.java:41)
>   at 
> org.apache.sling.jcr.resource.internal.JcrResourceListenerTest.setUp(JcrResourceListenerTest.java:74)
>   at 
> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>   at 
> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
>   at 
> java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>   at java.base/java.lang.reflect.Method.invoke(Method.java:568)
>   at 
> org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:59)
>   at 
> org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
>   at 
> org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:56)
>   at 
> org.junit.internal.runners.statements.RunBefores.invokeMethod(RunBefores.java:33)
>   at 
> org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:24)
>   at 
> org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
>   at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
>   at 
> org.junit.runners.BlockJUnit4ClassRunner$1.evaluate(BlockJUnit4ClassRunner.java:100)
>   at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:366)
>   at 
> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:103)
>   at 
> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:63)
>   at org.junit.runners.ParentRunner$4.run(ParentRunner.java:331)
>   at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79)
>   at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329)
>   at org.junit.runners.ParentRunner.access$100(ParentRunner.java:66)
>   at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293)
>   at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
&g

[jira] [Resolved] (SLING-12300) Provide a way to retrieve a JCR backed resource by its node identifier

2024-05-06 Thread Radu Cotescu (Jira)


 [ 
https://issues.apache.org/jira/browse/SLING-12300?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Radu Cotescu resolved SLING-12300.
--
Resolution: Fixed

> Provide a way to retrieve a JCR backed resource by its node identifier
> --
>
> Key: SLING-12300
> URL: https://issues.apache.org/jira/browse/SLING-12300
> Project: Sling
>  Issue Type: New Feature
>  Components: JCR
>    Reporter: Radu Cotescu
>Assignee: Radu Cotescu
>Priority: Major
> Fix For: JCR Resource 3.3.0
>
>
> Since all {{javax.jcr.Nodes}} have an identifier [0], a useful feature would 
> be {{Resource}} retrieval by node id, which could be its {{jcr:uuid}} 
> property for referenceable nodes or the path. In systems that would like to 
> use UUID addressing, this would reduce the need for executing JCR queries for 
> resource retrieval and would avoid double-reads via the JCR and then Sling 
> API to obtain the resource.
> In order to provide a unified behaviour, paths starting with the {{/jcr:id/}} 
> prefix should use the resource retrieval by node identifier.
> [0] - 
> https://javadoc.io/static/javax.jcr/jcr/2.0/javax/jcr/Node.html#getIdentifier()



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (SLING-12300) Provide a way to retrieve a JCR backed resource by its node identifier

2024-04-25 Thread Radu Cotescu (Jira)


[ 
https://issues.apache.org/jira/browse/SLING-12300?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17840756#comment-17840756
 ] 

Radu Cotescu commented on SLING-12300:
--

I've updated the PR to include a configuration flag. Let me know what you 
think. I'd like to get this merged by the end of next week.

> Provide a way to retrieve a JCR backed resource by its node identifier
> --
>
> Key: SLING-12300
> URL: https://issues.apache.org/jira/browse/SLING-12300
> Project: Sling
>  Issue Type: New Feature
>  Components: JCR
>    Reporter: Radu Cotescu
>Assignee: Radu Cotescu
>Priority: Major
> Fix For: JCR Resource 3.3.0
>
>
> Since all {{javax.jcr.Nodes}} have an identifier [0], a useful feature would 
> be {{Resource}} retrieval by node id, which could be its {{jcr:uuid}} 
> property for referenceable nodes or the path. In systems that would like to 
> use UUID addressing, this would reduce the need for executing JCR queries for 
> resource retrieval and would avoid double-reads via the JCR and then Sling 
> API to obtain the resource.
> In order to provide a unified behaviour, paths starting with the {{/jcr:id/}} 
> prefix should use the resource retrieval by node identifier.
> [0] - 
> https://javadoc.io/static/javax.jcr/jcr/2.0/javax/jcr/Node.html#getIdentifier()



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (SLING-12300) Provide a way to retrieve a JCR backed resource by its node identifier

2024-04-23 Thread Radu Cotescu (Jira)


[ 
https://issues.apache.org/jira/browse/SLING-12300?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17840164#comment-17840164
 ] 

Radu Cotescu commented on SLING-12300:
--

I’m perfectly fine to have this feature disabled by default, behind a 
configuration toggle. I’ll update the PR as soon as I find some time to come 
back to this issue. Thanks!

> Provide a way to retrieve a JCR backed resource by its node identifier
> --
>
> Key: SLING-12300
> URL: https://issues.apache.org/jira/browse/SLING-12300
> Project: Sling
>  Issue Type: New Feature
>  Components: JCR
>    Reporter: Radu Cotescu
>Assignee: Radu Cotescu
>Priority: Major
> Fix For: JCR Resource 3.3.0
>
>
> Since all {{javax.jcr.Nodes}} have an identifier [0], a useful feature would 
> be {{Resource}} retrieval by node id, which could be its {{jcr:uuid}} 
> property for referenceable nodes or the path. In systems that would like to 
> use UUID addressing, this would reduce the need for executing JCR queries for 
> resource retrieval and would avoid double-reads via the JCR and then Sling 
> API to obtain the resource.
> In order to provide a unified behaviour, paths starting with the {{/jcr:id/}} 
> prefix should use the resource retrieval by node identifier.
> [0] - 
> https://javadoc.io/static/javax.jcr/jcr/2.0/javax/jcr/Node.html#getIdentifier()



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (SLING-12300) Provide a way to retrieve a JCR backed resource by its node identifier

2024-04-23 Thread Radu Cotescu (Jira)


[ 
https://issues.apache.org/jira/browse/SLING-12300?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17840065#comment-17840065
 ] 

Radu Cotescu commented on SLING-12300:
--

Let's compare the three options we have:
||1. Augmenting the JCR Resource Provider - {{/jcr:id/}}||2. Creating a new 
Resource Provider for ID addressing||3. Extending the Resource API||
|Pros:
 * simple, low effort implementation
 * can be implemented behind a configuration toggle|Pros:
 * isolates providers and allows for separate configurations
 * since a provider has a mount path, the root for ID addressing is 
configurable|Pros:
 * brings the IDs as first class citizens to the Resource API
 * allows resource retrieval by ID or path without providing any special 
prefixes|
|Cons:
 * adds a path prefix into the resource tree
 * might require setting explicit authentication configurations to not allow 
any HTTP browsing under {{/jcr:id}} for unauthenticated users|Cons:
 * adds a path prefix into the resource tree (via its mount path)
 * might require setting explicit authentication configurations to not allow 
any HTTP browsing under its root
 * duplicates functionality, since this would also be a JCR provider|Cons:
 * must ensure ID uniqueness across Resource Providers
 * difficult to implement since the Resource API has a large footprint|

This shows clearly that 2 is not really a different option compared to 1. 3 is 
interesting, but I don't think we can solve the uniqueness requirement.

> Provide a way to retrieve a JCR backed resource by its node identifier
> --
>
> Key: SLING-12300
> URL: https://issues.apache.org/jira/browse/SLING-12300
> Project: Sling
>  Issue Type: New Feature
>  Components: JCR
>    Reporter: Radu Cotescu
>Assignee: Radu Cotescu
>Priority: Major
> Fix For: JCR Resource 3.3.0
>
>
> Since all {{javax.jcr.Nodes}} have an identifier [0], a useful feature would 
> be {{Resource}} retrieval by node id, which could be its {{jcr:uuid}} 
> property for referenceable nodes or the path. In systems that would like to 
> use UUID addressing, this would reduce the need for executing JCR queries for 
> resource retrieval and would avoid double-reads via the JCR and then Sling 
> API to obtain the resource.
> In order to provide a unified behaviour, paths starting with the {{/jcr:id/}} 
> prefix should use the resource retrieval by node identifier.
> [0] - 
> https://javadoc.io/static/javax.jcr/jcr/2.0/javax/jcr/Node.html#getIdentifier()



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Comment Edited] (SLING-12300) Provide a way to retrieve a JCR backed resource by its node identifier

2024-04-22 Thread Radu Cotescu (Jira)


[ 
https://issues.apache.org/jira/browse/SLING-12300?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17839511#comment-17839511
 ] 

Radu Cotescu edited comment on SLING-12300 at 4/22/24 7:01 AM:
---

[~enorman], nobody trivialised your concerns. I’m not sure if everyone is 
familiarised with the UUIDv4 standard that Oak uses for the {{jcr:uuid}} 
property and I was just trying to explain the problem space. In addition, you 
expressed that there would be security issues by implementing this feature, but 
didn’t explain which. Predictability is not a security concern IMO if you 
correctly use ACLs.

[~paul.bjorkstrand], for my use-case I only need those resources addressable by 
ID at the Java API level. The application that is built on top controls the URL 
space, but I wanted to use the Sling API for accessing the resource tree. You 
could ask why the contradiction: update the JCR resource provider to use a 
feature exposed only by JCR, but consume it via Sling?! Well, the Sling API is 
just easier to use and simpler to understand for developers than the JCR one.

Adding a new Resource Provider could also be an option, but in the end it would 
perform the same function in the same way: it would offer a way to retrieve 
resources by ID from its mount root, whichever that will be.

I also thought about extending the Sling Resource API, but given that right now 
only one commonly used provider generates IDs for the resources it creates I 
thought it would be too complex and not provide so many gains.

I will obviously not push something that the Sling community doesn’t agree 
with, but I would like that we discuss the alternatives and pick the solution 
that makes the most sense in terms of effort/benefits.


was (Author: radu.cotescu):
[~enorman], nobody trivialised your concerns. I’m not sure if everyone is 
familiarised with the UUIDv4 standard that Oak uses for the {{jcr:uuid}} 
property and I was just trying to explain the problem space. In addition, you 
expressed that there would be security issues by implementing this feature, but 
didn’t explain which. Predictability is not a security concern IMO if you 
correctly use ACLs.

[~paul.bjorkstrand], for my use-case I only need those resources addressable by 
ID at the Java API level. The application that is built on top controls the URL 
space, but I wanted to use the Sling API for accessing the resource tree. You 
could ask why the contradiction: update the JCR resource provider to use a 
feature exposed only by JCR, but consume it via Sling?! Well, the Sling API is 
just easier to use and simpler to understand for developers than the JCR one.

Adding a new Resource Provider could also be an option, but in the end it would 
perform the same function in the same way: it would offer a way to retrieve 
resources by ID from its mount root, whichever that will be.

I also thought about extending the Sling Resource API, but given that right now 
only one commonly use  provider generates IDs for the resources it creates I 
thought it would be too complex and not provide so many gains.

I will obviously not push something that the Sling community doesn’t agree 
with, but I would like that we discuss the alternatives and pick the solution 
that makes the most sense in terms of effort/benefits.

> Provide a way to retrieve a JCR backed resource by its node identifier
> --
>
> Key: SLING-12300
> URL: https://issues.apache.org/jira/browse/SLING-12300
> Project: Sling
>  Issue Type: New Feature
>  Components: JCR
>    Reporter: Radu Cotescu
>Assignee: Radu Cotescu
>Priority: Major
> Fix For: JCR Resource 3.3.0
>
>
> Since all {{javax.jcr.Nodes}} have an identifier [0], a useful feature would 
> be {{Resource}} retrieval by node id, which could be its {{jcr:uuid}} 
> property for referenceable nodes or the path. In systems that would like to 
> use UUID addressing, this would reduce the need for executing JCR queries for 
> resource retrieval and would avoid double-reads via the JCR and then Sling 
> API to obtain the resource.
> In order to provide a unified behaviour, paths starting with the {{/jcr:id/}} 
> prefix should use the resource retrieval by node identifier.
> [0] - 
> https://javadoc.io/static/javax.jcr/jcr/2.0/javax/jcr/Node.html#getIdentifier()



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (SLING-12300) Provide a way to retrieve a JCR backed resource by its node identifier

2024-04-22 Thread Radu Cotescu (Jira)


[ 
https://issues.apache.org/jira/browse/SLING-12300?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17839511#comment-17839511
 ] 

Radu Cotescu commented on SLING-12300:
--

[~enorman], nobody trivialised your concerns. I’m not sure if everyone is 
familiarised with the UUIDv4 standard that Oak uses for the {{jcr:uuid}} 
property and I was just trying to explain the problem space. In addition, you 
expressed that there would be security issues by implementing this feature, but 
didn’t explain which. Predictability is not a security concern IMO if you 
correctly use ACLs.

[~paul.bjorkstrand], for my use-case I only need those resources addressable by 
ID at the Java API level. The application that is built on top controls the URL 
space, but I wanted to use the Sling API for accessing the resource tree. You 
could ask why the contradiction: update the JCR resource provider to use a 
feature exposed only by JCR, but consume it via Sling?! Well, the Sling API is 
just easier to use and simpler to understand for developers than the JCR one.

Adding a new Resource Provider could also be an option, but in the end it would 
perform the same function in the same way: it would offer a way to retrieve 
resources by ID from its mount root, whichever that will be.

I also thought about extending the Sling Resource API, but given that right now 
only one commonly use  provider generates IDs for the resources it creates I 
thought it would be too complex and not provide so many gains.

I will obviously not push something that the Sling community doesn’t agree 
with, but I would like that we discuss the alternatives and pick the solution 
that makes the most sense in terms of effort/benefits.

> Provide a way to retrieve a JCR backed resource by its node identifier
> --
>
> Key: SLING-12300
> URL: https://issues.apache.org/jira/browse/SLING-12300
> Project: Sling
>  Issue Type: New Feature
>  Components: JCR
>    Reporter: Radu Cotescu
>Assignee: Radu Cotescu
>Priority: Major
> Fix For: JCR Resource 3.3.0
>
>
> Since all {{javax.jcr.Nodes}} have an identifier [0], a useful feature would 
> be {{Resource}} retrieval by node id, which could be its {{jcr:uuid}} 
> property for referenceable nodes or the path. In systems that would like to 
> use UUID addressing, this would reduce the need for executing JCR queries for 
> resource retrieval and would avoid double-reads via the JCR and then Sling 
> API to obtain the resource.
> In order to provide a unified behaviour, paths starting with the {{/jcr:id/}} 
> prefix should use the resource retrieval by node identifier.
> [0] - 
> https://javadoc.io/static/javax.jcr/jcr/2.0/javax/jcr/Node.html#getIdentifier()



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (SLING-12300) Provide a way to retrieve a JCR backed resource by its node identifier

2024-04-19 Thread Radu Cotescu (Jira)


[ 
https://issues.apache.org/jira/browse/SLING-12300?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17839166#comment-17839166
 ] 

Radu Cotescu commented on SLING-12300:
--

In case you were to build an application that provided web resources identified 
by UUIDs, this would allow for efficient resource-by-id retrieval compared to 
what you'd have to do without this support at the Resource Provider level.

> Provide a way to retrieve a JCR backed resource by its node identifier
> --
>
> Key: SLING-12300
> URL: https://issues.apache.org/jira/browse/SLING-12300
> Project: Sling
>  Issue Type: New Feature
>  Components: JCR
>    Reporter: Radu Cotescu
>Assignee: Radu Cotescu
>Priority: Major
> Fix For: JCR Resource 3.3.0
>
>
> Since all {{javax.jcr.Nodes}} have an identifier [0], a useful feature would 
> be {{Resource}} retrieval by node id, which could be its {{jcr:uuid}} 
> property for referenceable nodes or the path. In systems that would like to 
> use UUID addressing, this would reduce the need for executing JCR queries for 
> resource retrieval and would avoid double-reads via the JCR and then Sling 
> API to obtain the resource.
> In order to provide a unified behaviour, paths starting with the {{/jcr:id/}} 
> prefix should use the resource retrieval by node identifier.
> [0] - 
> https://javadoc.io/static/javax.jcr/jcr/2.0/javax/jcr/Node.html#getIdentifier()



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (SLING-12300) Provide a way to retrieve a JCR backed resource by its node identifier

2024-04-19 Thread Radu Cotescu (Jira)


[ 
https://issues.apache.org/jira/browse/SLING-12300?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17839151#comment-17839151
 ] 

Radu Cotescu commented on SLING-12300:
--

{quote}
I could get a match on the first try if I get lucky.  Basically, I'm not 
putting a server on the public internet with predictable addresses.
{quote}

We're talking about UUIDs in this case, which are anything but predictable. 
Paths are definitely more predictable if we were to compare the two. But even 
so, the resources are either protected by ACLs or public, both making the 
security discussion moot.

> Provide a way to retrieve a JCR backed resource by its node identifier
> --
>
> Key: SLING-12300
> URL: https://issues.apache.org/jira/browse/SLING-12300
> Project: Sling
>  Issue Type: New Feature
>  Components: JCR
>    Reporter: Radu Cotescu
>Assignee: Radu Cotescu
>Priority: Major
> Fix For: JCR Resource 3.3.0
>
>
> Since all {{javax.jcr.Nodes}} have an identifier [0], a useful feature would 
> be {{Resource}} retrieval by node id, which could be its {{jcr:uuid}} 
> property for referenceable nodes or the path. In systems that would like to 
> use UUID addressing, this would reduce the need for executing JCR queries for 
> resource retrieval and would avoid double-reads via the JCR and then Sling 
> API to obtain the resource.
> In order to provide a unified behaviour, paths starting with the {{/jcr:id/}} 
> prefix should use the resource retrieval by node identifier.
> [0] - 
> https://javadoc.io/static/javax.jcr/jcr/2.0/javax/jcr/Node.html#getIdentifier()



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (SLING-12300) Provide a way to retrieve a JCR backed resource by its node identifier

2024-04-19 Thread Radu Cotescu (Jira)


[ 
https://issues.apache.org/jira/browse/SLING-12300?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17839137#comment-17839137
 ] 

Radu Cotescu commented on SLING-12300:
--

{quote}That seems to be a security hole where someone could just do a brute 
force attack to try all the possible values and find paths that exist.
{quote}
They'd only have to try 2{^}122{^} combinations. In all seriousness now, the 
same ACLs apply. I don't see how the addressing mode introduces a security hole.

> Provide a way to retrieve a JCR backed resource by its node identifier
> --
>
> Key: SLING-12300
> URL: https://issues.apache.org/jira/browse/SLING-12300
> Project: Sling
>  Issue Type: New Feature
>  Components: JCR
>    Reporter: Radu Cotescu
>Assignee: Radu Cotescu
>Priority: Major
> Fix For: JCR Resource 3.3.0
>
>
> Since all {{javax.jcr.Nodes}} have an identifier [0], a useful feature would 
> be {{Resource}} retrieval by node id, which could be its {{jcr:uuid}} 
> property for referenceable nodes or the path. In systems that would like to 
> use UUID addressing, this would reduce the need for executing JCR queries for 
> resource retrieval and would avoid double-reads via the JCR and then Sling 
> API to obtain the resource.
> In order to provide a unified behaviour, paths starting with the {{/jcr:id/}} 
> prefix should use the resource retrieval by node identifier.
> [0] - 
> https://javadoc.io/static/javax.jcr/jcr/2.0/javax/jcr/Node.html#getIdentifier()



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (SLING-12300) Provide a way to retrieve a JCR backed resource by its node identifier

2024-04-19 Thread Radu Cotescu (Jira)


[ 
https://issues.apache.org/jira/browse/SLING-12300?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17839133#comment-17839133
 ] 

Radu Cotescu commented on SLING-12300:
--

{quote}
If I were to add in something that provides resources under the path 
{{/jcr:id/*}}, it almost seems like it should be from a provider that services 
that path.
{quote}

Don't forget that the JCR provider is mounted on {{/}}. So technically 
{{/jcr:id}} in this case is a resource provided by this provider. If you were 
to reconfigure the provider on let's say {{/oak}}, then the "magic" path for 
identifier based retrieval would be {{/oak/jcr:id/}}.

> Provide a way to retrieve a JCR backed resource by its node identifier
> --
>
> Key: SLING-12300
> URL: https://issues.apache.org/jira/browse/SLING-12300
> Project: Sling
>  Issue Type: New Feature
>  Components: JCR
>Reporter: Radu Cotescu
>Assignee: Radu Cotescu
>Priority: Major
> Fix For: JCR Resource 3.3.0
>
>
> Since all {{javax.jcr.Nodes}} have an identifier [0], a useful feature would 
> be {{Resource}} retrieval by node id, which could be its {{jcr:uuid}} 
> property for referenceable nodes or the path. In systems that would like to 
> use UUID addressing, this would reduce the need for executing JCR queries for 
> resource retrieval and would avoid double-reads via the JCR and then Sling 
> API to obtain the resource.
> In order to provide a unified behaviour, paths starting with the {{/jcr:id/}} 
> prefix should use the resource retrieval by node identifier.
> [0] - 
> https://javadoc.io/static/javax.jcr/jcr/2.0/javax/jcr/Node.html#getIdentifier()



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (SLING-12300) Provide a way to retrieve a JCR backed resource by its node identifier

2024-04-19 Thread Radu Cotescu (Jira)


[ 
https://issues.apache.org/jira/browse/SLING-12300?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17839129#comment-17839129
 ] 

Radu Cotescu commented on SLING-12300:
--

[~joerghoh], how can your two asserts be true at the same time for a 
referenceable node?! A JCR node's identifier is its path or, if it has the 
{{mix:referenceable}} applied, its {{jcr:uuid}} property, like mentioned in the 
issue's description.

In the PR I have provided some tests that show the path behaviour, namely the 
path will always be the node's path, regardless of how the resource was 
retrieved.

While writing a new Resource Provider might provide better isolation, it would 
duplicate everything the JCR Provider does right now and it wouldn't provide 
much value compared to the current solution. Accessing a resource like 
{{http://localhost:8080/jcr:id/.json}} will be identical to 
{{http://localhost:8080/.json}}.

> Provide a way to retrieve a JCR backed resource by its node identifier
> --
>
> Key: SLING-12300
> URL: https://issues.apache.org/jira/browse/SLING-12300
> Project: Sling
>  Issue Type: New Feature
>  Components: JCR
>    Reporter: Radu Cotescu
>Assignee: Radu Cotescu
>Priority: Major
> Fix For: JCR Resource 3.3.0
>
>
> Since all {{javax.jcr.Nodes}} have an identifier [0], a useful feature would 
> be {{Resource}} retrieval by node id, which could be its {{jcr:uuid}} 
> property for referenceable nodes or the path. In systems that would like to 
> use UUID addressing, this would reduce the need for executing JCR queries for 
> resource retrieval and would avoid double-reads via the JCR and then Sling 
> API to obtain the resource.
> In order to provide a unified behaviour, paths starting with the {{/jcr:id/}} 
> prefix should use the resource retrieval by node identifier.
> [0] - 
> https://javadoc.io/static/javax.jcr/jcr/2.0/javax/jcr/Node.html#getIdentifier()



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (SLING-12300) Provide a way to retrieve a JCR backed resource by its node identifier

2024-04-19 Thread Radu Cotescu (Jira)


 [ 
https://issues.apache.org/jira/browse/SLING-12300?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Radu Cotescu updated SLING-12300:
-
Description: 
Since all {{javax.jcr.Nodes}} have an identifier [0], a useful feature would be 
{{Resource}} retrieval by node id, which could be its {{jcr:uuid}} property for 
referenceable nodes or the path. In systems that would like to use UUID 
addressing, this would reduce the need for executing JCR queries for resource 
retrieval and would avoid double-reads via the JCR and then Sling API to obtain 
the resource.

In order to provide a unified behaviour, paths starting with the {{/jcr:id/}} 
prefix should use the resource retrieval by node identifier.

[0] - 
https://javadoc.io/static/javax.jcr/jcr/2.0/javax/jcr/Node.html#getIdentifier()

  was:
Since all {{javax.jcr.Nodes}} have an identifier [0], a useful feature would be 
{{Resource}} retrieval by node id, which could be its {{jcr:uuid}} property for 
referenceable nodes or the path. In systems that would like to use UUID 
addressing, this would reduce the need for executing JCR queries for resource 
retrieval and would avoid double-reads via the JCR and then Sling API to obtain 
the resource.

[0] - 
https://javadoc.io/static/javax.jcr/jcr/2.0/javax/jcr/Node.html#getIdentifier()


> Provide a way to retrieve a JCR backed resource by its node identifier
> --
>
> Key: SLING-12300
> URL: https://issues.apache.org/jira/browse/SLING-12300
> Project: Sling
>  Issue Type: New Feature
>  Components: JCR
>    Reporter: Radu Cotescu
>Assignee: Radu Cotescu
>Priority: Major
> Fix For: JCR Resource 3.3.0
>
>
> Since all {{javax.jcr.Nodes}} have an identifier [0], a useful feature would 
> be {{Resource}} retrieval by node id, which could be its {{jcr:uuid}} 
> property for referenceable nodes or the path. In systems that would like to 
> use UUID addressing, this would reduce the need for executing JCR queries for 
> resource retrieval and would avoid double-reads via the JCR and then Sling 
> API to obtain the resource.
> In order to provide a unified behaviour, paths starting with the {{/jcr:id/}} 
> prefix should use the resource retrieval by node identifier.
> [0] - 
> https://javadoc.io/static/javax.jcr/jcr/2.0/javax/jcr/Node.html#getIdentifier()



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (SLING-12300) Provide a way to retrieve a JCR backed resource by its node identifier

2024-04-19 Thread Radu Cotescu (Jira)
Radu Cotescu created SLING-12300:


 Summary: Provide a way to retrieve a JCR backed resource by its 
node identifier
 Key: SLING-12300
 URL: https://issues.apache.org/jira/browse/SLING-12300
 Project: Sling
  Issue Type: New Feature
  Components: JCR
Reporter: Radu Cotescu
Assignee: Radu Cotescu
 Fix For: JCR Resource 3.3.0


Since all {{javax.jcr.Nodes}} have an identifier [0], a useful feature would be 
{{Resource}} retrieval by node id, which could be its {{jcr:uuid}} property for 
referenceable nodes or the path. In systems that would like to use UUID 
addressing, this would reduce the need for executing JCR queries for resource 
retrieval and would avoid double-reads via the JCR and then Sling API to obtain 
the resource.

[0] - 
https://javadoc.io/static/javax.jcr/jcr/2.0/javax/jcr/Node.html#getIdentifier()



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


Re: [VOTE] Release Apache Sling Rewriter 1.4.0

2024-04-19 Thread Radu Cotescu
+1

On Thu, 18 Apr 2024 at 18:36, Carsten Ziegeler  wrote:
>
> Please vote to approve this release:
>
>[ ] +1 Approve the release
>[ ]  0 Don't care
>[ ] -1 Don't release, because ...
>


Re: [VOTE] Release Apache Sling Testing Sling Mock Oak 3.2.0-1.22.15

2024-04-19 Thread Radu Cotescu
+1

On Wed, 17 Apr 2024 at 20:32, Stefan Seifert
 wrote:
>
> Please vote to approve this release:
>
>   [ ] +1 Approve the release
>   [ ]  0 Don't care
>   [ ] -1 Don't release, because ...
>


Re: [VOTE] Release Apache Sling Testing Sling Mock 3.5.0, Sling Mock Oak 4.0.0-1.62.0

2024-04-19 Thread Radu Cotescu
+1

On Wed, 17 Apr 2024 at 20:32, Stefan Seifert
 wrote:
>
> Please vote to approve this release:
>
>   [ ] +1 Approve the release
>   [ ]  0 Don't care
>   [ ] -1 Don't release, because ...
>


Re: [VOTE] Release Apache Sling Tenant 1.1.8

2024-04-19 Thread Radu Cotescu
+1

On Thu, 11 Apr 2024 at 15:35, Robert Munteanu  wrote:
>
> Please vote to approve this release:
>
>   [ ] +1 Approve the release
>   [ ]  0 Don't care
>   [ ] -1 Don't release, because ...
>


Re: [VOTE] Release Apache Sling JUnit Tests Teleporter 1.0.26

2024-04-19 Thread Radu Cotescu
+1

On Wed, 17 Apr 2024 at 12:03, Robert Munteanu  wrote:
>
> Please vote to approve this release:
>
>   [ ] +1 Approve the release
>   [ ]  0 Don't care
>   [ ] -1 Don't release, because ...
>


Re: [VOTE] Release Apache Sling Resource Observation Annotations 1.0.0

2024-03-04 Thread Radu Cotescu
+1

On Fri, 1 Mar 2024 at 13:19, Konrad Windszus  wrote:
>
> Please vote to approve this release:
>
>   [ ] +1 Approve the release
>   [ ]  0 Don't care
>   [ ] -1 Don't release, because ...
>
> This majority vote is open for at least 72 hours.


Re: [VOTE] Release Apache Sling Content-Package to Feature Model Converter 1.3.6

2024-03-04 Thread Radu Cotescu
+1

On Thu, 29 Feb 2024 at 15:29, Robert Munteanu  wrote:
> Please vote to approve this release:
>
>   [ ] +1 Approve the release
>   [ ]  0 Don't care
>   [ ] -1 Don't release, because ...
>
> This majority vote is open for at least 72 hours.
>


Re: [VOTE] Release Apache Sling Servlets Resolver version 2.11.2

2024-02-21 Thread Radu Cotescu
+1

On Wed, 21 Feb 2024 at 14:28, Jörg Hoh  wrote:
> Please vote to approve this release:
>
>   [ ] +1 Approve the release
>   [ ]  0 Don't care
>   [ ] -1 Don't release, because ...
>


[jira] [Updated] (SLING-10901) Allow terminating a GraphQL query after a configured timeout

2024-02-21 Thread Radu Cotescu (Jira)


 [ 
https://issues.apache.org/jira/browse/SLING-10901?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Radu Cotescu updated SLING-10901:
-
Fix Version/s: GraphQL Core 0.0.32
   (was: GraphQL Core 0.0.30)

> Allow terminating a GraphQL query after a configured timeout
> 
>
> Key: SLING-10901
> URL: https://issues.apache.org/jira/browse/SLING-10901
> Project: Sling
>  Issue Type: Improvement
>  Components: GraphQL
>    Reporter: Radu Cotescu
>Assignee: Radu Cotescu
>Priority: Major
> Fix For: GraphQL Core 0.0.32
>
>
> Since expensive GraphQL queries could lead to a DoS attack, it would be worth 
> allowing a system administrator to configure the maximum execution time of a 
> query. When a long running query is interrupted, the returned error should be 
> transparent for the GraphQL engine, so that the client knows exactly why the 
> query failed.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Closed] (SLING-12221) Upgrade grahpql-java version to 20.3

2024-02-21 Thread Radu Cotescu (Jira)


 [ 
https://issues.apache.org/jira/browse/SLING-12221?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Radu Cotescu closed SLING-12221.


> Upgrade grahpql-java version to 20.3
> 
>
> Key: SLING-12221
> URL: https://issues.apache.org/jira/browse/SLING-12221
> Project: Sling
>  Issue Type: Bug
>  Components: GraphQL
>Affects Versions: GraphQL Core 0.0.26
>Reporter: Lenard Palko
>    Assignee: Radu Cotescu
>Priority: Minor
> Fix For: GraphQL Core 0.0.30
>
>
> The version of graphql-java currently used is 20.1, but version 20.3 offers 
> the possibility to configure also MAX_QUERY_CHARACTERS, in addition to 
> MAX_QUERY_TOKENS and MAX_WHITESPACE_TOKENS.
> [https://github.com/graphql-java/graphql-java/blob/v20.3/src/main/java/graphql/parser/ParserOptions.java#L24]
> This would allow to configure the full query length in case the already 
> existing configurations limits are hit.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[RESULT] [VOTE] Release Apache Sling GraphQL Core 0.0.30

2024-02-21 Thread Radu Cotescu
Hi,

The vote has passed with the following result:

+1 (binding): Robert Munteanu, Carsten Ziegeler, Joerg Hoh
+1 (non-binding): none

I will copy this release to the Sling dist directory and
promote the artifacts to the central Maven repository.

Regards,
Radu Cotescu


[VOTE] Release Apache Sling GraphQL Core 0.0.30

2024-02-08 Thread Radu Cotescu
Hi,

We solved 1 issue in this release:
https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12310710=12354075=Text

Staging repository:
https://repository.apache.org/content/repositories/orgapachesling-2838/

You can use this UNIX script to download the release and verify the signatures:
https://raw.githubusercontent.com/apache/sling-tooling-release/master/check_staged_release.sh

Usage:
sh check_staged_release.sh 2838 /tmp/sling-staging

Please vote to approve this release:

  [ ] +1 Approve the release
  [ ]  0 Don't care
  [ ] -1 Don't release, because ...

This majority vote is open for at least 72 hours.

Regards,
Radu Cotescu


[jira] [Resolved] (SLING-12221) Upgrade grahpql-java version to 20.3

2024-01-08 Thread Radu Cotescu (Jira)


 [ 
https://issues.apache.org/jira/browse/SLING-12221?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Radu Cotescu resolved SLING-12221.
--
Fix Version/s: GraphQL Core 0.0.30
   Resolution: Fixed

> Upgrade grahpql-java version to 20.3
> 
>
> Key: SLING-12221
> URL: https://issues.apache.org/jira/browse/SLING-12221
> Project: Sling
>  Issue Type: Bug
>  Components: GraphQL
>Affects Versions: GraphQL Core 0.0.26
>Reporter: Lenard Palko
>    Assignee: Radu Cotescu
>Priority: Minor
> Fix For: GraphQL Core 0.0.30
>
>
> The version of graphql-java currently used is 20.1, but version 20.3 offers 
> the possibility to configure also MAX_QUERY_CHARACTERS, in addition to 
> MAX_QUERY_TOKENS and MAX_WHITESPACE_TOKENS.
> [https://github.com/graphql-java/graphql-java/blob/v20.3/src/main/java/graphql/parser/ParserOptions.java#L24]
> This would allow to configure the full query length in case the already 
> existing configurations limits are hit.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Closed] (SLING-12198) Extending sling.graphql.engine to allow passing custom graphql ParserOptions while executing GraphQL queries

2024-01-08 Thread Radu Cotescu (Jira)


 [ 
https://issues.apache.org/jira/browse/SLING-12198?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Radu Cotescu closed SLING-12198.


> Extending sling.graphql.engine to allow passing custom graphql ParserOptions 
> while executing GraphQL queries
> 
>
> Key: SLING-12198
> URL: https://issues.apache.org/jira/browse/SLING-12198
> Project: Sling
>  Issue Type: Improvement
>  Components: GraphQL
>Affects Versions: GraphQL Core 0.0.24
>Reporter: Andrzej Kubas
>Assignee: Bertrand Delacretaz
>Priority: Major
> Fix For: GraphQL Core 0.0.28
>
>
> The graphql-java crates default ParserOptions(if not passed with 
> ExecutionInput#graphQLContext) while executing GraphQL query. 
> [https://github.com/graphql-java/graphql-java/blob/v20.3/src/main/java/graphql/ParseAndValidate.java#L67]
> [https://github.com/graphql-java/graphql-java/blob/v20.3/src/main/java/graphql/parser/ParserOptions.java#L35]
> That could lead to 'Denial Of Service' InvalidSyntax error while executing 
> GraphQL complex queries.
>  
> However, there should be a way to set graphql-java execution up with custom 
> values of ParserOprions.
> [https://github.com/apache/sling-org-apache-sling-graphql-core/blob/org.apache.sling.graphql.core-0.0.24/src/main/java/org/apache/sling/graphql/core/engine/DefaultQueryExecutor.java#L208]
> [https://github.com/apache/sling-org-apache-sling-graphql-core/blob/org.apache.sling.graphql.core-0.0.24/src/main/java/org/apache/sling/graphql/core/engine/DefaultQueryExecutor.java#L202]
> https://github.com/apache/sling-org-apache-sling-graphql-core/blob/org.apache.sling.graphql.core-0.0.24/src/main/java/org/apache/sling/graphql/core/engine/DefaultQueryExecutor.java#L155
>  
> That should help to orchestrate custom graphql-java executions for complex 
> GraphQL queries.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Closed] (SLING-12200) sling-org-apache-sling-graphql-core unnecessarily uses the shaded guava from graphql-java

2024-01-08 Thread Radu Cotescu (Jira)


 [ 
https://issues.apache.org/jira/browse/SLING-12200?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Radu Cotescu closed SLING-12200.


> sling-org-apache-sling-graphql-core unnecessarily uses the shaded guava from 
> graphql-java
> -
>
> Key: SLING-12200
> URL: https://issues.apache.org/jira/browse/SLING-12200
> Project: Sling
>  Issue Type: Improvement
>  Components: GraphQL
>Affects Versions: GraphQL Core 0.0.26
>Reporter: Manfred Baedke
>Assignee: Bertrand Delacretaz
>Priority: Trivial
> Fix For: GraphQL Core 0.0.28
>
>
> AFAIK shaded Guava is no longer part part of recent releases of graphql-java. 
> The only usage is 
> https://github.com/apache/sling-org-apache-sling-graphql-core/blob/30babad3caab0da0dc85bc0d645f76ca6784ef67/src/main/java/org/apache/sling/graphql/core/engine/SelectedFieldWrapper.java#L181,
>  which is trivial to replace with JavaSE.
> cc [~reschke]



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[RESULT] [VOTE] Release Apache Sling GraphQL Core 0.0.28

2024-01-08 Thread Radu Cotescu
Hi,

The vote has passed with the following result:

+1 (binding): Carsten Ziegeler, Robert Munteanu, Bertrand Delacretaz
+1 (non-binding): none

I will copy this release to the Sling dist directory and
promote the artifacts to the central Maven repository.

Regards,
Radu Cotescu


[jira] [Assigned] (SLING-12221) Upgrade grahpql-java version to 20.3

2024-01-08 Thread Radu Cotescu (Jira)


 [ 
https://issues.apache.org/jira/browse/SLING-12221?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Radu Cotescu reassigned SLING-12221:


Assignee: Radu Cotescu

> Upgrade grahpql-java version to 20.3
> 
>
> Key: SLING-12221
> URL: https://issues.apache.org/jira/browse/SLING-12221
> Project: Sling
>  Issue Type: Bug
>  Components: GraphQL
>Affects Versions: GraphQL Core 0.0.26
>Reporter: Lenard Palko
>    Assignee: Radu Cotescu
>Priority: Minor
>
> The version of graphql-java currently used is 20.1, but version 20.3 offers 
> the possibility to configure also MAX_QUERY_CHARACTERS, in addition to 
> MAX_QUERY_TOKENS and MAX_WHITESPACE_TOKENS.
> [https://github.com/graphql-java/graphql-java/blob/v20.3/src/main/java/graphql/parser/ParserOptions.java#L24]
> This would allow to configure the full query length in case the already 
> existing configurations limits are hit.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[VOTE] Release Apache Sling GraphQL Core 0.0.28

2024-01-03 Thread Radu Cotescu
Hi,

We solved 2 issues in this release:
https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12310710=12354026=Text

Staging repository:
https://repository.apache.org/content/repositories/orgapachesling-2826

You can use this UNIX script to download the release and verify the signatures:
https://raw.githubusercontent.com/apache/sling-tooling-release/master/check_staged_release.sh

Usage:
sh check_staged_release.sh 2826 /tmp/sling-staging

Please vote to approve this release:

  [ ] +1 Approve the release
  [ ]  0 Don't care
  [ ] -1 Don't release, because ...

This majority vote is open for at least 72 hours.

Regards,
Radu Cotescu

Re: [VOTE] Release Apache Sling Provider Type Checker Bnd Plugin 1.0.0

2023-12-13 Thread Radu Cotescu
Hi Konrad,

> On 13 Dec 2023, at 11:28, Konrad Windszus  wrote:
> 
> I sent it: https://lists.apache.org/thread/znrmbfkkx092fqtg2js6fo7jh4bg55sp.

Sorry, my email client played a trick on me.

> It is just not appearing in the VOTE email thread.

I was not expecting it anyways there, usually we start another thread for the 
result email.

Thanks,
Radu



Re: Unable to create a release

2023-12-13 Thread Radu Cotescu
Hi Carsten,

I had similar issues whenever my external IP address had changed during the 
release process. I suspect you had the same problem?

Regards,
Radu

> On 6 Dec 2023, at 14:05, Carsten Ziegeler  wrote:
> 
> Just realized that this might be due to my network setup. Will later try again
> 
> Thanks
> Carsten



Re: [VOTE] Release Apache Sling Provider Type Checker Bnd Plugin 1.0.0

2023-12-13 Thread Radu Cotescu
Hi Konrad,

Have you forgotten to send the result email?

Thanks,
Radu

> On 9 Dec 2023, at 17:20, Konrad Windszus  wrote:
> 
> Here is my +1.
> Konrad
> 
>> On 5. Dec 2023, at 17:35, Konrad Windszus  wrote:
>> 
>> Hi,
>> We solved 1 issue in this release: 
>> https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12310710=12354002=Text
>> Staging repository: 
>> https://repository.apache.org/content/repositories/orgapachesling-2811/
>> You can use this UNIX script to download the release and verify the 
>> signatures: 
>> https://raw.githubusercontent.com/apache/sling-tooling-release/master/check_staged_release.sh
>> Usage: sh check_staged_release.sh 2811 /tmp/sling-staging 
>> 
>> Please vote to approve this release: 
>> [ ] +1 Approve the release 
>> [ ] 0 Don't care 
>> [ ] -1 Don't release, because … 
>> 
>> This majority vote is open for at least 72 hours.
>> Thanks in advance for voting,
>> Konrad
> 



Re: [VOTE] Release Apache Sling Context-Aware Configuration Mock Plugin 1.5.4

2023-12-13 Thread Radu Cotescu
+1

> On 11 Dec 2023, at 16:15, Stefan Seifert  
> wrote:
> 
> Please vote to approve this release:
> 
>  [ ] +1 Approve the release
>  [ ]  0 Don't care
>  [ ] -1 Don't release, because ...



Re: [VOTE] Release Apache Sling GraphQL 0.0.26

2023-12-13 Thread Radu Cotescu
+1

> On 13 Dec 2023, at 07:13, Carsten Ziegeler  wrote:
> 
> Please vote to approve this release:
> 
>  [ ] +1 Approve the release
>  [ ]  0 Don't care
>  [ ] -1 Don't release, because ...



[jira] [Commented] (SLING-12027) GraphQL core fails to build with Java 17

2023-09-25 Thread Radu Cotescu (Jira)


[ 
https://issues.apache.org/jira/browse/SLING-12027?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17768749#comment-17768749
 ] 

Radu Cotescu commented on SLING-12027:
--

[~andysch], could it be that the tests are running with relatively old Sling 
Engine and Sling Servlet Resolver bundles? Have you tried updating those?

> GraphQL core fails to build with Java 17
> 
>
> Key: SLING-12027
> URL: https://issues.apache.org/jira/browse/SLING-12027
> Project: Sling
>  Issue Type: Bug
>  Components: GraphQL
>Reporter: Robert Munteanu
>Assignee: Robert Munteanu
>Priority: Major
> Fix For: GraphQL Core 0.0.26
>
>
> 1. Mockito fails to create mocks, probably due to old version
> 2. Pax-Exam tests time out



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (SLING-12014) GraphQL Core needs to support additional fields from GraphQL Java

2023-08-31 Thread Radu Cotescu (Jira)


 [ 
https://issues.apache.org/jira/browse/SLING-12014?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Radu Cotescu updated SLING-12014:
-
Summary: GraphQL Core needs to support additional fields from GraphQL Java  
(was: GraphQL Core needs to Support Addition Fields from GraphQL Java)

> GraphQL Core needs to support additional fields from GraphQL Java
> -
>
> Key: SLING-12014
> URL: https://issues.apache.org/jira/browse/SLING-12014
> Project: Sling
>  Issue Type: Improvement
>Reporter: Andreas Schaefer
>Assignee: Andreas Schaefer
>Priority: Major
>
> There is a need to have additional fields from the GraphQL Java's Selected 
> Field. For example there is a need to separate fields with the same name but 
> different parent through the Fully Qualified Name.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Closed] (SLING-12003) The RequestDispatcher should flush the buffer on forward only if the buffer hasn't already been closed

2023-08-21 Thread Radu Cotescu (Jira)


 [ 
https://issues.apache.org/jira/browse/SLING-12003?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Radu Cotescu closed SLING-12003.


> The RequestDispatcher should flush the buffer on forward only if the buffer 
> hasn't already been closed
> --
>
> Key: SLING-12003
> URL: https://issues.apache.org/jira/browse/SLING-12003
> Project: Sling
>  Issue Type: Improvement
>  Components: Engine
>Affects Versions: Engine 2.2.10
>    Reporter: Radu Cotescu
>Assignee: Radu Cotescu
>Priority: Major
> Fix For: Engine 2.15.6
>
>
> The {{SlingRequestDispatcher#forward}} call [0] attempts to close the 
> response buffer even if this has already been closed by the servlet to which 
> the request was originally forwarded. The Servlet Specification [1] mentions 
> the following in section 9.4:
> {quote}Before the forward method of the RequestDispatcher interface returns 
> without exception, the response content must be sent and committed, and 
> closed by the servlet container, unless the request was put into the 
> asynchronous mode.
> {quote}
> As such, the {{RequestDispatcher#forward}} implementation should indeed make 
> sure the response is committed, but it's not necessarily the only one that 
> must commit the response. Jetty seems to have the same understanding [2], 
> where the close is performed only if the response hasn't already been 
> committed and the request is not async.
> [0] - 
> [https://github.com/apache/sling-org-apache-sling-engine/blob/368690a2a81fd8a121e62767fcd32b63936a65b8/src/main/java/org/apache/sling/engine/impl/request/SlingRequestDispatcher.java#L125-L128]
> [1] - 
> [https://download.oracle.com/otn-pub/jcp/servlet-3_1-fr-spec/servlet-3_1-final.pdf]
> [2] - 
> [https://github.com/eclipse/jetty.project/blob/jetty-11.0.x/jetty-server/src/main/java/org/eclipse/jetty/server/Dispatcher.java#L218]
>  
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[RESULT] [VOTE] Release Apache Sling Engine 2.15.6

2023-08-21 Thread Radu Cotescu
Hi,

The vote has passed with the following result:

+1 (binding): Carsten Ziegeler, Stefan Seifert, Eric Norman
+1 (non-binding): Andreas Schaefer

I will copy this release to the Sling dist directory and
promote the artifacts to the central Maven repository.

Regards,
Radu Cotescu


[VOTE] Release Apache Sling Engine 2.15.6

2023-08-15 Thread Radu Cotescu
Hi,

We solved 1 issue in this release:
https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12310710=12353543=Text

Staging repository:
https://repository.apache.org/content/repositories/orgapachesling-2778/

You can use this UNIX script to download the release and verify the signatures:
https://raw.githubusercontent.com/apache/sling-tooling-release/master/check_staged_release.sh

Usage:
sh check_staged_release.sh 2778 /tmp/sling-staging

Please vote to approve this release:

  [ ] +1 Approve the release
  [ ]  0 Don't care
  [ ] -1 Don't release, because ...

This majority vote is open for at least 72 hours.

Regards,
Radu Cotescu


[jira] [Resolved] (SLING-12003) The RequestDispatcher should flush the buffer on forward only if the buffer hasn't already been closed

2023-08-15 Thread Radu Cotescu (Jira)


 [ 
https://issues.apache.org/jira/browse/SLING-12003?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Radu Cotescu resolved SLING-12003.
--
Resolution: Fixed

> The RequestDispatcher should flush the buffer on forward only if the buffer 
> hasn't already been closed
> --
>
> Key: SLING-12003
> URL: https://issues.apache.org/jira/browse/SLING-12003
> Project: Sling
>  Issue Type: Improvement
>  Components: Engine
>Affects Versions: Engine 2.2.10
>    Reporter: Radu Cotescu
>Assignee: Radu Cotescu
>Priority: Major
> Fix For: Engine 2.15.6
>
>
> The {{SlingRequestDispatcher#forward}} call [0] attempts to close the 
> response buffer even if this has already been closed by the servlet to which 
> the request was originally forwarded. The Servlet Specification [1] mentions 
> the following in section 9.4:
> {quote}Before the forward method of the RequestDispatcher interface returns 
> without exception, the response content must be sent and committed, and 
> closed by the servlet container, unless the request was put into the 
> asynchronous mode.
> {quote}
> As such, the {{RequestDispatcher#forward}} implementation should indeed make 
> sure the response is committed, but it's not necessarily the only one that 
> must commit the response. Jetty seems to have the same understanding [2], 
> where the close is performed only if the response hasn't already been 
> committed and the request is not async.
> [0] - 
> [https://github.com/apache/sling-org-apache-sling-engine/blob/368690a2a81fd8a121e62767fcd32b63936a65b8/src/main/java/org/apache/sling/engine/impl/request/SlingRequestDispatcher.java#L125-L128]
> [1] - 
> [https://download.oracle.com/otn-pub/jcp/servlet-3_1-fr-spec/servlet-3_1-final.pdf]
> [2] - 
> [https://github.com/eclipse/jetty.project/blob/jetty-11.0.x/jetty-server/src/main/java/org/eclipse/jetty/server/Dispatcher.java#L218]
>  
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Closed] (SLING-11458) Regress - "Writer has already been closed" exception in GraphQLServlet

2023-08-15 Thread Radu Cotescu (Jira)


 [ 
https://issues.apache.org/jira/browse/SLING-11458?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Radu Cotescu closed SLING-11458.


> Regress - "Writer has already been closed" exception in GraphQLServlet
> --
>
> Key: SLING-11458
> URL: https://issues.apache.org/jira/browse/SLING-11458
> Project: Sling
>  Issue Type: Bug
>  Components: GraphQL
>Affects Versions: GraphQL Core 0.0.4
>Reporter: Evgeny Tugarev
>Assignee: Radu Cotescu
>Priority: Major
>
> The GraphQLServlet shouldn't call {{response.getWriter().flush()}} as the 
> {{JsonWriter}} used by the {{JsonSerializer}} implements {{Closeable}} and as 
> such [closes the 
> Writer|https://github.com/jdereg/json-io/blob/cf849f15460decf10a8a320390de11965bb5996b/src/main/java/com/cedarsoftware/util/io/JsonWriter.java#L2413].
> This causes a "Writer has already been closed" Exception when {{flush()}} is 
> called.
> This was fixed in commit d27f4bb7 but then this commit: 11c7e389 did undo the 
> fix as now the JsonWriter is closed when existing the try-catch block.
> I will undo it and prevent the premature closure as this is causing issues 
> like when the call to this servlet is made through a dispatcher.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (SLING-11458) Regress - "Writer has already been closed" exception in GraphQLServlet

2023-08-15 Thread Radu Cotescu (Jira)


 [ 
https://issues.apache.org/jira/browse/SLING-11458?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Radu Cotescu resolved SLING-11458.
--
  Assignee: Radu Cotescu  (was: Andreas Schaefer)
Resolution: Not A Problem

> Regress - "Writer has already been closed" exception in GraphQLServlet
> --
>
> Key: SLING-11458
> URL: https://issues.apache.org/jira/browse/SLING-11458
> Project: Sling
>  Issue Type: Bug
>  Components: GraphQL
>Affects Versions: GraphQL Core 0.0.4
>Reporter: Evgeny Tugarev
>Assignee: Radu Cotescu
>Priority: Major
>
> The GraphQLServlet shouldn't call {{response.getWriter().flush()}} as the 
> {{JsonWriter}} used by the {{JsonSerializer}} implements {{Closeable}} and as 
> such [closes the 
> Writer|https://github.com/jdereg/json-io/blob/cf849f15460decf10a8a320390de11965bb5996b/src/main/java/com/cedarsoftware/util/io/JsonWriter.java#L2413].
> This causes a "Writer has already been closed" Exception when {{flush()}} is 
> called.
> This was fixed in commit d27f4bb7 but then this commit: 11c7e389 did undo the 
> fix as now the JsonWriter is closed when existing the try-catch block.
> I will undo it and prevent the premature closure as this is causing issues 
> like when the call to this servlet is made through a dispatcher.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Assigned] (SLING-12003) The RequestDispatcher should flush the buffer on forward only if the buffer hasn't already been closed

2023-08-15 Thread Radu Cotescu (Jira)


 [ 
https://issues.apache.org/jira/browse/SLING-12003?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Radu Cotescu reassigned SLING-12003:


Assignee: Radu Cotescu

> The RequestDispatcher should flush the buffer on forward only if the buffer 
> hasn't already been closed
> --
>
> Key: SLING-12003
> URL: https://issues.apache.org/jira/browse/SLING-12003
> Project: Sling
>  Issue Type: Improvement
>  Components: Engine
>Affects Versions: Engine 2.2.10
>    Reporter: Radu Cotescu
>Assignee: Radu Cotescu
>Priority: Major
> Fix For: Engine 2.15.6
>
>
> The {{SlingRequestDispatcher#forward}} call [0] attempts to close the 
> response buffer even if this has already been closed by the servlet to which 
> the request was originally forwarded. The Servlet Specification [1] mentions 
> the following in section 9.4:
> {quote}Before the forward method of the RequestDispatcher interface returns 
> without exception, the response content must be sent and committed, and 
> closed by the servlet container, unless the request was put into the 
> asynchronous mode.
> {quote}
> As such, the {{RequestDispatcher#forward}} implementation should indeed make 
> sure the response is committed, but it's not necessarily the only one that 
> must commit the response. Jetty seems to have the same understanding [2], 
> where the close is performed only if the response hasn't already been 
> committed and the request is not async.
> [0] - 
> [https://github.com/apache/sling-org-apache-sling-engine/blob/368690a2a81fd8a121e62767fcd32b63936a65b8/src/main/java/org/apache/sling/engine/impl/request/SlingRequestDispatcher.java#L125-L128]
> [1] - 
> [https://download.oracle.com/otn-pub/jcp/servlet-3_1-fr-spec/servlet-3_1-final.pdf]
> [2] - 
> [https://github.com/eclipse/jetty.project/blob/jetty-11.0.x/jetty-server/src/main/java/org/eclipse/jetty/server/Dispatcher.java#L218]
>  
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (SLING-12003) The RequestDispatcher should flush the buffer on forward only if the buffer hasn't already been closed

2023-08-15 Thread Radu Cotescu (Jira)


[ 
https://issues.apache.org/jira/browse/SLING-12003?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17754504#comment-17754504
 ] 

Radu Cotescu commented on SLING-12003:
--

Exactly. I could submit a PR, unless you want to take this over.

> The RequestDispatcher should flush the buffer on forward only if the buffer 
> hasn't already been closed
> --
>
> Key: SLING-12003
> URL: https://issues.apache.org/jira/browse/SLING-12003
> Project: Sling
>  Issue Type: Improvement
>  Components: Engine
>Affects Versions: Engine 2.2.10
>    Reporter: Radu Cotescu
>Priority: Major
> Fix For: Engine 2.15.6
>
>
> The {{SlingRequestDispatcher#forward}} call [0] attempts to close the 
> response buffer even if this has already been closed by the servlet to which 
> the request was originally forwarded. The Servlet Specification [1] mentions 
> the following in section 9.4:
> {quote}Before the forward method of the RequestDispatcher interface returns 
> without exception, the response content must be sent and committed, and 
> closed by the servlet container, unless the request was put into the 
> asynchronous mode.
> {quote}
> As such, the {{RequestDispatcher#forward}} implementation should indeed make 
> sure the response is committed, but it's not necessarily the only one that 
> must commit the response. Jetty seems to have the same understanding [2], 
> where the close is performed only if the response hasn't already been 
> committed and the request is not async.
> [0] - 
> [https://github.com/apache/sling-org-apache-sling-engine/blob/368690a2a81fd8a121e62767fcd32b63936a65b8/src/main/java/org/apache/sling/engine/impl/request/SlingRequestDispatcher.java#L125-L128]
> [1] - 
> [https://download.oracle.com/otn-pub/jcp/servlet-3_1-fr-spec/servlet-3_1-final.pdf]
> [2] - 
> [https://github.com/eclipse/jetty.project/blob/jetty-11.0.x/jetty-server/src/main/java/org/eclipse/jetty/server/Dispatcher.java#L218]
>  
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (SLING-11458) Regress - "Writer has already been closed" exception in GraphQLServlet

2023-08-15 Thread Radu Cotescu (Jira)


[ 
https://issues.apache.org/jira/browse/SLING-11458?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17754497#comment-17754497
 ] 

Radu Cotescu commented on SLING-11458:
--

The GraphQL Servlet doesn't do anything wrong. The error mentioned in this 
issue can happen when requests are forwarded to the GraphQL servlet and the 
actual cause is described in SLING-12003.

> Regress - "Writer has already been closed" exception in GraphQLServlet
> --
>
> Key: SLING-11458
> URL: https://issues.apache.org/jira/browse/SLING-11458
> Project: Sling
>  Issue Type: Bug
>  Components: GraphQL
>Affects Versions: GraphQL Core 0.0.4
>Reporter: Evgeny Tugarev
>Assignee: Andreas Schaefer
>Priority: Major
>
> The GraphQLServlet shouldn't call {{response.getWriter().flush()}} as the 
> {{JsonWriter}} used by the {{JsonSerializer}} implements {{Closeable}} and as 
> such [closes the 
> Writer|https://github.com/jdereg/json-io/blob/cf849f15460decf10a8a320390de11965bb5996b/src/main/java/com/cedarsoftware/util/io/JsonWriter.java#L2413].
> This causes a "Writer has already been closed" Exception when {{flush()}} is 
> called.
> This was fixed in commit d27f4bb7 but then this commit: 11c7e389 did undo the 
> fix as now the JsonWriter is closed when existing the try-catch block.
> I will undo it and prevent the premature closure as this is causing issues 
> like when the call to this servlet is made through a dispatcher.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (SLING-12003) The RequestDispatcher should flush the buffer on forward only if the buffer hasn't already been closed

2023-08-15 Thread Radu Cotescu (Jira)
Radu Cotescu created SLING-12003:


 Summary: The RequestDispatcher should flush the buffer on forward 
only if the buffer hasn't already been closed
 Key: SLING-12003
 URL: https://issues.apache.org/jira/browse/SLING-12003
 Project: Sling
  Issue Type: Improvement
  Components: Engine
Affects Versions: Engine 2.2.10
Reporter: Radu Cotescu
 Fix For: Engine 2.15.6


The {{SlingRequestDispatcher#forward}} call [0] attempts to close the response 
buffer even if this has already been closed by the servlet to which the request 
was originally forwarded. The Servlet Specification [1] mentions the following 
in section 9.4:
{quote}Before the forward method of the RequestDispatcher interface returns 
without exception, the response content must be sent and committed, and closed 
by the servlet container, unless the request was put into the asynchronous mode.
{quote}
As such, the {{RequestDispatcher#forward}} implementation should indeed make 
sure the response is committed, but it's not necessarily the only one that must 
commit the response. Jetty seems to have the same understanding [2], where the 
close is performed only if the response hasn't already been committed and the 
request is not async.

[0] - 
[https://github.com/apache/sling-org-apache-sling-engine/blob/368690a2a81fd8a121e62767fcd32b63936a65b8/src/main/java/org/apache/sling/engine/impl/request/SlingRequestDispatcher.java#L125-L128]

[1] - 
[https://download.oracle.com/otn-pub/jcp/servlet-3_1-fr-spec/servlet-3_1-final.pdf]

[2] - 
[https://github.com/eclipse/jetty.project/blob/jetty-11.0.x/jetty-server/src/main/java/org/eclipse/jetty/server/Dispatcher.java#L218]

 

 



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (SLING-11458) Regress - "Writer has already been closed" exception in GraphQLServlet

2023-08-14 Thread Radu Cotescu (Jira)


[ 
https://issues.apache.org/jira/browse/SLING-11458?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17754130#comment-17754130
 ] 

Radu Cotescu commented on SLING-11458:
--

Circling back to this issue.
{quote}Is there a reason why the Servlet Writer needs to be closed?
{quote}
Yes, the GraphQL servlet is the one that controls the execution. What's the 
point of having the writer open after the GraphQL execution result has been 
sent?

> Regress - "Writer has already been closed" exception in GraphQLServlet
> --
>
> Key: SLING-11458
> URL: https://issues.apache.org/jira/browse/SLING-11458
> Project: Sling
>  Issue Type: Bug
>  Components: GraphQL
>Affects Versions: GraphQL Core 0.0.4
>Reporter: Evgeny Tugarev
>Assignee: Andreas Schaefer
>Priority: Major
>
> The GraphQLServlet shouldn't call {{response.getWriter().flush()}} as the 
> {{JsonWriter}} used by the {{JsonSerializer}} implements {{Closeable}} and as 
> such [closes the 
> Writer|https://github.com/jdereg/json-io/blob/cf849f15460decf10a8a320390de11965bb5996b/src/main/java/com/cedarsoftware/util/io/JsonWriter.java#L2413].
> This causes a "Writer has already been closed" Exception when {{flush()}} is 
> called.
> This was fixed in commit d27f4bb7 but then this commit: 11c7e389 did undo the 
> fix as now the JsonWriter is closed when existing the try-catch block.
> I will undo it and prevent the premature closure as this is causing issues 
> like when the call to this servlet is made through a dispatcher.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[VOTE] Release Apache Sling GraphQL Core 0.0.22

2023-07-20 Thread Radu Cotescu
Hi,

We solved 1 issue in this release:
https://issues.apache.org/jira/browse/SLING/fixforversion/12353082

Staging repository:
https://repository.apache.org/content/repositories/orgapachesling-2772/

You can use this UNIX script to download the release and verify the signatures:
https://gitbox.apache.org/repos/asf?p=sling-tooling-release.git;a=blob;f=check_staged_release.sh;hb=HEAD

Usage:
sh check_staged_release.sh 2772 /tmp/sling-staging

Please vote to approve this release:

  [ ] +1 Approve the release
  [ ]  0 Don't care
  [ ] -1 Don't release, because ...

This majority vote is open for at least 72 hours.

Regards,
Radu Cotescu


[jira] [Updated] (SLING-10901) Allow terminating a GraphQL query after a configured timeout

2023-07-20 Thread Radu Cotescu (Jira)


 [ 
https://issues.apache.org/jira/browse/SLING-10901?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Radu Cotescu updated SLING-10901:
-
Fix Version/s: GraphQL Core 0.0.24
   (was: GraphQL Core 0.0.22)

> Allow terminating a GraphQL query after a configured timeout
> 
>
> Key: SLING-10901
> URL: https://issues.apache.org/jira/browse/SLING-10901
> Project: Sling
>  Issue Type: Improvement
>  Components: GraphQL
>    Reporter: Radu Cotescu
>Assignee: Radu Cotescu
>Priority: Major
> Fix For: GraphQL Core 0.0.24
>
>
> Since expensive GraphQL queries could lead to a DoS attack, it would be worth 
> allowing a system administrator to configure the maximum execution time of a 
> query. When a long running query is interrupted, the returned error should be 
> transparent for the GraphQL engine, so that the client knows exactly why the 
> query failed.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (SLING-11920) Expose Object Type Names in Selected Field

2023-07-20 Thread Radu Cotescu (Jira)


 [ 
https://issues.apache.org/jira/browse/SLING-11920?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Radu Cotescu resolved SLING-11920.
--
Resolution: Fixed

> Expose Object Type Names in Selected Field
> --
>
> Key: SLING-11920
> URL: https://issues.apache.org/jira/browse/SLING-11920
> Project: Sling
>  Issue Type: Bug
>Affects Versions: GraphQL Core 0.0.20
>Reporter: Andreas Schaefer
>Assignee: Andreas Schaefer
>Priority: Critical
> Fix For: GraphQL Core 0.0.22
>
>
> Intermediary fields are not exposed as Selected Fields in Graphql-java and so 
> it was added as list of Object Type Name.
> Now for handling '... on ' we need to expose these Object Type 
> Names so that a client can deal with them.
> If we have a query where we have a inline fragments 
> ([https://graphql.org/learn/queries/#inline-fragments]) like:
> {code:java}
> {
>image {
>  ... on ImageRef {
> type{code}
> Then in the graphql-java 15.0 there is an inlined field called *ImageRef* but 
> that is now gone in 20.1. Instead we have a list of Object Type Names in a 
> field and in our example *type* would have Objet Type Names: 
> {*}["ImageRef"]{*}. So for a client to obtain the type of the inlined 
> fragments this data must be exposed.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


Re: Sling Model Exporter: Prevent serializing of a ResourceResolver

2023-06-27 Thread Radu Cotescu
Hi Jörg,

I think you would have the same problem with that model given the other
property, namely that list of resources.

Unfortunately I don’t see an easy way out other than documenting this
aspect and advising developers to avoid exposing implementation details.
Whatever you’d change in the implementation to prevent this, it would be at
least a behaviour change, potentially causing regressions similar to
https://xkcd.com/1172/.

Regards,
Radu

On Tue, 27 Jun 2023 at 18:35, Jörg Hoh 
wrote:

> HI Stefan,
>
> I agree, but:
>
> I don't have control over the code, which causes the ResourceResolver to be
> serialized. Also I cannot enforce, that such code is NOT written and
> deployed (there are too many ways to make it wrong). Also because it
> currently works, I would have to counter the "but it worked yesterday, and
> I did not change anything since then" argument, in case it fails with an
> exception like above.
>
> So I have to find another way to prevent the ResourceResolver from being
> serialized ...
>
> Jörg
>
>
>
> Am Di., 27. Juni 2023 um 13:38 Uhr schrieb Stefan Seifert
> :
>
> > well, using lombok with such a result is a bad idea. there should not be
> a
> > getResolver() method, this is an implementation detail and no getter
> should
> > be provided for it.
> >
> > so to put it another way: good that the serialization fails, so you can
> > fix the calls to not add a getResolver() method!
> >
> > stefan
> >
> > p.s. i'm not a fan of lombok in general and have no experience with it,
> > but I assume it can be configured to not expose the resolver.
> >
> > > -Original Message-
> > > From: Jörg Hoh 
> > > Sent: Tuesday, June 27, 2023 1:28 PM
> > > To: Sling Developers List 
> > > Subject: Sling Model Exporter: Prevent serializing of a
> ResourceResolver
> > >
> > > Hi,
> > >
> > > Assuming this Sling Model (using Lombok's @Getter annotation)
> > >
> > > @Getter
> > > @Model(
> > > adaptables = { SlingHttpServletRequest.class },
> > > adapters = { MyModel.class, ComponentExporter.class },
> > > resourceType = MyModel.RESOURCE_TYPE) @Exporter(
> > > name = ExporterConstants.SLING_MODEL_EXPORTER_NAME,
> > > extensions = ExporterConstants.SLING_MODEL_EXTENSION)
> > > public class MyModel implements ComponentExporter {
> > >
> > > static final String RESOURCE_TYPE = "myapp/components/mymodel";
> > >
> > > @Inject
> > > private ResourceResolver resolver;
> > >
> > > @ChildResource
> > > private List items;
> > >
> > > }
> > >
> > > When it this model is serialized via SlingModelExporter / Jackson, the
> > > resolver field is also exported via the created getResolver()) method.
> > >
> > > But serializing that does not always work:
> > >
> > > org.apache.sling.models.factory.ExportException:
> > > com.fasterxml.jackson.databind.exc.InvalidDefinitionException: No
> > > serializer found for class
> > > com.day.cq.wcm.core.impl.policies.ContentPolicyManagerImpl and no
> > > properties discovered to create BeanSerializer (to avoid exception,
> > > disable
> > > SerializationFeature.FAIL_ON_EMPTY_BEANS) (through reference chain:
> > > com.myapp.PageImpl[":items"]> [...] > com.myapp.MyModel["resolver"]
> > >
> >org.apache.sling.resourceresolver.impl.ResourceResolverImpl["propertyMa
> > > >p"]
> > >
> >java.util.HashMap["com.day.cq.wcm.core.impl.policies.ContentPolicyAdapt
> > > >erFactory.ContentPolicy"])
> > > at
> > >
> >
> org.apache.sling.models.jacksonexporter.impl.JacksonExporter.export(Jackso
> > > nExporter.java:138)
> > > [org.apache.sling.models.jacksonexporter:1.1.2]
> > > at
> > >
> >
> org.apache.sling.models.impl.ModelAdapterFactory.exportModel(ModelAdapterF
> > > actory.java:1333)
> > > [org.apache.sling.models.impl:1.5.4]
> > >
> > >
> > > I don't want to check each class I want to add to the propertyMap if it
> > > can be serialized or not; and a more serious problem is that
> serializing
> > > the resourceResolver and it's properyMap can leak a lot of information,
> > > which should be not get public.
> > >
> > > Do you see a way to prevent serialization of the ResourceResolver (and
> > > potentially other types as well) without touching the model classes?
> > >
> > > Jörg
> > >
> > > --
> > > Cheers,
> > > Jörg Hoh,
> > >
> > > https://cqdump.joerghoh.de
> > > Twitter: @joerghoh
> >
>
>
> --
> Cheers,
> Jörg Hoh,
>
> https://cqdump.joerghoh.de
> Twitter: @joerghoh
>


Re: JIRA Release notes link in vote email template

2023-06-13 Thread Radu Cotescu
+1

> On 11 Jun 2023, at 11:30, Konrad Windszus  wrote:
> 
> If everyone is fine with that I will modify the email template at 
> https://sling.apache.org/documentation/development/release-management.html#starting-the-vote
>  accordingly and the placeholder logic in 
> https://github.com/apache/sling-org-apache-sling-committer-cli/blob/f7a647acecbbc32c2c76d19e0981b3bbd1d5bcf8/src/main/java/org/apache/sling/cli/impl/release/PrepareVoteEmailCommand.java#L132
>  accordingly.



[jira] [Comment Edited] (SLING-11850) HTL: Add support for suffix manipulation in ResourceRuntimeExtension

2023-06-12 Thread Radu Cotescu (Jira)


[ 
https://issues.apache.org/jira/browse/SLING-11850?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17731675#comment-17731675
 ] 

Radu Cotescu edited comment on SLING-11850 at 6/12/23 4:14 PM:
---

We never thought about adding support for the suffix, as that doesn't influence 
which script will be picked up at rendering time, but I can see why the feature 
could be useful. However, the URI Manipulation section of the specification 
includes details about the suffix handling: 
[https://github.com/adobe/htl-spec/blob/1.4/SPECIFICATION.md#125-uri-manipulation.]
 Could you use that instead?


was (Author: radu.cotescu):
We never thought about adding support for the suffix, as that doesn't influence 
which script will be picked up at rendering time, but I can see why the feature 
could be useful.

> HTL: Add support for suffix manipulation in ResourceRuntimeExtension
> 
>
> Key: SLING-11850
> URL: https://issues.apache.org/jira/browse/SLING-11850
> Project: Sling
>  Issue Type: Improvement
>  Components: Scripting
>Affects Versions: Scripting HTL Engine 1.4.22-1.4.0
>Reporter: Robin Brouns
>Priority: Minor
>  Labels: Sightly
>
> In JSP there is the possibility to include a resource in a component and 
> adjust the suffix of the sub-request, processing this resource:
> {code:java}
>  path="my-component"  
> resourceType="application/components/other-component"  
> replaceSuffix="some-suffix"/>
> {code}
> See also: 
> [https://github.com/apache/sling-org-apache-sling-scripting-jsp-taglib/blob/7835da79f1de7c9c14fd478e9fec23f54fd6d711/src/main/java/org/apache/sling/scripting/jsp/taglib/AbstractDispatcherTagHandler.java#L89]
> But HTL lacks this option to adjust the suffix for the sub-request (by using 
> data-sly-resource): see 
> [https://github.com/apache/sling-org-apache-sling-scripting-sightly/blob/3b50f91c4f600081f0585e50dfb775c4b2856b89/src/main/java/org/apache/sling/scripting/sightly/impl/engine/extension/ResourceRuntimeExtension.java#L58]
>  
> Is there a reason why this feature wasn't added and is not supported right 
> now?
> Because we can manipulate the suffix in a URI context in HTL 
> ([https://github.com/apache/sling-org-apache-sling-scripting-sightly/blob/3b50f91c4f600081f0585e50dfb775c4b2856b89/src/main/java/org/apache/sling/scripting/sightly/impl/engine/extension/URIManipulationFilterExtension.java#L221),]
>  but just not in the Resource context.
> The _RequestDispatcher_ is already available and used in the 
> _ResourceRuntimeExtension_ so it could be added.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (SLING-11850) HTL: Add support for suffix manipulation in ResourceRuntimeExtension

2023-06-12 Thread Radu Cotescu (Jira)


[ 
https://issues.apache.org/jira/browse/SLING-11850?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17731675#comment-17731675
 ] 

Radu Cotescu commented on SLING-11850:
--

We never thought about adding support for the suffix, as that doesn't influence 
which script will be picked up at rendering time, but I can see why the feature 
could be useful.

> HTL: Add support for suffix manipulation in ResourceRuntimeExtension
> 
>
> Key: SLING-11850
> URL: https://issues.apache.org/jira/browse/SLING-11850
> Project: Sling
>  Issue Type: Improvement
>  Components: Scripting
>Affects Versions: Scripting HTL Engine 1.4.22-1.4.0
>Reporter: Robin Brouns
>Priority: Minor
>  Labels: Sightly
>
> In JSP there is the possibility to include a resource in a component and 
> adjust the suffix of the sub-request, processing this resource:
> {code:java}
>  path="my-component"  
> resourceType="application/components/other-component"  
> replaceSuffix="some-suffix"/>
> {code}
> See also: 
> [https://github.com/apache/sling-org-apache-sling-scripting-jsp-taglib/blob/7835da79f1de7c9c14fd478e9fec23f54fd6d711/src/main/java/org/apache/sling/scripting/jsp/taglib/AbstractDispatcherTagHandler.java#L89]
> But HTL lacks this option to adjust the suffix for the sub-request (by using 
> data-sly-resource): see 
> [https://github.com/apache/sling-org-apache-sling-scripting-sightly/blob/3b50f91c4f600081f0585e50dfb775c4b2856b89/src/main/java/org/apache/sling/scripting/sightly/impl/engine/extension/ResourceRuntimeExtension.java#L58]
>  
> Is there a reason why this feature wasn't added and is not supported right 
> now?
> Because we can manipulate the suffix in a URI context in HTL 
> ([https://github.com/apache/sling-org-apache-sling-scripting-sightly/blob/3b50f91c4f600081f0585e50dfb775c4b2856b89/src/main/java/org/apache/sling/scripting/sightly/impl/engine/extension/URIManipulationFilterExtension.java#L221),]
>  but just not in the Resource context.
> The _RequestDispatcher_ is already available and used in the 
> _ResourceRuntimeExtension_ so it could be added.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Closed] (SLING-11852) Make the ThreadsafeMockAdapterManagerWrapper use an InheritableThreadLocal

2023-05-02 Thread Radu Cotescu (Jira)


 [ 
https://issues.apache.org/jira/browse/SLING-11852?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Radu Cotescu closed SLING-11852.


> Make the ThreadsafeMockAdapterManagerWrapper use an InheritableThreadLocal
> --
>
> Key: SLING-11852
> URL: https://issues.apache.org/jira/browse/SLING-11852
> Project: Sling
>  Issue Type: Improvement
>  Components: Testing
>    Reporter: Radu Cotescu
>Assignee: Radu Cotescu
>Priority: Major
> Fix For: Testing Sling Mock 3.4.8
>
>
> For scenarios where the mocked OSGi framework executes calls in other threads 
> than the test thread (e.g. servlets under test in Jetty), the only way to 
> pass the test's {{AdapterManager}} is to directly call 
> {{{}SlingAdaptable#setAdapterManager{}}}. However, this will affect tests 
> starting after this initial call.
> A better solution would be to make the 
> {{org.apache.sling.testing.mock.sling.ThreadsafeMockAdapterManagerWrapper#THREAD_LOCAL}}
>  an {{{}InheritableThreadLocal{}}}. This would allow the tests to still be 
> executable in parallel, but threads started from a test thread (e.g. the 
> servlets under test in Jetty) could inherit the thread local context.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[RESULT][VOTE] Release Apache Sling Testing Sling Mock 3.4.8

2023-05-02 Thread Radu Cotescu
Hi,

The vote has passed with the following result:

+1 (binding): Eric Norman, Stefan Seifert, Radu Cotescu
+1 (non-binding): none

I will copy this release to the Sling dist directory and
promote the artifacts to the central Maven repository.

Regards,
Radu Cotescu


Re: [VOTE] Release Apache Sling Testing Sling Mock 3.4.8

2023-05-02 Thread Radu Cotescu
+1

> On 28 Apr 2023, at 16:12, Radu Cotescu  wrote:
> 
> Please vote to approve this release:
> 
>  [ ] +1 Approve the release
>  [ ]  0 Don't care
>  [ ] -1 Don't release, because ...



[VOTE] Release Apache Sling Testing Sling Mock 3.4.8

2023-04-28 Thread Radu Cotescu
Hi,

We solved 1 issue in this release:
https://issues.apache.org/jira/projects/SLING/versions/12353178

Staging repository:
https://repository.apache.org/content/repositories/orgapachesling-2739

You can use this UNIX script to download the release and verify the signatures:
https://gitbox.apache.org/repos/asf?p=sling-tooling-release.git;a=blob;f=check_staged_release.sh;hb=HEAD

Usage:
sh check_staged_release.sh 2739 /tmp/sling-staging

Please vote to approve this release:

 [ ] +1 Approve the release
 [ ]  0 Don't care
 [ ] -1 Don't release, because ...

This majority vote is open for at least 72 hours.

Regards,
Radu Cotescu

smime.p7s
Description: S/MIME cryptographic signature


[jira] [Resolved] (SLING-11852) Make the ThreadsafeMockAdapterManagerWrapper use an InheritableThreadLocal

2023-04-28 Thread Radu Cotescu (Jira)


 [ 
https://issues.apache.org/jira/browse/SLING-11852?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Radu Cotescu resolved SLING-11852.
--
Resolution: Fixed

> Make the ThreadsafeMockAdapterManagerWrapper use an InheritableThreadLocal
> --
>
> Key: SLING-11852
> URL: https://issues.apache.org/jira/browse/SLING-11852
> Project: Sling
>  Issue Type: Improvement
>  Components: Testing
>    Reporter: Radu Cotescu
>Assignee: Radu Cotescu
>Priority: Major
> Fix For: Testing Sling Mock 3.4.8
>
>
> For scenarios where the mocked OSGi framework executes calls in other threads 
> than the test thread (e.g. servlets under test in Jetty), the only way to 
> pass the test's {{AdapterManager}} is to directly call 
> {{{}SlingAdaptable#setAdapterManager{}}}. However, this will affect tests 
> starting after this initial call.
> A better solution would be to make the 
> {{org.apache.sling.testing.mock.sling.ThreadsafeMockAdapterManagerWrapper#THREAD_LOCAL}}
>  an {{{}InheritableThreadLocal{}}}. This would allow the tests to still be 
> executable in parallel, but threads started from a test thread (e.g. the 
> servlets under test in Jetty) could inherit the thread local context.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


Re: [VOTE] Release Apache Sling Servlet Helpers 1.4.6, Testing JCR Mock 1.6.8, Testing Sling Mock 3.4.6

2023-04-26 Thread Radu Cotescu
+1

> On 24 Apr 2023, at 02:28, Eric Norman  wrote:
> 
> Please vote to approve this release:
> 
>  [ ] +1 Approve the release
>  [ ]  0 Don't care
>  [ ] -1 Don't release, because ...



[jira] [Assigned] (SLING-11852) Make the ThreadsafeMockAdapterManagerWrapper use an InheritableThreadLocal

2023-04-26 Thread Radu Cotescu (Jira)


 [ 
https://issues.apache.org/jira/browse/SLING-11852?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Radu Cotescu reassigned SLING-11852:


Assignee: Radu Cotescu

> Make the ThreadsafeMockAdapterManagerWrapper use an InheritableThreadLocal
> --
>
> Key: SLING-11852
> URL: https://issues.apache.org/jira/browse/SLING-11852
> Project: Sling
>  Issue Type: Improvement
>  Components: Testing
>    Reporter: Radu Cotescu
>Assignee: Radu Cotescu
>Priority: Major
> Fix For: Testing Sling Mock 3.4.8
>
>
> For scenarios where the mocked OSGi framework executes calls in other threads 
> than the test thread (e.g. servlets under test in Jetty), the only way to 
> pass the test's {{AdapterManager}} is to directly call 
> {{{}SlingAdaptable#setAdapterManager{}}}. However, this will affect tests 
> starting after this initial call.
> A better solution would be to make the 
> {{org.apache.sling.testing.mock.sling.ThreadsafeMockAdapterManagerWrapper#THREAD_LOCAL}}
>  an {{{}InheritableThreadLocal{}}}. This would allow the tests to still be 
> executable in parallel, but threads started from a test thread (e.g. the 
> servlets under test in Jetty) could inherit the thread local context.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Created] (SLING-11852) Make the ThreadsafeMockAdapterManagerWrapper use an InheritableThreadLocal

2023-04-26 Thread Radu Cotescu (Jira)
Radu Cotescu created SLING-11852:


 Summary: Make the ThreadsafeMockAdapterManagerWrapper use an 
InheritableThreadLocal
 Key: SLING-11852
 URL: https://issues.apache.org/jira/browse/SLING-11852
 Project: Sling
  Issue Type: Improvement
  Components: Testing
Reporter: Radu Cotescu
 Fix For: Testing Sling Mock 3.4.8


For scenarios where the mocked OSGi framework executes calls in other threads 
than the test thread (e.g. servlets under test in Jetty), the only way to pass 
the test's {{AdapterManager}} is to directly call 
{{{}SlingAdaptable#setAdapterManager{}}}. However, this will affect tests 
starting after this initial call.

A better solution would be to make the 
{{org.apache.sling.testing.mock.sling.ThreadsafeMockAdapterManagerWrapper#THREAD_LOCAL}}
 an {{{}InheritableThreadLocal{}}}. This would allow the tests to still be 
executable in parallel, but threads started from a test thread (e.g. the 
servlets under test in Jetty) could inherit the thread local context.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


Re: [VOTE] Release Apache Sling JCR Base 3.1.14

2023-04-04 Thread Radu Cotescu
+1

> On 4 Apr 2023, at 16:04, Angela Schreiber  wrote:
> 
> Please vote to approve this release:
> 
>  [ ] +1 Approve the release
>  [ ]  0 Don't care
>  [ ] -1 Don't release, because ...
> 
> This majority vote is open for at least 72 hours.



[jira] [Updated] (SLING-8972) Self-explanatory message when the module name and Jira version name do not match

2023-04-03 Thread Radu Cotescu (Jira)


 [ 
https://issues.apache.org/jira/browse/SLING-8972?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Radu Cotescu updated SLING-8972:

Fix Version/s: Committer CLI 1.0.2
   (was: Committer CLI 1.0.0)

> Self-explanatory message when the module name and Jira version name do not 
> match
> 
>
> Key: SLING-8972
> URL: https://issues.apache.org/jira/browse/SLING-8972
> Project: Sling
>  Issue Type: Improvement
>  Components: Build and Source Control
>Reporter: Robert Munteanu
>Priority: Major
> Fix For: Committer CLI 1.0.2
>
>
> When the committer CLI does not find a matching Jira release for the module 
> name it fails with slightly cryptic error message (see below). We should 
> explain to the user what is wrong, e.g. "Unable to match release with a Jira 
> version - did not find a Jira version matching ${MODULE_NAME} ${VERSION}"
> {noformat}java.lang.IllegalArgumentException: No version found with name 
> Default 
> POST Servlets 2.3.34
>  at 
> org.apache.sling.cli.impl.jira.VersionClient.lambda$find$1(VersionClient.java:84)
>  at java.base/java.util.Optional.orElseThrow(Unknown Source)
>  at 
> org.apache.sling.cli.impl.jira.VersionClient.find(VersionClient.java:84)
>  at 
> org.apache.sling.cli.impl.release.PrepareVoteEmailCommand.lambda$run$0(PrepareVoteEmailCommand.java:116)
>  at 
> java.base/java.util.stream.ReferencePipeline$3$1.accept(Unknown Source)
>  at java.base/java.util.Iterator.forEachRemaining(Unknown Source)
>  at 
> java.base/java.util.Spliterators$IteratorSpliterator.forEachRemaining(Unknown 
> Source)
>  at java.base/java.util.stream.AbstractPipeline.copyInto(Unknown 
> Source)
>  at 
> java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(Unknown Source)
>  at 
> java.base/java.util.stream.ReduceOps$ReduceOp.evaluateSequential(Unknown 
> Source)
>  at java.base/java.util.stream.AbstractPipeline.evaluate(Unknown 
> Source)
>  at java.base/java.util.stream.ReferencePipeline.collect(Unknown 
> Source)
>  at 
> org.apache.sling.cli.impl.release.PrepareVoteEmailCommand.run(PrepareVoteEmailCommand.java:117)
>  at picocli.CommandLine.executeUserObject(CommandLine.java:1687)
>  at picocli.CommandLine.access$900(CommandLine.java:146)
>  at picocli.CommandLine$RunLast.handle(CommandLine.java:2059)
>  at picocli.CommandLine$RunLast.handle(CommandLine.java:2026)
>  at 
> picocli.CommandLine$AbstractParseResultHandler.execute(CommandLine.java:1893)
>  at picocli.CommandLine.execute(CommandLine.java:1822)
>  at 
> org.apache.sling.cli.impl.CommandProcessor.runCommand(CommandProcessor.java:110)
>  at 
> org.apache.sling.cli.impl.ExecutionTrigger.lambda$activate$0(ExecutionTrigger.java:33)
>  at java.base/java.lang.Thread.run(Unknown Source)
> {noformat}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (SLING-8338) Create sub-command to manage the Nexus stage repository release when promoting a release

2023-04-03 Thread Radu Cotescu (Jira)


 [ 
https://issues.apache.org/jira/browse/SLING-8338?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Radu Cotescu updated SLING-8338:

Fix Version/s: (was: Committer CLI 1.0.0)
   Committer CLI 1.0.2

> Create sub-command to manage the Nexus stage repository release when 
> promoting a release
> 
>
> Key: SLING-8338
> URL: https://issues.apache.org/jira/browse/SLING-8338
> Project: Sling
>  Issue Type: Improvement
>  Components: Tooling
>Reporter: Robert Munteanu
>Priority: Major
> Fix For: Committer CLI 1.0.2
>
>
> We should add a new command {{release nexus-release}} which takes care of 
> releasing the staged artifacts from Nexus for a new release.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (SLING-10355) Update the Commiter CLI to check SHA-512 signatures for the source release

2023-04-03 Thread Radu Cotescu (Jira)


 [ 
https://issues.apache.org/jira/browse/SLING-10355?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Radu Cotescu updated SLING-10355:
-
Fix Version/s: Committer CLI 1.0.2
   (was: Committer CLI 1.0.0)

> Update the Commiter CLI to check SHA-512 signatures for the source release
> --
>
> Key: SLING-10355
> URL: https://issues.apache.org/jira/browse/SLING-10355
> Project: Sling
>  Issue Type: Improvement
>  Components: Tooling
>Reporter: Robert Munteanu
>Priority: Major
> Fix For: Committer CLI 1.0.2
>
>




--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (SLING-8699) Create sub-command to moving artifacts to dist.apache.org

2023-04-03 Thread Radu Cotescu (Jira)


 [ 
https://issues.apache.org/jira/browse/SLING-8699?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Radu Cotescu updated SLING-8699:

Fix Version/s: Committer CLI 1.0.2
   (was: Committer CLI 1.0.0)

> Create sub-command to moving artifacts to dist.apache.org
> -
>
> Key: SLING-8699
> URL: https://issues.apache.org/jira/browse/SLING-8699
> Project: Sling
>  Issue Type: New Feature
>  Components: Tooling
>Reporter: Robert Munteanu
>Priority: Major
> Fix For: Committer CLI 1.0.2
>
>
> With SLING-8684 we now have the pieces in place to automate promoting 
> artifacts to dist.apache.org.
> This sub-command will perform the following actions:
> - compute SHA-256 checksums and adds them to the files to be deployed
> - not include MD5 checksums
> - use the Java API equivalent of {{svn remove https://dist.apache.org/ ...}} 
> to remove all old artifacts of a release
> - use the Java API equivalent of {{svn import . https://dist.apache.org/ 
> ...}} to import local set of artifacts to SVN



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (SLING-8395) Investigate automatically issuing GitHub PRs with the Committer CLI

2023-04-03 Thread Radu Cotescu (Jira)


 [ 
https://issues.apache.org/jira/browse/SLING-8395?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Radu Cotescu updated SLING-8395:

Fix Version/s: Committer CLI 1.0.2
   (was: Committer CLI 1.0.0)

> Investigate automatically issuing GitHub PRs with the Committer CLI
> ---
>
> Key: SLING-8395
> URL: https://issues.apache.org/jira/browse/SLING-8395
> Project: Sling
>  Issue Type: Improvement
>  Components: Tooling
>Reporter: Robert Munteanu
>Priority: Major
> Fix For: Committer CLI 1.0.2
>
>
> Some actions ( site update, starter update ) would require pushing code. 
> Ideally we would make these part a bot which issues pull requests which would 
> then be merged by a Sling Committer.
> Major question is - how do we host this? Is Jenkins enough or do we need to 
> handle our own server (which would be a major disadvantage ). 



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (SLING-9301) CI validator does not take into account additional artifacts

2023-04-03 Thread Radu Cotescu (Jira)


 [ 
https://issues.apache.org/jira/browse/SLING-9301?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Radu Cotescu updated SLING-9301:

Fix Version/s: Committer CLI 1.0.2
   (was: Committer CLI 1.0.0)

> CI validator does not take into account additional artifacts
> 
>
> Key: SLING-9301
> URL: https://issues.apache.org/jira/browse/SLING-9301
> Project: Sling
>  Issue Type: Bug
>  Components: Build and Source Control
>Reporter: Robert Munteanu
>Priority: Major
> Fix For: Committer CLI 1.0.2
>
>
> When verifying a release that stages multiple artifacts, the CI status is 
> printed for only one of them
> {noformat} $ ./run.sh release verify -r 2228
> org.apache.sling.repoinit.parser-1.6.2-source-release.zip
> GPG: signed by Bertrand Delacretaz (CODE SIGNING KEY) 
>  with key (id=0x77B6B69A9E4DCC6B; 
> fingerprint=5EFF256585AC5FB607F6D46A77B6B69A9E4DCC6B)
> SHA-1: VALID (c2cf2ecfbdd9ae9de1c34b5c101a3cca5e89ee77)
> MD-5: VALID (cf819d39586ed9a7f2ab27b712354347)
> org.apache.sling.repoinit.parser-1.6.2.pom
> GPG: signed by Bertrand Delacretaz (CODE SIGNING KEY) 
>  with key (id=0x77B6B69A9E4DCC6B; 
> fingerprint=5EFF256585AC5FB607F6D46A77B6B69A9E4DCC6B)
> SHA-1: VALID (a50ec0a3cd9d4cc351851e1fe2f0eb2fc4417263)
> MD-5: VALID (3fc5989f52b6d94a932c4e2ed1092b6e)
> org.apache.sling.jcr.repoinit-1.1.24-javadoc.jar
> GPG: signed by Bertrand Delacretaz (CODE SIGNING KEY) 
>  with key (id=0x77B6B69A9E4DCC6B; 
> fingerprint=5EFF256585AC5FB607F6D46A77B6B69A9E4DCC6B)
> SHA-1: VALID (fe2eac7e58c88a2e1cb94df8890dd28aa9139fb8)
> MD-5: VALID (6557cc5774264eaf3b6b6a0cace03e29)
> org.apache.sling.jcr.repoinit-1.1.24-sources.jar
> GPG: signed by Bertrand Delacretaz (CODE SIGNING KEY) 
>  with key (id=0x77B6B69A9E4DCC6B; 
> fingerprint=5EFF256585AC5FB607F6D46A77B6B69A9E4DCC6B)
> SHA-1: VALID (fc656cbb87cc4de9ed0a75b0832f5af98b86ec77)
> MD-5: VALID (2ddc5461e6a2dd9e7cc265055e857fbc)
> org.apache.sling.jcr.repoinit-1.1.24-source-release.zip
> GPG: signed by Bertrand Delacretaz (CODE SIGNING KEY) 
>  with key (id=0x77B6B69A9E4DCC6B; 
> fingerprint=5EFF256585AC5FB607F6D46A77B6B69A9E4DCC6B)
> SHA-1: VALID (8bbcefb958396b0822e25c49cab0ab3cf8c36afa)
> MD-5: VALID (b8ff72fe65527861702117d70707)
> org.apache.sling.repoinit.parser-1.6.2.jar
> GPG: signed by Bertrand Delacretaz (CODE SIGNING KEY) 
>  with key (id=0x77B6B69A9E4DCC6B; 
> fingerprint=5EFF256585AC5FB607F6D46A77B6B69A9E4DCC6B)
> SHA-1: VALID (54442784c12cb4fe5ae78a6c07d4833a4b814ebe)
> MD-5: VALID (1136e820a52c86e5e1621e9781a5302b)
> org.apache.sling.repoinit.parser-1.6.2-javadoc.jar
> GPG: signed by Bertrand Delacretaz (CODE SIGNING KEY) 
>  with key (id=0x77B6B69A9E4DCC6B; 
> fingerprint=5EFF256585AC5FB607F6D46A77B6B69A9E4DCC6B)
> SHA-1: VALID (0aa8c275106c86d0717ff4a1b1255a6d39170603)
> MD-5: VALID (8c94789be7d15126f786942492d5cfd6)
> org.apache.sling.jcr.repoinit-1.1.24.jar
> GPG: signed by Bertrand Delacretaz (CODE SIGNING KEY) 
>  with key (id=0x77B6B69A9E4DCC6B; 
> fingerprint=5EFF256585AC5FB607F6D46A77B6B69A9E4DCC6B)
> SHA-1: VALID (134f7c334d22f8187c6452762258a071ef454e77)
> MD-5: VALID (e4e73aff04aff5b49805229a03f9358b)
> org.apache.sling.jcr.repoinit-1.1.24.pom
> GPG: signed by Bertrand Delacretaz (CODE SIGNING KEY) 
>  with key (id=0x77B6B69A9E4DCC6B; 
> fingerprint=5EFF256585AC5FB607F6D46A77B6B69A9E4DCC6B)
> SHA-1: VALID (255485068f952d548a24faa5766e918d4680f42c)
> MD-5: VALID (9765d12d2acd46073a0edbcf6bb769f4)
> org.apache.sling.repoinit.parser-1.6.2-sources.jar
> GPG: signed by Bertrand Delacretaz (CODE SIGNING KEY) 
>  with key (id=0x77B6B69A9E4DCC6B; 
> fingerprint=5EFF256585AC5FB607F6D46A77B6B69A9E4DCC6B)
> SHA-1: VALID (bcde5285e0389198a170b0ececf022cad0cf9216)
> MD-5: VALID (15632480b50dd9f3421834d2bfafda39)
> CI Status: INVALID: 
>   continuous-integration/jenkins/branch
>   State: error
>   Description: This commit cannot be built
>   See: 
> https://builds.apache.org/job/Sling/job/sling-org-apache-sling-jcr-repoinit/job/master/311/display/redirect
> {noformat}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (SLING-8393) Create sub-command to update the Sling website when a release is made

2023-04-03 Thread Radu Cotescu (Jira)


 [ 
https://issues.apache.org/jira/browse/SLING-8393?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Radu Cotescu updated SLING-8393:

Fix Version/s: Committer CLI 1.0.2
   (was: Committer CLI 1.0.0)

> Create sub-command to update the Sling website when a release is made
> -
>
> Key: SLING-8393
> URL: https://issues.apache.org/jira/browse/SLING-8393
> Project: Sling
>  Issue Type: Improvement
>  Components: Tooling
>Reporter: Robert Munteanu
>Priority: Major
> Fix For: Committer CLI 1.0.2
>
>
> The current `release update-local-site` command generates a git diff when 
> ran. It would be useful to have the change committed and pushed to a remote 
> branch, ideally creating a PR for review.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (SLING-9083) Add support for authenticated requests when checking a release's build status

2023-04-03 Thread Radu Cotescu (Jira)


 [ 
https://issues.apache.org/jira/browse/SLING-9083?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Radu Cotescu updated SLING-9083:

Fix Version/s: Committer CLI 1.0.2
   (was: Committer CLI 1.0.0)

> Add support for authenticated requests when checking a release's build status
> -
>
> Key: SLING-9083
> URL: https://issues.apache.org/jira/browse/SLING-9083
> Project: Sling
>  Issue Type: Improvement
>  Components: Tooling
>    Reporter: Radu Cotescu
>Priority: Major
> Fix For: Committer CLI 1.0.2
>
>
> The {{org.apache.sling.cli.impl.ci.CIStatusValidator}} checks if a release's 
> build status is valid, when verifying a release. Depending on the network 
> from which the requests originate, GitHub might enforce its API rate 
> limiting, leading to a failure in the validator - the {{success}} JSON key is 
> missing from the response. On one hand, the validator's JSON parsing could be 
> improved to not fail if this key is missing. However, if a request is 
> authenticated (usually with a GitHub access token), the rate limiting is not 
> enforced (or better said the limit is so high that it should not be reached).
> This issue should implement both suggestions from above:
> # make the JSON parsing more resilient
> # optionally use a GitHub access token, if provided in the environment, to 
> perform authenticated requests against the GitHub API



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (SLING-8394) Create sub-command to update the Sling starter when a release is made

2023-04-03 Thread Radu Cotescu (Jira)


 [ 
https://issues.apache.org/jira/browse/SLING-8394?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Radu Cotescu updated SLING-8394:

Fix Version/s: Committer CLI 1.0.2
   (was: Committer CLI 1.0.0)

> Create sub-command to update the Sling starter when a release is made
> -
>
> Key: SLING-8394
> URL: https://issues.apache.org/jira/browse/SLING-8394
> Project: Sling
>  Issue Type: Improvement
>  Components: Tooling
>Reporter: Robert Munteanu
>Priority: Major
> Fix For: Committer CLI 1.0.2
>
>
> The command should update the provisioning model files and then issue a pull 
> request against the starter repo.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Updated] (SLING-8808) Committer CLI does not record all votes from PMC members as binding

2023-04-03 Thread Radu Cotescu (Jira)


 [ 
https://issues.apache.org/jira/browse/SLING-8808?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Radu Cotescu updated SLING-8808:

Fix Version/s: Committer CLI 1.0.2
   (was: Committer CLI 1.0.0)

> Committer CLI does not record all votes from PMC members as binding
> ---
>
> Key: SLING-8808
> URL: https://issues.apache.org/jira/browse/SLING-8808
> Project: Sling
>  Issue Type: Bug
>  Components: Build and Source Control
>Reporter: Robert Munteanu
>Priority: Critical
> Fix For: Committer CLI 1.0.2
>
>
> {noformat}$ ./run.sh release tally-votes -r 2146
> The following email would be sent from your @apache.org address (see the 
> "From:" header):
> From: Robert Munteanu 
> To: "Sling Developers List" 
> Reply-To: "Sling Developers List" 
> Date: Mon, 28 Oct 2019 09:32:28 +
> Subject: [RESULT] [VOTE] Release Apache Sling Commons Threads 3.2.20
> Hi,
> The vote has passed with the following result:
> +1 (binding): Robert Munteanu, Carsten Ziegeler, Dan Klco, Radu Cotescu
> +1 (non-binding): David Bosschaert
> I will copy this release to the Sling dist directory and
> promote the artifacts to the central Maven repository.
> Regards,
> Robert Munteanu
> {noformat}
> David's vote is definitely binding.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (SLING-11097) Committers CLI CI Fails on Tags

2023-04-03 Thread Radu Cotescu (Jira)


 [ 
https://issues.apache.org/jira/browse/SLING-11097?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Radu Cotescu resolved SLING-11097.
--
Resolution: Fixed

> Committers CLI CI Fails on Tags
> ---
>
> Key: SLING-11097
> URL: https://issues.apache.org/jira/browse/SLING-11097
> Project: Sling
>  Issue Type: Improvement
>Reporter: Dan Klco
>Assignee: Dan Klco
>Priority: Major
> Fix For: Committer CLI 1.0.0
>
>
> Currently for most (if not all) releases the Sling Committer CLI fails to 
> validate the release because the CI check fails. 
> This is because our Jenkins jobs do not execute on tags and therefore the CI 
> check doesn't see a success code for the tag commit's build status.
> It seems not trivial to add builds on tags to Jenkins (though someone who 
> knows Jenkins DSL may know better than I) but either way it would seem like a 
> good idea to check the parent commit's build status if the tag commit does 
> not have a build status.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Resolved] (SLING-11816) Transliterated project member names break the vote counting algorithm

2023-04-03 Thread Radu Cotescu (Jira)


 [ 
https://issues.apache.org/jira/browse/SLING-11816?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Radu Cotescu resolved SLING-11816.
--
Resolution: Fixed

> Transliterated project member names break the vote counting algorithm
> -
>
> Key: SLING-11816
> URL: https://issues.apache.org/jira/browse/SLING-11816
> Project: Sling
>  Issue Type: Bug
>  Components: Tooling
>    Reporter: Radu Cotescu
>Assignee: Radu Cotescu
>Priority: Major
> Fix For: Committer CLI 1.0.0
>
>
> If a project member provides their name using transliterated forms between 
> Whimsy and their email address, the CLI tool won't be able to correctly 
> record their names when it comes to counting the votes in a release tally 
> email.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


Re: [VOTE] Release Apache Sling GraphQL Core 0.0.20

2023-04-03 Thread Radu Cotescu
+1

> On 31 Mar 2023, at 22:51, Andreas Schaefer  wrote:
> 
> Please vote to approve this release:
> 
> [ ] +1 Approve the release
> [ ]  0 Don't care
> [ ] -1 Don't release, because ...
> 
> This majority vote is open for at least 72 hours.



[jira] [Created] (SLING-11816) Transliterated project member names break the vote counting algorithm

2023-03-31 Thread Radu Cotescu (Jira)
Radu Cotescu created SLING-11816:


 Summary: Transliterated project member names break the vote 
counting algorithm
 Key: SLING-11816
 URL: https://issues.apache.org/jira/browse/SLING-11816
 Project: Sling
  Issue Type: Bug
  Components: Tooling
Reporter: Radu Cotescu
Assignee: Radu Cotescu
 Fix For: Committer CLI 1.0.0


If a project member provides their name using transliterated forms between 
Whimsy and their email address, the CLI tool won't be able to correctly record 
their names when it comes to counting the votes in a release tally email.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


Re: [VOTE] Release Apache Sling Models API 1.5.0, Models Implementation 1.6.0

2023-03-31 Thread Radu Cotescu
+1

> On 28 Mar 2023, at 13:51, Stefan Seifert  
> wrote:
> 
> Please vote to approve this release:
> 
>  [ ] +1 Approve the release
>  [ ]  0 Don't care
>  [ ] -1 Don't release, because ...
> 
> This majority vote is open for at least 72 hours.



Re: [VOTE] Release Apache Sling Models API 1.5.0, Models Implementation 1.6.0

2023-03-31 Thread Radu Cotescu
Ah, I missed the other thread. Sorry. :)


  1   2   3   4   5   6   7   8   9   10   >