ObjFW  All files named "src/ObjFW.h"

History for src/ObjFW.h

2021-01-02
22:04
Update copyright file: [b6085669fc] check-in: [374e1a1bfa] user: js, branch: trunk, size: 7228 [annotate] [blame] [check-ins using] [diff]
2020-12-22
13:16
Make OFSandbox private

It is unclear whether the same API can be applied to other sandboxing
frameworks. file: [2bba394ec2] check-in: [510628432f] user: js, branch: 1.0, size: 6844 [annotate] [blame] [check-ins using] [diff]

2020-07-06
23:42
Merge trunk into branch "1.0" file: [253b474482] check-in: [98f0907d36] user: js, branch: 1.0, size: 6913 [annotate] [blame] [check-ins using] [diff]
2020-06-24
17:17
ObjFW.h: Add missing imports file: [117174bdb9] check-in: [6f1f036339] user: js, branch: trunk, size: 7317 [annotate] [blame] [check-ins using] [diff]
2020-05-28
23:49
Remove OFSCTPSocket, as it is not ready for 1.0 file: [2b3ccfe1ed] check-in: [3ea919f393] user: js, branch: 1.0, size: 6826 [annotate] [blame] [check-ins using] [diff]
23:31
Merge trunk into 1.0 branch file: [58db83c230] check-in: [370ec3dc84] user: js, branch: 1.0, size: 6882 [annotate] [blame] [check-ins using] [diff]
2020-05-05
01:14
Add OFSCTPSocket file: [da93ca7656] check-in: [4592b16fab] user: js, branch: trunk, size: 7230 [annotate] [blame] [check-ins using] [diff]
2020-05-03
19:36
Add OFSPXStreamSocket file: [35d95ef18d] check-in: [0ded796f1a] user: js, branch: trunk, size: 7174 [annotate] [blame] [check-ins using] [diff]
2020-04-29
23:59
Add OFSPXSocket file: [923afa7ee5] check-in: [857f8edc09] user: js, branch: trunk, size: 7142 [annotate] [blame] [check-ins using] [diff]
2020-04-25
23:02
Add OFIPXSocket file: [fc9f9015ac] check-in: [4a5822e7c0] user: js, branch: trunk, size: 7116 [annotate] [blame] [check-ins using] [diff]
2020-01-08
02:29
Merge branch 'master' into 1.0 file: [e5a1a42cc2] check-in: [e7e1e1c6c5] user: js, branch: 1.0, size: 6714 [annotate] [blame] [check-ins using] [diff]
2020-01-02
01:51
Update copyright file: [a4b5d0b98c] check-in: [c7f0229795] user: js, branch: trunk, size: 7062 [annotate] [blame] [check-ins using] [diff]
01:35
Move objc_{con,de}structInstance to runtime file: [a8a20bb516] check-in: [7f1acf9221] user: js, branch: trunk, size: 7059 [annotate] [blame] [check-ins using] [diff]
2019-12-15
15:37
Remove OFThreadPool

This should not be part of the 1.0 API, as it's unclear how useful it
actually is. file: [e3a54792ac] check-in: [38cf0b9cef] user: js, branch: 1.0, size: 6732 [annotate] [blame] [check-ins using] [diff]

15:37
Merge branch 'master' into 1.0 file: [fb83a9c085] check-in: [11e303eb3b] user: js, branch: 1.0, size: 6758 [annotate] [blame] [check-ins using] [diff]
2019-12-12
23:30
Remove OFIntrospection

This is no longer necessary now that the ObjFW runtime offers the same
API as the Apple runtime. file: [771661c2a9] check-in: [a989f0ab6f] user: js, branch: trunk, size: 7080 [annotate] [blame] [check-ins using] [diff]

2019-10-07
00:07
OFDNSResolver: Major refactor

This temporarily doesn't use the search domains anymore and makes CNAMEs
slightly more inefficient. The next commits will fix both. file: [7965915726] check-in: [ee592cf603] user: js, branch: trunk, size: 7108 [annotate] [blame] [check-ins using] [diff]

2019-10-06
16:27
Rename OFDNSRequest -> OFDNSQuery

This is now in alignment with the terminology of the RFC. file: [1f291aba5e] check-in: [d69f7bc1ff] user: js, branch: trunk, size: 6981 [annotate] [blame] [check-ins using] [diff]

2019-10-01
00:40
Add OFDNSRequest file: [f502edafc8] check-in: [6b2fb27dca] user: js, branch: trunk, size: 6959 [annotate] [blame] [check-ins using] [diff]
2019-09-30
22:46
Add OFDNSResponse file: [3294117378] check-in: [da8eb2d43a] user: js, branch: trunk, size: 6960 [annotate] [blame] [check-ins using] [diff]
2019-09-29
19:57
Merge branch 'master' into 1.0 file: [faf921101f] check-in: [76245b4665] user: js, branch: 1.0, size: 6611 [annotate] [blame] [check-ins using] [diff]
15:58
Remove OFAutoreleasePool

OFAutoreleasePools have long been discouraged in favor of the runtime's
autorelease pools. file: [9b95780617] check-in: [09be825f88] user: js, branch: trunk, size: 6933 [annotate] [blame] [check-ins using] [diff]

15:22
Remove ASN.1 support as it is still incomplete file: [6fb3e2ce31] check-in: [dd2394fc3c] user: js, branch: 1.0, size: 6641 [annotate] [blame] [check-ins using] [diff]
2019-08-01
20:14
Split threading.[hm] into multiple files

This allows the runtime to only link against the parts it needs, without
pulling in unnecessary parts like thread spawning, TLS and conditions. file: [a9de46c0be] check-in: [5358e9ea6a] user: js, branch: trunk, size: 6963 [annotate] [blame] [check-ins using] [diff]

2019-04-11
00:34
Make OFFileManager available with --disable-files

As OFFileManager also works with remote URLs, it makes sense to also
make it available when local files are disabled. In this case, all
path-based methods are unavailable. file: [927e22debb] check-in: [c52f38388c] user: js, branch: trunk, size: 6907 [annotate] [blame] [check-ins using] [diff]

2019-02-17
22:16
OFWindowsRegistryKey: Add write support file: [51f4765bba] check-in: [4c5f686a52] user: js, branch: trunk, size: 6908 [annotate] [blame] [check-ins using] [diff]
2019-01-03
19:13
Update copyright file: [cbd434e22c] check-in: [0509d7a844] user: js, branch: trunk, size: 6718 [annotate] [blame] [check-ins using] [diff]
2018-12-01
19:33
ObjFW.h: Fix unicode.h import file: [9d548071ea] check-in: [f1e2e08017] user: js, branch: trunk, size: 6712 [annotate] [blame] [check-ins using] [diff]
2018-10-27
13:01
Do not subclass OFASN1Value

The reason for this is that OFASN1Value requires an initializer for DER
encoding, however, it might be beneficial to create an ASN.1 type
without providing DER encoding for it. file: [fa03da00eb] check-in: [b1944fd052] user: js, branch: trunk, size: 6674 [annotate] [blame] [check-ins using] [diff]

2018-10-07
02:06
Remove resolver.m

Instead, OFDNSResolver is used for everything now. file: [ee89e1ae2e] check-in: [6e9ee122eb] user: js, branch: trunk, size: 6352 [annotate] [blame] [check-ins using] [diff]

2018-08-11
14:29
OFDNSResourceRecord: Use of_socket_address_t

This avoids unnecessary string construction and parsing and removes
duplicate code to convert an address into a string. file: [3fac06979c] check-in: [75d2d3ba01] user: js, branch: trunk, size: 6404 [annotate] [blame] [check-ins using] [diff]

14:00
Change the layout of of_socket_address_t

Instead of containing a struct sockaddr_storage - which does not exist
on all supported platforms - it now contains a union of all struct
sockaddr_* types.

Additionally, if struct sockaddr_in6 does not exist, it is defined so
that an IPv6 can be stored even if the system does not support IPv6. file: [410a981ac1] check-in: [8f810ecb7e] user: js, branch: trunk, size: 6371 [annotate] [blame] [check-ins using] [diff]

2018-08-04
23:43
OFDNSResolver: Improve error reporting file: [de95586181] check-in: [647ec47eda] user: js, branch: trunk, size: 6367 [annotate] [blame] [check-ins using] [diff]
2018-07-28
18:45
Rename OFLocalization -> OFLocale file: [92ae3f5421] check-in: [aa0384d1bf] user: js, branch: trunk, size: 6374 [annotate] [blame] [check-ins using] [diff]
2018-07-09
00:22
Add OFWindowsRegistryKey file: [292fadcf99] check-in: [5586022d34] user: js, branch: trunk, size: 6380 [annotate] [blame] [check-ins using] [diff]
2018-07-08
12:07
Initial code for OFDNSResolver

This does nothing more than parse /etc/hosts and /etc/resolv.conf so
far. file: [e64e015cee] check-in: [dd375b6d4e] user: js, branch: trunk, size: 6082 [annotate] [blame] [check-ins using] [diff]

2018-06-12
21:33
Rename OFChecksum{Failed -> Mismatch}Exception

This also adds a parameter for the actual and expected checksum. file: [d8f06920eb] check-in: [8f21e8acb5] user: js, branch: trunk, size: 6055 [annotate] [blame] [check-ins using] [diff]

2018-06-04
22:05
OFLHAArchive: Verify CRC16 checksum file: [5b600283bc] check-in: [fca5e53e12] user: js, branch: trunk, size: 6053 [annotate] [blame] [check-ins using] [diff]
2018-05-26
23:04
Add OFLHAArchive

This is currently limited to reading uncompressed LHA level 2 files. file: [42d5f9fcae] check-in: [790b5344d6] user: js, branch: trunk, size: 6010 [annotate] [blame] [check-ins using] [diff]

2018-04-15
19:15
ObjFW.h: Fix conditional for OFHTTPClient import file: [fc17987754] check-in: [4bc1aa6831] user: js, branch: trunk, size: 5955 [annotate] [blame] [check-ins using] [diff]
2018-04-07
14:13
Add OFSecureData file: [55f533bb8f] check-in: [d4d9072480] user: js, branch: trunk, size: 5922 [annotate] [blame] [check-ins using] [diff]
2018-03-10
19:05
Add OFColor

This is useful so that multiple libraries using ObjFW can share the same
type for colors, similar to e.g. of_rectangle_t. file: [8e512daaa9] check-in: [f484fedee2] user: js, branch: trunk, size: 5897 [annotate] [blame] [check-ins using] [diff]

2018-02-11
14:33
Add exception for currentDirectoryPath failing

This also changes OFFileManager to use a buffer with getcwd() rather
than depending on the extension that passing NULL as a buffer will
allocate one. file: [a25671fef1] check-in: [d133fa0a89] user: js, branch: trunk, size: 5877 [annotate] [blame] [check-ins using] [diff]

2018-02-09
00:00
Add OFLoadPluginFailedException

OFOpenItemFailedException was too unspecific and only allowed an errno,
but dlopen() uses dlerror() to report errors, which returns a string. file: [01ae715851] check-in: [4642bc76b0] user: js, branch: trunk, size: 5795 [annotate] [blame] [check-ins using] [diff]

2018-01-21
00:48
Initial OFValue implementation file: [3e34a3f2ec] check-in: [4a08ae655b] user: js, branch: trunk, size: 5724 [annotate] [blame] [check-ins using] [diff]
2018-01-03
19:49
Update copyright notice file: [70a0ca6739] check-in: [7e5c81e186] user: js, branch: trunk, size: 5704 [annotate] [blame] [check-ins using] [diff]
2017-12-23
22:08
OFURLHandler: Add -[openItemAtURL:mode:] file: [4d43c22f56] check-in: [b7c19f2e27] user: js, branch: trunk, size: 5681 [annotate] [blame] [check-ins using] [diff]
2017-11-12
18:27
OFFileManager: Major API redesign

This removes all query methods and replaces them by a single one that
returns a dictionary. Not only does this allow querying multiple
attributes at once, it is also more extensible, as the previous
attributes were specific to file URLs. file: [3aca01c885] check-in: [34fe205b84] user: js, branch: trunk, size: 5656 [annotate] [blame] [check-ins using] [diff]

2017-11-05
18:01
Add OFCharacterSet file: [64ad36595d] check-in: [7c30d6a2e2] user: js, branch: trunk, size: 5683 [annotate] [blame] [check-ins using] [diff]
2017-10-16
22:59
Finally make modules work properly file: [f1eac88a2f] check-in: [3a06dc7def] user: js, branch: trunk, size: 5656 [annotate] [blame] [check-ins using] [diff]
2017-09-11
02:05
OFInvocation: Initial support for invoking

So far this is only for x86_64 with the Apple runtime and does not yet
support all types. It also does not yet support passing arguments via
the stack. file: [478f0cae84] check-in: [95797a4d1c] user: js, branch: trunk, size: 5636 [annotate] [blame] [check-ins using] [diff]

2017-09-09
22:03
Replace type encodings with OFMethodSignature file: [81b46b0472] check-in: [55f1b21ae7] user: js, branch: trunk, size: 5611 [annotate] [blame] [check-ins using] [diff]
2017-07-22
20:50
Split OFDataArray into OFData and OFMutableData file: [218f47e9ac] check-in: [c8f7b90082] user: js, branch: trunk, size: 5540 [annotate] [blame] [check-ins using] [diff]
2017-06-10
10:00
Rename OFDeflateStream back to OFInflateStream

There is not much point in having a bi-directional stream for Deflate
compression / decompression. file: [c85084515b] check-in: [f56a50ee50] user: js, branch: trunk, size: 5572 [annotate] [blame] [check-ins using] [diff]

2017-05-14
21:29
Add OFHTTPCookieManager file: [96e067febe] check-in: [28bacc2aa0] user: js, branch: trunk, size: 5572 [annotate] [blame] [check-ins using] [diff]
2017-04-14
05:14
ObjFW.h: Add missing imports file: [2d3e8c790c] check-in: [ddd6a56658] user: js, branch: trunk, size: 5514 [annotate] [blame] [check-ins using] [diff]
2017-01-09
17:36
Update copyright

Forgot to add 2017, even though I already did quite some changes in
2017. file: [9210a8d6e8] check-in: [44f45c2e35] user: js, branch: trunk, size: 5445 [annotate] [blame] [check-ins using] [diff]

06:26
Add OFLocalization

This singleton gives access to all things locale, including the ability
to get localized strings.

This also adds the OF_LOCALIZED() macro. Its first argument is an ID for
the string to be localized and its second argument is the fallback
string to be used if it cannot retrieve the localized string. Following
that are variable name / value pairs to be replaced in the localized
string.

Getting translated strings is not implemented yet: Instead, it always
uses the fallback string.

This also switches ofhttp to localized strings. file: [b467e259b3] check-in: [06bcb21fc7] user: js, branch: trunk, size: 5439 [annotate] [blame] [check-ins using] [diff]

2016-10-08
15:57
ObjFW.h: Add missing import file: [9d37e8cfea] check-in: [40abd66d5e] user: js, branch: trunk, size: 5412 [annotate] [blame] [check-ins using] [diff]
15:57
Add OFHTTPCookie file: [8793dd352b] check-in: [add93fc39b] user: js, branch: trunk, size: 5393 [annotate] [blame] [check-ins using] [diff]
2016-07-25
22:30
Implement PBKDF2 file: [9a3074fd4c] check-in: [49d1987eaf] user: js, branch: trunk, size: 5367 [annotate] [blame] [check-ins using] [diff]
2016-07-24
02:10
Add OFHMAC file: [99eb763c6d] check-in: [4722527b97] user: js, branch: trunk, size: 5348 [annotate] [blame] [check-ins using] [diff]
00:06
Rename OFHash to OFCryptoHash

OFHash is too generic, as this protocol is for cryptographic hashes. It
also solves the ambiguity of the +[hash] method (which is now
+[cryptoHash]), which conflicted with -[hash] on the class itself,
resulting in classes conforming to OFHash not being able to be used as a
key in an OFDictionary. file: [8a14324578] check-in: [951f530aee] user: js, branch: trunk, size: 5328 [annotate] [blame] [check-ins using] [diff]

2016-07-18
18:53
ObjFW.h: Fix missing imports file: [746f3ea57f] check-in: [6a4f4bcde1] user: js, branch: trunk, size: 5322 [annotate] [blame] [check-ins using] [diff]
2016-06-05
13:18
Key Value Coding: Implement auto-wrapping file: [24be143b49] check-in: [6a92704355] user: js, branch: trunk, size: 5061 [annotate] [blame] [check-ins using] [diff]
2016-05-29
13:02
Rename OFInflateStream back to OFDeflateStream

The reason for renaming to OFInflateStream was to have one stream for
decompression and one for compression in order to reduce memory usage if
only one of the two is needed, as the ivar layout will be smaller then.
However, it is more consistent with other stream classes to have one
stream that can handle both. The increased memory footprint of having
ivars for compression and decompression can be solved by having a
pointer to those instead. This will not incur any performance penalty,
as the pointer will be dereferenced instead of the ivars, meaning the
overhead is only getting the pointer from the ivars once. file: [c7a3d9e2ec] check-in: [134a1121c7] user: js, branch: trunk, size: 5025 [annotate] [blame] [check-ins using] [diff]

2016-05-22
19:53
Add OFTarArchive

This only implements the UNIX v7 format for now. file: [5684940cda] check-in: [7ecdc71677] user: js, branch: trunk, size: 5025 [annotate] [blame] [check-ins using] [diff]

2016-04-23
19:55
Add OFGZIPStream file: [7229dfbc49] check-in: [7c3f557d94] user: js, branch: trunk, size: 4972 [annotate] [blame] [check-ins using] [diff]
2016-03-02
21:07
ObjFW.h: Add OFStatItemFailedException.h file: [853a60c308] check-in: [89fc3e69a8] user: js, branch: trunk, size: 4947 [annotate] [blame] [check-ins using] [diff]
2016-01-03
00:43
Update copyright

While at it, also update the mail address. file: [811d111089] check-in: [cec0f072f8] user: js, branch: 0.8, size: 4906 [annotate] [blame] [check-ins using] [diff]

00:41
Update copyright

While at it, also update the mail address. file: [38a800c5de] check-in: [2a27cf3000] user: js, branch: trunk, size: 4909 [annotate] [blame] [check-ins using] [diff]

2015-10-19
22:15
Add platform.h & make platform defines consistent file: [e6ab3b372e] check-in: [1ba08eebc5] user: js, branch: trunk, size: 4905 [annotate] [blame] [check-ins using] [diff]
2015-08-22
10:57
Move file management to its own class

This makes it possible to add support for delegates for file management
operations and on top makes it easier to add support for file management
operations on URLs. file: [4de76fa1b8] check-in: [f3c452dfef] user: js, branch: trunk, size: 4929 [annotate] [blame] [check-ins using] [diff]

2015-05-16
20:29
Rename OFDeflateStream -> OFInflateStream

It makes more sense to have one class for inflating and one for
deflating instead of having one that does both, as having one that does
both requires more memory per instance when only inflating or deflating
is used. file: [721e47329c] check-in: [2e9336b1ef] user: js, branch: trunk, size: 4902 [annotate] [blame] [check-ins using] [diff]

2015-05-06
20:18
OFNotConnectedException -> OFNotOpenException file: [a95fe31111] check-in: [ff759684e2] user: js, branch: trunk, size: 4872 [annotate] [blame] [check-ins using] [diff]
2015-04-11
11:01
OFOpenFileFailedException: Rename File -> Item file: [62a13b301a] check-in: [ff17b98ab2] user: js, branch: trunk, size: 4908 [annotate] [blame] [check-ins using] [diff]
2015-01-03
20:57
Update copyright file: [c21b053678] check-in: [cfd374b906] user: js, branch: trunk, size: 4908 [annotate] [blame] [check-ins using] [diff]
2014-09-10
14:05
Add OFBigDataArray.h to ObjFW.h file: [d389f40e27] check-in: [27902a926c] user: js, branch: trunk, size: 4902 [annotate] [blame] [check-ins using] [diff]
2014-09-03
22:22
Add OFRIPEMD160Hash file: [cd135e52dd] check-in: [126d9d3aa1] user: js, branch: trunk, size: 4875 [annotate] [blame] [check-ins using] [diff]
15:46
Add OFSHA384Hash and OFSHA512Hash file: [db77a62c8a] check-in: [23f6c0f84d] user: js, branch: trunk, size: 4847 [annotate] [blame] [check-ins using] [diff]
14:30
Rename OFSHA224OrSHA256Hash to OFSHA224Or256Hash file: [166a3749b7] check-in: [42e4ed36ee] user: js, branch: trunk, size: 4797 [annotate] [blame] [check-ins using] [diff]
2014-09-01
11:08
Add OFSHA256Hash

Took me some time to figure out the RFC is buggy and SSIG0(t-15) should
be SSIG0(W(t-15))... file: [1fc6cfc3bc] check-in: [46af1252a5] user: js, branch: trunk, size: 4772 [annotate] [blame] [check-ins using] [diff]

2014-08-06
00:04
Don't export (v)asprintf implementation

In case (v)asprintf was missing, this was exported instead of only being
used internally, potentially causing problems when linking against
another library which also detected libc is missing it. file: [4aaf711667] check-in: [ddbbd50e56] user: js, branch: trunk, size: 4747 [annotate] [blame] [check-ins using] [diff]

2014-06-21
21:43
Move all macros from OFObject.h to macros.h

This means that OFObject.h imports macros.h now, making it unnecessary
to manually import macros.h in almost every file. And while at it, also
import autorelease.h in OFObject.h, so that this doesn't need to be
manually imported in almost every file as well. file: [06bed39988] check-in: [13ee56edf3] user: js, branch: trunk, size: 4768 [annotate] [blame] [check-ins using] [diff]

2014-06-18
12:54
Add OFSettings file: [79328b56d1] check-in: [1333634935] user: js, branch: trunk, size: 4812 [annotate] [blame] [check-ins using] [diff]
2014-02-17
20:51
Move OFINICategory to separate file file: [9b2458d655] check-in: [9d6adbf3d9] user: js, branch: trunk, size: 4815 [annotate] [blame] [check-ins using] [diff]
18:25
Add OFINIFile file: [8316d27014] check-in: [355e24465d] user: js, branch: trunk, size: 4788 [annotate] [blame] [check-ins using] [diff]
2014-01-28
22:50
Rename OFStreamObserver -> OFKernelEventObserver file: [14ed546f27] check-in: [96e20b8093] user: js, branch: trunk, size: 4765 [annotate] [blame] [check-ins using] [diff]
2014-01-27
22:01
Add OFUDPSocket

Async operations will follow later. file: [1d6ba8dd62] check-in: [5025cba435] user: js, branch: trunk, size: 4760 [annotate] [blame] [check-ins using] [diff]

2014-01-26
22:38
Move resolving functionality to resolver.m

This is in preparation for UDP sockets, so that they can share the
resolving functionality with TCP sockets. file: [87583c222f] check-in: [49b1989b63] user: js, branch: trunk, size: 4735 [annotate] [blame] [check-ins using] [diff]

2014-01-09
00:01
Add --disable-files configure flag. file: [23c3f28047] check-in: [f89edd8ed9] user: js, branch: trunk, size: 4683 [annotate] [blame] [check-ins using] [diff]
2014-01-04
00:24
Update copyright. file: [cab09b97ac] check-in: [3b97fc3cd9] user: js, branch: trunk, size: 4652 [annotate] [blame] [check-ins using] [diff]
2013-12-15
16:31
Fix ObjFW.h. file: [5666829fb6] check-in: [f03942db89] user: js, branch: trunk, size: 4646 [annotate] [blame] [check-ins using] [diff]
2013-12-09
22:19
Add +[OFFile copyItemAtPath:toPath:].

This replaces +[OFFile copyFileAtPath:toPath:]. file: [9ac65f6b1e] check-in: [169f06e1ec] user: js, branch: trunk, size: 4648 [annotate] [blame] [check-ins using] [diff]

2013-11-09
19:22
Add OFOptionsParser. file: [c15234d226] check-in: [4521cb6dbc] user: js, branch: trunk, size: 4648 [annotate] [blame] [check-ins using] [diff]
2013-10-10
13:18
Add OFDeflateStream.

No compression support yet, only decompression.

Decompression speed is acceptable for productive use, but there is still
a lot of room for optimization as this is a very straightforward
implementation without much optimization. file: [ee41bf203d] check-in: [d83d3aa719] user: js, branch: trunk, size: 4620 [annotate] [blame] [check-ins using] [diff]

2013-08-22
12:38
Fix ObjFW.h. file: [11475a81b2] check-in: [cbe0df82d9] user: js, branch: trunk, size: 4592 [annotate] [blame] [check-ins using] [diff]
2013-08-14
13:18
OFZIPArchive: Make meta data of files available. file: [4423d34dca] check-in: [2168071f36] user: js, branch: trunk, size: 4618 [annotate] [blame] [check-ins using] [diff]
2013-08-12
21:59
OFZIPArchive: Initial implementation.

Still a lot to do, see list of FIXMEs in the source. file: [3262ca71e0] check-in: [1c78b3a4db] user: js, branch: trunk, size: 4588 [annotate] [blame] [check-ins using] [diff]

2013-06-28
19:15
Rename methods to prevent signature conflicts.

This only affects exceptions. file: [7016b0c88a] check-in: [f3654b5cc6] user: js, branch: trunk, size: 4563 [annotate] [blame] [check-ins using] [diff]

2013-06-27
09:38
Improve OFFile API. file: [0c48db50f2] check-in: [20a5c3d547] user: js, branch: trunk, size: 4555 [annotate] [blame] [check-ins using] [diff]
2013-06-20
08:13
Add support for MessagePack extensions. file: [67fde4ef09] check-in: [5ec11e8b56] user: js, branch: trunk, size: 4587 [annotate] [blame] [check-ins using] [diff]
2013-04-27
01:26
Add OFStdIOStream.

This is used for of_std{in,out,err} now instead of OFFile. file: [a29c563823] check-in: [085bfc12a0] user: js, branch: trunk, size: 4580 [annotate] [blame] [check-ins using] [diff]

2013-04-26
20:40
Make sure +[OFThread sleep*] is always available.

This means that even if --disable-threads has been specified, it is
possible to use +[OFThread sleep*] to sleep the current (and only)
thread. file: [58cac27b30] check-in: [71d45a29d1] user: js, branch: trunk, size: 4554 [annotate] [blame] [check-ins using] [diff]

20:18
Only build OFProcess if available. file: [459089c732] check-in: [9965b1550e] user: js, branch: trunk, size: 4555 [annotate] [blame] [check-ins using] [diff]
19:42
Make it possible to disable sockets. file: [fbd2428681] check-in: [590c377d8a] user: js, branch: trunk, size: 4522 [annotate] [blame] [check-ins using] [diff]
2013-02-23
18:00
Disallow \u0000 in JSON and fix ObjFW.h. file: [409806974f] check-in: [9c24db3c6d] user: js, branch: trunk, size: 4325 [annotate] [blame] [check-ins using] [diff]
2013-01-12
20:53
Clean up the feature #ifdef mess. file: [46c8ffd626] check-in: [b8ce2359f3] user: js, branch: trunk, size: 4283 [annotate] [blame] [check-ins using] [diff]
2013-01-09
22:24
Update copyright. file: [e5cbb2dc26] check-in: [813c00ccf0] user: js, branch: trunk, size: 4258 [annotate] [blame] [check-ins using] [diff]
2013-01-03
21:20
Add OFSystemInfo.h to ObjFW.h. file: [07756e8842] check-in: [4039281f74] user: js, branch: trunk, size: 4252 [annotate] [blame] [check-ins using] [diff]
2012-12-26
20:55
OFHTTPRequestResult -> OFHTTPRequestReply.

The class also has its own file now. file: [070a0731f0] check-in: [75f187cef5] user: js, branch: trunk, size: 4227 [annotate] [blame] [check-ins using] [diff]

2012-12-11
12:12
Add OFHTTPServer. file: [b5cd66bf5f] check-in: [190b9d3a5c] user: js, branch: trunk, size: 4196 [annotate] [blame] [check-ins using] [diff]
2012-12-09
12:13
Split OFHTTPRequest into OFHTTP{Client,Request}. file: [883aacb44f] check-in: [2b7a70e246] user: js, branch: trunk, size: 4171 [annotate] [blame] [check-ins using] [diff]
2012-12-01
17:26
Add OFMapTable. file: [b47e6ec8d8] check-in: [6f081c14f9] user: js, branch: trunk, size: 4146 [annotate] [blame] [check-ins using] [diff]
2012-10-26
11:23
Add OFLocking protocol. file: [0cadaadec7] check-in: [7c33158c22] user: js, branch: trunk, size: 4123 [annotate] [blame] [check-ins using] [diff]
11:04
Split OFThread.m into multiple files.

It was time to finally have one file per class. file: [2df4cec6a1] check-in: [0a55edad35] user: js, branch: trunk, size: 4144 [annotate] [blame] [check-ins using] [diff]

2012-09-11
16:48
Add OFTimer and OFRunLoop. file: [2fc0f8109d] check-in: [a4494ec477] user: js, branch: trunk, size: 3961 [annotate] [blame] [check-ins using] [diff]
2012-09-09
14:36
Add OFSortedList. file: [0edf98a084] check-in: [c0f28cf861] user: js, branch: trunk, size: 3919 [annotate] [blame] [check-ins using] [diff]
2012-08-07
08:35
Add autorelease.h and export functions. file: [83c87b8540] check-in: [7fbf13845b] user: js, branch: trunk, size: 3894 [annotate] [blame] [check-ins using] [diff]
2012-06-10
16:07
JSON: Make it possible to get the invalid line.

