Ifort changes compiler version format
- Dominant language
- Python
- Stars
- 9
- Forks
- 9
- Avg merge
- 12d 12h
- Merged PRs (30d)
- 2
Description
The old ifort compiler changes the format version from 2 digits for year to 4 digits:
```
intel-compiler/2019.3.199 ifort (IFORT) 19.0.3.199 20190206 Copyright (C) 1985-2019 Intel Corporation. All rights reserved.
intel-compiler/2019.4.243 ifort (IFORT) 19.0.4.243 20190416 Copyright (C) 1985-2019 Intel Corporation. All rights reserved.
intel-compiler/2019.5.281 ifort (IFORT) 19.0.5.281 20190815 Copyright (C) 1985-2019 Intel Corporation. All rights reserved.
intel-compiler/2020.0.166 ifort (IFORT) 19.1.0.166 20191121 Copyright (C) 1985-2019 Intel Corporation. All rights reserved.
intel-compiler/2020.1.217 ifort (IFORT) 19.1.1.217 20200306 Copyright (C) 1985-2020 Intel Corporation. All rights reserved.
intel-compiler/2020.2.254 ifort (IFORT) 19.1.2.254 20200623 Copyright (C) 1985-2020 Intel Corporation. All rights reserved.
intel-compiler/2020.3.304 ifort (IFORT) 19.1.3.304 20200925 Copyright (C) 1985-2020 Intel Corporation. All rights reserved.
intel-compiler/2021.1.1 ifort (IFORT) 2021.1 Beta 20201112 Copyright (C) 1985-2020 Intel Corporation. All rights reserved.
intel-compiler/2021.10.0 ifort (IFORT) 2021.10.0 20230609 Copyright (C) 1985-2023 Intel Corporation. All rights reserved.
intel-compiler/2021.2.0 ifort (IFORT) 2021.2.0 20210228 Copyright (C) 1985-2021 Intel Corporation. All rights reserved.
intel-compiler/2021.3.0 ifort (IFORT) 2021.3.0 20210609 Copyright (C) 1985-2021 Intel Corporation. All rights reserved.
intel-compiler/2021.4.0 ifort (IFORT) 2021.4.0 20210910 Copyright (C) 1985-2021 Intel Corporation. All rights reserved.
intel-compiler/2021.5.0 ifort (IFORT) 2021.5.0 20211109 Copyright (C) 1985-2021 Intel Corporation. All rights reserved.
intel-compiler/2021.6.0 ifort (IFORT) 2021.6.0 20220226 Copyright (C) 1985-2022 Intel Corporation. All rights reserved.
intel-compiler/2021.7.0 ifort (IFORT) 2021.7.0 20220726 Copyright (C) 1985-2022 Intel Corporation. All rights reserved.
intel-compiler/2021.8.0 ifort (IFORT) 2021.8.0 20221119 Copyright (C) 1985-2022 Intel Corporation. All rights reserved.
```
That makes for strange looking tests, e.g.:
```
if (19, 0, 0) <= ifort.get_version() < (20, 0, 0):
...
if (19, 0, 0) <= ifort.get_version() < (2022, 0, 0):
```
Should we care? We could adjust the version numbers in Fab to be consistent, but:
1. should we bother (ifort is unsupported)
2. do we create more confusion than we solve?
I am happy to just close this and accept the odd looking tests in Fab build scripts.
Contributor guide
Research direction
Start with the Fab build scripts and the ifort.get_version() checks shown in the issue, then compare how the listed compiler output formats are parsed and tested. Done means the handling and tests consistently represent the supported ifort versions, or the issue is closed with the existing behavior explicitly retained.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- build-system, compilers
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100