ObjFW  Changes On Branch 509507274924d6f1

Changes In Branch 1.2 Through [5095072749] Excluding Merge-Ins

This is equivalent to a diff from 3777558ccd to 5095072749

2024-11-02
19:13
Increase library versions check-in: 80ae736f4d user: js tags: 1.2
19:09
Update ChangeLog for 1.2 check-in: a4aff2ff42 user: js tags: trunk
19:08
Update ChangeLog for 1.2 check-in: 5095072749 user: js tags: 1.2
18:15
Set version to 1.3-dev check-in: b8088ce448 user: js tags: trunk
18:11
Branch for 1.2 check-in: 6783d1431a user: js tags: 1.2
02:24
ObjFWHID: Make sure `analog` is always set check-in: 3777558ccd user: js tags: trunk
2024-10-27
23:57
Add support for \x from JSON5 check-in: 229486deb1 user: js tags: trunk

Modified ChangeLog from [5e899eb3a6] to [b178be0081].

1
2
3
4
5
6


































7
8
9
10
11
12
13
Legend:
 * Changes of existing features or bugfixes
 + New features

This file only contains the most significant changes.



































ObjFW 1.1.6 -> ObjFW 1.1.7, 2024-08-25
 * Fixes creating OFStrings from C strings with some encodings.
 * Fixes creating an ASCII C string from an OFString that has been initialized
   by passing an instance of a custom string class.
 * Fixes OFINIFile not parsing `=` within `"` correctly.
 * OFINIFile now allows comments and pairs before the first category.
 * OFINIFile now allows # for comments.






>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>







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
Legend:
 * Changes of existing features or bugfixes
 + New features

This file only contains the most significant changes.

ObjFW 1.1.7 -> ObjFW 1.2, 2024-11-02
 + Adds a new framework for game controllers called ObjFWHID.
 + Adds support for tagged pointer strings.
 + Strings are now allowed to contain `\0`, while preventing such strings from
   being passed to anything that expects a C string.
 * `\u0000` and `\x??` are now allowed in JSON.
 + Adds a new option `OFJSONRepresentationOptionSorted` to create sorted,
   reproducible JSON representations.
 * Socket initialization is now delayed until sockets are used for the first
   time to significantly speed up startup on some systems, in particular game
   consoles.
 + Adds -[readString], -[tryReadString] and -[asyncReadString] to OFStream to
   read until a `\0` is found.
 + Adds support for SCTP sockets.
 + Adds support for UNIX sequenced packet sockets.
 + Adds assembly lookup for the following platforms: ARM64/Win64, RISC-V 64/ELF,
   LoongArch 64/ELF.
 + Adds -[forwardingTargetForSelector:] for the following platforms:
   MIPS64-N64/ELF, RISC-V 64/ELF, LoongArch 64/ELF, PowerPC 64/ELF v1,
   PowerPC 64/ELF v2, ARM64/Win64
 + Adds support for the following encodings: Windows-1250, Codepage 852.
 + Adds support for extended attributes on Solaris.
 * OFPlugin now falls back to loading .dylibs on macOS/iOS when no .bundle was
   found.
 * OFINICategory was renamed to OFINISection.
 * The API for async I/O handlers was changed to contain more arguments, which
   results in new methods that take a handler instead of a block and deprecating
   the old ones.
 * -[attributesOfItemAtIRI:] now works for embedded files.
 * `OF_APPLICATION_DELEGATE()` now works with `-mwindows`.
 + Adds man pages for all utilities.
 * ofdns now defaults to query AAAA and A, not ALL.
 * ofhash now accepts --rmd160 as an alias for --ripemd160.

ObjFW 1.1.6 -> ObjFW 1.1.7, 2024-08-25
 * Fixes creating OFStrings from C strings with some encodings.
 * Fixes creating an ASCII C string from an OFString that has been initialized
   by passing an instance of a custom string class.
 * Fixes OFINIFile not parsing `=` within `"` correctly.
 * OFINIFile now allows comments and pairs before the first category.
 * OFINIFile now allows # for comments.

Modified configure.ac from [9067714a39] to [14f2e39cfd].

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
AC_INIT(ObjFW, 1.2dev, js@nil.im, objfw, https://objfw.nil.im/)
AC_CONFIG_SRCDIR(src)
AC_CONFIG_AUX_DIR(build-aux)
AC_CONFIG_MACRO_DIR(build-aux/m4)

AC_DEFINE(OBJFW_VERSION_MAJOR, 1, [The major version of ObjFW])
AC_DEFINE(OBJFW_VERSION_MINOR, 2, [The minor version of ObjFW])
dnl This may only be set to 1.2 once 1.2 is released
AC_SUBST(BUNDLE_VERSION, 1.1.0)
AC_SUBST(BUNDLE_SHORT_VERSION, 1.1)

for i in configure.ac build-aux/m4/*; do
	AS_IF([test $i -nt configure], [
		AC_MSG_ERROR([$i is newer than configure! Run ./autogen.sh!])
	])
done

|






<
|
|







1
2
3
4
5
6
7

8
9
10
11
12
13
14
15
16
AC_INIT(ObjFW, 1.2, js@nil.im, objfw, https://objfw.nil.im/)
AC_CONFIG_SRCDIR(src)
AC_CONFIG_AUX_DIR(build-aux)
AC_CONFIG_MACRO_DIR(build-aux/m4)

AC_DEFINE(OBJFW_VERSION_MAJOR, 1, [The major version of ObjFW])
AC_DEFINE(OBJFW_VERSION_MINOR, 2, [The minor version of ObjFW])

AC_SUBST(BUNDLE_VERSION, 1.2.0)
AC_SUBST(BUNDLE_SHORT_VERSION, 1.2)

for i in configure.ac build-aux/m4/*; do
	AS_IF([test $i -nt configure], [
		AC_MSG_ERROR([$i is newer than configure! Run ./autogen.sh!])
	])
done

2117
2118
2119
2120
2121
2122
2123
2124
2125
2126
2127
2128
2129
2130
2131
])

AS_IF([test x"$GOBJC" = x"yes"], [
	OBJCFLAGS="$OBJCFLAGS -Wwrite-strings -Wpointer-arith"

	AC_ARG_ENABLE(werror,
		AS_HELP_STRING([--disable-werror], [do not build with -Werror]))
	AS_IF([test x"$enable_werror" != x"no"], [
		OBJCFLAGS="$OBJCFLAGS -Werror"
	])

	old_OBJCFLAGS="$OBJCFLAGS"
	OBJCFLAGS="$OBJCFLAGS -Werror"
	AC_MSG_CHECKING(whether we need -Wno-strict-aliasing due to GCC bugs)
	AC_COMPILE_IFELSE([







|







2116
2117
2118
2119
2120
2121
2122
2123
2124
2125
2126
2127
2128
2129
2130
])

AS_IF([test x"$GOBJC" = x"yes"], [
	OBJCFLAGS="$OBJCFLAGS -Wwrite-strings -Wpointer-arith"

	AC_ARG_ENABLE(werror,
		AS_HELP_STRING([--disable-werror], [do not build with -Werror]))
	AS_IF([test x"$enable_werror" = x"yes"], [
		OBJCFLAGS="$OBJCFLAGS -Werror"
	])

	old_OBJCFLAGS="$OBJCFLAGS"
	OBJCFLAGS="$OBJCFLAGS -Werror"
	AC_MSG_CHECKING(whether we need -Wno-strict-aliasing due to GCC bugs)
	AC_COMPILE_IFELSE([