diff --git a/pyproject.toml b/pyproject.toml index 4fe21e6..36a685e 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -73,3 +73,5 @@ ignore = [] "quantities/units/*.py" = ["F401"] "quantities/constants/*.py" = ["F401"] "quantities/__init__.py" = ["F401", "F403"] +# Generated from NIST_codata.txt with one constant per line. +"quantities/constants/_codata.py" = ["E501"] diff --git a/quantities/constants/NIST_codata.txt b/quantities/constants/NIST_codata.txt index 9f8094d..9881463 100644 --- a/quantities/constants/NIST_codata.txt +++ b/quantities/constants/NIST_codata.txt @@ -1,6 +1,6 @@ Fundamental Physical Constants --- Complete Listing - + 2006 CODATA adjustment From: http://physics.nist.gov/constants diff --git a/quantities/constants/_codata.py b/quantities/constants/_codata.py index 8cace73..310e81f 100644 --- a/quantities/constants/_codata.py +++ b/quantities/constants/_codata.py @@ -1,5 +1,6 @@ # THIS FILE IS AUTOMATICALLY GENERATED # ANY CHANGES MADE HERE WILL BE LOST +# Source: CODATA 2006 recommended values, from NIST_codata.txt physical_constants = {} diff --git a/setup.py b/setup.py index 1d139de..6da26f5 100755 --- a/setup.py +++ b/setup.py @@ -1,7 +1,8 @@ +import re + from setuptools import Command, setup from setuptools.command.build_py import build_py as _build from setuptools.command.sdist import sdist as _sdist -from datetime import datetime class data(Command): @@ -19,12 +20,15 @@ def finalize_options(self): def run(self): with open('quantities/constants/NIST_codata.txt') as f: data = f.read() + edition = re.search(r'(\d{4}) CODATA adjustment', data) + if edition is None: + raise ValueError('CODATA edition not found in NIST_codata.txt') data = data.split('\n')[10:-1] with open('quantities/constants/_codata.py', 'w') as f: f.write('# THIS FILE IS AUTOMATICALLY GENERATED\n') f.write('# ANY CHANGES MADE HERE WILL BE LOST\n') - f.write(f'# LAST GENERATED: {datetime.now()}\n\n') + f.write(f'# Source: CODATA {edition[1]} recommended values, from NIST_codata.txt\n\n') f.write('physical_constants = {}\n\n') for line in data: name = line[:55].rstrip().replace('mag.','magnetic')