- 
                Notifications
    You must be signed in to change notification settings 
- Fork 36
Fix the CI build with older Rust versions #19
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
          
     Open
      
      
            asomers
  wants to merge
  2
  commits into
  libguestfs:master
  
    
      
        
          
  
    
      Choose a base branch
      
     
    
      
        
      
      
        
          
          
        
        
          
            
              
              
              
  
           
        
        
          
            
              
              
           
        
       
     
  
        
          
            
          
            
          
        
       
    
      
from
asomers:cargo.lock.msv
  
      
      
   
  
    
  
  
  
 
  
      
    base: master
Could not load branches
            
              
  
    Branch not found: {{ refName }}
  
            
                
      Loading
              
            Could not load tags
            
            
              Nothing to show
            
              
  
            
                
      Loading
              
            Are you sure you want to change the base?
            Some commits from the old base branch may be removed from the timeline,
            and old review comments may become outdated.
          
          Conversation
  
    
      This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
      Learn more about bidirectional Unicode characters
    
  
  
    
    When testing with the MSRV (1.46.0) or the Debian Rust package (1.48.0), we must lock predicates-core and predicates-tree at older versions. Add a Cargo.lock.msrv file and use it in CI. But it will not be published to crates.io.
b97a919    to
    c260900      
    Compare
  
    | There may be an easier way to fix this if we want to just skip the test in CI. Simply add: to the right bit of  | 
| Possible alternative here: https://gitlab.com/nbdkit/nbdkit/-/merge_requests/21 | 
    
  shasheene 
      pushed a commit
        to rescuezilla/nbdkit
      that referenced
      this pull request
    
      Aug 1, 2025 
    
    
      
  
    
      
    
  
Valgrind works ... but it takes several minutes to run, making the
whole 'make check-valgrind' very slow.
I collected a stack trace from vgdb (valgrind gdb) during the long
delay to confirm the specific function:
  Thread 2 received signal SIGTRAP, Trace/breakpoint trap.
  [Switching to Thread 1050375]
  _nettle_write_be32 (length=<optimized out>,
      dst=0xdf3d250 "\312hu\256\301\260\230b\250'\362\3764\nr\373\a\004\005\002\003", src=0xdf3d410) at /usr/src/debug/nettle-3.9.1-6.fc40.x86_64/write-be32.c:54
  Downloading source file /usr/src/debug/nettle-3.9.1-6.fc40.x86_64/write-be32.c
  54          WRITE_UINT32(dst, src[i]);
  (gdb) bt
  #0  _nettle_write_be32 (length=<optimized out>,
      dst=0xdf3d250 "\312hu\256\301\260\230b\250'\362\3764\nr\373\a\004\005\002\003", src=0xdf3d410) at /usr/src/debug/nettle-3.9.1-6.fc40.x86_64/write-be32.c:54
  libguestfs#1  0x000000000d176425 in nettle_sha256_digest (ctx=0xdf3d410,
      length=<optimized out>, digest=<optimized out>)
      at /usr/src/debug/nettle-3.9.1-6.fc40.x86_64/sha256.c:153
  libguestfs#2  0x000000000d16fae7 in nettle_hmac_digest (outer=0xdf3d330,
      inner=0xdf3d3a0, state=0xdf3d410, hash=0xd1a5240 <nettle_sha256>,
      length=32,
      dst=0xdf3d240 "q\bp\260@8Mt\225$\234\217\243\312hu\256\301\260\230b\250'\362\3764\nr\373\a\004\005\002\003")
      at /usr/src/debug/nettle-3.9.1-6.fc40.x86_64/hmac.c:112
  libguestfs#3  0x000000000d173e3f in nettle_pbkdf2 (mac_ctx=mac_ctx@entry=0xdf3d330,
      update=0xd1765c0 <nettle_hmac_sha256_update>, digest=<optimized out>,
      digest_size=32, iterations=iterations@entry=13415458,
      salt_length=salt_length@entry=32, salt=<optimized out>, length=64,
      dst=0xd3b74c0 "") at /usr/src/debug/nettle-3.9.1-6.fc40.x86_64/pbkdf2.c:87
  libguestfs#4  0x000000000cb02b6e in wrap_nettle_pbkdf2 (mac=<optimized out>,
      key=0xd377420, keysize=6, salt=0xd378a98, saltsize=32,
      iter_count=13415458, output=0xd3b74c0, length=64)
      at ../../../lib/nettle/mac.c:905
  libguestfs#5  0x000000000ca16f68 in gnutls_pbkdf2 (mac=mac@entry=GNUTLS_MAC_SHA256,
      key=key@entry=0xdf3e680, salt=salt@entry=0xdf3e690, iter_count=13415458,
      output=output@entry=0xd3b74c0, length=length@entry=64)
      at ../../lib/crypto-api.c:2180
  libguestfs#6  0x000000000c993f83 in try_passphrase_in_keyslot (next=0xd378710,
      h=0xd3789c0, i=<optimized out>, passphrase=0xd377420 "123456")
      at /home/rjones/d/nbdkit/filters/luks/luks-encryption.c:614
  libguestfs#7  load_header (next=0xd378710, passphrase=0xd377420 "123456")
      at /home/rjones/d/nbdkit/filters/luks/luks-encryption.c:835
  libguestfs#8  luks_prepare (next=0xd378710, handle=0xd378970, readonly=<optimized out>)
      at /home/rjones/d/nbdkit/filters/luks/luks.c:140
  libguestfs#9  0x000000000011157d in filter_prepare (c=<optimized out>,
      readonly=<optimized out>) at /home/rjones/d/nbdkit/server/filters.c:342
  libguestfs#10 0x000000000011356b in backend_prepare (c=0xd378510)
      at /home/rjones/d/nbdkit/server/backend.c:332
  libguestfs#11 0x000000000011d40c in protocol_common_open (
      exportsize=exportsize@entry=0xdf3e938, flags=flags@entry=0xd37829c,
      exportname=exportname@entry=0xd3784c0 "")
      at /home/rjones/d/nbdkit/server/protocol-handshake.c:88
  libguestfs#12 0x000000000011d997 in finish_newstyle_options (
      exportsize=exportsize@entry=0xdf3e938,
      exportname_in=exportname_in@entry=0xd378474 "",
      exportnamelen=exportnamelen@entry=0)
      at /home/rjones/d/nbdkit/server/protocol-handshake-newstyle.c:319
  libguestfs#13 0x0000000000121e25 in negotiate_handshake_newstyle_options ()
      at /home/rjones/d/nbdkit/server/protocol-handshake-newstyle.c:619
  libguestfs#14 0x0000000000118c3e in protocol_handshake_newstyle ()
      at /home/rjones/d/nbdkit/server/protocol-handshake-newstyle.c:991
  libguestfs#15 protocol_handshake ()
      at /home/rjones/d/nbdkit/server/protocol-handshake.c:55
  libguestfs#16 handle_single_connection (sockin=<optimized out>, sockout=<optimized out>)
      at /home/rjones/d/nbdkit/server/connections.c:180
  libguestfs#17 0x000000000011caf1 in start_thread (datav=0xd377f00)
      at /home/rjones/d/nbdkit/server/sockets.c:377
  libguestfs#18 0x000000000ccad1a7 in start_thread (arg=<optimized out>)
      at pthread_create.c:447
  libguestfs#19 0x000000000cd2f174 in clone ()
    
  
    Sign up for free
    to join this conversation on GitHub.
    Already have an account?
    Sign in to comment
  
      
  Add this suggestion to a batch that can be applied as a single commit.
  This suggestion is invalid because no changes were made to the code.
  Suggestions cannot be applied while the pull request is closed.
  Suggestions cannot be applied while viewing a subset of changes.
  Only one suggestion per line can be applied in a batch.
  Add this suggestion to a batch that can be applied as a single commit.
  Applying suggestions on deleted lines is not supported.
  You must change the existing code in this line in order to create a valid suggestion.
  Outdated suggestions cannot be applied.
  This suggestion has been applied or marked resolved.
  Suggestions cannot be applied from pending reviews.
  Suggestions cannot be applied on multi-line comments.
  Suggestions cannot be applied while the pull request is queued to merge.
  Suggestion cannot be applied right now. Please check back later.
  
    
  
    
When testing with the MSRV (1.46.0) or the Debian Rust package (1.48.0), we must lock predicates-core and predicates-tree at older versions. Add a Cargo.lock.msrv file and use it in CI. But it will not be published to crates.io.