-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathopen-issues.txt
110 lines (103 loc) · 7.23 KB
/
open-issues.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
===================================================================================================
Open Issues:
===================================================================================================
---------------------------------------------------------------------------------------------------
Release 0.1: Basics
Release 0.1 will be the foundation of the project: a Java parser, usable to parse most
kinds of Java code; a simple domain model, that is intended to be an abstraction for
(primarily Java) sources with a focus on code transformation and generation; and a
basic code-generating facility to generate code.
---------------------------------------------------------------------------------------------------
ID Prio Description
---------------------------------------------------------------------------------------------------
15 1 Implement support for arrays in fields and parameters.
16 1 Implement generation of useful comments, including descriptions from the glossary.
22 2 Parsing + generation of enum types
23 4 Parsing + generation of annotation types
24 2 Parsing, transformation + generation of thrown exceptions (=> methods)
25 3 Support nested types
26 2 Initialization blocks (static and non-static).
27 3 Parsing + generation of nested classes.
29 2 Parsing + generation of vararg arguments
---------------------------------------------------------------------------------------------------
Release 0.2: More transformers
Release 0.2 is intended to be usable to generate simple domain models. The aim is,
that the generated code is looking similar to hand-written code.
In the following releases (starting with 0.3), the feature-set will be completed, so
more interesting things can be generated.
---------------------------------------------------------------------------------------------------
ID Prio Description
---------------------------------------------------------------------------------------------------
40 2 Write a transformer to add different kinds of Builders. This includes a facility
to split the transformation process, so one class may be used to generate multiple
artifacts.
42 2 Write more transformers to add interfaces, abstract classes (so you are able to add
your own stuff to a generated class), enums and annotation types.
44 2 Implement EqualsAndHashcode Transformer
45 2 Implement ToString Transformer
47 2 Implement support for inheritance: Customer IS-A Person => Either an
AbstractPerson, or a Person interface is generated.
48 2 Implement transformer-chain configurations using (type or package-level) a
nnotations.
49 2 Provide some really good examples
---------------------------------------------------------------------------------------------------
Release 0.3 (0.4?): Code Generation
---------------------------------------------------------------------------------------------------
ID Prio Description
---------------------------------------------------------------------------------------------------
61 3 Parse existing comments.
62 2 Add support for bean validation (JSR 303): Generate Builders that validate beans,
Add validation to constructors for classes that do not have a builder, add
'validate' method(?).
63 2 Types and constants in Annotation (like @X (style=Foo.class)) or
@Immutable(style=Foo.BUILDER) in generated code currently contain the fully
qualified name of the type/constant. This works, but is ugly => remove the
qualification and generate an import statement.
64 2 The bodies generated by AddGetters and so on
are using fully qualified names (java.util.Collections, ...) because otherwise the
code would not be compilable. This has to be changed in the future, because the
code is ugly this way...
65 2 Write and use a configurable CodeFormatter. Parameter-lists, for example, do not
yet consider line-widths right now.
66 2 Implement configurable code generators for different constructs. This will involve
some refactorings.
67 2 The types used in the parsed method bodies are not yet added to the list of
imports.
---------------------------------------------------------------------------------------------------
Release 0.4 (0.3?): Doing Homework
---------------------------------------------------------------------------------------------------
ID Prio Description
---------------------------------------------------------------------------------------------------
81 3 Add missing JavaDocs to jcg sources
82 3 Add missing unit tests to jcg sources
83 3 Add some documentation
20 4 Add some examples illustrating the current features
84 3 Simplify the configuration of the transformers. Separate the transformer
configuration from the rest of the config, provide a facility to extend the
transformer configuration.
86 2 Ant integration with examples on how to transform code using Ant.
13 2 Remove unused code and debugging output (especially to System.out)
---------------------------------------------------------------------------------------------------
Release 0.5: Support manual changes of generated code
---------------------------------------------------------------------------------------------------
ID Prio Description
---------------------------------------------------------------------------------------------------
100 3 Implementing merging of models with focus on merging manual changes into generated code.
---------------------------------------------------------------------------------------------------
Release 0.6: IDE + ANT + Maven Integration
---------------------------------------------------------------------------------------------------
ID Prio Description
---------------------------------------------------------------------------------------------------
3 Eclipse integration (Generate a folder, a package or a single class)
3 IntelliJ IDEA integration (Generate a folder, a package or a single class)
3 ANT support
3 Maven support
---------------------------------------------------------------------------------------------------
Unspecified:
---------------------------------------------------------------------------------------------------
ID Prio Description
---------------------------------------------------------------------------------------------------
4 Add Transformers + Generators for XML/XSD/WSDL
5 Use Xtext (http://www.eclipse.org/Xtext/) to generate more sophisticated things.
3 XML/JAXB support, generation of XSDs.
3 Add configurable Comparators to define the sorting of fields, methods, imports, ...