Hello to you both,
I answer inline below.
On 05/30/2013 02:31 PM, Tiago Tresoldi wrote:
In reply to both Ulrik and Giulio
> a) autogen.sh is traditionally placed in the root directory. I have
> seen it in lots of packages, and always in the root of the sources.
I agree, but it used to be harder in the past to recreate autoconf
files than just "autoreconf --install".
I thought the purpose behind rmfiles.sh was to clean the entire tree
of files more related to active development than to distribution, such
as logs and the like, resulting in a clearer autogen/configure/makefiles.
Just to be clear about the original idea: The rmfiles script was
originally meant to clean the working directory (after a make distclean,
possibly a failed make distclean) of any remaining files that were not
supposed to be under source code control because they were generated.
I think it is time to plan the final tree structure, this organic
growth is starting to get confusing. I suppose drawing a directory
structure, agreeing on it and implementing it is a priority at this
time. Having read what has been discussed, I would go for this:
/bin -- the compiled programs (do you think it is better to have them
in /src?) and the user scripts, with their extensions removed (using,
at least for now, the Perl ones)
I think the /bin directory should not contain the compiled programs, but
only the scripts. I don't think the Makefile.am in src/ copies the
compiled programs to /bin any more.
If we decide to have only scripts in there, why not call it /scripts
instead of /bin? The directory name "scripts" is, at least in my
experience, a commonly seen name for a directory containing scripts.
/doc -- nothing changes
/data -- default files (tbt and et rules)
/data/{language} -- pre-trained models, such as Marco Baroni's Italian
and Ulrik's pre-1948 Danish; as a complete set of trained models is
not complex, everything should ideally be kept in a single directory
Agreed.
/maintain -- development&debug scripts, C testing, etc.
/maintain/data -- data for testing, fake language corpus and
eventually its pre-trained models, etc.
Why not call it /test and simply have tests in there? That way, the
purpose of the directory is clear by its name.
I believe we have so few development scripts (valgrind.sh, rmfiles.sh,
autogen.sh) that they might as well stay in the root directory. But
again, I am not going to be dogmatic about this.
/src -- should only keep the source of the distributed programs;
acopost_test should be moved to /maintain
Before we move acopost_test.c, we need to think it through carefully.
Moving acopost_test.c to a different directory would entail:
1) Having to
a) #include files with -I../src in the /test (or /maintain) directory,
or else
b) move all headers to an /include directory.
2) Having to create a convenience library, src/libacopost.a, which
acopost_test.o could link against, with the .o files being tested.
What do you think? Is this complexity worth the clarity/purity that
comes from moving acopost_test.c?
I am not advocating either way at this point. Just mentioning some caveats.
> On a meta-note: This is the first Open Source project in which I
> participate as a an active co-developer rather than being
either: a) the
> sole developer or b) a "passive" guidance-factor. I am really
enjoying
> the interaction, and I wish to thank you both.
>
> On a related meta-note: I am also enjoying how you two are
pulling in
> the good direction of consensus on the mailinglist before
decisions are
> made. I must confess that, having been the sole developer on my
Open
> Source projects for 12 years, I do find it a good and worthwhile
> exercise to reach consensus, but I must exercise some restraint
in not
> just developing rather than seeking consensus before developing.
Thank
> you for your patience -- I promise to learn to communicate
rather than
> just decide in isolation.
Ideally we should all setup our own "public" repository, develop
there and merge into the main repository after consensus.
For a project of the current size of acopost, is probably
overkilling, but we should think about that for the future.
Given the current size of acopost and the available resources,
however, I think you should not stress yourself too much on ALWAYS
trying to seek consensus BEFORE
developing, or you will not be able to develop anything. An
informative note is appreciated. :-)
I share Ulrik's experience, it has been great! :)
I suppose the seek-for-consensus will not be so imposing after a
while; we are after all making some big changes for a project the size
of acopost, moving from a good old academic experience (by Ingo) made
compilable again after a decade (by a not-so-competent me) and fixed
by a third person (Ulrik) into a true open source project with Debian
packaging as one of its goals.
That is why I agree that we shold not really stress about seeking
consensus, and in my case I want you both to feel completely free to
"correct" my commits and then just drop a note. After all, this is
active development and git does it fine.
Agreed on all points.
Best,
Ulrik
------------------------------------------------------------------------------
Introducing AppDynamics Lite, a free troubleshooting tool for Java/.NET
Get 100% visibility into your production application - at no cost.
Code-level diagnostics for performance bottlenecks with <2% overhead
Download for free and get started troubleshooting in minutes.
http://p.sf.net/sfu/appdyn_d2d_ap1
_______________________________________________
acopost-devel mailing list
acopost-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/acopost-devel