Skip to content

All versions since 31.1.1

31.1.1

  • chore: remove ALLOTZ and FASTBOOKING channel managers
  • docs: :memo: add Bamboo CI pipeline commands to CLAUDE.md
  • fix: :bug: fix forgot-password flow and reset code length
  • fix: :bug: restore magic link (OTT) passwordless login after Spring Boot 4.1 upgrade

31.1.2

  • test: :green_heart: fixed test

31.2.0

  • feat: add comprehensive external webhook event catalogue (#479)
  • test: :green_heart: fixed test

31.3.0

  • docs: :globe_with_meridians: updated translation keys
  • docs: :memo: add JaCoCo 85% rollout plan and cache-domain test logback config
  • docs: :memo: JaCoCo 85% rollout COMPLETE — 40 modules gated, 500+ tests added
  • docs: :memo: phase0 discovery complete — 40 real modules, 13 empty stubs, 500+ tests needed
  • docs: :memo: phase1 task1 json-domain complete — 100% coverage
  • docs: :memo: phase1 task2 geo-name-web complete — 89% coverage
  • docs: :memo: phase1 task3 analytics-domain complete — 86.6% coverage
  • docs: :memo: phase1 tasks 1-3 complete
  • docs: :memo: phase1 tasks 1-3 complete — 3 modules at 85%+
  • docs: :memo: phase1-2 summary — 7 modules complete at 91.2% avg coverage
  • docs: :memo: phase2 task6 inventory-domain complete — 85.8% coverage + bug fix
  • docs: :memo: phase2 task7 message-template-domain complete — 100% coverage
  • docs: :memo: phase2 tasks 12-15 complete — 15/16 Tier 2 modules at 85%+
  • docs: :memo: phase2 tasks 8-11 complete — 4 modules at 85%+ (11/7 total complete)
  • docs: :memo: phase2-3 checkoint — 20 modules at 85%+ (16 Tier2 + 4 Tier3)
  • feat(analytics): multi-party server-side GA4/GTM purchase tracking (#485)
  • feat(booking): only email travelers on concrete Stripe payment failures (#491)
  • feat(cache): add managingEntityIdsByUser ID-list cache to ManagingEntityService (#484)
  • feat(room-type): draft + per-section PATCH endpoints; refactor: remove fake-async from request/response services (#481)
  • fix: :recycle: fixed selfAcquired and selfDisburses
  • fix(booking,accounting): agent refunds settle + self-managed agents kept off the ledger (#488)
  • fix(booking): :bug: settle admin manual refunds with no Stripe PaymentIntent (#492)
  • fix(booking): apply channel-manager status filter to all pull paths (Exely, CloudBeds)
  • fix(booking): filter booking status for channel-manager delivery and review emails (#489)
  • fix(booking): scope channel-manager pulls by rateSource + hide INITIALIZED from non-admin (#490)
  • fix(customization): map CustomizationException to 404; 409 for primary removal (#482)
  • fix(lookup-web): handle missing ‘term’ param as 400 Bad Request (#483)
  • perf(rate): eliminate N+1 query in RateRepository.findByDateRange Map overloads
  • refactor: :recycle: fixed Stripe issues due to new Stripe version
  • refactor: :recycle: remove leftover PasswordEncoder dependency from YanoljaServiceImpl
  • refactor: :recycle: removed property status everywhere
  • refactor: :recycle: removed unused imports
  • refactor: :recycle: tried to get more insight into why Exely is failing in staging
  • refactor: :recycle: updated Yanolja by removing bcrypted password
  • test: :green_heart: fixed some AI generated tests
  • test: :white_check_mark: booking-domain — enable JaCoCo 85% gate → 86.9%
  • test: :white_check_mark: booking-web — boost instruction coverage from 85% to 93%
  • test: :white_check_mark: booking-web — enable JaCoCo 85% gate → 85%+
  • test: :white_check_mark: cache-domain, lookup-web — → 85%+
  • test: :white_check_mark: caldav-web — enable JaCoCo 85% gate and add 404 test
  • test: :white_check_mark: customization-web — enable JaCoCo 85% gate → 100%
  • test: :white_check_mark: customization-web, message-template-web, report-web — → 85%+
  • test: :white_check_mark: enable JaCoCo 85% gate on 49 empty/tiny modules (integrations, mcp stubs, scaffolding)
  • test: :white_check_mark: fix cancellationType assertion in BookingPhase0TypesTest
  • test: :white_check_mark: fix disabled tests and raise coverage in 5 modules to 80%+ gate
  • test: :white_check_mark: improve room-type-domain JaCoCo coverage with comprehensive event listener tests
  • test: :white_check_mark: lookup-web — enable JaCoCo 85% gate → 95%+
  • test: :white_check_mark: message-template-domain coverage verified at 100%
  • test: :white_check_mark: message-template-web — enable JaCoCo 85% gate → 100%
  • test: :white_check_mark: payment-web — enable JaCoCo 85% gate → 89.6%
  • test: :white_check_mark: phase1 analytics-domain coverage — 65% → 85%+
  • test: :white_check_mark: phase1 analytics-domain coverage — 86.6%
  • test: :white_check_mark: phase1 application-domain coverage — 50% → 95.7%
  • test: :white_check_mark: phase1 application-domain coverage — 50% → 95.7%+
  • test: :white_check_mark: phase1 geo-name-web coverage — 50% → 89%+ (gate enabled)
  • test: :white_check_mark: phase1 json-domain coverage — 0% → 85%
  • test: :white_check_mark: phase1 point-of-interest-domain coverage — ~40% → 89%+
  • test: :white_check_mark: phase1 point-of-interest-domain coverage — 40% → 89.3%
  • test: :white_check_mark: phase2 add-on-web — → 85%+
  • test: :white_check_mark: phase2 customization-client-domain — → 85%+
  • test: :white_check_mark: phase2 exchange-rate-web — → 85%+
  • test: :white_check_mark: phase2 geo-ip-web — → 85%+
  • test: :white_check_mark: phase2 inventory-domain coverage — 65% → 85.8%+
  • test: :white_check_mark: phase2 invite-domain — → 85%+
  • test: :white_check_mark: phase2-final cancellation-policy-web — → 85%+
  • test: :white_check_mark: phase3 accounting-domain — → 85%+
  • test: :white_check_mark: phase3 checkout-domain — → 85%+
  • test: :white_check_mark: phase3 lookup-domain — → 85%+
  • test: :white_check_mark: reconcile tests after origin/develop merge
  • test: :white_check_mark: report-web — enable JaCoCo 85% gate → pass
  • test: :white_check_mark: scheduler-domain — → 85%+
  • test: :white_check_mark: shortened-url-domain — enable JaCoCo 85% gate
  • test(room-type): :white_check_mark: fix failing tests and restore 85% gate; enable events-command-gateway and translate-inventory gates

31.4.0

  • feat(financials): fee-total model rework — totalPlatformFee(+InPercent), TripPay→PaymentProcessing rename, gross-based platform fee (#493)
  • fix(acl): register managing-entity cache so @RequireAccountPermission resolves teams
  • refactor: :recycle: changed Exely query so bookings will return when the exely booking is confirmed
  • refactor(api): use native mapping version attribute for v2.0 endpoints

31.5.0

  • feat: Partner API usage metering + standalone partner-app (#298)
  • feat(cache): two-tier L1 caching for inventory, master-rate & property-aggregate (#494)
  • feat(customization): GTM-as-black-box — caching, client-side purchase, drop server-side MP fields (#495)
  • fix(sso): drop trailing slash before query string in portal dashboard redirect URLs
  • refactor: :recycle: disabled lazy init
  • refactor: :recycle: fixed Exely JSON payload structure
  • refactor: :recycle: fixed payment_intent.succeeded
  • refactor: :recycle: reset Exely booking status on cancel
  • refactor: shed eager mail/google-places infra from lean apps (#500)
  • refactor(datasource): extract stripe-free booking/checkout repositories into datasource modules
  • refactor(google-hotel): integrator feed gets an add-on/sellable-free rate path; trim IntegrationsDbConfig (#497)
  • refactor(integrations-app): trim IntegrationsDbConfig to runtime-needed repositories
  • refactor(inventory): split inventory-domain into datasource/consumer/projection modules (#496)
  • refactor(managing-entity): platform-wide consumer/publisher split to keep ShortenedUrl off integrations-app (#499)
  • refactor(rate-plan): split into datasource/consumer/publisher to keep cancellation-policy off integrations-app (#498)
  • test(checkout): cover GA4-redirect + Stripe session-id two-layer URL hand-off

31.5.1

  • fix: :bug: emit GCP-recognized severity field in structured logs
  • fix: :bug: normalize negative-zero Decimal128 when reading BigDecimal fields
  • refactor(partner-app): shed 12 unused MongoDB repositories via module splits (#501)
  • test: :green_heart: all tests pass
  • test(booking): :white_check_mark: provide CacheManager bean in BookingServiceConfig

31.5.2

  • refactor: :recycle: added quote cache to integrations-app

32.0.0

  • chore: disable automatic claude-code-review workflow (#517)
  • chore(mongo): single combined Initiative D migration (run-once) (#626)
  • chore(scripts): :wrench: shut down local redis in stopServices
  • docs: :memo: added some custom agents
  • docs: :memo: updated banner.txt
  • docs: :memo: updated claude
  • docs(webhook): add AsyncAPI 3.0 spec for the outbound webhook contract (Initiative C) (#617)
  • feat: add-on sub-resource endpoints for six inventory types (#635)
  • feat(api-usage): weighted hotel-day metering for the Partner API (#631)
  • feat(billing): pay-as-you-go platform billing via Metronome (#641)
  • feat(cache): optional L2 (Redis/Memorystore) tier behind L1 Caffeine (#633)
  • feat(computed): add refundableUntilDays to RoomTypeBestPriceForDateRange (#629)
  • feat(dto): :sparkles: add optimistic-locking version to AbstractDto and wire If-Match
  • feat(dto): add Lightweight DTOs for 7 more entities (batch 2) (#622)
  • feat(dto): add Lightweight DTOs for 8 entities lacking them (batch 1) (#621)
  • feat(inventory): add dedicated active-flag PATCH endpoint per hub
  • feat(inventory): draft-create + per-section PATCH hub endpoints for 7 inventory types (#627)
  • feat(lookup): Atlas Search autocomplete, remove lookup cache, fix public-endpoint ReDoS (#639)
  • feat(openapi): document Page responses as the pagination envelope
  • feat(payment): :sparkles: reconcile Stripe refunds whose settlement webhook never arrived (#638)
  • feat(rate-limit): per-user Redis token-bucket rate limiter for the Partner API (#634)
  • feat(rate): cache daily rates per RateKey with precise + prefix eviction (#630)
  • feat(webhook): add schemaVersion to the webhook delivery envelope (Initiative C foundation) (#613)
  • fix(api-usage-subscription): restore compile-scope cache-api/events-command-gateway deps (#607)
  • fix(booking): :bug: settle Stripe refunds that are created as pending (#637)
  • fix(cache): :bug: exclude Redis autoconfigs that break with two connection factories
  • fix(integrations-app): bundle netty-resolver-dns-native-macos for local reactor-netty
  • fix(mail): eliminate partner-app/integrations-app pdf boot crash; split booking/external-event mail listeners (#628)
  • fix(module-boundary): fix 2 remaining MasterRate leaks found by independent review
  • fix(module-boundary): fix remaining MasterRate test fixtures surfaced by full-reactor sweep
  • fix(module-boundary): fix remaining MasterRate test/consumer fixtures surfaced by full-reactor sweep
  • fix(module-boundary): fix unrelated geo-name compile-scope break, regenerate stale ArchUnit baseline
  • fix(mongo): add missing roomType/guestRoom/review identifier->id migration steps
  • fix(security): un-break MCP OAuth for browser clients — DCR proxy contamination, SSO discovery CORS, session-id exposure (#601)
  • fix(shared-api): :lock: enforce VariableCharge percent/fixedAmount are always non-negative
  • fix(test,master-rate): repair runtime test regressions from event-retype waves + a MasterRate NPE (#620)
  • refactor: :recycle: added a strict monetary amount deserializer everywhere
  • refactor: :recycle: fixing tests and some configs
  • refactor: :recycle: updated Exely daily rate amounts
  • refactor: :wrench: updated index name
  • refactor(architecture-tests): widen ModuleBoundaryTest from review+booking pilot to all of travel.wink (#549)
  • refactor(dto): migrate 4 read-projection Lightweights onto AbstractDto (Initiative A batch 1) (#603)
  • refactor(dto): migrate apex Lightweights onto AbstractDto (batch 3) (#605)
  • refactor(dto): migrate BookingLightweight, GooglePlaceLeadLightweight, ShortenedUrlLightweight onto AbstractDto (batch 2) (#604)
  • refactor(dto): migrate BookingSyncEntryLightweight onto AbstractDto (keep local version) (#608)
  • refactor(dto): migrate InventoryAggregate onto AbstractDto + fix escaped compile breaks (#606)
  • refactor(dto): migrate travel-inventory Lightweight hierarchy onto AbstractDto (BREAKING: identifier→id) (#609)
  • refactor(events,webhook): retype 6 cluster entities’ events to Lightweight — webhook now delivers the DTO (Initiative C) (#614)
  • refactor(events,webhook): retype Property + ManagingEntity events to Lightweight (Initiative C apex) (#616)
  • refactor(events,webhook): retype RatePlan/MasterRate/SalesChannel/SpecialRate events to Lightweight (Initiative C) (#615)
  • refactor(events,webhook): widen BookingLightweight + retype Booking events (Initiative C, final) (#619)
  • refactor(events): retype 12 non-webhook tail entities’ events to Lightweight (Initiative B tail) (#618)
  • refactor(events): retype 7 entities’ event payloads from raw entity to Lightweight (Initiative B wave 1) (#610)
  • refactor(events): retype Attraction + Place event payloads to Lightweight (Initiative B wave 2) (#611)
  • refactor(events): retype Inventory/SalesChannelRequest/Customization/User event payloads to Lightweight (Initiative B wave 3) (#612)
  • refactor(module-boundary): consumer-side repository rerouting — 12 modules gated off foreign repositories (#503)
  • refactor(module-boundary): evict Activity entity from Consumer service interfaces (#594)
  • refactor(module-boundary): evict AddOn entity, widening AddOnLightweight for write-path parity (#597)
  • refactor(module-boundary): evict Attraction entity from Consumer service interfaces (#595)
  • refactor(module-boundary): evict Booking entity from BookingConsumerService (#585)
  • refactor(module-boundary): evict BookingSyncEntry entity from Consumer/Publisher interfaces (#581)
  • refactor(module-boundary): evict CancellationPolicy entity from Consumer/Publisher interfaces (#583)
  • refactor(module-boundary): evict Customization entity from CustomizationConsumerService (#574)
  • refactor(module-boundary): evict DynamicList entity from DynamicListConsumerService (PRD Phase 3, entity #5) (#562)
  • refactor(module-boundary): evict GooglePlaceLead entity from Consumer/Publisher interfaces (#580)
  • refactor(module-boundary): evict Inventory entity from cross-domain interfaces (Phase 3) (#575)
  • refactor(module-boundary): evict InventoryMap entity from InventoryMapConsumerService (PRD Phase 3, entity #12) (#569)
  • refactor(module-boundary): evict Lookup entity from lookup-api (PRD Phase 3 pilot) (#559)
  • refactor(module-boundary): evict ManagedSocialPost entity from Consumer/Publisher interfaces (#584)
  • refactor(module-boundary): evict ManagingEntity from Consumer/Publisher interfaces (phase 1) (#578)
  • refactor(module-boundary): evict MeetingRoom entity from Consumer service interfaces (#593)
  • refactor(module-boundary): evict OrganizationView entity from organization-api (PRD Phase 3) (#560)
  • refactor(module-boundary): evict Perk entity from PerkConsumerService (#599)
  • refactor(module-boundary): evict Place entity from Consumer service interfaces (#596)
  • refactor(module-boundary): evict Place/Post/PostRendition entities from PlacesConsumerService (PRD Phase 3, entity #4) (#561)
  • refactor(module-boundary): evict Profile entity from ProfileConsumerService (PRD Phase 3, entity #13) (#570)
  • refactor(module-boundary): evict Property entity from Consumer/Publisher interfaces (Phase 3, final apex entity) (#579)
  • refactor(module-boundary): evict PropertyAggregate entity from Consumer/Publisher service interfaces (#588)
  • refactor(module-boundary): evict Rate entity from cross-domain interfaces (Phase 3) (#576)
  • refactor(module-boundary): evict RatePlan entity from RatePlanConsumerService (#573)
  • refactor(module-boundary): evict Restaurant entity from Consumer service interfaces (#591)
  • refactor(module-boundary): evict RoomType entity from Consumer service interfaces (#592)
  • refactor(module-boundary): evict SalesChannel entity from SalesChannelConsumerService (#572)
  • refactor(module-boundary): evict SellableInventoryUrl entity from SellableInventoryUrlConsumerService (PRD Phase 3, entity #11) (#568)
  • refactor(module-boundary): evict SellableItem entity from SellableItemConsumerService (PRD Phase 3, entity #10) (#567)
  • refactor(module-boundary): evict SellableList entity from SellableListConsumerService (PRD Phase 3, entity #8) (#565)
  • refactor(module-boundary): evict SellableRankedList entity from SellableRankedListConsumerService (PRD Phase 3, entity #7) (#564)
  • refactor(module-boundary): evict SellableSupplierUrl entity from SellableSupplierUrlConsumerService (PRD Phase 3, entity #9) (#566)
  • refactor(module-boundary): evict ShortenedUrl entity from ConsumableShortenedUrlService (#587)
  • refactor(module-boundary): evict ShortenedUrl entity from Publisher/Consumer service interfaces (#586)
  • refactor(module-boundary): evict Spa entity from Consumer service interfaces (#590)
  • refactor(module-boundary): evict SpecialRate entity from SpecialRateConsumerService (PRD Phase 3, entity #15) (#571)
  • refactor(module-boundary): evict SpecialRateBundle entity from SpecialRateBundleConsumerService (PRD Phase 3, entity #6) (#563)
  • refactor(module-boundary): evict StaticList/StaticListItem entities from cross-domain surfaces (#598)
  • refactor(module-boundary): exempt api-usage + cache as shared platform infra in ArchUnit (#554)
  • refactor(module-boundary): expand ManagingEntityConsumerService, gate 13 consumers off ManagingEntityRepository (#522)
  • refactor(module-boundary): expand MasterRateConsumerService, gate 34 consumers off MasterRateRepository (#521)
  • refactor(module-boundary): extract lean booking-consumer module, route notification-endpoint off booking repository (#508)
  • refactor(module-boundary): extract property-aggregate-datasource + consumer/publisher services, gate 9 consumers off PropertyAggregateRepository (#520)
  • refactor(module-boundary): extract property-datasource + consumer/publisher services, gate 24 consumers off PropertyRepository (#519)
  • refactor(module-boundary): extract shortened-url-datasource + consumer/publisher services, gate 6 consumers (#513)
  • refactor(module-boundary): flip dead/leeched cross-family compile-scope deps to runtime (Tier 5 hygiene sweep) (#558)
  • refactor(module-boundary): fold RoomTypeLightweight into AbstractCommonTravelInventoryLightweight hierarchy (#589)
  • refactor(module-boundary): fully gate computed-property-review off review repository via ReviewService (#511)
  • refactor(module-boundary): gate 8 inventory domains off TravelInventoryService via PropertyConsumerService (#542)
  • refactor(module-boundary): gate booking and checkout off ProfileRepository via ConsumerService (#536)
  • refactor(module-boundary): gate campaigns off PlacesPlaceRepository/PostRepository/PostRenditionsRepository via ConsumerService (#537)
  • refactor(module-boundary): gate cancellation-policy off CancellationPolicyRepository via CancellationPolicyConsumerService (#532)
  • refactor(module-boundary): gate channel-manager cluster off booking repository via consumer + new publisher service (#512)
  • refactor(module-boundary): gate channel-manager-internal off OrganizationViewRepository via ConsumerService (#535)
  • refactor(module-boundary): gate check-list off GreenIndexAnswerRepository via ConsumerService (#534)
  • refactor(module-boundary): gate computed-curated/computed-grid off StaticListRepository via full boundary closure (#540)
  • refactor(module-boundary): gate customization off raw CustomizationRepository injection (#528)
  • refactor(module-boundary): gate inventory-content cluster (8 domains) off raw repository injection (#523)
  • refactor(module-boundary): gate lookup-web off CityRepository/GeoNameRepository via GeoNameService (#541)
  • refactor(module-boundary): gate master-rate off PerkRepository via PerkConsumerService (#533)
  • refactor(module-boundary): gate notification-endpoint off booking-sync repository via consumer + publisher services (#514)
  • refactor(module-boundary): gate rate-cluster off raw RateRepository injection (#525)
  • refactor(module-boundary): gate registration and inventory-app off GooglePlaceLeadRepository via Consumer/Publisher services (#539)
  • refactor(module-boundary): gate remaining InventoryRepository consumers off raw repository injection (#527)
  • refactor(module-boundary): gate remaining RatePlanRepository consumers off raw repository injection (#531)
  • refactor(module-boundary): gate sales-channel off raw SalesChannelRepository injection (#526)
  • refactor(module-boundary): gate sellable-cluster (8 domains) off raw repository injection (#524)
  • refactor(module-boundary): gate special-rate off raw SpecialRateRepository injection (#529)
  • refactor(module-boundary): gate special-rate-bundle off raw SpecialRateBundleRepository injection (#530)
  • refactor(module-boundary): introduce BookingConsumerService, route caldav off booking repository (#506)
  • refactor(module-boundary): narrow AnalyticsTrackingConsumerService off BookingTimeSeries (#582)
  • refactor(module-boundary): narrow MasterRateConsumerService/RatePublisherService to MasterRateLightweight
  • refactor(module-boundary): publish PropertyTranslationService/AddOnTranslationService into their -api modules (#550)
  • refactor(module-boundary): remove dead CityRepository cross-domain injection from property-domain (#538)
  • refactor(module-boundary): remove dead syndication repo injections from managed-social (#518)
  • refactor(module-boundary): retype channel-manager-rate-gain MasterRate consumers to MasterRateLightweight
  • refactor(module-boundary): retype Inventory.of(MasterRate) and InventoryEventListener’s consumer-service path
  • refactor(module-boundary): retype remaining channel-manager MasterRate consumers
  • refactor(module-boundary): retype remaining computed-rate-core fan-out MasterRate consumers
  • refactor(module-boundary): retype remaining MasterRate leaf consumers to MasterRateLightweight
  • refactor(module-boundary): route 16 cross-domain consumers off RateService onto RatePublisherService (#548)
  • refactor(module-boundary): route 4 cross-domain consumers off CustomizationService onto CustomizationConsumerService (#544)
  • refactor(module-boundary): route activity-stream off user repository onto UserService (#507)
  • refactor(module-boundary): route AddOnContentCreator off AddOnService onto AddOnConsumerService (#546)
  • refactor(module-boundary): route AffiliateController/LeaderboardController off LeaderboardService onto new Consumer/Publisher services (#547)
  • refactor(module-boundary): route booking off CheckoutService onto CheckoutConsumerService (#557)
  • refactor(module-boundary): route booking/checkout/winklinks off GoogleMapsService onto GoogleMapsConsumerService (#555)
  • refactor(module-boundary): route city lookups off CityRepository onto GeoNameService (#515)
  • refactor(module-boundary): route computed-property/managed-social off PropertyService onto PropertyConsumerService (#543)
  • refactor(module-boundary): route ConsumableShortenedUrlServiceImpl off OpenGraphImageGeneratorService onto OpenGraphImageConsumerService (#552)
  • refactor(module-boundary): route managed-social + sellable-inventory-url off customization repository (#505)
  • refactor(module-boundary): route managed-social off property-embeddings-domain via PropertyEmbeddingsConsumerService (#553)
  • refactor(module-boundary): route notification off message-template repository onto MessageTemplateService (#510)
  • refactor(module-boundary): route PartnerLookupServiceImpl off LookupService onto LookupConsumerService (#551)
  • refactor(module-boundary): route rate-check + google-hotel off master-rate repository (#504)
  • refactor(module-boundary): route sellable-inventory-url off inventory repository onto InventoryConsumerService (#509)
  • refactor(module-boundary): route StudioBookingAnalyticsController off BookingService onto BookingConsumerService (#545)
  • refactor(module-boundary): route winklinks/consumer-web/shortened-url off ShareAnalyticsService and AnalyticsTrackingService (#556)
  • refactor(module-boundary): service-boundary enforcement + review pilot (#502)
  • refactor(shared-api): AbstractDto foundation — id wire name + createdDate/lastUpdate (#600)
  • refactor(shared-api): align AbstractDto to id + migrate first 2 Lightweights (Initiative A pilot) (#602)
  • refactor(web): evict *Repository injections + flip 8 non-auth -web modules to api-compile/domain-runtime (#632)
  • refactor(web): Initiative D — evict entities from -web + relocate @JsonView to DTOs (#624)

32.0.1 Latest

  • refactor: :arrow_down: reverted maxmind DB