lomok has no other value except making the code more concise. So I think remove 
it it’s  a good option.

________________________

Jia Fan



> 2023年12月4日 08:33,Lucifer Tyrant <[email protected]> 写道:
> 
> Hi hailin,
> 
> Recently connector modules don't separate with other modules, in the future
> it also maybe does not. So in order to unified all code style, remove it is
> a good option.
> 
> hailin0 <[email protected]>于2023年12月3日 周日23:29写道:
> 
>> Maybe consider using lombok only in connectors modules
>> 
>> Lucifer Tyrant <[email protected]> 于2023年12月3日周日 23:10写道:
>> 
>>> Hi hailin,
>>> 
>>> Thanks for your advice, In response to this proposal, I would like to
>>> clarify the following points:
>>> 1. It is not to deny that lombok is a difficult tool to use, but at
>>> present there are certain thresholds for the use of lombok and some
>>> rules for the use of Lombok, and people who are not familiar with
>>> Lombok may misuse it;
>>> 2. Due to the large number of people involved in and contributing to
>>> open source projects, these lombok rules will not be passed on or
>>> complied with by everyone. From the perspective of open source project
>>> operators, it will bring unnecessary maintenance costs and
>>> interpretation costs. It is important to unify the standard and
>>> specification, either use lombok, or use Lombok.
>>> 3. At present, the frequency of use is not very high in the whole
>>> project, and some people like to use it and some people don't like to
>>> use it, which leads to the code style of the whole project will look
>>> strange.
>>> 
>>> As mentioned above, I still think it's better to remove it.
>>> 
>>> Chao Tian
>>> 
>>> hailin0 <[email protected]> 于2023年12月3日周日 22:28写道:
>>>> 
>>>> What I would like to suggest is not to use @Data casually as it
>> contains
>>>> too much hidden code
>>>> 
>>>> hailin0 <[email protected]> 于2023年12月3日周日 22:06写道:
>>>> 
>>>>> Lombok does have some problems, but it undeniably brings some
>>> convenience
>>>>> and I don't think it should be avoided.
>>>>> 
>>>>> Especially since we have many connectors, each of which involves data
>>>>> model and configuration definition, using lombok can indeed bring
>> some
>>>>> benefits.
>>>>> 
>>>>> Regarding the conflict between @Buliber and @NoArgsConstructor, the
>>>>> general solution is:
>>>>> 
>>>>> ```java
>>>>>     @Tolerate
>>>>>     public yourConstructor() {
>>>>>     }
>>>>> ```
>>>>> 
>>>>> 
>>>>> Lucifer Tyrant <[email protected]> 于2023年12月2日周六 12:00写道:
>>>>> 
>>>>>> Hi ZhangJian,
>>>>>> 
>>>>>> 1. In past weekly meetings, it was mentioned that @Data can cause
>>>>>> unexpected issues with the equals and hashcode methods, reference:
>>>>>> https://github.com/apache/seatunnel/issues/4150
>>>>>> 
>>>>>> 2. When use @Builder,@NoArgsConstructor will conflict with it.
>>>>>> 
>>>>>> 3. The readability of the code will become very poor.
>>>>>> 
>>>>>> Chao Tian
>>>>>> 
>>>>>> ZhangJian He <[email protected]> 于2023年12月2日周六 11:33写道:
>>>>>>> 
>>>>>>> Hi, There are also well-known projects using lombok, like Apache
>>> Pulsar
>>>>>>> etc. Could you please share more details about lombok's problems.
>>>>>>> 
>>>>>>> Thanks
>>>>>>> ZhangJian He
>>>>>>> 
>>>>>>> 
>>>>>>> On Sat, 2 Dec 2023 at 11:21, Carl-Zhou-CN
>> <[email protected]
>>>> 
>>>>>> wrote:
>>>>>>> 
>>>>>>>> +1
>>>>>>>> 
>>>>>>>> 
>>>>>>>> 121
>>>>>>>> [email protected]
>>>>>>>> 
>>>>>>>> 
>>>>>>>> 
>>>>>>>> &nbsp;
>>>>>>>> 
>>>>>>>> 
>>>>>>>> 
>>>>>>>> 
>>>>>>>> ------------------ 原始邮件 ------------------
>>>>>>>> 发件人:
>>>>>>>>                                                  "dev"
>>>>>>>> 
>> <
>>>>>>>> [email protected]&gt;;
>>>>>>>> 发送时间:&nbsp;2023年12月1日(星期五) 晚上10:33
>>>>>>>> 收件人:&nbsp;"dev"<[email protected]&gt;;
>>>>>>>> 
>>>>>>>> 主题:&nbsp;[DISCUSS] Remove lombok in SeaTunnel
>>>>>>>> 
>>>>>>>> 
>>>>>>>> 
>>>>>>>> Hi developers,
>>>>>>>> 
>>>>>>>> In the recent development process, I discovered an issue with
>>> Lombok.
>>>>>>>> Lombok can cause overloading of multi parameter constructors to
>>> fail,
>>>>>>>> resulting in generated code that may not meet expectations and
>>> loss of
>>>>>>>> readability. After comparing with other well-known projects such
>>> as
>>>>>>>> Flink and Kafka, I found that Lombok plugins were not used.
>>> Therefore,
>>>>>>>> I would like to propose to remove all Lombok plugins from the
>> main
>>>>>>>> repository
>>>>>>>> 
>>>>>>>> What do you think about this? If you have any advice, please let
>>> me
>>>>>> know.
>>>>>>>> 
>>>>>>>> Chao Tian
>>>>>> 
>>>>> 
>>> 
>> 

Reply via email to