Commit Graph
192 Commits
Author SHA1 Message Date
Adam Monsen 6aea428d87 clarify "builds" refers to GitHub 2025-09-09 08:40:44 -07:00
Adam Monsen 67272d1aea FINERACT-2336: improve asciidoc post-1.12.1 release
* update release notice years in NOTICE_RELEASE and NOTICE_SOURCE
* step 5
  * simplify mention of tests: "Ensure all tests pass for this commit both in CI and locally"
  * recommend GPG signing annotated release tag
* step 8: improve svn commands
  * This way is simpler and more efficient, especially with a bunch of release candidate dirs in the staging area.
* step 10: mention need to test rc before +1 vote -- See:
  * https://www.apache.org/legal/release-policy.html#release-approval
  * https://www.apache.org/legal/release-policy.html#approving-a-release
* step 12: only PMC members can upload releases
* step 13: simplify & explain "finalize branch" instructions
  * Document what worked for me for 1.12.1.
  * I didn't need to create the extra `merge-$VERSION` branch and do the recursive merge.
* document how asciidoctor upgrade is blocked
  * see "official docs - deps stuck" thread on fineract dev mailing list
  * https://lists.apache.org/thread/7mmsj13spb11vgz0z38fhwgzwtq03brr
  * can't upgrade to 4.x because of one of these:
    * https://github.com/asciidoctor/asciidoctorj-pdf/issues/25
    * https://github.com/jruby/jruby/issues/5573
    * https://github.com/asciidoctor/asciidoctorj-pdf/issues/16
* improve asciidoc config - opt for simplicity where the complexity adds nothing
  * compat-mode is off by default, no need for it here
  * default optimization should be fine
  * media should have been screen | print | prepress, just leave it as default instead
  * page size? I really don't think this is going to be printed much, just go with default
  * PDF version 1.8 is invalid, just use the default unless we someday have a good reason to pin this
  * reduce copyright years sources of truth
  * see also: https://docs.asciidoctor.org/pdf-converter/latest/asciidoc-attributes/
* remove unnecessary asciidoctorj 3.0.0 version string -- no need to pin this
* remove prompt character from Bash shell examples
  * it isn't properly syntax-highlighted and it looks confusing with line numbers (which we might want to add)
  * it isn't necessary
  * the prompt character ("%" in this case) is not typically included in shell code examples because it makes it harder to copy and paste shell code examples
  * $ is likely more common than % (at least on Debian/Ubuntu), but either way I'd say exclude it
* fix source code syntax labels - use "bash" only when it is actually Bash shell code
* persistence.adoc
  * fix broken enumerated list
    * resolves these warnings seen with, e.g.: `gradle --info doc`
    * `Jul 27, 2025 8:26:48 PM uri:classloader:/gems/asciidoctor-2.0.10/lib/asciidoctor/parser.rb parse_list_item`
    * `WARNING: chapters/architecture/persistence.adoc: line 104: list item index: expected 1, got 2`
    * `Jul 27, 2025 8:26:48 PM uri:classloader:/gems/asciidoctor-2.0.10/lib/asciidoctor/parser.rb parse_list`
    * `WARNING: chapters/architecture/persistence.adoc: line 110: list item index: expected 1, got 3`
  * fix wrapping (we use hardbreaks)
  * fix typo: `s/plane text/plain text/`
* switch to rouge syntax highlighter - it handles more source languages
* fix broken long shell code lines
* fix .avro file syntax highlighting (it's JSON)
* configuration-gpg.adoc
  * fix accidental block continuation
    * One little plus sign was making `= Email` appear verbatim in rendered output because it was interpreted as a list continuation.
    * See https://docs.asciidoctor.org/asciidoc/latest/lists/continuation/#list-continuation
  * recommend more secure keys
  * add a line continuation for an enumerated list
* architecture-overview.puml: remove this unused (likely a "Hello World") diagram
* release-schedule.puml: fix pluralization of days
  * purely aesthetic: doesn't affect chart rendering
* fix src/bin/binary tarball name typos
  * missed a few in e090da2a01
* fix release branch name
  * must match `release/{revnumber}`, per gitVersioning stanza in top level build.gradle
* harden.adoc: fix broken link to CISA
* fineract-doc/build.gradle
  * ensure HTML task has diagrams and images availble
2025-08-07 07:02:10 -07:00
Adam Monsen 4d56a4f230 add gradle --refresh-dependencies band-aid
I'd love some expert eyes on this section and feedback on whether these kinds of extra clean-up procedures are often, sometimes, or rarely useful.
2025-06-16 15:23:26 -07:00
Adam Monsen f28d252f17 FINERACT-2310: collate and improve security documentation
* fix various typos, spacing, formatting issues
* fix links to legacy docs in API docs
* update keycloak oauth dev instructions
* update default oauth URL for latest Keycloak
* use consistent quoting in oauth docs (single quotes)
* use asciidoc auto-enumerated lists whenever possible
* migrate security topics from readme into asciidoc: oauth, 2FA, HTTPS
* move :hardbreaks: setting to config file so all config settings are in one place. (I think it's fine that `license.adoc` will use hardbreaks -- that's how the plain text version is formatted so it should look more familiar)
* add intro to security chapter
* migrate in Securing Fineract wiki content from https://cwiki.apache.org/confluence/display/FINERACT/Securing+Fineract
* just say "oauth" (not "oauth2") to conform terminology throughout docs -- OAuth 2.0 is just the latest version
* cross-ref HTTPS section from Securing Fineract
* reposition hardening options as tips
* see also: https://lists.apache.org/thread/81qdxttffp6wn23c48zvk93hc13373qv
* simplify/clarify example oauth curl requests
  * Testing just now and I didn't need --location.
  * Also I imagine folks will need --insecure with the self-signed default cert in dev.
* don't change default oauth URL
  * no surprises for existing deployments
  * clarifies the keycloak v26 example
2025-06-16 15:12:55 -07:00
Adam MonsenandAdam Saghy 834e90dce0 FINERACT-2269: various small dev-focused improvements
remove unnecessary javadoc html5 option

html5 output is the default since at least Java 17

improve markdown formatting for PR template

fix casing, per GH recommendations

https://docs.github.com/en/communities/using-templates-to-encourage-useful-issues-and-pull-requests/creating-a-pull-request-template-for-your-repository recommends lowercase

document system default Java issues

reorder integration test hints importance-wise

make devRun the default

It's faster and more obviously useful for developers.

See https://lists.apache.org/thread/zxvtx9nqqbojvt0dd65tk8zd4xp6ot0t

mention gradle not re-running tests

remove Gitpod

per James, Ádám, and Victor, this is no longer used/supported

for setting up a local dev environment see the top-level README.md and https://fineract-academy.com
2025-04-24 14:31:54 +02:00
Victor RomeroandAdam Saghy 9f4f1d4f17 FINERACT-2094: Update to Java 21
modernize locale instantiations (fixes an error found by the modernizer plugin) - use Locale.of() instead of new Locale()

use recommended gradle toolchain syntax to specify Java class file format version see https://docs.gradle.org/current/userguide/java_plugin.html#toolchain_and_compatibility

mark html5 for later fix (it's the default)

use dummy byte arrays to work around mockito exception

```
org.mockito.exceptions.base.MockitoException:
Mockito cannot mock this class: class java.nio.ByteBuffer.

If you're not sure why you're getting this error, please open an issue on GitHub.

Java               : 21
JVM vendor name    : Ubuntu
JVM vendor version : 21.0.6+7-Ubuntu-122.04.1
JVM name           : OpenJDK 64-Bit Server VM
JVM version        : 21.0.6+7-Ubuntu-122.04.1
JVM info           : mixed mode, sharing
OS name            : Linux
OS version         : 5.15.0-136-generic

You are seeing this disclaimer because Mockito is configured to create inlined mocks.
You can learn about inline mocks and their limitations under item #39 of the Mockito class javadoc.

Underlying exception : org.mockito.exceptions.base.MockitoException: Unsupported settings with this type 'java.nio.ByteBuffer'
	at app//org.apache.fineract.infrastructure.event.external.jobs.SendAsynchronousEventsTaskletTest.givenBatchSize2WhenEventSendFailsThenExecutionStops(SendAsynchronousEventsTaskletTest.java:170)
	at java.base@21.0.6/java.lang.reflect.Method.invoke(Method.java:580)
	at java.base@21.0.6/java.util.ArrayList.forEach(ArrayList.java:1596)
	at java.base@21.0.6/java.util.ArrayList.forEach(ArrayList.java:1596)
Caused by: org.mockito.exceptions.base.MockitoException: Unsupported settings with this type 'java.nio.ByteBuffer'
	at app//net.bytebuddy.TypeCache.findOrInsert(TypeCache.java:168)
	at app//net.bytebuddy.TypeCache$WithInlineExpunction.findOrInsert(TypeCache.java:399)
	at app//net.bytebuddy.TypeCache.findOrInsert(TypeCache.java:190)
	at app//net.bytebuddy.TypeCache$WithInlineExpunction.findOrInsert(TypeCache.java:410)
	... 4 more
```

see also: https://stackoverflow.com/questions/47046996/java-lang-unsupportedoperationexception-when-mocking-java-nio-bytebuffer-class

wrap byte arrays with ByteBuffer

fix:

```
/home/adamm/git/apache/fineract/fineract-provider/src/test/java/org/apache/fineract/infrastructure/event/external/jobs/SendAsynchronousEventsTaskletTest.java:148: error: incompatible types: byte[] cannot be converted to ByteBuffer
                "anidempotencyKey", "aSchema", "dummy".getBytes());
                                                               ^
/home/adamm/git/apache/fineract/fineract-provider/src/test/java/org/apache/fineract/infrastructure/event/external/jobs/SendAsynchronousEventsTaskletTest.java:170: error: incompatible types: byte[] cannot be converted to ByteBuffer
                "anidempotencyKey", "aSchema", "dummy".getBytes());
                                                               ^
/home/adamm/git/apache/fineract/fineract-provider/src/test/java/org/apache/fineract/infrastructure/event/external/jobs/SendAsynchronousEventsTaskletTest.java:189: error: incompatible types: byte[] cannot be converted to ByteBuffer
                "anidempotencyKey", "aSchema", "dummy".getBytes());
                                                               ^
/home/adamm/git/apache/fineract/fineract-provider/src/test/java/org/apache/fineract/infrastructure/event/external/jobs/SendAsynchronousEventsTaskletTest.java:210: error: incompatible types: byte[] cannot be converted to ByteBuffer
                "anidempotencyKey", "aSchema", "dummy".getBytes());
```

...and use StandardCharsets with getBytes
2025-04-17 15:01:00 +02:00
Adam MonsenandAdam Saghy 97dd2bbbde FINERACT-2230: improve test and doc building info in README
Update and add detail to doing the most common types of test runs on a developer workstation.

Add info on how to build asciidoc-based documentation.
2025-04-07 12:56:44 +02:00
Victor RomeroandAdam Saghy eacfb92545 FINERACT-2181: Update non-major 2025-03-18 12:04:27 +01:00
edcableandAdam Saghy ccf213aefe Update README.md
Fixed typo in header for Governance
2025-02-26 13:07:05 +01:00
Michael VorburgerandArnold Gálovics c4cdd6f51a Fix broken "Badges" on README 2024-12-13 14:58:48 +01:00
Adam MonsenandAdam Saghy b053c90009 bump MariaDB version
EOL for 11.2 is coming up in a few weeks, see: https://mariadb.org/about/#maintenance-policy

I upgraded my local MariaDB dev database to 11.4 and performed a few cursory GETs and PUTs via the Fineract API--just what I've learned to do so far. Nothing broke. I didn't run all the tests though.

I didn't see any obvious red flags in https://mariadb.com/kb/en/changes-improvements-in-mariadb-11-4/
2024-10-29 21:53:21 +01:00
SantatraandArnold Gálovics 4ac102f4e0 Fix broken link in README (FINERACT-2088) 2024-07-10 09:55:33 +02:00
Adam Saghy bb022bd324 FINERACT-2081: Update README.md 2024-06-12 17:23:13 +02:00
Aleksandar VidakovicandAleksandar Vidakovic e4944c44d6 FINERACT-2009: Upgrade latest framework libs 2024-01-06 14:13:33 +01:00
Aleksandar VidakovicandAleksandar Vidakovic e2cf138437 FINERACT-1484: Micrometer Monitoring 2023-11-09 13:58:42 +01:00
Peter BagrijandArnold Gálovics c5aeae62d8 FINERACT-1824
- Documentation update for Kafka Support
 - Adding docker-compose-postgresql-kafka-msk.yml
 - application.properties ENV var fixed
2023-07-25 07:45:22 +02:00
Peter BagrijandAdam Saghy 1cb1372e68 FINERACT-1924
3 node configuration (1 manager, 2 workers) with activeMQ is added.
2023-07-05 16:19:11 +02:00
David KariukiandAdam Saghy 0cd3ac1cb0 docs: Capitalize headings
Capitalize headings and add line breaks to improve on readability.
2023-04-24 16:20:15 +02:00
Sinha, AbhinavandAdam Saghy 2778381288 Fix typos in README.md (FINERACT-1914) 2023-04-03 17:29:55 +02:00
Vic RomeroandAleksandar Vidakovic f2756b25bb FINERACT-1791 2022-10-29 11:53:45 +02:00
Aleksandar VidakovicandAleksandar Vidakovic 3959a34922 FINERACT-1696: Update README with instructions concerning Mysql UTC behavior 2022-08-22 04:27:14 +02:00
Aleksandar VidakovicandAleksandar Vidakovic b0a261cbd5 FINERACT-1608: Add introduction to Asciidoc 2022-05-10 12:12:57 +02:00
Aleksandar VidakovicandAleksandar Vidakovic 40eb547a5c FINERACT-1470: Fineract release plugin 2022-05-04 15:11:53 +02:00
Aleksandar VidakovicandArnold Gálovics 4bef3ba6b8 FINERACT-1528: Replace copy and pasted Swagger UI with Springdoc 2022-05-02 14:30:49 +02:00
Aleksandar VidakovicandAleksandar Vidakovic 99e8525729 FINERACT-1526: Upgrade dependencies 2022-03-11 16:55:30 +01:00
Michael Vorburger ⛑️andAleksandar Vidakovic 8cf38f27a0 Add link to fineract-doc/src/docs/en/deployment.adoc#https to /README.md#ssl-configuration
Follow up to #2023.
2022-03-05 19:44:18 +01:00
Aleksandar VidakovicandAleksandar Vidakovic b96cae37ed FINERACT-1490: SSL configuration based on application.properties 2022-02-21 00:02:03 +01:00
Arnold GalovicsandAleksandar Vidakovic 45bed0a05a FINERACT-1498: Switching from Flyway to Liqubase migrations 2022-02-19 22:55:32 +01:00
Aleksandar VidakovicandPetri Tuomola 73723aca66 FINERACT-1506: Add WAR artifact to release distribution again 2022-02-19 17:46:44 +08:00
Aleksandar VidakovicandAleksandar Vidakovic c66415dbfd FINERACT-1492: Hikari configuration based on application properties 2022-02-07 16:38:39 +01:00
Aleksandar VidakovicandPetri Tuomola c81fc7f0f4 Upgrade to JDK 17 2022-01-03 21:04:53 +08:00
Aleksandar VidakovicandPetri Tuomola 907f932abe Simplify build for different auth strategies 2022-01-03 06:15:04 +08:00
Aleksandar VidakovicandPetri Tuomola 6e052e536b Replace command line Docker image build with Gradle Jib plugin 2022-01-02 14:15:34 +08:00
Aleksandar VidakovicandPetri Tuomola b2dbbe66de Create separate sub-module for WAR build 2022-01-02 09:20:47 +08:00
Victor RomeroandPetri Tuomola 03a8a9858d FINERACT-982 - Completely ditch use of Drizzle JDBC Driver after all 2021-12-24 12:23:56 +08:00
Petri TuomolaandPetri Tuomola 48b54c8010 Fix readme formatting 2021-11-06 10:36:23 +08:00
Petri TuomolaandGitHub 9700ed4411 Update badge to point to GitHub build and add SonarCloud badge 2021-11-06 10:11:11 +08:00
Petri TuomolaandAleksandar Vidakovic 344e4fe21a FINERACT-1421: Fixing Eclipse build/debug 2021-11-04 07:47:04 +01:00
edcableandGitHub fcd1013dd9 Update README.md 2021-08-06 20:10:52 -07:00
Apurv GuptaandMichael Vorburger ⛑️ f7815bac6c Fix: Readme for Instructions to run using Docker on Windows 2021-02-07 14:49:37 +01:00
BLasanandMichael Vorburger ⛑️ 9ffadb248d Fix MySQL Access Denied Issue (FINERACT-1294) 2021-01-23 15:49:22 +01:00
BLasanandYemdjih Kaze Nasser 2ec4803252 Fix kubernetes startup & shutdown commands issue (FINERACT-1288) 2021-01-14 21:26:08 +01:00
Yemdjih Kaze NasserandMichael Vorburger ⛑️ bef01a19a2 Update test execution in readme 2020-11-18 22:22:48 +01:00
Michael Vorburger ⛑️andPetri Tuomola 892a6ee551 Add Swagger "badge" to README, currently showing INVALID (FINERACT-1249) 2020-11-01 06:26:23 +02:00
Aleksandar VidakovicandAleksandar Vidakovic 354acf309e Apply Checkstyle, Errorprone etc. for all Java modules (FINERACT-1171) 2020-10-20 03:00:33 +02:00
Aleksandar VidakovicandPetri Tuomola ee9f428f28 FINERACT-1203: Fix broken Executable WAR 2020-10-15 12:42:05 +03:00
Aleksandar VidakovicandPetri Tuomola 5520bb3c2d FINERACT-1188: README and other files are not covered by Spotless 2020-10-14 10:29:05 +03:00
Vincent FUCHSandMichael Vorburger ⛑️ a4a2334536 dummy commit to trigger the build again 2020-10-13 21:12:58 +02:00
Vincent FUCHSandMichael Vorburger ⛑️ 704d73dd3e Enable messaging through Spring profile as "activeMqEnabled" (FINERACT-1193) 2020-10-13 21:12:58 +02:00
Aleksandar VidakovicandPetri Tuomola 26c1c17151 FINERACT-1194: Move Gradle wrapper to root folder 2020-10-11 22:17:35 +03:00