editorconfig/editorconfig#429 Remove section name, key and value length limits#41
Conversation
goodhoko
commented
May 21, 2020
- Remove the upper limit for section name, key and value length.
- Permit implementations to define their own upper limits.
- Add minimum supported lengths each implementation must support.
|
@goodhoko I do not see a problem when looking at the changes. But to get real certainty I would like to see the changes necessary for ec4j to pass the new tests. Do you happen to have the changes already? Otherwise I can try. |
f6950b4 to
a433049
Compare
|
@ppalaga Validating the tests against an actual implementation would certainly be awesome. I do not have anything ready yet. So feel free to do that! |
|
@goodhoko I hope I'll be able to do it in a couple of days. |
a433049 to
d2ece77
Compare
ppalaga
left a comment
There was a problem hiding this comment.
ec4j is passing with these changes after I removed the limits ec4j/ec4j#111
|
ec-vim passes on my local machine after removing limits: editorconfig/editorconfig-vim#148 |
parser/limits.in
Outdated
| [{test4,test00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004}] | ||
| key=value | ||
| ; minimum supported section name length of 1024 characters | ||
| [{test3,aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa}] |
There was a problem hiding this comment.
There are only 1014 as in this string, and the total length inside the brackets is 1022. If I read https://github.com/editorconfig/specification/pull/21/files#diff-db4b047b30ffef7855b12b527860ac2cR134 correctly, there should be 1024 characters inside the brackets here, correct?
There was a problem hiding this comment.
Good catch. The old limit was tied to the length of the glob without brackets - at least that's how it was implemented in ec4j. I wonder if we should make this more explicit in the spec?
There was a problem hiding this comment.
I wonder if we should make this more explicit in the spec?
Reading again, I think it is clear enough.
There was a problem hiding this comment.
Good catch indeed! I based the tests on the existing ones, but confused test3 and test4. 🤦
I fixed this and also added note in the comment in the limits.in
; minimum supported section name length of 1024 characters (excluding [] brackets)
Reading again, I think it is clear enough.
Agree. It directly follows from
Section Name: the string between the beginning
[and the ending].
There was a problem hiding this comment.
@cxw42 can you take a look at this, please? I believe it should be all good now.
I also run the 'limitless branch' of ec4j against this branch and everything passed. (thanks @ppalaga )
52b565e to
a4fcbb3
Compare
|
@cxw42 isn't this good to merge? |
…th limits - Remove the upper limit for section name, key and value length. - Permit implementations to define their own upper limits. - Add minimum supported lengths each implementation must support.
a4fcbb3 to
cf3a942
Compare
|
@cxw42 Rebased. |
|
Should be be ready to be merged yet? |
|
@xuhdev pending editorconfig/specification#21, but other than that, I think it's probably fine. The only thing is that I have not had a chance to investigate the Windows test failures on editorconfig-vim (my apologies!), but I agree we can proceed anyway. |
|
Sorry for the delay -- sometimes I miss notification or forget things. I've started a polling: editorconfig/editorconfig-vote#13 Feel free to ping me next time -- I'm never tired of reminders! |
|
@xuhdev since editorconfig/specification#21 is merged, this should be merged as well to keep the spec and tests in sync. .) |
|
Thanks for your contributions! Sorry for having missed this PR earlier. |
Increase the minimum key and value lengths to pass the tests added in <editorconfig/editorconfig-core-test#41>.
Increase the minimum key and value lengths to pass the tests added in <editorconfig/editorconfig-core-test#41>.