---
# System prepended metadata

title: AiiDA Team Meeting 2024-12-12
tags: [team meetings]

---

# AiiDA Team Meeting 2024-12-12

###### tags: `team meetings`
###### time: 14:00 CET

[TOC]

### Present

* Ali
* Julian
* Jusong
* Miki
* Kristjan
* Edan
* Giovanni
* Alex

### Catch-up round

*Max. 3 minutes each*
    
    
Julian:
* [[#6653] ORM: Add `from_bytes` `classmethod` to `orm.SinglefileData`](https://github.com/aiidateam/aiida-core/pull/6653): Thanks MB, for review.
* [[6654] Add overview of common `core` plugins to RTD](https://github.com/aiidateam/aiida-core/pull/6654): Merged. Panel on landing page, and accessible via top-bar.
* [[#6584] ORM: Add `get_size_on_disk` method to `RemoteData`](https://github.com/aiidateam/aiida-core/pull/6584): Almost there :crossed_fingers: 
* [[#6665] Adding `get_size_on_remote` to the `Transport` interface](https://github.com/aiidateam/aiida-core/issues/6665): Thoughts?
    * GP: BashTransport; other Transports apart form FirecREST
    * Ali: I think our suggestion sould go in Transport class: `transport.get_disk_size()`
 I'd say let's keep it simple. And probably it's the best to not have the command execution as an abstract method in Transport class, anymore.
* Repo for Wikipedia article draft: https://github.com/GeigerJ2/aiida-wikipedia
* Blog post planning -> https://hackmd.io/_Ic1IR6pQ6yZYnqZUflMjg
    * Renkulab (Common workflows, see input files)
    * Sirocco? Or Stephan Henne?
    * Professor in Vietnam who's doing a full course on AiiDA
* Mention core plugins and overview for this week's blog post


Xing:
- For the stable release of aiida-workgraph, I try to keep the core part of workgraph minimal. I did a major refactor of the package:
  - move web ui to [aiida-workgraph-web-ui](https://github.com/aiidateam/aiida-workgraph-web-ui), one can still run workgraph web start directly.
  - improve test coverage (~91% now)
    - refactor part of the engine
  - Save Pickled data as a AiiDA node, and store the binary in the repository
  - Tab-completion, wg.tasks.add1.inputs.x
  - WorkGraph [AEP](https://github.com/aiidateam/AEP/pull/44/files) draft

- PythonJob repository is ready! [aiida-pythonjob](https://github.com/aiidateam/aiida-pythonjob)
  - PythonJob [AEP](https://github.com/aiidateam/AEP/pull/43/files) draft


 
Edan:
- Nothing on AiiDA at the moment
- Was working on [pydantic PR](https://github.com/aiidateam/aiida-core/pull/6255)
    - Need input from Sebastiaan
    - Will look into it when time permits
    - @Alex @Kristjan REST-API testing?
    - @Ali could we discuss soon a set of performance tests?


Miki:
* PRs (deadline: Dec. 19) for aiida-atomistic StructureData support in:
    * Merged: aiida-pseudo [#178](https://github.com/aiidateam/aiida-pseudo/pull/178)
    * Basically ready for merging: aiida-core [#6632](https://github.com/aiidateam/aiida-core/pull/6632)
    * Working on: aiida-quantumespresso [#1050](https://github.com/aiidateam/aiida-quantumespresso/pull/1050)


Giovanni:
- Important to prioritize WorkGraph public API (in general, especially for while/if) before fixing/refactoring the actual code (somehow this can also happen afterwards)
- developed a proof-of-concept of a queue system that is purely based on files, so that one does not need RMQ or other services to manage passing messages to a queue to workers. Thanks to using `watchdog` to get messages when a file appears in a folder + some care in making atomic operations, I have a demo implementation (that I shared with Jason) that can support multiple workers, has a heartbeat feature, and can support 1000-3000 messages per second (that I think is enough for a simple alternative for low-to-mid-throughtput regime, e.g. when using `verdi presto` with SQLite).


Jason:
- [kiwipy #131](https://github.com/aiidateam/kiwipy/pull/131) kiwipy 0.8.5 release to support py3.12, the `typing-extensions` issue solved for plumpy afterwards.
- [plumpy #298](https://github.com/aiidateam/plumpy/pull/298) De-abstract Savable by making it a protocol
- [plumpy #297](https://github.com/aiidateam/plumpy/pull/297) Move kiwipy/rmq related modules into a specific module.
- [plumpy #296](https://github.com/aiidateam/plumpy/pull/296) Making state machine State the contract for process states.
- We will making a minor release `0.23.0` for couple of fixes and APIs changes happened in aiida office.




Ali:
- [#6626](https://github.com/aiidateam/aiida-core/pull/6626) succesfully passed perfomance tests. It's ready to go. Remark on a test for two WorkGraph in a row (1 GB up&down):
    - `core.ssh_async`: Only 4 seconds! 🚀🚀🚀🚀
    - `core.ssh`: 108 seconds
- Merged the long standing PR in plumpy [#272](https://github.com/aiidateam/plumpy/pull/272)


Kristjan:
- Simple/demo docker-based AiiDA webserver/restapis: https://github.com/eimrek/simple-aiida-webserver
    - container is stateless
    - .aiida files mounted via volume
    - profiles set up with `verdi profile setup core.sqlite_zip`
        - BUT I think it doesn't support multiple .aiida files. That is crucial for Materials Cloud, as many profiles need to import multiple .aiida files.
            - Giovanni suggestion: just merge all .aiida archive files into a single one per profile


Alex: nothing to report
