enebootools 2.0.5__tar.gz → 2.0.7__tar.gz

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.
Files changed (80) hide show
  1. {enebootools-2.0.5/enebootools.egg-info → enebootools-2.0.7}/PKG-INFO +1 -1
  2. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/__init__.py +1 -1
  3. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/assembler/kobjects.py +45 -19
  4. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/mergetool/__init__.py +10 -2
  5. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/mergetool/flpatchapipy.py +2 -2
  6. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/mergetool/flpatchdir.py +5 -1
  7. {enebootools-2.0.5 → enebootools-2.0.7/enebootools.egg-info}/PKG-INFO +1 -1
  8. {enebootools-2.0.5 → enebootools-2.0.7}/AUTHORS +0 -0
  9. {enebootools-2.0.5 → enebootools-2.0.7}/LICENSE.gplv3 +0 -0
  10. {enebootools-2.0.5 → enebootools-2.0.7}/README.rst +0 -0
  11. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/__init__.pyc +0 -0
  12. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/assembler/__init__.py +0 -0
  13. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/assembler/config.py +0 -0
  14. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/assembler/database.py +0 -0
  15. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/assembler/databasemodels.py +0 -0
  16. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/assembler/featureconfig.py +0 -0
  17. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/assembler/mypeewee.py +0 -0
  18. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/assembler/save_auto.py +0 -0
  19. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/autoconfig/__init__.py +0 -0
  20. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/autoconfig/autoconfig.py +0 -0
  21. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/autoconfig/parsers.py +0 -0
  22. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/config/__init__.py +0 -0
  23. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/crypto/__init__.py +0 -0
  24. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/crypto/certificates/CA_Partners_Gestiweb.crt +0 -0
  25. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/crypto/certificates/CA_Test_Partners.crt +0 -0
  26. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/crypto/certificates/Eneboo_Open_Source_ERP.crt +0 -0
  27. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/crypto/certificates/Partner_Test.crt +0 -0
  28. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/crypto/certificates/Partner_Test.pem +0 -0
  29. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/crypto/certificates/README.txt +0 -0
  30. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/crypto/certificates/__init__.py +0 -0
  31. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/crypto/main.py +0 -0
  32. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/databaseadmin/__init__.py +0 -0
  33. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/databaseadmin/dblayer/__init__.py +0 -0
  34. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/databaseadmin/dblayer/drivers.py +0 -0
  35. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/entry_points.py +0 -0
  36. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/extracttool/__init__.py +0 -0
  37. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/extracttool/extractfunctions.py +0 -0
  38. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/lib/__init__.py +0 -0
  39. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/lib/etree/ElementInclude.py +0 -0
  40. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/lib/etree/ElementPath.py +0 -0
  41. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/lib/etree/ElementTree.py +0 -0
  42. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/lib/etree/__init__.py +0 -0
  43. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/lib/etree/cElementTree.py +0 -0
  44. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/lib/peewee.py +0 -0
  45. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/lib/utils.py +0 -0
  46. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/mergetool/etc/__init__.py +0 -0
  47. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/mergetool/etc/formats/__init__.py +0 -0
  48. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/mergetool/etc/formats/aq23-kut.xml +0 -0
  49. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/mergetool/etc/formats/aq23-mtd.xml +0 -0
  50. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/mergetool/etc/formats/aq23-xml.xml +0 -0
  51. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/mergetool/etc/formats/qt3-ts.xml +0 -0
  52. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/mergetool/etc/formats/qt3-ui.xml +0 -0
  53. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/mergetool/etc/index.xml +0 -0
  54. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/mergetool/etc/patch-styles/__init__.py +0 -0
  55. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/mergetool/etc/patch-styles/legacy1-savepatch1.xsl +0 -0
  56. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/mergetool/etc/patch-styles/legacy1.xml +0 -0
  57. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/mergetool/etc/patch-styles/semantic1.xml +0 -0
  58. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/mergetool/flpatchlxml.py +0 -0
  59. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/mergetool/flpatchmodel.py +0 -0
  60. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/mergetool/flpatchpy.py +0 -0
  61. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/mergetool/flpatchqs.py +0 -0
  62. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/mergetool/flpatchtest.py +0 -0
  63. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/mergetool/flpatchxml.py +0 -0
  64. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/mergetool/projectbuilder.py +0 -0
  65. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/mergetool/test/__init__.py +0 -0
  66. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/mergetool/test/test_mergetool.py +0 -0
  67. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/packager/__init__.py +0 -0
  68. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/packager/pkgjoiner.py +0 -0
  69. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/packager/pkgsplitter.py +0 -0
  70. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/parseargs.py +0 -0
  71. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/parseargs.pyc +0 -0
  72. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/parser/__init__.py +0 -0
  73. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools/vcsworkflow/__init__.py +0 -0
  74. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools.egg-info/SOURCES.txt +0 -0
  75. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools.egg-info/dependency_links.txt +0 -0
  76. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools.egg-info/entry_points.txt +0 -0
  77. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools.egg-info/requires.txt +0 -0
  78. {enebootools-2.0.5 → enebootools-2.0.7}/enebootools.egg-info/top_level.txt +0 -0
  79. {enebootools-2.0.5 → enebootools-2.0.7}/setup.cfg +0 -0
  80. {enebootools-2.0.5 → enebootools-2.0.7}/setup.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: enebootools
3
- Version: 2.0.5
3
+ Version: 2.0.7
4
4
  Summary: ERP tools for Eneboo
5
5
  Home-page: https://github.com/aulla/eneboo-tools
6
6
  Author: David Martínez Martí, José A. Fernández Fernández
@@ -8,7 +8,7 @@ from pprint import pformat
8
8
  import enebootools.parseargs as pa
9
9
 
10
10
 
11
- __VERSION__ = "2.0.5"
11
+ __VERSION__ = "2.0.7"
12
12
  QS_EXTEND_MODE = "legacy"
13
13
 
14
14
 
@@ -110,10 +110,10 @@ class BaseObject(object):
110
110
 
111
111
  def _get_full_required_modules(self):
112
112
  if self.all_required_modules:
113
- # print("***", self, self.all_required_modules)
114
113
  return self.all_required_modules
115
114
  req = []
116
115
  myreq = []
116
+
117
117
  for modname in self.required_modules:
118
118
  obj = ModuleObject.find(modname)
119
119
  if obj is None:
@@ -122,7 +122,7 @@ class BaseObject(object):
122
122
  % (modname, self.formal_name())
123
123
  )
124
124
  continue
125
- # print("*", self, modname)
125
+
126
126
  new_reqs = [
127
127
  modulename
128
128
  for modulename in obj._get_full_required_modules()
@@ -169,14 +169,21 @@ class BaseObject(object):
169
169
 
170
170
  req += [modulename for modulename in myreq if modulename not in req]
171
171
  new_list = []
172
+
172
173
  for module_name in req:
173
- if "/" not in module_name:
174
+ if (
175
+ "/" not in module_name
176
+ ): # esto filtra dependencias que son añadidas por código de módulo, para evitar que introduzca módulos con versiones incorrectas
174
177
  module_obj = ModuleObject.find(module_name)
175
178
  formal_name = module_obj.formal_name()
176
- if formal_name in req:
177
- self.iface.debug(
178
- "Omitiendo módulo %s (ya existe %s)" % (module_name, formal_name)
179
- )
179
+ if formal_name in [
180
+ formal_name for req_item in req if str(req_item).endswith(formal_name)
181
+ ]:
182
+ if str(self.fullpath).endswith("fun_euromoda"):
183
+ self.iface.debug(
184
+ "Omitiendo módulo %s (ya existe %s : %s)"
185
+ % (module_name, formal_name, module_obj.fullpath)
186
+ )
180
187
  continue
181
188
 
182
189
  new_list.append(module_name)
@@ -189,6 +196,7 @@ class BaseObject(object):
189
196
  return self.all_required_features
190
197
  req = []
191
198
  myreq = []
199
+
192
200
  for featname in self.required_features:
193
201
  obj = FeatureObject.find(featname)
194
202
  if obj is None:
@@ -196,16 +204,17 @@ class BaseObject(object):
196
204
  "Funcionalidad con nombre %s no encontrada (requerida por %s )"
197
205
  % (featname, self.formal_name())
198
206
  )
207
+ if self.formal_name() == "fun_euromoda":
208
+ print("No existe", featname)
209
+
199
210
  continue
200
- new_reqs = [
201
- featurename
202
- for featurename in obj._get_full_required_features()
203
- if featurename not in req
204
- ]
211
+
212
+ new_reqs = []
213
+ for featurename in obj._get_full_required_features():
214
+ if featurename not in req and "24_%s" % featurename not in req:
215
+ new_reqs.append(featurename)
205
216
  if self.type == "prj":
206
217
  for n in new_reqs:
207
- if n in self.required_features:
208
- continue
209
218
  self.iface.debug(
210
219
  "Proyecto %s, se agrega funcionalidad %s solicitada por %s"
211
220
  % (self.formal_name(), n, featname)
@@ -327,14 +336,24 @@ class FeatureObject(BaseObject):
327
336
  if self.dstfolder:
328
337
  binstr.set("dstfolder", self.dstfolder)
329
338
  etree.SubElement(binstr, "Message", text="Copiando módulos . . .")
330
- # print("------->", self._get_full_required_modules())
331
- for modulename in self._get_full_required_modules():
339
+
340
+ self.iface.debug("-- MODULES -----> %s" % self._get_full_required_modules())
341
+
342
+ for modulename in (
343
+ self.required_modules
344
+ if self.qs_extend_mode == "yeboyebo"
345
+ else self._get_full_required_modules()
346
+ ):
332
347
  module = ModuleObject.find(modulename)
348
+ if not module:
349
+ self.iface.warn("No encontramos el módulo %s" % modulename)
350
+
333
351
  cpfolder = etree.SubElement(binstr, "CopyFolderAction")
334
352
  cpfolder.set("src", module.fullpath)
335
353
  cpfolder.set("dst", module.obj.relpath)
336
354
  cpfolder.set("create_dst", "yes")
337
355
 
356
+ self.iface.debug("-- FEATURES -----> %s" % self._get_full_required_features())
338
357
  for featurename in self._get_full_required_features():
339
358
  feature = FeatureObject.find(featurename)
340
359
  patch_list = feature.get_patch_list()
@@ -365,7 +384,11 @@ class FeatureObject(BaseObject):
365
384
  if self.dstfolder:
366
385
  binstr.set("dstfolder", self.dstfolder)
367
386
 
368
- for modulename in self._get_full_required_modules():
387
+ for modulename in (
388
+ self.required_modules
389
+ if self.qs_extend_mode == "yeboyebo"
390
+ else self._get_full_required_modules()
391
+ ):
369
392
  module = ModuleObject.find(modulename)
370
393
  cpfolder = etree.SubElement(binstr, "CopyFolderAction")
371
394
  cpfolder.set("src", os.path.join(dep_folder, module.obj.relpath))
@@ -401,7 +424,11 @@ class FeatureObject(BaseObject):
401
424
  if self.dstfolder:
402
425
  binstr.set("dstfolder", self.dstfolder)
403
426
 
404
- for modulename in self.all_required_modules:
427
+ for modulename in (
428
+ self.required_modules
429
+ if self.qs_extend_mode == "yeboyebo"
430
+ else self._get_full_required_modules()
431
+ ):
405
432
  module = ModuleObject.find(modulename)
406
433
  cpfolder = etree.SubElement(binstr, "CopyFolderAction")
407
434
  cpfolder.set("src", os.path.join(dep_folder, module.obj.relpath))
@@ -645,7 +672,6 @@ class ObjectIndex(object, metaclass=Singleton):
645
672
 
646
673
  def get_build_actions(self, target, func, dstfolder=None):
647
674
  feature = FeatureObject.find(func)
648
- # print("*******************", func, feature)
649
675
  if not feature:
650
676
  self.iface.error("Funcionalidad %s desconocida." % func)
651
677
  return None
@@ -516,7 +516,11 @@ class MergeToolInterface(EnebooToolsInterface):
516
516
  if nom.startswith("test_"):
517
517
  return flpatchtest.diff_test(self, base, final)
518
518
 
519
- elif nom.endswith("_api.py"):
519
+ elif (
520
+ nom.endswith(("_api.py", "_schema.py", "_model.py"))
521
+ or nom.startswith("test_")
522
+ and nom.endswith(".py")
523
+ ):
520
524
  return flpatchapipy.diff_py(self, base, final)
521
525
  elif "models" in base or "pruebasqs" in base:
522
526
  return flpatchmodel.diff_model(self, base, final)
@@ -545,7 +549,11 @@ class MergeToolInterface(EnebooToolsInterface):
545
549
  return flpatchpy.patch_py(self, base, patch)
546
550
  elif nom.endswith("_def.py"):
547
551
  return flpatchpy.patch_py(self, base, patch)
548
- elif nom.endswith(("_api.py", "_schema.py", "_model.py")):
552
+ elif (
553
+ nom.endswith(("_api.py", "_schema.py", "_model.py"))
554
+ or nom.startswith("test_")
555
+ and nom.endswith(".py")
556
+ ):
549
557
  return flpatchapipy.patch_py(self, base, patch)
550
558
  elif "models" in base or "pruebasqs" in base:
551
559
  return flpatchmodel.patch_model(self, base, patch)
@@ -184,7 +184,7 @@ def pyclass_reader(iface, file_name, file_lines):
184
184
  if heu_dtype is None:
185
185
  heu_cnames = []
186
186
  other_functions = []
187
- for l in class_lines:
187
+ """ for l in class_lines:
188
188
  m = re.search("def\s+(?P<cname>[a-zA-Z0-9]+)_\w+", l)
189
189
  if m:
190
190
  heu_cname = m.group("cname")
@@ -201,7 +201,7 @@ def pyclass_reader(iface, file_name, file_lines):
201
201
  iface.error(">>>" + l)
202
202
 
203
203
  if cname in heu_cnames:
204
- heu_cname = cname
204
+ heu_cname = cname """
205
205
 
206
206
  if heu_cname:
207
207
  heu_dtype = "class_definition"
@@ -316,7 +316,11 @@ class FolderApplyPatch(object):
316
316
  old_style, self.iface.patch_py_style_name = self.iface.patch_py_style_name, style
317
317
  self.iface.set_output_file(dst + ".patched")
318
318
  if style in ["legacy"]:
319
- if filename.endswith(("_api.py", "_schema.py", "_model.py")):
319
+ if (
320
+ filename.endswith(("_api.py", "_schema.py", "_model.py"))
321
+ or filename.startswith("test_")
322
+ and filename.endswith(".py")
323
+ ):
320
324
  ret = flpatchapipy.patch_py(self.iface, dst, src)
321
325
  else:
322
326
  ret = flpatchpy.patch_py(self.iface, dst, src)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: enebootools
3
- Version: 2.0.5
3
+ Version: 2.0.7
4
4
  Summary: ERP tools for Eneboo
5
5
  Home-page: https://github.com/aulla/eneboo-tools
6
6
  Author: David Martínez Martí, José A. Fernández Fernández
File without changes
File without changes
File without changes
File without changes
File without changes