ObjFW  History of src/OFPlugin.m of ffb574eb746a134e

History of the file that is called src/OFPlugin.m at check-in ffb574eb746a134e

2024-05-05
00:49
[2c713ca183] part of check-in [925c67cb45] +[OFPlugin pathForName:]: Add fallback to .dylib (check-in: [925c67cb45] user: js, branch: trunk, size: 2975) [annotate] [blame] [check-ins using] [diff]
2024-04-03
02:16
[cb86f84c31] part of check-in [7413a728a7] Change license to LGPLv3 only (check-in: [7413a728a7] user: js, branch: trunk, size: 2749) [annotate] [blame] [check-ins using] [diff]
2024-01-02
17:17
[bf328ddc1e] part of check-in [26ddd2e4e4] Update copyright (check-in: [26ddd2e4e4] user: js, branch: trunk, size: 2541) [annotate] [blame] [check-ins using] [diff]
2023-01-06
09:04
[e794e6a809] part of check-in [8939cbdb52] Update copyright (check-in: [8939cbdb52] user: js, branch: trunk, size: 2541) [annotate] [blame] [check-ins using] [diff]
2022-06-18
01:07
[dfbf2c9e77] part of check-in [c96f67f694] OFPlugin: Fix accidentally removed = (check-in: [c96f67f694] user: js, branch: trunk, size: 2541) [annotate] [blame] [check-ins using] [diff]
2022-06-17
17:12
[8ad69b7ef8] part of check-in [a74bff96c4] OFPlugin: Completely redesign API (check-in: [a74bff96c4] user: js, branch: trunk, size: 2539) [annotate] [blame] [check-ins using] [diff]
2022-02-12
07:46
[e14701ced1] part of check-in [1a86b8175b] Update copyright (check-in: [1a86b8175b] user: js, branch: trunk, size: 2967) [annotate] [blame] [check-ins using] [diff]
2021-04-25
11:05
[71a9e453b8] part of check-in [27103855c2] A few last renames (check-in: [27103855c2] user: js, branch: new-naming-convention, size: 2967) [annotate] [blame] [check-ins using] [diff]
2021-04-19
21:54
[4e653a2def] part of check-in [458420998c] Rename a few more constants (check-in: [458420998c] user: js, branch: new-naming-convention, size: 2978) [annotate] [blame] [check-ins using] [diff]
2021-04-18
22:56
[f022309a5c] part of check-in [e73c65a849] Rename all symbols marked extern (check-in: [e73c65a849] user: js, branch: new-naming-convention, size: 2964) [annotate] [blame] [check-ins using] [diff]
2021-04-17
14:24
[b47ab783df] part of check-in [cedc0cb75e] of_plugin_handle_t -> OFPluginHandle (check-in: [cedc0cb75e] user: js, branch: new-naming-convention, size: 2964) [annotate] [blame] [check-ins using] [diff]
2021-04-04
13:25
[8802d6d561] part of check-in [45f8195351] Rename +[pluginFromFile:] to +[pluginWithPath:] (check-in: [45f8195351] user: js, branch: trunk, size: 2993) [annotate] [blame] [check-ins using] [diff]
2021-01-02
22:04
[12a642d8b0] part of check-in [374e1a1bfa] Update copyright (check-in: [374e1a1bfa] user: js, branch: trunk, size: 2993) [annotate] [blame] [check-ins using] [diff]
2020-05-17
14:08
[539230b0ba] part of check-in [494acfb3e0] Add support for non-Unicode Windows in all classes (check-in: [494acfb3e0] user: js, branch: trunk, size: 3082) [annotate] [blame] [check-ins using] [diff]
2020-01-02
01:51
[3e825cedc9] part of check-in [c7f0229795] Update copyright (check-in: [c7f0229795] user: js, branch: trunk, size: 2938) [annotate] [blame] [check-ins using] [diff]
2019-09-29
20:53
[e6fd971342] part of check-in [e0a330b377] Reduce ivar scopes (check-in: [e0a330b377] user: js, branch: trunk, size: 2935) [annotate] [blame] [check-ins using] [diff]
2019-03-08
00:35
[503261dce9] part of check-in [bceb7ed4c9] Use dot syntax (check-in: [bceb7ed4c9] user: js, branch: trunk, size: 2923) [annotate] [blame] [check-ins using] [diff]
2019-01-03
19:13
[edc663b796] part of check-in [0509d7a844] Update copyright (check-in: [0509d7a844] user: js, branch: trunk, size: 2929) [annotate] [blame] [check-ins using] [diff]
2018-07-28
18:45
[68f1ae3e39] part of check-in [aa0384d1bf] Rename OFLocalization -> OFLocale (check-in: [aa0384d1bf] user: js, branch: trunk, size: 2923) [annotate] [blame] [check-ins using] [diff]
2018-02-09
00:00
[fc21e7fba3] part of check-in [4642bc76b0] Add OFLoadPluginFailedException

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

