According to
https://code.google.com/p/v8/wiki/Source and confirmed by e.g.
https://groups.google.com/d/msg/v8-users/aaSY-02HWzA/MP4gRTyB6Z4J all removals from v8 headers are to be tagged with V8_DEPRECATED.
Some examples (non-exhaustive for brevity) from a diff between 3.19 and 3.20 branches where V8_DEPRECATED isn't used but looks like it should be:
/**
* Returns the script id value.
+ * DEPRECATED: Please use GetId().
*/
Local<Value> Id();
+ /**
+ * Returns scriptId object.
+ * DEPRECATED: use ScriptId() instead.
+ */
Handle<Value> GetScriptId() const;
+ /**
+ * Deprecated. Never called directly by V8.
+ * For compatibility with legacy version of this interface.
+ */
+ virtual void Free(void* data);
+ // Deprecated, use Date::ValueOf() instead.
+ // TODO(svenpanne) Actually deprecate when Chrome is adapted.
+ double NumberValue() const { return ValueOf(); }
Actually I like the introduction of V8_DEPRECATED and its documentation on July 2013 (according to my reading of v8 wiki history). This is moving in a good direction, and will certainly be helpful for embedders and packagers. I appreciate v8 team's effort doing this.
Paweł