Thank you for your input Emond!
Unfortunately I don’t think our small volunteer team can handle two major 
versions that are in sync.
Anyone else think differently?
 
> On Mar 15, 2024, at 5:42 AM, Emond Papegaaij <[email protected]> 
> wrote:
> 
> Op vr 15 mrt 2024 om 05:10 schreef <[email protected] 
> <mailto:[email protected]>>:
> Since Shiro 2.0-alpha and 2.0 Final has been released, most, if not all 
> questions we have been getting are about Jakarta EE integration.
> Mostly regarding shaded artifacts and their usage, i.e. jakarta.* namespace.
> These and other discussion warrant a few question worth discussing.
> Please keep in mind by the time Shiro 3.x is released, it could be 2025 or 
> later.
> 
> 1) How long should Shiro 1.x be maintained?
> Not at all? 6 months? 1 year? 2 years? Other?
> Upgrading to 2.0 isn't that hard, but it could be that you depend on a third 
> party library that uses shiro, making it impossible to upgrade until this 
> third party library has been upgraded. I would therefore say: support 1.x for 
> 1 or 2 more years, but security fixes only. This should keep the efforts of 
> maintaining that version to a minimum.
>  
> 2) Should Shiro 3 support javax.* namespace via shading at all?
> Not at all (drop support?) As shaded artifact? As different version 
> (shiro-core:3.0-javax)?
> I would propose a slightly different solution here: move Shiro 3 to Jakarta 
> (and maybe SE 17), but keep it identical to 2.x on all other aspects. You can 
> then also drop the transformed artifacts with the jakarta classifier on 2.x. 
> This will require back (or forward) porting of all changes, and performing 
> releases in tandem, so it does impose some maintenance overhead. However, 
> given the fact that the code is identical (with the exception of name spaces, 
> mostly in imports and poms), the overhead should not be that big.
>  
> 3) Should Shiro 3 support SpringBoot 2.x or drop support for SB 2.x at all 
> (requires dropping support for javax namespace)
> With the solution provided above, the answer to this question would be 'no'. 
> Shiro 3 is for the Jakarta namespace. 
> 
> 4) What’s the minimum Java version?
> Keep it at 11? Switch to 17 (both SpringBoot 3.x and Jakarta EE 11 require 
> 17+)? Switch to 17? Switch to 21 as minimum version?
> Personally, I don't really care about the Java Shiro uses for development. 
> The most important thing is that Shiro runs without issues on modern SEs. So, 
> if you keep the development at SE 11, make sure you run your tests on at 
> least 17 and 21 as well. For Wicket, we even run our tests on the latest 
> early access releases. This helps us find issues early on. Switching source 
> level to 17 will make your life easier, but it shouldn't make much difference 
> for most users (except when you are still on SE 11, but in that case, you can 
> use 1.x). I think it is too early to require 21, but many servers and 
> platforms already require (or recommend) 17, so switching to 17 does make 
> sense.
> 
> To give a bit more insights into the landscape at our company:
> We've got quite a few applications. All of then run on SE17. We are migrating 
> from JEE8 to JEE10. Some of the applications finished this migration last 
> year, but for some of the larger applications (about 1.5M lines of code per 
> such application) this is not an easy task. Especially, the migration from 
> Hibernate 5 to 6 is hard. We hope to finish the migration to JEE10 for all 
> but one of our applications this year.
> 
> IMHO if you are behind as a company in maintaining your source code and still 
> depend on old technology, you should either pay for this support, perform the 
> required maintenance on these components yourself or migrate to newer, 
> supported versions.
> 
> Best regards,
> Emond 
>  

Reply via email to