-
Notifications
You must be signed in to change notification settings - Fork 2
vn1.0 Release
Fab vn1.0 is the first full release of Fab that implements the majority of key features identified at the start of the project. Briefly, this includes:
- 'Grab' extraction and merge of svn/fcm, git and other sources
- Build Fortran, C and mixed codebases using common build steps (analyse, preprocess, compile, link).
- Ability to define novel or arbitrary build steps.
- Implementation of specific arbitrary build steps such as parsing with the PSyCLONE DSL.
- Incremental builds, including use of prebuilds
- Support for the 'Busby optimisation' for more efficent parallel builds of Fortran code
- Zero configuration builds "just type fab" for entry-level use cases
Fab is written in Python and designed to be accessible but with flexibility and extensibility for advanced users. Although presently focused on Fortran and C, it is designed to be readily updated to target C++ and other compiled langages.
Additionally, the wiki provides back history of the reasoning and planning of the project.
You can get hold of Fab via conda or PyPI. Note it's called 'sci-fab' as opposed to 'fab' which is unrelated to this project. See also the docs, including specific instructions for Met Office users.
- Zero config presently only works for gnu.
The vn1.0 release marks a significant point in the formal project that has driven the Fab software. At this version, users from outside the project team will be actively sought for the first time. Initially, this will be focused on Met Office and partner organsiations through existing networks. The aim will be to build confidence and use of Fab to permit retirement of existing solutions. It is expected that user feedback will result in further development beyond 1.0. This page will serve as the starting point for user engagement.
Comms items:
- Met Office Science Brief article
- Presentations, in appropriate format to:
- NGMS Project managers
- NGMS project meetings
- SSE Community of Practice
- UM User Workshop (June 2024)
- Direct tactical engagement
- Facilitation of a Hack Day, subject to sufficient interest
- Future Release
- vn1.0 Release, March 2023
- 0.11 Beta Release, Jan 2023
- 0.10 Beta Release, Oct 2022
- 0.9 Alpha Release, June 2022
- Phase 2
- Phase 3
- Phase 4
- Repository Management
- Development Process
- Development Environment
- Releasing Fab
- Coding Conventions
- Glossary
- Concerning the Database
- Unit Test Coverage
- Issues With the System Testing Framework