Commit Graph

40 Commits

Author SHA1 Message Date
Sylvain Tricot 4aec48b4f6 Provide a "nogui" target in the installation.
It is possible to install msspec without gui, which
reduces a lot the number of dependencies. It is still possible
to export the results as *.png or to view the cluster with
the ase gui.
2024-10-22 12:39:54 +02:00
Sylvain Tricot d1e52eae86 Switch to pyprojetc.toml
The packaging uses now the modern pyproject.toml and setup.cfg files.
The setup.py is deprecated.
2022-10-27 14:45:38 +02:00
Sylvain Tricot 6785e7228a Fix attrdict issue when building wxPython>=4.2.0
When building wxPython, the "attrdict" package is needed, but is
now incompatible with Python > 3.10, due to the "collections" package.
The workaround is to ship a patched version of "attrdict" along with
msspec since "attrdict" isn't developped anylonger.
2022-10-25 16:24:23 +02:00
Sylvain Tricot 2bdc9943b9 Fix numpy bug with alen()
* The numpy.alen() function is deprecated. We use len() instead
* The use of pkg_resources is discouraged. We use importlib.metadata
  instead. I also removed setuptools_scm get_version. I switch to
  a simple call to "git describe", easier now that we use git flow
* The build fails with python3.10 if compiling wx from sources.
  A fix in the Makefile will be proposed in a future commit.
2022-10-06 18:19:16 +02:00
Sylvain Tricot a4351f5606 Add a "light" installation of msspec
This is similar to a "devel" installation, but only the
virtualenv is created and the msspec package is installed
inside (not in edit mode). Bindings to the Fortran code
are not built.

It is intended to use msspec functions to create clusters but
without having to install wx.
2022-10-05 13:40:22 +02:00
Sylvain Tricot 8269d35420 Updated venv target in Makefile.
epsi-builds/msspec_python3/pipeline/head This commit looks good Details
The 'venv' target has been modified to ensure that
setuptools is at the latest version, otherwise the
docker image could not be created.

Dockerfile was modified to pull the master branch
instead of the devel one.
2021-09-27 15:50:52 +02:00
Sylvain Tricot 419c55b744 Removed pdf building of the documentation.
epsi-builds/msspec_python3/pipeline/head There was a failure building this commit Details
For the moment, the building of the pdf from the
website is deactivated. It may be activated again
in future commits.
2021-09-24 16:14:50 +02:00
Sylvain Tricot 13f0001dde Change how pip is installed in Makefile
Previously, the ensurepip method was used
but it is not working as expected in some
Python distributions were it is not included.
Falling back to the bootstraping get-pip.py is
safer.
2021-09-23 16:53:02 +02:00
Sylvain Tricot 230340b1fd Work on docker support.
epsi-builds/msspec_python3/pipeline/head There was a failure building this commit Details
pip was not the default script in the virtualenv in the docker image (pip3 was).
So we had to use "ensurepip" as recommended by the pip team.

The Dockerfile was a bit simplified.
2021-09-17 11:55:23 +02:00
Sylvain Tricot 391c4629a7 Split wx target to avoid compiling two times 2021-07-21 23:05:34 +02:00
sylvain tricot a3706d84be Update Makefile doc rule.
epsi-builds/msspec_python3/pipeline/head This commit looks good Details
2021-02-23 10:26:22 +01:00
Sylvain Tricot 299518f194 Add rule to Makefile to build wxPython 2021-02-22 20:28:13 +01:00
Sylvain Tricot ebb450024b Update msspec against its dependencies.
epsi-builds/msspec_python3/pipeline/head This commit looks good Details
MsSpec is now compatible with latest version of WX, of numpy,
scipy, matplotlib...
2021-02-19 08:22:47 +01:00
sylvain tricot d7f004ebec Changes on Makefile to be compatible with Docker. 2021-01-22 17:03:53 +01:00
sylvain tricot 72ba908be1 Improve python path and version checking.
epsi-builds/msspec_python3/pipeline/head This commit looks good Details
In the top Makefile, the Python path and version are first checked
before going any further. This is now done in a more cleaner way
by looking at the "sys.version_info variable"
2021-01-21 11:12:24 +01:00
sylvain tricot 1db975233a Small changes to Makefiles.
epsi-builds/msspec_python3/pipeline/head This commit looks good Details
2021-01-13 18:26:08 +01:00
Sylvain Tricot b8876a7632 Improved install and devel targets in Makefile.
epsi-builds/msspec_python3/pipeline/head This commit looks good Details
2021-01-12 12:20:13 +01:00
Sylvain Tricot 82c555dd27 Add a devel target to the Makefile.
The "devel" target is used to install msspec in developpment mode,
ie along with a clone of the git repo.
2020-12-08 21:28:22 +01:00
Sylvain Tricot d4ed926e55 Work on Makefiles to make install easier...
epsi-builds/msspec_python3/pipeline/head This commit looks good Details
2020-12-02 18:18:47 +01:00
Sylvain Tricot 3834f38aec Add venv and sdist targets.
epsi-builds/msspec_python3/pipeline/head This commit looks good Details
2020-12-02 08:49:59 +01:00
Sylvain Tricot 50219b9f45 Work on topmost Makefile (unittests and install targets)
epsi-builds/msspec_python3/pipeline/head This commit looks good Details
Just began to rewrite the topmost Makefile which will provide
targets for:
  * runing the tests
  * creating the Python venv
  * building and installing the code
  * building the manual and the website

