nexusformat / NIAC

Issue for the NIAC to discuss (no code)
2 stars 0 forks source link

What do we do with the NAPI now? #64

Closed prjemian closed 2 years ago

prjemian commented 4 years ago

In 2018, the McStas team asserted disappointment with the lack of continued support for the NAPI: https://github.com/nexusformat/NIAC/issues/33

Last release was in 2016, there are new bugs in the issue tracker and new pull requests.

Do we accept reality that there are no developers to make bug fixes and declare the NAPI as archived?

Note the last NAPI release, 4.4.3, was 2016-09-12 : https://github.com/nexusformat/code/releases

We could merge the PRs first before archiving. Volunteers could keep the NAPI alive.

prjemian commented 4 years ago

@yayahjb Adds that the supported version of HDF5 has now become important.

vasole commented 4 years ago

Honestly, I thought we had already given up on NAPI more or less by that date (or even earlier) because it was moving at much slower pace than HDF5.

At that time, there were also comments about HDF5 could be built to be thread safe while NAPI was not thread safe.

mkoennecke commented 4 years ago

NIAC2020: we really are hard pressed to maintain the NAPI. We have not updated it for years, some features of HDF5 are not supported by the NAPI. On the other hand, there may still be places and users who rely on the NAPI. Mantid comes to my mind. Also: the NAPI still abstracts away a lot of complexity using the HDF5 API directly form C or F77. The conclusion of this discussion was this:

Between Freddie and Mark K we work out a message to the NeXus mailing list. This message will say that the NIAC is considering to EOL the NAPI. If someone wants the NAPI, she/he should speak up and fill in a questionnaire supplied with the message which helps us focus the work on NAPI. For example: use of HDF4, XML bindings. Which packaging format? The future of NAPI will then be decided at a later date when the results are in.

prjemian commented 4 years ago

@FreddieAkeroyd @mkoennecke Please advise what text should be changed in the manual for this decision.

PeterC-DLS commented 4 years ago

Just to note, this wiki page needs to be update: https://www.nexusformat.org/NIACAPI.html

vasole commented 4 years ago

@mkoennecke

33 is about a bug-fix release. One thing is to maintain NAPI in a frozen state and bug-fix mode as it was agreed years ago and another one to keep developing it. I hope you do not talk about supporting new HDF5 features. You may end up continuing to develop forever and discouraging people from adopting what de facto is the standard.

If McStas/Mantid wants to keep using NAPI as it was, then what is needed is a bug-fix release. They have to assume that if they need access to the new HDF5 features, they have to use HDF5.

mkoennecke commented 4 years ago

This is what I am doing now: bug fixes. I merged contributed fixes by others and made them work. Most importantly, the 3.x version of mxml introduced a breaking API change. This is now accounted for. May be, there will be some work to support HDF5 1.12. For other things, I wait for the results of the questionaire and NIAC decisions.

benajamin commented 4 years ago

Just to note, this wiki page needs to be update: https://www.nexusformat.org/NIACAPI.html

Actually, I cannot find any NIAC decision regarding the NAPI beyond 2012 so it is technically correct. It seems that the decision to freeze the NAPI was taken in mid 2014 (before NIAC2014). Therefore, I have clarified the situation by adding the line:

2014 (not a NIAC decision): The NeXus-API is frozen. Maintenance is reduced to bug fixes.

prjemian commented 3 years ago

That list would appear more relevant if it were sorted in reverse chronological order.