You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@maven.apache.org by "Jason van Zyl (JIRA)" <ji...@codehaus.org> on 2006/02/21 15:52:35 UTC

[jira] Created: (ARCHETYPE-30) Take discussion with Milos and break down into issues

Take discussion with Milos and break down into issues
-----------------------------------------------------

         Key: ARCHETYPE-30
         URL: http://jira.codehaus.org/browse/ARCHETYPE-30
     Project: Maven Archetype
        Type: Task

    Reporter: Jason van Zyl
 Assigned to: Jason van Zyl 
     Fix For: 0.7


[09:15am] mkleint: hey, so i'm here, have like half an hour time..
[09:17am] jason: sure
[09:17am] jason: we might as well chat then
[09:19am] jason: we can either chat here and i can log it
[09:19am] jason: or we can chat over skype
[09:19am] jason: whatever is easier for you
[09:22am] mkleint: skype is fine but once I get home..
[09:22am] mkleint: I need to leave work in 40 minutes to catch the train home..
[09:22am] jason: irc is fine too
[09:22am] jason: i don't mind chatting either
[09:23am] jason: really, whatever suits you
[09:23am] mkleint: hmm.. irc now maybe better.. in the evening I might not have enough time..
[09:24am] jason: ok, that's cool
[09:24am] jason: so maybe quickly go over your archetype requirements or what you would like
[09:24am] jason: if it's ok, i'll log this to make notes with later
[09:25am] mkleint: sure, fine with me..
[09:25am] mkleint: the basic requirement is to know up front what are the available archetypes and what the user is to fill in..
[09:25am] mkleint: so that some UI can be constructed..
[09:26am] mkleint: in the ideal world, I would like to be able to create the new project even if offine (so maybe shipping part/all of the arhetype stuff as a netbeans module..
[09:26am] mkleint: but that's not a hard requirement..
[09:27am] jason: ok, so let me pull up JIRA here
[09:28am] jason: once we have the repository manager working, i can scan the repo for all the archetypes and make a list
[09:28am] jason: so much like we scan all the artifacts and make drop downs in the eclipse UI for JARs we can do the same for archetypes
[09:28am] jason: so i should be able to provide a list of available archetypes from a given repository
[09:29am] jason: what i need is a way to aggregate them all when people don't sync to the central repo
[09:29am] mkleint: possibly.. sounds cool..
[09:29am] jason: for example is struts stores their own archetypes at apache for example
[09:29am] mkleint: if you are capable of doing for one repo, it's fine with me I guess.
[09:30am] mkleint: what can be done of the UI side is to ship teh list of repos with archtypes as netbeans modules/eclipse plugins..
[09:30am] mkleint: so not everything needs to be 100 dynamic..
[09:31am] mkleint: actually I guess we shoudl separate some basic ones and ive them special treatment..
[09:31am] mkleint: when you start with maven you don';t want a lost of 50 archetypes you don't know/need
[09:31am] jason: you could ship a repo with netbeans
[09:31am] jason: pre-populated with any artifacts you might want
[09:31am] mkleint: I already do..
[09:32am] mkleint: I ship 2 maven plugin that connect the debugger and do deployment..
[09:32am] jason: so you could pull any archetypes you wanted and limit the search to that repo for archetypes
[09:32am] mkleint: yup.. that was my idea..
[09:32am] jason: so that could be configurable, you can default to your repo and you could allow the users to look in other repos for more archetypes
[09:32am] mkleint: for the starters at least..
[09:33am] mkleint: yeah..
[09:33am] jason: as far as the UI above, the archetype descriptor needs to be rewritten
[09:33am] jason: so that might be another discussion after i take a pass at it
[09:33am] jason: because it needs to be aligned with the plugin metadata
[09:33am] mkleint: huh?
[09:33am] mkleint: don't follow
[09:33am] jason: sorry, descriptions of the possible values
[09:34am] jason: what types are allowed, some validators
[09:34am] jason: so people could walk through a wizard to configure a plugin
[09:34am] mkleint: yeah..
[09:34am] jason: or walk through a wizard to configure an archetype
[09:34am] jason: i just want to reuse as much code there as possible and make the plugin descriptor close to the archetype descriptor where configurable values are concerned
[09:35am] mkleint: fine with me..
[09:35am] jason: so a list of available archetypes and the UI aspect of configuring the archetype
[09:35am] jason: were there any other big issues?
[09:35am] mkleint: hmm.. lemme think..
[09:36am] jason: it looks like i'm going to be speaking at SD Expo so I will definitely work on the IDE stuff because I would like to demo them
[09:36am] mkleint: the distinction between the project archetype and file archetype as I call them..
[09:37am] jason: so a project versus a site?
[09:37am] mkleint: with the file archetype, it would be nice to know up front what file will be created. and report that to the user..
[09:37am] jason: i'm not sure what you consider a file archetype
[09:37am] mkleint: site is basically an instance of a archetype that doens't create a project.. are there more or it's just this one?
[09:38am] jason: there will be more
[09:38am] jason: i call them partial archetypes for lack of a better word
[09:38am] jason: but you might have a j2ee archetype
[09:39am] jason: and partial archetypes to create new web modules or connectors or whatever
[09:39am] jason: actually that would be a third type really
[09:39am] jason: the site is the only partial archetype right now
[09:39am] mkleint: these are somewhat unpredictable in behaviour.. when you create a new project, if you don;'t like what you get, you just delete the whole dir.. with partials, you get new stuff all around your existing project..
[09:40am] jason: but we are thinking we might have partial archetypes for adding tests to maven
[09:40am] jason: to make it easier for people to create test cases for us
[09:40am] jason: maybe that would be something to put in the descriptor like you said, so that the user knows where it can drop
[09:40am] mkleint: adding test classes? isn't that part of any current IDE's ui?
[09:41am] jason: these would be customized for maven test cases
[09:41am] jason: but something that any project could do
[09:41am] mkleint: yeah, for partials it seems to me that it's more important to let the user know what will happen..
[09:41am] jason: we have the expertise about what should be setup, so would like to encapsulate that in an archetype and hook into the IDEs
[09:42am] jason: so if i gave you enough information could you just undo the archetype generation?
[09:42am] jason: user goes "oh, don't like that" and just undo
[09:43am] mkleint: hmm... maybe.. or at least give the useer an idea what was added and how to undo it..
[09:43am] mkleint: an automatic undo across multiple files is tricky..
[09:43am] jason: ok, i'll leave that to you
[09:44am] mkleint: I was more thinking around the idea of having a query that quould return the list of files to be created/updated.. like a pre-run, but without actually writing..
[09:44am] jason: i think that can be done
[09:45am] jason: so you just want to know up front what will be made so you can show that to the user?
[09:45am] jason: so you would need a complete manifest of the contents of the archetype
[09:45am] mkleint: yeah.. description would also be fine, but people don't really write descriptions.. the list of files to be created can be automatically created and is also descriptive..
[09:46am] jason: ok, i will put these all in JIRA to keep track
[09:46am] jason: and create a couple of versions to release over the next few weeks
[09:46am] jason: just fixed the embedder too so that it aligns properly with a user install
[09:46am] mkleint: cool.. gotta run to catch the train.. talk to you later.
[09:47am] mkleint: embedder?
[09:47am] jason: ok, i'll make some notes and get back to you
[09:47am] jason: yes, for the embedder
[09:47am] jason: i will talk to you later!
[09:47am] mkleint: ok.. see ya..

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
For additional commands, e-mail: dev-help@maven.apache.org