Skip to content
This repository was archived by the owner on Nov 17, 2023. It is now read-only.
This repository was archived by the owner on Nov 17, 2023. It is now read-only.

MXNet extensions semantic versioning #19135

@samskalicky

Description

@samskalicky

Description

Currently the lib_api.h has a version number in it that is required to match the one in MXNet when loading the library.

Every change increments the version number:
https://github.com/apache/incubator-mxnet/blob/f1acda73e0b2ca5f1b6ff89f25c17a838819be82/include/mxnet/lib_api.h#L56
And the version number is required to match:
https://github.com/apache/incubator-mxnet/blob/f1acda73e0b2ca5f1b6ff89f25c17a838819be82/src/c_api/c_api.cc#L1500-L1503
Each release of MXNet will require libraries to have the same version of lib_api.h. The versioning of the Extensions APIs is different than MXNet's C API.

This simplifies testing and ensures that libraries will work with a specific version of MXNet. It also allows the APIs to evolve without being restrained.

Starting in the 2.0 release onwards, should we change this to follow semantic versioning? And if so, how do we test and verify the compatibility hasnt been broken? How do we ensure that for future major releases we can break compatibility and check and report incompatibility errors?

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions