New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Change XML output file's version to 1.1 #9607
Comments
I'm not saying this is likely, but it's possible some users are depending on us outputting 1.0 right now and so changing to 1.1 could be a breaking change. Is there a way to solve the entity issue in 1.0, so that we could land that change as a patch and then we could consider outputting 1.1 in a major release (if it is indeed considered a breaking change)? |
I don't see another way of solving this, since version 1.0 does not support those characters. |
I'm not very familiar with XML versioning. How would outputting 1.1 be a breaking change? |
I'm not saying it would be for sure, I was just asking the question. For humans reading XML, it definitely wouldn't be breaking. But if the lint output is itself read by some other system, and that system is old and only understands 1.0 semantics and throws if it gets 1.1 XML, then that could inconvenience users, although it's an integration breaking rather than core functionality. Actually there would be two scenarios depending on whether entities (described in this bug fix) are output:
I'm more concerned about the second group. I don't know how realistic this is. In fact, I doubt many users would be affected. But we've put breaking labels on more trivial changes. |
I guess we could handle both groups by switching to XML 1.1 only when the output contains entities. But that seems like a hacky workaround. |
I'd be okay with maybe accepting this change, and releasing a new formatter with the old behavior (e.g., "xml10") if users complain. |
Sounds good to me. Removing the "breaking" label and marking this as accepted. |
Just came to chime in that this indeed broke our Jenkins:
We're currently |
Reopening since we need to revert the PR due to breaking integrations. I was thinking about this and I think the correct approach is actually to fix the error messages. If a rule is reporting on an object property such as We can usually abstract this using Please elaborate on the lint error (rule, source code, and error message). We should fix the lint message, so that the error message is compatible with XML-based formatters. Thanks! |
Here’s an example in the online demo with |
Can we do so without breaking those old Jenkins installations (with no way
to fix it)? If not, I think we should consider creating an xml11 formatter
instead and deprecate the xml formatter.
…On Jan 12, 2018 4:58 PM, "Teddy Katz" ***@***.***> wrote:
Should we consider applying this as a breaking change next major release?
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
<#9607 (comment)>, or mute
the thread
<https://github.com/notifications/unsubscribe-auth/AARWesbiuqEW6ubKetLBmnnJGqOpPgZ_ks5tJ-OcgaJpZM4QZrEs>
.
|
Making a new formatter also sounds good to me. |
What about the opposite — updating the |
If done in a major release, that would be fine too. |
I'm 👎 to changing the formatter to XML 1.1 without providing an alternative. My preference would be to leave the current formatter alone and create a new one. This would allow us to tackle this outside of a major release, as well-- I'm not sure this necessarily needs to be done in 5.0. |
TSC Summary: The messages that are part of the current TSC Questions:
|
I'd vote to add a new formatter and leave the old one as is. |
In today's TSC meeting, the TSC decided to update the existing |
@eslint/eslint-tsc After having a look at this, we framed the discussion around a non-existent |
My understanding is:
Indeed, |
After having a look around, it seems XML 1.1 is not widely adopted, so I'm unsure if we should even make the change or recommend a custom formatter for those who need it. |
In today's TSC meeting, the TSC decided to not make any change to existing formatters. Users who need XML 1.1 for their results are encouraged to create a custom formatter. |
What version are you using?
4.7.1 - But this applies to all versions
What did you do?
var foo = { "\b":42 };
-f checkstyle
flagWhat happened?
One of the errors is:
<error line="1" column="18" severity="error" message="Missing space before value for key ''. (key-spacing)" source="eslint.rules.key-spacing" />
This XML is valid for version 1.1, but the XML header has the version set to 1.0, in which some character references like

are not valid.What did you expect to happen?
The XML version on the output file should be 1.1
I think this might be related to #6673.
The text was updated successfully, but these errors were encountered: