very happy to go with that suggestion.  And ditto for the profilestore and
security, presumably.



On 12 December 2012 00:30, Robert Matthews <rmatth...@nakedobjects.org>wrote:

> I was thinking about that too and thought that they are object stores etc
> so that is fine (ie isis-objectstore-inmemory).  But what about:
>
>     isis-inmemory-objectstore -> isis-core-objectstore
>
> and so on as they are all basic/simple implementations.
>
> Rob
>
>
>
> On 12/12/12 00:23, Dan Haywood wrote:
>
>> On 12 December 2012 00:16, Robert Matthews <rmatth...@nakedobjects.org>**
>> wrote:
>>
>>  Do we want to achieve the same thing with the core modules? eg:
>>>
>>>      isis-metamodel -> isis-core-metamodel
>>>      isis-runtime -> isis-core-runtime
>>>
>>>
>>>  Yeah, I had the same thought.  Happy to do that.
>>
>> Per previous mails, core DOES after all need to include the inmemory
>> objectstore, the inmemory profilestore and noop security, BECAUSE these
>> are
>> all referenced by the integtestsupport module.
>>
>> I don't have a problem with this.
>>
>> The question that arises is, what name to give these artifacts?
>>
>> isis-inmemory-objectstore   ->  isis-objectstore-inmemory   (meaning it
>> will group with the non-core objectstore components)
>> OR
>> isis-inmemory-objectstore   ->  isis-core-objectstore-inmemory   (meaning
>> it will group with other core components).
>>
>> I think I prefer the latter.  But I could be persuaded either way.
>>
>>
>>
>>
>>
>>  Rob
>>>
>>>
>>>
>>> On 12/11/12 23:55, Dan Haywood wrote:
>>>
>>>  On 11 December 2012 23:49, Robert Matthews <rmatth...@nakedobjects.org
>>>> >**
>>>>
>>>> wrote:
>>>>
>>>>   Just tom confirm, I did try it and it is messy, that's why I would
>>>> like
>>>>
>>>>> to
>>>>> make the project names shorter (not show the group id, just the
>>>>> artifact
>>>>> id) and have them ordered nicely from a developers perspective - go for
>>>>> the
>>>>> RPN.
>>>>>
>>>>>
>>>>>   ok, good... perhaps I had misunderstood what you were saying earlier,
>>>>>
>>>> but
>>>> at any rate sounds like we're in agreement the same page now.
>>>>
>>>> So... for example, I'll rename:
>>>> * isis-jdo-objectstore  ->  isis-objectstore-jdo.
>>>> * isis-sql-objectstore -> isis-objectstore-sql.
>>>>
>>>> Dan
>>>>
>>>>
>>>>
>>>>   Rob
>>>>
>>>>>
>>>>>
>>>>> On 12/11/12 23:36, Dan Haywood wrote:
>>>>>
>>>>>   On 11 December 2012 23:26, Robert Matthews <
>>>>> rmatth...@nakedobjects.org
>>>>>
>>>>>> **
>>>>>>>
>>>>>> wrote:
>>>>>>
>>>>>>    Dan
>>>>>>
>>>>>>  1. A quick look at Eclipse and I'm struggling to see any seemingly
>>>>>>> random
>>>>>>> placing. All my components are together and so on. What I do have
>>>>>>> though
>>>>>>> is
>>>>>>> very long names as the group ids are also showing. This is set up in
>>>>>>> the
>>>>>>> Eclipse plug-in settings. That said I'd rather have shorter project
>>>>>>> names,
>>>>>>> and after making the change to shorter name everything is all over
>>>>>>> the
>>>>>>> place.  I'm happy with the proposed naming convention as I prefer the
>>>>>>> benefit of the ordering. That said, the core modules will still
>>>>>>> appear
>>>>>>> randomly.
>>>>>>>
>>>>>>>    Yeah, if you import with the advanced > template of
>>>>>>>
>>>>>>>  [groupId]:[artifactId],
>>>>>> then everything is indeed ordered logically.
>>>>>>
>>>>>> However, when Jeroen and I tried this on Monday, we decided not to use
>>>>>> this
>>>>>> template, and just went with the default template, which is just the
>>>>>> artifactId.
>>>>>>
>>>>>> Try it... you'll see it's quite a mess.
>>>>>>
>>>>>> I was just playing around with Idea 12, and (I think) it also does the
>>>>>> equivalent, of naming its projects based on the artifact.
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>    2 & 3. My previous expectations were that the core would be
>>>>>> released
>>>>>> at a
>>>>>>
>>>>>>  particular point and the components would then be released
>>>>>>> independently
>>>>>>> to
>>>>>>> work against the core, and would probably be re-released again
>>>>>>> against
>>>>>>> the
>>>>>>> same core as they get improved. So the components would evolve more
>>>>>>> quickly
>>>>>>> than the core and the core would be improved in the background.
>>>>>>> (Although
>>>>>>> isolated fixes to the core would be made without causing the
>>>>>>> components
>>>>>>> any
>>>>>>> concern.)
>>>>>>>
>>>>>>> Yes, no change... that's my expectation as well.
>>>>>>>
>>>>>>>
>>>>>>>     WRT the parenting, are we expecting the core modules to stay in
>>>>>> step -
>>>>>>
>>>>>>  all
>>>>>>> released each time - or will specific modules be release as they
>>>>>>> needed?
>>>>>>>
>>>>>>>   All the core modules would be released together, yes.
>>>>>>>
>>>>>>
>>>>>>
>>>>>>    An alternative strategy to the two options you suggested would be
>>>>>> for
>>>>>> the
>>>>>>
>>>>>>  parent pom to be released as part of the core, that way it would
>>>>>>> always
>>>>>>> be
>>>>>>> ready for the components. Generally, though, I'm still trying to get
>>>>>>> my
>>>>>>> head around how this could/would/should work.  Maybe a skype call,
>>>>>>> were
>>>>>>> share our thoughts, might be worth while at this stage.
>>>>>>>
>>>>>>>    I think this is basically the same as having everything parented
>>>>>>> by
>>>>>>>
>>>>>>>  core's
>>>>>> pom.  Indeed, the more I think about it, the more I am happy to go
>>>>>> this
>>>>>> way.  I'm trying it out in a branch locally to see how it flies (ie
>>>>>> testing
>>>>>> to see if I release core and then if I can release one of the
>>>>>> components).
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>    3. Such numbering makes a lot of sense. And as you say a large
>>>>>> number
>>>>>> is
>>>>>>
>>>>>>  just a large number.
>>>>>>>
>>>>>>>    Ok, that's three of us in agreement.  It might be worthwhile
>>>>>>> doing a
>>>>>>>
>>>>>>>  formal
>>>>>> vote on this one; perhaps in a day or two.
>>>>>>
>>>>>>
>>>>>>
>>>>>>    Regards
>>>>>>
>>>>>>  Rob
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> On 12/10/12 20:17, Dan Haywood wrote:
>>>>>>>
>>>>>>>    All,
>>>>>>>
>>>>>>>  Following on from the previous discussion thread relating to
>>>>>>>> renaming
>>>>>>>> of
>>>>>>>> artifacts etc, I've been doing some further work on the release
>>>>>>>> process,
>>>>>>>> up
>>>>>>>> to and including have now pushed our isis-core up to the Nexus
>>>>>>>> staging
>>>>>>>> repo.  Won't be calling a vote, just wanted to see if it all worked
>>>>>>>> using
>>>>>>>> git (which it does, after a few modifications).
>>>>>>>>
>>>>>>>> Anyway, we have a few alternatives in some of the detail; if you
>>>>>>>> have
>>>>>>>> an
>>>>>>>> opinion on any of this, please respond...
>>>>>>>>
>>>>>>>>
>>>>>>>> 1. artifactId names: eg isis-jdo-objectstore vs isis-objectstore-jdo
>>>>>>>>
>>>>>>>> This point came up in the previous thread, and at the time I was
>>>>>>>> ambivalent
>>>>>>>> as to which way we went on it.  Now, though, I think we should use
>>>>>>>> the
>>>>>>>> "reverse polish notation", ie "isis-objectstore-jdo".
>>>>>>>>
>>>>>>>> The reason is mostly this: if a developer imports the entire project
>>>>>>>> from
>>>>>>>> the root aggregator pom (oai:isis-all) into Eclipse, then the
>>>>>>>> project
>>>>>>>> name
>>>>>>>> will (by default at least) be based on the artifactId.  This means
>>>>>>>> that
>>>>>>>> artifacts appear pretty randomly in the Eclipse workspace.
>>>>>>>>
>>>>>>>> Of course, the same argument applies if listing a directory, eg ls
>>>>>>>> WEB-INF/lib.
>>>>>>>>
>>>>>>>> Opinions?
>>>>>>>>
>>>>>>>>
>>>>>>>> 2. Should our releasable modules (core and each of the 20-ish
>>>>>>>> components)
>>>>>>>> have a separate org.apache.isis:isis-parent as their parent (which
>>>>>>>> defines
>>>>>>>> the maven-release-plugin configuration etc), or should they all use
>>>>>>>> org.apache.isis.core:isis as their parent.
>>>>>>>>
>>>>>>>> The benefit of the former (and the code is mostly organized this
>>>>>>>> way)
>>>>>>>> is
>>>>>>>> that, well, it seems to follow what many other maven projects do.
>>>>>>>>  But
>>>>>>>> the
>>>>>>>> downside is that we would need to release this isis-parent artifact
>>>>>>>> first,
>>>>>>>> and we might tend to forget about it and not update it.
>>>>>>>>
>>>>>>>> The benefit of the latter is we will always re-release it whenever
>>>>>>>> there
>>>>>>>> is
>>>>>>>> a new release of core, and - as a bonus - all the child modules will
>>>>>>>> inherit version definitions by way of <dependencyManagement>.
>>>>>>>>
>>>>>>>> Put another way: do we think that the lifecycle of our release
>>>>>>>> process
>>>>>>>> itself  be decoupled from the lifecycle of releases of Isis core?
>>>>>>>>  If
>>>>>>>> yes,
>>>>>>>> we should have a separate org.apache.isis:isis-parent.  If no, we
>>>>>>>> should
>>>>>>>> just use org.apache.isis.core:isis as the parent of all releasable
>>>>>>>> modules.
>>>>>>>>
>>>>>>>> Opinions?
>>>>>>>>
>>>>>>>>
>>>>>>>> 3. What should our version numbers be?
>>>>>>>>
>>>>>>>> This is quite a big one, possibly worth its own thread, but I was
>>>>>>>> wondering
>>>>>>>> if we should adopt semantic versioning [1].  Thus, this first
>>>>>>>> release
>>>>>>>> will
>>>>>>>> be v1.0.0 of the core; any bug fixes would be 1.0.1, 1.0.2, any
>>>>>>>> backwardly
>>>>>>>> compatible enhancements (to the APIs) would be 1.1.0, 1.2.0, any
>>>>>>>> breaking
>>>>>>>> changes to the APIs would be 2.0.0, 3.0.0, etc.
>>>>>>>>
>>>>>>>> There's an argument that things aren't quite stable enough in core
>>>>>>>> to
>>>>>>>> do
>>>>>>>> this; the counter argument is that they are just numbers; if we end
>>>>>>>> up
>>>>>>>> with
>>>>>>>> isis-core v 12.0.0 in two years time because of a succession of
>>>>>>>> breaking
>>>>>>>> API changes, so what?
>>>>>>>>
>>>>>>>> Opinions?
>>>>>>>>
>>>>>>>>
>>>>>>>> Thanks
>>>>>>>> Dan
>>>>>>>>
>>>>>>>> PS: fyi, I'm hoping to be in a position to put a release out of isis
>>>>>>>> core
>>>>>>>> for voting by the end of this week or beginning of next, latest.
>>>>>>>>
>>>>>>>>
>>>>>>>> [1] http://semver.org.
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>

Reply via email to