Skip to content

Commit f72795b

Browse files
authored
chore: release v1.3.0 (#105)
1 parent 0e8f556 commit f72795b

File tree

2 files changed

+128
-1
lines changed

2 files changed

+128
-1
lines changed

CHANGELOG.md

Lines changed: 127 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,133 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
77

88
## [Unreleased]
99

10+
## [1.3.0](https://github.com/doom-fish/screencapturekit-rs/compare/v1.2.0...v1.3.0) - 2025-11-30
11+
12+
### Added
13+
14+
- *(examples)* enhance memory leak test with comprehensive API coverage
15+
- *(ffi)* add optimized batch retrieval and owned strings
16+
- *(examples)* add missing API coverage examples
17+
- *(example)* refactor metal_overlay with recording/screenshot modules
18+
- *(ffi)* add FFI bindings for new APIs
19+
- *(picker)* add presentation mode and single window style
20+
- *(cm)* add CMTime operations and frame status predicates
21+
- *(stream)* add sync clock and filter stream type
22+
- *(config)* add capture resolution type support (macOS 14.0+)
23+
- *(filter)* add excluding applications filter variant
24+
- *(screenshot)* add SCScreenshotConfiguration content type support
25+
- *(async)* add async screenshot APIs for macOS 15.2/26.0
26+
- *(stream)* add closure-based delegate builders
27+
- *(example)* add recording menu option (macOS 15.0+)
28+
- *(example)* use macOS 26 screenshot API when available
29+
- *(cg)* add CGImage::save_png() with auto-open
30+
- *(example)* add screenshot option to metal_overlay
31+
- *(example)* enable mic-only capture without video source
32+
- *(example)* enhance metal_overlay with synthwave UI
33+
- *(stream)* expose as_ptr for internal use
34+
- *(picker)* add show_for_stream methods
35+
- *(audio)* add audio buffer list access
36+
- *(picker)* add SCPickedSource to identify selected content type
37+
- *(audio)* add audio input device enumeration API
38+
- *(examples)* use SCContentSharingPicker for content selection
39+
- *(examples)* preserve aspect ratio and center UI panels
40+
- *(examples)* add real audio waveform and vertical gain meters
41+
- *(shareable_content)* add missing SDK methods
42+
- *(screenshot)* add HDR screenshot example and tests
43+
- *(screenshot)* add macOS 26.0 advanced screenshot APIs
44+
- *(async)* add async picker example and tests
45+
- *(async)* add AsyncSCContentSharingPicker for non-blocking picker UI
46+
- *(recording)* add full video codec and file type arrays
47+
- *(config)* add CaptureHDRRecordingPreservedSDRHDR10 preset
48+
- *(delegate)* add stream active/inactive callbacks (macOS 15.2+)
49+
- *(examples)* add metal_overlay example with GPU rendering
50+
- *(examples)* integrate new macOS 14.0-15.2 features into examples
51+
- *(picker)* add SCContentSharingPicker enhancements for macOS 14.0+
52+
- *(recording)* add SCRecordingOutput features for macOS 15.0+
53+
- *(screenshot)* add capture_image_in_rect for macOS 15.2+
54+
- *(content)* add SCShareableContentInfo for macOS 14.0+
55+
- *(filter)* add SCContentFilter properties for macOS 14.0-15.2
56+
- *(config)* add new SCStreamConfiguration options for macOS 14.0-15.0
57+
- *(error)* add new error types for macOS 14.0+ stream events
58+
- *(config)* add builder pattern with ::new() and with_* methods
59+
60+
### Fixed
61+
62+
- improve leak count parsing for 'Process N: X leaks' format
63+
- *(async)* fix memory leak in AsyncCompletion and add leak check to CI
64+
- *(recording)* wait for recording_did_finish before opening file
65+
- add macos_13_0 feature gate to synchronization_clock in example
66+
- add macos_14_0 feature gate to captures_shadows_only tests
67+
- add feature gates to example for content_rect, point_pixel_scale, and Microphone
68+
- use rawValue comparison for SCStreamOutputType to fix SDK compatibility
69+
- add SCREENCAPTUREKIT_HAS_MACOS26_SDK guard for macOS 26+ APIs
70+
- add macOS version availability guards for Swift APIs
71+
- guard recording output FFI with compiler version check for macOS 13
72+
- remove non-existent with_average_bitrate method calls
73+
- resolve clippy warnings
74+
- remove non-existent average_bitrate API
75+
- *(swift)* implement stub configuration properties
76+
- *(swift)* implement stub configuration properties
77+
- remove dead code and fix test errors
78+
- *(memory)* add leak fixes and comprehensive memory tests
79+
- *(audio)* correct AudioStreamBasicDescription repr
80+
- *(picker)* activate app and cleanup observer before showing
81+
- *(examples)* use SCShareableContent instead of blocking picker
82+
- *(examples)* update recording_output example to use builder pattern
83+
- *(picker)* remove tokio-dependent async methods
84+
85+
### Other
86+
87+
- ignore Apple framework leaks, fail only on our code leaks
88+
- fail leak check on any leaks including Apple framework leaks
89+
- run leak-check on all platforms in matrix
90+
- run leak-check parallel to build, gate releases, move docs to release trigger
91+
- fix formatting in leak check example
92+
- Remove non-existent SCStreamConfiguration APIs
93+
- add 16_full_metal_app to examples list
94+
- fix content picker API examples in README
95+
- rename 16_metal_overlay to 16_full_metal_app
96+
- rename metal_overlay example to 16_metal_overlay
97+
- update lib.rs feature flags and examples list
98+
- update README to match current API
99+
- add macOS 26 (Tahoe) to build matrix
100+
- fix formatting in memory leak check example
101+
- improve doc comments for audio and block buffer modules
102+
- update documentation to reflect current API
103+
- update references to renamed memory leak example
104+
- *(test)* convert leak test to example for better isolation
105+
- add note about running memory tests single-threaded
106+
- fix clippy warnings and format code
107+
- *(swift)* use public APIs for filter content extraction
108+
- *(examples)* update README with new examples
109+
- *(examples)* extract input handling to separate module
110+
- improve code quality and fix memory leaks
111+
- add copilot instructions and Apple docs download script
112+
- *(error)* replace specific error variants with SCStreamErrorCode
113+
- *(example)* split metal_overlay into modules
114+
- *(example)* remove unused metal_overlay module files
115+
- *(config)* remove get_ prefix from getters
116+
- *(example)* modularize metal_overlay example
117+
- improve metal overlay UX and mic device API
118+
- *(example)* improve metal_overlay UX with menu navigation
119+
- *(picker)* rename async pick() to show() for consistency
120+
- *(picker)* replace blocking API with callback-based API
121+
- add coverage for missing SDK features
122+
- *(api)* remove get_ prefix from non-configuration getters
123+
- fix clippy warnings in docs and tests
124+
- *(cm)* standardize CM/CV type method naming
125+
- *(api)* remove deprecated APIs and standardize naming
126+
- *(api)* standardize Rust API patterns and naming
127+
- *(swift-bridge)* standardize API patterns and error handling
128+
- add version-specific feature testing per macOS runner
129+
- update README with new APIs and feature flags
130+
- *(picker)* add async API documentation and improve examples
131+
- update README and Cargo.toml for new features
132+
- fix clippy doc_markdown warnings and update examples
133+
- update documentation to use builder pattern API
134+
- fix build badge workflow filename
135+
- use major version only in README examples
136+
10137
### Added
11138

12139
- **Memory Leak Example** - `15_memory_leak_check.rs` for comprehensive memory leak testing with `leaks`

Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "screencapturekit"
3-
version = "1.2.0"
3+
version = "1.3.0"
44
edition = "2021"
55
license = "MIT OR Apache-2.0"
66
homepage = "https://github.com/doom-fish/screencapturekit-rs"

0 commit comments

Comments
 (0)