All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Enable cloning an INI document (#140)
- Enable configuration of the regular expression pattern for a section name in an INI document (#138)
- Enable configuration of the newline string used in an INI document (#135)
- Enable configuration of the beginning delimiter of a section in an INI document (#131)
- Enable configuration of the end delimiter of a section in an INI document (#133)
- Enable configuration of duplicate property behavior that specifies how an INI document should behave on loading when a duplicate property occurs (#128)
- Fail: Throws persistence exception when a duplicate property occurs
- Ignore: Ignores subsequent occurrences of a duplicate property by using the first occurrence of such a property
- Override: Overrides previous occurrences of a duplicate property by using the last occurrence of such a property
- Enable configuration of duplicate section behavior that specifies how an INI document should behave on loading when a duplicate section occurs (#124)
- Fail: Throws persistence exception when a duplicate section occurs
- Merge: Merges a duplicate section
- Enable configuration of the assignment spacer of a property in an INI document (#122)
- Enable configuration of the assignment separator of a property in an INI document (#120)
- Enable configuration of invalid line behavior that specifies how an INI document should behave on loading when a line is invalid and cannot be parsed (#117)
- Provide dedicated loose INI document configuration (#111)
- Provide dedicated strict INI document configuration (#112)
- Enable providing record-like string representation of INI document configuration (#109)
- Enable value semantics for INI document configuration (#102)
- Fix resetting case sensitivity to default when specifying another setting in INI document configuration (#105)
- Fix missing argument check in INI document configuration (#103)
- Enable configuration of case sensitivity that specifies how to treat section names and property keys in an INI document (#100)
-
Specify loose modes for default INI document configuration (#90)
Mode Default Property enumeration mode Fallback Property read mode Fallback Property write mode Create Property deletion mode Ignore Section deletion mode Ignore
- Enable deletion of a property from an INI document with a configured default property deletion mode (#86)
- Enable deletion of a section from an INI document with a configured default section deletion mode (#84)
- Enable configuration of the default property write mode for an INI document (#81)
- Enable configuration of the default property read mode for an INI document (#79)
- Enable configuration of the default property enumeration mode for an INI document (#77)
- Introduce INI document configuration (#75)
- Enable creating a new empty INI document (#73)
- Enable deletion of a property in an INI document with a given mode (#69)
- Fail mode: Throw section not found exception if the section does not exist, throw property not found exception if the section exists but the property to delete does not exist
- Ignore mode: Silently ignore if the section or the property to delete does not exist
- Improve performance by superseding exception-based approach by strategy-based approach (#70)
- Enable deletion of a section in an INI document with a given mode (#67)
- Fail mode: Throw section not found exception if the section to delete does not exist
- Ignore mode: Silently ignore if the section to delete does not exist
- Introduce property write mode to create a new property with the given value (#65)
- Expose factory properties instead of factory methods for predefined modes (#61)
- Enable writing the value of a property contained in a section of an INI document with a given mode that specifies the write behavior (#59)
- Update mode: Throw section not found exception when section does not exist, throw property not found exception when property does not exist
- Enable specification of mode when reading a property contained in a section (#55)
- Fail mode: Throw section not found exception when section does not exist, throw property not found exception when property does not exist
- Fallback mode: Return fallback property value given by the mode when the section or property does not exist
- Improve name of method to update property (#52)
- Improve name of method to read property (#42)
- Enable specification of mode when enumerating properties contained in a section of an INI document (#39)
- Fail mode: Throw section not found exception when section does not exist
- Fallback mode: Enumerate empty collection of properties when section does not exist
- Improve name of method to enumerate properties (#37)
- Improve name of method to enumerate sections (#35)
- Streamline persistence methods to load and save an INI document (#18)
- Improve naming of persistence methods by streamline naming to
LoadFrom
andSaveTo
- Throw more specific persistence exception when loading or saving an INI document failed
- Improve naming of persistence methods by streamline naming to
- Enable serialization of an INI document to a text writer (#16)
- Fix possible specification of property key that must not be empty or consist only of white-space characters (#14)
- Fix possible specification of section name that must not be empty or consist only of white-space characters (#12)
- Enable updating the value of a property, specified by the name of the containing section and its property key, in an INI document (#9)
- Enable reading the value of a property, specified by the name of the containing section and its property key, from INI document (#3)
- Enable retrieving all property keys for a section, specified by its section name, from INI document (#4)
- Enable retrieving all section names from INI document (#1)