| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
Sorry, something went wrong.
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info ⚙️ Run configurationConfiguration used: Repository UI Review profile: CHILL Plan: Pro Run ID: 1917e78c-ecf3-4c6a-bc15-8ff7648647a7 📥 CommitsReviewing files that changed from the base of the PR and between ecd3598 and 25832d3. 📒 Files selected for processing (6)
📝 Walkthrough WalkthroughThis PR modernizes the v8_inspector string representation from uint16_t to char16_t, optimizes inspector message dispatch through direct 8-bit StringView construction, and addresses LLVM 17.0.6 build compatibility on newer Apple toolchains. ChangesString Type System and Inspector Message Handling
Build Configuration and Parameter Corrections
🎯 3 (Moderate) | ⏱️ ~20 minutes 🚥 Pre-merge checks | ✅ 4 | ❌ 1 ❌ Failed checks (1 warning)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches 📝 Generate docstrings
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. ❤️ ShareComment @coderabbitai help to get the list of available commands and usage tips. |
Sorry, something went wrong.
| Back | FazBrowse Home | New Git URL |
metadata-generator/CMakeLists.txt: downgrade two diagnostics from
errors to warnings. Both fire inside LLVM 17.0.6's own headers on
newer Apple toolchains and have no fix on our side:
classes declared final (e.g. clang/AST/Decl.h:151).
stores in clang AST headers.
The suppressions are guarded by check_cxx_compiler_flag so older
toolchains that don't recognize the flag names skip the
add_compile_options call cleanly.
V8 JSI runtime
NativeScript/v8runtime/V8Runtime.cpp:
evaluatePreparedJavaScript was passing nullptr as the
std::string sourceURL argument. Clang 17's -Wnonnull rejects
implicit conversion from nullptr to the std::string(const char*)
constructor. The function body is unreachable in practice (the sibling
prepareJavaScript already returns nullptr), but it still has to
compile. Switch to "" — the conventional "unknown source URL"
sentinel.
V8 inspector — UChar / char_traits
libc++ in MacOSX26.4.sdk deprecates std::char_traits<T> for any
T other than the standard char family (char, wchar_t,
char8_t, char16_t, char32_t). String16 is backed by
std::basic_string<UChar> with using UChar = uint16_t;, so every
inclusion of <string> after string-16.h instantiates
char_traits<unsigned short> and the whole inspector translation
unit fails under -Werror,-Wdeprecated-declarations.
Switch UChar to char16_t, which makes std::basic_string<UChar>
resolve to the fully supported std::u16string. The V8 inspector
public API surface still passes uint16_t* over its interfaces, so
string-util.h now uses reinterpret_cast at exactly those
boundaries — both directions are bit-identical 16-bit codepoints, so
the cast is sound.
utils.mm::ToStdString previously built a std::vector<uint16_t>
and then copy-constructed a std::u16string from that vector's
iterators. That iterator-range constructor pulled the deprecated
char_traits<unsigned short> back in through the back door. Rewrite
to write char16_t directly into the destination std::u16string,
dropping the intermediate vector.
JsV8InspectorClient.mm: add a file-local Make8BitStringView
helper that builds a StringView over a std::string's storage as
an 8-bit (LATIN1/ASCII) view. Use it at the three sites that
previously inflated each ASCII/UTF-8 JSON byte into a uint16_t,
allocated a std::vector<uint16_t>, and then handed it to the
16-bit StringView constructor. The new path is shorter, allocates
nothing, and no longer touches the deprecated 16-bit string-traits
chain at all.
Summary by CodeRabbit
Release Notes
Bug Fixes
Performance