Cannot load block from disk. main.cpp, Line 5464

This issue tracker is only for technical issues related to Ion Core.
General Ion questions and/or support requests and are best directed to the ION Discord.
Describe the issue
Periodically, when running ion-qt.exe, unlocked for minting following error comes

After error ion_qt.exe are not able to restore connection to the network till you press Continue button at Error window.
I think I had this errors without coins in wallet, but lust time it happend, I had 50 minted xIon`s.
Debug.log:
debug.zip
Timestamp of error 03:59:54
At Timestamp 06:12:54, Ive pressed Continue button at Error window
Every hour after start I have FreeSync scrypt running. It compares all files on drive where I have Ion Data folder, and if it finds changes, new files, it copies them to backup drive.
some socket errors have Russian description, if you need translations, contact BrownDwarf at ionomy Discord.
What version of Ion Core are you using?
Windows
ion-qt.exe
Ion Core <IP_ADDRESS>
Date of modification: 26.03.2018 20:35
CRC32 4D09B879
CRC64 859F718C7264843B
Machine specs:

OS: Windows 10, version 1709, build 16299.309
CPU: FX-8350
RAM: 16Gb
Disk size: System, ion-qt 128Gb. Ion Data folder 2Tb
Disk Type (HD/SDD): System, ion-qt on SSD. Ion Data folder on HDD

Thanks for reporting the issue!
This looks similar to a locking issue we experienced (and addressed) earlier, with locks that aren't properly set.
Could you perhaps restart the wallet with -debug=lock (or add debug=lock to ioncoin.conf and restart) and share the debug.log that produces?

Hello,thanks for a full report and debug file.
Did you already try what @FornaxA asked and if, could you please share relevant part of the debug file (or full one)?
Can you try to run daemon (iond) and see if same happens and please do

copy/backup somewhere your datadir
Create new empty datadir
Copy only:

datadir/ioncoin.conf
datadir/masternode.conf
datadir/onion_private_key
full zerocoin directory datadir/zerocoin/
datadir/wallet.dat.

start your daemon and wait until synced
check if same error is present.

Maybe you could also disable ipv6/onioin on your your and you instead ipv4 for testing, or simply socks over onion or some socks server (VPN works too).
I see several issues actually, not sure if that is related to your problem, but as far as I can see you used QT.
2018-03-25 07:59:50 tor: Thread interrupt
2018-03-25 07:59:50 torcontrol thread exit
2018-03-25 07:59:50 addcon thread interrupt
2018-03-25 07:59:50 ThreadStakeMinter() error
2018-03-25 07:59:50 opencon thread interrupt
2018-03-25 07:59:50 msghand thread interrupt
2018-03-25 07:59:50 scheduler thread interrupt
2018-03-25 07:59:50 ThreadStakeMinter exiting,
2018-03-25 07:59:50 stakemint thread exit
2018-03-25 07:59:50 GUI: QItemSelectionModel: Selecting when no model has been set will result in a no-op.
2018-03-25 07:59:50 GUI: QItemSelectionModel: Selecting when no model has been set will result in a no-op.
2018-03-25 07:59:50 GUI: QItemSelectionModel: Selecting when no model has been set will result in a no-op.
2018-03-25 07:59:50 GUI: QItemSelectionModel: Selecting when no model has been set will result in a no-op.
2018-03-25 07:59:50 GUI: QItemSelectionModel: Selecting when no model has been set will result in a no-op.
2018-03-25 07:59:50 GUI: QItemSelectionModel: Selecting when no model has been set will result in a no-op.
2018-03-25 07:59:50 net thread interrupt
2018-03-25 07:59:50 PrepareShutdown: In progress...
2018-03-25 07:59:50 StopNode()
2018-03-25 07:59:50 UPNP_DeletePortMapping() returned : 0
2018-03-25 07:59:50 upnp thread interrupt
2018-03-25 07:59:51 Shutdown: done
GUI: setGeometry: Unable to set geometry 5x13+596+300 on QWidgetWindow/'QLabelClassWindow'. Resulting geometry:  120x13+596+300 (frame: 8, 31, 8, 8, custom margin: 0, 0, 0, 0, minimum size: 0x0, maximum size: 16777215x16777215).
2018-03-25 07:59:57

some socket errors have Russian description, if you need translations, contact BrownDwarf at ionomy Discord.

Спасибо, нам конечно не помешает если русскоговорящие просмотрят тексты итд.. Что касается лог файла, мы в состоянии перевести. Каждый может даже запросы по русски писать если с английским туго.

I also can see by both, the error message as well as log, you use v3.0.2.
Please try latest release version instead: https://github.com/cevap/ion/releases/latest
this is coding part where your error occures: https://github.com/cevap/ion/blob/v3.0.2/src/main.cpp#L5459-L5466
                // Don't send not-validated blocks
                if (send && (mi->second->nStatus & BLOCK_HAVE_DATA)) {
                    // Send block from disk
                    CBlock block;
                    if (!ReadBlockFromDisk(block, (*mi).second))
                        assert(!"cannot load block from disk");
                    if (inv.type == MSG_BLOCK)
pfrom->PushMessage("block", block);

Im using latest. Then its more strange that you see 3.0.2 leftowers

Any instructions to run iond.exe? It is using cpu, but nothing happens in data dir.

Well, according to your error in screenshot, you did run for sure 3.0.2 as the line where the error happens is the one from v3.0.2.
I see that you did run later:
2018-03-27 15:37:12 ION version v<IP_ADDRESS>-333dc03-CEVAP (2018-03-26 19:35:16 +0200).
To start daemon just use iond, and use ion-cli for all calls like getinfo etc.. If you have your conf in default dir it will use those settings, you can override them by passing them over command. For more info, please read iond help.
This is help of iond:
Ion Core Daemon version v<IP_ADDRESS>-d6cf121-dirty-CEVAP

Usage:
  iond [options]                     Start Ion Core Daemon

Options:

  -?
       This help message

  -version
       Print version and exit

  -alertnotify=<cmd>
       Execute command when a relevant alert is received or we see a really
       long fork (%s in cmd is replaced by message)

  -alerts
       Receive and display P2P network alerts (default: 1)

  -blocknotify=<cmd>
       Execute command when the best block changes (%s in cmd is replaced by
       block hash)

  -blocksizenotify=<cmd>
       Execute command when the best block changes and its size is over (%s in
       cmd is replaced by block hash, %d with the block size)

  -checkblocks=<n>
       How many blocks to check at startup (default: 500, 0 = all)

  -conf=<file>
       Specify configuration file (default: ioncoin.conf)

  -daemon
       Run in the background as a daemon and accept commands

  -datadir=<dir>
       Specify data directory

  -dbcache=<n>
       Set database cache size in megabytes (4 to 4096, default: 100)

  -loadblock=<file>
       Imports blocks from external blk000??.dat file on startup

  -maxreorg=<n>
       Set the Maximum reorg depth (default: 100)

  -maxorphantx=<n>
       Keep at most <n> unconnectable transactions in memory (default: 100)

  -par=<n>
       Set the number of script verification threads (-8 to 16, 0 = auto, <0 =
       leave that many cores free, default: 0)

  -pid=<file>
       Specify pid file (default: iond.pid)

  -reindex
       Rebuild block chain index from current blk000??.dat files on startup

  -reindexaccumulators
       Reindex the accumulator database on startup

  -reindexmoneysupply
       Reindex the Ion and xION money supply statistics on startup

  -resync
       Delete blockchain folders and resync from scratch on startup

  -sysperms
       Create new files with system default permissions, instead of umask 077
       (only effective with disabled wallet functionality)

  -txindex
       Maintain a full transaction index, used by the getrawtransaction rpc
       call (default: 0)

  -forcestart
       Attempt to force blockchain corruption recovery on startup

Connection options:

  -addnode=<ip>
       Add a node to connect to and attempt to keep the connection open

  -banscore=<n>
       Threshold for disconnecting misbehaving peers (default: 100)

  -bantime=<n>
       Number of seconds to keep misbehaving peers from reconnecting (default:
       86400)

  -bind=<addr>
       Bind to given address and always listen on it. Use [host]:port notation
       for IPv6

  -connect=<ip>
       Connect only to the specified node(s)

  -discover
       Discover own IP address (default: 1 when listening and no -externalip)

  -dns
       Allow DNS lookups for -addnode, -seednode and -connect (default: 1)

  -dnsseed
       Query for peer addresses via DNS lookup, if low on addresses (default: 1
       unless -connect)

  -externalip=<ip>
       Specify your own public address

  -forcednsseed
       Always query for peer addresses via DNS lookup (default: 0)

  -listen
       Accept connections from outside (default: 1 if no -proxy or -connect)

  -listenonion
       Automatically create Tor hidden service (default: 1)

  -maxconnections=<n>
       Maintain at most <n> connections to peers (default: 125)

  -maxreceivebuffer=<n>
       Maximum per-connection receive buffer, <n>*1000 bytes (default: 5000)

  -maxsendbuffer=<n>
       Maximum per-connection send buffer, <n>*1000 bytes (default: 1000)

  -onion=<ip:port>
       Use separate SOCKS5 proxy to reach peers via Tor hidden services
       (default: -proxy)

  -onlynet=<net>
       Only connect to nodes in network <net> (ipv4, ipv6 or onion)

  -permitbaremultisig
       Relay non-P2SH multisig (default: 1)

  -peerbloomfilters
       Support filtering of blocks and transaction with bloom filters (default:
       1)

  -port=<port>
       Listen for connections on <port> (default: 12700 or testnet: 27170)

  -proxy=<ip:port>
       Connect through SOCKS5 proxy

  -proxyrandomize
       Randomize credentials for every proxy connection. This enables Tor
       stream isolation (default: 1)

  -seednode=<ip>
       Connect to a node to retrieve peer addresses, and disconnect

  -timeout=<n>
       Specify connection timeout in milliseconds (minimum: 1, default: 5000)

  -torcontrol=<ip>:<port>
       Tor control port to use if onion listening enabled (default:
       <IP_ADDRESS>:9051)

  -torpassword=<pass>
       Tor control port password (default: empty)

  -upnp
       Use UPnP to map the listening port (default: 0)

  -whitebind=<addr>
       Bind to given address and whitelist peers connecting to it. Use
       [host]:port notation for IPv6

  -whitelist=<netmask>
       Whitelist peers connecting from the given netmask or IP address. Can be
       specified multiple times. Whitelisted peers cannot be DoS banned and
       their transactions are always relayed, even if they are already in the
       mempool, useful e.g. for a gateway

Wallet options:

  -createwalletbackups=<n>
       Number of automatic wallet backups (default: 10)

  -disablewallet
       Do not load the wallet and disable wallet RPC calls

  -keypool=<n>
       Set key pool size to <n> (default: 100)

  -paytxfee=<amt>
       Fee (in ION/kB) to add to transactions you send (default: 0.00)

  -rescan
       Rescan the block chain for missing wallet transactions on startup

  -salvagewallet
       Attempt to recover private keys from a corrupt wallet.dat on startup

  -sendfreetransactions
       Send transactions as zero-fee transactions if possible (default: 0)

  -spendzeroconfchange
       Spend unconfirmed change when sending transactions (default: 1)

  -disablesystemnotifications
       Disable OS notifications for incoming transactions (default: 0)

  -txconfirmtarget=<n>
       If paytxfee is not set, include enough fee so transactions begin
       confirmation on average within n blocks (default: 1)

  -maxtxfee=<amt>
       Maximum total fees to use in a single wallet transaction, setting too
       low may abort large transactions (default: 1.00)

  -upgradewallet
       Upgrade wallet to latest format on startup

  -wallet=<file>
       Specify wallet file (within data directory) (default: wallet.dat)

  -walletnotify=<cmd>
       Execute command when a wallet transaction changes (%s in cmd is replaced
       by TxID)

  -zapwallettxes=<mode>
       Delete all wallet transactions and only recover those parts of the
       blockchain through -rescan on startup (1 = keep tx meta data e.g.
       account owner and payment request information, 2 = drop tx meta data)

ZeroMQ notification options:

  -zmqpubhashblock=<address>
       Enable publish hash block in <address>

  -zmqpubhashtx=<address>
       Enable publish hash transaction in <address>

  -zmqpubhashtxlock=<address>
       Enable publish hash transaction (locked via SwiftX) in <address>

  -zmqpubrawblock=<address>
       Enable publish raw block in <address>

  -zmqpubrawtx=<address>
       Enable publish raw transaction in <address>

  -zmqpubrawtxlock=<address>
       Enable publish raw transaction (locked via SwiftX) in <address>

Debugging/Testing options:

  -debug=<category>
       Output debugging information (default: 0, supplying <category> is
       optional). If <category> is not supplied, output all debugging
       information.<category> can be: addrman, alert, bench, coindb, db, lock,
       rand, rpc, selectcoins, tor, mempool, net, proxy, ion, (obfuscation,
       swiftx, masternode, mnpayments, mnbudget, zero).

  -gen
       Generate coins (default: 0)

  -genproclimit=<n>
       Set the number of threads for coin generation if enabled (-1 = all
       cores, default: 1)

  -help-debug
       Show all debugging options (usage: --help -help-debug)

  -logips
       Include IP addresses in debug output (default: 0)

  -logtimestamps
       Prepend debug output with timestamp (default: 1)

  -minrelaytxfee=<amt>
       Fees (in ION/Kb) smaller than this are considered zero fee for relaying
       (default: 0.0001)

  -printtoconsole
       Send trace/debug info to console instead of debug.log file (default: 0)

  -shrinkdebugfile
       Shrink debug.log file on client startup (default: 1 when no -debug)

  -testnet
       Use the test network

  -litemode=<n>
       Disable all Ion specific functionality (Masternodes, Zerocoin, SwiftX,
       Budgeting) (0-1, default: 0)

Staking options:

  -staking=<n>
       Enable staking functionality (0-1, default: 1)

  -reservebalance=<amt>
       Keep the specified amount available for spending at all times (default:
       0)

Masternode options:

  -masternode=<n>
       Enable the client to act as a masternode (0-1, default: 0)

  -mnconf=<file>
       Specify masternode configuration file (default: masternode.conf)

  -mnconflock=<n>
       Lock masternodes from masternode configuration file (default: 1)

  -masternodeprivkey=<n>
       Set the masternode private key

  -masternodeaddr=<n>
       Set external address:port to get to this masternode (example:
       <IP_ADDRESS>:12700)

  -budgetvotemode=<mode>
       Change automatic finalized budget voting behavior. mode=auto: Vote for
       only exact finalized budget match to my generated budget. (string,
       default: auto)

Zerocoin options:

  -enablezeromint=<n>
       Enable automatic Zerocoin minting (0-1, default: 1)

  -zeromintpercentage=<n>
       Percentage of automatically minted Zerocoin (1-100, default: 10)

  -preferredDenom=<n>
       Preferred Denomination for automatically minted Zerocoin
       (1/5/10/50/100/500/1000/5000), 0 for no preference. default: 0)

  -backupxion=<n>
       Enable automatic wallet backups triggered after each xION minting (0-1,
       default: 1)

SwiftX options:

  -enableswifttx=<n>
       Enable SwiftX, show confirmations for locked transactions (bool,
       default: true)

  -swifttxdepth=<n>
       Show N confirmations for a successfully locked transaction (0-9999,
       default: 5)

Node relay options:

  -datacarrier
       Relay and mine data carrier transactions (default: 1)

  -datacarriersize
       Maximum size of data in data carrier transactions we relay and mine
       (default: 83)

Block creation options:

  -blockminsize=<n>
       Set minimum block size in bytes (default: 0)

  -blockmaxsize=<n>
       Set maximum block size in bytes (default: 750000)

  -blockprioritysize=<n>
       Set maximum size of high-priority/low-fee transactions in bytes
       (default: 50000)

RPC server options:

  -server
       Accept command line and JSON-RPC commands

  -rest
       Accept public REST requests (default: 0)

  -rpcbind=<addr>
       Bind to given address to listen for JSON-RPC connections. Use
       [host]:port notation for IPv6. This option can be specified multiple
       times (default: bind to all interfaces)

  -rpccookiefile=<loc>
       Location of the auth cookie (default: data dir)

  -rpcuser=<user>
       Username for JSON-RPC connections

  -rpcpassword=<pw>
       Password for JSON-RPC connections

  -rpcport=<port>
       Listen for JSON-RPC connections on <port> (default: 12705 or testnet:
       27171)

  -rpcallowip=<ip>
       Allow JSON-RPC connections from specified source. Valid for <ip> are a
       single IP (e.g. <IP_ADDRESS>), a network/netmask (e.g. <IP_ADDRESS>/<IP_ADDRESS>)
       or a network/CIDR (e.g. <IP_ADDRESS>/24). This option can be specified
       multiple times

  -rpcthreads=<n>
       Set the number of threads to service RPC calls (default: 4)

@FornaxA I guess the issue is closed.
@LACamomile please reply here to reopen if this issue is not resolved for you with latest version.


Update dockerizing_mono.md

Correcting to use https://hub.docker.com/r/_/fsharp/

Official fsharp image is now used in the recently published version. The contributing guideline for the tutorial wasn't clear - now I've written the guidelines here


Deterministic ordering of points with same sort order

When 2 points have the same sort key, include the bytes when comparing them so that the ordering is deterministic.
Originally posted by @nyurik in https://github.com/onthegomap/planetiler/discussions/214#discussioncomment-2697226

Technically this might not fully solve the issue. Osm allows two points to have identical coordinates (or they could get the same x,y during simplification). You might want to add tag sorting as the last fallback.

Would you have some pointer for me where this sorting is happening currently? Then I'll take a look into this.


Webpack3 generate css in wrong order

Do you want to request a feature or report a bug?
bug

What is the current behavior?
When using extract-text-webpack-plugin with webpack3 to generate stylesheet file, the content's order doesn't obey source code's order.  Use create-react-app boilerplate to explain this :
// App.js
import React, { Component } from "react";
import Block from "./Block";
import "./App.css";

class App extends Component {
  render() {
    return (

        <Block />

    );
  }
}

export default App;

//Block.js
import React from "react";
import "./block.css";

export default () =>
Content
;

// App.css
.App {
  text-align: center;
}

// block.css
.block {
  font-size: 16px;
}

Got :
.App {
  text-align: center;
}.block {
  font-size: 16px;
}
/*# sourceMappingURL=main.f2db6320.css.map*/

I'm not sure if this problem is webpack3 or extract-text-webpack-plugin's problem, since I can get correct result in webpack2.6.1, I think I should post in here first.
If the current behavior is a bug, please provide the steps to reproduce.

The complete project : https://github.com/cyl19910101/wp3_test

What is the expected behavior?
Expected stylesheet order :
.block {
  font-size: 16px;
}.App {
  text-align: center;
}

If this is a feature request, what is motivation or use case for changing the behavior?
Please mention other relevant information such as the browser version, Node.js version, webpack version and Operating System.
OS :
ProductName:    Mac OS X
ProductVersion: 10.12.5
BuildVersion:   16F73

Node :
v8.1.2

Webpack :
3.0.0

extract-text-webpack-plugin has a ignoreOrder option. It's false by default but maybe you activated it ?

I have the same issue. Just upgraded to<EMAIL_ADDRESS>and the css is in wrong order.

same here

@moimael I didn't touch the ignoreOrder option. And I've tried to set it to false specifically after read your comment, still get the same output.

@webpack-bot move to webpack-contrib/extract-text-webpack-plugin
extractedChunk.modules.sort is no longer valid, as extractedChunk.modules is now a getter to extractedChunk._modules which is a Set.


python37Packages.bjoern: 2.2.3 -> 3.0.0

Semi-automatic update generated by https://github.com/ryantm/nixpkgs-update tools. This update was made based on information from https://repology.org/metapackage/python3.7-bjoern/versions.
meta.description for python37Packages.bjoern is: '"A screamingly fast Python 2/3 WSGI server written in C"'.
meta.homepage for python37Packages.bjoern is: '"https://github.com/jonashaag/bjoern"

Checks done (click to expand)

built on NixOS
/bin/sh passed the binary check.
1 of 1 passed binary check by having a zero exit code.
0 of 1 passed binary check by having the new version present in output.
found 3.0.0 with grep in /nix/store/4a15b91wvlfdi9hrxxg7is9r069v078p-python3.7-bjoern-3.0.0
directory tree listing: https://gist.github.com/8bc0c5c27e3486c10789ce076eb635ae
du listing: https://gist.github.com/9a64423c66ee89ceddbb43bbb25768cb

Rebuild report (if merged into master) (click to expand)

8 total rebuild path(s)
2 package rebuild(s)
2 x86_64-linux rebuild(s)
2 i686-linux rebuild(s)
2 x86_64-darwin rebuild(s)
2 aarch64-linux rebuild(s)
First fifty rebuilds by attrpath
python27Packages.bjoern
python37Packages.bjoern

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/4a15b91wvlfdi9hrxxg7is9r069v078p-python3.7-bjoern-3.0.0 \
  --option binary-caches 'https://cache.nixos.org/ https://r-ryantm.cachix.org/' \
  --option trusted-public-keys '
  r-ryantm.cachix.org-1:gkUbLkouDAyvBdpBX0JOdIiD2/DP1ldF3Z3Y6Gqcc4c=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(r-ryantm's Cachix cache is only trusted for this store-path realization.)
Or, build yourself:
nix-build -A python37Packages.bjoern https://github.com/r-ryantm/nixpkgs/archive/d21034efbd4fcca357b22e9b808b3adf5513c0df.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/4a15b91wvlfdi9hrxxg7is9r069v078p-python3.7-bjoern-3.0.0
ls -la /nix/store/4a15b91wvlfdi9hrxxg7is9r069v078p-python3.7-bjoern-3.0.0/bin

cc @cmcdragonkai for testing.

I note that the test_wsgi_compliance.py test actually fails for python 2.7, it's just it swallows the exception in favour of just printing Test failed or Test successful, always returning a zero exit status.
I guess the thing to do for it is grep the output for .*fail.*.

As for the darwin failure, I'm finding it a bit of a heisenbug. It failed for me in the same way as for @GrahamcOfBorg  the first time I tried, but when trying to investigate, I can't get it to fail again. It's a bit painful because the stderr is swallowed, leaving us with no explanation for the original failure.

Closing in favor of https://github.com/NixOS/nixpkgs/pull/62840


Claim ticket problem

Problem is high because somebody when claim ticket from staff client who open ticket lost acces in ticket it cant see ticket.

Please give us more details like your config.jsonc

U fix it we talk via discord u can make resolve this problem


MAX_CHAN value

What does MAX_CHAN value define?
Which definition below is correct?
1-) Exact number of satellites that is being simulated.
For example, if I set MAX_CHAN to 5, the code will simulate 5 satellites all the time.
2-) Maximum number of satellites that is being simulated.
If I set, MAX_CHAN to 5, the code will simulate up to 5 number of satellites.
Sometimes number of simulated satellites will be 4, sometimes 5.. etc..

No. 2.

Why does the simulation act like that, why does not always simulate 5 channels?

The number of visible satellites could be less than MAX_CHAN.

I set MAX_CHAN=1
But the GPS receiver observed more than one satellite. Why does that happen?

yeah I noticed some strange because I was also getting BDS satellites while receiving the signal using ublox zed F9p and hackRF one. I was feeding the signal directly via sma to sma
maybe because of the C/A code errors IDK but I forgot to take a screenshot


SAMZA-1220 : Add thread name to SamzaContainer shutdown hook and prevent shutdown deadlock

SamzaContainerExceptionHandler is written in Java and used by LocalContainerRunner.java

@prateekm Can you please take a look at the changes? Please comment if this was not what you had in mind. Thanks!


Can't grab vertical scrollbar easily in messages pane

I confirm (by marking "x" in the [ ] below: [x]):

[x] This is not a troubleshooting question. Troubleshooting questions go here: https://docs.mattermost.com/install/troubleshooting.html.
[x] This doesn't reproduce on web browsers (such as in Chrome). If it does, issue reports go to the Mattermost Server repository.
[x] I have read contributing guidelines.

Summary
Can't easily grab vertical scrollbar in message pane when mattermost desktop is windowed because Windows resize area is most of the scrollbar width
Environment

Operating System: Windows 10 21H2
Mattermost Desktop App version: 5.0.4
Mattermost Server version: 6.5.0

Steps to reproduce
Open mattermost desktop in windowed mode (not an issue when maximized)
Go to a channel or DM with enough messages that there is a vertical scrollbar
Attempt to grab the vertical scrollbar with the mouse
Expected behavior
All, or at least most, of the scrollbar should be available to grab
Observed behavior
Only a couple pixels are available to grab.  The majority of the scrollbar changes to the window resize function
Problem does not occur on browser versions because resize starts at the window frame (last pixel of window) and extends a bit beyond the edge of the window
Possible fixes

override the ::-webkit-scrollbar width property to increase the scrollbar width
add a small amount of padding between the scrollbar and the edge of the window (~6px or so) to account for the problem
somehow adjust the electron wrapper to handle the window resize borders like other windows apps, where the right hand resize starts at the last pixel of the window and extends a few pixels past the edge of the window.  This might be something controlled by the window's frame size, even though the frame isn't visible.  If possible, set the application window frame size to 1 pixel

I think it is the kResizeInsideBoundsSize property in electron that controls the resize handle.  It is set to 5, which is consistent with the very small area to grab the scrollbar (default width 8px).  Found here:
https://github.com/electron/electron/blob/7caa88c46f70d9600bd4f78fb902374e72a2a4bf/shell/browser/ui/views/frameless_view.cc
I have never made an electron app so I don't know if that can be overridden

We have an issue open for this already here: https://github.com/mattermost/desktop/issues/1513
Closing.


Always treat Envoy routes as v3, even if Envoy doesn't

Resolves https://github.com/istio/istio/issues/27665
No test added.  I don't want to check in Envoy config, and I don't have an integration test that includes a 1.6.x ingressgateway as part of the mesh.

@esnible: The following test failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

release-notes_istio
17eca296533850316db166a934b6466eb39ae700
link
/test release-notes_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@esnible: The following tests failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

release-notes_istio
17eca296533850316db166a934b6466eb39ae700
link
/test release-notes_istio

unit-tests_istio
17eca296533850316db166a934b6466eb39ae700
link
/test unit-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@esnible: The following tests failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

release-notes_istio
17eca296533850316db166a934b6466eb39ae700
link
/test release-notes_istio

unit-tests_istio
17eca296533850316db166a934b6466eb39ae700
link
/test unit-tests_istio

integ-pilot-k8s-tests_istio
17eca296533850316db166a934b6466eb39ae700
link
/test integ-pilot-k8s-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/retest

Why is this necessary for routes and not clusters, listeners, or endpoints?

Why is this necessary for routes and not clusters, listeners, or endpoints?

You have a good point.  We don't dump endpoints but the code should be the same for routes, clusters, and endpoints.  We should have done exactly the same thing in all three.  We already had a better fix in clusters and in listeners this doesn't manifest because there is always >1.  However, as the code wasn't clear, I will revise the PR so that we use the same flow in routes, clusters, and listeners.


Is this project still maintained?

@rpkilby Since the last commit/activity on this repo is nearly 2 years old, is this project no longer supported?
I would volunteer to help with basic maintenance (make new releases, making sure the package is tested and works on latest Django and Python versions) if you would like help on the project.

As the maintainer has not responded in a year, I created a friendly fork that tests against the latest Python and Django versions

https://pypi.org/project/djangorestframework-guardian2/


SESV2: send_email() doesn`t return MessageId

