Repo audit: XLSX MIME fix, CI parity and cleanup#8
Merged
Conversation
The repo had an abaplint.jsonc but no way to run it automatically: no workflows, no package.json, no .github/abaplint configs. Adds the same baseline the other addons have (ABAP_STANDARD, ABAP_CLOUD, rename_test workflows, cloud and rename abaplint configs, package.json with pinned @abaplint toolchain, .gitignore). All three checks verified locally with 0 issues on 20 files. Also points the README demo image at the abap2UI5-addons org the repo lives in today. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01MEGSbezJEiFoFubnrqATiM
The preview kept the first five rows by deleting inside LOOP AT <tab2>, but DELETE of the current row makes the loop skip the next one, so rows 7, 9, 11 ... survived alongside 1-5. Replaced with a single DELETE <tab2> FROM 6, which keeps exactly the first five rows. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01MEGSbezJEiFoFubnrqATiM
The three workflows only triggered on push to main, so a PR with broken ABAP passed with no checks and the failure only surfaced after merge on a then-red main. Added pull_request as an additional trigger and a Dependabot config matching the other repos (weekly npm + github-actions, @abaplint grouped). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01MEGSbezJEiFoFubnrqATiM
This addon accesses data by table/SQL the user names and has no authorization check of its own by design (it is a developer tool). Document that explicitly and point operators at adding their own checks before using it beyond a development system. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01MEGSbezJEiFoFubnrqATiM
Dependency updates will be handled manually. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01MEGSbezJEiFoFubnrqATiM
Adds the same rename-branch feature abap2UI5 and frontend have: a workflow_dispatch that renames all artifacts to a chosen namespace and pushes the result to rename_<name> (e.g. rename_zmyui5), ready to pull with abapGit for a parallel installation in the same system. Reuses the existing .github/abaplint/rename.json (placeholder zabap2ui5) with the chosen name substituted; main is carried as second parent. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01MEGSbezJEiFoFubnrqATiM
Only @abaplint/cli is actually used (abaplint checks + rename). The transpiler/runtime/sqlite stack, @types/node and npm-check-updates had zero references - carried over from a template. abaplint still reports 0 issues after removal. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01MEGSbezJEiFoFubnrqATiM
Adopts the popups/samples pattern: table-content-loader now carries its own z2ui5_cl_tcl_context with the utility methods it uses (conv/itab/ json/xml/rtti helpers plus their private dependencies and the char constants), copied from the abap2UI5 utility class, instead of calling z2ui5_cl_util directly. The rtti attribute cache was dropped from the copy. abaplint: 0 issues, standard and cloud. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01MEGSbezJEiFoFubnrqATiM
The round-1 action-version pass skipped these four addons; they still ran @v4 while layout-management already uses @v5. Unify on @v5. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01MEGSbezJEiFoFubnrqATiM
…lish, lint rules - .gitattributes (LF), CODE_OF_CONDUCT.md, LICENSE holder -> abap2UI5 - workflows: concurrency groups + npm cache - README: add CI status badge block - abaplint: enable exporting + omit_parameter_name (auto-fixed findings) - UI text: && -> string templates, 'filepath here...' -> backticks, lowercase 'cancel' toast -> 'Cancelled' abaplint: 0 issues, standard and cloud. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01MEGSbezJEiFoFubnrqATiM
Give the README the same six-badge block as the other addons (ABAP_STANDARD, ABAP_CLOUD, ABAP_702, auto_cloud, auto_downport, renaming) so badges stay grey where a workflow is not part of this repo and go green/red where it runs. The rename_test workflow is renamed to 'renaming' so its badge reads that. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01MEGSbezJEiFoFubnrqATiM
Single agent-instruction file documenting the current state: structure, the vendored utility-copy model, dependencies, security notes, coding style and how to validate (abaplint + CI workflows). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01MEGSbezJEiFoFubnrqATiM
- Serve XLSX downloads with the correct spreadsheetml MIME type instead of text/csv in app_05 and app_06 - Remove unused ms_app fields (max_rows, file_size, file_entries) and convert event char literals to string literals in app_01/app_03 - Add prefix_is_current_class to abaplint.jsonc (0 findings) - README: correct compatibility wording and unify Contribution section - Quote node-version in workflows, extend .gitignore, add engines to package.json Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01MEGSbezJEiFoFubnrqATiM
Align with the version now used in the abap2UI5 core repo. abaplint passes with 0 issues. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01MEGSbezJEiFoFubnrqATiM
The Contributor Covenant [INSERT CONTACT METHOD] placeholder had been deleted, leaving a dangling "...responsible for enforcement at ." sentence. Point reporters at the repository's private Security Advisory report form. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01MEGSbezJEiFoFubnrqATiM
The import view built the format segmented button with extra ->get( ) hops (which navigate to mo_root->mo_previous), unlike the working export view. Attach items/items directly so both views build the control the same way. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01MEGSbezJEiFoFubnrqATiM
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
A small, low-risk audit pass over the table-content-loader addon, bringing it in line with the sibling addons.
Changes
spreadsheetmlMIME type instead oftext/csv(app_05, app_06).ms_appfields (max_rows,file_size,file_entries); convert event char literals to string literals.tclcontext class instead of callingz2ui5_cl_utildirectly (abapGit has no dependency management).build_renameworkflow; bump actions to v5; uniform CI badge block; rename the rename check torenaming; quotenode-version.AGENTS.md; correct compatibility wording and unify the Contribution section; note that authorization checks are the operator's responsibility; add.gitattributes/ CoC; drop unused devDependencies; remove Dependabot config; addprefix_is_current_classtoabaplint.jsonc; extend.gitignore; addengines.Testing
npx abaplintpasses (0 issues, 22 files).🤖 Generated with Claude Code
Generated by Claude Code