Files
nixpkgs/pkgs/development/python-modules/fairseq/default.nix
T
Ihar Hrachyshka d7fe3f7d7f python312Packages.fairseq: mark as broken
It fails because it uses np.compat that is not shipped with numpy2.

Upstream runs on python3.9 and is generally mostly dead. If it ever
changes and they fix compatibility with numpy2, we may revisit this.

Signed-off-by: Ihar Hrachyshka <ihar.hrachyshka@gmail.com>
2025-04-02 10:23:50 -04:00

126 lines
2.5 KiB
Nix

{
lib,
buildPythonPackage,
pythonOlder,
fetchFromGitHub,
fetchpatch,
# Native build inputs
cython,
which,
# Propagated build inputs
cffi,
hydra-core,
omegaconf,
sacrebleu,
numpy,
regex,
torch,
tqdm,
bitarray,
torchaudio,
scikit-learn,
packaging,
# Check inputs
expecttest,
hypothesis,
pytestCheckHook,
}:
buildPythonPackage rec {
pname = "fairseq";
version = "0.12.3";
pyproject = true;
disabled = pythonOlder "3.7";
src = fetchFromGitHub {
owner = "pytorch";
repo = pname;
rev = "v${version}";
hash = "sha256-XX/grU5ljQCwx33miGoFc/7Uj9fZDtmhm4Fz7L4U+Bc=";
};
patches = [
# https://github.com/facebookresearch/fairseq/pull/5359
(fetchpatch {
url = "https://github.com/facebookresearch/fairseq/commit/2fa0768c2115b0a4c207cfa3e1b3e4ff3ad9a00c.patch";
hash = "sha256-aYYP/knQX6q6vhyA6q9uOOYfRhDAuJCo9QJWfFEDuuA=";
})
];
nativeBuildInputs = [
cython
which
];
pythonRelaxDeps = [
"hydra-core"
"omegaconf"
"torchaudio"
];
propagatedBuildInputs = [
cffi
hydra-core
omegaconf
sacrebleu
numpy
regex
torch
tqdm
bitarray
torchaudio
scikit-learn
packaging
];
nativeCheckInputs = [
expecttest
hypothesis
pytestCheckHook
];
pythonImportsCheck = [ "fairseq" ];
preCheck = ''
export HOME=$TMPDIR
cd tests
'';
pytestFlagsArray = [ "--import-mode append" ];
disabledTests = [
# this test requires xformers
"test_xformers_single_forward_parity"
"test_mask_for_xformers"
# this test requires iopath
"test_file_io_async"
# these tests require network access
"test_s2s_transformer_checkpoint"
"test_librispeech_s2t_transformer_s_checkpoint"
"test_s2s_transformer_checkpoint"
"test_waitk_checkpoint"
"test_sotasty_es_en_600m_checkpoint"
"test_librispeech_s2t_conformer_s_checkpoint"
# TODO research failure
"test_multilingual_translation_latent_depth"
];
disabledTestPaths = [
# ValueError: mutable default ... for field bar is not allowed: use default_factory
"test_dataclass_utils.py"
];
meta = with lib; {
description = "Facebook AI Research Sequence-to-Sequence Toolkit";
homepage = "https://github.com/pytorch/fairseq";
license = licenses.mit;
platforms = platforms.linux;
hydraPlatforms = [ ];
maintainers = with maintainers; [ happysalada ];
broken = true; # requires numpy1 which is incompatible with sacrebleu depending on numpy2
};
}