2018-02-07
21:11
[5d759baef8] part of check-in [45f72a3f13] OFPlugin: Adjust to having proper .bundles now (check-in: [45f72a3f13] user: js, branch: trunk, size: 2789) [annotate] [blame] [check-ins using] [diff]
2018-01-03
19:49
[e52e3ce382] part of check-in [7e5c81e186] Update copyright notice (check-in: [7e5c81e186] user: js, branch: trunk, size: 2533) [annotate] [blame] [check-ins using] [diff]
2017-11-05
18:25
[c1ce7e5d1a] part of check-in [0a4565fb0f] Use -[isMemberOfClass:] instead of object_getClass (check-in: [0a4565fb0f] user: js, branch: trunk, size: 2510) [annotate] [blame] [check-ins using] [diff]
2017-10-17
00:33
[89bdff5a7e] part of check-in [2f4e0df8be] Do not use implicit method return types

Instead, explicitly declare them, as OF_ASSUME_NONNULL_{BEGIN,END} does
not apply to implicit return types. This means that after this commit,
all init methods have a nonnull return type, as they should have. (check-in: [2f4e0df8be] user: js, branch: trunk, size: 2511) [annotate] [blame] [check-ins using] [diff]

2017-06-05
17:36
[5fa3fa154b] part of check-in [4f36894ce7] Clean up exceptions a little

This removes several initializers that omitted the errNo. Removing those
forces to think about whether there is a meaningful errNo to set instead
of just omitting it. (check-in: [4f36894ce7] user: js, branch: trunk, size: 2497) [annotate] [blame] [check-ins using] [diff]

2017-05-07
20:10
[5175fba523] part of check-in [4af49a13c3] Small code style change

Casts are now written like types in variable declarations. (check-in: [4af49a13c3] user: js, branch: trunk, size: 2426) [annotate] [blame] [check-ins using] [diff]

2017-01-09
17:36
[c0e1766901] part of check-in [44f45c2e35] Update copyright

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

06:26
[58ad217163] part of check-in [06bcb21fc7] 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. (check-in: [06bcb21fc7] user: js, branch: trunk, size: 2417) [annotate] [blame] [check-ins using] [diff]

2016-07-11
19:04
[50477690f4] part of check-in [c91508ddfb] Windows improvements for of_dl{open,sym,close} (check-in: [c91508ddfb] user: js, branch: trunk, size: 2423) [annotate] [blame] [check-ins using] [diff]
2016-07-10
22:40
[565f8364c6] part of check-in [81970b1dab] Add of_dl{open,sym,close}

It only makes sense to export the lowlevel variants as well. (check-in: [81970b1dab] user: js, branch: trunk, size: 2351) [annotate] [blame] [check-ins using] [diff]

2016-01-03
00:43
[f2de0631c1] part of check-in [cec0f072f8] Update copyright

