Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Corrected the symmetry parser to comply with updates in parsevasp #250

Merged
merged 1 commit into from
Jan 4, 2019

Conversation

espenfl
Copy link
Collaborator

@espenfl espenfl commented Jan 4, 2019

Please check the applicable boxes, thank you:

I, the author consider this PR

  • ready to be reviewed and merged (as soon as tests have passed)
  • work in progress (early feedback welcome)

Interactions with issues / other PRs

type "#" followed by search words to find issues / PRs

fixes:

blocks:

is blocked by:

None of the above but is still related to the following:

Description

Correcting the storage of the symmetry and adding the number of primitive translations. Updating dependency to parsevasp to 0.2.22.

@coveralls
Copy link

Coverage Status

Coverage increased (+0.01%) to 40.445% when pulling dab020d on espenfl:fix_point_symmetry into 1add43c on aiida-vasp:develop.

1 similar comment
@coveralls
Copy link

Coverage Status

Coverage increased (+0.01%) to 40.445% when pulling dab020d on espenfl:fix_point_symmetry into 1add43c on aiida-vasp:develop.

@espenfl espenfl merged commit 160559c into aiida-vasp:develop Jan 4, 2019
espenfl pushed a commit that referenced this pull request Jun 12, 2020
* Updated metaclass dependency to comply with the updated in aiida_core

* Fixed failure to import AbstractNodeMeta for release Aiida version

* Removed explicit version numbering as this was only recently added to the develop branch with version number 1.0.0a2. Instead we now check with a try and use the old metaclass definition of we see an ImportError

* Updated docstring

* Updated test to use the new Aiida function get_strict_version (#171)

* Updated test to use the new Aiida function get_strict_version.

* Fixed the test again to account for the fact that the version function is of course not available for earlier Aiida versions

* Fixed formatting issues

* Pre-commit was not working right in fork. Now formating should be valid.

* Updated in order to avoid has_finished call

* Corrected the update

* Updated correction for has_finished to use the implemented change in develop

* Added parser quantities to output_parameters (#219)

* Added parser quantities to output_parameters

* Minor correction to naming scheme

* Update localhost fixture for the new backend interface (#223)

* Update localhost fixture for the new backend interface

* Use most recent version of aiida_core develop for the dev tests

* Test complex workchains by mocking their sub workchains

* Created a new Module for WorkChain related fixtures.

* Workchains suggestions (#192)

* Changed location of workflows and workchains, added a verify and converge workchain.

* Fixed a few mistakes that happended during merge

* Minor compliance fixes

* Fixed a few issues

* Updated the tests

* Updated the workchain tests to only run on Ubuntu using the distro package

* Added a file that performs first convergence tests and then relaxation

* Added an auxiliary function to separate the use of potcar in the workchain

* Updated tests

* Updated the tests again

* Updated the tests again to enable relaxation

* Moved creation of output_parameters to results in the relax workchain

* Added a test that checks that the structure from the POSCAR/CONTCAR parser is the same as from the xml parser

* Added test file

* Changed name of test data directory of the relax workchain test

* Submitting a test to verify mock-vasp locations on Travis

* Updated workchains to comply with tests.

* Fixed parsevasp dependency

* Updated the check for has_finished to exit_status

* Cleaned up location of a few code segments and their location

* Updated name on tests

* Added a test to see if output_chgcar is in the output of a standard execution of a VASP workchain

* Moved utilitarian functions to utils.workchains to comply with current structure

* Fixed docstring

* Refactored some code in the convergence workchain and fixed a few statements to comply standards in Aiida and the plugin

* Updated the convergence test and applied a few bugfixes that was discovered during testing

* Added testfile for convergence tests

* Updated formatting

* Updated formatting to comply with new yapf version

* Final updates

* Updated localhost fixture to comply updates in Aiida develop

* Updated tox to use recent Aiida

* Put the test for the convergence workchain to xfail since Travis does not support runs over 10 min which are silent.

* Updated convergence test to skip.

* Updated test of the relax workchain

* Removed some redundant methods

* Updated workchains, added new test and test data

* Enable longer than 10 minute runs on Travis (now 20 minutes) (#226)

* Enable longer than 10 minute runs on Travis (now 20 minutes)

* Updated Travis config to explicitly remove Postgresql 9.2

* Updated Travis config again

* Updated calls to parsevasp to utilize Aiida logger (#225)

* Updated (#227)

Thanks Rico!

* relax-wc _set_ibrion to -1 only when p,s,v all False (#228)

* Fix verifynextwc docstrings (#230)

* Updated

* Updated docstring and made the verify_next_workchain methods more consistent

* Fix force fetching (#231)

* Updated

* Added support for extraction of forces

* Added a test for the return of the stress

* Fixed formatting

* Fixed formatting

* Renamed files of the parser settings and manager and fixed the entry for the stress

* Final fix of formatting after yapf version change

* Lock tests a4 (#234)

* Updated

* Locked down development tests to aiida a4

* Updated the Travis config file

* Updated the Travis config file

* Updated the Travis config file

* Added strpath to the version updater

* Formatting and pytest version in line with Aiida

* Updated to code comply with the changes in the versions

* Updated lockdown of ASE version which caused issues.

* Documentation to kick-start AiiDA-VASP calculation (#235)

Thanks a lot Togo!

* Add an example of submitting non-workflow calculation (#233)

* Add an example of submitting non-workflow calculation

* Fixed formatting.

Fixed formatting due to yapf version change.

* Fix immigrant when POTCAR exists (#232)

Thanks for the contribution Togo.

* Support for bandstructure (#239)

* Updated

* Added export outputs to the workchains and started to work on a workchain to extract the bandstructure

* Added support for extraction of the band structure using SeeKPath

* Removed check of ADDITIONAL_RETREIVE_LIST due to failing tests.

* Added check for settings in the convergence workchain.

* Added a test for the band structure workchain

* Updated the relative tolerance

* Updated parsevasp 0.2.19 requirement (#240)

* Updated

* Updated requirement of parsevasp to 0.2.19

* Parser: custom node support + adding a node composer (#204)

* Add support for custom nodes

* Added a NodeComposer

* Renamed parsers.output_node_definitons to parsers.node_composer

* Update IncarParser and test_relax_wf

* Updated mock_vasp.py with short-cut property for IncarParser

* Unified the interface for 'add_node_name' in 'parser_settings'

* Update VaspImmigrant for using the node_composer short cuts

* Added a test for potential future conflicts with parsevasp

* Rework of the conistency test

* Updated DoscarParser test for the node_composer

* Updated 'test_parameter_results' after merge

* Updated

* Merged with develop and removed pre-commit from Travis until they release an issue which fixes the depreciated no-ri option

* Fixed unstable test condition for the band structure workchain

* Another try on unstable test condition for the band structure workchain

* Yet another update for the test

* Removing rtol as it is not necessary

* Commenting out the test that fails on Travis. Numpy version?

* New outcar parser (#247)

* Updated

* Almost done with the OUTCAR parser

* Updated parsevasp version dependency to 0.2.21

* Added a test that checks extraction on both OUTCAR and vasprun.xml

* Removed erroneous comments

* Added test files

* Support for epsilon (#248)

* Added test files

* Added support for extraction of epsilon and epsilon_ion from the xml parser

* Removed spurious file

* Fix parser inconsistencies (#249)

* Added test files

* Removed alternative quantities for the energies and added the relay of forces and stress to the VASP workchain, which was missing

* Removed a spurious file, and corrected the symmetry parser to comply with the present updates of parsevasp (#250)

* Migration beta (#282)

* Added test files

* Start of conversion to AiiDA beta

* Fixed pre-commit, prospector and yaml version to AiiDA beta

* Updated docstring to reflect name change from ParameterData to Dict

* Updated remaining files to Python3

* Updated the data class fetchers to use dict instead of parameter

* Fixed load of Code

* Removed get_file_abs_path, except for the parser. Temp fix which uses the open from SinglefileData and writes the new files.

* Updated user and authinfo fetching to comply with AiiDA beta spec

* Added local_copy_list due to the removal of the absolute paths for SinglefileData

* Removed old legacy backendtests which has not been used for a while.

* Moved io folder to a file_parsers folder under parsers

* Added file parser tests

* Added back the check for the basic datatypes when calling get_data_node and get_data_class

* Updated the parser for Aiida 1.0

* Added test to check that we get the correct class and instance using get_data_class and get_data_node

* Relaced database load function with decorator

* Updated a few tests

* Fixing python 3 deprecated .im_func.

* Updated the parser tests

* Merging changes back

* Remove IncarIo and fixed the INCAR parser tests

* Name change from KpParser to KpointsParser

* Update python 2, 3

* Replaced get_attrs and updated KPOINTS parser

* Fixed the test for the OUTCAR parser

* Fixed aiida_env on file parsers

* Moved the old querybuild from old AiiDA into aiida_utils

* Repairing test_vasp_parser

* Migrated PotcarData

* Fixing data/tests and utils/tests

* Fixed the calculation tests

* Moved the StringIO check by six to the import module level

* Added str to convert Path to string before passing it to Folder

* Fixed default user check for test cases

* Workchain fixes

* Fixed typo on the exit status, basic workchain now runs

* Updated relax and the base workchain to work with AiiDA beta

* Updated convergence workchain and package dependencies

* Fixed remaining iteritems

* Locked down to latest AiiDA beta

* Changed default exit status from None to ERROR_UNKNOWN

* Fixed exit_codes

* Fixed basestring

* Updated parsevasp dependency and calcfunction fix to converge workchain

* Further fixes on the workchains

* Updated the immigrator

* Inherit from VaspCalculation in order to avoid multiple defines

* Updated immigrator to pass the test

* Updated error codes for potentials and fixed interface of immigrator

* Fixed passing of parameters

* Removed tuple on kind name to be consistent with calculation

* Fixed typo

* Updated withmpi to be set to True unless explicitly set by user

* Changed from md5 to sha512 checks on the potentials

* Updated node configuration to include forces and stress

* Fixed typos

* Remove output_ from the output nodes

* Updated README

* Updated parsevasp dependency

* Moved the INCAR parser to parsevasp and got rid of the legacy INCAR parser

* Fixed logger instance passing and parser settings.

- Fixed passing of the AiiDA logger instance to parsevasp in order to avoid DEBUG printouts from AiiDA (parsevasp sets the default logger if it does not receive a logger instance).
- Removed parsing of the structure for the static run that follows a relaxation.
- Fixed some linting.

* Added energy and force cutoff to the relaxation workchain

* Added check for AttributeError to the relaxation parameters

* Enabled return of exit codes from the Parser

* Unified workchain tests

* Fixed potential import in immigrator

* Migration beta (#275)

* Fix immigrant to get potential_mapping correctly

* Removed unnecessary lines

* Fixed the calcfunction in the convergence test

* Code cleanup and parsevasp 0.4.0 dependency

* Updated parsevasp dependency to 0.4.1

* Fixed renaming of Group.name to Group.label in AiiDA

* Updated authors and contributers

* Updated parsevasp dependency to 0.4.2

* Updated dependencies

* Updated documentation and docstrings

* Added requirements file for docs

* Removed requirements file

* Modified existing requirements file

* Added readthedocs config file

* Updated requirements to include atomic_tools for aiida-core

* Added requirements.txt file

* Moved the readthedocs.yml file to root

* Updated readthedocs.yml file

* Updated readthedocs.yml file

* Updated readthedocs.yml file

* Pinned sphinx version for readthedocs

* Updated readthedocs.yml file

* Updated port name from parameter to misc

* Renamed kickstart tutorial to conda tutorial and linked

* Fixed wrong ExitCode import

* Renamed tutorial file

* Updated documentation

* Update documents (#279)

* Update conda.rst

* Collection of minor updates of documentation

* Update example scripts of relax and verify workchains

* Added git describe to doc versioning

* Removed Python 2.7 tests

* Changed from trusty to xenial for Python 3.7

* Reverting to default location og pg_ctl

* Dropping Python 3 tests to 3.6

* Added RabbitMQ as a service at Travis

* Updated docstrings

* Updated import of fixtures

* Enable access to localhost on Travis

* Execute permission on bash script

* Added RabbitMQ package to Xenial on Travis

* Added aiida-vasp as requirements for RTD

* Added https for aiida-vasp

* Added backend config for docs

* Added tutorial section to the documentation

* Add bulk modulus workchain

* Add tutorial of running vasp taking example of bulk modulus calculation

* Add tutorial of python/aiida tips before running vasp

* Update bulk modulus workchain, now it works at a marginal level

* Reset parameter on final static calculation

* Preparing for release 0.3.0 (#283)

* Update bulk modulus workchain following the update of relax workchain

* Removed AiiDA Sphinx in wait for update in core code

* Remove bulk modulus workchain

* Removed apidoc

* Updated tutorial document

* Updated tutorial document

* Added the aiida.sphinx extension again

* Removed the aiida.sphinxext

* Updated tutorial document

* Updated tutorial document to SnO2 from AlN

* Added tutorial potentials and doc

* Added AiiDA config files for tutorial

* Updated the setup instructions

* Changed formatting of the initial setup

* Tutorial documentation update by replacing example with SnO2 to wurtzite-type SiC

* Updated documentation examples with numbering

* Updated the bulk modulus tutorial

* Added run_vasp files

* Updated the documentation

* Updated documentation

* Update documentation

* Updated documentation

* Updated documentation

* Updated documentation

* Updated documentation

* Updated documentation

* Updated documentation

* Updated documentation

* Updated documentation

* Updated documentation

* Updated documentation

* Updated the documentation

* Update tutorial documentation of bulk modulus workchain

* Update tutorial documentation of bulk modulus workchain

* Update tutorial documentation of bulk modulus script

* Updated documentation

* Updated documentation

* Updated documentation

* Updated documentation

* Updated documentation

* Minor documentation fixes (#284)

* Added sphinx rtd in requirement.txt as it's used by default in the
docs Makefile
* Fixed misindentation in doc page on adding a code

* Updated documentation, linting and cookiecutter

- Added a cookiecutter recipe for workchains

- Updated the documentation

- Added the fcc Si tutorial from the VASP wiki

- Added rst pre-commit checks and updated the pre-commit checks in general

* Removed legacy runwf from setup.json

* Updated documentation

* Updated documentation

* Changed input namespaces for the workchains

* Updating documentation

* Fixed a bug in the convergence workchain and namespace setup

* Updated bands workchain namespace

* Updated additional namespaces

* Removed parsing of CHGCAR and replaced it with a restart

* Updated restart from charge density behavior when extracting bands

* Updated the documentation, relinked install of plugin

* Updated master workchain to support dos extraction

* Updated test for relax workchain

* Updated bands and relax workchain test

* Removed six dependency and fixed workchain tests

* Remove band workchain from running tests

* Removed pg_ctl and account names

* Changed yapf formatting after version pinning

* Added version printouts to Travis config file

* Updated pre-commit config due to invalid keys

* Updated core dependency and removed old extra

* Added D415 isolation to prospector

* Added prospector in separate repo of pre-commit

* Updated documentation and removed D205 in docstrings

* Remove root_dir fetcher from fixture manager

* Cleaned AiiDA environments on tests and updated manager

* Updated fixture manager to use new fixture interface

* Added in missing geometry relaxation modes (#285)

The ability to relax the cell shape and volume or just the volume were
missing from the convergence workflow.  These have been added in,
corresponding to a VASP ISIF settin of 6 or 7, respectively.

Also raising more meaningful exception if an unsupported combination of
relaxation options is passed.  Test added.

* Remove redundant with_dbenvs

* Added how to run tests to the documentation

* Added file containing the running tests documentation

* Introduced retrieve_temporary_list (#288)

In order to enable automatic deletion of files after parsing `retrieve_temporary_list` is available in AiiDA. This replaced the `retrieve_list` which do not delete any file after parsing is completed. The current behavior is that all files are delated after parsing unless specific filenames are added using `ADDITIONAL_RETRIEVE_LIST`.

* Fixed issue with analysing positional lengths in relaxation workchain (#290)

* Fixed issue with analysing positional lengths in relaxation workchain

Due to nan entries the `max` function failed and the relaxation workchain
did not work as expected. This is now fixed, we keep the nan, but act
on the raised `RuntimeWarning` from numpy and set force the convergence
to not be complete if this in encountered. An update to the plane wave
and k-point convergence workchain is also performed in order to enable a final
run using relaxation and the converged plane wave and k-point cutoffs.

* Fixed the positional convergence test

* Updated parsevasp dependency and fixed semantics in doc (#292)

* Updated help text for POTCAR handling (#293)

* Updated to account for all VASP output files (#295)

* Fixed wrong call to nanmax (#296)

* Updated convergence data output to rest in the converge namespace (#298)

* Changed ISIF from 1 to 2 (#300)

* Fixed problem of relaxation override (#302)

* symbols should be stored by set_attribute for TrajectoryData. (#303)

* symbols should be stored by set_attribute for TrajectoryData.

* Add docstring on _compose_array_trajectory

* Disabled D416 to enable numpydoc

* Replaced old convergence_data (#309)

* Compatibility with AiiDA 1.1.0 (#312)

* Compatibility with AiiDA 1.1.0

In this commit we clean up the package dependencies such that we strictly follow AiiDA versioning also on the development and testing part which makes it easier to perform development on both aiida-core and aiida-vasp.

In addition, liniting was redone to suite updated versions.

Note that we had to disable the immigrator tests since they got stuck forever. Solving this is left as an issue.

* Added parallel flag to coverage config

* Generalization of workchains (#314)

In order to open for the use of the workchains in other codes, we here decouple the workchains and the VASP specific parameters. In the workchains we use AiiDA/workchain specific parameters, which is translated at the code specific workchain in the workchain stack to code specific parameters. This concept can also be utilized by other codes.

* Excluded the POTCAR file from the storage in the repository (#315)

* Add lambda on input defaults (#316)

To comply with the update aiidateam/aiida-core#3466 we here incorporate lambda on all input nodes that are of an AiiDA data type. This is done to make it clear that we want to supply a immutable object as input. This also fixes the problem of not being able to run consequetive workchain tests, so in this PR all of the present workchain tests are finally enabled. In addition this PR fixes the previous problems of not being able to build RTD due to the need of a backend. Please consult aiidateam/aiida-core#3466 and reference therein for additional details.

* Make sure always retrieve files are stored by default (#322)

* Make sure always retrieve files are stored by default

The always retrieve files are now stored as a default. This can be changed by setting ALWAYS_STORE to False in the settings, or as before specify ALWAYS_RETRIEVE_LIST and ALWAYS_RETRIEVE_TEMPORARY_LIST, also in settings. A few tests to tests different combinations have been introduced.

* Pinned to AiiDA 1.1 due to issue 323

* Removed print

* With the recent aiidateam/aiida-core#3935 #323 is not strictly necessary and we can lift the pinning to AiiDA core 1.1. (#326)

Thanks @atztogo.

* #320 related stuff and other minor fixes (#321)

* Making parser work when  no temporary folder

The parser can handle the case there is to no temporary retrieve folder.
But it would throw an error code. This commit let it throw the error
only when both retrieve folders are not present.
This also allows parsing exising calcjobs
using `VaspParser.parse_from_node`.

* Warn if `parser_name` is not defined

* Fix a bug where massage does not work with uppercased keys

* Fix linter warnings

* Let VaspCalculation default to use vasp.vasp parser

* VaspWorkChain no longer sets parser_name updated test

Co-authored-by: Espen <espen.flage-larsen@sintef.no>

* Fixed immigrator by adding explicit call to presubmit (#334)

* Fixed immigrator by adding explicit call to presubmit

* Updating return values due to pending PR in AiiDA core

* Added AiiDA trove classifier (#340)

* Fixed migration of the Wannier90 interface (#341)

* Update tutorial documents (#344)

* fix tab-completion

* example for SGE

* fix tutorials numbering

* remove account name and fix attribute name

* Fixed skipped test for band workchain (#343)

* Fixed skipped test for band workchain

* Moved bands related parameters to the parameter massager

* Added additional tests for smearing, charge and bands parameters

* Moved override input parameters into a namespace (#348)

In order to be able to check any supplied override parameters we needed to move these into a dedicated namespace. This namespace, now also corresponds well to the workchain where the conversion takes place.

* Catch invalid INCAR tags (#333)

* Catch invalid INCAR tags

* Added checking of invalid INCAR for ParametersMassage

* Updated tests and removed redundant namespace list

Co-authored-by: espenfl <espen.flage-larsen@sintef.no>

* Added sphinxcontrib-details-directive to requirements (#350)

* Remove coverage combine as we are only building one report (#351)

* Updated travis and tox settings (#352)

* Enabled GitHub Actions workflow and Codecov (#353)

* Added Codecov badge and removed Coveralls (#354)

* Added Codecov badge and removed Coveralls

* Added codecov config file to enable status check

* Enabled the remaining code for coverage analysis (#355)

* Enabled the remaining code for coverage analysis

* Updated codecov config

* Removed fix for repo

* Updated the setup json file (#357)

* Updated the readme to include more badges (#358)

* Added badges into a table (#359)

* Update documentation (#361)

* Removed warning for included POTCAR and minor fixes in doc

* Added note about incomplete doc of workchains

* Parsing of the magnetization and magnetization node (#360)

* Adding parsing of the magnetization

* Adding the site magnetization as its own node in the output

* Added tests for the parsing of the magnetization

* Fixed too long line

* Fixed linting

* Changed the magnetization tests so that they use only a single parsing function

Co-authored-by: espenfl <espen.flage-larsen@sintef.no>

Co-authored-by: mcallsen <35340473+mcallsen@users.noreply.github.com>
Co-authored-by: Jason.Yu <morty.yu@yahoo.com>
Co-authored-by: Atsushi Togo <atz.togo@gmail.com>
Co-authored-by: Martin Uhrin <martin.uhrin@gmail.com>
Co-authored-by: Bonan Zhu <33688599+zhubonan@users.noreply.github.com>
Co-authored-by: Kohei Shinohara <kohei19950508@gmail.com>
Co-authored-by: Jonathan Chico <37243453+JPchico@users.noreply.github.com>
espenfl pushed a commit that referenced this pull request Jun 13, 2020
* Updated metaclass dependency to comply with the updated in aiida_core

* Fixed failure to import AbstractNodeMeta for release Aiida version

* Removed explicit version numbering as this was only recently added to the develop branch with version number 1.0.0a2. Instead we now check with a try and use the old metaclass definition of we see an ImportError

* Updated docstring

* Updated test to use the new Aiida function get_strict_version (#171)

* Updated test to use the new Aiida function get_strict_version.

* Fixed the test again to account for the fact that the version function is of course not available for earlier Aiida versions

* Fixed formatting issues

* Pre-commit was not working right in fork. Now formating should be valid.

* Updated in order to avoid has_finished call

* Corrected the update

* Updated correction for has_finished to use the implemented change in develop

* Added parser quantities to output_parameters (#219)

* Added parser quantities to output_parameters

* Minor correction to naming scheme

* Update localhost fixture for the new backend interface (#223)

* Update localhost fixture for the new backend interface

* Use most recent version of aiida_core develop for the dev tests

* Test complex workchains by mocking their sub workchains

* Created a new Module for WorkChain related fixtures.

* Workchains suggestions (#192)

* Changed location of workflows and workchains, added a verify and converge workchain.

* Fixed a few mistakes that happended during merge

* Minor compliance fixes

* Fixed a few issues

* Updated the tests

* Updated the workchain tests to only run on Ubuntu using the distro package

* Added a file that performs first convergence tests and then relaxation

* Added an auxiliary function to separate the use of potcar in the workchain

* Updated tests

* Updated the tests again

* Updated the tests again to enable relaxation

* Moved creation of output_parameters to results in the relax workchain

* Added a test that checks that the structure from the POSCAR/CONTCAR parser is the same as from the xml parser

* Added test file

* Changed name of test data directory of the relax workchain test

* Submitting a test to verify mock-vasp locations on Travis

* Updated workchains to comply with tests.

* Fixed parsevasp dependency

* Updated the check for has_finished to exit_status

* Cleaned up location of a few code segments and their location

* Updated name on tests

* Added a test to see if output_chgcar is in the output of a standard execution of a VASP workchain

* Moved utilitarian functions to utils.workchains to comply with current structure

* Fixed docstring

* Refactored some code in the convergence workchain and fixed a few statements to comply standards in Aiida and the plugin

* Updated the convergence test and applied a few bugfixes that was discovered during testing

* Added testfile for convergence tests

* Updated formatting

* Updated formatting to comply with new yapf version

* Final updates

* Updated localhost fixture to comply updates in Aiida develop

* Updated tox to use recent Aiida

* Put the test for the convergence workchain to xfail since Travis does not support runs over 10 min which are silent.

* Updated convergence test to skip.

* Updated test of the relax workchain

* Removed some redundant methods

* Updated workchains, added new test and test data

* Enable longer than 10 minute runs on Travis (now 20 minutes) (#226)

* Enable longer than 10 minute runs on Travis (now 20 minutes)

* Updated Travis config to explicitly remove Postgresql 9.2

* Updated Travis config again

* Updated calls to parsevasp to utilize Aiida logger (#225)

* Updated (#227)

Thanks Rico!

* relax-wc _set_ibrion to -1 only when p,s,v all False (#228)

* Fix verifynextwc docstrings (#230)

* Updated

* Updated docstring and made the verify_next_workchain methods more consistent

* Fix force fetching (#231)

* Updated

* Added support for extraction of forces

* Added a test for the return of the stress

* Fixed formatting

* Fixed formatting

* Renamed files of the parser settings and manager and fixed the entry for the stress

* Final fix of formatting after yapf version change

* Lock tests a4 (#234)

* Updated

* Locked down development tests to aiida a4

* Updated the Travis config file

* Updated the Travis config file

* Updated the Travis config file

* Added strpath to the version updater

* Formatting and pytest version in line with Aiida

* Updated to code comply with the changes in the versions

* Updated lockdown of ASE version which caused issues.

* Documentation to kick-start AiiDA-VASP calculation (#235)

Thanks a lot Togo!

* Add an example of submitting non-workflow calculation (#233)

* Add an example of submitting non-workflow calculation

* Fixed formatting.

Fixed formatting due to yapf version change.

* Fix immigrant when POTCAR exists (#232)

Thanks for the contribution Togo.

* Support for bandstructure (#239)

* Updated

* Added export outputs to the workchains and started to work on a workchain to extract the bandstructure

* Added support for extraction of the band structure using SeeKPath

* Removed check of ADDITIONAL_RETREIVE_LIST due to failing tests.

* Added check for settings in the convergence workchain.

* Added a test for the band structure workchain

* Updated the relative tolerance

* Updated parsevasp 0.2.19 requirement (#240)

* Updated

* Updated requirement of parsevasp to 0.2.19

* Parser: custom node support + adding a node composer (#204)

* Add support for custom nodes

* Added a NodeComposer

* Renamed parsers.output_node_definitons to parsers.node_composer

* Update IncarParser and test_relax_wf

* Updated mock_vasp.py with short-cut property for IncarParser

* Unified the interface for 'add_node_name' in 'parser_settings'

* Update VaspImmigrant for using the node_composer short cuts

* Added a test for potential future conflicts with parsevasp

* Rework of the conistency test

* Updated DoscarParser test for the node_composer

* Updated 'test_parameter_results' after merge

* Updated

* Merged with develop and removed pre-commit from Travis until they release an issue which fixes the depreciated no-ri option

* Fixed unstable test condition for the band structure workchain

* Another try on unstable test condition for the band structure workchain

* Yet another update for the test

* Removing rtol as it is not necessary

* Commenting out the test that fails on Travis. Numpy version?

* New outcar parser (#247)

* Updated

* Almost done with the OUTCAR parser

* Updated parsevasp version dependency to 0.2.21

* Added a test that checks extraction on both OUTCAR and vasprun.xml

* Removed erroneous comments

* Added test files

* Support for epsilon (#248)

* Added test files

* Added support for extraction of epsilon and epsilon_ion from the xml parser

* Removed spurious file

* Fix parser inconsistencies (#249)

* Added test files

* Removed alternative quantities for the energies and added the relay of forces and stress to the VASP workchain, which was missing

* Removed a spurious file, and corrected the symmetry parser to comply with the present updates of parsevasp (#250)

* Migration beta (#282)

* Added test files

* Start of conversion to AiiDA beta

* Fixed pre-commit, prospector and yaml version to AiiDA beta

* Updated docstring to reflect name change from ParameterData to Dict

* Updated remaining files to Python3

* Updated the data class fetchers to use dict instead of parameter

* Fixed load of Code

* Removed get_file_abs_path, except for the parser. Temp fix which uses the open from SinglefileData and writes the new files.

* Updated user and authinfo fetching to comply with AiiDA beta spec

* Added local_copy_list due to the removal of the absolute paths for SinglefileData

* Removed old legacy backendtests which has not been used for a while.

* Moved io folder to a file_parsers folder under parsers

* Added file parser tests

* Added back the check for the basic datatypes when calling get_data_node and get_data_class

* Updated the parser for Aiida 1.0

* Added test to check that we get the correct class and instance using get_data_class and get_data_node

* Relaced database load function with decorator

* Updated a few tests

* Fixing python 3 deprecated .im_func.

* Updated the parser tests

* Merging changes back

* Remove IncarIo and fixed the INCAR parser tests

* Name change from KpParser to KpointsParser

* Update python 2, 3

* Replaced get_attrs and updated KPOINTS parser

* Fixed the test for the OUTCAR parser

* Fixed aiida_env on file parsers

* Moved the old querybuild from old AiiDA into aiida_utils

* Repairing test_vasp_parser

* Migrated PotcarData

* Fixing data/tests and utils/tests

* Fixed the calculation tests

* Moved the StringIO check by six to the import module level

* Added str to convert Path to string before passing it to Folder

* Fixed default user check for test cases

* Workchain fixes

* Fixed typo on the exit status, basic workchain now runs

* Updated relax and the base workchain to work with AiiDA beta

* Updated convergence workchain and package dependencies

* Fixed remaining iteritems

* Locked down to latest AiiDA beta

* Changed default exit status from None to ERROR_UNKNOWN

* Fixed exit_codes

* Fixed basestring

* Updated parsevasp dependency and calcfunction fix to converge workchain

* Further fixes on the workchains

* Updated the immigrator

* Inherit from VaspCalculation in order to avoid multiple defines

* Updated immigrator to pass the test

* Updated error codes for potentials and fixed interface of immigrator

* Fixed passing of parameters

* Removed tuple on kind name to be consistent with calculation

* Fixed typo

* Updated withmpi to be set to True unless explicitly set by user

* Changed from md5 to sha512 checks on the potentials

* Updated node configuration to include forces and stress

* Fixed typos

* Remove output_ from the output nodes

* Updated README

* Updated parsevasp dependency

* Moved the INCAR parser to parsevasp and got rid of the legacy INCAR parser

* Fixed logger instance passing and parser settings.

- Fixed passing of the AiiDA logger instance to parsevasp in order to avoid DEBUG printouts from AiiDA (parsevasp sets the default logger if it does not receive a logger instance).
- Removed parsing of the structure for the static run that follows a relaxation.
- Fixed some linting.

* Added energy and force cutoff to the relaxation workchain

* Added check for AttributeError to the relaxation parameters

* Enabled return of exit codes from the Parser

* Unified workchain tests

* Fixed potential import in immigrator

* Migration beta (#275)

* Fix immigrant to get potential_mapping correctly

* Removed unnecessary lines

* Fixed the calcfunction in the convergence test

* Code cleanup and parsevasp 0.4.0 dependency

* Updated parsevasp dependency to 0.4.1

* Fixed renaming of Group.name to Group.label in AiiDA

* Updated authors and contributers

* Updated parsevasp dependency to 0.4.2

* Updated dependencies

* Updated documentation and docstrings

* Added requirements file for docs

* Removed requirements file

* Modified existing requirements file

* Added readthedocs config file

* Updated requirements to include atomic_tools for aiida-core

* Added requirements.txt file

* Moved the readthedocs.yml file to root

* Updated readthedocs.yml file

* Updated readthedocs.yml file

* Updated readthedocs.yml file

* Pinned sphinx version for readthedocs

* Updated readthedocs.yml file

* Updated port name from parameter to misc

* Renamed kickstart tutorial to conda tutorial and linked

* Fixed wrong ExitCode import

* Renamed tutorial file

* Updated documentation

* Update documents (#279)

* Update conda.rst

* Collection of minor updates of documentation

* Update example scripts of relax and verify workchains

* Added git describe to doc versioning

* Removed Python 2.7 tests

* Changed from trusty to xenial for Python 3.7

* Reverting to default location og pg_ctl

* Dropping Python 3 tests to 3.6

* Added RabbitMQ as a service at Travis

* Updated docstrings

* Updated import of fixtures

* Enable access to localhost on Travis

* Execute permission on bash script

* Added RabbitMQ package to Xenial on Travis

* Added aiida-vasp as requirements for RTD

* Added https for aiida-vasp

* Added backend config for docs

* Added tutorial section to the documentation

* Add bulk modulus workchain

* Add tutorial of running vasp taking example of bulk modulus calculation

* Add tutorial of python/aiida tips before running vasp

* Update bulk modulus workchain, now it works at a marginal level

* Reset parameter on final static calculation

* Preparing for release 0.3.0 (#283)

* Update bulk modulus workchain following the update of relax workchain

* Removed AiiDA Sphinx in wait for update in core code

* Remove bulk modulus workchain

* Removed apidoc

* Updated tutorial document

* Updated tutorial document

* Added the aiida.sphinx extension again

* Removed the aiida.sphinxext

* Updated tutorial document

* Updated tutorial document to SnO2 from AlN

* Added tutorial potentials and doc

* Added AiiDA config files for tutorial

* Updated the setup instructions

* Changed formatting of the initial setup

* Tutorial documentation update by replacing example with SnO2 to wurtzite-type SiC

* Updated documentation examples with numbering

* Updated the bulk modulus tutorial

* Added run_vasp files

* Updated the documentation

* Updated documentation

* Update documentation

* Updated documentation

* Updated documentation

* Updated documentation

* Updated documentation

* Updated documentation

* Updated documentation

* Updated documentation

* Updated documentation

* Updated documentation

* Updated documentation

* Updated the documentation

* Update tutorial documentation of bulk modulus workchain

* Update tutorial documentation of bulk modulus workchain

* Update tutorial documentation of bulk modulus script

* Updated documentation

* Updated documentation

* Updated documentation

* Updated documentation

* Updated documentation

* Minor documentation fixes (#284)

* Added sphinx rtd in requirement.txt as it's used by default in the
docs Makefile
* Fixed misindentation in doc page on adding a code

* Updated documentation, linting and cookiecutter

- Added a cookiecutter recipe for workchains

- Updated the documentation

- Added the fcc Si tutorial from the VASP wiki

- Added rst pre-commit checks and updated the pre-commit checks in general

* Removed legacy runwf from setup.json

* Updated documentation

* Updated documentation

* Changed input namespaces for the workchains

* Updating documentation

* Fixed a bug in the convergence workchain and namespace setup

* Updated bands workchain namespace

* Updated additional namespaces

* Removed parsing of CHGCAR and replaced it with a restart

* Updated restart from charge density behavior when extracting bands

* Updated the documentation, relinked install of plugin

* Updated master workchain to support dos extraction

* Updated test for relax workchain

* Updated bands and relax workchain test

* Removed six dependency and fixed workchain tests

* Remove band workchain from running tests

* Removed pg_ctl and account names

* Changed yapf formatting after version pinning

* Added version printouts to Travis config file

* Updated pre-commit config due to invalid keys

* Updated core dependency and removed old extra

* Added D415 isolation to prospector

* Added prospector in separate repo of pre-commit

* Updated documentation and removed D205 in docstrings

* Remove root_dir fetcher from fixture manager

* Cleaned AiiDA environments on tests and updated manager

* Updated fixture manager to use new fixture interface

* Added in missing geometry relaxation modes (#285)

The ability to relax the cell shape and volume or just the volume were
missing from the convergence workflow.  These have been added in,
corresponding to a VASP ISIF settin of 6 or 7, respectively.

Also raising more meaningful exception if an unsupported combination of
relaxation options is passed.  Test added.

* Remove redundant with_dbenvs

* Added how to run tests to the documentation

* Added file containing the running tests documentation

* Introduced retrieve_temporary_list (#288)

In order to enable automatic deletion of files after parsing `retrieve_temporary_list` is available in AiiDA. This replaced the `retrieve_list` which do not delete any file after parsing is completed. The current behavior is that all files are delated after parsing unless specific filenames are added using `ADDITIONAL_RETRIEVE_LIST`.

* Fixed issue with analysing positional lengths in relaxation workchain (#290)

* Fixed issue with analysing positional lengths in relaxation workchain

Due to nan entries the `max` function failed and the relaxation workchain
did not work as expected. This is now fixed, we keep the nan, but act
on the raised `RuntimeWarning` from numpy and set force the convergence
to not be complete if this in encountered. An update to the plane wave
and k-point convergence workchain is also performed in order to enable a final
run using relaxation and the converged plane wave and k-point cutoffs.

* Fixed the positional convergence test

* Updated parsevasp dependency and fixed semantics in doc (#292)

* Updated help text for POTCAR handling (#293)

* Updated to account for all VASP output files (#295)

* Fixed wrong call to nanmax (#296)

* Updated convergence data output to rest in the converge namespace (#298)

* Changed ISIF from 1 to 2 (#300)

* Fixed problem of relaxation override (#302)

* symbols should be stored by set_attribute for TrajectoryData. (#303)

* symbols should be stored by set_attribute for TrajectoryData.

* Add docstring on _compose_array_trajectory

* Disabled D416 to enable numpydoc

* Replaced old convergence_data (#309)

* Compatibility with AiiDA 1.1.0 (#312)

* Compatibility with AiiDA 1.1.0

In this commit we clean up the package dependencies such that we strictly follow AiiDA versioning also on the development and testing part which makes it easier to perform development on both aiida-core and aiida-vasp.

In addition, liniting was redone to suite updated versions.

Note that we had to disable the immigrator tests since they got stuck forever. Solving this is left as an issue.

* Added parallel flag to coverage config

* Generalization of workchains (#314)

In order to open for the use of the workchains in other codes, we here decouple the workchains and the VASP specific parameters. In the workchains we use AiiDA/workchain specific parameters, which is translated at the code specific workchain in the workchain stack to code specific parameters. This concept can also be utilized by other codes.

* Excluded the POTCAR file from the storage in the repository (#315)

* Add lambda on input defaults (#316)

To comply with the update aiidateam/aiida-core#3466 we here incorporate lambda on all input nodes that are of an AiiDA data type. This is done to make it clear that we want to supply a immutable object as input. This also fixes the problem of not being able to run consequetive workchain tests, so in this PR all of the present workchain tests are finally enabled. In addition this PR fixes the previous problems of not being able to build RTD due to the need of a backend. Please consult aiidateam/aiida-core#3466 and reference therein for additional details.

* Make sure always retrieve files are stored by default (#322)

* Make sure always retrieve files are stored by default

The always retrieve files are now stored as a default. This can be changed by setting ALWAYS_STORE to False in the settings, or as before specify ALWAYS_RETRIEVE_LIST and ALWAYS_RETRIEVE_TEMPORARY_LIST, also in settings. A few tests to tests different combinations have been introduced.

* Pinned to AiiDA 1.1 due to issue 323

* Removed print

* With the recent aiidateam/aiida-core#3935 #323 is not strictly necessary and we can lift the pinning to AiiDA core 1.1. (#326)

Thanks @atztogo.

* #320 related stuff and other minor fixes (#321)

* Making parser work when  no temporary folder

The parser can handle the case there is to no temporary retrieve folder.
But it would throw an error code. This commit let it throw the error
only when both retrieve folders are not present.
This also allows parsing exising calcjobs
using `VaspParser.parse_from_node`.

* Warn if `parser_name` is not defined

* Fix a bug where massage does not work with uppercased keys

* Fix linter warnings

* Let VaspCalculation default to use vasp.vasp parser

* VaspWorkChain no longer sets parser_name updated test

Co-authored-by: Espen <espen.flage-larsen@sintef.no>

* Fixed immigrator by adding explicit call to presubmit (#334)

* Fixed immigrator by adding explicit call to presubmit

* Updating return values due to pending PR in AiiDA core

* Added AiiDA trove classifier (#340)

* Fixed migration of the Wannier90 interface (#341)

* Update tutorial documents (#344)

* fix tab-completion

* example for SGE

* fix tutorials numbering

* remove account name and fix attribute name

* Fixed skipped test for band workchain (#343)

* Fixed skipped test for band workchain

* Moved bands related parameters to the parameter massager

* Added additional tests for smearing, charge and bands parameters

* Moved override input parameters into a namespace (#348)

In order to be able to check any supplied override parameters we needed to move these into a dedicated namespace. This namespace, now also corresponds well to the workchain where the conversion takes place.

* Catch invalid INCAR tags (#333)

* Catch invalid INCAR tags

* Added checking of invalid INCAR for ParametersMassage

* Updated tests and removed redundant namespace list

Co-authored-by: espenfl <espen.flage-larsen@sintef.no>

* Added sphinxcontrib-details-directive to requirements (#350)

* Remove coverage combine as we are only building one report (#351)

* Updated travis and tox settings (#352)

* Enabled GitHub Actions workflow and Codecov (#353)

* Added Codecov badge and removed Coveralls (#354)

* Added Codecov badge and removed Coveralls

* Added codecov config file to enable status check

* Enabled the remaining code for coverage analysis (#355)

* Enabled the remaining code for coverage analysis

* Updated codecov config

* Removed fix for repo

* Updated the setup json file (#357)

* Updated the readme to include more badges (#358)

* Added badges into a table (#359)

* Update documentation (#361)

* Removed warning for included POTCAR and minor fixes in doc

* Added note about incomplete doc of workchains

* Parsing of the magnetization and magnetization node (#360)

* Adding parsing of the magnetization

* Adding the site magnetization as its own node in the output

* Added tests for the parsing of the magnetization

* Fixed too long line

* Fixed linting

* Changed the magnetization tests so that they use only a single parsing function

Co-authored-by: espenfl <espen.flage-larsen@sintef.no>

* Preparing for release 1.0.0

Co-authored-by: mcallsen <35340473+mcallsen@users.noreply.github.com>
Co-authored-by: Jason.Yu <morty.yu@yahoo.com>
Co-authored-by: Atsushi Togo <atz.togo@gmail.com>
Co-authored-by: Martin Uhrin <martin.uhrin@gmail.com>
Co-authored-by: Bonan Zhu <33688599+zhubonan@users.noreply.github.com>
Co-authored-by: Kohei Shinohara <kohei19950508@gmail.com>
Co-authored-by: Jonathan Chico <37243453+JPchico@users.noreply.github.com>
espenfl pushed a commit that referenced this pull request Jun 13, 2020
* Updated metaclass dependency to comply with the updated in aiida_core

* Fixed failure to import AbstractNodeMeta for release Aiida version

* Removed explicit version numbering as this was only recently added to the develop branch with version number 1.0.0a2. Instead we now check with a try and use the old metaclass definition of we see an ImportError

* Updated docstring

* Updated test to use the new Aiida function get_strict_version (#171)

* Updated test to use the new Aiida function get_strict_version.

* Fixed the test again to account for the fact that the version function is of course not available for earlier Aiida versions

* Fixed formatting issues

* Pre-commit was not working right in fork. Now formating should be valid.

* Updated in order to avoid has_finished call

* Corrected the update

* Updated correction for has_finished to use the implemented change in develop

* Added parser quantities to output_parameters (#219)

* Added parser quantities to output_parameters

* Minor correction to naming scheme

* Update localhost fixture for the new backend interface (#223)

* Update localhost fixture for the new backend interface

* Use most recent version of aiida_core develop for the dev tests

* Test complex workchains by mocking their sub workchains

* Created a new Module for WorkChain related fixtures.

* Workchains suggestions (#192)

* Changed location of workflows and workchains, added a verify and converge workchain.

* Fixed a few mistakes that happended during merge

* Minor compliance fixes

* Fixed a few issues

* Updated the tests

* Updated the workchain tests to only run on Ubuntu using the distro package

* Added a file that performs first convergence tests and then relaxation

* Added an auxiliary function to separate the use of potcar in the workchain

* Updated tests

* Updated the tests again

* Updated the tests again to enable relaxation

* Moved creation of output_parameters to results in the relax workchain

* Added a test that checks that the structure from the POSCAR/CONTCAR parser is the same as from the xml parser

* Added test file

* Changed name of test data directory of the relax workchain test

* Submitting a test to verify mock-vasp locations on Travis

* Updated workchains to comply with tests.

* Fixed parsevasp dependency

* Updated the check for has_finished to exit_status

* Cleaned up location of a few code segments and their location

* Updated name on tests

* Added a test to see if output_chgcar is in the output of a standard execution of a VASP workchain

* Moved utilitarian functions to utils.workchains to comply with current structure

* Fixed docstring

* Refactored some code in the convergence workchain and fixed a few statements to comply standards in Aiida and the plugin

* Updated the convergence test and applied a few bugfixes that was discovered during testing

* Added testfile for convergence tests

* Updated formatting

* Updated formatting to comply with new yapf version

* Final updates

* Updated localhost fixture to comply updates in Aiida develop

* Updated tox to use recent Aiida

* Put the test for the convergence workchain to xfail since Travis does not support runs over 10 min which are silent.

* Updated convergence test to skip.

* Updated test of the relax workchain

* Removed some redundant methods

* Updated workchains, added new test and test data

* Enable longer than 10 minute runs on Travis (now 20 minutes) (#226)

* Enable longer than 10 minute runs on Travis (now 20 minutes)

* Updated Travis config to explicitly remove Postgresql 9.2

* Updated Travis config again

* Updated calls to parsevasp to utilize Aiida logger (#225)

* Updated (#227)

Thanks Rico!

* relax-wc _set_ibrion to -1 only when p,s,v all False (#228)

* Fix verifynextwc docstrings (#230)

* Updated

* Updated docstring and made the verify_next_workchain methods more consistent

* Fix force fetching (#231)

* Updated

* Added support for extraction of forces

* Added a test for the return of the stress

* Fixed formatting

* Fixed formatting

* Renamed files of the parser settings and manager and fixed the entry for the stress

* Final fix of formatting after yapf version change

* Lock tests a4 (#234)

* Updated

* Locked down development tests to aiida a4

* Updated the Travis config file

* Updated the Travis config file

* Updated the Travis config file

* Added strpath to the version updater

* Formatting and pytest version in line with Aiida

* Updated to code comply with the changes in the versions

* Updated lockdown of ASE version which caused issues.

* Documentation to kick-start AiiDA-VASP calculation (#235)

Thanks a lot Togo!

* Add an example of submitting non-workflow calculation (#233)

* Add an example of submitting non-workflow calculation

* Fixed formatting.

Fixed formatting due to yapf version change.

* Fix immigrant when POTCAR exists (#232)

Thanks for the contribution Togo.

* Support for bandstructure (#239)

* Updated

* Added export outputs to the workchains and started to work on a workchain to extract the bandstructure

* Added support for extraction of the band structure using SeeKPath

* Removed check of ADDITIONAL_RETREIVE_LIST due to failing tests.

* Added check for settings in the convergence workchain.

* Added a test for the band structure workchain

* Updated the relative tolerance

* Updated parsevasp 0.2.19 requirement (#240)

* Updated

* Updated requirement of parsevasp to 0.2.19

* Parser: custom node support + adding a node composer (#204)

* Add support for custom nodes

* Added a NodeComposer

* Renamed parsers.output_node_definitons to parsers.node_composer

* Update IncarParser and test_relax_wf

* Updated mock_vasp.py with short-cut property for IncarParser

* Unified the interface for 'add_node_name' in 'parser_settings'

* Update VaspImmigrant for using the node_composer short cuts

* Added a test for potential future conflicts with parsevasp

* Rework of the conistency test

* Updated DoscarParser test for the node_composer

* Updated 'test_parameter_results' after merge

* Updated

* Merged with develop and removed pre-commit from Travis until they release an issue which fixes the depreciated no-ri option

* Fixed unstable test condition for the band structure workchain

* Another try on unstable test condition for the band structure workchain

* Yet another update for the test

* Removing rtol as it is not necessary

* Commenting out the test that fails on Travis. Numpy version?

* New outcar parser (#247)

* Updated

* Almost done with the OUTCAR parser

* Updated parsevasp version dependency to 0.2.21

* Added a test that checks extraction on both OUTCAR and vasprun.xml

* Removed erroneous comments

* Added test files

* Support for epsilon (#248)

* Added test files

* Added support for extraction of epsilon and epsilon_ion from the xml parser

* Removed spurious file

* Fix parser inconsistencies (#249)

* Added test files

* Removed alternative quantities for the energies and added the relay of forces and stress to the VASP workchain, which was missing

* Removed a spurious file, and corrected the symmetry parser to comply with the present updates of parsevasp (#250)

* Migration beta (#282)

* Added test files

* Start of conversion to AiiDA beta

* Fixed pre-commit, prospector and yaml version to AiiDA beta

* Updated docstring to reflect name change from ParameterData to Dict

* Updated remaining files to Python3

* Updated the data class fetchers to use dict instead of parameter

* Fixed load of Code

* Removed get_file_abs_path, except for the parser. Temp fix which uses the open from SinglefileData and writes the new files.

* Updated user and authinfo fetching to comply with AiiDA beta spec

* Added local_copy_list due to the removal of the absolute paths for SinglefileData

* Removed old legacy backendtests which has not been used for a while.

* Moved io folder to a file_parsers folder under parsers

* Added file parser tests

* Added back the check for the basic datatypes when calling get_data_node and get_data_class

* Updated the parser for Aiida 1.0

* Added test to check that we get the correct class and instance using get_data_class and get_data_node

* Relaced database load function with decorator

* Updated a few tests

* Fixing python 3 deprecated .im_func.

* Updated the parser tests

* Merging changes back

* Remove IncarIo and fixed the INCAR parser tests

* Name change from KpParser to KpointsParser

* Update python 2, 3

* Replaced get_attrs and updated KPOINTS parser

* Fixed the test for the OUTCAR parser

* Fixed aiida_env on file parsers

* Moved the old querybuild from old AiiDA into aiida_utils

* Repairing test_vasp_parser

* Migrated PotcarData

* Fixing data/tests and utils/tests

* Fixed the calculation tests

* Moved the StringIO check by six to the import module level

* Added str to convert Path to string before passing it to Folder

* Fixed default user check for test cases

* Workchain fixes

* Fixed typo on the exit status, basic workchain now runs

* Updated relax and the base workchain to work with AiiDA beta

* Updated convergence workchain and package dependencies

* Fixed remaining iteritems

* Locked down to latest AiiDA beta

* Changed default exit status from None to ERROR_UNKNOWN

* Fixed exit_codes

* Fixed basestring

* Updated parsevasp dependency and calcfunction fix to converge workchain

* Further fixes on the workchains

* Updated the immigrator

* Inherit from VaspCalculation in order to avoid multiple defines

* Updated immigrator to pass the test

* Updated error codes for potentials and fixed interface of immigrator

* Fixed passing of parameters

* Removed tuple on kind name to be consistent with calculation

* Fixed typo

* Updated withmpi to be set to True unless explicitly set by user

* Changed from md5 to sha512 checks on the potentials

* Updated node configuration to include forces and stress

* Fixed typos

* Remove output_ from the output nodes

* Updated README

* Updated parsevasp dependency

* Moved the INCAR parser to parsevasp and got rid of the legacy INCAR parser

* Fixed logger instance passing and parser settings.

- Fixed passing of the AiiDA logger instance to parsevasp in order to avoid DEBUG printouts from AiiDA (parsevasp sets the default logger if it does not receive a logger instance).
- Removed parsing of the structure for the static run that follows a relaxation.
- Fixed some linting.

* Added energy and force cutoff to the relaxation workchain

* Added check for AttributeError to the relaxation parameters

* Enabled return of exit codes from the Parser

* Unified workchain tests

* Fixed potential import in immigrator

* Migration beta (#275)

* Fix immigrant to get potential_mapping correctly

* Removed unnecessary lines

* Fixed the calcfunction in the convergence test

* Code cleanup and parsevasp 0.4.0 dependency

* Updated parsevasp dependency to 0.4.1

* Fixed renaming of Group.name to Group.label in AiiDA

* Updated authors and contributers

* Updated parsevasp dependency to 0.4.2

* Updated dependencies

* Updated documentation and docstrings

* Added requirements file for docs

* Removed requirements file

* Modified existing requirements file

* Added readthedocs config file

* Updated requirements to include atomic_tools for aiida-core

* Added requirements.txt file

* Moved the readthedocs.yml file to root

* Updated readthedocs.yml file

* Updated readthedocs.yml file

* Updated readthedocs.yml file

* Pinned sphinx version for readthedocs

* Updated readthedocs.yml file

* Updated port name from parameter to misc

* Renamed kickstart tutorial to conda tutorial and linked

* Fixed wrong ExitCode import

* Renamed tutorial file

* Updated documentation

* Update documents (#279)

* Update conda.rst

* Collection of minor updates of documentation

* Update example scripts of relax and verify workchains

* Added git describe to doc versioning

* Removed Python 2.7 tests

* Changed from trusty to xenial for Python 3.7

* Reverting to default location og pg_ctl

* Dropping Python 3 tests to 3.6

* Added RabbitMQ as a service at Travis

* Updated docstrings

* Updated import of fixtures

* Enable access to localhost on Travis

* Execute permission on bash script

* Added RabbitMQ package to Xenial on Travis

* Added aiida-vasp as requirements for RTD

* Added https for aiida-vasp

* Added backend config for docs

* Added tutorial section to the documentation

* Add bulk modulus workchain

* Add tutorial of running vasp taking example of bulk modulus calculation

* Add tutorial of python/aiida tips before running vasp

* Update bulk modulus workchain, now it works at a marginal level

* Reset parameter on final static calculation

* Preparing for release 0.3.0 (#283)

* Update bulk modulus workchain following the update of relax workchain

* Removed AiiDA Sphinx in wait for update in core code

* Remove bulk modulus workchain

* Removed apidoc

* Updated tutorial document

* Updated tutorial document

* Added the aiida.sphinx extension again

* Removed the aiida.sphinxext

* Updated tutorial document

* Updated tutorial document to SnO2 from AlN

* Added tutorial potentials and doc

* Added AiiDA config files for tutorial

* Updated the setup instructions

* Changed formatting of the initial setup

* Tutorial documentation update by replacing example with SnO2 to wurtzite-type SiC

* Updated documentation examples with numbering

* Updated the bulk modulus tutorial

* Added run_vasp files

* Updated the documentation

* Updated documentation

* Update documentation

* Updated documentation

* Updated documentation

* Updated documentation

* Updated documentation

* Updated documentation

* Updated documentation

* Updated documentation

* Updated documentation

* Updated documentation

* Updated documentation

* Updated the documentation

* Update tutorial documentation of bulk modulus workchain

* Update tutorial documentation of bulk modulus workchain

* Update tutorial documentation of bulk modulus script

* Updated documentation

* Updated documentation

* Updated documentation

* Updated documentation

* Updated documentation

* Minor documentation fixes (#284)

* Added sphinx rtd in requirement.txt as it's used by default in the
docs Makefile
* Fixed misindentation in doc page on adding a code

* Updated documentation, linting and cookiecutter

- Added a cookiecutter recipe for workchains

- Updated the documentation

- Added the fcc Si tutorial from the VASP wiki

- Added rst pre-commit checks and updated the pre-commit checks in general

* Removed legacy runwf from setup.json

* Updated documentation

* Updated documentation

* Changed input namespaces for the workchains

* Updating documentation

* Fixed a bug in the convergence workchain and namespace setup

* Updated bands workchain namespace

* Updated additional namespaces

* Removed parsing of CHGCAR and replaced it with a restart

* Updated restart from charge density behavior when extracting bands

* Updated the documentation, relinked install of plugin

* Updated master workchain to support dos extraction

* Updated test for relax workchain

* Updated bands and relax workchain test

* Removed six dependency and fixed workchain tests

* Remove band workchain from running tests

* Removed pg_ctl and account names

* Changed yapf formatting after version pinning

* Added version printouts to Travis config file

* Updated pre-commit config due to invalid keys

* Updated core dependency and removed old extra

* Added D415 isolation to prospector

* Added prospector in separate repo of pre-commit

* Updated documentation and removed D205 in docstrings

* Remove root_dir fetcher from fixture manager

* Cleaned AiiDA environments on tests and updated manager

* Updated fixture manager to use new fixture interface

* Added in missing geometry relaxation modes (#285)

The ability to relax the cell shape and volume or just the volume were
missing from the convergence workflow.  These have been added in,
corresponding to a VASP ISIF settin of 6 or 7, respectively.

Also raising more meaningful exception if an unsupported combination of
relaxation options is passed.  Test added.

* Remove redundant with_dbenvs

* Added how to run tests to the documentation

* Added file containing the running tests documentation

* Introduced retrieve_temporary_list (#288)

In order to enable automatic deletion of files after parsing `retrieve_temporary_list` is available in AiiDA. This replaced the `retrieve_list` which do not delete any file after parsing is completed. The current behavior is that all files are delated after parsing unless specific filenames are added using `ADDITIONAL_RETRIEVE_LIST`.

* Fixed issue with analysing positional lengths in relaxation workchain (#290)

* Fixed issue with analysing positional lengths in relaxation workchain

Due to nan entries the `max` function failed and the relaxation workchain
did not work as expected. This is now fixed, we keep the nan, but act
on the raised `RuntimeWarning` from numpy and set force the convergence
to not be complete if this in encountered. An update to the plane wave
and k-point convergence workchain is also performed in order to enable a final
run using relaxation and the converged plane wave and k-point cutoffs.

* Fixed the positional convergence test

* Updated parsevasp dependency and fixed semantics in doc (#292)

* Updated help text for POTCAR handling (#293)

* Updated to account for all VASP output files (#295)

* Fixed wrong call to nanmax (#296)

* Updated convergence data output to rest in the converge namespace (#298)

* Changed ISIF from 1 to 2 (#300)

* Fixed problem of relaxation override (#302)

* symbols should be stored by set_attribute for TrajectoryData. (#303)

* symbols should be stored by set_attribute for TrajectoryData.

* Add docstring on _compose_array_trajectory

* Disabled D416 to enable numpydoc

* Replaced old convergence_data (#309)

* Compatibility with AiiDA 1.1.0 (#312)

* Compatibility with AiiDA 1.1.0

In this commit we clean up the package dependencies such that we strictly follow AiiDA versioning also on the development and testing part which makes it easier to perform development on both aiida-core and aiida-vasp.

In addition, liniting was redone to suite updated versions.

Note that we had to disable the immigrator tests since they got stuck forever. Solving this is left as an issue.

* Added parallel flag to coverage config

* Generalization of workchains (#314)

In order to open for the use of the workchains in other codes, we here decouple the workchains and the VASP specific parameters. In the workchains we use AiiDA/workchain specific parameters, which is translated at the code specific workchain in the workchain stack to code specific parameters. This concept can also be utilized by other codes.

* Excluded the POTCAR file from the storage in the repository (#315)

* Add lambda on input defaults (#316)

To comply with the update aiidateam/aiida-core#3466 we here incorporate lambda on all input nodes that are of an AiiDA data type. This is done to make it clear that we want to supply a immutable object as input. This also fixes the problem of not being able to run consequetive workchain tests, so in this PR all of the present workchain tests are finally enabled. In addition this PR fixes the previous problems of not being able to build RTD due to the need of a backend. Please consult aiidateam/aiida-core#3466 and reference therein for additional details.

* Make sure always retrieve files are stored by default (#322)

* Make sure always retrieve files are stored by default

The always retrieve files are now stored as a default. This can be changed by setting ALWAYS_STORE to False in the settings, or as before specify ALWAYS_RETRIEVE_LIST and ALWAYS_RETRIEVE_TEMPORARY_LIST, also in settings. A few tests to tests different combinations have been introduced.

* Pinned to AiiDA 1.1 due to issue 323

* Removed print

* With the recent aiidateam/aiida-core#3935 #323 is not strictly necessary and we can lift the pinning to AiiDA core 1.1. (#326)

Thanks @atztogo.

* #320 related stuff and other minor fixes (#321)

* Making parser work when  no temporary folder

The parser can handle the case there is to no temporary retrieve folder.
But it would throw an error code. This commit let it throw the error
only when both retrieve folders are not present.
This also allows parsing exising calcjobs
using `VaspParser.parse_from_node`.

* Warn if `parser_name` is not defined

* Fix a bug where massage does not work with uppercased keys

* Fix linter warnings

* Let VaspCalculation default to use vasp.vasp parser

* VaspWorkChain no longer sets parser_name updated test

Co-authored-by: Espen <espen.flage-larsen@sintef.no>

* Fixed immigrator by adding explicit call to presubmit (#334)

* Fixed immigrator by adding explicit call to presubmit

* Updating return values due to pending PR in AiiDA core

* Added AiiDA trove classifier (#340)

* Fixed migration of the Wannier90 interface (#341)

* Update tutorial documents (#344)

* fix tab-completion

* example for SGE

* fix tutorials numbering

* remove account name and fix attribute name

* Fixed skipped test for band workchain (#343)

* Fixed skipped test for band workchain

* Moved bands related parameters to the parameter massager

* Added additional tests for smearing, charge and bands parameters

* Moved override input parameters into a namespace (#348)

In order to be able to check any supplied override parameters we needed to move these into a dedicated namespace. This namespace, now also corresponds well to the workchain where the conversion takes place.

* Catch invalid INCAR tags (#333)

* Catch invalid INCAR tags

* Added checking of invalid INCAR for ParametersMassage

* Updated tests and removed redundant namespace list

Co-authored-by: espenfl <espen.flage-larsen@sintef.no>

* Added sphinxcontrib-details-directive to requirements (#350)

* Remove coverage combine as we are only building one report (#351)

* Updated travis and tox settings (#352)

* Enabled GitHub Actions workflow and Codecov (#353)

* Added Codecov badge and removed Coveralls (#354)

* Added Codecov badge and removed Coveralls

* Added codecov config file to enable status check

* Enabled the remaining code for coverage analysis (#355)

* Enabled the remaining code for coverage analysis

* Updated codecov config

* Removed fix for repo

* Updated the setup json file (#357)

* Updated the readme to include more badges (#358)

* Added badges into a table (#359)

* Update documentation (#361)

* Removed warning for included POTCAR and minor fixes in doc

* Added note about incomplete doc of workchains

* Parsing of the magnetization and magnetization node (#360)

* Adding parsing of the magnetization

* Adding the site magnetization as its own node in the output

* Added tests for the parsing of the magnetization

* Fixed too long line

* Fixed linting

* Changed the magnetization tests so that they use only a single parsing function

Co-authored-by: espenfl <espen.flage-larsen@sintef.no>

* Preparing for release 1.0.0

Co-authored-by: mcallsen <35340473+mcallsen@users.noreply.github.com>
Co-authored-by: Jason.Yu <morty.yu@yahoo.com>
Co-authored-by: Atsushi Togo <atz.togo@gmail.com>
Co-authored-by: Martin Uhrin <martin.uhrin@gmail.com>
Co-authored-by: Bonan Zhu <33688599+zhubonan@users.noreply.github.com>
Co-authored-by: Kohei Shinohara <kohei19950508@gmail.com>
Co-authored-by: Jonathan Chico <37243453+JPchico@users.noreply.github.com>

Co-authored-by: mcallsen <35340473+mcallsen@users.noreply.github.com>
Co-authored-by: Jason.Yu <morty.yu@yahoo.com>
Co-authored-by: Atsushi Togo <atz.togo@gmail.com>
Co-authored-by: Martin Uhrin <martin.uhrin@gmail.com>
Co-authored-by: Bonan Zhu <33688599+zhubonan@users.noreply.github.com>
Co-authored-by: Kohei Shinohara <kohei19950508@gmail.com>
Co-authored-by: Jonathan Chico <37243453+JPchico@users.noreply.github.com>
@espenfl espenfl deleted the fix_point_symmetry branch June 9, 2023 11:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants