10
10
11
11
import os
12
12
from datetime import datetime
13
+ from importlib .metadata import version
14
+
13
15
from astropy .io import fits
14
16
from astropy .io import ascii
15
17
from astropy .table import Table
16
18
17
19
18
- def write_header_info_sp (primary_header , name = "unknown" , version = "unknown" ):
20
+ def write_header_info_sp (
21
+ primary_header ,
22
+ software_name = "cs_util" ,
23
+ software_version = "unknown" ,
24
+ author = None ,
25
+ ):
19
26
"""Write Header Info sp_validation.
20
27
21
28
Write information about software and run to FITS header
@@ -24,27 +31,37 @@ def write_header_info_sp(primary_header, name="unknown", version="unknown"):
24
31
----------
25
32
primary_header : dict
26
33
FITS header information
27
- name : str
28
- software name, default is 'unknown'
29
- version : str
30
- version, default is 'unknown'
34
+ software_name : str, optional
35
+ software name; default is "cs_util"
36
+ software_version : str, optional
37
+ version; default is current cs_util version
38
+ author : str, optional
39
+ author name; if ``None`` (default), read from os.environ["USER"],
40
+ or if not set in env, "unknown"
31
41
32
42
Returns
33
43
-------
34
44
dict
35
45
updated FITS header information
36
46
37
47
"""
38
- if "USER" in os .environ :
39
- author = os .environ ["USER" ]
48
+ if software_version is None :
49
+ software_version = version ("cs_util" )
50
+
51
+ if author is None :
52
+ if "USER" in os .environ :
53
+ author = os .environ ["USER" ]
54
+ else :
55
+ author = "unknown"
40
56
else :
41
57
author = "unknown"
58
+
42
59
primary_header ["AUTHOR" ] = (author , "Who ran the software" )
43
- primary_header ["SOFTNAME" ] = (name , "Name of the software " )
44
- primary_header ["SOFTVERS" ] = (version , "Version of the software" )
60
+ primary_header ["SOFTNAME" ] = (software_name , "Software name " )
61
+ primary_header ["SOFTVERS" ] = (software_version , "software version " )
45
62
primary_header ["DATE" ] = (
46
63
datetime .now ().strftime ("%Y-%m-%d_%H-%M-%S" ),
47
- "When it was started " ,
64
+ "Creation date " ,
48
65
)
49
66
50
67
return primary_header
0 commit comments