Commit Graph
57 Commits
Author SHA1 Message Date
Adam Monsen e2fa9e9762 FINERACT-2458: move DPG badge alongside others
It looked odd having the badge and text above the first H1 heading.

see also: https://github.com/apache/fineract/pull/5404
2026-02-18 07:41:00 -08:00
Adam Monsen 3b2a5bcb30 FINERACT-2448: standardize on release ready, improve releases section
I want us to standardize on being "release ready". That is, we agree to do our best to keep incomplete features off `develop` and to keep the build passing.

As part of this change I also want to update the [VERSIONS section in the README](https://github.com/apache/fineract/blob/d093a089c9c13051eb8922100e38e44a3933fd9c/README.md#versions) to more accurately reflect how we do releases today.
2026-01-26 10:13:55 -08:00
Adam Monsen 2032ceb9d9 Revert "exclude jquery-1.7.min.js from source release"
This reverts commit 7923d9e6cb.

See that commit's log message, and https://github.com/apache/tooling-trusted-releases/issues/427

TL;DR → ATR now ignores files ending in .min.js so we no longer need the explicit exclude for jquery-1.7.min.js
2026-01-12 08:00:46 -08:00
Adam MonsenandArnold Gálovics 15c2facf99 FINERACT-2424: post 1.14.0 release docs cleanup
* Go analog for step 15, automation was broken.
* Fix two admonitions: I meant to use `NOTE`. `INFO` is not a valid admonition in asciidoc, so it just shows up as text.
2025-12-23 11:11:09 +01:00
Adam Monsen d8b6649b32 Merge branch 'release/1.14.0' into develop
* release/1.14.0:
  update manual release instructions
  port steps 10 & 11 to the ATR
  docs: adapt artifact checks to new ATR tool
  improve svn release staging/release instructions
  exclude jquery-1.7.min.js from source release
  ignore .swp files when building src release
  add license to .mailmap
  add RAT excludes for ATR
  add license to scripts/*.sh
  fix both NOTICE files for ATR
  doc: remove errant config
  improve start release notes wording in step 3
2025-12-22 12:54:17 -08:00
Adam Monsen 9977fb3fcb update manual release instructions
Not gonna lie, I'm getting tired of maintaining this second source of truth. Hopefully my laziness, impatience, and hubris will tip the scales far enough to delete it.
2025-12-22 12:46:52 -08:00
Adam Monsen e1b0329748 port steps 10 & 11 to the ATR 2025-12-22 11:43:31 -08:00
Adam Monsen 30b25cdaa1 docs: adapt artifact checks to new ATR tool
We're already reaping rewards for using ATR (checks+voting+email support), and I want us to do both the old way AND the new way for now. I'll consider the old release process in "soft deprecation" as the ATR matures.
2025-12-22 11:02:32 -08:00
Adam Monsen f4aa11468d improve svn release staging/release instructions
All good. I tested these just now.

ATR so far does artifact checks & voting/email management.
Working with artifacts on the svn server is still our responsibility, for now.
2025-12-22 09:57:47 -08:00
Adam Monsen 7923d9e6cb exclude jquery-1.7.min.js from source release
This is to workaround an issue, UI misunderstanding, or PEBKAC with the ATR (ASF Trusted Releases) tool wherein I am unable to exclude the license header check for this file. jQuery (and its dependencies) can be used entirely under the MIT, see <https://jquery.com/license/>.

Once https://github.com/apache/tooling-trusted-releases/issues/312 ... is resolved we should be able to revert this workaround.

While this workaround is in place, consumers of apiLive.htm must:

1. put a copy of jquery-1.7.min.js next to apiLive.htm
2. change apiLive.htm to refer to jquery-1.7.min.js on a CDN

If someone needing apiLive.htm prefers the first option, they can grab a copy at https://code.jquery.com/jquery-1.7.min.js .
If they prefer the second option, they can pick a minified or unminified link listed at https://blog.jquery.com/2011/11/03/jquery-1-7-released/ and modify line 6 of apiLive.htm to refer to that instead, for example:

- <script type="text/javascript" src="jquery-1.7.min.js"></script>
+ <script type="text/javascript" src="https://code.jquery.com/jquery-1.7.min.js"></script>

There are other ways to deal with the license header check as well. For example: We could use 2nd option above (always), or finally/actually port away from apiLive.htm (it is in legacy-docs, after all).
2025-12-19 08:44:34 -08:00
Adam Monsen 927f8dc589 ignore .swp files when building src release
just in case. I accidentally did this while working on the 1.14.0 release.
2025-12-18 14:38:32 -08:00
Adam Monsen 19305c6c60 add license to .mailmap
ATR was complaining
2025-12-18 14:37:59 -08:00
Adam Monsen 47ba127f23 add RAT excludes for ATR 2025-12-18 14:37:09 -08:00
Adam Monsen 86f6a8c9b8 add license to scripts/*.sh
conform rather than bypass RAT license check
2025-12-18 10:45:32 -08:00
Adam Monsen 2c4ed2e984 fix both NOTICE files for ATR
ATR (the ASF Trusted Releases tool) expects these to follow a very specific template. In this case I had to s/by/at/ and add a newline.

See: https://github.com/apache/tooling-trusted-releases/blob/52e202f2deae74d38bc60849736339b2ab919de8/atr/tasks/checks/license.py#L299
2025-12-18 10:27:14 -08:00
Adam Monsen ad2be8ad1c doc: remove errant config
similar to 45404bafba

All asciidoctor config must be in `fineract-doc/src/docs/en/config.adoc`.

In this case `:sectnums:` re-starts ToC section numbering partway through the ToC.
2025-12-18 09:33:39 -08:00
Adam Monsen 0f6f182193 improve start release notes wording in step 3 2025-12-18 09:15:11 -08:00
Adam Monsen a085f8c60b link to new vulnerabilities list 2025-12-11 13:50:23 -08:00
Adam Monsen 5468f7999d FINERACT-2416: improve PR template
I started editing this just to fix the link to the "Pull Requests" doc (it moved from README.md to CONTRIBUTING.md), but then I saw a few other places in need of service.

* use Markdown links for readability
* add link to pull request size limit wiki page re: code dumps
* remove link to PR 1284, it doesn't add anything here and takes the reader out of context
* add link to mailing list
* add link to testing docs
2025-12-11 13:44:50 -08:00
Adam MonsenandGitHub 4ea19469cb FINERACT-2397: update release manager docs post-1.13.0 release (#5116)
* release step 6: emphasize "re-run the command above"
* release step 9: link to Database Setup in e2e or integration section (currently links to e2e since `cucumber.adoc` precedes `integration.adoc` in `fineract-doc/src/docs/en/chapters/testing/index.adoc`)
* release step 10: improve rc verify instructions in voting email, based on https://lists.apache.org/thread/jk2qzjxc89hd1c8xzvhtmlbbj1m8ktbl - thread: "release process improvement (was: 🗳️ 1.13.0 for release)"
* release step 15: use current mission statement from top-level readme in release announcement email
2025-10-22 08:44:22 -06:00
Adam Monsen a561264f81 Merge branch 'release/1.13.0' into develop
* release/1.13.0:
  don't include actual email addresses
  save 1.13.0 vote result
  shorten/simplify gpg key sending commands
  update link to rc verification instructions
  fix typos in step 9 re: running the binary
  improve step 9 artifact verification gpg tips
  fix tarball explosion in release step 9 🧯
  cucumber.adoc: fix list continuations
  further improve release steps 6 and 9
  release step 6: fix sanity check example
  improve staging doc and commands in release step 8
  doc: remove errant config but keep :sectlinks:
  clean during artifact build release step 6
  FINERACT-2326: Do not remove external id if transaction got not replayed
  FINERACT-2326: Fix `Trial Balance Summary with asset owner` report
  FINERACT-2326: Loan point in time API now properly handles future dates
  improve release branch email template
  improve release process kickoff email template
2025-10-20 08:54:29 -07:00
Adam Monsen 826608f6cc don't include actual email addresses
might help voters avoid a bit of spam
2025-10-20 08:05:08 -07:00
Adam Monsen ccfce92a3b save 1.13.0 vote result 2025-10-19 09:50:06 -07:00
Adam Monsen 95e6cea504 shorten/simplify gpg key sending commands
also: change <3> to match text above, omitting otherwise helpful 0x hex designation prefix
2025-10-13 09:40:15 -07:00
Adam Monsen 1005b56d0f update link to rc verification instructions
Fineract Build & Cucumber tests (without E2E tests) / verify (main, build-core) (push) Canceled after 0s
Fineract Build & Cucumber tests (without E2E tests) / verify (main, cucumber) (push) Canceled after 0s
Fineract Build & Cucumber tests (without E2E tests) / verify (progressive-loan, build-progressive-loan) (push) Canceled after 0s
Fineract Docker Builds / build (false, docker-compose-postgresql.yml, postgresql) (push) Canceled after 0s
Fineract Docker Builds / build (true, docker-compose.yml, mariadb) (push) Canceled after 0s
Fineract E2E Tests / E2E Tests (Shard 1 of 10) (push) Canceled after 0s
Fineract E2E Tests / E2E Tests (Shard 10 of 10) (push) Canceled after 0s
Fineract E2E Tests / E2E Tests (Shard 2 of 10) (push) Canceled after 0s
Fineract E2E Tests / E2E Tests (Shard 3 of 10) (push) Canceled after 0s
Fineract E2E Tests / E2E Tests (Shard 4 of 10) (push) Canceled after 0s
Fineract E2E Tests / E2E Tests (Shard 5 of 10) (push) Canceled after 0s
Fineract E2E Tests / E2E Tests (Shard 6 of 10) (push) Canceled after 0s
Fineract E2E Tests / E2E Tests (Shard 7 of 10) (push) Canceled after 0s
Fineract E2E Tests / E2E Tests (Shard 8 of 10) (push) Canceled after 0s
Fineract E2E Tests / E2E Tests (Shard 9 of 10) (push) Canceled after 0s
Fineract Documentation build / build (push) Canceled after 0s
Fineract Cargo & Unit- & Integration tests - MariaDB / test (test-core-1) (push) Canceled after 0s
Fineract Cargo & Unit- & Integration tests - MariaDB / test (test-core-2) (push) Canceled after 0s
Fineract Cargo & Unit- & Integration tests - MariaDB / test (test-core-3) (push) Canceled after 0s
Fineract Cargo & Unit- & Integration tests - MariaDB / test (test-core-4) (push) Canceled after 0s
Fineract Cargo & Unit- & Integration tests - MariaDB / test (test-core-5) (push) Canceled after 0s
Fineract Cargo & Unit- & Integration tests - MySQL / test (test-core-1) (push) Canceled after 0s
Fineract Cargo & Unit- & Integration tests - MySQL / test (test-core-2) (push) Canceled after 0s
Fineract Cargo & Unit- & Integration tests - MySQL / test (test-core-3) (push) Canceled after 0s
Fineract Cargo & Unit- & Integration tests - MySQL / test (test-core-4) (push) Canceled after 0s
Fineract Cargo & Unit- & Integration tests - MySQL / test (test-core-5) (push) Canceled after 0s
Fineract Cargo & Unit- & Integration tests - PostgreSQL / test (test-core-1) (push) Canceled after 0s
Fineract Cargo & Unit- & Integration tests - PostgreSQL / test (test-core-2) (push) Canceled after 0s
Fineract Cargo & Unit- & Integration tests - PostgreSQL / test (test-core-3) (push) Canceled after 0s
Fineract Cargo & Unit- & Integration tests - PostgreSQL / test (test-core-4) (push) Canceled after 0s
Fineract Cargo & Unit- & Integration tests - PostgreSQL / test (test-core-5) (push) Canceled after 0s
Fineract Messaging Smoke Tests / Smoke Test with ActiveMQ (push) Canceled after 0s
Fineract Messaging Smoke Tests / Smoke Test with Kafka (push) Canceled after 0s
2025-10-13 09:23:35 -07:00
Adam Monsen e8673d5ff3 fix typos in step 9 re: running the binary 2025-10-13 09:19:15 -07:00
Adam Monsen 5d478f5fbb improve step 9 artifact verification gpg tips 2025-10-13 09:14:22 -07:00
Adam Monsen 513fbe1833 fix tarball explosion in release step 9 🧯 2025-10-11 17:17:32 -07:00
Adam Monsen ee55b4ef75 cucumber.adoc: fix list continuations
Fixes:

```
> Task :fineract-doc:asciidoctorPdf
chapters/testing/cucumber.adoc: line 409: list item index: expected 1, got 3
chapters/testing/cucumber.adoc: line 411: list item index: expected 2, got 4
chapters/testing/cucumber.adoc: line 418: list item index: expected 1, got 5
```

See https://docs.asciidoctor.org/asciidoc/latest/lists/continuation/#list-continuation
2025-10-11 17:17:31 -07:00
Adam Monsen cce46de767 further improve release steps 6 and 9
Originally I thought I was causing issues by running `./gradlew clean` separate from `./gradlew srcDistTar binaryDistTar`. If I did (or so I thought), a `fineract-provider/build/classes/java/main/git.properties` file was _sometimes_ not generated (the `generateGitProperties` task failing, misbehaving, or not even running? was the file getting deleted? no idea).

Unsure of the cause, at least I understand that file is supposed to end up at `BOOT-INF/classes/git.properties` in `fineract-provider-VERSION.jar` in the binary release tarball. Its contents are displayed at the `/fineract-provider/actuator/info` endpoint. I think that's more or less how it works, but I did not spend enough time on this to be certain.

Now I think it wasn't at all related to how I was running our Gradle tasks, but rather some nasty behavior in gradle-git-properties:

* https://github.com/n0mer/gradle-git-properties/issues/233
* https://github.com/gradle/gradle/issues/34177

Yuck. 🤢
2025-10-11 17:17:03 -07:00
Adam Monsen 6052ae60b4 release step 6: fix sanity check example 2025-10-10 14:33:47 -07:00
Adam Monsen 6f09c9425d improve staging doc and commands in release step 8 2025-10-09 10:58:08 -07:00
Adam Monsen 45404bafba doc: remove errant config but keep :sectlinks:
See 89e9cfcd7d

I think this was a typo. It's presumably changing the highlighter midstream and causing section numbering to start at the "Fineract Development Environment" chapter. But I really like `:sectlinks:` and I want to keep that! It's handy for sharing deep / sorta permanent links to specific sections (just click on any heading and copy the URL).
2025-10-09 10:29:07 -07:00
Adam Monsen 80c84af3a4 clean during artifact build release step 6
I think the `clean` task is important here, Felix and I were seeing
issues with jar filenames with incorrect version numbers. His work on
FINERACT-2341 may have fixed whatever was causing it, but let's
also/still do the `clean` before building release artifacts / candidates
just to be safe.
2025-10-09 10:29:00 -07:00
Adam Monsen 288319b874 improve release branch email template
* fix typos
* simplify
* adapt to how I use this today, including explicit branch name
2025-10-07 11:17:42 -07:00
Adam Monsen c1d005d00e improve release process kickoff email template
this is shorter & sweeter
2025-10-07 10:12:24 -07:00
Adam Monsen d48eb161ea FINERACT-2377: upgrade Gradle to 8.14.3
9 didn't work
2025-09-18 11:23:12 -05:00
Adam Monsen 6aea428d87 clarify "builds" refers to GitHub 2025-09-09 08:40:44 -07:00
Adam MonsenandArnold Gálovics 8f3ad9c092 FINERACT-2349: final 1.12.1 release doc updates
Tidy up docs post-1.12.1 release, alongside updates to https://cwiki.apache.org/confluence/display/FINERACT/
2025-08-21 18:16:53 +02:00
Adam MonsenandGitHub b9c2589247 FINERACT-2340: remove nonexistant project "fineract-api" (#4924) 2025-08-08 11:01:08 -06: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 0601bfca77 FINERACT-2339: squelch static weaving log messages
This quality of life patch reduces static weaving log message priority,
reducing the default gradle build output by about 60 lines.

example gradle run with these messages:

    > Configure project :custom
    ℹ Skipping static weaving configuration for non-Java project: custom

    > Configure project :fineract-accounting
    Configuring EclipseLink static weaving for fineract-accounting

    > Configure project :fineract-branch
    Configuring EclipseLink static weaving for fineract-branch
    ...
2025-08-06 09:33:03 -07:00
Adam Monsen e090da2a01 FINERACT-2335: don't rename release tarballs
Release tarballs are currently renamed (without changing the contents): apache-fineract-src-1.12.1.tar.gz becomes apache-fineract-1.12.1-src.tar.gz . The former matches the exploded directory name, the latter does not. The difference is subtle but meaningful... I strongly prefer the former because it's less surprising / more common, and easier to work with from scripts.

There's no functional difference, this should only impact aesthetics.

I did also shorten `binary` to `bin` so release artifact name lengths match.
2025-07-28 11:04:23 -07:00
Adam Monsen a8d23ee747 Merge branch 'release/1.12.1' into develop
* release/1.12.1:
  save 1.12.1 vote result
2025-07-27 15:45:27 -07:00
Adam Monsen 97aa931a59 save 1.12.1 vote result 2025-07-27 15:39:29 -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 Monsen c5275cbd34 FINERACT-2306: release doc fixes
* docs: link directly to FINERACT-873 and shorten it for brevity / clarity
* fineract plugin:
  * print email, don't send (WIP, but I might keep this... I prefer manually sending emails for now.)
  * support different release date and release branch date

I originally modified EmailService (disabling the actual email sending by just commenting it out) but I reverted that change per discussion with Ádám Sághy. You won't see this in the squashed final commit so I'm mentioning it here for posterity.

Ádám wrote:

> Is there a reason to remove the email sending?

I replied:

> Great question. I did think about this for a bit. I should have been more transparent about my intent. Allow me to explain.
>
> For the 1.12.0 release process I used the groovy code to generate email templates, but I wanted to edit the emails before sending so I disabled this line, and intentionally left it so, figuring I'd be the one using and [hopefully minimally] maintaining it for now.
>
> The Fineract (release) plugin appears to be more or less unmaintained for about 2 1/2 years now (save the semiautomated dependency updates). Looking at the code and history, I assumed I was the only one that would be using it now and in the near future. It also struck me how most everything it does is primarily to work around antiquated Apache release process steps that are not necessarily what we want for Fineract. Personally I think the Fineract release plugin should be simply replaced by a better release process.
>
> I think I'll add a comment there, and of course I welcome your feedback.
>
> Anyway yeah, my intent here was simply to do the simplest, safest, and most useful change here so I could keep this release plugin limping along until we improve the release process itself. No disrespect to @vidakovic and @vorburger and whomever else poured love into this code over the years. Perhaps the options for releasing Apache code have improved since then?
>
> Today we can of course do better (e.g. just let GitHub help us release with far fewer clicks/steps).
>
> Also I am not proposing we change the release process today or even soon. Maybe in a quarter or two I'll propose changes, if/when there seems to be political will around that.

Ádám replied:

> hmm... i am not particularly mind if you are reworking the release process, but i think having a "send" step which was meant to sending a mail but now the actual sending got commented out is misleading, no?

I replied:

> Yep, you're right. I think I'll just back out this change because I agree with you it's bad to just leave the send() call commented out without any other changes.
2025-05-30 09:12:44 -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
Adam MonsenandAdam Saghy efabd341df FINERACT-2231: remove links unhelpful in future releases
The Fineract dev list thread links were specific to the 1.11.0 release.
It wouldn't make sense to include them in future [VOTE] emails.
2025-04-07 12:56:54 +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
Adam MonsenandAdam Saghy 3f2079566c FINERACT-2219: capture v1.11.0 lessons learned in asciidoc and fineract release plugin
* don't bother making MD5 files, they aren't necessary
* step12 changed, stub it out and reference FINERACT-1817 for future improvements (looks like svn mv is not yet supported)
* use latest vote message template, based on https://lists.apache.org/thread/cs5t0ho39ktg2jxr74dqd7fg9nyfcz3k
* use more explicit form of `git push` to push release tag, see https://stackoverflow.com/questions/5195859/how-do-you-push-a-tag-to-a-remote-repository-using-git
* use consistent language re: tarball, file, artifact, release candidate
* fix some source listings that shouldn't be using macro expansion: this messes up URLs (hides scheme)
* fix asciidoc link to FINERACT-1229
* clean up copyright years: use variable properly and remove unnecessary extra copyright in preface (it appears directly above, in the license)
* de-indent URL in apache license -- this makes the link clickable in rendered HTML and PDF asciidoc outputs
2025-03-24 14:30:21 +01:00
Adam MonsenandAdam Saghy 34cdf4d01f FINERACT-2216: add github project metadata
1. Link to project homepage at https://fineract.apache.org
2. Add some tags/labels/topics

See also:

* https://github.com/apache/infrastructure-asfyaml#repo_meta
* https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/classifying-your-repository-with-topics
2025-03-19 12:13:45 +01:00
Adam MonsenandGitHub 8b80f5a934 FINERACT-2170: improve asciidoc: clean URIs, more (#4271)
* disable broken fineract-client API asciidoc include
  * this has a side effect of removing ~1,200 pages from the PDF
* remove duplicated/outdated text, reduce sources of truth
  * link to current FAQ
  * introduction is all references now... it was way out of date and also needed formatting fixes
* unset `show-link-uri` to improve PDF rendering
* remove unnecessary/unused `.asciidoctorconfig` file
2025-01-29 12:41:34 -06:00
Adam MonsenandAdam Saghy 4956bdd574 FINERACT-2149: disable liquibase phone home
At some point, Liquibase added an analytics/telemetry "phone home" to gather user data.

I get how companies and FOSS projects greatly benefit from knowing more about their users, but I think this should only be done with proper consent. I would not assume/expect any libraries to send analytics home. The default behavior of trackers like these should always be to *not* phone home without a user first consenting / opting in.

---

I'm not sure this is the right change, but it works (feedback welcome). My naïve test/check to know this works is visually inspecting the output of the log message I added in TenantDatabaseUpgradeService to see if `liquibase.analytics.enabled` is set, and to what. I'm happy to automate this, but it seemed unnecessary (again, feedback welcome).

We could also disable the phone home with an environment variable ( LIQUIBASE_ANALYTICS_ENABLED=false , see https://docs.liquibase.com/analytics/home.html ). I'm not sure where that should be set if we did. Likely several places (for build/dev/test/ci/qa/etc.).

I originally noticed the phone home because I block requests from my computer to 3rd party tracking/analytics services, and I was getting this error in my console:

    java.net.ConnectException: Connection refused at liquibase.analytics.LiquibaseAnalyticsListener

At first I misunderstood this as a database connection error, but it was really just liquibase throwing an error because it couldn't connect to its own analytics server.

If we were to create a configurable property, I think the ideal place to set the value would be in fineract-provider/src/main/resources/application.properties, (default to false, allow override) but our version of spring boot doesn't support it yet ( see https://github.com/spring-projects/spring-boot/issues/43067 ) so we'd have to add the usual scaffolding required for a Fineract setting. I'm not sure we want/need that, because I can't imagine anyone *wanting* to set the flag to `true`, and my naïve hardcoded global change is less code to maintain than providing a configurable setting. If there's demand to make it configurable later, we could of course do that (especially once it becomes easier to do so). I feel like how we let Liquibase behave is up to us, though. An under the hood / upstream decision we get to make.

See also:

* https://lists.apache.org/thread/5s7zjsxdcqk1qvjnc1wbhqqv66shpl54
* Analytics is enabled by default in OSS version · Issue #6503 · liquibase/liquibase · GitHub https://github.com/liquibase/liquibase/issues/6503
* Add a method for Spring Boot to configure the new analytics feature · Issue #6501 · liquibase/liquibase · GitHub https://github.com/liquibase/liquibase/issues/6501
2024-11-27 17:13:23 +01:00
Adam MonsenandArnold Gálovics bb18aadb74 FINERACT-2147: fix extra swagger UI endpoint paths
I noticed an extra `v1/` while visiting https://localhost:8443/fineract-provider/swagger-ui/index.html

All fineract-provider (unit) tests passed.

I also manually tested out hitting a few /api/v1/ endpoints via the Swagger UI web page at the URL above and those worked as well.
2024-11-19 16:54:58 +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