Skip to content
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

Update kore-rpc-client to use tar-0.6.3 #3996

Merged
merged 4 commits into from
Jul 25, 2024
Merged

Update kore-rpc-client to use tar-0.6.3 #3996

merged 4 commits into from
Jul 25, 2024

Conversation

geo2a
Copy link
Collaborator

@geo2a geo2a commented Jul 24, 2024

With runtimeverification/k#4548, the bug reports will be generated in GNU format of tar files instead of the default POSIX.1-2001 pax format. This is necessary because:

  • the filenames in the bug reports are often longer than the format-portable restriction of 256 characters
  • the Haskell library we use to work with tar does not support the pax format. However, it does support the GNU format which also allows long names.

With this change, we get to process bug reports with long names.

@@ -505,20 +505,24 @@ runTarball common (Just sock) tarFile keepGoing runOnly compareDetails = do
| ".tar.bz2" `isSuffixOf` takeExtensions tarFile = Tar.read . BZ2.decompress
| otherwise = Tar.read

containedFiles <- unpackTar <$> BS.readFile tarFile
let checked = Tar.checkSecurity containedFiles
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No need to run Tar.checkSecurity as unpack already does it for us.

@geo2a geo2a marked this pull request as ready for review July 24, 2024 16:09
@geo2a
Copy link
Collaborator Author

geo2a commented Jul 24, 2024

Oops, forgot about tarball-compare... will need to fix it before merging.

Update: I think I've fixed most of it, but I cannot for some reason make the tarball-directory case typecheck.

Comment on lines 121 to 122
pure $ foldr Tar.Next Tar.Done entries
error "Unimplemented: can't make it typecheck!!" -- pure $ foldr Tar.Next Tar.Done entries
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

...maybe we should consider removing this tool?
It relies upon the directory names and request IDs in the tar file being equal for the same proof - which is not true any more since recent changes were made (to both directory names and request IDs).
I haven't used the tool in quite a while, it was for conformance checks between booster and kore-rpc.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Let's delete, can always resurrect if needed!

Copy link
Member

@jberthold jberthold left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can merge this, but we should either fix or delete tarball-compare.

@rv-jenkins rv-jenkins merged commit 698c143 into master Jul 25, 2024
6 checks passed
@rv-jenkins rv-jenkins deleted the use-tar-0.6.3 branch July 25, 2024 06:43
geo2a added a commit that referenced this pull request Jul 26, 2024
With runtimeverification/k#4548, the bug reports
will be generated in GNU format of tar files instead of the default
POSIX.1-2001 pax format. This is necessary because:
- the filenames in the bug reports are often longer than the
format-portable restriction of 256 characters
- the Haskell [library](https://hackage.haskell.org/package/tar-0.6.3.0)
we use to work with tar does not support the pax format. However, it
does support the GNU format which also allows long names.

With this change, we get to process bug reports with long names.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants