mirror of
https://github.com/apple/pkl.git
synced 2026-01-11 14:20:35 +01:00
[PR #759] [MERGED] Polish external reader API/implementation #717
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
📋 Pull Request Information
Original PR: https://github.com/apple/pkl/pull/759
Author: @odenix
Created: 10/31/2024
Status: ✅ Merged
Merged: 10/31/2024
Merged by: @bioball
Base:
main← Head:polish-reader📝 Commits (1)
598d98dPolish external reader API/implementation📊 Changes
14 files changed (+107 additions, -86 deletions)
View changed files
📝
pkl-commons-cli/src/main/kotlin/org/pkl/commons/cli/CliCommand.kt(+5 -6)📝
pkl-core/src/main/java/org/pkl/core/EvaluatorBuilder.java(+3 -4)📝
pkl-core/src/main/java/org/pkl/core/externalreader/ExternalReaderMessagePackDecoder.java(+1 -1)📝
pkl-core/src/main/java/org/pkl/core/externalreader/ExternalReaderMessagePackEncoder.java(+1 -1)📝
pkl-core/src/main/java/org/pkl/core/externalreader/ExternalReaderMessages.java(+2 -1)📝
pkl-core/src/main/java/org/pkl/core/externalreader/ExternalReaderProcess.java(+31 -12)📝
pkl-core/src/main/java/org/pkl/core/externalreader/ExternalReaderProcessImpl.java(+52 -46)📝
pkl-core/src/main/java/org/pkl/core/messaging/MessageTransports.java(+2 -1)📝
pkl-core/src/main/java/org/pkl/core/messaging/Messages.java(+2 -7)📝
pkl-core/src/main/java/org/pkl/core/module/ModuleKeys.java(+2 -2)📝
pkl-core/src/main/java/org/pkl/core/resource/ExternalResourceResolver.java(+1 -1)📝
pkl-core/src/main/java/org/pkl/core/resource/ResourceReaders.java(+1 -1)📝
pkl-core/src/main/java/org/pkl/core/util/Readers.java(+3 -1)📝
pkl-server/src/main/kotlin/org/pkl/server/Server.kt(+1 -2)📄 Description
Things I noticed but didn't address in this PR:
ExternalReaderProcessImpl)ExternalReaderProcessExceptionmessages are externalized, others aren'tExternalReaderProcessExceptionis a checked exceptionnew Random().nextLong()is expensive and has poor randomness (Random should be reused or replaced with counter)ModuleKeyFactories.closeQuietlyin favor oforg.pkl.core.util.Readers.closeQuietlyturns packageorg.pkl.core.utilinto a public APIorg.pkl.core.module.ResourceReadersAPI is (too) tightly coupled to reader protocol viaModuleReaderSpecExternalReaderProcessis a leaky abstractionMessageTransportIMHO the external reader API/implementation needs more work.
Changes:
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.