From d232aea163db5eaeb0642533e3b5f07cb18c7d40 Mon Sep 17 00:00:00 2001 From: Joachim Nilsson Date: Mon, 20 Mar 2017 12:31:49 +0100 Subject: [PATCH 01/11] HACKING.md: Update with ABI versioning examples The libtool ABI versioning logic is very confusing but works if you just disable your brain and follow the rules, one by one. Signed-off-by: Joachim Nilsson --- HACKING.md | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/HACKING.md b/HACKING.md index 209933d..e2d44ca 100644 --- a/HACKING.md +++ b/HACKING.md @@ -66,6 +66,23 @@ It must be updated according to the [GNU Libtool recommendations][1]: 6. If any *interfaces have been removed or changed* since the last public release, then set age to 0. +The libtool ABI versioning logic is very confusing but works if you just +disable your brain and follow the rules, one by one. + +**Example #1:** a new function has been added, none of the existing ones +have changed. The initial version is 1:0:0, we follow the rules above to +the letter: increase revision, increase current and set revision to zero, +and finally increase age. This, rather confusingly, gives us 2:0:1 which +libtool then translates to `libconfuse.so.1.1.0`. + +**Example #2:** some existing functions are changed, they now return an +`int` instead of `void`. The initial version is 0:0:0, and we follow the +rules again: increment revision, increment current and set revision to +zero, set age to zero. This gives us 1:0:0, which is then translated to + `libconfuse.so.1.0.0`. + +### Note + Usually, non-developers have no interest in running development versions (releases are frequent enough), and developers are expected to know how to juggle versions. In such an ideal world, it is good enough to bump From 98314b9747bffb1a84f29b67cb92973edd1f0ef2 Mon Sep 17 00:00:00 2001 From: Joachim Nilsson Date: Mon, 20 Mar 2017 12:32:40 +0100 Subject: [PATCH 02/11] Update libConfuse ABI version: 1.0.0 --> 1.1.0 Signed-off-by: Joachim Nilsson --- src/Makefile.am | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Makefile.am b/src/Makefile.am index 700ae15..ec41caa 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -4,7 +4,7 @@ libconfuse_la_SOURCES = confuse.c compat.h lexer.l libconfuse_la_CPPFLAGS = -D_GNU_SOURCE -DBUILDING_DLL libconfuse_la_LIBADD = $(LTLIBINTL) # -no-undefined is required for windows DLL support -libconfuse_la_LDFLAGS = $(AM_LDFLAGS) -no-undefined -version-info 1:0:0 +libconfuse_la_LDFLAGS = $(AM_LDFLAGS) -no-undefined -version-info 2:0:1 datadir = @datadir@ localedir = $(datadir)/locale From f29e888e1d9887fcd65b6ebec2ed37d5ffbe9915 Mon Sep 17 00:00:00 2001 From: Joachim Nilsson Date: Mon, 20 Mar 2017 12:33:05 +0100 Subject: [PATCH 03/11] Update ChangeLog and bump version for v3.1 release Signed-off-by: Joachim Nilsson --- ChangeLog.md | 27 +++++++++++++++++++-------- configure.ac | 2 +- 2 files changed, 20 insertions(+), 9 deletions(-) diff --git a/ChangeLog.md b/ChangeLog.md index 70d13da..c3e6b2d 100644 --- a/ChangeLog.md +++ b/ChangeLog.md @@ -4,18 +4,29 @@ Change Log All notable changes in libConfuse are documented in this file. -[v3.1][UNRELEASED] - 2016-12-XX -------------------------------- +[v3.1][] - 2017-03-20 +--------------------- ### Changes -* New API for creating titled sections at runtime, by Jonas Johansson +* Issue #69: New API for creating titled sections at runtime, + by Jonas Johansson @jonasj76 ### Fixes -* Fix typos in documentation, by Luca Ceresoli -* Fix gettext version requirement, CentOS/RHEL7 only has v0.18.12 -* Fix syntax in rpm spec file, for CentOS/RHEL7 -* SIGSEGV when parsed default values are used with include, by Dmitri Zhabinski -* Fixed MSVC build errors, by George Koskeridis @Gikoskos +* Build unit tests statically for easier debugging +* Issue #21: Major refactor of lexer to fix memory leaks, `cfg_free()` + now properly releases all memory. By Joachim Nilsson @troglobit +* Issue #64: Fixed MSVC build errors, by George Koskeridis @Gikoskos +* Issue #65: SIGSEGV when parsed default values are used with include, + by Dmitri Zhabinski +* Issue #71: Fix syntax in rpm spec file, for CentOS/RHEL7 +* Issue #73: Adjust gettext version requirement to build on CentOS/RHEL7. + GNU gettext v0.18.2.1 update `AM_GNU_GETTEXT()` to use AC_PROG_MKDIR_P + instead of `AM_PROG_MKDIR_P`, but v0.18.1.1 is included in Ubuntu 12.04 + LTS. Fortunately Ubuntu 14.04 LTS ships v0.18.3.1 and Debian Jessie + ships v0.19.3. Unfortunately, CentOS7 and RHEL7 ships v0.18.2.1, so + for best compat. level at this point in time we require v0.18.2. +* Issue #74: Fix typos in documentation, by Luca Ceresoli +* Issue #79: Add `fmemopen()` compat for *BSD, including macOS [v3.0][] - 2016-03-03 diff --git a/configure.ac b/configure.ac index c826215..bc60088 100644 --- a/configure.ac +++ b/configure.ac @@ -2,7 +2,7 @@ dnl Process this file with -*- autoconf -*- to produce a configure script. AC_PREREQ(2.50) -AC_INIT(libConfuse, 3.1-beta1, https://github.com/martinh/libconfuse/issues, confuse) +AC_INIT(libConfuse, 3.1, https://github.com/martinh/libconfuse/issues, confuse) AC_CONFIG_AUX_DIR(support) AM_MAINTAINER_MODE AM_INIT_AUTOMAKE([foreign dist-xz]) From 89828860501117929783ed4b1692c983417925bc Mon Sep 17 00:00:00 2001 From: Joachim Nilsson Date: Wed, 24 May 2017 10:29:11 +0200 Subject: [PATCH 04/11] Update ChangeLog and README with latest changes for v3.1 release Signed-off-by: Joachim Nilsson --- ChangeLog.md | 12 ++++++++++-- README.md | 7 ++++--- 2 files changed, 14 insertions(+), 5 deletions(-) diff --git a/ChangeLog.md b/ChangeLog.md index c3e6b2d..0875452 100644 --- a/ChangeLog.md +++ b/ChangeLog.md @@ -4,12 +4,20 @@ Change Log All notable changes in libConfuse are documented in this file. -[v3.1][] - 2017-03-20 +[v3.1][] - 2017-05-24 --------------------- ### Changes +* Refactored `CFGF_IGNORE_UNKNOWN` support, libConfuse now properly + ignores any type and sub-section without the need for declaring an + `__unknown` option. When the flag is set all unknown options, + including unknown sub-sections with, in turn, unknown options, are + now fully ignored * Issue #69: New API for creating titled sections at runtime, by Jonas Johansson @jonasj76 +* Issue #92: Support for option annotation/comments. Every option + can now have a comment, which is both read and written from/to file +* ABI bump: 1.0.0 --> 1.1.0, due to new functionality ### Fixes * Build unit tests statically for easier debugging @@ -324,7 +332,7 @@ v1.2.2 - 2002-11-27 * updated the manual -[UNRELEASED]: https://github.com/martinh/libconfuse/compare/v3.0...HEAD +[UNRELEASED]: https://github.com/martinh/libconfuse/compare/v3.1...HEAD [v3.1]: https://github.com/martinh/libconfuse/compare/v3.0...v3.1 [v3.0]: https://github.com/martinh/libconfuse/compare/v2.8...v3.0 [v2.8]: https://github.com/martinh/libconfuse/compare/v2.7...v2.8 diff --git a/README.md b/README.md index 0fc6255..6f48dce 100644 --- a/README.md +++ b/README.md @@ -56,9 +56,9 @@ The source code is distributed in three files: Two tarballs in .tar.gz and .tar.xz formats with source code and Makefiles for UNIX systems, and a .zip file with Windows build files. -* confuse-3.0: - [UNIX tar.gz](https://github.com/martinh/libconfuse/releases/download/v3.0/confuse-3.0.tar.gz), - [Windows ZIP](https://github.com/martinh/libconfuse/releases/download/v3.0/confuse-3.0.zip) +* confuse-3.1: + [UNIX tar.gz](https://github.com/martinh/libconfuse/releases/download/v3.1/confuse-3.1.tar.gz), + [Windows ZIP](https://github.com/martinh/libconfuse/releases/download/v3.1/confuse-3.1.zip) * [New releases](https://github.com/martinh/libconfuse/releases) * [Old releases](http://savannah.nongnu.org/download/confuse/) @@ -89,6 +89,7 @@ with the source: News ---- +* 2017-05-24: libConfuse version 3.1 released * 2016-03-03: libConfuse version 3.0 released * 2015-10-14: libConfuse version 2.8 released * 2015-10-12: New patch monkey at the helm of GitHub. From 88343cda1b7ff430def5275d10670704db980413 Mon Sep 17 00:00:00 2001 From: Joachim Nilsson Date: Wed, 24 May 2017 10:35:06 +0200 Subject: [PATCH 05/11] Minor cleanup, remove non-existing m4 files from distribution Signed-off-by: Joachim Nilsson --- m4/Makefile.am | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/m4/Makefile.am b/m4/Makefile.am index cecf886..cefbdfd 100644 --- a/m4/Makefile.am +++ b/m4/Makefile.am @@ -1,8 +1,6 @@ -EXTRA_DIST = intdiv0.m4 inttypes_h.m4 inttypes-pri.m4 nls.m4 \ - po.m4 stdint_h.m4 uintmax_t.m4 intmax.m4 ulonglong.m4 codeset.m4 \ - gettext.m4 glibc21.m4 iconv.m4 lcmessage.m4 \ - lib-ld.m4 lib-link.m4 lib-prefix.m4 progtest.m4 \ - longdouble.m4 longlong.m4 \ - printf-posix.m4 size_max.m4 wchar_t.m4 wint_t.m4 \ - xsize.m4 +EXTRA_DIST = intdiv0.m4 inttypes_h.m4 inttypes-pri.m4 nls.m4 po.m4 \ + stdint_h.m4 uintmax_t.m4 intmax.m4 codeset.m4 gettext.m4 \ + glibc21.m4 iconv.m4 lcmessage.m4 lib-ld.m4 lib-link.m4 \ + lib-prefix.m4 progtest.m4 longlong.m4 printf-posix.m4 \ + size_max.m4 wchar_t.m4 wint_t.m4 xsize.m4 From 1566569fa215c2883dbd2f3194ac91031e84d3ec Mon Sep 17 00:00:00 2001 From: Joachim Nilsson Date: Wed, 24 May 2017 10:35:52 +0200 Subject: [PATCH 06/11] Update translation templates, line numbers and two new strings Signed-off-by: Joachim Nilsson --- po/de.po | 63 +++++++++++++++++++++++++++++++++----------------------- po/fr.po | 63 +++++++++++++++++++++++++++++++++----------------------- po/sv.po | 63 +++++++++++++++++++++++++++++++++----------------------- 3 files changed, 111 insertions(+), 78 deletions(-) diff --git a/po/de.po b/po/de.po index 6b6f2dd..1b87d3b 100644 --- a/po/de.po +++ b/po/de.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: confuse 2.6-2\n" "Report-Msgid-Bugs-To: https://github.com/martinh/libconfuse/issues\n" -"POT-Creation-Date: 2016-03-03 01:12+0100\n" +"POT-Creation-Date: 2017-05-24 10:32+0200\n" "PO-Revision-Date: 2010-02-22 02:06-0500\n" "Last-Translator: Chris Leick \n" "Language-Team: German \n" @@ -17,123 +17,134 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: src/confuse.c:197 src/confuse.c:218 +#: src/confuse.c:194 src/confuse.c:215 src/confuse.c:2012 #, c-format msgid "no such option '%s'" msgstr "keine solche Option »%s«" -#: src/confuse.c:552 +#: src/confuse.c:555 #, c-format msgid "duplicate option '%s' not allowed" msgstr "" -#: src/confuse.c:703 +#: src/confuse.c:722 #, c-format msgid "found duplicate title '%s'" msgstr "doppelter Titel »%s« gefunden" -#: src/confuse.c:729 +#: src/confuse.c:749 #, c-format msgid "invalid integer value for option '%s'" msgstr "ungültiger Ganzzahlwert für Option »%s«" -#: src/confuse.c:733 +#: src/confuse.c:753 #, c-format msgid "integer value for option '%s' is out of range" msgstr "Ganzzahlwert für Option »%s« ist außerhalb des Abschnitts" -#: src/confuse.c:751 +#: src/confuse.c:771 #, c-format msgid "invalid floating point value for option '%s'" msgstr "ungültiger Fließkommawert für Option »%s«" -#: src/confuse.c:755 +#: src/confuse.c:775 #, c-format msgid "floating point value for option '%s' is out of range" msgstr "Fließkommawert für Option »%s« ist außerhalb des Abschnitts" -#: src/confuse.c:837 +#: src/confuse.c:858 #, c-format msgid "invalid boolean value for option '%s'" msgstr "ungültiger Boolean-Wert für Option »%s«" -#: src/confuse.c:1015 +#: src/confuse.c:1035 #, c-format msgid "dropping deprecated configuration option '%s'" msgstr "" -#: src/confuse.c:1018 +#: src/confuse.c:1038 #, c-format msgid "found deprecated option '%s', please update configuration file." msgstr "" -#: src/confuse.c:1047 +#: src/confuse.c:1069 msgid "premature end of file" msgstr "vorzeitiges Ende der Datei" # http://www.dict.cc/deutsch-englisch/Klammer.html -#: src/confuse.c:1064 +#: src/confuse.c:1087 msgid "unexpected closing brace" msgstr "unerwartete schließende eckige Klammer" -#: src/confuse.c:1070 src/confuse.c:1130 src/confuse.c:1148 src/confuse.c:1170 +#: src/confuse.c:1102 src/confuse.c:1174 src/confuse.c:1195 src/confuse.c:1218 +#: src/confuse.c:1330 src/confuse.c:1370 #, c-format msgid "unexpected token '%s'" msgstr "unerwartetes Element »%s«" -#: src/confuse.c:1096 +#: src/confuse.c:1138 #, c-format msgid "attempt to append to non-list option '%s'" msgstr "Versuch, an die Nicht-Listen-Option »%s« anzuhängen" -#: src/confuse.c:1109 +#: src/confuse.c:1151 #, c-format msgid "missing equal sign after option '%s'" msgstr "fehlendes Gleichheitszeichen nach Option »%s«" -#: src/confuse.c:1177 +#: src/confuse.c:1225 #, c-format msgid "missing opening brace for section '%s'" msgstr "öffnende geschweifte Klammer für Abschnitt »%s« fehlt" -#: src/confuse.c:1202 +#: src/confuse.c:1252 #, c-format msgid "missing title for section '%s'" msgstr "fehlender Titel für Abschnitt »%s«" -#: src/confuse.c:1214 +#: src/confuse.c:1264 #, c-format msgid "missing parenthesis for function '%s'" msgstr "runde Klammer für Funktion »%s« fehlt" -#: src/confuse.c:1238 src/confuse.c:1253 +#: src/confuse.c:1286 src/confuse.c:1299 #, c-format msgid "syntax error in call of function '%s'" msgstr "Syntaxfehler im Aufruf der Funktion »%s«" -#: src/confuse.c:1259 +#: src/confuse.c:1386 #, c-format msgid "Internal error in cfg_parse_internal(), unknown state %d" msgstr "" -#: src/confuse.c:1596 +#: src/confuse.c:1737 msgid "wrong number of arguments to cfg_include()" msgstr "falsche Anzahl von Argumenten für cfg_include()" -#: src/lexer.l:151 +#: src/lexer.l:166 #, c-format msgid "invalid octal number '%s'" msgstr "ungültige Oktalzahl »%s«" -#: src/lexer.l:157 +#: src/lexer.l:172 #, c-format msgid "bad escape sequence '%s'" msgstr "falsche Escape-Sequenz »%s«" -#: src/lexer.l:229 +#: src/lexer.l:244 msgid "unterminated string constant" msgstr "nicht beendete Zeichenkettenkonstante" -#: src/lexer.l:297 +#: src/lexer.l:315 msgid "includes nested too deeply" msgstr "Zu tiefe Verschachtelung von includes" + +#: src/lexer.l:327 +#, c-format +msgid "%s: Not found in search path" +msgstr "" + +#: src/lexer.l:336 +#, c-format +msgid "%s: Failed tilde expand" +msgstr "" diff --git a/po/fr.po b/po/fr.po index 39b5c1f..ba38212 100644 --- a/po/fr.po +++ b/po/fr.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: libconfuse 2.6\n" "Report-Msgid-Bugs-To: https://github.com/martinh/libconfuse/issues\n" -"POT-Creation-Date: 2016-03-03 01:12+0100\n" +"POT-Creation-Date: 2017-05-24 10:32+0200\n" "PO-Revision-Date: 2003-01-26 14:10+0100\n" "Last-Translator: Matthieu Sion \n" "Language-Team: None \n" @@ -18,128 +18,139 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: src/confuse.c:197 src/confuse.c:218 +#: src/confuse.c:194 src/confuse.c:215 src/confuse.c:2012 #, c-format msgid "no such option '%s'" msgstr "il n'y a pas d'option '%s'" -#: src/confuse.c:552 +#: src/confuse.c:555 #, c-format msgid "duplicate option '%s' not allowed" msgstr "" -#: src/confuse.c:703 +#: src/confuse.c:722 #, c-format msgid "found duplicate title '%s'" msgstr "" -#: src/confuse.c:729 +#: src/confuse.c:749 #, c-format msgid "invalid integer value for option '%s'" msgstr "valeur entière non valide pour l'option '%s'" -#: src/confuse.c:733 +#: src/confuse.c:753 #, c-format msgid "integer value for option '%s' is out of range" msgstr "valeur entière de l'option '%s' en dehors des limites" -#: src/confuse.c:751 +#: src/confuse.c:771 #, c-format msgid "invalid floating point value for option '%s'" msgstr "" "la valeur de l'option '%s' est un nombre à virgule flottante non valide" -#: src/confuse.c:755 +#: src/confuse.c:775 #, c-format msgid "floating point value for option '%s' is out of range" msgstr "" "la valeur de l'option '%s' est un nombre à virgule flottante en dehors des " "limites" -#: src/confuse.c:837 +#: src/confuse.c:858 #, c-format msgid "invalid boolean value for option '%s'" msgstr "valeur booléenne incorrecte pour l'option '%s'" -#: src/confuse.c:1015 +#: src/confuse.c:1035 #, c-format msgid "dropping deprecated configuration option '%s'" msgstr "" -#: src/confuse.c:1018 +#: src/confuse.c:1038 #, c-format msgid "found deprecated option '%s', please update configuration file." msgstr "" -#: src/confuse.c:1047 +#: src/confuse.c:1069 msgid "premature end of file" msgstr "fin de fichier prématurée" -#: src/confuse.c:1064 +#: src/confuse.c:1087 msgid "unexpected closing brace" msgstr "accolade fermante inattendue" -#: src/confuse.c:1070 src/confuse.c:1130 src/confuse.c:1148 src/confuse.c:1170 +#: src/confuse.c:1102 src/confuse.c:1174 src/confuse.c:1195 src/confuse.c:1218 +#: src/confuse.c:1330 src/confuse.c:1370 #, c-format msgid "unexpected token '%s'" msgstr "mot inattendu '%s'" -#: src/confuse.c:1096 +#: src/confuse.c:1138 #, c-format msgid "attempt to append to non-list option '%s'" msgstr "tentative d'ajout à une option qui n'est pas une liste ('%s')" -#: src/confuse.c:1109 +#: src/confuse.c:1151 #, c-format msgid "missing equal sign after option '%s'" msgstr "signe égal manquant après l'option '%s'" -#: src/confuse.c:1177 +#: src/confuse.c:1225 #, c-format msgid "missing opening brace for section '%s'" msgstr "accolade ouvrante manquante à la section '%s'" -#: src/confuse.c:1202 +#: src/confuse.c:1252 #, c-format msgid "missing title for section '%s'" msgstr "titre manquant à la section '%s'" -#: src/confuse.c:1214 +#: src/confuse.c:1264 #, c-format msgid "missing parenthesis for function '%s'" msgstr "parenthèses manquantes à la fonction '%s'" -#: src/confuse.c:1238 src/confuse.c:1253 +#: src/confuse.c:1286 src/confuse.c:1299 #, c-format msgid "syntax error in call of function '%s'" msgstr "erreur de syntaxe dans l'appel de la fonction '%s'" -#: src/confuse.c:1259 +#: src/confuse.c:1386 #, c-format msgid "Internal error in cfg_parse_internal(), unknown state %d" msgstr "" -#: src/confuse.c:1596 +#: src/confuse.c:1737 msgid "wrong number of arguments to cfg_include()" msgstr "nombre d'arguments incorrect à cfg_include()" -#: src/lexer.l:151 +#: src/lexer.l:166 #, c-format msgid "invalid octal number '%s'" msgstr "nombre octal invalide '%s'" -#: src/lexer.l:157 +#: src/lexer.l:172 #, c-format msgid "bad escape sequence '%s'" msgstr "mauvaise séquence d'échappement '%s'" -#: src/lexer.l:229 +#: src/lexer.l:244 msgid "unterminated string constant" msgstr "chaîne constante non terminée" -#: src/lexer.l:297 +#: src/lexer.l:315 msgid "includes nested too deeply" msgstr "inclusion de fichier à un niveau trop bas" +#: src/lexer.l:327 +#, c-format +msgid "%s: Not found in search path" +msgstr "" + +#: src/lexer.l:336 +#, c-format +msgid "%s: Failed tilde expand" +msgstr "" + #~ msgid "missing opening brace for option '%s'" #~ msgstr "accolade ouvrante manquante pour l'option '%s'" diff --git a/po/sv.po b/po/sv.po index 2d2d9da..a65d35a 100644 --- a/po/sv.po +++ b/po/sv.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: libconfuse 3.0\n" "Report-Msgid-Bugs-To: https://github.com/martinh/libconfuse/issues\n" -"POT-Creation-Date: 2016-03-03 01:12+0100\n" +"POT-Creation-Date: 2017-05-24 10:32+0200\n" "PO-Revision-Date: 2016-03-03 01:50+0100\n" "Last-Translator: Joachim Nilsson \n" "Language-Team: None \n" @@ -18,122 +18,133 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: src/confuse.c:197 src/confuse.c:218 +#: src/confuse.c:194 src/confuse.c:215 src/confuse.c:2012 #, c-format msgid "no such option '%s'" msgstr "ingen flagga '%s' finns" -#: src/confuse.c:552 +#: src/confuse.c:555 #, c-format msgid "duplicate option '%s' not allowed" msgstr "flaggan '%s' har dubletter" -#: src/confuse.c:703 +#: src/confuse.c:722 #, c-format msgid "found duplicate title '%s'" msgstr "titeln '%s' har dubletter" -#: src/confuse.c:729 +#: src/confuse.c:749 #, c-format msgid "invalid integer value for option '%s'" msgstr "felaktigt heltalsvärde för flaggan '%s'" -#: src/confuse.c:733 +#: src/confuse.c:753 #, c-format msgid "integer value for option '%s' is out of range" msgstr "heltalsvärdet för flaggan '%s' är för stort" -#: src/confuse.c:751 +#: src/confuse.c:771 #, c-format msgid "invalid floating point value for option '%s'" msgstr "felaktigt flyttalsvärde för flaggan '%s'" -#: src/confuse.c:755 +#: src/confuse.c:775 #, c-format msgid "floating point value for option '%s' is out of range" msgstr "flyttalsvärdet för flaggan '%s' är utanför tillåten gräns" -#: src/confuse.c:837 +#: src/confuse.c:858 #, c-format msgid "invalid boolean value for option '%s'" msgstr "felaktigt boolskt värde för flaggan '%s'" -#: src/confuse.c:1015 +#: src/confuse.c:1035 #, c-format msgid "dropping deprecated configuration option '%s'" msgstr "ignorerar utdaterad konfigurationsflagga '%s'" -#: src/confuse.c:1018 +#: src/confuse.c:1038 #, c-format msgid "found deprecated option '%s', please update configuration file." msgstr "utdaterad flagga '%s' hittad, vänligen uppdatera konfigurationsfilen." -#: src/confuse.c:1047 +#: src/confuse.c:1069 msgid "premature end of file" msgstr "för tidigt filslut" -#: src/confuse.c:1064 +#: src/confuse.c:1087 msgid "unexpected closing brace" msgstr "oväntad avslutande måsvinge" -#: src/confuse.c:1070 src/confuse.c:1130 src/confuse.c:1148 src/confuse.c:1170 +#: src/confuse.c:1102 src/confuse.c:1174 src/confuse.c:1195 src/confuse.c:1218 +#: src/confuse.c:1330 src/confuse.c:1370 #, c-format msgid "unexpected token '%s'" msgstr "oväntat värde '%s'" -#: src/confuse.c:1096 +#: src/confuse.c:1138 #, c-format msgid "attempt to append to non-list option '%s'" msgstr "försök att lägga till värden till en icke-lista ('%s')" -#: src/confuse.c:1109 +#: src/confuse.c:1151 #, c-format msgid "missing equal sign after option '%s'" msgstr "saknar likamed-tecken efter '%s'" -#: src/confuse.c:1177 +#: src/confuse.c:1225 #, c-format msgid "missing opening brace for section '%s'" msgstr "öppningsparentes saknas för sektion '%s'" -#: src/confuse.c:1202 +#: src/confuse.c:1252 #, c-format msgid "missing title for section '%s'" msgstr "titel till sektion '%s' saknas" -#: src/confuse.c:1214 +#: src/confuse.c:1264 #, c-format msgid "missing parenthesis for function '%s'" msgstr "parentes saknas i anropet till funktionen '%s'" -#: src/confuse.c:1238 src/confuse.c:1253 +#: src/confuse.c:1286 src/confuse.c:1299 #, c-format msgid "syntax error in call of function '%s'" msgstr "syntaktiskt fel i anrop till funktionen '%s'" -#: src/confuse.c:1259 +#: src/confuse.c:1386 #, c-format msgid "Internal error in cfg_parse_internal(), unknown state %d" msgstr "Internt fel i cfg_parse_internal(), okänt tillstånd %d" -#: src/confuse.c:1596 +#: src/confuse.c:1737 msgid "wrong number of arguments to cfg_include()" msgstr "fel antal argument till cfg_include()" -#: src/lexer.l:151 +#: src/lexer.l:166 #, c-format msgid "invalid octal number '%s'" msgstr "otillåtet oktalt nummer '%s'" -#: src/lexer.l:157 +#: src/lexer.l:172 #, c-format msgid "bad escape sequence '%s'" msgstr "felaktig sekvens '%s'" -#: src/lexer.l:229 +#: src/lexer.l:244 msgid "unterminated string constant" msgstr "oavslutad teckensträng" -#: src/lexer.l:297 +#: src/lexer.l:315 msgid "includes nested too deeply" msgstr "inkluderingsfiler för djupt nästlade" + +#: src/lexer.l:327 +#, c-format +msgid "%s: Not found in search path" +msgstr "" + +#: src/lexer.l:336 +#, c-format +msgid "%s: Failed tilde expand" +msgstr "" From a1925c81fd2ee83d77284ce9e101ba39f8b32ea2 Mon Sep 17 00:00:00 2001 From: Joachim Nilsson Date: Wed, 24 May 2017 10:38:41 +0200 Subject: [PATCH 07/11] Update Swedish translation Signed-off-by: Joachim Nilsson --- po/sv.po | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/po/sv.po b/po/sv.po index a65d35a..6130d2d 100644 --- a/po/sv.po +++ b/po/sv.po @@ -142,9 +142,9 @@ msgstr "inkluderingsfiler f #: src/lexer.l:327 #, c-format msgid "%s: Not found in search path" -msgstr "" +msgstr "%s: Saknas i den givna sökvägen" #: src/lexer.l:336 #, c-format msgid "%s: Failed tilde expand" -msgstr "" +msgstr "%s: Kunde inte expandera" From d2c9645456b44bfb2bf6a6423764de025c1c2ca6 Mon Sep 17 00:00:00 2001 From: Joachim Nilsson Date: Wed, 24 May 2017 10:40:53 +0200 Subject: [PATCH 08/11] Add annotate.conf to distribution Signed-off-by: Joachim Nilsson --- tests/Makefile.am | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/Makefile.am b/tests/Makefile.am index 43285f6..3aded77 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -1,4 +1,4 @@ -EXTRA_DIST = a.conf b.conf spdir check_confuse.h +EXTRA_DIST = annotate.conf a.conf b.conf spdir check_confuse.h TESTS = TESTS += suite_single From cb37221bdda71c295a5369708a72bc9cf2259c51 Mon Sep 17 00:00:00 2001 From: Joachim Nilsson Date: Wed, 24 May 2017 11:18:24 +0200 Subject: [PATCH 09/11] Update ChangeLog, late feature change Signed-off-by: Joachim Nilsson --- ChangeLog.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/ChangeLog.md b/ChangeLog.md index 0875452..86c013f 100644 --- a/ChangeLog.md +++ b/ChangeLog.md @@ -15,8 +15,9 @@ All notable changes in libConfuse are documented in this file. now fully ignored * Issue #69: New API for creating titled sections at runtime, by Jonas Johansson @jonasj76 -* Issue #92: Support for option annotation/comments. Every option - can now have a comment, which is both read and written from/to file +* Issue #92: Support for option annotation/comments. Every option can + now have a comment, which is both read and written from/to file. + Disabled by default, enable with `CFGF_COMMENTS` flag in `cfg_init()` * ABI bump: 1.0.0 --> 1.1.0, due to new functionality ### Fixes From a2d4a1030b743731ce0935962120c05cd8c9c155 Mon Sep 17 00:00:00 2001 From: Joachim Nilsson Date: Wed, 24 May 2017 14:35:50 +0200 Subject: [PATCH 10/11] Add generated lexer.c to dist, user should not need flex Signed-off-by: Joachim Nilsson --- src/Makefile.am | 1 + 1 file changed, 1 insertion(+) diff --git a/src/Makefile.am b/src/Makefile.am index ec41caa..998f254 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -11,6 +11,7 @@ localedir = $(datadir)/locale DEFS = -DLOCALEDIR=\"$(localedir)\" @DEFS@ LIBS = @LIBS@ AM_LFLAGS = @DEFS@ -Pcfg_yy -olexer.c +EXTRA_DIST = lexer.c CLEANFILES = *~ \#*\# if MISSING_FMEMOPEN From 92d1003dc8d88c447a0d5b91d9cd63a95b43d15f Mon Sep 17 00:00:00 2001 From: Joachim Nilsson Date: Wed, 24 May 2017 14:36:19 +0200 Subject: [PATCH 11/11] Update translation templates, line numbers only Signed-off-by: Joachim Nilsson --- po/de.po | 26 +++++++++++++------------- po/fr.po | 26 +++++++++++++------------- po/sv.po | 26 +++++++++++++------------- 3 files changed, 39 insertions(+), 39 deletions(-) diff --git a/po/de.po b/po/de.po index 1b87d3b..1de48fd 100644 --- a/po/de.po +++ b/po/de.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: confuse 2.6-2\n" "Report-Msgid-Bugs-To: https://github.com/martinh/libconfuse/issues\n" -"POT-Creation-Date: 2017-05-24 10:32+0200\n" +"POT-Creation-Date: 2017-05-24 13:55+0200\n" "PO-Revision-Date: 2010-02-22 02:06-0500\n" "Last-Translator: Chris Leick \n" "Language-Team: German \n" @@ -17,7 +17,7 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: src/confuse.c:194 src/confuse.c:215 src/confuse.c:2012 +#: src/confuse.c:194 src/confuse.c:215 src/confuse.c:2049 #, c-format msgid "no such option '%s'" msgstr "keine solche Option »%s«" @@ -72,52 +72,52 @@ msgid "premature end of file" msgstr "vorzeitiges Ende der Datei" # http://www.dict.cc/deutsch-englisch/Klammer.html -#: src/confuse.c:1087 +#: src/confuse.c:1090 msgid "unexpected closing brace" msgstr "unerwartete schließende eckige Klammer" -#: src/confuse.c:1102 src/confuse.c:1174 src/confuse.c:1195 src/confuse.c:1218 -#: src/confuse.c:1330 src/confuse.c:1370 +#: src/confuse.c:1111 src/confuse.c:1179 src/confuse.c:1204 src/confuse.c:1227 +#: src/confuse.c:1342 src/confuse.c:1386 #, c-format msgid "unexpected token '%s'" msgstr "unerwartetes Element »%s«" -#: src/confuse.c:1138 +#: src/confuse.c:1143 #, c-format msgid "attempt to append to non-list option '%s'" msgstr "Versuch, an die Nicht-Listen-Option »%s« anzuhängen" -#: src/confuse.c:1151 +#: src/confuse.c:1156 #, c-format msgid "missing equal sign after option '%s'" msgstr "fehlendes Gleichheitszeichen nach Option »%s«" -#: src/confuse.c:1225 +#: src/confuse.c:1234 #, c-format msgid "missing opening brace for section '%s'" msgstr "öffnende geschweifte Klammer für Abschnitt »%s« fehlt" -#: src/confuse.c:1252 +#: src/confuse.c:1261 #, c-format msgid "missing title for section '%s'" msgstr "fehlender Titel für Abschnitt »%s«" -#: src/confuse.c:1264 +#: src/confuse.c:1273 #, c-format msgid "missing parenthesis for function '%s'" msgstr "runde Klammer für Funktion »%s« fehlt" -#: src/confuse.c:1286 src/confuse.c:1299 +#: src/confuse.c:1295 src/confuse.c:1308 #, c-format msgid "syntax error in call of function '%s'" msgstr "Syntaxfehler im Aufruf der Funktion »%s«" -#: src/confuse.c:1386 +#: src/confuse.c:1402 #, c-format msgid "Internal error in cfg_parse_internal(), unknown state %d" msgstr "" -#: src/confuse.c:1737 +#: src/confuse.c:1766 msgid "wrong number of arguments to cfg_include()" msgstr "falsche Anzahl von Argumenten für cfg_include()" diff --git a/po/fr.po b/po/fr.po index ba38212..2be3352 100644 --- a/po/fr.po +++ b/po/fr.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: libconfuse 2.6\n" "Report-Msgid-Bugs-To: https://github.com/martinh/libconfuse/issues\n" -"POT-Creation-Date: 2017-05-24 10:32+0200\n" +"POT-Creation-Date: 2017-05-24 13:55+0200\n" "PO-Revision-Date: 2003-01-26 14:10+0100\n" "Last-Translator: Matthieu Sion \n" "Language-Team: None \n" @@ -18,7 +18,7 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: src/confuse.c:194 src/confuse.c:215 src/confuse.c:2012 +#: src/confuse.c:194 src/confuse.c:215 src/confuse.c:2049 #, c-format msgid "no such option '%s'" msgstr "il n'y a pas d'option '%s'" @@ -75,52 +75,52 @@ msgstr "" msgid "premature end of file" msgstr "fin de fichier prématurée" -#: src/confuse.c:1087 +#: src/confuse.c:1090 msgid "unexpected closing brace" msgstr "accolade fermante inattendue" -#: src/confuse.c:1102 src/confuse.c:1174 src/confuse.c:1195 src/confuse.c:1218 -#: src/confuse.c:1330 src/confuse.c:1370 +#: src/confuse.c:1111 src/confuse.c:1179 src/confuse.c:1204 src/confuse.c:1227 +#: src/confuse.c:1342 src/confuse.c:1386 #, c-format msgid "unexpected token '%s'" msgstr "mot inattendu '%s'" -#: src/confuse.c:1138 +#: src/confuse.c:1143 #, c-format msgid "attempt to append to non-list option '%s'" msgstr "tentative d'ajout à une option qui n'est pas une liste ('%s')" -#: src/confuse.c:1151 +#: src/confuse.c:1156 #, c-format msgid "missing equal sign after option '%s'" msgstr "signe égal manquant après l'option '%s'" -#: src/confuse.c:1225 +#: src/confuse.c:1234 #, c-format msgid "missing opening brace for section '%s'" msgstr "accolade ouvrante manquante à la section '%s'" -#: src/confuse.c:1252 +#: src/confuse.c:1261 #, c-format msgid "missing title for section '%s'" msgstr "titre manquant à la section '%s'" -#: src/confuse.c:1264 +#: src/confuse.c:1273 #, c-format msgid "missing parenthesis for function '%s'" msgstr "parenthèses manquantes à la fonction '%s'" -#: src/confuse.c:1286 src/confuse.c:1299 +#: src/confuse.c:1295 src/confuse.c:1308 #, c-format msgid "syntax error in call of function '%s'" msgstr "erreur de syntaxe dans l'appel de la fonction '%s'" -#: src/confuse.c:1386 +#: src/confuse.c:1402 #, c-format msgid "Internal error in cfg_parse_internal(), unknown state %d" msgstr "" -#: src/confuse.c:1737 +#: src/confuse.c:1766 msgid "wrong number of arguments to cfg_include()" msgstr "nombre d'arguments incorrect à cfg_include()" diff --git a/po/sv.po b/po/sv.po index 6130d2d..e482d41 100644 --- a/po/sv.po +++ b/po/sv.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: libconfuse 3.0\n" "Report-Msgid-Bugs-To: https://github.com/martinh/libconfuse/issues\n" -"POT-Creation-Date: 2017-05-24 10:32+0200\n" +"POT-Creation-Date: 2017-05-24 13:55+0200\n" "PO-Revision-Date: 2016-03-03 01:50+0100\n" "Last-Translator: Joachim Nilsson \n" "Language-Team: None \n" @@ -18,7 +18,7 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: src/confuse.c:194 src/confuse.c:215 src/confuse.c:2012 +#: src/confuse.c:194 src/confuse.c:215 src/confuse.c:2049 #, c-format msgid "no such option '%s'" msgstr "ingen flagga '%s' finns" @@ -72,52 +72,52 @@ msgstr "utdaterad flagga '%s' hittad, v msgid "premature end of file" msgstr "för tidigt filslut" -#: src/confuse.c:1087 +#: src/confuse.c:1090 msgid "unexpected closing brace" msgstr "oväntad avslutande måsvinge" -#: src/confuse.c:1102 src/confuse.c:1174 src/confuse.c:1195 src/confuse.c:1218 -#: src/confuse.c:1330 src/confuse.c:1370 +#: src/confuse.c:1111 src/confuse.c:1179 src/confuse.c:1204 src/confuse.c:1227 +#: src/confuse.c:1342 src/confuse.c:1386 #, c-format msgid "unexpected token '%s'" msgstr "oväntat värde '%s'" -#: src/confuse.c:1138 +#: src/confuse.c:1143 #, c-format msgid "attempt to append to non-list option '%s'" msgstr "försök att lägga till värden till en icke-lista ('%s')" -#: src/confuse.c:1151 +#: src/confuse.c:1156 #, c-format msgid "missing equal sign after option '%s'" msgstr "saknar likamed-tecken efter '%s'" -#: src/confuse.c:1225 +#: src/confuse.c:1234 #, c-format msgid "missing opening brace for section '%s'" msgstr "öppningsparentes saknas för sektion '%s'" -#: src/confuse.c:1252 +#: src/confuse.c:1261 #, c-format msgid "missing title for section '%s'" msgstr "titel till sektion '%s' saknas" -#: src/confuse.c:1264 +#: src/confuse.c:1273 #, c-format msgid "missing parenthesis for function '%s'" msgstr "parentes saknas i anropet till funktionen '%s'" -#: src/confuse.c:1286 src/confuse.c:1299 +#: src/confuse.c:1295 src/confuse.c:1308 #, c-format msgid "syntax error in call of function '%s'" msgstr "syntaktiskt fel i anrop till funktionen '%s'" -#: src/confuse.c:1386 +#: src/confuse.c:1402 #, c-format msgid "Internal error in cfg_parse_internal(), unknown state %d" msgstr "Internt fel i cfg_parse_internal(), okänt tillstånd %d" -#: src/confuse.c:1737 +#: src/confuse.c:1766 msgid "wrong number of arguments to cfg_include()" msgstr "fel antal argument till cfg_include()"