Skip to content

Resolves #1830 Merged the 1.3.2-rc.1 release in develop branch.#1171

Merged
ckm007 merged 2 commits into
mosip:developfrom
ashok-ksharma:develop
Jun 5, 2026
Merged

Resolves #1830 Merged the 1.3.2-rc.1 release in develop branch.#1171
ckm007 merged 2 commits into
mosip:developfrom
ashok-ksharma:develop

Conversation

@ashok-ksharma

@ashok-ksharma ashok-ksharma commented Jun 5, 2026

Copy link
Copy Markdown
Contributor

Resolves #1830 Merged the 1.3.1-rc.1 release in develop branch.

Summary by CodeRabbit

  • Documentation

    • Enhanced deployment instructions with Kubernetes cluster setup and management commands
    • Added comprehensive artifact server and platform documentation
  • Chores

    • Updated localization bundles across multiple languages with refined translations
    • Upgraded Maven, Docker, and key dependencies to latest versions
    • Switched license to Mozilla Public License 2.0
    • Refined theme styling and improved Helm deployment configuration with graceful shutdown handling

Signed-off-by: Ashok Kumar Sharma <ashok@mosip.io>
@coderabbitai

coderabbitai Bot commented Jun 5, 2026

Copy link
Copy Markdown

Review Change Stack

Walkthrough

This PR updates the artifactory-ref-impl repository with compliance, documentation, dependency, localization, styling, and deployment improvements. It consolidates licensing under MPL 2.0 and MIT, enriches documentation with AGENTS.md and README updates, bumps Maven dependencies to version 1.4.0-SNAPSHOT, refactors i18n bundles with restructured error messages across multiple locales, refreshes theme colors and spacing, adjusts CI/CD workflow dispatch inputs, and configures Kubernetes pod lifecycle and resource defaults.

Changes

Compliance, Documentation, Localization, and Deployment Updates

Layer / File(s) Summary
License and legal documentation migration
LICENSE (removed), LICENSE.txt, NOTICE, THIRD-PARTY-NOTICES.txt, licenses/Apache-2.0.txt, licenses/MIT.txt, licenses/MPL-2.0.txt
Replaced old MIT license with MPL 2.0, added comprehensive third-party attribution notices, and organized license texts in a dedicated licenses/ directory for compliance and reference.
Documentation and build infrastructure updates
AGENTS.md, README.md, artifacts/Dockerfile, artifacts/build_version.sh, artifacts/configure.sh
Added AGENTS.md covering artifact server purpose, Docker/Kubernetes operations, i18n conventions, and CI/CD workflows; expanded README with bullet-list artifact catalog and K8s deployment instructions; upgraded Maven to 3.9.16; added build_version.sh snapshot artifact fetcher.
Maven dependency version updates
artifacts/pom.xml
Bumped auth-adapter, kernel-transliteration, kernel-smsserviceprovider, kernel-ref-idobjectvalidator, kernel-virusscanner-clamav, biosdk-client, demosdk-client, mock-sdk, redis-cache to 1.4.0-SNAPSHOT; changed registration-api-impl to 1.2.0.2; updated image-compressor to 0.1.0-SNAPSHOT.
Internationalization bundle updates and error message restructuring
artifacts/src/i18n/esignet-i18n-bundle/*, artifacts/src/i18n/esignet-signup-i18n-bundle/*, artifacts/src/i18n/idp-i18n-bundle/*, artifacts/src/i18n/resident-i18n-bundle/*, artifacts/src/i18n/mock-relying-party-i18n-bundle/*, artifacts/src/i18n/pmp-*-bundle/*, artifacts/src/i18n/pre-registration-i18n-bundle/*, artifacts/src/i18n/admin-entity-spec-bundle/*
Refactored i18n files across all locales (ar, en, hi, km, fra, hin, kan, tam, eng, ara, spa) by updating consent/authorization messaging, shortening validation error text ("Invalid X" instead of "Please Enter Valid X"), removing deprecated keys (logo_alt, max-limit, KBI login, Approve/Reject actions), and consolidating error handling into unified error objects with nested modality-specific groups (otp, biometrics, pin, wallet, password, kba) plus status code headers/subheaders.
Theme CSS variable updates
artifacts/src/theme/esignet-signup-theme/variables.css, artifacts/src/theme/esignet-theme/variables.css
Updated esignet-signup-theme with new footer color (#f7f9fd) and removed tail component variables; updated esignet-theme root with new brand colors (#004282), adjusted button/toggle/logo/navbar variables, removed min-height override in orange theme, and reformatted login card separator gradient.
CI/CD workflow dispatch input refinement
.github/workflows/tag.yml
Made DRAFT input required with False default, removed TOKEN secret forwarding (retained SLACK_WEBHOOK_URL), and narrowed reusable workflow arguments to TAG, BODY, PRE_RELEASE, DRAFT.
Kubernetes and Helm deployment configuration
helm/artifactory/values.yaml, helm/artifactory/templates/deployment.yaml, helm/artifactory/.gitignore, deploy/install.sh
Added explicit commonAnnotations in Helm values, increased default pod resource limits, replaced empty lifecycleHooks with preStop sleep (30s), set terminationGracePeriodSeconds to 60, updated persistence volume permissions init container image to mosipid/os-shell:12-debian-12-r46, added Chart.lock to .gitignore, and cleaned up trailing whitespace in kubectl commands.

🎯 3 (Moderate) | ⏱️ ~25 minutes

🐰 Hops through the license change with glee,
i18n bundles now structured, error messages so neat!
Theme colors dance in shades of blue so fine,
Kubernetes pods sleep softly at design time. 🎨⚙️

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Title check ✅ Passed The title references resolving issue #1830 and merging a release, but states '1.3.2-rc.1' while the PR objectives mention '1.3.1-rc.1', creating inconsistency. However, the title does accurately reflect the primary action (merging a release into develop) and is sufficiently clear for scanning history.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Signed-off-by: Ashok Kumar Sharma <ashok@mosip.io>

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 13

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (2)
.github/workflows/tag.yml (1)

26-35: ⚠️ Potential issue | 🟠 Major | ⚡ Quick win

Scope permissions explicitly for the tagging workflow.

This job currently inherits default GITHUB_TOKEN permissions; static analysis already flags it as over-broad. Add a minimal permissions block (for tagging, usually contents: write).

Proposed change
 jobs:
   tag-branch:
+    permissions:
+      contents: write
     uses: mosip/kattu/.github/workflows/tag.yml@master
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In @.github/workflows/tag.yml around lines 26 - 35, The tagging job "tag-branch"
currently inherits default GITHUB_TOKEN permissions; add an explicit minimal
permissions block to scope the token (e.g., set permissions: contents: write)
under the tag-branch job declaration so the workflow only has the required write
access for creating tags/releases rather than broad default permissions.
artifacts/src/i18n/pmp-i18n-bundle/i18n/eng.json (1)

444-459: ⚠️ Potential issue | 🟠 Major | ⚡ Quick win

Remove the duplicate top-level filters key in artifacts/src/i18n/pmp-i18n-bundle/i18n/eng.json (lines 444-459).
eng.json defines filters twice at the top level, so the earlier values are overridden by the later block (or strict parsers fail), making the “Map Policy Group” / “Save” text ineffective.

Suggested fix
   "filters": {
     "titleTxt": "Map Policy Group",
     "footerButtons": {
       "resetTxt": "Reset",
       "cancelTxt": "Cancel",
       "applyTxt": "Save"
     }
   },
-  "filters": {
-    "titleTxt": "Add Filters",
-    "footerButtons": {
-        "resetTxt": "Reset",
-        "cancelTxt": "Cancel",
-        "applyTxt": "Apply"
-    }
-  },
   "isActive": {
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@artifacts/src/i18n/pmp-i18n-bundle/i18n/eng.json` around lines 444 - 459,
There are two top-level "filters" objects; remove the duplicate and merge
necessary keys so both titleTxt and footerButtons values are preserved — locate
the duplicate "filters" blocks (with "titleTxt": "Map Policy Group"/"Add
Filters" and their "footerButtons") and either delete the unintended block or
combine them into a single "filters" object ensuring the desired titleTxt and
footerButtons (resetTxt, cancelTxt, applyTxt) values remain consistent (e.g.,
keep "titleTxt": "Map Policy Group" and "applyTxt": "Save" if those are the
intended strings).
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@artifacts/build_version.sh`:
- Around line 3-5: Update the snapshot variables in artifacts/build_version.sh
so they match the snapshot version used in the POM: change version from
1.2.0.1-SNAPSHOT to 1.4.0-SNAPSHOT (to match
<auth-adapter.version>1.4.0-SNAPSHOT</auth-adapter.version>) and ensure
idp_auth_wrapper_version and esignet_auth_wrapper_version use the same
1.4.0-SNAPSHOT release-versioning convention so all snapshot metadata lookups
succeed.

In `@artifacts/src/i18n/esignet-i18n-bundle/ar.json`:
- Line 27: The "address" translation currently incorrectly contains a city name
"تبوك"; update the JSON entry for the "address" key in ar.json to a generic
Arabic label (e.g., "العنوان") so the consent claim is correctly labeled; locate
the "address" key and replace its value with the proper translation "العنوان".

In `@artifacts/src/i18n/esignet-i18n-bundle/hi.json`:
- Around line 294-295: The Hindi locale added non-canonical keys
data_exchange_failedKYC and kyc_signing_certificate_failedKYC which breaks
parity with other locales; revert these two entries to the canonical error-key
names used in the shared error-key contract (match the exact key strings used in
en.json/other locales) so Hindi uses the same keys, and if you changed any
runtime references to the new keys, revert them to the canonical keys as well
(search for data_exchange_failedKYC and kyc_signing_certificate_failedKYC to
locate edits).

In `@artifacts/src/i18n/esignet-signup-i18n-bundle/en.json`:
- Line 125: The user-facing string keys contain typos and punctuation errors;
update the value for permission_denied_description to correct the grammar and
remove the extra period (e.g., "Your camera permission has been disabled. Please
enable camera permission from your browser settings.") and fix the misspelling
"conditionditions" on Line 141 to "conditions" (locate the key/value containing
the repeated word and correct it). Ensure both changes are applied to the
en.json i18n bundle so the published strings are grammatically correct.

In `@artifacts/src/i18n/esignet-signup-i18n-bundle/km.json`:
- Line 118: The Khmer locale string for "too_many_verify_attempts" contains
mixed English ("Kindly"); update the value for the "too_many_verify_attempts"
key in km.json to a fully Khmer phrase (either remove "Kindly" or replace it
with the appropriate Khmer translation) so the error message is entirely in
Khmer; ensure you only modify the string value for the
"too_many_verify_attempts" key and keep punctuation and JSON formatting intact.

In `@artifacts/src/i18n/pmp-entity-spec-bundle/entity-spec/policy-mapping.json`:
- Around line 226-233: The English label for the policy filter is wrong: change
the value of policyName.filterlabel.eng (the "filterlabel" object under the
entry with "filtername": "policyName") from "Partner Name" to "Policy Name" so
the UI displays the correct English label.

In `@artifacts/src/theme/esignet-theme/variables.css`:
- Line 59: Typo in the CSS variable name: rename the variable
--side-section-bg-with to --side-section-bg-width in variables.css (update any
occurrences of --side-section-bg-with, including its definition and any usages
like var(--side-section-bg-with)), and ensure the same correction is applied in
the matching signup theme file so both themes use the consistent
--side-section-bg-width identifier.

In `@helm/artifactory/templates/deployment.yaml`:
- Line 37: Replace the inline default that treats 0 as empty by rendering
terminationGracePeriodSeconds via an explicit presence check: test whether the
value key "terminationGracePeriodSeconds" exists on .Values with hasKey (or
equivalent) and output .Values.terminationGracePeriodSeconds when present,
otherwise output 60; change the template expression around
terminationGracePeriodSeconds accordingly so a configured 0 is preserved.

In `@licenses/MIT.txt`:
- Line 3: licenses/MIT.txt currently attributes “Copyright © Clément Darras”
under MIT while the upstream mosip/kattu project is CC0; update the notices so
mosip/kattu is recorded as CC0 in THIRD-PARTY-NOTICES.txt (change any “MIT
License (Inferred)” for mosip/kattu to “CC0 1.0 Universal” and include a link to
upstream LICENSE), and verify that the MIT entry in licenses/MIT.txt only covers
actual MIT-licensed components authored by Clément Darras referenced in
THIRD-PARTY-NOTICES.txt (if no such MIT component exists, remove or relocate the
Clément Darras line to the correct per-component notice); ensure consistency
between the LICENSE text used (CC0 vs MIT) and the associated component name
mosip/kattu and author string.

In `@NOTICE`:
- Around line 16-17: Update the NOTICE file to point the Homepage value to the
official MOSIP repository URL instead of the forked user URL and correct the
license directory reference to match the added directory name (change any
occurrences of "license/" to "licenses/"); ensure you update both the Homepage
entry and the license path occurrences (including the entries around the current
Homepage line and the entries referenced at lines 36-37) so attribution and
compliance traceability reference the correct repository and directory.

In `@README.md`:
- Around line 34-50: Update the fenced code blocks in README.md to include a
shell language tag (e.g., ```sh or ```bash) and remove leading "$" prompts from
command-only snippets; specifically change the exported KUBECONFIG and the
install/delete/restart examples so the fences read like ```sh/```bash and
commands are plain (no "$" prefixes) to satisfy markdownlint rules MD040/MD014.
- Around line 27-30: Remove the duplicated sentence "All these artifacts are
released as a part of the Mosip Release with some of them being taken from open
sourced repository as per the need." leaving a single occurrence in README.md;
locate both instances (the repeated sentence at the two adjacent lines) and
delete one so only one copy remains to prevent drift.

In `@THIRD-PARTY-NOTICES.txt`:
- Around line 37-40: Update the third-party notices to point to canonical
upstream sources and correct the licenses directory path: replace the forked
homepage URL "https://github.com/Rakshithasai123/artifactory-ref-impl" with the
official project upstream URL and change the final pointer text from "license/"
to "licenses/" (update the "Homepage:" line and the "Full license texts..." line
accordingly) so the references are accurate.

---

Outside diff comments:
In @.github/workflows/tag.yml:
- Around line 26-35: The tagging job "tag-branch" currently inherits default
GITHUB_TOKEN permissions; add an explicit minimal permissions block to scope the
token (e.g., set permissions: contents: write) under the tag-branch job
declaration so the workflow only has the required write access for creating
tags/releases rather than broad default permissions.

In `@artifacts/src/i18n/pmp-i18n-bundle/i18n/eng.json`:
- Around line 444-459: There are two top-level "filters" objects; remove the
duplicate and merge necessary keys so both titleTxt and footerButtons values are
preserved — locate the duplicate "filters" blocks (with "titleTxt": "Map Policy
Group"/"Add Filters" and their "footerButtons") and either delete the unintended
block or combine them into a single "filters" object ensuring the desired
titleTxt and footerButtons (resetTxt, cancelTxt, applyTxt) values remain
consistent (e.g., keep "titleTxt": "Map Policy Group" and "applyTxt": "Save" if
those are the intended strings).
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: f4e98e4b-31c9-4f01-8dfb-a0b94f08d06a

📥 Commits

Reviewing files that changed from the base of the PR and between a02eabb and b4abae5.

⛔ Files ignored due to path filters (6)
  • artifacts/src/hsm/client-21.zip is excluded by !**/*.zip
  • artifacts/src/hsm/client-alpine.zip is excluded by !**/*.zip
  • artifacts/src/hsm/client-ubuntu.zip is excluded by !**/*.zip
  • artifacts/src/hsm/client.zip is excluded by !**/*.zip
  • artifacts/src/jre/zulu11.41.23-ca-fx-jre11.0.8-win_x64.zip is excluded by !**/*.zip
  • artifacts/src/master-templates/machine_type.csv is excluded by !**/*.csv
📒 Files selected for processing (71)
  • .github/workflows/tag.yml
  • AGENTS.md
  • LICENSE
  • LICENSE.txt
  • NOTICE
  • README.md
  • THIRD-PARTY-NOTICES.txt
  • artifacts/Dockerfile
  • artifacts/build_version.sh
  • artifacts/configure.sh
  • artifacts/pom.xml
  • artifacts/src/i18n/admin-entity-spec-bundle/entity-spec/dynamicfields.json
  • artifacts/src/i18n/admin-entity-spec-bundle/entity-spec/templates.json
  • artifacts/src/i18n/esignet-i18n-bundle/ar.json
  • artifacts/src/i18n/esignet-i18n-bundle/default.json
  • artifacts/src/i18n/esignet-i18n-bundle/en.json
  • artifacts/src/i18n/esignet-i18n-bundle/hi.json
  • artifacts/src/i18n/esignet-i18n-bundle/km.json
  • artifacts/src/i18n/esignet-i18n-bundle/kn.json
  • artifacts/src/i18n/esignet-i18n-bundle/ta.json
  • artifacts/src/i18n/esignet-signup-i18n-bundle/default.json
  • artifacts/src/i18n/esignet-signup-i18n-bundle/en.json
  • artifacts/src/i18n/esignet-signup-i18n-bundle/km.json
  • artifacts/src/i18n/idp-i18n-bundle/ar.json
  • artifacts/src/i18n/idp-i18n-bundle/ara.json
  • artifacts/src/i18n/idp-i18n-bundle/default.json
  • artifacts/src/i18n/idp-i18n-bundle/en.json
  • artifacts/src/i18n/idp-i18n-bundle/eng.json
  • artifacts/src/i18n/idp-i18n-bundle/hi.json
  • artifacts/src/i18n/idp-i18n-bundle/hin.json
  • artifacts/src/i18n/idp-i18n-bundle/kan.json
  • artifacts/src/i18n/idp-i18n-bundle/kn.json
  • artifacts/src/i18n/idp-i18n-bundle/ta.json
  • artifacts/src/i18n/idp-i18n-bundle/tam.json
  • artifacts/src/i18n/mock-relying-party-i18n-bundle/ar.json
  • artifacts/src/i18n/mock-relying-party-i18n-bundle/en.json
  • artifacts/src/i18n/mock-relying-party-i18n-bundle/hi.json
  • artifacts/src/i18n/mock-relying-party-i18n-bundle/km.json
  • artifacts/src/i18n/mock-relying-party-i18n-bundle/kn.json
  • artifacts/src/i18n/mock-relying-party-i18n-bundle/ta.json
  • artifacts/src/i18n/pmp-entity-spec-bundle/entity-spec/policy-mapping.json
  • artifacts/src/i18n/pmp-i18n-bundle/i18n/ara.json
  • artifacts/src/i18n/pmp-i18n-bundle/i18n/eng.json
  • artifacts/src/i18n/pmp-i18n-bundle/i18n/fra.json
  • artifacts/src/i18n/pmp-i18n-bundle/i18n/hin.json
  • artifacts/src/i18n/pmp-i18n-bundle/i18n/kan.json
  • artifacts/src/i18n/pmp-i18n-bundle/i18n/tam.json
  • artifacts/src/i18n/pre-registration-i18n-bundle/i18n/ara.json
  • artifacts/src/i18n/pre-registration-i18n-bundle/i18n/eng.json
  • artifacts/src/i18n/pre-registration-i18n-bundle/i18n/fra.json
  • artifacts/src/i18n/pre-registration-i18n-bundle/i18n/hin.json
  • artifacts/src/i18n/pre-registration-i18n-bundle/i18n/kan.json
  • artifacts/src/i18n/pre-registration-i18n-bundle/i18n/tam.json
  • artifacts/src/i18n/resident-i18n-bundle/ara.json
  • artifacts/src/i18n/resident-i18n-bundle/default.json
  • artifacts/src/i18n/resident-i18n-bundle/eng.json
  • artifacts/src/i18n/resident-i18n-bundle/fra.json
  • artifacts/src/i18n/resident-i18n-bundle/hin.json
  • artifacts/src/i18n/resident-i18n-bundle/kan.json
  • artifacts/src/i18n/resident-i18n-bundle/spa.json
  • artifacts/src/i18n/resident-i18n-bundle/tam.json
  • artifacts/src/theme/esignet-signup-theme/variables.css
  • artifacts/src/theme/esignet-theme/variables.css
  • deploy/install.sh
  • helm/artifactory/.gitignore
  • helm/artifactory/templates/deployment.yaml
  • helm/artifactory/values.yaml
  • licenses/Apache-2.0.txt
  • licenses/MIT.txt
  • licenses/MPL-2.0.txt
  • licenses/NOTICE
💤 Files with no reviewable changes (20)
  • artifacts/src/i18n/idp-i18n-bundle/kn.json
  • LICENSE
  • artifacts/src/i18n/idp-i18n-bundle/ara.json
  • artifacts/src/i18n/idp-i18n-bundle/hin.json
  • artifacts/src/i18n/idp-i18n-bundle/tam.json
  • artifacts/src/i18n/idp-i18n-bundle/en.json
  • artifacts/src/i18n/idp-i18n-bundle/kan.json
  • artifacts/src/i18n/resident-i18n-bundle/eng.json
  • artifacts/src/i18n/resident-i18n-bundle/tam.json
  • artifacts/src/i18n/idp-i18n-bundle/ar.json
  • artifacts/src/i18n/idp-i18n-bundle/hi.json
  • artifacts/src/i18n/idp-i18n-bundle/ta.json
  • artifacts/src/i18n/idp-i18n-bundle/eng.json
  • artifacts/src/i18n/resident-i18n-bundle/ara.json
  • artifacts/src/i18n/resident-i18n-bundle/kan.json
  • artifacts/src/i18n/resident-i18n-bundle/default.json
  • artifacts/src/i18n/idp-i18n-bundle/default.json
  • artifacts/src/i18n/resident-i18n-bundle/fra.json
  • artifacts/src/i18n/resident-i18n-bundle/hin.json
  • artifacts/src/i18n/resident-i18n-bundle/spa.json

Comment thread artifacts/build_version.sh
Comment thread artifacts/src/i18n/esignet-i18n-bundle/ar.json
Comment thread artifacts/src/i18n/esignet-i18n-bundle/hi.json
Comment thread artifacts/src/i18n/esignet-signup-i18n-bundle/en.json
Comment thread artifacts/src/i18n/esignet-signup-i18n-bundle/km.json
Comment thread licenses/MIT.txt
Comment thread NOTICE
Comment thread README.md
Comment thread README.md
Comment thread THIRD-PARTY-NOTICES.txt
@ashok-ksharma ashok-ksharma changed the title Resolves #1830 Merged the 1.3.1-rc.1 release in develop branch. Resolves #1830 Merged the 1.3.2-rc.1 release in develop branch. Jun 5, 2026
@ckm007 ckm007 merged commit 0dc7ef4 into mosip:develop Jun 5, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants