Skip to content

Releases: rickyah/ini-parser

v2.5.2

Choose a tag to compare

@rickyah rickyah released this 24 Jul 13:53

Hotfix:

Version 2.5.0 is NOT signed does not contains a dll with an strong name. This release fixes it
see #151 for more information.

  • Changes from 2.5.X

Breaking Changes:
FileIniParser now writes a file with UTF8 encoding as default value instead of ASCII. FileIniParser was reading the file using UTF8 so this non-uniform behaviour was confusing

Enhancements:
Marked SectionData.LeadingComments property as obsolete
Updated docs to use non-deprecated APIs

Bug Fixes:
#135 Fix searches in Global section made case sensitive even when the case insensitive option was active

v2.5.0

Choose a tag to compare

@rickyah rickyah released this 16 Jul 17:25

Breaking Changes:
FileIniParser now writes a file with UTF8 encoding as default value instead of ASCII. FileIniParser was reading the file using UTF8 so this non-uniform behaviour was confusing

Enhancements:
Marked SectionData.LeadingComments property as obsolete
Updated docs to use non-deprecated APIs

Bug Fixes:
#135 Fix searches in Global section made case sensitive even when the case insensitive option was active

v2.4.0

Choose a tag to compare

@rickyah rickyah released this 21 Feb 22:54

New configuration AllowCreateSectionsOnFly.
When true if you access a non existing section using the indexer the section is
created on the fly instead of throwing an exception.
Defaults to false

e.g.

IniData data = new IniData();
data.Configuration.AllowCreateSectionsOnFly = true;

data["Section1"]["key1"] = "value1"; // No exception!

Console.WriteLine(data["Section1"]["key1"]); // Prints "value1"

v2.3.0 (Minor update)

Choose a tag to compare

@rickyah rickyah released this 01 Jun 00:47

v2.3.0
New APIs (backward compatible):

Allows setting the NewLine character to use when writing an IniData structure
to a file using a IIniDataFormatter.
Use the property NewLineStr in available on IniData.Configuration

Bug Fixes:

  • Fixed license url on nuget package
  • Fix regex to allow parse unicode characters

v2.2.4

Choose a tag to compare

@rickyah rickyah released this 09 Dec 23:51

Maintenance release

v2.2.3 was skipped.

New APIs

  • Added TryGetKey/GetKey methods to IniData
  • Add possibility to pass an IniDataParser to the ctor of FileIniDataParser for consistency

Bug Fixes

  • Fixed issue #88: Now you can use quotes and double quote on section names (thanks @dweldy for the fix)

Clean up

  • Refactor: Separator character is now located in the IniData class
  • Add Visual Studio Code files to ignore

v2.2.2.

Choose a tag to compare

@rickyah rickyah released this 13 Jun 19:47

Maintenance Release

New APIs

  • Method KeyData.AddKey(string keyName, KeyData data) was marked as obsolete. Use KeyData.AddKey(KeyData data) instead

Bug Fixes

  • Fixes a bug when adding sections #83

v2.2.1

Choose a tag to compare

@rickyah rickyah released this 06 Jun 19:51

Maintenance Release

New APIs

  • Adds a bump-version scripts that automates setting the version in the AssemblyInfo.cs file
  • AssemblyInfo.cs file is now shared between the IniParser and IniParser.Tests assemblies so the versions of both files match

Fixes

  • Correctly counts line numbers with either windows or unix line endings #81 (thanks @mbcrawfo)
  • Updates the AssemblyInfo version number
  • ParsingExceptions now prints out the current version of the library (retrieved from AssemblyInfo)

v2.2.0

Choose a tag to compare

@rickyah rickyah released this 31 May 17:44

Changelog:

  • Automatic nuget packaging using the CLI script nuget-pack #80
  • Implements a parser that concatenates duplicated keys in a section #79
  • Allows access to ini file elements using case insensitive names #78
  • Provide better error messages when parsing fails #75
  • This PR introduces a new API for checking errors #74
  • Changed the FileShare attribute of the FileStream to ReadWrite in FileIniParser #68
  • Allow deleting all comments #61
  • Fixes #69: support concatenate duplicate keys. #70
  • Fixes #66 ArgumentNullException when parsing sectionless ini file with comments at the end

Merge operations

Choose a tag to compare

@rickyah rickyah released this 03 Aug 08:52

Introduces merge operations for IniData, SectionData and KeyValueData structures.
Typical use case is to provide a default set of configuration settings that can be partially of fully overridden by user settings:

IniData defaults = GetDefaultSettings();
IniData userSettings = ReadUserSettingsFromConfigFile();

IniData settings = defaults.Merge(userSettings);

v2.1.0: version 2.1.0

Choose a tag to compare

@rickyah rickyah released this 03 Aug 08:48

Allows using an string as comment delimiter instead of just one character.

New IInidataFormatter interface allows that to define the way an IniData structure is converted to an string. The interface can be passed as an argument to an overloaded IniData.ToString(IInidataFormatter formatter) method to customize how to recreate an IniFile. This allows, for example, to read an IniFile with an specified format and persists it with a different one.
The defatult IniData.ToString() method uses a default formatter with the same settings as the configuration used to parse the file.