Skip to content

Commit 0eb8375

Browse files
authored
Merge pull request #111 from openedx/timmc/utcnow
fix: Fix timestamp handling (elapsed; formatting)
2 parents c456911 + a29ee68 commit 0eb8375

File tree

5 files changed

+16
-10
lines changed

5 files changed

+16
-10
lines changed

Diff for: CHANGELOG.rst

+6
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,12 @@ Change Log
1414
Unreleased
1515
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1616

17+
[1.8.1] - 2024-07-11
18+
~~~~~~~~~~~~~~~~~~~~
19+
20+
* Fix elapsed-time calculations to always use UTC. Other clocks can be altered partway through by Django config settings being loaded while the timer is running, resulting in reporting elapsed time of "-17999.895582 seconds" or similar.
21+
* Fix report filename to use year-month-day order, not year-day-month. (Also more compact, now.)
22+
1723
[1.8.0] - 2024-03-31
1824
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1925

Diff for: code_annotations/__init__.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,4 @@
22
Extensible tools for parsing annotations in codebases.
33
"""
44

5-
__version__ = '1.8.0'
5+
__version__ = '1.8.1'

Diff for: code_annotations/base.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -616,9 +616,9 @@ def report(self, all_results, report_prefix=''):
616616
"""
617617
self.echo.echo_vv(yaml.dump(all_results, default_flow_style=False))
618618

619-
now = datetime.datetime.now()
619+
now = datetime.datetime.utcnow()
620620
report_filename = os.path.join(self.config.report_path, '{}{}.yaml'.format(
621-
report_prefix, now.strftime('%Y-%d-%m-%H-%M-%S')
621+
report_prefix, now.strftime('%Y%m%d-%H%M%S')
622622
))
623623

624624
formatted_results = self._format_results_for_report(all_results)

Diff for: code_annotations/cli.py

+6-6
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ def django_find_annotations(
6161
Subcommand for dealing with annotations in Django models.
6262
"""
6363
try:
64-
start_time = datetime.datetime.now()
64+
start_time = datetime.datetime.utcnow()
6565
config = AnnotationConfig(config_file, report_path, verbosity)
6666
searcher = DjangoSearch(config)
6767

@@ -106,7 +106,7 @@ def django_find_annotations(
106106
for filename in annotated_models:
107107
annotation_count += len(annotated_models[filename])
108108

109-
elapsed = datetime.datetime.now() - start_time
109+
elapsed = datetime.datetime.utcnow() - start_time
110110
click.echo("Search found {} annotations in {} seconds.".format(
111111
annotation_count, elapsed.total_seconds()
112112
))
@@ -137,7 +137,7 @@ def static_find_annotations(config_file, source_path, report_path, verbosity, li
137137
Subcommand to find annotations via static file analysis.
138138
"""
139139
try:
140-
start_time = datetime.datetime.now()
140+
start_time = datetime.datetime.utcnow()
141141
config = AnnotationConfig(config_file, report_path, verbosity, source_path)
142142
searcher = StaticSearch(config)
143143
all_results = searcher.search()
@@ -161,7 +161,7 @@ def static_find_annotations(config_file, source_path, report_path, verbosity, li
161161
report_filename = searcher.report(all_results)
162162
click.echo(f"Report written to {report_filename}.")
163163

164-
elapsed = datetime.datetime.now() - start_time
164+
elapsed = datetime.datetime.utcnow() - start_time
165165
annotation_count = 0
166166

167167
for filename in all_results:
@@ -191,7 +191,7 @@ def generate_docs(
191191
"""
192192
Generate documentation from a code annotations report.
193193
"""
194-
start_time = datetime.datetime.now()
194+
start_time = datetime.datetime.utcnow()
195195

196196
try:
197197
config = AnnotationConfig(config_file, verbosity)
@@ -210,7 +210,7 @@ def generate_docs(
210210
renderer = ReportRenderer(config, report_files)
211211
renderer.render()
212212

213-
elapsed = datetime.datetime.now() - start_time
213+
elapsed = datetime.datetime.utcnow() - start_time
214214
click.echo(f"Report rendered in {elapsed.total_seconds()} seconds.")
215215
except Exception as exc:
216216
click.echo(traceback.print_exc())

Diff for: code_annotations/generate_docs.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ def __init__(self, config, report_files):
2727
self.config = config
2828
self.echo = self.config.echo
2929
self.report_files = report_files
30-
self.create_time = datetime.datetime.now().isoformat()
30+
self.create_time = datetime.datetime.utcnow().isoformat()
3131

3232
self.full_report = self._aggregate_reports()
3333

0 commit comments

Comments
 (0)