Skip to content

v0.2.2

Choose a tag to compare

@theoliverlear theoliverlear released this 13 Sep 21:47
· 3269 commits to main since this release

Changelog

v0.2.2 – 2025-09-13


Full Changelog: v0.2.0...v0.2.2

Module Version - Top Level

Module Version
Crypto-Trader v0.2.2
Crypto-Trader-Admin v0.0.4
Crypto-Trader-Api v0.0.6
Crypto-Trader-Assets v0.0.4
Crypto-Trader-Contact v0.0.2
Crypto-Trader-Coverage v0.0.2
Crypto-Trader-Data v0.0.3
Crypto-Trader-Docs v0.0.3
Crypto-Trader-Engine v0.0.3
Crypto-Trader-Health v0.0.2
Crypto-Trader-Library v0.0.5
Crypto-Trader-Logging v0.0.3
Crypto-Trader-Testing v0.0.4
Crypto-Trader-Version v0.1.1

Module Version - Library

Module Version
Admin-Library v0.0.2
Admin-Events v0.0.2
Admin-Models v0.0.2
Api-Library v0.0.5
Api-Communication v0.0.5
Api-Components v0.0.5
Api-Config v0.0.2
Api-Events v0.0.2
Api-Models v0.0.6
Api-Repositories v0.0.5
Api-Services v0.0.3
Contact-Library v0.0.2
Contact-Events v0.0.2
Contact-Models v0.0.2
Contact-Repositories v0.0.2
Desktop-Library v0.0.3
Desktop-Components v0.0.3
Externals-Library v0.0.3
Version-Library v0.0.3
Version-Models v0.0.3

Breaking changes

  • Refactor package namespaces to use library prefixes and rename comm to communication across API modules; update imports accordingly.
  • Replace generic UserRequest with SignupRequest and LoginRequest in API and services; adjust callers and WebSocket payloads.
  • Migrate configuration from application.properties to application.yml (and application-defaults.yml / application-test.yml) across modules; deployment configs must be updated.

Highlights

  • Add WebSocket-based signup and login endpoints in API and integrate WebSocket auth flows in the Website.
  • Introduce Spring Cloud Stream + Kafka across modules with new domain events (user lifecycle, admin actions, email) and a reusable EventPublisher.
  • Launch Contact modules (Models, Repositories, Events) with Email entity, mail sender configuration, and event consumers.
  • Upgrade Angular to 20 with widespread template updates and a refreshed Website UI (gradients, typography, layout).
  • Align builds and dependencies: Kotlin 2.2.0, centralized Maven management, JAXB/Tomcat updates, and removal of buggy logback-classic.
  • Add initial Android Mobile app with Hilt, Compose navigation, Ktor, Room, and static analysis (Detekt/Spotless).

Crypto Trader

  • Add docker-compose.yml for Kafka infrastructure to support inter-module event streaming.
  • Align dependencies and plugin management across POMs; centralize versions and exclude conflicting transitive libs.
  • Add Sigwarth Software WebSocket dependency for real-time integrations.
  • Bump module versions and enhance module descriptions in preparation for release.
  • Add error_prone_annotations for improved static analysis.

Crypto Trader Admin

  • Add Spring Cloud + Kafka and Actuator dependencies with managed versions.
  • Migrate Kotlin toolchain to 2.2.0 and set JVM target for consistency.
  • Exclude OpenJFX artifacts from Scenic View to avoid conflicts.
  • Migrate Kotlin sources and update imports to new namespaces.

Crypto Trader Analysis

  • Add gpu_yml_reader.py to load GPU-specific YAML configs and manage training workflows.
  • Delegate GPU training to YAML-configured runner (run_gpu_zero.py, run_gpu_one.py).
  • Bump Python package version to 0.1.3 in pyproject.toml.

Crypto Trader Api

  • Migrate to application.yml and add Kafka bindings; clean up startup bindings and disable sanitization where needed.
  • Add WebSocket config and handlers for /ws/signup and /ws/login; integrate typed requests.
  • Replace UserRequest with SignupRequest/LoginRequest; update AuthController and WebSocket handlers.
  • Add null checks for NewsSentimentRequest, PricePredictionRequest, and TrainingSessionRequest endpoints.
  • Add Jakarta JAXB/Activation and Tomcat dependencies; remove buggy logback-classic.
  • Remove local RestTemplate bean in favor of Api-Config import; update package scanning paths.

Crypto Trader Contact

  • Add Email entity, repository, and mail sender configuration.
  • Configure Kafka bindings and management endpoints; adjust YAML profiles.
  • Add event publisher and consumers (UserRegisteredEvent, EmailSentEvent) with logging.
  • Correct main class to CryptoTraderContactApplicationKt and add application-docs.yml.

Crypto Trader Data

  • Migrate to application.yml; add Kafka bindings and comment out unimplemented stream configs.
  • Add ApplicationYamlConfig with @Profile guards and YamlPropertySourceFactory.
  • Add ApplicationTestYamlConfig and ConfigLoadTest; introduce DataTestSuite.
  • Add antlr4-runtime and remove unused dependencies.

