squad 1.93__py3-none-any.whl → 1.93.1__py3-none-any.whl

Sign up to get free protection for your applications and to get access to all the features.
squad/ci/models.py CHANGED
@@ -138,10 +138,8 @@ class Backend(models.Model):
138
138
  completed=completed,
139
139
  )
140
140
  test_job.testrun = testrun
141
- except InvalidMetadata as exception:
141
+ except (DuplicatedTestJob, InvalidMetadata) as exception:
142
142
  test_job.failure = str(exception)
143
- except DuplicatedTestJob as exception:
144
- logger.error('Failed to fetch test_job(%d): "%s"' % (test_job.id, str(exception)))
145
143
 
146
144
  if test_job.needs_postprocessing():
147
145
  # Offload postprocessing plugins to a new task
squad/core/models.py CHANGED
@@ -493,6 +493,9 @@ class Build(models.Model):
493
493
  ordering = ['datetime']
494
494
 
495
495
  def save(self, *args, **kwargs):
496
+ # Initialize this to timezone.now(), then if a testrun is seen with an
497
+ # earlier datetime, keep this value up to date with the earliest
498
+ # testrun.datetime (handled in ReceiveTestRun.__call__).
496
499
  if not self.datetime:
497
500
  self.datetime = timezone.now()
498
501
  with transaction.atomic():
@@ -806,6 +809,9 @@ class TestRun(models.Model):
806
809
  unique_together = ('build', 'job_id')
807
810
 
808
811
  def save(self, *args, **kwargs):
812
+ # testrun.datetime will take datetime from the metadata if it exists
813
+ # (during ReceiveTestRun.__call__). If datetime is not in the metadata,
814
+ # set it to timezone.now()
809
815
  if not self.datetime:
810
816
  self.datetime = timezone.now()
811
817
  if self.__metadata__:
@@ -178,6 +178,8 @@ class ReceiveTestRun(object):
178
178
 
179
179
  testrun.refresh_from_db()
180
180
 
181
+ # This keeps the datetime of the build in line with the earliest
182
+ # observed testrun.datetime.
181
183
  if not build.datetime or testrun.datetime < build.datetime:
182
184
  build.datetime = testrun.datetime
183
185
  build.save()
@@ -28,14 +28,29 @@ class BaseLogParser:
28
28
  return re.compile(combined, re.S | re.M)
29
29
 
30
30
  def remove_numbers_and_time(self, snippet):
31
- # [ 1067.461794][ T132] BUG: KCSAN: data-race in do_page_fault spectre_v4_enable_task_mitigation
32
- # -> [ .][ T] BUG: KCSAN: data-race in do_page_fault spectre_v_enable_task_mitigation
33
- without_numbers = re.sub(r"(0x[a-f0-9]+|[<\[][0-9a-f]+?[>\]]|\d+)", "", snippet)
31
+ # [ 92.236941] CPU: 1 PID: 191 Comm: kunit_try_catch Tainted: G W 5.15.75-rc1 #1
32
+ # <4>[ 87.925462] CPU: 0 PID: 135 Comm: (crub_all) Not tainted 6.7.0-next-20240111 #14
33
+ # Remove '(Not t|T)ainted', to the end of the line.
34
+ without_tainted = re.sub(r"(Not t|T)ainted.*", "", snippet)
35
+
36
+ # x23: ffff9b7275bc6f90 x22: ffff9b7275bcfb50 x21: fff00000cc80ef88
37
+ # x20: 1ffff00010668fb8 x19: ffff8000800879f0 x18: 00000000805c0b5c
38
+ # Remove words with hex numbers.
39
+ # <3>[ 2.491276][ T1] BUG: KCSAN: data-race in console_emit_next_record / console_trylock_spinning
40
+ # -> <>[ .][ T1] BUG: KCSAN: data-race in console_emit_next_record / console_trylock_spinning
41
+ without_hex = re.sub(r"\b(?:0x)?[a-fA-F0-9]+\b", "", without_tainted)
42
+
43
+ # <>[ 1067.461794][ T132] BUG: KCSAN: data-race in do_page_fault spectre_v4_enable_task_mitigation
44
+ # -> <>[ .][ T132] BUG: KCSAN: data-race in do_page_fault spectre_v_enable_task_mitigation
45
+ # But should not remove numbers from functions.
46
+ without_numbers = re.sub(
47
+ r"(0x[a-f0-9]+|[<\[][0-9a-f]+?[>\]]|\b\d+\b(?!\s*\())", "", without_hex
48
+ )
34
49
 
