pyobjc-framework-CFNetwork 12.1__tar.gz → 12.2__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (39) hide show
  1. {pyobjc_framework_cfnetwork-12.1 → pyobjc_framework_cfnetwork-12.2}/Lib/CFNetwork/_metadata.py +4 -4
  2. {pyobjc_framework_cfnetwork-12.1 → pyobjc_framework_cfnetwork-12.2}/Lib/pyobjc_framework_CFNetwork.egg-info/PKG-INFO +3 -3
  3. {pyobjc_framework_cfnetwork-12.1 → pyobjc_framework_cfnetwork-12.2}/Lib/pyobjc_framework_CFNetwork.egg-info/SOURCES.txt +2 -2
  4. pyobjc_framework_cfnetwork-12.2/Lib/pyobjc_framework_CFNetwork.egg-info/pyobjc-build-info.txt +3 -0
  5. pyobjc_framework_cfnetwork-12.2/Lib/pyobjc_framework_CFNetwork.egg-info/requires.txt +2 -0
  6. {pyobjc_framework_cfnetwork-12.1 → pyobjc_framework_cfnetwork-12.2}/Modules/_manual.m +22 -1
  7. {pyobjc_framework_cfnetwork-12.1 → pyobjc_framework_cfnetwork-12.2}/Modules/pyobjc-compat.h +5 -2
  8. {pyobjc_framework_cfnetwork-12.1 → pyobjc_framework_cfnetwork-12.2}/PKG-INFO +3 -3
  9. {pyobjc_framework_cfnetwork-12.1 → pyobjc_framework_cfnetwork-12.2}/PyObjCTest/test_cfproxysupport.py +5 -3
  10. {pyobjc_framework_cfnetwork-12.1 → pyobjc_framework_cfnetwork-12.2}/metadata/CFNetwork.fwinfo +72 -72
  11. pyobjc_framework_cfnetwork-12.1/metadata/raw/arm64-26.0.fwinfo → pyobjc_framework_cfnetwork-12.2/metadata/raw/arm64-26.5.fwinfo +1168 -136
  12. pyobjc_framework_cfnetwork-12.1/metadata/raw/x86_64-26.0.fwinfo → pyobjc_framework_cfnetwork-12.2/metadata/raw/x86_64-26.5.fwinfo +1168 -136
  13. {pyobjc_framework_cfnetwork-12.1 → pyobjc_framework_cfnetwork-12.2}/setup.py +1 -1
  14. pyobjc_framework_cfnetwork-12.1/Lib/pyobjc_framework_CFNetwork.egg-info/pyobjc-build-info.txt +0 -3
  15. pyobjc_framework_cfnetwork-12.1/Lib/pyobjc_framework_CFNetwork.egg-info/requires.txt +0 -2
  16. {pyobjc_framework_cfnetwork-12.1 → pyobjc_framework_cfnetwork-12.2}/LICENSE.txt +0 -0
  17. {pyobjc_framework_cfnetwork-12.1 → pyobjc_framework_cfnetwork-12.2}/Lib/CFNetwork/__init__.py +0 -0
  18. {pyobjc_framework_cfnetwork-12.1 → pyobjc_framework_cfnetwork-12.2}/Lib/pyobjc_framework_CFNetwork.egg-info/dependency_links.txt +0 -0
  19. {pyobjc_framework_cfnetwork-12.1 → pyobjc_framework_cfnetwork-12.2}/Lib/pyobjc_framework_CFNetwork.egg-info/not-zip-safe +0 -0
  20. {pyobjc_framework_cfnetwork-12.1 → pyobjc_framework_cfnetwork-12.2}/Lib/pyobjc_framework_CFNetwork.egg-info/top_level.txt +0 -0
  21. {pyobjc_framework_cfnetwork-12.1 → pyobjc_framework_cfnetwork-12.2}/MANIFEST.in +0 -0
  22. {pyobjc_framework_cfnetwork-12.1 → pyobjc_framework_cfnetwork-12.2}/Modules/pyobjc-api.h +0 -0
  23. {pyobjc_framework_cfnetwork-12.1 → pyobjc_framework_cfnetwork-12.2}/PyObjCTest/__init__.py +0 -0
  24. {pyobjc_framework_cfnetwork-12.1 → pyobjc_framework_cfnetwork-12.2}/PyObjCTest/proxy.pac +0 -0
  25. {pyobjc_framework_cfnetwork-12.1 → pyobjc_framework_cfnetwork-12.2}/PyObjCTest/test_cfftpstream.py +0 -0
  26. {pyobjc_framework_cfnetwork-12.1 → pyobjc_framework_cfnetwork-12.2}/PyObjCTest/test_cfhost.py +0 -0
  27. {pyobjc_framework_cfnetwork-12.1 → pyobjc_framework_cfnetwork-12.2}/PyObjCTest/test_cfhttpauthentication.py +0 -0
  28. {pyobjc_framework_cfnetwork-12.1 → pyobjc_framework_cfnetwork-12.2}/PyObjCTest/test_cfhttpmessage.py +0 -0
  29. {pyobjc_framework_cfnetwork-12.1 → pyobjc_framework_cfnetwork-12.2}/PyObjCTest/test_cfhttpstream.py +0 -0
  30. {pyobjc_framework_cfnetwork-12.1 → pyobjc_framework_cfnetwork-12.2}/PyObjCTest/test_cfnetservices.py +0 -0
  31. {pyobjc_framework_cfnetwork-12.1 → pyobjc_framework_cfnetwork-12.2}/PyObjCTest/test_cfnetwork.py +0 -0
  32. {pyobjc_framework_cfnetwork-12.1 → pyobjc_framework_cfnetwork-12.2}/PyObjCTest/test_cfnetworkdiagnostics.py +0 -0
  33. {pyobjc_framework_cfnetwork-12.1 → pyobjc_framework_cfnetwork-12.2}/PyObjCTest/test_cfnetworkerrors.py +0 -0
  34. {pyobjc_framework_cfnetwork-12.1 → pyobjc_framework_cfnetwork-12.2}/PyObjCTest/test_cfsocketstream.py +0 -0
  35. {pyobjc_framework_cfnetwork-12.1 → pyobjc_framework_cfnetwork-12.2}/README.txt +0 -0
  36. {pyobjc_framework_cfnetwork-12.1 → pyobjc_framework_cfnetwork-12.2}/metadata/metadata.ini +0 -0
  37. {pyobjc_framework_cfnetwork-12.1 → pyobjc_framework_cfnetwork-12.2}/pyobjc_setup.py +0 -0
  38. {pyobjc_framework_cfnetwork-12.1 → pyobjc_framework_cfnetwork-12.2}/pyproject.toml +0 -0
  39. {pyobjc_framework_cfnetwork-12.1 → pyobjc_framework_cfnetwork-12.2}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  # This file is generated by objective.metadata
2
2
  #
3
- # Last update: Fri Jul 25 11:40:22 2025
3
+ # Last update: Wed May 27 16:59:26 2026
4
4
  #
5
5
  # flake8: noqa
6
6
 
@@ -233,7 +233,7 @@ functions = {
233
233
  {
234
234
  "retval": {"already_cfretained": True},
235
235
  "arguments": {
236
- 1: {"c_array_length_in_arg": 2, "type_modifier": "n"},
236
+ 1: {"type_modifier": "n", "c_array_length_in_arg": 2},
237
237
  3: {"already_cfretained": True, "type_modifier": "o"},
238
238
  },
239
239
  },
@@ -247,7 +247,7 @@ functions = {
247
247
  "CFHTTPMessageAppendBytes": (
248
248
  b"Z^{__CFHTTPMessage=}^vq",
249
249
  "",
250
- {"arguments": {1: {"c_array_length_in_arg": 2, "type_modifier": "n"}}},
250
+ {"arguments": {1: {"type_modifier": "n", "c_array_length_in_arg": 2}}},
251
251
  ),
252
252
  "CFHostCancelInfoResolution": (b"v^{__CFHost=}i",),
253
253
  "CFNetServiceBrowserSearchForServices": (
@@ -296,9 +296,9 @@ functions = {
296
296
  "retval": {"already_cfretained": True},
297
297
  "arguments": {
298
298
  2: {
299
+ "null_accepted": True,
299
300
  "already_cfretained": True,
300
301
  "type_modifier": "o",
301
- "null_accepted": True,
302
302
  }
303
303
  },
304
304
  },
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pyobjc-framework-CFNetwork
3
- Version: 12.1
3
+ Version: 12.2
4
4
  Summary: Wrappers for the framework CFNetwork on macOS
5
5
  Home-page: https://github.com/ronaldoussoren/pyobjc
6
6
  Author: Ronald Oussoren
@@ -31,8 +31,8 @@ Classifier: Topic :: Software Development :: User Interfaces
31
31
  Requires-Python: >=3.10
32
32
  Description-Content-Type: text/x-rst; charset=UTF-8
33
33
  License-File: LICENSE.txt
34
- Requires-Dist: pyobjc-core>=12.1
35
- Requires-Dist: pyobjc-framework-Cocoa>=12.1
34
+ Requires-Dist: pyobjc-core>=12.2
35
+ Requires-Dist: pyobjc-framework-Cocoa>=12.2
36
36
  Dynamic: author
37
37
  Dynamic: author-email
38
38
  Dynamic: classifier
@@ -31,5 +31,5 @@ PyObjCTest/test_cfproxysupport.py
31
31
  PyObjCTest/test_cfsocketstream.py
32
32
  metadata/CFNetwork.fwinfo
33
33
  metadata/metadata.ini
34
- metadata/raw/arm64-26.0.fwinfo
35
- metadata/raw/x86_64-26.0.fwinfo
34
+ metadata/raw/arm64-26.5.fwinfo
35
+ metadata/raw/x86_64-26.5.fwinfo
@@ -0,0 +1,3 @@
1
+ macOS 26.5 (25F71)
2
+ Apple clang version 21.0.0 (clang-2100.1.1.101)
3
+ SDK: macOS 26.5
@@ -0,0 +1,2 @@
1
+ pyobjc-core>=12.2
2
+ pyobjc-framework-Cocoa>=12.2
@@ -22,8 +22,29 @@ mod_release(const void* info)
22
22
  PyGILState_Release(state);
23
23
  }
24
24
 
25
+ static CFStringRef
26
+ mod_copyDescription(const void* info)
27
+ {
28
+ PyObject* repr;
29
+ PyGILState_STATE state = PyGILState_Ensure();
30
+
31
+ repr = PyObject_Repr((PyObject*)info);
32
+ if (repr == NULL) {
33
+ PyErr_Clear();
34
+ PyGILState_Release(state);
35
+ return (CFStringRef)CFRetain([NSString stringWithFormat:@"<pyinfo at %p>", info]);
36
+ } else {
37
+ NSString* result =
38
+ [NSString stringWithFormat:@"<pyinfo %s>", PyUnicode_AsUTF8(repr)];
39
+ Py_CLEAR(repr);
40
+ PyGILState_Release(state);
41
+ return (CFStringRef)CFRetain(result);
42
+ }
43
+ }
44
+
25
45
  static CFStreamClientContext mod_CFStreamClientContext = {
26
- 0, NULL, (void* (*)(void*))mod_retain, (void (*)(void*))mod_release, NULL};
46
+ 0, (CFStringRef (*)(void*))mod_copyDescription, (void* (*)(void*))mod_retain,
47
+ (void (*)(void*))mod_release, NULL};
27
48
 
28
49
  static CFHostClientContext mod_CFHostClientContext = {0, NULL, mod_retain, mod_release,
29
50
  0};
@@ -57,8 +57,6 @@ NS_ASSUME_NONNULL_BEGIN
57
57
  /*
58
58
  *
59
59
  * Start of compiler support helpers
60
- *
61
- * XXX: Are these needed?
62
60
  */
63
61
 
64
62
  #define unlikely(x) __builtin_expect(!!(x), 0)
@@ -363,6 +361,11 @@ PyUnstable_TryIncRef(PyObject* op __attribute__((__unused__)))
363
361
  }
364
362
  #endif
365
363
 
364
+ #if PY_VERSION_HEX < 0x030f00a7
365
+ #define PyAnyDict_CheckExact PyDict_CheckExact
366
+ #define PyAnyDict_Check PyDict_Check
367
+ #endif
368
+
366
369
  NS_ASSUME_NONNULL_END
367
370
 
368
371
  #endif /* PyObjC_COMPAT_H */
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pyobjc-framework-CFNetwork
3
- Version: 12.1
3
+ Version: 12.2
4
4
  Summary: Wrappers for the framework CFNetwork on macOS
5
5
  Home-page: https://github.com/ronaldoussoren/pyobjc
6
6
  Author: Ronald Oussoren
@@ -31,8 +31,8 @@ Classifier: Topic :: Software Development :: User Interfaces
31
31
  Requires-Python: >=3.10
32
32
  Description-Content-Type: text/x-rst; charset=UTF-8
33
33
  License-File: LICENSE.txt
34
- Requires-Dist: pyobjc-core>=12.1
35
- Requires-Dist: pyobjc-framework-Cocoa>=12.1
34
+ Requires-Dist: pyobjc-core>=12.2
35
+ Requires-Dist: pyobjc-framework-Cocoa>=12.2
36
36
  Dynamic: author
37
37
  Dynamic: author-email
38
38
  Dynamic: classifier
@@ -1,7 +1,11 @@
1
1
  import os
2
2
 
3
3
  import CFNetwork
4
- from PyObjCTools.TestSupport import TestCase, min_os_level, expectedFailure
4
+ from PyObjCTools.TestSupport import (
5
+ TestCase,
6
+ min_os_level,
7
+ expectedFailure,
8
+ )
5
9
 
6
10
  SCRIPT = """
7
11
  function FindProxyForURL(url, host) {
@@ -86,8 +90,6 @@ class TestCFProxySupport(TestCase):
86
90
 
87
91
  CFNetwork.CFRunLoopRemoveSource(rl, rls, CFNetwork.kCFRunLoopCommonModes)
88
92
 
89
- # print lst
90
-
91
93
  self.assertNotEqual(len(lst), 0)
92
94
  self.assertTrue(lst[0][0] is ctx)
93
95
  if lst[0][2] is None:
@@ -411,23 +411,23 @@
411
411
  "args": {
412
412
  "0": {},
413
413
  "1": {
414
- "function": {
415
- "args": [
416
- {
417
- "typestr": "^{__CFHost=}"
414
+ "callable": {
415
+ "arguments": {
416
+ "0": {
417
+ "type": "^{__CFHost=}"
418
418
  },
419
- {
420
- "typestr": "i"
419
+ "1": {
420
+ "type": "i"
421
421
  },
422
- {
423
- "typestr": "^{CFStreamError=qi}"
422
+ "2": {
423
+ "type": "^{CFStreamError=qi}"
424
424
  },
425
- {
426
- "typestr": "^v"
425
+ "3": {
426
+ "type": "^v"
427
427
  }
428
- ],
428
+ },
429
429
  "retval": {
430
- "typestr": "v"
430
+ "type": "v"
431
431
  }
432
432
  }
433
433
  },
@@ -488,26 +488,26 @@
488
488
  "args": {
489
489
  "0": {},
490
490
  "1": {
491
- "function": {
492
- "args": [
493
- {
494
- "typestr": "^{__CFNetServiceBrowser=}"
491
+ "callable": {
492
+ "arguments": {
493
+ "0": {
494
+ "type": "^{__CFNetServiceBrowser=}"
495
495
  },
496
- {
497
- "typestr": "Q"
496
+ "1": {
497
+ "type": "Q"
498
498
  },
499
- {
500
- "typestr": "@"
499
+ "2": {
500
+ "type": "@"
501
501
  },
502
- {
503
- "typestr": "^{CFStreamError=qi}"
502
+ "3": {
503
+ "type": "^{CFStreamError=qi}"
504
504
  },
505
- {
506
- "typestr": "^v"
505
+ "4": {
506
+ "type": "^v"
507
507
  }
508
- ],
508
+ },
509
509
  "retval": {
510
- "typestr": "v"
510
+ "type": "v"
511
511
  }
512
512
  }
513
513
  },
@@ -656,29 +656,29 @@
656
656
  "0": {},
657
657
  "1": {},
658
658
  "2": {
659
- "function": {
660
- "args": [
661
- {
662
- "typestr": "^{__CFNetServiceMonitor=}"
659
+ "callable": {
660
+ "arguments": {
661
+ "0": {
662
+ "type": "^{__CFNetServiceMonitor=}"
663
663
  },
664
- {
665
- "typestr": "^{__CFNetService=}"
664
+ "1": {
665
+ "type": "^{__CFNetService=}"
666
666
  },
667
- {
668
- "typestr": "i"
667
+ "2": {
668
+ "type": "i"
669
669
  },
670
- {
671
- "typestr": "^{__CFData=}"
670
+ "3": {
671
+ "type": "^{__CFData=}"
672
672
  },
673
- {
674
- "typestr": "^{CFStreamError=qi}"
673
+ "4": {
674
+ "type": "^{CFStreamError=qi}"
675
675
  },
676
- {
677
- "typestr": "^v"
676
+ "5": {
677
+ "type": "^v"
678
678
  }
679
- ],
679
+ },
680
680
  "retval": {
681
- "typestr": "v"
681
+ "type": "v"
682
682
  }
683
683
  }
684
684
  },
@@ -755,20 +755,20 @@
755
755
  "args": {
756
756
  "0": {},
757
757
  "1": {
758
- "function": {
759
- "args": [
760
- {
761
- "typestr": "^{__CFNetService=}"
758
+ "callable": {
759
+ "arguments": {
760
+ "0": {
761
+ "type": "^{__CFNetService=}"
762
762
  },
763
- {
764
- "typestr": "^{CFStreamError=qi}"
763
+ "1": {
764
+ "type": "^{CFStreamError=qi}"
765
765
  },
766
- {
767
- "typestr": "^v"
766
+ "2": {
767
+ "type": "^v"
768
768
  }
769
- ],
769
+ },
770
770
  "retval": {
771
- "typestr": "v"
771
+ "type": "v"
772
772
  }
773
773
  }
774
774
  },
@@ -831,20 +831,20 @@
831
831
  "0": {},
832
832
  "1": {},
833
833
  "2": {
834
- "function": {
835
- "args": [
836
- {
837
- "typestr": "^v"
834
+ "callable": {
835
+ "arguments": {
836
+ "0": {
837
+ "type": "^v"
838
838
  },
839
- {
840
- "typestr": "^{__CFArray=}"
839
+ "1": {
840
+ "type": "^{__CFArray=}"
841
841
  },
842
- {
843
- "typestr": "^{__CFError=}"
842
+ "2": {
843
+ "type": "^{__CFError=}"
844
844
  }
845
- ],
845
+ },
846
846
  "retval": {
847
- "typestr": "v"
847
+ "type": "v"
848
848
  }
849
849
  }
850
850
  },
@@ -857,20 +857,20 @@
857
857
  "0": {},
858
858
  "1": {},
859
859
  "2": {
860
- "function": {
861
- "args": [
862
- {
863
- "typestr": "^v"
860
+ "callable": {
861
+ "arguments": {
862
+ "0": {
863
+ "type": "^v"
864
864
  },
865
- {
866
- "typestr": "^{__CFArray=}"
865
+ "1": {
866
+ "type": "^{__CFArray=}"
867
867
  },
868
- {
869
- "typestr": "^{__CFError=}"
868
+ "2": {
869
+ "type": "^{__CFError=}"
870
870
  }
871
- ],
871
+ },
872
872
  "retval": {
873
- "typestr": "v"
873
+ "type": "v"
874
874
  }
875
875
  }
876
876
  },