Re: Build a maven-plugin on JDK-22 with Maven 3.9.6

2024-03-04 Thread Sergi Vladykin
Thanks a lot, Olivier! Explicitly setting the maven-plugin-plugin version
to the latest 3.11.0 solved the problem for me.

Regards,
Sergei


On Sun, Mar 3, 2024 at 9:37 PM Sergi Vladykin 
wrote:

> Hi,
>
> I'm trying to build a maven plugin with JDK-22
> and DefaultMojoAnnotationsScanner fails with
>
> Caused by: java.lang.IllegalArgumentException: Unsupported class file
> major version 66
> at org.objectweb.asm.ClassReader. (ClassReader.java:199)
>
> I'm specifically trying to test the Java 22 release version, with 21 it
> works fine.
>
> JDK-22 is going to be released in a couple of weeks, is there plan to
> support it in Maven 3?
>
> Thanks!
> Sergei
>


Build a maven-plugin on JDK-22 with Maven 3.9.6

2024-03-03 Thread Sergi Vladykin
Hi,

I'm trying to build a maven plugin with JDK-22
and DefaultMojoAnnotationsScanner fails with

Caused by: java.lang.IllegalArgumentException: Unsupported class file major
version 66
at org.objectweb.asm.ClassReader. (ClassReader.java:199)

I'm specifically trying to test the Java 22 release version, with 21 it
works fine.

JDK-22 is going to be released in a couple of weeks, is there plan to
support it in Maven 3?

Thanks!
Sergei


[jira] [Commented] (SPARK-46310) Cannot deploy Spark application using VolcanoFeatureStep to specify podGroupTemplate file

2023-12-11 Thread Lucca Sergi (Jira)


[ 
https://issues.apache.org/jira/browse/SPARK-46310?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17795320#comment-17795320
 ] 

Lucca Sergi commented on SPARK-46310:
-

Just saw [https://github.com/volcano-sh/volcano/issues/3250]  - can someone 
please confirm that VolcanoFeatureStep doesn't support Spark in client mode? If 
that's the case, what would be the alternative for using Volcano with client 
mode deployment?

> Cannot deploy Spark application using VolcanoFeatureStep to specify 
> podGroupTemplate file 
> --
>
> Key: SPARK-46310
> URL: https://issues.apache.org/jira/browse/SPARK-46310
> Project: Spark
>  Issue Type: Bug
>  Components: Kubernetes
>Affects Versions: 3.4.1
>Reporter: Lucca Sergi
>Priority: Major
>
> I'm trying to deploy a Spark application (version 3.4.1) on Kubernetes using 
> Volcano as the scheduler. I define a 
> [VolcanoJob|https://volcano.sh/en/docs/vcjob/] that represents the Spark 
> driver - it has only one task, whose pod specification includes the driver 
> container, which invokes the spark-submit command.
> Following the official Spark documentation (available on "[Using Volcano as 
> Customized Scheduler for Spark on 
> Kubernetes|https://spark.apache.org/docs/latest/running-on-kubernetes.html#using-volcano-as-customized-scheduler-for-spark-on-kubernetes];),
>  I define the necessary configuration parameters to make use of Volcano as 
> the scheduler for my Spark workload:
> {code:java}
> /opt/spark/bin/spark-submit --name "volcano-spark-1" --deploy-mode="client" \
> --class "org.apache.spark.examples.SparkPi" \
> --conf spark.executor.instances="1" \
> --conf 
> spark.kubernetes.driver.pod.featureSteps="org.apache.spark.deploy.k8s.features.VolcanoFeatureStep"
>  \
> --conf 
> spark.kubernetes.executor.pod.featureSteps="org.apache.spark.deploy.k8s.features.VolcanoFeatureStep"
>  \
> --conf 
> spark.kubernetes.scheduler.volcano.podGroupTemplateFile="/var/template/podgroup.yaml"
>  \
> file:///opt/spark/examples/jars/spark-examples_2.12-3.4.1.jar
> {code}
> In the block above, I omitted some Kubernetes configuration parameters that 
> aren't important for this example. The parameter 
> *{{spark.kubernetes.scheduler.volcano.podGroupTemplateFile}}* points to a 
> file mounted in the driver container. It has a content just as the following 
> example (cpu / memory values may vary):
> {code:yaml}
> apiVersion: scheduling.volcano.sh/v1beta1
> kind: PodGroup
> metadata: 
>   name: pod-group-test
> spec: 
>   minResources: 
> cpu: "2"
> memory: "2Gi"
>   queue: some-existing-queue
> {code}
> I manually verified that this file "/var/template/podgroup.yaml" exists in 
> the container before the "spark-submit" command is issued. I also granted all 
> the necessary RBAC permissions so that the driver pod can interact with 
> Kubernetes objects (pods, VolcanoJobs, podgroups, queues, etc.).
> When I execute this VolcanoJob, I see only the driver pod being created, and 
> when inspecting its logs, I see the following error:
> {code:java}
> io.fabric8.kubernetes.client.KubernetesClientException: Failure executing: 
> POST at: 
> https://api./api/v1/namespaces/04522055-15b3-40d8-ba07-22b1a2a5ffcc/pods.
>  Message: admission webhook "validatepod.volcano.sh" denied the request: 
> failed to get PodGroup for pod 
> <04522055-15b3-40d8-ba07-22b1a2a5ffcc/volcano-spark-1-driver-0-exec-789>: 
> podgroups.scheduling.volcano.sh 
> "spark-5ad570e340934d3997065fa6d504910e-podgroup" not found. Received status: 
> Status(apiVersion=v1, code=400, details=null, kind=Status, message=admission 
> webhook "validatepod.volcano.sh" denied the request: failed to get PodGroup 
> for pod 
> <04522055-15b3-40d8-ba07-22b1a2a5ffcc/volcano-spark-1-driver-0-exec-789>: 
> podgroups.scheduling.volcano.sh 
> "spark-5ad570e340934d3997065fa6d504910e-podgroup" not found, 
> metadata=ListMeta(_continue=null, remainingItemCount=null, 
> resourceVersion=null, selfLink=null, additionalProperties={}), reason=null, 
> status=Failure, additionalProperties={}).
>   at 
> io.fabric8.kubernetes.client.KubernetesClientException.copyAsCause(KubernetesClientException.java:238)
>   at 
> io.fabric8.kubernetes.client.dsl.internal.OperationSupport.waitForResult(OperationSupport.java:538)
>   at 
> io.fabric8.kubernetes.client.dsl

[jira] [Updated] (SPARK-46310) Cannot deploy Spark application using VolcanoFeatureStep to specify podGroupTemplate file

2023-12-07 Thread Lucca Sergi (Jira)


 [ 
https://issues.apache.org/jira/browse/SPARK-46310?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Lucca Sergi updated SPARK-46310:

Description: 
I'm trying to deploy a Spark application (version 3.4.1) on Kubernetes using 
Volcano as the scheduler. I define a 
[VolcanoJob|https://volcano.sh/en/docs/vcjob/] that represents the Spark driver 
- it has only one task, whose pod specification includes the driver container, 
which invokes the spark-submit command.

Following the official Spark documentation (available on "[Using Volcano as 
Customized Scheduler for Spark on 
Kubernetes|https://spark.apache.org/docs/latest/running-on-kubernetes.html#using-volcano-as-customized-scheduler-for-spark-on-kubernetes];),
 I define the necessary configuration parameters to make use of Volcano as the 
scheduler for my Spark workload:
{code:java}
/opt/spark/bin/spark-submit --name "volcano-spark-1" --deploy-mode="client" \
--class "org.apache.spark.examples.SparkPi" \
--conf spark.executor.instances="1" \
--conf 
spark.kubernetes.driver.pod.featureSteps="org.apache.spark.deploy.k8s.features.VolcanoFeatureStep"
 \
--conf 
spark.kubernetes.executor.pod.featureSteps="org.apache.spark.deploy.k8s.features.VolcanoFeatureStep"
 \
--conf 
spark.kubernetes.scheduler.volcano.podGroupTemplateFile="/var/template/podgroup.yaml"
 \
file:///opt/spark/examples/jars/spark-examples_2.12-3.4.1.jar
{code}
In the block above, I omitted some Kubernetes configuration parameters that 
aren't important for this example. The parameter 
*{{spark.kubernetes.scheduler.volcano.podGroupTemplateFile}}* points to a file 
mounted in the driver container. It has a content just as the following example 
(cpu / memory values may vary):
{code:yaml}
apiVersion: scheduling.volcano.sh/v1beta1
kind: PodGroup
metadata: 
  name: pod-group-test
spec: 
  minResources: 
cpu: "2"
memory: "2Gi"
  queue: some-existing-queue
{code}
I manually verified that this file "/var/template/podgroup.yaml" exists in the 
container before the "spark-submit" command is issued. I also granted all the 
necessary RBAC permissions so that the driver pod can interact with Kubernetes 
objects (pods, VolcanoJobs, podgroups, queues, etc.).

When I execute this VolcanoJob, I see only the driver pod being created, and 
when inspecting its logs, I see the following error:
{code:java}
io.fabric8.kubernetes.client.KubernetesClientException: Failure executing: POST 
at: 
https://api./api/v1/namespaces/04522055-15b3-40d8-ba07-22b1a2a5ffcc/pods.
 Message: admission webhook "validatepod.volcano.sh" denied the request: failed 
to get PodGroup for pod 
<04522055-15b3-40d8-ba07-22b1a2a5ffcc/volcano-spark-1-driver-0-exec-789>: 
podgroups.scheduling.volcano.sh 
"spark-5ad570e340934d3997065fa6d504910e-podgroup" not found. Received status: 
Status(apiVersion=v1, code=400, details=null, kind=Status, message=admission 
webhook "validatepod.volcano.sh" denied the request: failed to get PodGroup for 
pod <04522055-15b3-40d8-ba07-22b1a2a5ffcc/volcano-spark-1-driver-0-exec-789>: 
podgroups.scheduling.volcano.sh 
"spark-5ad570e340934d3997065fa6d504910e-podgroup" not found, 
metadata=ListMeta(_continue=null, remainingItemCount=null, 
resourceVersion=null, selfLink=null, additionalProperties={}), reason=null, 
status=Failure, additionalProperties={}).
at 
io.fabric8.kubernetes.client.KubernetesClientException.copyAsCause(KubernetesClientException.java:238)
at 
io.fabric8.kubernetes.client.dsl.internal.OperationSupport.waitForResult(OperationSupport.java:538)
at 
io.fabric8.kubernetes.client.dsl.internal.OperationSupport.handleResponse(OperationSupport.java:558)
at 
io.fabric8.kubernetes.client.dsl.internal.OperationSupport.handleCreate(OperationSupport.java:349)
at 
io.fabric8.kubernetes.client.dsl.internal.BaseOperation.handleCreate(BaseOperation.java:711)
at 
io.fabric8.kubernetes.client.dsl.internal.BaseOperation.handleCreate(BaseOperation.java:93)
at 
io.fabric8.kubernetes.client.dsl.internal.CreateOnlyResourceOperation.create(CreateOnlyResourceOperation.java:42)
at 
io.fabric8.kubernetes.client.dsl.internal.BaseOperation.create(BaseOperation.java:1113)
at 
io.fabric8.kubernetes.client.dsl.internal.BaseOperation.create(BaseOperation.java:93)
at 
org.apache.spark.scheduler.cluster.k8s.ExecutorPodsAllocator.$anonfun$requestNewExecutors$1(ExecutorPodsAllocator.scala:440)
at scala.collection.immutable.Range.foreach$mVc$sp(Range.scala:158)
at 
org.apache.spark.scheduler.cluster.k8s.ExecutorPodsAllocator.requestNewExecutors(ExecutorPodsAllocator.scala:417)
at 
org.apache.spark.scheduler.cluster.k8s.ExecutorPodsAllocator.$anonfun$onNewSnapshots$36(Execu

[jira] [Updated] (SPARK-46310) Cannot deploy Spark application using VolcanoFeatureStep to specify podGroupTemplate file

2023-12-07 Thread Lucca Sergi (Jira)


 [ 
https://issues.apache.org/jira/browse/SPARK-46310?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Lucca Sergi updated SPARK-46310:

Description: 
I'm trying to deploy a Spark application (version 3.4.1) on Kubernetes using 
Volcano as the scheduler. I define a VolcanoJob that represents the Spark 
driver - it has only one task, whose pod specification includes the driver 
container, which invokes the spark-submit command.

Following the official Spark documentation (available on "[Using Volcano as 
Customized Scheduler for Spark on 
Kubernetes|https://spark.apache.org/docs/latest/running-on-kubernetes.html#using-volcano-as-customized-scheduler-for-spark-on-kubernetes];),
 I define the necessary configuration parameters to make use of Volcano as the 
scheduler for my Spark workload:
{code:java}
/opt/spark/bin/spark-submit --name "volcano-spark-1" --deploy-mode="client" \
--class "org.apache.spark.examples.SparkPi" \
--conf spark.executor.instances="1" \
--conf 
spark.kubernetes.driver.pod.featureSteps="org.apache.spark.deploy.k8s.features.VolcanoFeatureStep"
 \
--conf 
spark.kubernetes.executor.pod.featureSteps="org.apache.spark.deploy.k8s.features.VolcanoFeatureStep"
 \
--conf 
spark.kubernetes.scheduler.volcano.podGroupTemplateFile="/var/template/podgroup.yaml"
 \
file:///opt/spark/examples/jars/spark-examples_2.12-3.4.1.jar
{code}
In the block above, I omitted some Kubernetes configuration parameters that 
aren't important for this example. The parameter 
*{{spark.kubernetes.scheduler.volcano.podGroupTemplateFile}}* points to a file 
mounted in the driver container. It has a content just as the following example 
(cpu / memory values may vary):
{code:yaml}
apiVersion: scheduling.volcano.sh/v1beta1
kind: PodGroup
metadata: 
  name: pod-group-test
spec: 
  minResources: 
cpu: "2"
memory: "2Gi"
  queue: some-existing-queue
{code}
I manually verified that this file "/var/template/podgroup.yaml" exists in the 
container before the "spark-submit" command is issued. I also granted all the 
necessary RBAC permissions so that the driver pod can interact with Kubernetes 
objects (pods, VolcanoJobs, podgroups, queues, etc.).

When I execute this VolcanoJob, I see only the driver pod being created, and 
when inspecting its logs, I see the following error:
{code:java}
io.fabric8.kubernetes.client.KubernetesClientException: Failure executing: POST 
at: 
https://api./api/v1/namespaces/04522055-15b3-40d8-ba07-22b1a2a5ffcc/pods.
 Message: admission webhook "validatepod.volcano.sh" denied the request: failed 
to get PodGroup for pod 
<04522055-15b3-40d8-ba07-22b1a2a5ffcc/volcano-spark-1-driver-0-exec-789>: 
podgroups.scheduling.volcano.sh 
"spark-5ad570e340934d3997065fa6d504910e-podgroup" not found. Received status: 
Status(apiVersion=v1, code=400, details=null, kind=Status, message=admission 
webhook "validatepod.volcano.sh" denied the request: failed to get PodGroup for 
pod <04522055-15b3-40d8-ba07-22b1a2a5ffcc/volcano-spark-1-driver-0-exec-789>: 
podgroups.scheduling.volcano.sh 
"spark-5ad570e340934d3997065fa6d504910e-podgroup" not found, 
metadata=ListMeta(_continue=null, remainingItemCount=null, 
resourceVersion=null, selfLink=null, additionalProperties={}), reason=null, 
status=Failure, additionalProperties={}).
at 
io.fabric8.kubernetes.client.KubernetesClientException.copyAsCause(KubernetesClientException.java:238)
at 
io.fabric8.kubernetes.client.dsl.internal.OperationSupport.waitForResult(OperationSupport.java:538)
at 
io.fabric8.kubernetes.client.dsl.internal.OperationSupport.handleResponse(OperationSupport.java:558)
at 
io.fabric8.kubernetes.client.dsl.internal.OperationSupport.handleCreate(OperationSupport.java:349)
at 
io.fabric8.kubernetes.client.dsl.internal.BaseOperation.handleCreate(BaseOperation.java:711)
at 
io.fabric8.kubernetes.client.dsl.internal.BaseOperation.handleCreate(BaseOperation.java:93)
at 
io.fabric8.kubernetes.client.dsl.internal.CreateOnlyResourceOperation.create(CreateOnlyResourceOperation.java:42)
at 
io.fabric8.kubernetes.client.dsl.internal.BaseOperation.create(BaseOperation.java:1113)
at 
io.fabric8.kubernetes.client.dsl.internal.BaseOperation.create(BaseOperation.java:93)
at 
org.apache.spark.scheduler.cluster.k8s.ExecutorPodsAllocator.$anonfun$requestNewExecutors$1(ExecutorPodsAllocator.scala:440)
at scala.collection.immutable.Range.foreach$mVc$sp(Range.scala:158)
at 
org.apache.spark.scheduler.cluster.k8s.ExecutorPodsAllocator.requestNewExecutors(ExecutorPodsAllocator.scala:417)
at 
org.apache.spark.scheduler.cluster.k8s.ExecutorPodsAllocator.$anonfun$onNewSnapshots$36(ExecutorPodsAllocator.scala:370)
at 
org.apache.spark.sche

[jira] [Updated] (SPARK-46310) Cannot deploy Spark application using VolcanoFeatureStep to specify podGroupTemplate file

2023-12-07 Thread Lucca Sergi (Jira)


 [ 
https://issues.apache.org/jira/browse/SPARK-46310?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Lucca Sergi updated SPARK-46310:

Description: 
I'm trying to deploy a Spark application (version 3.4.1) on Kubernetes using 
Volcano as the scheduler. I define a VolcanoJob that represents the Spark 
driver - it has only one task, whose pod specification includes the driver 
container, which invokes the spark-submit command.

Following the official Spark documentation (available on "[Using Volcano as 
Customized Scheduler for Spark on 
Kubernetes|https://spark.apache.org/docs/latest/running-on-kubernetes.html#using-volcano-as-customized-scheduler-for-spark-on-kubernetes];),
 I define the necessary configuration parameters to make use of Volcano as the 
scheduler for my Spark workload:
{code:java}
/opt/spark/bin/spark-submit --name "volcano-spark-1" --deploy-mode="client" \
--class "org.apache.spark.examples.SparkPi" \
--conf spark.executor.instances="1" \
--conf 
spark.kubernetes.driver.pod.featureSteps="org.apache.spark.deploy.k8s.features.VolcanoFeatureStep"
 \
--conf 
spark.kubernetes.executor.pod.featureSteps="org.apache.spark.deploy.k8s.features.VolcanoFeatureStep"
 \
--conf 
spark.kubernetes.scheduler.volcano.podGroupTemplateFile="/var/template/podgroup.yaml"
 \
file:///opt/spark/examples/jars/spark-examples_2.12-3.4.1.jar
{code}
In the block above, I omitted some Kubernetes configuration parameters that 
aren't important for this example. The parameter 
*{{spark.kubernetes.scheduler.volcano.podGroupTemplateFile}}* points to a file 
mounted in the driver container. It has a content similar to the following 
example:
{code:yaml}
apiVersion: scheduling.volcano.sh/v1beta1
kind: PodGroup
metadata: 
  name: pod-group-test
spec: 
  minResources: 
cpu: "2"
memory: "2Gi"
  queue: some-existing-queue
{code}
I manually verified that this file "/var/template/podgroup.yaml" exists in the 
container before the "spark-submit" command is issued. I also granted all the 
necessary RBAC permissions so that the driver pod can interact with Kubernetes 
objects (pods, VolcanoJobs, podgroups, queues, etc.).

When I execute this VolcanoJob, I see only the driver pod being created, and 
when inspecting its logs, I see the following error:
{code:java}
io.fabric8.kubernetes.client.KubernetesClientException: Failure executing: POST 
at: 
https://api./api/v1/namespaces/04522055-15b3-40d8-ba07-22b1a2a5ffcc/pods.
 Message: admission webhook "validatepod.volcano.sh" denied the request: failed 
to get PodGroup for pod 
<04522055-15b3-40d8-ba07-22b1a2a5ffcc/volcano-spark-1-driver-0-exec-789>: 
podgroups.scheduling.volcano.sh 
"spark-5ad570e340934d3997065fa6d504910e-podgroup" not found. Received status: 
Status(apiVersion=v1, code=400, details=null, kind=Status, message=admission 
webhook "validatepod.volcano.sh" denied the request: failed to get PodGroup for 
pod <04522055-15b3-40d8-ba07-22b1a2a5ffcc/volcano-spark-1-driver-0-exec-789>: 
podgroups.scheduling.volcano.sh 
"spark-5ad570e340934d3997065fa6d504910e-podgroup" not found, 
metadata=ListMeta(_continue=null, remainingItemCount=null, 
resourceVersion=null, selfLink=null, additionalProperties={}), reason=null, 
status=Failure, additionalProperties={}).
at 
io.fabric8.kubernetes.client.KubernetesClientException.copyAsCause(KubernetesClientException.java:238)
at 
io.fabric8.kubernetes.client.dsl.internal.OperationSupport.waitForResult(OperationSupport.java:538)
at 
io.fabric8.kubernetes.client.dsl.internal.OperationSupport.handleResponse(OperationSupport.java:558)
at 
io.fabric8.kubernetes.client.dsl.internal.OperationSupport.handleCreate(OperationSupport.java:349)
at 
io.fabric8.kubernetes.client.dsl.internal.BaseOperation.handleCreate(BaseOperation.java:711)
at 
io.fabric8.kubernetes.client.dsl.internal.BaseOperation.handleCreate(BaseOperation.java:93)
at 
io.fabric8.kubernetes.client.dsl.internal.CreateOnlyResourceOperation.create(CreateOnlyResourceOperation.java:42)
at 
io.fabric8.kubernetes.client.dsl.internal.BaseOperation.create(BaseOperation.java:1113)
at 
io.fabric8.kubernetes.client.dsl.internal.BaseOperation.create(BaseOperation.java:93)
at 
org.apache.spark.scheduler.cluster.k8s.ExecutorPodsAllocator.$anonfun$requestNewExecutors$1(ExecutorPodsAllocator.scala:440)
at scala.collection.immutable.Range.foreach$mVc$sp(Range.scala:158)
at 
org.apache.spark.scheduler.cluster.k8s.ExecutorPodsAllocator.requestNewExecutors(ExecutorPodsAllocator.scala:417)
at 
org.apache.spark.scheduler.cluster.k8s.ExecutorPodsAllocator.$anonfun$onNewSnapshots$36(ExecutorPodsAllocator.scala:370)
at 
org.apache.spark.scheduler.cluster.k8s.Execut

[jira] [Created] (SPARK-46310) Cannot deploy Spark application using VolcanoFeatureStep to specify podGroupTemplate file

2023-12-07 Thread Lucca Sergi (Jira)
Lucca Sergi created SPARK-46310:
---

 Summary: Cannot deploy Spark application using VolcanoFeatureStep 
to specify podGroupTemplate file 
 Key: SPARK-46310
 URL: https://issues.apache.org/jira/browse/SPARK-46310
 Project: Spark
  Issue Type: Bug
  Components: Kubernetes
Affects Versions: 3.4.1
Reporter: Lucca Sergi


I'm trying to deploy a Spark application (version 3.4.1) on Kubernetes using 
Volcano as the scheduler. I define a VolcanoJob that represents the Spark 
driver - it has only one task, whose pod specification includes the driver 
container, which invokes the spark-submit command.

Following the official Spark documentation (available on "[Using Volcano as 
Customized Scheduler for Spark on 
Kubernetes|https://spark.apache.org/docs/latest/running-on-kubernetes.html#using-volcano-as-customized-scheduler-for-spark-on-kubernetes];),
 I define the necessary configuration parameters to make use of Volcano as the 
scheduler for my Spark workload:
{code:java}
/opt/spark/bin/spark-submit --name "volcano-spark-1" --deploy-mode="client" \
--class "org.apache.spark.examples.SparkPi" \
--conf spark.executor.instances="1" \
--conf 
spark.kubernetes.driver.pod.featureSteps="org.apache.spark.deploy.k8s.features.VolcanoFeatureStep"
 \
--conf 
spark.kubernetes.executor.pod.featureSteps="org.apache.spark.deploy.k8s.features.VolcanoFeatureStep"
 \
--conf 
spark.kubernetes.scheduler.volcano.podGroupTemplateFile="/var/template/podgroup.yaml"
 \
file:///opt/spark/examples/jars/spark-examples_2.12-3.4.1.jar
{code}
In the block above, I omitted some Kubernetes configuration parameters that 
aren't important for this example. The parameter 
*{{spark.kubernetes.scheduler.volcano.podGroupTemplateFile}}* points to a file 
mounted in the driver container. It has a content as follows:
{code:yaml}
apiVersion: scheduling.volcano.sh/v1beta1
kind: PodGroup
metadata:
  name: pod-group-test
spec:
  minResources:
cpu: "2"
memory: "2Gi"
  queue: some-existing-queue
{code}
I manually verified that this file "/var/template/podgroup.yaml" exists in the 
container before the "spark-submit" command is issued. I also granted all the 
necessary RBAC permissions so that the driver pod can interact with Kubernetes 
objects (pods, VolcanoJobs, podgroups, queues, etc.).

When I execute this VolcanoJob, I see only the driver pod being created, and 
when inspecting its logs, I see the following error:
{code:java}
io.fabric8.kubernetes.client.KubernetesClientException: Failure executing: POST 
at: 
https://api./api/v1/namespaces/04522055-15b3-40d8-ba07-22b1a2a5ffcc/pods.
 Message: admission webhook "validatepod.volcano.sh" denied the request: failed 
to get PodGroup for pod 
<04522055-15b3-40d8-ba07-22b1a2a5ffcc/volcano-spark-1-driver-0-exec-789>: 
podgroups.scheduling.volcano.sh 
"spark-5ad570e340934d3997065fa6d504910e-podgroup" not found. Received status: 
Status(apiVersion=v1, code=400, details=null, kind=Status, message=admission 
webhook "validatepod.volcano.sh" denied the request: failed to get PodGroup for 
pod <04522055-15b3-40d8-ba07-22b1a2a5ffcc/volcano-spark-1-driver-0-exec-789>: 
podgroups.scheduling.volcano.sh 
"spark-5ad570e340934d3997065fa6d504910e-podgroup" not found, 
metadata=ListMeta(_continue=null, remainingItemCount=null, 
resourceVersion=null, selfLink=null, additionalProperties={}), reason=null, 
status=Failure, additionalProperties={}).
at 
io.fabric8.kubernetes.client.KubernetesClientException.copyAsCause(KubernetesClientException.java:238)
at 
io.fabric8.kubernetes.client.dsl.internal.OperationSupport.waitForResult(OperationSupport.java:538)
at 
io.fabric8.kubernetes.client.dsl.internal.OperationSupport.handleResponse(OperationSupport.java:558)
at 
io.fabric8.kubernetes.client.dsl.internal.OperationSupport.handleCreate(OperationSupport.java:349)
at 
io.fabric8.kubernetes.client.dsl.internal.BaseOperation.handleCreate(BaseOperation.java:711)
at 
io.fabric8.kubernetes.client.dsl.internal.BaseOperation.handleCreate(BaseOperation.java:93)
at 
io.fabric8.kubernetes.client.dsl.internal.CreateOnlyResourceOperation.create(CreateOnlyResourceOperation.java:42)
at 
io.fabric8.kubernetes.client.dsl.internal.BaseOperation.create(BaseOperation.java:1113)
at 
io.fabric8.kubernetes.client.dsl.internal.BaseOperation.create(BaseOperation.java:93)
at 
org.apache.spark.scheduler.cluster.k8s.ExecutorPodsAllocator.$anonfun$requestNewExecutors$1(ExecutorPodsAllocator.scala:440)
at scala.collection.immutable.Range.foreach$mVc$sp(Range.scala:158)
at 
org.apache.spark.scheduler.cluster.k8s.ExecutorPodsAllocator.requestNewExecuto

[tryton-commits] [Mercurial][tryton/tryton] Pushed new branch topic/default/static-files-route

2023-10-25 Thread Sergi Almacellas Abellana (@pokoli)


Sergi Almacellas Abellana pushed new branch topic/default/static-files-route at 
Tryton / Tryton

-- 
View it on Heptapod: 
https://foss.heptapod.net/tryton/tryton/-/tree/topic/default/static-files-route
You're receiving this email because of your account on foss.heptapod.net.




Re: [RFC PATCH] drm/ci: add helper script update-xfails.py

2023-09-28 Thread Sergi Blanch Torne
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA256

Hi Helen,

On Wed, 2023-09-27 at 19:28 -0300, Helen Koike wrote:
> > > +def get_unit_test_name_and_results(unit_test):
> > > +    if "Artifact results/failures.csv not found" in unit_test:
> > > +    return None, None
> > > +    unit_test_name, unit_test_result =
> > > unit_test.strip().split(",")
> > > +    return unit_test_name, unit_test_result
> > 
> > Suggestion: it is not managing empty lines or comments. By now,
> > there
> > aren't, but they could be found.
> 
> Indeed.

Just add a new if statement to discard if the strings start with # or
strip the line and check the length. Perhaps we can think of other
assertions to sanitise the string.

> > Suggestion: Sometimes tests fails with different status ("Fail" to
> > "Crash" for example) and the expectations should be updated with
> > the
> > newer status.
> 
> The status is only present in the fails and not in the flakes list,
> so I 
> update it with add_unit_test_or_update_result_to_fails_if_present() 
> function below, make sense?

Absolutely, sorry that I didn't see this was a process included in the
last if statement. If it is present in the fails' file (that includes
the test name and its state) you do exactly what's necessary: add if
not present, update if it was already in the file.

> 
Regards,


- -- 
Sergi Blanch Torné
Senior Software Engineer

Collabora Ltd.
Platinum Building, St John's Innovation Park, Cambridge CB4 0DS, UK
Registered in England & Wales, no. 5513718

-BEGIN PGP SIGNATURE-

iHUEARYIAB0WIQQwWRK68l+taJfhwqAto5bHyTm9RwUCZRUnAgAKCRAto5bHyTm9
R53NAP9T2OCiwbnEjv+H0CQg/eK1xGe7yS/3cqjaPFRvvZPp1wD/V1H9NuhpRR6M
8+QZgbsS/swSPdwYABtcz+75CKpuJwo=
=XRRO
-END PGP SIGNATURE-


Re: [RFC PATCH] drm/ci: add helper script update-xfails.py

2023-09-27 Thread Sergi Blanch Torne
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA256

Hi Helen,

On Mon, 2023-09-25 at 16:55 -0300, Helen Koike wrote:
> Hello,
> 
> This script is being very handy for me, so I suppose it could be
> handy
> to others, since I'm publishing it in the xfails folder.
> 
> Let me know your thoughts.

I have two suggestions and one comment. Before that, I would like to
highlight the importance of tools like that to help with repetitive
tedious work, it is great to have this script.

> +def get_xfails_file_path(canonical_name, suffix):
> +    name = canonical_name.replace(":", "-")
> +    script_dir = os.path.dirname(os.path.abspath(__file__))
> +    return os.path.join(script_dir, f"{name}-{suffix}.txt")

I appreciate the correspondence between job name and expectation file
names.

> +def get_unit_test_name_and_results(unit_test):
> +    if "Artifact results/failures.csv not found" in unit_test:
> +    return None, None
> +    unit_test_name, unit_test_result = unit_test.strip().split(",")
> +    return unit_test_name, unit_test_result

Suggestion: it is not managing empty lines or comments. By now, there
aren't, but they could be found.

> +def main(namespace, project, pipeline_id):
> +    xfails = (
> +    Collate(namespace=namespace, project=project)
> +    .from_pipeline(pipeline_id)
> +    .get_artifact("results/failures.csv")
> +    )
> +
> +    split_unit_test_from_collate(xfails)
> +
> +    for job_name in xfails.keys():
> +    canonical_name = get_canonical_name(job_name)
> +    fails_txt_path = get_xfails_file_path(canonical_name,
> "fails")
> +    flakes_txt_path = get_xfails_file_path(canonical_name,
> "flakes")
> +
> +    fails_txt = read_file(fails_txt_path)
> +    flakes_txt = read_file(flakes_txt_path)
> +
> +    for job_id in xfails[job_name].keys():
> +    for unit_test in xfails[job_name][job_id]:
> +    unit_test_name, unit_test_result =
> get_unit_test_name_and_results(unit_test)
> +
> +    if not unit_test_name:
> +    continue
> +
> +    if is_test_present_on_file(flakes_txt,
> unit_test_name):
> +    remove_unit_test_if_present(flakes_txt,
> unit_test_name, flakes_txt_path)
> +    print("WARNING: unit test is on flakes list but
> a job failed due to it, "
> +  "is your tree up to date?",
> +  unit_test_name, "DROPPED FROM",
> os.path.basename(flakes_txt_path))
> +
> +    if unit_test_result == "UnexpectedPass":
> +    remove_unit_test_if_present(fails_txt,
> unit_test_name, fails_txt_path)
> +    # flake result
> +    if not
> is_unit_test_present_in_other_jobs(unit_test, xfails[job_name]):
> +    add_unit_test_if_not_present(flakes_txt,
> unit_test_name, flakes_txt_path)
> +    continue

Suggestion: Sometimes tests fails with different status ("Fail" to
"Crash" for example) and the expectations should be updated with the
newer status.

> +
> +    # flake result
> +    if not is_unit_test_present_in_other_jobs(unit_test,
> xfails[job_name]):
> +    add_unit_test_if_not_present(flakes_txt,
> unit_test_name, flakes_txt_path)
> +    continue
> +
> +    # consistent result
> +   
> add_unit_test_or_update_result_to_fails_if_present(fails_txt,
> unit_test,
> +  
> fails_txt_path)
> +
> +    save_file(fails_txt, fails_txt_path)
> +    save_file(flakes_txt, flakes_txt_path)

Regards,

- -- 
Sergi Blanch Torné
Senior Software Engineer

Collabora Ltd.
Platinum Building, St John's Innovation Park, Cambridge CB4 0DS, UK
Registered in England & Wales, no. 5513718

-BEGIN PGP SIGNATURE-

iHUEARYIAB0WIQQwWRK68l+taJfhwqAto5bHyTm9RwUCZRPuvgAKCRAto5bHyTm9
R7wIAP4hr5ddBZ9+3R4n2KJA5DOc6JE1oRjabB7A2pkZFl1BxwEAyX83yMaqJE8T
RXrhZ3oyQbUIyCbZhLNOP6OiZ6bchQc=
=Pr1y
-END PGP SIGNATURE-


[bitcoin-dev] Bitcoin Research Day 2023

2023-09-15 Thread Sergi Delgado Segura via bitcoin-dev
Hi list,

(cross-posting this to bitcoin-dev and lightning-dev since it may be
relevant for both)

The first Bitcoin Research Day will be held at Chaincode (Midtown NYC) on
October 27th, 2023. We are aiming to bring together researchers and
developers to discuss what makes Bitcoin a truly robust, secure, and
decentralized system.

The day will include both longer format talks (speakers include: Benedikt
Bünz, Ethan Heilman, Ittay Eyal, Carla Kirk-Cohen, Murch, and Martin
Zumsande, among others) as well as lightning talks (~5 min) to present
ongoing research and development. Slots for the latter are still available.
If you have something you'd like to present, feel free to sign up (
https://www.brd23.com/#lightning-talks).

We welcome people from both spaces to attend and be part of the discussion.
This is an in-person event, check https://www.brd23.com/ to RSVP.

Clara and Sergi
___
bitcoin-dev mailing list
bitcoin-dev@lists.linuxfoundation.org
https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev


[Lightning-dev] Bitcoin Research Day 2023

2023-09-14 Thread Sergi Delgado Segura
Hi list,

(cross-posting this to bitcoin-dev and lightning-dev since it may be
relevant for both)

The first Bitcoin Research Day will be held at Chaincode (Midtown NYC) on
October 27th, 2023. We are aiming to bring together researchers and
developers to discuss what makes Bitcoin a truly robust, secure, and
decentralized system.

The day will include both longer format talks (speakers include: Benedikt
Bünz, Ethan Heilman, Ittay Eyal, Carla Kirk-Cohen, Murch, and Martin
Zumsande, among others) as well as lightning talks (~5 min) to present
ongoing research and development. Slots for the latter are still available.
If you have something you'd like to present, feel free to sign up (
https://www.brd23.com/#lightning-talks).

We welcome people from both spaces to attend and be part of the discussion.
This is an in-person event, check https://www.brd23.com/ to RSVP.

Clara and Sergi
___
Lightning-dev mailing list
Lightning-dev@lists.linuxfoundation.org
https://lists.linuxfoundation.org/mailman/listinfo/lightning-dev


RE: [CORREO BASURA] RE: Biblioteca QSPL

2023-07-28 Thread Sergi Sitjes
Entonces haz lo del reclaim storage a ver si lo que te falta es liberar el 
espacio de spools ya borrados.

[cid:image001.png@01D9C134.E6C8CDC0]
Sergi Sitjes
Director Sistemes d'Informació/CIO
GENEBRE GROUP
E-mail: se...@genebre.es<mailto:se...@genebre.es>
Web:   http://www.genebre.es<http://www.genebre.es/>
Tel:  +34 93 298 80 02

De: forum.help400  En nombre de SALVADOR 
SANCHEZ COSTA | INFORGES |
Enviado el: viernes, 28 de julio de 2023 9:20
Para: forum.help400 
Asunto: RE: [CORREO BASURA] RE: Biblioteca QSPL

CORREO EXTERNO: Atención: El remitente es externo a la organización. Vigile con 
los enlaces y ficheros adjuntos si no conoce al remitente.

De las colas del sistema, no tiene gran cosa...
[cid:image002.png@01D9C134.E6C8CDC0]

En la QEZJOBLOG, algún fichero de 300 paginas, pero la mayoría de 2/3 
paginas..lo borro pero sigue igual.

Y en el resto de colas, tampoco hay gran cantidad de listados, en algunas 20/30 
listados, pero listados del ERP, de pocas paginas.

Salu2.-

De: forum.help400 
mailto:forum.help400-boun...@help400.com>> 
En nombre de CARLOS SANTIAGO
Enviado el: viernes, 28 de julio de 2023 8:30
Para: 'forum.help400' 
mailto:forum.help400@help400.com>>
Asunto: RE: [CORREO BASURA] RE: Biblioteca QSPL

Buenos días
Como bien dice Sergi, esa es la biblioteca que contiene todos los spools del 
sistema
Me parece muy bien lo de trabajar con wrkoutq *all  ver el contenido de cada 
cola de salida

Saludos
Carles




De: forum.help400 
mailto:forum.help400-boun...@help400.com>> 
En nombre de Sergi Sitjes
Enviado el: viernes, 28 de julio de 2023 8:04
Para: forum.help400 
mailto:forum.help400@help400.com>>
Asunto: [CORREO BASURA] RE: Biblioteca QSPL

Hola,

Diría que ahí es donde se guardan los spools, así que tendrás que limpiar cosas 
que estén por ahí obsoletas. Te propongo que hagas un wrkoutq *all y verás el 
número de ficheros de spool en cada cola, verás que con la opción 14 puedes 
limpiar a saco toda una cola.

Saludos,

[cid:image001.png@01D9C134.E6C8CDC0]
Sergi Sitjes
Director Sistemes d'Informació/CIO
GENEBRE GROUP
E-mail: se...@genebre.es<mailto:se...@genebre.es>
Web:   http://www.genebre.es<http://www.genebre.es/>
Tel:  +34 93 298 80 02

De: forum.help400 
mailto:forum.help400-boun...@help400.com>> 
En nombre de SALVADOR SANCHEZ COSTA | INFORGES |
Enviado el: viernes, 28 de julio de 2023 8:02
Para: forum.help400 
mailto:forum.help400@help400.com>>
Asunto: Biblioteca QSPL

CORREO EXTERNO: Atención: El remitente es externo a la organización. Vigile con 
los enlaces y ficheros adjuntos si no conoce al remitente.

Buenos días, ya que el foro sigue vivo, una duda.Tengo una biblioteca del 
sistema QSPL que me ocupa 12Gb, que puedo hacer para que disminuya de 
espacio

[cid:image003.png@01D9C134.E6C8CDC0]

Gracias
AVISO SOBRE CONFIDENCIALIDAD:
Los datos personales que forman parte de este correo electrónico son tratados 
por Inforges IT Services, SL con la finalidad de mantenimiento de contactos. 
Los datos se han obtenido con su consentimiento o como consecuencia de una 
relación jurídica previa. Puede usted ejercitar los derechos de acceso, 
rectificación, cancelación y oposición así como obtener más información 
solicitándolo al remitente de este correo electrónico.

La información contenida en el presente mensaje de correo electrónico es 
confidencial y su acceso únicamente está autorizado al destinatario original 
del mismo, quedando prohibidos cualquier comunicación, divulgación, o reenvío, 
tanto del mensaje como de su contenido. Inforges IT Services, SL no puede 
asumir la responsabilidad derivada de que terceras personas puedan llegar a 
conocer el contenido del mensaje durante su transmisión. En el supuesto de que 
usted no sea el destinatario autorizado, le rogamos borre el contenido del 
mensaje y nos comunique dicha circunstancia a través de un mensaje de correo 
electrónico a la dirección infor...@inforges.es<mailto:infor...@inforges.es> o 
al teléfono 968 350 011.

La información que contiene este correo electrónico es confidencial y compete 
exclusivamente al destinatario. Si Vd. ha recibido esta comunicación por error, 
por favor, notifíquelo inmediatamente al remitente y borre el mensaje junto con 
sus ficheros anexos sin leerlo, copiarlo, grabarlo, distribuirlo o divulgarlo o 
hacer cualquier otro uso de la información sin el consentimiento de Genebre 
S.A. El correo electrónico vía Internet no permite asegurar la confidencialidad 
o correcta recepción de los mensajes, por lo que Genebre no asume 
responsabilidad alguna por los daños causados. The information contained in 
this communication is confidential, may be privileged and is intended for the 
exclusive use of the above named addressee. If you receive this communication 
in error, please notify the sender immediately and delete it, and all its 
attached documents. If you are not the intended recipient, you are expressly 
prohibited f

RE: Biblioteca QSPL

2023-07-28 Thread Sergi Sitjes
Hola,

Diría que ahí es donde se guardan los spools, así que tendrás que limpiar cosas 
que estén por ahí obsoletas. Te propongo que hagas un wrkoutq *all y verás el 
número de ficheros de spool en cada cola, verás que con la opción 14 puedes 
limpiar a saco toda una cola.

Saludos,

[cid:image002.png@01D9C12A.1C24A0D0]
Sergi Sitjes
Director Sistemes d'Informació/CIO
GENEBRE GROUP
E-mail: se...@genebre.es<mailto:se...@genebre.es>
Web:   http://www.genebre.es<http://www.genebre.es/>
Tel:  +34 93 298 80 02

De: forum.help400  En nombre de SALVADOR 
SANCHEZ COSTA | INFORGES |
Enviado el: viernes, 28 de julio de 2023 8:02
Para: forum.help400 
Asunto: Biblioteca QSPL

CORREO EXTERNO: Atención: El remitente es externo a la organización. Vigile con 
los enlaces y ficheros adjuntos si no conoce al remitente.

Buenos días, ya que el foro sigue vivo, una duda…..Tengo una biblioteca del 
sistema QSPL que me ocupa 12Gb, que puedo hacer para que disminuya de 
espacio

[cid:image003.png@01D9C12A.1C24A0D0]

Gracias
AVISO SOBRE CONFIDENCIALIDAD:
Los datos personales que forman parte de este correo electrónico son tratados 
por Inforges IT Services, SL con la finalidad de mantenimiento de contactos. 
Los datos se han obtenido con su consentimiento o como consecuencia de una 
relación jurídica previa. Puede usted ejercitar los derechos de acceso, 
rectificación, cancelación y oposición así como obtener más información 
solicitándolo al remitente de este correo electrónico.

La información contenida en el presente mensaje de correo electrónico es 
confidencial y su acceso únicamente está autorizado al destinatario original 
del mismo, quedando prohibidos cualquier comunicación, divulgación, o reenvío, 
tanto del mensaje como de su contenido. Inforges IT Services, SL no puede 
asumir la responsabilidad derivada de que terceras personas puedan llegar a 
conocer el contenido del mensaje durante su transmisión. En el supuesto de que 
usted no sea el destinatario autorizado, le rogamos borre el contenido del 
mensaje y nos comunique dicha circunstancia a través de un mensaje de correo 
electrónico a la dirección infor...@inforges.es<mailto:infor...@inforges.es> o 
al teléfono 968 350 011.

La información que contiene este correo electrónico es confidencial y compete 
exclusivamente al destinatario. Si Vd. ha recibido esta comunicación por error, 
por favor, notifíquelo inmediatamente al remitente y borre el mensaje junto con 
sus ficheros anexos sin leerlo, copiarlo, grabarlo, distribuirlo o divulgarlo o 
hacer cualquier otro uso de la información sin el consentimiento de Genebre 
S.A. El correo electrónico vía Internet no permite asegurar la confidencialidad 
o correcta recepción de los mensajes, por lo que Genebre no asume 
responsabilidad alguna por los daños causados. The information contained in 
this communication is confidential, may be privileged and is intended for the 
exclusive use of the above named addressee. If you receive this communication 
in error, please notify the sender immediately and delete it, and all its 
attached documents. If you are not the intended recipient, you are expressly 
prohibited from reading, copying, distributing, disseminating or, in any other 
way, using any of the information without the Genebre S.A. consent. Please note 
that Internet e-mail guarantees neither the confidentiality nor the proper 
receipt of the message sent, so that Genebre shall not be liable for any 
damages caused.

Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd )
Forum.Help400 � Publicaciones Help400, S.L.

[tryton-commits] [Mercurial][tryton/tryton][branch/default] Include active field in quality control form

2023-07-26 Thread Sergi Almacellas Abellana (@pokoli)


Sergi Almacellas Abellana pushed to branch branch/default at Tryton / Tryton


Commits:
e4088b51 by Sergi Almacellas Abellana at 2023-07-20T13:42:44+02:00
Include active field in quality control form

Closes #12419
- - - - -


1 changed file:

- modules/quality/view/quality_control_form.xml


Changes:

=
modules/quality/view/quality_control_form.xml
=
@@ -3,7 +3,9 @@
 this repository contains the full copyright notices and license terms. -->
 
 
-
+
+
+
 
 
 



View it on Heptapod: 
https://foss.heptapod.net/tryton/tryton/-/commit/e4088b510e005518e66aa725efb86b77d1b5f30e

-- 
View it on Heptapod: 
https://foss.heptapod.net/tryton/tryton/-/commit/e4088b510e005518e66aa725efb86b77d1b5f30e
You're receiving this email because of your account on foss.heptapod.net.




[tryton-commits] [Mercurial][tryton/tryton][branch/default] Insert customer product before product links

2023-07-14 Thread Sergi Almacellas Abellana (@pokoli)


Sergi Almacellas Abellana pushed to branch branch/default at Tryton / Tryton


Commits:
fd357122 by Sergi Almacellas Abellana at 2023-07-13T14:27:27+02:00
Insert customer product before product links

Closes #12396
- - - - -


1 changed file:

- modules/sale_product_customer/view/template_form.xml


Changes:

=
modules/sale_product_customer/view/template_form.xml
=
@@ -2,7 +2,7 @@
 
 
-
+
 
 
 



View it on Heptapod: 
https://foss.heptapod.net/tryton/tryton/-/commit/fd357122c74cbea6eb0e0fd6773638f1fe266e00

-- 
View it on Heptapod: 
https://foss.heptapod.net/tryton/tryton/-/commit/fd357122c74cbea6eb0e0fd6773638f1fe266e00
You're receiving this email because of your account on foss.heptapod.net.




[tryton-commits] [Mercurial][tryton/tryton][branch/default] Correct call to super method for Shopify name

2023-06-30 Thread Sergi Almacellas Abellana (@pokoli)


Sergi Almacellas Abellana pushed to branch branch/default at Tryton / Tryton


Commits:
22c0ecec by Pedro Nuñez at 2023-06-30T09:17:02+02:00
Correct call to super method for Shopify name

The name of the property was changed on commit 905801635f45
but the call to super method was not updated to the new name.

Closes #12355
- - - - -


1 changed file:

- modules/web_shop_shopify/product.py


Changes:

=
modules/web_shop_shopify/product.py
=
@@ -612,7 +612,7 @@
 
 @property
 def shopify_name(self):
-name = super().shopify_filename
+name = super().shopify_name
 if self.product:
 attributes_name = self.product.attributes_name
 else:



View it on Heptapod: 
https://foss.heptapod.net/tryton/tryton/-/commit/22c0ececae8817f6b91bed9b13e0e1ac60a3ca1d

-- 
View it on Heptapod: 
https://foss.heptapod.net/tryton/tryton/-/commit/22c0ececae8817f6b91bed9b13e0e1ac60a3ca1d
You're receiving this email because of your account on foss.heptapod.net.




[tryton-commits] [Mercurial][tryton/tryton][branch/default] Allow modification of invoice references when report is not cached

2023-06-23 Thread Sergi Almacellas Abellana (@pokoli)


Sergi Almacellas Abellana pushed to branch branch/default at Tryton / Tryton


Commits:
4955ce2c by Sergi Almacellas Abellana at 2023-06-22T16:11:33+00:00
Allow modification of invoice references when report is not cached
- - - - -


3 changed files:

- modules/account_invoice/CHANGELOG
- modules/account_invoice/invoice.py
- modules/account_invoice/tests/scenario_invoice.rst


Changes:

=
modules/account_invoice/CHANGELOG
=
@@ -1,3 +1,4 @@
+* Allow modification of invoice references when report is not cached
 * Add cache on invoice's amounts
 
 Version 6.8.0 - 2023-05-01


=
modules/account_invoice/invoice.py
=
@@ -80,7 +80,11 @@
 })
 type_name = fields.Function(fields.Char('Type'), 'get_type_name')
 number = fields.Char("Number", readonly=True)
-reference = fields.Char('Reference', size=None, states=_states)
+reference = fields.Char(
+"Reference",
+states={
+'readonly': Eval('has_report_cache', False),
+})
 description = fields.Char('Description', size=None, states=_states)
 state = fields.Selection([
 ('draft', "Draft"),
@@ -290,6 +294,8 @@
 fields.Boolean("Allow Cancel Invoice"), 'get_allow_cancel')
 has_payment_method = fields.Function(
 fields.Boolean("Has Payment Method"), 'get_has_payment_method')
+has_report_cache = fields.Function(
+fields.Boolean("Has Report Cached"), 'get_has_report_cache')
 
 del _states
 
@@ -329,7 +335,7 @@
 'move', 'cancel_move', 'additional_moves',
 'invoice_report_cache', 'invoice_report_format',
 'total_amount_cache', 'tax_amount_cache', 'untaxed_amount_cache',
-'lines'}
+'lines', 'reference'}
 cls._order = [
 ('number', 'DESC NULLS FIRST'),
 ('id', 'DESC'),
@@ -932,6 +938,22 @@
 methods.update(dict.fromkeys(sub_invoice_ids, value))
 return methods
 
+@classmethod
+def get_has_report_cache(cls, invoices, name):
+table = cls.__table__()
+cursor = Transaction().connection.cursor()
+
+result = {}
+has_cache = (
+(table.invoice_report_cache_id != Null)
+| (table.invoice_report_cache != Null))
+for sub_invoices in grouped_slice(invoices):
+sub_ids = map(int, sub_invoices)
+cursor.execute(*table.select(table.id, has_cache,
+where=reduce_ids(table.id, sub_ids)))
+result.update(cursor)
+return result
+
 @property
 def taxable_lines(self):
 taxable_lines = []


=
modules/account_invoice/tests/scenario_invoice.rst
=
@@ -156,6 +156,8 @@
 >>> invoice.total_amount
 Decimal('240.00')
 >>> invoice.save()
+>>> bool(invoice.has_report_cache)
+False
 
 Test change tax::
 
@@ -173,6 +175,8 @@
 'posted'
 >>> invoice.tax_identifier.code
 'BE0897290877'
+>>> bool(invoice.has_report_cache)
+True
 >>> invoice.untaxed_amount
 Decimal('220.00')
 >>> invoice.tax_amount



View it on Heptapod: 
https://foss.heptapod.net/tryton/tryton/-/commit/4955ce2c71407d3e6dd4207c2d1f9130b4dd0b9b

-- 
View it on Heptapod: 
https://foss.heptapod.net/tryton/tryton/-/commit/4955ce2c71407d3e6dd4207c2d1f9130b4dd0b9b
You're receiving this email because of your account on foss.heptapod.net.




[MARMAM] New publication: Predictive model of sperm whale prey capture attempts from time-depth data

2023-06-20 Thread Sergi Pérez Jorge
Dear colleagues,

My co-authors and I are pleased to announce our new publication:

Pérez-Jorge, S., Oliveira, C., Rivas, E.I., Prieto, R., Cascão, I.,
Wensveen, P.J., Miller, P.J.O., Silva, M. *Predictive model of sperm whale
prey capture attempts from time-depth data*. *Movement Ecology* 11, 33
(2023).

It can be freely downloaded here:
https://movementecologyjournal.biomedcentral.com/articles/10.1186/s40462-023-00393-2

*Abstract:*
*Background:* High-resolution sound and movement recording tags offer
unprecedented insights into the fine-scale
foraging behaviour of cetaceans, especially echolocating odontocetes,
enabling the estimation of a series of foraging
metrics. However, these tags are expensive, making them inaccessible to
most researchers. Time-Depth Recorders
(TDRs), which have been widely used to study diving and foraging behaviour
of marine mammals, offer a more
affordable alternative. Unfortunately, data collected by TDRs are
bi-dimensional (time and depth only), so quantifying
foraging effort from those data is challenging.
*Methods:* A predictive model of the foraging effort of sperm whales
(Physeter macrocephalus) was developed to
identify prey capture attempts (PCAs) from time-depth data. Data from
high-resolution acoustic and movement
recording tags deployed on 12 sperm whales were downsampled to 1 Hz to
match the typical TDR sampling
resolution and used to predict the number of buzzes (i.e., rapid series of
echolocation clicks indicative of PCAs).
Generalized linear mixed models were built for dive segments of different
durations (30, 60, 180 and 300 s) using
multiple dive metrics as potential predictors of PCAs.
*Results:* Average depth, variance of depth and variance of vertical
velocity were the best predictors of the number of
buzzes. Sensitivity analysis showed that models with segments of 180 s had
the best overall predictive performance,
with a good area under the curve value (0.78 ± 0.05), high sensitivity
(0.93 ± 0.06) and high specificity (0.64 ± 0.14).
Models using 180 s segments had a small difference between observed and
predicted number of buzzes per dive,
with a median of 4 buzzes, representing a difference in predicted buzzes of
30%.
*Conclusions: *These results demonstrate that it is possible to obtain a
fine-scale, accurate index of sperm whale PCAs
from time-depth data alone. This work helps leveraging the potential of
time-depth data for studying the foraging
ecology of sperm whales and the possibility of applying this approach to a
wide range of echolocating cetaceans. The
development of accurate foraging indices from low-cost, easily accessible
TDR data would contribute to democratize
this type of research, promote long-term studies of various species in
several locations, and enable analyses of
historical datasets to investigate changes in cetacean foraging activity.

Please do contact me if you have any questions.

Thank you very much,
Sergi

--

Sergi Pérez-Jorge, PhD

Institute of Marine Research - IMAR

Institute of Marine Sciences - Okeanos

University of the Azores

Rua Prof Dr Frederico Machado 4

9901-862 Horta, Azores, Portugal



Tel. +351 292200400

Skype: sergi_perez, Twitter: @sergiperezjorge
<https://twitter.com/sergiperezjorge?lang=ca>

Azores Whale Lab - Cetacean Ecology Group

http://whales.scienceontheweb.net
___
MARMAM mailing list
MARMAM@lists.uvic.ca
https://lists.uvic.ca/mailman/listinfo/marmam


[tryton-commits] [Mercurial][tryton/tryton][branch/default] Set date on purchase price context

2023-06-09 Thread Sergi Almacellas Abellana (@pokoli)


Sergi Almacellas Abellana pushed to branch branch/default at Tryton / Tryton


Commits:
1caaaf9f by Sergi Almacellas Abellana at 2023-06-07T09:58:57+02:00
Set date on purchase price context

Closes #12309
- - - - -


4 changed files:

- modules/product_price_list_dates/__init__.py
- + modules/product_price_list_dates/purchase.py
- modules/product_price_list_dates/setup.py
- modules/product_price_list_dates/tests/test_module.py


Changes:

=
modules/product_price_list_dates/__init__.py
=
@@ -3,7 +3,7 @@
 
 from trytond.pool import Pool
 
-from . import product, sale
+from . import product, purchase, sale
 
 __all__ = ['register']
 
@@ -19,3 +19,7 @@
 product.SaleContext,
 module='product_price_list_dates', type_='model',
 depends=['sale_price_list'])
+Pool.register(
+purchase.Line,
+module='product_price_list_dates', type_='model',
+depends=['purchase_price_list'])


=
modules/product_price_list_dates/purchase.py
=
@@ -0,0 +1,22 @@
+# This file is part of Tryton.  The COPYRIGHT file at the top level of
+# this repository contains the full copyright notices and license terms.
+from trytond.model import fields
+from trytond.pool import PoolMeta
+from trytond.pyson import Eval
+
+
+class Line(metaclass=PoolMeta):
+__name__ = 'purchase.line'
+
+@classmethod
+def __setup__(cls):
+super().__setup__()
+cls.product.search_context['date'] = Eval(
+'_parent_purchase', {}).get('purchase_date')
+
+@fields.depends('purchase', '_parent_purchase.purchase_date')
+def _get_context_purchase_price(self):
+context = super()._get_context_purchase_price()
+if self.purchase:
+context.setdefault('date', self.purchase.purchase_date)
+return context


=
modules/product_price_list_dates/setup.py
=
@@ -47,7 +47,10 @@
 requires.append(get_require_version('trytond_%s' % dep))
 requires.append(get_require_version('trytond'))
 
-tests_require = [get_require_version('trytond_sale_price_list')]
+tests_require = [
+get_require_version('trytond_purchase_price_list'),
+get_require_version('trytond_sale_price_list'),
+]
 
 setup(name=name,
 version=version,


=
modules/product_price_list_dates/tests/test_module.py
=
@@ -14,7 +14,7 @@
 class ProductPriceListDatesTestCase(CompanyTestMixin, ModuleTestCase):
 'Test Product Price List Dates module'
 module = 'product_price_list_dates'
-extras = ['sale_price_list']
+extras = ['sale_price_list', 'purchase_price_list']
 
 def create_price_list(self, field, date):
 pool = Pool()



View it on Heptapod: 
https://foss.heptapod.net/tryton/tryton/-/commit/1caaaf9ff7265024f7e3c80298e556fccd9775fa

-- 
View it on Heptapod: 
https://foss.heptapod.net/tryton/tryton/-/commit/1caaaf9ff7265024f7e3c80298e556fccd9775fa
You're receiving this email because of your account on foss.heptapod.net.




[tryton-commits] [Mercurial][tryton/tryton][branch/default] 3 commits: Fix typo in sale supply register method

2023-06-05 Thread Sergi Almacellas Abellana (@pokoli)


Sergi Almacellas Abellana pushed to branch branch/default at Tryton / Tryton


Commits:
081dcfb3 by Sergi Almacellas Abellana at 2023-05-05T09:58:39+02:00
Fix typo in sale supply register method

Closes #12255
- - - - -
5010033b by Cédric Krier at 2023-06-02T18:26:46+02:00
Do not migrate supply on sale column if it does not exist
- - - - -
7f1f0d91 by Sergi Almacellas Abellana at 2023-06-02T18:59:32+02:00
Migrate supply_on_sale in history table if activated

Closes #12255
- - - - -


1 changed file:

- modules/sale_supply/product.py


Changes:

=
modules/sale_supply/product.py
=
@@ -23,8 +23,8 @@
 })
 
 @classmethod
-def __resgister__(cls, module):
+def __register__(cls, module):
 table_h = cls.__table_handler__(module)
 table = cls.__table__()
 cursor = Transaction().connection.cursor()
 
@@ -27,8 +27,9 @@
 table_h = cls.__table_handler__(module)
 table = cls.__table__()
 cursor = Transaction().connection.cursor()
 
-migrate_supply_on_sale = table_h.column_is_type(
-'supply_on_sale', 'BOOL')
+migrate_supply_on_sale = (
+table_h.column_exist('supply_on_sale')
+and table_h.column_is_type('supply_on_sale', 'BOOL'))
 if migrate_supply_on_sale:
 table_h.column_rename('supply_on_sale', '_temp_supply_on_sale')
@@ -33,5 +34,14 @@
 if migrate_supply_on_sale:
 table_h.column_rename('supply_on_sale', '_temp_supply_on_sale')
+if cls._history:
+h_table_h = cls.__table_handler__(module, history=True)
+h_table = cls.__table__()
+h_migrate_supply_on_sale = (
+h_table_h.column_exist('supply_on_sale')
+and h_table_h.column_is_type('supply_on_sale', 'BOOL'))
+if h_migrate_supply_on_sale:
+h_table_h.column_rename(
+'supply_on_sale', '_temp_supply_on_sale')
 
 super().__register__(module)
 
@@ -42,6 +52,12 @@
 ['always'],
 where=table._temp_supply_on_sale == Literal(True)))
 table_h.drop_column('_temp_supply_on_sale')
+if cls._history and h_migrate_supply_on_sale:
+cursor.execute(*h_table.update(
+[h_table.supply_on_sale],
+['always'],
+where=h_table._temp_supply_on_sale == Literal(True)))
+h_table_h.drop_column('_temp_supply_on_sale')
 
 @fields.depends(methods=['_notify_order_point'])
 def on_change_notify(self):



View it on Heptapod: 
https://foss.heptapod.net/tryton/tryton/-/compare/545eb9851a81e00d311e0191742919e339905452...7f1f0d918bef55c05b53d83df9edfb9cebbaf1c4

-- 
View it on Heptapod: 
https://foss.heptapod.net/tryton/tryton/-/compare/545eb9851a81e00d311e0191742919e339905452...7f1f0d918bef55c05b53d83df9edfb9cebbaf1c4
You're receiving this email because of your account on foss.heptapod.net.




[tryton-commits] [Mercurial][tryton/tryton][branch/default] Do not test quantity for lines of type different than line

2023-06-01 Thread Sergi Almacellas Abellana (@pokoli)


Sergi Almacellas Abellana pushed to branch branch/default at Tryton / Tryton


Commits:
57e7226a by Sergi Almacellas Abellana at 2023-05-16T09:35:15+02:00
Do not test quantity for lines of type different than line

Closes #12274
- - - - -


3 changed files:

- modules/account_rule/purchase.py
- modules/account_rule/sale.py
- modules/account_rule/tests/scenario_account_rule.rst


Changes:

=
modules/account_rule/purchase.py
=
@@ -10,5 +10,5 @@
 def get_invoice_line(self):
 with Transaction().set_context(
 taxes=[t.id for t in self.taxes],
-return_=self.quantity < 0):
+return_=self.type == 'line' and self.quantity < 0):
 return super().get_invoice_line()


=
modules/account_rule/sale.py
=
@@ -10,5 +10,5 @@
 def get_invoice_line(self):
 with Transaction().set_context(
 taxes=[t.id for t in self.taxes],
-return_=self.quantity < 0):
+return_=self.type == 'line' and self.quantity < 0):
 return super().get_invoice_line()


=
modules/account_rule/tests/scenario_account_rule.rst
=
@@ -95,6 +95,9 @@
 >>> line = sale.lines.new()
 >>> line.product = product
 >>> line.quantity = -1
+>>> line = sale.lines.new()
+>>> line.type = 'comment'
+>>> line.description = 'Sample'
 >>> sale.click('quote')
 >>> sale.click('confirm')
 >>> sale.state



View it on Heptapod: 
https://foss.heptapod.net/tryton/tryton/-/commit/57e7226a2a3a0f2af00e3c31a36106a45b2c2512

-- 
View it on Heptapod: 
https://foss.heptapod.net/tryton/tryton/-/commit/57e7226a2a3a0f2af00e3c31a36106a45b2c2512
You're receiving this email because of your account on foss.heptapod.net.




[tryton-commits] [Mercurial][tryton/tryton][branch/default] Fix typo in search field when deactivating sale point's tax included

2023-05-26 Thread Sergi Almacellas Abellana (@pokoli)


Sergi Almacellas Abellana pushed to branch branch/default at Tryton / Tryton


Commits:
7ab82689 by Hodei Navarro at 2023-05-25T09:06:04+02:00
Fix typo in search field when deactivating sale points tax included

Closes #12286
- - - - -


1 changed file:

- modules/sale_point/sale.py


Changes:

=
modules/sale_point/sale.py
=
@@ -81,7 +81,7 @@
 if 'tax_included' in values:
 for sub_points in grouped_slice(points):
 if Sale.search([
-('points', 'in',
+('point', 'in',
 list(map(int, sub_points))),
 ],
 limit=1, order=[]):



View it on Heptapod: 
https://foss.heptapod.net/tryton/tryton/-/commit/7ab82689c4a93e3da8e14f0bd94f0daa197732bf

-- 
View it on Heptapod: 
https://foss.heptapod.net/tryton/tryton/-/commit/7ab82689c4a93e3da8e14f0bd94f0daa197732bf
You're receiving this email because of your account on foss.heptapod.net.




[tryton-commits] [Mercurial][tryton/tryton][branch/default] Manage empty stock end date values on location quantities

2023-05-26 Thread Sergi Almacellas Abellana (@pokoli)


Sergi Almacellas Abellana pushed to branch branch/default at Tryton / Tryton


Commits:
7909707c by Sergi Almacellas Abellana at 2023-05-25T15:55:40+02:00
Manage empty stock end date values on location quantities

Closes #12289
- - - - -


1 changed file:

- modules/stock/location.py


Changes:

=
modules/stock/location.py
=
@@ -406,7 +406,7 @@
 
 context = {}
 if (name == 'quantity'
-and (trans_context.get('stock_date_end', datetime.date.max)
+and ((trans_context.get('stock_date_end') or datetime.date.max)
 > Date_.today())):
 context['stock_date_end'] = Date_.today()
 
@@ -494,7 +494,7 @@
 return Template(trans_context['product_template'])
 
 context = {}
-if 'stock_date_end' in trans_context:
+if trans_context.get('stock_date_end') is not None:
 # Use the last cost_price of the day
 context['_datetime'] = datetime.datetime.combine(
 trans_context['stock_date_end'], datetime.time.max)



View it on Heptapod: 
https://foss.heptapod.net/tryton/tryton/-/commit/7909707c00f7eaf784ff64243b38b007532655d0

-- 
View it on Heptapod: 
https://foss.heptapod.net/tryton/tryton/-/commit/7909707c00f7eaf784ff64243b38b007532655d0
You're receiving this email because of your account on foss.heptapod.net.




[tryton-commits] [Mercurial][tryton/tryton][branch/default] Update SII wsdl location

2023-05-23 Thread Sergi Almacellas Abellana (@pokoli)


Sergi Almacellas Abellana pushed to branch branch/default at Tryton / Tryton


Commits:
c417ed47 by Sergi Almacellas Abellana at 2023-05-17T11:26:13+02:00
Update SII wsdl location

Closes #12276
- - - - -


2 changed files:

- modules/account_es_sii/account.py
- modules/account_es_sii/tests/test_module.py


Changes:

=
modules/account_es_sii/account.py
=
@@ -34,8 +34,8 @@
 # XXX: URLs for basque country and navarra should be added
 ]
 WS_URL = {
-'aeat': ('https://www2.agenciatributaria.gob.es/static_files/'
-'common/internet/dep/aplicaciones/es/aeat/ssii_1_1/fact/ws/'),
+'aeat': ('https://www2.agenciatributaria.gob.es/static_files/common/'
+'internet/dep/aplicaciones/es/aeat/ssii_1_1_bis/fact/ws/'),
 'guipuzkoa': (
 'https://egoitza.gipuzkoa.eus/ogasuna/sii/ficheros/v1.1/'),
 }


=
modules/account_es_sii/tests/test_module.py
=
@@ -4,6 +4,7 @@
 from decimal import Decimal
 
 from trytond.modules.account.tests import create_chart, get_fiscalyear
+from trytond.modules.account_es_sii.account import SII_URL
 from trytond.modules.account_invoice.tests import set_invoice_sequences
 from trytond.modules.company.tests import create_company, set_company
 from trytond.modules.currency.tests import add_currency_rate, create_currency
@@ -527,5 +528,25 @@
 
 self.assertEqual(sii_invoice, [])
 
+@with_transaction()
+def test_get_client(self):
+"Test client can be initialized for all environments"
+pool = Pool()
+Config = pool.get('account.configuration')
+Credential = pool.get('account.credential.sii')
+
+company = create_company()
+with set_company(company):
+config = Config(1)
+for key, _ in SII_URL:
+if not key:
+continue
+for environment in ['staging', 'production']:
+config.es_sii_url = key
+config.es_sii_environment = environment
+config.save()
+client = Credential.get_client('SuministroFactEmitidas')
+self.assertTrue(client)
+
 
 del ModuleTestCase



View it on Heptapod: 
https://foss.heptapod.net/tryton/tryton/-/commit/c417ed476b4349adb06081fe8d8f2270ba05875b

-- 
View it on Heptapod: 
https://foss.heptapod.net/tryton/tryton/-/commit/c417ed476b4349adb06081fe8d8f2270ba05875b
You're receiving this email because of your account on foss.heptapod.net.




[tryton-commits] [Mercurial][tryton/website][branch/default] Add tryton for personal communities talk

2023-05-15 Thread Sergi Almacellas Abellana (@pokoli)


Sergi Almacellas Abellana pushed to branch branch/default at Tryton / Website


Commits:
0b1f286e by Sergi Almacellas Abellana at 2023-05-12T18:29:18+02:00
Add tryton for personal communities talk
- - - - -


1 changed file:

- templates/events/tub2023.html


Changes:

=
templates/events/tub2023.html
=
@@ -39,10 +39,12 @@
 "It reduced accounting costs from 1200€ to less than 100€. "
 "Side effects are a full-featured inventory management system and 
the creation of \"Das Tryton-Buch\".",
 [("Wolf Drechsel", '7e18dec426ad0080cef3a34c5e4c23b6', 
"KomponentenKontor Berlin GmbH", 'https://rollentausch.eu/')]),
-("New index declaration", (11, ), (11, 30),
-"The implementation process of the new index system, the reasons 
for the change, "
-"the choices that have been made and a presentation of the result",
-[("Nicolas Évrard", '9f3e84dcf01f24de39a02268e00a89ed', "B2CK", 
'https://www.b2ck.com/')]),
+("Tryton for professional communities", (10, 30), (11, ),
+"We relate a 2 year effort to package Tryton based solutions as 
products for groups of professionals. "
+"Will explain how we designed the product. "
+"Also will talk about sass provisionning and pre-configured data 
for users and service professionals. "
+"We will share our experiences on community adoption of the 
product.",
+[("Dominique Chabord", '5bcff256b1bbeef145a9babebc7d3b04', 
"SISalp", 'https://sisalp.fr/'), ("Jean-Martial NDOUTOUME NFENGONE", 
'c474b0ae58151d314c18e2ee0e49beaa', "Versatil", '#')]),
 ("Demo of tooling to create tutorial videos", (11, 30), (11, 45),
 "",
 [("Hartmut Goebel", 'a12beb8d8d1e540be1a40ec70fa325c3', 'Crazy 
Compilers', 'http://www.crazy-compilers.com/')]),
@@ -60,9 +62,13 @@
 "which allows the automatic planning of production works "
 "based on employees skills, machine capacities and customer 
demand.",
 [("Adrià Tarroja Caubet", 'f80ff70a062f85f5fbf78b7eb77f6fc8', 
"KOPEN", 'https://www.kopen.es/')]),
-("GNU Health loves Tryton", (15, ), (15, 30),
+("New index declaration", (15, ), (15, 30),
+"The implementation process of the new index system, the reasons 
for the change, "
+"the choices that have been made and a presentation of the result",
+[("Nicolas Évrard", '9f3e84dcf01f24de39a02268e00a89ed', "B2CK", 
'https://www.b2ck.com/')]),
+("GNU Health loves Tryton", (15, 30), (16, ),
 "The GNUHealth project uses Tryton for the Hospital and Lab 
Management System component. "
 "We'll talk about the past, present and future of the GNU Health 
and Tryton relationship, "
 "and how collaboration between the two communities is benefiting 
open science, health professionals, "
 "hospitals and research institutions, improving the lives of 
millions around the world.",
 [("Luis Falcon", '90fe9fb9f620de54c52bf9efd4bdfc2f', "GNU Health", 
'https://www.gnuhealth.org/')]),
@@ -64,11 +70,11 @@
 "The GNUHealth project uses Tryton for the Hospital and Lab 
Management System component. "
 "We'll talk about the past, present and future of the GNU Health 
and Tryton relationship, "
 "and how collaboration between the two communities is benefiting 
open science, health professionals, "
 "hospitals and research institutions, improving the lives of 
millions around the world.",
 [("Luis Falcon", '90fe9fb9f620de54c52bf9efd4bdfc2f', "GNU Health", 
'https://www.gnuhealth.org/')]),
-("How to make seamless ERP migrations with Tryton", (15, 30), (16, ),
+("How to make seamless ERP migrations with Tryton", (16, ), (16, 30),
 "Data is the lifeblood of ERP systems. "
 "Accurately transferring it is essential when upgrading to Tryton. 
"
 "Dive into diverse techniques for importing data, ensuring a 
smooth transition for your business. "
 "Join us for valuable tips and tricks, and empower yourself with 
the knowledge for seamless migrations.",
 [("Adrià Tarroja Caubet", 'f80ff70a062f85f5fbf78b7eb77f6fc8', 
"KOPEN", 'https://www.kopen.es/')]),
@@ -70,9 +76,9 @@
 "Data is the lif

[tryton-commits] [Mercurial][tryton/tryton][branch/default] Use plural form on messages action name

2023-05-12 Thread Sergi Almacellas Abellana (@pokoli)


Sergi Almacellas Abellana pushed to branch branch/default at Tryton / Tryton


Commits:
80d8b04f by Sergi Almacellas Abellana at 2023-05-12T09:23:30+02:00
Use plural form on messages action name
- - - - -


1 changed file:

- trytond/trytond/ir/message.xml


Changes:

=
trytond/trytond/ir/message.xml
=
@@ -14,7 +14,7 @@
 message_form
 
 
-Message
+Messages
 ir.message
 
 



View it on Heptapod: 
https://foss.heptapod.net/tryton/tryton/-/commit/80d8b04fa6d6f29323ad04d01f9a5081d75e947f

-- 
View it on Heptapod: 
https://foss.heptapod.net/tryton/tryton/-/commit/80d8b04fa6d6f29323ad04d01f9a5081d75e947f
You're receiving this email because of your account on foss.heptapod.net.




[tryton-commits] [Mercurial][tryton/tryton][branch/default] Add missing bank account on process sepa without bank error message

2023-05-02 Thread Sergi Almacellas Abellana (@pokoli)


Sergi Almacellas Abellana pushed to branch branch/default at Tryton / Tryton


Commits:
b2e5a61d by Sergi Almacellas Abellana at 2023-05-02T16:52:28+02:00
Add missing bank account on process sepa without bank error message

Closes #12249
- - - - -


1 changed file:

- modules/account_payment_sepa/payment.py


Changes:

=
modules/account_payment_sepa/payment.py
=
@@ -235,6 +235,7 @@
 '.msg_payment_process_no_iban',
 payment=payment.rec_name))
 if not payment.sepa_bank_account_number.account.bank:
+bank_account = payment.sepa_bank_account_number.account
 raise ProcessError(
 gettext('account_payment_sepa'
 '.msg_payment_process_no_bank',
@@ -238,7 +239,8 @@
 raise ProcessError(
 gettext('account_payment_sepa'
 '.msg_payment_process_no_bank',
-payment=payment.rec_name))
+payment=payment.rec_name,
+bank_account=bank_account.rec_name))
 to_write = []
 for key, payments in self.sepa_payments:
 to_write.append(payments)



View it on Heptapod: 
https://foss.heptapod.net/tryton/tryton/-/commit/b2e5a61dfc3d6dd08cdc9d49b8680421c5f34f3e

-- 
View it on Heptapod: 
https://foss.heptapod.net/tryton/tryton/-/commit/b2e5a61dfc3d6dd08cdc9d49b8680421c5f34f3e
You're receiving this email because of your account on foss.heptapod.net.




[tryton-commits] [Mercurial][tryton/website][branch/default] Add TUB 2023 migrating data talk

2023-05-02 Thread Sergi Almacellas Abellana (@pokoli)


Sergi Almacellas Abellana pushed to branch branch/default at Tryton / Website


Commits:
5b48df36 by Sergi Almacellas Abellana at 2023-04-26T12:35:56+00:00
Add TUB 2023 migrating data talk
- - - - -


1 changed file:

- templates/events/tub2023.html


Changes:

=
templates/events/tub2023.html
=
@@ -66,6 +66,12 @@
 "and how collaboration between the two communities is benefiting 
open science, health professionals, "
 "hospitals and research institutions, improving the lives of 
millions around the world.",
 [("Luis Falcon", '90fe9fb9f620de54c52bf9efd4bdfc2f', "GNU Health", 
'https://www.gnuhealth.org/')]),
+("How to make seamless ERP migrations with Tryton", (15, 30), (16, ),
+"Data is the lifeblood of ERP systems. "
+"Accurately transferring it is essential when upgrading to Tryton. 
"
+"Dive into diverse techniques for importing data, ensuring a 
smooth transition for your business. "
+"Join us for valuable tips and tricks, and empower yourself with 
the knowledge for seamless migrations.",
+[("Adrià Tarroja Caubet", 'f80ff70a062f85f5fbf78b7eb77f6fc8', 
"KOPEN", 'https://www.kopen.es/')]),
 ("Hackathon", (10,), (18,)),
 location=location1(), full=False),
 Day((2023, 5, 23),



View it on Heptapod: 
https://foss.heptapod.net/tryton/website/-/commit/5b48df36152e3bfe38435afcfa955187024bf042

-- 
View it on Heptapod: 
https://foss.heptapod.net/tryton/website/-/commit/5b48df36152e3bfe38435afcfa955187024bf042
You're receiving this email because of your account on foss.heptapod.net.




[tryton-commits] [Mercurial][tryton/website][branch/default] Add TUB2023 talk

2023-04-25 Thread Sergi Almacellas Abellana (@pokoli)


Sergi Almacellas Abellana pushed to branch branch/default at Tryton / Website


Commits:
526a95ba by Sergi Almacellas Abellana at 2023-04-21T16:02:55+02:00
Add TUB2023 talk
- - - - -


1 changed file:

- templates/events/tub2023.html


Changes:

=
templates/events/tub2023.html
=
@@ -34,7 +34,12 @@
 "We will learn what is Tryton and what is used for. "
 "They key concepts to improve the day by day of your company will 
be shown.",
 [("Sergi Almacellas Abellana", '71c441aa930202e038d23412a0bfc455', 
"KOPEN", 'https://www.kopen.es/')]),
-("New index declaration", (10, 30), (11, ),
+("Tryton Use Case: A small trade and service enterprise", (10, 30), 
(11, ),
+"We show a very slimline and simple implementation in a one person 
company. "
+"It reduced accounting costs from 1200€ to less than 100€. "
+"Side effects are a full-featured inventory management system and 
the creation of \"Das Tryton-Buch\".",
+[("Wolf Drechsel", '7e18dec426ad0080cef3a34c5e4c23b6', 
"KomponentenKontor Berlin GmbH", 'https://rollentausch.eu/')]),
+("New index declaration", (11, ), (11, 30),
 "The implementation process of the new index system, the reasons 
for the change, "
 "the choices that have been made and a presentation of the result",
 [("Nicolas Évrard", '9f3e84dcf01f24de39a02268e00a89ed', "B2CK", 
'https://www.b2ck.com/')]),
@@ -38,6 +43,6 @@
 "The implementation process of the new index system, the reasons 
for the change, "
 "the choices that have been made and a presentation of the result",
 [("Nicolas Évrard", '9f3e84dcf01f24de39a02268e00a89ed', "B2CK", 
'https://www.b2ck.com/')]),
-("Demo of tooling to create tutorial videos", (11,), (11, 15),
+("Demo of tooling to create tutorial videos", (11, 30), (11, 45),
 "",
 [("Hartmut Goebel", 'a12beb8d8d1e540be1a40ec70fa325c3', 'Crazy 
Compilers', 'http://www.crazy-compilers.com/')]),
@@ -42,10 +47,7 @@
 "",
 [("Hartmut Goebel", 'a12beb8d8d1e540be1a40ec70fa325c3', 'Crazy 
Compilers', 'http://www.crazy-compilers.com/')]),
-("Sample databases in multiple languages", (11, 15), (11, 45),
-"Discussion on how to be used in videos",
-[("Hartmut Goebel", 'a12beb8d8d1e540be1a40ec70fa325c3', 'Crazy 
Compilers', 'http://www.crazy-compilers.com/')]),
 ("Doing business intelligence in Tryton databases", (11, 45), (12, 15),
 "We will explain which tools we use for analyzing data stored in 
Tryton. "
 "We will do a demo showing some charts, dashboards but also KPIs 
and alerts. "
 "A technical explanation on how you can do it by yourself will be 
shown at the end.",
 [("Sergi Almacellas Abellana", '71c441aa930202e038d23412a0bfc455', 
"KOPEN", 'https://www.kopen.es/')]),
@@ -47,10 +49,14 @@
 ("Doing business intelligence in Tryton databases", (11, 45), (12, 15),
 "We will explain which tools we use for analyzing data stored in 
Tryton. "
 "We will do a demo showing some charts, dashboards but also KPIs 
and alerts. "
 "A technical explanation on how you can do it by yourself will be 
shown at the end.",
 [("Sergi Almacellas Abellana", '71c441aa930202e038d23412a0bfc455', 
"KOPEN", 'https://www.kopen.es/')]),
-("Production Planning with frePPle and Tryton", (14,), (14, 30),
+("Sample databases in multiple languages", (12, 15), (12, 45),
+"Discussion on how to be used in videos",
+[("Hartmut Goebel", 'a12beb8d8d1e540be1a40ec70fa325c3', 'Crazy 
Compilers', 'http://www.crazy-compilers.com/')]),
+("Lunch Break", (13, ), (14, 30), ""),
+("Production Planning with frePPle and Tryton", (14, 30), (15, ),
 "Showcase of the integration we did between Tryton and frePPle "
 "which allows the automatic planning of production works "
 "based on employees skills, machine capacities and customer 
demand.",
 [("Adrià Tarroja Caubet", 'f80ff70a062f85f5fbf78b7eb77f6fc8', 
"KOPEN", 'https://www.kopen.es/')]),
@@ -53,8 +59,8 @@
 "Showcase of the integration we did between Tryton and frePPle "
  

[tryton-commits] [Mercurial][tryton/tryton][branch/default] Use company certificate link on Spanish SII documenation

2023-04-24 Thread Sergi Almacellas Abellana (@pokoli)


Sergi Almacellas Abellana pushed to branch branch/default at Tryton / Tryton


Commits:
bc5deee7 by Sergi Almacellas Abellana at 2023-04-18T09:30:32+02:00
Use company certificate link on Spanish SII documenation

Closes #12197
- - - - -


1 changed file:

- modules/account_es_sii/doc/configuration.rst


Changes:

=
modules/account_es_sii/doc/configuration.rst
=
@@ -18,7 +18,7 @@
 ---
 
 Both values should be extracted from the p12 certificate issued by the
-`FNMT <https://www.sede.fnmt.gob.es/certificados/persona-fisica>`_.
+`FNMT 
<https://www.sede.fnmt.gob.es/certificados/certificado-de-representante>`_.
 The certificate should be related to the company presenting the information
 or an authorized party.
 



View it on Heptapod: 
https://foss.heptapod.net/tryton/tryton/-/commit/bc5deee74d7f8ddebc727709eaba9758ebbaecab

-- 
View it on Heptapod: 
https://foss.heptapod.net/tryton/tryton/-/commit/bc5deee74d7f8ddebc727709eaba9758ebbaecab
You're receiving this email because of your account on foss.heptapod.net.




Google Ads API - Get customer campaigns reporting data - server to server on daily base

2023-04-18 Thread Sergi Sergiev
Dear community,
We are new to google ads API and looking for help. We are data scientists 
and not big gigs in developing some fancy applications and also these 
authorisations steps confuse us. 
So our task is to get access to our customers google ads campaign 
performance data and wondering how to do it. 
Should we use service account which we implement for GA and Google Ad 
Manager or something else with refresh token. We need the fastest and 
easiest way to do it. There is a service that is run once per day and get 
data from the server without someone granting access, so I assume refresh 
token is not an option. If the customer can add email somewhere and grant 
us respective access should be perfect.
Please advise us how to approach this and share some guidence or links.

PS for service accounts we didn't get it where the email needs to be added. 
Is it at google ads -> Access and security or somewhere else. 
Thanks
Sergi 

-- 
-- 
=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~
Also find us on our blog:
https://googleadsdeveloper.blogspot.com/
=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~

You received this message because you are subscribed to the Google
Groups "AdWords API and Google Ads API Forum" group.
To post to this group, send email to adwords-api@googlegroups.com
To unsubscribe from this group, send email to
adwords-api+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/adwords-api?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Google Ads API and AdWords API Forum" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to adwords-api+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/adwords-api/cbd586f0-0eee-4a7c-81ef-3b422568ad19n%40googlegroups.com.


[tryton-commits] [Mercurial][tryton/website][branch/default] 2 commits: Add TUB2023 live streaming

2023-04-17 Thread Sergi Almacellas Abellana (@pokoli)


Sergi Almacellas Abellana pushed to branch branch/default at Tryton / Website


Commits:
bb6fc60d by Sergi Almacellas Abellana at 2023-04-13T17:56:43+02:00
Add TUB2023 live streaming
- - - - -
6296643a by Sergi Almacellas Abellana at 2023-04-13T17:57:02+02:00
Add more TUB2023 talks
- - - - -


1 changed file:

- templates/events/tub2023.html


Changes:

=
templates/events/tub2023.html
=
@@ -30,7 +30,11 @@
 {% endmacro %}
 {% set events = [
 Day((2023, 5, 22),
-("New index declaration", (10,), (10, 30),
+("What is Tryton and why you want to use it?", (10, ), (10, 30),
+"We will learn what is Tryton and what is used for. "
+"They key concepts to improve the day by day of your company will 
be shown.",
+[("Sergi Almacellas Abellana", '71c441aa930202e038d23412a0bfc455', 
"KOPEN", 'https://www.kopen.es/')]),
+("New index declaration", (10, 30), (11, ),
 "The implementation process of the new index system, the reasons 
for the change, "
 "the choices that have been made and a presentation of the result",
 [("Nicolas Évrard", '9f3e84dcf01f24de39a02268e00a89ed', "B2CK", 
'https://www.b2ck.com/')]),
@@ -87,6 +91,10 @@
 mailto:tub2...@tryton.org;>Submit a talk
 
 {% endif %}
+
+movie 
Talks will be recorded and live streamed on our Youtube channel.
+https://www.youtube.com/@TrytonSoftware;>Subscribe
+
 {% endblock schedule %}
 
 {% block register %}



View it on Heptapod: 
https://foss.heptapod.net/tryton/website/-/compare/2cc6acf89390c9598b453691ae6781db3ba57c77...6296643a1ecfebe7c7f3e8020932f008958c8e38

-- 
View it on Heptapod: 
https://foss.heptapod.net/tryton/website/-/compare/2cc6acf89390c9598b453691ae6781db3ba57c77...6296643a1ecfebe7c7f3e8020932f008958c8e38
You're receiving this email because of your account on foss.heptapod.net.




[tryton-commits] [Mercurial][tryton/website][branch/default] 2 commits: Add some talks for TUB2023

2023-04-13 Thread Sergi Almacellas Abellana (@pokoli)


Sergi Almacellas Abellana pushed to branch branch/default at Tryton / Website


Commits:
0abc1fd2 by Cédric Krier at 2023-04-07T15:03:49+02:00
Add some talks for TUB2023
- - - - -
2cc6acf8 by Cédric Krier at 2023-04-08T12:40:51+00:00
Add pronoun
- - - - -


1 changed file:

- templates/events/tub2023.html


Changes:

=
templates/events/tub2023.html
=
@@ -50,6 +50,12 @@
 "which allows the automatic planning of production works "
 "based on employees skills, machine capacities and customer 
demand.",
 [("Adrià Tarroja Caubet", 'f80ff70a062f85f5fbf78b7eb77f6fc8', 
"KOPEN", 'https://www.kopen.es/')]),
+("GNU Health loves Tryton", (14, 30), (15,),
+"The GNUHealth project uses Tryton for the Hospital and Lab 
Management System component. "
+"We'll talk about the past, present and future of the GNU Health 
and Tryton relationship, "
+"and how collaboration between the two communities is benefiting 
open science, health professionals, "
+"hospitals and research institutions, improving the lives of 
millions around the world.",
+[("Luis Falcon", '90fe9fb9f620de54c52bf9efd4bdfc2f', "GNU Health", 
'https://www.gnuhealth.org/')]),
 ("Hackathon", (10,), (18,)),
 location=location1(), full=False),
 Day((2023, 5, 23),



View it on Heptapod: 
https://foss.heptapod.net/tryton/website/-/compare/f8495aa74e77a955512a54d2afc7dff7f61ac227...2cc6acf89390c9598b453691ae6781db3ba57c77

-- 
View it on Heptapod: 
https://foss.heptapod.net/tryton/website/-/compare/f8495aa74e77a955512a54d2afc7dff7f61ac227...2cc6acf89390c9598b453691ae6781db3ba57c77
You're receiving this email because of your account on foss.heptapod.net.




[Lightning-dev] On watchtowers and accumulators

2023-03-26 Thread Sergi Delgado Segura
Hi all,

Some time ago I was discussing with ZmnSCPxj about how to handle data
deletion for accountable watchtowers such that the tower doesn't have to
store raw proof of deletion for every single deleted item. The gist is
pretty simple, if I send you data and you hand me proof of reception of
such data, if I ask you to delete the data, now you need to keep proof of
deletion, otherwise, I could claim you are not storing the data we agreed
on initially.

This, unsurprisingly, has led to using accumulators (as ZmnSCPxj originally
suggested) to reduce the data storage requirements (especially on the user
side) while being able to prove additions/deletions.

After chatting with Salvatore Ingala and Calvin Kim about it, I've come to
a point where I think this may be solvable in a rather elegant way, so I
have written a draft of what this may look like wrt watchtowers going,
briefly, from what towers are (and what we mean by accountable) to how
accumulators may help with this issue.

If you're curious about either or both, please give it a look :D

https://gist.github.com/sr-gi/f91f007fc8d871ea96ead9b27feec3d5
--
Sergi.
___
Lightning-dev mailing list
Lightning-dev@lists.linuxfoundation.org
https://lists.linuxfoundation.org/mailman/listinfo/lightning-dev


[tryton-commits] [Mercurial][tryton/tryton][branch/default] Do not copy templates relation when duplicating a category

2023-03-24 Thread Sergi Almacellas Abellana (@pokoli)


Sergi Almacellas Abellana pushed to branch branch/default at Tryton / Tryton


Commits:
17f94a97 by Sergi Almacellas Abellana at 2023-03-24T08:56:09+01:00
Do not copy templates relation when duplicating a category

Closes #12158
- - - - -


1 changed file:

- modules/product/category.py


Changes:

=
modules/product/category.py
=
@@ -36,3 +36,9 @@
 'pyson_domain': PYSONEncoder().encode(
 [('id', '=', categories[0].id)]),
  }
+
+@classmethod
+def copy(cls, categories, default=None):
+default = default.copy() if default is not None else {}
+default.setdefault('templates')
+return super().copy(categories, default=default)



View it on Heptapod: 
https://foss.heptapod.net/tryton/tryton/-/commit/17f94a972a316d3ea1aebdeb1615b1fa16883220

-- 
View it on Heptapod: 
https://foss.heptapod.net/tryton/tryton/-/commit/17f94a972a316d3ea1aebdeb1615b1fa16883220
You're receiving this email because of your account on foss.heptapod.net.




[tryton-commits] [Mercurial][tryton/tryton][branch/default] Add default warehouse location on order point

2023-03-17 Thread Sergi Almacellas Abellana (@pokoli)


Sergi Almacellas Abellana pushed to branch branch/default at Tryton / Tryton


Commits:
8739581d by Sergi Almacellas Abellana at 2023-03-14T09:07:55+01:00
Add default warehouse location on order point
- - - - -


1 changed file:

- modules/stock_supply/order_point.py


Changes:

=
modules/stock_supply/order_point.py
=
@@ -129,6 +129,10 @@
 def default_type():
 return "purchase"
 
+@classmethod
+def default_warehouse_location(cls):
+return Pool().get('stock.location').get_default_warehouse()
+
 @fields.depends('product', '_parent_product.default_uom')
 def on_change_product(self):
 self.unit = None



View it on Heptapod: 
https://foss.heptapod.net/tryton/tryton/-/commit/8739581db72d65d2baf323791609bc951b43e23a

-- 
View it on Heptapod: 
https://foss.heptapod.net/tryton/tryton/-/commit/8739581db72d65d2baf323791609bc951b43e23a
You're receiving this email because of your account on foss.heptapod.net.




[tryton-commits] [Mercurial][tryton/tryton][branch/default] Add symbol on product supplier minimum and multiple quantity

2023-03-15 Thread Sergi Almacellas Abellana (@pokoli)


Sergi Almacellas Abellana pushed to branch branch/default at Tryton / Tryton


Commits:
ae3d19e6 by Sergi Almacellas Abellana at 2023-03-14T08:59:48+01:00
Add symbol on product supplier minimum and multiple quantity
- - - - -


1 changed file:

- modules/purchase_product_quantity/view/product_supplier_form.xml


Changes:

=
modules/purchase_product_quantity/view/product_supplier_form.xml
=
@@ -4,5 +4,5 @@
 
 
 
-
+
 
@@ -8,4 +8,4 @@
 
-
+
 
 



View it on Heptapod: 
https://foss.heptapod.net/tryton/tryton/-/commit/ae3d19e690640dd031d02038c6b355b84d659eff

-- 
View it on Heptapod: 
https://foss.heptapod.net/tryton/tryton/-/commit/ae3d19e690640dd031d02038c6b355b84d659eff
You're receiving this email because of your account on foss.heptapod.net.




[tryton-commits] [Mercurial][tryton/tryton][branch/default] Use inventory company to complete lines

2023-03-09 Thread Sergi Almacellas Abellana (@pokoli)


Sergi Almacellas Abellana pushed to branch branch/default at Tryton / Tryton


Commits:
5282d032 by Sergi Almacellas Abellana at 2023-03-09T13:37:12+01:00
Use inventory company to complete lines

Closes #12127
- - - - -


1 changed file:

- modules/stock/inventory.py


Changes:

=
modules/stock/inventory.py
=
@@ -256,7 +256,9 @@
 if inventory.state == 'done':
 continue
 # Compute product quantities
-with Transaction().set_context(stock_date_end=inventory.date):
+with Transaction().set_context(
+company=inventory.company.id,
+stock_date_end=inventory.date):
 if fill:
 pbl = Product.products_by_location(
 [inventory.location.id],



View it on Heptapod: 
https://foss.heptapod.net/tryton/tryton/-/commit/5282d0322326c6abe1b98cb1dee1565064257e4f

-- 
View it on Heptapod: 
https://foss.heptapod.net/tryton/tryton/-/commit/5282d0322326c6abe1b98cb1dee1565064257e4f
You're receiving this email because of your account on foss.heptapod.net.




[tryton-commits] [Mercurial][tryton/website][branch/default] Add pay by cash note on TUB 2023

2023-03-09 Thread Sergi Almacellas Abellana (@pokoli)


Sergi Almacellas Abellana pushed to branch branch/default at Tryton / Website


Commits:
fcc2d28a by Sergi Almacellas Abellana at 2023-02-23T08:42:19+01:00
Add pay by cash note on TUB 2023
- - - - -


1 changed file:

- templates/events/tub2023.html


Changes:

=
templates/events/tub2023.html
=
@@ -64,6 +64,7 @@
 {% block register %}
 https://ti.to/tryton-foundation/tub2023;>Want 
to participate in the #TUB2023?
 
+It is possible to pay by cash on the first 
day of the conference, but capacity is limited and there is no guarantee that 
there will still be places available.
 {% endblock register %}
 
 {% block venue %}



View it on Heptapod: 
https://foss.heptapod.net/tryton/website/-/commit/fcc2d28a8130a8600732db2768c7f23413442160

-- 
View it on Heptapod: 
https://foss.heptapod.net/tryton/website/-/commit/fcc2d28a8130a8600732db2768c7f23413442160
You're receiving this email because of your account on foss.heptapod.net.




[tryton-commits] [Mercurial][tryton/tryton][branch/default] 2 commits: Catch Overflow error when converting datetime to company timestamp

2023-02-22 Thread Sergi Almacellas Abellana (@pokoli)


Sergi Almacellas Abellana pushed to branch branch/default at Tryton / Tryton


Commits:
59e0d2ef by Sergi Almacellas Abellana at 2023-02-15T14:26:59+01:00
Catch Overflow error when converting datetime to company timestamp

Closes #11999
- - - - -
8d4d6b81 by Sergi Almacellas Abellana at 2023-02-22T08:59:58+01:00
Set timezone in product cost history scenario
- - - - -


2 changed files:

- modules/product_cost_history/product.py
- modules/product_cost_history/tests/scenario_product_cost_history.rst


Changes:

=
modules/product_cost_history/product.py
=
@@ -42,8 +42,12 @@
 company = Company(company)
 if company.timezone:
 timezone = tz.ZoneInfo(company.timezone)
-datetime = (
-datetime.replace(tzinfo=tz.UTC).astimezone(timezone))
+try:
+datetime = (
+datetime.replace(tzinfo=tz.UTC).astimezone(
+timezone))
+except OverflowError:
+pass
 cost_price = self.get_cost_price_at(datetime.date(), **pattern)
 if cost_price is not None:
 return cost_price


=
modules/product_cost_history/tests/scenario_product_cost_history.rst
=
@@ -22,6 +22,8 @@
 
 >>> _ = create_company()
 >>> company = get_company()
+>>> company.timezone = 'Europe/Madrid'
+>>> company.save()
 
 Create product::
 



View it on Heptapod: 
https://foss.heptapod.net/tryton/tryton/-/compare/65e7ccc438fb89df0b41b70c360c8788ee799af9...8d4d6b810c72282e99d4c58bb7f4f4ef12d8830b

-- 
View it on Heptapod: 
https://foss.heptapod.net/tryton/tryton/-/compare/65e7ccc438fb89df0b41b70c360c8788ee799af9...8d4d6b810c72282e99d4c58bb7f4f4ef12d8830b
You're receiving this email because of your account on foss.heptapod.net.




[tryton-commits] [Mercurial][tryton/tryton][branch/default] Use number and reference for subscription rec name

2023-02-16 Thread Sergi Almacellas Abellana (@pokoli)


Sergi Almacellas Abellana pushed to branch branch/default at Tryton / Tryton


Commits:
7934c18b by Sergi Almacellas Abellana at 2023-02-15T17:43:00+01:00
Use number and reference for subscription rec name
- - - - -


1 changed file:

- modules/sale_subscription/subscription.py


Changes:

=
modules/sale_subscription/subscription.py
=
@@ -313,6 +313,29 @@
 'sale_subscription.msg_invoice_recurrence_invalid',
 subscription=subscription.rec_name))
 
+def get_rec_name(self, name):
+items = []
+if self.number:
+items.append(self.number)
+if self.reference:
+items.append('[%s]' % self.reference)
+if not items:
+items.append('(%s)' % self.id)
+return ' '.join(items)
+
+@classmethod
+def search_rec_name(cls, name, clause):
+_, operator, value = clause
+if operator.startswith('!') or operator.startswith('not '):
+bool_op = 'AND'
+else:
+bool_op = 'OR'
+domain = [bool_op,
+('number', operator, value),
+('reference', operator, value),
+]
+return domain
+
 @classmethod
 def copy(cls, subscriptions, default=None):
 if default is None:



View it on Heptapod: 
https://foss.heptapod.net/tryton/tryton/-/commit/7934c18b911adc738477ba7e0b0868ae3c5cb22a

-- 
View it on Heptapod: 
https://foss.heptapod.net/tryton/tryton/-/commit/7934c18b911adc738477ba7e0b0868ae3c5cb22a
You're receiving this email because of your account on foss.heptapod.net.




[tryton-commits] [Mercurial][tryton/tryton][branch/default] Limit tax kind of invoice tax based on invoice type

2023-02-09 Thread Sergi Almacellas Abellana (@pokoli)


Sergi Almacellas Abellana pushed to branch branch/default at Tryton / Tryton


Commits:
7a3f9774 by Sergi Almacellas Abellana at 2023-01-27T11:55:05+01:00
Limit tax kind of invoice tax based on invoice type
- - - - -


1 changed file:

- modules/account_invoice/invoice.py


Changes:

=
modules/account_invoice/invoice.py
=
@@ -2746,6 +2746,13 @@
 tax = fields.Many2One('account.tax', 'Tax',
 ondelete='RESTRICT',
 domain=[
+['OR',
+('group', '=', None),
+('group.kind', 'in',
+If(Eval('_parent_invoice', {}).get('type') == 'out',
+['sale', 'both'],
+['purchase', 'both']),
+)],
 ('company', '=', Eval('_parent_invoice', {}).get('company', 0)),
 ],
 states={
@@ -2749,7 +2756,9 @@
 ('company', '=', Eval('_parent_invoice', {}).get('company', 0)),
 ],
 states={
-'readonly': ~Eval('manual', False) | _states['readonly'],
+'readonly': (
+~Eval('manual', False) | ~Bool(Eval('invoice'))
+| _states['readonly']),
 },
 depends={'invoice'})
 legal_notice = fields.Text("Legal Notice", states=_states)



View it on Heptapod: 
https://foss.heptapod.net/tryton/tryton/-/commit/7a3f9774ae64ed35c6bd785a01da5f61a05df7d1

-- 
View it on Heptapod: 
https://foss.heptapod.net/tryton/tryton/-/commit/7a3f9774ae64ed35c6bd785a01da5f61a05df7d1
You're receiving this email because of your account on foss.heptapod.net.




[tryton-commits] [Mercurial][tryton/tryton][branch/default] Update parent and replaced_by when template has no taxes

2023-01-16 Thread Sergi Almacellas Abellana (@pokoli)


Sergi Almacellas Abellana pushed to branch branch/default at Tryton / Tryton


Commits:
46a73ccc by Sergi Almacellas Abellana at 2023-01-09T14:34:21+01:00
Update parent and replaced_by when template has no taxes

Closes #11891
- - - - -


2 changed files:

- modules/account/account.py
- modules/account/tests/test_module.py


Changes:

=
modules/account/account.py
=
@@ -1362,9 +1362,7 @@
 for child in childs:
 if not child.template:
 continue
-if not child.template.taxes:
-continue
 values = {}
 tax_ids = [template2tax[x.id] for x in child.template.taxes
 if x.id in template2tax]
 old_tax_ids = [x.id for x in child.taxes]
@@ -1367,14 +1365,14 @@
 values = {}
 tax_ids = [template2tax[x.id] for x in child.template.taxes
 if x.id in template2tax]
 old_tax_ids = [x.id for x in child.taxes]
-for tax_id in tax_ids:
-if tax_id not in old_tax_ids:
-values['taxes'] = [
-('add', [template2tax[x.id]
-for x in child.template.taxes
-if x.id in template2tax])]
-break
+taxes_to_add = [x for x in tax_ids if x not in old_tax_ids]
+taxes_to_remove = [x for x in old_tax_ids if x not in tax_ids]
+if taxes_to_add or taxes_to_remove:
+values['taxes'] = [
+('add', taxes_to_add),
+('remove', taxes_to_remove),
+]
 if child.template.parent:
 parent = template2account[child.template.parent.id]
 else:


=
modules/account/tests/test_module.py
=
@@ -1608,6 +1608,12 @@
 account.parent.name, account.template.parent.name)
 else:
 self.assertEqual(account.parent, None)
+if account.template.replaced_by:
+self.assertEqual(
+account.replaced_by.name,
+account.template.replaced_by.name)
+else:
+self.assertEqual(account.replaced_by, None)
 
 for tax_code in TaxCode.search([]):
 self.assertEqual(tax_code.name, tax_code.template.name)
@@ -1685,6 +1691,7 @@
 inactive_account = AccountTemplate(ModelData.get_id(
 'account', 'account_template_expense_en'))
 inactive_account.end_date = datetime.date.min
+inactive_account.replaced_by = new_account
 inactive_account.save()
 new_tax = TaxTemplate()
 new_tax.name = new_tax.description = '10% VAT'



View it on Heptapod: 
https://foss.heptapod.net/tryton/tryton/-/commit/46a73ccc6b68e222baa5e60218eee5ef3b6f0637

-- 
View it on Heptapod: 
https://foss.heptapod.net/tryton/tryton/-/commit/46a73ccc6b68e222baa5e60218eee5ef3b6f0637
You're receiving this email because of your account on foss.heptapod.net.




[tryton-commits] [Mercurial][tryton/tryton][branch/default] Fix typo in SII documentation

2023-01-10 Thread Sergi Almacellas Abellana (@pokoli)


Sergi Almacellas Abellana pushed to branch branch/default at Tryton / Tryton


Commits:
01e788d9 by Sergi Almacellas Abellana at 2023-01-09T14:09:04+01:00
Fix typo in SII documentation
- - - - -


1 changed file:

- modules/account_es_sii/doc/design.rst


Changes:

=
modules/account_es_sii/doc/design.rst
=
@@ -22,7 +22,7 @@
 
 .. seealso::
 
-   The SSI Invoices can be foun by opening the main menu item:
+   The SSI Invoices can be found by opening the main menu item:
 
   |Financial --> Invoices --> SII Invoices|__
 



View it on Heptapod: 
https://foss.heptapod.net/tryton/tryton/-/commit/01e788d9b71f199073bfcb11491b91b3aa7db709

-- 
View it on Heptapod: 
https://foss.heptapod.net/tryton/tryton/-/commit/01e788d9b71f199073bfcb11491b91b3aa7db709
You're receiving this email because of your account on foss.heptapod.net.




[tryton-commits] [Mercurial][tryton/tryton][branch/default] Clear requests when copying purchase lines

2023-01-05 Thread Sergi Almacellas Abellana (@pokoli)


Sergi Almacellas Abellana pushed to branch branch/default at Tryton / Tryton


Commits:
92a2c368 by Sergi Almacellas Abellana at 2023-01-04T13:59:46+01:00
Clear requests when copying purchase lines

Closes #11989
- - - - -


1 changed file:

- modules/purchase_request/purchase.py


Changes:

=
modules/purchase_request/purchase.py
=
@@ -92,6 +92,12 @@
 })
 
 @classmethod
+def copy(cls, lines, default=None):
+default = default.copy() if default is not None else {}
+default.setdefault('requests')
+return super().copy(lines, default=default)
+
+@classmethod
 def delete(cls, lines):
 pool = Pool()
 Request = pool.get('purchase.request')



View it on Heptapod: 
https://foss.heptapod.net/tryton/tryton/-/commit/92a2c368e3f7920227fb310ba8c8b5310338cdbc

-- 
View it on Heptapod: 
https://foss.heptapod.net/tryton/tryton/-/commit/92a2c368e3f7920227fb310ba8c8b5310338cdbc
You're receiving this email because of your account on foss.heptapod.net.




[tryton-commits] [Mercurial][tryton/tryton][branch/default] Skip blocked payments when creating direct debits

2023-01-04 Thread Sergi Almacellas Abellana (@pokoli)


Sergi Almacellas Abellana pushed to branch branch/default at Tryton / Tryton


Commits:
5e030b91 by Sergi Almacellas Abellana at 2023-01-02T16:01:13+01:00
Skip blocked payments when creating direct debits

Closes #11983
- - - - -


3 changed files:

- modules/account_payment/CHANGELOG
- modules/account_payment/account.py
- + 
modules/account_payment/tests/scenario_account_payment_blocked_direct_debit.rst


Changes:

=
modules/account_payment/CHANGELOG
=
@@ -1,3 +1,5 @@
+* Skip blocked payments when creating direct debits
+
 Version 6.6.0 - 2022-10-31
 --
 * Bug fixes (see mercurial logs for details)


=
modules/account_payment/account.py
=
@@ -200,6 +200,7 @@
 ('credit', '<', 0),
 ],
 ('maturity_date', '<=', date),
+('payment_blocked', '!=', True),
 ]
 
 @classmethod


=
modules/account_payment/tests/scenario_account_payment_blocked_direct_debit.rst
=
@@ -0,0 +1,88 @@
+=
+Payment Blocked Direct Debit Scenario
+=
+
+Imports::
+
+>>> import datetime as dt
+>>> from decimal import Decimal
+
+>>> from proteus import Model, Wizard
+>>> from trytond.tests.tools import activate_modules
+>>> from trytond.modules.company.tests.tools import (
+... create_company, get_company)
+>>> from trytond.modules.account.tests.tools import (
+... create_fiscalyear, create_chart, get_accounts)
+
+>>> today = dt.date.today()
+
+Activate modules::
+
+>>> config = activate_modules('account_payment')
+
+>>> Journal = Model.get('account.journal')
+>>> Line = Model.get('account.move.line')
+>>> Move = Model.get('account.move')
+>>> Party = Model.get('party.party')
+>>> Payment = Model.get('account.payment')
+>>> PaymentJournal = Model.get('account.payment.journal')
+
+Create company::
+
+>>> _ = create_company()
+>>> company = get_company()
+
+Create fiscal year::
+
+>>> fiscalyear = create_fiscalyear(company)
+>>> fiscalyear.click('create_period')
+
+Create chart of accounts::
+
+>>> _ = create_chart(company)
+>>> accounts = get_accounts(company)
+
+>>> revnue_journal, = Journal.find([('code', '=', 'REV')])
+
+Create payment journal::
+
+>>> payment_journal = PaymentJournal(
+... name="Manual", process_method='manual')
+>>> payment_journal.save()
+
+Create parties::
+
+>>> customer = Party(name="Customer")
+>>> _ = customer.reception_direct_debits.new(journal=payment_journal)
+>>> customer.save()
+
+Create receivable moves::
+
+>>> move = Move()
+>>> move.journal = revnue_journal
+>>> line = move.lines.new(
+... account=accounts['receivable'], party=customer,
+... debit=Decimal('100.00'), maturity_date=today)
+>>> line = move.lines.new(
+... account=accounts['revenue'],
+... credit=Decimal('100.00'))
+>>> move.click('post')
+
+Direct debit is not created when payment blocked::
+
+>>> line, = Line.find([('party', '=', customer.id)])
+>>> line.click('payment_block')
+>>> create_direct_debit = Wizard('account.move.line.create_direct_debit')
+>>> create_direct_debit.form.date = today
+>>> create_direct_debit.execute('create_')
+>>> len(Payment.find([]))
+0
+
+Direct debit is created when payment is unblocked::
+
+>>> line.click('payment_unblock')
+>>> create_direct_debit = Wizard('account.move.line.create_direct_debit')
+>>> create_direct_debit.form.date = today
+>>> create_direct_debit.execute('create_')
+>>> len(Payment.find([]))
+1



View it on Heptapod: 
https://foss.heptapod.net/tryton/tryton/-/commit/5e030b91f97ff38783aabf3820313f5a1730f0f2

-- 
View it on Heptapod: 
https://foss.heptapod.net/tryton/tryton/-/commit/5e030b91f97ff38783aabf3820313f5a1730f0f2
You're receiving this email because of your account on foss.heptapod.net.




[tryton-commits] [Mercurial][tryton/tryton][branch/default] 2 commits: Allow stock lot to be deactivated

2022-12-28 Thread Sergi Almacellas Abellana (@pokoli)


Sergi Almacellas Abellana pushed to branch branch/default at Tryton / Tryton


Commits:
2b3e28be by Cédric Krier at 2022-12-25T11:08:04+01:00
Allow stock lot to be deactivated

Closes #11931
- - - - -
bea85428 by Sergi Almacellas Abellana at 2022-12-28T12:43:57+01:00
Add party_communication module

Closes #11911
- - - - -


30 changed files:

- + modules/party_communication/COPYRIGHT
- + modules/party_communication/LICENSE
- + modules/party_communication/MANIFEST.in
- + modules/party_communication/README.rst
- + modules/party_communication/__init__.py
- + modules/party_communication/doc/conf.py
- + modules/party_communication/doc/design.rst
- + modules/party_communication/doc/index.rst
- + modules/party_communication/doc/releases.rst
- + modules/party_communication/doc/usage.rst
- + modules/party_communication/icons/LICENSE
- + modules/party_communication/message.xml
- + modules/party_communication/party.py
- + modules/party_communication/party.xml
- + modules/party_communication/setup.py
- + modules/party_communication/tests/__init__.py
- + modules/party_communication/tests/test_module.py
- + modules/party_communication/tests/test_scenario.py
- + modules/party_communication/tox.ini
- + modules/party_communication/tryton.cfg
- + modules/party_communication/view/case_form.xml
- + modules/party_communication/view/case_list.xml
- + modules/party_communication/view/case_status_form.xml
- + modules/party_communication/view/case_status_list.xml
- + modules/party_communication/view/event_form.xml
- + modules/party_communication/view/event_list.xml
- + modules/party_communication/view/event_purpose_form.xml
- + modules/party_communication/view/event_purpose_list.xml
- modules/stock_lot/CHANGELOG
- modules/stock_lot/stock.py


The diff was not included because it is too large.


View it on Heptapod: 
https://foss.heptapod.net/tryton/tryton/-/compare/74cad8cf1dbe368495f53e42a7f53bb29c4de50a...bea854287e0041c8debd75b2c942b0ddb8d2a16f

-- 
View it on Heptapod: 
https://foss.heptapod.net/tryton/tryton/-/compare/74cad8cf1dbe368495f53e42a7f53bb29c4de50a...bea854287e0041c8debd75b2c942b0ddb8d2a16f
You're receiving this email because of your account on foss.heptapod.net.




[Health-dev] [bug #63533] Model 'gnuhealth.pol' is missing a default access

2022-12-15 Thread Sergi Almacellas Abellana
Update of bug #63533 (project health):

   Component:None => Hospital Management

___

Follow-up Comment #1:

I guess you are running the tests with failfast, as if you run the test suite
there are other tests that are failing. 

Same happens with other modules (but they not raise until the health tests are
fixed)

For me all the tests of all modules should be fixed. 




___

Reply to this item at:

  

___
Mensaje enviado vía Savannah
https://savannah.gnu.org/




[tryton-commits] changeset in weblate:default Translated using Weblate (Spanish)

2022-12-12 Thread Sergi Almacellas Abellana
changeset 33151242da4e in weblate:default
details: https://hg.tryton.org/weblate?cmd=changeset=33151242da4e
description:
Translated using Weblate (Spanish)

Currently translated at 100.0% (312 of 312 strings)

Translation: Tryton/party
Translate-URL: https://translate.tryton.org/projects/tryton/party/es/
diffstat:

 modules/party/locale/es.po |  6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)

diffs (28 lines):

diff -r 9943d2da48cd -r 33151242da4e modules/party/locale/es.po
--- a/modules/party/locale/es.poMon Dec 12 09:16:15 2022 +
+++ b/modules/party/locale/es.poMon Dec 12 09:16:08 2022 +
@@ -1,13 +1,13 @@
 #
 msgid ""
 msgstr ""
-"PO-Revision-Date: 2022-10-14 11:03+\n"
+"PO-Revision-Date: 2022-12-13 00:08+\n"
 "Last-Translator: Sergi Almacellas Abellana \n"
 "Language: es\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=n != 1;\n"
-"X-Generator: Weblate 4.14.1\n"
+"X-Generator: Weblate 4.14.2\n"
 
 msgctxt "field:ir.email.template,contact_mechanism:"
 msgid "Contact Mechanism"
@@ -968,7 +968,7 @@
 
 msgctxt "selection:party.configuration,identifier_types:"
 msgid "Indonesian VAT Number"
-msgstr "Identificador fiscal Estonio"
+msgstr "Identificador fiscal Indonesio"
 
 msgctxt "selection:party.configuration,identifier_types:"
 msgid "Irish Personal Number"



[tryton-commits] changeset in weblate:default Translated using Weblate (Catalan)

2022-12-12 Thread Sergi Almacellas Abellana
changeset 9943d2da48cd in weblate:default
details: https://hg.tryton.org/weblate?cmd=changeset=9943d2da48cd
description:
Translated using Weblate (Catalan)

Currently translated at 100.0% (312 of 312 strings)

Translation: Tryton/party
Translate-URL: https://translate.tryton.org/projects/tryton/party/ca/
diffstat:

 modules/party/locale/ca.po |  6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)

diffs (28 lines):

diff -r c975a6ca25e6 -r 9943d2da48cd modules/party/locale/ca.po
--- a/modules/party/locale/ca.poMon Dec 12 10:42:21 2022 +
+++ b/modules/party/locale/ca.poMon Dec 12 09:16:15 2022 +
@@ -1,13 +1,13 @@
 #
 msgid ""
 msgstr ""
-"PO-Revision-Date: 2022-10-22 10:01+\n"
+"PO-Revision-Date: 2022-12-13 00:08+\n"
 "Last-Translator: Sergi Almacellas Abellana \n"
 "Language: ca\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=n != 1;\n"
-"X-Generator: Weblate 4.14.1\n"
+"X-Generator: Weblate 4.14.2\n"
 
 msgctxt "field:ir.email.template,contact_mechanism:"
 msgid "Contact Mechanism"
@@ -966,7 +966,7 @@
 
 msgctxt "selection:party.configuration,identifier_types:"
 msgid "Indonesian VAT Number"
-msgstr "Identificador fiscal Estonià"
+msgstr "Identificador fiscal Indonesi"
 
 msgctxt "selection:party.configuration,identifier_types:"
 msgid "Irish Personal Number"



[tryton-commits] changeset in weblate:default Translated using Weblate (Spanish)

2022-12-12 Thread Sergi Almacellas Abellana
changeset c975a6ca25e6 in weblate:default
details: https://hg.tryton.org/weblate?cmd=changeset=c975a6ca25e6
description:
Translated using Weblate (Spanish)

Currently translated at 99.9% (1157 of 1158 strings)

Translation: Tryton/account
Translate-URL: https://translate.tryton.org/projects/tryton/account/es/
diffstat:

 modules/account/locale/es.po |  6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)

diffs (28 lines):

diff -r a0371b799362 -r c975a6ca25e6 modules/account/locale/es.po
--- a/modules/account/locale/es.po  Sat Dec 03 23:37:27 2022 +
+++ b/modules/account/locale/es.po  Mon Dec 12 10:42:21 2022 +
@@ -1,13 +1,13 @@
 #
 msgid ""
 msgstr ""
-"PO-Revision-Date: 2022-10-23 16:13+\n"
+"PO-Revision-Date: 2022-12-13 00:08+\n"
 "Last-Translator: Sergi Almacellas Abellana \n"
 "Language: es\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=n != 1;\n"
-"X-Generator: Weblate 4.14.1\n"
+"X-Generator: Weblate 4.14.2\n"
 
 msgctxt "field:account.account,active:"
 msgid "Active"
@@ -3910,7 +3910,7 @@
 
 msgctxt "model:res.group,name:group_account_party"
 msgid "Accounting Party"
-msgstr "Comptable de terceros"
+msgstr "Contabilidad de terceros"
 
 msgctxt "report:account.account.type.statement:"
 msgid "/"



Re: Mastodon account, good server?

2022-12-02 Thread Sergi Blanch Torne via Gnupg-users
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA256

Hi,

I would suggest to evaluate "fosstodon.org".

Server seems to be in France (and mail server in Swiss). Domain
registered in 2017 so it isn't an instance created in the boom. By
patreon on can contribute. I haven't check specifically for the liberal
in commercial FS topics. And, it is oriented to FOSS so I thing the
optional requirement. 

./Sergi

On Thu, 2022-12-01 at 17:42 +0100, Bernhard Reiter wrote:
> Hi friends of GnuPG,
> 
> seems to be a good time to start an official Mastodon account
> for GnuPG and related topics like Gpg4win and OpenPGP.
> 
> At least for announcements and some interaction as the interest
> is growing for this decentral platform.
> 
> Is there an interest here?  Should be do this?
> 
> If we do this, a server needs to be select.
> I'd probably go and suggest one my initial rough requirements:
>  * located in Europe
>  * can be volunteeringly paid for
>  * some volume / track record to expect a good administration
>  * a moderation and contents policy that allows for respectful
>    exchange, but is liberal in that commercial Free Software
>    topics (and broad other topics) are allowed as well.
>  * (optional) Free Software and privacy friendly organisation
> 
> Any suggestions matching these?
> 
> Best Regards
> Bernhard
> 
> ___
> Gnupg-users mailing list
> Gnupg-users@gnupg.org
> https://lists.gnupg.org/mailman/listinfo/gnupg-users

-BEGIN PGP SIGNATURE-

iHUEARYIAB0WIQQwWRK68l+taJfhwqAto5bHyTm9RwUCY4msKgAKCRAto5bHyTm9
R+/ZAQDBbuSl/JhKAqQutdElk++XeXO3tIBFCpILBxfram+r9AD+IpSdmfTRyHEG
BBkOH9XRwzNhdx7gAKOthnB27xRRpAk=
=B1pS
-END PGP SIGNATURE-


___
Gnupg-users mailing list
Gnupg-users@gnupg.org
https://lists.gnupg.org/mailman/listinfo/gnupg-users


[tryton-commits] changeset in modules/project_invoice:6.0 Use invoice_unit_price ...

2022-11-30 Thread Sergi Almacellas Abellana
changeset aba259465bd6 in modules/project_invoice:6.0
details: 
https://hg.tryton.org/modules/project_invoice?cmd=changeset=aba259465bd6
description:
Use invoice_unit_price to compute quantity to invoice

issue11833
review413861003
(grafted from acddb9a1cee3993970cc4e1d6668d66ca1218186)
diffstat:

 project.py |  8 
 1 files changed, 4 insertions(+), 4 deletions(-)

diffs (39 lines):

diff -r 8ce78f488bc3 -r aba259465bd6 project.py
--- a/project.pyWed Aug 03 23:53:44 2022 +0200
+++ b/project.pyTue Nov 15 07:57:13 2022 +0100
@@ -38,7 +38,7 @@
 quantities = {}
 for work in works:
 if (work.progress == 1
-and work.list_price
+and work.invoice_unit_price
 and not work.invoice_line):
 if work.price_list_hour:
 quantity = work.effort_hours
@@ -114,7 +114,7 @@
 for sub_works in grouped_slice(works):
 sub_works = list(sub_works)
 where = reduce_ids(
-table.id, [x.id for x in sub_works if x.list_price])
+table.id, [x.id for x in sub_works if x.invoice_unit_price])
 cursor.execute(*table.join(progress,
 condition=progress.work == table.id
 ).select(table.id, Sum(progress.progress),
@@ -126,7 +126,7 @@
 delta = (
 (work.progress or 0)
 - invoiced_progress.get(work.id, 0.0))
-if work.list_price and delta > 0:
+if work.invoice_unit_price and delta > 0:
 quantity = delta
 if work.price_list_hour:
 quantity *= work.effort_hours
@@ -287,7 +287,7 @@
 quantities = {}
 for work in works:
 duration = durations[work.id]
-if work.list_price:
+if work.invoice_unit_price:
 hours = duration.total_seconds() / 60 / 60
 if work.unit_to_invoice:
 hours = work.unit_to_invoice.round(hours)



[tryton-commits] changeset in modules/project_invoice:6.4 Use invoice_unit_price ...

2022-11-30 Thread Sergi Almacellas Abellana
changeset 3a34fd51103f in modules/project_invoice:6.4
details: 
https://hg.tryton.org/modules/project_invoice?cmd=changeset=3a34fd51103f
description:
Use invoice_unit_price to compute quantity to invoice

issue11833
review413861003
(grafted from acddb9a1cee3993970cc4e1d6668d66ca1218186)
diffstat:

 project.py |  8 
 1 files changed, 4 insertions(+), 4 deletions(-)

diffs (39 lines):

diff -r 52fe334a4136 -r 3a34fd51103f project.py
--- a/project.pySat Nov 05 17:48:18 2022 +0100
+++ b/project.pyTue Nov 15 07:57:13 2022 +0100
@@ -39,7 +39,7 @@
 quantities = {}
 for work in works:
 if (work.progress == 1
-and work.list_price
+and work.invoice_unit_price
 and not work.invoice_line):
 if work.price_list_hour:
 quantity = work.effort_hours
@@ -115,7 +115,7 @@
 for sub_works in grouped_slice(works):
 sub_works = list(sub_works)
 where = reduce_ids(
-table.id, [x.id for x in sub_works if x.list_price])
+table.id, [x.id for x in sub_works if x.invoice_unit_price])
 cursor.execute(*table.join(progress,
 condition=progress.work == table.id
 ).select(table.id, Sum(progress.progress),
@@ -127,7 +127,7 @@
 delta = (
 (work.progress or 0)
 - invoiced_progress.get(work.id, 0.0))
-if work.list_price and delta > 0:
+if work.invoice_unit_price and delta > 0:
 quantity = delta
 if work.price_list_hour:
 quantity *= work.effort_hours
@@ -288,7 +288,7 @@
 quantities = {}
 for work in works:
 duration = durations[work.id]
-if work.list_price:
+if work.invoice_unit_price:
 hours = duration.total_seconds() / 60 / 60
 if work.unit_to_invoice:
 hours = work.unit_to_invoice.round(hours)



[tryton-commits] changeset in modules/project_invoice:6.6 Use invoice_unit_price ...

2022-11-30 Thread Sergi Almacellas Abellana
changeset 846807f907e4 in modules/project_invoice:6.6
details: 
https://hg.tryton.org/modules/project_invoice?cmd=changeset=846807f907e4
description:
Use invoice_unit_price to compute quantity to invoice

issue11833
review413861003
(grafted from acddb9a1cee3993970cc4e1d6668d66ca1218186)
diffstat:

 project.py |  8 
 1 files changed, 4 insertions(+), 4 deletions(-)

diffs (39 lines):

diff -r 34e047da0921 -r 846807f907e4 project.py
--- a/project.pyMon Oct 31 17:15:45 2022 +0100
+++ b/project.pyTue Nov 15 07:57:13 2022 +0100
@@ -39,7 +39,7 @@
 quantities = {}
 for work in works:
 if (work.progress == 1
-and work.list_price
+and work.invoice_unit_price
 and not work.invoice_line):
 if work.price_list_hour:
 quantity = work.effort_hours
@@ -115,7 +115,7 @@
 for sub_works in grouped_slice(works):
 sub_works = list(sub_works)
 where = reduce_ids(
-table.id, [x.id for x in sub_works if x.list_price])
+table.id, [x.id for x in sub_works if x.invoice_unit_price])
 cursor.execute(*table.join(progress,
 condition=progress.work == table.id
 ).select(table.id, Sum(progress.progress),
@@ -127,7 +127,7 @@
 delta = (
 (work.progress or 0)
 - invoiced_progress.get(work.id, 0.0))
-if work.list_price and delta > 0:
+if work.invoice_unit_price and delta > 0:
 quantity = delta
 if work.price_list_hour:
 quantity *= work.effort_hours
@@ -288,7 +288,7 @@
 quantities = {}
 for work in works:
 duration = durations[work.id]
-if work.list_price:
+if work.invoice_unit_price:
 hours = duration.total_seconds() / 60 / 60
 if work.unit_to_invoice:
 hours = work.unit_to_invoice.round(hours)



[tryton-commits] changeset in modules/bank:5.0 Hide inactive accounts from party ...

2022-11-30 Thread Sergi Almacellas Abellana
changeset 5c6e581371c7 in modules/bank:5.0
details: https://hg.tryton.org/modules/bank?cmd=changeset=5c6e581371c7
description:
Hide inactive accounts from party bank accounts

issue11590
review441711003
(grafted from 6a6bf5b8ea540f1b5e72f9b0d2fc8a54b3ff35ce)
diffstat:

 party.py |  5 +++--
 1 files changed, 3 insertions(+), 2 deletions(-)

diffs (15 lines):

diff -r 787fa0c0f3d2 -r 5c6e581371c7 party.py
--- a/party.py  Thu Jun 17 21:52:59 2021 +0200
+++ b/party.py  Tue Nov 15 07:56:21 2022 +0100
@@ -9,8 +9,9 @@
 
 class Party(metaclass=PoolMeta):
 __name__ = 'party.party'
-bank_accounts = fields.Many2Many('bank.account-party.party', 'owner',
-'account', 'Bank Accounts')
+bank_accounts = fields.Many2Many(
+'bank.account-party.party', 'owner', 'account', "Bank Accounts",
+filter=[('active', '=', True)])
 
 @classmethod
 def search_rec_name(cls, name, clause):



[tryton-commits] changeset in modules/bank:6.0 Hide inactive accounts from party ...

2022-11-30 Thread Sergi Almacellas Abellana
changeset db48a25d1a66 in modules/bank:6.0
details: https://hg.tryton.org/modules/bank?cmd=changeset=db48a25d1a66
description:
Hide inactive accounts from party bank accounts

issue11590
review441711003
(grafted from 6a6bf5b8ea540f1b5e72f9b0d2fc8a54b3ff35ce)
diffstat:

 party.py |  5 +++--
 1 files changed, 3 insertions(+), 2 deletions(-)

diffs (15 lines):

diff -r 5f440700baba -r db48a25d1a66 party.py
--- a/party.py  Mon May 03 15:38:40 2021 +0200
+++ b/party.py  Tue Nov 15 07:56:21 2022 +0100
@@ -7,8 +7,9 @@
 
 class Party(metaclass=PoolMeta):
 __name__ = 'party.party'
-bank_accounts = fields.Many2Many('bank.account-party.party', 'owner',
-'account', 'Bank Accounts')
+bank_accounts = fields.Many2Many(
+'bank.account-party.party', 'owner', 'account', "Bank Accounts",
+filter=[('active', '=', True)])
 
 @classmethod
 def search_rec_name(cls, name, clause):



[tryton-commits] changeset in modules/bank:6.4 Hide inactive accounts from party ...

2022-11-30 Thread Sergi Almacellas Abellana
changeset c716fc900fa3 in modules/bank:6.4
details: https://hg.tryton.org/modules/bank?cmd=changeset=c716fc900fa3
description:
Hide inactive accounts from party bank accounts

issue11590
review441711003
(grafted from 6a6bf5b8ea540f1b5e72f9b0d2fc8a54b3ff35ce)
diffstat:

 party.py |  5 +++--
 1 files changed, 3 insertions(+), 2 deletions(-)

diffs (15 lines):

diff -r a3a9a8defaec -r c716fc900fa3 party.py
--- a/party.py  Sat Nov 05 17:33:26 2022 +0100
+++ b/party.py  Tue Nov 15 07:56:21 2022 +0100
@@ -7,8 +7,9 @@
 
 class Party(metaclass=PoolMeta):
 __name__ = 'party.party'
-bank_accounts = fields.Many2Many('bank.account-party.party', 'owner',
-'account', 'Bank Accounts')
+bank_accounts = fields.Many2Many(
+'bank.account-party.party', 'owner', 'account', "Bank Accounts",
+filter=[('active', '=', True)])
 
 @classmethod
 def search_rec_name(cls, name, clause):



[tryton-commits] changeset in modules/bank:6.6 Hide inactive accounts from party ...

2022-11-30 Thread Sergi Almacellas Abellana
changeset a4b8b4a994fe in modules/bank:6.6
details: https://hg.tryton.org/modules/bank?cmd=changeset=a4b8b4a994fe
description:
Hide inactive accounts from party bank accounts

issue11590
review441711003
(grafted from 6a6bf5b8ea540f1b5e72f9b0d2fc8a54b3ff35ce)
diffstat:

 party.py |  5 +++--
 1 files changed, 3 insertions(+), 2 deletions(-)

diffs (15 lines):

diff -r d20c59ffad20 -r a4b8b4a994fe party.py
--- a/party.py  Mon Oct 31 16:48:24 2022 +0100
+++ b/party.py  Tue Nov 15 07:56:21 2022 +0100
@@ -7,8 +7,9 @@
 
 class Party(metaclass=PoolMeta):
 __name__ = 'party.party'
-bank_accounts = fields.Many2Many('bank.account-party.party', 'owner',
-'account', 'Bank Accounts')
+bank_accounts = fields.Many2Many(
+'bank.account-party.party', 'owner', 'account', "Bank Accounts",
+filter=[('active', '=', True)])
 
 @classmethod
 def search_rec_name(cls, name, clause):



[tryton-commits] changeset in weblate:default Translated using Weblate (Spanish)

2022-11-17 Thread Sergi Almacellas Abellana
changeset fc00f1224ce2 in weblate:default
details: https://hg.tryton.org/weblate?cmd=changeset=fc00f1224ce2
description:
Translated using Weblate (Spanish)

Currently translated at 100.0% (813 of 813 strings)

Translation: Tryton/stock
Translate-URL: https://translate.tryton.org/projects/tryton/stock/es/
diffstat:

 modules/stock/locale/es.po |  6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)

diffs (28 lines):

diff -r a41c009e6676 -r fc00f1224ce2 modules/stock/locale/es.po
--- a/modules/stock/locale/es.poTue Nov 01 02:54:37 2022 +0100
+++ b/modules/stock/locale/es.poThu Nov 17 10:51:16 2022 +
@@ -1,13 +1,13 @@
 #
 msgid ""
 msgstr ""
-"PO-Revision-Date: 2022-10-18 12:36+\n"
+"PO-Revision-Date: 2022-11-17 20:35+\n"
 "Last-Translator: Sergi Almacellas Abellana \n"
 "Language: es\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=n != 1;\n"
-"X-Generator: Weblate 4.14.1\n"
+"X-Generator: Weblate 4.14.2\n"
 
 msgctxt "field:party.address,delivery:"
 msgid "Delivery"
@@ -3050,7 +3050,7 @@
 
 msgctxt "selection:stock.inventory,state:"
 msgid "Done"
-msgstr "Finalizar"
+msgstr "Finalizado"
 
 msgctxt "selection:stock.inventory,state:"
 msgid "Draft"



[tryton-commits] changeset in modules/project_invoice:default Use invoice_unit_pr...

2022-11-14 Thread Sergi Almacellas Abellana
changeset acddb9a1cee3 in modules/project_invoice:default
details: 
https://hg.tryton.org/modules/project_invoice?cmd=changeset=acddb9a1cee3
description:
Use invoice_unit_price to compute quantity to invoice

issue11833
review413861003
diffstat:

 project.py |  8 
 1 files changed, 4 insertions(+), 4 deletions(-)

diffs (39 lines):

diff -r 33dc059192ce -r acddb9a1cee3 project.py
--- a/project.pyMon Oct 31 17:15:46 2022 +0100
+++ b/project.pyTue Nov 15 07:57:13 2022 +0100
@@ -39,7 +39,7 @@
 quantities = {}
 for work in works:
 if (work.progress == 1
-and work.list_price
+and work.invoice_unit_price
 and not work.invoice_line):
 if work.price_list_hour:
 quantity = work.effort_hours
@@ -115,7 +115,7 @@
 for sub_works in grouped_slice(works):
 sub_works = list(sub_works)
 where = reduce_ids(
-table.id, [x.id for x in sub_works if x.list_price])
+table.id, [x.id for x in sub_works if x.invoice_unit_price])
 cursor.execute(*table.join(progress,
 condition=progress.work == table.id
 ).select(table.id, Sum(progress.progress),
@@ -127,7 +127,7 @@
 delta = (
 (work.progress or 0)
 - invoiced_progress.get(work.id, 0.0))
-if work.list_price and delta > 0:
+if work.invoice_unit_price and delta > 0:
 quantity = delta
 if work.price_list_hour:
 quantity *= work.effort_hours
@@ -288,7 +288,7 @@
 quantities = {}
 for work in works:
 duration = durations[work.id]
-if work.list_price:
+if work.invoice_unit_price:
 hours = duration.total_seconds() / 60 / 60
 if work.unit_to_invoice:
 hours = work.unit_to_invoice.round(hours)



[tryton-commits] changeset in modules/bank:default Hide inactive accounts from pa...

2022-11-14 Thread Sergi Almacellas Abellana
changeset 6a6bf5b8ea54 in modules/bank:default
details: https://hg.tryton.org/modules/bank?cmd=changeset=6a6bf5b8ea54
description:
Hide inactive accounts from party bank accounts

issue11590
review441711003
diffstat:

 party.py |  5 +++--
 1 files changed, 3 insertions(+), 2 deletions(-)

diffs (15 lines):

diff -r f6bf121694b3 -r 6a6bf5b8ea54 party.py
--- a/party.py  Mon Oct 31 16:48:25 2022 +0100
+++ b/party.py  Tue Nov 15 07:56:21 2022 +0100
@@ -7,8 +7,9 @@
 
 class Party(metaclass=PoolMeta):
 __name__ = 'party.party'
-bank_accounts = fields.Many2Many('bank.account-party.party', 'owner',
-'account', 'Bank Accounts')
+bank_accounts = fields.Many2Many(
+'bank.account-party.party', 'owner', 'account', "Bank Accounts",
+filter=[('active', '=', True)])
 
 @classmethod
 def search_rec_name(cls, name, clause):



[tryton-commits] changeset in modules/product_kit:6.0 Copy components without par...

2022-11-11 Thread Sergi Almacellas Abellana
changeset 72b5602a397d in modules/product_kit:6.0
details: 
https://hg.tryton.org/modules/product_kit?cmd=changeset=72b5602a397d
description:
Copy components without parent_product when duplicating templates

issue11854
review418561003
(grafted from 699d42badcf0aed4fbe232d0e401e04ddad6bab6)
diffstat:

 product.py |  2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diffs (12 lines):

diff -r 58e755474670 -r 72b5602a397d product.py
--- a/product.pyTue Oct 18 00:01:23 2022 +0200
+++ b/product.pyThu Nov 03 09:15:38 2022 +0100
@@ -44,7 +44,7 @@
 to_copy = []
 for template, new_template in zip(templates, new_templates):
 to_copy.extend(
-c for c in template.components if not c.product)
+c for c in template.components if not c.parent_product)
 old2new[template.id] = new_template.id
 if to_copy:
 Component.copy(to_copy, {



[tryton-commits] changeset in modules/product_kit:6.2 Copy components without par...

2022-11-11 Thread Sergi Almacellas Abellana
changeset f5b4fcbd7686 in modules/product_kit:6.2
details: 
https://hg.tryton.org/modules/product_kit?cmd=changeset=f5b4fcbd7686
description:
Copy components without parent_product when duplicating templates

issue11854
review418561003
(grafted from 699d42badcf0aed4fbe232d0e401e04ddad6bab6)
diffstat:

 product.py |  2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diffs (12 lines):

diff -r c6336a37aa76 -r f5b4fcbd7686 product.py
--- a/product.pyTue Oct 18 00:01:02 2022 +0200
+++ b/product.pyThu Nov 03 09:15:38 2022 +0100
@@ -50,7 +50,7 @@
 to_copy = []
 for template, new_template in zip(templates, new_templates):
 to_copy.extend(
-c for c in template.components if not c.product)
+c for c in template.components if not c.parent_product)
 old2new[template.id] = new_template.id
 if to_copy:
 Component.copy(to_copy, {



[tryton-commits] changeset in modules/product_kit:6.4 Copy components without par...

2022-11-11 Thread Sergi Almacellas Abellana
changeset 33230de41d1c in modules/product_kit:6.4
details: 
https://hg.tryton.org/modules/product_kit?cmd=changeset=33230de41d1c
description:
Copy components without parent_product when duplicating templates

issue11854
review418561003
(grafted from 699d42badcf0aed4fbe232d0e401e04ddad6bab6)
diffstat:

 product.py |  2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diffs (12 lines):

diff -r c69a3af5e2f4 -r 33230de41d1c product.py
--- a/product.pySat Nov 05 17:46:36 2022 +0100
+++ b/product.pyThu Nov 03 09:15:38 2022 +0100
@@ -49,7 +49,7 @@
 to_copy = []
 for template, new_template in zip(templates, new_templates):
 to_copy.extend(
-c for c in template.components if not c.product)
+c for c in template.components if not c.parent_product)
 old2new[template.id] = new_template.id
 if to_copy:
 Component.copy(to_copy, {



[tryton-commits] changeset in modules/product_kit:6.6 Copy components without par...

2022-11-11 Thread Sergi Almacellas Abellana
changeset 9b76578d8dfc in modules/product_kit:6.6
details: 
https://hg.tryton.org/modules/product_kit?cmd=changeset=9b76578d8dfc
description:
Copy components without parent_product when duplicating templates

issue11854
review418561003
(grafted from 699d42badcf0aed4fbe232d0e401e04ddad6bab6)
diffstat:

 product.py |  2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diffs (12 lines):

diff -r d7f66473d032 -r 9b76578d8dfc product.py
--- a/product.pyMon Oct 31 17:23:33 2022 +0100
+++ b/product.pyThu Nov 03 09:15:38 2022 +0100
@@ -49,7 +49,7 @@
 to_copy = []
 for template, new_template in zip(templates, new_templates):
 to_copy.extend(
-c for c in template.components if not c.product)
+c for c in template.components if not c.parent_product)
 old2new[template.id] = new_template.id
 if to_copy:
 Component.copy(to_copy, {



[tryton-commits] changeset in modules/product_kit:default Add scenario to test ki...

2022-11-03 Thread Sergi Almacellas Abellana
changeset 422e4fd3b392 in modules/product_kit:default
details: 
https://hg.tryton.org/modules/product_kit?cmd=changeset=422e4fd3b392
description:
Add scenario to test kit duplication

issue11854
review418561003
diffstat:

 tests/scenario_product_kit_duplicate.rst |  86 
 1 files changed, 86 insertions(+), 0 deletions(-)

diffs (90 lines):

diff -r 699d42badcf0 -r 422e4fd3b392 tests/scenario_product_kit_duplicate.rst
--- /dev/null   Thu Jan 01 00:00:00 1970 +
+++ b/tests/scenario_product_kit_duplicate.rst  Thu Nov 03 09:18:11 2022 +0100
@@ -0,0 +1,86 @@
+==
+Product Kit Duplicate Scenario
+==
+
+Imports::
+
+>>> from decimal import Decimal
+>>> from proteus import Model, Wizard
+>>> from trytond.tests.tools import activate_modules
+>>> from trytond.modules.company.tests.tools import (
+... create_company, get_company)
+
+Activate product_kit::
+
+>>> config = activate_modules('product_kit')
+
+>>> Uom = Model.get('product.uom')
+>>> ProductTemplate = Model.get('product.template')
+>>> Product = Model.get('product.product')
+
+Create company::
+
+>>> _ = create_company()
+>>> company = get_company()
+
+Create products::
+
+>>> unit, = Uom.find([('name', '=', 'Unit')])
+>>> template = ProductTemplate()
+>>> template.name = "Product 1"
+>>> template.default_uom = unit
+>>> template.type = 'goods'
+>>> template.save()
+>>> product1, = template.products
+>>> product1.cost_price = Decimal('10.')
+>>> product1.save()
+
+>>> template = ProductTemplate()
+>>> template.name = "Product 2"
+>>> template.default_uom = unit
+>>> template.type = 'goods'
+>>> template.save()
+>>> product2, = template.products
+>>> product2.cost_price = Decimal('20.')
+>>> product2.save()
+
+Create composed product::
+
+>>> template = ProductTemplate()
+>>> template.name = "Composed Product"
+>>> template.default_uom = unit
+>>> template.type = 'goods'
+>>> template.save()
+>>> composed_product, = template.products
+>>> composed_product.cost_price = Decimal('10.')
+
+>>> component = composed_product.components.new()
+>>> component.product = product1
+>>> component.quantity = 2
+>>> composed_product.save()
+
+Create a kit::
+
+>>> template = ProductTemplate()
+>>> template.name = "Kit"
+>>> template.default_uom = unit
+>>> template.type = 'kit'
+>>> template.save()
+>>> kit, = template.products
+
+>>> component = template.components.new()
+>>> component.product = product1
+>>> component.quantity = 1
+>>> component = template.components.new()
+>>> component.product = product2
+>>> component.quantity = 2
+>>> template.save()
+
+Test duplicate copies components::
+
+>>> duplicated, = template.duplicate()
+>>> len(duplicated.components)
+2
+>>> duplicated_product, = composed_product.duplicate()
+>>> len(duplicated_product.components)
+1



[tryton-commits] changeset in modules/product_kit:default Copy components without...

2022-11-03 Thread Sergi Almacellas Abellana
changeset 699d42badcf0 in modules/product_kit:default
details: 
https://hg.tryton.org/modules/product_kit?cmd=changeset=699d42badcf0
description:
Copy components without parent_product when duplicating templates

issue11854
review418561003
diffstat:

 product.py |  2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diffs (12 lines):

diff -r f66624526d4a -r 699d42badcf0 product.py
--- a/product.pyMon Oct 31 17:23:34 2022 +0100
+++ b/product.pyThu Nov 03 09:15:38 2022 +0100
@@ -49,7 +49,7 @@
 to_copy = []
 for template, new_template in zip(templates, new_templates):
 to_copy.extend(
-c for c in template.components if not c.product)
+c for c in template.components if not c.parent_product)
 old2new[template.id] = new_template.id
 if to_copy:
 Component.copy(to_copy, {



[tryton-commits] changeset in sao:6.0 Do not try to load non fields when drawing ...

2022-10-30 Thread Sergi Almacellas Abellana
changeset 1d57918d24ef in sao:6.0
details: https://hg.tryton.org/sao?cmd=changeset=1d57918d24ef
description:
Do not try to load non fields when drawing tree view

issue11762
review441501003
(grafted from 955f340ce44fe738f1b7c5c3cb671781ef8207d8)
diffstat:

 src/view/tree.js |  15 +++
 1 files changed, 11 insertions(+), 4 deletions(-)

diffs (27 lines):

diff -r 7c9bd3aeddd7 -r 1d57918d24ef src/view/tree.js
--- a/src/view/tree.js  Mon Oct 17 23:43:27 2022 +0200
+++ b/src/view/tree.js  Fri Oct 14 13:12:44 2022 +0200
@@ -1213,12 +1213,19 @@
 var redraw = function() {
 for (; i < rows.length; i++) {
 var row = rows[i];
-var record = row.record,
-column = row.tree.columns[0];
-if (!record.is_loaded(column.attributes.name)) {
+var record = row.record;
+var field_name;
+for (var j=0; j < row.tree.columns.length; j++) {
+var column = row.tree.columns[j];
+if (column.type == 'field') {
+field_name = column.attributes.name;
+break;
+}
+}
+if (field_name && !record.is_loaded(field_name)) {
 // Prefetch the first field to prevent promises in
 // Cell.render
-record.load(column.attributes.name).done(redraw);
+record.load(field_name).done(redraw);
 return;
 } else {
 row.redraw(selected, expanded);



[tryton-commits] changeset in sao:6.2 Do not try to load non fields when drawing ...

2022-10-30 Thread Sergi Almacellas Abellana
changeset d97aa738382a in sao:6.2
details: https://hg.tryton.org/sao?cmd=changeset=d97aa738382a
description:
Do not try to load non fields when drawing tree view

issue11762
review441501003
(grafted from 955f340ce44fe738f1b7c5c3cb671781ef8207d8)
diffstat:

 src/view/tree.js |  15 +++
 1 files changed, 11 insertions(+), 4 deletions(-)

diffs (27 lines):

diff -r 7658715ad432 -r d97aa738382a src/view/tree.js
--- a/src/view/tree.js  Mon Oct 17 23:43:01 2022 +0200
+++ b/src/view/tree.js  Fri Oct 14 13:12:44 2022 +0200
@@ -1291,12 +1291,19 @@
 var redraw = function() {
 for (; i < rows.length; i++) {
 var row = rows[i];
-var record = row.record,
-column = row.tree.columns[0];
-if (!record.is_loaded(column.attributes.name)) {
+var record = row.record;
+var field_name;
+for (var j=0; j < row.tree.columns.length; j++) {
+var column = row.tree.columns[j];
+if (column.type == 'field') {
+field_name = column.attributes.name;
+break;
+}
+}
+if (field_name && !record.is_loaded(field_name)) {
 // Prefetch the first field to prevent promises in
 // Cell.render
-record.load(column.attributes.name).done(redraw);
+record.load(field_name).done(redraw);
 return;
 } else {
 row.redraw(selected, expanded);



[tryton-commits] changeset in sao:6.4 Do not try to load non fields when drawing ...

2022-10-30 Thread Sergi Almacellas Abellana
changeset c4ec372449c2 in sao:6.4
details: https://hg.tryton.org/sao?cmd=changeset=c4ec372449c2
description:
Do not try to load non fields when drawing tree view

issue11762
review441501003
(grafted from 955f340ce44fe738f1b7c5c3cb671781ef8207d8)
diffstat:

 src/view/tree.js |  15 +++
 1 files changed, 11 insertions(+), 4 deletions(-)

diffs (27 lines):

diff -r 98f8134316be -r c4ec372449c2 src/view/tree.js
--- a/src/view/tree.js  Mon Oct 17 23:41:28 2022 +0200
+++ b/src/view/tree.js  Fri Oct 14 13:12:44 2022 +0200
@@ -1372,12 +1372,19 @@
 var redraw = function() {
 for (; i < rows.length; i++) {
 var row = rows[i];
-var record = row.record,
-column = row.tree.columns[0];
-if (!record.is_loaded(column.attributes.name)) {
+var record = row.record;
+var field_name;
+for (var j=0; j < row.tree.columns.length; j++) {
+var column = row.tree.columns[j];
+if (column.type == 'field') {
+field_name = column.attributes.name;
+break;
+}
+}
+if (field_name && !record.is_loaded(field_name)) {
 // Prefetch the first field to prevent promises in
 // Cell.render
-record.load(column.attributes.name).done(redraw);
+record.load(field_name).done(redraw);
 return;
 } else {
 row.redraw(selected, expanded);



[tryton-commits] changeset in modules/sale_stock_quantity:5.0 Ignore sold quantit...

2022-10-30 Thread Sergi Almacellas Abellana
changeset af3112a22d5c in modules/sale_stock_quantity:5.0
details: 
https://hg.tryton.org/modules/sale_stock_quantity?cmd=changeset=af3112a22d5c
description:
Ignore sold quantities from other warehouse on sale check_stock_quantity

issue11802
review412001003
(grafted from f7fbb41bd582b8267a87895eb34920944461582d)
diffstat:

 sale.py |  2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diffs (12 lines):

diff -r 2c97fd82baab -r af3112a22d5c sale.py
--- a/sale.py   Thu Jun 17 22:07:38 2021 +0200
+++ b/sale.py   Fri Oct 21 13:12:49 2022 +0200
@@ -155,7 +155,7 @@
 for line in lines:
 product = line.product
 date = line.sale.sale_date or today
-if date > today:
+if date > today or line.warehouse != self.warehouse:
 continue
 quantity = Uom.compute_qty(line.unit, line.quantity,
 product.default_uom, round=False)



[tryton-commits] changeset in modules/sale_stock_quantity:6.0 Ignore sold quantit...

2022-10-30 Thread Sergi Almacellas Abellana
changeset 8e693e5f849e in modules/sale_stock_quantity:6.0
details: 
https://hg.tryton.org/modules/sale_stock_quantity?cmd=changeset=8e693e5f849e
description:
Ignore sold quantities from other warehouse on sale check_stock_quantity

issue11802
review412001003
(grafted from f7fbb41bd582b8267a87895eb34920944461582d)
diffstat:

 sale.py |  2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diffs (12 lines):

diff -r 340765e5c830 -r 8e693e5f849e sale.py
--- a/sale.py   Thu Oct 20 09:43:17 2022 +0200
+++ b/sale.py   Fri Oct 21 13:12:49 2022 +0200
@@ -155,7 +155,7 @@
 for line in lines:
 product = line.product
 date = line.sale.sale_date or today
-if date > today:
+if date > today or line.warehouse != self.warehouse:
 continue
 quantity = Uom.compute_qty(line.unit, line.quantity,
 product.default_uom, round=False)



[tryton-commits] changeset in modules/sale_stock_quantity:6.2 Ignore sold quantit...

2022-10-30 Thread Sergi Almacellas Abellana
changeset 9f0f830bf469 in modules/sale_stock_quantity:6.2
details: 
https://hg.tryton.org/modules/sale_stock_quantity?cmd=changeset=9f0f830bf469
description:
Ignore sold quantities from other warehouse on sale check_stock_quantity

issue11802
review412001003
(grafted from f7fbb41bd582b8267a87895eb34920944461582d)
diffstat:

 sale.py |  2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diffs (12 lines):

diff -r d24ea6fb2005 -r 9f0f830bf469 sale.py
--- a/sale.py   Thu Oct 20 09:43:17 2022 +0200
+++ b/sale.py   Fri Oct 21 13:12:49 2022 +0200
@@ -158,7 +158,7 @@
 for line in lines:
 product = line.product
 date = line.sale.sale_date or today
-if date > today:
+if date > today or line.warehouse != self.warehouse:
 continue
 quantity = Uom.compute_qty(line.unit, line.quantity,
 product.default_uom, round=False)



[tryton-commits] changeset in modules/sale_stock_quantity:6.4 Ignore sold quantit...

2022-10-30 Thread Sergi Almacellas Abellana
changeset fda50010a5bb in modules/sale_stock_quantity:6.4
details: 
https://hg.tryton.org/modules/sale_stock_quantity?cmd=changeset=fda50010a5bb
description:
Ignore sold quantities from other warehouse on sale check_stock_quantity

issue11802
review412001003
(grafted from f7fbb41bd582b8267a87895eb34920944461582d)
diffstat:

 sale.py |  2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diffs (12 lines):

diff -r 98b4eeeb7188 -r fda50010a5bb sale.py
--- a/sale.py   Thu Oct 20 09:43:17 2022 +0200
+++ b/sale.py   Fri Oct 21 13:12:49 2022 +0200
@@ -155,7 +155,7 @@
 for line in lines:
 product = line.product
 date = line.sale.sale_date or today
-if date > today:
+if date > today or line.warehouse != self.warehouse:
 continue
 quantity = Uom.compute_qty(line.unit, line.quantity,
 product.default_uom, round=False)



[tryton-commits] changeset in modules/sale_stock_quantity:6.0 Skip check_stock_qu...

2022-10-30 Thread Sergi Almacellas Abellana
changeset 340765e5c830 in modules/sale_stock_quantity:6.0
details: 
https://hg.tryton.org/modules/sale_stock_quantity?cmd=changeset=340765e5c830
description:
Skip check_stock_quantity for sales without warehouse

issue11799
review433611003
(grafted from 3fa390f939c292a7b92f658ea497056f2a3cfdf5)
diffstat:

 sale.py |  3 +++
 1 files changed, 3 insertions(+), 0 deletions(-)

diffs (13 lines):

diff -r 24f1b92a138b -r 340765e5c830 sale.py
--- a/sale.py   Mon May 03 16:05:43 2021 +0200
+++ b/sale.py   Thu Oct 20 09:43:17 2022 +0200
@@ -66,6 +66,9 @@
 Line = pool.get('sale.line')
 Warning = pool.get('res.user.warning')
 
+if not self.warehouse:
+return
+
 transaction = Transaction()
 
 def in_group():



[tryton-commits] changeset in modules/sale_stock_quantity:6.2 Skip check_stock_qu...

2022-10-30 Thread Sergi Almacellas Abellana
changeset d24ea6fb2005 in modules/sale_stock_quantity:6.2
details: 
https://hg.tryton.org/modules/sale_stock_quantity?cmd=changeset=d24ea6fb2005
description:
Skip check_stock_quantity for sales without warehouse

issue11799
review433611003
(grafted from 3fa390f939c292a7b92f658ea497056f2a3cfdf5)
diffstat:

 sale.py |  3 +++
 1 files changed, 3 insertions(+), 0 deletions(-)

diffs (13 lines):

diff -r 958922cc1c0f -r d24ea6fb2005 sale.py
--- a/sale.py   Mon Nov 01 17:32:09 2021 +0100
+++ b/sale.py   Thu Oct 20 09:43:17 2022 +0200
@@ -67,6 +67,9 @@
 Line = pool.get('sale.line')
 Warning = pool.get('res.user.warning')
 
+if not self.warehouse:
+return
+
 transaction = Transaction()
 
 def in_group():



[tryton-commits] changeset in modules/sale_stock_quantity:6.4 Skip check_stock_qu...

2022-10-30 Thread Sergi Almacellas Abellana
changeset 98b4eeeb7188 in modules/sale_stock_quantity:6.4
details: 
https://hg.tryton.org/modules/sale_stock_quantity?cmd=changeset=98b4eeeb7188
description:
Skip check_stock_quantity for sales without warehouse

issue11799
review433611003
(grafted from 3fa390f939c292a7b92f658ea497056f2a3cfdf5)
diffstat:

 sale.py |  9 +
 1 files changed, 5 insertions(+), 4 deletions(-)

diffs (33 lines):

diff -r 403842dc5313 -r 98b4eeeb7188 sale.py
--- a/sale.py   Mon May 02 17:45:17 2022 +0200
+++ b/sale.py   Thu Oct 20 09:43:17 2022 +0200
@@ -68,6 +68,9 @@
 Line = pool.get('sale.line')
 Warning = pool.get('res.user.warning')
 
+if not self.warehouse:
+return
+
 transaction = Transaction()
 
 def in_group():
@@ -211,6 +214,7 @@
 lang = Lang.get()
 if (self.sale_state == 'draft'
 and self.sale
+and self.sale.warehouse
 and self.product
 and self.product.type in Move.get_product_types()
 and self.unit
@@ -219,10 +223,7 @@
 company=self.company.id if self.company else None):
 today = Date.today()
 sale_date = self.sale.sale_date or today
-if self.sale.warehouse:
-locations = [self.sale.warehouse.id]
-else:
-locations = []
+locations = [self.sale.warehouse.id]
 with Transaction().set_context(
 locations=locations,
 stock_date_end=sale_date,



[tryton-commits] changeset in modules/sale_payment:5.0 Prevent error when payment...

2022-10-30 Thread Sergi Almacellas Abellana
changeset 389836e884bd in modules/sale_payment:5.0
details: 
https://hg.tryton.org/modules/sale_payment?cmd=changeset=389836e884bd
description:
Prevent error when payment has no account attribute

issue11780
review433581003
(grafted from 3d6541cd565795727707e19ca9e182b4537b22cb)
diffstat:

 account.py |  2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diffs (12 lines):

diff -r f1e1511bba94 -r 389836e884bd account.py
--- a/account.pyTue Feb 01 18:27:16 2022 +0100
+++ b/account.pyThu Oct 13 08:12:05 2022 +0200
@@ -118,7 +118,7 @@
 continue
 if payment.party != line.party:
 continue
-if (getattr(payment, 'account')
+if (getattr(payment, 'account', None)
 and payment.account != line.account):
 continue
 if payment.amount <= payment_amount:



[tryton-commits] changeset in modules/sale_payment:6.0 Prevent error when payment...

2022-10-30 Thread Sergi Almacellas Abellana
changeset d9feb883b56b in modules/sale_payment:6.0
details: 
https://hg.tryton.org/modules/sale_payment?cmd=changeset=d9feb883b56b
description:
Prevent error when payment has no account attribute

issue11780
review433581003
(grafted from 3d6541cd565795727707e19ca9e182b4537b22cb)
diffstat:

 account.py |  2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diffs (12 lines):

diff -r fe65f7e35640 -r d9feb883b56b account.py
--- a/account.pyTue Feb 01 18:26:53 2022 +0100
+++ b/account.pyThu Oct 13 08:12:05 2022 +0200
@@ -139,7 +139,7 @@
 continue
 if payment.party != line.party:
 continue
-if (getattr(payment, 'account')
+if (getattr(payment, 'account', None)
 and payment.account != line.account):
 continue
 if payment.amount <= payment_amount:



[tryton-commits] changeset in modules/sale_payment:6.2 Prevent error when payment...

2022-10-30 Thread Sergi Almacellas Abellana
changeset 671ef12b368d in modules/sale_payment:6.2
details: 
https://hg.tryton.org/modules/sale_payment?cmd=changeset=671ef12b368d
description:
Prevent error when payment has no account attribute

issue11780
review433581003
(grafted from 3d6541cd565795727707e19ca9e182b4537b22cb)
diffstat:

 account.py |  2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diffs (12 lines):

diff -r 8c12b032ed29 -r 671ef12b368d account.py
--- a/account.pyTue Feb 01 18:22:45 2022 +0100
+++ b/account.pyThu Oct 13 08:12:05 2022 +0200
@@ -139,7 +139,7 @@
 continue
 if payment.party != line.party:
 continue
-if (getattr(payment, 'account')
+if (getattr(payment, 'account', None)
 and payment.account != line.account):
 continue
 if payment.amount <= payment_amount:



[tryton-commits] changeset in modules/sale_payment:6.4 Prevent error when payment...

2022-10-30 Thread Sergi Almacellas Abellana
changeset ee7663824563 in modules/sale_payment:6.4
details: 
https://hg.tryton.org/modules/sale_payment?cmd=changeset=ee7663824563
description:
Prevent error when payment has no account attribute

issue11780
review433581003
(grafted from 3d6541cd565795727707e19ca9e182b4537b22cb)
diffstat:

 account.py |  2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diffs (12 lines):

diff -r 1dc19965a5bc -r ee7663824563 account.py
--- a/account.pyMon May 02 17:38:51 2022 +0200
+++ b/account.pyThu Oct 13 08:12:05 2022 +0200
@@ -123,7 +123,7 @@
 continue
 if payment.party != line.party:
 continue
-if (getattr(payment, 'account')
+if (getattr(payment, 'account', None)
 and payment.account != line.account):
 continue
 if payment.amount <= payment_amount:



[tryton-commits] changeset in modules/product:default Use order_code when orderin...

2022-10-27 Thread Sergi Almacellas Abellana
changeset 0f55aab5e813 in modules/product:default
details: https://hg.tryton.org/modules/product?cmd=changeset=0f55aab5e813
description:
Use order_code when ordering on rec_name

issue11833
review412121003
diffstat:

 product.py |  4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diffs (21 lines):

diff -r d310fc6d024e -r 0f55aab5e813 product.py
--- a/product.pyThu Oct 27 13:24:21 2022 +0200
+++ b/product.pyThu Oct 27 13:53:05 2022 +0200
@@ -166,7 +166,7 @@
 @classmethod
 def order_rec_name(cls, tables):
 table, _ = tables[None]
-return [table.code, table.name]
+return cls.order_code(tables) + [table.name]
 
 def get_rec_name(self, name):
 if self.code:
@@ -543,7 +543,7 @@
 }
 else:
 template = tables['template']
-return [product.code] + Template.name.convert_order('name',
+return cls.order_code(tables) + Template.name.convert_order('name',
 tables['template'], Template)
 
 def get_rec_name(self, name):



[tryton-commits] changeset in weblate:default Translated using Weblate (Spanish)

2022-10-23 Thread Sergi Almacellas Abellana
changeset 1999b529e189 in weblate:default
details: https://hg.tryton.org/weblate?cmd=changeset=1999b529e189
description:
Translated using Weblate (Spanish)

Currently translated at 100.0% (63 of 63 strings)

Translation: Tryton/purchase_blanket_agreement
Translate-URL: 
https://translate.tryton.org/projects/tryton/purchase_blanket_agreement/es/
diffstat:

 modules/purchase_blanket_agreement/locale/es.po |  6 ++
 1 files changed, 2 insertions(+), 4 deletions(-)

diffs (36 lines):

diff -r 0401b53d65c1 -r 1999b529e189 
modules/purchase_blanket_agreement/locale/es.po
--- a/modules/purchase_blanket_agreement/locale/es.po   Sat Oct 22 16:15:43 
2022 +
+++ b/modules/purchase_blanket_agreement/locale/es.po   Sat Oct 22 15:50:08 
2022 +
@@ -3,7 +3,7 @@
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2022-10-17 10:29+\n"
-"PO-Revision-Date: 2022-10-18 12:36+\n"
+"PO-Revision-Date: 2022-10-23 16:14+\n"
 "Last-Translator: Sergi Almacellas Abellana \n"
 "Language-Team: LANGUAGE \n"
 "Language: es\n"
@@ -188,14 +188,13 @@
 "Para cambiar la unidad de la linea de acuerdo \"%(line)s\", tenéis que "
 "seleccionar una comptabile con las lineas de compra existentes."
 
-#, fuzzy
 msgctxt "model:ir.message,text:msg_quantity_greater_remaining"
 msgid ""
 "The quantity of line \"%(line)s\" is greater than the remaining quantity "
 "(%(remaining)s) of agreement \"%(agreement)s\"."
 msgstr ""
 "La cantidad de la linea \"%(line)s\" es mas grande que la cantidad restante "
-"(%(remaining)s) del acuerdo \"%(agreement)s\""
+"(%(remaining)s) del acuerdo \"%(agreement)s\"."
 
 msgctxt "model:ir.model.button,string:purchase_blanket_agreement_cancel_button"
 msgid "Cancel"
@@ -205,7 +204,6 @@
 msgid "Close"
 msgstr "Cerrar"
 
-#, fuzzy
 msgctxt ""
 "model:ir.model.button,string:"
 "purchase_blanket_agreement_create_purchase_button"



[tryton-commits] changeset in weblate:default Translated using Weblate (Catalan)

2022-10-23 Thread Sergi Almacellas Abellana
changeset ae4bb90ef19a in weblate:default
details: https://hg.tryton.org/weblate?cmd=changeset=ae4bb90ef19a
description:
Translated using Weblate (Catalan)

Currently translated at 100.0% (63 of 63 strings)

Translation: Tryton/purchase_blanket_agreement
Translate-URL: 
https://translate.tryton.org/projects/tryton/purchase_blanket_agreement/ca/
diffstat:

 modules/purchase_blanket_agreement/locale/ca.po |  6 --
 1 files changed, 4 insertions(+), 2 deletions(-)

diffs (30 lines):

diff -r 88107d1d554b -r ae4bb90ef19a 
modules/purchase_blanket_agreement/locale/ca.po
--- a/modules/purchase_blanket_agreement/locale/ca.po   Sat Oct 22 15:50:57 
2022 +
+++ b/modules/purchase_blanket_agreement/locale/ca.po   Sat Oct 22 15:48:00 
2022 +
@@ -3,7 +3,7 @@
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2022-10-22 09:27+\n"
-"PO-Revision-Date: 2022-10-22 09:34+\n"
+"PO-Revision-Date: 2022-10-23 16:14+\n"
 "Last-Translator: Sergi Almacellas Abellana \n"
 "Language-Team: LANGUAGE \n"
 "Language: ca\n"
@@ -192,6 +192,8 @@
 "The quantity of line \"%(line)s\" is greater than the remaining quantity "
 "(%(remaining)s) of agreement \"%(agreement)s\"."
 msgstr ""
+"La quantitat de la línia \"%(line)s\" es superior a la quantitat restant "
+"(%remaining)s\" de l'acord \"%(agreement)s\"."
 
 msgctxt "model:ir.model.button,string:purchase_blanket_agreement_cancel_button"
 msgid "Cancel"
@@ -205,7 +207,7 @@
 "model:ir.model.button,string:"
 "purchase_blanket_agreement_create_purchase_button"
 msgid "Create a Purchase"
-msgstr ""
+msgstr "Crea una compra"
 
 msgctxt "model:ir.model.button,string:purchase_blanket_agreement_draft_button"
 msgid "Draft"



[tryton-commits] changeset in weblate:default Translated using Weblate (Spanish)

2022-10-23 Thread Sergi Almacellas Abellana
changeset 88107d1d554b in weblate:default
details: https://hg.tryton.org/weblate?cmd=changeset=88107d1d554b
description:
Translated using Weblate (Spanish)

Currently translated at 100.0% (62 of 62 strings)

Translation: Tryton/sale_blanket_agreement
Translate-URL: 
https://translate.tryton.org/projects/tryton/sale_blanket_agreement/es/
diffstat:

 modules/sale_blanket_agreement/locale/es.po |  6 ++
 1 files changed, 2 insertions(+), 4 deletions(-)

diffs (36 lines):

diff -r 3e07320fd6fc -r 88107d1d554b modules/sale_blanket_agreement/locale/es.po
--- a/modules/sale_blanket_agreement/locale/es.po   Sat Oct 22 15:47:29 
2022 +
+++ b/modules/sale_blanket_agreement/locale/es.po   Sat Oct 22 15:50:57 
2022 +
@@ -3,7 +3,7 @@
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2022-10-17 10:29+\n"
-"PO-Revision-Date: 2022-10-18 12:36+\n"
+"PO-Revision-Date: 2022-10-23 16:14+\n"
 "Last-Translator: Sergi Almacellas Abellana \n"
 "Language-Team: LANGUAGE \n"
 "Language: es\n"
@@ -173,7 +173,6 @@
 "El acuerdo \"%(agreement)s\" que se quiere cerrar todavia tiene cantidades "
 "pendientes."
 
-#, fuzzy
 msgctxt "model:ir.message,text:msg_agreement_line_incompatible_unit"
 msgid ""
 "To change the unit of agreement line \"%(line)s\", you must choose one "
@@ -182,14 +181,13 @@
 "Para cambiar la unidad de la linea de acuerdo \"%(line)s\", tenéis que "
 "seleccionar una comptabile con las lineas de compra existentes."
 
-#, fuzzy
 msgctxt "model:ir.message,text:msg_quantity_greater_remaining"
 msgid ""
 "The quantity of line \"%(line)s\" is greater than the remaining quantity "
 "(%(remaining)s) of agreement \"%(agreement)s\"."
 msgstr ""
 "La cantidad de la linea \"%(line)s\" es mas grande que la cantidad restante "
-"(%(remaining)s) del acuerdo \"%(agreement)s\""
+"(%(remaining)s) del acuerdo \"%(agreement)s\"."
 
 msgctxt "model:ir.model.button,string:sale_blanket_agreement_cancel_button"
 msgid "Cancel"



[tryton-commits] changeset in weblate:default Translated using Weblate (Catalan)

2022-10-23 Thread Sergi Almacellas Abellana
changeset 3e07320fd6fc in weblate:default
details: https://hg.tryton.org/weblate?cmd=changeset=3e07320fd6fc
description:
Translated using Weblate (Catalan)

Currently translated at 100.0% (62 of 62 strings)

Translation: Tryton/sale_blanket_agreement
Translate-URL: 
https://translate.tryton.org/projects/tryton/sale_blanket_agreement/ca/
diffstat:

 modules/sale_blanket_agreement/locale/ca.po |  6 +-
 1 files changed, 5 insertions(+), 1 deletions(-)

diffs (29 lines):

diff -r 90541db0bafe -r 3e07320fd6fc modules/sale_blanket_agreement/locale/ca.po
--- a/modules/sale_blanket_agreement/locale/ca.po   Sat Oct 22 16:06:30 
2022 +
+++ b/modules/sale_blanket_agreement/locale/ca.po   Sat Oct 22 15:47:29 
2022 +
@@ -3,7 +3,7 @@
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2022-10-22 09:29+\n"
-"PO-Revision-Date: 2022-10-22 09:40+\n"
+"PO-Revision-Date: 2022-10-23 16:14+\n"
 "Last-Translator: Sergi Almacellas Abellana \n"
 "Language-Team: LANGUAGE \n"
 "Language: ca\n"
@@ -177,12 +177,16 @@
 "To change the unit of agreement line \"%(line)s\", you must choose one "
 "compatible with the existing sale lines."
 msgstr ""
+"Per canviar l'unitat de la línia d'acord \"%(line)s\", heu d'escollir una "
+"compatible amb les línies de venda existents."
 
 msgctxt "model:ir.message,text:msg_quantity_greater_remaining"
 msgid ""
 "The quantity of line \"%(line)s\" is greater than the remaining quantity "
 "(%(remaining)s) of agreement \"%(agreement)s\"."
 msgstr ""
+"La quantitat de la línia \"%(line)s\" es superior a la quantitat restant "
+"(%remaining)s\" de l'acord \"%(agreement)s\"."
 
 msgctxt "model:ir.model.button,string:sale_blanket_agreement_cancel_button"
 msgid "Cancel"



[tryton-commits] changeset in weblate:default Translated using Weblate (Catalan)

2022-10-23 Thread Sergi Almacellas Abellana
changeset 90541db0bafe in weblate:default
details: https://hg.tryton.org/weblate?cmd=changeset=90541db0bafe
description:
Translated using Weblate (Catalan)

Currently translated at 100.0% (30 of 30 strings)

Translation: Tryton/sale_product_recommendation_association_rule
Translate-URL: 
https://translate.tryton.org/projects/tryton/sale_product_recommendation_association_rule/ca/
diffstat:

 modules/sale_product_recommendation_association_rule/locale/ca.po |  4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diffs (21 lines):

diff -r ab3869d839dd -r 90541db0bafe 
modules/sale_product_recommendation_association_rule/locale/ca.po
--- a/modules/sale_product_recommendation_association_rule/locale/ca.po Sat Oct 
22 16:16:44 2022 +
+++ b/modules/sale_product_recommendation_association_rule/locale/ca.po Sat Oct 
22 16:06:30 2022 +
@@ -3,7 +3,7 @@
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2022-10-22 11:06+\n"
-"PO-Revision-Date: 2022-10-22 11:09+\n"
+"PO-Revision-Date: 2022-10-23 16:14+\n"
 "Last-Translator: Sergi Almacellas Abellana \n"
 "Language-Team: LANGUAGE \n"
 "Language: ca\n"
@@ -35,7 +35,7 @@
 
 msgctxt "field:sale.product.association.rule,antecedents:"
 msgid "Antecedents"
-msgstr "Atencedents"
+msgstr "Antecedents"
 
 msgctxt "field:sale.product.association.rule,confidence:"
 msgid "Confidence"



[tryton-commits] changeset in weblate:default Translated using Weblate (Spanish)

2022-10-23 Thread Sergi Almacellas Abellana
changeset d026c55c2c59 in weblate:default
details: https://hg.tryton.org/weblate?cmd=changeset=d026c55c2c59
description:
Translated using Weblate (Spanish)

Currently translated at 100.0% (56 of 56 strings)

Translation: Tryton/account_consolidation
Translate-URL: 
https://translate.tryton.org/projects/tryton/account_consolidation/es/
diffstat:

 modules/account_consolidation/locale/es.po |  5 ++---
 1 files changed, 2 insertions(+), 3 deletions(-)

diffs (24 lines):

diff -r 34822bcc1aaa -r d026c55c2c59 modules/account_consolidation/locale/es.po
--- a/modules/account_consolidation/locale/es.poSat Oct 22 15:48:48 
2022 +
+++ b/modules/account_consolidation/locale/es.poSat Oct 22 15:50:28 
2022 +
@@ -3,7 +3,7 @@
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2022-10-14 11:04+\n"
-"PO-Revision-Date: 2022-10-22 09:46+\n"
+"PO-Revision-Date: 2022-10-23 16:14+\n"
 "Last-Translator: Sergi Almacellas Abellana \n"
 "Language-Team: LANGUAGE \n"
 "Language: es\n"
@@ -185,10 +185,9 @@
 msgid "Balance Sheet"
 msgstr "Balance de situación"
 
-#, fuzzy
 msgctxt "report:account.consolidation.statement:"
 msgid "Companies:"
-msgstr "Empresas"
+msgstr "Empresas:"
 
 msgctxt "report:account.consolidation.statement:"
 msgid "Date:"



[tryton-commits] changeset in weblate:default Translated using Weblate (Catalan)

2022-10-23 Thread Sergi Almacellas Abellana
changeset 34822bcc1aaa in weblate:default
details: https://hg.tryton.org/weblate?cmd=changeset=34822bcc1aaa
description:
Translated using Weblate (Catalan)

Currently translated at 100.0% (56 of 56 strings)

Translation: Tryton/account_consolidation
Translate-URL: 
https://translate.tryton.org/projects/tryton/account_consolidation/ca/
diffstat:

 modules/account_consolidation/locale/ca.po |  4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diffs (21 lines):

diff -r 2fe1d7d0dfbf -r 34822bcc1aaa modules/account_consolidation/locale/ca.po
--- a/modules/account_consolidation/locale/ca.poSat Oct 22 21:14:08 
2022 +
+++ b/modules/account_consolidation/locale/ca.poSat Oct 22 15:48:48 
2022 +
@@ -3,7 +3,7 @@
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2022-10-22 09:40+\n"
-"PO-Revision-Date: 2022-10-22 09:46+\n"
+"PO-Revision-Date: 2022-10-23 16:14+\n"
 "Last-Translator: Sergi Almacellas Abellana \n"
 "Language-Team: LANGUAGE \n"
 "Language: ca\n"
@@ -187,7 +187,7 @@
 
 msgctxt "report:account.consolidation.statement:"
 msgid "Companies:"
-msgstr ""
+msgstr "Empreses:"
 
 msgctxt "report:account.consolidation.statement:"
 msgid "Date:"



[tryton-commits] changeset in weblate:default Translated using Weblate (Spanish)

2022-10-23 Thread Sergi Almacellas Abellana
changeset 30040c103274 in weblate:default
details: https://hg.tryton.org/weblate?cmd=changeset=30040c103274
description:
Translated using Weblate (Spanish)

Currently translated at 100.0% (65 of 65 strings)

Translation: Tryton/carrier_carriage
Translate-URL: 
https://translate.tryton.org/projects/tryton/carrier_carriage/es/
diffstat:

 modules/carrier_carriage/locale/es.po |  10 +-
 1 files changed, 5 insertions(+), 5 deletions(-)

diffs (44 lines):

diff -r 601ec3dda105 -r 30040c103274 modules/carrier_carriage/locale/es.po
--- a/modules/carrier_carriage/locale/es.po Sat Oct 22 16:00:42 2022 +
+++ b/modules/carrier_carriage/locale/es.po Sat Oct 22 16:02:27 2022 +
@@ -3,7 +3,7 @@
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2022-10-14 11:04+\n"
-"PO-Revision-Date: 2022-10-22 09:07+\n"
+"PO-Revision-Date: 2022-10-23 16:14+\n"
 "Last-Translator: Sergi Almacellas Abellana \n"
 "Language-Team: LANGUAGE \n"
 "Language: es\n"
@@ -19,11 +19,11 @@
 
 msgctxt "field:incoterm.incoterm,after_carrier:"
 msgid "After Carrier"
-msgstr "Después del transporte"
+msgstr "Después del transportista"
 
 msgctxt "field:incoterm.incoterm,before_carrier:"
 msgid "Before Carrier"
-msgstr "Antes del transporte"
+msgstr "Antes del transportista"
 
 msgctxt "field:sale.carriage,available_carriers:"
 msgid "Available Carriers"
@@ -183,7 +183,7 @@
 
 msgctxt "help:incoterm.incoterm,after_carrier:"
 msgid "Who contracts carriages after main carriage."
-msgstr "Quien contrato los transportes siguientes al transporte principal."
+msgstr "Quien contrata los transportes siguientes al transporte principal."
 
 msgctxt "help:incoterm.incoterm,before_carrier:"
 msgid "Who contracts carriages before main carriage."
@@ -227,7 +227,7 @@
 
 msgctxt "model:ir.message,text:msg_shipment_carriage_delete"
 msgid "You cannot delete the carriage \"%(carriage)s\"."
-msgstr ""
+msgstr "No se puede eliminar el transporte \"%(carriage)s\"."
 
 msgctxt "model:sale.carriage,name:"
 msgid "Sale Carriage"



[tryton-commits] changeset in weblate:default Translated using Weblate (Catalan)

2022-10-23 Thread Sergi Almacellas Abellana
changeset 601ec3dda105 in weblate:default
details: https://hg.tryton.org/weblate?cmd=changeset=601ec3dda105
description:
Translated using Weblate (Catalan)

Currently translated at 100.0% (65 of 65 strings)

Translation: Tryton/carrier_carriage
Translate-URL: 
https://translate.tryton.org/projects/tryton/carrier_carriage/ca/
diffstat:

 modules/carrier_carriage/locale/ca.po |  145 ++---
 1 files changed, 80 insertions(+), 65 deletions(-)

diffs (343 lines):

diff -r 961b9c6c6c98 -r 601ec3dda105 modules/carrier_carriage/locale/ca.po
--- a/modules/carrier_carriage/locale/ca.po Sat Oct 22 16:16:15 2022 +
+++ b/modules/carrier_carriage/locale/ca.po Sat Oct 22 16:00:42 2022 +
@@ -1,259 +1,274 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2022-10-23 16:14+\n"
+"PO-Revision-Date: 2022-10-23 16:14+\n"
+"Last-Translator: Sergi Almacellas Abellana \n"
+"Language-Team: LANGUAGE \n"
+"Language: ca\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=n != 1;\n"
+"X-Generator: Weblate 4.14.1\n"
+
 msgctxt "field:account.invoice.line,cost_shipment_carriages:"
 msgid "Cost of Shipment Carriages"
-msgstr ""
+msgstr "Cost del transport"
 
 msgctxt "field:incoterm.incoterm,after_carrier:"
 msgid "After Carrier"
-msgstr ""
+msgstr "Despres del transportista"
 
 msgctxt "field:incoterm.incoterm,before_carrier:"
 msgid "Before Carrier"
-msgstr ""
+msgstr "Abans del transportista"
 
 msgctxt "field:sale.carriage,available_carriers:"
 msgid "Available Carriers"
-msgstr ""
+msgstr "Transportistes disponibles"
 
 msgctxt "field:sale.carriage,carrier:"
 msgid "Carrier"
-msgstr ""
+msgstr "Transportista"
 
 msgctxt "field:sale.carriage,cost_method:"
 msgid "Cost Method"
-msgstr ""
+msgstr "Mètode de cost"
 
 msgctxt "field:sale.carriage,from_:"
 msgid "From"
-msgstr ""
+msgstr "Des de"
 
 msgctxt "field:sale.carriage,sale:"
 msgid "Sale"
-msgstr ""
+msgstr "Venda"
 
 msgctxt "field:sale.carriage,sale_state:"
 msgid "Sale State"
-msgstr ""
+msgstr "Estat de la venda"
 
 msgctxt "field:sale.carriage,to:"
 msgid "To"
-msgstr ""
+msgstr "Fins"
 
 msgctxt "field:sale.carriage,type:"
 msgid "Type"
-msgstr ""
+msgstr "Tipus"
 
 msgctxt "field:sale.sale,after_carriages:"
 msgid "After Carriages"
-msgstr ""
+msgstr "Trasnports següents"
 
 msgctxt "field:sale.sale,before_carriages:"
 msgid "Before Carriages"
-msgstr ""
+msgstr "Transports anteriors"
 
 msgctxt "field:sale.sale,carriages:"
 msgid "Carriages"
-msgstr ""
+msgstr "Transports"
 
 msgctxt "field:stock.shipment.carriage,carrier:"
 msgid "Carrier"
-msgstr ""
+msgstr "Transportista"
 
 msgctxt "field:stock.shipment.carriage,company:"
 msgid "Company"
-msgstr ""
+msgstr "Empresa"
 
 msgctxt "field:stock.shipment.carriage,cost:"
 msgid "Cost"
-msgstr ""
+msgstr "Cost"
 
 msgctxt "field:stock.shipment.carriage,cost_currency:"
 msgid "Cost Currency"
-msgstr ""
+msgstr "Moneda cost"
 
 msgctxt "field:stock.shipment.carriage,cost_currency_used:"
 msgid "Cost Currency"
-msgstr ""
+msgstr "Moneda cost"
 
 msgctxt "field:stock.shipment.carriage,cost_edit:"
 msgid "Edit Cost"
-msgstr ""
+msgstr "Edita cost"
 
 msgctxt "field:stock.shipment.carriage,cost_invoice_line:"
 msgid "Cost Invoice Line"
-msgstr ""
+msgstr "Línia de factura del cost"
 
 msgctxt "field:stock.shipment.carriage,cost_method:"
 msgid "Cost Method"
-msgstr ""
+msgstr "Mètode de cost"
 
 msgctxt "field:stock.shipment.carriage,cost_sale:"
 msgid "Cost Sale"
-msgstr ""
+msgstr "Cost de la venda"
 
 msgctxt "field:stock.shipment.carriage,cost_sale_currency:"
 msgid "Cost Sale Currency"
-msgstr ""
+msgstr "Moneda de cost de la venda"
 
 msgctxt "field:stock.shipment.carriage,cost_sale_curre

[tryton-commits] changeset in weblate:default Translated using Weblate (Spanish)

2022-10-23 Thread Sergi Almacellas Abellana
changeset 48be0ea6874a in weblate:default
details: https://hg.tryton.org/weblate?cmd=changeset=48be0ea6874a
description:
Translated using Weblate (Spanish)

Currently translated at 100.0% (51 of 51 strings)

Translation: Tryton/stock_package_shipping_mygls
Translate-URL: 
https://translate.tryton.org/projects/tryton/stock_package_shipping_mygls/es/
diffstat:

 modules/stock_package_shipping_mygls/locale/es.po |  5 ++---
 1 files changed, 2 insertions(+), 3 deletions(-)

diffs (28 lines):

diff -r ffa8aa20784b -r 48be0ea6874a 
modules/stock_package_shipping_mygls/locale/es.po
--- a/modules/stock_package_shipping_mygls/locale/es.po Sat Oct 22 15:48:30 
2022 +
+++ b/modules/stock_package_shipping_mygls/locale/es.po Sat Oct 22 15:50:49 
2022 +
@@ -3,7 +3,7 @@
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2021-10-25 23:59+\n"
-"PO-Revision-Date: 2022-10-18 12:36+\n"
+"PO-Revision-Date: 2022-10-23 16:14+\n"
 "Last-Translator: Sergi Almacellas Abellana \n"
 "Language-Team: LANGUAGE \n"
 "Language: es\n"
@@ -85,14 +85,13 @@
 "Para validar el albarán \"%(shipment)s\" debe agregar un correo electrónico "
 "a la dirección \"%(address)s\"."
 
-#, fuzzy
 msgctxt "model:ir.message,text:msg_mobile_required"
 msgid ""
 "To validate shipment \"%(shipment)s\" you must add a mobile number for "
 "address \"%(address)s\"."
 msgstr ""
 "Para validar el albarán \"%(shipment)s\" debe agregar un número de móvil a "
-"la dirección \"%(party)s\"."
+"la dirección \"%(address)s\"."
 
 msgctxt "model:ir.message,text:msg_mygls_api_error"
 msgid ""



[tryton-commits] changeset in weblate:default Translated using Weblate (Catalan)

2022-10-23 Thread Sergi Almacellas Abellana
changeset ffa8aa20784b in weblate:default
details: https://hg.tryton.org/weblate?cmd=changeset=ffa8aa20784b
description:
Translated using Weblate (Catalan)

Currently translated at 100.0% (51 of 51 strings)

Translation: Tryton/stock_package_shipping_mygls
Translate-URL: 
https://translate.tryton.org/projects/tryton/stock_package_shipping_mygls/ca/
diffstat:

 modules/stock_package_shipping_mygls/locale/ca.po |  7 +++
 1 files changed, 3 insertions(+), 4 deletions(-)

diffs (29 lines):

diff -r 109462a8a865 -r ffa8aa20784b 
modules/stock_package_shipping_mygls/locale/ca.po
--- a/modules/stock_package_shipping_mygls/locale/ca.po Sat Oct 22 21:21:27 
2022 +
+++ b/modules/stock_package_shipping_mygls/locale/ca.po Sat Oct 22 15:48:30 
2022 +
@@ -3,7 +3,7 @@
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2021-10-22 12:15+\n"
-"PO-Revision-Date: 2022-10-22 11:18+\n"
+"PO-Revision-Date: 2022-10-23 16:14+\n"
 "Last-Translator: Sergi Almacellas Abellana \n"
 "Language-Team: LANGUAGE \n"
 "Language: ca\n"
@@ -85,14 +85,13 @@
 "Per validar l'albarà \"%(shipment)s\", heu d'afegir un correu electrònic a "
 "l'adreça \"%(address)s\"."
 
-#, fuzzy
 msgctxt "model:ir.message,text:msg_mobile_required"
 msgid ""
 "To validate shipment \"%(shipment)s\" you must add a mobile number for "
 "address \"%(address)s\"."
 msgstr ""
-"Per validar l'albarà \"%(shipment)s\", heu d'afegir un número de mòbil al "
-"tercer \"%(party)s\"."
+"Per validar l'albarà \"%(shipment)s\", heu d'afegir un número de mòbil a "
+"l'adreça \"%(address)s\"."
 
 msgctxt "model:ir.message,text:msg_mygls_api_error"
 msgid ""



[tryton-commits] changeset in weblate:default Translated using Weblate (Spanish)

2022-10-23 Thread Sergi Almacellas Abellana
changeset 6cd662420210 in weblate:default
details: https://hg.tryton.org/weblate?cmd=changeset=6cd662420210
description:
Translated using Weblate (Spanish)

Currently translated at 100.0% (106 of 106 strings)

Translation: Tryton/stock_lot
Translate-URL: 
https://translate.tryton.org/projects/tryton/stock_lot/es/
diffstat:

 modules/stock_lot/locale/es.po |  5 ++---
 1 files changed, 2 insertions(+), 3 deletions(-)

diffs (22 lines):

diff -r ba03bddc1e94 -r 6cd662420210 modules/stock_lot/locale/es.po
--- a/modules/stock_lot/locale/es.poSat Oct 22 15:48:53 2022 +
+++ b/modules/stock_lot/locale/es.poSat Oct 22 15:51:20 2022 +
@@ -1,8 +1,8 @@
 #
 msgid ""
 msgstr ""
-"PO-Revision-Date: 2022-10-17 11:45+\n"
-"Last-Translator: Hodei Navarro \n"
+"PO-Revision-Date: 2022-10-23 16:14+\n"
+"Last-Translator: Sergi Almacellas Abellana \n"
 "Language: es\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
@@ -202,7 +202,6 @@
 msgid "Quantity"
 msgstr "Cantidad"
 
-#, fuzzy
 msgctxt "field:stock.move.add.lots.start.lot,quantity_unit:"
 msgid "Unit"
 msgstr "Unidad"



[tryton-commits] changeset in weblate:default Translated using Weblate (Catalan)

2022-10-23 Thread Sergi Almacellas Abellana
changeset ba03bddc1e94 in weblate:default
details: https://hg.tryton.org/weblate?cmd=changeset=ba03bddc1e94
description:
Translated using Weblate (Catalan)

Currently translated at 100.0% (106 of 106 strings)

Translation: Tryton/stock_lot
Translate-URL: 
https://translate.tryton.org/projects/tryton/stock_lot/ca/
diffstat:

 modules/stock_lot/locale/ca.po |  7 +++
 1 files changed, 3 insertions(+), 4 deletions(-)

diffs (28 lines):

diff -r 7715fa832a93 -r ba03bddc1e94 modules/stock_lot/locale/ca.po
--- a/modules/stock_lot/locale/ca.poSat Oct 22 21:24:26 2022 +
+++ b/modules/stock_lot/locale/ca.poSat Oct 22 15:48:53 2022 +
@@ -1,13 +1,13 @@
 #
 msgid ""
 msgstr ""
-"PO-Revision-Date: 2022-04-11 16:11+\n"
-"Last-Translator: David Blanco Bautista \n"
+"PO-Revision-Date: 2022-10-23 16:14+\n"
+"Last-Translator: Sergi Almacellas Abellana \n"
 "Language: ca\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=n != 1;\n"
-"X-Generator: Weblate 4.11.2\n"
+"X-Generator: Weblate 4.14.1\n"
 
 msgctxt "field:product.configuration,default_lot_sequence:"
 msgid "Default Lot Sequence"
@@ -202,7 +202,6 @@
 msgid "Quantity"
 msgstr "Quantitat"
 
-#, fuzzy
 msgctxt "field:stock.move.add.lots.start.lot,quantity_unit:"
 msgid "Unit"
 msgstr "Unitat"



[tryton-commits] changeset in weblate:default Translated using Weblate (Catalan)

2022-10-23 Thread Sergi Almacellas Abellana
changeset b3e051a30d9f in weblate:default
details: https://hg.tryton.org/weblate?cmd=changeset=b3e051a30d9f
description:
Translated using Weblate (Catalan)

Currently translated at 100.0% (109 of 109 strings)

Translation: Tryton/marketing_automation
Translate-URL: 
https://translate.tryton.org/projects/tryton/marketing_automation/ca/
diffstat:

 modules/marketing_automation/locale/ca.po |  27 ++-
 1 files changed, 10 insertions(+), 17 deletions(-)

diffs (101 lines):

diff -r bb9466520831 -r b3e051a30d9f modules/marketing_automation/locale/ca.po
--- a/modules/marketing_automation/locale/ca.po Sat Oct 22 16:16:29 2022 +
+++ b/modules/marketing_automation/locale/ca.po Sat Oct 22 15:55:30 2022 +
@@ -1,13 +1,13 @@
 #
 msgid ""
 msgstr ""
-"PO-Revision-Date: 2020-10-15 21:53+\n"
+"PO-Revision-Date: 2022-10-23 16:14+\n"
 "Last-Translator: Sergi Almacellas Abellana \n"
 "Language: ca\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=n != 1;\n"
-"X-Generator: Weblate 4.2.2\n"
+"X-Generator: Weblate 4.14.1\n"
 
 msgctxt "field:marketing.automation.activity,action:"
 msgid "Action"
@@ -145,35 +145,30 @@
 msgid "State"
 msgstr "Estat"
 
-#, fuzzy
 msgctxt "field:marketing.automation.scenario,unsubscribable:"
 msgid "Unsubscribable"
 msgstr "Donar-se de baixa"
 
-#, fuzzy
 msgctxt "field:party.party,marketing_party:"
 msgid "Marketing Party"
-msgstr "Activitat de màrqueting"
+msgstr "Tercer de màrqueting"
 
-#, fuzzy
 msgctxt "field:party.party,marketing_scenario_unsubscribed:"
 msgid "Marketing Automation Scenario Unsubscribed"
-msgstr "Baixa d'automatització de màrqueting"
+msgstr "Escenàris d'automatització de màrqueting no subscrits"
 
 msgctxt "field:party.party-unsubscribed-marketing.automation.scenario,party:"
 msgid "Party"
-msgstr ""
+msgstr "Tercer"
 
-#, fuzzy
 msgctxt ""
 "field:party.party-unsubscribed-marketing.automation.scenario,scenario:"
 msgid "Scenario"
 msgstr "Escenari"
 
-#, fuzzy
 msgctxt "field:sale.sale,marketing_party:"
 msgid "Marketing Party"
-msgstr "Activitat de màrqueting"
+msgstr "Tercer de màrqueting"
 
 msgctxt "help:marketing.automation.activity,condition:"
 msgid ""
@@ -224,7 +219,7 @@
 
 msgctxt "help:marketing.automation.scenario,unsubscribable:"
 msgid "If checked parties are also unsubscribed from the scenario."
-msgstr ""
+msgstr "Si es marca els tercer també es de-suscribeixen de l'escenari."
 
 msgctxt "model:ir.action,name:act_activity_tree"
 msgid "Activities"
@@ -337,10 +332,9 @@
 msgid "E-Mail Opened"
 msgstr "Correu electrònic obert"
 
-#, fuzzy
 msgctxt "model:ir.model.button,string:record_block_button"
 msgid "Block"
-msgstr "Bloquejat"
+msgstr "Bloqueja"
 
 msgctxt "model:ir.model.button,string:scenario_draft_button"
 msgid "Draft"
@@ -376,7 +370,7 @@
 
 msgctxt "model:party.party-unsubscribed-marketing.automation.scenario,name:"
 msgid "Party Unsubscribed Scenario"
-msgstr ""
+msgstr "Escenaris de-suscrits del tercer"
 
 msgctxt "report:marketing.automation.unsubscribe:"
 msgid "Unsubscribe"
@@ -493,10 +487,9 @@
 msgid "Time"
 msgstr "Hora"
 
-#, fuzzy
 msgctxt "view:party.party:"
 msgid "Marketing Automation"
-msgstr "Baixa d'automatització de màrqueting"
+msgstr "Automatització de màrqueting"
 
 #, fuzzy
 #~ msgctxt "field:marketing.automation.activity,create_date:"



[tryton-commits] changeset in weblate:default Translated using Weblate (Spanish)

2022-10-23 Thread Sergi Almacellas Abellana
changeset 2c53318993f4 in weblate:default
details: https://hg.tryton.org/weblate?cmd=changeset=2c53318993f4
description:
Translated using Weblate (Spanish)

Currently translated at 100.0% (54 of 54 strings)

Translation: Tryton/currency
Translate-URL: https://translate.tryton.org/projects/tryton/currency/es/
diffstat:

 modules/currency/locale/es.po |  8 
 1 files changed, 4 insertions(+), 4 deletions(-)

diffs (29 lines):

diff -r 8f4ca06d3fea -r 2c53318993f4 modules/currency/locale/es.po
--- a/modules/currency/locale/es.po Sat Oct 22 15:48:42 2022 +
+++ b/modules/currency/locale/es.po Sat Oct 22 15:51:27 2022 +
@@ -1,13 +1,13 @@
 #
 msgid ""
 msgstr ""
-"PO-Revision-Date: 2022-04-20 10:15+\n"
-"Last-Translator: Hodei Navarro \n"
+"PO-Revision-Date: 2022-10-23 16:14+\n"
+"Last-Translator: Sergi Almacellas Abellana \n"
 "Language: es\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=n != 1;\n"
-"X-Generator: Weblate 4.11.2\n"
+"X-Generator: Weblate 4.14.1\n"
 
 msgctxt "field:currency.cron,currencies:"
 msgid "Currencies"
@@ -217,7 +217,7 @@
 
 msgctxt "selection:currency.cron,source:"
 msgid "European Central Bank"
-msgstr ""
+msgstr "Banco cnetral europeo"
 
 msgctxt "selection:ir.cron,method:"
 msgid "Update Currency Rates"



[tryton-commits] changeset in weblate:default Translated using Weblate (Catalan)

2022-10-23 Thread Sergi Almacellas Abellana
changeset 8f4ca06d3fea in weblate:default
details: https://hg.tryton.org/weblate?cmd=changeset=8f4ca06d3fea
description:
Translated using Weblate (Catalan)

Currently translated at 100.0% (54 of 54 strings)

Translation: Tryton/currency
Translate-URL: https://translate.tryton.org/projects/tryton/currency/ca/
diffstat:

 modules/currency/locale/ca.po |  6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)

diffs (28 lines):

diff -r 928ecad9016e -r 8f4ca06d3fea modules/currency/locale/ca.po
--- a/modules/currency/locale/ca.po Sat Oct 22 15:40:25 2022 +
+++ b/modules/currency/locale/ca.po Sat Oct 22 15:48:42 2022 +
@@ -1,13 +1,13 @@
 #
 msgid ""
 msgstr ""
-"PO-Revision-Date: 2022-04-20 10:15+\n"
+"PO-Revision-Date: 2022-10-23 16:14+\n"
 "Last-Translator: Sergi Almacellas Abellana \n"
 "Language: ca\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=n != 1;\n"
-"X-Generator: Weblate 4.11.2\n"
+"X-Generator: Weblate 4.14.1\n"
 
 msgctxt "field:currency.cron,currencies:"
 msgid "Currencies"
@@ -217,7 +217,7 @@
 
 msgctxt "selection:currency.cron,source:"
 msgid "European Central Bank"
-msgstr ""
+msgstr "Banc central Europeu"
 
 msgctxt "selection:ir.cron,method:"
 msgid "Update Currency Rates"



  1   2   3   4   5   6   7   8   9   10   >