#548 closed task (done)
Review new persistence framework
Reported by: | epitzer | Owned by: | epitzer |
---|---|---|---|
Priority: | medium | Milestone: | HeuristicLab 3.3.0 |
Component: | Persistence | Version: | 3.2 |
Keywords: | Cc: |
Description
The new persistence framework has been merged into the trunk as HL plugin and is ready to be criticized.
Change History (75)
comment:1 Changed 16 years ago by swagner
- Summary changed from Review New Persistence Framework to Review new persistence framework
comment:2 Changed 16 years ago by epitzer
comment:3 Changed 16 years ago by epitzer
- Owner changed from gkronber to epitzer
- Status changed from new to assigned
comment:4 Changed 16 years ago by epitzer
Replace final fixes for broken parent references with separation of instance creation with meta information. (r1553)
comment:5 Changed 16 years ago by epitzer
XML formatters for all primitive numeric types. (r1554)
comment:6 Changed 16 years ago by epitzer
More renaming and refactoring. (r1555)
comment:7 Changed 16 years ago by epitzer
Namespace refactoring. (r1556)
comment:8 Changed 16 years ago by epitzer
comment:9 Changed 16 years ago by epitzer
- Stronger typing for formatters with the help of generics.
- Separate format and serial data type.
(r1564)
comment:10 Changed 16 years ago by epitzer
Adapt Persistence.GUI to new formatter structure. (r1565)
comment:11 Changed 16 years ago by epitzer
Format white space. (Ctrl-K, Ctrl-D) (r1566)
comment:12 Changed 16 years ago by epitzer
One file per class; rename ViewOnlyFormat -> DebugStringFormat (r1567)
comment:13 Changed 16 years ago by epitzer
comment:14 Changed 16 years ago by epitzer
Streamline XML generation with StringBuilders (r1570)
comment:15 Changed 16 years ago by epitzer
Reset/Re-initialize persistence configuration within GUI. (r1611)
comment:16 Changed 16 years ago by epitzer
namespace refactoring (r1612)
comment:17 Changed 16 years ago by epitzer
Rename sources fill to fit class name (r1613)
comment:18 Changed 16 years ago by epitzer
fail early if deserializer for type in type cache is unavailable. (r1619)
comment:19 Changed 16 years ago by epitzer
replace Getter and Setter delegates with .NET stock Func<object> and Action<object> (r1620)
comment:20 Changed 16 years ago by epitzer
New test case to ensure some coding conventions. (r1621)
comment:21 Changed 16 years ago by epitzer
Namespace refactoring, visibility check (r1623)
comment:22 Changed 16 years ago by epitzer
Added PersistenceException used consistently for all error conditions in the persistence framework (r1625)
comment:23 Changed 16 years ago by epitzer
suspend layout during dynamic GUI generation (r1642)
comment:24 Changed 16 years ago by epitzer
support for default disabled decomposers, re-activate number2string decomposer with negative priority. (r1644)
comment:25 Changed 16 years ago by epitzer
Implement missing primitive formatter for char and add more comprehensive tests. (r1652)
comment:26 Changed 16 years ago by epitzer
more testing. (r1653)
comment:27 Changed 16 years ago by epitzer
Streamline formatter configuration interface. Source types are already embedded in formatter generic type. (r1654)
comment:28 Changed 16 years ago by epitzer
Separate TypeExtensions into its own file. (r1658)
comment:29 Changed 16 years ago by epitzer
Add missing attributes and create type hierarchy for formatters. (r1659)
comment:30 Changed 16 years ago by epitzer
Display a MessageBox if persistence application settings are corrupted. (r1660)
comment:31 Changed 15 years ago by epitzer
reset ZipEntry data to make binary objects comparable (r2718)
comment:32 Changed 15 years ago by epitzer
comment:33 Changed 15 years ago by epitzer
fix handling of PublicKeyToken in TypeNameParser (r2859)
comment:34 Changed 15 years ago by epitzer
Add using around ZipFile to prevent a locked file in case of a deserialization exception (r2874)
comment:35 Changed 15 years ago by epitzer
Ignore assemblies that fail to load during type discovery in configuration services (r2876)
comment:36 Changed 15 years ago by epitzer
Add support for serialization of structs (r2939)
comment:37 Changed 15 years ago by epitzer
unwrap exceptions during constructor call when deserializing storable objects (r2990)
comment:38 Changed 15 years ago by epitzer
add justifications for rejecting a type for serialization in ICompositeSerializer (r2993)
comment:39 Changed 15 years ago by epitzer
Make StorableClass attribute compulsory for StorableSerializer to work, add named property StorableClassType to choose between Empty and MarkedOnly, later other options will be added. (r2994)
comment:40 Changed 15 years ago by abeham
Added StorableClass attribute to some more classes in r2995
comment:41 Changed 15 years ago by abeham
Updated StorableClass attribute on smoe more classes in r2996
comment:42 Changed 15 years ago by swagner
Updated StorableClass attribute on some more classes in r3000.
comment:43 Changed 15 years ago by epitzer
Add missing constructors and hooks (r3002)
comment:44 Changed 15 years ago by epitzer
Add utility to test coverage of persistence support and storable consistency (r3003)
comment:45 Changed 15 years ago by epitzer
add complete persistence API docs (r3004)
comment:46 Changed 15 years ago by epitzer
add support for type information interleaving and subsequently true streaming (r3005)
comment:47 Changed 15 years ago by epitzer
more descriptive persistence error message (r3007)
comment:48 Changed 15 years ago by epitzer
invoke storable hooks in more predictable orders, call hooks defined on base classes first. (r3010)
comment:49 Changed 15 years ago by epitzer
Update API docs. (r3016)
comment:50 Changed 15 years ago by epitzer
Merge StorableClassType.Empty into StorableClassType.MarkedOnly and make it the default if not specified (r3017)
comment:51 Changed 15 years ago by swagner
Restructured persistence code of read-only observable collections in r3019.
comment:52 Changed 15 years ago by epitzer
Move attribute discovery from attribute classes to StorableSerializer (in preparation for unified discovery and handling of AllFields, AllProperties, ...) (r3025)
comment:53 Changed 15 years ago by epitzer
uncomment broken persistence analysis (r3027)
comment:54 Changed 15 years ago by epitzer
add more API docs (r3028)
comment:55 Changed 15 years ago by epitzer
add support for automatic serialization of fields and properties (r3029)
comment:56 Changed 15 years ago by epitzer
prevent excessive caching of reflection information by re-instantiating serializers for every run (r3030)
comment:57 Changed 15 years ago by epitzer
collect all storable caches into storable serializer to reduce prolonged memory usage (r3031)
comment:58 Changed 15 years ago by epitzer
make most serializers internal and complete API documentation (r3036)
comment:59 Changed 15 years ago by epitzer
prevent exceptions during configuration (instead of catching them) (r3037)
comment:60 Changed 15 years ago by swagner
Added missing StorableClass attributes in r3201.
comment:61 Changed 15 years ago by epitzer
correctly allow interleaving of storable and empty classes (r3205)
comment:62 Changed 15 years ago by epitzer
Replace XML reader to ensure proper parsing of line endings especially inside CDATA blocks (r3293)
comment:63 Changed 15 years ago by epitzer
replace repeated calls through reflection with generated code for a twofold speedup (r3553)
comment:64 Changed 15 years ago by epitzer
circumvent code generation for hooks on 64bit systems, this is a bug in the CLR (r3554)
comment:65 Changed 15 years ago by epitzer
throw Exception if class is marked [Storable] but cannot be serialized with the StorableSerializer (r3577)
comment:66 Changed 15 years ago by epitzer
Use callvirt in generated code for calling hooks (r3579)
comment:67 Changed 15 years ago by epitzer
remove 32bit guard [new code generation works for all configurations (Release/Debug) x (x86/x64/Any)] (r3606)
comment:68 Changed 14 years ago by epitzer
correct and speed-up serialization for number enumerables (r3811)
comment:75 Changed 14 years ago by gkronber
Turned of 'Treat warnings as errors' option in the release configuration of the persistence plugin to allow release builds without compiler errors with r3987.
comment:76 Changed 14 years ago by gkronber
comment:77 Changed 14 years ago by gkronber
Improved LINQ statements in SubtreeCrossover to make them more efficient with r3989.
comment:79 Changed 14 years ago by abeham
This ticket should be closed (at version 3.3), and new ones opened that document changes to the persistence framework since the release (r3917 and later).
The reason is that we're adding a ChangeLog based on tickets and version information. It would be good to see new features / enhancements and bug fixes when the persistence is upgraded to 3.3.1 in the changelog.
Please create e.g. a ticket "Improve saving and loading speed" marked as enhancement with version set to 3.3 where the respective changes are listed. The milestone currently does not matter. Please do so for the other changes as well.
comment:80 Changed 14 years ago by epitzer
- Resolution set to fixed
- Status changed from assigned to closed
comment:81 Changed 14 years ago by swagner
- Milestone changed from Iteration 4 to Current
Milestone Iteration 4 deleted
comment:11 Changed 14 years ago by swagner
- Milestone changed from Current to HeuristicLab 3.3.0
Milestone Current deleted
Numerous small changes, coding conventions, renames, mini refactoring (r1542)