Makefiles in subfolder were also upgraded to fix some issues in
target filenames.
2020-11-30 16:39:29 +01:00
Sylvain Tricot 13593b8870 Revert back to GNU Make for building.
epsi-builds/msspec_python3/pipeline/head This commit looks good Details
Makefiles are easier to maintain, I eventually prefer using GNU Make
instead of scons. SConstruct files will be removed when makefiles will
be ready in a future commit.
2020-11-24 09:57:35 +01:00
Sylvain Tricot 4702d0cb0c Simplify code building and package creation. 2020-03-31 18:28:08 +02:00
Sylvain Tricot 162ffa87bd Fix bugs in packaging procedure.
The version is now not hardcoded anymore in the python module. We use
setuptools_scm or pkg_resources instead.
There was also a bug in the linkage for PED with matrix inversion using
external lapack.
Finally, the install script install now requirements and all requirements
are stored in the requirements.txt file. setup.py looks inside to set its
"install_requires" keyword.
2020-03-12 16:16:28 +01:00
Sylvain Tricot cedbfd823e Fix bugs for energy scan in EIG spectroscopy.
It was impossible to perform an energy scan in EIG spectroscopy.
The calculator and calcio modules were corrected.
We can now compute the spectral radius vs energy with and without
renormalization for EIG spectroscopy mode
The G_n, Sigma_n, Z_n and Lowdin K^2 methods are supported for
the inversion algorithm.

This commit fixes also several issues in the GUI and in the
hemispherical_cluster function
2019-12-12 16:45:12 +01:00
Sylvain Tricot c22f86fe76 Fix bug in install process.
The *.so are now in the fortran folders, so the MANIFEST.in file was updated
to include those shared objects in the pip source distribution
2019-12-06 13:26:22 +01:00
Sylvain Tricot 047458dcf6 Add test coverage report in documentation
Now tests are run through the coverage utility and a report is generated
and available in the FAQ of the html doc.
2019-11-29 17:38:41 +01:00
Sylvain Tricot 54b7e409a0 Work on continuous integration
Add VERBOSE=1 in the make calls in the Jenkinsfile to help debugging
the build jobs in Jenkins
2019-11-29 13:47:52 +01:00
Sylvain Tricot fb671a065e Work on continuous integration.
Changes in the main Makefile to include a "venv" and a "doc" targets
The Jenkinsfile now uses only the Makefile. The CI/CI.bash shell script
should not bu used anymore and will be deleted in a future commit.
2019-11-29 13:20:40 +01:00
Sylvain Tricot 4eceb1bf26 Simplify the install process.
The installation script does not try anymore to create a virtual environment.
A message at the begining recommends to the user to be in a virtual env. That way
it is possible to use virtualenv, conda, python - m venv or none of this to
create (or not) a virtual environment. It's up to the user.

The script is simpler and *should* be POSIX compliant

Files that have been modified in this commit:
- Makefile
- src/Makefile
- src/msspec/spec/fortran/Makefile
- src/msspec/phagen/fortran/Makefile
- src/install.sh
2019-11-28 18:35:37 +01:00
Sylvain Tricot 59c43395c2 Work on install script 2019-11-21 17:09:19 +01:00
Sylvain Tricot 4807474889 Work on continuous integration
* Started port of the previous CI.bash
* Also fix bug in spec.f (stdout was closed so nothing appeared on screen
  at the second call to libspec)
* Work on test suite
  - utils to create clusters are tested
  - PED calculator for polar and azimutal scans are tested
2019-11-20 18:14:00 +01:00
Sylvain Tricot d167bd9f75 Add a help message for options in install.sh 2019-11-19 14:07:57 +01:00
Sylvain Tricot 51afffd97b Work on install script 2019-11-18 17:33:32 +01:00
Sylvain Tricot 9222f5c9d2 Fix bug in install target 2019-11-18 00:37:34 +01:00
Sylvain Tricot 9c4b3320e4 Change Makefile "selfex" target 2019-11-17 23:28:53 +01:00
Sylvain Tricot a3469c53df work on packaging 2019-11-16 00:38:17 +01:00
Sylvain Tricot 923f5580e8 Add version target in toplevel Makefile 2019-11-15 16:07:48 +01:00
Sylvain Tricot c0ad93cea0 Add update_version.py and CI folder 2019-11-15 14:26:16 +01:00
Sylvain Tricot eee2516a02 Add new file hierarchy 2019-11-15 11:16:06 +01:00