Uploaded image for project: 'NPanday'
  1. NPanday
  2. NPANDAY-475

Consolidate AssemblyInfo-generation + modification

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Open
    • Major
    • Resolution: Unresolved
    • 1.4-incubating
    • Backlog
    • Maven Plugins
    • None

    Description

      Current Situation

      Currently, code that handles AssemblyInfo.cs(.vb) is cluttered all over the project.

      1. AbstractCompilerMojo (compile phase) patches AssemblyInfo-versions for **/AssemblyInfo(.cs|.vb)
      2. AssemblyInfoGeneratorMojo (generate-sources phase) uses AssemblyInfo + AssemblyInfoMarshaller to generate new AssemblyInfos

      The AssemblyInfoMarshaller does have a read implementation, but it's half-baked.

      Solution

      I think everything should be unified according to these rules:

      • Make the name of AssemblyInfo and COPYRIGHT configurable (includes NPANDAY-406)
      • generate-sources: If no AssemblyInfo found, generate one to target. Else copy the existing one.
        • Never change the original AssemblyInfo file
        • Make sure, AssemblyInfo file is not overridden by default compiler copy
      • process-sources: Read the AssemblyInfo (Marshaller.unmarshal), patch it, and write it back using marshal-Method.
        • Expose all attributes to the pom (copyright, description, ...)
        • Allow custom assemblyinfo attributes to be specified in the pom

      Attachments

        Activity

          People

            Unassigned Unassigned
            lcorneliussen Lars Corneliussen
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated: