Skip to content

Feature Request: Add support for Python 3.12 for mlfinlabΒ #544

@Furkan-rgb

Description

@Furkan-rgb

Is your feature request related to a problem? Please describe.
The current version of mlfinlab does not support Python 3.12, which was released in October 2023. This lack of support prevents users who have upgraded to the latest Python version from utilizing mlfinlab in their financial machine learning projects. Given that mlfinlab is a crucial library for many quantitative finance applications, ensuring compatibility with the latest Python version is important for researchers and practitioners in the field.

Describe the solution you'd like
I propose updating mlfinlab to ensure full compatibility with Python 3.12. This would involve:

  1. Reviewing the mlfinlab codebase for any syntax or functionality that may have been deprecated or changed in Python 3.12
  2. Updating the library's code to address any incompatibilities
  3. Adding Python 3.12 to the list of supported versions in mlfinlab's setup files and documentation
  4. Running the test suite against Python 3.12 to ensure all financial algorithms and utilities work as expected
  5. Updating the CI/CD pipeline to include Python 3.12 in its test matrix

Describe alternatives you've considered

  1. Forking mlfinlab and maintaining a Python 3.12 compatible version separately. However, this would lead to fragmentation and is not ideal for the financial machine learning community.
  2. Using an older version of Python. This is not preferable as it would prevent users from benefiting from the latest Python features and improvements, which could be particularly beneficial for performance-critical financial applications.

Additional context
Python 3.12 introduced several new features and optimizations that users of mlfinlab could benefit from, such as improved error messages, faster startup, and more efficient memory usage. These improvements could be particularly valuable for mlfinlab users working with large financial datasets or running computationally intensive algorithms.

Moreover, ensuring compatibility would allow mlfinlab to stay current and maintain its usefulness for the quantitative finance and machine learning communities. It would also demonstrate the library's commitment to staying up-to-date with the latest developments in the Python ecosystem.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions