Subject:
[FIX] account_cashbox: Remove obsolete unique constraint from account_cashbox_session due to new constraint added in https://github.com/ingadhoc/account-payment/commit/db574bf536e815d10221859924381e4a3a86af4d#diff-fd2084468cbef678a2cb52e2257b09797d716c4ef6031d237b29f544ff6c0d77L40
Author:
Rocío Vega
Committer:
Rocío Vega
Subject:
[IMP] account_ux: improve usability to not allow to try to change amount_currency field when register a payment
Author:
Rocío Vega
Committer:
Rocío Vega
Subject:
[FIX] l10n_ar_account_tax_settlement: las percepciones en notas de débito las informamos sin letra.
Author:
Pablo Montenegro
Committer:
Pablo Montenegro
Version:
17.0
Config:
R- modified-modules
Total time:
0s
Date
Level
Type
Message
2024-09-23 18:39:42
INFO
runbot
Init build environment with config R- modified-modules
2024-09-23 18:39:42
Starting step runbot-modified-modules from config R- modified-modules
2024-09-23 18:39:42
ERROR
runbot
77115-17-0 failed running step runbot-modified-modules:
<class 'TypeError'>: "sequence item 7: expected str instance, bool found" while evaluating
'# solo usamos las new porque head tendria todos los repos si es una rebuild y no queremos forzar tantas subbuilds
# ['new', 'head']
commit_links = build.params_id.commit_link_ids.filtered(lambda x: x.match_type in ['new'])
modules = []
# SI bien esta logica funciona, como esta hecho:
# 1. es complejo
# 2. se fija contra el ultimo commit mezclado en rama principal pero puede ser que el PR no este rebaseado y en realidad nosotros queremos testear lo que estamos viendo en el PR
# batch = build.params_id.create_batch_id
# last_base_batch = self.env['runbot.batch'].search([('bundle_id', '=', batch.bundle_id.base_id.id), ('state', '!=', 'preparing'), ('category_id', '=', batch.category_id.id), ('id', '!=', batch.id)], order='id desc', limit=1)
# base_head_per_repo = {commit.repo_id.id: commit for commit in last_base_batch.commit_ids}
# for commit in commit_links.mapped('commit_id'):
# # modules += [x[1] for x in commit._get_available_modules()]
# base_head = base_head_per_repo.get(commit.repo_id.id)
# merge_base_sha = commit.repo_id._git(['merge-base', commit.name, base_head.name]).strip()
# diff = commit.repo_id._git(['diff', '--numstat', merge_base_sha, commit.name]).strip()
for commit_link in commit_links:
commit = commit_link.commit_id
# este no lo usamos por que tienen que approach no lo usamos por que tenian un problema si no estaba rebeseado el PR y aprecian otros modulos ademas
# del modulo que se modificaba
# diff = commit.repo_id._git(['diff', '--numstat', commit_link.base_commit_id.name, commit.name]).strip()
# for line in diff.split('\
'):
# # result = re.search(r'\\t.(.*)\\/', line)
# # si lo definos como "r" no hace falta escapear
# result = re.search(r'(\\t.\\t)(.*?)/', line)
# if result:
# # result = re.search('(\\\\t.\\\\t)(.*?)\\/', line)
# # TODO ver si la regex podemos hacer que saque el \\t directamente (es un tab)
# modules.append(result.group(2))
# agregamos para que erl diff lo haga contra merge_base_commit_id para casos donde un PR tiene mas de un commit
# diff = commit.repo_id._git(['diff-tree', '--name-only','--no-commit-id' ,'-r', commit.name]).strip()
diff = commit.repo_id._git(['diff-tree', '--name-only','--no-commit-id' ,'-r' , commit_link.merge_base_commit_id.name, commit.name]).strip()
# for file in diff.split('\
'):
# modules.append(file.split('/')[0])
# modules = list(set(modules))
for file in diff.split('\
'):
if "/" in file:
modules.append(file.split('/')[0])
modules = list(set(modules))
for module in modules:
# ya no es necesario este filtro porque ahora vemos solo los diff que son dir (con "/" in file)
# a priori este if podria no ser necesario ya que en este repo todos los modulos son de personalizacion
# salvo que module pueda ser un modulo moficiado en otro commit de otro repo?
# if module == 'odoo' or module == 'addons' or module.startswith('.'):
# continue
build._log('', 'Creando sub build para %s' % module)
# self._run_create_build(build, )
# def _add_child(self, param_values, orphan=False, description=False, additionnal_commit_links=False):
# build._add_child({'upgrade_to_build_id': target_build.id})
param_values = {
# 'upgrade_to_build_id': target.id,
# 'upgrade_from_build_id': build, # always current build
# 'dump_db': db.id,
# config id 13 es el que usamos hoy en per v15
# TODO tal vez debería ser 13 o 12 según modulo que se esté modificando
'config_id': 13,
'modules': '-*,%s' % module,
}
child = build._add_child(param_values)
child.write({'description': module})
# child._log
if not modules:
build._log('', 'No encontramos nuevos commits o modulos modificados para crear subbuilds')'