While at it, also update the mail address. (check-in: [cec0f072f8] user: js, branch: 0.8, size: 2100) [annotate] [blame] [check-ins using] [diff]

00:41
[7e1181f07e] part of check-in [2a27cf3000] Update copyright

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

2015-10-19
22:15
[ac9fc693b2] part of check-in [1ba08eebc5] Add platform.h & make platform defines consistent (check-in: [1ba08eebc5] user: js, branch: trunk, size: 2104) [annotate] [blame] [check-ins using] [diff]
2015-01-03
20:57
[e05c354263] part of check-in [cfd374b906] Update copyright (check-in: [cfd374b906] user: js, branch: trunk, size: 2096) [annotate] [blame] [check-ins using] [diff]
2014-10-04
21:59
[0a0de2607d] part of check-in [ec66e49dca] Add +[OFSystemInfo native8BitEncoding]

This replaces +[OFString nativeOSEncoding]. (check-in: [ec66e49dca] user: js, branch: trunk, size: 2090) [annotate] [blame] [check-ins using] [diff]

2014-06-21
21:43
[72b6e8f4e8] part of check-in [13ee56edf3] 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. (check-in: [13ee56edf3] user: js, branch: trunk, size: 2059) [annotate] [blame] [check-ins using] [diff]

2014-05-15
15:32
[a5b4d66f4b] part of check-in [4a2f61814f] Work around dlsym() API not being valid C

This only silences the compiler. Storing function pointers in void* is
illegal, yet POSIX requires it. (check-in: [4a2f61814f] user: js, branch: trunk, size: 2084) [annotate] [blame] [check-ins using] [diff]

2014-01-16
23:38
[28a68da273] part of check-in [e54c8c0368] Add +[OFString nativeOSEncoding].

This replaces OF_STRING_ENCODING_NATIVE, as a define was not flexible
enough (determining the native OS encoding at startup was not possible). (check-in: [e54c8c0368] user: js, branch: trunk, size: 2028) [annotate] [blame] [check-ins using] [diff]

2014-01-04
00:24
[a9550de16c] part of check-in [3b97fc3cd9] Update copyright. (check-in: [3b97fc3cd9] user: js, branch: trunk, size: 2026) [annotate] [blame] [check-ins using] [diff]
2013-05-22
20:36
[b063f0c48a] part of check-in [a889f21180] Don't depened on execinfo.h for backtraces.

Instead, __builtin_return_address() is used now. This makes backtraces
available on many platforms, it even works if dladdr is missing (it does
not show symbol names then, though). (check-in: [a889f21180] user: js, branch: trunk, size: 2020) [annotate] [blame] [check-ins using] [diff]

2013-02-12
18:22
[ae3dcbbf47] part of check-in [e40729d406] Prefix all ivars with an underscore. (check-in: [e40729d406] user: js, branch: trunk, size: 2014) [annotate] [blame] [check-ins using] [diff]
2013-01-12
17:29
[929f009f47] part of check-in [9ddd33a258] Rename *UsingEncoding: to *WithEncoding:.

This reverts 5362941.

Even though *UsingEncoding: is what Foundation uses, *WithEncoding: is
more natural and is more consistent with the rest. Also, this means this
restores it to the API of 0.7. (check-in: [9ddd33a258] user: js, branch: trunk, size: 2012) [annotate] [blame] [check-ins using] [diff]

2013-01-09
22:24
[8af09a0477] part of check-in [813c00ccf0] Update copyright. (check-in: [813c00ccf0] user: js, branch: trunk, size: 2013) [annotate] [blame] [check-ins using] [diff]
2013-01-08
03:13
[27e1ed9410] part of check-in [94a9a18106] Win32: Allow Unicode filenames in file operations. (check-in: [94a9a18106] user: js, branch: trunk, size: 2007) [annotate] [blame] [check-ins using] [diff]
2012-12-22
15:37
[260b8dfd9b] part of check-in [917ce5754c] Add -[doesNotRecognizeSelector:]. (check-in: [917ce5754c] user: js, branch: trunk, size: 2023) [annotate] [blame] [check-ins using] [diff]
2012-12-15
23:31
[26711ccaf1] part of check-in [e2f4c1283c] OFString: Improved API for getting C strings. (check-in: [e2f4c1283c] user: js, branch: trunk, size: 2072) [annotate] [blame] [check-ins using] [diff]
2012-10-21
22:12
[1e21ccb1ef] part of check-in [fcade8da38] Make GCC 4.4 happy. (check-in: [fcade8da38] user: js, branch: trunk, size: 2071) [annotate] [blame] [check-ins using] [diff]
2012-08-10
20:08
[a25e85e2c5] part of check-in [1255f3a11a] Directly use the runtime's autorelease pools.

This greatly improves performance, as it gets rid of the overhead of
OFAutoreleasePool. (check-in: [1255f3a11a] user: js, branch: trunk, size: 2061) [annotate] [blame] [check-ins using] [diff]

2012-07-20
14:17
[c230c7ec3d] part of check-in [ddcfab2b93] Blocks need to be copied, not retained. (check-in: [ddcfab2b93] user: js, branch: trunk, size: 2077) [annotate] [blame] [check-ins using] [diff]
2012-07-12
01:28
[9ce801be06] part of check-in [8892ae9fcc] Don't access isa directly. (check-in: [8892ae9fcc] user: js, branch: trunk, size: 2087) [annotate] [blame] [check-ins using] [diff]
2012-02-28
14:28
[77231c2582] part of check-in [acd6d2ff67] Make it more clear that +[pluginFromFile:] does not return OFPlugin*. (check-in: [acd6d2ff67] user: js, branch: 0.6, size: 2052) [annotate] [blame] [check-ins using] [diff]
14:28
[c2bd5da7b9] part of check-in [0727c9266b] Make it more clear that +[pluginFromFile:] does not return OFPlugin*. (check-in: [0727c9266b] user: js, branch: trunk, size: 2060) [annotate] [blame] [check-ins using] [diff]
2012-02-27
22:59
[9c61bbf5f1] part of check-in [e53bf9f3fc] Add void to parameter list. (check-in: [e53bf9f3fc] user: js, branch: trunk, size: 2056) [annotate] [blame] [check-ins using] [diff]
2012-01-05
00:56
[c9d1104dc0] part of check-in [ce70e17b38] Update copyright. (check-in: [ce70e17b38] user: js, branch: trunk, size: 2048) [annotate] [blame] [check-ins using] [diff]
2011-09-22
23:25
[eaefae089e] part of check-in [e1e7ffa903] Exceptions are now autoreleased.

This is safe as an "exception loop" can't happen, since if allocating
an exception fails, it throws an OFAllocFailedException which is
preallocated and can always be thrown.

So, the worst case would be that an autorelease of an exception fails,
triggering an OFOutOfMemoryException for which there is no memory,
resulting in an OFAllocFailedException to be thrown. (check-in: [e1e7ffa903] user: js, branch: trunk, size: 2042) [annotate] [blame] [check-ins using] [diff]

2011-09-12
19:57
[a03d84cb4d] part of check-in [e6fd39d11e] Rename -[cString] to -[UTF8String]. (check-in: [e6fd39d11e] user: js, branch: trunk, size: 2013) [annotate] [blame] [check-ins using] [diff]
2011-04-24
21:50
[0f2a144c82] part of check-in [07b3d0e8de] Add -[finalize] to all classes which would require it once we have GC. (check-in: [07b3d0e8de] user: js, branch: trunk, size: 2029) [annotate] [blame] [check-ins using] [diff]
2011-04-22
21:08
[ce104d5d58] part of check-in [fb95acc8ab] More style improvements. (check-in: [fb95acc8ab] user: js, branch: trunk, size: 1969) [annotate] [blame] [check-ins using] [diff]
2011-03-24
19:42
[1a436fda73] part of check-in [cda44767f4] Get rid of OFExceptions.h. (check-in: [cda44767f4] user: js, branch: trunk, size: 1973) [annotate] [blame] [check-ins using] [diff]
2011-02-27
14:40
[69b3d14f45] part of check-in [9b88ee6978] OFPlugin: Don't close the handle before calling [super dealloc].

