This is an automated email from the ASF dual-hosted git repository. sergehuber pushed a commit to branch UNOMI-973-tenant-file-endpoints in repository https://gitbox.apache.org/repos/asf/unomi.git
commit ada2ddcb93be49f35332821088ef198bddf9762e Merge: d80dff251 ad5fefbb2 Author: Serge Huber <[email protected]> AuthorDate: Tue Oct 6 15:57:56 2026 +0200 Merge remote-tracking branch 'github/master' into UNOMI-973-tenant-file-endpoints .github/dependabot.yml | 11 ++ .mvn/extensions.xml | 4 +- AGENTS.md | 4 +- INMEMORY_PERSISTENCE_REQUIREMENTS.md | 6 +- KEYS | 62 ++++++++++ README.md | 2 +- api/pom.xml | 2 +- .../main/java/org/apache/unomi/api/ServerInfo.java | 4 +- bom/artifacts/pom.xml | 2 +- bom/pom.xml | 2 +- common/pom.xml | 2 +- distribution/pom.xml | 2 +- docker/README.md | 14 +-- docker/pom.xml | 2 +- extensions/geonames/pom.xml | 2 +- extensions/geonames/rest/pom.xml | 2 +- extensions/geonames/services/pom.xml | 2 +- extensions/groovy-actions/karaf-kar/pom.xml | 2 +- extensions/groovy-actions/pom.xml | 2 +- extensions/groovy-actions/rest/pom.xml | 2 +- extensions/groovy-actions/services/pom.xml | 2 +- extensions/healthcheck/pom.xml | 2 +- extensions/json-schema/pom.xml | 2 +- extensions/json-schema/rest/pom.xml | 2 +- extensions/json-schema/services/pom.xml | 2 +- extensions/json-schema/shell-commands/pom.xml | 2 +- extensions/lists-extension/actions/pom.xml | 2 +- extensions/lists-extension/pom.xml | 2 +- extensions/lists-extension/rest/pom.xml | 2 +- extensions/lists-extension/services/pom.xml | 2 +- extensions/log4j-extension/pom.xml | 2 +- extensions/pom.xml | 2 +- extensions/privacy-extension/pom.xml | 2 +- extensions/privacy-extension/rest/pom.xml | 2 +- .../unomi/privacy/rest/PrivacyServiceEndPoint.java | 4 +- extensions/privacy-extension/services/pom.xml | 2 +- extensions/router/pom.xml | 2 +- extensions/router/router-api/pom.xml | 2 +- extensions/router/router-core/pom.xml | 2 +- extensions/router/router-karaf-feature/pom.xml | 2 +- extensions/router/router-rest/pom.xml | 2 +- extensions/router/router-service/pom.xml | 2 +- extensions/salesforce-connector/actions/pom.xml | 2 +- extensions/salesforce-connector/karaf-kar/pom.xml | 2 +- extensions/salesforce-connector/pom.xml | 2 +- extensions/salesforce-connector/rest/pom.xml | 2 +- extensions/salesforce-connector/services/pom.xml | 2 +- extensions/weather-update/core/pom.xml | 2 +- extensions/weather-update/karaf-kar/pom.xml | 2 +- extensions/weather-update/pom.xml | 2 +- extensions/web-tracker/pom.xml | 2 +- extensions/web-tracker/wab/pom.xml | 2 +- extensions/web-tracker/wab/yarn.lock | 62 +++++----- generate-manual-config.sh | 2 +- graphql/README.md | 2 +- graphql/cxs-impl/pom.xml | 2 +- graphql/graphql-ui/package.json | 4 +- graphql/graphql-ui/pom.xml | 2 +- graphql/graphql-ui/yarn.lock | 74 ++++++------ graphql/karaf-feature/pom.xml | 2 +- graphql/pom.xml | 2 +- itests/pom.xml | 8 +- .../apache/unomi/itests/PersistenceServiceIT.java | 130 ++++++++++++++++++++- .../org/apache/unomi/itests/ProfileServiceIT.java | 19 +-- .../migration/Migrate16xToCurrentVersionIT.java | 30 ++--- kar/pom.xml | 2 +- lifecycle-watcher/pom.xml | 2 +- manual/pom.xml | 2 +- manual/src/main/asciidoc/5-min-quickstart.adoc | 4 +- manual/src/main/asciidoc/architecture.adoc | 2 +- .../src/main/asciidoc/building-and-deploying.adoc | 4 +- manual/src/main/asciidoc/builtin-event-types.adoc | 2 +- manual/src/main/asciidoc/configuration.adoc | 10 +- .../asciidoc/connectors/salesforce-connector.adoc | 2 +- manual/src/main/asciidoc/datamodel.adoc | 4 +- manual/src/main/asciidoc/foreword.adoc | 2 +- manual/src/main/asciidoc/getting-started.adoc | 2 +- .../main/asciidoc/how-profile-tracking-works.adoc | 14 +-- .../src/main/asciidoc/jsonSchema/introduction.adoc | 2 +- .../asciidoc/migrations/migrate-2.x-to-3.0.adoc | 10 +- ...ate-3.0-to-3.1.adoc => migrate-3.0-to-4.0.adoc} | 96 +++++++-------- .../migrate-elasticsearch-to-opensearch.adoc | 2 +- .../src/main/asciidoc/migrations/migrations.adoc | 10 +- .../asciidoc/migrations/v2-compatibility-mode.adoc | 4 +- .../asciidoc/migrations/v2-v3-compatibility.adoc | 8 +- .../migrations/writing-migration-scripts.adoc | 12 +- manual/src/main/asciidoc/multitenancy.adoc | 16 +-- manual/src/main/asciidoc/privacy.adoc | 4 +- manual/src/main/asciidoc/recipes.adoc | 4 +- manual/src/main/asciidoc/request-examples.adoc | 8 +- manual/src/main/asciidoc/samples/login-sample.adoc | 8 +- .../src/main/asciidoc/samples/twitter-sample.adoc | 2 +- .../asciidoc/samples/weather-update-sample.adoc | 2 +- manual/src/main/asciidoc/scheduler.adoc | 4 +- manual/src/main/asciidoc/security.adoc | 6 +- manual/src/main/asciidoc/shell-commands.adoc | 4 +- manual/src/main/asciidoc/tutorial.adoc | 2 +- .../main/asciidoc/upgrades/platform-upgrades.adoc | 2 +- .../upgrades/upgrade-cxf-jackson-jetty.adoc | 2 +- .../asciidoc/upgrades/upgrade-jira-reference.adoc | 2 +- .../main/asciidoc/upgrades/upgrade-opensearch.adoc | 2 +- .../main/asciidoc/upgrades/upgrade-overview.adoc | 2 +- manual/src/main/asciidoc/web-tracker.adoc | 4 +- manual/src/main/asciidoc/whats-new.adoc | 12 +- manual/src/main/asciidoc/writing-plugins.adoc | 6 +- metrics/pom.xml | 2 +- package/pom.xml | 4 +- .../main/resources/etc/org.ops4j.pax.logging.cfg | 3 +- persistence-elasticsearch/conditions/pom.xml | 2 +- persistence-elasticsearch/core/pom.xml | 2 +- .../ElasticSearchPersistenceServiceImpl.java | 38 +++++- .../ElasticSearchScopePurgeQueryTest.java | 107 +++++++++++++++++ persistence-elasticsearch/pom.xml | 2 +- persistence-opensearch/conditions/pom.xml | 2 +- persistence-opensearch/core/pom.xml | 2 +- .../OpenSearchPersistenceServiceImpl.java | 49 +++++--- .../opensearch/OpenSearchScopePurgeQueryTest.java | 74 ++++++++++++ persistence-opensearch/pom.xml | 2 +- persistence-spi/pom.xml | 2 +- .../unomi/persistence/spi/PersistenceService.java | 5 +- plugins/advanced-conditions/pom.xml | 2 +- plugins/baseplugin/pom.xml | 2 +- plugins/hover-event/pom.xml | 2 +- plugins/kafka-injector/pom.xml | 2 +- plugins/mail/pom.xml | 2 +- plugins/optimization-test/pom.xml | 2 +- plugins/pom.xml | 2 +- plugins/request/pom.xml | 2 +- plugins/tracked-event/pom.xml | 2 +- pom.xml | 12 +- rest/README.md | 2 +- rest/pom.xml | 2 +- .../rest/authentication/AuthenticationFilter.java | 2 +- .../impl/DefaultRestAuthenticationConfig.java | 2 +- .../rest/endpoints/ProfileServiceEndPoint.java | 3 + samples/graphql-providers-feature/pom.xml | 2 +- samples/graphql-providers/pom.xml | 2 +- samples/groovy-actions/pom.xml | 4 +- samples/login-integration/pom.xml | 2 +- samples/login-integration/setup.sh | 2 +- samples/pom.xml | 2 +- samples/trainingplugin/pom.xml | 2 +- samples/tweet-button-plugin/pom.xml | 2 +- scripting/pom.xml | 2 +- services-common/pom.xml | 2 +- services/pom.xml | 2 +- .../services/impl/profiles/ProfileServiceImpl.java | 5 + .../impl/InMemoryPersistenceServiceImpl.java | 4 +- .../impl/InMemoryPersistenceServiceImplTest.java | 5 +- .../impl/profiles/ProfileServiceImplTest.java | 33 ++++++ tools/pom.xml | 2 +- tools/shell-commands/pom.xml | 2 +- .../shell/migration/utils/MigrationUtils.java | 2 +- ...> migrate-4.0.0-00-fixProfileNbOfVisits.groovy} | 10 +- ...y => migrate-4.0.0-01-tenantDocumentIds.groovy} | 12 +- ...vy => migrate-4.0.0-05-fixSystemItemIds.groovy} | 10 +- ...> migrate-4.0.0-10-tenantInitialization.groovy} | 16 +-- ...grate-4.0.0-15-updateLegacyQueryBuilder.groovy} | 4 +- .../base_update_by_query_request.json | 0 .../copy_nbOfVisits_to_totalNbOfVisits.painless | 0 .../count_sessions_by_profile.json | 0 .../{3.1.0 => 4.0.0}/fix_system_item_ids.painless | 18 +-- .../fix_system_item_ids_update_request.json | 0 .../{3.1.0 => 4.0.0}/get_item_types_query.json | 0 .../initialize_tenant_and_audit_fields.painless | 4 +- .../profile_copy_nbOfVisits_request.json | 0 .../{3.1.0 => 4.0.0}/profile_scroll_query.json | 0 .../update_legacy_querybuilder.painless | 0 tools/shell-dev-commands/pom.xml | 2 +- tracing/pom.xml | 2 +- tracing/tracing-api/pom.xml | 2 +- tracing/tracing-impl/pom.xml | 2 +- wab/pom.xml | 2 +- web-servlets/pom.xml | 2 +- 174 files changed, 888 insertions(+), 436 deletions(-)