Crypto Trader Docs

  • Generate OpenAPI for Contact API via Maven; enable copy of specs into docs with fail-on-error.
  • Improve docs.yml: centralize env vars, robust spec fetch (multi-host/port/format), safer failure behavior.
  • Disable Spring Cloud Stream by default in application-docs.yml.

Crypto Trader Engine

  • Migrate to application.yml with Kafka bindings; update Tomcat/Jakarta modules.
  • Fix EntityScan base package to new library namespace.

Crypto Trader Health

  • Rename service-status-checker.kt to ServiceStatusChecker.kt to follow Kotlin conventions.

Crypto Trader Library

  • Add Admin, API, and Contact submodules to the library aggregator POM.
  • Configure Maven JAR plugin and explicit module names across submodules.
  • Standardize ModuleLibrary and PomValidator constants and module metadata.
  • Align dependencies and plugin management; refactor package structures to library prefix.

Crypto Trader Logging

  • Add ANTLR runtime dependency; remove buggy logback-classic.
  • Update LoggingTestWatcher logs to use consistent tags.

Crypto Trader Mobile

  • Add Android application with Hilt initialization, edge-to-edge Compose UI, and navigation.
  • Add MainViewModel and modular composables; set application class in manifest.
  • Configure Gradle with Hilt, Ktor, Room, Compose, Detekt, and Spotless.

Crypto Trader Testing

  • Remove inherited version property from JetBrains annotations dependency for reliable resolution.

Crypto Trader Version

  • Add Kotlin/test/logging/Jackson dependencies; configure Kotlin source/test dirs for JaCoCo.
  • Add VersionTestSuite.kt and PomParserTest.kt for POM/version parsing coverage.

Crypto Trader Website

  • Upgrade to Angular 20 and update deprecated template syntax across components.
  • Add WebSocket services for signup/login; integrate in authorize flow with new typed models.
  • Refresh UI: gradients, fonts, SVG backgrounds, nav layout tweaks, and accessibility improvements.
  • Add global SCSS tokens (variables, mixins, placeholders) and utility functions.
  • Polish auth console inputs and messages; switch login to email-based credential.

Admin Library

  • Add initial module POM and integrate into library aggregator.
  • Add UserBannedEvent and UserWarningEvent; define BanOffense/WarnOffense models.

Admin Events

  • Add module POM and build wiring for Admin Events.

Admin Models

  • Add BanOffense.kt and WarnOffense.kt for admin action classification.

Api Library

  • Refactor to library package prefixes; update transitive dependencies and module exports.
  • Update tests and imports across modules to the new API library structure.

Api Communication

  • Add LoginRequest and SignupRequest payloads; define auth type aliases.
  • Rename packages from comm to communication; apply Kotlin naming conventions.
  • Add Kotlin plugin/dependencies and expand module-info.java exports.

Api Components

  • Add api-communication dependency; align imports to new packages.

Api Config

  • Add EventPublisher using Spring Cloud StreamBridge.
  • Add DefaultPropertiesConfig, ApplicationTestYamlConfig; migrate defaults to YAML.
  • Align Spring Integration dependencies and exclude conflicting Kotlin stdlib where needed.

Api Events

  • Add UserLoginEvent, UserRegisteredEvent, and UserEventsPublisher.
  • Add spring-context dependency and Kotlin compilation ordering for modular builds.
  • Provide module-info.java and clean up temp package markers.

Api Models

  • Add Kotlin stdlib; update package paths and tests.
  • Add PortfolioTest.kt and PortfolioPictureTest.kt.

Api Repositories

  • Align imports/package structure; extend ProductUserRepository with email-based queries.

Api Services

  • Refactor AuthService to use typed LoginRequest/SignupRequest; publish UserRegisteredEvent.
  • Add Kotlin Maven plugin; remove buggy logback-classic.
  • Update tests (AuthServiceTest, suites) for new signatures and mocks.

Contact Library

  • Add submodules (Events, Models, Repositories) to library aggregator.
  • Configure JAR plugin and module names; align imports to new structure.

Contact Events

  • Add EmailSentEvent and initial module POM.

Contact Models

  • Add Email.java entity and module exports; include Spring Data JPA and Jakarta Persistence.
  • Configure Kotlin interoperability and build plugin; remove unused skipMain.

Contact Repositories

  • Add EmailRepository.kt and module-info.java with Spring/Jakarta dependencies.
  • Configure Kotlin source directories and module-path compilation.

Desktop Library

  • Configure JAR plugin and module names; update module constants.

Desktop Components

  • Update package paths to desktop.library.component; fix ComponentLoader package.

Externals Library

  • No code changes captured in this release; version alignment in library table.

Version Library

  • Update imports and dependency definitions to the new namespace.

Version Models

  • Align imports and dependencies to match updated library structure.

Other

Repo changes

  • Centralize environment variables and Maven settings in CI (docs.yml); add test profile system properties.
  • Improve OpenAPI retrieval with multiple hosts/ports/formats and safer failure handling.
  • Enable OpenAPI copy into docs; allow fail-on-error to surface issues early.
  • Reorganize CHANGELOG sections to reflect expanded module structure.