-
Notifications
You must be signed in to change notification settings - Fork 3
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
The Great Parsing #27
Comments
Exactly two files (the same exact same contents) use some weird platform tag identifier thing like so "Foo"
{
"Bar" [$WIN32]
{
}
} Handling this would probably be a pain especially since I have no clue what possible values there are and I also don't know how all it can be applied (I'm assuming the above would make "Bar" and its value considered Windows 32-bit exclusive, can it also be applied to a value that is a string? Where else could it be used? |
It seems common to still use |
It seems somewhat common to include a null byte at the end of the file. Not sure if this is packed file specific and just isn't handled right or if this is present normally (Hopefully it's just the former for consistency) |
Some files failed to read because they're not UTF-8 encoded. Need to dig into the different encodings used. It may be reasonable to expect users to handle encoding and convert it to UTF-8 for us |
It looks like the platform specific tags may be more common and do seem to indicate the platform that a value is used for. Here's a snippet from another file
This also shows that it can be used on values that are strings as well. The full set of tags that I've seen so far are The parsing position is a bit awkward as well since it can appear at the end of a pair for Key-String, but between the two tokens for Key-Obj. With how many different possible values there are it doesn't seem worth trying to parse specifics, we could just return the string for what's inside Of the 16,353 failures this is included in 345 |
The number of files that used Of those files it appears that |
Finally the number of files that use |
From finding out how to extract contents from
.vpk
files in #26 we now have over 60k VDF files to test parsing with just from the contents of a few Valve gamesThe full corpus is much too large and probably a nono to include in here, but I'll hack together a program that tries to parse each file and dump any ones that fail to a separate location. Once I get that running I'll post any failures here
The text was updated successfully, but these errors were encountered: