Skip to content

Remove .prefab file loading functionality and log level broadcasting#3

Merged
jkebinger merged 1 commit into
mainfrom
remove-prefab-file-loading
Sep 19, 2025
Merged

Remove .prefab file loading functionality and log level broadcasting#3
jkebinger merged 1 commit into
mainfrom
remove-prefab-file-loading

Conversation

@jkebinger
Copy link
Copy Markdown
Contributor

Summary

  • Remove legacy .prefab file loading system from classpath and override directories
  • Remove log level change broadcasting functionality and related listener classes
  • Simplify SDK to rely solely on API-based configuration and JSON datafile loading
  • Update and remove tests that depended on removed functionality

Breaking Changes

⚠️ This is a breaking change that removes several public APIs:

Removed Methods

  • Options.setPrefabEnvs(), getPrefabEnvs(), getAllPrefabEnvs()
  • Options.addLogLevelChangeListener(), getLogLevelChangeListeners()

Removed Classes

  • LogLevelChangeListener
  • LogLevelChangeEvent
  • AbstractLoggingListener
  • JavaUtilLoggingConfigListener

Behavior Changes

  • .prefab.*.config.yaml files are no longer loaded from classpath or override directories
  • Log level changes are no longer broadcasted to listeners
  • Configuration now comes only from API calls or explicit JSON datafile loading

Test Plan

  • All existing tests pass after removing file-loading dependent tests
  • SDK compiles and builds successfully
  • Configuration loading via API and JSON datafiles still works
  • No references to removed classes remain in codebase

Files Changed

  • Modified: 10 files (Options.java, ConfigLoader.java, ConfigClientImpl.java, etc.)
  • Deleted: 7 files (logging listener classes and related tests)
  • Added: 1 file (.github/workflows/publish.yml from previous work)

This simplifies the SDK significantly by removing two complex legacy systems that were not commonly used.

🤖 Generated with Claude Code

This commit completely removes the legacy .prefab file loading system and
associated log level change broadcasting functionality to simplify the SDK:

**Removed .prefab file loading:**
- Removed loadClasspathConfig() and loadOverrideConfig() methods from ConfigLoader
- Removed prefab-envs configuration system from Options class
- Updated tests to work without file-based configuration loading
- Removed tests that depended on .prefab files in override directories

**Removed log level broadcasting:**
- Deleted LogLevelChangeListener and LogLevelChangeEvent classes
- Deleted AbstractLoggingListener and JavaUtilLoggingConfigListener classes
- Removed log level change listener support from Options and ConfigClientImpl
- Simplified UpdatingConfigResolver to only handle config changes
- Removed associated test files and updated remaining tests

**Breaking changes:**
- Options.setPrefabEnvs(), getPrefabEnvs(), getAllPrefabEnvs() methods removed
- Options.addLogLevelChangeListener(), getLogLevelChangeListeners() methods removed
- LogLevelChangeListener, LogLevelChangeEvent, AbstractLoggingListener classes removed
- .prefab config files are no longer loaded from classpath or override directories

The SDK now relies solely on API-based configuration and JSON datafile loading.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
Copy link
Copy Markdown
Contributor

@jdwyah jdwyah left a comment

Choose a reason for hiding this comment

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

thanks

@jkebinger jkebinger merged commit d69bd25 into main Sep 19, 2025
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

2 participants