Failed to read correct length, returned 0

Describe the bug
getting
sudo ./rpiboot
RPIBOOT: build-date Jun 10 2024 version 20240422~085300 4a3d3117
Waiting for BCM2835/6/7/2711/2712...
Loading embedded: bootcode4.bin
Sending bootcode.bin
Failed to read correct length, returned 0
On a Completly New cm4 that is placed on a waveshare base board A
Steps to reproduce the behaviour
insert CM4 to base board
PLugg base board with usb
run command
sudo ./rpiboot  in folder
Device(s)
Raspberry Pi CM4
Compute Module IO board.
cm4 waveshare base board A -- same error with B
RPIBOOT logs
sudo ./rpiboot
RPIBOOT: build-date Jun 10 2024 version 20240422~085300 4a3d3117
Waiting for BCM2835/6/7/2711/2712...
Loading embedded: bootcode4.bin
Sending bootcode.bin
Failed to read correct length, returned 0
Kernel logs
[868542.956994] usb 1-6.7.4: USB disconnect, device number 78
[868584.724235] usb 1-<IP_ADDRESS>: USB disconnect, device number 76
[868787.348419] usb 1-<IP_ADDRESS>: new full-speed USB device number 79 using xhci_hcd
[868787.553603] usb 1-<IP_ADDRESS>: config index 0 descriptor too short (expected 55, got 32)
[868787.553611] usb 1-<IP_ADDRESS>: config 1 interface 0 altsetting 0 endpoint 0x1 has invalid maxpacket 512, setting to 64
[868787.553615] usb 1-<IP_ADDRESS>: config 1 interface 0 altsetting 0 endpoint 0x2 has invalid maxpacket 512, setting to 64
[868787.569579] usb 1-<IP_ADDRESS>: New USB device found, idVendor=0a5c, idProduct=2711, bcdDevice= 0.00
[868787.569586] usb 1-<IP_ADDRESS>: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[868787.569589] usb 1-<IP_ADDRESS>: Product: BCM2711 Boot
[868787.569591] usb 1-<IP_ADDRESS>: Manufacturer: Broadcom
[868787.569593] usb 1-<IP_ADDRESS>: SerialNumber: a35fe646
[868840.978260] usb 1-<IP_ADDRESS>: USB disconnect, device number 79
[868858.660424] usb 1-<IP_ADDRESS>: new full-speed USB device number 80 using xhci_hcd
[868858.869488] usb 1-<IP_ADDRESS>: config index 0 descriptor too short (expected 55, got 32)
[868858.869497] usb 1-<IP_ADDRESS>: config 1 interface 0 altsetting 0 endpoint 0x1 has invalid maxpacket 512, setting to 64
[868858.869501] usb 1-<IP_ADDRESS>: config 1 interface 0 altsetting 0 endpoint 0x2 has invalid maxpacket 512, setting to 64
[868858.885835] usb 1-<IP_ADDRESS>: New USB device found, idVendor=0a5c, idProduct=2711, bcdDevice= 0.00
[868858.885840] usb 1-<IP_ADDRESS>: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[868858.885844] usb 1-<IP_ADDRESS>: Product: BCM2711 Boot
[868858.885847] usb 1-<IP_ADDRESS>: Manufacturer: Broadcom
[868858.885849] usb 1-<IP_ADDRESS>: SerialNumber: a35fe646
[868876.054638] usb 1-<IP_ADDRESS>: USB disconnect, device number 80
[869097.512438] usb 1-<IP_ADDRESS>: new full-speed USB device number 81 using xhci_hcd
[869097.714352] usb 1-<IP_ADDRESS>: not running at top speed; connect to a high speed hub
[869097.758380] usb 1-<IP_ADDRESS>: New USB device found, idVendor=0fce, idProduct=e134, bcdDevice=94.54
[869097.758387] usb 1-<IP_ADDRESS>: New USB device strings: Mfr=3, Product=4, SerialNumber=5
[869097.758391] usb 1-<IP_ADDRESS>: Product: CCR-80
[869097.758394] usb 1-<IP_ADDRESS>: Manufacturer: SEMC
[869097.758396] usb 1-<IP_ADDRESS>: SerialNumber: 094107E80206A74
[869097.771478] usb-storage 1-<IP_ADDRESS>:1.0: USB Mass Storage device detected
[869097.771715] scsi host9: usb-storage 1-<IP_ADDRESS>:1.0
[869182.128447] usb 1-<IP_ADDRESS>: new full-speed USB device number 82 using xhci_hcd
[869182.333003] usb 1-<IP_ADDRESS>: config index 0 descriptor too short (expected 55, got 32)
[869182.333011] usb 1-<IP_ADDRESS>: config 1 interface 0 altsetting 0 endpoint 0x1 has invalid maxpacket 512, setting to 64
[869182.333014] usb 1-<IP_ADDRESS>: config 1 interface 0 altsetting 0 endpoint 0x2 has invalid maxpacket 512, setting to 64
[869182.348979] usb 1-<IP_ADDRESS>: New USB device found, idVendor=0a5c, idProduct=2711, bcdDevice= 0.00
[869182.348986] usb 1-<IP_ADDRESS>: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[869182.348989] usb 1-<IP_ADDRESS>: Product: BCM2711 Boot
[869182.348991] usb 1-<IP_ADDRESS>: Manufacturer: Broadcom
[869182.348993] usb 1-<IP_ADDRESS>: SerialNumber: a35fe646
Device UART logs
no uart cable avliable

This appears to be an issue specific to your hardware setup rather than the software in this repo.
Please try the troubleshooting guide
https://github.com/raspberrypi/usbboot?tab=readme-ov-file#troubleshooting
or the Raspberry Pi forums for support questions
https://forums.raspberrypi.com/viewforum.php?f=98&sid=38132b53425df4ec7180bdadb0a85eda


Multiple Sublime windows open causes ToDoReview to scan both projects.

I noticed if I had two separate Sublime Text windows open, each with their own project, ToDoReview will scan both projects. Is there a way to make it so that it only scans the window I ran the ToDoReview command from? (This may be out of a package's ability though). If this is not something worth being considered an issue, feel free to close.

I just tried this, but I was unable to replicate. The only thing that I noticed was shared between windows was the X Files Scanned in the status bar. Do you have some kind of plugin that would cause this behavior?
I'm on Windows 7 x64, ST3 Build 3065, how about you?

Ah apologies. The ToDoReview ended up printing the output on both my windows. I think I ended up running ToDoReview on a different project. Not sure if that in itself is an issue but it seems to be working fine after retesting it.
I'm running Mac OS X Yosemite. Sorry about the false alarm! Closing.


segwit flags are broken in v19's getblocktemplate

For getblocktemplate:

mutable should have coinbase/append like it did in v17
MAX_VERSION_BITS_DEPLOYMENTS is now empty; actually rules has nothing in it; so segwit is not enabled to sgminer.

segwit and csv still need to be added into the outgoing rules.

fixed in v19_master


Unmaintained and vulnerable dependency

<EMAIL_ADDRESS>has a dependency on optimist which is no longer maintained and has a child dependency of<EMAIL_ADDRESS>Minimist is has a known vulnerability prior to version 1.2.2 that allows adding and modifying properties of Object.prototype.
https://nvd.nist.gov/vuln/detail/CVE-2020-7598
It appears that some work has been started on this in #2473.

Please fix it as soon as possible or give any alternative so that it doesn't produce security errors.

any update on this??

If this is important for you, please send a pull request.  Since karma is a test engine and not part of a online product the risk of prototype injection is very low.   That said it would be great to see these fixed.

It is quite important as security scans started showing vulnerabilities in projects that use karma. The security team will allow exception here as this is a package required for tests only but It makes the release process very painful.

If this is important for you, please send a pull request.

Would be fixed by #3451

Hey folks! Is there any other workaround to handle this vulnerability whilst the PR is merged?

Very happy to see the fix looks merged now. Is there a rough idea of when it would make it into a release?

I'm really glad to see that this is already completed, I'll keep an eye out for the next release. Good work everyone!


Don't reset on pause or resume

@keybase/react-hackers
This should be all that's required to let the engine survive the screen off and on.

👍

i'm going to merge this


JIRA: USDU-168 Writing to an invalid prim crashes Unity

Purpose of this PR
USDU-168 Writing to an invalid prim crashes Unity
Bug was related to the PrimMap being out of date.
Testing
Unit test added

Hey @clusty do you still plan to merge this?

I can merge it.


Database column family names should use a consistent scheme

    const COLUMN_FAMILIES: [&'static str; 14] = [
        "blocks",
        "blocks-global-slot-idx",
        "lengths",
        "slots",
        "canonicity",
        "commands",
        "mainnet-commands-slot",
        "mainnet-cmds-txn-global-slot",
        "mainnet-internal-commands",
        "events",
        "ledgers",
        "snarks",
        "snark-work-top-producers",
        "snark-work-top-producers-sort",
    ];

Improve the naming consistency for projections, domain storage and indices.

Does anyone have a suggestion for a naming scheme?

I suspect that whomever implements this will come up with some good scheme.

This is done


API Implementation

Codecov Report

Merging #499 (2af4e20) into main (150253f) will not change coverage.
The diff coverage is n/a.

:exclamation: Current head 2af4e20 differs from pull request most recent head 617ac75. Consider uploading reports for the commit 617ac75 to get more accurate results

@@           Coverage Diff           @@
##             main     #499   +/-   ##
=======================================
  Coverage   41.07%   41.07%
=======================================
  Files         158      158
  Lines        1748     1748
  Branches      299      305    +6
=======================================
  Hits          718      718
+ Misses       1024     1018    -6
- Partials        6       12    +6

Flag
Coverage Δ

client
36.88% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

<EMAIL_ADDRESS>0.00% <0.00%> (ø)

<EMAIL_ADDRESS>


Basic REST API

Big ask, I know, but I'd be happy to do as much of the work as I could.
I'd love to have a basic API, with post/get/patch for creating and scheduling custom races, updating entry lists, and for grabbing results.
At the moment, I'm using ASM for our league's "ad hoc" races.  Off season stuff, workshops, etc.  For our main series, I have to use our existing (and aging) provisioning, as we have some specific needs that ASM can't currently meet.  We do pre-qualifying, collecting stracker results for a week, which we then use external scripting to bust up into multiple splits on race day - anything from 2 to 5 servers worth, depending on the series.  We also do non-standard race formats, like grid reversal but with different length races (feature and sprint), which requires rebuilding entry lists from results and restarting the server with a modified config.
I would love to use ASM as the backend for all our AC management ... but that would require a basic API, which I could use to push race configs and grab results.  I haven't looked at the code in much depth, but I suspect that the existing JSON database format and associated handling would lend itself to a JSON based API.

This sounds like a big job. A lot of server manager is kinda pluggable anyway, you just have to delve a bit deeper into the interactions that take place over the web. Everything a user does triggers a GET or POST request at some point, e.g. 'creating a custom race' is just a form post with some data. We don't do anything such as CSRF protection so there's nothing stopping another app making those requests itself.
As for reading data, you could set server manager to use the JSON store and read direct from there.
Building an entire API would require a lot of duplication, and be more difficult to maintain - especially because the only decent way to maintain an API is to be a consumer of it yourself (otherwise things get left behind). We're talking about a big architectural change here. My views are that if you have things you want to automate, have a look at how the requests are working and use it yourself.
Your reasons for wanting a REST API are interesting though, because we do have an open ticket that will likely fix a bunch of these problems (#308) :)

I am building a discord bot for mods to start a server from discord.
Can someone perhaps provide a simple example how a request via curl would look like to start a predefined custom race stored in json?

Looking at this I don't see why you shouldn't use cookie handling, I just had a go and this works fine for me:
Login:
curl -X POST -c /tmp/cookies --data 'Username=admin' --data 'Password=servermanager' --header 'Content-Type: application/x-www-form-urlencoded' http://localhost:8772/login

Start Event:
curl -b /tmp/cookies http://localhost:8772/custom/load/b4a1eb15-8d34-4526-8dfe-560d1e6c5d5d

Also, we could expand the existing Discord bot that @cheesegrits developed to allow it to start/stop races etc. without needing external commands at all. There would be a few issues though, you need the event ID from server manager anyway, and you'd have to somehow lock the bot to admins.
We probably won't focus on this though - using bots to control server manager when you can just use the server manager UI isn't something we expect many people to want.

That worked, I switched back to cookies now, thanks !!

lock the bot to admins
I think that's possible by discord roles

probably won't focus on this though
no problem, I want to do more things with my discord bot and actually I prefer it lives outside the app.

isn't something we expect many people to want
When you're playing in VR, you have to look between the little spot over the nose and navigate through the webinterface, or remove the HMD completely. That's utterly annoying.
Typing simplest commands to start/stop/next a race is just even simpler when you do not need to watch at keyboard while typing. Must-have for me.


Ensure cursor positioning on a blank markup section or list item works

Cursor#_findNodeForPosition should return the cursor element ("br",
usually) for a blank section. This change also ensures that the built-in
text-expansions for list items and headers position the cursor properly.
See also #375 which addressed this for list-items only.

released in v0.9.5


Ensure callset and family are linked in the metadata.json file.

In order to support loading multiple callsets in a single pipeline run, we need to change the metadata.json format to tie a callset to the families that it loads:
{
   "callsets" : [],
   "families": [],
}

->
{
   "callsets" : {
       "abc.vcf": {
           ..."families"
       }
}

this has been resolved with https://github.com/broadinstitute/seqr-pipeline-airflow/pull/172 (even though the logic is slightly different).


why do not build executable binary file in current path?

Hi， I have a question, why when I run go run cli.go, os.Getwd() return a path like this /private/var/folders/bt/wq6vgz511576mz4l7_4m075c0000gn/T/go-build141992156/command-line-arguments/_obj/exe
my program should read some config files under relative path, if cli do not build a binary under current path, it could not read the files. How could I avoid this?
I need some help, Thx

if I do not use the cli, just run go run main.go, every thing work fine. How could I solve this?

Hi @xuxiangyang,
go run automatically builds and executes the binary for you in a temporary location. More typically you would do go build . and then ./<your-program>. Try this and see if it works.
I actually wasn't able to reproduce this on Go 1.5.3 on Linux, but from your temporary file path it seems that you are on OSX.
package main

import (
	"fmt"
	"os"

	"github.com/codegangsta/cli"
)

func main() {
	app := cli.NewApp()
	app.Action = func(c *cli.Context) {
		fmt.Println(os.Getwd())
	}

	app.Run(os.Args)
}
➜  ~ go run tmp.go
/home/jesse <nil>
➜  ~ go version
go version go1.5.3 linux/amd64

Let me know if this helps!

thx, other package has change the dir.....sorry


fetch options per amiel - https://github.com/Driversnote-Dev/guard-er…

…b_lint/issues/1

Thank you for contributing, changes look good to me 👍

Thank you for fixing this!

Hi ! Did you plan to release this ?
Thanks in advance.

Hi ! Did you plan to release this ? Thanks in advance.

This small project is only distributed through Git, so any new merge into master is basically a release.
If you run bundle update guard-erb_lint in your project directory it should update to the latest Git revision.


Not working when running parcel build index.html

I started using this transformer to handle a JPG file I'm referencing within my Elm file. When running Parcel locally, it is working perfectly.
I'm trying to build and deploy my test site on Netlify, but the JPG file is no longer available. I also tested running parcel build index.html locally after clearing out my dist folder and can see that the JPG file is not included.

#3 patched this issue.


Tons of fixes, this took me multiple hours

Hey Mr. Mortensen! Tested everything on my local host in a quick time manner. There may be bugs if something was related to folders but hopefully it wasn't.
Summary of problems and how I fixed them:

3.3 and 3.5 lessons not loading

This issue was likely caused by the page not building, after a lot of testing realized it was the file name. It had to be the last thing I checked though

Fixed menu, added in missing sections and made them dropdowns, for sections we don't have just left it empty and redirects to current page. Considering developing a lesson for those pages to have something there
Added submenu to lesson 3.1
Changed the submenu to be based in _data
Moved files out of folders
Removed files I felt were redundant, such as a file that was named ',' and only contained ','

Need to do:

Reformat naming of files to be more consistent
Need to add more comments to explain submenu
Need to set up a theme for the pages

Please let me know of any issues

Sorry, I can't take .vscode directory files.  It will mess me up as well as others.


feat(publish): multi-arch catalog rebuilds

Description
Please include a summary of the change and which issue is fixed. Please also include relevant motivation and context. List any dependencies that are required for this change.
Fixes # (issue)
Type of change
Please delete options that are not relevant.

[ ] Bug fix (non-breaking change which fixes an issue)
[X] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] This change requires a documentation update

How Has This Been Tested?
Please describe the tests that you ran to verify your changes. Provide instructions so we can reproduce. Please also list any relevant details for your test configuration

[X] Updated unit test for catalog_images to ensure it run without error
[X] Ran e2e test locally and reviewed the index.json to ensure all platforms were there
[X] Used skopeo to pull down the images using --all to ensure all 4 images were pulled.

Checklist:

[X] My code follows the style guidelines of this project
[X] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[X] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[X] New and existing unit tests pass locally with my changes
[ ] Any dependent changes have been merged and published in downstream modules

Closes #151


Fix tutorial usage of open_port

Closes https://github.com/grafana/beyla/issues/518

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Comparison is base (3753eeb) 79.20% compared to head (84892aa) 45.25%.

Additional details and impacted files
@@             Coverage Diff             @@
##             main     #523       +/-   ##
===========================================
- Coverage   79.20%   45.25%   -33.96%
===========================================
  Files          69       67        -2
  Lines        5772     5597      -175
===========================================
- Hits         4572     2533     -2039
- Misses        977     2913     +1936
+ Partials      223      151       -72

Flag
Coverage Δ

integration-test
?

unittests
45.25% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Consider using conventional-changelog or conventional-github-releaser to generate changelog or github releases?

we have conventional-changelog or conventional-github-releaser (there are also grunt/gulp tasks) to automate the process of writing the changelog. As you are using formatted commit messages so the logs can be generated well according to the parts of the message. We use handlebars for templating the logs. It can also ignore reverted commits. There are many other features. We can add a preset just for codeMirror to simplify the command.
The modules are actively maintained.

Sample logs generated by the tool from your git history
abcdef

theme Add
theme Integrate

closetag

addon Don't include trailing > if it is already present

css

mode Add inline option
mode Add values for property flex-direction
mode Missing some common media query features and values

Dockerfile

mode Added lineComment

go

mode Better handle raw strings

lint

addon Add option to disable automatic linting
addon Fix broken implementation of lintOnChange
addon Revise patch 536bba1

mode/meta

addon Include VHDL mode

php

mode Allow double-quoted heredoc ids and space before the id
mode Allow interpolation in double-quoted heredoc strings

real-world

uses Add boson editor
uses Rename uiCod->Refork

rust

mode A few small tweaks
mode Rewrite on top of simple-mode

stylus

mode Add flexbox value
mode Fix highlight class after a $var

tern

addon Add option for hint delay
addon Fix patch bc026f1
addon Use correct primary when selecting variables

ttcn

theme Fix leaky declarations

yeti

theme Remove duplicate color hex sign

Or with links:
abcdef
theme Add (7bba3a8)
theme Integrate (16b9bf7)
closetag
addon Don't include trailing > if it is already present (bc0a644), closes #3409
css
mode Add inline option (52ad899)
mode Add values for property flex-direction (9f1b3a6)
mode Missing some common media query features and values (3ef42f7), closes #3417
Dockerfile
mode Added lineComment (ea3277b)
go
mode Better handle raw strings (be20899), closes #3428
lint
addon Add option to disable automatic linting (536bba1)
addon Fix broken implementation of lintOnChange (38c3e9c)
addon Revise patch 536bba1 (3686816)
mode/meta
addon Include VHDL mode (091a0f6)
php
mode Allow double-quoted heredoc ids and space before the id (e36dff2), closes #3421
mode Allow interpolation in double-quoted heredoc strings (a2e51a6)
real-world
uses Add boson editor (bd62685)
uses Rename uiCod->Refork (8d989c5)
rust
mode A few small tweaks (d56b13a)
mode Rewrite on top of simple-mode (d7dc8c3)
stylus
mode Add flexbox value (4ab7e90)
mode Fix highlight class after a $var (7523531)
tern
addon Add option for hint delay (b6f9fd3)
addon Fix patch bc026f1 (9e375f1)
addon Use correct primary when selecting variables (bc026f1)
ttcn
theme Fix leaky declarations (ad47608)
yeti
theme Remove duplicate color hex sign (d002b03)

That's nice, and I may at one point switch to an automated release-notes generation convention, but opening an issue about it is unasked-for.

Oh so how can I contact you? Should I send a PR instead?

You did successfully contact me. I am not interested in adopting conventional-changelog at this time.


Develop

Update browse command

Coverage decreased (-4.4%) to 57.857% when pulling a2a5a3c5d8ba55e895b8ef252b7f34dd63011d05 on develop into<PHONE_NUMBER>55c4f021aae66d65788088169d6ecf on master.


Use xOpera TOSCA parser for validating TOSCA

Right now we're using full xOpera orchestrator for TOSCA validation and since xOpera TOSCA parser now has its first package released as opera-tosca-parser Python package, we could use it in IaC Scan Runner.

Done in d06f456b8421645b7aa01b483a5375a13200da88.


Double Evaluation Fix

Replaces #2472 and #2458
Still WIP. I need to get the NuGet task pulled down for bootstrap build.

@davkean FYI
I've got some initial benchmark results for this, and it's a bit mixed. Evaluation time and memory shouldn't really be impacted. The diff here I would contribute mostly to noise. The memory seems to be about 15k more. Makes sense that with a tiny standard deviation on the small projects (GC called right before so likely no GC during test) we would see a delta. It's more to parse, few more objects materialized, etc. Surprised it would be that much, but while statistically significant I don't think it's real world significant.
Build time (design time build listed) is more interesting. For smaller projects, it's clearly not faster. And I'm not really surprised. It's an extra task from a non-msbuild dll (not ngen'd here). Many builds will end up with that dll loaded anyway (from Restore, etc.) so it's not always an extra dll, but still it's not free. And this affects all builds regardless of SDK status. I'm also a little worried this will set off RPS having the extra dll.
The good news on build time is a lot of projects should see an improvement. 30%-50% in the P2P and Picasso test cases which is great. I don't have any spinning drives to test on but I assume this could be even better there when globbing is involved.
The mixed news is testing Roslyn.sln. Doing an incremental build on the solution msbuild /v:m Roslyn.sln went from 335 evaluations down to 165 (good), but with /m the time was reliably 27s -> 26s. Which is not that spectacular. Without /m the times was a little more pronounced at 1:36 -> 1:23. Which after calculating is 13% so that is pretty good, just not as much as I was hoping for. Perhaps it will be more for design-time builds, but I couldn't get that working.
Evaluation: Time (ms)

Test
Overall
Significant δ
Value

DotnetConsoleProject
:red_circle:
yes
30.395 -> 30.5164 (0.399%)

DotnetWebProject
:red_circle:
yes
49.611 -> 49.6851 (0.149%)

DotnetMvcProject
:red_circle:
yes
86.4774 -> 86.5475 (0.081%)

Picasso
:white_check_mark:
yes
266.2479 -> 256.1184 (-3.805%)

SmallP2POldCsproj
:white_check_mark:
yes
42.6504 -> 41.8708 (-1.828%)

SmallP2PNewCsproj
:red_circle:
yes
82.5688 -> 82.6155 (0.057%)

Generated_100_100_v150
:red_circle:
yes
1254.7972 -> 1290.9703 (2.883%)

LargeP2POldCsproj
:white_check_mark:
yes
753.0709 -> 751.137 (-0.257%)

roslyn
:white_check_mark:
yes
5370.7354 -> 5334.5412 (-0.674%)

Evaluation: Memory (bytes)

Test
Overall
Significant δ
Value

DotnetConsoleProject
:red_circle:
yes
4944663 -> 4959678 (0.304%)

DotnetWebProject
:red_circle:
yes
6840943 -> 6861401 (0.299%)

DotnetMvcProject
:red_circle:
yes
9028362 -> 9043496 (0.168%)

Picasso
:red_circle:
yes
35430020 -> 35436938 (0.02%)

SmallP2POldCsproj
:white_check_mark:
yes
6034210 -> 5993157 (-0.68%)

SmallP2PNewCsproj
:red_circle:
yes
10577958 -> 10602931 (0.236%)

Generated_100_100_v150
:red_circle:
yes
147579824 -> 147587200 (0.005%)

LargeP2POldCsproj
:red_circle:
yes
86536590 -> 86568520 (0.037%)

roslyn
:red_circle:
yes
585084467 -> 585118839 (0.006%)

Build: Time (ms)

Test
Overall
Significant δ
Value

DotnetConsoleProject
:red_circle:
yes
7.5323 -> 7.6717 (1.851%)

DotnetWebProject
:red_circle:
yes
9.2563 -> 9.39 (1.444%)

DotnetMvcProject
:red_circle:
yes
10.0831 -> 10.2063 (1.222%)

Picasso
:white_check_mark:
yes
2382.0946 -> 1020.6393 (-57.154%)

SmallP2POldCsproj
:white_check_mark:
yes
84.8296 -> 48.2654 (-43.103%)

SmallP2PNewCsproj
:white_check_mark:
yes
87.373 -> 53.141 (-39.179%)

Build: Memory (bytes)

Test
Overall
Significant δ
Value

DotnetConsoleProject
:red_circle:
yes
1151919 -> 1174937 (1.998%)

DotnetWebProject
:white_check_mark:
yes
1302788 -> 1302090 (-0.054%)

DotnetMvcProject
:red_circle:
yes
1476974 -> 1482962 (0.405%)

Picasso
:white_check_mark:
yes
277497653 -> 125792697 (-54.669%)

SmallP2POldCsproj
:white_check_mark:
yes
9756337 -> 6211117 (-36.338%)

SmallP2PNewCsproj
:white_check_mark:
yes
10009262 -> 6611995 (-33.941%)

FYI this will be CI red until https://github.com/NuGet/NuGet.Client/pull/1737 goes in and publishes and I can update the package version. In #2594 I updated our bootstrap to pull that task from a package so it should be just a version bump.
If anyone wants to set this up locally, run cibuild --boostrap-only and edit NuGet.targets to match the one in the NuGet PR. Then add a Directory.Build.props with this (replacing the path to where you built NuGet):
<Project>
<PropertyGroup>
 <RestoreTaskAssemblyFile>D:\src\NuGet.Client\artifacts\NuGet.Build.Tasks\15.0\bin\Debug\net45\NuGet.Build.Tasks.dll</RestoreTaskAssemblyFile>
</PropertyGroup>
</Project>

Updated numbers:
Evaluation: Time (ms)

Test
Overall
Significant δ
Value

DotnetConsoleProject
:white_check_mark:
yes
29.0593 -> 28.9913 (-0.234%)

DotnetWebProject
:white_check_mark:
yes
44.2305 -> 44.1433 (-0.197%)

DotnetMvcProject
:red_circle:
yes
50.4046 -> 50.653 (0.493%)

Picasso
:white_check_mark:
yes
256.6368 -> 255.6237 (-0.395%)

SmallP2POldCsproj
:red_circle:
yes
42.4037 -> 42.7942 (0.921%)

SmallP2PNewCsproj
:red_circle:
yes
77.9943 -> 78.3615 (0.471%)

Generated_100_100_v150
:white_check_mark:
yes
1260.2155 -> 1257.19 (-0.24%)

LargeP2POldCsproj
:red_circle:
yes
742.7307 -> 744.3613 (0.22%)

roslyn
:white_check_mark:
yes
3306.3346 -> 3275.4293 (-0.935%)

Evaluation: Memory (bytes)

Test
Overall
Significant δ
Value

DotnetConsoleProject
:white_check_mark:
yes
4895467 -> 4893821 (-0.034%)

DotnetWebProject
:red_circle:
yes
6561947 -> 6565272 (0.051%)

DotnetMvcProject
:red_circle:
yes
7408101 -> 7414780 (0.09%)

Picasso
:white_check_mark:
yes
35314766 -> 35290989 (-0.067%)

SmallP2POldCsproj
:white_check_mark:
yes
6017226 -> 5984496 (-0.544%)

SmallP2PNewCsproj
:red_circle:
yes
10358236 -> 10366868 (0.083%)

Generated_100_100_v150
:red_circle:
yes
147536691 -> 147553504 (0.011%)

LargeP2POldCsproj
:red_circle:
yes
86257330 -> 86264699 (0.009%)

roslyn
:ok_hand:
no
407241006 -> 408094764 (0.21%)

Build: Time (ms)

Test
Overall
Significant δ
Value

DotnetConsoleProject
:white_check_mark:
yes
7.597 -> 7.563 (-0.448%)

DotnetWebProject
:white_check_mark:
yes
9.2922 -> 9.2719 (-0.218%)

DotnetMvcProject
:red_circle:
yes
9.9721 -> 10.0969 (1.251%)

Picasso
:white_check_mark:
yes
2309.7216 -> 1015.8582 (-56.018%)

SmallP2POldCsproj
:white_check_mark:
yes
84.6579 -> 48.6706 (-42.509%)

SmallP2PNewCsproj
:white_check_mark:
yes
82.0603 -> 50.1221 (-38.92%)

Build: Memory (bytes)

Test
Overall
Significant δ
Value

DotnetConsoleProject
::ok_hand:
no
1155168 -> 1154402 (-0.066%)

DotnetWebProject
:red_circle:
yes
1279572 -> 1281203 (0.127%)

DotnetMvcProject
:red_circle:
yes
1452351 -> 1457735 (0.371%)

Picasso
:white_check_mark:
yes
275855704 -> 125280131 (-54.585%)

SmallP2POldCsproj
:white_check_mark:
yes
9746673 -> 6192245 (-36.468%)

SmallP2PNewCsproj
:white_check_mark:
yes
9733262 -> 6400177 (-34.244%)

.NET Core doesn't care if the dlls are delay-signed, but we're not going to get a green build for full framework until it's signed.


Error schemas are lost for all responses when an endpoint can return a 204

If a Grape Endpoint returns a 204 response when successful, the schemas are lost for any of the error responses as well.  For the following mock endpoint,
desc 'delete something',
     is_array: true,
     success: { status: 204 },
     failure: [
       [401, 'Unauthorized', Entities::ApiError],
       [403, 'Forbidden', Entities::ApiError],
       [404, 'Not Found', Entities::ApiError]
     ]

delete do
  status 204
end

the generated docs from 0.29 are as follows:
{"delete"=>
  {"description"=>"delete something",
   "produces"=>["application/json"],
   "responses"=>
    {"204"=>{"description"=>"delete something"},
     "401"=>{"description"=>"Unauthorized"},
     "403"=>{"description"=>"Forbidden"},
     "404"=>{"description"=>"Not Found"}},
   "tags"=>["schema_lost"],
   "operationId"=>"deleteSchemaLost"}}

But because a schema was provided for the 400-level errors, this information should be reflected in the generated doc:
{"delete"=>
  {"description"=>"delete something",
   "produces"=>["application/json"],
   "responses"=>
    {"204"=>{"description"=>"delete something"},
     "401"=>
      {"description"=>"Unauthorized",
       "schema"=>{"$ref"=>"#/definitions/ApiError"}},
     "403"=>
      {"description"=>"Forbidden",
       "schema"=>{"$ref"=>"#/definitions/ApiError"}},
     "404"=>
      {"description"=>"Not Found",
       "schema"=>{"$ref"=>"#/definitions/ApiError"}}},
   "tags"=>["schema_lost"],
   "operationId"=>"deleteSchemaLost"}}

The issue is that any responses belonging to an endpoint that could respond with 204 are discarded.  I'll open a pull request momentarily with the fix.

Pull request

Merged with a73657b24d84231c9e418f54f575744c4460e3a5.  Thanks!


JSON stream long startup delay

Likely due to the caching by wandio, the delay between start the bgpreader for stream and the stream shows up could be very long (longer than 30s).
it's preferable to fix it by extend wandio by providing config options to allow wandio to disable threads and reduce buffers.

We fixed this by creating a new "http" transport which directly uses the wandio http reader and thus avoids the thread buffers.


Consider removing column name and = sign in legend

Hi again @nicolaskruchten,
Something that puzzled me about the color arg in the plot is that it includes the name of the column followed by an equal sign. Would you consider removing it and just let the value of the column in place? Here are a few reasons to support that point :

It is not displayed in plotly by default
It's redundant information when we see date= orcountry= it easy to infer by the value of the field
It takes some extra place, that is valuable, especially in the vertical orientation.

Also, for personal taste, I think equal sign does not play well outside equations and prefer : instead.
Happy to discuss with you about it. Maybe there is an option that can disable it, that I am not aware of.

Thanks for the input!
This is the best compromise I could find at the moment for dealing with cases where in fact it's not easy to infer from the value (i.e. the values are "Yes" and "No" and the column is called "Smoker" etc) and because when you are using colours and symbols, you need to be able to differentiate which is which ("smoker=Yes, child=Yes" vs "Yes, Yes").
The best way to deal wit this would be to have separate legends for color, symbol, size and line-dash, with titles, but plotly.js doesn't (yet) support this kind of thing.
In terms of how to actually get the effect you want, unfortunately you'll have to iterate through the traces and change the names. We're looking at various ways to make that easier: https://github.com/plotly/plotly.py/issues/1484

Hi @nicolaskruchten eventually I found the time to reply!

This is the best compromise I could find at the moment for dealing with cases where in fact it's not easy to infer from the value (i.e. the values are "Yes" and "No" and the column is called "Smoker" etc) and because when you are using colours and symbols, you need to be able to differentiate which is which ("smoker=Yes, child=Yes" vs "Yes, Yes").

From my experience, such ambiguity would be limited as the graph would come with a title s.a evolution by smoking behaviour. But I hadn't realized you could have composed categories, in this case, I understand that might be tricky.

The best way to deal wit this would be to have separate legends for color, symbol, size and line-dash, with titles, but plotly.js doesn't (yet) support this kind of thing.
Do you mean having a title for each legend section like in theseaborn API for categorical data? I think that was the reference I had in mind when opening the issue, too bad!

With the newest release, you can now easily change this after the fact with something like:
.for_each_trace(lambda t: t.update(name=t.name.replace("=",": ")))
For example:

You could of course use this to edit any property etc.

If you just want to show the values in legend, you can use this:
fig = px.scatter(data_grouped_month, x="resolved_tf", y="alert_role",
                 size='incident_count',color='alert_role', hover_data=['alert_role']).for_each_trace(lambda t: t.update(name=t.name.split("=")[1]))

like if you have something like:
alert_role=cpu
alert_role=clone
alert_role=memory
alert_role=io wait time
alert_role= databse

Like:

so the below snippet will remove the "alert_role" and will show only values like cpu, clone,memory etc:
.for_each_trace(lambda t: t.update(name=t.name.split("=")[1]))
The output will be:
cpu
clone
memory
io wait time
database

This is actually no longer necessary... As of Plotly.py 4.5, Plotly Express no longer puts the = in trace names, because legends support titles.

Love the update to the legend in 4.5! Now I'm wondering if there's a way to supress the '=' expression from the titles of sub-plots. or if not, is there a helper function like there used to be for traces, something like:
for_each_subplot( lambda z: z.update(title=z.title[(z.title.find("=")+1):]))

Yep:
import plotly.express as px

fig = px.scatter(px.data.tips(), x="total_bill", y="tip", facet_col="smoker")
fig.for_each_annotation(lambda a: a.update(text=a.text.split("=")[-1]))
fig.show()

@jdamiba can you add this example to the facet docs please? ☝

Similarly, is there a way to hide the facet_col appearing as a header above subplots?

Hey, is there a way to set the x and y axis label for every subplot?


Fix typo: "Whetherer" to "Whether"

In manim/mobjet/graphing/scale.py, line 127, fixing typo "whetherer" to "whether". Ignore this if it's not a typo.

Thanks for the typo fixes, that is much appreciated! 🥳
For the future: you can also just have one PR where you do more than one typo, it's easier to go through them if they are not seperated.


solve sqlalchemy multiplte relationships issue

This PR is to solve the issue https://github.com/flask-admin/flask-admin/issues/1740

Thanks for this @jubafourali, but please first open an issue, and use it to describe the problem that you're solving here.

Thanks for this @jubafourali, but please first open an issue, and use it to describe the problem that you're solving here.

Thanks for this @jubafourali, but please first open an issue, and use it to describe the problem that you're solving here.

Thank you @petrus-jvrensburg for your notice, issue tagged above

Can we merge this PR?

Can we merge this PR?

This can be done only by people with write access

@pawl @alanhamlett @mrjoes Could you please merge this?


add publish-local script

@onursatici you need to add it to rat-excludes

I've been using this hack script locally which includes docker image publishing:
#!/bin/bash

set -eu

spark_version=$(git describe --tags)-aash1
hadoop_version=hadoop-2.8.0-palantir3
combined_version="$spark_version"-"$hadoop_version"
docker_base=<internal_url>/spark

echo cleaning...
./build/mvn clean

echo setting version number for publish...
./build/mvn versions:set -DnewVersion="$spark_version"

echo building jars and publishing locally...
./build/mvn -DskipTests -Phadoop-cloud -Phadoop-palantir -Pkinesis-asl -Pkubernetes -Phive -Pyarn install

echo making distribution...
./dev/make-distribution.sh --name "$hadoop_version" --tgz -Phadoop-cloud -Phadoop-palantir -Pkinesis-asl -Pkubernetes -Phive -Pyarn

echo publishing to local dir...
mkdir -p ~/.m2/repository/org/apache/spark/spark-dist/$combined_version/
cp spark-dist-$combined_version.tgz ~/.m2/repository/org/apache/spark/spark-dist/$combined_version/

echo building docker images...
tar -zxvf spark-dist-$combined_version.tgz
pushd spark-dist-$combined_version/

for type in driver executor init-container resource-staging-server shuffle-service; do
    docker build -t "$docker_base/$type:$spark_version" -f "dockerfiles/$type/Dockerfile" .
done

echo publishing docker images...
for type in driver executor init-container resource-staging-server shuffle-service; do
    docker push "$docker_base/$type:$spark_version"
done

popd


Default styles for home measurements

Overview

Sets a different point style/radius for home measurements
Matches dataset and annotation colors by default

How it was tested

Ran showcase app with home measurement data
Tested that both home and office points display correctly
Tested manually changing options as well

Checklist

[x] The title contains a short meaningful summary
[x] I have added a link to this PR in the Jira issue
[x] I have described how this was tested
[ ] I have included screen shots for changes that affect the user interface
[ ] I have updated unit tests
[ ] I have run unit tests locally
[ ] I have updated documentation (including README)


Add dollar amount to Request Event

Add a field to specify the dollar amount for event requests.
Ensure this value can be modified by admins.

Done.


playbooks: add new playbook 'cephadm-set-container-insecure-registries'

This playbook can be called directly or can be a step of cephadm-preflight.
Closes: https://bugzilla.redhat.com/show_bug.cgi?id=2040337
Signed-off-by: Guillaume Abrioux<EMAIL_ADDRESS>

jenkins test el8-functional


Make job set search/filter use GlobSearchOrExact

Closes #1698

How does this affect performance? Starts with, unlike glob, doesn't necessarily require a full scan of the database.

How does this affect performance? Starts with, unlike glob, doesn't necessarily require a full scan of the database.

Certain queries will be slower, for sure. Any search missing the wildcard operator * will be an exact search, which should be very fast. Searches such as test* will be equivalent in performance to StartsWith. Other searches such as *test will likely be less performant. I believe in the most likely search cases, performance will be better or equivalent.

I've approved.


Tests for Edit Page

[ ] text input
[ ] DID returned
[ ] DID copied
[ ] Github verification flow

Old - closing


Fix reading NetworkStream + throw less temp objects around while parsing

Hi!
From what I understand, that should fix #9 and a few similar problems.
In principle, it can be made to be even less GC intensive as is, although it would probably be easier to use some external library, like System.IO.Pipelines


[Feature Request] arbitrary data signing

Can we make new interface for signing the arbitrary data like metamask
https://docs.metamask.io/guide/signing-data.html#signing-data-with-metamask
I’m not sure this already available, can we get the pubkey of address?? If not, it also good to have that feature too.

Seems already had discussion https://github.com/terra-money/wallet-provider/pull/7

Hi.
I'm a newbie and trying to build an web/mobile application base on Terra.
But I couldn't find solution to verify owner of wallet from server side like metamask+web3.
To boom up many applications with Terra,
this feature will be necessary and very useful. :D
There was same request as well.
sign and verify message using terra.js
Thanks for support.

https://github.com/terra-money/wallet-provider/pull/38

@iamssen is sign and verify working now?

@tkowalczyk https://github.com/terra-money/wallet-provider/pull/38 please refer this PR

Yeah I saw it but when it be ready for production use?

@tkowalczyk There is a third-party developer who is developing using this function, and the third-party must complete the test for this function. I am also waiting because it is not an API created by my needs.
To test this function, you need to install the test version station extension on your chrome as unpacked, and if you want to test this function, I will send you a zip file.

Hey @iamssen, could you please provide more info on how to reach out to this 3rd party developer to see what it the expected timeline on this particular feature? Cheers 🤝

@tk-o Hmm... We're currently developing this with some third-party, but there's no feedback from them. I think it is okay to develop this function with the developers of this issue.
Currently, I am focusing on work for wallet-provider 3.0 major update. Maybe late next week, I will prepare an extension and wallet-provider to test this function.
I'll let you know when I'm ready. It would be okay to proceed with API development according to your feedback.

Excellent! This feature is crucial for off-chain authentication, so I'm happy to provide my feedback once it's available for testing. Thank you for your efforts, @iamssen 💪

import { MnemonicKey, RawKey } from<EMAIL_ADDRESS>import { randomBytes } from 'crypto';
import jscrypto from 'jscrypto';
import secp256k1 from 'secp256k1';

describe('sign-bytes', () => {
  test('terra.js secp256k1 ecdsaSign', () => {
    // create key (same as extension wallet creation)
    const mk = new MnemonicKey({ coinType: 330 });
    const privateKey = mk.privateKey.toString('hex');
    const key = new RawKey(Buffer.from(privateKey, 'hex'));
    //@ts-ignore
    const publicKey = key.publicKey!.toProto().key;

    // create message
    const bytes = Buffer.from('hello world');

    // ecdsaSign - this function transform the bytes to
    //     message = Uint8Array.from(
    //                  Buffer.from(
    //                      jscrypto.SHA256.hash(
    //                          new jscrypto.Word32Array(bytes)
    //                      ).toString(),
    //                  'hex')
    //               )
    const { signature, recid } = key.ecdsaSign(bytes);

    // (extension will return this data) return sign-bytes result to user
    const userReturn = {
      recid,
      signature,
      publicKey: Buffer.from(publicKey).toString('base64'),
    };

    // (developer verify your data by the return data above) verify by userReturn data
    expect(
      secp256k1.ecdsaVerify(
        userReturn.signature,
        Buffer.from(
          jscrypto.SHA256.hash(new jscrypto.Word32Array(bytes)).toString(),
          'hex',
        ),
        Buffer.from(userReturn.publicKey, 'base64'),
      ),
    ).toBeTruthy();
  });
});

@tk-o I will return the recid, signature, and public_key as above as a result of the bytes received from you. Can you make what you want with this return data?

My use case is authentication/

A user shares their public key/wallet address requests sign in action
A server responds with a randomly generated string (a challenge)
The user signs the challenge with their private key and sends the signature back to server
The server verifies if the provided signature matches the public key from point 1.

Depending on the verification, server considers the user "signed in", or returns authentication error.

I updated include this feature in<EMAIL_ADDRESS>https://github.com/terra-money/wallet-provider/releases/tag/v3.0.0
This feature will not be supported by the current extension. You can test it by referring to this link. https://www.npmjs.com/package/terra-web-extension
This feature will also be updated to the current extension in a while.

I just noticed that discord supporting service - Lunar Assistant has a feature for signing transactions:
https://www.lunarassistant.com/
I am wondering how did they accomplish to do this, please check the screens:

Any ideas guys?

@tkowalczyk here's how:

https://github.com/GraviDAO/lunar-assistant-app/blob/main/src/components/VerificationSteps.tsx#L225-L286
https://github.com/GraviDAO/lunar-assistant-app/blob/main/src/pages/api/lunarVerify.ts

But from what I can see the verification step is hardcoded to always consider signature valid:
https://github.com/GraviDAO/lunar-assistant-app/blob/main/src/pages/api/lunarVerify.ts#L34-L40
The Web 3.0 is about "do not trust, verify". Following this theme, we should focus on having an easy API to

sign an arbitrary data,
check if a signature is valid.

Perhaps we could have a crypto-utils package build on top of https://github.com/polkadot-js/common/tree/master/packages/util-crypto to save a lot of work, and just connect it to the Terra Station via an adapter?
Any thoughts on this approach?

Hey @iamssen , I'm looking forward to this feature as well. Any idea when it will be supported in the official extension?

Hey everyone!
Yes as you pointed out @tk-o, the verification step is currently hardcoded to always consider the signature valid. I used to do proper verification, but then breaking changes were introduced and I haven't been able to get it working since then.
Because signBytes is not yet available, I was using a workaround of signing a dummy transaction which sends 0 ust to a dummy address. I'm also looking forward to signBytes becoming available via the Terra Station extension.
@iamssen , do you have advice for how to verify a signed transaction? This is my attempt:
                  // Sign the transaction
                  const verificationTransaction = await connectedWallet.sign({
                    fee: new Fee(0, '0uusd'),
                    msgs: [
                      new MsgSend(
                        connectedWallet.walletAddress,
                        'terra1f5u6ds3q95jwl2y5ellsczuwd2349g68u8af4l',
                        { uusd: 0 },
                      ),
                    ],
                  });

                  // Prepare the relevant pieces of the transaction
                  const pub_key =
                    verificationTransaction.result.auth_info.signer_infos[0]
                      .public_key;

                  const body: LunarVerifyRequest = {
                    signature: verificationTransaction.result.signatures[0],
                    message: SHA256.hash(
                      JSON.stringify(
                        verificationTransaction.result.body.messages[0].toJSON(),
                      ),
                    ).toString(),
                    walletAddress: connectedWallet.walletAddress,
                    jwt: Array.isArray(jwtString)
                      ? jwtString.join()
                      : jwtString || '',
                    publicKey:
                      pub_key instanceof SimplePublicKey
                        ? pub_key.key
                        : pub_key instanceof ValConsPublicKey
                        ? pub_key.key
                        : '',
                  };

                  // Try to verify the transaction

                  // get the signature buffer
                  const sigBuffer = Buffer.from(
                    body.signature,
                    'base64',
                  );

                  // get the hash buffer
                  const hashBuffer = Buffer.from(
                    body.message,
                    'hex',
                  );

                  // get the public key buffer
                  const pubBuffer = Buffer.from(
                    body.publicKey,
                    'base64',
                  );

                  // verify the transaction is legit
                  // This does NOT work
                  const verified = secp256k1.ecdsaVerify(
                    Uint8Array.from(sigBuffer),
                    Uint8Array.from(hashBuffer),
                    Uint8Array.from(pubBuffer),
                  );

Thanks! :)

Hey @iamssen , I'm looking forward to this feature as well. Any idea when it will be supported in the official extension?

I think it will be soon.

@Ruborcalor Um... Actually, I don't know exactly what this function is for. 😅
So, I'm asking if this signBytes() is the function you want.
https://www.npmjs.com/package/terra-web-extension You may be testing through this new extension. signBytes() will soon be added to the current extension. (I heard that signBytes() will be added soon at today's meeting)

signBytes() will soon be added to the current extension. (I heard that signBytes() will be added soon at today's meeting)

Amazing news 🚀

@iamssen Yes signBytes() is the function I want, but in the meantime I was looking for a function similar to verifyBytes that I could use to verify the output of a call to sign(). This is the function I'm trying to construct above.

https://github.com/terra-money/wallet-provider/pull/49

v3.3.0 released
npm install @terra-money/wallet-provider@latest

@tkowalczyk here's how:
* https://github.com/GraviDAO/lunar-assistant-app/blob/main/src/components/VerificationSteps.tsx#L225-L286

* https://github.com/GraviDAO/lunar-assistant-app/blob/main/src/pages/api/lunarVerify.ts

But from what I can see the verification step is hardcoded to always consider signature valid: https://github.com/GraviDAO/lunar-assistant-app/blob/main/src/pages/api/lunarVerify.ts#L34-L40

@tkowalczyk I have now updated the code to properly check whether or not a signature is valid using signBytes if you want to take a look.`

Hi.
Thanks for support this feature and it works fine as the guide.
It looks like verify step in client side as below example if I understand correctly.
https://github.com/terra-money/wallet-provider/blob/main/templates/next/pages/sign-bytes-sample.tsx#L35
Is there any way to verify in backend server side as well? (ex. terra.js in node)
Because, I need to mapping who is owner of wallet with a user account in backend side after user signed.
This is an example in Ethereum case what I looking for,
https://metamask.github.io/eth-sig-util/modules.html#recoverPersonalSignature
Thanks. :)

Hey @RonniePark,
I could not make it work on Node.js end (there was some issue with having terrajs lib loaded, I can't remember now).
What I did was a bit of code gymnastics on the client side:
    // `bytes` is a var of type `Buffer`
    const { result: signBytesResultRaw } = await connectedWallet.signBytes(bytes)
    const publicKeyWrapped = signBytesResultRaw.public_key?.toProto()

    return {
      signature: Buffer.from(signBytesResultRaw.signature),
      message: bytes,
      // @ts-ignore
      publicKey: publicKeyWrapped.key,
    }

And then I send the object from the return statement to the Node.js API.
Here's the Node.js piece of code:
import secp256k1 from 'secp256k1'
import jscrypto from 'jscrypto'

function authenticationHandler(req, res) {
  const body = req.body

  let messageBytes = Uint8Array.from(body.message)
  let signatureBytes = Uint8Array.from(body.signature)
  let publicKeyBytes = Uint8Array.from(body.publicKey)

  res.json({
    isVerified: verify({
      messageBytes,
      signatureBytes,
      publicKeyBytes,
    }),
  })
}

interface VerifyProps {
  messageBytes: Uint8Array
  signatureBytes: Uint8Array
  publicKeyBytes: Uint8Array
}

function verify({ messageBytes, signatureBytes, publicKeyBytes }: VerifyProps): boolean {
  let messageAltBytes = jscrypto.SHA256.hash(new jscrypto.Word32Array(messageBytes)).toUint8Array()

  return secp256k1.ecdsaVerify(signatureBytes, messageAltBytes, publicKeyBytes)
}

Thanks @tk-o a lot for quick response, and let me take a look and try.
It's useful and great reference for me. :)
From the verify step in above original question,
I just wanna make sure and clarify that the requestor from client is exactly same with owner of that wallet,
also this feature is would be big impact whenever sdk update.
Then I thought like this is need to be support officially through sdk instead of implement by individual, because of that would be more safe and reduce dependency in future update.
I will try as @tk-o mentioned for now and it would be great if @iamssen consider that verify step in backend server side sdk as well. :D
Thanks.


Update all files to have 2016 copyright notices.

Les, can you please confirm that this is the right thing to do?

I agree w/ Misha.  PTAL

The policy should be to copyright as of the file creation.  Noted.  Closing the PR without merging.


Backintime errors out on launch (Module 'packaging' not found)

Describe the bug
A clear and concise description of what the bug is.
Backintime gives the following error when launched
 backintime
Traceback (most recent call last):
  File "/nix/store/nsp76fn0fp8lh0jkkn8c0y4bz3zzrljw-backintime-common-1.3.3/lib/python3.10/site-packages/backintime/common/backintime.py", line 28, in <module>
    import config
  File "/nix/store/nsp76fn0fp8lh0jkkn8c0y4bz3zzrljw-backintime-common-1.3.3/lib/python3.10/site-packages/backintime/common/config.py", line 45, in <module>
    import tools
  File "/nix/store/nsp76fn0fp8lh0jkkn8c0y4bz3zzrljw-backintime-common-1.3.3/lib/python3.10/site-packages/backintime/common/tools.py", line 37, in <module>
    from packaging.version import Version
ModuleNotFoundError: No module named 'packaging'

Steps To Reproduce
Steps to reproduce the behavior:

nix shell nixpkgs#backintime (or nix-shell -p backintime)
run backintime-qt
application does not launch, giving the above error

Expected behavior
The application to launch, without errors.
Notify maintainers
Maintainers list is empty, last change was from the @r-ryantm bot
Metadata
shaun@natrix ~> nix-shell -p nix-info --run "nix-info -m"
 - system: `"x86_64-linux"`
 - host os: `Linux 6.1.31, NixOS, 23.05 (Stoat), 23.05.20230610.d3bb401`
 - multi-user?: `yes`
 - sandbox: `yes`
 - version: `nix-env (Nix) 2.13.3`
 - channels(root): `"nixos-23.05"`
 - nixpkgs: `/nix/store/0yzh1r9mhsr4vp5w96y3i0jgz3m2qzv6-source`

@bjornfor Update on this - it seems backintime-common has the same issue.
backintime
Traceback (most recent call last):
  File "/nix/store/0vph10hp0j136rlx8khd7rz11m3gkpsy-backintime-common-1.3.3/lib/python3.10/site-packages/backintime/common/backintime.py", line 28, in <module>
    import config
  File "/nix/store/0vph10hp0j136rlx8khd7rz11m3gkpsy-backintime-common-1.3.3/lib/python3.10/site-packages/backintime/common/config.py", line 45, in <module>
    import tools
  File "/nix/store/0vph10hp0j136rlx8khd7rz11m3gkpsy-backintime-common-1.3.3/lib/python3.10/site-packages/backintime/common/tools.py", line 37, in <module>
    from packaging.version import Version
ModuleNotFoundError: No module named 'packaging'

same steps to reproduce, just replacing nix shell nixpkgs#backintime with nix shell nixpkgs#backintime-common and executingbackintime instead of backintime-qt

New PR: https://github.com/NixOS/nixpkgs/pull/246095


Use DO rpm instead of container

@zongzw made a very small change at line https://github.com/F5Networks/f5-adcaas-openstack/blob/8835f822c349b5cf5a1a719300e65d6216f8acbe/app/waf/src/services/do.service.ts#L474
Please review again.


Array Implementation of Stack

Fixed issue #36

Please star this repository to show your support, in the meantime I am reviewing your code.

Excellent work @jakansha2001  Thanks a lot for making this PR.

Can you also label this pull request as "hacktoberfest-accepted"?


Install just doesn't work for me

Hi I just found out about your project and wanted to give it a try. I'm a complete ocaml noob, so it is totally possible that I did something wrong.
So I did the following:
$ wget http://www.ocamlpro.com/pub/opam_installer.sh
$ sh ./opam_installer.sh /usr/local/bin
$ opam init
$ eval 'opam config env'
$ opam install google-drive-ocamlfuse
then at "installing xmlm.1.1.1" I get:
W: Field 'ocamldoc' is not set
E: Cannot find external tool 'ocamldoc'
any help would be greatly appreciated.

I am still getting this error:
[ERROR] No package named google-drive-ocamlfuse found

Try running opam update before opam install google-drive-ocamlfuse.


How should the dim parameter value of MilvusVectorStore be calculated?

Question Validation

[X] I have searched both the documentation and discord for an answer.

Question
What does dim relate to, the maximum length of the embedding model?

Yes, dim relates to the length of the embedding vector of the given embedding model.
You should be able to find it within the model card or API docs.

The dim parameter value of MilvusVectorStore should be set to the dimension of the embedding vectors that you are using for the collection. This is required if you are creating a new collection. For example, if you are using OpenAI's embeddings, the dimension might be 1536 [1][2][3].
Example usage:
vector_store = MilvusVectorStore(
    dim=1536,  # Set this to the dimension of your embedding vectors
    collection_name="your_collection_name",
    uri="http://milvus_address:port",
    token="your_milvus_token_here",
    overwrite=True
)

To continue talking to Dosu, mention @dosu.

I load the native embedding model, which is a variable-length vectorized model. dimension is in [1024, 1792], but the MilvusVectorStore tells me dim=5376.


[DO NOT MERGE] Remove the unstable test group

Remove the unstable group from all the unstable tests so they run in CI.
Do not integrate, this is just to see how many of the unstable tests are still failing.

I love this idea!!! Let's see what CI says about it... we will know what point are we really at?

I'd prefer if we had a dedicated CI job for unstable and we moved all currently disabled or ignored tests to the unstable group. We would get daily reports and we would have more incentive to promote tests out of unstable (well, "incentive" is a loose word :)

I would prefer a separate CI job too, I only opened this PR because I think creating a separate job would take much longer.

Needs rebase

@tristantarrant @galderz @danberindei I think there's no need to create a custom job for ustable tests. The biggest question is what shall we do if a test is green in unstable group but fails when running with the rest of tests. IMO such a job does not provide any information to us and increases complexity (different profiles) and add maintenance burden.
What I would prefer to do instead, is to simply Ignore this test (in other words put it into quarantine) and assign someone to look into it. What we could also do is to set a threshold for ignored tests. Once we exceed the threshold, we will fail the main build.

@danberindei Should this PR still hang around?

@slaskawi if there's no CI build running unstable tests, how do you know that a test is "green in unstable group"? And if you think that asking someone to look into an unstable test that hasn't ran in CI for more than a month, please pick one test from the spreadsheet and let me know how it goes :)

@rvansa Tristan has configured Jenkins to run the build on the original branch, not on the merge, so it's not that useful any more, but I think the history might still help the brave souls who try to work on tests that have been marked unstable for a long time.

Not only that, but new tests have been moved to unstable as well as harmonizing testng/junit unstable categories. We should probably have a nightly job which enables the unstable profile.

@danberindei Is this PR going to be resurrected any time soon? Or can we close it for now?

@ryanemerson it was never intended to be merged, just as a way to run the unstable tests in CI from time to time. I haven't made any progress on creating an unstable tests job in Jenkins.


Privnet chain check

What current issue(s) does this address, or what feature is it adding?
In prompt.py, added a check if the privnet database is of the same privnet container. An old database is a common error case, without an error message and the only indicator a not increasing block count.
How did you solve this problem?
Code
How did you make sure your solution works?
Test
Are there any special changes in the code that we should be aware of?
No
Please check the following, if applicable:

[ ] Did you add any tests?
[X] Did you run make lint?
[X] Did you run make test?
[X] Are you making a PR to a feature branch or development rather than master?
[X] Did you add an entry to CHANGELOG.rst? (if not, please do)

Coverage remained the same at 78.235% when pulling a5ead32cc071d11e8d921b919db90662b9d825c9 on privnet-chain-check into 1c04f57245f457a93c03736172c0b03fe739cbaf on development.

Just a proof of concept. Thoughts?


quiz site added

Related Issue

Info about Issue or bug

Closes: #[issue number that will be closed through this PR]
Describe the changes you've made
A clear and concise description of what you have done to successfully close your assigned issue. Any new files? or anything you feel to let us know!
Describe if there is any unusual behaviour of your code(Write NA if there isn't)
A clear and concise description of it.
Checklist:

[x] My code follows the style guidelines of this project.
[x] I have performed a self-review of my own code.
[x] I have commented my code, particularly in hard-to-understand areas.
[x] I have made corresponding changes to the documentation.
[x] New and existing unit tests pass locally with my changes.

Screenshots
Put any screenshot(s) of the project here.

 checkout site here

hey, accidentally I've deleted the fork repo. So currently I'm not able to make any changes in index.html. so you can merge the request after that I have to create a new pull request


Make app resilient to connection type changes?

Describe the problem
Is there a way to make an app resilient to connection type changes? By that i mean if an app is open and the user is on WIFI and they change their connection type to WIRED(Ethernet) or even establish a VPN which creates a new virtual network adapter, the app then crashes, tried setting a callback function, but cant think of anything to do there since the app is already gone at that point.
Desktop (please complete the following information):

OS: Windows 10 1809
Browser: Chrome/Brave 79.x.x.x

Hi @alepodj - thanks for reporting this issue. I think it's definitely something that we should address. I'll have a look at it.

Thanks for taking a look @samuelhwilliams I experienced it the most while on WIFI and then establishing a VPN session and the other way around. I have to do more testing for the WIFI to WIRED and vice versa cases. Let me know if u need any other details. Cheers

Hi @alepodj. I think the prospective change here may also help you: https://github.com/samuelhwilliams/Eel/pull/353. Although addressing connection resilience isn't the main goal, it does add code to the Eel JS side that will get it to try to reconnect to the Python server when the websocket is closed.
There's currently still a hard-coded 1 second shutdown on the Python side if no websocket is connected. This may be too short - so it would be useful if you could test it and see if we need to either make that shutdown timer configurable or longer by default.

Hello @samuelhwilliams this is excellent. So far all my tests have passed. Apps stays running on the following cases:

No VPN to a VPN Session Established
VPN Session Established to No VPN
WiFi to Completely Offline
Completely Offline to WiFi

I played with the shutdown timer backwards from 10 seconds to the default 1 second and they all work the same, so no change there. Haven't got a chance to test WiFi to Ethernet, but based on the above is kinda safe to assume it should work fine.
The only one note and not even a big deal, and probably not even eel, when using host=socket.getfqdn() and port=443 i kept getting Network Access Denied on the Javascript console, but honestly it was probably me and resorted back to the defaults: localhost:8000
Thanks for this man :)

Awesome - glad to hear it's helped. I'll see about pushing it into a release over the next day or two.
Re: Network Access Denied - I suspect that's more related to using a port <1024 that needs special permissions. Feel free to open a new issue about it if you like - but it feels to be probably not a fault of Eel directly (happy to be proved wrong if it is though).
Mind if I close this off for now?

By all means please close this issue. Im quite happy with the outcome :)
Cheers


./bootstrap-vcpkg.sh on mac selects wrong compiler

Describe the bug
When I run ./bootstrap-vcpkg.sh I get the following error:
➜  vcpkg git:(fix-meson) ✗ ./bootstrap-vcpkg.sh
Downloading vcpkg tool sources
Building vcpkg-tool...
-- The CXX compiler identification is GNU 11.2.0
-- Checking whether CXX compiler has -isysroot
-- Checking whether CXX compiler has -isysroot - yes
-- Checking whether CXX compiler supports OSX deployment target flag
-- Checking whether CXX compiler supports OSX deployment target flag - yes
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - failed
-- Check for working CXX compiler: /usr/local/bin/g++-11
-- Check for working CXX compiler: /usr/local/bin/g++-11 - broken
CMake Error at /Users/leanderSchulten/git_projekte/Lichtsteuerung/vcpkg/downloads/tools/cmake-3.20.2-osx/cmake-3.20.2-macos-universal/CMake.app/Contents/share/cmake-3.20/Modules/CMakeTestCXXCompiler.cmake:59 (message):
  The C++ compiler

    "/usr/local/bin/g++-11"

  is not able to compile a simple test program.

  It fails with the following output:

    Change Dir: /Users/leanderSchulten/git_projekte/Lichtsteuerung/vcpkg/buildtrees/_vcpkg/build/CMakeFiles/CMakeTmp

    Run Build Command(s):/Users/leanderSchulten/git_projekte/Lichtsteuerung/vcpkg/downloads/tools/ninja-1.10.2-osx/ninja cmTC_3da22 && [1/2] Building CXX object CMakeFiles/cmTC_3da22.dir/testCXXCompiler.cxx.o
    FAILED: CMakeFiles/cmTC_3da22.dir/testCXXCompiler.cxx.o
    /usr/local/bin/g++-11   -arch arm64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX11.3.sdk -o CMakeFiles/cmTC_3da22.dir/testCXXCompiler.cxx.o -c testCXXCompiler.cxx
    g++-11: error: this compiler does not support arm64
    ninja: build stopped: subcommand failed.

  CMake will not be able to correctly generate this project.
Call Stack (most recent call first):
  CMakeLists.txt:33 (project)

-- Configuring incomplete, errors occurred!
See also "/Users/leanderSchulten/git_projekte/Lichtsteuerung/vcpkg/buildtrees/_vcpkg/build/CMakeFiles/CMakeOutput.log".
See also "/Users/leanderSchulten/git_projekte/Lichtsteuerung/vcpkg/buildtrees/_vcpkg/build/CMakeFiles/CMakeError.log".

I can workaround this by passing the option -allowAppleClang to the script, but it should autoselect clang on arm macs or on macOS >= 10.15(?)
Environment

OS: macOS 11 with Apple M1

Expected behavior
It should simply compile vcpkg

Hi @autoantwort
Thanks for posting this issue.
vcpkg will choose gcc as the default compiler to build on Unix platform. So if you want to use clang compiler, you need to pass the option -allowAppleClang to build.

So if you want to use clang compiler, you need to pass the option -allowAppleClang to build.

Yeah I know, but that must be the default on arm macs. Or do you think that getting this error as default behavior is a good thing?
Btw this is not a question, it is a vcpkg-bug ;)

gcc bug, see https://github.com/iains/gcc-darwin-arm64/issues/35.

Yeah, but until then vcpkg bootstrap fails


Test for Applied Styles breaks if styles are not inlined, as example shows

I noticed that the example test for testing applied styles ( https://github.com/eddyerburgh/avoriaz-karma-mocha-example ) is testing for inlined styles. But, if you were to move the styles into a

edit: Looks like when findMatchingVNodes() executes, the Vnodes don't have any of the styles applied yet

Hi thanks for the issue, I'll have a look and try for a fix tomorrow

So I've changed the style method to return the computedStyles instead of just inline styles. I add the element to the DOM when style is called and run getComputedStyle on the node.
It's not ideal. getComputedStyles returns the entire style, so setting background: red results in a computed style of rgb(255, 0, 0) none repeat scroll 0% 0% / auto padding-box border-box. Not an ideal solution.
This also breaks style when using jsdom. I'm going to look into it tomorrow, but the problem is that stylesheets aren't being rendered in jsdom (document.styleSheets).
I think it's better though to have this working in a browser than to keep the inline only implementation.
Fix is available in 1.4.0 - /releases/tag/1.4.0 . Which is live on npm

After sleeping on it, I've come up with a better solution.
I've deprecated style, since it is not reasonable to expect someone to assert style.color equals rgb(255, 0, 0) none repeat scroll 0% 0% / auto padding-box border-box when your css rule is color: red.
As a solution I've added the hasStyle method. This takes a style and a value as parameters and returns a boolean. It works on all computed styles (i.e. styles inherited from stylesheets).
I've bumped to version 1.5.0 on npm and am about to update the example projects.

Thank you @eddyerburgh for the quick fix. Very much appreciated.
This is a moot point now, but just FYI. I had tried the fix in the 1.4.0 release, and when I had the style in a  tag within the .vue file, I was getting expected some HEX value, but actual was rgb(0, 0, 0). When I debugged it appeared that after the insertBefore() method, the element in question only had it's initial CSS properties, black in this case since I was testing color.
Lastly, may I make a suggestion for the new hasStyle test. It looks like when window.getComputedStyle(mockNode)[style] executes, it's using rgb colors only. Could we add an option to convert this to HEX colors? I could make a PR if needed.

@JeffWeim that's expected behavior - and it's why I deprecated!
getComputedStyles returns the resolved values. Setting color: red results in a computed value of color: rgb(255, 0, 0)(in most browsers).
The resolved value of properties with multiple properties, like background: red, adds the default options. So the computed value is rgb(255, 0, 0) none repeat scroll 0% 0% / auto padding-box border-box!
I couldn't think of an easy way to convert the computed value into the value defined inside style tags.
hasStyle is my solution to this problem.
If your class is .color-black {color: black}, and you call .hasClass('color', 'black') on a wrapper of the  element with class color-black, the test will pass. Even though under the hood it is comparing the computed value rgb(0,0,0)  with rgb(0,0,0).
It can take a CSS color or hex value as input and apply these styles to a temporary node. it then compares the computed value of the temporary node with computed value of the node you are testing on. Under the hood it converts to RGB, but the outcome is still the same.
So I don't think there is any need to convert to hex.
If you do want to contribute though, I want to add support for direct sibling and sibling combinators in the find method :smile: .

@eddyerburgh Thanks, that explanation makes more sense.
I can take a look and see if I can come up with something!


Fix start_frame after subsampling in transformers

Thanks!
Does this affect results?

It affect a little but I think could be ignored, since it will affect mask value for only one frame.


Document script generator

I was about to deprecate hubot-example when I realized there isn't actually any documentation on creating external scripts. Basically, use the generator-hubot package and yo hubot:script.
I think it'd be worth shuffling part of docs/scripting.md to a new file to talk about creating & maintaining scripts.

I'm gonna take a quick whack at just adding an initial section into docs/scripting.md here. PR coming shortly!

I didn't realize this was available, but that's great, definitely having it in the main docs would be helpful!


type assignment error when assigning onload handler

Code:
var reader = new FileReader()
reader.onload = function (e) {
  var array = new Uint8Array(e.target.result)
}

Expected: no warnings
Actual:
input0:3: WARNING - The right side in the assignment is not a subtype of the left side.
left side  : function(ProgressEvent):?|null
right side : function({target:{result:Array<number>|ArrayBuffer|ArrayBufferView|null|number} (loose)} (loose)):undefined

    reader.onload = function (e) {
    ^

http://closure-compiler-debugger.appspot.com/#input0%3D%250A%2520%2520%2520%2520var%2520reader%2520%253D%2520new%2520FileReader()%250A%2520%2520%2520%2520reader.onload%2520%253D%2520function%2520(e)%2520%257B%250Anew%2520Uint8Array(e.target.result)%250A%257D%26input1%26conformanceConfig%26externs%26refasterjs-template%26includeDefaultExterns%3D1%26CHECK_SYMBOLS%3D1%26CHECK_TYPES%3D1%26CHECK_TYPES_NEW_INFERENCE%3D1%26LANG_IN_IS_ES6%3D1%26MISSING_PROPERTIES%3D1%26PRESERVE_TYPE_ANNOTATIONS%3D1%26PRETTY_PRINT%3D1%26TRANSPILE%3D1

(with new type inference)

I think it complains because result is not defined on EventTarget, which seems right to me. Which type is result defined on here?

e.target should be a {FileReader}, and e.target.result should be a {string|Blob|ArrayBuffer}.
even if we agree that there should be a warning, i'm not sure that the current warning message is defensible.

The error message isn't great, but it's the best NTI can do in this case. It complains that the type of e is not a supertype of ProgressEvent, which is needed for the rhs to be a subtype of the lhs.
What if you annotate e with your desired type (I'm not sure what it is), does that fix the issue?

e is a ProgressEvent. The compiler agrees.
arguably, the problem is recognizing what e.target is

Does NTI still complain if you annotate e to be a ProgressEvent?


No longer works inside Layout-card

I’m running HASSIO and everything was fine until a couple of updates ago. Since then all my bar-cards have stopped being displayed. Now I just get the big red box of doom saying;
Custom element doesn’t exist: bar-card

I’m using the custom:layout-card by Thomas Lovren. Bar cards displayed outside of this appear to work fine.
Any ideas what’s wrong & how to fix it?
Thanks.

I'm unable to reproduce this and I'm running the latest version of layout-card and bar-card. Maybe you don't have the resource loaded as a module? Otherwise I don't really have a clue.

It would appear that the problem is actually when using the bar-card inside custom:vertical-stack-in-card.
Theres another person on the HA forum confirming the same thing:
https://community.home-assistant.io/t/lovelace-bar-card/87503/504

This is probably more an issue with vertical-stack-in-card. As far as I know that card is no longer being maintained and has been replaced by stack-in-card.

Ok, I'll take a look at that.
Thanks.

I'm getting the same issue with stack-in-card.

Could you post your config, I'm still unable to reproduce this.

I'm getting the red box error with Custom element doesn’t exist: bar-card wherever I put the card in my config. It doesn't seem to be related to any layout or stack card. Config hasn't changed since updating to 0.109.

@volpmatt Have you made sure that both bar-card & card-tools are set as module type rather than js ? I made that change and bar-card now seems to be working.

@volpmatt Have you made sure that both bar-card & card-tools are set as module type rather than js ? I made that change and bar-card now seems to be working.

This fixed it for me


Possible to get rid of UDF input data splitting?

We ran a simple extractor that basically just takes phrases with the NER tag PERSON over 30M documents (about 200GB in terms of sentences table size). Here is a breakdown of the time spent:
COPY OUT (with ARRAY_TO_STRING): 30 min
split: 35 min
UDF: 10 min (70 threads)
COPY IN: 20 min
First, some small perf comments:

Wonder whether we could speed up COPY OUT significantly if we could get rid of ARRAY_TO_STRING one day...
DD by default seems to split the UDF input data into small files with 10K lines each. The DDLog syntax doesn't seem to support the specification of the UDF input batch size. Following @SenWu 's suggestion, we used a larger batch size (100K lines), and split ended up taking 35 min. Not sure if it would be much faster if we use an even larger batch size. Small batch sizes have two issues: a) too many files making split itself slow; b) if the UDF has a slow init step, that init overhead is multiplied by the number of splits. Of course, if the batch size is too large, and the number of splits << number of cores, we under-parallelize. Maybe we could do some adaptive splitting; e.g., split into 100MB chunks, and if it ends up having too few chunks, further split each chunk so that the total number of chunks ~= number of cores.

And the big comment:
Is it possible to get rid of the file splitting step altogether? If we could pipe COPY OUT | UDF | COPY IN all in memory, we might be able to run the above program in 20 min instead of 100 min. ( @netj had some great hacks that seem to be in this direction https://github.com/netj/mkmimo . Has that been applied in DD anywhere?)

Here's the script in an ancient branch that was going to replace the generated exec_parallel.sh scripts, avoiding materializing any split inputs to do udfs: https://github.com/HazyResearch/deepdive/blob/netj-inmemory-extraction/util/run_parallel.sh
The extraction part needs a complete rewrite IMO. Dependencies don't make sense, parallelizing is suboptimal, akka fills up the log with noise. Especially Splitting into fixed size chunks incurs unnecessary udf process startup costs, and spilling them requires extra storage.
If this is a blocker for you, I think you can workaround using the above script.  Make sure you use the c branch of mkmimo.


xbattbar: init at 1.4.9

Motivation for this change
Adds xbattbar - an oldschool but nice X11 battery status tool.
Things done

[X] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[X] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[X] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[X] Fits CONTRIBUTING.md.

hmm, can't figure out how to use it. should it show up in the systray?

It should show up on the bottom of your screen as an ugly 3-pixel tall bar that shows the battery status, like so.

ah, indeed, its actually hard to see with all the clutter on my screen


Automate explanation of mixed dependency versions

Between okhttp, okio, okhttp-tls, mockwebserver, we should check dependency versions match and proactively fail.
Failing proactively will save a lot of effort for people getting versions mixed up in builds.  Worse if the error only happens in an edge case.

See https://github.com/square/okhttp/issues/6199

PR https://github.com/square/okhttp/pull/6208/files

We should consider closing this out, but going to tag every bug report that is because of mixed versions for now, see what the actual effect on users is.

Can we fix all our docs to recommend the BOM?