Generate package-info.java for generated packages#1695
Conversation
Fixes #1694 ## java/scripts/codegen/java.ts - Added `generateGeneratedPackageInfo()` to emit `package-info.java` for the `com.github.copilot.generated` package. Includes Javadoc describing session event types, key classes (`SessionEvent`, `UnknownSessionEvent`), a usage example, and cross-references to related packages. - Added `generateRpcPackageInfo()` to emit `package-info.java` for the `com.github.copilot.generated.rpc` package. Includes Javadoc describing RPC parameter/result types, key classes (`RpcCaller`, `ServerRpc`, `SessionRpc`), and cross-references. - Updated `main()` to call both new functions after existing generation steps. The files are regenerated on each run since the output directory is cleaned first. ## java/src/generated/java/com/github/copilot/generated/package-info.java - New auto-generated file. Provides package-level Javadoc for the session event types package, following the same style as the hand-written `com.github.copilot` package-info. ## java/src/generated/java/com/github/copilot/generated/rpc/package-info.java - New auto-generated file. Provides package-level Javadoc for the RPC types package, following the same style as the hand-written `com.github.copilot` package-info.
There was a problem hiding this comment.
Pull request overview
Adds auto-generated package-info.java files for the Java generated source packages so they have package-level Javadoc (matching the style of the hand-written com.github.copilot package documentation), improving IDE discoverability and generated API navigation.
Changes:
- Extend the Java code generator to emit
package-info.javaforcom.github.copilot.generatedandcom.github.copilot.generated.rpc. - Add generated package-level Javadoc for session event types (
generated) and RPC types/wrappers (generated.rpc).
Show a summary per file
| File | Description |
|---|---|
| java/scripts/codegen/java.ts | Adds generation steps to write package-level Javadoc (package-info.java) for the generated Java packages. |
| java/src/generated/java/com/github/copilot/generated/package-info.java | New generated package documentation for session event types and forward-compat behavior. |
| java/src/generated/java/com/github/copilot/generated/rpc/package-info.java | New generated package documentation for RPC params/results and typed RPC wrapper entry points. |
Copilot's findings
- Files reviewed: 1/3 changed files
- Comments generated: 0
Cross-SDK Consistency Review ✅This PR modifies only Java-specific files:
No changes are needed in other SDK implementations. The PR correctly improves Java's documentation infrastructure using Java idioms without introducing any cross-language inconsistencies.
|
Fixes #1694 ## java/scripts/codegen/java.ts - Added `generateGeneratedPackageInfo()` to emit `package-info.java` for the `com.github.copilot.generated` package. Includes Javadoc describing session event types, key classes (`SessionEvent`, `UnknownSessionEvent`), a usage example, and cross-references to related packages. - Added `generateRpcPackageInfo()` to emit `package-info.java` for the `com.github.copilot.generated.rpc` package. Includes Javadoc describing RPC parameter/result types, key classes (`RpcCaller`, `ServerRpc`, `SessionRpc`), and cross-references. - Updated `main()` to call both new functions after existing generation steps. The files are regenerated on each run since the output directory is cleaned first. ## java/src/generated/java/com/github/copilot/generated/package-info.java - New auto-generated file. Provides package-level Javadoc for the session event types package, following the same style as the hand-written `com.github.copilot` package-info. ## java/src/generated/java/com/github/copilot/generated/rpc/package-info.java - New auto-generated file. Provides package-level Javadoc for the RPC types package, following the same style as the hand-written `com.github.copilot` package-info.
Fixes #1694
java/scripts/codegen/java.ts
generateGeneratedPackageInfo()to emitpackage-info.javafor thecom.github.copilot.generatedpackage. Includes Javadoc describing session event types, key classes (SessionEvent,UnknownSessionEvent), a usage example, and cross-references to related packages.generateRpcPackageInfo()to emitpackage-info.javafor thecom.github.copilot.generated.rpcpackage. Includes Javadoc describing RPC parameter/result types, key classes (RpcCaller,ServerRpc,SessionRpc), and cross-references.main()to call both new functions after existing generation steps. The files are regenerated on each run since the output directory is cleaned first.java/src/generated/java/com/github/copilot/generated/package-info.java
com.github.copilotpackage-info.java/src/generated/java/com/github/copilot/generated/rpc/package-info.java
com.github.copilotpackage-info.