35
- # [ .][ T] BUG: KCSAN: data-race in do_page_fault spectre_v_enable_task_mitigation
50
+ # <>[ .][ T132] BUG: KCSAN: data-race in do_page_fault spectre_v_enable_task_mitigation
36
51
  # -> BUG: KCSAN: data-race in do_page_fault spectre_v_enable_task_mitigation
37
52
  without_time = re.sub(
38
- f"^{square_brackets_and_contents}({square_brackets_and_contents})?",
53
+ f"^<?>?{square_brackets_and_contents}({square_brackets_and_contents})?",
39
54
  "",
40
55
  without_numbers,
41
56
  ) # noqa
@@ -200,9 +200,11 @@ class Plugin(BasePlugin, BaseLogParser):
200
200
  # there is a match
201
201
  return None
202
202
  snippet = matches[0]
203
- without_numbers_and_time = self.remove_numbers_and_time(snippet)
203
+ without_numbers = re.sub(
204
+ r"(0x[a-f0-9]+|[<\[][0-9a-f]+?[>\]]|\b\d+\b(?!\s*\())", "", snippet
205
+ )
204
206
 
205
- name = slugify(self.post_process_test_name(without_numbers_and_time))
207
+ name = slugify(self.post_process_test_name(without_numbers))
206
208
 
207
209
  return name
208
210
 
squad/version.py CHANGED
@@ -1 +1 @@
1
- __version__ = '1.93'
1
+ __version__ = '1.93.1'
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: squad
3
- Version: 1.93
3
+ Version: 1.93.1
4
4
  Summary: Software Quality Dashboard
5
5
  Home-page: https://github.com/Linaro/squad
6
6
  Author: Antonio Terceiro
@@ -10,7 +10,7 @@ squad/manage.py,sha256=Z-LXT67p0R-IzwJ9fLIAacEZmU0VUjqDOSg7j2ZSxJ4,1437
10
10
  squad/settings.py,sha256=0MZ48SV_7CTrLMik2ubWf8-ROQiFju6CKnUC3iR8KAc,14800
11
11
  squad/socialaccount.py,sha256=vySqPwQ3qVVpahuJ-Snln8K--yzRL3bw4Nx27AsB39A,789
12
12
  squad/urls.py,sha256=JiEfVW8YlzLPE52c2aHzdn5kVVKK4o22w8h5KOA6QhQ,2776
13
- squad/version.py,sha256=K6dPzAHfR0_z4DOLvpBamlquLtpey9vWxxcBlvLvrn4,21
13
+ squad/version.py,sha256=N1lgYLLJIViE9VAAq7J5l3sFo7_BdyvoOEdr3j9eNaA,23
14
14
  squad/wsgi.py,sha256=SF8T0cQ0OPVyuYjO5YXBIQzvSXQHV0M2BTmd4gP1rPs,387
15
15
  squad/api/__init__.py,sha256=CJiVakfAlHVN5mIFRVQYZQfuNUhUgWVbsdYTME4tq7U,1349
16
16
  squad/api/apps.py,sha256=Trk72p-iV1uGn0o5mdJn5HARUoHGbfgO49jwXvpkmdQ,141
@@ -26,7 +26,7 @@ squad/ci/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
26
26
  squad/ci/admin.py,sha256=7yB-6F0cvt0NVvzGOTlZCyGPV_YHarmbKJZTTzataT4,2255
27
27
  squad/ci/apps.py,sha256=6OVnzTdJkxdqEJnKWYE9dZgUcc29_T1LrDw41cK4EQk,139
28
28
  squad/ci/exceptions.py,sha256=a1sccygniTYDSQi7FRn_6doapddFFiMf55AwGUh5Y80,227
29
- squad/ci/models.py,sha256=Fm-4b3SDgMh9HXzqjOd4iZDRMJ1D9AnZ2cg7i2OR248,16018
29
+ squad/ci/models.py,sha256=wR9FMBdjQgtEP3ga9CY6npFr5fUIeVpnfAhNa2xqM00,15897
30
30
  squad/ci/tasks.py,sha256=P0NYjLuyUViTpO1jZMuRVREbFDCccrMCZDw5E4pt928,3882
31
31
  squad/ci/utils.py,sha256=38zHpw8xkZDSFlkG-2BwSK6AkcddK9OkN9LXuQ3SHR0,97
32
32
  squad/ci/backend/__init__.py,sha256=yhpotXT9F4IdAOXvGQ3-17eOHAFwoaqf9SnMX17ab30,534
@@ -82,7 +82,7 @@ squad/core/comparison.py,sha256=LR3-Unv0CTmakFCDzF_h8fm2peTJzkv79mQWNau1iwI,2442
82
82
  squad/core/data.py,sha256=2zw56v7iYRTUc7wlhuUNgwIIMmK2w84hi-amR9J7EPU,2236
83
83
  squad/core/failures.py,sha256=X6lJVghM2fOrd-RfuHeLlezW2pt7owDZ8eX-Kn_Qrt0,918
84
84
  squad/core/history.py,sha256=QRSIoDOw6R6vUWMtsPMknsHGM7FaCAeuCYqASCayHTk,3541
85
- squad/core/models.py,sha256=peMmwugkToA35bRZTdcJ_4TIpzT3Pj4GXCQ4bWeAcpY,60992
85
+ squad/core/models.py,sha256=qSLlxjBwzsZKGoCkPX6T-g48jXg81B1JH3wMXSLLvHQ,61401
86
86
  squad/core/notification.py,sha256=rOpO6F63w7_5l9gQgWBBEk-MFBjp7x_hVzoVIVyDze0,10030
87
87
  squad/core/plugins.py,sha256=FLgyoXXKnPBYEf2MgHup9M017rHuADHivLhgzmx_cJE,6354
88
88
  squad/core/queries.py,sha256=78fhIJZWXIlDryewYAt96beK1VJad66Ufu8cg3dHh4w,7698
@@ -279,7 +279,7 @@ squad/core/migrations/0167_add_project_datetime.py,sha256=VUBG-qsAhh2f2NXaHOqfX9
279
279
  squad/core/migrations/0168_add_group_settings.py,sha256=5UdylfMMNavTL0KXkjPSiEMhSisGWXbhUXQSzfK29Ck,462
280
280
  squad/core/migrations/0169_userpreferences.py,sha256=FwYv9RWxMWdQ2lXJMgi-Xc6XBB5Kp-_YTAOr9GVq1To,1098
281
281
  squad/core/migrations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
282
- squad/core/tasks/__init__.py,sha256=pYbEkFzNaat7iQQretRiJQPPF4Sq-5-hBykJYnBM04g,18567
282
+ squad/core/tasks/__init__.py,sha256=wKjyFw0JXiEDY6PEaKx3ureiSNIQFL8lHH4JIOMjlF8,18677
283
283
  squad/core/tasks/exceptions.py,sha256=n4cbmJFBdA6KWsGiTbfN9DyYGbJpk0DjR0UneEYw_W0,931
284
284
  squad/core/tasks/notification.py,sha256=6ZyTbUQZPITPP-4r9MUON7x-NbwvDBG8YeabM6fsjzA,4915
285
285
  squad/core/templates/squad/notification/base.jinja2,sha256=AbtQioEHV5DJBW4Etsu0-DQXd_8tQCnLejzgbDGDW7s,3413
@@ -428,17 +428,17 @@ squad/plugins/example.py,sha256=BKpwd315lHRIuNXJPteibpwfnI6C5eXYHYdFYBtVmsI,89
428
428
  squad/plugins/gerrit.py,sha256=CqO2KnFQzu9utr_TQ-sGr1wg3ln0B-bS2-c0_i8T5-c,7009
429
429
  squad/plugins/github.py,sha256=pdtLZw_7xNuzkaFvY_zWi0f2rsMlalXjKm7sz0eADz4,2429
430
430
  squad/plugins/linux_log_parser.py,sha256=HQVreyZLBmLuv-K-MjlN43sQQSkcls4hkUsjJ9_5WfM,3472
431
- squad/plugins/linux_log_parser_build.py,sha256=KotAmKX9OCvnJqjaCudrMJu8CytXf_CYV3zqEKi2zNQ,10439
431
+ squad/plugins/linux_log_parser_build.py,sha256=42pTj1_inTsiS_-htElNWw5Cod0bxpF8ZAm1qvYVhes,10481
432
432
  squad/plugins/lib/__init__.py,sha256=jzazbAvp2_ibblAs0cKZrmo9aR2EL3hKLyRDE008r2I,40
433
- squad/plugins/lib/base_log_parser.py,sha256=LiBCtx3dajSXITRTYxfgAmCkVS8KLI2527JKDa-D9ow,8430
433
+ squad/plugins/lib/base_log_parser.py,sha256=Bb3ok6R9_65EYvdWAsm8wcY741duGujTpaDXw1gJ9Yk,9366
434
434
  squad/run/__init__.py,sha256=ssE8GPAGFiK6V0WpZYowav6Zqsd63dfDMMYasNa1sQg,1410
435
435
  squad/run/__main__.py,sha256=DOl8JOi4Yg7DdtwnUeGqtYBJ6P2k-D2psAEuYOjWr8w,66
436
436
  squad/run/listener.py,sha256=jBeOQhPGb4EdIREB1QsCzYuumsfJ-TqJPd3nR-0m59g,200
437
437
  squad/run/scheduler.py,sha256=CDJG3q5C0GuQuxwlMOfWTSSJpDdwbR6rzpbJfuA0xuw,277
438
438
  squad/run/worker.py,sha256=jtML0h5qKDuSbpJ6_rpWP4MT_rsGA7a24AhwGxBquzk,594
439
- squad-1.93.dist-info/COPYING,sha256=jOtLnuWt7d5Hsx6XXB2QxzrSe2sWWh3NgMfFRetluQM,35147
440
- squad-1.93.dist-info/METADATA,sha256=fQk8aD6kMXho1Q6eA5gllimHyMpDGRju3ql6qEo-3PM,1278
441
- squad-1.93.dist-info/WHEEL,sha256=tZoeGjtWxWRfdplE7E3d45VPlLNQnvbKiYnx7gwAy8A,92
442
- squad-1.93.dist-info/entry_points.txt,sha256=J_jG3qnkoOHX4RFNGC0f83eJ4BSvK3pqLFkoF3HWfmA,195
443
- squad-1.93.dist-info/top_level.txt,sha256=_x9uqE1XppiiytmVTl_qNgpnXus6Gsef69HqfliE7WI,6
444
- squad-1.93.dist-info/RECORD,,
439
+ squad-1.93.1.dist-info/COPYING,sha256=jOtLnuWt7d5Hsx6XXB2QxzrSe2sWWh3NgMfFRetluQM,35147
440
+ squad-1.93.1.dist-info/METADATA,sha256=BBKV-R_mmv5k6Tujtg0ARX4GSF0LwWdGvbEerx0OHpw,1280
441
+ squad-1.93.1.dist-info/WHEEL,sha256=tZoeGjtWxWRfdplE7E3d45VPlLNQnvbKiYnx7gwAy8A,92
442
+ squad-1.93.1.dist-info/entry_points.txt,sha256=J_jG3qnkoOHX4RFNGC0f83eJ4BSvK3pqLFkoF3HWfmA,195
443
+ squad-1.93.1.dist-info/top_level.txt,sha256=_x9uqE1XppiiytmVTl_qNgpnXus6Gsef69HqfliE7WI,6
444
+ squad-1.93.1.dist-info/RECORD,,
File without changes
File without changes