This introduces OFInvalidJSONException, which has a property line to get
the line in which the parsing error occurred. file: [d4c97a2a17] check-in: [72c71c4eb2] user: js, branch: trunk, size: 3870 [annotate] [blame] [check-ins using] [diff]

2012-03-21
10:45
Add OFThreadPool. file: [951501aebd] check-in: [420e3c09c6] user: js, branch: trunk, size: 3835 [annotate] [blame] [check-ins using] [diff]
2012-03-06
16:05
Add OFTLSSocket.h to ObjFW.h. file: [db974cd04e] check-in: [b8307fa156] user: js, branch: trunk, size: 3809 [annotate] [blame] [check-ins using] [diff]
2012-02-03
14:20
Add OFXMLProcessingInstructions and let OFXMLElementBuilder create them. file: [8fd79eed1b] check-in: [045aa2e2d5] user: js, branch: trunk, size: 3785 [annotate] [blame] [check-ins using] [diff]
2012-01-05
00:56
Update copyright. file: [29e62caf3c] check-in: [ce70e17b38] user: js, branch: trunk, size: 3745 [annotate] [blame] [check-ins using] [diff]
2011-12-12
20:17
Remove imports from ObjFW.h that don't exist anymore. file: [fd38a7fbea] check-in: [3df0629692] user: js, branch: trunk, size: 3739 [annotate] [blame] [check-ins using] [diff]
2011-11-23
00:21
Add an implementation of strptime. file: [9489a60f19] check-in: [bfdf9135d3] user: js, branch: trunk, size: 3846 [annotate] [blame] [check-ins using] [diff]
2011-10-05
23:26
Add OFProcess.

Win32 implementation following later. file: [ec3eaa6f1a] check-in: [02ab9aa8a9] user: js, branch: trunk, size: 3822 [annotate] [blame] [check-ins using] [diff]

2011-10-04
18:17
Move SOCKS5 support to OFTCPSocket. file: [ec1b299480] check-in: [48708f2435] user: js, branch: trunk, size: 3800 [annotate] [blame] [check-ins using] [diff]
13:14
Split OFXMLElement into OFXML{Element,Characters,CDATA,Comment}. file: [674d85b346] check-in: [03f14bf019] user: js, branch: trunk, size: 3827 [annotate] [blame] [check-ins using] [diff]
2011-08-12
16:18
Add OFSOCKS5Socket. file: [d11c048c78] check-in: [48e58dfed1] user: js, branch: trunk, size: 3724 [annotate] [blame] [check-ins using] [diff]
2011-07-26
21:42
Add OFCountedSet. file: [fa0b5845a5] check-in: [eb791d09d1] user: js, branch: trunk, size: 3697 [annotate] [blame] [check-ins using] [diff]
2011-07-23
14:28
Add OFIntrospection. file: [5a3fab45e8] check-in: [2e7534b6dc] user: js, branch: trunk, size: 3672 [annotate] [blame] [check-ins using] [diff]
2011-07-22
00:00
Include OFSet in ObjFW.h. file: [b7583b83c4] check-in: [ac598c5ec3] user: js, branch: trunk, size: 3643 [annotate] [blame] [check-ins using] [diff]
2011-06-26
13:12
Add OFDoubleVector and OFDoubleMatrix. file: [186d017c07] check-in: [3c47f319dd] user: js, branch: trunk, size: 3623 [annotate] [blame] [check-ins using] [diff]
2011-06-13
00:10
Add OFFloatMatrix. file: [c20de8557f] check-in: [4276459937] user: js, branch: trunk, size: 3569 [annotate] [blame] [check-ins using] [diff]
2011-06-11
00:24
Add OFFloatVector. file: [7f8820dccd] check-in: [d94b9059f2] user: js, branch: trunk, size: 3543 [annotate] [blame] [check-ins using] [diff]
2011-06-05
19:27
Add OFNull class. file: [53e1c8188f] check-in: [183825f113] user: js, branch: trunk, size: 3516 [annotate] [blame] [check-ins using] [diff]
19:12
Add import for OFSerialization.h to ObjFW.h. file: [9f6912fd91] check-in: [0449004f4e] user: js, branch: trunk, size: 3496 [annotate] [blame] [check-ins using] [diff]
2011-03-25
15:48
Pass the condition for condition exceptions. file: [933896ffed] check-in: [b7142607c2] user: js, branch: trunk, size: 3467 [annotate] [blame] [check-ins using] [diff]
15:22
Pass the mutex for mutex exceptions. file: [c77982332c] check-in: [343e80e785] user: js, branch: trunk, size: 3462 [annotate] [blame] [check-ins using] [diff]
2011-03-24
19:42
Get rid of OFExceptions.h. file: [f9e2674922] check-in: [cda44767f4] user: js, branch: trunk, size: 3457 [annotate] [blame] [check-ins using] [diff]
2011-02-09
16:16
Add OFHTTPRequest class. file: [312401f872] check-in: [3beecbace3] user: js, branch: trunk, size: 1466 [annotate] [blame] [check-ins using] [diff]
2011-02-05
15:15
Add support for Base64 encoding. file: [f0cdbd0d51] check-in: [7459fabb87] user: js, branch: trunk, size: 1439 [annotate] [blame] [check-ins using] [diff]
2011-02-01
21:24
Reorder imports in ObjFW.h to get rid of a warning on Win32. file: [5bba582bed] check-in: [c12598e3be] user: js, branch: trunk, size: 1420 [annotate] [blame] [check-ins using] [diff]
2011-01-29
19:01
Add of_asprintf and allow %@ in format strings. file: [ec1ce05ff2] check-in: [4c4608fbba] user: js, branch: trunk, size: 1422 [annotate] [blame] [check-ins using] [diff]
2011-01-14
12:22
Add OFURL class. file: [f49c5a28b5] check-in: [164c76c0cf] user: js, branch: trunk, size: 1398 [annotate] [blame] [check-ins using] [diff]
2011-01-01
20:19
Change license. file: [6658b11f76] check-in: [da6b3d26cb] user: js, branch: trunk, size: 1380 [annotate] [blame] [check-ins using] [diff]
2010-12-25
19:31
Add OFDate. file: [392c80aa74] check-in: [39cb19595d] user: js, branch: trunk, size: 1124 [annotate] [blame] [check-ins using] [diff]
2010-09-06
20:27
Blocks can be used like normal ObjC objects now. file: [b6d3c640b8] check-in: [ccf87e1ffb] user: js, branch: trunk, size: 1105 [annotate] [blame] [check-ins using] [diff]
2010-07-07
20:57
Rename OFSocket to OFStreamSocket.

This is to reflect that it is a connection-based, sequenced, reliable,
two-way byte stream. file: [816eccd8cc] check-in: [28ea4a8a67] user: js, branch: trunk, size: 1085 [annotate] [blame] [check-ins using] [diff]

2010-07-03
17:28
Import OFXMLElementBuilder in ObjFW.h. file: [152202e873] check-in: [bc26452995] user: js, branch: trunk, size: 1079 [annotate] [blame] [check-ins using] [diff]
2010-06-13
03:23
Add OFSocketObserver. file: [b5f7e1402e] check-in: [7390eb7270] user: js, branch: trunk, size: 1047 [annotate] [blame] [check-ins using] [diff]
2010-05-09
14:39
Rename OFHashes to OFHash. file: [491ce3d35b] check-in: [f45026a5f9] user: js, branch: trunk, size: 921 [annotate] [blame] [check-ins using] [diff]
2010-04-07
19:55
Add OFApplication. file: [7f2109937b] check-in: [f034850a98] user: js, branch: trunk, size: 923 [annotate] [blame] [check-ins using] [diff]
2010-03-05
11:52
Merge a few changesets from the default branch into the 0.2 branch.

Changesets:
* b95fcaa6d694
* 804c68d222b4
* da8cd738da3d
* 1109d5ce3419
* d03f5c1ca95d
* 2a7017722165
* 4fccdc79eeb7
* d228149fbc04
* 8782d412a4a6 file: [7a8403f46d] check-in: [b91a8283fe] user: js, branch: 0.2, size: 799 [annotate] [blame] [check-ins using] [diff]

2010-02-19
16:36
Update copyright. file: [2a47813884] check-in: [42886185fd] user: js, branch: trunk, size: 896 [annotate] [blame] [check-ins using] [diff]
2010-02-05
22:16
Conditional imports in ObjFW.h. file: [bd2f16365c] check-in: [a5c1129e8d] user: js, branch: trunk, size: 896 [annotate] [blame] [check-ins using] [diff]
2010-02-02
18:58
Rename OFMacros.h to macros.h, as it's not a class. file: [1e4ff89001] check-in: [832188d759] user: js, branch: trunk, size: 862 [annotate] [blame] [check-ins using] [diff]
2010-01-02
18:18
Fix a typo. file: [298408d0be] check-in: [bd408f1cee] user: js, branch: trunk, size: 799 [annotate] [blame] [check-ins using] [diff]
2009-12-30
13:30
Rename OFIterator to OFEnumerator.
This way, we avoid name inconsistency when introducing fast enumeration.
file: [3af7319142] check-in: [b9e9dfb384] user: js, branch: trunk, size: 798 [annotate] [blame] [check-ins using] [diff]
2009-12-11
12:52
Make it possible to build ObjFW without support for threads. file: [37f9619c34] check-in: [6caac0826e] user: js, branch: trunk, size: 797 [annotate] [blame] [check-ins using] [diff]
2009-11-09
22:45
Rename libobjfw to ObjFW. file: [02c23721b3] check-in: [a3cc34b139] user: js, branch: trunk, size: 771 [annotate] [blame] [check-ins using] [diff]
22:16
Added: Rename objfw to ObjFW for better framework compatibility. file: [115ac2d43e] check-in: [9a5af11af8] user: js, branch: trunk, size: 774 [annotate] [blame] [check-ins using]