I'd like to propose a new structure of the Scala repository, one that is more in-line with existing conventions in both the Scala and Java world.
Currently, (conceptual) sub-projects are "split" between src/ and build/ top-level directories. This makes it difficult to add something other than sources to an existing subproject, without adding a new top-level directory. And that leads to weird 'sub-projects' in src/, such as src/intellij.Usually, projects are self-contained directories and many tools follow this convention. In short, I propose to have each module have it's own project structure, more or less like this:
/modules(?)
/library
/src/target/classes/compiler
/src/target/classes/asm
/src/target/classes...I left the top-level directory undecided. It may be the basedir, where 'src' is now, or it may be a subdirectory.This structure has the advantage that each module can have its own build file,
Does anyone have any experience with this?I thought renames were almost transparant to git (since it tracks contents, not files)
On Thu, Jun 7, 2012 at 11:39 AM, iulian dragos <jagu...@gmail.com> wrote:I'd like to propose a new structure of the Scala repository, one that is more in-line with existing conventions in both the Scala and Java world.
Currently, (conceptual) sub-projects are "split" between src/ and build/ top-level directories. This makes it difficult to add something other than sources to an existing subproject, without adding a new top-level directory. And that leads to weird 'sub-projects' in src/, such as src/intellij.Usually, projects are self-contained directories and many tools follow this convention. In short, I propose to have each module have it's own project structure, more or less like this:
/modules(?)
/library
/src/target/classes/compiler
/src/target/classes/asm
/src/target/classes...I left the top-level directory undecided. It may be the basedir, where 'src' is now, or it may be a subdirectory.This structure has the advantage that each module can have its own build file,Not sure that makes sense / can be done easily, since everything is built in stages (locker, quick)I think we should only change the current structure if there's a clear win (i.e. if it fixes a problem).
Looking up file history does become more complicated, even with git.
Does the current structure pose problems for using Eclipse?
additional resources can be added easily (IntelliJ or Eclipse project definitions, docs, readme, etc), and the Sbt build will probably be much simpler.As far as I can tell, git deals well with file moves, but I don't have a lot of experience in this area. What do others think? Any big disadvantages?cheers,iulian
--
« Je déteste la montagne, ça cache le paysage »
Alphonse Allais
There's nothing stopping spliting the ant build up by project now.... and nothing about the new directory structure makes doing so in Ant easier....
Just saying...
There's nothing stopping spliting the ant build up by project now.... and nothing about the new directory structure makes doing so in Ant easier....
On Thu, Jun 7, 2012 at 4:02 PM, Josh Suereth <joshua....@gmail.com> wrote:
There's nothing stopping spliting the ant build up by project now.... and nothing about the new directory structure makes doing so in Ant easier....
Where would you put the per-project build files?