[jira] [Commented] (FINERACT-1097) SchedularJob IT tests failing(org.awaitility.core.ConditionTimeoutException)

2020-07-26 Thread Yemdjih Kaze Nasser (Jira)


[ 
https://issues.apache.org/jira/browse/FINERACT-1097?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17165418#comment-17165418
 ] 

Yemdjih Kaze Nasser commented on FINERACT-1097:
---

You are right about that. So this error is only likely to occur locally in 
development as we do cause on travis each IT test I think run on a fresh 
database so we will never have the error popup there.

Concerning an appropriate solution, maybe we could use some data from 
fineract.dev([~vorburger] what do you think?) though I'm not sure if the data 
from there is even close to being realistic enough. If IT tests are not enough 
I can't really think of a way of simulating real world conditions for this.

> SchedularJob IT tests failing(org.awaitility.core.ConditionTimeoutException)
> 
>
> Key: FINERACT-1097
> URL: https://issues.apache.org/jira/browse/FINERACT-1097
> Project: Apache Fineract
>  Issue Type: Bug
>Affects Versions: 1.4.0
>Reporter: Yemdjih Kaze Nasser
>Priority: Major
>
> While looking into 
> [FINERACT-1069|https://issues.apache.org/jira/browse/FINERACT-1069], I 
> stumbled upon some schedular IT test errors which I faced when working on 
> migrating the JPA so originally I thought something was wrong with some of 
> the changes I made. Seeing thesame error with OpenJPA on branch develop tells 
> me this deserves more attention. Here are the logs:
>  
> {code:java}
> SchedulerJobsTest > testTriggeringManualExecutionOfAllSchedulerJobs() FAILED
>     org.awaitility.core.ConditionTimeoutException: Lambda expression in 
> org.apache.fineract.integrationtests.common.SchedulerJobHelper: expected the 
> predicate to ret
> urn  but it returned  for input of <{version=4, 
> jobRunStartTime=2020-07-26T16:52:28Z, jobRunEndTime=2020-07-26T16:52:47Z, 
> status=success, triggerType=ap
> plication}> within 30 seconds.
>     at 
> org.awaitility.core.ConditionAwaiter.await(ConditionAwaiter.java:165)
>     at 
> org.awaitility.core.AbstractHamcrestCondition.await(AbstractHamcrestCondition.java:86)
>     at 
> org.awaitility.core.ConditionFactory.until(ConditionFactory.java:895)
>     at 
> org.awaitility.core.ConditionFactory.until(ConditionFactory.java:601)
>     at 
> org.awaitility.core.ConditionFactory.until(ConditionFactory.java:618)
>     at 
> org.apache.fineract.integrationtests.common.SchedulerJobHelper.executeAndAwaitJob(SchedulerJobHelper.java:165)
>     at 
> org.apache.fineract.integrationtests.SchedulerJobsTest.testTriggeringManualExecutionOfAllSchedulerJobs(SchedulerJobsTest.java:132)
>     Caused by:
>     java.util.concurrent.TimeoutException
>     at 
> java.base/java.util.concurrent.FutureTask.get(FutureTask.java:204)
>     at 
> org.awaitility.core.Uninterruptibles.getUninterruptibly(Uninterruptibles.java:101)
>     at 
> org.awaitility.core.Uninterruptibles.getUninterruptibly(Uninterruptibles.java:81)
>     at 
> org.awaitility.core.ConditionAwaiter.await(ConditionAwaiter.java:101)
>     ... 6 more
> SchedulerJobsTestResults > testUpdateAccountingRunningBalancesJobOutcome() 
> FAILED
>     org.awaitility.core.ConditionTimeoutException: Lambda expression in 
> org.apache.fineract.integrationtests.common.SchedulerJobHelper: expected the 
> predicate to ret
> urn  but it returned  for input of <{version=1, 
> jobRunStartTime=2020-07-16T18:31:00Z, jobRunEndTime=2020-07-16T18:31:00Z, 
> status=success, triggerType=cr
> on}> within 30 seconds.
>     at 
> org.awaitility.core.ConditionAwaiter.await(ConditionAwaiter.java:165)
>     at 
> org.awaitility.core.AbstractHamcrestCondition.await(AbstractHamcrestCondition.java:86)
>     at 
> org.awaitility.core.ConditionFactory.until(ConditionFactory.java:895)
>     at 
> org.awaitility.core.ConditionFactory.until(ConditionFactory.java:601)
>     at 
> org.awaitility.core.ConditionFactory.until(ConditionFactory.java:618)
>     at 
> org.apache.fineract.integrationtests.common.SchedulerJobHelper.executeAndAwaitJob(SchedulerJobHelper.java:165)
>     at 
> org.apache.fineract.integrationtests.SchedulerJobsTestResults.testUpdateAccountingRunningBalancesJobOutcome(SchedulerJobsTestResults.java:423)
> SchedulerJobsTestResults > testInterestPostingForSavingsJobOutcome() FAILED
>     org.awaitility.core.ConditionTimeoutException: Lambda expression in 
> org.apache.fineract.integrationtests.common.SchedulerJobHelper: expected the 
> predicate to ret
> urn  but it returned  for input of <{version=5, 
> jobRunStartTime=2020-07-26T18:11:18Z, jobRunEndTime=2020-07-26T18:12:54Z, 
> status=success, triggerType=ap
> plication}> within 30 seconds.
>     at 
> org.awaitility.core.ConditionAwaiter.await(ConditionAwaiter.java:165)
>     at 
> 

[jira] [Commented] (FINERACT-1097) SchedularJob IT tests failing(org.awaitility.core.ConditionTimeoutException)

2020-07-26 Thread Petri Tuomola (Jira)


[ 
https://issues.apache.org/jira/browse/FINERACT-1097?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17165402#comment-17165402
 ] 

Petri Tuomola commented on FINERACT-1097:
-

Hi [~kaze] - I've hit the same issue before, and by extending the timeout for 
the tests from 30 seconds to a much larger number the scheduled jobs completed 
without issues.

It seems that some of the scheduled jobs are pretty inefficient at processing 
the data. If you run the integration tests with an empty database, the jobs 
pass within the 30 second timeout. But if you have already ran the integration 
tests multiple times (and hence have some more data in the database), the 
processing takes too long to complete in 30 seconds and you get this error.

In general I think it would definitely be a good idea to look to performance 
tune the batch jobs (as well as the rest of Fineract!). But in my view it would 
be good to do this performance tuning with realistic data, workload & setup - 
so that the performance tuning actually helps real Fineract installations and 
not just the integration tests. 

> SchedularJob IT tests failing(org.awaitility.core.ConditionTimeoutException)
> 
>
> Key: FINERACT-1097
> URL: https://issues.apache.org/jira/browse/FINERACT-1097
> Project: Apache Fineract
>  Issue Type: Bug
>Affects Versions: 1.4.0
>Reporter: Yemdjih Kaze Nasser
>Priority: Major
>
> While looking into 
> [FINERACT-1069|https://issues.apache.org/jira/browse/FINERACT-1069], I 
> stumbled upon some schedular IT test errors which I faced when working on 
> migrating the JPA so originally I thought something was wrong with some of 
> the changes I made. Seeing thesame error with OpenJPA on branch develop tells 
> me this deserves more attention. Here are the logs:
>  
> {code:java}
> SchedulerJobsTest > testTriggeringManualExecutionOfAllSchedulerJobs() FAILED
>     org.awaitility.core.ConditionTimeoutException: Lambda expression in 
> org.apache.fineract.integrationtests.common.SchedulerJobHelper: expected the 
> predicate to ret
> urn  but it returned  for input of <{version=4, 
> jobRunStartTime=2020-07-26T16:52:28Z, jobRunEndTime=2020-07-26T16:52:47Z, 
> status=success, triggerType=ap
> plication}> within 30 seconds.
>     at 
> org.awaitility.core.ConditionAwaiter.await(ConditionAwaiter.java:165)
>     at 
> org.awaitility.core.AbstractHamcrestCondition.await(AbstractHamcrestCondition.java:86)
>     at 
> org.awaitility.core.ConditionFactory.until(ConditionFactory.java:895)
>     at 
> org.awaitility.core.ConditionFactory.until(ConditionFactory.java:601)
>     at 
> org.awaitility.core.ConditionFactory.until(ConditionFactory.java:618)
>     at 
> org.apache.fineract.integrationtests.common.SchedulerJobHelper.executeAndAwaitJob(SchedulerJobHelper.java:165)
>     at 
> org.apache.fineract.integrationtests.SchedulerJobsTest.testTriggeringManualExecutionOfAllSchedulerJobs(SchedulerJobsTest.java:132)
>     Caused by:
>     java.util.concurrent.TimeoutException
>     at 
> java.base/java.util.concurrent.FutureTask.get(FutureTask.java:204)
>     at 
> org.awaitility.core.Uninterruptibles.getUninterruptibly(Uninterruptibles.java:101)
>     at 
> org.awaitility.core.Uninterruptibles.getUninterruptibly(Uninterruptibles.java:81)
>     at 
> org.awaitility.core.ConditionAwaiter.await(ConditionAwaiter.java:101)
>     ... 6 more
> SchedulerJobsTestResults > testUpdateAccountingRunningBalancesJobOutcome() 
> FAILED
>     org.awaitility.core.ConditionTimeoutException: Lambda expression in 
> org.apache.fineract.integrationtests.common.SchedulerJobHelper: expected the 
> predicate to ret
> urn  but it returned  for input of <{version=1, 
> jobRunStartTime=2020-07-16T18:31:00Z, jobRunEndTime=2020-07-16T18:31:00Z, 
> status=success, triggerType=cr
> on}> within 30 seconds.
>     at 
> org.awaitility.core.ConditionAwaiter.await(ConditionAwaiter.java:165)
>     at 
> org.awaitility.core.AbstractHamcrestCondition.await(AbstractHamcrestCondition.java:86)
>     at 
> org.awaitility.core.ConditionFactory.until(ConditionFactory.java:895)
>     at 
> org.awaitility.core.ConditionFactory.until(ConditionFactory.java:601)
>     at 
> org.awaitility.core.ConditionFactory.until(ConditionFactory.java:618)
>     at 
> org.apache.fineract.integrationtests.common.SchedulerJobHelper.executeAndAwaitJob(SchedulerJobHelper.java:165)
>     at 
> org.apache.fineract.integrationtests.SchedulerJobsTestResults.testUpdateAccountingRunningBalancesJobOutcome(SchedulerJobsTestResults.java:423)
> SchedulerJobsTestResults > testInterestPostingForSavingsJobOutcome() FAILED
>     org.awaitility.core.ConditionTimeoutException: Lambda expression in 
> 

[jira] [Created] (FINERACT-1097) SchedularJob IT tests failing(org.awaitility.core.ConditionTimeoutException)

2020-07-26 Thread Yemdjih Kaze Nasser (Jira)
Yemdjih Kaze Nasser created FINERACT-1097:
-

 Summary: SchedularJob IT tests 
failing(org.awaitility.core.ConditionTimeoutException)
 Key: FINERACT-1097
 URL: https://issues.apache.org/jira/browse/FINERACT-1097
 Project: Apache Fineract
  Issue Type: Improvement
Affects Versions: 1.4.0
Reporter: Yemdjih Kaze Nasser


While looking into 
[FINERACT-1069|https://issues.apache.org/jira/browse/FINERACT-1069], I stumbled 
upon some schedular IT test errors which I faced when working on migrating the 
JPA so originally I thought something was wrong with some of the changes I 
made. Seeing thesame error with OpenJPA on branch develop tells me this 
deserves more attention. Here are the logs:

 
{code:java}
SchedulerJobsTest > testTriggeringManualExecutionOfAllSchedulerJobs() FAILED

    org.awaitility.core.ConditionTimeoutException: Lambda expression in 
org.apache.fineract.integrationtests.common.SchedulerJobHelper: expected the 
predicate to ret
urn  but it returned  for input of <{version=4, 
jobRunStartTime=2020-07-26T16:52:28Z, jobRunEndTime=2020-07-26T16:52:47Z, 
status=success, triggerType=ap
plication}> within 30 seconds.

    at org.awaitility.core.ConditionAwaiter.await(ConditionAwaiter.java:165)

    at 
org.awaitility.core.AbstractHamcrestCondition.await(AbstractHamcrestCondition.java:86)

    at org.awaitility.core.ConditionFactory.until(ConditionFactory.java:895)

    at org.awaitility.core.ConditionFactory.until(ConditionFactory.java:601)

    at org.awaitility.core.ConditionFactory.until(ConditionFactory.java:618)

    at 
org.apache.fineract.integrationtests.common.SchedulerJobHelper.executeAndAwaitJob(SchedulerJobHelper.java:165)

    at 
org.apache.fineract.integrationtests.SchedulerJobsTest.testTriggeringManualExecutionOfAllSchedulerJobs(SchedulerJobsTest.java:132)



    Caused by:

    java.util.concurrent.TimeoutException

    at 
java.base/java.util.concurrent.FutureTask.get(FutureTask.java:204)

    at 
org.awaitility.core.Uninterruptibles.getUninterruptibly(Uninterruptibles.java:101)

    at 
org.awaitility.core.Uninterruptibles.getUninterruptibly(Uninterruptibles.java:81)

    at 
org.awaitility.core.ConditionAwaiter.await(ConditionAwaiter.java:101)

    ... 6 more



SchedulerJobsTestResults > testUpdateAccountingRunningBalancesJobOutcome() 
FAILED

    org.awaitility.core.ConditionTimeoutException: Lambda expression in 
org.apache.fineract.integrationtests.common.SchedulerJobHelper: expected the 
predicate to ret
urn  but it returned  for input of <{version=1, 
jobRunStartTime=2020-07-16T18:31:00Z, jobRunEndTime=2020-07-16T18:31:00Z, 
status=success, triggerType=cr
on}> within 30 seconds.

    at org.awaitility.core.ConditionAwaiter.await(ConditionAwaiter.java:165)

    at 
org.awaitility.core.AbstractHamcrestCondition.await(AbstractHamcrestCondition.java:86)

    at org.awaitility.core.ConditionFactory.until(ConditionFactory.java:895)

    at org.awaitility.core.ConditionFactory.until(ConditionFactory.java:601)

    at org.awaitility.core.ConditionFactory.until(ConditionFactory.java:618)

    at 
org.apache.fineract.integrationtests.common.SchedulerJobHelper.executeAndAwaitJob(SchedulerJobHelper.java:165)

    at 
org.apache.fineract.integrationtests.SchedulerJobsTestResults.testUpdateAccountingRunningBalancesJobOutcome(SchedulerJobsTestResults.java:423)



SchedulerJobsTestResults > testInterestPostingForSavingsJobOutcome() FAILED

    org.awaitility.core.ConditionTimeoutException: Lambda expression in 
org.apache.fineract.integrationtests.common.SchedulerJobHelper: expected the 
predicate to ret
urn  but it returned  for input of <{version=5, 
jobRunStartTime=2020-07-26T18:11:18Z, jobRunEndTime=2020-07-26T18:12:54Z, 
status=success, triggerType=ap
plication}> within 30 seconds.

    at org.awaitility.core.ConditionAwaiter.await(ConditionAwaiter.java:165)

    at 
org.awaitility.core.AbstractHamcrestCondition.await(AbstractHamcrestCondition.java:86)

    at org.awaitility.core.ConditionFactory.until(ConditionFactory.java:895)

    at org.awaitility.core.ConditionFactory.until(ConditionFactory.java:601)

    at org.awaitility.core.ConditionFactory.until(ConditionFactory.java:618)

    at 
org.apache.fineract.integrationtests.common.SchedulerJobHelper.executeAndAwaitJob(SchedulerJobHelper.java:165)

    at 
org.apache.fineract.integrationtests.SchedulerJobsTestResults.testInterestPostingForSavingsJobOutcome(SchedulerJobsTestResults.java:194)



SchedulerJobsTestResults > testInterestTransferForSavings() FAILED

    org.awaitility.core.ConditionTimeoutException: Lambda expression in 
org.apache.fineract.integrationtests.common.SchedulerJobHelper: expected the 
predicate to ret
urn  but it returned  for input of <{version=2, 

[jira] [Updated] (FINERACT-1097) SchedularJob IT tests failing(org.awaitility.core.ConditionTimeoutException)

2020-07-26 Thread Yemdjih Kaze Nasser (Jira)


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

Yemdjih Kaze Nasser updated FINERACT-1097:
--
Issue Type: Bug  (was: Improvement)

> SchedularJob IT tests failing(org.awaitility.core.ConditionTimeoutException)
> 
>
> Key: FINERACT-1097
> URL: https://issues.apache.org/jira/browse/FINERACT-1097
> Project: Apache Fineract
>  Issue Type: Bug
>Affects Versions: 1.4.0
>Reporter: Yemdjih Kaze Nasser
>Priority: Major
>
> While looking into 
> [FINERACT-1069|https://issues.apache.org/jira/browse/FINERACT-1069], I 
> stumbled upon some schedular IT test errors which I faced when working on 
> migrating the JPA so originally I thought something was wrong with some of 
> the changes I made. Seeing thesame error with OpenJPA on branch develop tells 
> me this deserves more attention. Here are the logs:
>  
> {code:java}
> SchedulerJobsTest > testTriggeringManualExecutionOfAllSchedulerJobs() FAILED
>     org.awaitility.core.ConditionTimeoutException: Lambda expression in 
> org.apache.fineract.integrationtests.common.SchedulerJobHelper: expected the 
> predicate to ret
> urn  but it returned  for input of <{version=4, 
> jobRunStartTime=2020-07-26T16:52:28Z, jobRunEndTime=2020-07-26T16:52:47Z, 
> status=success, triggerType=ap
> plication}> within 30 seconds.
>     at 
> org.awaitility.core.ConditionAwaiter.await(ConditionAwaiter.java:165)
>     at 
> org.awaitility.core.AbstractHamcrestCondition.await(AbstractHamcrestCondition.java:86)
>     at 
> org.awaitility.core.ConditionFactory.until(ConditionFactory.java:895)
>     at 
> org.awaitility.core.ConditionFactory.until(ConditionFactory.java:601)
>     at 
> org.awaitility.core.ConditionFactory.until(ConditionFactory.java:618)
>     at 
> org.apache.fineract.integrationtests.common.SchedulerJobHelper.executeAndAwaitJob(SchedulerJobHelper.java:165)
>     at 
> org.apache.fineract.integrationtests.SchedulerJobsTest.testTriggeringManualExecutionOfAllSchedulerJobs(SchedulerJobsTest.java:132)
>     Caused by:
>     java.util.concurrent.TimeoutException
>     at 
> java.base/java.util.concurrent.FutureTask.get(FutureTask.java:204)
>     at 
> org.awaitility.core.Uninterruptibles.getUninterruptibly(Uninterruptibles.java:101)
>     at 
> org.awaitility.core.Uninterruptibles.getUninterruptibly(Uninterruptibles.java:81)
>     at 
> org.awaitility.core.ConditionAwaiter.await(ConditionAwaiter.java:101)
>     ... 6 more
> SchedulerJobsTestResults > testUpdateAccountingRunningBalancesJobOutcome() 
> FAILED
>     org.awaitility.core.ConditionTimeoutException: Lambda expression in 
> org.apache.fineract.integrationtests.common.SchedulerJobHelper: expected the 
> predicate to ret
> urn  but it returned  for input of <{version=1, 
> jobRunStartTime=2020-07-16T18:31:00Z, jobRunEndTime=2020-07-16T18:31:00Z, 
> status=success, triggerType=cr
> on}> within 30 seconds.
>     at 
> org.awaitility.core.ConditionAwaiter.await(ConditionAwaiter.java:165)
>     at 
> org.awaitility.core.AbstractHamcrestCondition.await(AbstractHamcrestCondition.java:86)
>     at 
> org.awaitility.core.ConditionFactory.until(ConditionFactory.java:895)
>     at 
> org.awaitility.core.ConditionFactory.until(ConditionFactory.java:601)
>     at 
> org.awaitility.core.ConditionFactory.until(ConditionFactory.java:618)
>     at 
> org.apache.fineract.integrationtests.common.SchedulerJobHelper.executeAndAwaitJob(SchedulerJobHelper.java:165)
>     at 
> org.apache.fineract.integrationtests.SchedulerJobsTestResults.testUpdateAccountingRunningBalancesJobOutcome(SchedulerJobsTestResults.java:423)
> SchedulerJobsTestResults > testInterestPostingForSavingsJobOutcome() FAILED
>     org.awaitility.core.ConditionTimeoutException: Lambda expression in 
> org.apache.fineract.integrationtests.common.SchedulerJobHelper: expected the 
> predicate to ret
> urn  but it returned  for input of <{version=5, 
> jobRunStartTime=2020-07-26T18:11:18Z, jobRunEndTime=2020-07-26T18:12:54Z, 
> status=success, triggerType=ap
> plication}> within 30 seconds.
>     at 
> org.awaitility.core.ConditionAwaiter.await(ConditionAwaiter.java:165)
>     at 
> org.awaitility.core.AbstractHamcrestCondition.await(AbstractHamcrestCondition.java:86)
>     at 
> org.awaitility.core.ConditionFactory.until(ConditionFactory.java:895)
>     at 
> org.awaitility.core.ConditionFactory.until(ConditionFactory.java:601)
>     at 
> org.awaitility.core.ConditionFactory.until(ConditionFactory.java:618)
>     at 
> org.apache.fineract.integrationtests.common.SchedulerJobHelper.executeAndAwaitJob(SchedulerJobHelper.java:165)
>     at 
> 

[jira] [Comment Edited] (FINERACT-838) Swagger generated client libraries

2020-07-26 Thread Chinmay Kulkarni (Jira)


[ 
https://issues.apache.org/jira/browse/FINERACT-838?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17165332#comment-17165332
 ] 

Chinmay Kulkarni edited comment on FINERACT-838 at 7/26/20, 8:53 PM:
-

Hi [~vorburger]! I have raised a Pull Request for this issue. Please review 
[https://github.com/apache/fineract/pull/1206.|https://github.com/apache/fineract/pull/1206]

To generate the code:
 # *./gradlew build*
 # *./gradlew generateSwaggerCode*

The code will be generated in the directory *build/swagger-code-fineract*

To build the generated code:
 # Navigate to *build/swagger-code-fineract* directory
 # *./gradlew build*

A Retrofit2 based Java API Client for Fineract will be generated in 
*build/swagger-code-fineract/build*

To customize the generated code:
 # Navigate to ***fineract-provider/config/swagger/config.json* 
([https://github.com/Grandolf49/fineract/blob/swagger-codegen/fineract-provider/config/swagger/config.json])
 
 # Refer to 
[this|[https://gist.github.com/Grandolf49/2d222c3d1d0b834ad8f02b5fde8b4c14]] 
for available options in config.json

 


was (Author: grandolf49):
Hi [~vorburger]! I have raised a Pull Request for this issue. Please review 
[https://github.com/apache/fineract/pull/1206.|https://github.com/apache/fineract/pull/1206]

To generate the code:
 # *./gradlew build*
 # *./gradlew generateSwaggerCode*

**The code will be generated in the directory *build/swagger-code-fineract*

To build the generated code:
 # Navigate to *build/swagger-code-fineract* directory
 # *./gradlew build*

A Retrofit2 based Java API Client for Fineract will be generated in 
*build/swagger-code-fineract/build*

To customize the generated code:
 # Navigate to ***fineract-provider/config/swagger/config.json* 
([https://github.com/Grandolf49/fineract/blob/swagger-codegen/fineract-provider/config/swagger/config.json])
 
 # Refer to 
[this|[https://gist.github.com/Grandolf49/2d222c3d1d0b834ad8f02b5fde8b4c14]] 
for available options in config.json

 

> Swagger generated client libraries
> --
>
> Key: FINERACT-838
> URL: https://issues.apache.org/jira/browse/FINERACT-838
> Project: Apache Fineract
>  Issue Type: Sub-task
>Reporter: Michael Vorburger
>Assignee: Chinmay Kulkarni
>Priority: Major
>
> In the review discussion of the first Swagger PR 
> https://github.com/apache/fineract/pull/629 (which got superseded by 
> https://github.com/apache/fineract/pull/695), this came up:
> {quote}The other plugin org.hidetake.swagger.generator is used to generate 
> code from the openAPI spec file using swagger-codegen. So this does not 
> generate response.json. It rather uses response.json to generate client 
> code.{quote}
> and {quote} think i had explained the usage of this in my gist 
> https://gist.github.com/kangbreder/034f47e2e8015cee10b48b7c5f1b8df1, 
> generating client libraries and language-specific SDKs in languages such as 
> java and angular from swagger specification file. This was part of the goals 
> of the project listed in 
> https://mifosforge.jira.com/wiki/spaces/RES/pages/812810251/Google+Summer+of+Code+2019+Ideas.{quote}
> Having (Swagger automatically generate!) client libraries in Java (and even 
> other languages?!) seems like a cool idea. It's also something that perhaps 
> needs a bit more investigation than only adding the respective Gradle plugin. 
>  If we actually do do this, after having done all of the work in the other 
> Sub Tasks, then I think we would have to include sample code in the repo 
> building against the generated client libraries to test and illustrate their 
> usage.  We would also have to publish those client libraries, e.g. as 
> downloadable JAR from the release page (or later even made available on Maven 
> central). It would perhaps be clearest if there was another directory in the 
> Fineract source tree, next to and outside of not inside, the 
> fineract-provider (which is the "server") for this purpose.
> [~kangbreder] [~awasum] [~sanyam] ([~sanyam96] ?) FYI



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Comment Edited] (FINERACT-838) Swagger generated client libraries

2020-07-26 Thread Chinmay Kulkarni (Jira)


[ 
https://issues.apache.org/jira/browse/FINERACT-838?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17165332#comment-17165332
 ] 

Chinmay Kulkarni edited comment on FINERACT-838 at 7/26/20, 8:53 PM:
-

Hi [~vorburger]! I have raised a Pull Request for this issue. Please review 
[https://github.com/apache/fineract/pull/1206.|https://github.com/apache/fineract/pull/1206]

To generate the code:
 # *./gradlew build*
 # *./gradlew generateSwaggerCode*

The code will be generated in the directory *build/swagger-code-fineract*

To build the generated code:
 # Navigate to *build/swagger-code-fineract* directory
 # *./gradlew build*

A Retrofit2 based Java API Client for Fineract will be generated in 
*build/swagger-code-fineract/build*

To customize the generated code:
 # Navigate to *fineract-provider/config/swagger/config.json* 
([https://github.com/Grandolf49/fineract/blob/swagger-codegen/fineract-provider/config/swagger/config.json])
 
 # Refer to 
[this|[https://gist.github.com/Grandolf49/2d222c3d1d0b834ad8f02b5fde8b4c14]] 
for available options in config.json

 


was (Author: grandolf49):
Hi [~vorburger]! I have raised a Pull Request for this issue. Please review 
[https://github.com/apache/fineract/pull/1206.|https://github.com/apache/fineract/pull/1206]

To generate the code:
 # *./gradlew build*
 # *./gradlew generateSwaggerCode*

The code will be generated in the directory *build/swagger-code-fineract*

To build the generated code:
 # Navigate to *build/swagger-code-fineract* directory
 # *./gradlew build*

A Retrofit2 based Java API Client for Fineract will be generated in 
*build/swagger-code-fineract/build*

To customize the generated code:
 # Navigate to ***fineract-provider/config/swagger/config.json* 
([https://github.com/Grandolf49/fineract/blob/swagger-codegen/fineract-provider/config/swagger/config.json])
 
 # Refer to 
[this|[https://gist.github.com/Grandolf49/2d222c3d1d0b834ad8f02b5fde8b4c14]] 
for available options in config.json

 

> Swagger generated client libraries
> --
>
> Key: FINERACT-838
> URL: https://issues.apache.org/jira/browse/FINERACT-838
> Project: Apache Fineract
>  Issue Type: Sub-task
>Reporter: Michael Vorburger
>Assignee: Chinmay Kulkarni
>Priority: Major
>
> In the review discussion of the first Swagger PR 
> https://github.com/apache/fineract/pull/629 (which got superseded by 
> https://github.com/apache/fineract/pull/695), this came up:
> {quote}The other plugin org.hidetake.swagger.generator is used to generate 
> code from the openAPI spec file using swagger-codegen. So this does not 
> generate response.json. It rather uses response.json to generate client 
> code.{quote}
> and {quote} think i had explained the usage of this in my gist 
> https://gist.github.com/kangbreder/034f47e2e8015cee10b48b7c5f1b8df1, 
> generating client libraries and language-specific SDKs in languages such as 
> java and angular from swagger specification file. This was part of the goals 
> of the project listed in 
> https://mifosforge.jira.com/wiki/spaces/RES/pages/812810251/Google+Summer+of+Code+2019+Ideas.{quote}
> Having (Swagger automatically generate!) client libraries in Java (and even 
> other languages?!) seems like a cool idea. It's also something that perhaps 
> needs a bit more investigation than only adding the respective Gradle plugin. 
>  If we actually do do this, after having done all of the work in the other 
> Sub Tasks, then I think we would have to include sample code in the repo 
> building against the generated client libraries to test and illustrate their 
> usage.  We would also have to publish those client libraries, e.g. as 
> downloadable JAR from the release page (or later even made available on Maven 
> central). It would perhaps be clearest if there was another directory in the 
> Fineract source tree, next to and outside of not inside, the 
> fineract-provider (which is the "server") for this purpose.
> [~kangbreder] [~awasum] [~sanyam] ([~sanyam96] ?) FYI



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (FINERACT-838) Swagger generated client libraries

2020-07-26 Thread Chinmay Kulkarni (Jira)


[ 
https://issues.apache.org/jira/browse/FINERACT-838?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17165332#comment-17165332
 ] 

Chinmay Kulkarni commented on FINERACT-838:
---

Hi [~vorburger]! I have raised a Pull Request for this issue. Please review 
[https://github.com/apache/fineract/pull/1206.|https://github.com/apache/fineract/pull/1206]

To generate the code:
 # *./gradlew build*
 # *./gradlew generateSwaggerCode*

**The code will be generated in the directory *build/swagger-code-fineract*

To build the generated code:
 # Navigate to *build/swagger-code-fineract* directory
 # *./gradlew build*

A Retrofit2 based Java API Client for Fineract will be generated in 
*build/swagger-code-fineract/build*

To customize the generated code:
 # Navigate to ***fineract-provider/config/swagger/config.json* 
([https://github.com/Grandolf49/fineract/blob/swagger-codegen/fineract-provider/config/swagger/config.json])
 
 # Refer to 
[this|[https://gist.github.com/Grandolf49/2d222c3d1d0b834ad8f02b5fde8b4c14]] 
for available options in config.json

 

> Swagger generated client libraries
> --
>
> Key: FINERACT-838
> URL: https://issues.apache.org/jira/browse/FINERACT-838
> Project: Apache Fineract
>  Issue Type: Sub-task
>Reporter: Michael Vorburger
>Assignee: Chinmay Kulkarni
>Priority: Major
>
> In the review discussion of the first Swagger PR 
> https://github.com/apache/fineract/pull/629 (which got superseded by 
> https://github.com/apache/fineract/pull/695), this came up:
> {quote}The other plugin org.hidetake.swagger.generator is used to generate 
> code from the openAPI spec file using swagger-codegen. So this does not 
> generate response.json. It rather uses response.json to generate client 
> code.{quote}
> and {quote} think i had explained the usage of this in my gist 
> https://gist.github.com/kangbreder/034f47e2e8015cee10b48b7c5f1b8df1, 
> generating client libraries and language-specific SDKs in languages such as 
> java and angular from swagger specification file. This was part of the goals 
> of the project listed in 
> https://mifosforge.jira.com/wiki/spaces/RES/pages/812810251/Google+Summer+of+Code+2019+Ideas.{quote}
> Having (Swagger automatically generate!) client libraries in Java (and even 
> other languages?!) seems like a cool idea. It's also something that perhaps 
> needs a bit more investigation than only adding the respective Gradle plugin. 
>  If we actually do do this, after having done all of the work in the other 
> Sub Tasks, then I think we would have to include sample code in the repo 
> building against the generated client libraries to test and illustrate their 
> usage.  We would also have to publish those client libraries, e.g. as 
> downloadable JAR from the release page (or later even made available on Maven 
> central). It would perhaps be clearest if there was another directory in the 
> Fineract source tree, next to and outside of not inside, the 
> fineract-provider (which is the "server") for this purpose.
> [~kangbreder] [~awasum] [~sanyam] ([~sanyam96] ?) FYI



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Assigned] (FINERACT-1069) RecurringDepositTest / FixedDepositTests failing on 1st of month

2020-07-26 Thread Yemdjih Kaze Nasser (Jira)


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

Yemdjih Kaze Nasser reassigned FINERACT-1069:
-

Assignee: Yemdjih Kaze Nasser

> RecurringDepositTest / FixedDepositTests failing on 1st of month
> 
>
> Key: FINERACT-1069
> URL: https://issues.apache.org/jira/browse/FINERACT-1069
> Project: Apache Fineract
>  Issue Type: Bug
>Reporter: Petri Tuomola
>Assignee: Yemdjih Kaze Nasser
>Priority: Major
>
> It seems that the calculation to determine expected interest in 
> RecurringDepositTest / FixedDepositTest breaks on 1st day of (each or some?) 
> months: seems that the logic calculates one day too much interest, and hence 
> the tests fail. This can be reproduced by setting system time to e.g. 1st 
> July and running the tests. This should be fixed as otherwise the builds will 
> always fail on this once a month. 



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (FINERACT-1069) RecurringDepositTest / FixedDepositTests failing on 1st of month

2020-07-26 Thread Yemdjih Kaze Nasser (Jira)


[ 
https://issues.apache.org/jira/browse/FINERACT-1069?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17165256#comment-17165256
 ] 

Yemdjih Kaze Nasser commented on FINERACT-1069:
---

I will take on this. I've seen this error a couple of times while working on 
migrating the ORM.

> RecurringDepositTest / FixedDepositTests failing on 1st of month
> 
>
> Key: FINERACT-1069
> URL: https://issues.apache.org/jira/browse/FINERACT-1069
> Project: Apache Fineract
>  Issue Type: Bug
>Reporter: Petri Tuomola
>Priority: Major
>
> It seems that the calculation to determine expected interest in 
> RecurringDepositTest / FixedDepositTest breaks on 1st day of (each or some?) 
> months: seems that the logic calculates one day too much interest, and hence 
> the tests fail. This can be reproduced by setting system time to e.g. 1st 
> July and running the tests. This should be fixed as otherwise the builds will 
> always fail on this once a month. 



--
This message was sent by Atlassian Jira
(v8.3.4#803005)