diff options
author | Jens Diemer <github.com@jensdiemer.de> | 2020-10-17 20:59:47 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-10-17 20:59:47 +0200 |
commit | 344523bd14ea6be1df9230c84f930217e9e01250 (patch) | |
tree | ed52f83f9116ecae04370afd20849f7548e0626f | |
parent | 37e288808b7a8dfccaf4b2cecfd5d836f3819d3e (diff) | |
parent | b3a1ad6c5b887d7ba03acf112c84c82f3e0fb251 (diff) | |
download | creole-344523bd14ea6be1df9230c84f930217e9e01250.tar.gz |
Merge pull request #49 from jedie/develop
Don't change timestamp in README.rst if content not changed
-rw-r--r-- | README.creole | 2 | ||||
-rw-r--r-- | README.rst | 6 | ||||
-rw-r--r-- | creole/setup_utils.py | 13 | ||||
-rw-r--r-- | creole/tests/test_setup_utils.py | 15 |
4 files changed, 35 insertions, 1 deletions
diff --git a/README.creole b/README.creole index 59661e4..cb70fb5 100644 --- a/README.creole +++ b/README.creole @@ -228,6 +228,8 @@ Note: In this case you must install **docutils**! See above. = history = * *dev* - [[https://github.com/jedie/python-creole/compare/v1.4.6...master|compare v1.4.6...master]] +** {{{update_rst_readme()}}} will touch {{{README.rst}}} if there are not change (timestamp will not changed in file) +** Some meta updates to project setup ** TBC * v1.4.6 - 2020-02-13 - [[https://github.com/jedie/python-creole/compare/v1.4.5...v1.4.6|compare v1.4.5...v1.4.6]] ** less restricted dependency specification @@ -300,6 +300,10 @@ history * *dev* - `compare v1.4.6...master <https://github.com/jedie/python-creole/compare/v1.4.6...master>`_ + * ``update_rst_readme()`` will touch ``README.rst`` if there are not change (timestamp will not changed in file) + + * Some meta updates to project setup + * TBC * v1.4.6 - 2020-02-13 - `compare v1.4.5...v1.4.6 <https://github.com/jedie/python-creole/compare/v1.4.5...v1.4.6>`_ @@ -675,4 +679,4 @@ donation ------------ -``Note: this file is generated from README.creole 2020-02-19 10:23:20 with "python-creole"``
\ No newline at end of file +``Note: this file is generated from README.creole 2020-10-17 20:45:35 with "python-creole"``
\ No newline at end of file diff --git a/creole/setup_utils.py b/creole/setup_utils.py index 0fe1e24..2089c70 100644 --- a/creole/setup_utils.py +++ b/creole/setup_utils.py @@ -135,6 +135,19 @@ def update_rst_readme(package_root, filename='README.creole'): rest_readme = _generate_rst_readme(creole_readme_path=creole_readme_path) + # Check if content was changed + changed = False + with rest_readme_path.open('r') as f: + for new_line, old_line in zip(rest_readme.splitlines(), f): + if new_line.rstrip() != old_line.rstrip(): + changed = True + break + + if not changed: + # The existing README.rst is up-to-date: Don't change the timestamp + print('nothing changed, ok.') + return rest_readme_path + with rest_readme_path.open('w') as f: f.write(rest_readme) diff --git a/creole/tests/test_setup_utils.py b/creole/tests/test_setup_utils.py new file mode 100644 index 0000000..bb482f4 --- /dev/null +++ b/creole/tests/test_setup_utils.py @@ -0,0 +1,15 @@ +from pathlib import Path + +from creole.setup_utils import update_rst_readme +from creole.tests.constants import CREOLE_PACKAGE_ROOT + + +def test_update_rst_readme(capsys): + rest_readme_path = update_rst_readme( + package_root=CREOLE_PACKAGE_ROOT, filename='README.creole' + ) + captured = capsys.readouterr() + assert captured.out == 'Generate README.rst from README.creole...nothing changed, ok.\n' + assert captured.err == '' + assert isinstance(rest_readme_path, Path) + assert str(rest_readme_path).endswith('/README.rst') |