I wanted to bring up a point that is going to become increasingly important in 2016 and beyond. To date as we've been polishing up the ODP API we've been somewhat abrupt in removing deprecated APIs. Now that we have key initiatives like OFP using ODP, that needs to change.
ODP has had the ODP_DEPRECATED attribute (in include/odp/api/hints.h) for some time, however we've not been using it. I'd like to propose that this change starting in 2016. Whenever an API is changed (as part of an API-NEXT patch) we should do the following: 1. The change should maintain the existing API, which should now be marked ODP_DEPRECATED. 2. The syntax and semantics of the deprecated API should be unchanged. 3. Marking the old API deprecated should be a separate patch in the series for orthogonality. 4. Validation tests of the old API may be removed or retained as the submitter's option 5. The new API definition, implementation, and validation tests should be provided as part of the patch. 6. The user documentation should be updated to note that the old API is deprecated and to fully document the new API and its usage. The old and new APIs should then be maintained for a period of time to be determined by consensus. When it is clear that sufficient time has passed to enable migration then a separate patch can be submitted to remove the old API definition, implementation, validation tests (if still present), and documentation. I'd like to discuss this during next week's ODP arch meetings and public call to ensure that everyone is in agreement here and that we can transition to this model in 2016. Thanks.
_______________________________________________ lng-odp mailing list lng-odp@lists.linaro.org https://lists.linaro.org/mailman/listinfo/lng-odp