[ https://issues.apache.org/jira/browse/MRESOLVER-387?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17749647#comment-17749647 ]
ASF GitHub Bot commented on MRESOLVER-387: ------------------------------------------ michael-o commented on code in PR #319: URL: https://github.com/apache/maven-resolver/pull/319#discussion_r1280505936 ########## maven-resolver-supplier/README.md: ########## @@ -0,0 +1,52 @@ +<!--- + Licensed to the Apache Software Foundation (ASF) under one or more + contributor license agreements. See the NOTICE file distributed with + this work for additional information regarding copyright ownership. + The ASF licenses this file to You under the Apache License, Version 2.0 + (the "License"); you may not use this file except in compliance with + the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> + +# Maven Resolver Supplier + +This simple module serves the purpose to "bootstrap" resolver when there is no desire to use Eclipse SISU. It provides +one simple class `org.eclipse.aether.supplier.RepositorySystemSupplier` that implements `Supplier<RepositorySystem>` +and supplies ready-to-use `RepositorySystem` instances. + +The supplier class is written in such way, to allow easy customization if needed: just extend the class and override +method one need (all methods are protected). + +Consumer/User of this module **must provide SLF4J backend**. Resolver uses `slf4j-api` for logging purposes, but this +module does NOT provide any backend for it. It is the consumer/user obligation to provide one at runtime. + +By default, "full resolver experience" is provided: +* for connector, the connector-basic is provided +* for transport the two transport-file and transport-http implementations are provided. If Wagon is needed, add + transport-wagon as dependency, and customize `RepositorySystemSupplier` to include it. This makes it available, but + NOT used yet! To use it, you still need to configure resolver to favor Wagon over native HTTP. + +# Resolver configuration + +The supplier will provide only a "vanilla" instance. To configure resolver, use session user (or +configuration) properties, when constructing session. All the configuration options are available as +[listed here](https://maven.apache.org/resolver/configuration.html). + +# Extending Resolver + +Extending supplied resolver is simple, and basically requires same 3 step for whatever extra you want to include Review Comment: three steps ########## maven-resolver-supplier/README.md: ########## @@ -0,0 +1,52 @@ +<!--- + Licensed to the Apache Software Foundation (ASF) under one or more + contributor license agreements. See the NOTICE file distributed with + this work for additional information regarding copyright ownership. + The ASF licenses this file to You under the Apache License, Version 2.0 + (the "License"); you may not use this file except in compliance with + the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> + +# Maven Resolver Supplier + +This simple module serves the purpose to "bootstrap" resolver when there is no desire to use Eclipse SISU. It provides +one simple class `org.eclipse.aether.supplier.RepositorySystemSupplier` that implements `Supplier<RepositorySystem>` +and supplies ready-to-use `RepositorySystem` instances. + +The supplier class is written in such way, to allow easy customization if needed: just extend the class and override +method one need (all methods are protected). + +Consumer/User of this module **must provide SLF4J backend**. Resolver uses `slf4j-api` for logging purposes, but this +module does NOT provide any backend for it. It is the consumer/user obligation to provide one at runtime. + +By default, "full resolver experience" is provided: +* for connector, the connector-basic is provided +* for transport the two transport-file and transport-http implementations are provided. If Wagon is needed, add + transport-wagon as dependency, and customize `RepositorySystemSupplier` to include it. This makes it available, but + NOT used yet! To use it, you still need to configure resolver to favor Wagon over native HTTP. + +# Resolver configuration + +The supplier will provide only a "vanilla" instance. To configure resolver, use session user (or +configuration) properties, when constructing session. All the configuration options are available as +[listed here](https://maven.apache.org/resolver/configuration.html). + +# Extending Resolver + +Extending supplied resolver is simple, and basically requires same 3 step for whatever extra you want to include +(like Wagon transport, distributed locking, etc). + +First, you need to included needed module (with transitive deps) to your dependencies. Review Comment: include ########## maven-resolver-supplier/README.md: ########## @@ -0,0 +1,52 @@ +<!--- + Licensed to the Apache Software Foundation (ASF) under one or more + contributor license agreements. See the NOTICE file distributed with + this work for additional information regarding copyright ownership. + The ASF licenses this file to You under the Apache License, Version 2.0 + (the "License"); you may not use this file except in compliance with + the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> + +# Maven Resolver Supplier + +This simple module serves the purpose to "bootstrap" resolver when there is no desire to use Eclipse SISU. It provides +one simple class `org.eclipse.aether.supplier.RepositorySystemSupplier` that implements `Supplier<RepositorySystem>` +and supplies ready-to-use `RepositorySystem` instances. + +The supplier class is written in such way, to allow easy customization if needed: just extend the class and override +method one need (all methods are protected). + +Consumer/User of this module **must provide SLF4J backend**. Resolver uses `slf4j-api` for logging purposes, but this +module does NOT provide any backend for it. It is the consumer/user obligation to provide one at runtime. + +By default, "full resolver experience" is provided: +* for connector, the connector-basic is provided +* for transport the two transport-file and transport-http implementations are provided. If Wagon is needed, add + transport-wagon as dependency, and customize `RepositorySystemSupplier` to include it. This makes it available, but + NOT used yet! To use it, you still need to configure resolver to favor Wagon over native HTTP. + +# Resolver configuration + +The supplier will provide only a "vanilla" instance. To configure resolver, use session user (or +configuration) properties, when constructing session. All the configuration options are available as +[listed here](https://maven.apache.org/resolver/configuration.html). + +# Extending Resolver + +Extending supplied resolver is simple, and basically requires same 3 step for whatever extra you want to include +(like Wagon transport, distributed locking, etc). + +First, you need to included needed module (with transitive deps) to your dependencies. + +Second, you need to customize `RepositorySystemSupplier` to make new components (WagonTransporterFactory, or Review Comment: WagonTransporterFactory in backticks ########## maven-resolver-supplier/README.md: ########## @@ -0,0 +1,52 @@ +<!--- + Licensed to the Apache Software Foundation (ASF) under one or more + contributor license agreements. See the NOTICE file distributed with + this work for additional information regarding copyright ownership. + The ASF licenses this file to You under the Apache License, Version 2.0 + (the "License"); you may not use this file except in compliance with + the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> + +# Maven Resolver Supplier + +This simple module serves the purpose to "bootstrap" resolver when there is no desire to use Eclipse SISU. It provides Review Comment: Sisu, not SISU: https://projects.eclipse.org/projects/technology.sisu ########## maven-resolver-supplier/README.md: ########## @@ -0,0 +1,52 @@ +<!--- + Licensed to the Apache Software Foundation (ASF) under one or more + contributor license agreements. See the NOTICE file distributed with + this work for additional information regarding copyright ownership. + The ASF licenses this file to You under the Apache License, Version 2.0 + (the "License"); you may not use this file except in compliance with + the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> + +# Maven Resolver Supplier + +This simple module serves the purpose to "bootstrap" resolver when there is no desire to use Eclipse SISU. It provides +one simple class `org.eclipse.aether.supplier.RepositorySystemSupplier` that implements `Supplier<RepositorySystem>` +and supplies ready-to-use `RepositorySystem` instances. + +The supplier class is written in such way, to allow easy customization if needed: just extend the class and override +method one need (all methods are protected). + +Consumer/User of this module **must provide SLF4J backend**. Resolver uses `slf4j-api` for logging purposes, but this Review Comment: Consumers/users... > Provide "static" supplier for RepositorySystem > ---------------------------------------------- > > Key: MRESOLVER-387 > URL: https://issues.apache.org/jira/browse/MRESOLVER-387 > Project: Maven Resolver > Issue Type: Task > Components: Resolver > Reporter: Tamas Cservenak > Priority: Major > Fix For: 1.9.15 > > > To provide SL replacement. > Something like this > https://github.com/maveniverse/mima/blob/main/runtime/standalone-static/src/main/java/eu/maveniverse/maven/mima/runtime/standalonestatic/RepositorySystemSupplier.java -- This message was sent by Atlassian Jira (v8.20.10#820010)