If we close the handle before calling [super dealloc], the plugin class
does not exist anymore. Instead, cache the handle, call [super dealloc]
and then close the handle. (check-in: [9b88ee6978] user: js, branch: trunk, size: 1915) [annotate] [blame] [check-ins using] [diff]

2011-01-01
20:19
[ff6017ec5d] part of check-in [da6b3d26cb] Change license. (check-in: [da6b3d26cb] user: js, branch: trunk, size: 1887) [annotate] [blame] [check-ins using] [diff]
2010-10-25
23:03
[0c901eacaf] part of check-in [8a7ca573c4] Clean up a lot of code (mostly init methods) and fix a missing rethrow. (check-in: [8a7ca573c4] user: js, branch: trunk, size: 1631) [annotate] [blame] [check-ins using] [diff]
2010-07-02
20:45
[510d0be2d3] part of check-in [4ea5f3f7fd] Rename +[elementWithText:] to +[elementWithCharacters:]. (check-in: [4ea5f3f7fd] user: js, branch: trunk, size: 1593) [annotate] [blame] [check-ins using] [diff]
2010-02-19
16:36
[7906a08f5e] part of check-in [42886185fd] Update copyright. (check-in: [42886185fd] user: js, branch: trunk, size: 1590) [annotate] [blame] [check-ins using] [diff]
2010-01-16
15:05
[fb2254b3a7] part of check-in [1433aef0d0] Reduce dependencies between headers. (check-in: [1433aef0d0] user: js, branch: trunk, size: 1590) [annotate] [blame] [check-ins using] [diff]
14:43
[2ac3e6603f] part of check-in [1348a32d47] Remove mutation methods from immutable classes' interfaces. (check-in: [1348a32d47] user: js, branch: trunk, size: 1569) [annotate] [blame] [check-ins using] [diff]
2009-11-09
22:45
[403317ec50] part of check-in [a3cc34b139] Rename libobjfw to ObjFW. (check-in: [a3cc34b139] user: js, branch: trunk, size: 1562) [annotate] [blame] [check-ins using] [diff]
2009-10-19
08:31
[7086c924a4] part of check-in [3194cede14] Add plugin support for Win32. (check-in: [3194cede14] user: js, branch: trunk, size: 1565) [annotate] [blame] [check-ins using] [diff]
2009-10-01
12:44
[5285064f8a] part of check-in [62eddf9d21] Let the init function of the plugin autorelease it. (check-in: [62eddf9d21] user: js, branch: trunk, size: 1334) [annotate] [blame] [check-ins using] [diff]
2009-09-01
11:39
[669225b91e] part of check-in [cdfdea289e] Use OFMutableString in OFPlugin instead of doing it manually. (check-in: [cdfdea289e] user: js, branch: trunk, size: 1348) [annotate] [blame] [check-ins using] [diff]
11:32
[e2e99b5635] part of check-in [3ed599fe98] Rename -[length] to -[cStringLength] in OFString. (check-in: [3ed599fe98] user: js, branch: trunk, size: 1552) [annotate] [blame] [check-ins using] [diff]
2009-07-24
22:44
[773d6d11cf] part of check-in [e549c515e0] RTLD_LAZY makes more sense, as we only need a few symbols looked up. (check-in: [e549c515e0] user: js, branch: trunk, size: 1545) [annotate] [blame] [check-ins using] [diff]
2009-07-19
16:01
[59ef9c4044] part of check-in [42e16978dc] Prevent calling -[init] if parameters are required. (check-in: [42e16978dc] user: js, branch: trunk, size: 1544) [annotate] [blame] [check-ins using] [diff]
14:05
[310c254d06] part of check-in [4eae61a78f] Rename andFoo: to foo: in all methods. (check-in: [4eae61a78f] user: js, branch: trunk, size: 1396) [annotate] [blame] [check-ins using] [diff]
2009-06-09
23:33
[81e7a99874] part of check-in [5df8f61fe4] Return plugins autoreleased in OFPlugin. (check-in: [5df8f61fe4] user: js, branch: trunk, size: 1396) [annotate] [blame] [check-ins using] [diff]
2009-05-29
19:21
[fccb9d70a0] part of check-in [033054ad75] A few renames.

