What do extremely high deprecation version numbers mean?

within the Foundation module, there are a number of declarations with extremely high deprecation version numbers:

extension OperationQueue {
    // These two functions are inherently a race condition and should be avoided if possible
    
    @available(OSX, introduced: 10.5, deprecated: 100000,
        message: "access to operations is inherently a race condition, it should not be used. For barrier style behaviors please use addBarrierBlock: instead")
    open var operations: [Operation] {
        get {
            return _operations(includingBarriers: false)
        }
    }
}

do these numbers have any significance? can 100000 be safely clipped to UInt16.max?

1 Like

IIRC, 100000 or 99999 in Apple SDK depreciation both mean "deprecated in an unreleased OS version", because they don't specify the particular version number until release.

2 Likes

According to the <os/availability.h> file, 100000 is:

used as a version number in API that will be deprecated in an upcoming release. This soft deprecation is an intermediate step before formal deprecation to notify developers about the API before compiler warnings are generated.

For example, soft-deprecated APIs may use strikethrough in code completions.

5 Likes

In what context are you planning on using the clipped values?