Changes In Branch 1.0 Through [431696dee5] Excluding Merge-Ins
This is equivalent to a diff from 234b6a518a to 431696dee5
2024-02-26
| ||
20:09 | OFLHAArchive: Properly zero-terminate archives check-in: 4fbf5837fd user: js tags: 1.0 | |
2024-02-25
| ||
21:19 | OFLHAArchiveEntry: Create more compatible archives check-in: 431696dee5 user: js tags: 1.0 | |
21:19 | OFLHAArchiveEntry: Create more compatible archives check-in: 7752f8518b user: js tags: trunk | |
2024-02-24
| ||
22:30 | Use `bti c` instead of `bti jc` check-in: 21244a7e62 user: js tags: 1.0 | |
2023-10-08
| ||
19:14 | GitHub Actions: Upgrade to actions/checkout@v4 check-in: bdc755c141 user: js tags: trunk | |
11:49 | Merge trunk into 1.0 branch check-in: 9c61e5d7b7 user: js tags: 1.0 | |
11:48 | Increase patch level for ObjFW library check-in: 234b6a518a user: js tags: trunk | |
11:44 | Update ChangeLog check-in: 9b3a7b4fbb user: js tags: trunk | |
Modified .fossil-settings/clean-glob from [0ae1b8a1ac] to [e3e476a774].
︙ | |||
35 36 37 38 39 40 41 42 43 44 45 46 47 48 | 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 | + | src/tls/Info.plist tests/DerivedData tests/EBOOT.PBP tests/Info.plist tests/PARAM.SFO tests/objc_sync/objc_sync tests/plugin/Info.plist tests/subprocess/subprocess tests/terminal/terminal_tests tests/testfile_bin.m tests/testfile_ini.m tests/tests tests/tests.3dsx tests/tests.arm9 tests/tests.nds |
︙ |
Modified .fossil-settings/ignore-glob from [eed8ea3523] to [a531885e00].
︙ | |||
40 41 42 43 44 45 46 47 48 49 50 51 52 53 | 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 | + | tests/Info.plist tests/PARAM.SFO tests/iOS.xcodeproj/*.pbxuser tests/iOS.xcodeproj/project.xcworkspace tests/iOS.xcodeproj/xcuserdata tests/objc_sync/objc_sync tests/plugin/Info.plist tests/subprocess/subprocess tests/terminal/terminal_tests tests/testfile_bin.m tests/testfile_ini.m tests/tests tests/tests.3dsx tests/tests.arm9 tests/tests.nds |
︙ |
Modified .github/workflows/dragonflybsd.yml from [e4f8b62803] to [6c0eaab5cb].
1 2 3 4 | 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 | - + - - + + | name: dragonflybsd on: [push, pull_request] jobs: tests: |
Modified .github/workflows/freebsd.yml from [9828c9c463] to [4657fe9002].
1 2 3 4 | 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 | - + - - + + | name: freebsd on: [push, pull_request] jobs: tests: |
Modified .github/workflows/netbsd-gcc.yml from [4694c85176] to [9108c5901d].
1 2 3 4 | 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 | - + - - + + - + | name: netbsd-gcc on: [push, pull_request] jobs: tests: |
Modified .github/workflows/netbsd.yml from [2c6f34efc4] to [5d6e9c60e9].
1 2 3 4 | 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 | - + - - + + - + | name: netbsd on: [push, pull_request] jobs: tests: |
Modified .github/workflows/openbsd.yml from [7e76f12fa8] to [a810b5a14b].
1 2 3 4 | 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 | - + - - + + | name: openbsd on: [push, pull_request] jobs: tests: |
Modified .gitignore from [9fa51c850c] to [6d829dc2af].
︙ | |||
40 41 42 43 44 45 46 47 48 49 50 51 52 53 | 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 | + | tests/Info.plist tests/PARAM.SFO tests/iOS.xcodeproj/*.pbxuser tests/iOS.xcodeproj/project.xcworkspace tests/iOS.xcodeproj/xcuserdata tests/objc_sync/objc_sync tests/plugin/Info.plist tests/subprocess/subprocess tests/terminal/terminal_tests tests/testfile_bin.m tests/testfile_ini.m tests/tests tests/tests.3dsx tests/tests.arm9 tests/tests.nds |
︙ |
Modified ChangeLog from [558a5867dd] to [151642cf35].
1 2 3 4 5 6 7 8 9 10 11 12 13 | 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 48 49 50 51 52 53 54 55 | + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + | Legend: * Changes of existing features or bugfixes + New features This file only contains the most significant changes. ObjFW 1.0.9 -> ObjFW 1.0.10, 2024-02-24 * Fixes objc_getClassList() not releasing the global runtime mutex. * Improves OFLHAArchive's compatibility with non-standard archives. + Adds endbr32 / endbr64 / bti instructions for compatibility with Control Flow Integrity. ObjFW 1.0.8 -> ObjFW 1.0.9, 2024-02-18 * Fixes OFGZIPStream reading the size and CRC32 incorrectly when either spans multiple reads. * Fixes a type mismatch in OFMapTable that could cause problems on big endian systems when uint32_t and unsigned long have a different size. * Fixes the default implementation of -[initWithKeys:arguments:] for custom dictionaries. * Improves detection of mutation during enumeration in -[enumerateKeysAndObjectsUsingBlock:]. * Minor documentation fixes. ObjFW 1.0.7 -> ObjFW 1.0.8, 2024-01-21 * Fixes compilation on NetBSD, OpenBSD, OpenIndiana etc. which was broken by 1.0.7. ObjFW 1.0.6 -> ObjFW 1.0.7, 2024-01-21 * Fixes inheriting the environment in OFSubprocess. * Fixes dealloc in OFSubprocess when -[closeForWriting] was called. + Adds tests for OFSubprocess. * Changes the key for +[OFSystemInfo networkInterfaces] to the adapter name on Windows XP and newer to avoid a possible collission on the adapter index. * Fixes compilation with old MinGW versions. * Fixes the documentation for OFSRVDNSResourceRecord. ObjFW 1.0.5 -> ObjFW 1.0.6, 2024-01-15 * Fixes compatibility with autoconf 2.72. * Fixes OFDNSResolver's handling of types, classes and lengths > 255. ObjFW 1.0.4 -> ObjFW 1.0.5, 2023-11-05 * Fixes the calculation of the extra alignment in OFAllocObject() * Fixes +[OFSystemInfo networkInterfaces] on OpenBSD and Windows 98 * Fixes OFSocketAddressString() for AppleTalk addresses * Uses GetModuleHandle() instead of LoadLibrary() where possible on Windows * Disables tests for global blocks on Win64 due to broken compilers * Adds PGP keys to verify tarballs and commits in the code repository ObjFW 1.0.3 -> ObjFW 1.0.4, 2023-10-08 * Fixes OFFile closing fd 0 when initialization fails * Fixes -[stringByAppendingPathComponent:] on empty strings * Fixes +[OFSystemInfo operatingSystemName] and +[OFSystemInfo operatingSystemVersion] returning nil on some systems * Adds a license for localizations |
︙ |
Modified README.md from [ab455f4c69] to [6e10392554].
︙ | |||
51 52 53 54 55 56 57 | 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 | - + | ObjFW is intentionally incompatible with Foundation. This has two reasons: * GNUstep already provides a reimplementation of Foundation, which is only compatible to a certain degree. This means that a developer still needs to care about differences between frameworks if they want to be portable. The idea behind ObjFW is that a developer does not need to concern themselves |
︙ | |||
77 78 79 80 81 82 83 | 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 | - - - - - - - - - - - - - + + + + + + + + + + + + + + + + | <h1 id="installation">Installation</h1> ObjFW packages are available for various operating systems and can be installed as following: |
︙ | |||
383 384 385 386 387 388 389 390 391 392 | 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 | + + + + + - - - - - - - | <h1 id="support">Support and community</h1> If you have any questions about ObjFW or would like to talk to other ObjFW users, the following venues are available: * The [forum](https://objfw.nil.im/forum) * A [Matrix room](https://matrix.to/#/%23objfw:nil.im) * A [Discord room](https://objfw.nil.im/discord), bridged to the Matrix room above * A [Telegram room](https://t.me/objfw), bridged to the Matrix room above * A [Slack room](https://objfw.nil.im/slack), bridged to the Matrix room above * An IRC channel named `#objfw` on `irc.oftc.net` ([Web chat](https://webchat.oftc.net/?channels=%23objfw)), bridged to the Matrix room above |
︙ |
Modified configure.ac from [f54f1e9278] to [c0c6842cf8].
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | - + - + - - + |
|
︙ | |||
148 149 150 151 152 153 154 155 156 157 158 159 160 161 | 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 | + | ;; *) potential_compilers="clang egcc gcc" ;; esac AC_PROG_OBJC($potential_compilers) AC_PROG_OBJCPP AC_PROG_EGREP AC_PROG_LN_S BUILDSYS_CHECK_IOS AC_ARG_WITH(wii, AS_HELP_STRING([--with-wii], [build for Wii])) AS_IF([test x"$with_wii" = x"yes"], [ |
︙ | |||
474 475 476 477 478 479 480 | 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 | - - - - - - + + + - - - - - - - - + + + + + + + + - | CPPFLAGS="-D__EXTENSIONS__ -D_POSIX_PTHREAD_SEMANTICS $CPPFLAGS" ;; esac objc_runtime="ObjFW runtime" AC_CHECK_HEADER(objc/objc.h) AC_MSG_CHECKING(which Objective C runtime to use) |
︙ | |||
843 844 845 846 847 848 849 850 851 852 853 854 855 856 | 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 | + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + | ]) ], [ AC_DEFINE(HAVE_VFP2, 1, [Whether we have VFP2 or above]) AC_MSG_RESULT(yes) ], [ AC_MSG_RESULT(no) ]) ;; aarch64* | arm64*) AC_MSG_CHECKING(for bti) AC_COMPILE_IFELSE([ AC_LANG_PROGRAM([], [ __asm__ __volatile__ ("bti c"); ]) ], [ AC_DEFINE(HAVE_BTI, 1, [Whether we have bti]) AC_MSG_RESULT(yes) ], [ AC_MSG_RESULT(no) ]) ;; i?86) AC_MSG_CHECKING(for endbr32) AC_COMPILE_IFELSE([ AC_LANG_PROGRAM([], [ __asm__ __volatile__ ("endbr32"); ]) ], [ AC_DEFINE(HAVE_ENDBR32, 1, [Whether we have endbr32]) AC_MSG_RESULT(yes) ], [ AC_MSG_RESULT(no) ]) ;; x86_64) AC_MSG_CHECKING(for endbr64) AC_COMPILE_IFELSE([ AC_LANG_PROGRAM([], [ __asm__ __volatile__ ("endbr64"); ]) ], [ AC_DEFINE(HAVE_ENDBR64, 1, [Whether we have endbr64]) AC_MSG_RESULT(yes) ], [ AC_MSG_RESULT(no) ]) ;; esac AC_CHECK_LIB(m, fmod, LIBS="$LIBS -lm") AC_CHECK_LIB(complex, creal, TESTS_LIBS="$TESTS_LIBS -lcomplex") AC_CHECK_FUNCS(strtof truncf) |
︙ | |||
1378 1379 1380 1381 1382 1383 1384 1385 1386 1387 1388 1389 1390 1391 | 1413 1414 1415 1416 1417 1418 1419 1420 1421 1422 1423 1424 1425 1426 1427 1428 1429 1430 1431 1432 1433 1434 1435 1436 1437 | + + + + + + + + + + + | AC_CHECK_LIB(socket, socket, LIBS="$LIBS -lsocket") ;; esac AC_CHECK_HEADER(sys/socket.h, [ AC_DEFINE(OF_HAVE_SYS_SOCKET_H, 1, [Whether we have sys/socket.h]) ]) AC_CHECK_MEMBERS([struct sockaddr.sa_len], [], [], [ #ifdef OF_HAVE_SYS_TYPES_H # include <sys/types.h> #endif #ifdef OF_HAVE_SYS_SOCKET_H # include <sys/socket.h> #endif #ifdef _WIN32 # include <winsock2.h> #endif ]) AC_CHECK_TYPE([struct sockaddr_storage], [ AC_DEFINE(OF_HAVE_SOCKADDR_STORAGE, 1, [Whether we have struct sockaddr_storage]) ], [], [ #ifdef OF_HAVE_SYS_TYPES_H # include <sys/types.h> |
︙ | |||
1457 1458 1459 1460 1461 1462 1463 | 1503 1504 1505 1506 1507 1508 1509 1510 1511 1512 1513 1514 1515 1516 | - - | #endif #ifdef AF_INET6 egrep_cpp_yes #endif ], [ AC_DEFINE(OF_HAVE_IPV6, 1, [Whether we have IPv6]) |
︙ | |||
1947 1948 1949 1950 1951 1952 1953 | 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 | + - + | ]) ], [ break ]) ]) ]) AS_IF([test x"$have_subprocesses" = x"yes"], [ AC_SUBST(USE_SRCS_SUBPROCESS, '${SRCS_SUBPROCESS}') |
︙ | |||
2003 2004 2005 2006 2007 2008 2009 | 2048 2049 2050 2051 2052 2053 2054 2055 2056 2057 2058 2059 2060 2061 2062 | - + | ]) 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])) |
︙ |
Modified extra.mk.in from [818e425173] to [a4a983a2cc].
1 2 3 4 5 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | - + - + | OBJFW_SHARED_LIB = @OBJFW_SHARED_LIB@ OBJFW_STATIC_LIB = @OBJFW_STATIC_LIB@ OBJFW_FRAMEWORK = @OBJFW_FRAMEWORK@ OBJFW_LIB_MAJOR = 1 OBJFW_LIB_MINOR = 0 |
︙ | |||
58 59 60 61 62 63 64 | 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 | - + + | OF_GNUTLS_TLS_STREAM_M = @OF_GNUTLS_TLS_STREAM_M@ OF_HTTP_CLIENT_TESTS_M = @OF_HTTP_CLIENT_TESTS_M@ OF_KQUEUE_KERNEL_EVENT_OBSERVER_M = @OF_KQUEUE_KERNEL_EVENT_OBSERVER_M@ OF_OPENSSL_TLS_STREAM_M = @OF_OPENSSL_TLS_STREAM_M@ OF_POLL_KERNEL_EVENT_OBSERVER_M = @OF_POLL_KERNEL_EVENT_OBSERVER_M@ OF_SECURE_TRANSPORT_TLS_STREAM_M = @OF_SECURE_TRANSPORT_TLS_STREAM_M@ OF_SELECT_KERNEL_EVENT_OBSERVER_M = @OF_SELECT_KERNEL_EVENT_OBSERVER_M@ |
Modified generators/unicode/TableGenerator.h from [6c2ca9fc8b] to [10674e4104].
1 | 1 2 3 4 5 6 7 8 9 | - + | /* |
︙ |
Modified generators/unicode/TableGenerator.m from [1fa7098a9b] to [723fa7abc3].
1 | 1 2 3 4 5 6 7 8 9 | - + | /* |
︙ |
Modified generators/unicode/copyright.h from [210478e1ad] to [ce7f5ded8c].
1 | 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 | - + - + | /* |
︙ |
Added misc/keys.asc version [1717b09117].