cshannon commented on issue #3086: URL: https://github.com/apache/accumulo/issues/3086#issuecomment-1322048773
If you did exclude it from the build then you wouldn't even need the .gitattributes at all as you would just ignore the generated code in git entirely and not commit it so it wouldn't be part of the commit/repository. While normally I would say that's the way to go (just generate each time and not commit) I don't know that I like the idea of someone having to set up Thrift to build or Docker or whatever. Adding that extra dependency is a bit annoying vs just being able to checkout and build using Maven. But this may be the best option as long as it's pretty quick to generate the Thrift code, we can just have instructions for setting up Thrift and for also using Docker. Something else I thought of as an alternative is that this has been making me wonder if if it makes sense to just pull all of the Thrift stuff into it's own separate project and make it a separate dependency that the main project depends on. Not saying we necessarily want to do that but it's another option. I guess it mostly depends on how often we change the protocol, if there's a lot of changes then it would get annoying to have to keep updating another project and releasing it so may or may not be the right answer. One other benefit of moving it to a separate project is that there has been some initial discussion about having a plugable protocol at some point. Right now we require Thrift and it's tightly coupled but we don't have to in the future so if we decided to refactor it to have an API and allow people to use a different RPC protcol (something like grpc and protofbuf for example) having it separated out makes sense too. -- 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]
