[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#47593] [PATCH 6/6] gnu: python-xyz: Add python-abjad.
From: |
Bonface Munyoki K . |
Subject: |
[bug#47593] [PATCH 6/6] gnu: python-xyz: Add python-abjad. |
Date: |
Wed, 14 Apr 2021 00:00:47 +0300 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) |
Efraim Flashner <efraim@flashner.co.il> writes:
> I would put this in music.scm near lilypond.
>
Makes sense.
[...]
>
> If this is a package that would be installed then you can change the
> name to abjad, no need to keep the python prefix.
>
I don't quite get this. Do you mean a package that
would be installed and run as some executable as
opposed to a library?
>> +(define-public python-abjad
>> + (package
>> + (name "python-abjad")
>> + (version "3.3")
>> + (source
>> + (origin
>> + (method url-fetch)
>> + (uri
>> + (string-append
>> + "https://github.com/Abjad/abjad/archive/refs/tags/v"
>> + version ".tar.gz"))
>
> This should be a pypi URI or be downloaded using git-fetch
>
Noted.
>> + (sha256
>> + (base32
>> + "0dvj40g8kq1jdp09gb2chxxb7959vxv5h4m8ywg4qigsw3f11xnx"))))
>> + (build-system python-build-system)
>> + (arguments
>> + `(#:phases
>> + (modify-phases %standard-phases
>> + (add-after 'unpack 'patch-source
>> + (lambda _
>> + (substitute* "setup.py"
>> + (("uqbar>=0.4.4, <0.5.0") "uqbar>=0.4.4, <=0.5.1")
>
> I would just take off the <0.5.0 and not try to make it just high enough
> to include the version packaged.
>
Makes sense!
>> + (("pytest>=5.4.3") "pytest>=5.3"))
>
> We also have pytest-6. Of course this is also fine.
>
Sure!
>> + #t))
>> + (replace 'check
>> + (lambda _
>
> (lambda* (#:key tests? #:allow-other-keys)
> (when tests?
>
Noted.
>> + ;; See: https://stackoverflow.com/a/34140498
>> + (invoke "python" "-m" "pytest" "tests")
>> + #t)))))
>
> I'm sure that not all of these need to be propagated. The source should
> be patched to refer to lilypond and I'm guessing most of the rest can
> either be inputs (they'll get wrapped with the python wrapper) or
> native-inputs if they're only needed for tests.
>
Makes a lot of sense!
>> + (propagated-inputs
>> + `(("lilypond" ,lilypond) ;; Required for tests to pass!
>> + ("python-black" ,python-black)
>> + ("python-flake8" ,python-flake8)
>> + ("python-isort" ,python-isort)
>> + ("python-mypy" ,python-mypy)
>> + ("python-ply" ,python-ply)
>> + ("python-pytest" ,python-pytest)
>> + ("python-pytest-cov" ,python-pytest-cov)
>> + ("python-quicktions" ,python-quicktions)
>> + ("python-roman" ,python-roman)
>> + ("python-six" ,python-six)
>> + ("python-sphinx-autodoc-typehints"
>> + ,python-sphinx-autodoc-typehints)
>> + ("python-uqbar" ,python-uqbar)))
>> + (home-page "https://abjad.github.io")
>> + (synopsis
>> + "Abjad is a Python API for building LilyPond files.")
>
> I'd shorten this to "Python API for building LilyPind files"
>
Thanks for the suggestions!
>> + (description
>> + "Abjad is a Python API for building LilyPond files.")
>> + (license license:expat)))
>> --
>> 2.31.0
>>
>>
>>
>>
--
Bonface M. K. D4F09EB110177E03C28E2FE1F5BBAE1E0392253F
Humble GNU Emacs User / Bearer of scheme-y parens
Curator: <https://upbookclub.com> / Twitter: @BonfaceKilz
signature.asc
Description: PGP signature
[bug#47593] [PATCH 4/6] gnu: python-xyz: Add python-setuptools-declarative-requirements., BonfaceKilz, 2021/04/04
[bug#47593] [PATCH 1/6] gnu: python-xyz: Add python-roman., BonfaceKilz, 2021/04/04
[bug#47593] [PATCH 3/6] gnu: python-xyz: Add python-uqbar., BonfaceKilz, 2021/04/04