The send_mail() function doesn`t return the MessageId of the message. I had a look into the code and it looks like because SESV1 function are recycled for SESV2 the internal parser of botocore cannot parse the response. SESV1 uses XML and SESV2 expects JSON.
Here is some example code:
import boto3
import pytest
from moto import mock_aws, settings
from moto.core import DEFAULT_ACCOUNT_ID
from moto.ses.models import Message, ses_backends

@pytest.fixture(scope="function")
def ses_v1():
    """Use this for API calls which exist in v1 but not in v2"""
    with mock_aws():
        yield boto3.client("ses", region_name="us-east-1")

@mock_aws
def test_send_email(ses_v1):  # pylint: disable=redefined-outer-name
    # Setup
    conn = boto3.client("sesv2", region_name="us-east-1")

    kwargs = dict(
<EMAIL_ADDRESS>        Destination={
            "ToAddresses"<EMAIL_ADDRESS>            "CcAddresses"<EMAIL_ADDRESS>            "BccAddresses"<EMAIL_ADDRESS>        },
        Content={
            "Simple": {
                "Subject": {"Data": "test subject"},
                "Body": {"Text": {"Data": "test body"}},
            },
        },
    )

    ses_v1.verify_domain_identity(Domain="example.com")
    send_email = conn.send_email(**kwargs)
    assert send_email['MessageId'] is not None
    send_quota = ses_v1.get_send_quota()

    # Verify
    sent_count = int(send_quota["SentLast24Hours"])
    assert sent_count == 3

    if not settings.TEST_SERVER_MODE:
        backend = ses_backends[DEFAULT_ACCOUNT_ID]["us-east-1"]
        msg: Message = backend.sent_messages[0]
        assert msg.subject == "test subject"
        assert msg.body == "test body"

Here is a direct link to the expected response: https://docs.aws.amazon.com/ses/latest/APIReference-V2/API_SendEmail.html#API_SendEmail_ResponseElements
Relevant Versions:
moto - 5.0.9
boto3 - 1.34.137
botocore - 1.34.137
Python - 3.9.19
ArchLinux - 2024-06-29

@bblommers I can look into this

Hi @fpracht, thanks for raising this!
This is now part of moto >= 5.0.12.dev5.


Store the TransactionHash and Index On FundingInfo

We also correctly calculate the transaction hash by reversing the first 32 bytes of the outpoint before encoding them in hex, since the outpoint stores them in little-endian.
This one is a little trickier to test, since not-reversing the bytes also passes our validators and we hard-code our funding info for unit tests. With that in mind, here's the whole flow:
First, pull down the branch for https://github.com/keep-network/local-setup/pull/71 (or merge that first), since we need the getBalance and sendRawTransaction commands it provides.
Generate 3 new bitcoin addresses via:
$ bitcoind-wallet getNewAddress

Edit keep-ecdsa/configs/config.local.1.toml, keep-ecdsa/configs/config.local.2.toml, and keep-ecdsa/configs/config.local.3.toml to have:
[Extensions.TBTC]
	TBTCSystem = "<address from [ethereum.ContractAddresses.TBTCSystem]"

  [Extensions.TBTC.BTCRefunds]
  	BeneficiaryAddress = "<address from bitcoind-wallet getNewAddress> "
  	MaxFeePerVByte = 75
	BitcoinChainName = "regtest"

[TSS]
	PreParamsTargetPoolSize = 2 # not strictly required, but makes the whole thing faster

Run keep-core and the 3 keep ecdsa nodes
Create a new deposit from local-setup/tbtc.js:
$ bin/tbtc.js --rpc ws://<IP_ADDRESS>:8546 deposit new 10000000

Watch for a message like:
Got deposit address: <funding address> ; fund with: 10000000 satoshis please.

Then, fund that address:
$ bitcoind-wallet sendToAddress <funding address> 0.1

Wait for it to confirm with a message like:
Deposit is active, minting...
[object Promise]<PHONE_NUMBER>0000000

Now, we have to undercollateralize the deposit from the local-setup/tbtc/solidity/scripts folder:
$ truffle exec multiply-local-eth-btc-price.js 0.7

Once that completes, you can check the active deposits from local-setup/tbtc.js:
$ bin/tbtc.js --rpc ws://<IP_ADDRESS>:8546 deposit list --vending-machine

(node:28834) ExperimentalWarning: Importing JSON modules is an experimental feature. This feature could change at any time
(Use `node --trace-warnings ...` to show where the warning was created)
<deposit address>	                        ACTIVE	10000000	104

And then liquidate it:
$ bin/tbtc.js --rpc ws://<IP_ADDRESS>:8546 deposit <deposit address> liquidate

Now, find one of your keep-ecdsa nodes, and monitor it for some logs that look like this (it may take a while):
2021-04-16T11:41:08.425-0400	WARN	keep-ecdsa	Please broadcast Bitcoin transaction <transaction-hex>
2021-04-16T11:41:08.434-0400	WARN	keep-ecdsa	Please broadcast Bitcoin transaction <transaction-hex>
2021-04-16T11:41:08.434-0400	WARN	keep-ecdsa	Please broadcast Bitcoin transaction <transaction-hex>

Broadcast the transaction:
$ bitcoind-wallet sendRawTransaction <transaction-hex>

And then verify that your fresh wallet address received ~1/30th of a BTC:
$ bitcoind-wallet getBalance <address-from-getNewAddress>
0.03329033

If these steps are repeated without the code in this PR, the sendRawTransaction command should return {"code":-25,"message":"bad-txns-inputs-missingorspent”} because the prev_hash of the transaction is reversed relative to the txid of the funding transaction.
tagging @nkuba for review

good for another look!


Mitigate supply cap exhaustion attacks

The additional deposit restriction opened up the system to a variety of subtle cap exhaustion attacks. This PR removes the deposit restriction, so racing to the cap to prevent additional deposit creation can no longer be used to game distribution.
Note that depositing "past the cap" has always been possible- if at system instantiation I opened 100 1-BTC deposits but never minted, there could be 200 BTC in the system in the first 30 days. This PR just removes the edge case where 100 TBTC have been minted, allowing deposits to be opened and closed independently.

I don't love that this kills tests without replacement, but the test it removes was in an odd spot. Suggestions on how best to increase coverage here are welcome.

@mhluongo, so the supply cap does not affect BTC -> TDT minting, just TDT -> TBTC?

so the supply cap does not affect BTC -> TDT minting, just TDT -> TBTC?

Correct, that's how the cap has always worked- you could create tons of deposits before the minting cap was hit, since deposits aren't required to be used to mint.

Closing in favor of #700


Ignore compiler warning ‘:send-report’ called as a function

$ echo "(when (require 'undercover nil t) (undercover \"xx.el\" (:send-report nil)))" > foo.el

$ emacs --batch -Q -f batch-byte-compile foo.el
In toplevel form:
foo.el:2:4:Warning: ‘:send-report’ called as a function

undercover being a macro, :send-report does not have to be a function.

I asked this question on stackoverflow too https://emacs.stackexchange.com/posts/33286

Hi! Unfortunately I'm on vacation right now. I will be able to look into this issue after next week. Thanks for the report!

Just to share some information. I made a test project to test this warning in proper conditions:
Cask file:
(source melpa)
(source gnu)

(package-file "test.el")

(development
 (depends-on "undercover"))

test.el:
;;; test.el --- Description

;; Version: 0.0.0

(when (require 'undercover nil t)
  (undercover "xx.el" (:send-report nil)))

(provide 'test.el)

;;; test.el ends here

I got slightly different issues:
In toplevel form:
test.el:8:4:Warning: ‘:send-report’ called as a function

In end of data:
test.el:13:1:Warning: the following functions are not known to be defined:
    undercover, :send-report

But when I replace test.el content:
;;; test.el --- Description

;; Version: 0.0.0

(require 'undercover nil t)
(undercover "xx.el" (:send-report nil))

(provide 'test.el)

;;; test.el ends here

I see no warnings...
It looks like it something related to conditional statements. I'm not aware about any way  to fix this issue. And I found this intresting comment on stack exchange.
So until you know a way of fixing it, I think we should ignore this issue...

Good enough. Thanks


Use Wh for CONSUMED_PRIMARY_ENERGY

Use Wh as CONSUMED_PRIMARY_ENERGY instead of kWh.
Here is an image to show the data that I get in home assistant

@psincraian I replicated your fix and removed to unused import. Thanks!


Rename RawInput to EditableText

This patch is part of a series to rationalize our text input classes.
See #7031

@mpcomplete @Hixie @HansMuller

(Will land https://fuchsia-review.googlesource.com/c/18842/ at the same time)

LGTM


Customize keybindings

I have started to maintain my own fork of the official git repo. The one problem I keep getting on is to customize keybindings. I guess I edit the config.h file, but I don't understand which keys are what. For example, how did you get Alt+j/k to scroll up and down?

The keybinds are defined in static Shortcut shortcuts[] while the MODKEY is defined as Alt (Mod1Mask) on the line #define MODKEY Mod1Mask.

But what are the purposes of the column argument?

Well, it depends on the function called. You can check each individual function yourself. For example, zoom can take an argument that will determine whether it zooms in or out. You have the source code and can look for yourself, although if you just want to rebind keys, you can probably just intuit it just looking at the shortcuts there.

Oh, Thank you. I should've guessed those are functions and the arguments are parameters for them. Slips on the first time.


SEO / Google text

This needs to change

Need to review where it is getting this data on the homepage


[BUG] v5 with remote docker daemon: Client sent an HTTP request to an HTTPS server

What did you do

How was the cluster created?

docker engine created with docker-machine create k3d
docker environment set with eval $(docker-machine env k3d)
k3d cluster create mycluster

What did you do afterwards?

Nothing. The cluster creation command failed.

What did you expect to happen
Cluster creation works with k3d v4.4.8, but fails when using k3d v5.0.0.
Screenshots or terminal output
➜ k3d cluster create mycluster
ERRO[0000] Failed to get nodes for cluster 'mycluster': docker failed to get containers with labels 'map[k3d.cluster:mycluster]': failed to list containers: Error response from daemon: Client sent an HTTP request to an HTTPS server.
INFO[0000] Prep: Network
ERRO[0000] Failed Cluster Preparation: Failed Network Preparation: failed to create cluster network: failed to check for duplicate docker networks: docker failed to list networks: Error response from daemon: Client sent an HTTP request to an HTTPS server.
ERRO[0000] Failed to create cluster >>> Rolling Back
INFO[0000] Deleting cluster 'mycluster'
ERRO[0000] Failed to get nodes for cluster 'mycluster': docker failed to get containers with labels 'map[k3d.cluster:mycluster]': failed to list containers: Error response from daemon: Client sent an HTTP request to an HTTPS server.
ERRO[0000] failed to get cluster: No nodes found for given cluster
FATA[0000] Cluster creation FAILED, also FAILED to rollback changes!

Which OS & Architecture

macOS 11.6

Which version of k3d
➜ k3d version
k3d version v5.0.0
k3s version latest (default)

Which version of docker
➜ docker version
Client: Docker Engine - Community
 Version:           20.10.9
 API version:       1.40
 Go version:        go1.17.1
 Git commit:        c2ea9bc90b
 Built:             Thu Sep 23 18:26:34 2021
 OS/Arch:           darwin/amd64
 Context:           default
 Experimental:      true

Server: Docker Engine - Community
 Engine:
  Version:          19.03.12
  API version:      1.40 (minimum version 1.12)
  Go version:       go1.13.10
  Git commit:       48a66213fe
  Built:            Mon Jun 22 15:49:35 2020
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          v1.2.13
  GitCommit:        7ad184331fa3e55e52b890ea95e65ba581ae3429
 runc:
  Version:          1.0.0-rc10
  GitCommit:        dc9208a3303feef5b3839f4323d9beb36df0a9dd
 docker-init:
  Version:          0.18.0
  GitCommit:        fec3683

➜ docker info
Client:
 Context:    default
 Debug Mode: false

Server:
 Containers: 0
  Running: 0
  Paused: 0
  Stopped: 0
 Images: 0
 Server Version: 19.03.12
 Storage Driver: overlay2
  Backing Filesystem: extfs
  Supports d_type: true
  Native Overlay Diff: true
 Logging Driver: json-file
 Cgroup Driver: cgroupfs
 Plugins:
  Volume: local
  Network: bridge host ipvlan macvlan null overlay
  Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
 Swarm: inactive
 Runtimes: runc
 Default Runtime: runc
 Init Binary: docker-init
 containerd version: 7ad184331fa3e55e52b890ea95e65ba581ae3429
 runc version: dc9208a3303feef5b3839f4323d9beb36df0a9dd
 init version: fec3683
 Security Options:
  seccomp
   Profile: default
 Kernel Version: 4.19.130-boot2docker
 Operating System: Boot2Docker 19.03.12 (TCL 10.1)
 OSType: linux
 Architecture: x86_64
 CPUs: 1
 Total Memory: 985.4MiB
 Name: k3d
 ID: IKKR:ADT3:UBSZ:VZ5P:VCQN:OJLT:APTD:U3KT:ZHQT:6CIB:UGJF:HYJC
 Docker Root Dir: /mnt/sda1/var/lib/docker
 Debug Mode: false
 Username: XXX
 Registry: https://index.docker.io/v1/
 Labels:
  provider=virtualbox
 Experimental: false
 Insecure Registries:
  <IP_ADDRESS>/8
 Live Restore Enabled: false
 Product License: Community Engine

Hi @amoratti , thanks for opening this issue and sorry for me only getting to work on it now!
Your docker engine version (19.03.12) is too old for k3d v5.x in general (though that's not directly related to your issue above, but you'll hit it afterwards anyway).
Please try updating to Docker >= v20.10.4 and k3d v5.1.0 (which also includes fixes to the docker server connection).

Hi @iwilltry42, thanks for the update.
The docker engine version is provided by docker-machine. It has been deprecated, and that is why the version is old. Because of that and because of this issue, I moved to a local docker engine.
Everything is working now, but glad the docker server connection is fixed.


test: achieve 100% test coverage for blas/ext/base/dnansumkbn

Resolves #3046 .
Description

What is the purpose of this pull request?

This pull request:

Adds a test case to achieve 100% test coverage for blas/ext/base/dnansumkbn

Related Issues

Does this pull request have any related issues?

This pull request:

resolves #3046

Questions

Any questions for reviewers of this pull request?

No.
Other

Any other information relevant to this pull request? This may include screenshots, references, and/or implementation notes.

No.
Checklist

Please ensure the following tasks are completed before submitting this pull request.

[x] Read, understood, and followed the contributing guidelines.

@stdlib-js/reviewers

The failing test is from dnansum which uses dnansumkbn to compute the sum. This will be fixed when dnansum is refactored.


Update Ingress SDS Test Certs

For https://github.com/istio/istio/pull/26386
[ ] Configuration Infrastructure
[ ] Docs
[ ] Installation
[ ] Networking
[ ] Performance and Scalability
[ ] Policies and Telemetry
[ ] Security
[ ] Test and Release
[ ] User Experience
[ ] Developer Infrastructure
Pull Request Attributes
Please check any characteristics that apply to this pull request.
[ ] Does not have any changes that may affect Istio users.

@nschhina: The following test failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

release-notes_istio
d3425d566092d55a5ed940efccc38bfb9f5bb486
link
/test release-notes_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/test release-notes_istio

@nschhina: The following test failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

release-notes_istio
d3425d566092d55a5ed940efccc38bfb9f5bb486
link
/test release-notes_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/test release-notes_istio


Implement PDF malicious detection and sanitization support

O-checker could provide a good starting point. Especially, pdfanalysis.py illustrates how to detect specific malware inside a PDF.
GitHub: https://github.com/yotsubo/o-checker
Presentation: https://www.blackhat.com/docs/us-16/materials/us-16-Otsubo-O-checker-Detection-of-Malicious-Documents-through-Deviation-from-File-Format-Specifications.pdf
Whitepaper: https://www.blackhat.com/docs/us-16/materials/us-16-Otsubo-O-checker-Detection-of-Malicious-Documents-through-Deviation-from-File-Format-Specifications-wp.pdf

Started implementation with commit 5b289132e6712ae1819fe7b30cfefc5087d926c1 in new branch pdf_detection

https://blog.didierstevens.com/programs/pdf-tools/

Submitted PR to extend functionality for DMF: https://github.com/mlodic/pdfid/pull/3

Add more to PDF M score:

/JS 0 #This indicates the presence of Javascript
/JavaScript 0 #This indicates the presence of Javascript
/AA 0 #This indicates the presence of automatic action on opening
/OpenAction 0 #This indicates the presence of automatic action on opening
/AcroForm 0 #This indicates the presence of AcroForm which could contain JavaScript
/JBIG2Decode 0 #This indicates the use of JBIG2 compression which could be used for obfuscating content
/RichMedia 0 #This indicates the presence of rich media within the PDF such as Flash
/Launch 0 #This counts the launch actions
/EmbeddedFile 0 #This indicates there are embedded files within the PDF
/XFA 0 #This indicates the presence of XML Forms within the PDF

ToDO:

[ ] Sanitize PDF file by removing Actions and JS

PDF detection and sanitization now implemented as of commit 2a7fe33.


from Seliopou - fix chained callbacks and bump versions.

:+1: sorry missed your message about merging stuff!