Am 07.07.24 um 11:13 schrieb Theo Buehler:
Thanks. I see lots of changes in exported symbols that should usually
result in a major bump for libobjfw and libobjfwrt.

Thanks for checking!

Is there some reason these bumps were left out?

Yes, these were private symbols that were accidentally visible. Nothing should have used them.

/usr/local/lib/libobjfw.so.0.1 --> 
/usr/ports/pobj/objfw-1.1.5/fake-amd64//usr/local/lib/libobjfw.so.0.1
Dynamic export changes:
added:
        _OFSalsa20_8Core
        _OFScryptBlockMix
        _OFScryptROMix
        _OFStrPTime

These are still visible but now with a _ prefix to make it clear they're private. They can't be made hidden because the tests need to call into those.

removed:
        OFArchiveIRIHandlerIRIForFileInArchive
        OFBase64Decode
        OFBase64Encode
        OFCRC16
        OFCRC32
        OFCodepage437Table
        OFCodepage437TableOffset
        OFCodepage850Table
        OFCodepage850TableOffset
        OFCodepage858Table
        OFCodepage858TableOffset
        OFDNSResolverErrorCodeDescription
        OFGetSockName
        OFHuffmanTreeFree
        OFHuffmanTreeNew
        OFHuffmanTreeNewSingle
        OFIRIIsIPv6Host
        OFIRIVerifyIsEscaped
        OFISO8859_15Table
        OFISO8859_15TableOffset
        OFISO8859_2Table
        OFISO8859_2TableOffset
        OFISO8859_3Table
        OFISO8859_3TableOffset
        OFKOI8RTable
        OFKOI8RTableOffset
        OFKOI8UTable
        OFKOI8UTableOffset
        OFMacRomanTable
        OFMacRomanTableOffset
        OFSalsa20_8Core
        OFScryptBlockMix
        OFScryptROMix
        OFSocketErrNo
        OFSocketInit
        OFStrDup
        OFStrFTime
        OFStrPTime
        OFUTF8StringCheck
        OFUTF8StringDecode
        OFUTF8StringEncode
        OFUTF8StringIndexToPosition
        OFUnicodeCaseFoldingTable
        OFUnicodeLowercaseTable
        OFUnicodeTitlecaseTable
        OFUnicodeToCodepage437
        OFUnicodeToCodepage850
        OFUnicodeToCodepage858
        OFUnicodeToISO8859_15
        OFUnicodeToISO8859_2
        OFUnicodeToISO8859_3
        OFUnicodeToKOI8R
        OFUnicodeToKOI8U
        OFUnicodeToMacRoman
        OFUnicodeToWindows1251
        OFUnicodeToWindows1252
        OFUnicodeUppercaseTable
        OFVASPrintF
        OFWindows1251Table
        OFWindows1251TableOffset
        OFWindows1252Table
        OFWindows1252TableOffset
        OFZIPArchiveReadField32
        OFZIPArchiveReadField64
        _OFData_CryptographicHashing_reference
        _OFData_MessagePackParsing_reference
        _OFObject_KeyValueCoding_reference
        _OFString_CryptographicHashing_reference
        _OFString_JSONParsing_reference
        _OFString_PathAdditions_reference
        _OFString_PercentEncoding_reference
        _OFString_PropertyListParsing_reference
        _OFString_XMLEscaping_reference
        _OFString_XMLUnescaping_reference
        _OFTLSHandshakeFailedException_reference
        _reference_to_OFConstantString
        _references_to_categories_of_OFData
        _references_to_categories_of_OFObject
        _references_to_categories_of_OFString
        _references_to_exceptions_of_OFTLSStream
        embeddedFiles
        numEmbeddedFiles
        positionToIndex

I confirm all of these are private. The last 3 ones were missing "static".

PLT added:
        _OFSalsa20_8Core
        _OFScryptBlockMix
        _OFStrPTime

PLT removed:
        OFArchiveIRIHandlerIRIForFileInArchive
        OFBase64Decode
        OFBase64Encode
        OFCRC16
        OFCRC32
        OFDNSResolverErrorCodeDescription
        OFGetSockName
        OFHuffmanTreeFree
        OFHuffmanTreeNew
        OFHuffmanTreeNewSingle
        OFIRIIsIPv6Host
        OFIRIVerifyIsEscaped
        OFSalsa20_8Core
        OFScryptBlockMix
        OFSocketErrNo
        OFSocketInit
        OFStrDup
        OFStrFTime
        OFStrPTime
        OFUTF8StringCheck
        OFUTF8StringDecode
        OFUTF8StringEncode
        OFUTF8StringIndexToPosition
        OFUnicodeToCodepage437
        OFUnicodeToCodepage850
        OFUnicodeToCodepage858
        OFUnicodeToISO8859_15
        OFUnicodeToISO8859_2
        OFUnicodeToISO8859_3
        OFUnicodeToKOI8R
        OFUnicodeToKOI8U
        OFUnicodeToMacRoman
        OFUnicodeToWindows1251
        OFUnicodeToWindows1252
        OFVASPrintF
        OFZIPArchiveReadField32
        OFZIPArchiveReadField64

Same.


/usr/local/lib/libobjfwrt.so.0.1 --> 
/usr/ports/pobj/objfw-1.1.5/fake-amd64//usr/local/lib/libobjfwrt.so.0.1
Dynamic export changes:
removed:
        objc_categoriesForClass
        objc_classnameToClass
        objc_deletedBucket
        objc_dtable_cleanup
        objc_dtable_copy
        objc_dtable_free
        objc_dtable_new
        objc_dtable_set
        objc_error
        objc_forgetPendingStaticInstances
        objc_globalMutex_lock
        objc_globalMutex_unlock
        objc_hashtable_delete
        objc_hashtable_free
        objc_hashtable_get
        objc_hashtable_new
        objc_hashtable_set
        objc_initStaticInstances
        objc_initializeClass
        objc_registerAllCategories
        objc_registerAllClasses
        objc_registerAllSelectors
        objc_registerSelector
        objc_sparsearray_free
        objc_sparsearray_get
        objc_sparsearray_new
        objc_sparsearray_set
        objc_strdup
        objc_string_equal
        objc_string_hash
        objc_unregisterAllCategories
        objc_unregisterAllClasses
        objc_unregisterAllSelectors
        objc_unregisterClass
        objc_updateDTable
        objc_zeroWeakReferences
        object_getTaggedPointerClass

All of those are only to be used by the runtime internally and were in private.h, which wasn't installed.

PLT removed:
        objc_categoriesForClass
        objc_classnameToClass
        objc_dtable_cleanup
        objc_dtable_copy
        objc_dtable_free
        objc_dtable_new
        objc_dtable_set
        objc_error
        objc_forgetPendingStaticInstances
        objc_globalMutex_lock
        objc_globalMutex_unlock
        objc_hashtable_delete
        objc_hashtable_free
        objc_hashtable_get
        objc_hashtable_new
        objc_hashtable_set
        objc_initStaticInstances
        objc_initializeClass
        objc_registerAllCategories
        objc_registerAllClasses
        objc_registerAllSelectors
        objc_registerSelector
        objc_sparsearray_free
        objc_sparsearray_get
        objc_sparsearray_new
        objc_sparsearray_set
        objc_strdup
        objc_unregisterAllCategories
        objc_unregisterAllClasses
        objc_unregisterAllSelectors
        objc_unregisterClass
        objc_updateDTable
        objc_zeroWeakReferences
        object_getTaggedPointerClass

Same.

--
Jonathan

Reply via email to