Hi Francesco, The reason behind my changes is as below. Since you are writing client codes, so hope you can help to review it.
I can image there will be problem with having version number in namespace. For example, by some chance we may have v5, then: org.apache.olingo.client.api.edm org.apache.olingo.client.api.edm.v3 org.apache.olingo.client.api.edm.v4 org.apache.olingo.client.api.edm.v5 no matter there is breaking change or not, user needs to change their 'import' everywhere: import org.apache.olingo.odata4.client.api.edm.v4 ==> import org.apache.olingo.odata4.client.api.edm.v5 so basically I am proposing: org.apache.olingo.client.api.edm.shared org.apache.olingo.client.api.edm.v3 org.apache.olingo.client.api.edm.v4 org.apache.olingo.client.api.edm --> a fixed name without version number for latest release, while older versions have their versioned namespaces. Do you think it make sense? (I am ok with a different but reasonable name like org.apache.olingo.client.api.edm.current for the latest release.) Thanks,-Challen -----Original Message----- From: Francesco Chicchiriccò (JIRA) [mailto:j...@apache.org] Sent: 2014年3月17日 15:40 To: dev@olingo.incubator.apache.org Subject: [jira] [Comment Edited] (OLINGO-191) use general namespace for lastest version. [ https://issues.apache.org/jira/browse/OLINGO-191?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13937516#comment-13937516 ] Francesco Chicchiriccò edited comment on OLINGO-191 at 3/17/14 7:37 AM: ------------------------------------------------------------------------ Hi [~challenh], I actually do not understand what I should be supposed to review. As reported in the [ML thread|http://markmail.org/message/27ctcvjmujbii6po] attached, I don't understand the rationale behind this change, and I was +-0 about it. Behind discussing the usefulness of this change, I am still somehow uncomfortable with the fact that a class or an interface from a super-package now inherits from another in a subpackage - take for example {{org.apache.olingo.client.api.edm.xml.ComplexType}} which extends {{org.apache.olingo.client.api.edm.xml.shared.ComplexType}}; this behavior is somewhere (but not everywhere) reported as an antipattern. Anyway, I think you should at least wait for the merge from ODataJClient to finish so that you can re-name and re-organize methods, classes and packages in the way you like it once the picture is complete. was (Author: ilgrosso): Hi [~challenh], I actually do not understand what I should be supposed to review. As reported in the [ML thread|http://markmail.org/message/27ctcvjmujbii6po] attached, I don't understand the rationale behind this change, and I was +-0 about it. Behind discussing the usefulness of this change, I am still somehow uncomfortable with the fact that a class or an interface from a super-package now inherits from another in a subpackage - take for example {{org.apache.olingo.client.api.edm.xml.ComplexType extends}} which extends {{org.apache.olingo.client.api.edm.xml.shared.ComplexType}}; this behavior is somewhere (but not everywhere) reported as an antipattern. Anyway, I think you should at least wait for the merge from ODataJClient to finish so that you can re-name and re-organize methods, classes and packages in the way you like it once the picture is complete. > use general namespace for lastest version. > ------------------------------------------ > > Key: OLINGO-191 > URL: https://issues.apache.org/jira/browse/OLINGO-191 > Project: Olingo > Issue Type: Task > Components: odata4-client > Affects Versions: V4 0.1.0 > Reporter: Challen > Fix For: V4 0.1.0 > > > open this JIRA for versioning namespaces [1]. > For example: > org.apache.olingo.odata4.client.api.edm > org.apache.olingo.odata4.client.api.edm.v3 > org.apache.olingo.odata4.client.api.edm.v4 > ==> > org.apache.olingo.client.api.edm.shared > org.apache.olingo.client.api.edm.v3 - for v3 > org.apache.olingo.client.api.edm - for v4 > [1] http://markmail.org/message/27ctcvjmujbii6po -- This message was sent by Atlassian JIRA (v6.2#6252)