tryton 7.0.16__py3-none-any.whl → 7.0.18__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of tryton might be problematic. Click here for more details.

Files changed (37) hide show
  1. tryton/__init__.py +1 -1
  2. tryton/common/domain_inversion.py +2 -1
  3. tryton/common/domain_parser.py +17 -7
  4. tryton/data/locale/bg/LC_MESSAGES/tryton.mo +0 -0
  5. tryton/data/locale/ca/LC_MESSAGES/tryton.mo +0 -0
  6. tryton/data/locale/cs/LC_MESSAGES/tryton.mo +0 -0
  7. tryton/data/locale/de/LC_MESSAGES/tryton.mo +0 -0
  8. tryton/data/locale/es/LC_MESSAGES/tryton.mo +0 -0
  9. tryton/data/locale/es_419/LC_MESSAGES/tryton.mo +0 -0
  10. tryton/data/locale/et/LC_MESSAGES/tryton.mo +0 -0
  11. tryton/data/locale/fa/LC_MESSAGES/tryton.mo +0 -0
  12. tryton/data/locale/fi/LC_MESSAGES/tryton.mo +0 -0
  13. tryton/data/locale/fr/LC_MESSAGES/tryton.mo +0 -0
  14. tryton/data/locale/hu/LC_MESSAGES/tryton.mo +0 -0
  15. tryton/data/locale/id/LC_MESSAGES/tryton.mo +0 -0
  16. tryton/data/locale/it/LC_MESSAGES/tryton.mo +0 -0
  17. tryton/data/locale/ja_JP/LC_MESSAGES/tryton.mo +0 -0
  18. tryton/data/locale/lo/LC_MESSAGES/tryton.mo +0 -0
  19. tryton/data/locale/lt/LC_MESSAGES/tryton.mo +0 -0
  20. tryton/data/locale/nl/LC_MESSAGES/tryton.mo +0 -0
  21. tryton/data/locale/pl/LC_MESSAGES/tryton.mo +0 -0
  22. tryton/data/locale/pt/LC_MESSAGES/tryton.mo +0 -0
  23. tryton/data/locale/ro/LC_MESSAGES/tryton.mo +0 -0
  24. tryton/data/locale/ru/LC_MESSAGES/tryton.mo +0 -0
  25. tryton/data/locale/sl/LC_MESSAGES/tryton.mo +0 -0
  26. tryton/data/locale/tr/LC_MESSAGES/tryton.mo +0 -0
  27. tryton/data/locale/uk/LC_MESSAGES/tryton.mo +0 -0
  28. tryton/data/locale/zh_CN/LC_MESSAGES/tryton.mo +0 -0
  29. tryton/gui/window/view_form/view/form_gtk/dictionary.py +7 -5
  30. tryton/gui/window/view_form/view/list.py +22 -5
  31. tryton/tests/test_common_domain_parser.py +6 -0
  32. {tryton-7.0.16.dist-info → tryton-7.0.18.dist-info}/METADATA +1 -1
  33. {tryton-7.0.16.dist-info → tryton-7.0.18.dist-info}/RECORD +37 -37
  34. {tryton-7.0.16.data → tryton-7.0.18.data}/scripts/tryton +0 -0
  35. {tryton-7.0.16.dist-info → tryton-7.0.18.dist-info}/LICENSE +0 -0
  36. {tryton-7.0.16.dist-info → tryton-7.0.18.dist-info}/WHEEL +0 -0
  37. {tryton-7.0.16.dist-info → tryton-7.0.18.dist-info}/top_level.txt +0 -0
tryton/__init__.py CHANGED
@@ -1,6 +1,6 @@
1
1
  # This file is part of Tryton. The COPYRIGHT file at the top level of
2
2
  # this repository contains the full copyright notices and license terms.
3
- __version__ = "7.0.16"
3
+ __version__ = "7.0.18"
4
4
  import locale
5
5
 
6
6
  import gi
@@ -433,7 +433,8 @@ def unique_value(domain, single_value=True):
433
433
  and operator == 'in' and len(value) == 1))
434
434
  and (not count
435
435
  or (count == 1 and model and name.endswith('.id')))):
436
- value = value if operator == '=' and single_value else value[0]
436
+ if operator == 'in' and single_value:
437
+ value = value[0]
437
438
  if model and name.endswith('.id'):
438
439
  model = model[0]
439
440
  value = [model, value]
@@ -128,10 +128,12 @@ def unescape(value, escape='\\'):
128
128
  return value.replace(escape + '%', '%').replace(escape + '_', '_')
129
129
 
130
130
 
131
- def quote(value):
131
+ def quote(value, empty=False):
132
132
  "Quote string if needed"
133
133
  if not isinstance(value, str):
134
134
  return value
135
+ if empty and value == '':
136
+ return '""'
135
137
  if '\\' in value:
136
138
  value = value.replace('\\', '\\\\')
137
139
  if '"' in value:
@@ -307,7 +309,7 @@ def convert_value(field, value, context=None):
307
309
  return converts.get(field['type'], lambda: value)()
308
310
 
309
311
 
310
- def format_value(field, value, target=None, context=None):
312
+ def format_value(field, value, target=None, context=None, _quote_empty=False):
311
313
  "Format value for field"
312
314
  if context is None:
313
315
  context = {}
@@ -410,9 +412,11 @@ def format_value(field, value, target=None, context=None):
410
412
  'many2one': format_many2one,
411
413
  }
412
414
  if isinstance(value, (list, tuple)):
413
- return ';'.join(format_value(field, x, context=context) for x in value)
415
+ return ';'.join(
416
+ format_value(field, x, context=context, _quote_empty=True)
417
+ for x in value)
414
418
  return quote(converts.get(field['type'],
415
- lambda: value if value is not None else '')())
419
+ lambda: value if value is not None else '')(), empty=_quote_empty)
416
420
 
417
421
 
418
422
  def complete_value(field, value):
@@ -647,10 +651,16 @@ class DomainParser(object):
647
651
  operator = operator.rstrip(def_operator
648
652
  ).replace('not', '!').strip()
649
653
  if operator.endswith('in'):
650
- if operator == 'not in':
651
- operator = '!'
654
+ if isinstance(value, (list, tuple)) and len(value) == 1:
655
+ if operator == 'not in':
656
+ operator = '!='
657
+ else:
658
+ operator = '='
652
659
  else:
653
- operator = ''
660
+ if operator == 'not in':
661
+ operator = '!'
662
+ else:
663
+ operator = ''
654
664
  formatted_value = format_value(field, value, target, self.context)
655
665
  if (operator in OPERATORS
656
666
  and field['type'] in ('char', 'text', 'selection')
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
@@ -1,6 +1,7 @@
1
1
  # This file is part of Tryton. The COPYRIGHT file at the top level of this
2
2
  # repository contains the full copyright notices and license terms.
3
3
 
4
+ import datetime as dt
4
5
  import decimal
5
6
  import gettext
6
7
  import locale
@@ -64,7 +65,7 @@ class DictEntry(object):
64
65
  return self.widget.get_text()
65
66
 
66
67
  def set_value(self, value):
67
- self.widget.set_text(value or '')
68
+ self.widget.set_text(str(value or ''))
68
69
  reset_position(self.widget)
69
70
 
70
71
  def set_readonly(self, readonly):
@@ -279,7 +280,7 @@ class DictIntegerEntry(DictEntry):
279
280
  return None
280
281
 
281
282
  def set_value(self, value):
282
- if value is not None:
283
+ if isinstance(value, (int, float, Decimal)):
283
284
  txt_val = locale.format_string('%d', value, True)
284
285
  else:
285
286
  txt_val = ''
@@ -316,7 +317,7 @@ class DictFloatEntry(DictIntegerEntry):
316
317
  else:
317
318
  self.widget.digits = None
318
319
  self.widget.set_width_chars(self.width)
319
- if value is not None:
320
+ if isinstance(value, (int, float, Decimal)):
320
321
  txt_val = locale.localize(
321
322
  '{0:.{1}f}'.format(value, digits[1]), True)
322
323
  else:
@@ -362,7 +363,8 @@ class DictDateTimeEntry(DictEntry):
362
363
  return untimezoned_date(self.widget.props.value)
363
364
 
364
365
  def set_value(self, value):
365
- self.widget.props.value = timezoned_date(value)
366
+ self.widget.props.value = (
367
+ timezoned_date(value) if isinstance(value, dt.datetime) else None)
366
368
 
367
369
  def set_readonly(self, readonly):
368
370
  for child in self.widget.get_children():
@@ -397,7 +399,7 @@ class DictDateEntry(DictEntry):
397
399
  return self.widget.props.value
398
400
 
399
401
  def set_value(self, value):
400
- self.widget.props.value = value
402
+ self.widget.props.value = value if isinstance(value, dt.date) else None
401
403
 
402
404
  def set_readonly(self, readonly):
403
405
  super().set_readonly(readonly)
@@ -333,7 +333,7 @@ class TreeXMLViewParser(XMLViewParser):
333
333
 
334
334
  self.view.treeview.append_column(column)
335
335
 
336
- if 'optional' in attributes:
336
+ if 'optional' in attributes and name != self.exclude_field:
337
337
  self.view.optionals.append(column)
338
338
 
339
339
  def _parse_button(self, node, attributes):
@@ -760,6 +760,8 @@ class ViewTree(View):
760
760
  data = [[unquote(v) for v in l.split('\t')]
761
761
  for l in text.splitlines()]
762
762
  break
763
+ else:
764
+ return
763
765
  col = self.treeview.get_cursor()[1]
764
766
  columns = [c for c in self.treeview.get_columns()
765
767
  if c.get_visible() and c.name]
@@ -785,13 +787,25 @@ class ViewTree(View):
785
787
  for col, value in zip(columns, line):
786
788
  widget = self.get_column_widget(col)
787
789
  if widget.get_textual_value(record) != value:
788
- widget.value_from_text(record, value)
790
+ if hasattr(widget, 'search_remote'):
791
+ field = record.group.fields[widget.attrs['name']]
792
+ win = widget.search_remote(record, field, value)
793
+ if len(win.screen.group) == 1:
794
+ target, = win.screen.group
795
+ field.set_client(
796
+ record, (target.id, target.rec_name()))
797
+ else:
798
+ field.set_client(record, (None, ''))
799
+ win.response(win, Gtk.ResponseType.CANCEL)
800
+ else:
801
+ widget.value_from_text(record, value)
789
802
  if value and not widget.get_textual_value(record):
790
803
  # Stop setting value if a value is correctly set
791
804
  idx = len(group)
792
805
  break
793
806
  if not record.validate():
794
807
  break
808
+ record.save()
795
809
  idx += 1
796
810
  self.record = record
797
811
  self.screen.display(set_cursor=True)
@@ -1041,9 +1055,12 @@ class ViewTree(View):
1041
1055
  elif tree_sel.get_mode() == Gtk.SelectionMode.MULTIPLE:
1042
1056
  model, paths = tree_sel.get_selected_rows()
1043
1057
  if model and paths:
1044
- iter_ = model.get_iter(paths[0])
1045
- record = model.get_value(iter_, 0)
1046
- self.record = record
1058
+ records = []
1059
+ for path in paths:
1060
+ iter_ = model.get_iter(path)
1061
+ records.append(model.get_value(iter_, 0))
1062
+ if self.record not in records:
1063
+ self.record = records[0]
1047
1064
  else:
1048
1065
  self.record = None
1049
1066
 
@@ -681,9 +681,15 @@ class DomainParserTestCase(TestCase):
681
681
  dom.string([('name', 'not ilike', '%Doe%')]), 'Name: !Doe')
682
682
  self.assertEqual(
683
683
  dom.string([('name', 'in', ['John', 'Jane'])]), 'Name: John;Jane')
684
+ self.assertEqual(
685
+ dom.string([('name', 'in', ['John', ''])]), 'Name: John;""')
686
+ self.assertEqual(
687
+ dom.string([('name', 'in', ['John'])]), 'Name: =John')
684
688
  self.assertEqual(
685
689
  dom.string([('name', 'not in', ['John', 'Jane'])]),
686
690
  'Name: !John;Jane')
691
+ self.assertEqual(
692
+ dom.string([('name', 'not in', ['John'])]), 'Name: !=John')
687
693
  self.assertEqual(
688
694
  dom.string([
689
695
  ('name', 'ilike', '%Doe%'),
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: tryton
3
- Version: 7.0.16
3
+ Version: 7.0.18
4
4
  Summary: Tryton desktop client
5
5
  Home-page: http://www.tryton.org/
6
6
  Download-URL: http://downloads.tryton.org/7.0/
@@ -1,4 +1,4 @@
1
- tryton/__init__.py,sha256=LWO6ebkAX42DU2LZteMXA-LcbMFwgmPBQg9834UYCJM,1927
1
+ tryton/__init__.py,sha256=qa4eXLrL3pp1u-hGPHBQPGi27KF4YpO-rYdifo_TeME,1927
2
2
  tryton/bus.py,sha256=GM9nRfPH1vP8X7KnHkLy2eT-KY-Lw37hdHgh-v_wl10,2874
3
3
  tryton/client.py,sha256=mSfOU4sj_XJbWpP92sjXhOXh2_SEZFzlEKEQhZxsGcA,3323
4
4
  tryton/config.py,sha256=n3q8m1uhcqVhXrmXCpM978nA7dBb3-V7bwLb3Bjth5w,9219
@@ -24,8 +24,8 @@ tryton/common/cellrenderertoggle.py,sha256=a4adZY72Q4hpUlCS7ozG21-mYp-QiBWYZVdtY
24
24
  tryton/common/common.py,sha256=c916V8IVpnvbmne93qy9LmJmB15gD5jlE2puGaGB-C0,47147
25
25
  tryton/common/completion.py,sha256=Sk8bYZZrT4b5EA70ssh_GtANL6ucVzljRludHhHoP9Q,3018
26
26
  tryton/common/datetime_.py,sha256=IoYt30e-vp3hZiAt-X6hWAyQxfc7R_c1b5Y1J2zpsNA,20394
27
- tryton/common/domain_inversion.py,sha256=wEjT_YRY5fNqpkdGwcPErZG5u5WlHNLmlPH4iuYXLcw,18457
28
- tryton/common/domain_parser.py,sha256=yAA1spOuPxQoA62hQmLRSCcSkmXbzQalGLuZSL5AE2Y,29157
27
+ tryton/common/domain_inversion.py,sha256=7tsaHPbkOaSFxYTw4KViKGi7u09W2Vt8YpGtvKRANEQ,18464
28
+ tryton/common/domain_parser.py,sha256=8WDsH1KwYwPmHHjueXNZRZPjb-y6S-ZUK_EdPHg1hfs,29565
29
29
  tryton/common/entry_position.py,sha256=lKX3T8day_BQmpKRx7isuj-yieBKUqVmthZsfrtsu4M,281
30
30
  tryton/common/environment.py,sha256=ocAWoBXvnsWODut5-kJr6zhM1fhAFcYLLN7qUK_c8Eg,1848
31
31
  tryton/common/focus.py,sha256=8lR6Ej4KXdH9iOPS7sqSpIFa1YOR2OINRbe96jPz-eA,2471
@@ -37,55 +37,55 @@ tryton/common/selection.py,sha256=cSMnzpuj6F1e1uezQg3BHGWVcihgTztlfxgXKHAc0MQ,84
37
37
  tryton/common/timedelta.py,sha256=z3EXjKUzssaYHNFhngUIcc2sVaeNUVp4urQjm3JFJUw,3180
38
38
  tryton/common/underline.py,sha256=dZpz7m4s7siS024v_gvJ6kWmYZSkl3XnRrJeY2pWfqA,714
39
39
  tryton/common/widget_style.py,sha256=YiS-FnCZm0Kesdw-vx9gWD7QKXMpasoUzHe-UPX2_e0,335
40
- tryton/data/locale/bg/LC_MESSAGES/tryton.mo,sha256=nx7RUcscYQ6lR_YcED_SkBLo-7IHndQI6vkm3dusGNg,8720
40
+ tryton/data/locale/bg/LC_MESSAGES/tryton.mo,sha256=NgLBSVI-B1MCjrs0ZSs8nDr0SD6GCClB8VzxjFq2uy8,8720
41
41
  tryton/data/locale/bg/LC_MESSAGES/tryton.po,sha256=P5bitZSP_j116LY8Ohm7P1CAdfBWrR7KqeHW7FtCXzo,21782
42
- tryton/data/locale/ca/LC_MESSAGES/tryton.mo,sha256=WgxcpRcbGLjJ1Pdbff_zsICI7gZ6ua58cHWcuTPNFNI,19513
42
+ tryton/data/locale/ca/LC_MESSAGES/tryton.mo,sha256=xL0d4jwlLyYnZDI56cXmyVjoqlP7rmU0NOpyr53ew-g,19513
43
43
  tryton/data/locale/ca/LC_MESSAGES/tryton.po,sha256=1a0w_Rv3JnBA_3GWVXw7oe38C5Pl1X--r4MupnKmmUo,20686
44
- tryton/data/locale/cs/LC_MESSAGES/tryton.mo,sha256=oLt9_Pu-jwMpV_GKP6h51Ci5CeH1bQpqNabWWjdAt4g,4634
44
+ tryton/data/locale/cs/LC_MESSAGES/tryton.mo,sha256=gMctdh6L6kE4G-WU28NXgc2Jywq9zgmFt_qjEzKQpDI,4634
45
45
  tryton/data/locale/cs/LC_MESSAGES/tryton.po,sha256=2bfddxSWh-0ZrsLK6D3xGpyN5xS57O31a0YPff2P5Zs,18114
46
- tryton/data/locale/de/LC_MESSAGES/tryton.mo,sha256=-W4WJ20DEiGJz4EaYB-OeRLAyTkUIPwv8yfSCjEhfec,20063
46
+ tryton/data/locale/de/LC_MESSAGES/tryton.mo,sha256=toHdYCG8H5o2wkjqe8RtwovH--jLlyhrSkCjslFsptU,20063
47
47
  tryton/data/locale/de/LC_MESSAGES/tryton.po,sha256=vjv_-AcYBD-7z9Mq33yjn-4mhOMtmZXLm6ryf6R4Pso,21253
48
- tryton/data/locale/es/LC_MESSAGES/tryton.mo,sha256=TUPxARJsIX_uBsRGqRUl_Y9blLwGVutacttM4r691Jw,19796
48
+ tryton/data/locale/es/LC_MESSAGES/tryton.mo,sha256=4F8QKXPKFkj7uJUyVgsPj2N0xpid3pGxsGLoEay98bc,19796
49
49
  tryton/data/locale/es/LC_MESSAGES/tryton.po,sha256=UHzvZBDIUaVgGhqCX7HM7UrtSXCn-Mq3SUQpBiFh2m4,21178
50
- tryton/data/locale/es_419/LC_MESSAGES/tryton.mo,sha256=rG06R5pSH-MFfp3Bw3xe8czHJV9gt9EWAXWwQLwcaLU,7108
50
+ tryton/data/locale/es_419/LC_MESSAGES/tryton.mo,sha256=-L9f3kmPsRhVnGrPgNB4tfRRbMrvlsoqYAuXwv_BOyM,7108
51
51
  tryton/data/locale/es_419/LC_MESSAGES/tryton.po,sha256=dLkeK4mhKZQtV4OnWWqrFm4PXJcnlRekClTn6A1uWXM,16239
52
- tryton/data/locale/et/LC_MESSAGES/tryton.mo,sha256=n3OkJ-gKgnqyyYiE3EiHrrgf-IsJEPYwX_gWgH0xMjg,13478
52
+ tryton/data/locale/et/LC_MESSAGES/tryton.mo,sha256=Z_k_-mX7vi51dBduKOSkpFYyWlRfPxqS9Gdat4ed2GY,13478
53
53
  tryton/data/locale/et/LC_MESSAGES/tryton.po,sha256=SpCDK_T3Pki6QN3sbY2GDOUMgi21SzUCp3LWyYvY_aA,18791
54
- tryton/data/locale/fa/LC_MESSAGES/tryton.mo,sha256=al7oNiDc4WIvbhbU2tJbyOU5p9Z97f-Z0Fgp6gKZNe4,16677
54
+ tryton/data/locale/fa/LC_MESSAGES/tryton.mo,sha256=OeIOaahFwgRmMMNIOwv8At3C495bmdfEZ708W0Krs9o,16677
55
55
  tryton/data/locale/fa/LC_MESSAGES/tryton.po,sha256=BNohGK5emVaFw13XxV1P-kaN8UwRZHX6y4_vrJ3pIoU,22692
56
- tryton/data/locale/fi/LC_MESSAGES/tryton.mo,sha256=l2LZgIWG3GJnaIs8FxgowI1JdtAhKCcxuvLA2zBEx7k,445
56
+ tryton/data/locale/fi/LC_MESSAGES/tryton.mo,sha256=h7U-pxwHzGuIukII2tK4I1__27VQXEe0id4h1g0OU20,445
57
57
  tryton/data/locale/fi/LC_MESSAGES/tryton.po,sha256=yhvVtEeLH01wVpkQmagrSOzRLFmsRrnohTaiuX1Xb0k,13894
58
- tryton/data/locale/fr/LC_MESSAGES/tryton.mo,sha256=NRneyiWPTtvxFsAAvSRhKtCCnItBXPAHm3vAD5OjKxE,20251
58
+ tryton/data/locale/fr/LC_MESSAGES/tryton.mo,sha256=QxtPoWF52suvK80krVwbAaQojRAMQko7N_3GCePQFAQ,20251
59
59
  tryton/data/locale/fr/LC_MESSAGES/tryton.po,sha256=LnHwlUPn85Pk27hJd2SLMnaaHzLwgZiqDJ9Sr_P2Nw4,21375
60
- tryton/data/locale/hu/LC_MESSAGES/tryton.mo,sha256=6fSqowH4gXs_H59IsGPVgCuDjaITF7kVuNEZ_z8cMkc,17161
60
+ tryton/data/locale/hu/LC_MESSAGES/tryton.mo,sha256=uBfopvnCZAD6PEkycQxburvthN00ZXroQs8lBUt4uSA,17161
61
61
  tryton/data/locale/hu/LC_MESSAGES/tryton.po,sha256=UWpLBIy2PA_X4reU4GTQcRO1PunN-J_6Evz6hQVn2FQ,20782
62
- tryton/data/locale/id/LC_MESSAGES/tryton.mo,sha256=8diMk3UOY0GE5KmX91MO5h-EQfsphEDElIbrIlHkd-s,6983
62
+ tryton/data/locale/id/LC_MESSAGES/tryton.mo,sha256=Ettue7h3ofPeLzsN_S3Qtd5I1xLbG5-wKYvOyvJl8-0,6983
63
63
  tryton/data/locale/id/LC_MESSAGES/tryton.po,sha256=Ay8ICs-85khu1vfvguDzZQ6lyFj6B2X6QhFx13jk3aA,15755
64
- tryton/data/locale/it/LC_MESSAGES/tryton.mo,sha256=TiCOUDFDFPWrlGsDktP-xYnvXidD-O0h_XGMM6d6Alo,15005
64
+ tryton/data/locale/it/LC_MESSAGES/tryton.mo,sha256=47NEZ414GgDFCqUxHzaIJvLWFq99vdwwedt7hpW8ivA,15005
65
65
  tryton/data/locale/it/LC_MESSAGES/tryton.po,sha256=j04dr3Pqd56_oHZGb4CmYptm2augdiLl0xpaocMaMQA,19686
66
- tryton/data/locale/ja_JP/LC_MESSAGES/tryton.mo,sha256=kX6i2oz5CUxcKcRNuJ8Byvv2uag7faUk3wnd0Qs5Oc8,7061
66
+ tryton/data/locale/ja_JP/LC_MESSAGES/tryton.mo,sha256=6BGJJMFL-zpOVWHKOGexSrFPguqD27fbSr3imsPO0-k,7061
67
67
  tryton/data/locale/ja_JP/LC_MESSAGES/tryton.po,sha256=Ku2Rg_pOo3lzBZMzzSB-fsMMI6PGP-Gk6dF9zd8ktqQ,36736
68
- tryton/data/locale/lo/LC_MESSAGES/tryton.mo,sha256=Nyn-DUOd6i6qEZI5rOSXnIXns0sYNKBBulBlcIoxWd0,18359
68
+ tryton/data/locale/lo/LC_MESSAGES/tryton.mo,sha256=dsinSZNy1ajayDKB0nLA71W9nXb3mj7xKuQZKO37_QI,18359
69
69
  tryton/data/locale/lo/LC_MESSAGES/tryton.po,sha256=sOi4lx4o1YaGvu3r4q3GSKdSJEynzJpJQM2DTZnSpFI,27264
70
- tryton/data/locale/lt/LC_MESSAGES/tryton.mo,sha256=g8uakaTFDhj7DPS7dxZg-n9GPb1wLzvDuYsOoD0fQSI,16199
70
+ tryton/data/locale/lt/LC_MESSAGES/tryton.mo,sha256=piT067m028PqIjYqDDT-ortCyfS5Vutc49g-F9d2juQ,16199
71
71
  tryton/data/locale/lt/LC_MESSAGES/tryton.po,sha256=aJNZ_cNTYUcQmN5o5F0IkGIb06mAQHe_s_dgPBWpJ28,20775
72
- tryton/data/locale/nl/LC_MESSAGES/tryton.mo,sha256=MzySUPjokOOP-7VAA1YU8xOOX6vx8EDuh_nL2XpDXzY,19315
72
+ tryton/data/locale/nl/LC_MESSAGES/tryton.mo,sha256=8Z8fyfB1xr4-zlg-SnlcxJBUgz1bLvGNaCtL63_ItRI,19315
73
73
  tryton/data/locale/nl/LC_MESSAGES/tryton.po,sha256=KfJe0-zls1NpC4iFe6YNbnGulix3cJZsqq2XgkmNKEk,20414
74
- tryton/data/locale/pl/LC_MESSAGES/tryton.mo,sha256=qPE2yxtcfHueA4CE55eoNuIchmPU3khimoXYDFPl88c,17530
74
+ tryton/data/locale/pl/LC_MESSAGES/tryton.mo,sha256=_rN8nT26gCEXpNLN5c93_tTx0bMo9iBrm7aytdosZaw,17530
75
75
  tryton/data/locale/pl/LC_MESSAGES/tryton.po,sha256=suzZwXvFPSYY-rP805MLjguh2dGffJzrxlZTGKsASKo,20107
76
- tryton/data/locale/pt/LC_MESSAGES/tryton.mo,sha256=auSIEGNs7U9Mrz10PSDqfDMSEbd1LKRLO3lagVZqoao,15086
76
+ tryton/data/locale/pt/LC_MESSAGES/tryton.mo,sha256=8apG4QkktCo2-xY00as_ddqWpQxMD6pdJbbNwkdJsX8,15086
77
77
  tryton/data/locale/pt/LC_MESSAGES/tryton.po,sha256=97kJyFJ7dT22qDIaEYmi06qIhrv2F6y5A0thvrmCqk4,20284
78
- tryton/data/locale/ro/LC_MESSAGES/tryton.mo,sha256=BKTiiq7fdFiIIymCadfqjIB-WoKFZJ2bAsHcGD-T2oI,19246
78
+ tryton/data/locale/ro/LC_MESSAGES/tryton.mo,sha256=ImsfiMq0O_MfZwBTGf4uSLUGjpppN5fcKskGo4SlBl4,19246
79
79
  tryton/data/locale/ro/LC_MESSAGES/tryton.po,sha256=bU9CeRQsk2417eirTmxOHlds_C5WzF7oNx0-pCqqjf4,20482
80
- tryton/data/locale/ru/LC_MESSAGES/tryton.mo,sha256=FqIIOy3BCtNK0wqOdIjjci1JOHcDQ7z_zY1jKe9j4as,9949
80
+ tryton/data/locale/ru/LC_MESSAGES/tryton.mo,sha256=fArRGp4ZbQxsAIJcEX51epVkUkIh9ZwXJbpKwYx-bVI,9949
81
81
  tryton/data/locale/ru/LC_MESSAGES/tryton.po,sha256=Trn_Kiv_z-O8qTg3cbVb-sLqKkulPzymuhya_oF3byw,22266
82
- tryton/data/locale/sl/LC_MESSAGES/tryton.mo,sha256=YNaPemcszpbshWP8o1ehtyyRtZRpJNiE0coFDy_-dvQ,18946
82
+ tryton/data/locale/sl/LC_MESSAGES/tryton.mo,sha256=AAK9o8YmZlenIN67M-IyGhV9_gcf93tV48ODg2PqbAo,18946
83
83
  tryton/data/locale/sl/LC_MESSAGES/tryton.po,sha256=kZrHyIbKsZZibCzq6KFfRBWCDVe0MgqofvOaLc7DbZU,20016
84
- tryton/data/locale/tr/LC_MESSAGES/tryton.mo,sha256=DQ-AkpPZE2txYL_ljwOTQUfTXMVlXD6cSXylBksRCwg,1696
84
+ tryton/data/locale/tr/LC_MESSAGES/tryton.mo,sha256=n84GFjV8ttgahV8bzV8kKZfhjMrT-60hXEEcqshkd4k,1696
85
85
  tryton/data/locale/tr/LC_MESSAGES/tryton.po,sha256=Pns6xApzU3Tl7jZMTXGM-U5eEUcyss8JCo3_UZfRx_M,14431
86
- tryton/data/locale/uk/LC_MESSAGES/tryton.mo,sha256=t3R_uFJUsxzz8Kg25WbmM5KGY3DXiKexLH_aHc84PFE,22964
86
+ tryton/data/locale/uk/LC_MESSAGES/tryton.mo,sha256=Vwp836ike2v-ACtn2yfWH59rc3FkEZYWx8K6MlDl5LQ,22964
87
87
  tryton/data/locale/uk/LC_MESSAGES/tryton.po,sha256=O1ta3mu_SSpzEQL-zKEJK9kTmNZ2bLKHfR0oSPvWB4U,25044
88
- tryton/data/locale/zh_CN/LC_MESSAGES/tryton.mo,sha256=qvdNVRUmEBmsLpl2KP81k0jqSaooePgfojfIozuUTHg,18164
88
+ tryton/data/locale/zh_CN/LC_MESSAGES/tryton.mo,sha256=7p2nLqsqTmLZwO40jQo_RFsL9xo4T00NIzuBaxA3-ow,18164
89
89
  tryton/data/locale/zh_CN/LC_MESSAGES/tryton.po,sha256=-AggbmZvEKIQbQz3RS-_xWio494nJD_gDW-8LvN9yI4,19261
90
90
  tryton/data/pixmaps/tryton/tryton-add.svg,sha256=qIk1ewmNjSHqD8vRqCv0kT7v6hbHnY0KNU-M1jrxb4s,185
91
91
  tryton/data/pixmaps/tryton/tryton-archive.svg,sha256=9MO4wyp1SyYh3-FuoIrHhKb-9ywyql2bExsnz0XX9x0,382
@@ -193,7 +193,7 @@ tryton/gui/window/view_form/view/__init__.py,sha256=HtIDfj_3gBdiOJbDfUzRpgYgSRN0
193
193
  tryton/gui/window/view_form/view/calendar_.py,sha256=F6yl-xO5AsgsSVZwd4BU2izXaeBdpuGh21KLXftrr9g,6078
194
194
  tryton/gui/window/view_form/view/form.py,sha256=EqBt2MtckpXCdwdpqbHIjkAKoVsZOP77MvBrwNe9cKM,22953
195
195
  tryton/gui/window/view_form/view/graph.py,sha256=ngoMZ77e_waMkvvMblAMzNDK6UG9aL4O-LRLAjBz7q0,6499
196
- tryton/gui/window/view_form/view/list.py,sha256=s4ElK416QMgriKqU2mqLkzoJdVdo7cZOGROY-s6NSBs,51037
196
+ tryton/gui/window/view_form/view/list.py,sha256=n0gnBmGtMZ0pqXX32fRctJfo20Z6DezqdXYDy12JuEc,51881
197
197
  tryton/gui/window/view_form/view/list_form.py,sha256=9IsSjpXIoBpT43rwWYxEF8yN2gi58mHZzMfTBhd8SnM,6984
198
198
  tryton/gui/window/view_form/view/screen_container.py,sha256=7_KkgkwmdXMy5AfCY1sHYVD1iI0GljNjUriLoDJJ920,25839
199
199
  tryton/gui/window/view_form/view/calendar_gtk/__init__.py,sha256=-5OdjQ8rEVZvZALCT9wzhMNZf0ryRVaqgbkVmHOqmqE,144
@@ -205,7 +205,7 @@ tryton/gui/window/view_form/view/form_gtk/binary.py,sha256=1xB-MsPlSp9QmtmMzGI3w
205
205
  tryton/gui/window/view_form/view/form_gtk/calendar_.py,sha256=mggAieaRkRuqCrC28zjshzQX7qMxv-0zNxXVaWN-pic,5951
206
206
  tryton/gui/window/view_form/view/form_gtk/char.py,sha256=A2BVZ42dA5CinFJvYULcvaqO5xG29aWjC61xRFAr494,6525
207
207
  tryton/gui/window/view_form/view/form_gtk/checkbox.py,sha256=FEVsM3zTX1-SpHLK7Hr0IF0dW8B_nVkL8SX9KabZZgs,1229
208
- tryton/gui/window/view_form/view/form_gtk/dictionary.py,sha256=aW3bJo5g9lyqedDIXuRjh2T41cEd7jIV-wsesQHXEmw,22107
208
+ tryton/gui/window/view_form/view/form_gtk/dictionary.py,sha256=wgSdbXlE73S-ZTSGyDIPtGHi6Hzv6zgxuLSl1EDhL8w,22279
209
209
  tryton/gui/window/view_form/view/form_gtk/document.py,sha256=RWF54wQq7oUbIUqXBXj_fCPMIUoAsiayYBYPxr5sVTs,3356
210
210
  tryton/gui/window/view_form/view/form_gtk/float.py,sha256=0gOvxyDTUrlFN3IbERxORjPpUkIQTxfX9GRbuuUQ9-E,733
211
211
  tryton/gui/window/view_form/view/form_gtk/image.py,sha256=eCOltUEA74Ne22wnLjLgcb_4mztClYq9_VGnRHs4msc,3984
@@ -237,12 +237,12 @@ tryton/plugins/__init__.py,sha256=BIzasnQxTfBYrc5dh0HUW5OQV8mQ5Qs8XihgquPljBo,14
237
237
  tryton/plugins/translation/__init__.py,sha256=HcuSMS0KOPfiWZmqo4gUSqBAknirLtmsnU48bw8JWu8,697
238
238
  tryton/tests/__init__.py,sha256=-5OdjQ8rEVZvZALCT9wzhMNZf0ryRVaqgbkVmHOqmqE,144
239
239
  tryton/tests/test_common.py,sha256=NDGLS7TzVX5D6GHLfQtb_Yxp2fIyQd6cBNfhjrHlvVQ,1428
240
- tryton/tests/test_common_domain_parser.py,sha256=qN3vneVk-42Vtp9JxruHTm09AbX9awaQoHES4Lh0TC8,43590
240
+ tryton/tests/test_common_domain_parser.py,sha256=J1f6kjd9ppNckSU_8CkmFoB2QwpmNmA495Rt99xlWBY,43880
241
241
  tryton/tests/test_common_selection.py,sha256=1vvP7qfgCaqBhgADqbcCOI5ChXZghKSr7kzP99CGqtA,649
242
242
  tryton/tests/test_common_timedelta.py,sha256=IHzNvZrEimLDxTWLNk5K8VG4KZYaxxGGOdoOB8VefQw,3538
243
- tryton-7.0.16.data/scripts/tryton,sha256=nVzTlvIjRfxC9ZwrgPATVFOzMxrutjFeAS6CuU0g9Ds,2098
244
- tryton-7.0.16.dist-info/LICENSE,sha256=jOtLnuWt7d5Hsx6XXB2QxzrSe2sWWh3NgMfFRetluQM,35147
245
- tryton-7.0.16.dist-info/METADATA,sha256=ooZeMf8sbFQNkMZIuYrTJz4NmnsayvE1fph1WyFja_c,2546
246
- tryton-7.0.16.dist-info/WHEEL,sha256=pL8R0wFFS65tNSRnaOVrsw9EOkOqxLrlUPenUYnJKNo,91
247
- tryton-7.0.16.dist-info/top_level.txt,sha256=7l30wN15bNakY7BPm2TEO79_XxvmYpkJONTGR_dTTOU,7
248
- tryton-7.0.16.dist-info/RECORD,,
243
+ tryton-7.0.18.data/scripts/tryton,sha256=nVzTlvIjRfxC9ZwrgPATVFOzMxrutjFeAS6CuU0g9Ds,2098
244
+ tryton-7.0.18.dist-info/LICENSE,sha256=jOtLnuWt7d5Hsx6XXB2QxzrSe2sWWh3NgMfFRetluQM,35147
245
+ tryton-7.0.18.dist-info/METADATA,sha256=LzvJdGyVUyva01Nq87r7v_wrBCun2x6pIKSR6LaWZyA,2546
246
+ tryton-7.0.18.dist-info/WHEEL,sha256=pL8R0wFFS65tNSRnaOVrsw9EOkOqxLrlUPenUYnJKNo,91
247
+ tryton-7.0.18.dist-info/top_level.txt,sha256=7l30wN15bNakY7BPm2TEO79_XxvmYpkJONTGR_dTTOU,7
248
+ tryton-7.0.18.dist-info/RECORD,,