OFExceptions:
* OFNoMemException to OFOutOfMemoryException.
* OFMemNotPartOfObjException to OFMemoryNotPartOfObjectException.

OFObject:
* -[addItemToMemoryPool:] to -[addMemoryToPool:].
* -[allocWithSize:] to -[allocMemoryWithSize:].
* -[allocNItems:withSize] to -[allocMemoryForNItems:withSize:].
* -[resizeMem:toSize] to -[resizeMemory:toSize:].
* -[resizeMem:toNItems:withSize:] to
-[resizeMemoryToNItems:withSize:].
* -[freeMem] to -[freeMemory:].

OFString:
* -[urlencode] to -[urlEncodedString].
* -[urldecode] to -[urlDecodedString]. (check-in: [033054ad75] user: js, branch: trunk, size: 1382) [annotate] [blame] [check-ins using] [diff]

2009-05-24
18:04
[78e8296fc9] part of check-in [94ea6848a8] Always use #include "config.h" instead of #import "config.h". (check-in: [94ea6848a8] user: js, branch: trunk, size: 1376) [annotate] [blame] [check-ins using] [diff]
2009-05-15
20:01
[6ef03d99d0] part of check-in [67066be692] Use OFString as much as possible. (check-in: [67066be692] user: js, branch: trunk, size: 1375) [annotate] [blame] [check-ins using] [diff]
2009-05-13
20:31
[0c45c3aa04] part of check-in [9e6dd00ef5] Rename - free to - (void)dealloc. (check-in: [9e6dd00ef5] user: js, branch: trunk, size: 1366) [annotate] [blame] [check-ins using] [diff]
2009-04-21
17:16
[b318936bd6] part of check-in [d87df02e8b] The if ((self = [super init])) construct isn't needed anymore. (check-in: [d87df02e8b] user: js, branch: trunk, size: 1361) [annotate] [blame] [check-ins using] [diff]
2009-04-19
20:29
[b72d21c5c5] part of check-in [066bf9c8c3] Remove stuff forgotten after moving code in OFPlugin. (check-in: [066bf9c8c3] user: js, branch: trunk, size: 1447) [annotate] [blame] [check-ins using] [diff]
17:06
[ee4d5662a9] part of check-in [179174571e] Don't use forwarding for OFPlugin.

This is faster and we don't rely on forwarding which is broken in
both, the GNU and the Apple runtime. Eventually, there will be an
implementation for forwarding that does work around the runtime bugs,
but still, an implementation of OFPlugin without forwarding makes more
sense. (check-in: [179174571e] user: js, branch: trunk, size: 1562) [annotate] [blame] [check-ins using] [diff]

2009-04-13
16:29
[bfb6a3d936] part of check-in [297dbbb2b1] OFPlugin: Properly close handle on error. (check-in: [297dbbb2b1] user: js, branch: trunk, size: 1954) [annotate] [blame] [check-ins using] [diff]
2009-03-14
17:17
Added: [496529e854] part of check-in [2e13035431] Preliminary OFPlugin implementation.
Win32 isn't supported yet due to the problems libobjc + DLLs.
(check-in: [2e13035431] user: js, branch: trunk, size: 1823) [annotate] [blame] [check-ins using]