You are viewing a plain text version of this content. The canonical link for it is here.
Posted to npanday-dev@incubator.apache.org by Lars Corneliussen <me...@lcorneliussen.de> on 2011/05/02 10:41:35 UTC

NPanday Conventions

Hi alltogether,

Just wan't to discuss some of the documented and undocumented conventions:

In the documentation file there already is a comment to keep in mind, 
when reading:

    ~~ TODO: set a title for identifiers, since there are other
    conventions. Adjust to simplify - one group for whole project,
    ~~ plus subgroup for plugins and one for visual studio. Take a note
    that some don't follow convention now and are
    ~~ retained for legacy reasons, but will be refactored away in future


1) Conventions for Group-IDs and Artifact IDs:

    *OLD: ** If the module does not contain children modules, the Group
    ID is the same as the artifact ID.
    *OLD:* * If a module contains children modules, the child module
    Group ID should either be equivalent to a pluralized
             parent module Group ID or be a deriviative of the parent
    module Group ID.


Imho this doesn't make sense. As stated in the comment above we should 
change that to something like:

    NEW: Use the groupId to group a certain set of artifacts. If
    possible, do not use the same identifier for both the group and the
    artifact - this often leads to confusions. The Group-ID usually is
    lower case. In .NET-projects, the artifact id becomes the assembly
    name. This makes UpperCase more suitable for .NET artifact ids.


Also this doesn't make sense:

    *OLD: *The directory structure of the source directory (typically
    src/main/csharp) will follow the same pattern as the group ID.


It should be changed to:

    *NEW: *The directory structure of the source directory (typically
    src/main/csharp) will follow the same pattern as the root namespace
    of a project. This usually corresponds to both the artifactId and
    the assembly name.

2) Add SVN conventions
-> Copy from and link to 
http://maven.apache.org/developers/conventions/svn.html

3) Add Source-code conventions
-> Copy from and link to 
http://maven.apache.org/developers/committer-environment.html

Any other suggestions?

_
Lars

Re: NPanday Conventions

Posted by Lars Corneliussen <me...@lcorneliussen.de>.
Am 02.05.11 12:41, schrieb Lars Corneliussen:
> Hi alltogether,
>
> Just wan't to discuss some of the documented and undocumented 
> conventions:
>
> In the documentation file there already is a comment to keep in mind, 
> when reading:
>
>    ~~ TODO: set a title for identifiers, since there are other
>    conventions. Adjust to simplify - one group for whole project,
>    ~~ plus subgroup for plugins and one for visual studio. Take a note
>    that some don't follow convention now and are
>    ~~ retained for legacy reasons, but will be refactored away in future
>
>
> 1) Conventions for Group-IDs and Artifact IDs:
>
>    *OLD: ** If the module does not contain children modules, the Group
>    ID is the same as the artifact ID.
>    *OLD:* * If a module contains children modules, the child module
>    Group ID should either be equivalent to a pluralized
>             parent module Group ID or be a deriviative of the parent
>    module Group ID.
>
>
> Imho this doesn't make sense. As stated in the comment above we should 
> change that to something like:
>
>    NEW: Use the groupId to group a certain set of artifacts. If
>    possible, do not use the same identifier for both the group and the
>    artifact - this often leads to confusions. The Group-ID usually is
>    lower case. In .NET-projects, the artifact id becomes the assembly
>    name. This makes UpperCase more suitable for .NET artifact ids.
>
>
> Also this doesn't make sense:
>
>    *OLD: *The directory structure of the source directory (typically
>    src/main/csharp) will follow the same pattern as the group ID.
>
>
> It should be changed to:
>
>    *NEW: *The directory structure of the source directory (typically
>    src/main/csharp) will follow the same pattern as the root namespace
>    of a project. This usually corresponds to both the artifactId and
>    the assembly name.
Hm. This is wrong. Usually in .NET-Projects you configure the root 
namespace in the csproj. Then all files directly in the project root 
belong to that namespace (they have a namespace xyz {} anyway)....

But now, when I open the projects, Resharper complains that the 
namespace doesn't fit.

>
> 2) Add SVN conventions
> -> Copy from and link to 
> http://maven.apache.org/developers/conventions/svn.html
>
> 3) Add Source-code conventions
> -> Copy from and link to 
> http://maven.apache.org/developers/committer-environment.html
>
> Any other suggestions?
>
> _
> Lars