From e7be7e40956bdfc9464f06384870890881538c22 Mon Sep 17 00:00:00 2001 From: Julian Michael Hoersch Date: Wed, 13 Jan 2021 12:20:00 +0100 Subject: [PATCH 01/94] Added first versions of new packages to the repo Added packages: py-dials (not working), py-dials-data (working), py-numexpr (working), py-procrunner (working), py-silx (working) --- packages/py-dials-data/package.py | 71 +++++++++++++++++ packages/py-dials/package.py | 126 ++++++++++++++++++++++++++++++ packages/py-numexpr/package.py | 74 ++++++++++++++++++ packages/py-procrunner/package.py | 64 +++++++++++++++ packages/py-silx/package.py | 76 ++++++++++++++++++ 5 files changed, 411 insertions(+) create mode 100644 packages/py-dials-data/package.py create mode 100644 packages/py-dials/package.py create mode 100644 packages/py-numexpr/package.py create mode 100644 packages/py-procrunner/package.py create mode 100644 packages/py-silx/package.py diff --git a/packages/py-dials-data/package.py b/packages/py-dials-data/package.py new file mode 100644 index 0000000..6d3f60f --- /dev/null +++ b/packages/py-dials-data/package.py @@ -0,0 +1,71 @@ +# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other +# Spack Project Developers. See the top-level COPYRIGHT file for details. +# +# SPDX-License-Identifier: (Apache-2.0 OR MIT) + +# ---------------------------------------------------------------------------- +# If you submit this package back to Spack as a pull request, +# please first remove this boilerplate and all FIXME comments. +# +# This is a template package file for Spack. We've put "FIXME" +# next to all the things you'll want to change. Once you've handled +# them, you can save this file and test your package like this: +# +# spack install py-dials-data +# +# You can edit this file again by typing: +# +# spack edit py-dials-data +# +# See the Spack documentation for more information on packaging. +# ---------------------------------------------------------------------------- + +from spack import * + + +class PyDialsData(PythonPackage): + """A python package providing data files used for regression tests in DIALS, dxtbx, xia2 + and related packages.If you want to know more about what py-dials-data is you can have a read + through the background information. For everything else the main documentation is probably + the best start.""" + + # FIXME: Add a proper url for your package's homepage here. + homepage = "https://dials-data.readthedocs.io/en/latest/" + url = "https://github.com/dials/data/archive/v2.1.0.tar.gz" + + # FIXME: Add a list of GitHub accounts to + # notify when the package is updated. + maintainers = ['RobertRosca', 'julianhoersch'] + + version('2.1.0', sha256='17935ff9e3791dae992f4b606899d407ea8ede7ea047faa6580a7552429c0a7b') + version('2.0.0', sha256='d68708af31e6325de30c6f191c05c5299b3a19fba5c657262b8d75fb24af3593') + version('1.0.0', sha256='0c28046f95fd89f55ce270eade4bece0862c8aa31c1b3baff3da4a6aa277cadb') + version('0.6.0', sha256='84397fa24a6d805f9a223becb4c986e47fa11b2e0abb5373be56aeabe6f28883') + version('0.5.0', sha256='317c6bea2db078c342c85845363ccf1487dd8e9178afa33dc3aa034490a23246') + version('0.4.0', sha256='35652e5cfa5d49f3b4de0bbdb1067914b788672bbc67c2ec169d982b69e84155') + version('0.3.0', sha256='b90480ad6540c05e4017f3e7c1fed43c26f0928e3301e65114b8d5d13d94f50e') + version('0.2.0', sha256='8285b619cf56acb50163f2040e5d26c6ea2a7de9606f0d8e9d313977fbbc95f0') + version('0.1.0', sha256='5239f50ed13ead45229488bf578806289e5ee5b482d6cbd3a365cd60387aa4e2') + + # FIXME: Add dependencies if required. Only add the python dependency + # if you need specific versions. A generic python dependency is + # added implicity by the PythonPackage class. + depends_on('python@3.6:', type=('build', 'run')) + depends_on('py-setuptools', type='build') + depends_on('py-importlib-resources@1.1.0:') + depends_on('py-pytest@6.1.2') # in install_requires + depends_on('py-pyyaml@5.3.1') + depends_on('py-py@1.9.0') + + + + depends_on('py-coverage@:4.9', type='test') + # depends_on('py-pytest', type='test') #specify for test too? + depends_on('py-pytest-cov', type='test') + depends_on('py-testpath', type='test') + + def build_args(self, spec, prefix): + # FIXME: Add arguments other than --prefix + # FIXME: If not needed delete this function + args = [] + return args diff --git a/packages/py-dials/package.py b/packages/py-dials/package.py new file mode 100644 index 0000000..92357b1 --- /dev/null +++ b/packages/py-dials/package.py @@ -0,0 +1,126 @@ +# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other +# Spack Project Developers. See the top-level COPYRIGHT file for details. +# +# SPDX-License-Identifier: (Apache-2.0 OR MIT) + +# ---------------------------------------------------------------------------- +# If you submit this package back to Spack as a pull request, +# please first remove this boilerplate and all FIXME comments. +# +# This is a template package file for Spack. We've put "FIXME" +# next to all the things you'll want to change. Once you've handled +# them, you can save this file and test your package like this: +# +# spack install py-dials +# +# You can edit this file again by typing: +# +# spack edit py-dials +# +# See the Spack documentation for more information on packaging. +# ---------------------------------------------------------------------------- + +from spack import * + + +class PyDials(PythonPackage): + """X-ray crystallography for structural biology has benefited greatly from + a number of advances in recent years including high performance pixel array + detectors, new beamlines capable of delivering micron and sub-micron focus + and new light sources such as XFELs. The DIALS project is a collaborative + endeavour to develop new diffraction integration software to meet the data + analysis requirements presented by these recent advances. There are three end + goals: to develop an extensible framework for the development of algorithms to + analyse X-ray diffraction data; the implementation of algorithms within this + framework and finally a set of user facing tools using these algorithms to + allow integration of data from diffraction experiments on synchrotron and + free electron sources.""" + + # FIXME: Add a proper url for your package's homepage here. + homepage = "https://dials.github.io" + url = "https://github.com/dials/dials/archive/v3.2.3.tar.gz" + + # FIXME: Add a list of GitHub accounts to + # notify when the package is updated. + maintainers = ['RobertRosca', 'julianhoersch'] + + version('3.3.0', sha256='163ffd5da4b6c783e5e37ffedae751b86b26d0266c88b95280d727a69180e14c') + version('3.2.3', sha256='e9b52b9bc61595579401bbae2447d42e49a4a30d15c2908bea0899216cf8fedb') + version('3.2.2', sha256='3df1c0d0145d59f176fe81f0e8b23ea28955781021183d2497c183a26ec0a7bb') + version('3.2.1', sha256='1bca865ebb2fa3b8e789dcc1805956934332af7629642c5d556bc6c11bc6583e') + version('3.2.0', sha256='0cd2a8905ee239d8577b2150d9d97d2d83527b26f9d01ce7cb940bd04bd6c3eb') + version('3-1-4', sha256='c54e8948e06ddab5be99e0a499f5f9067d72af97cbaddf9f5d88919fe7aa08ac') + version('3-1-3', sha256='b26aea14ad48fa44a8c1db8fe5ef533e95a1f7ad9b6a2e0048810255fec12709') + version('3-1-2', sha256='47625e40d2dcee5364fa5ba0b2b2256e3f0f58c706179d66cd03acf901ee8181') + version('3-1-1', sha256='68c96a82e8e21b0e5e1dbc85ca00aa4bba91690d9d9a2aee757da00cad4ff636') + version('3.1.0', sha256='031d6073f9c4a40f73e31cd4bb4e466b04a994a47923bea9e7b85b092a687f74') + version('3-0-4', sha256='7c8123868e5d9d8090cc946f694be51b474de92def1876c9a3d468ef71c2ea38') + version('3-0-3', sha256='55b2be86f3079f8d153331c78e2efd88a26471b2a8a134738b1b65be3e86ca06') + version('3-0-2', sha256='dd3be99a91111169bcf0a763f46c86b4352c0e68b3063f7202fc2ef1393cd143') + version('3-0-1', sha256='cdfad52648399e781c02ee8d9d557555a1e99090ebe149b9a953f8bcac8d35ec') + version('3.0.0', sha256='ab39ea80d5e35883087ef36d5b871893fbf8956ee34a22775f6b4e27fb1eb5c2') + version('3.dev', sha256='ccbdf49f0a53d92bffa6e0c463a8d8e438d474d470447809baf2f2d771dd8151') + version('2-2-10-macosx-conda3', sha256='32e4e418cf837514eb79c7462073dd8a2605c71299a52e370d00dc6c4c6a98d9') + version('2-2-10', sha256='09468f2fa8abb273e9c34d51bb657a05bf40e472ef668d886b8b21bd54b8af96') + version('2-2-9-macosx-conda3', sha256='48b7fc4c18b59b0bbd7431cb9836f81479d8dd1fbf266f46225f2058faaccf31') + version('2-2-9', sha256='70b615f9f8a152f603d8f65280be3c72c8ea6916e6cba81bc033aff7c2fda450') + version('2-2-8-macosx-conda3', sha256='54250bbc8ecbe37ffef048a4bbb501fab7adcebc0a8b71238c2bf25de486ef67') + version('2-2-8', sha256='8ad6572faf1bd07e2a1aee417c148b9b40c1b04b0356fc2df2ce2bc70368e675') + version('2-2-7-macosx-conda3', sha256='07b9855dffc59aa26ed6d4d842b8338da336b1f732379ca755d6b58e09799bc0') + version('2-2-7', sha256='d22c75eed5198fb9c3e11b0d957590e5caaf404dedc1910b67f6d7cfe47b530a') + version('2-2-6-macosx-conda3', sha256='9ac227d8ddf6117215b4a446118efa2068438d17b8a29abda7d392dcb13014ac') + version('2-2-6', sha256='371ddbee804cfea3e82767919458d0e92c6d7a06227914cc75c9b53034f3df65') + version('2-2-5-macosx-conda3', sha256='234771cb45ea3df336313c2e388909bd522cd17d067501dcb6c872f872b1d8bd') + version('2-2-5', sha256='52301ea90059911cafc9b508f665c279a45fcf0e1945e25e3bf2c7e3be18a0e5') + version('2-2-4-macosx-conda3', sha256='d32ca2719fdf3a546166c916ce638cf7c2a642ca64b42cf0fd204274b1396987') + version('2-2-4', sha256='6007ad8c7912d662ccca2bfc4042ad6914e384e0cc082a9d30b17482f2c7384c') + version('2-2-3-macosx-conda3', sha256='51dea8c04e3bcfae184124da3b63a32e85893d76de2b7fe11f0edd2b2bc79278') + version('2-2-3', sha256='c6428fb633886be0fe27f4c88640c560c259fbb836dd468e79911f124b8fdb31') + version('2-2-2-macosx-conda3', sha256='d9b749642ffd79bb7b7f116e2e2e2511dd627609356ad695500287a6b2ee2bae') + version('2-2-2', sha256='fc7af3b57c9d1ef72eeb9d6d7537dad07de9ca1e7a2e6f713f5707227d8557f8') + version('2-2-1-macosx-conda3', sha256='727a1a5994d806d67e8cf0a788cc0577045a12d5c473512fe0d8557aaaeb9e8a') + version('2-2-1', sha256='f836216fd3aff7e341e045935acbbbc1446a005c0b88cd133cae940941dc566f') + version('2-2-0-macosx-conda3', sha256='3690c19b0ac1d9ad1ffd6e89ee1cf998a4bc38315c5bf3d79a62cf11685a041d') + version('2.2.0', sha256='5b5d8b8bd071f519ac031a2aa8e01819a355ff0647753ac3e30028f05331dce0') + version('2-1-5-macosx-conda3', sha256='f874ee1f0fa35e213fcb7c329c3e642712f5d96dc9c35c7337ade8ddcec49d68') + version('2-1-5', sha256='2744cc7842296913bd6e2794704fd6ba416df0cf4784101f3341386ac0b3b426') + version('2-1-4-macosx-conda3', sha256='e8d4cb4efc48e1fff1e8325c37cfecba525a38ceae75c1254d49d73b8f38b9fe') + version('2-1-4', sha256='7cc48986e6b17a979ac7e8b4d99a03fe8a5d0943f22f437731538ab0802ed6f6') + version('2-1-3-macosx-conda3', sha256='7b5c374643183773f0324971fedc251e9c2db62cf9efdb9c73ee5de09ee79558') + version('2-1-3', sha256='0b35f0c8409edc6f84adc37212a1749fae9ec4cc67b6e1f53a1a4fc8fc8c02d8') + version('2-1-2-macosx-conda3', sha256='e797efd61a95526ea19c92ed896801774f81eb571a03c7f510d7c9e227de588e') + version('2-1-2', sha256='2b5e63419377a14f3d7f17a56eb84f9551fab4eb2568ce0c342a1ba307e0337d') + version('2-1-1-macosx-conda3', sha256='6b436e8cb1c88a8b6226e9511b8c9176e72ac9cfad548537ebbedb1d863f04a8') + version('2-1-1', sha256='c41bb0376d80d60c608778ca0364170369b138f40de37e1823c886b5476373a1') + version('2-1-0-macosx-conda3', sha256='cfce998484e07d9eeec7c645f49f5761a7b1dff871917b7dda60fc1e69e2ba25') + version('2.1.0', sha256='f89c02377d3190950b75fa29b36d91fd2515256434dbe96364eb48bfc3caf832') + version('2-0-4', sha256='27695b68fa33e9b2c3a683ed8fc24bb48b1d6d020bac9aa6c48df20a8aa34d17') + version('2-0-3', sha256='d6e90e9dfdfdabd761f90281a8c8ebeddf2e04443253d093becb60addd0e8897') + version('2-0-2', sha256='ce713ee1ee2c234f9ec00e5d8ba452e0aa682900b74dcd8dfc5ae01fd6342b08') + version('2-0-1', sha256='dcdadb8af35d4348770aef531ab1109c6af77b5f390a8003b5b025e300b7fa7f') + version('2.0.0', sha256='3aaa6274646886d640c362ec8937e5ae3d63c3cdf2a0236ac1dc532e87869f10') + + # FIXME: Add dependencies if required. Only add the python dependency + # if you need specific versions. A generic python dependency is + # added implicity by the PythonPackage class. + depends_on('python@3.6:', type=('build', 'run')) + depends_on('py-setuptools', type='build') + depends_on('py-dials-data') + depends_on('py-jinja2') + depends_on('py-procrunner') + depends_on('py-six') + + # tests + depends_on('py-pytest-runner', type='test') # add type=test? only needed during development + depends_on('py-mock', type='test') + depends_on('py-coverage@:4.9', type='test') + depends_on('py-pytest', type='test') + depends_on('py-pytest-cov', type='test') + depends_on('py-testpath', type='test') + + + def build_args(self, spec, prefix): + # FIXME: Add arguments other than --prefix + # FIXME: If not needed delete this function + args = [] + return args diff --git a/packages/py-numexpr/package.py b/packages/py-numexpr/package.py new file mode 100644 index 0000000..a47abae --- /dev/null +++ b/packages/py-numexpr/package.py @@ -0,0 +1,74 @@ +# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other +# Spack Project Developers. See the top-level COPYRIGHT file for details. +# +# SPDX-License-Identifier: (Apache-2.0 OR MIT) + +# ---------------------------------------------------------------------------- +# If you submit this package back to Spack as a pull request, +# please first remove this boilerplate and all FIXME comments. +# +# This is a template package file for Spack. We've put "FIXME" +# next to all the things you'll want to change. Once you've handled +# them, you can save this file and test your package like this: +# +# spack install py-numexpr +# +# You can edit this file again by typing: +# +# spack edit py-numexpr +# +# See the Spack documentation for more information on packaging. +# ---------------------------------------------------------------------------- + +from spack import * + + +class PyNumexpr(PythonPackage): + """NumExpr is a fast numerical expression evaluator for NumPy. With it, + expressions that operate on arrays (like '3*a+4*b') are accelerated and + use less memory than doing the same calculation in Python. + + In addition, its multi-threaded capabilities can make use of all your cores + -- which generally results in substantial performance scaling compared to NumPy. + + Last but not least, numexpr can make use of Intel's VML (Vector Math Library, + normally integrated in its Math Kernel Library, or MKL). This allows further + acceleration of transcendent expressions.""" + + # FIXME: Add a proper url for your package's homepage here. + homepage = "https://github.com/pydata/numexpr/" + url = "https://github.com/pydata/numexpr/archive/v2.7.2.tar.gz" + + # FIXME: Add a list of GitHub accounts to + # notify when the package is updated. + maintainers = ['RobertRosca', 'julianhoersch'] + + version('3.0.1a5', sha256='e2ff7f3244a6c780059b7d80f22af07bbf93b01502da0df10c553fb30c6e8de2') + version('2.7.2', sha256='7d1b3790103221feda07f4a93a4fa5c6654f46865197a677ca6f27eb5cb4e5ef') + version('2.7.1', sha256='5c6ae3bb5688184b922b43fc47de49d642576d0feec55a1b679caa66efae90a1') + version('2.7.0', sha256='1923f038b90cc69635871968ed742be7775c879451c612f173c2547c823c9561') + version('2.6.9', sha256='d57267bbdf10906f5ed7841b3484bec4af0494102b50e89ba316924cc7a7fd46') + version('2.6.8', sha256='1a9684008c5ff7d69a5aa2998a3186587ee89f6cc6c4966f76aed8c4ee9f5b92') + version('2.6.7', sha256='e81a1a13656712aff072d89f49ecf905fd3c6b6722544c1decb132903c54a967') + version('2.6.6', sha256='f1f65fb3e0534b3391055e056ef7ecd537c9a2880af66f5a15e7abc029547c4a') + version('2.6.5', sha256='fe78a78e002806e87e012b6105f3b3d52d47fc7a72bafb56341fcec7ce02cfd7') + version('2.6.4', sha256='049da1c07bd62d2aba29887130ccc9aff9b90962cb779a7b7ddc15e580368fba') + + # FIXME: Add dependencies if required. Only add the python dependency + # if you need specific versions. A generic python dependency is + # added implicity by the PythonPackage class. + + depends_on('python@2.6:', type=('build', 'run')) + depends_on('py-setuptools', type='build') + depends_on('py-numpy@1.7:') + + depends_on('py-coverage@:4.9', type='test') + depends_on('py-pytest', type='test') + depends_on('py-pytest-cov', type='test') + depends_on('py-testpath', type='test') + + def build_args(self, spec, prefix): + # FIXME: Add arguments other than --prefix + # FIXME: If not needed delete this function + args = [] + return args diff --git a/packages/py-procrunner/package.py b/packages/py-procrunner/package.py new file mode 100644 index 0000000..1a95878 --- /dev/null +++ b/packages/py-procrunner/package.py @@ -0,0 +1,64 @@ +# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other +# Spack Project Developers. See the top-level COPYRIGHT file for details. +# +# SPDX-License-Identifier: (Apache-2.0 OR MIT) + +# ---------------------------------------------------------------------------- +# If you submit this package back to Spack as a pull request, +# please first remove this boilerplate and all FIXME comments. +# +# This is a template package file for Spack. We've put "FIXME" +# next to all the things you'll want to change. Once you've handled +# them, you can save this file and test your package like this: +# +# spack install py-procrunner +# +# You can edit this file again by typing: +# +# spack edit py-procrunner +# +# See the Spack documentation for more information on packaging. +# ---------------------------------------------------------------------------- + +from spack import * + + +class PyProcrunner(PythonPackage): + """Versatile utility function to run external processes + Free software: BSD license Documentation: https://procrunner.readthedocs.io.""" + + # FIXME: Add a proper url for your package's homepage here. + homepage = "https://procrunner.readthedocs.io" + url = "https://github.com/DiamondLightSource/python-procrunner/archive/v2.3.0.tar.gz" + + # FIXME: Add a list of GitHub accounts to + # notify when the package is updated. + # maintainers = ['github_user1', 'github_user2'] + + version('2.3.0', sha256='44a18bfdff242d2efae92a94da40a87b1a0eb3d6248cb459cf94ec719be5edd9') + version('2.2.0', sha256='b5c4fe17ab31f8907db61284e037139f5facc3c7ca5a2a6dc83aa8828680a440') + version('2.1.0', sha256='09b1c2b28e1442c5b8f22259f51de01ddbd0379ae23f51a094733178e58a38f5') + version('2.0.0', sha256='36b05a76b706cb22123cbb4a815e35062f3ff1f77d66f0bf9970db03c4e4d9ae') + version('1.1.0', sha256='412d7c181b1da633885b0cf7b7385d727bd23e1e3c8d40fbdb8ef9fa3db6d298') + version('1.0.2', sha256='7fe03d1d426a4633cecc502c2ba6c8ba19302b72919d3b682ddfee67b61e025c') + version('1.0.1', sha256='c8db5e7eff788e9eb8ec713ffa63448302458827dd300d8d3edf4b341e328b84') + version('1.0.0', sha256='4b78cfa1d0f29e8731e550d5b08c0706967faa2f88130bcd76bb657d70e940f1') + version('0.9.1', sha256='f721d7939156aa85fa3cee448005a3626fa23c915dd80e2d61e78f16d7857b4c') + version('0.9.0', sha256='b38e889322603790aeb94b78a3682ee74b001a315f8b1df6772abb0bc0aa1afa') + + # FIXME: Add dependencies if required. Only add the python dependency + # if you need specific versions. A generic python dependency is + # added implicity by the PythonPackage class. + depends_on('python@3.6:', type=('build', 'run')) + depends_on('py-setuptools', type='build') + + depends_on('py-coverage@:4.9', type='test') + depends_on('py-pytest', type='test') + depends_on('py-pytest-cov', type='test') + depends_on('py-testpath', type='test') + + def build_args(self, spec, prefix): + # FIXME: Add arguments other than --prefix + # FIXME: If not needed delete this function + args = [] + return args diff --git a/packages/py-silx/package.py b/packages/py-silx/package.py new file mode 100644 index 0000000..b3be200 --- /dev/null +++ b/packages/py-silx/package.py @@ -0,0 +1,76 @@ +# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other +# Spack Project Developers. See the top-level COPYRIGHT file for details. +# +# SPDX-License-Identifier: (Apache-2.0 OR MIT) + +# ---------------------------------------------------------------------------- +# If you submit this package back to Spack as a pull request, +# please first remove this boilerplate and all FIXME comments. +# +# This is a template package file for Spack. We've put "FIXME" +# next to all the things you'll want to change. Once you've handled +# them, you can save this file and test your package like this: +# +# spack install py-silx +# +# You can edit this file again by typing: +# +# spack edit py-silx +# +# See the Spack documentation for more information on packaging. +# ---------------------------------------------------------------------------- + +from spack import * + + +class PySilx(PythonPackage): + """The purpose of the silx project is to provide a collection of Python + packages to support the development of data assessment, reduction and + analysis applications at synchrotron radiation facilities. silx aims + to provide reading/writing tools for different file formats, data + reduction routines and a set of Qt widgets to browse and visualise + data.""" + + # FIXME: Add a proper url for your package's homepage here. + homepage = "http://www.silx.org/doc/silx/latest/" + url = "https://github.com/silx-kit/silx/archive/v0.14.0.tar.gz" + + # FIXME: Add a list of GitHub accounts to + # notify when the package is updated. + maintainers = ['RobertRosca', 'julianhoers'] + + version('0.14.0rc3', sha256='37f66a56022505b714b72e3975f5f992320b86fa368cfa0d11e4225f8c5451b1') + version('0.14.0rc2', sha256='486739a1ea1631271af7ffd9c4c4ec1bbc230e7ebea6829319abdb6d3d5adeb1') + version('0.14.0rc1', sha256='67936501fd7ed68006f570c1623cff762c225087b8f850729ee94a77c2168eb7') + version('0.14.0', sha256='17c595fe18c9eb3403a9d1f0ee6ea7b523607043c46c944573ecf406f6997866') + version('0.13.3b0', sha256='798bee0a4f83195d0e120fbbbbd11d692d2429888fdac81b75b9335d7545f931') + version('0.13.2-ubuntu20.04-packages', sha256='3c7b912be00954e9275056ac4e8b8f2d9772402ed8509eb2b6538fbf22438277') + version('0.13.2-debian10-packages', sha256='acab83206d18dd183fffb74a2ee18129cbff75185b39fc8e77561e7b3e4315ec') + version('0.13.2-debian9-packages', sha256='b32139153ea25d1bc336a14acebeb5f1b60b477171ef615b70c7a902e2a95cbc') + version('0.13.2', sha256='88a16187283c8684be63ab37aee7267c370962dfbcf45cca77ae494ee5e4e773') + version('0.13.1', sha256='2c5dbc1c043ecb78dafd1f7afbfd45833c87332818307196878b759956687491') + version('0.13.0b2', sha256='f3061d5cec39b6134b05cba19d26f3598a64440320351b94b6ca91129481bbdc') + version('0.13.0b1', sha256='c934f9b65a7c8a0cb44e274983b412b22cc710d36c192b077abbdae3e08b82e2') + version('0.13.0', sha256='8c2fe896a26ffd4811a1944481328faa60e05214b84e873bffbdd8cb13729535') + + # FIXME: Add dependencies if required. Only add the python dependency + # if you need specific versions. A generic python dependency is + # added implicity by the PythonPackage class. + # depends_on('python@2.X:2.Y,3.Z:', type=('build', 'run')) + depends_on('py-setuptools', type='build') + depends_on('py-numpy@1.12:') + depends_on('py-cython@0.21.1:') + depends_on('py-h5py') + depends_on('py-fabio@0.9:') + depends_on('py-six') + + depends_on('py-coverage@:4.9', type='test') + depends_on('py-pytest', type='test') + depends_on('py-pytest-cov', type='test') + depends_on('py-testpath', type='test') + + def build_args(self, spec, prefix): + # FIXME: Add arguments other than --prefix + # FIXME: If not needed delete this function + args = [] + return args From 7fcf695402d57eef987c7297fc0f4d6e37044799 Mon Sep 17 00:00:00 2001 From: Julian Michael Hoersch Date: Wed, 27 Jan 2021 10:05:15 +0100 Subject: [PATCH 02/94] Added test dependencies --- packages/py-fabio/package.py | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/packages/py-fabio/package.py b/packages/py-fabio/package.py index b33566f..922902e 100644 --- a/packages/py-fabio/package.py +++ b/packages/py-fabio/package.py @@ -48,6 +48,12 @@ class PyFabio(PythonPackage): depends_on('python@3.6:', type=('build', 'run')) depends_on('py-setuptools', type='build') depends_on('py-numpy') + + depends_on('py-coverage@:4.9', type='test') + depends_on('py-pytest', type='test') + depends_on('py-pytest-cov', type='test') + depends_on('py-testpath', type='test') + def build_args(self, spec, prefix): # FIXME: Add arguments other than --prefix # FIXME: If not needed delete this function From c767d34ec18b593bd5ede9ab803bc2b835071930 Mon Sep 17 00:00:00 2001 From: Julian Michael Hoersch Date: Wed, 27 Jan 2021 10:11:34 +0100 Subject: [PATCH 03/94] Added dependencies - not working yet --- packages/py-extra-foam/package.py | 86 +++++++++++++++++++++++++++++++ 1 file changed, 86 insertions(+) create mode 100644 packages/py-extra-foam/package.py diff --git a/packages/py-extra-foam/package.py b/packages/py-extra-foam/package.py new file mode 100644 index 0000000..bc70fcd --- /dev/null +++ b/packages/py-extra-foam/package.py @@ -0,0 +1,86 @@ +# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other +# Spack Project Developers. See the top-level COPYRIGHT file for details. +# +# SPDX-License-Identifier: (Apache-2.0 OR MIT) + +# ---------------------------------------------------------------------------- +# If you submit this package back to Spack as a pull request, +# please first remove this boilerplate and all FIXME comments. +# +# This is a template package file for Spack. We've put "FIXME" +# next to all the things you'll want to change. Once you've handled +# them, you can save this file and test your package like this: +# +# spack install py-extra-foam +# +# You can edit this file again by typing: +# +# spack edit py-extra-foam +# +# See the Spack documentation for more information on packaging. +# ---------------------------------------------------------------------------- + +from spack import * + + +class PyExtraFoam(PythonPackage): + """EXtra-foam is a framework that provides real-time and off-line data analysis + (detector geometry, pump-probe, azimuthal integration, ROI, statistics, etc.) + and visualization for experiments that use 2D area detectors (AGIPD, LPD, DSSC, + FastCCD, JungFrau, ePix100, etc.) and 1D detectors (Gotthard, XGM, digitizer, etc.) + at European XFEL.""" + + # FIXME: Add a proper url for your package's homepage here. + homepage = "https://extra-foam.readthedocs.io/en/latest/" + url = "https://github.com/European-XFEL/EXtra-foam/archive/1.0.0.tar.gz" + + # FIXME: Add a list of GitHub accounts to + # notify when the package is updated. + maintainers = ['RobertRosca', 'julianhoersch'] + + version('1.0.0beta3', sha256='38e1f7ea05ed32a3d041dbccb85862055436db4374a6c4007847d636ff2c003f') + version('1.0.0beta2', sha256='04a5bafcb2af2daf122b94c78219ad857b5ad732f121d443d340f2ab49a26581') + version('1.0.0beta1', sha256='938f0006ccb9042d44cc0bd6582ab5d191daf96b7db9c9d7afe8258a6798faf4') + version('1.0.0', sha256='8bb214cb21a414175f9ca207485c6cf6fac9c569198ac59b23b3a023f0f420d8') + version('0.9.1', sha256='7f3c48985d0f656e35e6364a6279e458841566b866c59bd509aa96b855d2d668') + version('0.9.0beta3', sha256='fbd3e2b23d9cfc623b225c4572be54b31ef3203597b43ba5a9cb8b1e333f983c') + version('0.9.0beta2', sha256='84eddd55220e4e89080442f267141a2688cf5cda397b5e22da6303622c675b4e') + version('0.9.0beta1', sha256='b1bbaa7d0edc4064106c10a837bfcf7f345889f51419d558734a292cefe737c7') + version('0.9.0', sha256='aa3422639b6ef6f7cbe0b93155322d51af89115f30a4525104268adbb0fed6f7') + version('0.8.4', sha256='ab36bb07952eb0b4e1956bdb626df0ce3975ab64dc64eda6822ddc5759fb8a14') + + # FIXME: Add dependencies if required. Only add the python dependency + # if you need specific versions. A generic python dependency is + # added implicity by the PythonPackage class. + depends_on('python@3.6:', type=('build', 'run')) + depends_on('py-setuptools', type='build') + depends_on('py-numpy@1.16.1:') + depends_on('py-scipy@1.2.1:') + depends_on('py-msgpack@0.5.6:') + depends_on('py-msgpack-numpy@0.4.4:') + depends_on('py-pyzmq@17.1.2:') + depends_on('py-pyfai@0.17.0:') + depends_on('py-pyqt5@5.13.2') # needs higher compiler version as default on maxwell (gcc@4.8.5) -> gcc@:5.0.999 + depends_on('py-extra-data@1.0.0:') + depends_on('py-extra-geom@0.8.0:') + depends_on('py-karabo-bridge@0.5.0:') + depends_on('py-toolz@0.9.0:') + depends_on('py-silx@0.9.0:') + depends_on('py-hiredis@1.0.1') + depends_on('py-redis@3.5.2') + depends_on('py-psutil@5.6.2:') + depends_on('py-imageio@2.8.0') + depends_on('py-pillow@7.0.0') + depends_on('py-pyyaml@5.2:') + + depends_on('py-coverage@:4.9', type='test') + depends_on('py-pytest', type='test') + depends_on('py-pytest-cov', type='test') + depends_on('py-testpath', type='test') + + + def build_args(self, spec, prefix): + # FIXME: Add arguments other than --prefix + # FIXME: If not needed delete this function + args = [] + return args From a77e48419597c5fb926054d6f6b2fd0f8c66b45a Mon Sep 17 00:00:00 2001 From: Julian Michael Hoersch Date: Wed, 27 Jan 2021 10:59:58 +0100 Subject: [PATCH 04/94] Added v0.20.0 --- packages/py-pyfai/package.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/packages/py-pyfai/package.py b/packages/py-pyfai/package.py index 5c2f527..64bb023 100644 --- a/packages/py-pyfai/package.py +++ b/packages/py-pyfai/package.py @@ -32,8 +32,9 @@ class PyPyfai(PythonPackage): # FIXME: Add a list of GitHub accounts to # notify when the package is updated. - # maintainers = ['github_user1', 'github_user2'] + maintainers = ['RobertRosca', 'julianhoersch'] + version('0.20.0', sha256='f39f56ff58868ab7f12d6fa5c7bf6b7d111b7fa687f3816c5d8d11cb75fa82f0') version('0.19.0', sha256='1e329d2bdd6f4ddc4c70460bb0b994a33b6885bff810b11a7871d83ef8756281') version('0.18.0', sha256='4637eaa40a5a3b10c97ef0fea9e6f935c4ae93eb8df48643d567db7796cb3ef8') version('0.17.1', sha256='e4c2b53c71b638d5f532f5e557a87a79d1a3ab46552e4b5ad0f071e996f3974d') @@ -50,7 +51,7 @@ class PyPyfai(PythonPackage): depends_on('py-h5py') depends_on('py-silx') depends_on('py-pyopengl') - depends_on('py-pyqt5') + depends_on('py-pyqt5') depends_on('py-hdf5plugin') depends_on('py-wheel') From e556c089b7e3aa10382f11a6e7d94dd441d75683 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julian=20H=C3=B6rsch?= <75368027+julianhoersch@users.noreply.github.com> Date: Wed, 27 Jan 2021 14:20:50 +0100 Subject: [PATCH 05/94] Update spack.yaml --- .github/spack-config/spack.yaml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/.github/spack-config/spack.yaml b/.github/spack-config/spack.yaml index 49ddf8d..7bab41d 100644 --- a/.github/spack-config/spack.yaml +++ b/.github/spack-config/spack.yaml @@ -8,5 +8,10 @@ spack: - py-msgpack-numpy # - py-pyfai - py-pyopengl + - py-dials-data + # - py-extra-foam + - py-numexpr + - py-procrunner + - py-silx view: False concretization: together From 920ac497fc0ac75737850c58423091f4a9104cad Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julian=20H=C3=B6rsch?= <75368027+julianhoersch@users.noreply.github.com> Date: Wed, 27 Jan 2021 15:27:22 +0100 Subject: [PATCH 06/94] Update readme.md Added new packages --- readme.md | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/readme.md b/readme.md index 3d51385..bf06303 100644 --- a/readme.md +++ b/readme.md @@ -20,6 +20,13 @@ build times. | py-karabo-bridge | [![](https://github.com/panosc-eu/spack-repo/workflows/py-karabo-bridge/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-karabo-bridge) | py-msgpack-numpy | wip | | py-msgpack-numpy | [![](https://github.com/panosc-eu/spack-repo/workflows/py-msgpack-numpy/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-msgpack-numpy) | | wip | | py-pyfai | [![](https://github.com/panosc-eu/spack-repo/workflows/py-pyfai/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-pyfai) | py-fabio, py-hdf5plugin | wip | +| py-dials-data | [![](https://github.com/panosc-eu/spack-repo/workflows/py-dials-data/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-dials-data) | | wip | +| py-dials | [![](https://github.com/panosc-eu/spack-repo/workflows/py-dials/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-dials) | py-dials-data, py-procrunner | not working | +| py-pyfai | [![](https://github.com/panosc-eu/spack-repo/workflows/py-pyfai/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-pyfai) | py-fabio, py-hdf5plugin | wip | +| py-extra-foam | [![](https://github.com/panosc-eu/spack-repo/workflows/py-extra-foam/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-extra-foam) | py-pyfai, py-extra-data, py-extra-geom, py-karabo-bridge, py-silx | not working | +| py-numexpr | [![](https://github.com/panosc-eu/spack-repo/workflows/py-numexpr/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-numexpr) | | wip | +| py-procrunner | [![](https://github.com/panosc-eu/spack-repo/workflows/py-procrunner/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-procrunner) | | wip | +| py-silx | [![](https://github.com/panosc-eu/spack-repo/workflows/py-silx/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-silx) | py-fabio | wip | ## Notes From 423b9c80ce4862e41d126f99facfa40707ac3e65 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julian=20H=C3=B6rsch?= <75368027+julianhoersch@users.noreply.github.com> Date: Wed, 27 Jan 2021 15:28:19 +0100 Subject: [PATCH 07/94] Update readme.md Removed duplicate --- readme.md | 1 - 1 file changed, 1 deletion(-) diff --git a/readme.md b/readme.md index bf06303..ab1110f 100644 --- a/readme.md +++ b/readme.md @@ -22,7 +22,6 @@ build times. | py-pyfai | [![](https://github.com/panosc-eu/spack-repo/workflows/py-pyfai/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-pyfai) | py-fabio, py-hdf5plugin | wip | | py-dials-data | [![](https://github.com/panosc-eu/spack-repo/workflows/py-dials-data/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-dials-data) | | wip | | py-dials | [![](https://github.com/panosc-eu/spack-repo/workflows/py-dials/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-dials) | py-dials-data, py-procrunner | not working | -| py-pyfai | [![](https://github.com/panosc-eu/spack-repo/workflows/py-pyfai/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-pyfai) | py-fabio, py-hdf5plugin | wip | | py-extra-foam | [![](https://github.com/panosc-eu/spack-repo/workflows/py-extra-foam/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-extra-foam) | py-pyfai, py-extra-data, py-extra-geom, py-karabo-bridge, py-silx | not working | | py-numexpr | [![](https://github.com/panosc-eu/spack-repo/workflows/py-numexpr/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-numexpr) | | wip | | py-procrunner | [![](https://github.com/panosc-eu/spack-repo/workflows/py-procrunner/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-procrunner) | | wip | From 0c30ab55e714b5dc43c82317d180c9fab23de37f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julian=20H=C3=B6rsch?= <75368027+julianhoersch@users.noreply.github.com> Date: Wed, 27 Jan 2021 15:33:00 +0100 Subject: [PATCH 08/94] Update package.py removed space --- packages/py-dials-data/package.py | 2 -- 1 file changed, 2 deletions(-) diff --git a/packages/py-dials-data/package.py b/packages/py-dials-data/package.py index 6d3f60f..74a34be 100644 --- a/packages/py-dials-data/package.py +++ b/packages/py-dials-data/package.py @@ -57,8 +57,6 @@ class PyDialsData(PythonPackage): depends_on('py-pyyaml@5.3.1') depends_on('py-py@1.9.0') - - depends_on('py-coverage@:4.9', type='test') # depends_on('py-pytest', type='test') #specify for test too? depends_on('py-pytest-cov', type='test') From a38bb1ee917a9c51010b6c105be37efcde516315 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julian=20H=C3=B6rsch?= <75368027+julianhoersch@users.noreply.github.com> Date: Wed, 10 Feb 2021 11:59:04 +0100 Subject: [PATCH 09/94] Update readme.md Added transformations package and updated pyFAI dependencies --- readme.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/readme.md b/readme.md index ab1110f..0a0aa7a 100644 --- a/readme.md +++ b/readme.md @@ -19,13 +19,14 @@ build times. | py-fabio | [![](https://github.com/panosc-eu/spack-repo/workflows/py-fabio/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-fabio) | | wip | | py-karabo-bridge | [![](https://github.com/panosc-eu/spack-repo/workflows/py-karabo-bridge/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-karabo-bridge) | py-msgpack-numpy | wip | | py-msgpack-numpy | [![](https://github.com/panosc-eu/spack-repo/workflows/py-msgpack-numpy/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-msgpack-numpy) | | wip | -| py-pyfai | [![](https://github.com/panosc-eu/spack-repo/workflows/py-pyfai/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-pyfai) | py-fabio, py-hdf5plugin | wip | +| py-pyfai | [![](https://github.com/panosc-eu/spack-repo/workflows/py-pyfai/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-pyfai) | py-fabio, py-hdf5plugin, py-numexpr, py-silx, py-transformations | wip | | py-dials-data | [![](https://github.com/panosc-eu/spack-repo/workflows/py-dials-data/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-dials-data) | | wip | | py-dials | [![](https://github.com/panosc-eu/spack-repo/workflows/py-dials/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-dials) | py-dials-data, py-procrunner | not working | | py-extra-foam | [![](https://github.com/panosc-eu/spack-repo/workflows/py-extra-foam/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-extra-foam) | py-pyfai, py-extra-data, py-extra-geom, py-karabo-bridge, py-silx | not working | | py-numexpr | [![](https://github.com/panosc-eu/spack-repo/workflows/py-numexpr/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-numexpr) | | wip | | py-procrunner | [![](https://github.com/panosc-eu/spack-repo/workflows/py-procrunner/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-procrunner) | | wip | | py-silx | [![](https://github.com/panosc-eu/spack-repo/workflows/py-silx/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-silx) | py-fabio | wip | +| py-transformations | [![](https://github.com/panosc-eu/spack-repo/workflows/py-transformations/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-transformations) | | wip | ## Notes From c06ba9ab3743e3229f3d03c51568429f0ff824b9 Mon Sep 17 00:00:00 2001 From: Julian Michael Hoersch Date: Wed, 10 Feb 2021 12:02:57 +0100 Subject: [PATCH 10/94] Added new packages --- .github/spack-config/spack.yaml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/spack-config/spack.yaml b/.github/spack-config/spack.yaml index 7bab41d..9645451 100644 --- a/.github/spack-config/spack.yaml +++ b/.github/spack-config/spack.yaml @@ -6,12 +6,13 @@ spack: - py-extra-geom - py-karabo-bridge - py-msgpack-numpy - # - py-pyfai + - py-pyfai - py-pyopengl - py-dials-data # - py-extra-foam - py-numexpr - py-procrunner - py-silx + - py-transformations view: False concretization: together From d377ceecfc8349f9dca2b9d6c4d57e0bccf5bf55 Mon Sep 17 00:00:00 2001 From: Julian Michael Hoersch Date: Wed, 10 Feb 2021 12:04:33 +0100 Subject: [PATCH 11/94] Added comment --- packages/py-numexpr/package.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/py-numexpr/package.py b/packages/py-numexpr/package.py index a47abae..c0bdcd5 100644 --- a/packages/py-numexpr/package.py +++ b/packages/py-numexpr/package.py @@ -57,11 +57,11 @@ class PyNumexpr(PythonPackage): # FIXME: Add dependencies if required. Only add the python dependency # if you need specific versions. A generic python dependency is # added implicity by the PythonPackage class. - depends_on('python@2.6:', type=('build', 'run')) depends_on('py-setuptools', type='build') depends_on('py-numpy@1.7:') + #test dependencies depends_on('py-coverage@:4.9', type='test') depends_on('py-pytest', type='test') depends_on('py-pytest-cov', type='test') From a2f920cada743919fd5b7bc4512e93e0b9fb7767 Mon Sep 17 00:00:00 2001 From: Julian Michael Hoersch Date: Wed, 10 Feb 2021 12:06:45 +0100 Subject: [PATCH 12/94] Removed GUI dependencies, added comments GUI dependencies make packaging complicated --- packages/py-pyfai/package.py | 33 +++++++++++++++++++++++---------- 1 file changed, 23 insertions(+), 10 deletions(-) diff --git a/packages/py-pyfai/package.py b/packages/py-pyfai/package.py index 64bb023..2793aa7 100644 --- a/packages/py-pyfai/package.py +++ b/packages/py-pyfai/package.py @@ -24,10 +24,15 @@ class PyPyfai(PythonPackage): - """FIXME: Put a proper description of your package here.""" + """PyFAI is an azimuthal integration library that tries to be fast (as fast as C and even more + using OpenCL and GPU). It is based on histogramming of the 2theta/Q positions of each (center of) + pixel weighted by the intensity of each pixel, but parallel version uses a SparseMatrix-DenseVector + multiplication. Neighboring output bins get also a contribution of pixels next to the border thanks + to pixel splitting. Finally pyFAI provides also tools to calibrate the experimental setup using + Debye-Scherrer rings of a reference compound.""" # FIXME: Add a proper url for your package's homepage here. - homepage = "https://www.example.com" + homepage = "https://github.com/silx-kit/pyFAI" url = "https://github.com/silx-kit/pyFAI/archive/v0.19.0.tar.gz" # FIXME: Add a list of GitHub accounts to @@ -40,20 +45,28 @@ class PyPyfai(PythonPackage): version('0.17.1', sha256='e4c2b53c71b638d5f532f5e557a87a79d1a3ab46552e4b5ad0f071e996f3974d') # FIXME: Add dependencies if required. + #dependencies for install and setup depends_on('python@3.6:', type=('build', 'run')) depends_on('py-setuptools', type='build') depends_on('py-numpy') - depends_on('py-cython') - depends_on('py-fabio') - depends_on('py-scipy') + depends_on('py-fabio@0.5:') depends_on('py-matplotlib') + depends_on('py-scipy') depends_on('py-numexpr') - depends_on('py-h5py') - depends_on('py-silx') - depends_on('py-pyopengl') - depends_on('py-pyqt5') - depends_on('py-hdf5plugin') + depends_on('py-silx@0.10:') + + #other dependencies + depends_on('py-cython') depends_on('py-wheel') + depends_on('py-transformations') + #depends_on('py-nbsphinx') commited to spack but not in spack repo yet + + #gui dependencies (not all available) + #depends_on('py-pyqt5') + #depends_on('py-hdf5plugin') + #depends_on('py-h5py') + #depends_on('py-pyopengl') + #depends_on('py-pyopencl') def build_args(self, spec, prefix): # FIXME: Add arguments other than --prefix From 499b37a2f10ccf382ac7e05b6332d44755a2f9f2 Mon Sep 17 00:00:00 2001 From: Julian Michael Hoersch Date: Wed, 10 Feb 2021 12:10:27 +0100 Subject: [PATCH 13/94] Added new package (dependency for py-pyFAI) --- packages/py-transformations/package.py | 62 ++++++++++++++++++++++++++ 1 file changed, 62 insertions(+) create mode 100644 packages/py-transformations/package.py diff --git a/packages/py-transformations/package.py b/packages/py-transformations/package.py new file mode 100644 index 0000000..319e5e6 --- /dev/null +++ b/packages/py-transformations/package.py @@ -0,0 +1,62 @@ +# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other +# Spack Project Developers. See the top-level COPYRIGHT file for details. +# +# SPDX-License-Identifier: (Apache-2.0 OR MIT) + +# ---------------------------------------------------------------------------- +# If you submit this package back to Spack as a pull request, +# please first remove this boilerplate and all FIXME comments. +# +# This is a template package file for Spack. We've put "FIXME" +# next to all the things you'll want to change. Once you've handled +# them, you can save this file and test your package like this: +# +# spack install py-transformations +# +# You can edit this file again by typing: +# +# spack edit py-transformations +# +# See the Spack documentation for more information on packaging. +# ---------------------------------------------------------------------------- + +from spack import * + + +class PyTransformations(PythonPackage): + """Transformations is a Python library for calculating 4x4 matrices for translating, rotating, + reflecting, scaling, shearing, projecting, orthogonalizing, and superimposing arrays of 3D + homogeneous coordinates as well as for converting between rotation matrices, Euler angles, and + quaternions. Also includes an Arcball control object and functions to decompose transformation + matrices.""" + + # FIXME: Add a proper url for your package's homepage here. + homepage = "https://github.com/cgohlke/transformations" + url = "https://github.com/cgohlke/transformations/archive/v2020.1.1.tar.gz" + + # FIXME: Add a list of GitHub accounts to + # notify when the package is updated. + maintainers = ['RobertRosca', 'julianhoersch'] + + version('2020.1.1', sha256='cd9cd29ba7f0ec4c109293fe5007cf632e9f5b8107acba5572672002e72860a6') + version('2019.4.22', sha256='5686de316e2f65a67788de25ab180995429283c531814815ce4508de0df96c9a') + version('2019.2.20', sha256='5cb940b9df13707a88bbffffdd2cb0347afa1329b7770a8350d9d4415b00f46d') + + # FIXME: Add dependencies if required. Only add the python dependency + # if you need specific versions. A generic python dependency is + # added implicity by the PythonPackage class. + depends_on('python@3.6:', type=('build', 'run')) + depends_on('py-setuptools@18.0:', type='build') + depends_on('py-numpy@1.14.5:') + + #test dependencies + depends_on('py-coverage@:4.9', type='test') + depends_on('py-pytest', type='test') + depends_on('py-pytest-cov', type='test') + depends_on('py-testpath', type='test') + + def build_args(self, spec, prefix): + # FIXME: Add arguments other than --prefix + # FIXME: If not needed delete this function + args = [] + return args From 2a5156b7977f33f7655ac3354c9e48217b2e7e21 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julian=20H=C3=B6rsch?= <75368027+julianhoersch@users.noreply.github.com> Date: Wed, 10 Feb 2021 12:13:12 +0100 Subject: [PATCH 14/94] Added Comment --- packages/py-dials-data/package.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/py-dials-data/package.py b/packages/py-dials-data/package.py index 74a34be..48da5e7 100644 --- a/packages/py-dials-data/package.py +++ b/packages/py-dials-data/package.py @@ -56,7 +56,8 @@ class PyDialsData(PythonPackage): depends_on('py-pytest@6.1.2') # in install_requires depends_on('py-pyyaml@5.3.1') depends_on('py-py@1.9.0') - + + #test dependencies depends_on('py-coverage@:4.9', type='test') # depends_on('py-pytest', type='test') #specify for test too? depends_on('py-pytest-cov', type='test') From 9ef102eac82f68c033acf89409bebb8ff398a0a5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julian=20H=C3=B6rsch?= <75368027+julianhoersch@users.noreply.github.com> Date: Wed, 10 Feb 2021 12:15:41 +0100 Subject: [PATCH 15/94] Added comment --- packages/py-fabio/package.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/packages/py-fabio/package.py b/packages/py-fabio/package.py index 922902e..01e2111 100644 --- a/packages/py-fabio/package.py +++ b/packages/py-fabio/package.py @@ -37,7 +37,7 @@ class PyFabio(PythonPackage): # FIXME: Add a list of GitHub accounts to # notify when the package is updated. - maintainers = ['robertrosca'] + maintainers = ['RobertRosca', 'julianhoersch'] version('0.10.2', sha256='597d7afe414da9b16afeb91439b669d268c8bcfefed1fe400b9a26d93ae58243') version('0.10.1', sha256='0c89c5afdead668beae8e79948a6eae7c1d4767c33acde96d68bfe3a2d7dcd96') @@ -48,7 +48,8 @@ class PyFabio(PythonPackage): depends_on('python@3.6:', type=('build', 'run')) depends_on('py-setuptools', type='build') depends_on('py-numpy') - + + #test dependencies depends_on('py-coverage@:4.9', type='test') depends_on('py-pytest', type='test') depends_on('py-pytest-cov', type='test') From 6061da08f5e4fa3cab2984682d5fc9d3ca191198 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julian=20H=C3=B6rsch?= <75368027+julianhoersch@users.noreply.github.com> Date: Wed, 10 Feb 2021 12:18:59 +0100 Subject: [PATCH 16/94] Update package.py --- packages/py-fabio/package.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/py-fabio/package.py b/packages/py-fabio/package.py index 01e2111..77dfeb0 100644 --- a/packages/py-fabio/package.py +++ b/packages/py-fabio/package.py @@ -37,7 +37,7 @@ class PyFabio(PythonPackage): # FIXME: Add a list of GitHub accounts to # notify when the package is updated. - maintainers = ['RobertRosca', 'julianhoersch'] + maintainers = ['RobertRosca'] version('0.10.2', sha256='597d7afe414da9b16afeb91439b669d268c8bcfefed1fe400b9a26d93ae58243') version('0.10.1', sha256='0c89c5afdead668beae8e79948a6eae7c1d4767c33acde96d68bfe3a2d7dcd96') From de72d6733d5f94eff86d848f07ed56a583bb5d41 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julian=20H=C3=B6rsch?= <75368027+julianhoersch@users.noreply.github.com> Date: Wed, 10 Feb 2021 12:27:25 +0100 Subject: [PATCH 17/94] Update package.py --- packages/py-numexpr/package.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/py-numexpr/package.py b/packages/py-numexpr/package.py index c0bdcd5..f426870 100644 --- a/packages/py-numexpr/package.py +++ b/packages/py-numexpr/package.py @@ -61,7 +61,7 @@ class PyNumexpr(PythonPackage): depends_on('py-setuptools', type='build') depends_on('py-numpy@1.7:') - #test dependencies + # test dependencies depends_on('py-coverage@:4.9', type='test') depends_on('py-pytest', type='test') depends_on('py-pytest-cov', type='test') From b59f1447e217af0b2c326ced474d24c12ed0670c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julian=20H=C3=B6rsch?= <75368027+julianhoersch@users.noreply.github.com> Date: Wed, 10 Feb 2021 12:28:06 +0100 Subject: [PATCH 18/94] Added comment --- packages/py-procrunner/package.py | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/py-procrunner/package.py b/packages/py-procrunner/package.py index 1a95878..e7e6a6d 100644 --- a/packages/py-procrunner/package.py +++ b/packages/py-procrunner/package.py @@ -52,6 +52,7 @@ class PyProcrunner(PythonPackage): depends_on('python@3.6:', type=('build', 'run')) depends_on('py-setuptools', type='build') + # test dependencies depends_on('py-coverage@:4.9', type='test') depends_on('py-pytest', type='test') depends_on('py-pytest-cov', type='test') From aba4e50bee49d52ac20964d0f83eda3f452a1b6f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julian=20H=C3=B6rsch?= <75368027+julianhoersch@users.noreply.github.com> Date: Wed, 10 Feb 2021 12:28:59 +0100 Subject: [PATCH 19/94] Added comment --- packages/py-silx/package.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/py-silx/package.py b/packages/py-silx/package.py index b3be200..320ffc3 100644 --- a/packages/py-silx/package.py +++ b/packages/py-silx/package.py @@ -63,7 +63,8 @@ class PySilx(PythonPackage): depends_on('py-h5py') depends_on('py-fabio@0.9:') depends_on('py-six') - + + # test dependencies depends_on('py-coverage@:4.9', type='test') depends_on('py-pytest', type='test') depends_on('py-pytest-cov', type='test') From ddb5d9ee827f030e4760bd68673d1d8c112293cd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julian=20H=C3=B6rsch?= <75368027+julianhoersch@users.noreply.github.com> Date: Wed, 10 Feb 2021 12:29:28 +0100 Subject: [PATCH 20/94] Update package.py --- packages/py-silx/package.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/py-silx/package.py b/packages/py-silx/package.py index 320ffc3..1afb9fb 100644 --- a/packages/py-silx/package.py +++ b/packages/py-silx/package.py @@ -37,7 +37,7 @@ class PySilx(PythonPackage): # FIXME: Add a list of GitHub accounts to # notify when the package is updated. - maintainers = ['RobertRosca', 'julianhoers'] + maintainers = ['RobertRosca', 'julianhoersch'] version('0.14.0rc3', sha256='37f66a56022505b714b72e3975f5f992320b86fa368cfa0d11e4225f8c5451b1') version('0.14.0rc2', sha256='486739a1ea1631271af7ffd9c4c4ec1bbc230e7ebea6829319abdb6d3d5adeb1') From 4258163ef315c490ba3612d354c5f0d269cdddbd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julian=20H=C3=B6rsch?= <75368027+julianhoersch@users.noreply.github.com> Date: Wed, 10 Feb 2021 12:33:03 +0100 Subject: [PATCH 21/94] Changed comment --- packages/py-transformations/package.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/py-transformations/package.py b/packages/py-transformations/package.py index 319e5e6..4717886 100644 --- a/packages/py-transformations/package.py +++ b/packages/py-transformations/package.py @@ -49,7 +49,7 @@ class PyTransformations(PythonPackage): depends_on('py-setuptools@18.0:', type='build') depends_on('py-numpy@1.14.5:') - #test dependencies + # test dependencies depends_on('py-coverage@:4.9', type='test') depends_on('py-pytest', type='test') depends_on('py-pytest-cov', type='test') From 7e452811f214fe940d8094b6eb1402c981e78966 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julian=20H=C3=B6rsch?= <75368027+julianhoersch@users.noreply.github.com> Date: Wed, 10 Feb 2021 12:34:08 +0100 Subject: [PATCH 22/94] Updated comments --- packages/py-pyfai/package.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/py-pyfai/package.py b/packages/py-pyfai/package.py index 2793aa7..c8e151a 100644 --- a/packages/py-pyfai/package.py +++ b/packages/py-pyfai/package.py @@ -45,7 +45,7 @@ class PyPyfai(PythonPackage): version('0.17.1', sha256='e4c2b53c71b638d5f532f5e557a87a79d1a3ab46552e4b5ad0f071e996f3974d') # FIXME: Add dependencies if required. - #dependencies for install and setup + # dependencies for install and setup depends_on('python@3.6:', type=('build', 'run')) depends_on('py-setuptools', type='build') depends_on('py-numpy') @@ -55,13 +55,13 @@ class PyPyfai(PythonPackage): depends_on('py-numexpr') depends_on('py-silx@0.10:') - #other dependencies + # other dependencies depends_on('py-cython') depends_on('py-wheel') depends_on('py-transformations') #depends_on('py-nbsphinx') commited to spack but not in spack repo yet - #gui dependencies (not all available) + # gui dependencies (not all available) #depends_on('py-pyqt5') #depends_on('py-hdf5plugin') #depends_on('py-h5py') From 529e4ef5ae15b8e5329b3d45b008e149e1b5979c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julian=20H=C3=B6rsch?= <75368027+julianhoersch@users.noreply.github.com> Date: Wed, 10 Feb 2021 12:35:09 +0100 Subject: [PATCH 23/94] Added maintainers --- packages/py-procrunner/package.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/py-procrunner/package.py b/packages/py-procrunner/package.py index e7e6a6d..320c69b 100644 --- a/packages/py-procrunner/package.py +++ b/packages/py-procrunner/package.py @@ -33,7 +33,7 @@ class PyProcrunner(PythonPackage): # FIXME: Add a list of GitHub accounts to # notify when the package is updated. - # maintainers = ['github_user1', 'github_user2'] + maintainers = ['RobertRosca', 'julianhoersch'] version('2.3.0', sha256='44a18bfdff242d2efae92a94da40a87b1a0eb3d6248cb459cf94ec719be5edd9') version('2.2.0', sha256='b5c4fe17ab31f8907db61284e037139f5facc3c7ca5a2a6dc83aa8828680a440') From 4c9da8ec2e4a40a9d09b79563b640290feee2dfc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julian=20H=C3=B6rsch?= <75368027+julianhoersch@users.noreply.github.com> Date: Wed, 10 Feb 2021 12:47:12 +0100 Subject: [PATCH 24/94] Update readme.md --- readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/readme.md b/readme.md index 0a0aa7a..c6eb2aa 100644 --- a/readme.md +++ b/readme.md @@ -19,7 +19,7 @@ build times. | py-fabio | [![](https://github.com/panosc-eu/spack-repo/workflows/py-fabio/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-fabio) | | wip | | py-karabo-bridge | [![](https://github.com/panosc-eu/spack-repo/workflows/py-karabo-bridge/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-karabo-bridge) | py-msgpack-numpy | wip | | py-msgpack-numpy | [![](https://github.com/panosc-eu/spack-repo/workflows/py-msgpack-numpy/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-msgpack-numpy) | | wip | -| py-pyfai | [![](https://github.com/panosc-eu/spack-repo/workflows/py-pyfai/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-pyfai) | py-fabio, py-hdf5plugin, py-numexpr, py-silx, py-transformations | wip | +| py-pyfai | [![](https://github.com/panosc-eu/spack-repo/workflows/py-pyfai/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-pyfai) | py-fabio, py-numexpr, py-silx, py-transformations | wip | | py-dials-data | [![](https://github.com/panosc-eu/spack-repo/workflows/py-dials-data/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-dials-data) | | wip | | py-dials | [![](https://github.com/panosc-eu/spack-repo/workflows/py-dials/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-dials) | py-dials-data, py-procrunner | not working | | py-extra-foam | [![](https://github.com/panosc-eu/spack-repo/workflows/py-extra-foam/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-extra-foam) | py-pyfai, py-extra-data, py-extra-geom, py-karabo-bridge, py-silx | not working | From 730af560739d91a133126cbdcfd1f39e60a73d50 Mon Sep 17 00:00:00 2001 From: Julian Michael Hoersch Date: Wed, 13 Jan 2021 12:20:00 +0100 Subject: [PATCH 25/94] Added first versions of new packages to the repo Added packages: py-dials (not working), py-dials-data (working), py-numexpr (working), py-procrunner (working), py-silx (working) --- packages/py-dials-data/package.py | 71 +++++++++++++++++ packages/py-dials/package.py | 126 ++++++++++++++++++++++++++++++ packages/py-numexpr/package.py | 74 ++++++++++++++++++ packages/py-procrunner/package.py | 64 +++++++++++++++ packages/py-silx/package.py | 76 ++++++++++++++++++ 5 files changed, 411 insertions(+) create mode 100644 packages/py-dials-data/package.py create mode 100644 packages/py-dials/package.py create mode 100644 packages/py-numexpr/package.py create mode 100644 packages/py-procrunner/package.py create mode 100644 packages/py-silx/package.py diff --git a/packages/py-dials-data/package.py b/packages/py-dials-data/package.py new file mode 100644 index 0000000..6d3f60f --- /dev/null +++ b/packages/py-dials-data/package.py @@ -0,0 +1,71 @@ +# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other +# Spack Project Developers. See the top-level COPYRIGHT file for details. +# +# SPDX-License-Identifier: (Apache-2.0 OR MIT) + +# ---------------------------------------------------------------------------- +# If you submit this package back to Spack as a pull request, +# please first remove this boilerplate and all FIXME comments. +# +# This is a template package file for Spack. We've put "FIXME" +# next to all the things you'll want to change. Once you've handled +# them, you can save this file and test your package like this: +# +# spack install py-dials-data +# +# You can edit this file again by typing: +# +# spack edit py-dials-data +# +# See the Spack documentation for more information on packaging. +# ---------------------------------------------------------------------------- + +from spack import * + + +class PyDialsData(PythonPackage): + """A python package providing data files used for regression tests in DIALS, dxtbx, xia2 + and related packages.If you want to know more about what py-dials-data is you can have a read + through the background information. For everything else the main documentation is probably + the best start.""" + + # FIXME: Add a proper url for your package's homepage here. + homepage = "https://dials-data.readthedocs.io/en/latest/" + url = "https://github.com/dials/data/archive/v2.1.0.tar.gz" + + # FIXME: Add a list of GitHub accounts to + # notify when the package is updated. + maintainers = ['RobertRosca', 'julianhoersch'] + + version('2.1.0', sha256='17935ff9e3791dae992f4b606899d407ea8ede7ea047faa6580a7552429c0a7b') + version('2.0.0', sha256='d68708af31e6325de30c6f191c05c5299b3a19fba5c657262b8d75fb24af3593') + version('1.0.0', sha256='0c28046f95fd89f55ce270eade4bece0862c8aa31c1b3baff3da4a6aa277cadb') + version('0.6.0', sha256='84397fa24a6d805f9a223becb4c986e47fa11b2e0abb5373be56aeabe6f28883') + version('0.5.0', sha256='317c6bea2db078c342c85845363ccf1487dd8e9178afa33dc3aa034490a23246') + version('0.4.0', sha256='35652e5cfa5d49f3b4de0bbdb1067914b788672bbc67c2ec169d982b69e84155') + version('0.3.0', sha256='b90480ad6540c05e4017f3e7c1fed43c26f0928e3301e65114b8d5d13d94f50e') + version('0.2.0', sha256='8285b619cf56acb50163f2040e5d26c6ea2a7de9606f0d8e9d313977fbbc95f0') + version('0.1.0', sha256='5239f50ed13ead45229488bf578806289e5ee5b482d6cbd3a365cd60387aa4e2') + + # FIXME: Add dependencies if required. Only add the python dependency + # if you need specific versions. A generic python dependency is + # added implicity by the PythonPackage class. + depends_on('python@3.6:', type=('build', 'run')) + depends_on('py-setuptools', type='build') + depends_on('py-importlib-resources@1.1.0:') + depends_on('py-pytest@6.1.2') # in install_requires + depends_on('py-pyyaml@5.3.1') + depends_on('py-py@1.9.0') + + + + depends_on('py-coverage@:4.9', type='test') + # depends_on('py-pytest', type='test') #specify for test too? + depends_on('py-pytest-cov', type='test') + depends_on('py-testpath', type='test') + + def build_args(self, spec, prefix): + # FIXME: Add arguments other than --prefix + # FIXME: If not needed delete this function + args = [] + return args diff --git a/packages/py-dials/package.py b/packages/py-dials/package.py new file mode 100644 index 0000000..92357b1 --- /dev/null +++ b/packages/py-dials/package.py @@ -0,0 +1,126 @@ +# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other +# Spack Project Developers. See the top-level COPYRIGHT file for details. +# +# SPDX-License-Identifier: (Apache-2.0 OR MIT) + +# ---------------------------------------------------------------------------- +# If you submit this package back to Spack as a pull request, +# please first remove this boilerplate and all FIXME comments. +# +# This is a template package file for Spack. We've put "FIXME" +# next to all the things you'll want to change. Once you've handled +# them, you can save this file and test your package like this: +# +# spack install py-dials +# +# You can edit this file again by typing: +# +# spack edit py-dials +# +# See the Spack documentation for more information on packaging. +# ---------------------------------------------------------------------------- + +from spack import * + + +class PyDials(PythonPackage): + """X-ray crystallography for structural biology has benefited greatly from + a number of advances in recent years including high performance pixel array + detectors, new beamlines capable of delivering micron and sub-micron focus + and new light sources such as XFELs. The DIALS project is a collaborative + endeavour to develop new diffraction integration software to meet the data + analysis requirements presented by these recent advances. There are three end + goals: to develop an extensible framework for the development of algorithms to + analyse X-ray diffraction data; the implementation of algorithms within this + framework and finally a set of user facing tools using these algorithms to + allow integration of data from diffraction experiments on synchrotron and + free electron sources.""" + + # FIXME: Add a proper url for your package's homepage here. + homepage = "https://dials.github.io" + url = "https://github.com/dials/dials/archive/v3.2.3.tar.gz" + + # FIXME: Add a list of GitHub accounts to + # notify when the package is updated. + maintainers = ['RobertRosca', 'julianhoersch'] + + version('3.3.0', sha256='163ffd5da4b6c783e5e37ffedae751b86b26d0266c88b95280d727a69180e14c') + version('3.2.3', sha256='e9b52b9bc61595579401bbae2447d42e49a4a30d15c2908bea0899216cf8fedb') + version('3.2.2', sha256='3df1c0d0145d59f176fe81f0e8b23ea28955781021183d2497c183a26ec0a7bb') + version('3.2.1', sha256='1bca865ebb2fa3b8e789dcc1805956934332af7629642c5d556bc6c11bc6583e') + version('3.2.0', sha256='0cd2a8905ee239d8577b2150d9d97d2d83527b26f9d01ce7cb940bd04bd6c3eb') + version('3-1-4', sha256='c54e8948e06ddab5be99e0a499f5f9067d72af97cbaddf9f5d88919fe7aa08ac') + version('3-1-3', sha256='b26aea14ad48fa44a8c1db8fe5ef533e95a1f7ad9b6a2e0048810255fec12709') + version('3-1-2', sha256='47625e40d2dcee5364fa5ba0b2b2256e3f0f58c706179d66cd03acf901ee8181') + version('3-1-1', sha256='68c96a82e8e21b0e5e1dbc85ca00aa4bba91690d9d9a2aee757da00cad4ff636') + version('3.1.0', sha256='031d6073f9c4a40f73e31cd4bb4e466b04a994a47923bea9e7b85b092a687f74') + version('3-0-4', sha256='7c8123868e5d9d8090cc946f694be51b474de92def1876c9a3d468ef71c2ea38') + version('3-0-3', sha256='55b2be86f3079f8d153331c78e2efd88a26471b2a8a134738b1b65be3e86ca06') + version('3-0-2', sha256='dd3be99a91111169bcf0a763f46c86b4352c0e68b3063f7202fc2ef1393cd143') + version('3-0-1', sha256='cdfad52648399e781c02ee8d9d557555a1e99090ebe149b9a953f8bcac8d35ec') + version('3.0.0', sha256='ab39ea80d5e35883087ef36d5b871893fbf8956ee34a22775f6b4e27fb1eb5c2') + version('3.dev', sha256='ccbdf49f0a53d92bffa6e0c463a8d8e438d474d470447809baf2f2d771dd8151') + version('2-2-10-macosx-conda3', sha256='32e4e418cf837514eb79c7462073dd8a2605c71299a52e370d00dc6c4c6a98d9') + version('2-2-10', sha256='09468f2fa8abb273e9c34d51bb657a05bf40e472ef668d886b8b21bd54b8af96') + version('2-2-9-macosx-conda3', sha256='48b7fc4c18b59b0bbd7431cb9836f81479d8dd1fbf266f46225f2058faaccf31') + version('2-2-9', sha256='70b615f9f8a152f603d8f65280be3c72c8ea6916e6cba81bc033aff7c2fda450') + version('2-2-8-macosx-conda3', sha256='54250bbc8ecbe37ffef048a4bbb501fab7adcebc0a8b71238c2bf25de486ef67') + version('2-2-8', sha256='8ad6572faf1bd07e2a1aee417c148b9b40c1b04b0356fc2df2ce2bc70368e675') + version('2-2-7-macosx-conda3', sha256='07b9855dffc59aa26ed6d4d842b8338da336b1f732379ca755d6b58e09799bc0') + version('2-2-7', sha256='d22c75eed5198fb9c3e11b0d957590e5caaf404dedc1910b67f6d7cfe47b530a') + version('2-2-6-macosx-conda3', sha256='9ac227d8ddf6117215b4a446118efa2068438d17b8a29abda7d392dcb13014ac') + version('2-2-6', sha256='371ddbee804cfea3e82767919458d0e92c6d7a06227914cc75c9b53034f3df65') + version('2-2-5-macosx-conda3', sha256='234771cb45ea3df336313c2e388909bd522cd17d067501dcb6c872f872b1d8bd') + version('2-2-5', sha256='52301ea90059911cafc9b508f665c279a45fcf0e1945e25e3bf2c7e3be18a0e5') + version('2-2-4-macosx-conda3', sha256='d32ca2719fdf3a546166c916ce638cf7c2a642ca64b42cf0fd204274b1396987') + version('2-2-4', sha256='6007ad8c7912d662ccca2bfc4042ad6914e384e0cc082a9d30b17482f2c7384c') + version('2-2-3-macosx-conda3', sha256='51dea8c04e3bcfae184124da3b63a32e85893d76de2b7fe11f0edd2b2bc79278') + version('2-2-3', sha256='c6428fb633886be0fe27f4c88640c560c259fbb836dd468e79911f124b8fdb31') + version('2-2-2-macosx-conda3', sha256='d9b749642ffd79bb7b7f116e2e2e2511dd627609356ad695500287a6b2ee2bae') + version('2-2-2', sha256='fc7af3b57c9d1ef72eeb9d6d7537dad07de9ca1e7a2e6f713f5707227d8557f8') + version('2-2-1-macosx-conda3', sha256='727a1a5994d806d67e8cf0a788cc0577045a12d5c473512fe0d8557aaaeb9e8a') + version('2-2-1', sha256='f836216fd3aff7e341e045935acbbbc1446a005c0b88cd133cae940941dc566f') + version('2-2-0-macosx-conda3', sha256='3690c19b0ac1d9ad1ffd6e89ee1cf998a4bc38315c5bf3d79a62cf11685a041d') + version('2.2.0', sha256='5b5d8b8bd071f519ac031a2aa8e01819a355ff0647753ac3e30028f05331dce0') + version('2-1-5-macosx-conda3', sha256='f874ee1f0fa35e213fcb7c329c3e642712f5d96dc9c35c7337ade8ddcec49d68') + version('2-1-5', sha256='2744cc7842296913bd6e2794704fd6ba416df0cf4784101f3341386ac0b3b426') + version('2-1-4-macosx-conda3', sha256='e8d4cb4efc48e1fff1e8325c37cfecba525a38ceae75c1254d49d73b8f38b9fe') + version('2-1-4', sha256='7cc48986e6b17a979ac7e8b4d99a03fe8a5d0943f22f437731538ab0802ed6f6') + version('2-1-3-macosx-conda3', sha256='7b5c374643183773f0324971fedc251e9c2db62cf9efdb9c73ee5de09ee79558') + version('2-1-3', sha256='0b35f0c8409edc6f84adc37212a1749fae9ec4cc67b6e1f53a1a4fc8fc8c02d8') + version('2-1-2-macosx-conda3', sha256='e797efd61a95526ea19c92ed896801774f81eb571a03c7f510d7c9e227de588e') + version('2-1-2', sha256='2b5e63419377a14f3d7f17a56eb84f9551fab4eb2568ce0c342a1ba307e0337d') + version('2-1-1-macosx-conda3', sha256='6b436e8cb1c88a8b6226e9511b8c9176e72ac9cfad548537ebbedb1d863f04a8') + version('2-1-1', sha256='c41bb0376d80d60c608778ca0364170369b138f40de37e1823c886b5476373a1') + version('2-1-0-macosx-conda3', sha256='cfce998484e07d9eeec7c645f49f5761a7b1dff871917b7dda60fc1e69e2ba25') + version('2.1.0', sha256='f89c02377d3190950b75fa29b36d91fd2515256434dbe96364eb48bfc3caf832') + version('2-0-4', sha256='27695b68fa33e9b2c3a683ed8fc24bb48b1d6d020bac9aa6c48df20a8aa34d17') + version('2-0-3', sha256='d6e90e9dfdfdabd761f90281a8c8ebeddf2e04443253d093becb60addd0e8897') + version('2-0-2', sha256='ce713ee1ee2c234f9ec00e5d8ba452e0aa682900b74dcd8dfc5ae01fd6342b08') + version('2-0-1', sha256='dcdadb8af35d4348770aef531ab1109c6af77b5f390a8003b5b025e300b7fa7f') + version('2.0.0', sha256='3aaa6274646886d640c362ec8937e5ae3d63c3cdf2a0236ac1dc532e87869f10') + + # FIXME: Add dependencies if required. Only add the python dependency + # if you need specific versions. A generic python dependency is + # added implicity by the PythonPackage class. + depends_on('python@3.6:', type=('build', 'run')) + depends_on('py-setuptools', type='build') + depends_on('py-dials-data') + depends_on('py-jinja2') + depends_on('py-procrunner') + depends_on('py-six') + + # tests + depends_on('py-pytest-runner', type='test') # add type=test? only needed during development + depends_on('py-mock', type='test') + depends_on('py-coverage@:4.9', type='test') + depends_on('py-pytest', type='test') + depends_on('py-pytest-cov', type='test') + depends_on('py-testpath', type='test') + + + def build_args(self, spec, prefix): + # FIXME: Add arguments other than --prefix + # FIXME: If not needed delete this function + args = [] + return args diff --git a/packages/py-numexpr/package.py b/packages/py-numexpr/package.py new file mode 100644 index 0000000..a47abae --- /dev/null +++ b/packages/py-numexpr/package.py @@ -0,0 +1,74 @@ +# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other +# Spack Project Developers. See the top-level COPYRIGHT file for details. +# +# SPDX-License-Identifier: (Apache-2.0 OR MIT) + +# ---------------------------------------------------------------------------- +# If you submit this package back to Spack as a pull request, +# please first remove this boilerplate and all FIXME comments. +# +# This is a template package file for Spack. We've put "FIXME" +# next to all the things you'll want to change. Once you've handled +# them, you can save this file and test your package like this: +# +# spack install py-numexpr +# +# You can edit this file again by typing: +# +# spack edit py-numexpr +# +# See the Spack documentation for more information on packaging. +# ---------------------------------------------------------------------------- + +from spack import * + + +class PyNumexpr(PythonPackage): + """NumExpr is a fast numerical expression evaluator for NumPy. With it, + expressions that operate on arrays (like '3*a+4*b') are accelerated and + use less memory than doing the same calculation in Python. + + In addition, its multi-threaded capabilities can make use of all your cores + -- which generally results in substantial performance scaling compared to NumPy. + + Last but not least, numexpr can make use of Intel's VML (Vector Math Library, + normally integrated in its Math Kernel Library, or MKL). This allows further + acceleration of transcendent expressions.""" + + # FIXME: Add a proper url for your package's homepage here. + homepage = "https://github.com/pydata/numexpr/" + url = "https://github.com/pydata/numexpr/archive/v2.7.2.tar.gz" + + # FIXME: Add a list of GitHub accounts to + # notify when the package is updated. + maintainers = ['RobertRosca', 'julianhoersch'] + + version('3.0.1a5', sha256='e2ff7f3244a6c780059b7d80f22af07bbf93b01502da0df10c553fb30c6e8de2') + version('2.7.2', sha256='7d1b3790103221feda07f4a93a4fa5c6654f46865197a677ca6f27eb5cb4e5ef') + version('2.7.1', sha256='5c6ae3bb5688184b922b43fc47de49d642576d0feec55a1b679caa66efae90a1') + version('2.7.0', sha256='1923f038b90cc69635871968ed742be7775c879451c612f173c2547c823c9561') + version('2.6.9', sha256='d57267bbdf10906f5ed7841b3484bec4af0494102b50e89ba316924cc7a7fd46') + version('2.6.8', sha256='1a9684008c5ff7d69a5aa2998a3186587ee89f6cc6c4966f76aed8c4ee9f5b92') + version('2.6.7', sha256='e81a1a13656712aff072d89f49ecf905fd3c6b6722544c1decb132903c54a967') + version('2.6.6', sha256='f1f65fb3e0534b3391055e056ef7ecd537c9a2880af66f5a15e7abc029547c4a') + version('2.6.5', sha256='fe78a78e002806e87e012b6105f3b3d52d47fc7a72bafb56341fcec7ce02cfd7') + version('2.6.4', sha256='049da1c07bd62d2aba29887130ccc9aff9b90962cb779a7b7ddc15e580368fba') + + # FIXME: Add dependencies if required. Only add the python dependency + # if you need specific versions. A generic python dependency is + # added implicity by the PythonPackage class. + + depends_on('python@2.6:', type=('build', 'run')) + depends_on('py-setuptools', type='build') + depends_on('py-numpy@1.7:') + + depends_on('py-coverage@:4.9', type='test') + depends_on('py-pytest', type='test') + depends_on('py-pytest-cov', type='test') + depends_on('py-testpath', type='test') + + def build_args(self, spec, prefix): + # FIXME: Add arguments other than --prefix + # FIXME: If not needed delete this function + args = [] + return args diff --git a/packages/py-procrunner/package.py b/packages/py-procrunner/package.py new file mode 100644 index 0000000..1a95878 --- /dev/null +++ b/packages/py-procrunner/package.py @@ -0,0 +1,64 @@ +# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other +# Spack Project Developers. See the top-level COPYRIGHT file for details. +# +# SPDX-License-Identifier: (Apache-2.0 OR MIT) + +# ---------------------------------------------------------------------------- +# If you submit this package back to Spack as a pull request, +# please first remove this boilerplate and all FIXME comments. +# +# This is a template package file for Spack. We've put "FIXME" +# next to all the things you'll want to change. Once you've handled +# them, you can save this file and test your package like this: +# +# spack install py-procrunner +# +# You can edit this file again by typing: +# +# spack edit py-procrunner +# +# See the Spack documentation for more information on packaging. +# ---------------------------------------------------------------------------- + +from spack import * + + +class PyProcrunner(PythonPackage): + """Versatile utility function to run external processes + Free software: BSD license Documentation: https://procrunner.readthedocs.io.""" + + # FIXME: Add a proper url for your package's homepage here. + homepage = "https://procrunner.readthedocs.io" + url = "https://github.com/DiamondLightSource/python-procrunner/archive/v2.3.0.tar.gz" + + # FIXME: Add a list of GitHub accounts to + # notify when the package is updated. + # maintainers = ['github_user1', 'github_user2'] + + version('2.3.0', sha256='44a18bfdff242d2efae92a94da40a87b1a0eb3d6248cb459cf94ec719be5edd9') + version('2.2.0', sha256='b5c4fe17ab31f8907db61284e037139f5facc3c7ca5a2a6dc83aa8828680a440') + version('2.1.0', sha256='09b1c2b28e1442c5b8f22259f51de01ddbd0379ae23f51a094733178e58a38f5') + version('2.0.0', sha256='36b05a76b706cb22123cbb4a815e35062f3ff1f77d66f0bf9970db03c4e4d9ae') + version('1.1.0', sha256='412d7c181b1da633885b0cf7b7385d727bd23e1e3c8d40fbdb8ef9fa3db6d298') + version('1.0.2', sha256='7fe03d1d426a4633cecc502c2ba6c8ba19302b72919d3b682ddfee67b61e025c') + version('1.0.1', sha256='c8db5e7eff788e9eb8ec713ffa63448302458827dd300d8d3edf4b341e328b84') + version('1.0.0', sha256='4b78cfa1d0f29e8731e550d5b08c0706967faa2f88130bcd76bb657d70e940f1') + version('0.9.1', sha256='f721d7939156aa85fa3cee448005a3626fa23c915dd80e2d61e78f16d7857b4c') + version('0.9.0', sha256='b38e889322603790aeb94b78a3682ee74b001a315f8b1df6772abb0bc0aa1afa') + + # FIXME: Add dependencies if required. Only add the python dependency + # if you need specific versions. A generic python dependency is + # added implicity by the PythonPackage class. + depends_on('python@3.6:', type=('build', 'run')) + depends_on('py-setuptools', type='build') + + depends_on('py-coverage@:4.9', type='test') + depends_on('py-pytest', type='test') + depends_on('py-pytest-cov', type='test') + depends_on('py-testpath', type='test') + + def build_args(self, spec, prefix): + # FIXME: Add arguments other than --prefix + # FIXME: If not needed delete this function + args = [] + return args diff --git a/packages/py-silx/package.py b/packages/py-silx/package.py new file mode 100644 index 0000000..b3be200 --- /dev/null +++ b/packages/py-silx/package.py @@ -0,0 +1,76 @@ +# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other +# Spack Project Developers. See the top-level COPYRIGHT file for details. +# +# SPDX-License-Identifier: (Apache-2.0 OR MIT) + +# ---------------------------------------------------------------------------- +# If you submit this package back to Spack as a pull request, +# please first remove this boilerplate and all FIXME comments. +# +# This is a template package file for Spack. We've put "FIXME" +# next to all the things you'll want to change. Once you've handled +# them, you can save this file and test your package like this: +# +# spack install py-silx +# +# You can edit this file again by typing: +# +# spack edit py-silx +# +# See the Spack documentation for more information on packaging. +# ---------------------------------------------------------------------------- + +from spack import * + + +class PySilx(PythonPackage): + """The purpose of the silx project is to provide a collection of Python + packages to support the development of data assessment, reduction and + analysis applications at synchrotron radiation facilities. silx aims + to provide reading/writing tools for different file formats, data + reduction routines and a set of Qt widgets to browse and visualise + data.""" + + # FIXME: Add a proper url for your package's homepage here. + homepage = "http://www.silx.org/doc/silx/latest/" + url = "https://github.com/silx-kit/silx/archive/v0.14.0.tar.gz" + + # FIXME: Add a list of GitHub accounts to + # notify when the package is updated. + maintainers = ['RobertRosca', 'julianhoers'] + + version('0.14.0rc3', sha256='37f66a56022505b714b72e3975f5f992320b86fa368cfa0d11e4225f8c5451b1') + version('0.14.0rc2', sha256='486739a1ea1631271af7ffd9c4c4ec1bbc230e7ebea6829319abdb6d3d5adeb1') + version('0.14.0rc1', sha256='67936501fd7ed68006f570c1623cff762c225087b8f850729ee94a77c2168eb7') + version('0.14.0', sha256='17c595fe18c9eb3403a9d1f0ee6ea7b523607043c46c944573ecf406f6997866') + version('0.13.3b0', sha256='798bee0a4f83195d0e120fbbbbd11d692d2429888fdac81b75b9335d7545f931') + version('0.13.2-ubuntu20.04-packages', sha256='3c7b912be00954e9275056ac4e8b8f2d9772402ed8509eb2b6538fbf22438277') + version('0.13.2-debian10-packages', sha256='acab83206d18dd183fffb74a2ee18129cbff75185b39fc8e77561e7b3e4315ec') + version('0.13.2-debian9-packages', sha256='b32139153ea25d1bc336a14acebeb5f1b60b477171ef615b70c7a902e2a95cbc') + version('0.13.2', sha256='88a16187283c8684be63ab37aee7267c370962dfbcf45cca77ae494ee5e4e773') + version('0.13.1', sha256='2c5dbc1c043ecb78dafd1f7afbfd45833c87332818307196878b759956687491') + version('0.13.0b2', sha256='f3061d5cec39b6134b05cba19d26f3598a64440320351b94b6ca91129481bbdc') + version('0.13.0b1', sha256='c934f9b65a7c8a0cb44e274983b412b22cc710d36c192b077abbdae3e08b82e2') + version('0.13.0', sha256='8c2fe896a26ffd4811a1944481328faa60e05214b84e873bffbdd8cb13729535') + + # FIXME: Add dependencies if required. Only add the python dependency + # if you need specific versions. A generic python dependency is + # added implicity by the PythonPackage class. + # depends_on('python@2.X:2.Y,3.Z:', type=('build', 'run')) + depends_on('py-setuptools', type='build') + depends_on('py-numpy@1.12:') + depends_on('py-cython@0.21.1:') + depends_on('py-h5py') + depends_on('py-fabio@0.9:') + depends_on('py-six') + + depends_on('py-coverage@:4.9', type='test') + depends_on('py-pytest', type='test') + depends_on('py-pytest-cov', type='test') + depends_on('py-testpath', type='test') + + def build_args(self, spec, prefix): + # FIXME: Add arguments other than --prefix + # FIXME: If not needed delete this function + args = [] + return args From e90b9a4173ce71aa8b722eac66c440a38f958c84 Mon Sep 17 00:00:00 2001 From: Julian Michael Hoersch Date: Wed, 27 Jan 2021 10:05:15 +0100 Subject: [PATCH 26/94] Added test dependencies --- packages/py-fabio/package.py | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/packages/py-fabio/package.py b/packages/py-fabio/package.py index b33566f..922902e 100644 --- a/packages/py-fabio/package.py +++ b/packages/py-fabio/package.py @@ -48,6 +48,12 @@ class PyFabio(PythonPackage): depends_on('python@3.6:', type=('build', 'run')) depends_on('py-setuptools', type='build') depends_on('py-numpy') + + depends_on('py-coverage@:4.9', type='test') + depends_on('py-pytest', type='test') + depends_on('py-pytest-cov', type='test') + depends_on('py-testpath', type='test') + def build_args(self, spec, prefix): # FIXME: Add arguments other than --prefix # FIXME: If not needed delete this function From a46afe8552ea651c60a9d79e1721b7b490324408 Mon Sep 17 00:00:00 2001 From: Julian Michael Hoersch Date: Wed, 27 Jan 2021 10:11:34 +0100 Subject: [PATCH 27/94] Added dependencies - not working yet --- packages/py-extra-foam/package.py | 86 +++++++++++++++++++++++++++++++ 1 file changed, 86 insertions(+) create mode 100644 packages/py-extra-foam/package.py diff --git a/packages/py-extra-foam/package.py b/packages/py-extra-foam/package.py new file mode 100644 index 0000000..bc70fcd --- /dev/null +++ b/packages/py-extra-foam/package.py @@ -0,0 +1,86 @@ +# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other +# Spack Project Developers. See the top-level COPYRIGHT file for details. +# +# SPDX-License-Identifier: (Apache-2.0 OR MIT) + +# ---------------------------------------------------------------------------- +# If you submit this package back to Spack as a pull request, +# please first remove this boilerplate and all FIXME comments. +# +# This is a template package file for Spack. We've put "FIXME" +# next to all the things you'll want to change. Once you've handled +# them, you can save this file and test your package like this: +# +# spack install py-extra-foam +# +# You can edit this file again by typing: +# +# spack edit py-extra-foam +# +# See the Spack documentation for more information on packaging. +# ---------------------------------------------------------------------------- + +from spack import * + + +class PyExtraFoam(PythonPackage): + """EXtra-foam is a framework that provides real-time and off-line data analysis + (detector geometry, pump-probe, azimuthal integration, ROI, statistics, etc.) + and visualization for experiments that use 2D area detectors (AGIPD, LPD, DSSC, + FastCCD, JungFrau, ePix100, etc.) and 1D detectors (Gotthard, XGM, digitizer, etc.) + at European XFEL.""" + + # FIXME: Add a proper url for your package's homepage here. + homepage = "https://extra-foam.readthedocs.io/en/latest/" + url = "https://github.com/European-XFEL/EXtra-foam/archive/1.0.0.tar.gz" + + # FIXME: Add a list of GitHub accounts to + # notify when the package is updated. + maintainers = ['RobertRosca', 'julianhoersch'] + + version('1.0.0beta3', sha256='38e1f7ea05ed32a3d041dbccb85862055436db4374a6c4007847d636ff2c003f') + version('1.0.0beta2', sha256='04a5bafcb2af2daf122b94c78219ad857b5ad732f121d443d340f2ab49a26581') + version('1.0.0beta1', sha256='938f0006ccb9042d44cc0bd6582ab5d191daf96b7db9c9d7afe8258a6798faf4') + version('1.0.0', sha256='8bb214cb21a414175f9ca207485c6cf6fac9c569198ac59b23b3a023f0f420d8') + version('0.9.1', sha256='7f3c48985d0f656e35e6364a6279e458841566b866c59bd509aa96b855d2d668') + version('0.9.0beta3', sha256='fbd3e2b23d9cfc623b225c4572be54b31ef3203597b43ba5a9cb8b1e333f983c') + version('0.9.0beta2', sha256='84eddd55220e4e89080442f267141a2688cf5cda397b5e22da6303622c675b4e') + version('0.9.0beta1', sha256='b1bbaa7d0edc4064106c10a837bfcf7f345889f51419d558734a292cefe737c7') + version('0.9.0', sha256='aa3422639b6ef6f7cbe0b93155322d51af89115f30a4525104268adbb0fed6f7') + version('0.8.4', sha256='ab36bb07952eb0b4e1956bdb626df0ce3975ab64dc64eda6822ddc5759fb8a14') + + # FIXME: Add dependencies if required. Only add the python dependency + # if you need specific versions. A generic python dependency is + # added implicity by the PythonPackage class. + depends_on('python@3.6:', type=('build', 'run')) + depends_on('py-setuptools', type='build') + depends_on('py-numpy@1.16.1:') + depends_on('py-scipy@1.2.1:') + depends_on('py-msgpack@0.5.6:') + depends_on('py-msgpack-numpy@0.4.4:') + depends_on('py-pyzmq@17.1.2:') + depends_on('py-pyfai@0.17.0:') + depends_on('py-pyqt5@5.13.2') # needs higher compiler version as default on maxwell (gcc@4.8.5) -> gcc@:5.0.999 + depends_on('py-extra-data@1.0.0:') + depends_on('py-extra-geom@0.8.0:') + depends_on('py-karabo-bridge@0.5.0:') + depends_on('py-toolz@0.9.0:') + depends_on('py-silx@0.9.0:') + depends_on('py-hiredis@1.0.1') + depends_on('py-redis@3.5.2') + depends_on('py-psutil@5.6.2:') + depends_on('py-imageio@2.8.0') + depends_on('py-pillow@7.0.0') + depends_on('py-pyyaml@5.2:') + + depends_on('py-coverage@:4.9', type='test') + depends_on('py-pytest', type='test') + depends_on('py-pytest-cov', type='test') + depends_on('py-testpath', type='test') + + + def build_args(self, spec, prefix): + # FIXME: Add arguments other than --prefix + # FIXME: If not needed delete this function + args = [] + return args From cd0a634262ac96d3ddd00c96b4d2e917c5f281f2 Mon Sep 17 00:00:00 2001 From: Julian Michael Hoersch Date: Wed, 27 Jan 2021 10:59:58 +0100 Subject: [PATCH 28/94] Added v0.20.0 --- packages/py-pyfai/package.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/packages/py-pyfai/package.py b/packages/py-pyfai/package.py index 5c2f527..64bb023 100644 --- a/packages/py-pyfai/package.py +++ b/packages/py-pyfai/package.py @@ -32,8 +32,9 @@ class PyPyfai(PythonPackage): # FIXME: Add a list of GitHub accounts to # notify when the package is updated. - # maintainers = ['github_user1', 'github_user2'] + maintainers = ['RobertRosca', 'julianhoersch'] + version('0.20.0', sha256='f39f56ff58868ab7f12d6fa5c7bf6b7d111b7fa687f3816c5d8d11cb75fa82f0') version('0.19.0', sha256='1e329d2bdd6f4ddc4c70460bb0b994a33b6885bff810b11a7871d83ef8756281') version('0.18.0', sha256='4637eaa40a5a3b10c97ef0fea9e6f935c4ae93eb8df48643d567db7796cb3ef8') version('0.17.1', sha256='e4c2b53c71b638d5f532f5e557a87a79d1a3ab46552e4b5ad0f071e996f3974d') @@ -50,7 +51,7 @@ class PyPyfai(PythonPackage): depends_on('py-h5py') depends_on('py-silx') depends_on('py-pyopengl') - depends_on('py-pyqt5') + depends_on('py-pyqt5') depends_on('py-hdf5plugin') depends_on('py-wheel') From fbfd7445e87e13dbd7ec5a879da5556dbff006d5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julian=20H=C3=B6rsch?= <75368027+julianhoersch@users.noreply.github.com> Date: Wed, 27 Jan 2021 14:20:50 +0100 Subject: [PATCH 29/94] Update spack.yaml --- .docker/opt/spack/etc/spack/spack.yaml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/.docker/opt/spack/etc/spack/spack.yaml b/.docker/opt/spack/etc/spack/spack.yaml index b385ce6..98571c2 100644 --- a/.docker/opt/spack/etc/spack/spack.yaml +++ b/.docker/opt/spack/etc/spack/spack.yaml @@ -7,4 +7,9 @@ spack: - py-karabo-bridge # - py-pyfai - py-pyopengl + - py-dials-data + # - py-extra-foam + - py-numexpr + - py-procrunner + - py-silx view: False From b44aff2d44242bfbe35be0a325521127f2173e11 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julian=20H=C3=B6rsch?= <75368027+julianhoersch@users.noreply.github.com> Date: Wed, 27 Jan 2021 15:27:22 +0100 Subject: [PATCH 30/94] Update readme.md Added new packages --- readme.md | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/readme.md b/readme.md index 59a01ef..61b60f7 100644 --- a/readme.md +++ b/readme.md @@ -19,6 +19,13 @@ build times. | py-fabio | [![](https://github.com/panosc-eu/spack-repo/workflows/py-fabio/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-fabio) | | wip | | py-karabo-bridge | [![](https://github.com/panosc-eu/spack-repo/workflows/py-karabo-bridge/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-karabo-bridge) | | wip | | py-pyfai | [![](https://github.com/panosc-eu/spack-repo/workflows/py-pyfai/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-pyfai) | py-fabio, py-hdf5plugin | wip | +| py-dials-data | [![](https://github.com/panosc-eu/spack-repo/workflows/py-dials-data/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-dials-data) | | wip | +| py-dials | [![](https://github.com/panosc-eu/spack-repo/workflows/py-dials/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-dials) | py-dials-data, py-procrunner | not working | +| py-pyfai | [![](https://github.com/panosc-eu/spack-repo/workflows/py-pyfai/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-pyfai) | py-fabio, py-hdf5plugin | wip | +| py-extra-foam | [![](https://github.com/panosc-eu/spack-repo/workflows/py-extra-foam/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-extra-foam) | py-pyfai, py-extra-data, py-extra-geom, py-karabo-bridge, py-silx | not working | +| py-numexpr | [![](https://github.com/panosc-eu/spack-repo/workflows/py-numexpr/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-numexpr) | | wip | +| py-procrunner | [![](https://github.com/panosc-eu/spack-repo/workflows/py-procrunner/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-procrunner) | | wip | +| py-silx | [![](https://github.com/panosc-eu/spack-repo/workflows/py-silx/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-silx) | py-fabio | wip | ## Notes From 6fd6485a858297ad912a1bea909ff0dc05e23688 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julian=20H=C3=B6rsch?= <75368027+julianhoersch@users.noreply.github.com> Date: Wed, 27 Jan 2021 15:28:19 +0100 Subject: [PATCH 31/94] Update readme.md Removed duplicate --- readme.md | 1 - 1 file changed, 1 deletion(-) diff --git a/readme.md b/readme.md index 61b60f7..ac4f138 100644 --- a/readme.md +++ b/readme.md @@ -21,7 +21,6 @@ build times. | py-pyfai | [![](https://github.com/panosc-eu/spack-repo/workflows/py-pyfai/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-pyfai) | py-fabio, py-hdf5plugin | wip | | py-dials-data | [![](https://github.com/panosc-eu/spack-repo/workflows/py-dials-data/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-dials-data) | | wip | | py-dials | [![](https://github.com/panosc-eu/spack-repo/workflows/py-dials/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-dials) | py-dials-data, py-procrunner | not working | -| py-pyfai | [![](https://github.com/panosc-eu/spack-repo/workflows/py-pyfai/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-pyfai) | py-fabio, py-hdf5plugin | wip | | py-extra-foam | [![](https://github.com/panosc-eu/spack-repo/workflows/py-extra-foam/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-extra-foam) | py-pyfai, py-extra-data, py-extra-geom, py-karabo-bridge, py-silx | not working | | py-numexpr | [![](https://github.com/panosc-eu/spack-repo/workflows/py-numexpr/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-numexpr) | | wip | | py-procrunner | [![](https://github.com/panosc-eu/spack-repo/workflows/py-procrunner/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-procrunner) | | wip | From 6ab5cb898303d225de1b0fc55ff0f384749e713e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julian=20H=C3=B6rsch?= <75368027+julianhoersch@users.noreply.github.com> Date: Wed, 27 Jan 2021 15:33:00 +0100 Subject: [PATCH 32/94] Update package.py removed space --- packages/py-dials-data/package.py | 2 -- 1 file changed, 2 deletions(-) diff --git a/packages/py-dials-data/package.py b/packages/py-dials-data/package.py index 6d3f60f..74a34be 100644 --- a/packages/py-dials-data/package.py +++ b/packages/py-dials-data/package.py @@ -57,8 +57,6 @@ class PyDialsData(PythonPackage): depends_on('py-pyyaml@5.3.1') depends_on('py-py@1.9.0') - - depends_on('py-coverage@:4.9', type='test') # depends_on('py-pytest', type='test') #specify for test too? depends_on('py-pytest-cov', type='test') From 11b7bcbd07be0e89771ddece229ab110a4627b72 Mon Sep 17 00:00:00 2001 From: Julian Michael Hoersch Date: Wed, 10 Feb 2021 12:02:57 +0100 Subject: [PATCH 33/94] Added new packages --- .docker/opt/spack/etc/spack/spack.yaml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.docker/opt/spack/etc/spack/spack.yaml b/.docker/opt/spack/etc/spack/spack.yaml index 98571c2..41bf095 100644 --- a/.docker/opt/spack/etc/spack/spack.yaml +++ b/.docker/opt/spack/etc/spack/spack.yaml @@ -5,11 +5,13 @@ spack: - py-extra-data - py-extra-geom - py-karabo-bridge - # - py-pyfai + - py-msgpack-numpy + - py-pyfai - py-pyopengl - py-dials-data # - py-extra-foam - py-numexpr - py-procrunner - py-silx + - py-transformations view: False From 00c8f7e29219d4ec760261b4f1944874f9d4b8d7 Mon Sep 17 00:00:00 2001 From: Julian Michael Hoersch Date: Wed, 10 Feb 2021 12:04:33 +0100 Subject: [PATCH 34/94] Added comment --- packages/py-numexpr/package.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/py-numexpr/package.py b/packages/py-numexpr/package.py index a47abae..c0bdcd5 100644 --- a/packages/py-numexpr/package.py +++ b/packages/py-numexpr/package.py @@ -57,11 +57,11 @@ class PyNumexpr(PythonPackage): # FIXME: Add dependencies if required. Only add the python dependency # if you need specific versions. A generic python dependency is # added implicity by the PythonPackage class. - depends_on('python@2.6:', type=('build', 'run')) depends_on('py-setuptools', type='build') depends_on('py-numpy@1.7:') + #test dependencies depends_on('py-coverage@:4.9', type='test') depends_on('py-pytest', type='test') depends_on('py-pytest-cov', type='test') From 4d71055c26d391835ee9ab30eafcb8cf76e034fd Mon Sep 17 00:00:00 2001 From: Julian Michael Hoersch Date: Wed, 10 Feb 2021 12:06:45 +0100 Subject: [PATCH 35/94] Removed GUI dependencies, added comments GUI dependencies make packaging complicated --- packages/py-pyfai/package.py | 33 +++++++++++++++++++++++---------- 1 file changed, 23 insertions(+), 10 deletions(-) diff --git a/packages/py-pyfai/package.py b/packages/py-pyfai/package.py index 64bb023..2793aa7 100644 --- a/packages/py-pyfai/package.py +++ b/packages/py-pyfai/package.py @@ -24,10 +24,15 @@ class PyPyfai(PythonPackage): - """FIXME: Put a proper description of your package here.""" + """PyFAI is an azimuthal integration library that tries to be fast (as fast as C and even more + using OpenCL and GPU). It is based on histogramming of the 2theta/Q positions of each (center of) + pixel weighted by the intensity of each pixel, but parallel version uses a SparseMatrix-DenseVector + multiplication. Neighboring output bins get also a contribution of pixels next to the border thanks + to pixel splitting. Finally pyFAI provides also tools to calibrate the experimental setup using + Debye-Scherrer rings of a reference compound.""" # FIXME: Add a proper url for your package's homepage here. - homepage = "https://www.example.com" + homepage = "https://github.com/silx-kit/pyFAI" url = "https://github.com/silx-kit/pyFAI/archive/v0.19.0.tar.gz" # FIXME: Add a list of GitHub accounts to @@ -40,20 +45,28 @@ class PyPyfai(PythonPackage): version('0.17.1', sha256='e4c2b53c71b638d5f532f5e557a87a79d1a3ab46552e4b5ad0f071e996f3974d') # FIXME: Add dependencies if required. + #dependencies for install and setup depends_on('python@3.6:', type=('build', 'run')) depends_on('py-setuptools', type='build') depends_on('py-numpy') - depends_on('py-cython') - depends_on('py-fabio') - depends_on('py-scipy') + depends_on('py-fabio@0.5:') depends_on('py-matplotlib') + depends_on('py-scipy') depends_on('py-numexpr') - depends_on('py-h5py') - depends_on('py-silx') - depends_on('py-pyopengl') - depends_on('py-pyqt5') - depends_on('py-hdf5plugin') + depends_on('py-silx@0.10:') + + #other dependencies + depends_on('py-cython') depends_on('py-wheel') + depends_on('py-transformations') + #depends_on('py-nbsphinx') commited to spack but not in spack repo yet + + #gui dependencies (not all available) + #depends_on('py-pyqt5') + #depends_on('py-hdf5plugin') + #depends_on('py-h5py') + #depends_on('py-pyopengl') + #depends_on('py-pyopencl') def build_args(self, spec, prefix): # FIXME: Add arguments other than --prefix From 73c3384cd4ffedd702bc6bf1b8aae4a1ed1621f5 Mon Sep 17 00:00:00 2001 From: Julian Michael Hoersch Date: Wed, 10 Feb 2021 12:10:27 +0100 Subject: [PATCH 36/94] Added new package (dependency for py-pyFAI) --- packages/py-transformations/package.py | 62 ++++++++++++++++++++++++++ 1 file changed, 62 insertions(+) create mode 100644 packages/py-transformations/package.py diff --git a/packages/py-transformations/package.py b/packages/py-transformations/package.py new file mode 100644 index 0000000..319e5e6 --- /dev/null +++ b/packages/py-transformations/package.py @@ -0,0 +1,62 @@ +# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other +# Spack Project Developers. See the top-level COPYRIGHT file for details. +# +# SPDX-License-Identifier: (Apache-2.0 OR MIT) + +# ---------------------------------------------------------------------------- +# If you submit this package back to Spack as a pull request, +# please first remove this boilerplate and all FIXME comments. +# +# This is a template package file for Spack. We've put "FIXME" +# next to all the things you'll want to change. Once you've handled +# them, you can save this file and test your package like this: +# +# spack install py-transformations +# +# You can edit this file again by typing: +# +# spack edit py-transformations +# +# See the Spack documentation for more information on packaging. +# ---------------------------------------------------------------------------- + +from spack import * + + +class PyTransformations(PythonPackage): + """Transformations is a Python library for calculating 4x4 matrices for translating, rotating, + reflecting, scaling, shearing, projecting, orthogonalizing, and superimposing arrays of 3D + homogeneous coordinates as well as for converting between rotation matrices, Euler angles, and + quaternions. Also includes an Arcball control object and functions to decompose transformation + matrices.""" + + # FIXME: Add a proper url for your package's homepage here. + homepage = "https://github.com/cgohlke/transformations" + url = "https://github.com/cgohlke/transformations/archive/v2020.1.1.tar.gz" + + # FIXME: Add a list of GitHub accounts to + # notify when the package is updated. + maintainers = ['RobertRosca', 'julianhoersch'] + + version('2020.1.1', sha256='cd9cd29ba7f0ec4c109293fe5007cf632e9f5b8107acba5572672002e72860a6') + version('2019.4.22', sha256='5686de316e2f65a67788de25ab180995429283c531814815ce4508de0df96c9a') + version('2019.2.20', sha256='5cb940b9df13707a88bbffffdd2cb0347afa1329b7770a8350d9d4415b00f46d') + + # FIXME: Add dependencies if required. Only add the python dependency + # if you need specific versions. A generic python dependency is + # added implicity by the PythonPackage class. + depends_on('python@3.6:', type=('build', 'run')) + depends_on('py-setuptools@18.0:', type='build') + depends_on('py-numpy@1.14.5:') + + #test dependencies + depends_on('py-coverage@:4.9', type='test') + depends_on('py-pytest', type='test') + depends_on('py-pytest-cov', type='test') + depends_on('py-testpath', type='test') + + def build_args(self, spec, prefix): + # FIXME: Add arguments other than --prefix + # FIXME: If not needed delete this function + args = [] + return args From c9909cdab6f377db0ea386200b688aa7270a4cd2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julian=20H=C3=B6rsch?= <75368027+julianhoersch@users.noreply.github.com> Date: Wed, 10 Feb 2021 11:59:04 +0100 Subject: [PATCH 37/94] Update readme.md Added transformations package and updated pyFAI dependencies --- readme.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/readme.md b/readme.md index ac4f138..e610aab 100644 --- a/readme.md +++ b/readme.md @@ -17,14 +17,16 @@ build times. | py-extra-data | [![](https://github.com/panosc-eu/spack-repo/workflows/py-extra-data/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-extra-data) | py-karabo-bridge, py-fabio | wip | | py-extra-geom | [![](https://github.com/panosc-eu/spack-repo/workflows/py-extra-geom/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-extra-geom) | py-cfelpyutils | wip | | py-fabio | [![](https://github.com/panosc-eu/spack-repo/workflows/py-fabio/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-fabio) | | wip | -| py-karabo-bridge | [![](https://github.com/panosc-eu/spack-repo/workflows/py-karabo-bridge/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-karabo-bridge) | | wip | -| py-pyfai | [![](https://github.com/panosc-eu/spack-repo/workflows/py-pyfai/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-pyfai) | py-fabio, py-hdf5plugin | wip | +| py-karabo-bridge | [![](https://github.com/panosc-eu/spack-repo/workflows/py-karabo-bridge/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-karabo-bridge) | py-msgpack-numpy | wip | +| py-msgpack-numpy | [![](https://github.com/panosc-eu/spack-repo/workflows/py-msgpack-numpy/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-msgpack-numpy) | | wip | +| py-pyfai | [![](https://github.com/panosc-eu/spack-repo/workflows/py-pyfai/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-pyfai) | py-fabio, py-hdf5plugin, py-numexpr, py-silx, py-transformations | wip | | py-dials-data | [![](https://github.com/panosc-eu/spack-repo/workflows/py-dials-data/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-dials-data) | | wip | | py-dials | [![](https://github.com/panosc-eu/spack-repo/workflows/py-dials/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-dials) | py-dials-data, py-procrunner | not working | | py-extra-foam | [![](https://github.com/panosc-eu/spack-repo/workflows/py-extra-foam/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-extra-foam) | py-pyfai, py-extra-data, py-extra-geom, py-karabo-bridge, py-silx | not working | | py-numexpr | [![](https://github.com/panosc-eu/spack-repo/workflows/py-numexpr/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-numexpr) | | wip | | py-procrunner | [![](https://github.com/panosc-eu/spack-repo/workflows/py-procrunner/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-procrunner) | | wip | | py-silx | [![](https://github.com/panosc-eu/spack-repo/workflows/py-silx/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-silx) | py-fabio | wip | +| py-transformations | [![](https://github.com/panosc-eu/spack-repo/workflows/py-transformations/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-transformations) | | wip | ## Notes From 1eb729d3544bc6c92a5421ee6c6d0b4df283a5da Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julian=20H=C3=B6rsch?= <75368027+julianhoersch@users.noreply.github.com> Date: Wed, 10 Feb 2021 12:13:12 +0100 Subject: [PATCH 38/94] Added Comment --- packages/py-dials-data/package.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/py-dials-data/package.py b/packages/py-dials-data/package.py index 74a34be..48da5e7 100644 --- a/packages/py-dials-data/package.py +++ b/packages/py-dials-data/package.py @@ -56,7 +56,8 @@ class PyDialsData(PythonPackage): depends_on('py-pytest@6.1.2') # in install_requires depends_on('py-pyyaml@5.3.1') depends_on('py-py@1.9.0') - + + #test dependencies depends_on('py-coverage@:4.9', type='test') # depends_on('py-pytest', type='test') #specify for test too? depends_on('py-pytest-cov', type='test') From ee35022244a53be3d25494871dc305d719ab22a5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julian=20H=C3=B6rsch?= <75368027+julianhoersch@users.noreply.github.com> Date: Wed, 10 Feb 2021 12:15:41 +0100 Subject: [PATCH 39/94] Added comment --- packages/py-fabio/package.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/packages/py-fabio/package.py b/packages/py-fabio/package.py index 922902e..01e2111 100644 --- a/packages/py-fabio/package.py +++ b/packages/py-fabio/package.py @@ -37,7 +37,7 @@ class PyFabio(PythonPackage): # FIXME: Add a list of GitHub accounts to # notify when the package is updated. - maintainers = ['robertrosca'] + maintainers = ['RobertRosca', 'julianhoersch'] version('0.10.2', sha256='597d7afe414da9b16afeb91439b669d268c8bcfefed1fe400b9a26d93ae58243') version('0.10.1', sha256='0c89c5afdead668beae8e79948a6eae7c1d4767c33acde96d68bfe3a2d7dcd96') @@ -48,7 +48,8 @@ class PyFabio(PythonPackage): depends_on('python@3.6:', type=('build', 'run')) depends_on('py-setuptools', type='build') depends_on('py-numpy') - + + #test dependencies depends_on('py-coverage@:4.9', type='test') depends_on('py-pytest', type='test') depends_on('py-pytest-cov', type='test') From 0371548296bbab64c7804cdba1537db614e6b410 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julian=20H=C3=B6rsch?= <75368027+julianhoersch@users.noreply.github.com> Date: Wed, 10 Feb 2021 12:18:59 +0100 Subject: [PATCH 40/94] Update package.py --- packages/py-fabio/package.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/py-fabio/package.py b/packages/py-fabio/package.py index 01e2111..77dfeb0 100644 --- a/packages/py-fabio/package.py +++ b/packages/py-fabio/package.py @@ -37,7 +37,7 @@ class PyFabio(PythonPackage): # FIXME: Add a list of GitHub accounts to # notify when the package is updated. - maintainers = ['RobertRosca', 'julianhoersch'] + maintainers = ['RobertRosca'] version('0.10.2', sha256='597d7afe414da9b16afeb91439b669d268c8bcfefed1fe400b9a26d93ae58243') version('0.10.1', sha256='0c89c5afdead668beae8e79948a6eae7c1d4767c33acde96d68bfe3a2d7dcd96') From 38d9a846e13c3f02aad53c3ecd4d0d5632cadc20 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julian=20H=C3=B6rsch?= <75368027+julianhoersch@users.noreply.github.com> Date: Wed, 10 Feb 2021 12:27:25 +0100 Subject: [PATCH 41/94] Update package.py --- packages/py-numexpr/package.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/py-numexpr/package.py b/packages/py-numexpr/package.py index c0bdcd5..f426870 100644 --- a/packages/py-numexpr/package.py +++ b/packages/py-numexpr/package.py @@ -61,7 +61,7 @@ class PyNumexpr(PythonPackage): depends_on('py-setuptools', type='build') depends_on('py-numpy@1.7:') - #test dependencies + # test dependencies depends_on('py-coverage@:4.9', type='test') depends_on('py-pytest', type='test') depends_on('py-pytest-cov', type='test') From 447998b67205120b2d4cae798f78e3d40d41baa8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julian=20H=C3=B6rsch?= <75368027+julianhoersch@users.noreply.github.com> Date: Wed, 10 Feb 2021 12:28:06 +0100 Subject: [PATCH 42/94] Added comment --- packages/py-procrunner/package.py | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/py-procrunner/package.py b/packages/py-procrunner/package.py index 1a95878..e7e6a6d 100644 --- a/packages/py-procrunner/package.py +++ b/packages/py-procrunner/package.py @@ -52,6 +52,7 @@ class PyProcrunner(PythonPackage): depends_on('python@3.6:', type=('build', 'run')) depends_on('py-setuptools', type='build') + # test dependencies depends_on('py-coverage@:4.9', type='test') depends_on('py-pytest', type='test') depends_on('py-pytest-cov', type='test') From 40d5c90e89551a692526dcdea93f7f594fcebbef Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julian=20H=C3=B6rsch?= <75368027+julianhoersch@users.noreply.github.com> Date: Wed, 10 Feb 2021 12:28:59 +0100 Subject: [PATCH 43/94] Added comment --- packages/py-silx/package.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/py-silx/package.py b/packages/py-silx/package.py index b3be200..320ffc3 100644 --- a/packages/py-silx/package.py +++ b/packages/py-silx/package.py @@ -63,7 +63,8 @@ class PySilx(PythonPackage): depends_on('py-h5py') depends_on('py-fabio@0.9:') depends_on('py-six') - + + # test dependencies depends_on('py-coverage@:4.9', type='test') depends_on('py-pytest', type='test') depends_on('py-pytest-cov', type='test') From 114683f2bac0da3a8cfe37ce4790682515cf71f0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julian=20H=C3=B6rsch?= <75368027+julianhoersch@users.noreply.github.com> Date: Wed, 10 Feb 2021 12:29:28 +0100 Subject: [PATCH 44/94] Update package.py --- packages/py-silx/package.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/py-silx/package.py b/packages/py-silx/package.py index 320ffc3..1afb9fb 100644 --- a/packages/py-silx/package.py +++ b/packages/py-silx/package.py @@ -37,7 +37,7 @@ class PySilx(PythonPackage): # FIXME: Add a list of GitHub accounts to # notify when the package is updated. - maintainers = ['RobertRosca', 'julianhoers'] + maintainers = ['RobertRosca', 'julianhoersch'] version('0.14.0rc3', sha256='37f66a56022505b714b72e3975f5f992320b86fa368cfa0d11e4225f8c5451b1') version('0.14.0rc2', sha256='486739a1ea1631271af7ffd9c4c4ec1bbc230e7ebea6829319abdb6d3d5adeb1') From 78de8007b805a9f060e383d094003e4933bb97a1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julian=20H=C3=B6rsch?= <75368027+julianhoersch@users.noreply.github.com> Date: Wed, 10 Feb 2021 12:33:03 +0100 Subject: [PATCH 45/94] Changed comment --- packages/py-transformations/package.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/py-transformations/package.py b/packages/py-transformations/package.py index 319e5e6..4717886 100644 --- a/packages/py-transformations/package.py +++ b/packages/py-transformations/package.py @@ -49,7 +49,7 @@ class PyTransformations(PythonPackage): depends_on('py-setuptools@18.0:', type='build') depends_on('py-numpy@1.14.5:') - #test dependencies + # test dependencies depends_on('py-coverage@:4.9', type='test') depends_on('py-pytest', type='test') depends_on('py-pytest-cov', type='test') From 5df06f2ca3fe5f3babe47def49e4e5581ae67629 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julian=20H=C3=B6rsch?= <75368027+julianhoersch@users.noreply.github.com> Date: Wed, 10 Feb 2021 12:34:08 +0100 Subject: [PATCH 46/94] Updated comments --- packages/py-pyfai/package.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/py-pyfai/package.py b/packages/py-pyfai/package.py index 2793aa7..c8e151a 100644 --- a/packages/py-pyfai/package.py +++ b/packages/py-pyfai/package.py @@ -45,7 +45,7 @@ class PyPyfai(PythonPackage): version('0.17.1', sha256='e4c2b53c71b638d5f532f5e557a87a79d1a3ab46552e4b5ad0f071e996f3974d') # FIXME: Add dependencies if required. - #dependencies for install and setup + # dependencies for install and setup depends_on('python@3.6:', type=('build', 'run')) depends_on('py-setuptools', type='build') depends_on('py-numpy') @@ -55,13 +55,13 @@ class PyPyfai(PythonPackage): depends_on('py-numexpr') depends_on('py-silx@0.10:') - #other dependencies + # other dependencies depends_on('py-cython') depends_on('py-wheel') depends_on('py-transformations') #depends_on('py-nbsphinx') commited to spack but not in spack repo yet - #gui dependencies (not all available) + # gui dependencies (not all available) #depends_on('py-pyqt5') #depends_on('py-hdf5plugin') #depends_on('py-h5py') From 63506ae351680136b3d7a8df41cbec522e726897 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julian=20H=C3=B6rsch?= <75368027+julianhoersch@users.noreply.github.com> Date: Wed, 10 Feb 2021 12:35:09 +0100 Subject: [PATCH 47/94] Added maintainers --- packages/py-procrunner/package.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/py-procrunner/package.py b/packages/py-procrunner/package.py index e7e6a6d..320c69b 100644 --- a/packages/py-procrunner/package.py +++ b/packages/py-procrunner/package.py @@ -33,7 +33,7 @@ class PyProcrunner(PythonPackage): # FIXME: Add a list of GitHub accounts to # notify when the package is updated. - # maintainers = ['github_user1', 'github_user2'] + maintainers = ['RobertRosca', 'julianhoersch'] version('2.3.0', sha256='44a18bfdff242d2efae92a94da40a87b1a0eb3d6248cb459cf94ec719be5edd9') version('2.2.0', sha256='b5c4fe17ab31f8907db61284e037139f5facc3c7ca5a2a6dc83aa8828680a440') From 549c66b8ec8ba10f26d164611cccfe4728b67a73 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julian=20H=C3=B6rsch?= <75368027+julianhoersch@users.noreply.github.com> Date: Wed, 10 Feb 2021 12:47:12 +0100 Subject: [PATCH 48/94] Update readme.md --- readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/readme.md b/readme.md index e610aab..8d69b1d 100644 --- a/readme.md +++ b/readme.md @@ -19,7 +19,7 @@ build times. | py-fabio | [![](https://github.com/panosc-eu/spack-repo/workflows/py-fabio/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-fabio) | | wip | | py-karabo-bridge | [![](https://github.com/panosc-eu/spack-repo/workflows/py-karabo-bridge/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-karabo-bridge) | py-msgpack-numpy | wip | | py-msgpack-numpy | [![](https://github.com/panosc-eu/spack-repo/workflows/py-msgpack-numpy/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-msgpack-numpy) | | wip | -| py-pyfai | [![](https://github.com/panosc-eu/spack-repo/workflows/py-pyfai/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-pyfai) | py-fabio, py-hdf5plugin, py-numexpr, py-silx, py-transformations | wip | +| py-pyfai | [![](https://github.com/panosc-eu/spack-repo/workflows/py-pyfai/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-pyfai) | py-fabio, py-numexpr, py-silx, py-transformations | wip | | py-dials-data | [![](https://github.com/panosc-eu/spack-repo/workflows/py-dials-data/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-dials-data) | | wip | | py-dials | [![](https://github.com/panosc-eu/spack-repo/workflows/py-dials/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-dials) | py-dials-data, py-procrunner | not working | | py-extra-foam | [![](https://github.com/panosc-eu/spack-repo/workflows/py-extra-foam/badge.svg)](https://github.com/panosc-eu/spack-repo/actions?query=workflow%3Apy-extra-foam) | py-pyfai, py-extra-data, py-extra-geom, py-karabo-bridge, py-silx | not working | From 2b5119dfe41cfc79405cd7c975475f23aed77c2e Mon Sep 17 00:00:00 2001 From: Robert Rosca <32569096+RobertRosca@users.noreply.github.com> Date: Wed, 24 Mar 2021 14:44:52 +0100 Subject: [PATCH 49/94] Run workflow generation script --- .../workflows/package-test.py-dials-data.yaml | 28 +++++++++++++++++++ .../package-test.py-msgpack-numpy.yaml | 28 +++++++++++++++++++ .../workflows/package-test.py-numexpr.yaml | 28 +++++++++++++++++++ .../workflows/package-test.py-procrunner.yaml | 28 +++++++++++++++++++ .github/workflows/package-test.py-pyfai.yaml | 28 +++++++++++++++++++ .github/workflows/package-test.py-silx.yaml | 28 +++++++++++++++++++ .../package-test.py-transformations.yaml | 28 +++++++++++++++++++ 7 files changed, 196 insertions(+) create mode 100644 .github/workflows/package-test.py-dials-data.yaml create mode 100644 .github/workflows/package-test.py-msgpack-numpy.yaml create mode 100644 .github/workflows/package-test.py-numexpr.yaml create mode 100644 .github/workflows/package-test.py-procrunner.yaml create mode 100644 .github/workflows/package-test.py-pyfai.yaml create mode 100644 .github/workflows/package-test.py-silx.yaml create mode 100644 .github/workflows/package-test.py-transformations.yaml diff --git a/.github/workflows/package-test.py-dials-data.yaml b/.github/workflows/package-test.py-dials-data.yaml new file mode 100644 index 0000000..61fac09 --- /dev/null +++ b/.github/workflows/package-test.py-dials-data.yaml @@ -0,0 +1,28 @@ +name: py-dials-data + +on: + push: + branches: [ master ] + paths: ['packages/py-dials-data/**'] + pull_request: + branches: [ master ] + paths: ['packages/py-dials-data/**'] + +jobs: + package-test-py-dials-data: + runs-on: ubuntu-latest + container: + image: robertrosca/panosc-spack-centos7@sha256:5a4c73caa9808d931e4b98f7e0610231ba37ae89bc04398c8f84f14a6b2eb2af + steps: + - uses: actions/checkout@v2 + - run: | + source /opt/spack/share/spack/setup-env.sh + echo Spack version: $(spack --version) + echo Tests for package py-dials-data + spack repo add --scope=site ./ + spack-parallel-install-test py-dials-data + if spack test results | grep -q "FAILED"; then + exit 1 + else + exit 0 + fi diff --git a/.github/workflows/package-test.py-msgpack-numpy.yaml b/.github/workflows/package-test.py-msgpack-numpy.yaml new file mode 100644 index 0000000..d5bd6cd --- /dev/null +++ b/.github/workflows/package-test.py-msgpack-numpy.yaml @@ -0,0 +1,28 @@ +name: py-msgpack-numpy + +on: + push: + branches: [ master ] + paths: ['packages/py-msgpack-numpy/**'] + pull_request: + branches: [ master ] + paths: ['packages/py-msgpack-numpy/**'] + +jobs: + package-test-py-msgpack-numpy: + runs-on: ubuntu-latest + container: + image: robertrosca/panosc-spack-centos7@sha256:5a4c73caa9808d931e4b98f7e0610231ba37ae89bc04398c8f84f14a6b2eb2af + steps: + - uses: actions/checkout@v2 + - run: | + source /opt/spack/share/spack/setup-env.sh + echo Spack version: $(spack --version) + echo Tests for package py-msgpack-numpy + spack repo add --scope=site ./ + spack-parallel-install-test py-msgpack-numpy + if spack test results | grep -q "FAILED"; then + exit 1 + else + exit 0 + fi diff --git a/.github/workflows/package-test.py-numexpr.yaml b/.github/workflows/package-test.py-numexpr.yaml new file mode 100644 index 0000000..63b89ac --- /dev/null +++ b/.github/workflows/package-test.py-numexpr.yaml @@ -0,0 +1,28 @@ +name: py-numexpr + +on: + push: + branches: [ master ] + paths: ['packages/py-numexpr/**'] + pull_request: + branches: [ master ] + paths: ['packages/py-numexpr/**'] + +jobs: + package-test-py-numexpr: + runs-on: ubuntu-latest + container: + image: robertrosca/panosc-spack-centos7@sha256:5a4c73caa9808d931e4b98f7e0610231ba37ae89bc04398c8f84f14a6b2eb2af + steps: + - uses: actions/checkout@v2 + - run: | + source /opt/spack/share/spack/setup-env.sh + echo Spack version: $(spack --version) + echo Tests for package py-numexpr + spack repo add --scope=site ./ + spack-parallel-install-test py-numexpr + if spack test results | grep -q "FAILED"; then + exit 1 + else + exit 0 + fi diff --git a/.github/workflows/package-test.py-procrunner.yaml b/.github/workflows/package-test.py-procrunner.yaml new file mode 100644 index 0000000..9b9657a --- /dev/null +++ b/.github/workflows/package-test.py-procrunner.yaml @@ -0,0 +1,28 @@ +name: py-procrunner + +on: + push: + branches: [ master ] + paths: ['packages/py-procrunner/**'] + pull_request: + branches: [ master ] + paths: ['packages/py-procrunner/**'] + +jobs: + package-test-py-procrunner: + runs-on: ubuntu-latest + container: + image: robertrosca/panosc-spack-centos7@sha256:5a4c73caa9808d931e4b98f7e0610231ba37ae89bc04398c8f84f14a6b2eb2af + steps: + - uses: actions/checkout@v2 + - run: | + source /opt/spack/share/spack/setup-env.sh + echo Spack version: $(spack --version) + echo Tests for package py-procrunner + spack repo add --scope=site ./ + spack-parallel-install-test py-procrunner + if spack test results | grep -q "FAILED"; then + exit 1 + else + exit 0 + fi diff --git a/.github/workflows/package-test.py-pyfai.yaml b/.github/workflows/package-test.py-pyfai.yaml new file mode 100644 index 0000000..1f413f7 --- /dev/null +++ b/.github/workflows/package-test.py-pyfai.yaml @@ -0,0 +1,28 @@ +name: py-pyfai + +on: + push: + branches: [ master ] + paths: ['packages/py-pyfai/**'] + pull_request: + branches: [ master ] + paths: ['packages/py-pyfai/**'] + +jobs: + package-test-py-pyfai: + runs-on: ubuntu-latest + container: + image: robertrosca/panosc-spack-centos7@sha256:5a4c73caa9808d931e4b98f7e0610231ba37ae89bc04398c8f84f14a6b2eb2af + steps: + - uses: actions/checkout@v2 + - run: | + source /opt/spack/share/spack/setup-env.sh + echo Spack version: $(spack --version) + echo Tests for package py-pyfai + spack repo add --scope=site ./ + spack-parallel-install-test py-pyfai + if spack test results | grep -q "FAILED"; then + exit 1 + else + exit 0 + fi diff --git a/.github/workflows/package-test.py-silx.yaml b/.github/workflows/package-test.py-silx.yaml new file mode 100644 index 0000000..c945f9c --- /dev/null +++ b/.github/workflows/package-test.py-silx.yaml @@ -0,0 +1,28 @@ +name: py-silx + +on: + push: + branches: [ master ] + paths: ['packages/py-silx/**'] + pull_request: + branches: [ master ] + paths: ['packages/py-silx/**'] + +jobs: + package-test-py-silx: + runs-on: ubuntu-latest + container: + image: robertrosca/panosc-spack-centos7@sha256:5a4c73caa9808d931e4b98f7e0610231ba37ae89bc04398c8f84f14a6b2eb2af + steps: + - uses: actions/checkout@v2 + - run: | + source /opt/spack/share/spack/setup-env.sh + echo Spack version: $(spack --version) + echo Tests for package py-silx + spack repo add --scope=site ./ + spack-parallel-install-test py-silx + if spack test results | grep -q "FAILED"; then + exit 1 + else + exit 0 + fi diff --git a/.github/workflows/package-test.py-transformations.yaml b/.github/workflows/package-test.py-transformations.yaml new file mode 100644 index 0000000..dd6dea9 --- /dev/null +++ b/.github/workflows/package-test.py-transformations.yaml @@ -0,0 +1,28 @@ +name: py-transformations + +on: + push: + branches: [ master ] + paths: ['packages/py-transformations/**'] + pull_request: + branches: [ master ] + paths: ['packages/py-transformations/**'] + +jobs: + package-test-py-transformations: + runs-on: ubuntu-latest + container: + image: robertrosca/panosc-spack-centos7@sha256:5a4c73caa9808d931e4b98f7e0610231ba37ae89bc04398c8f84f14a6b2eb2af + steps: + - uses: actions/checkout@v2 + - run: | + source /opt/spack/share/spack/setup-env.sh + echo Spack version: $(spack --version) + echo Tests for package py-transformations + spack repo add --scope=site ./ + spack-parallel-install-test py-transformations + if spack test results | grep -q "FAILED"; then + exit 1 + else + exit 0 + fi From e09f7149029f6b1943f5114e5be24f478223b9e1 Mon Sep 17 00:00:00 2001 From: Robert Rosca <32569096+RobertRosca@users.noreply.github.com> Date: Wed, 24 Mar 2021 14:49:03 +0100 Subject: [PATCH 50/94] Fix pytest call --- packages/py-extra-data/package.py | 2 +- packages/py-extra-geom/package.py | 9 +++++---- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/packages/py-extra-data/package.py b/packages/py-extra-data/package.py index 265cc8d..87bc38b 100644 --- a/packages/py-extra-data/package.py +++ b/packages/py-extra-data/package.py @@ -61,7 +61,7 @@ def test(self): # `setup.py test` should not be used as: # - `python3 -m pytest -v` should be ran instead # - the builtin `test` method runs before `install` is finished - pytest(self) + self.pytest() def pytest(self): with working_dir('.'): diff --git a/packages/py-extra-geom/package.py b/packages/py-extra-geom/package.py index 8e4b08d..66d14dd 100644 --- a/packages/py-extra-geom/package.py +++ b/packages/py-extra-geom/package.py @@ -60,11 +60,12 @@ class PyExtraGeom(PythonPackage): depends_on('py-pytest-cov', type='test') depends_on('py-testpath', type='test') - def build_test(self): - pass + def test(self): + # `setup.py test` should not be used as: + # - `python3 -m pytest -v` should be ran instead + # - the builtin `test` method runs before `install` is finished + self.pytest() - @run_after('install') - @on_package_attributes(run_tests=True) def pytest(self): with working_dir('.'): prefix = self.spec.prefix From d591205f07bc3ff9beab0ceca054136feb53174e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julian=20H=C3=B6rsch?= <75368027+julianhoersch@users.noreply.github.com> Date: Wed, 31 Mar 2021 10:42:28 +0200 Subject: [PATCH 51/94] Changed type of numpy dependency Changed from 'build' to 'build' and 'test' --- packages/py-transformations/package.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/py-transformations/package.py b/packages/py-transformations/package.py index 4717886..8eafb28 100644 --- a/packages/py-transformations/package.py +++ b/packages/py-transformations/package.py @@ -47,7 +47,7 @@ class PyTransformations(PythonPackage): # added implicity by the PythonPackage class. depends_on('python@3.6:', type=('build', 'run')) depends_on('py-setuptools@18.0:', type='build') - depends_on('py-numpy@1.14.5:') + depends_on('py-numpy@1.14.5:' type=('build', 'test')) # test dependencies depends_on('py-coverage@:4.9', type='test') From 5d28b3ae3c6ad4b608c26fa4f002373ca83a1249 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julian=20H=C3=B6rsch?= <75368027+julianhoersch@users.noreply.github.com> Date: Wed, 31 Mar 2021 11:01:45 +0200 Subject: [PATCH 52/94] Fix syntax error --- packages/py-transformations/package.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/py-transformations/package.py b/packages/py-transformations/package.py index 8eafb28..d29c3e6 100644 --- a/packages/py-transformations/package.py +++ b/packages/py-transformations/package.py @@ -47,7 +47,7 @@ class PyTransformations(PythonPackage): # added implicity by the PythonPackage class. depends_on('python@3.6:', type=('build', 'run')) depends_on('py-setuptools@18.0:', type='build') - depends_on('py-numpy@1.14.5:' type=('build', 'test')) + depends_on('py-numpy@1.14.5:', type=('build', 'test')) # test dependencies depends_on('py-coverage@:4.9', type='test') From 38ba3254db26f91a4e4aa054a1949659e8d7dec4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julian=20H=C3=B6rsch?= <75368027+julianhoersch@users.noreply.github.com> Date: Wed, 31 Mar 2021 11:49:32 +0200 Subject: [PATCH 53/94] Added pytest --- packages/py-transformations/package.py | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/packages/py-transformations/package.py b/packages/py-transformations/package.py index d29c3e6..2f39164 100644 --- a/packages/py-transformations/package.py +++ b/packages/py-transformations/package.py @@ -47,13 +47,26 @@ class PyTransformations(PythonPackage): # added implicity by the PythonPackage class. depends_on('python@3.6:', type=('build', 'run')) depends_on('py-setuptools@18.0:', type='build') - depends_on('py-numpy@1.14.5:', type=('build', 'test')) + depends_on('py-numpy@1.14.5:') # test dependencies depends_on('py-coverage@:4.9', type='test') depends_on('py-pytest', type='test') depends_on('py-pytest-cov', type='test') depends_on('py-testpath', type='test') + + def test(self): + # `setup.py test` should not be used as: + # - `python3 -m pytest -v` should be ran instead + # - the builtin `test` method runs before `install` is finished + self.pytest() + + def pytest(self): + with working_dir('.'): + prefix = self.spec.prefix + # Add bin to path here, as tests also check entrypoints + env['PATH'] = env['PATH']+":"+prefix+"/bin" + python3('-m', 'pytest', '-v') def build_args(self, spec, prefix): # FIXME: Add arguments other than --prefix From c72d41e121de18156d8466f6ffc0caeb4c8711b4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julian=20H=C3=B6rsch?= <75368027+julianhoersch@users.noreply.github.com> Date: Wed, 31 Mar 2021 11:59:04 +0200 Subject: [PATCH 54/94] Corrected syntax error --- packages/py-transformations/package.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/py-transformations/package.py b/packages/py-transformations/package.py index 2f39164..564e3e1 100644 --- a/packages/py-transformations/package.py +++ b/packages/py-transformations/package.py @@ -56,10 +56,10 @@ class PyTransformations(PythonPackage): depends_on('py-testpath', type='test') def test(self): - # `setup.py test` should not be used as: - # - `python3 -m pytest -v` should be ran instead - # - the builtin `test` method runs before `install` is finished - self.pytest() + # `setup.py test` should not be used as: + # - `python3 -m pytest -v` should be ran instead + # - the builtin `test` method runs before `install` is finished + self.pytest() def pytest(self): with working_dir('.'): From f07e81becbb1224791433a42a0ae86585398bfeb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julian=20H=C3=B6rsch?= <75368027+julianhoersch@users.noreply.github.com> Date: Wed, 31 Mar 2021 13:05:57 +0200 Subject: [PATCH 55/94] Added pytest --- packages/py-fabio/package.py | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/packages/py-fabio/package.py b/packages/py-fabio/package.py index 77dfeb0..0df5e0f 100644 --- a/packages/py-fabio/package.py +++ b/packages/py-fabio/package.py @@ -54,6 +54,19 @@ class PyFabio(PythonPackage): depends_on('py-pytest', type='test') depends_on('py-pytest-cov', type='test') depends_on('py-testpath', type='test') + + def test(self): + # `setup.py test` should not be used as: + # - `python3 -m pytest -v` should be ran instead + # - the builtin `test` method runs before `install` is finished + self.pytest() + + def pytest(self): + with working_dir('.'): + prefix = self.spec.prefix + # Add bin to path here, as tests also check entrypoints + env['PATH'] = env['PATH']+":"+prefix+"/bin" + python3('-m', 'pytest', '-v') def build_args(self, spec, prefix): # FIXME: Add arguments other than --prefix From 4b8cfc724dc2007cacd68dc7c2552ebf25628d6e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julian=20H=C3=B6rsch?= <75368027+julianhoersch@users.noreply.github.com> Date: Wed, 31 Mar 2021 13:06:14 +0200 Subject: [PATCH 56/94] Added py-fabio --- .docker/opt/spack/etc/spack/spack.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/.docker/opt/spack/etc/spack/spack.yaml b/.docker/opt/spack/etc/spack/spack.yaml index 41bf095..743d7c2 100644 --- a/.docker/opt/spack/etc/spack/spack.yaml +++ b/.docker/opt/spack/etc/spack/spack.yaml @@ -14,4 +14,5 @@ spack: - py-procrunner - py-silx - py-transformations + - py-fabio view: False From e256379b27915f4a15b77fc306d485ad99a3624a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julian=20H=C3=B6rsch?= <75368027+julianhoersch@users.noreply.github.com> Date: Wed, 31 Mar 2021 13:09:14 +0200 Subject: [PATCH 57/94] Added pytest to py-numexpr --- packages/py-numexpr/package.py | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/packages/py-numexpr/package.py b/packages/py-numexpr/package.py index f426870..1c3c30a 100644 --- a/packages/py-numexpr/package.py +++ b/packages/py-numexpr/package.py @@ -66,7 +66,20 @@ class PyNumexpr(PythonPackage): depends_on('py-pytest', type='test') depends_on('py-pytest-cov', type='test') depends_on('py-testpath', type='test') + + def test(self): + # `setup.py test` should not be used as: + # - `python3 -m pytest -v` should be ran instead + # - the builtin `test` method runs before `install` is finished + self.pytest() + def pytest(self): + with working_dir('.'): + prefix = self.spec.prefix + # Add bin to path here, as tests also check entrypoints + env['PATH'] = env['PATH']+":"+prefix+"/bin" + python3('-m', 'pytest', '-v') + def build_args(self, spec, prefix): # FIXME: Add arguments other than --prefix # FIXME: If not needed delete this function From 33b4f8dc063e9952ff0e31fec5546e56cbc608e3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julian=20H=C3=B6rsch?= <75368027+julianhoersch@users.noreply.github.com> Date: Wed, 31 Mar 2021 13:10:50 +0200 Subject: [PATCH 58/94] Added pytest to py-silx --- packages/py-silx/package.py | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/packages/py-silx/package.py b/packages/py-silx/package.py index 1afb9fb..75fd545 100644 --- a/packages/py-silx/package.py +++ b/packages/py-silx/package.py @@ -69,6 +69,19 @@ class PySilx(PythonPackage): depends_on('py-pytest', type='test') depends_on('py-pytest-cov', type='test') depends_on('py-testpath', type='test') + + def test(self): + # `setup.py test` should not be used as: + # - `python3 -m pytest -v` should be ran instead + # - the builtin `test` method runs before `install` is finished + self.pytest() + + def pytest(self): + with working_dir('.'): + prefix = self.spec.prefix + # Add bin to path here, as tests also check entrypoints + env['PATH'] = env['PATH']+":"+prefix+"/bin" + python3('-m', 'pytest', '-v') def build_args(self, spec, prefix): # FIXME: Add arguments other than --prefix From 80cfaebb7ee50d7d3baf05d585534fca461a6ee9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julian=20H=C3=B6rsch?= <75368027+julianhoersch@users.noreply.github.com> Date: Wed, 31 Mar 2021 13:14:16 +0200 Subject: [PATCH 59/94] Change python to python3 Try to fix errors during testing --- packages/py-extra-geom/package.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/py-extra-geom/package.py b/packages/py-extra-geom/package.py index 66d14dd..6abe24d 100644 --- a/packages/py-extra-geom/package.py +++ b/packages/py-extra-geom/package.py @@ -71,7 +71,7 @@ def pytest(self): prefix = self.spec.prefix # Add bin to path here, as tests also check entrypoints env['PATH'] = env['PATH']+":"+prefix+"/bin" - python('-m', 'pytest', '-v') + python3('-m', 'pytest', '-v') def build_args(self, spec, prefix): # FIXME: Add arguments other than --prefix From 2c26d0d3b27fa4aee0db00d1daf26ab196fc9890 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julian=20H=C3=B6rsch?= <75368027+julianhoersch@users.noreply.github.com> Date: Wed, 31 Mar 2021 13:15:39 +0200 Subject: [PATCH 60/94] Change python to python3 in py-extra-data Trying to fix errors during CI testing --- packages/py-extra-data/package.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/py-extra-data/package.py b/packages/py-extra-data/package.py index 87bc38b..2f19b69 100644 --- a/packages/py-extra-data/package.py +++ b/packages/py-extra-data/package.py @@ -68,7 +68,7 @@ def pytest(self): prefix = self.spec.prefix # Add bin to path here, as tests also check entrypoints env['PATH'] = env['PATH']+":"+prefix+"/bin" - python('-m', 'pytest', '-v') + python3('-m', 'pytest', '-v') def build_args(self, spec, prefix): # FIXME: Add arguments other than --prefix From 421a39ac7762d21f6747a0f7d7f415417c8b276b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julian=20H=C3=B6rsch?= <75368027+julianhoersch@users.noreply.github.com> Date: Wed, 31 Mar 2021 14:09:16 +0200 Subject: [PATCH 61/94] Changed test method to doctest Using the test method defined in the transformations.py source code. --- packages/py-transformations/package.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/py-transformations/package.py b/packages/py-transformations/package.py index 564e3e1..f37cce1 100644 --- a/packages/py-transformations/package.py +++ b/packages/py-transformations/package.py @@ -66,8 +66,8 @@ def pytest(self): prefix = self.spec.prefix # Add bin to path here, as tests also check entrypoints env['PATH'] = env['PATH']+":"+prefix+"/bin" - python3('-m', 'pytest', '-v') - + python3('-m', 'doctest.testmod()', '-v') + def build_args(self, spec, prefix): # FIXME: Add arguments other than --prefix # FIXME: If not needed delete this function From 66c3de6a3d7acc199dabf7352c0b67b9c9df11b8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julian=20H=C3=B6rsch?= <75368027+julianhoersch@users.noreply.github.com> Date: Wed, 31 Mar 2021 14:28:31 +0200 Subject: [PATCH 62/94] Changed test method to custom Changed 'pytest' to the test method defined in the silx package 'silx.test.run_tests()' --- packages/py-silx/package.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/py-silx/package.py b/packages/py-silx/package.py index 75fd545..9eed881 100644 --- a/packages/py-silx/package.py +++ b/packages/py-silx/package.py @@ -81,7 +81,7 @@ def pytest(self): prefix = self.spec.prefix # Add bin to path here, as tests also check entrypoints env['PATH'] = env['PATH']+":"+prefix+"/bin" - python3('-m', 'pytest', '-v') + python3('-m', 'silx.test.run_tests()', '-v') def build_args(self, spec, prefix): # FIXME: Add arguments other than --prefix From 3952a351adaf517fe4d4941f416c06a94ea7d6e0 Mon Sep 17 00:00:00 2001 From: Julian Michael Hoersch Date: Wed, 7 Apr 2021 09:18:59 +0200 Subject: [PATCH 63/94] Undo python3 changes --- packages/py-extra-data/package.py | 2 +- packages/py-extra-geom/package.py | 2 +- packages/py-fabio/package.py | 2 +- packages/py-numexpr/package.py | 2 +- packages/py-silx/package.py | 2 +- packages/py-transformations/package.py | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) diff --git a/packages/py-extra-data/package.py b/packages/py-extra-data/package.py index 2f19b69..87bc38b 100644 --- a/packages/py-extra-data/package.py +++ b/packages/py-extra-data/package.py @@ -68,7 +68,7 @@ def pytest(self): prefix = self.spec.prefix # Add bin to path here, as tests also check entrypoints env['PATH'] = env['PATH']+":"+prefix+"/bin" - python3('-m', 'pytest', '-v') + python('-m', 'pytest', '-v') def build_args(self, spec, prefix): # FIXME: Add arguments other than --prefix diff --git a/packages/py-extra-geom/package.py b/packages/py-extra-geom/package.py index 6abe24d..66d14dd 100644 --- a/packages/py-extra-geom/package.py +++ b/packages/py-extra-geom/package.py @@ -71,7 +71,7 @@ def pytest(self): prefix = self.spec.prefix # Add bin to path here, as tests also check entrypoints env['PATH'] = env['PATH']+":"+prefix+"/bin" - python3('-m', 'pytest', '-v') + python('-m', 'pytest', '-v') def build_args(self, spec, prefix): # FIXME: Add arguments other than --prefix diff --git a/packages/py-fabio/package.py b/packages/py-fabio/package.py index 0df5e0f..69f304c 100644 --- a/packages/py-fabio/package.py +++ b/packages/py-fabio/package.py @@ -66,7 +66,7 @@ def pytest(self): prefix = self.spec.prefix # Add bin to path here, as tests also check entrypoints env['PATH'] = env['PATH']+":"+prefix+"/bin" - python3('-m', 'pytest', '-v') + python('-m', 'pytest', '-v') def build_args(self, spec, prefix): # FIXME: Add arguments other than --prefix diff --git a/packages/py-numexpr/package.py b/packages/py-numexpr/package.py index 1c3c30a..cd10f88 100644 --- a/packages/py-numexpr/package.py +++ b/packages/py-numexpr/package.py @@ -78,7 +78,7 @@ def pytest(self): prefix = self.spec.prefix # Add bin to path here, as tests also check entrypoints env['PATH'] = env['PATH']+":"+prefix+"/bin" - python3('-m', 'pytest', '-v') + python('-m', 'pytest', '-v') def build_args(self, spec, prefix): # FIXME: Add arguments other than --prefix diff --git a/packages/py-silx/package.py b/packages/py-silx/package.py index 9eed881..7a1bf74 100644 --- a/packages/py-silx/package.py +++ b/packages/py-silx/package.py @@ -81,7 +81,7 @@ def pytest(self): prefix = self.spec.prefix # Add bin to path here, as tests also check entrypoints env['PATH'] = env['PATH']+":"+prefix+"/bin" - python3('-m', 'silx.test.run_tests()', '-v') + python('-m', 'silx.test.run_tests()', '-v') def build_args(self, spec, prefix): # FIXME: Add arguments other than --prefix diff --git a/packages/py-transformations/package.py b/packages/py-transformations/package.py index f37cce1..0edae66 100644 --- a/packages/py-transformations/package.py +++ b/packages/py-transformations/package.py @@ -66,7 +66,7 @@ def pytest(self): prefix = self.spec.prefix # Add bin to path here, as tests also check entrypoints env['PATH'] = env['PATH']+":"+prefix+"/bin" - python3('-m', 'doctest.testmod()', '-v') + python('-m', 'doctest.testmod()', '-v') def build_args(self, spec, prefix): # FIXME: Add arguments other than --prefix From 25e9867a43eca3ef02066499dfe5d9f3f4fda469 Mon Sep 17 00:00:00 2001 From: Julian Michael Hoersch Date: Wed, 7 Apr 2021 11:32:54 +0200 Subject: [PATCH 64/94] added install_time_test_callbacks --- packages/py-dials-data/package.py | 2 ++ packages/py-extra-data/package.py | 2 ++ packages/py-extra-geom/package.py | 2 ++ packages/py-fabio/package.py | 4 +++- packages/py-numexpr/package.py | 4 +++- packages/py-silx/package.py | 4 +++- 6 files changed, 15 insertions(+), 3 deletions(-) diff --git a/packages/py-dials-data/package.py b/packages/py-dials-data/package.py index 48da5e7..bab3c5b 100644 --- a/packages/py-dials-data/package.py +++ b/packages/py-dials-data/package.py @@ -63,6 +63,8 @@ class PyDialsData(PythonPackage): depends_on('py-pytest-cov', type='test') depends_on('py-testpath', type='test') + install_time_test_callbacks = ['import_module_test'] + def build_args(self, spec, prefix): # FIXME: Add arguments other than --prefix # FIXME: If not needed delete this function diff --git a/packages/py-extra-data/package.py b/packages/py-extra-data/package.py index 87bc38b..3d5b478 100644 --- a/packages/py-extra-data/package.py +++ b/packages/py-extra-data/package.py @@ -57,6 +57,8 @@ class PyExtraData(PythonPackage): depends_on('py-pytest-cov', type='test') depends_on('py-testpath', type='test') + install_time_test_callbacks = ['import_module_test'] + def test(self): # `setup.py test` should not be used as: # - `python3 -m pytest -v` should be ran instead diff --git a/packages/py-extra-geom/package.py b/packages/py-extra-geom/package.py index 66d14dd..48ba10f 100644 --- a/packages/py-extra-geom/package.py +++ b/packages/py-extra-geom/package.py @@ -60,6 +60,8 @@ class PyExtraGeom(PythonPackage): depends_on('py-pytest-cov', type='test') depends_on('py-testpath', type='test') + install_time_test_callbacks = ['import_module_test'] + def test(self): # `setup.py test` should not be used as: # - `python3 -m pytest -v` should be ran instead diff --git a/packages/py-fabio/package.py b/packages/py-fabio/package.py index 69f304c..4f064ae 100644 --- a/packages/py-fabio/package.py +++ b/packages/py-fabio/package.py @@ -54,7 +54,9 @@ class PyFabio(PythonPackage): depends_on('py-pytest', type='test') depends_on('py-pytest-cov', type='test') depends_on('py-testpath', type='test') - + + install_time_test_callbacks = ['import_module_test'] + def test(self): # `setup.py test` should not be used as: # - `python3 -m pytest -v` should be ran instead diff --git a/packages/py-numexpr/package.py b/packages/py-numexpr/package.py index cd10f88..7124d58 100644 --- a/packages/py-numexpr/package.py +++ b/packages/py-numexpr/package.py @@ -66,7 +66,9 @@ class PyNumexpr(PythonPackage): depends_on('py-pytest', type='test') depends_on('py-pytest-cov', type='test') depends_on('py-testpath', type='test') - + + install_time_test_callbacks = ['import_module_test'] + def test(self): # `setup.py test` should not be used as: # - `python3 -m pytest -v` should be ran instead diff --git a/packages/py-silx/package.py b/packages/py-silx/package.py index 7a1bf74..b1157d7 100644 --- a/packages/py-silx/package.py +++ b/packages/py-silx/package.py @@ -69,7 +69,9 @@ class PySilx(PythonPackage): depends_on('py-pytest', type='test') depends_on('py-pytest-cov', type='test') depends_on('py-testpath', type='test') - + + install_time_test_callbacks = ['import_module_test'] + def test(self): # `setup.py test` should not be used as: # - `python3 -m pytest -v` should be ran instead From bed59dfaa4d46bd74b05e92435ef5dba075a99ee Mon Sep 17 00:00:00 2001 From: Julian Michael Hoersch Date: Wed, 7 Apr 2021 14:12:57 +0200 Subject: [PATCH 65/94] Generated workflow for py-fabio --- .github/workflows/package-test.py-fabio.yaml | 28 ++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 .github/workflows/package-test.py-fabio.yaml diff --git a/.github/workflows/package-test.py-fabio.yaml b/.github/workflows/package-test.py-fabio.yaml new file mode 100644 index 0000000..afc3474 --- /dev/null +++ b/.github/workflows/package-test.py-fabio.yaml @@ -0,0 +1,28 @@ +name: py-fabio + +on: + push: + branches: [ master ] + paths: ['packages/py-fabio/**'] + pull_request: + branches: [ master ] + paths: ['packages/py-fabio/**'] + +jobs: + package-test-py-fabio: + runs-on: ubuntu-latest + container: + image: robertrosca/panosc-spack-centos7@sha256:5a4c73caa9808d931e4b98f7e0610231ba37ae89bc04398c8f84f14a6b2eb2af + steps: + - uses: actions/checkout@v2 + - run: | + source /opt/spack/share/spack/setup-env.sh + echo Spack version: $(spack --version) + echo Tests for package py-fabio + spack repo add --scope=site ./ + spack-parallel-install-test py-fabio + if spack test results | grep -q "FAILED"; then + exit 1 + else + exit 0 + fi From e99d225e3e8a564feac4335c034bb8ca200607d2 Mon Sep 17 00:00:00 2001 From: Julian Michael Hoersch Date: Wed, 7 Apr 2021 14:58:10 +0200 Subject: [PATCH 66/94] removed pytest --- packages/py-fabio/package.py | 13 ------------- 1 file changed, 13 deletions(-) diff --git a/packages/py-fabio/package.py b/packages/py-fabio/package.py index 4f064ae..2b9cafc 100644 --- a/packages/py-fabio/package.py +++ b/packages/py-fabio/package.py @@ -57,19 +57,6 @@ class PyFabio(PythonPackage): install_time_test_callbacks = ['import_module_test'] - def test(self): - # `setup.py test` should not be used as: - # - `python3 -m pytest -v` should be ran instead - # - the builtin `test` method runs before `install` is finished - self.pytest() - - def pytest(self): - with working_dir('.'): - prefix = self.spec.prefix - # Add bin to path here, as tests also check entrypoints - env['PATH'] = env['PATH']+":"+prefix+"/bin" - python('-m', 'pytest', '-v') - def build_args(self, spec, prefix): # FIXME: Add arguments other than --prefix # FIXME: If not needed delete this function From c1416197c43ce6f516b6eed7f27af626e841d6be Mon Sep 17 00:00:00 2001 From: Julian Michael Hoersch Date: Wed, 7 Apr 2021 15:02:20 +0200 Subject: [PATCH 67/94] removed pytest --- packages/py-numexpr/package.py | 13 ------------- packages/py-silx/package.py | 13 ------------- packages/py-transformations/package.py | 13 ------------- 3 files changed, 39 deletions(-) diff --git a/packages/py-numexpr/package.py b/packages/py-numexpr/package.py index 7124d58..a85ff95 100644 --- a/packages/py-numexpr/package.py +++ b/packages/py-numexpr/package.py @@ -68,19 +68,6 @@ class PyNumexpr(PythonPackage): depends_on('py-testpath', type='test') install_time_test_callbacks = ['import_module_test'] - - def test(self): - # `setup.py test` should not be used as: - # - `python3 -m pytest -v` should be ran instead - # - the builtin `test` method runs before `install` is finished - self.pytest() - - def pytest(self): - with working_dir('.'): - prefix = self.spec.prefix - # Add bin to path here, as tests also check entrypoints - env['PATH'] = env['PATH']+":"+prefix+"/bin" - python('-m', 'pytest', '-v') def build_args(self, spec, prefix): # FIXME: Add arguments other than --prefix diff --git a/packages/py-silx/package.py b/packages/py-silx/package.py index b1157d7..72cfbd8 100644 --- a/packages/py-silx/package.py +++ b/packages/py-silx/package.py @@ -72,19 +72,6 @@ class PySilx(PythonPackage): install_time_test_callbacks = ['import_module_test'] - def test(self): - # `setup.py test` should not be used as: - # - `python3 -m pytest -v` should be ran instead - # - the builtin `test` method runs before `install` is finished - self.pytest() - - def pytest(self): - with working_dir('.'): - prefix = self.spec.prefix - # Add bin to path here, as tests also check entrypoints - env['PATH'] = env['PATH']+":"+prefix+"/bin" - python('-m', 'silx.test.run_tests()', '-v') - def build_args(self, spec, prefix): # FIXME: Add arguments other than --prefix # FIXME: If not needed delete this function diff --git a/packages/py-transformations/package.py b/packages/py-transformations/package.py index 0edae66..3bfd60d 100644 --- a/packages/py-transformations/package.py +++ b/packages/py-transformations/package.py @@ -54,19 +54,6 @@ class PyTransformations(PythonPackage): depends_on('py-pytest', type='test') depends_on('py-pytest-cov', type='test') depends_on('py-testpath', type='test') - - def test(self): - # `setup.py test` should not be used as: - # - `python3 -m pytest -v` should be ran instead - # - the builtin `test` method runs before `install` is finished - self.pytest() - - def pytest(self): - with working_dir('.'): - prefix = self.spec.prefix - # Add bin to path here, as tests also check entrypoints - env['PATH'] = env['PATH']+":"+prefix+"/bin" - python('-m', 'doctest.testmod()', '-v') def build_args(self, spec, prefix): # FIXME: Add arguments other than --prefix From 1dff8c6e0bede487f943f3178deb34285e1be00b Mon Sep 17 00:00:00 2001 From: Julian Michael Hoersch Date: Wed, 14 Apr 2021 13:58:01 +0200 Subject: [PATCH 68/94] added spack load {package} --- .github/template/package-test.template.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/template/package-test.template.yaml b/.github/template/package-test.template.yaml index 1b21cf6..3a1d170 100644 --- a/.github/template/package-test.template.yaml +++ b/.github/template/package-test.template.yaml @@ -20,6 +20,7 @@ jobs: echo Spack version: $(spack --version) echo Tests for package {PACKAGE} spack repo add --scope=site ./ + spack load {PACKAGE} spack-parallel-install-test {PACKAGE} if spack test results | grep -q "FAILED"; then exit 1 From 6382d0c5946bb16862746820f3518c2e184928e8 Mon Sep 17 00:00:00 2001 From: Julian Michael Hoersch Date: Wed, 14 Apr 2021 13:59:13 +0200 Subject: [PATCH 69/94] rerun workflow generation script --- .github/workflows/package-test.crystfel.yaml | 1 + .github/workflows/package-test.py-cfelpyutils.yaml | 1 + .github/workflows/package-test.py-dials-data.yaml | 1 + .github/workflows/package-test.py-extra-data.yaml | 1 + .github/workflows/package-test.py-extra-geom.yaml | 1 + .github/workflows/package-test.py-fabio.yaml | 1 + .github/workflows/package-test.py-karabo-bridge.yaml | 1 + .github/workflows/package-test.py-msgpack-numpy.yaml | 1 + .github/workflows/package-test.py-numexpr.yaml | 1 + .github/workflows/package-test.py-procrunner.yaml | 1 + .github/workflows/package-test.py-pyfai.yaml | 1 + .github/workflows/package-test.py-pyopengl.yaml | 1 + .github/workflows/package-test.py-silx.yaml | 1 + .github/workflows/package-test.py-transformations.yaml | 1 + 14 files changed, 14 insertions(+) diff --git a/.github/workflows/package-test.crystfel.yaml b/.github/workflows/package-test.crystfel.yaml index d13fb9b..a2345a5 100644 --- a/.github/workflows/package-test.crystfel.yaml +++ b/.github/workflows/package-test.crystfel.yaml @@ -20,6 +20,7 @@ jobs: echo Spack version: $(spack --version) echo Tests for package crystfel spack repo add --scope=site ./ + spack load crystfel spack-parallel-install-test crystfel if spack test results | grep -q "FAILED"; then exit 1 diff --git a/.github/workflows/package-test.py-cfelpyutils.yaml b/.github/workflows/package-test.py-cfelpyutils.yaml index 765cd91..f8c67c8 100644 --- a/.github/workflows/package-test.py-cfelpyutils.yaml +++ b/.github/workflows/package-test.py-cfelpyutils.yaml @@ -20,6 +20,7 @@ jobs: echo Spack version: $(spack --version) echo Tests for package py-cfelpyutils spack repo add --scope=site ./ + spack load py-cfelpyutils spack-parallel-install-test py-cfelpyutils if spack test results | grep -q "FAILED"; then exit 1 diff --git a/.github/workflows/package-test.py-dials-data.yaml b/.github/workflows/package-test.py-dials-data.yaml index 61fac09..83a8716 100644 --- a/.github/workflows/package-test.py-dials-data.yaml +++ b/.github/workflows/package-test.py-dials-data.yaml @@ -20,6 +20,7 @@ jobs: echo Spack version: $(spack --version) echo Tests for package py-dials-data spack repo add --scope=site ./ + spack load py-dials-data spack-parallel-install-test py-dials-data if spack test results | grep -q "FAILED"; then exit 1 diff --git a/.github/workflows/package-test.py-extra-data.yaml b/.github/workflows/package-test.py-extra-data.yaml index c01859c..bd2ab23 100644 --- a/.github/workflows/package-test.py-extra-data.yaml +++ b/.github/workflows/package-test.py-extra-data.yaml @@ -20,6 +20,7 @@ jobs: echo Spack version: $(spack --version) echo Tests for package py-extra-data spack repo add --scope=site ./ + spack load py-extra-data spack-parallel-install-test py-extra-data if spack test results | grep -q "FAILED"; then exit 1 diff --git a/.github/workflows/package-test.py-extra-geom.yaml b/.github/workflows/package-test.py-extra-geom.yaml index c8206ea..0a32eb6 100644 --- a/.github/workflows/package-test.py-extra-geom.yaml +++ b/.github/workflows/package-test.py-extra-geom.yaml @@ -20,6 +20,7 @@ jobs: echo Spack version: $(spack --version) echo Tests for package py-extra-geom spack repo add --scope=site ./ + spack load py-extra-geom spack-parallel-install-test py-extra-geom if spack test results | grep -q "FAILED"; then exit 1 diff --git a/.github/workflows/package-test.py-fabio.yaml b/.github/workflows/package-test.py-fabio.yaml index afc3474..8afa1e9 100644 --- a/.github/workflows/package-test.py-fabio.yaml +++ b/.github/workflows/package-test.py-fabio.yaml @@ -20,6 +20,7 @@ jobs: echo Spack version: $(spack --version) echo Tests for package py-fabio spack repo add --scope=site ./ + spack load py-fabio spack-parallel-install-test py-fabio if spack test results | grep -q "FAILED"; then exit 1 diff --git a/.github/workflows/package-test.py-karabo-bridge.yaml b/.github/workflows/package-test.py-karabo-bridge.yaml index 0f3182c..1630bdf 100644 --- a/.github/workflows/package-test.py-karabo-bridge.yaml +++ b/.github/workflows/package-test.py-karabo-bridge.yaml @@ -20,6 +20,7 @@ jobs: echo Spack version: $(spack --version) echo Tests for package py-karabo-bridge spack repo add --scope=site ./ + spack load py-karabo-bridge spack-parallel-install-test py-karabo-bridge if spack test results | grep -q "FAILED"; then exit 1 diff --git a/.github/workflows/package-test.py-msgpack-numpy.yaml b/.github/workflows/package-test.py-msgpack-numpy.yaml index d5bd6cd..c37f308 100644 --- a/.github/workflows/package-test.py-msgpack-numpy.yaml +++ b/.github/workflows/package-test.py-msgpack-numpy.yaml @@ -20,6 +20,7 @@ jobs: echo Spack version: $(spack --version) echo Tests for package py-msgpack-numpy spack repo add --scope=site ./ + spack load py-msgpack-numpy spack-parallel-install-test py-msgpack-numpy if spack test results | grep -q "FAILED"; then exit 1 diff --git a/.github/workflows/package-test.py-numexpr.yaml b/.github/workflows/package-test.py-numexpr.yaml index 63b89ac..e47c303 100644 --- a/.github/workflows/package-test.py-numexpr.yaml +++ b/.github/workflows/package-test.py-numexpr.yaml @@ -20,6 +20,7 @@ jobs: echo Spack version: $(spack --version) echo Tests for package py-numexpr spack repo add --scope=site ./ + spack load py-numexpr spack-parallel-install-test py-numexpr if spack test results | grep -q "FAILED"; then exit 1 diff --git a/.github/workflows/package-test.py-procrunner.yaml b/.github/workflows/package-test.py-procrunner.yaml index 9b9657a..41ed8ff 100644 --- a/.github/workflows/package-test.py-procrunner.yaml +++ b/.github/workflows/package-test.py-procrunner.yaml @@ -20,6 +20,7 @@ jobs: echo Spack version: $(spack --version) echo Tests for package py-procrunner spack repo add --scope=site ./ + spack load py-procrunner spack-parallel-install-test py-procrunner if spack test results | grep -q "FAILED"; then exit 1 diff --git a/.github/workflows/package-test.py-pyfai.yaml b/.github/workflows/package-test.py-pyfai.yaml index 1f413f7..d1f51f2 100644 --- a/.github/workflows/package-test.py-pyfai.yaml +++ b/.github/workflows/package-test.py-pyfai.yaml @@ -20,6 +20,7 @@ jobs: echo Spack version: $(spack --version) echo Tests for package py-pyfai spack repo add --scope=site ./ + spack load py-pyfai spack-parallel-install-test py-pyfai if spack test results | grep -q "FAILED"; then exit 1 diff --git a/.github/workflows/package-test.py-pyopengl.yaml b/.github/workflows/package-test.py-pyopengl.yaml index 0dd27be..aaecc29 100644 --- a/.github/workflows/package-test.py-pyopengl.yaml +++ b/.github/workflows/package-test.py-pyopengl.yaml @@ -20,6 +20,7 @@ jobs: echo Spack version: $(spack --version) echo Tests for package py-pyopengl spack repo add --scope=site ./ + spack load py-pyopengl spack-parallel-install-test py-pyopengl if spack test results | grep -q "FAILED"; then exit 1 diff --git a/.github/workflows/package-test.py-silx.yaml b/.github/workflows/package-test.py-silx.yaml index c945f9c..616ece8 100644 --- a/.github/workflows/package-test.py-silx.yaml +++ b/.github/workflows/package-test.py-silx.yaml @@ -20,6 +20,7 @@ jobs: echo Spack version: $(spack --version) echo Tests for package py-silx spack repo add --scope=site ./ + spack load py-silx spack-parallel-install-test py-silx if spack test results | grep -q "FAILED"; then exit 1 diff --git a/.github/workflows/package-test.py-transformations.yaml b/.github/workflows/package-test.py-transformations.yaml index dd6dea9..54c7362 100644 --- a/.github/workflows/package-test.py-transformations.yaml +++ b/.github/workflows/package-test.py-transformations.yaml @@ -20,6 +20,7 @@ jobs: echo Spack version: $(spack --version) echo Tests for package py-transformations spack repo add --scope=site ./ + spack load py-transformations spack-parallel-install-test py-transformations if spack test results | grep -q "FAILED"; then exit 1 From 0318158a6d92898f80457081887f9f98433ae767 Mon Sep 17 00:00:00 2001 From: Julian Michael Hoersch Date: Wed, 14 Apr 2021 14:31:01 +0200 Subject: [PATCH 70/94] test, added spack load py-numpy --- .github/workflows/package-test.py-numexpr.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/package-test.py-numexpr.yaml b/.github/workflows/package-test.py-numexpr.yaml index e47c303..7062ffd 100644 --- a/.github/workflows/package-test.py-numexpr.yaml +++ b/.github/workflows/package-test.py-numexpr.yaml @@ -20,7 +20,7 @@ jobs: echo Spack version: $(spack --version) echo Tests for package py-numexpr spack repo add --scope=site ./ - spack load py-numexpr + spack load py-numpy spack-parallel-install-test py-numexpr if spack test results | grep -q "FAILED"; then exit 1 From f3d190c176cb8c39ed2e4a9405a889925d801987 Mon Sep 17 00:00:00 2001 From: Julian Michael Hoersch Date: Wed, 21 Apr 2021 09:44:01 +0200 Subject: [PATCH 71/94] removed load {PACKAGE} --- .github/template/package-test.template.yaml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/template/package-test.template.yaml b/.github/template/package-test.template.yaml index 3a1d170..1b21cf6 100644 --- a/.github/template/package-test.template.yaml +++ b/.github/template/package-test.template.yaml @@ -20,7 +20,6 @@ jobs: echo Spack version: $(spack --version) echo Tests for package {PACKAGE} spack repo add --scope=site ./ - spack load {PACKAGE} spack-parallel-install-test {PACKAGE} if spack test results | grep -q "FAILED"; then exit 1 From 4d241dadb9834c74801f9ead53b1b5eeab60cda5 Mon Sep 17 00:00:00 2001 From: Julian Michael Hoersch Date: Wed, 21 Apr 2021 09:45:07 +0200 Subject: [PATCH 72/94] rerun workflow script --- .github/workflows/package-test.crystfel.yaml | 1 - .github/workflows/package-test.py-cfelpyutils.yaml | 1 - .github/workflows/package-test.py-dials-data.yaml | 1 - .github/workflows/package-test.py-extra-data.yaml | 1 - .github/workflows/package-test.py-extra-geom.yaml | 1 - .github/workflows/package-test.py-fabio.yaml | 1 - .github/workflows/package-test.py-karabo-bridge.yaml | 1 - .github/workflows/package-test.py-msgpack-numpy.yaml | 1 - .github/workflows/package-test.py-numexpr.yaml | 1 - .github/workflows/package-test.py-procrunner.yaml | 1 - .github/workflows/package-test.py-pyfai.yaml | 1 - .github/workflows/package-test.py-pyopengl.yaml | 1 - .github/workflows/package-test.py-silx.yaml | 1 - .github/workflows/package-test.py-transformations.yaml | 1 - 14 files changed, 14 deletions(-) diff --git a/.github/workflows/package-test.crystfel.yaml b/.github/workflows/package-test.crystfel.yaml index a2345a5..d13fb9b 100644 --- a/.github/workflows/package-test.crystfel.yaml +++ b/.github/workflows/package-test.crystfel.yaml @@ -20,7 +20,6 @@ jobs: echo Spack version: $(spack --version) echo Tests for package crystfel spack repo add --scope=site ./ - spack load crystfel spack-parallel-install-test crystfel if spack test results | grep -q "FAILED"; then exit 1 diff --git a/.github/workflows/package-test.py-cfelpyutils.yaml b/.github/workflows/package-test.py-cfelpyutils.yaml index f8c67c8..765cd91 100644 --- a/.github/workflows/package-test.py-cfelpyutils.yaml +++ b/.github/workflows/package-test.py-cfelpyutils.yaml @@ -20,7 +20,6 @@ jobs: echo Spack version: $(spack --version) echo Tests for package py-cfelpyutils spack repo add --scope=site ./ - spack load py-cfelpyutils spack-parallel-install-test py-cfelpyutils if spack test results | grep -q "FAILED"; then exit 1 diff --git a/.github/workflows/package-test.py-dials-data.yaml b/.github/workflows/package-test.py-dials-data.yaml index 83a8716..61fac09 100644 --- a/.github/workflows/package-test.py-dials-data.yaml +++ b/.github/workflows/package-test.py-dials-data.yaml @@ -20,7 +20,6 @@ jobs: echo Spack version: $(spack --version) echo Tests for package py-dials-data spack repo add --scope=site ./ - spack load py-dials-data spack-parallel-install-test py-dials-data if spack test results | grep -q "FAILED"; then exit 1 diff --git a/.github/workflows/package-test.py-extra-data.yaml b/.github/workflows/package-test.py-extra-data.yaml index bd2ab23..c01859c 100644 --- a/.github/workflows/package-test.py-extra-data.yaml +++ b/.github/workflows/package-test.py-extra-data.yaml @@ -20,7 +20,6 @@ jobs: echo Spack version: $(spack --version) echo Tests for package py-extra-data spack repo add --scope=site ./ - spack load py-extra-data spack-parallel-install-test py-extra-data if spack test results | grep -q "FAILED"; then exit 1 diff --git a/.github/workflows/package-test.py-extra-geom.yaml b/.github/workflows/package-test.py-extra-geom.yaml index 0a32eb6..c8206ea 100644 --- a/.github/workflows/package-test.py-extra-geom.yaml +++ b/.github/workflows/package-test.py-extra-geom.yaml @@ -20,7 +20,6 @@ jobs: echo Spack version: $(spack --version) echo Tests for package py-extra-geom spack repo add --scope=site ./ - spack load py-extra-geom spack-parallel-install-test py-extra-geom if spack test results | grep -q "FAILED"; then exit 1 diff --git a/.github/workflows/package-test.py-fabio.yaml b/.github/workflows/package-test.py-fabio.yaml index 8afa1e9..afc3474 100644 --- a/.github/workflows/package-test.py-fabio.yaml +++ b/.github/workflows/package-test.py-fabio.yaml @@ -20,7 +20,6 @@ jobs: echo Spack version: $(spack --version) echo Tests for package py-fabio spack repo add --scope=site ./ - spack load py-fabio spack-parallel-install-test py-fabio if spack test results | grep -q "FAILED"; then exit 1 diff --git a/.github/workflows/package-test.py-karabo-bridge.yaml b/.github/workflows/package-test.py-karabo-bridge.yaml index 1630bdf..0f3182c 100644 --- a/.github/workflows/package-test.py-karabo-bridge.yaml +++ b/.github/workflows/package-test.py-karabo-bridge.yaml @@ -20,7 +20,6 @@ jobs: echo Spack version: $(spack --version) echo Tests for package py-karabo-bridge spack repo add --scope=site ./ - spack load py-karabo-bridge spack-parallel-install-test py-karabo-bridge if spack test results | grep -q "FAILED"; then exit 1 diff --git a/.github/workflows/package-test.py-msgpack-numpy.yaml b/.github/workflows/package-test.py-msgpack-numpy.yaml index c37f308..d5bd6cd 100644 --- a/.github/workflows/package-test.py-msgpack-numpy.yaml +++ b/.github/workflows/package-test.py-msgpack-numpy.yaml @@ -20,7 +20,6 @@ jobs: echo Spack version: $(spack --version) echo Tests for package py-msgpack-numpy spack repo add --scope=site ./ - spack load py-msgpack-numpy spack-parallel-install-test py-msgpack-numpy if spack test results | grep -q "FAILED"; then exit 1 diff --git a/.github/workflows/package-test.py-numexpr.yaml b/.github/workflows/package-test.py-numexpr.yaml index 7062ffd..63b89ac 100644 --- a/.github/workflows/package-test.py-numexpr.yaml +++ b/.github/workflows/package-test.py-numexpr.yaml @@ -20,7 +20,6 @@ jobs: echo Spack version: $(spack --version) echo Tests for package py-numexpr spack repo add --scope=site ./ - spack load py-numpy spack-parallel-install-test py-numexpr if spack test results | grep -q "FAILED"; then exit 1 diff --git a/.github/workflows/package-test.py-procrunner.yaml b/.github/workflows/package-test.py-procrunner.yaml index 41ed8ff..9b9657a 100644 --- a/.github/workflows/package-test.py-procrunner.yaml +++ b/.github/workflows/package-test.py-procrunner.yaml @@ -20,7 +20,6 @@ jobs: echo Spack version: $(spack --version) echo Tests for package py-procrunner spack repo add --scope=site ./ - spack load py-procrunner spack-parallel-install-test py-procrunner if spack test results | grep -q "FAILED"; then exit 1 diff --git a/.github/workflows/package-test.py-pyfai.yaml b/.github/workflows/package-test.py-pyfai.yaml index d1f51f2..1f413f7 100644 --- a/.github/workflows/package-test.py-pyfai.yaml +++ b/.github/workflows/package-test.py-pyfai.yaml @@ -20,7 +20,6 @@ jobs: echo Spack version: $(spack --version) echo Tests for package py-pyfai spack repo add --scope=site ./ - spack load py-pyfai spack-parallel-install-test py-pyfai if spack test results | grep -q "FAILED"; then exit 1 diff --git a/.github/workflows/package-test.py-pyopengl.yaml b/.github/workflows/package-test.py-pyopengl.yaml index aaecc29..0dd27be 100644 --- a/.github/workflows/package-test.py-pyopengl.yaml +++ b/.github/workflows/package-test.py-pyopengl.yaml @@ -20,7 +20,6 @@ jobs: echo Spack version: $(spack --version) echo Tests for package py-pyopengl spack repo add --scope=site ./ - spack load py-pyopengl spack-parallel-install-test py-pyopengl if spack test results | grep -q "FAILED"; then exit 1 diff --git a/.github/workflows/package-test.py-silx.yaml b/.github/workflows/package-test.py-silx.yaml index 616ece8..c945f9c 100644 --- a/.github/workflows/package-test.py-silx.yaml +++ b/.github/workflows/package-test.py-silx.yaml @@ -20,7 +20,6 @@ jobs: echo Spack version: $(spack --version) echo Tests for package py-silx spack repo add --scope=site ./ - spack load py-silx spack-parallel-install-test py-silx if spack test results | grep -q "FAILED"; then exit 1 diff --git a/.github/workflows/package-test.py-transformations.yaml b/.github/workflows/package-test.py-transformations.yaml index 54c7362..dd6dea9 100644 --- a/.github/workflows/package-test.py-transformations.yaml +++ b/.github/workflows/package-test.py-transformations.yaml @@ -20,7 +20,6 @@ jobs: echo Spack version: $(spack --version) echo Tests for package py-transformations spack repo add --scope=site ./ - spack load py-transformations spack-parallel-install-test py-transformations if spack test results | grep -q "FAILED"; then exit 1 From 22e819d152c582fc2d15f297a11c6cea40a1c1f0 Mon Sep 17 00:00:00 2001 From: Julian Michael Hoersch Date: Wed, 21 Apr 2021 09:47:54 +0200 Subject: [PATCH 73/94] added spack load --- .docker/usr/bin/spack-parallel-install-test | 1 + 1 file changed, 1 insertion(+) diff --git a/.docker/usr/bin/spack-parallel-install-test b/.docker/usr/bin/spack-parallel-install-test index 5e9afac..0d6ffa3 100755 --- a/.docker/usr/bin/spack-parallel-install-test +++ b/.docker/usr/bin/spack-parallel-install-test @@ -8,6 +8,7 @@ done wait +spack load $@ spack test run $@ exit $? From e0afde86e8fb0bf6a0ea49f4eee601b4b4bb6961 Mon Sep 17 00:00:00 2001 From: Julian Michael Hoersch Date: Wed, 5 May 2021 10:19:44 +0200 Subject: [PATCH 74/94] Update SHA256 in extra-data from 1.2.0 to 1.3.0. --- packages/py-extra-data/test.py | 79 ++++++++++++++++++++++++++++++++++ 1 file changed, 79 insertions(+) create mode 100644 packages/py-extra-data/test.py diff --git a/packages/py-extra-data/test.py b/packages/py-extra-data/test.py new file mode 100644 index 0000000..e0097d4 --- /dev/null +++ b/packages/py-extra-data/test.py @@ -0,0 +1,79 @@ +# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other +# Spack Project Developers. See the top-level COPYRIGHT file for details. +# +# SPDX-License-Identifier: (Apache-2.0 OR MIT) + +# ---------------------------------------------------------------------------- +# If you submit this package back to Spack as a pull request, +# please first remove this boilerplate and all FIXME comments. +# +# This is a template package file for Spack. We've put "FIXME" +# next to all the things you'll want to change. Once you've handled +# them, you can save this file and test your package like this: +# +# spack install py-extra-data +# +# You can edit this file again by typing: +# +# spack edit py-extra-data +# +# See the Spack documentation for more information on packaging. +# ---------------------------------------------------------------------------- + +from spack import * + + +class PyExtraData(PythonPackage): + """Tools to read and analyse data from European XFEL.""" + + # FIXME: Add a proper url for your package's homepage here. + homepage = "https://github.com/European-XFEL/EXtra-data" + url = "https://github.com/European-XFEL/EXtra-data/archive/1.3.0.tar.gz" + + # FIXME: Add a list of GitHub accounts to + # notify when the package is updated. + maintainers = ['robertrosca'] + install_time_test_callbacks = ['import_module_test'] + + version('1.3.0', sha256='7150b0d7ec3ea97af9e0b81bd88aeddb0716e79b852c603a83f4f04ff65935ce') + version('1.2.0', sha256='bdb1da5469d314dc1c22cbbd1ecc6e1c9e0660bd1bada4f9a8efd97b3d8b1a0e') + + # FIXME: Add dependencies if required. + depends_on('python@3.6:', type=('build', 'run')) + depends_on('py-setuptools', type='build') + depends_on('py-fabio') # custom + depends_on('py-h5py@2.7.1:') + depends_on('py-karabo-bridge@0.6:') # custom + depends_on('py-matplotlib') + depends_on('py-numpy') + depends_on('py-pandas') + depends_on('py-scipy') + depends_on('py-xarray') + + depends_on('py-coverage', type='test') + depends_on('py-dask', type='test') + # depends_on ('py-nbval', type='test') # Doesn't seem to be needed? + depends_on('py-pytest', type='test') + depends_on('py-pytest-cov', type='test') + depends_on('py-testpath', type='test') + + install_time_test_callbacks = ['import_module_test'] + + def test(self): + # `setup.py test` should not be used as: + # - `python3 -m pytest -v` should be ran instead + # - the builtin `test` method runs before `install` is finished + self.pytest() + + def pytest(self): + with working_dir('.'): + prefix = self.spec.prefix + # Add bin to path here, as tests also check entrypoints + env['PATH'] = env['PATH']+":"+prefix+"/bin" + python('-m', 'pytest', '-v') + + def build_args(self, spec, prefix): + # FIXME: Add arguments other than --prefix + # FIXME: If not needed delete this function + args = [] + return args From f3a82dd399de4abc6750cc8f80e27464de303975 Mon Sep 17 00:00:00 2001 From: Julian Michael Hoersch Date: Wed, 5 May 2021 10:37:49 +0200 Subject: [PATCH 75/94] Update SHA256 in extra-data from 1.2.0 to 1.3.0 --- packages/py-extra-data/test.py | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/py-extra-data/test.py b/packages/py-extra-data/test.py index e0097d4..3f13078 100644 --- a/packages/py-extra-data/test.py +++ b/packages/py-extra-data/test.py @@ -35,6 +35,7 @@ class PyExtraData(PythonPackage): maintainers = ['robertrosca'] install_time_test_callbacks = ['import_module_test'] + version('1.3.0', sha256='7150b0d7ec3ea97af9e0b81bd88aeddb0716e79b852c603a83f4f04ff65935ce') version('1.3.0', sha256='7150b0d7ec3ea97af9e0b81bd88aeddb0716e79b852c603a83f4f04ff65935ce') version('1.2.0', sha256='bdb1da5469d314dc1c22cbbd1ecc6e1c9e0660bd1bada4f9a8efd97b3d8b1a0e') From d2adeadd4d58cc3dbe28a2ec2bb239c41e7b12b3 Mon Sep 17 00:00:00 2001 From: Julian Michael Hoersch Date: Wed, 5 May 2021 10:39:06 +0200 Subject: [PATCH 76/94] Update SHA256 in extra-data from 1.2.0 to 1.3.0 --- packages/py-extra-data/test.py | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/py-extra-data/test.py b/packages/py-extra-data/test.py index 3f13078..672ed96 100644 --- a/packages/py-extra-data/test.py +++ b/packages/py-extra-data/test.py @@ -35,6 +35,7 @@ class PyExtraData(PythonPackage): maintainers = ['robertrosca'] install_time_test_callbacks = ['import_module_test'] + version('1.3.0', sha256='7150b0d7ec3ea97af9e0b81bd88aeddb0716e79b852c603a83f4f04ff65935ce') version('1.3.0', sha256='7150b0d7ec3ea97af9e0b81bd88aeddb0716e79b852c603a83f4f04ff65935ce') version('1.3.0', sha256='7150b0d7ec3ea97af9e0b81bd88aeddb0716e79b852c603a83f4f04ff65935ce') version('1.2.0', sha256='bdb1da5469d314dc1c22cbbd1ecc6e1c9e0660bd1bada4f9a8efd97b3d8b1a0e') From 92bc432166b1f5bad2162fe9512e2a12ee14ba6a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julian=20H=C3=B6rsch?= <75368027+julianhoersch@users.noreply.github.com> Date: Wed, 5 May 2021 12:25:50 +0200 Subject: [PATCH 77/94] Delete test.py pushed by accident --- packages/py-extra-data/test.py | 81 ---------------------------------- 1 file changed, 81 deletions(-) delete mode 100644 packages/py-extra-data/test.py diff --git a/packages/py-extra-data/test.py b/packages/py-extra-data/test.py deleted file mode 100644 index 672ed96..0000000 --- a/packages/py-extra-data/test.py +++ /dev/null @@ -1,81 +0,0 @@ -# Copyright 2013-2020 Lawrence Livermore National Security, LLC and other -# Spack Project Developers. See the top-level COPYRIGHT file for details. -# -# SPDX-License-Identifier: (Apache-2.0 OR MIT) - -# ---------------------------------------------------------------------------- -# If you submit this package back to Spack as a pull request, -# please first remove this boilerplate and all FIXME comments. -# -# This is a template package file for Spack. We've put "FIXME" -# next to all the things you'll want to change. Once you've handled -# them, you can save this file and test your package like this: -# -# spack install py-extra-data -# -# You can edit this file again by typing: -# -# spack edit py-extra-data -# -# See the Spack documentation for more information on packaging. -# ---------------------------------------------------------------------------- - -from spack import * - - -class PyExtraData(PythonPackage): - """Tools to read and analyse data from European XFEL.""" - - # FIXME: Add a proper url for your package's homepage here. - homepage = "https://github.com/European-XFEL/EXtra-data" - url = "https://github.com/European-XFEL/EXtra-data/archive/1.3.0.tar.gz" - - # FIXME: Add a list of GitHub accounts to - # notify when the package is updated. - maintainers = ['robertrosca'] - install_time_test_callbacks = ['import_module_test'] - - version('1.3.0', sha256='7150b0d7ec3ea97af9e0b81bd88aeddb0716e79b852c603a83f4f04ff65935ce') - version('1.3.0', sha256='7150b0d7ec3ea97af9e0b81bd88aeddb0716e79b852c603a83f4f04ff65935ce') - version('1.3.0', sha256='7150b0d7ec3ea97af9e0b81bd88aeddb0716e79b852c603a83f4f04ff65935ce') - version('1.2.0', sha256='bdb1da5469d314dc1c22cbbd1ecc6e1c9e0660bd1bada4f9a8efd97b3d8b1a0e') - - # FIXME: Add dependencies if required. - depends_on('python@3.6:', type=('build', 'run')) - depends_on('py-setuptools', type='build') - depends_on('py-fabio') # custom - depends_on('py-h5py@2.7.1:') - depends_on('py-karabo-bridge@0.6:') # custom - depends_on('py-matplotlib') - depends_on('py-numpy') - depends_on('py-pandas') - depends_on('py-scipy') - depends_on('py-xarray') - - depends_on('py-coverage', type='test') - depends_on('py-dask', type='test') - # depends_on ('py-nbval', type='test') # Doesn't seem to be needed? - depends_on('py-pytest', type='test') - depends_on('py-pytest-cov', type='test') - depends_on('py-testpath', type='test') - - install_time_test_callbacks = ['import_module_test'] - - def test(self): - # `setup.py test` should not be used as: - # - `python3 -m pytest -v` should be ran instead - # - the builtin `test` method runs before `install` is finished - self.pytest() - - def pytest(self): - with working_dir('.'): - prefix = self.spec.prefix - # Add bin to path here, as tests also check entrypoints - env['PATH'] = env['PATH']+":"+prefix+"/bin" - python('-m', 'pytest', '-v') - - def build_args(self, spec, prefix): - # FIXME: Add arguments other than --prefix - # FIXME: If not needed delete this function - args = [] - return args From b0b45b03e5d1c5ea7ad0b26ed301500f5481a556 Mon Sep 17 00:00:00 2001 From: Julian Michael Hoersch Date: Wed, 26 Jan 2022 09:17:57 +0100 Subject: [PATCH 78/94] add versions change dependecy types since test were failing otherwise --- packages/py-extra-data/package.py | 62 +++++++++++++------------------ 1 file changed, 26 insertions(+), 36 deletions(-) diff --git a/packages/py-extra-data/package.py b/packages/py-extra-data/package.py index 3d5b478..4880539 100644 --- a/packages/py-extra-data/package.py +++ b/packages/py-extra-data/package.py @@ -3,22 +3,6 @@ # # SPDX-License-Identifier: (Apache-2.0 OR MIT) -# ---------------------------------------------------------------------------- -# If you submit this package back to Spack as a pull request, -# please first remove this boilerplate and all FIXME comments. -# -# This is a template package file for Spack. We've put "FIXME" -# next to all the things you'll want to change. Once you've handled -# them, you can save this file and test your package like this: -# -# spack install py-extra-data -# -# You can edit this file again by typing: -# -# spack edit py-extra-data -# -# See the Spack documentation for more information on packaging. -# ---------------------------------------------------------------------------- from spack import * @@ -26,38 +10,50 @@ class PyExtraData(PythonPackage): """Tools to read and analyse data from European XFEL.""" - # FIXME: Add a proper url for your package's homepage here. homepage = "https://github.com/European-XFEL/EXtra-data" url = "https://github.com/European-XFEL/EXtra-data/archive/1.2.0.tar.gz" - # FIXME: Add a list of GitHub accounts to - # notify when the package is updated. maintainers = ['robertrosca'] - install_time_test_callbacks = ['import_module_test'] + version('1.9.0', sha256='5170d2a9ecfdc6a635e46c8acc8a7d2557345484ec505ffc54cb26f41c96214b') + version('1.8.1', sha256='950d1d570d94a764a9f9d76bfdf387e6034fb550117346513a7585016781b58f') + version('1.8.0', sha256='39e1fc539a96cd447049d87b751929123f88c5a003edeb873e9bae6107986c5f') + version('1.7.0', sha256='2f3c988e721b4dc93805b9e31f1e9bb7541aa8b783b81ccfc1ccd415c8d07cbe') + version('1.6.1', sha256='74a51dfd8ac0b73d867854a45c33d47934e37b508b61053eda5ae62af1ec9d16') + version('1.6.0', sha256='741fa876d952936d89458dabce9104c92a9af98f89f9263fe66bb7aee5bf246d') + version('1.5.0', sha256='2ca13478c75ef24793e67f66e7cbbc0946c22d39f01450c78f75be0f0dca34c4') + version('1.4.1', sha256='b48205caf89562990dfb4413dca03be1f8856932c7ad052b356bf6bfe68036f5') + version('1.4.0', sha256='bc4e8b5d5a295ea28b4b913d028026314c740df6684e99f0bf17d5ddbb32d67f') version('1.3.0', sha256='7150b0d7ec3ea97af9e0b81bd88aeddb0716e79b852c603a83f4f04ff65935ce') version('1.2.0', sha256='bdb1da5469d314dc1c22cbbd1ecc6e1c9e0660bd1bada4f9a8efd97b3d8b1a0e') - # FIXME: Add dependencies if required. + depends_on('python@3.6:', type=('build', 'run')) depends_on('py-setuptools', type='build') depends_on('py-fabio') # custom depends_on('py-h5py@2.7.1:') depends_on('py-karabo-bridge@0.6:') # custom + depends_on('py-psutil') depends_on('py-matplotlib') depends_on('py-numpy') depends_on('py-pandas') depends_on('py-scipy') depends_on('py-xarray') - depends_on('py-coverage', type='test') - depends_on('py-dask', type='test') + # by using type=test I can't run test run py-extra-data + # 2 tests concerning test_serve_files fail if it is run like + # install '--test=root' if 'test run' is run tests pass + depends_on('py-coverage')#, type='test') + depends_on('py-dask')#, type='test') # depends_on ('py-nbval', type='test') # Doesn't seem to be needed? - depends_on('py-pytest', type='test') - depends_on('py-pytest-cov', type='test') - depends_on('py-testpath', type='test') + depends_on('py-pytest')#, type='test') + depends_on('py-pytest-cov')#, type='test') + depends_on('py-testpath')#, type='test') - install_time_test_callbacks = ['import_module_test'] + # not implemented error + # install_time_test_callbacks = ['import_module_test'] + # use test + install_time_test_callbacks = ['test'] def test(self): # `setup.py test` should not be used as: @@ -66,14 +62,8 @@ def test(self): self.pytest() def pytest(self): - with working_dir('.'): - prefix = self.spec.prefix + prefix = self.spec.prefix + with working_dir(prefix): # Add bin to path here, as tests also check entrypoints - env['PATH'] = env['PATH']+":"+prefix+"/bin" + env['PATH'] = env['PATH'] + ":" + prefix + "/bin" python('-m', 'pytest', '-v') - - def build_args(self, spec, prefix): - # FIXME: Add arguments other than --prefix - # FIXME: If not needed delete this function - args = [] - return args From 9b64b45f79fe358beb64fbca0e468d8546d8f49c Mon Sep 17 00:00:00 2001 From: Julian Michael Hoersch Date: Wed, 26 Jan 2022 10:48:07 +0100 Subject: [PATCH 79/94] added versions and test dependencies --- packages/py-extra-geom/package.py | 49 +++++++++++-------------------- 1 file changed, 17 insertions(+), 32 deletions(-) diff --git a/packages/py-extra-geom/package.py b/packages/py-extra-geom/package.py index 48ba10f..7833bcd 100644 --- a/packages/py-extra-geom/package.py +++ b/packages/py-extra-geom/package.py @@ -3,38 +3,22 @@ # # SPDX-License-Identifier: (Apache-2.0 OR MIT) -# ---------------------------------------------------------------------------- -# If you submit this package back to Spack as a pull request, -# please first remove this boilerplate and all FIXME comments. -# -# This is a template package file for Spack. We've put "FIXME" -# next to all the things you'll want to change. Once you've handled -# them, you can save this file and test your package like this: -# -# spack install py-extra-geom -# -# You can edit this file again by typing: -# -# spack edit py-extra-geom -# -# See the Spack documentation for more information on packaging. -# ---------------------------------------------------------------------------- - from spack import * class PyExtraGeom(PythonPackage): """Tools to work with EuXFEL detector geometry and assemble detector images.""" - # FIXME: Add a proper url for your package's homepage here. homepage = "https://github.com/European-XFEL/EXtra-geom" url = "https://github.com/European-XFEL/EXtra-geom/archive/0.9.0.tar.gz" - # FIXME: Add a list of GitHub accounts to - # notify when the package is updated. maintainers = ['github_user1', 'github_user2'] - install_time_test_callbacks = ['import_module_test'] + version('1.6.0', sha256='6433a37a26d71a8b15aba79ddb3ab536dea924ff8afa50c021689746c94b586d') + version('1.5.0', sha256='7b793245c662c67f311fb7ca2e8ad4bf56b39ad9cc67c17308fbe4e146734092') + version('1.4.0', sha256='3c1b5b64bad9ab12accf3c70c00fd396563cb69d2b0415a5373f21a1dedd44e1') + version('1.3.0', sha256='adb5dc06a15ec31ddce3c4df0ce938cc533ec4f815bfdc40e50afb04244eb73e') + version('1.2.0', sha256='e97907cacd52b21a6d7a3a7d5bafd357e02a76af4ded9b94cbd3df7ff7b45ca7') version('1.1.1', sha256='1131e1fdffe09266178e7df34425bc87e972c5a77c0081b54442cbf36a8eb0d1') version('1.1.0', sha256='c59a0301ccab81b541717e406e1b97844eb450c10df5e031b417b87987d90deb') version('1.0.0', sha256='5d3d6c275b4f3b734005d5eb6ec1fb77361fdf386ae1e973859c7deb7e2dea81') @@ -46,21 +30,27 @@ class PyExtraGeom(PythonPackage): version('0.6.1', sha256='a31943bdef21c740c94cbeebde8ec9f1348f5596c28ed639eae5603ef1074775') version('0.6.0', sha256='17ca1939117016f6337c5f4051c4222ca47192c6fc004835e85e782b4ee8653f') - # FIXME: Add dependencies if required. depends_on('python@3.6:', type=('build', 'run')) depends_on('py-setuptools', type='build') - depends_on('py-cfelpyutils@0.92:') + depends_on('py-cfelpyutils@0.92:1') # excludes > 2.0 depends_on('py-h5py@2.7.1:') depends_on('py-matplotlib') depends_on('py-numpy') depends_on('py-scipy') + # test dependencies depends_on('py-coverage@:4.9', type='test') depends_on('py-pytest', type='test') depends_on('py-pytest-cov', type='test') depends_on('py-testpath', type='test') + depends_on('py-xarray', type='test') + depends_on('py-extra-data', type='test') + # depends_on('py-nbval', type='test') # not available, tests pass without - install_time_test_callbacks = ['import_module_test'] + # not implemented error + # install_time_test_callbacks = ['import_module_test'] + # use + install_time_test_callbacks = ['test'] def test(self): # `setup.py test` should not be used as: @@ -69,14 +59,9 @@ def test(self): self.pytest() def pytest(self): - with working_dir('.'): - prefix = self.spec.prefix + + prefix = self.spec.prefix + with working_dir(prefix): # Add bin to path here, as tests also check entrypoints env['PATH'] = env['PATH']+":"+prefix+"/bin" python('-m', 'pytest', '-v') - - def build_args(self, spec, prefix): - # FIXME: Add arguments other than --prefix - # FIXME: If not needed delete this function - args = [] - return args From 444ce1ef97031a56068762608d4d948653e68402 Mon Sep 17 00:00:00 2001 From: Julian Michael Hoersch Date: Wed, 26 Jan 2022 11:46:37 +0100 Subject: [PATCH 80/94] update version and pytest --- packages/py-karabo-bridge/package.py | 40 ++++++++++------------------ 1 file changed, 14 insertions(+), 26 deletions(-) diff --git a/packages/py-karabo-bridge/package.py b/packages/py-karabo-bridge/package.py index 461520a..e4e5bc5 100644 --- a/packages/py-karabo-bridge/package.py +++ b/packages/py-karabo-bridge/package.py @@ -3,23 +3,6 @@ # # SPDX-License-Identifier: (Apache-2.0 OR MIT) -# ---------------------------------------------------------------------------- -# If you submit this package back to Spack as a pull request, -# please first remove this boilerplate and all FIXME comments. -# -# This is a template package file for Spack. We've put "FIXME" -# next to all the things you'll want to change. Once you've handled -# them, you can save this file and test your package like this: -# -# spack install py-karabo-bridge -# -# You can edit this file again by typing: -# -# spack edit py-karabo-bridge -# -# See the Spack documentation for more information on packaging. -# ---------------------------------------------------------------------------- - from spack import * @@ -29,20 +12,17 @@ class PyKaraboBridge(PythonPackage): server is included to allow testing code without a connection to a real Karabo server..""" - # FIXME: Add a proper url for your package's homepage here. homepage = "https://github.com/European-XFEL/karabo-bridge-py" url = "https://github.com/European-XFEL/karabo-bridge-py/archive/0.6.0.tar.gz" - # FIXME: Add a list of GitHub accounts to - # notify when the package is updated. maintainers = ['robertrosca'] + version('0.6.1', sha256='a41d7bf473d8dbaf57071aa5b9bf6b5ddbdb3545d653224385cc7a8895008e54') version('0.6.0', sha256='8873e922995837520070ce61049036faef7f5f257d8307310081184c84971479') version('0.5.0', sha256='d9410231f9f42dd33e6dcaf3bc03aa14f3d56c801fcdc6875a9ebe79653312c6') version('0.4.0', sha256='1cb4a0056bc630b0cbc17c3268bd5dd1fa8ccbe2af71bebe6a8e57da31a424cf') version('0.3.0', sha256='5ff6bd7f90461e5dcca93ab22e96417b44527a32662a93963a046c264d22635c') - # FIXME: Add dependencies if required. depends_on('python@3.6:', type=('build', 'run')) depends_on('py-setuptools', type='build') depends_on('py-msgpack@0.5.4:') @@ -57,8 +37,16 @@ class PyKaraboBridge(PythonPackage): depends_on('py-testpath', type=('test')) - def build_args(self, spec, prefix): - # FIXME: Add arguments other than --prefix - # FIXME: If not needed delete this function - args = [] - return args + def test(self): + # `setup.py test` should not be used as: + # - `python3 -m pytest -v` should be ran instead + # - the builtin `test` method runs before `install` is finished + self.pytest() + + + def pytest(self): + prefix = self.spec.prefix + with working_dir(prefix): + # Add bin to path here, as tests also check entrypoints + env['PATH'] = env['PATH']+":"+prefix+"/bin" + python('-m', 'pytest', '-v') From 0e90f9bc4782a4211921da1862a5736d2f278b7b Mon Sep 17 00:00:00 2001 From: Julian Michael Hoersch Date: Wed, 26 Jan 2022 11:52:03 +0100 Subject: [PATCH 81/94] removed boilerplate and comments --- packages/py-cfelpyutils/package.py | 26 -------------------------- 1 file changed, 26 deletions(-) diff --git a/packages/py-cfelpyutils/package.py b/packages/py-cfelpyutils/package.py index 58450a6..0038192 100644 --- a/packages/py-cfelpyutils/package.py +++ b/packages/py-cfelpyutils/package.py @@ -3,23 +3,6 @@ # # SPDX-License-Identifier: (Apache-2.0 OR MIT) -# ---------------------------------------------------------------------------- -# If you submit this package back to Spack as a pull request, -# please first remove this boilerplate and all FIXME comments. -# -# This is a template package file for Spack. We've put "FIXME" -# next to all the things you'll want to change. Once you've handled -# them, you can save this file and test your package like this: -# -# spack install py-cfelpyutils -# -# You can edit this file again by typing: -# -# spack edit py-cfelpyutils -# -# See the Spack documentation for more information on packaging. -# ---------------------------------------------------------------------------- - from spack import * @@ -28,24 +11,15 @@ class PyCfelpyutils(PythonPackage): several software projects developed at the Center For Free Electron Laser Science (CFEL) in Hamburg.""" - # FIXME: Add a proper url for your package's homepage here. homepage = "https://github.com/ondateam/cfelpyutils" url = "https://github.com/ondateam/cfelpyutils/archive/1.0.0.tar.gz" - # FIXME: Add a list of GitHub accounts to - # notify when the package is updated. maintainers = ['robertrosca'] version('1.0.0', sha256='303c02b28191dc612c27c8420c2878503e56bde309975db676249784111e9ee1') - # FIXME: Add dependencies if required. depends_on('python@3.6:', type=('build', 'run')) depends_on('py-setuptools', type='build') depends_on('py-numpy') depends_on('py-future') - def build_args(self, spec, prefix): - # FIXME: Add arguments other than --prefix - # FIXME: If not needed delete this function - args = [] - return args From 1eb9c2b8641cda28d2b59020bb6574d908efca18 Mon Sep 17 00:00:00 2001 From: Julian Michael Hoersch Date: Wed, 2 Feb 2022 08:57:59 +0100 Subject: [PATCH 82/94] update crystel package --- packages/crystfel/package.py | 86 +++++++++++++++++++++++------------- 1 file changed, 55 insertions(+), 31 deletions(-) diff --git a/packages/crystfel/package.py b/packages/crystfel/package.py index ac5c197..ab413c2 100644 --- a/packages/crystfel/package.py +++ b/packages/crystfel/package.py @@ -3,23 +3,6 @@ # # SPDX-License-Identifier: (Apache-2.0 OR MIT) -# ---------------------------------------------------------------------------- -# If you submit this package back to Spack as a pull request, -# please first remove this boilerplate and all FIXME comments. -# -# This is a template package file for Spack. We've put "FIXME" -# next to all the things you'll want to change. Once you've handled -# them, you can save this file and test your package like this: -# -# spack install crystfel -# -# You can edit this file again by typing: -# -# spack edit crystfel -# -# See the Spack documentation for more information on packaging. -# ---------------------------------------------------------------------------- - from spack import * @@ -29,34 +12,75 @@ class Crystfel(CMakePackage): not always) performed using an X-ray Free-Electron Laser. """ - # FIXME: Add a proper url for your package's homepage here. - homepage = "https://www.example.com" - url = "https://www.desy.de/~twhite/crystfel/crystfel-0.9.1.tar.gz" + homepage = "https://www.desy.de/~twhite/crystfel/index.html" + url = "https://www.desy.de/~twhite/crystfel/crystfel-0.10.0.tar.gz" + - # FIXME: Add a list of GitHub accounts to - # notify when the package is updated. - # maintainers = ['github_user1', 'github_user2'] + maintainers = ['RobertRosca', 'julianhoersch'] + + version('0.10.1', + sha256='e9e88ae41080beb8a7e2942c262aec130470b46fb2b79324558745aade2b2d45') + # from version 0.10.0 also supports meson build system cmake is depreceated + version('0.10.0', + sha256='cfb3c99328b9ecc02548d82ddc2feb76d19b49c82e46e655f0d2f83d4e3cfa9a') version('0.9.1', sha256='1eaf757eb093385fbc16298168e683a5b3ef572800b8b22072886a76143b70be') version('0.9.0', sha256='1aeb6b8ddee598aa57475a53add36dab176b74cdea5f08808c96837aff40e3f8') - version('0.8.0', '99d34906d6677f5a10f5e9f782485d8c', - url='http://www.desy.de/~twhite/crystfel/crystfel-0.8.0.tar.gz') + version('0.8.0', + sha256='6139b818079a16aa4da90344d4f413810e741c321013a1d6980c01f5d79c7b3a') # Versions 0.7.0 and under used AutoTools, 0.8.0 and above use CMake # not too sure how to handle the change in build tools in spack + + # see https://spack.readthedocs.io/en/latest/build_systems/multiplepackage.html + # to create a package that supports earlier versions + # version('0.7.0', 'b064bf00f1de96ff23febe3337c4ac1d', # url='http://www.desy.de/~twhite/crystfel/crystfel-0.7.0.tar.gz') # version('0.6.3', # sha256='69a96b77b4b395b3827c2ac5c4aa2496427077ff31e23244d0a24837a23d5d6a') - # FIXME: Add dependencies if required. - # depends_on('foo') - + # required dependecies depends_on('cmake@3.12:') - depends_on('bison@2.6:') - depends_on('zlib@1.2.3:') - depends_on('hdf5@1.10:') + depends_on('zlib@1.2.3.5:') + depends_on('hdf5+hl@1.10:') depends_on('gsl') depends_on('flex') + + # optional dependencies, will work without them but with reduced features + # https://gitlab.desy.de/thomas.white/crystfel/-/blob/master/INSTALL.md + # GUI + depends_on('gtkplus@3.12:3.24') + depends_on('cairo@1.2:') + depends_on('pango@1.0:') + depends_on('gdk-pixbuf+x11@2.0:2.41') # seems to have a plroblem in spack + # with x11 an meson from 2.42 + + # depends_on('libccp4') # not available # required for MTZ import/export + depends_on('fftw@3.0:') # required for asdf indexing + depends_on('fdip') # for peakFinder9 peak search algorithm + depends_on('ncurses') # for integration diagnostics: indexamajig --int-diag + + depends_on('xgandalf') # for xgandalf indexing + # depends_on('pinkindexer') https://stash.desy.de/users/gevorkov/repos/pinkindexer/browse + #for indexing electron or wide bandwidth diffraction patterns + depends_on('libzmq') #for online data streaming + depends_on('msgpack-c', when='@0.10.1:')# for online data streaming + depends_on('slurm', when='@0.10.1:') #required for submitting jobs via GUI + + # for CMake packages run 'spack install --test=root crystfel' + # 'spack test run crystfel' after install does not work. + install_time_test_callbacks = ['import_module_test'] + + # one GPU test fails + # Setting up GPU... + # Couldn't get platform IDs: -1001 + # Couldn't set up GPU. + # + # Test time = 0.05 sec + # ---------------------------------------------------------- + # Test Failed. + # "gpu_sim_check" end time: Jan 19 09:34 CET + # "gpu_sim_check" time elapsed: 00:00:00 \ No newline at end of file From 51fdf527f2a67be0a6c8d198ec2b19af312f7219 Mon Sep 17 00:00:00 2001 From: Julian Michael Hoersch Date: Wed, 2 Feb 2022 09:44:47 +0100 Subject: [PATCH 83/94] add new version, update test and clean package file --- packages/py-fabio/package.py | 37 ++++++++++++++++++------------------ 1 file changed, 19 insertions(+), 18 deletions(-) diff --git a/packages/py-fabio/package.py b/packages/py-fabio/package.py index 2b9cafc..23dd5dc 100644 --- a/packages/py-fabio/package.py +++ b/packages/py-fabio/package.py @@ -31,34 +31,35 @@ class PyFabio(PythonPackage): interface to their headers (as a python dictionary) and datasets (as a numpy ndarray of integers or floats).""" - # FIXME: Add a proper url for your package's homepage here. homepage = "https://github.com/silx-kit/fabio" - url = "https://github.com/silx-kit/fabio/archive/v0.9.0.tar.gz" + url = "https://github.com/silx-kit/fabio/archive/refs/tags/v0.12.0.tar.gz" - # FIXME: Add a list of GitHub accounts to - # notify when the package is updated. - maintainers = ['RobertRosca'] + maintainers = ['RobertRosca', 'julianhoersch'] + version('0.13.0', sha256='aae2bf104d563da879cb420cbbd19a96583a364791fd29bbc0190b45ca977dbc') + version('0.12.0', sha256='654c19792b46a87815215d3254c98bb562394c24301fe8dc85391bb4c6cc2aee') version('0.10.2', sha256='597d7afe414da9b16afeb91439b669d268c8bcfefed1fe400b9a26d93ae58243') version('0.10.1', sha256='0c89c5afdead668beae8e79948a6eae7c1d4767c33acde96d68bfe3a2d7dcd96') version('0.10.0', sha256='b194fdb10f8293dd4b0000ff813c24b1a5f3a46bd0f61f82c5a7d1e8e96d462f') version('0.9.0', sha256='5f3971b7d8a22410eab6eedb5725271304708feaa54a0fcb941ea54d3aa394d9') - # FIXME: Add dependencies if required. + # dependencies depends_on('python@3.6:', type=('build', 'run')) depends_on('py-setuptools', type='build') depends_on('py-numpy') - - #test dependencies - depends_on('py-coverage@:4.9', type='test') - depends_on('py-pytest', type='test') - depends_on('py-pytest-cov', type='test') - depends_on('py-testpath', type='test') - install_time_test_callbacks = ['import_module_test'] + depends_on('py-lxml@4.6.3:') + # depends_on('py-cython') # tests pass without + depends_on('py-pillow+tiff') + depends_on('py-h5py') + depends_on('py-hdf5plugin') - def build_args(self, spec, prefix): - # FIXME: Add arguments other than --prefix - # FIXME: If not needed delete this function - args = [] - return args + # dependencies for building docs + # depends_on('py-sphinx') + # depends_on('py-sphinxcontrib-programoutput') + # depends_on('py-sphinx-rtd-theme') + + def test(self): + prefix = self.spec.prefix + with working_dir(prefix): + python('-c', 'import fabio; fabio.tests()') From 4241f76322574b9371a87a828160f862e91c23ef Mon Sep 17 00:00:00 2001 From: Julian Michael Hoersch Date: Wed, 2 Feb 2022 11:51:24 +0100 Subject: [PATCH 84/94] add versions, and remove unnecessary dependencies --- packages/py-pyfai/package.py | 79 ++++++++++++++++-------------------- 1 file changed, 36 insertions(+), 43 deletions(-) diff --git a/packages/py-pyfai/package.py b/packages/py-pyfai/package.py index c8e151a..6bece66 100644 --- a/packages/py-pyfai/package.py +++ b/packages/py-pyfai/package.py @@ -3,73 +3,66 @@ # # SPDX-License-Identifier: (Apache-2.0 OR MIT) -# ---------------------------------------------------------------------------- -# If you submit this package back to Spack as a pull request, -# please first remove this boilerplate and all FIXME comments. -# -# This is a template package file for Spack. We've put "FIXME" -# next to all the things you'll want to change. Once you've handled -# them, you can save this file and test your package like this: -# -# spack install py-pyfai -# -# You can edit this file again by typing: -# -# spack edit py-pyfai -# -# See the Spack documentation for more information on packaging. -# ---------------------------------------------------------------------------- from spack import * class PyPyfai(PythonPackage): - """PyFAI is an azimuthal integration library that tries to be fast (as fast as C and even more - using OpenCL and GPU). It is based on histogramming of the 2theta/Q positions of each (center of) - pixel weighted by the intensity of each pixel, but parallel version uses a SparseMatrix-DenseVector - multiplication. Neighboring output bins get also a contribution of pixels next to the border thanks - to pixel splitting. Finally pyFAI provides also tools to calibrate the experimental setup using + """PyFAI is an azimuthal integration library that tries to be fast (as fast as C and even more + using OpenCL and GPU). It is based on histogramming of the 2theta/Q positions of each (center of) + pixel weighted by the intensity of each pixel, but parallel version uses a SparseMatrix-DenseVector + multiplication. Neighboring output bins get also a contribution of pixels next to the border thanks + to pixel splitting. Finally pyFAI provides also tools to calibrate the experimental setup using Debye-Scherrer rings of a reference compound.""" - # FIXME: Add a proper url for your package's homepage here. homepage = "https://github.com/silx-kit/pyFAI" url = "https://github.com/silx-kit/pyFAI/archive/v0.19.0.tar.gz" - # FIXME: Add a list of GitHub accounts to - # notify when the package is updated. maintainers = ['RobertRosca', 'julianhoersch'] + version('0.21.0', sha256='b057de00754485748f3cd441d849e99e52917d9169ba06743b76e04efe694f3b') version('0.20.0', sha256='f39f56ff58868ab7f12d6fa5c7bf6b7d111b7fa687f3816c5d8d11cb75fa82f0') version('0.19.0', sha256='1e329d2bdd6f4ddc4c70460bb0b994a33b6885bff810b11a7871d83ef8756281') version('0.18.0', sha256='4637eaa40a5a3b10c97ef0fea9e6f935c4ae93eb8df48643d567db7796cb3ef8') version('0.17.1', sha256='e4c2b53c71b638d5f532f5e557a87a79d1a3ab46552e4b5ad0f071e996f3974d') - # FIXME: Add dependencies if required. - # dependencies for install and setup + # dependencies for install and setup depends_on('python@3.6:', type=('build', 'run')) depends_on('py-setuptools', type='build') + depends_on('py-numpy') depends_on('py-fabio@0.5:') depends_on('py-matplotlib') depends_on('py-scipy') depends_on('py-numexpr') - depends_on('py-silx@0.10:') + depends_on('py-silx@0.10:', when='@:0.20.0') + depends_on('py-silx@0.15.2:', when='@0.21.0:') + + # other dependencies in requirements.txt and not in setup.py + # tests run without + # depends_on('py-cython') + # depends_on('py-wheel') + # depends_on('py-transformations') + # depends_on('py-nbsphinx') + + # gui dependencies + depends_on('py-pyqt5') + depends_on('py-hdf5plugin') + depends_on('py-h5py') + depends_on('py-pyopengl') + # opencl + depends_on('py-pyopencl') - # other dependencies - depends_on('py-cython') - depends_on('py-wheel') - depends_on('py-transformations') - #depends_on('py-nbsphinx') commited to spack but not in spack repo yet - # gui dependencies (not all available) - #depends_on('py-pyqt5') - #depends_on('py-hdf5plugin') - #depends_on('py-h5py') - #depends_on('py-pyopengl') - #depends_on('py-pyopencl') + def test(self): + prefix = self.spec.prefix + # options to disable tests + # WITH_QT_TEST=False to disable graphical tests + # PYFAI_OPENCL=False to disable OpenCL tests. + # PYFAI_LOW_MEM: set to True to skip all tests >100Mb + # WITH_GL_TEST=False to disable tests using OpenGL - def build_args(self, spec, prefix): - # FIXME: Add arguments other than --prefix - # FIXME: If not needed delete this function - args = [] - return args + # disable test option + # pyFAI.tests.utils.test_options.WITH_QT_TEST=False + with working_dir(prefix): + python('-c', 'import pyFAI; pyFAI.tests()') From 7b3428ab80fa967b1e22ee30bffcfb31d01fedb0 Mon Sep 17 00:00:00 2001 From: Julian Michael Hoersch Date: Wed, 9 Feb 2022 12:55:56 +0100 Subject: [PATCH 85/94] added version, changed test directroy --- packages/py-hdf5plugin/package.py | 59 +++++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) create mode 100644 packages/py-hdf5plugin/package.py diff --git a/packages/py-hdf5plugin/package.py b/packages/py-hdf5plugin/package.py new file mode 100644 index 0000000..28807ca --- /dev/null +++ b/packages/py-hdf5plugin/package.py @@ -0,0 +1,59 @@ +# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other +# Spack Project Developers. See the top-level COPYRIGHT file for details. +# +# SPDX-License-Identifier: (Apache-2.0 OR MIT) + + +from spack import * + + +class PyHdf5plugin(PythonPackage): + """This module provides HDF5 compression filters (namely: blosc, bitshuffle, + lz4, FCIDECOMP, ZFP, zstd) and registers them to the HDF5 library used by + h5py. Supported operating systems: Linux, Windows, macOS. Supported versions + of Python: >= 3.4 hdf5plugin provides a generic way to enable the use of the + provided HDF5 compression filters with h5py that can be installed via pip or + conda. Alternatives to install HDF5 compression filters are: system-wide + installation on Linux or other conda packages: blosc-hdf5-plugin, hdf5-lz4.""" + + homepage = "https://github.com/silx-kit/hdf5plugin" + url = "https://github.com/silx-kit/hdf5plugin/archive/refs/tags/v3.1.1.tar.gz" + + maintainers = ['RobertRosca', 'julianhoersch'] + + version('3.2.0', sha256='9aee017ad1bb13bb1ec54358126399d6f2957cd2a7a5c977b991f07c5fd67db5') + version('3.1.1', sha256='3a5bfa1f03b903aaf8d089f51bdceba711319bd61240055613a6a6b9e77d0540') + version('3.0.0', sha256='b6048482692f3e98f6b015cee1b0c992ca972a07a211682eb1f66becd50db952') + version('2.3.2b0', sha256='f65788755121a4bfb9a1825950e152794f8ccb7c0a7c85683e0f14351cc1e12f') + version('2.3.2', sha256='7012f93aabbdcd9be6179070a5b00fc6899eecffac9b598b9835cc1439216e2c') + version('2.3.1', sha256='c57e02e87879a89dc2194eb546087c678b3bba2bfcce72d8e68005075896403b') + version('2.3.0', sha256='fb540387dcda725ce47913867ca80e07379aa87608f61c77bb24c205c74f4006') + version('2.2.0', sha256='f61da65905fb00c501fac281916811f48c6c9d82040281a0b4a082c0cd426027') + version('2.1.2', sha256='cf2cbf410d152a294a119b0559ae409a63066b6cda0886674ee716417b395066') + version('2.1.1', sha256='53c7eeab66a6eaf3813bab8db545ca29945b22d517952e245b77d1a7db79e977') + version('2.1.0', sha256='ad9014e7a9c0c0db9c4860dc6069b7c5839325c36ba989b10c94fc50bec77334') + version('2.0.0', sha256='7714e4ddc85129b2824aa0cb299f9db3dc4d9a046a5685344e8a5f299a60b527') + + + depends_on('python@3.4:', type=('build', 'run')) + depends_on('py-setuptools', type='build') + depends_on('py-h5py') + + # extras_require + # depends_on('sphinx') + # depends_on('sphinx_rtd_theme') + + + def setup_build_environment(self, env): + # Needed for `spack install --test=root py-hdf5plugin` + # set the path for plugins to an empty string, otherwise system default + # could be falsely used + env.set('HDF5_PLUGIN_PATH', '') + + # Needed for `spack test run py-hdf5plugin` + setup_run_environment = setup_build_environment + + def test(self): + prefix = self.spec.prefix + with working_dir(prefix): + python('-c', 'import hdf5plugin.test; hdf5plugin.test.run_tests()') \ No newline at end of file From c34607bf1e72dfed76362174c6ea960ee3d2d03a Mon Sep 17 00:00:00 2001 From: Julian Michael Hoersch Date: Wed, 9 Feb 2022 12:58:12 +0100 Subject: [PATCH 86/94] added version, changed test directroy --- packages/py-hdf5plugin/package.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/py-hdf5plugin/package.py b/packages/py-hdf5plugin/package.py index 28807ca..bcfd902 100644 --- a/packages/py-hdf5plugin/package.py +++ b/packages/py-hdf5plugin/package.py @@ -56,4 +56,4 @@ def setup_build_environment(self, env): def test(self): prefix = self.spec.prefix with working_dir(prefix): - python('-c', 'import hdf5plugin.test; hdf5plugin.test.run_tests()') \ No newline at end of file + python('-c', 'import hdf5plugin.test; hdf5plugin.test.run_tests()') From bd26690a046c66b55d795d289d98d89744d476e3 Mon Sep 17 00:00:00 2001 From: Julian Michael Hoersch Date: Wed, 23 Feb 2022 08:21:35 +0100 Subject: [PATCH 87/94] removing boilerplate, change wdir of test --- packages/py-numexpr/package.py | 62 ++++++++-------------------------- 1 file changed, 15 insertions(+), 47 deletions(-) diff --git a/packages/py-numexpr/package.py b/packages/py-numexpr/package.py index a85ff95..696062f 100644 --- a/packages/py-numexpr/package.py +++ b/packages/py-numexpr/package.py @@ -3,47 +3,26 @@ # # SPDX-License-Identifier: (Apache-2.0 OR MIT) -# ---------------------------------------------------------------------------- -# If you submit this package back to Spack as a pull request, -# please first remove this boilerplate and all FIXME comments. -# -# This is a template package file for Spack. We've put "FIXME" -# next to all the things you'll want to change. Once you've handled -# them, you can save this file and test your package like this: -# -# spack install py-numexpr -# -# You can edit this file again by typing: -# -# spack edit py-numexpr -# -# See the Spack documentation for more information on packaging. -# ---------------------------------------------------------------------------- - from spack import * class PyNumexpr(PythonPackage): - """NumExpr is a fast numerical expression evaluator for NumPy. With it, - expressions that operate on arrays (like '3*a+4*b') are accelerated and - use less memory than doing the same calculation in Python. - - In addition, its multi-threaded capabilities can make use of all your cores - -- which generally results in substantial performance scaling compared to NumPy. - - Last but not least, numexpr can make use of Intel's VML (Vector Math Library, - normally integrated in its Math Kernel Library, or MKL). This allows further + """NumExpr is a fast numerical expression evaluator for NumPy. With it, + expressions that operate on arrays (like '3*a+4*b') are accelerated and + use less memory than doing the same calculation in Python. + + In addition, its multi-threaded capabilities can make use of all your cores + -- which generally results in substantial performance scaling compared to NumPy. + + Last but not least, numexpr can make use of Intel's VML (Vector Math Library, + normally integrated in its Math Kernel Library, or MKL). This allows further acceleration of transcendent expressions.""" - # FIXME: Add a proper url for your package's homepage here. homepage = "https://github.com/pydata/numexpr/" url = "https://github.com/pydata/numexpr/archive/v2.7.2.tar.gz" - # FIXME: Add a list of GitHub accounts to - # notify when the package is updated. maintainers = ['RobertRosca', 'julianhoersch'] - version('3.0.1a5', sha256='e2ff7f3244a6c780059b7d80f22af07bbf93b01502da0df10c553fb30c6e8de2') version('2.7.2', sha256='7d1b3790103221feda07f4a93a4fa5c6654f46865197a677ca6f27eb5cb4e5ef') version('2.7.1', sha256='5c6ae3bb5688184b922b43fc47de49d642576d0feec55a1b679caa66efae90a1') version('2.7.0', sha256='1923f038b90cc69635871968ed742be7775c879451c612f173c2547c823c9561') @@ -54,23 +33,12 @@ class PyNumexpr(PythonPackage): version('2.6.5', sha256='fe78a78e002806e87e012b6105f3b3d52d47fc7a72bafb56341fcec7ce02cfd7') version('2.6.4', sha256='049da1c07bd62d2aba29887130ccc9aff9b90962cb779a7b7ddc15e580368fba') - # FIXME: Add dependencies if required. Only add the python dependency - # if you need specific versions. A generic python dependency is - # added implicity by the PythonPackage class. - depends_on('python@2.6:', type=('build', 'run')) + + depends_on('python@2.6:', type=('build', 'run')) depends_on('py-setuptools', type='build') depends_on('py-numpy@1.7:') - # test dependencies - depends_on('py-coverage@:4.9', type='test') - depends_on('py-pytest', type='test') - depends_on('py-pytest-cov', type='test') - depends_on('py-testpath', type='test') - - install_time_test_callbacks = ['import_module_test'] - - def build_args(self, spec, prefix): - # FIXME: Add arguments other than --prefix - # FIXME: If not needed delete this function - args = [] - return args + def test(self): + prefix = self.spec.prefix + with working_dir(prefix): + python('-c', 'import numexpr; numexpr.test()') From 85bb188bd71ad15b008c21e86ea24282e1615f3a Mon Sep 17 00:00:00 2001 From: Julian Michael Hoersch Date: Wed, 23 Feb 2022 08:38:16 +0100 Subject: [PATCH 88/94] removed boilerplate, unnecessary imports, cleanup --- packages/py-transformations/package.py | 44 +++----------------------- 1 file changed, 5 insertions(+), 39 deletions(-) diff --git a/packages/py-transformations/package.py b/packages/py-transformations/package.py index 3bfd60d..420b0c5 100644 --- a/packages/py-transformations/package.py +++ b/packages/py-transformations/package.py @@ -3,60 +3,26 @@ # # SPDX-License-Identifier: (Apache-2.0 OR MIT) -# ---------------------------------------------------------------------------- -# If you submit this package back to Spack as a pull request, -# please first remove this boilerplate and all FIXME comments. -# -# This is a template package file for Spack. We've put "FIXME" -# next to all the things you'll want to change. Once you've handled -# them, you can save this file and test your package like this: -# -# spack install py-transformations -# -# You can edit this file again by typing: -# -# spack edit py-transformations -# -# See the Spack documentation for more information on packaging. -# ---------------------------------------------------------------------------- - from spack import * class PyTransformations(PythonPackage): - """Transformations is a Python library for calculating 4x4 matrices for translating, rotating, - reflecting, scaling, shearing, projecting, orthogonalizing, and superimposing arrays of 3D - homogeneous coordinates as well as for converting between rotation matrices, Euler angles, and - quaternions. Also includes an Arcball control object and functions to decompose transformation + """Transformations is a Python library for calculating 4x4 matrices for translating, rotating, + reflecting, scaling, shearing, projecting, orthogonalizing, and superimposing arrays of 3D + homogeneous coordinates as well as for converting between rotation matrices, Euler angles, and + quaternions. Also includes an Arcball control object and functions to decompose transformation matrices.""" - # FIXME: Add a proper url for your package's homepage here. homepage = "https://github.com/cgohlke/transformations" url = "https://github.com/cgohlke/transformations/archive/v2020.1.1.tar.gz" - # FIXME: Add a list of GitHub accounts to - # notify when the package is updated. maintainers = ['RobertRosca', 'julianhoersch'] + version('2021.6.6', sha256='7e61af64c46137f18db601e54a71263946e08e2d107434ce8e1edbb92163a10f') version('2020.1.1', sha256='cd9cd29ba7f0ec4c109293fe5007cf632e9f5b8107acba5572672002e72860a6') version('2019.4.22', sha256='5686de316e2f65a67788de25ab180995429283c531814815ce4508de0df96c9a') version('2019.2.20', sha256='5cb940b9df13707a88bbffffdd2cb0347afa1329b7770a8350d9d4415b00f46d') - # FIXME: Add dependencies if required. Only add the python dependency - # if you need specific versions. A generic python dependency is - # added implicity by the PythonPackage class. depends_on('python@3.6:', type=('build', 'run')) depends_on('py-setuptools@18.0:', type='build') depends_on('py-numpy@1.14.5:') - - # test dependencies - depends_on('py-coverage@:4.9', type='test') - depends_on('py-pytest', type='test') - depends_on('py-pytest-cov', type='test') - depends_on('py-testpath', type='test') - - def build_args(self, spec, prefix): - # FIXME: Add arguments other than --prefix - # FIXME: If not needed delete this function - args = [] - return args From d077d0928b38f42e99d601768679ab9fda49d29e Mon Sep 17 00:00:00 2001 From: Julian Michael Hoersch Date: Sat, 12 Mar 2022 09:56:15 +0100 Subject: [PATCH 89/94] add vagabond --- packages/vagabond/package.py | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 packages/vagabond/package.py diff --git a/packages/vagabond/package.py b/packages/vagabond/package.py new file mode 100644 index 0000000..88bf3fc --- /dev/null +++ b/packages/vagabond/package.py @@ -0,0 +1,32 @@ +# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other +# Spack Project Developers. See the top-level COPYRIGHT file for details. +# +# SPDX-License-Identifier: (Apache-2.0 OR MIT) + +from spack import * + + +class Vagabond(MesonPackage): + """Vagabond is a free and open-source implementation of bond-based + refinement algorithms for fitting protein models to electron density from + structural data. These algorithms seek to faithfully represent the real + content of the protein crystal as much as possible. """ + + homepage = "https://vagabond.hginn.co.uk/index.php?page=install" + url = "https://github.com/helenginn/vagabond/archive/refs/tags/0.3.1cb4f94f.tar.gz" + + maintainers = ['julianhoersch', 'RobertRosca'] + + + version('develop', git='https://github.com/helenginn/vagabond.git', submodules=True) + version('0.2', sha256='e1e2e7ab0a646febfdb15c775f6703b993c50ede794a6b9b1b1c00c2d234cd76') + version('0.1.fb1204b309d48b8aa7b47274df2ce8487e0bebc1', sha256='d5a547fd5d9afe6d77e029298f93080ffc1f4e9321d06fb2901d3309c4e24455') + version('0.0.0.95d54531', sha256='4ca686c28969ae275cbf5eef93b7dd8bcb8e5e6b9f5669c3eb4979a3fa19151f') + + depends_on('cmake@3.4:') + depends_on('qt+opengl') + depends_on('libpng') + depends_on('fftw') + depends_on('mariadb') + depends_on('boost') + depends_on('crystfel@:0.9') From 055e93f6110a60dffae860694988338471633b93 Mon Sep 17 00:00:00 2001 From: Julian Michael Hoersch Date: Wed, 23 Mar 2022 10:13:20 +0100 Subject: [PATCH 90/94] add mkl support --- packages/xgandalf/package.py | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 packages/xgandalf/package.py diff --git a/packages/xgandalf/package.py b/packages/xgandalf/package.py new file mode 100644 index 0000000..e62032d --- /dev/null +++ b/packages/xgandalf/package.py @@ -0,0 +1,33 @@ +# Copyright 2013-2021 Lawrence Livermore National Security, LLC and other +# Spack Project Developers. See the top-level COPYRIGHT file for details. +# +# SPDX-License-Identifier: (Apache-2.0 OR MIT) + + +from spack import * + + +class Xgandalf(CMakePackage): + """Extended gradient descent algorithm for lattice finding.""" + + homepage = "https://stash.desy.de/users/gevorkov/repos/xgandalf/browse" + url = "https://stash.desy.de/rest/api/latest/projects/~GEVORKOV/repos/xgandalf/archive?at=refs%2Ftags%2Fv1.0&format=tgz" + + maintainers = ['RobertRosca', 'julianhoersch'] + + version('1.0', '60c38c41a3e630d6bfa0e2a3d18e40e56b42413f6e1641e0abd0b1cd2e1a38ca', extension='tar.gz') + + depends_on('cmake@3.1:') + depends_on('boost@1.60.0') + depends_on('eigen@3.3.7') + depends_on('intel-mkl@:2018') + + # does not work + def cmake_args(self): + args = [ + self.define('XGANDALF_BUILD_EXECUTABLE', True, + # self.define('USE_INSTALLED_PRECOMUTED_DATA', False), + ] + + return args + From 6a2eb0a612b023376640e63b7e42cefd07ca3509 Mon Sep 17 00:00:00 2001 From: Julian Michael Hoersch Date: Wed, 23 Mar 2022 10:15:30 +0100 Subject: [PATCH 91/94] correct syntax error --- packages/xgandalf/package.py | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/packages/xgandalf/package.py b/packages/xgandalf/package.py index e62032d..d83b41f 100644 --- a/packages/xgandalf/package.py +++ b/packages/xgandalf/package.py @@ -25,9 +25,8 @@ class Xgandalf(CMakePackage): # does not work def cmake_args(self): args = [ - self.define('XGANDALF_BUILD_EXECUTABLE', True, + self.define('XGANDALF_BUILD_EXECUTABLE', True), # self.define('USE_INSTALLED_PRECOMUTED_DATA', False), - ] + ] return args - From b1f1e7d7fb3d548f3aea0ca3d67a5681223339b0 Mon Sep 17 00:00:00 2001 From: Julian Michael Hoersch Date: Wed, 30 Mar 2022 09:39:14 +0200 Subject: [PATCH 92/94] work in progress --- packages/py-extra-foam/package.py | 346 ++++++++++++++++++++++++++---- 1 file changed, 306 insertions(+), 40 deletions(-) diff --git a/packages/py-extra-foam/package.py b/packages/py-extra-foam/package.py index bc70fcd..809ef88 100644 --- a/packages/py-extra-foam/package.py +++ b/packages/py-extra-foam/package.py @@ -21,62 +21,222 @@ # ---------------------------------------------------------------------------- from spack import * +import os class PyExtraFoam(PythonPackage): - """EXtra-foam is a framework that provides real-time and off-line data analysis - (detector geometry, pump-probe, azimuthal integration, ROI, statistics, etc.) - and visualization for experiments that use 2D area detectors (AGIPD, LPD, DSSC, - FastCCD, JungFrau, ePix100, etc.) and 1D detectors (Gotthard, XGM, digitizer, etc.) + """EXtra-foam is a framework that provides real-time and off-line data analysis + (detector geometry, pump-probe, azimuthal integration, ROI, statistics, etc.) + and visualization for experiments that use 2D area detectors (AGIPD, LPD, DSSC, + FastCCD, JungFrau, ePix100, etc.) and 1D detectors (Gotthard, XGM, digitizer, etc.) at European XFEL.""" # FIXME: Add a proper url for your package's homepage here. homepage = "https://extra-foam.readthedocs.io/en/latest/" url = "https://github.com/European-XFEL/EXtra-foam/archive/1.0.0.tar.gz" + git = "https://github.com/European-XFEL/EXtra-foam.git" # FIXME: Add a list of GitHub accounts to # notify when the package is updated. maintainers = ['RobertRosca', 'julianhoersch'] - version('1.0.0beta3', sha256='38e1f7ea05ed32a3d041dbccb85862055436db4374a6c4007847d636ff2c003f') - version('1.0.0beta2', sha256='04a5bafcb2af2daf122b94c78219ad857b5ad732f121d443d340f2ab49a26581') - version('1.0.0beta1', sha256='938f0006ccb9042d44cc0bd6582ab5d191daf96b7db9c9d7afe8258a6798faf4') - version('1.0.0', sha256='8bb214cb21a414175f9ca207485c6cf6fac9c569198ac59b23b3a023f0f420d8') - version('0.9.1', sha256='7f3c48985d0f656e35e6364a6279e458841566b866c59bd509aa96b855d2d668') - version('0.9.0beta3', sha256='fbd3e2b23d9cfc623b225c4572be54b31ef3203597b43ba5a9cb8b1e333f983c') - version('0.9.0beta2', sha256='84eddd55220e4e89080442f267141a2688cf5cda397b5e22da6303622c675b4e') - version('0.9.0beta1', sha256='b1bbaa7d0edc4064106c10a837bfcf7f345889f51419d558734a292cefe737c7') - version('0.9.0', sha256='aa3422639b6ef6f7cbe0b93155322d51af89115f30a4525104268adbb0fed6f7') - version('0.8.4', sha256='ab36bb07952eb0b4e1956bdb626df0ce3975ab64dc64eda6822ddc5759fb8a14') - - # FIXME: Add dependencies if required. Only add the python dependency - # if you need specific versions. A generic python dependency is - # added implicity by the PythonPackage class. - depends_on('python@3.6:', type=('build', 'run')) + # test lates dev versionvc + version('dev', branch='dev') + # version('master', branch='master') + # version('1.0.0beta3', sha256='38e1f7ea05ed32a3d041dbccb85862055436db4374a6c4007847d636ff2c003f') + # version('1.0.0beta2', sha256='04a5bafcb2af2daf122b94c78219ad857b5ad732f121d443d340f2ab49a26581') + # version('1.0.0beta1', sha256='938f0006ccb9042d44cc0bd6582ab5d191daf96b7db9c9d7afe8258a6798faf4') + # version('1.0.0', sha256='8bb214cb21a414175f9ca207485c6cf6fac9c569198ac59b23b3a023f0f420d8') + # version('0.9.1', sha256='7f3c48985d0f656e35e6364a6279e458841566b866c59bd509aa96b855d2d668') + # version('0.9.0beta3', sha256='fbd3e2b23d9cfc623b225c4572be54b31ef3203597b43ba5a9cb8b1e333f983c') + # version('0.9.0beta2', sha256='84eddd55220e4e89080442f267141a2688cf5cda397b5e22da6303622c675b4e') + # version('0.9.0beta1', sha256='b1bbaa7d0edc4064106c10a837bfcf7f345889f51419d558734a292cefe737c7') + # version('0.9.0', sha256='aa3422639b6ef6f7cbe0b93155322d51af89115f30a4525104268adbb0fed6f7') + # version('0.8.4', sha256='ab36bb07952eb0b4e1956bdb626df0ce3975ab64dc64eda6822ddc5759fb8a14') + + + # depends_on('python@3.6:', type=('build', 'run')) + # depends_on('py-setuptools', type='build') + # depends_on('cmake@3.17.0:', type='build') + # depends_on('py-numpy@1.16.1:') + # depends_on('py-scipy@1.2.1:') + # depends_on('py-msgpack@0.5.6:') + # depends_on('py-msgpack-numpy@0.4.4:') + # depends_on('py-pyzmq@22.3.0:') # import tests of updated version fails + # depends_on('py-pyfai@0.17.0:') + + # #depends_on('py-pyqt5@5.13.2') # needs higher compiler version as default on + # # maxwell (gcc@4.8.5) -> gcc@:5.0.999 + # # version 5.13.2 not available + # depends_on('py-pyqt5@5.13.1') # try with available version + # # 'PyQt5-sip>=12.9.0', + # # depends_on('py-sip@develeop') # versions too low + # depends_on('py-extra-data@1.0.0:') + # depends_on('py-extra-geom@0.8.0:') + # depends_on('py-karabo-bridge@0.5.0:') + # depends_on('py-toolz@0.9.0:') + # depends_on('py-silx@0.9.0:') + # depends_on('py-hiredis@1.0.1') # added version, import tests pass + # # not available + # #depends_on('py-redis@3.5.2') + # depends_on('py-redis@3.5.3') # update? + # depends_on('py-psutil@5.6.2:') + # depends_on('py-imageio@2.8.0') # added 2.8.0 import tests pass + # depends_on('py-pillow@8.3.2+tiff') # updated import test pass + # depends_on('py-pyyaml@5.2:') + + # # open source build + # # depends_on('intel-tbb@2021.1.1:') # doesn't work for 2021 + # # "Both intel-tbb and intel-oneapi-tbb do a provides('tbb') + # # so they are interchangeable in that sense." + # # https://github.com/spack/spack/pull/25613#issuecomment-905830566 + # # product build + # depends_on('intel-oneapi-tbb@2021.1.1:') + # # depends_on('xtensor') + # depends_on('xtensor-python') # added new version and removed constraint on + # # pybind that conflicted with opencl's pybind required version + # depends_on('xtensor-blas') # created new package not tested, but installable + + # # # extras + # # # docs + # # depends_on('py-sphinx') + # # depends_on('py-nbsphinx') + # # depends_on('py-ipython') + + # # test + # depends_on('py-pytest', type='test') + # depends_on('py-pytest-cov', type='test') + + # # # web + # # depends_on('py-dash1.1.0:') # not available + + # # from failing tests + # depends_on('py-pyside2') + # # depends_on('py-pyqt4')#^py-sip@:4.19.18 module=PyQt4.sip+multi') + # # depends_on('dash') + + # # depends_on('py-sip@:4.19.18 module=PyQt4.sip+multi') + + # # depends_on('py-sip module=PyQt5.sip+multi', type=('build', 'run')) + # # depends_on('py-sip@:4.19.18 module=PyQt5.sip+multi', + # # type=('build', 'run'), when='@:5.13.0') + + + # # variant('module', default='sip', when='@:4', description='Name of private SIP module', + # # values=str, multi=False) + + # # def setup_run_environment(self, env): + + # # # set the path for plugins to an empty string, otherwise system default + # # # could be falsely used + # # env.set('HDF5_PLUGIN_PATH', '') + + + # updated dependencies + + # does not work with 3.10! -> Error: py-extra-foam is unsatisfiable, errors are: + # problem with 3.9 too, pyside2 doest work with current version would need to + # chckout dev branch of spack + # no version satisfies the given constraints# + depends_on('python@:3.8', type=('build', 'run')) depends_on('py-setuptools', type='build') - depends_on('py-numpy@1.16.1:') - depends_on('py-scipy@1.2.1:') - depends_on('py-msgpack@0.5.6:') - depends_on('py-msgpack-numpy@0.4.4:') - depends_on('py-pyzmq@17.1.2:') - depends_on('py-pyfai@0.17.0:') - depends_on('py-pyqt5@5.13.2') # needs higher compiler version as default on maxwell (gcc@4.8.5) -> gcc@:5.0.999 - depends_on('py-extra-data@1.0.0:') - depends_on('py-extra-geom@0.8.0:') - depends_on('py-karabo-bridge@0.5.0:') - depends_on('py-toolz@0.9.0:') - depends_on('py-silx@0.9.0:') - depends_on('py-hiredis@1.0.1') - depends_on('py-redis@3.5.2') - depends_on('py-psutil@5.6.2:') - depends_on('py-imageio@2.8.0') - depends_on('py-pillow@7.0.0') - depends_on('py-pyyaml@5.2:') - - depends_on('py-coverage@:4.9', type='test') + depends_on('cmake@3.20.0:', type='build') + depends_on('py-numpy') + depends_on('py-pybind11') + depends_on('py-scipy') + depends_on('py-msgpack') + depends_on('py-msgpack-numpy') + depends_on('py-pyzmq') # import tests of updated version fails, switch back + # to spack version + depends_on('py-pyfai') + + #depends_on('py-pyqt5@5.13.2') # needs higher compiler version as default on + # maxwell (gcc@4.8.5) -> gcc@:5.0.999 + # version 5.13.2 not available + depends_on('py-pyqt5') # try with available version + depends_on('py-pyqt5-sip') + # 'PyQt5-sip>=12.9.0', + # depends_on('py-sip@develeop') # versions too low + depends_on('py-extra-data') + depends_on('py-extra-geom') + depends_on('py-karabo-bridge') + + # depends_on('py-silx@0.9.0:') + depends_on('py-hiredis') # added version, import tests pass, switch back to spack + + # not available + #depends_on('py-redis@3.5.2') + depends_on('py-redis') # update, back to spack + depends_on('py-psutil') + depends_on('py-imageio') # added 2.8.0 import tests pass, back to spack + #TODO tiff needed? + depends_on('py-pillow+tiff') # updated import test pass, back to spack + depends_on('py-pyyaml') + + # These dependencies are not directly used, but are needed to satisfy + # pip's resolver: + depends_on('py-pygments') + depends_on('py-jinja2') + depends_on('py-decorator') + depends_on('py-pexpect') + depends_on('py-toolz') + depends_on('py-packaging') + depends_on('py-cffi') + + # # extras + # # docs + # depends_on('py-sphinx') + # depends_on('py-nbsphinx') + # depends_on('py-ipython') + + # test depends_on('py-pytest', type='test') depends_on('py-pytest-cov', type='test') - depends_on('py-testpath', type='test') + + # # web + # depends_on('py-dash1.1.0:') # not available + + # from failing tests + # open source build + # depends_on('intel-tbb@2021.1.1:') # doesn't work for 2021 + # "Both intel-tbb and intel-oneapi-tbb do a provides('tbb') + # so they are interchangeable in that sense." + # https://github.com/spack/spack/pull/25613#issuecomment-905830566 + # product build + depends_on('intel-oneapi-tbb@2021.1.1:') + # depends_on('xtensor') + depends_on('xtensor-python') # added new version and removed constraint on + # pybind that conflicted with opencl's pybind required version + depends_on('xtensor-blas') # created new package not tested, but installable + depends_on('py-pyside2') + # depends_on('py-pyqt4')#^py-sip@:4.19.18 module=PyQt4.sip+multi') + # depends_on('dash') + depends_on('googletest+gmock') + + # depends_on('py-sip@:4.19.18 module=PyQt4.sip+multi') + + # depends_on('py-sip module=PyQt5.sip+multi', type=('build', 'run')) + # depends_on('py-sip@:4.19.18 module=PyQt5.sip+multi', + # type=('build', 'run'), when='@:5.13.0') + + + # variant('module', default='sip', when='@:4', description='Name of private SIP module', + # values=str, multi=False) + + # def setup_run_environment(self, env): + + # # set the path for plugins to an empty string, otherwise system default + # # could be falsely used + # env.set('HDF5_PLUGIN_PATH', '') + + + + # phases = ['build', 'build_ext', 'install'] + phases = ['build_ext', 'install']#, 'test'] + + def build_ext_args(self, spec, prefix): + args = ['--with-tests', '--inplace'] + return args def build_args(self, spec, prefix): @@ -84,3 +244,109 @@ def build_args(self, spec, prefix): # FIXME: If not needed delete this function args = [] return args + + + def _get_build_dir(self, dirname): + version = sys.version_info + return f"{dirname}.{sysconfig.get_platform()}-{version[0]}.{version[1]}" + + def run(self): + # build and run cpp test + build_temp = osp.join('build', self._get_build_dir('temp')) + with changed_cwd(build_temp): + self.spawn(['make', 'ftest']) + + # run Python test + import pytest + errno = pytest.main(['extra_foam']) + sys.exit(errno) + + def test(self): + # `setup.py test` should not be used as: + # - `python3 -m pytest -v` should be ran instead + # - the builtin `test` method runs before `install` is finished + self.pytest() + # self.staging_pytest() + + def staging_pytest(self): + # spack('cd py-extra-foam') + # python('-m', 'setup.py', 'test') + # print('build_dir : ', self.build_directory) + # print('spec', self.spec) + # print('spec dir', dir(self.spec)) + + # # for attr in dir(self.spec): + # # try: + # # print('{} : {}'.format(attr, + # # self.spec.)) + + # # print('hash : ', self.content_hash()) + # # print('spec a', self.spec.build_hash()) + # # print('spec b', self.spec._build_hash) + # # print('spec c', self.spec.__hash__()) + # # print('spec d', self.spec._cached_hash) + # print('spec e', self.spec._hash) + # print('spec v', self.spec.version) + # # print('spec f', self.spec._full_hash) + # # print('spec g', self.spec._hashes_final) + # # print('spec h', self.spec._package_hash) + # # print('spec i', self.spec.package_hash()) + # # print('spec j', self.spec._spec_hash) + # # print('spec k', self.spec.full_hash()) + # # print('spec l', self.spec.fullname) + # # print('spec m', self.spec.namespace) + # # print('spec n', self.spec.node_dict_with_hashes()) + + # print('test', self.spec['python'].command.path) + # print('name', self.name) + # # print(self.stage.stage_prefix) + # # print(dir(self)) + + + + # staging_name = 'spack-stage-{}-{}-{}'.format( + # self.name, self.spec.version, self.spec._hash) + # print('nam', staging_name) + # staging_dir = self.build_directory + staging_name + # print('dir', staging_dir, ' end') + # print('\n') + + with working_dir(self.build_directory): + print('working in ', self.build_directory) + python('-m', 'setup.py', 'test') + + def pytest(self): + + # self.run() + prefix = self.spec.prefix + print('prefix: ', prefix) + import os + directory = prefix #+ '/lib/python3.8/site-packages/' #extra_foam' + print(directory) + with working_dir(directory): + + + absolute_path = os.path.abspath(__file__) + cwd = os.getcwd() + print('cwd', cwd) + print("Full path: " + absolute_path) + print("Directory Path: " + os.path.dirname(absolute_path)) + + # /gpfs/exfel/data/scratch/jhoersch/spack/opt/spack/ + # linux-centos7-x86_64/gcc-11.1.0/ + # py-extra-foam-dev-oijwvx2uw4bq3shbrkkq3pevspiym2y5/ + # lib/python3.8/site-packages/extra_foam/setup.py + + # mkdir build && cd build') + # os.mkdir('build') + # os.chdir('build') + # cmake('-m', 'make ftest', '-DBUILD_FOAM_TESTS') + # # Add bin to path here, as tests also check entrypoints + # os.chdir(directory) + env['PATH'] = env['PATH']+":"+prefix+"/bin" + python('-m', 'pytest', '-v') + # python('-m', "pytest.main()", '-v') + # python('-m', 'setup.py test', '-v') + # python('-m', 'pytest extra_foam', '-v') + # python('-m', 'extra_foam.pytest', '-v') + # python('-m', 'setup.py', 'test') \ No newline at end of file From 9827fe368ae57f562f740b2e323438b0cd46aae2 Mon Sep 17 00:00:00 2001 From: Julian Michael Hoersch Date: Wed, 30 Mar 2022 09:40:56 +0200 Subject: [PATCH 93/94] changes in test method --- packages/py-silx/package.py | 133 ++++++++++++++++++++++-------------- 1 file changed, 83 insertions(+), 50 deletions(-) diff --git a/packages/py-silx/package.py b/packages/py-silx/package.py index 72cfbd8..45d953c 100644 --- a/packages/py-silx/package.py +++ b/packages/py-silx/package.py @@ -3,77 +3,110 @@ # # SPDX-License-Identifier: (Apache-2.0 OR MIT) -# ---------------------------------------------------------------------------- -# If you submit this package back to Spack as a pull request, -# please first remove this boilerplate and all FIXME comments. -# -# This is a template package file for Spack. We've put "FIXME" -# next to all the things you'll want to change. Once you've handled -# them, you can save this file and test your package like this: -# -# spack install py-silx -# -# You can edit this file again by typing: -# -# spack edit py-silx -# -# See the Spack documentation for more information on packaging. -# ---------------------------------------------------------------------------- from spack import * class PySilx(PythonPackage): - """The purpose of the silx project is to provide a collection of Python - packages to support the development of data assessment, reduction and - analysis applications at synchrotron radiation facilities. silx aims - to provide reading/writing tools for different file formats, data - reduction routines and a set of Qt widgets to browse and visualise + """The purpose of the silx project is to provide a collection of Python + packages to support the development of data assessment, reduction and + analysis applications at synchrotron radiation facilities. silx aims + to provide reading/writing tools for different file formats, data + reduction routines and a set of Qt widgets to browse and visualise data.""" - # FIXME: Add a proper url for your package's homepage here. homepage = "http://www.silx.org/doc/silx/latest/" url = "https://github.com/silx-kit/silx/archive/v0.14.0.tar.gz" - # FIXME: Add a list of GitHub accounts to - # notify when the package is updated. maintainers = ['RobertRosca', 'julianhoersch'] - version('0.14.0rc3', sha256='37f66a56022505b714b72e3975f5f992320b86fa368cfa0d11e4225f8c5451b1') - version('0.14.0rc2', sha256='486739a1ea1631271af7ffd9c4c4ec1bbc230e7ebea6829319abdb6d3d5adeb1') - version('0.14.0rc1', sha256='67936501fd7ed68006f570c1623cff762c225087b8f850729ee94a77c2168eb7') - version('0.14.0', sha256='17c595fe18c9eb3403a9d1f0ee6ea7b523607043c46c944573ecf406f6997866') - version('0.13.3b0', sha256='798bee0a4f83195d0e120fbbbbd11d692d2429888fdac81b75b9335d7545f931') - version('0.13.2-ubuntu20.04-packages', sha256='3c7b912be00954e9275056ac4e8b8f2d9772402ed8509eb2b6538fbf22438277') - version('0.13.2-debian10-packages', sha256='acab83206d18dd183fffb74a2ee18129cbff75185b39fc8e77561e7b3e4315ec') - version('0.13.2-debian9-packages', sha256='b32139153ea25d1bc336a14acebeb5f1b60b477171ef615b70c7a902e2a95cbc') - version('0.13.2', sha256='88a16187283c8684be63ab37aee7267c370962dfbcf45cca77ae494ee5e4e773') - version('0.13.1', sha256='2c5dbc1c043ecb78dafd1f7afbfd45833c87332818307196878b759956687491') - version('0.13.0b2', sha256='f3061d5cec39b6134b05cba19d26f3598a64440320351b94b6ca91129481bbdc') - version('0.13.0b1', sha256='c934f9b65a7c8a0cb44e274983b412b22cc710d36c192b077abbdae3e08b82e2') - version('0.13.0', sha256='8c2fe896a26ffd4811a1944481328faa60e05214b84e873bffbdd8cb13729535') - - # FIXME: Add dependencies if required. Only add the python dependency - # if you need specific versions. A generic python dependency is - # added implicity by the PythonPackage class. - # depends_on('python@2.X:2.Y,3.Z:', type=('build', 'run')) - depends_on('py-setuptools', type='build') + + version('1.0.0', sha256='c9a57b7a253d9cdca92404cd0ba0bed88115681e1982bae45101b7d85c55bde0') + version('0.15.2', sha256='ab46c133a65d875512c0eef9e45cf0b7e2b55c8ed400a73efb19d15d6f7994db') + version('0.15.1', sha256='c40da18a700f5bf8b8d370164b2218dff6ef8f7cb5c45b6be544f9e565626138') + version('0.15.0', sha256='c5d5bf21e3c86463371dd33890afba666d331aa6970d9cd96168fab29be41056') + version('0.14.1', sha256='72f78b05865aa2a5d43c1b96ba615ec95a934e3fed0b3a7f655535b5750ad233') + version('0.14.0', sha256='17c595fe18c9eb3403a9d1f0ee6ea7b523607043c46c944573ecf406f6997866') + version('0.13.2', sha256='88a16187283c8684be63ab37aee7267c370962dfbcf45cca77ae494ee5e4e773') + version('0.13.1', sha256='2c5dbc1c043ecb78dafd1f7afbfd45833c87332818307196878b759956687491') + version('0.13.0', sha256='8c2fe896a26ffd4811a1944481328faa60e05214b84e873bffbdd8cb13729535') + + # Required dependencies (from setup.py setup_requires and install_requires) + depends_on('py-setuptools@:59', type='build') depends_on('py-numpy@1.12:') depends_on('py-cython@0.21.1:') depends_on('py-h5py') depends_on('py-fabio@0.9:') depends_on('py-six') - - # test dependencies - depends_on('py-coverage@:4.9', type='test') - depends_on('py-pytest', type='test') - depends_on('py-pytest-cov', type='test') - depends_on('py-testpath', type='test') - install_time_test_callbacks = ['import_module_test'] + depends_on('py-pytest', when='@1.0.0:')#, type='test') + depends_on('py-pytest-xvfb', when='@1.0.0:')#, type='test') + + ## Extra dependencies (from setup.py extra_requires 'full' target) + depends_on('py-pyopencl') # platform_machine in "i386, x86_64, AMD64" # For silx.opencl + depends_on('py-mako') # For pyopencl reduction + + ## gui + depends_on('py-qtconsole') # For silx.gui.console + depends_on('py-matplotlib@1.2.0:') # For silx.gui.plot + depends_on('py-pyopengl') # For silx.gui.plot3d + depends_on('py-python-dateutil') # For silx.gui.plot + depends_on('py-pyqt5') # PySide2, PySide6 # For silx.gui + + ## extra + depends_on('py-scipy') # For silx.math.fit demo, silx.image.sift demo, silx.image.sift.test + depends_on('py-pillow') # For silx.opencl.image.test + def build_args(self, spec, prefix): # FIXME: Add arguments other than --prefix # FIXME: If not needed delete this function args = [] return args + + + def pytest(self): + + prefix = self.spec.prefix + with working_dir(prefix): + # Add bin to path here, as tests also check entrypoints + env['PATH'] = env['PATH']+":"+prefix+"/bin" + python('-m', 'pytest -h')#, '--no-gui=False') + + + def test(self): + # self.pytest() + + prefix = self.spec.prefix + + with working_dir(prefix): + # it is possible to disable graphical tests and others below + # works like this only if < 1.0.0 + with_qt_test = False # to disable graphical tests + silx_opencl = False #to disable OpenCL tests + silx_test_low_mem = False # to disable tests taking large amount of memory + gpu = False # to disable the use of a GPU with OpenCL test + with_gl_test = False + + python('-c', 'import os; print(os.getcwd())') + # python('-c', 'import silx.test; print(dir(silx.test))') + # python('-c', 'import silx.test; print(silx.test.__path__)') + + # python('-c', 'import silx.test; \ + # print(dir(silx.test)); \ + # silx.test.utils.test_options.WITH_QT_TEST={}; \ + # silx.test.utils.test_options.SILX_OPENCL={}; \ + # silx.test.utils.test_options.SILX_TEST_LOW_MEM={}; \ + # silx.test.utils.test_options.GPU={}; \ + # silx.test.utils.test_options.WITH_GL_TEST={}; \ + # silx.test.run_tests()'.format(with_qt_test, silx_opencl, + # silx_test_low_mem, gpu, + # with_gl_test)) + # from silx.test.utils import test_options + + python('-c', 'import silx.test; silx.test.run_tests(verbosity=1)') + + # python('-c', '//lib/python3.8//site-packages//silx//run_tests.py --no-gui') + # python('-c', 'run_tests.py --no-gui') + + # python('-c', 'import silx.test; silx.test.pytest', '-v') From 43f28adac69c965b48aaac8ca402024dcbcf235e Mon Sep 17 00:00:00 2001 From: Julian Michael Hoersch Date: Wed, 30 Mar 2022 09:42:39 +0200 Subject: [PATCH 94/94] updates --- packages/py-procrunner/package.py | 22 ++++------------------ packages/py-pyopengl/package.py | 24 ++++++++++++++++++++++-- 2 files changed, 26 insertions(+), 20 deletions(-) diff --git a/packages/py-procrunner/package.py b/packages/py-procrunner/package.py index 320c69b..e5cdd15 100644 --- a/packages/py-procrunner/package.py +++ b/packages/py-procrunner/package.py @@ -24,15 +24,13 @@ class PyProcrunner(PythonPackage): - """Versatile utility function to run external processes + """Versatile utility function to run external processes Free software: BSD license Documentation: https://procrunner.readthedocs.io.""" - # FIXME: Add a proper url for your package's homepage here. homepage = "https://procrunner.readthedocs.io" url = "https://github.com/DiamondLightSource/python-procrunner/archive/v2.3.0.tar.gz" - # FIXME: Add a list of GitHub accounts to - # notify when the package is updated. + maintainers = ['RobertRosca', 'julianhoersch'] version('2.3.0', sha256='44a18bfdff242d2efae92a94da40a87b1a0eb3d6248cb459cf94ec719be5edd9') @@ -46,20 +44,8 @@ class PyProcrunner(PythonPackage): version('0.9.1', sha256='f721d7939156aa85fa3cee448005a3626fa23c915dd80e2d61e78f16d7857b4c') version('0.9.0', sha256='b38e889322603790aeb94b78a3682ee74b001a315f8b1df6772abb0bc0aa1afa') - # FIXME: Add dependencies if required. Only add the python dependency - # if you need specific versions. A generic python dependency is - # added implicity by the PythonPackage class. + depends_on('python@3.6:', type=('build', 'run')) depends_on('py-setuptools', type='build') - - # test dependencies - depends_on('py-coverage@:4.9', type='test') - depends_on('py-pytest', type='test') - depends_on('py-pytest-cov', type='test') - depends_on('py-testpath', type='test') - def build_args(self, spec, prefix): - # FIXME: Add arguments other than --prefix - # FIXME: If not needed delete this function - args = [] - return args + diff --git a/packages/py-pyopengl/package.py b/packages/py-pyopengl/package.py index 0ef9f2d..0ba8c30 100644 --- a/packages/py-pyopengl/package.py +++ b/packages/py-pyopengl/package.py @@ -28,20 +28,40 @@ class PyPyopengl(PythonPackage): # FIXME: Add a proper url for your package's homepage here. homepage = "https://pypi.org/project/PyOpenGL/" - url = "https://files.pythonhosted.org/packages/b8/73/31c8177f3d236e9a5424f7267659c70ccea604dab0585bfcd55828397746/PyOpenGL-3.1.5.tar.gz" + # url = "https://files.pythonhosted.org/packages/b8/73/31c8177f3d236e9a5424f7267659c70ccea604dab0585bfcd55828397746/PyOpenGL-3.1.5.tar.gz" # FIXME: Add a list of GitHub accounts to # notify when the package is updated. # maintainers = ['github_user1', 'github_user2'] + pypi = 'PyOpenGL/PyOpenGL-3.1.6.tar.gz' + # https://pypi.org/project/PyOpenGL/ + + version('3.1.6', sha256='8ea6c8773927eda7405bffc6f5bb93be81569a7b05c8cac50cd94e969dce5e27') version('3.1.5', sha256='4107ba0d0390da5766a08c242cf0cf3404c377ed293c5f6d701e457c57ba3424') # FIXME: Add dependencies if required. depends_on('python@3.6:', type=('build', 'run')) depends_on('py-setuptools', type='build') + # depends_on('opengl') + + depends_on('py-cython') + + # depends_on('py-numpy') + # depends_on('freeglut') + # depends_on('py-pillow') + def build_args(self, spec, prefix): # FIXME: Add arguments other than --prefix # FIXME: If not needed delete this function - args = [] + args = ['PYOPENGL_PLATFORM=egl'] return args + + # testing might be dificult due to tox thing + + # def test(self): + + # with working_dir('.'): + + # python('-c', 'import OpenGL; print(dir(OpenGL)); OpenGL.tests()') \ No newline at end of file