Hi all,

As part of our effort to clean up the use of deprecated APIs, we are making
the change to have APIs marked V8_DEPRECATE_SOON cause compiler warnings
(which are treated as errors) if called within V8 code [1].  The intention
is to avoid situations where APIs are left marked as V8_DEPRECATE_SOON, but
never progress to being fully deprecated or removed.

Embedders can disable these deprecation warnings by setting the gn
argument v8_imminent_deprecation_warnings to false (as Chromium already
does), in which case they will only get deprecation warnings for APIs
marked V8_DEPRECATED.

There are some situations where it is might be necessary for V8 code to
call a V8_DEPRECATE_SOON function temporarily. In these cases the
deprecation warning can be disabled at the call-site using a pragma until
they can be removed (e.g., [2]), however hopefully these situations should
be rare.

The deprecation process should now follow the following steps:
 1) Remove calls to deprecated API from v8 source code and tests
 2) Mark API as V8_DEPRECATE_SOON
 3) Remove calls to the deprecated API from embedders that might be
impacted (e.g., Chromium, node.js, etc.)
 4) Mark API as V8_DEPRECATED
 5) Wait for at least one V8 release, then remove the deprecated API.

Cheers,
Ross

[1] https://chromium-review.googlesource.com/c/v8/v8/+/1149606
[2]
https://cs.chromium.org/chromium/src/v8/test/cctest/test-api.cc?type=cs&q=MARKIndependent&sq=package:chromium&g=0&l=7848

-- 
-- 
v8-dev mailing list
v8-dev@googlegroups.com
http://groups.google.com/group/v8-dev
--- 
You received this message because you are subscribed to the Google Groups 
"v8-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to v8-dev+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to