diff --git a/2.3.0.202609300919/artifacts.jar b/2.3.0.202609300919/artifacts.jar deleted file mode 100644 index e550c1a..0000000 Binary files a/2.3.0.202609300919/artifacts.jar and /dev/null differ diff --git a/2.3.0.202609300919/artifacts.xml.xz b/2.3.0.202609300919/artifacts.xml.xz deleted file mode 100644 index ca4e486..0000000 Binary files a/2.3.0.202609300919/artifacts.xml.xz and /dev/null differ diff --git a/2.3.0.202609300919/content.jar b/2.3.0.202609300919/content.jar deleted file mode 100644 index ffa4baf..0000000 Binary files a/2.3.0.202609300919/content.jar and /dev/null differ diff --git a/2.3.0.202609300919/content.xml.xz b/2.3.0.202609300919/content.xml.xz deleted file mode 100644 index 78cd9bb..0000000 Binary files a/2.3.0.202609300919/content.xml.xz and /dev/null differ diff --git a/2.3.0.202609300919/features/com.epod.adt.mcp.feature_2.3.0.202609300919.jar b/2.3.0.202609300919/features/com.epod.adt.mcp.feature_2.3.0.202609300919.jar deleted file mode 100644 index 678f6b0..0000000 Binary files a/2.3.0.202609300919/features/com.epod.adt.mcp.feature_2.3.0.202609300919.jar and /dev/null differ diff --git a/2.4.0.202610021514/artifacts.jar b/2.4.0.202610021514/artifacts.jar new file mode 100644 index 0000000..245b690 Binary files /dev/null and b/2.4.0.202610021514/artifacts.jar differ diff --git a/2.4.0.202610021514/artifacts.xml.xz b/2.4.0.202610021514/artifacts.xml.xz new file mode 100644 index 0000000..7fed591 Binary files /dev/null and b/2.4.0.202610021514/artifacts.xml.xz differ diff --git a/2.4.0.202610021514/content.jar b/2.4.0.202610021514/content.jar new file mode 100644 index 0000000..86cf196 Binary files /dev/null and b/2.4.0.202610021514/content.jar differ diff --git a/2.4.0.202610021514/content.xml.xz b/2.4.0.202610021514/content.xml.xz new file mode 100644 index 0000000..2266c3a Binary files /dev/null and b/2.4.0.202610021514/content.xml.xz differ diff --git a/2.4.0.202610021514/features/com.epod.adt.mcp.feature_2.4.0.202610021514.jar b/2.4.0.202610021514/features/com.epod.adt.mcp.feature_2.4.0.202610021514.jar new file mode 100644 index 0000000..4aee6e3 Binary files /dev/null and b/2.4.0.202610021514/features/com.epod.adt.mcp.feature_2.4.0.202610021514.jar differ diff --git a/2.3.0.202609300919/p2.index b/2.4.0.202610021514/p2.index similarity index 82% rename from 2.3.0.202609300919/p2.index rename to 2.4.0.202610021514/p2.index index 7dae70e..0e1e06e 100644 --- a/2.3.0.202609300919/p2.index +++ b/2.4.0.202610021514/p2.index @@ -1,4 +1,4 @@ -#Wed Sep 30 11:19:39 CEST 2026 +#Fri Oct 02 17:15:11 CEST 2026 artifact.repository.factory.order=artifacts.xml.xz,artifacts.xml,\! metadata.repository.factory.order=content.xml.xz,content.xml,\! version=1 diff --git a/2.3.0.202609300919/plugins/com.epod.adt.mcp.plugin_2.3.0.202609300919.jar b/2.4.0.202610021514/plugins/com.epod.adt.mcp.plugin_2.4.0.202610021514.jar similarity index 70% rename from 2.3.0.202609300919/plugins/com.epod.adt.mcp.plugin_2.3.0.202609300919.jar rename to 2.4.0.202610021514/plugins/com.epod.adt.mcp.plugin_2.4.0.202610021514.jar index 37dce0e..a114374 100644 Binary files a/2.3.0.202609300919/plugins/com.epod.adt.mcp.plugin_2.3.0.202609300919.jar and b/2.4.0.202610021514/plugins/com.epod.adt.mcp.plugin_2.4.0.202610021514.jar differ diff --git a/CHANGELOG.md b/CHANGELOG.md index 0b918c0..28d5d1d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,15 @@ ## [Unreleased] +## [2.4.0] — 2026-10-02 + +### New features +- `sap_create_object` creates a class with a test classes include. +- `sap_pull_source`, `sap_push_source`, and `sap_push_source_from_file` accept `includeType`. A write to `testclasses` creates the include if it is missing. + +### Bug fixes +- Bug fixes. + ## [2.3.0] — 2026-09-30 ### New features diff --git a/README.md b/README.md index 49dda6e..72ffd95 100644 --- a/README.md +++ b/README.md @@ -11,13 +11,10 @@ AI Client --(HTTP/JSON-RPC)--> Eclipse Plugin --(ADT REST API / SNC)--> SAP ``` -## What's new in 2.3.0 +## What's new in 2.4.0 -- `sap_create_object` creates a function module (FUNC) in an existing function group. -- `sap_create_object` creates a function group (FUGR). -- The MCP Server view has an Activity tab that shows each tool call live, with the client name, the result size, and an estimated token count. -- The MCP Server view changes its layout to fit the view width and has a "Connected only" filter for the project table. -- The security log records the client name and the result size of each tool call. +- `sap_create_object` creates a class with a test classes include. +- `sap_pull_source`, `sap_push_source`, and `sap_push_source_from_file` accept `includeType`. A write to `testclasses` creates the include if it is missing. See [CHANGELOG.md](CHANGELOG.md) for earlier versions. @@ -77,7 +74,7 @@ Download the plugin JAR from the latest release and drop it into your Eclipse `d ## Requirements - Eclipse 2024-03 or later with **SAP ADT** (ABAP Development Tools) installed -- Java 17 or later +- Java 21 or later to run the plugin in ADT 3.63.0. The ADT bundles `com.sap.adt.communication` and `com.sap.adt.tools.core` require JavaSE 21 (`Require-Capability: osgi.ee`, `version=21`), and the ADT launcher sets `-Dosgi.requiredJavaVersion=21` - One or more ABAP projects in your Eclipse workspace with active SNC/SSO connections to SAP @@ -192,8 +189,8 @@ The plugin exposes 31 tools covering the full ABAP development workflow: |------|-------------| | `sap_pull_source` | Read source code of an ABAP object into the AI context. `element=` returns one `METHOD` block (`part=definition` for the declaration); `includeType` selects a class include — `main` (Global Class, default), `definitions`, `implementations`, `macros`, `testclasses`, `all` | | `sap_pull_source_to_file` | Fetch source from SAP and write it to a local file (preferred for large objects). Same `element` and `includeType` parameters | -| `sap_push_source` | Write source code from context to an ABAP object in SAP — runs the full lock → write → unlock → activate pipeline in one call | -| `sap_push_source_from_file` | Save a local file back to SAP through the same one-call pipeline | +| `sap_push_source` | Write source code from context to an ABAP object in SAP — runs the full lock → write → unlock → activate pipeline in one call. `includeType` selects a class include; a write to `testclasses` creates the include if it is missing | +| `sap_push_source_from_file` | Save a local file back to SAP through the same one-call pipeline. Same `includeType` parameter as `sap_push_source` | | `sap_push_element` | Write one member block. The server merges the block into the current full source and pushes it — the model never holds the class. CLAS, INTF, PROG, FUGR | | `sap_push_message` | Write one message or several messages into an existing message class (MSAG). The server reads the class, merges the messages, and writes the class back in one call. A new number is appended. An existing number is updated | | `sap_pretty_print` | Format (pretty-print) ABAP source through the ADT pretty-printer service. The tool takes only the source and uses the server's stored settings | diff --git a/compositeArtifacts.xml b/compositeArtifacts.xml index ff73b4c..60e577f 100644 --- a/compositeArtifacts.xml +++ b/compositeArtifacts.xml @@ -4,10 +4,10 @@ type='org.eclipse.equinox.internal.p2.artifact.repository.CompositeArtifactRepository' version='1.0.0'> - + - + diff --git a/compositeContent.xml b/compositeContent.xml index 0644f9b..2fa4939 100644 --- a/compositeContent.xml +++ b/compositeContent.xml @@ -4,10 +4,10 @@ type='org.eclipse.equinox.internal.p2.metadata.repository.CompositeMetadataRepository' version='1.0.0'> - + - +