Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [jakartaee-platform-dev] Transitioning Jakarta EE to the jakarta namespace

Here would be the code to copy/paste and make a differently formatted document to feed into a graph program. 

 - https://github.com/tomitribe/jkta/blob/master/src/main/java/org/eclipse/wg/jakartaee/deps/Transitive.java

Maybe we need a TransitiveWebgraphviz.java that builds the right file to feed into the graph program.

Anyway, here's the link as far as I can see with the doc:

 - CDI uses EL so CDI would need to be renamed if EL was renamed
    - javax.enterprise.inject.spi.BeanManager → javax.el.ExpressionFactory

 - JTA uses CDI, so if CDI is renamed, so must JTA
    - javax.transaction.TransactionScoped → javax.enterprise.context.NormalScope

Transitively, if EL is renamed so must JTA be renamed.



-- 
David Blevins
http://twitter.com/dblevins
http://www.tomitribe.com
310-633-3852

> On Jun 18, 2019, at 2:54 AM, Greg Wilkins <gregw@xxxxxxxxxxx> wrote:
> 
> 
> Tom,
> 
> The arrow that I'll direct your attention to is the one I'm pointing at David :) I just graphed the data he provided! 
> 
> That document says:
> 
> javax.el Forces the following 12 package renames, 1115 classes total:
> ...
>  + javax.transaction
> ...
> Due to the following 147 transitive references:
> ...
> javax.transaction.TransactionScoped → javax.enterprise.context.NormalScope
> javax.ejb.EJBContext → javax.transaction.UserTransaction
> javax.resource.spi.BootstrapContext → javax.transaction.TransactionSynchronizationRegistry
> javax.transaction.Transactional → javax.enterprise.util.Nonbinding
> 
> So I'm not seeing an el to transaction dependency there.  Perhaps the code he used to generate needs some review or explanation of the results?
> 
> regards
> 
> On Tue, 18 Jun 2019 at 11:26, Tom Jenkinson <tom.jenkinson@xxxxxxxxxx> wrote:
> Thanks for sharing this Greg. I looked at the diagram from a javax.transactions point of view to see the inbound arrows and I noted one from "javax.el" I grepped the current code and searched on github [1] but I can't see that one? Unless it is some sub-package not part of the Eclipse JTA API perhaps?
> 
> [1] https://github.com/eclipse-ee4j/jta-api/search?q=%22javax.el%22&unscoped_q=%22javax.el%22
> 
> On Tue, 18 Jun 2019 at 06:57, Greg Wilkins <gregw@xxxxxxxxxxx> wrote:
> 
> Here is a better rendering of the graph (thanks Joakim).  
> It would be interesting to evaluate any proposed incremental EE9 releases against this, as it does suggest that many partial renamings will be difficult to achieve.
> 
> regards
> 
> 
> 
> On Mon, 17 Jun 2019 at 09:40, Greg Wilkins <gregw@xxxxxxxxxxx> wrote:
> 
> David, 
> thanks for that info.
> For those that would like to see that visually, I just did https://github.com/eclipse-ee4j/jakartaee-platform/pull/29 to graph the dependencies in webgraphviz.   It's not a great visualisation, so probably don't merge, but thought I'd make the PR to at least have the data available.
> 
> cheers
> 
> 
> On Mon, 17 Jun 2019 at 07:09, David Blevins <dblevins@xxxxxxxxxxxxx> wrote:
> Ok folks, more data for us to look at.
> 
> I've created a report of transitive dependents to answer the question, "if we rename api foo, what else has to be renamed?"
> 
>   - https://github.com/eclipse-ee4j/jakartaee-platform/blob/master/namespace/transitive.adoc
> 
> Note we did have a report that showed maven dependencies.  This is the logical inverse of a maven dependency graph.  It's the incoming dependencies, transitively walked backwards.
> 
> An example of why this is important.  
> 
>   - fact: javax.ejb has a maven dependency on javax.transaction, javax.xml.rpc and javax.xml.rpc.soap
>   - question: Does renaming javax.ejb cause javax.transaction, javax.xml.rpc and avax.xml.rpc.soap to be renamed?
>   - answer: No. These apis do not have a reference to javax.ejb and therefore could stay in javax even if javax.ejb is renamed
> 
> This graph was created by collecting all the jars published to Maven central in the jakarta groupId, parsing them with ASM to collect any form of "import", then chopping them up by logical api package.
> 
> If you want to play with the code, you can find it here.  I apologize in advance for the relative mess -- the code wasn't really created for sharing and therefore will be hard to follow.
> 
>   - https://github.com/tomitribe/jkta
> 
> 
> -David
> 
> _______________________________________________
> jakartaee-platform-dev mailing list
> jakartaee-platform-dev@xxxxxxxxxxx
> To change your delivery options, retrieve your password, or unsubscribe from this list, visit
> https://www.eclipse.org/mailman/listinfo/jakartaee-platform-dev
> 
> 
> -- 
> Greg Wilkins <gregw@xxxxxxxxxxx> CTO http://webtide.com
> 
> 
> -- 
> Greg Wilkins <gregw@xxxxxxxxxxx> CTO http://webtide.com
> _______________________________________________
> jakartaee-platform-dev mailing list
> jakartaee-platform-dev@xxxxxxxxxxx
> To change your delivery options, retrieve your password, or unsubscribe from this list, visit
> https://www.eclipse.org/mailman/listinfo/jakartaee-platform-dev
> _______________________________________________
> jakartaee-platform-dev mailing list
> jakartaee-platform-dev@xxxxxxxxxxx
> To change your delivery options, retrieve your password, or unsubscribe from this list, visit
> https://www.eclipse.org/mailman/listinfo/jakartaee-platform-dev
> 
> 
> -- 
> Greg Wilkins <gregw@xxxxxxxxxxx> CTO http://webtide.com
> _______________________________________________
> jakartaee-platform-dev mailing list
> jakartaee-platform-dev@xxxxxxxxxxx
> To change your delivery options, retrieve your password, or unsubscribe from this list, visit
> https://www.eclipse.org/mailman/listinfo/jakartaee-platform-dev



Back to the top