[
https://issues.apache.org/jira/browse/THRIFT-4743?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16754048#comment-16754048
]
James E. King III commented on THRIFT-4743:
-------------------------------------------
Apologies, but this was voted on the dev mailing list about a month ago and
approved.
The plug-in support changes the build workflow depending on whether it is
enabled or not. It added a layer of complexity that was considered
unwarranted, at least from the perspective of package management. Downstream
package managers and the thrift project only release statically linked thrift
compilers. This means anyone who wanted to use plug-in mode (such as
yourselves) must already fork and rebuild the project with different settings.
Given you are already rebuilding, it should not be difficult then to add your
compiler as a fairly standard patch.
We can certainly discuss reverting this if there are more consumers, but given
the lack of response on the mailing list it was assumed nobody is using it.
This is a complex software project supporting 28 languages and having two build
systems. Every compile-time branch is an added layer of complexity. We
decided for example not to support both C++03 and C++11 at the same time
because then downstream packagers would be required to produce two libthrift
packages for C++, and things would get messy for them. The level of
involvement from the community has not been that high, and we do not have
committers covering every language. We need to move to a single build system
(cmake) and simplify things as much as possible in order to have a more
sustainable project. Given folks had to fork the project and build it already
just to get plug-in support, it made sense (at least to me) to also have them
just add their compiler code in their fork. I don't see how this is any more
difficult than having to fork and build WITH_PLUGIN and also maintain a plug-in
separately and copy things together to get a solution?
> Remove the compiler plug-in mode
> --------------------------------
>
> Key: THRIFT-4743
> URL: https://issues.apache.org/jira/browse/THRIFT-4743
> Project: Thrift
> Issue Type: Improvement
> Components: Compiler (General)
> Affects Versions: 0.13.0
> Reporter: James E. King III
> Assignee: James E. King III
> Priority: Major
> Labels: Breaking-Change
> Time Spent: 20m
> Remaining Estimate: 0h
>
> Vote passed on the development mailing list to remove the dynamic compiler
> plug-in mechanism. It has been disabled in the majority of all CI builds,
> and the mode is already disabled by default in the build systems. This will
> simplify the project and remove some compile-time and packaging-time branches.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)