Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 0 additions & 1 deletion requirements/base.txt
Original file line number Diff line number Diff line change
@@ -1 +0,0 @@
merlin-core>=23.04.00
22 changes: 21 additions & 1 deletion setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@
import codecs
import itertools
import os
import re
import sys

from setuptools import find_namespace_packages, setup
Expand All @@ -38,8 +39,27 @@ def read_requirements(filename):
return [line for line in lineiter if line and not line.startswith("#")]


def merlin_dependency(package_name: str) -> str:
"""Get Merlin package dependency matching the current version.

Examples
--------

>>> merlin_dependency("merlin-core") # with version "23.07.00"
"merlin-core~=23.7.0"

>>> merlin_dependency("merlin-core") # with version "23.12.dev0+1.ge73d8ba"
"merlin-core"
"""
version = versioneer.get_version()
major, minor = map(int, re.match(r"(\d+).(\d+).*", version).groups())
if "dev" in version:
return package_name
return f"{package_name}~={major}.{minor}.0"


requirements = {
"base": read_requirements("requirements/base.txt"),
"base": read_requirements("requirements/base.txt") + [merlin_dependency("merlin-core")],
"tensorflow": read_requirements("requirements/tensorflow.txt"),
"pytorch": read_requirements("requirements/torch.txt"),
"torch": read_requirements("requirements/torch.txt"),
Expand Down