Jens-G commented on code in PR #2963:
URL: https://github.com/apache/thrift/pull/2963#discussion_r1576111621


##########
doc/specs/thrift-uri.md:
##########
@@ -0,0 +1,155 @@
+Thrift URIs
+====================================================================
+
+Last Modified: 2024-APR-21
+
+<!--
+--------------------------------------------------------------------
+
+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.
+
+--------------------------------------------------------------------
+-->
+
+# Motivation and use case
+
+Describing the endpoint specifics for a Thrift API today is a purely 
text-adventure like exercise, which leaves the client side developer end with 
the tedious task to set up and put together a proper protocol/transport stack. 
That sometimes even leads to headaches, e.g. if the server requires e.g. framed 
protocol which might not be obvious. The use of a generally accepted, 
machine-readable and extensible Thrift URI format to describe client bindings 
could streamline that process.

Review Comment:
   > So the only issues left are:
   
   * Extensibility: How do I integrate my custom transport or protocol into the 
THeader system?
   * How does THeader deal with multiplex (I'm about to add that, not finsihed 
yet)?
   
   > memory and buffered used in RPCs are pure implementation details and do 
not really affect the wire protocol
   
   Kind of "for the sake of completeness" thing. They probably could be safely 
excluded.
   
   > As referenced in https://www.ietf.org/rfc/rfc2396.txt, even though this is 
not how URI is defined, a common syntax used widely defines it as:
   
   Yes I noticed. [RFC3986](https://www.ietf.org/rfc/rfc3986.txt) is more 
recent, but essentially tells the same story. Will be fixed soon.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to