Comments (2)
Hi,
yes, I actually considered this already, but didn't follow up on it yet, because it would require introducing some central settings that apply to multiple rules (and we simply don't have a place for that yet).
I guess what you'd need is to allow editing the prefix (default "TODO:
") and the suffix (default "(ABAP cleaner)
"), and the actual message would be put in the middle?
Changing this (or using different settings within a team) would mean, however, that ABAP cleaner might not be able to remove comments that were created with different settings (e.g. if a variable was unused but is now used).
Kind regards,
Jörg-Michael
from abap-cleaner.
Hi Jörg-Michael,
I guess what you'd need is to allow editing the prefix (default "TODO:") and the suffix (default "(ABAP cleaner)"), and the actual message would be put in the middle?
Yes, that would be the two options I would see as well.
Changing this (or using different settings within a team) would mean, however, that ABAP cleaner might not be able to remove comments that were created with different settings (e.g. if a variable was unused but is now used).
That's correct, but I assume that would already be the case for other formatting rules, if the setup is not consistent within a team.
Thus, I would see this issue as a team responsibility, to use a shared configuration and to ensure, that each member keeps the configuration up to date.
The only scenario I see, would be, that if unhandled comments are still present in the code base, at the time the configuration is being changed, it would not catch those and would add a duplicate comment.
I am not sure, if there is an elegant way to avoid this.
Possibilities I see:
- Check for single-line comments containing the main message, e.g. "
variable is assigned but never used
" and replace them.
Problem: if additional information has been added by the user in the same line, this would be lost. - Check for single-line comments containing the main message, e.g. "
variable is assigned but never used
". If it exists, skip adding a new comment (even if the format is incorrect). - Check for all known complete comments, e.g. all combinations of prefixes + message + suffixes (optionally with storing previously set pre-/suffixes) and replace them.
Should be safe?! - If a single-line comments containing the main message, e.g. "variable is assigned but never used" is found and does not match the current style: add additional suffix like "
(comment does not match configuration; remove comment and rerun ABAP cleaner to update it)
", if it is not present already. This could be made toggleable, with fallback to option 2.
My preference would be option 2 or 4 (with fallback to 2).
Cheers,
Benedikt
from abap-cleaner.
Related Issues (20)
- Bug for S/4 readiness check psuedo comments HOT 3
- Aligning single parameters for functional calls HOT 4
- Remove extra spaces inside parentheses HOT 1
- Eclipse ADT - Update Site not reachable? HOT 3
- "Align parameters and components": Direct usage of structure looks weird in VALUE HOT 4
- BUG: Rules "Convert CHECK inside/outside loop..." HOT 5
- Differences with ABAP Formatter HOT 6
- "Align parameters and components" when using multiple indices in nested table expression HOT 4
- "Align conditional expressions": `THROW` not aligned nicely in `SWITCH` HOT 3
- "Align declarations": Line break if the line gets too long HOT 4
- 'Align logical expression' does not recognize WHERE statement HOT 2
- RND parser categorizes as a CAT_LITERAL in ULINE length statement HOT 4
- "Align parameters and components": Options do not behave as expected HOT 5
- Feature request: Align FORM calls HOT 1
- Feature request: Align FORM definitions HOT 1
- Feature request: Standardize order of parameters when using `CL_ABAP_UNIT_ASSERT` HOT 1
- Feature Request: remove empty line-break(s) between ENDxxxxs. HOT 3
- "Delete unused variables": Incorrect result across multiple `TEST-INJECTION` blocks HOT 2
- Bug: "prefer_is_not..." in combination with "move and/or..." breaks when comments are present HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from abap-cleaner.