Index: ChangeLog
==================================================================
--- ChangeLog
+++ ChangeLog
@@ -1,8 +1,24 @@
Legend:
* Changes of existing features or bugfixes.
+ New features.
+
+ObjFW 0.5.4 -> ObjFW 0.6, 27.02.2012
+ The differences between 0.5.4 and 0.6 are too big to list them all. However,
+ the major new features are:
+ * OFString, OFArray, OFDictionary, OFSet and OFCountedSet are now class
+ clusters.
+ + Serialization and deserialization of objects into/from XML and JSON.
+ + New class OFIntrospection for introspecting classes.
+ + New class OFProcess for working with and controlling child processes.
+ * Lots of OFXMLParser and OFXMLElement improvements.
+ + OFHTTPRequests can have a delegate now for status updates and processing
+ data as soon as it arrives.
+ + There are several backends for OFStreamObserver now, including kqueue, poll
+ and select.
+ + SOCKS5 support for OFTCPSockets (client only).
+ * Several API changes.
ObjFW 0.5.3 -> ObjFW 0.5.4, 30.08.2011
* The blocks runtime is now working correctly.
* Documentation fixes.
* -framework works with objfw-compile now.
Index: Info.plist
==================================================================
--- Info.plist
+++ Info.plist
@@ -15,10 +15,10 @@
CFBundlePackageType
FMWK
CFBundleSignature
OBJFW
CFBundleVersion
- 0.6-dev
+ 0.6
CFBundleShortVersionString
- 0.6-dev
+ 0.6
Index: configure.ac
==================================================================
--- configure.ac
+++ configure.ac
@@ -1,6 +1,6 @@
-AC_INIT(ObjFW, 0.6-dev, js@webkeks.org)
+AC_INIT(ObjFW, 0.6, js@webkeks.org)
AC_CONFIG_SRCDIR(src)
AS_IF([test x"$host" = x"psp"], [
OBJCFLAGS="-G0 $OBJCFLAGS"
LIBS="$LIBS -lpspdebug -lpspdisplay -lpspge -lpspctrl -lpspsdk -lc"
Index: src/OFApplication.h
==================================================================
--- src/OFApplication.h
+++ src/OFApplication.h
@@ -59,12 +59,15 @@
* signal-safe operations like setting a variable or calling a
* signal-safe function!
*/
- (void)applicationDidReceiveSIGINT;
+#ifndef _WIN32
/**
* \brief A method which is called when the application received a SIGHUP.
+ *
+ * This signal is not available on Windows.
*
* \warning You are not allowed to send any messages inside this method, as
* message dispatching is not signal-safe! You are only allowed to do
* signal-safe operations like setting a variable or calling a
* signal-safe function!
@@ -71,10 +74,12 @@
*/
- (void)applicationDidReceiveSIGHUP;
/**
* \brief A method which is called when the application received a SIGUSR1.
+ *
+ * This signal is not available on Windows.
*
* \warning You are not allowed to send any messages inside this method, as
* message dispatching is not signal-safe! You are only allowed to do
* signal-safe operations like setting a variable or calling a
* signal-safe function!
@@ -81,17 +86,20 @@
*/
- (void)applicationDidReceiveSIGUSR1;
/**
* \brief A method which is called when the application received a SIGUSR2.
+ *
+ * This signal is not available on Windows.
*
* \warning You are not allowed to send any messages inside this method, as
* message dispatching is not signal-safe! You are only allowed to do
* signal-safe operations like setting a variable or calling a
* signal-safe function!
*/
- (void)applicationDidReceiveSIGUSR2;
+#endif
@end
/**
* \brief Represents the application as an object.
*/
@@ -103,13 +111,15 @@
int *argc;
char ***argv;
@public
id delegate;
void (*SIGINTHandler)(id, SEL);
+#ifndef _WIN32
void (*SIGHUPHandler)(id, SEL);
void (*SIGUSR1Handler)(id, SEL);
void (*SIGUSR2Handler)(id, SEL);
+#endif
}
#ifdef OF_HAVE_PROPERTIES
@property (readonly, assign) OFString *programName;
@property (readonly, assign) OFArray *arguments;
Index: src/OFApplication.m
==================================================================
--- src/OFApplication.m
+++ src/OFApplication.m
@@ -16,12 +16,15 @@
#include "config.h"
#define OF_APPLICATION_M
+#include
#include
#include
+
+#include
#import "OFApplication.h"
#import "OFString.h"
#import "OFArray.h"
#import "OFDictionary.h"
@@ -53,13 +56,15 @@
{ \
app->sig##Handler(app->delegate, \
@selector(applicationDidReceive##sig)); \
}
SIGNAL_HANDLER(SIGINT)
+#ifndef _WIN32
SIGNAL_HANDLER(SIGHUP)
SIGNAL_HANDLER(SIGUSR1)
SIGNAL_HANDLER(SIGUSR2)
+#endif
#undef SIGNAL_HANDLER
int
of_application_main(int *argc, char **argv[], Class cls)
{
@@ -258,13 +263,15 @@
@selector(applicationDidReceive##sig)]) \
signal(sig, handle##sig); \
else \
signal(sig, SIG_DFL);
REGISTER_SIGNAL(SIGINT)
+#ifndef _WIN32
REGISTER_SIGNAL(SIGHUP)
REGISTER_SIGNAL(SIGUSR1)
REGISTER_SIGNAL(SIGUSR2)
+#endif
#undef REGISTER_SIGNAL
}
- (void)run
{
Index: src/OFArray.h
==================================================================
--- src/OFArray.h
+++ src/OFArray.h
@@ -11,10 +11,17 @@
* Alternatively, it may be distributed under the terms of the GNU General
* Public License, either version 2 or 3, which can be found in the file
* LICENSE.GPLv2 or LICENSE.GPLv3 respectively included in the packaging of this
* file.
*/
+
+#ifndef __STDC_LIMIT_MACROS
+# define __STDC_LIMIT_MACROS
+#endif
+#ifndef __STDC_CONSTANT_MACROS
+# define __STDC_CONSTANT_MACROS
+#endif
#include
#import "OFObject.h"
#import "OFCollection.h"
Index: src/OFDictionary.h
==================================================================
--- src/OFDictionary.h
+++ src/OFDictionary.h
@@ -11,10 +11,17 @@
* Alternatively, it may be distributed under the terms of the GNU General
* Public License, either version 2 or 3, which can be found in the file
* LICENSE.GPLv2 or LICENSE.GPLv3 respectively included in the packaging of this
* file.
*/
+
+#ifndef __STDC_LIMIT_MACROS
+# define __STDC_LIMIT_MACROS
+#endif
+#ifndef __STDC_CONSTANT_MACROS
+# define __STDC_CONSTANT_MACROS
+#endif
#include
#import "OFObject.h"
#import "OFCollection.h"
Index: src/OFFile.h
==================================================================
--- src/OFFile.h
+++ src/OFFile.h
@@ -11,10 +11,17 @@
* Alternatively, it may be distributed under the terms of the GNU General
* Public License, either version 2 or 3, which can be found in the file
* LICENSE.GPLv2 or LICENSE.GPLv3 respectively included in the packaging of this
* file.
*/
+
+#ifndef __STDC_LIMIT_MACROS
+# define __STDC_LIMIT_MACROS
+#endif
+#ifndef __STDC_CONSTANT_MACROS
+# define __STDC_CONSTANT_MACROS
+#endif
#include
#import "OFSeekableStream.h"
Index: src/OFMutableString.h
==================================================================
--- src/OFMutableString.h
+++ src/OFMutableString.h
@@ -12,13 +12,10 @@
* Public License, either version 2 or 3, which can be found in the file
* LICENSE.GPLv2 or LICENSE.GPLv3 respectively included in the packaging of this
* file.
*/
-#include
-#include
-
#import "OFString.h"
/**
* \brief A class for storing and modifying strings.
*/
Index: src/OFMutableString.m
==================================================================
--- src/OFMutableString.m
+++ src/OFMutableString.m
@@ -17,10 +17,12 @@
#include "config.h"
#include
#include
#include
+
+#include
#import "OFString.h"
#import "OFMutableString_UTF8.h"
#import "OFAutoreleasePool.h"
Index: src/OFNumber.h
==================================================================
--- src/OFNumber.h
+++ src/OFNumber.h
@@ -11,10 +11,17 @@
* Alternatively, it may be distributed under the terms of the GNU General
* Public License, either version 2 or 3, which can be found in the file
* LICENSE.GPLv2 or LICENSE.GPLv3 respectively included in the packaging of this
* file.
*/
+
+#ifndef __STDC_LIMIT_MACROS
+# define __STDC_LIMIT_MACROS
+#endif
+#ifndef __STDC_CONSTANT_MACROS
+# define __STDC_CONSTANT_MACROS
+#endif
#include
#import "OFObject.h"
#import "OFSerialization.h"
Index: src/OFProcess.h
==================================================================
--- src/OFProcess.h
+++ src/OFProcess.h
@@ -12,13 +12,18 @@
* Public License, either version 2 or 3, which can be found in the file
* LICENSE.GPLv2 or LICENSE.GPLv3 respectively included in the packaging of this
* file.
*/
-#ifndef _WIN32
-# include
+#ifndef __STDC_LIMIT_MACROS
+# define __STDC_LIMIT_MACROS
+#endif
+#ifndef __STDC_CONSTANT_MACROS
+# define __STDC_CONSTANT_MACROS
#endif
+
+#include
#import "OFStream.h"
#ifdef _WIN32
# include
Index: src/OFSeekableStream.h
==================================================================
--- src/OFSeekableStream.h
+++ src/OFSeekableStream.h
@@ -11,10 +11,17 @@
* Alternatively, it may be distributed under the terms of the GNU General
* Public License, either version 2 or 3, which can be found in the file
* LICENSE.GPLv2 or LICENSE.GPLv3 respectively included in the packaging of this
* file.
*/
+
+#ifndef __STDC_LIMIT_MACROS
+# define __STDC_LIMIT_MACROS
+#endif
+#ifndef __STDC_CONSTANT_MACROS
+# define __STDC_CONSTANT_MACROS
+#endif
#include
#import "OFStream.h"
Index: src/OFSet.h
==================================================================
--- src/OFSet.h
+++ src/OFSet.h
@@ -11,10 +11,17 @@
* Alternatively, it may be distributed under the terms of the GNU General
* Public License, either version 2 or 3, which can be found in the file
* LICENSE.GPLv2 or LICENSE.GPLv3 respectively included in the packaging of this
* file.
*/
+
+#ifndef __STDC_LIMIT_MACROS
+# define __STDC_LIMIT_MACROS
+#endif
+#ifndef __STDC_CONSTANT_MACROS
+# define __STDC_CONSTANT_MACROS
+#endif
#include
#import "OFObject.h"
#import "OFCollection.h"
Index: src/OFStream.h
==================================================================
--- src/OFStream.h
+++ src/OFStream.h
@@ -11,10 +11,17 @@
* Alternatively, it may be distributed under the terms of the GNU General
* Public License, either version 2 or 3, which can be found in the file
* LICENSE.GPLv2 or LICENSE.GPLv3 respectively included in the packaging of this
* file.
*/
+
+#ifndef __STDC_LIMIT_MACROS
+# define __STDC_LIMIT_MACROS
+#endif
+#ifndef __STDC_CONSTANT_MACROS
+# define __STDC_CONSTANT_MACROS
+#endif
#include
#import "OFObject.h"
#import "OFString.h"
Index: src/OFStreamObserver_select.h
==================================================================
--- src/OFStreamObserver_select.h
+++ src/OFStreamObserver_select.h
@@ -11,10 +11,17 @@
* Alternatively, it may be distributed under the terms of the GNU General
* Public License, either version 2 or 3, which can be found in the file
* LICENSE.GPLv2 or LICENSE.GPLv3 respectively included in the packaging of this
* file.
*/
+
+#ifndef __STDC_LIMIT_MACROS
+# define __STDC_LIMIT_MACROS
+#endif
+#ifndef __STDC_CONSTANT_MACROS
+# define __STDC_CONSTANT_MACROS
+#endif
#ifdef OF_HAVE_SYS_SELECT_H
# include
#endif
Index: src/OFString+JSONValue.m
==================================================================
--- src/OFString+JSONValue.m
+++ src/OFString+JSONValue.m
@@ -94,11 +94,11 @@
skipWhitespaces(pointer, stop);
skipComment(pointer, stop);
}
}
-static OF_INLINE uint16_t
+static inline uint16_t
parseUnicodeEscape(const char *pointer, const char *stop)
{
uint16_t ret = 0;
char i;
@@ -123,11 +123,11 @@
}
return ret;
}
-static OF_INLINE OFString*
+static inline OFString*
parseString(const char *restrict *pointer, const char *stop)
{
char *buffer;
size_t i = 0;
@@ -257,11 +257,11 @@
free(buffer);
return nil;
}
-static OF_INLINE OFMutableArray*
+static inline OFMutableArray*
parseArray(const char *restrict *pointer, const char *stop)
{
OFMutableArray *array = [OFMutableArray array];
if (++(*pointer) >= stop)
@@ -299,11 +299,11 @@
(*pointer)++;
return array;
}
-static OF_INLINE OFMutableDictionary*
+static inline OFMutableDictionary*
parseDictionary(const char *restrict *pointer, const char *stop)
{
OFMutableDictionary *dictionary = [OFMutableDictionary dictionary];
if (++(*pointer) >= stop)
@@ -351,11 +351,11 @@
(*pointer)++;
return dictionary;
}
-static OF_INLINE OFNumber*
+static inline OFNumber*
parseNumber(const char *restrict *pointer, const char *stop)
{
BOOL hasDecimal = NO;
size_t i;
OFString *string;
Index: src/OFString.h
==================================================================
--- src/OFString.h
+++ src/OFString.h
@@ -12,11 +12,17 @@
* Public License, either version 2 or 3, which can be found in the file
* LICENSE.GPLv2 or LICENSE.GPLv3 respectively included in the packaging of this
* file.
*/
-#include
+#ifndef __STDC_LIMIT_MACROS
+# define __STDC_LIMIT_MACROS
+#endif
+#ifndef __STDC_CONSTANT_MACROS
+# define __STDC_CONSTANT_MACROS
+#endif
+
#include
#include
#import "OFObject.h"
#import "OFSerialization.h"
Index: src/OFString_UTF8.m
==================================================================
--- src/OFString_UTF8.m
+++ src/OFString_UTF8.m
@@ -18,10 +18,12 @@
#include
#include
#include
#include
+
+#include
#import "OFString_UTF8.h"
#import "OFMutableString_UTF8.h"
#import "OFArray.h"
#import "OFAutoreleasePool.h"
Index: src/OFTCPSocket.h
==================================================================
--- src/OFTCPSocket.h
+++ src/OFTCPSocket.h
@@ -11,10 +11,17 @@
* Alternatively, it may be distributed under the terms of the GNU General
* Public License, either version 2 or 3, which can be found in the file
* LICENSE.GPLv2 or LICENSE.GPLv3 respectively included in the packaging of this
* file.
*/
+
+#ifndef __STDC_LIMIT_MACROS
+# define __STDC_LIMIT_MACROS
+#endif
+#ifndef __STDC_CONSTANT_MACROS
+# define __STDC_CONSTANT_MACROS
+#endif
#ifndef _WIN32
# include
# include
# include
Index: src/asprintf.h
==================================================================
--- src/asprintf.h
+++ src/asprintf.h
@@ -13,10 +13,17 @@
* LICENSE.GPLv2 or LICENSE.GPLv3 respectively included in the packaging of this
* file.
*/
#import "objfw-defs.h"
+
+#ifndef __STDC_LIMIT_MACROS
+# define __STDC_LIMIT_MACROS
+#endif
+#ifndef __STDC_CONSTANT_MACROS
+# define __STDC_CONSTANT_MACROS
+#endif
#ifndef OF_HAVE_ASPRINTF
# include
# ifdef __cplusplus
Index: src/base64.h
==================================================================
--- src/base64.h
+++ src/base64.h
@@ -13,10 +13,17 @@
* LICENSE.GPLv2 or LICENSE.GPLv3 respectively included in the packaging of this
* file.
*/
#import "objfw-defs.h"
+
+#ifndef __STDC_LIMIT_MACROS
+# define __STDC_LIMIT_MACROS
+#endif
+#ifndef __STDC_CONSTANT_MACROS
+# define __STDC_CONSTANT_MACROS
+#endif
#ifdef OF_OBJFW_RUNTIME
# import
#else
# import
Index: src/macros.h
==================================================================
--- src/macros.h
+++ src/macros.h
@@ -14,17 +14,10 @@
* file.
*/
#import "OFObject.h"
-#ifndef __STDC_LIMIT_MACROS
-# define __STDC_LIMIT_MACROS
-#endif
-#ifndef __STDC_CONSTANT_MACROS
-# define __STDC_CONSTANT_MACROS
-#endif
-
#include
#include
#if defined(OF_APPLE_RUNTIME) || defined(OF_GNU_RUNTIME)
# import
Index: src/of_asprintf.h
==================================================================
--- src/of_asprintf.h
+++ src/of_asprintf.h
@@ -11,10 +11,17 @@
* Alternatively, it may be distributed under the terms of the GNU General
* Public License, either version 2 or 3, which can be found in the file
* LICENSE.GPLv2 or LICENSE.GPLv3 respectively included in the packaging of this
* file.
*/
+
+#ifndef __STDC_LIMIT_MACROS
+# define __STDC_LIMIT_MACROS
+#endif
+#ifndef __STDC_CONSTANT_MACROS
+# define __STDC_CONSTANT_MACROS
+#endif
#include
#import "macros.h"
Index: src/of_strptime.h
==================================================================
--- src/of_strptime.h
+++ src/of_strptime.h
@@ -11,10 +11,17 @@
* Alternatively, it may be distributed under the terms of the GNU General
* Public License, either version 2 or 3, which can be found in the file
* LICENSE.GPLv2 or LICENSE.GPLv3 respectively included in the packaging of this
* file.
*/
+
+#ifndef __STDC_LIMIT_MACROS
+# define __STDC_LIMIT_MACROS
+#endif
+#ifndef __STDC_CONSTANT_MACROS
+# define __STDC_CONSTANT_MACROS
+#endif
#include
#ifdef __cplusplus
extern "C" {
Index: utils/objfw-config.in
==================================================================
--- utils/objfw-config.in
+++ utils/objfw-config.in
@@ -35,11 +35,11 @@
LIBS="-L${libdir} -lobjfw @LIBS@"
PLUGIN_CFLAGS="@PLUGIN_CFLAGS@"
PLUGIN_LDFLAGS="@PLUGIN_LDFLAGS@"
PLUGIN_SUFFIX="@PLUGIN_SUFFIX@"
PROG_SUFFIX="@EXEEXT@"
-VERSION="0.6-dev"
+VERSION="0.6"
show_help() {
cat <<__EOF__
objfw-config: Available arguments are: