mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-11-29 10:23:29 +00:00
571c71e6f7
We are migrating packages that meet below requirements: 1. using `callPackage` 2. called path is a directory 3. overriding set is empty (`{ }`) 4. not containing path expressions other than relative path (to makenixpkgs-vet happy) 5. not referenced by nix files outside of the directory, other than`pkgs/top-level/all-packages.nix` 6. not referencing nix files outside of the directory 7. not referencing `default.nix` (since it's changed to `package.nix`) 8. `outPath` doesn't change after migration The tool is here: https://github.com/Aleksanaa/by-name-migrate.
94 lines
2.0 KiB
Nix
94 lines
2.0 KiB
Nix
{ lib
|
||
, fetchFromGitHub
|
||
, python3
|
||
|
||
# tests
|
||
, git
|
||
, mercurial
|
||
, patch
|
||
}:
|
||
|
||
python3.pkgs.buildPythonApplication rec {
|
||
pname = "mozphab";
|
||
version = "1.5.1";
|
||
format = "pyproject";
|
||
|
||
src = fetchFromGitHub {
|
||
owner = "mozilla-conduit";
|
||
repo = "review";
|
||
rev = "refs/tags/${version}";
|
||
hash = "sha256-HxwQ+mGtjnruppPAD01QUg3aca+k5vpj814BWM+3VfQ=";
|
||
};
|
||
|
||
postPatch = ''
|
||
substituteInPlace pyproject.toml \
|
||
--replace "glean-sdk>=50.0.1,==50.*" "glean-sdk"
|
||
'';
|
||
|
||
nativeBuildInputs = with python3.pkgs; [
|
||
setuptools
|
||
setuptools-scm
|
||
];
|
||
|
||
propagatedBuildInputs = with python3.pkgs; [
|
||
colorama
|
||
distro
|
||
glean-sdk
|
||
packaging
|
||
python-hglib
|
||
sentry-sdk
|
||
setuptools
|
||
];
|
||
|
||
nativeCheckInputs = [
|
||
git
|
||
mercurial
|
||
patch
|
||
]
|
||
++ (with python3.pkgs; [
|
||
callee
|
||
immutabledict
|
||
hg-evolve
|
||
mock
|
||
pytestCheckHook
|
||
]);
|
||
|
||
preCheck = ''
|
||
export HOME=$(mktemp -d)
|
||
'';
|
||
|
||
disabledTests = [
|
||
# AttributeError: 'called_once' is not a valid assertion.
|
||
"test_commit"
|
||
# AttributeError: 'not_called' is not a valid assertion.
|
||
"test_finalize_no_evolve"
|
||
"test_patch"
|
||
];
|
||
|
||
disabledTestPaths = [
|
||
# codestyle doesn't matter to us
|
||
"tests/test_style.py"
|
||
# integration tests try to submit changes, which requires network access
|
||
"tests/test_integration_git.py"
|
||
"tests/test_integration_hg.py"
|
||
"tests/test_integration_hg_dag.py"
|
||
"tests/test_integration_patch.py"
|
||
"tests/test_integration_reorganise.py"
|
||
"tests/test_sentry.py"
|
||
];
|
||
|
||
meta = with lib; {
|
||
description = "Phabricator CLI from Mozilla to support submission of a series of commits";
|
||
mainProgram = "moz-phab";
|
||
longDescription = ''
|
||
moz-phab is a custom command-line tool, which communicates to
|
||
Phabricator’s API, providing several conveniences, including support for
|
||
submitting series of commits.
|
||
'';
|
||
homepage = "https://moz-conduit.readthedocs.io/en/latest/phabricator-user.html";
|
||
license = licenses.mpl20;
|
||
maintainers = [ ];
|
||
platforms = platforms.unix;
|
||
};
|
||
}
|