I've got a handful of delombok changes locally that I'll push later tonight.

My _normal_ process for this is using the "delombok" integration in
Intellij, and then cleaning up any of the generated code.
reorganizing the getter/setters, removing any unrelated formatting changes.

The result should be the same code as with Lombok, but there are a couple
cases where classes should just be marked deprecated.



On Tue, Mar 18, 2025 at 2:13 AM Emmanuel Lécharny <elecha...@gmail.com>
wrote:

> Hi Brian,
>
> I changed the topic for clarity.
>
> The @Data is used quite extensively (122 instances). Many of them are
> totally useless, like for classes UnableToCreateResourceException,
> UnableToDeleteResourceException, etc.
>
> We most certainly can get rid of it for such class. For some others,
> like RepositoryRegistry, it's not obvious what it brings, as we will
> never use the hashCode or equals method, the public constructor with 2
> arguments will never be called either, and I question the toString()
> method.
>
> There is some work to be done in evaluating the 'cost' of such removal,
> so that we don't add unneeded methods.
>
> And btw this is the pb with Lombok: it offers you some convenient ways
> to add boilerplate code that could be tedious to write (hashCode, equals
> and toString), but do it witha  carpet bombing approach when applied
> blindly.
>
>
> Anyway, I'll analyze the various usage.
>
> On 15/03/2025 13:00, Brian Demers wrote:
> > Please do!
> > -Brian
> >
> >> On Mar 15, 2025, at 2:51 AM, Emmanuel Lécharny <elecha...@gmail.com>
> wrote:
> >>
> >> I have already removed all the @SLF4J bit, wanna me to push it?
> >>
> >>> On 14/03/2025 14:54, Brian Demers wrote:
> >>>     java -jar ~/Downloads/lombok.jar delombok src -d src-delomboked
> >>>     It generates Java classes with boilerplate code (but it's rather
> ugly).
> >>> Yeah, I did this to a few classes when fixing some chaining setters.
> I should have a little time in the near future to do the rest (and clean up
> the generated bits) :D
> >>>     On 13/03/2025 17:01, Emmanuel Lécharny wrote:
> >>>      > Now, let's say that with Java records, most of Lombok usage has
> just
> >>>      > vanished. It's just a matter of switching to a recent JVM
> version
> >>>      >   (Java 17).
> >>>      >
> >>>      >
> >>>      > On 13/03/2025 16:06, Brian Demers wrote:
> >>>      >> Sounds like we have similar opinions on Lombok 😉
> >>>      >>
> >>>      >> On Thu, Mar 13, 2025 at 11:01 AM Emmanuel Lecharny
> >>>      >> <elecha...@gmail.com <mailto:elecha...@gmail.com>
> >>>     <mailto:elecha...@gmail.com <mailto:elecha...@gmail.com>>> wrote:
> >>>      >>
> >>>      >>     Hi Brian,
> >>>      >>
> >>>      >>     actually, never mind :-) I have it working.
> >>>      >>
> >>>      >>     I followed the https://projectlombok.org/setup/eclipse
> >>>     <https://projectlombok.org/setup/eclipse>
> >>>      >>     <https://projectlombok.org/setup/eclipse
> >>>     <https://projectlombok.org/setup/eclipse>> page, and after
> >>>      >>     having added the lombok plugin, it's all finer!
> >>>      >>
> >>>      >>     To answer your question, no we don't use lombok. It's
> >>>     useless, and
> >>>      >>     creates issues just to save a few typing that you don't
> even
> >>>     have
> >>>      >>     tyo do
> >>>      >>     if you use the IDE create code feature.
> >>>      >>
> >>>      >>
> >>>      >>     On 13/03/2025 15:17, Brian Demers wrote:
> >>>      >>      > My guess is you need to enable annotation processors.
> >>>      >>      > I haven't used Eclipse in a while, so not sure if these
> >>>      >>     instructions are
> >>>      >>      > correct:
> >>>      >>      >
> >>>      >>
> >>>      >>
> >>>
> https://stackoverflow.com/questions/43404891/how-to-configure-java-annotation-processors-in-eclipse
> <
> https://stackoverflow.com/questions/43404891/how-to-configure-java-annotation-processors-in-eclipse>
> <
> https://stackoverflow.com/questions/43404891/how-to-configure-java-annotation-processors-in-eclipse
> <
> https://stackoverflow.com/questions/43404891/how-to-configure-java-annotation-processors-in-eclipse
> >>
> >>>      >>      >
> >>>      >>      > IntelliJ requires something similar.
> >>>      >>      >
> >>>      >>      > Related:
> >>>     https://github.com/apache/directory-scimple/issues/540
> >>>     <https://github.com/apache/directory-scimple/issues/540>
> >>>      >>     <https://github.com/apache/directory-scimple/issues/540
> >>>     <https://github.com/apache/directory-scimple/issues/540>>
> >>>      >>      >
> >>>      >>      > I didn't add a lot of detail in that issue, but my
> >>>     frustrations
> >>>      >>     with Lombok
> >>>      >>      > are based on this type of problem (well, that and it's
> >>>     difficult
> >>>      >>     to debug
> >>>      >>      > code generated at compile time by an annotation
> processor).
> >>>      >> Maybe it
> >>>      >>      > should be updated to simply "Remove Lombok" 🙂
> >>>      >>      >
> >>>      >>      > Maybe a note should be added to the readme about IDE
> support
> >>>      >>     until the
> >>>      >>      > above issue is resolved 🤔
> >>>      >>      >
> >>>      >>      > I also think IDEs could do a better job of enabling
> >>>     annotation
> >>>      >>     processors
> >>>      >>      > if configured by build tools, but that's a different
> problem.
> >>>      >>      >
> >>>      >>      > TL;DR (opinion) lombok is great for code in blog posts,
> it's
> >>>      >>     painful in
> >>>      >>      > real projects.
> >>>      >>      >
> >>>      >>      > On a slightly more serious note, are any of the other
> >>>     Directory
> >>>      >>     projects
> >>>      >>      > using Lombok? Or does anyone have strong opinions for or
> >>>     against?
> >>>      >>      >
> >>>      >>      > -Brian
> >>>      >>      >
> >>>      >>      > On Thu, Mar 13, 2025 at 10:01 AM Emmanuel Lécharny
> >>>      >>     <elecha...@gmail.com <mailto:elecha...@gmail.com>
> >>>     <mailto:elecha...@gmail.com <mailto:elecha...@gmail.com>>>
> >>>      >>      > wrote:
> >>>      >>      >
> >>>      >>      >> Hi Brian,
> >>>      >>      >>
> >>>      >>      >> I have a bit of day job's time to investigate SCIM, and
> >>>      >> obvioulsy,
> >>>      >>      >> SCIMple is going to be my choice.
> >>>      >>      >>
> >>>      >>      >> A few question: yesterday, I have had hard time
> >>>     buildling the
> >>>      >>     project (I
> >>>      >>      >> have updated the readme to reflect the build process,
> >>>     because mvn
> >>>      >>      >> package is not doing the job when you haven't build the
> >>>     project
> >>>      >>     at least
> >>>      >>      >> once). Anyway, tests are passing green, all is good.
> >>>     But... I
> >>>      >>     loaded it
> >>>      >>      >> in Eclipse, and I get a bunch of errors, like some
> >>>     methods that
> >>>      >>     are not
> >>>      >>      >> present:
> >>>      >>      >>
> >>>      >>      >> log cannot be resolved  RepositoryRegistry.java
> >>>      >>      >>
> >>>      >>
> >>>      >>
> >>>
>  
> /scim-core-1.0.0-SNAPSHOT/src/main/java/org/apache/directory/scim/core/repository
> >>>      >>      >>
> >>>      >>      >> line 64 Java Problem
> >>>      >>      >>
> >>>      >>      >> AFAICT, the Lombok @SLF4J is suppose to magically
> create
> >>>     this
> >>>      >>     log field.
> >>>      >>      >>
> >>>      >>      >> Do you have a quick guide on how to get it working with
> >>>     Eclipse?
> >>>      >>      >> Thanks!
> >>>      >>      >>
> >>>      >>      >> --
> >>>      >>      >> ------------------------
> >>>      >>      >> Emmanuel Lécharny
> >>>      >>      >> emm...@worteks.com <mailto:emm...@worteks.com>
> >>>     <mailto:emm...@worteks.com <mailto:emm...@worteks.com>>
> >>>      >>      >> elecha...@apache.org <mailto:elecha...@apache.org>
> >>>     <mailto:elecha...@apache.org <mailto:elecha...@apache.org>>
> >>>      >>      >> ------------------------
> >>>      >>      >>
> >>>      >>      >>
> >>>      >>
> ---------------------------------------------------------------------
> >>>      >>      >> To unsubscribe, e-mail:
> >>>     dev-unsubscr...@directory.apache.org
> >>>     <mailto:dev-unsubscr...@directory.apache.org>
> >>>      >>     <mailto:dev-unsubscr...@directory.apache.org
> >>>     <mailto:dev-unsubscr...@directory.apache.org>>
> >>>      >>      >> For additional commands, e-mail:
> >>>     dev-h...@directory.apache.org <mailto:
> dev-h...@directory.apache.org>
> >>>      >>     <mailto:dev-h...@directory.apache.org
> >>>     <mailto:dev-h...@directory.apache.org>>
> >>>      >>      >>
> >>>      >>      >>
> >>>      >>
> >>>      >
> >>>     --     ------------------------
> >>>     Emmanuel Lécharny
> >>>     emm...@worteks.com <mailto:emm...@worteks.com>
> >>>     elecha...@apache.org <mailto:elecha...@apache.org>
> >>>     ------------------------
> >>
> >> --
> >> ------------------------
> >> Emmanuel Lécharny
> >> emm...@worteks.com
> >> elecha...@apache.org
> >> ------------------------
> >>
> >> ---------------------------------------------------------------------
> >> To unsubscribe, e-mail: dev-unsubscr...@directory.apache.org
> >> For additional commands, e-mail: dev-h...@directory.apache.org
> >>
>
> --
> ------------------------
> Emmanuel Lécharny
> emm...@worteks.com
> elecha...@apache.org
> ------------------------
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscr...@directory.apache.org
> For additional commands, e-mail: dev-h...@directory.apache.org
>
>

Reply via email to