Play Album Starting At Track

This function does not seem to work correctly for multi-disc albums. Instead, my system queues the first 2500 tracks in my database, (sorted alphabetically by title and plays that list from the position of the track originally selected). FWIW the Play Album Starting At Track function works perfectly for single disc albums. The Play Disc Starting At Track function works perfectly for multi-disc albums.
Material Skin 3.3.5
Bowser Chrome on Win 10.
LMS 8.3.1 running on RPi v 4.

Hmmm... Works for me, but I'm using a pre-release version. Please Use Material's JSON debug to see what message is sent when you "Play album starting at track". To do this:

Use URL: http :// SERVER:9000/material/?debug=json
Open your browsers developer tools
Navigate in Material to the album you want to play
Clear all messages from the Console tab of your developer tools
Use the "Play Album Starting At Track"
In the Console tab you should see some "REQ" entries - these are the messages sent to LMS. Please add these to this ticket.

Hi
I wasn’t sure where I should save the log from, so FWIW this starts from selecting the album, then the second disc, then the third track, then it loads 2500 tracks from the top of the alphabetical list and starts playing the third track.
FWIW this is not isolated to one browser or one LMS server. I get the same behaviour using Safari on my iPhone. And I have two completely separate servers, both RPi4s running the same versions of LMS and Material and I get exactly the same behaviour off both.
Many thanks
D
PS am I allowed to make a sneaky feature request? Material is absolutely brilliant. The disc title facility is doubly brilliant. Might it be possible to have an option to display the disc title in the now playing window?
Sent from Mail for Windows
From: CraigD
Sent: 14 August 2023 13:00
To: CDrummond/lms-material
Cc: d4n3ll; Author
Subject: Re: [CDrummond/lms-material] Play Album Starting At Track (Issue#693)
Hmmm... Works for me, but I'm using a pre-release version. Please Use Material's JSON debug to see what message is sent when you "Play album starting at track". To do this:

Use URL: http :// SERVER:9000/material/?debug=json
Open your browsers developer tools
Navigate in Material to the album you want to play
Clear all messages from the Console tab of your developer tools
Use the "Play Album Starting At Track"
In the Console tab you should see some "REQ" entries - these are the messages sent to LMS. Please add these to this ticket.
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you authored the thread.Message ID: @.***>

Hello again
I thought I’d send a log starting just at the moment I press play album starting from track., in case that helps.
D
Sent from Mail for Windows
From: CraigD
Sent: 14 August 2023 13:00
To: CDrummond/lms-material
Cc: d4n3ll; Author
Subject: Re: [CDrummond/lms-material] Play Album Starting At Track (Issue#693)
Hmmm... Works for me, but I'm using a pre-release version. Please Use Material's JSON debug to see what message is sent when you "Play album starting at track". To do this:

Use URL: http :// SERVER:9000/material/?debug=json
Open your browsers developer tools
Navigate in Material to the album you want to play
Clear all messages from the Console tab of your developer tools
Use the "Play Album Starting At Track"
In the Console tab you should see some "REQ" entries - these are the messages sent to LMS. Please add these to this ticket.
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you authored the thread.Message ID: @.***>

All I need is the REQ message sent when you add tracks - not the responses from LMS. I need to confirm if what is sent is OK or not.

	Hi CraigI’m not very techy I’m afraid. From your reply I’m not sure if you got what you needed. D
	Dan<EMAIL_ADDRESS>
From: CraigD @.>Sent: Tuesday, August 15, 2023 10:18 amTo: CDrummond/lms-material @.>Cc: d4n3ll @.>; Author @.>Subject: Re: [CDrummond/lms-material] Play Album Starting At Track (Issue #693)
All I need is the REQ message sent when you add tracks - not the responses from LMS. I need to confirm if what is sent is OK or not.
—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you authored the thread.Message ID: @.***>

There was no log attached to the email.

	That’s bizarre. There really was. Will send again later. Sorry. D
	Dan<EMAIL_ADDRESS>
From: CraigD @.>Sent: Tuesday, August 15, 2023 1:44 pmTo: CDrummond/lms-material @.>Cc: d4n3ll @.>; Author @.>Subject: Re: [CDrummond/lms-material] Play Album Starting At Track (Issue #693)
There was no log attached to the email.
—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you authored the thread.Message ID: @.***>

	Craig. The log was included as an attachment. It’s on my phone which I did not use to send originally. I’ve also posted the opening bit of the log below. Is this what you need? You can see it queuing up the wrong tracks Sorry for the trouble. Dmaterial.minjs?r=3.3.5:244 [10:12:04] JSON REQ: ["00:04:20:23:63:84",["playlistcontrol","cmd:load","filter:2","play_index:2"]]

material.min.js?r=3.3.5:244 [10:12:30] JSON RESP: {"id":0,"method":"slim.request","params":["00:04:20:23:63:84",["playlistcontrol","cmd:load","filter:2","play_index:2"]],"result":{"count":93504}}
material.min.js?r=3.3.5:244 [10:12:30] JSON UPDATING (00:04:20:23:63:84)
material.min.js?r=3.3.5:244 [10:12:30] JSON REQ: ["00:04:20:23:63:84",["status","-",1,"tags:cdegiloqrstuyAABGIKNSTk"]]
material.min.js?r=3.3.5:244 [10:12:30] JSON PLAYER (00:04:20:23:63:84): {"playlist mode":"off","player_name":"Office","signalstrength":0,"playlist repeat":0,"playlist_cur_index":"2","playlist_loop":[{"trackartist_ids":"939965","albumartist":"Brian Eno","artist_id":"939965","comment":"flac only","genres":"Popular","id":13597079,"album":"Ambient 1: Music For Airports","albumartist_ids":"939965","trackartist":"Brian Eno","type":"flc","url":"file:///mnt/music/Music%20Server/Lossless/Popular/Brian%20Eno/1978a%20-%20Ambient%201,%20Music%20for%20Airports/01%20-%2011.flac","album_id":"1065018","samplesize":"16","title":"1/1","year":"1978","coverid":"917d965f","bitrate":"508kbps VBR","duration
Dan @.***+447880795699
From: Dan Elliott @.>Sent: Tuesday, August 15, 2023 10:17 amTo: CDrummond/lms-material @.>; CDrummond/lms-material @.>Cc: Author @.>Subject: RE: [CDrummond/lms-material] Play Album Starting At Track (Issue#693) Hello again I thought I’d send a log starting just at the moment I press play album starting from track., in case that helps. D   Sent from Mail for Windows From: CraigDSent: 14 August 2023 13:00To: CDrummond/lms-materialCc: d4n3ll; AuthorSubject: Re: [CDrummond/lms-material] Play Album Starting At Track (Issue#693) Hmmm... Works for me, but I'm using a pre-release version. Please Use Material's JSON debug to see what message is sent when you "Play album starting at track". To do this:Use URL: http :// SERVER:9000/material/?debug=jsonOpen your browsers developer toolsNavigate in Material to the album you want to playClear all messages from the Console tab of your developer toolsUse the "Play Album Starting At Track"In the Console tab you should see some "REQ" entries - these are the messages sent to LMS. Please add these to this ticket.—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you authored the thread.Message ID: @.***>

	Yes that’s right. Fwiw as another feature suggestion it would be nice for the collapse if more than … option had a flexible rather than a fixed (200) threshold or even the choice of collapse based on number of discs rather than tracks. Just thoughts. Material is brilliant and I’m really grateful for it in any form. ThanksD
	Dan<EMAIL_ADDRESS>
From: CraigD @.>Sent: Tuesday, August 15, 2023 4:11 pmTo: CDrummond/lms-material @.>Cc: d4n3ll @.>; Author @.>Subject: Re: [CDrummond/lms-material] Play Album Starting At Track (Issue #693)
Thanks for this. The following line is the issue:
JSON REQ: ["00:04:20:23:63:84",["playlistcontrol","cmd:load","filter:2","play_index:2"]]
I've managed to recreate this by having Material "collapse" multi-disc albums. eg. Where each disc is first shown as a header which you need to click to then show the tracks of that disc. I take it this is how you have Material setup?
I'll fix this for the next release.
—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you authored the thread.Message ID: @.***>

Well this disc collapsing is broken, so I'm going to remove it. It's not a feature I use, and there are too many work-arounds as is.
What I'm going to do is add a menu entry allowing you to jump to a particular disc.

As stated, disc collapsing removed - replaced with a menu entry allowing to scroll to a disc.


linux 4.4 kernel compilation fails

Linux 4.4 kernel compilation fails with below error on HiKey build
| DEBUG: Executing shell function do_compile
| NOTE: make -j 16 -j 16 Image CC=aarch64-oe-linux-gcc   -fuse-ld=bfd LD=aarch64-oe-linux-ld.bfd
|   GEN     ./Makefile
| scripts/kconfig/conf  --silentoldconfig Kconfig
|   CHK     include/config/kernel.release
|   GEN     ./Makefile
|   CHK     include/generated/uapi/linux/version.h
|   CHK     include/generated/utsrelease.h
|   Using /mnt/home/knagabhirava/Siva/RPBbuild/build-rpb-wayland/tmp-rpb_wayland-glibc/work-shared/hikey/kernel-source as source for kernel
|   HOSTCC  scripts/extract-cert
| /mnt/home/knagabhirava/Siva/RPBbuild/build-rpb-wayland/tmp-rpb_wayland-glibc/work-shared/hikey/kernel-source/scripts/extract-cert.c:21:25: fatal error: openssl/bio.h: No such file or directory
|  #include <openssl/bio.h>
|                          ^
| compilation terminated.
| make[3]: *** [scripts/extract-cert] Error 1
| make[2]: *** [scripts] Error 2
| make[1]: *** [sub-make] Error 2
| make: *** [__sub-make] Error 2

make sure to install openssl development package on your host. For example, Debian/Ubuntu you need libssl-dev.
On our build slaves, we have: apt-get install -y chrpath gawk texinfo libsdl1.2-dev whiptail diffstat cpio libssl-dev

This seems to require root/sudo permissions, we are building on cloud
machine with restricted permissions..
On 16 September 2016 at 21:16, Fathi Boudra<EMAIL_ADDRESS>wrote:

make sure to install openssl development package on your host. For
example, Debian/Ubuntu you need libssl-dev.
On our build slaves, we have: apt-get install -y chrpath gawk texinfo
libsdl1.2-dev whiptail diffstat cpio libssl-dev
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/96boards/meta-96boards/issues/81#issuecomment-247635392,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ARaeXnGYu13XbiVEsi310-Z-dvTFfD1Zks5qqrnYgaJpZM4J_EyB
.

--
Regards,
Sivasubramanian

you'll need to install the build host packages per http://www.yoctoproject.org/docs/2.1/mega-manual/mega-manual.html#packages
Ask the admin to pre-install the required packages. Nothing we can do about it, it's the build system  prerequisites.

Ok, Thanks.
On 16 September 2016 at 21:34, Fathi Boudra<EMAIL_ADDRESS>wrote:

you'll need to install the build host packages per
http://www.yoctoproject.org/docs/2.1/mega-manual/mega-manual.html#packages
Ask the admin to pre-install the required packages. Nothing we can do
about it, it's the build system prerequisites.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/96boards/meta-96boards/issues/81#issuecomment-247640012,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ARaeXo5MJbPj296jlXSIGlqymu8sVSKvks5qqr4pgaJpZM4J_EyB
.

--
Regards,
Sivasubramanian

Hi, sorry my post is late to the party. I have question & comment since I've encountered same issue.
Shouldn't Yocto's native sysroot build directory be used as when compiling the kernel? I would expect adding DEPENDS += "openssl-native openssl" to the yocto-linux_%.bbappend recipe to resolve this. But it does not.
I am implementing UEFI secure-boot & secure kernel modules to my linux-yocto kernel v4.4. After setting the required kernel configuration fragments .cfg for this, I get a do_compiler error saying missing openssl.
In the build/tmp/work-shared//kernel-source/scripts/Makefile, I can set the following to resolve error:
HOST_EXTRACFLAGS += -I$(STAGING_INCDIR)/
HOST_EXTRACFLAGS += -I$(STAGING_INCDIR)/openssl
HOST_EXTRACFLAGS += -L$(STAGING_LIBDIR)/

But then I get a /usr/bin/ld errors where the loader is looking on my host build machine where I would expect it to look under my build/tmp/sysroot/ or ${PKG_CONFIG_SYSROOT_DIR} directory just like all other packages.
Correct me if I am wrong. I would like to understand this better. I've read the mega manual.

@ezaluzec if you look at our kernel recipes:
https://github.com/96boards/meta-96boards/tree/master/recipes-kernel/linux
You'll see the following:
`
make[3]: *** [scripts/extract-cert] Error 1
DEPENDS += "openssl-native"
HOST_EXTRACFLAGS += "-I${STAGING_INCDIR_NATIVE}"
`

Thanks @fboudra, this worked for me too.
##build-with-native-openssl.patch

	diff -Nurd kernel-source/scripts/Makefile kernel-source.mods/scripts/Makefile
	--- kernel-source/scripts/Makefile	2017-06-26 15:06:19.669626507 -0500
	+++ kernel-source.mods/scripts/Makefile	2017-06-26 15:21:13.000000000 -0500
	@@ -10,6 +10,9 @@
	 # check-lc_ctype: Used in Documentation/DocBook

	 HOST_EXTRACFLAGS += -I$(srctree)/tools/include
	+HOST_EXTRACFLAGS += -I$(STAGING_INCDIR_NATIVE)/
	+HOST_EXTRACFLAGS += -I$(STAGING_INCDIR_NATIVE)/openssl
	+HOST_EXTRACFLAGS += -L$(STAGING_LIBDIR_NATIVE)/

	 hostprogs-$(CONFIG_KALLSYMS)     += kallsyms
	 hostprogs-$(CONFIG_LOGO)         += pnmtologo

##linux-yocto_%.bbappend

	DEPENDS += "openssl-native"

	SRC_URI += "file://build-with-native-openssl.patch"

	# We cannot pass this information in EXTRA_OEMAKE, as
	# "meta/classes/kernel.bbclass" explicitly ignores all EXTRA_OEMAKE settings.
	# Using KERNEL_EXTRA_ARGS parameter so affected boards can use additional arguments.
	KERNEL_EXTRA_ARGS = " STAGING_LIBDIR_NATIVE=${STAGING_LIBDIR_NATIVE} STAGING_INCDIR_NATIVE=${STAGING_INCDIR_NATIVE} "

	# The LD_LIBRARY_PATH variable is not set when building kernel.
	# Work around this by adding the build's sysroot libraries to LD_LIBRARY_PATH.
	kernel_do_compile_prepend(){
		export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:${STAGING_LIBDIR_NATIVE}:${STAGING_LIBDIR_NATIVE}/../../lib
	}

	do_install_prepend(){
		export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:${STAGING_LIBDIR_NATIVE}:${STAGING_LIBDIR_NATIVE}/../../lib
	}

Cheers!

make sure to install openssl development package on your host. For example, Debian/Ubuntu you need libssl-dev.
On our build slaves, we have: apt-get install -y chrpath gawk texinfo libsdl1.2-dev whiptail diffstat cpio libssl-dev

Worked form me!!!!
Thanks

If anyone's here after getting this error building an Android kernel (like me), installing libssl-dev fixed it for me. (On Linux Mint 19.3)

make sure to install openssl development package on your host. For example, Debian/Ubuntu you need libssl-dev.
On our build slaves, we have: apt-get install -y chrpath gawk texinfo libsdl1.2-dev whiptail diffstat cpio libssl-dev

It works dude!!! Thanks alot


[DOC] 文件須更新操作步驟

.npmrc file

resolved at https://github.com/ren-joey/code-checker/commit/03fc946f00d7a217619a6b0d4a4a40b35cf2701c


fix: network switcher visible during page transitions

closes #2465
Also improved page transitions for account-details & added blur effect requested by @onvisions

Fixed, LGTM


Jonmv/more synch in config sub unit test

@bjorncs or @baldersheim or @hmusum  please review.
I'm not super-happy about this. I think the ConfigSubscription is weird, and way too hard to please. It seems some of its subclasses were wrong before, in certain scenarios, and they still are; e.g., I worked around that by adding some "atomicity guarantee" to the config effectively served by the DirConfigSource in container-core tests. I also imitated the JRTConfigSubscription in the ConfigSetSubscription for no good reason, other than to avoid warning bonanza—the state induced by running the different code paths is identical.
At least the reloadConfig wiring is gone now, and replaced with a notion of a "generation" on those test config sources (file, set) that has to be manually incremented—better explicit and dumb, than magical and wrong.

#24702 has the fix for the unit test, along with some cleanup.


[BEAM-473]: DatastoreIO statistics query fixes

Be sure to do all of the following to help us incorporate your contribution
quickly and easily:

[x] Make sure the PR title is formatted like:
[BEAM-<Jira issue #>] Description of pull request
[x] Make sure tests pass via mvn clean verify. (Even better, enable
Travis-CI on your fork and ensure the whole test matrix passes).
[ ] Replace <Jira issue #> in the title with the actual Jira issue
number, if there is one.
[ ] If this contribution is large, please file an Apache
Individual Contributor License Agreement.

Querying and ordering on timestamp for per kind statistics query isn't possible with Datastore. Hence querying the latest timestamp explicitly from the global stats.
Use the correct stats kind name when namespace is provided

R: @dhalperi verified with a DatastoreWordCount job that stats querying works now. Is there a way in integration tests to verify the number of splits generated (#elements generated by a PTransform)? It would help us catch any unknown Datastore behavior that we have missed in Unit tests.

If we had a log verifier, we could.


Question about 'Number of downloads'?

What's the difference between 'Downloaded Files' and 'Number of Downloads'?  I've read everything but there's no explanation of what it is.
Thanks!
By the way, it's been running perfectly for months with no problems.  I use it once a month to catch up with ~220 blogs.  It sure beats going through each one individually.

"Number of Downloads" contains the total number of possible downloads according to the selected settings.
"Downloaded Files" contains how many of these already have been downloaded.

Thanks for the answer.  It brings more questions to mind though...I hope you don't mind (chuckle).
I assume that both are cumulative?  I see that in many blogs, "# of Downloads" is quite small compared to the number actually downloaded.  Others show similar numbers with "# of downloads" being a bit less than "Downloaded Files", as I would expect.
I'd like to suggest that the name be changed to something like "Potential" or "Possible Downloads" which might be more self explanatory.
My copy is still grinding along downloading; it's grabbed (so far) just over 200 GB and a million images.  I added a bunch of new ones this month and deleted a bunch that had been abandoned.

Well, they are kind of cumulative. The best numbers are shown after adding the blog or the first run.
Over time, especially if settings are changed or doing plenty runs, they can get a bit wrong...
I wouldn't take the numbers too serious, there's still room for one or the other improvement.

Thanks again,
Perhaps it might be best to eliminate the column '# of Downloads".  "Downloaded Files" could be reset individually or collectively
if a person desired.  As I only download once a month, it would be handy for me to see how many new images I'd grabbed that month.
Thanks again for your work on this and for taking the time to answer my questions.
Rob.

There's now a new column "newly downloaded items since last run".

The issue has been fixed and closed. You can still comment. Feel free to ask for reopening the issue if needed.


Initial requests sent from ACSTIS not appending the Cookies set in extended.py

This is similar to the issue reported earlier (https://github.com/tijme/angularjs-csti-scanner/issues/7) .
For scanning URLS in an authenticated session , I updated  extended.py with the session cookies. But the initial requests that ACSTIS makes (The same set of requests that were earlier ignoring the proxy values mentioned in extended.py)   do not append the cookies and I get an error in the console as the URL is not reachable.
Work-Around for authenticated Session:
For the moment in order to make ACSTIS work, I am routing the scanner's requests vis Burp and I am appending the cookies to all requests using Burp's Match and replace feature (Proxy->Options->Match and Replace)

@jovyn Thank you for reporting this issue. I'll try to look at it soon.


Release spanner 1.4.0

This pull request was generated using releasetool.
Fixes #5466 5465

Release is at https://github.com/GoogleCloudPlatform/google-cloud-python/releases/tag/spanner-1.4.0


python3Packages.pym3u8downloader: init at 0.1.5

Description of changes
This pull request packages pyhon3Packages.pym3u8downloader and its dependencies.
python3Packages.pym3u8downloader has its pytest test cases run in passthru.tests.pytest, which makes the tests runnable without network connections, by patching the URLs for the test cases and network connection checks and starts a simple HTTP server before running pytest.
Things done

Built on platform(s)

[X] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[X] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[X] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
24.11 Release Notes (or backporting 23.11 and 24.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[X] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

@ofborg build python311Packages.pym3u8downloader python312Packages.pym3u8downloader

Both x86_64-linux and aarch64-linux OfBorg builders build fine, x86_64-darwin complains about timeout (after 3600 seconds), and aarch64-darwin build would often not finish in reasonable time.

--------- Report for 'aarch64-darwin' ---------
12 packages built:
python311Packages.pycolorecho python311Packages.pycolorecho.dist python311Packages.pyloggermanager python311Packages.pyloggermanager.dist python311Packages.pym3u8downloader python311Packages.pym3u8downloader.dist python312Packages.pycolorecho python312Packages.pycolorecho.dist python312Packages.pyloggermanager python312Packages.pyloggermanager.dist python312Packages.pym3u8downloader python312Packages.pym3u8downloader.dist


disabledDates doesn't work

I am trying to disable the holidays in my country but it does not work, it does not have the same effect as disabling the days that is exactly what I need

@MateoArgalle you should provide us with the version, an example on how to reproduce, and any other detail that you think may help.
Probably you should follow the template.

Closed due lack of response.


Fix: Reset colours after

Currently the last colour of the colour pallet is the colour the script
ends with (as opposed to a Colors::Reset), and stays like that until
the shell resets it
Before:

Now:

rs branch isnt getting updates anymore; just use master branch

okay. i just noticed this becaue it seems to be using the rs branch in the AUR.
seems to be an easy fix, not entirely sure how go works tho so can't offer a proper patch (sorry) so just a heads up :smile:


Use Partial types for Object.assign

Fixes #11100

IMHO, let's waiting for rest type (#10727) is a better choice.
http://www.typescriptlang.org/play/index.html#src=declare function assign<T>(target%3A Partial<T>%2C ...sources%3A Partial<T>[])%3A T%3B
assign({a%3A 123}%2C {b%3A 345})

Yep, reverted my deletions. These problems (by my deletions) will be resolved by rest type. However as I said in #11100, I think partial type is needed too. So this pr can merge without waiting to merge #10727.

The partial type is not right for assign for a couple of reasons.

It's not a useful inference source. So function f<T>(pt: Partial<T>): T is essentially equivalent to function f<T>(t: T): T unless the type argument is given explicitly.
It's too strict; see @HerringtonDarkholme's example.

Also, the variadic overload should come last, right? Otherwise it will preclude matching other overloads.
I can see three options:

Do nothing. Variadic Object.assign continues to be illegal in Typescript, although (hard-coded) variadic spread is now legal.
Punt. Make variadic assign take and return any.
Be strict. Use T as the type parameter instead of Partial<T>.

I see, thanks for your explanation!


Implement some more "malware-like" features

I was thinking about OS detection, some basic persistence mechanisms for each OS (nothing fancy) and basic environment information scouting (open ports for example)
But the main question is "do we really want these?"
I'd love to turn this into a R.A.T. framework (with spreading support, screen & webcam capture and all the other good stuff) but it's kinda up to you on where this project is going.

I like the idea of some basic persistence mechanisms and I've had it in my mind for quite some time (well since b3mb4m opened #7 ) so I'd be totally open to a few changes towards that way.
In the contrary I believe that turning the project into a full blown R.A.T. exceeds this projects scope/purpose.

I'll implement something soon.I'm consider bind with some old post-exploitation projects and some hard "malware-like" features, lol.

I'd advise you to wait some time (about a week) because I'm refactoring the whole code to be oo and I'll have plugin integration (you'll be able to add commands).

Just pls, do not  forget oop structure for it,  thanks for you effort :)

I've made a design on my repo (https://github.com/dzervas/RSPET/tree/oo-redesign/Server). See server.dia for the plugin design. The whole plugin is just some info vars for the module (name, version n' stuff) and command variable: commands = {'cmd1': function(Host, arg1, arg2, ....) }
I'm also thinking about implementing some hooks (enc/dec/send/receive/....) but I'm not sure.

@b3mb4m the plugin system is done. The whole refactoring is not ready to be merged (I'm currently writing all the commands as plugins) but you can now start writing the plugin.
For reference see this test plugin (https://github.com/dzervas/RSPET/blob/oo-redesign/Server/Plugins/test.py).
The principal is simple: Via a plugin you can add commands. Either server-side commands or client (host) commands. On both occasions a function inside your class will be executed which takes 2 arguments: host/server & args. args are the arguments given by the user on the command line and the host or server is the object passed to you (depends if it's client or server command).
From there you can do whatever you want. Things to keep in mind:
example plugin class:
from mount import Plugin
class TheNameDoesNotMatter(Plugin)
do not use _cmds variables
do not use _commands variables in your logic (used to define which command executes which function)
The merge is coming soon! :D
Happy coding!

Also closing this. Feature was implemented.


Infinitely retrying ERR_CONNECTION_REFUSED without any event triggered

It seems that resumable.js (master) is not handling connection errors right.
If my server is down:

it tries to infinitely retry uploading all chunks
it doesn't trigger any of: fileRetry, fileError, or error

So there is absolutely no way to check for this and stop the upload and display an error message. It just goes on without anything visible trying to make thousands of requests.

Yes, absolutely right -- or rather it's a consequence of maxChunkRetries being set to undefined by default, which in effect means that there's never an error occuring/registering. I've changed the default value to 100 to avoid this case.

But still, shouldn't fileRetry-s be fired?

They should -- and from what I can see they are?

In the master version from which I opened the ticket there were not fired.


Missing option to set LOCALIZE_LOCAL_STORAGE value

It would be nice to have an option to set value for localStorage key.

Noted. I will try to add this as an configuration.


fix(Selectize): Input box is not hidden when selected data is 0 (as n…

…umber)
Closes #1304

Wouldn't it be better to check $select.selected !== undefined && $select.selected !== null?

@user378230, i think you are right. Maybe it is even better to use the isEmpty function?

Yes, good spot!

@user378230  okay will change it later today.

@user378230, changed the code as discussed in the comments above.


Automate pushing rendered documentation

In a similar way that terra documentation was handled, we should set up the CI and the project so documentation ends up being pushed to qiskit.org. Ideally:

allow keeping both the "stable" documentation (the one relevant to published packages) and the "master" (the one for more bleeding edge users) available (and maybe older versions too?).
for chapters where the main content is rendered from notebooks, automate their conversion.

@diego-plan9 and @abdonrd I'm fine if we start doing this now. Each time this repo is updated the doc pushes from docs to qiskit.org/documentation

Sounds good!

After #72, the script for deploying and the travis integration is in place, albeit currently is set to push to a fake directory (and thus not reaching the landing site yet). Next steps are:

final tests and deploying the first version of the new documentation
add support for handling both master and stable documentation versions

Closing for tracking the remaining issue at #80.


Q: Shellcheck Contributions?

If I ran shellcheck on the script and sent a PR with fixes would it be welcomed? I know shellcheck has a lot of opinions, some with good reason, e.g. this:
  local startup_time=$(get_startup_time)
  if [ "$startup_time" == "0 0:0:0" ]; then
    echo '  Auto startup time is not set yet.'
  else
    echo "  Auto startup time is currently set to \"$startup_time\""
  fi

Would probably turn into something like this:
	local startup_time
	startup_time=$(get_startup_time)
	if [ "${startup_time}" == "0 0:0:0" ]; then
		echo '  Auto startup time is not set yet.'
	else
		echo "  Auto startup time is currently set to \"${startup_time}\""
	fi

@uugear I see you closed this as "not planned" but this wasn't a feature request, I was offering my own time and wanted to know if spending my own time to improve the repo would be welcomed. Was this an automated closure?


Move statics so that they are served under datatracker.ietf.org

We had moved our statics to www.ietf.org while it was behind cloudflare and the datatracker was not. It will simplify things (and maybe help older browsers behave better) to move them back now that the datatracker is behind cloudflare.

Assets built by Vite.js need to have their base path set in dev/deploy/build.sh
The --base value is currently set to https://www.ietf.org/lib/dt/$PKG_VERSION/ where $PKG_VERSION is the build version. This flag should be removed completely if the assets are served from the same host as the website.


[BUG]  Distributed tracing template of grafana issues

Search before asking

[X] I had searched in the issues and found no similar feature requirement.

DeepFlow Component
Grafana Dashbaord
What you expected to happen
1、Request List panel of distributed-tracing-cloud template  data links configurations error, as show below.

2、Click once on request List panel of distributed-tracing template data, the data of the distributed tracing panel will jump twice.
How to reproduce
No response
DeepFlow version
$ kubectl exec -it -n deepflow deploy/deepflow-server -- deepflow-server -v
Name: deepflow-server community edition
Branch: v6.2
CommitID: e77a530824268c647f09860778b81d68fa3c79b9
RevCount: 8293
Compiler: go version go1.18.10 linux/amd64
CompileTime: 2023-06-06 02:43:06
$ kubectl exec -it -n deepflow ds/deepflow-agent -- deepflow-agent -v
Name: deepflow-agent community edition
Branch: v<IP_ADDRESS>
CommitId: 3d888cab7e15db5d4f5a51eacf7703acc60ff7a9
RevCount: 8265
Compiler: rustc 1.69.0 (84c898d65 2023-04-16)
CompileTime: 2023-05-18 01:56:26

grafana image version:
registry.cn-beijing.aliyuncs.com/deepflow-ce/grafana:9.5.2

DeepFlow agent list
No response
Kubernetes CNI
No response
Operation-System/Kernel version
No response
Anything else
No response
Are you willing to submit a PR?

[ ] Yes I am willing to submit a PR!

Code of Conduct

[X] I agree to follow this project's Code of Conduct

fix by: https://github.com/deepflowio/deepflow-dashboards/pull/126


Setup stuff

@sgillies this could prob use some improvement, but doing some basic benchmarking shows that it is def much faster than non multiprocessed.

Need to spend a little more time on docs, but merging now to publish v0.0.1


Typos in doc /doc/dev/tests.md

Fixes #32489
Description
Removed Typos and linting errors in doc /doc/dev/tests.md
All SDK Contribution checklist:

[x] The pull request does not introduce [breaking changes]
[x] CHANGELOG is updated for new features, bug fixes or other significant changes.
[x] I have read the contribution guidelines.

General Guidelines and Best Practices

[x] Title of the pull request is clear and informative.
[x] There are a small number of commits, each of which has an informative message. This means that previously merged commits do not appear in the history of the PR. For more information on cleaning up the commits in your PR, see this page.

Testing Guidelines

[x] Pull request includes test coverage for the included changes.

@microsoft-github-policy-service agree

@microsoft-github-policy-service agree

/check-enforcer override

Thanks for your contribution @shubhusion! All looks good so I will merge. :)


Integration test decryption of data

Type of change

Enhancement / new feature

Description
We must always be able to decode encrypted records written to kafka in the past (as long as we have access to the KEK that encrypted the EDEK). This test proves that given some encrypted binary data in a proxied Kafka cluster, we can decrypt it. Starting from binary is not user-friendly but it gives us strong evidence that we have not broken decryption.
In future this would expand to prove we can decrypt binary data for new encryption versions and ciphers along with checking header and key decryption when we add those features.
Contributes to #992
Checklist
Please go through this checklist and make sure all applicable tasks have been done

[ ] Write tests
[ ] Make sure all tests pass
[ ] Review performance test results. Ensure that any degradations to performance numbers are understood and justified.
[ ] Make sure all Sonarcloud warnings are addressed or are justifiably ignored.
[ ] Update documentation
[ ] Reference relevant issue(s) and close them after merging
[ ] For user facing changes, update CHANGELOG.md (remember to include changes affecting the API of the test artefacts too).

Thanks @robobario, the approach looks good to me.
One question - do we consider it good enough to test against the simple test KMS implementation?   I think we actually what to test against all KMS implementations.
I'm wondering if this IT should be using the TestKmsFacade.  It would mean that TestKekManager would need to expose function to load a serialised key into the KMS.   I guess in terms of Vault, that'd use https://developer.hashicorp.com/vault/api-docs/secret/transit#import-key.   I haven't tested any of these ideas, of course.
Curious to hear the others chime in.

I think we actually what to test against all KMS implementations.

Yes it would give a little more confidence that we can import a known key, showing switching to a new vault instance is possible.
But I'd be keen to get this merged as-is and add the Vault delegate test separately, I think this test is adding enough value checking that known bytes in upstream Kafka can be decrypted with an in-memory key.

But I'd be keen to get this merged as-is and add the Vault delegate test separately,

Let record an issue for it so we don't forget.


Update CHANGELOG.md heading

Add date of metadata changes.

In this case we can do a direct PR from development to main, so I was planning that, but I can go the other way if desired!

I don't think we want to put in the date yet. I think we want to file a PR from development -> main with the placeholder in it, and then update the date when it hits prod and we're ready to merge.


[HOLD] When using the Android app, swiping right multiple times leads to landing on the left side page.

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Action Performed:

Open "chats".
Swipe right to enter any chat.
Swipe multiple times to right which will ultimately land on left side to chats again

Expected Result
The page should not change as there is no page available on right.
Actual Result
On swiping multiple times to the right, the app lands on the left page.
Workaround:
unknown
Platforms:

Which of our officially supported platforms is this issue occurring on?

[x] Android / native
[ ] Android / Chrome
[ ] iOS / native
[ ] iOS / Safari
[ ] MacOS / Chrome / Safari
[ ] MacOS / Desktop

Version Number:
Reproducible in staging?: Needs reproduction
Reproducible in production?: Needs reproduction
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Notes/Photos/Videos: Any additional supporting documentation
https://user-images.githubusercontent.com/43996225/229310443-813826e3-e1af-4c7a-a7fe-563dadb43b5e.mp4
Expensify/Expensify Issue URL:
Issue reported by: @usmantariq96
Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1680349036208719
View all open jobs on GitHub

Triggered auto assignment to @arielgreen (Bug), see https://stackoverflow.com/c/expensify/questions/14418 for more details.

Bug0 Triage Checklist (Main S/O)

[ ] This "bug" occurs on a supported platform (ensure Platforms in OP are ✅)
[ ] This bug is not a duplicate report (check E/App issues and #expensify-bugs)

If it is, comment with a link to the original report, close the issue and add any novel details to the original issue instead

[ ] This bug is reproducible using the reproduction steps in the OP. S/O

If the reproduction steps are clear and you're unable to reproduce the bug, check with the reporter and QA first, then close the issue.
If the reproduction steps aren't clear and you determine the correct steps, please update the OP.

[ ] This issue is filled out as thoroughly and clearly as possible

Pay special attention to the title, results, platforms where the bug occurs, and if the bug happens on staging/production.

[ ] I have reviewed and subscribed to the linked Slack conversation to ensure Slack/Github stay in sync

This can be hold or closed for navigation reboot

Looks like something related to react-navigation may have been mentioned in this issue discussion.
As a reminder, please make sure that all proposals are not workarounds and that any and all attempt to fix the issue holistically have been made before proceeding with a solution. Proposals to change our DeprecatedCustomActions.js files should not be accepted.
Feel free to drop a note in #expensify-open-source with any questions.

@arielgreen Whoops! This issue is 2 days overdue. Let's get this updated quick!

Hold for https://github.com/Expensify/App/issues/11768

not overdue

still on hold.

Reassigning, team change

[Main Tracking] App Navigation Reboot #11768

Updated title and bumped to weekly

on hold

On hold

On hold, tracking issue:
https://github.com/Expensify/App/issues/11768

@usmantariq96 and/or @kavimuru , are you able to test again to see if the bug is still occuring now that https://github.com/Expensify/App/issues/11768 is finished.  Because it's a 'swiping' issue, I think it'll be hard to test without a physical device and I only have browserstack to test on for Android

@mallenexpensify issue seems to be resolved.
Please find below video for your reference.
https://github.com/Expensify/App/assets/127622389/c855ec69-6341-47a6-9189-edf4321a850d
Thanks

Thanks @usmantariq96 , I'm going to close this.  I checked when you reported this.  The linked tracking issue was created 6 months before so there's no bug bounty payment.


Cannot install on pip 10.

Error on the setup.py execution, no module named pip.req:
python setup.py install
.
.
.
Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/tmp/pip-install-y4mf_vgf/firenado/setup.py", line 18, in <module>
        from pip.req import parse_requirements
    ModuleNotFoundError: No module named 'pip.req'

See: https://stackoverflow.com/questions/25192794/no-module-named-pip-req

This is the change on pip that caused the issue: https://github.com/pypa/pip/pull/4700


Bugs: hide and seek

Hi @AbdusSattar-70,
I have checked your repository, there is a bug on your localStorage.js in line 13: it is a syntax error --missing parenthesis and semicolon. please check and should fix it .

Hello @ab-noori, Thanks for investing time in my repo to check Bug. Resolved #37


[WIP] Minor change to trigger CI

Intentional minor change to see the Github CI on Python in action.

Somehow, what really bothers me is that the linter introduced a change.
That is not how linters should work.
if os.isFile(p):
    ...
elif os.isDirectory(p):
   ...
else:
  error

is not a redundant elif. no matter what pylint tells you.


$executeRaw used in a transaction throws: All elements of the array need to be Prisma Client promises.

Bug description
When you include $executeRaw in methods to be run in a transaction
prisma.$transaction([ fn1, fn2, updateFn ])
then an exception is throw:
All elements of the array need to be Prisma Client promises.
How to reproduce
Execute a simple prisma.$executeRaw([myUpdateFunc]) with an executRaw promise
e.g:
    const updateFn = this.prisma.$executeRaw(`__update__statement__`);
    await this.prisma.$transaction([updateFn]);

Expected behavior
Transaction should execute without error
Prisma information
generator client {
  provider        = "prisma-client-js"
  previewFeatures = ["transactionApi"]
}

Environment & setup

- OS: macOs Catalina 10.15.6
- Database: MySql 5.7 (Heroku JawsDB)
- Node.js version: v14.8.0
- Prisma version:
"@prisma/client": "^2.7.0",
"@prisma/cli": "^2.7.0",

I can reproduce the behaviour. I will mark this as a bug for now as we need throw a proper error message if we don't allow this.
Simple reproduction script(works with any schema):
import { PrismaClient } from "@prisma/client";

async function main() {
  const prisma = new PrismaClient();

  const test = prisma.$executeRaw`SELECT 1`;
  const data = await prisma.$transaction([test]);
  console.log(data);
  prisma.$disconnect();
}

main();

Related internal discussion: https://prisma-company.slack.com/archives/CEYCG2MCN/p1600259007031700

We, for now, add better error handling for this situation, as it's a feature to allow this.
Here is the tracking issue for the feature request: https://github.com/prisma/prisma/issues/3828


Create "Workloads" overview page

As suggested by @jseldess in #5075, we should create a new section in the ToC that includes overview pages for each workload that comes with cockroach workload. This could be directly under "Reference", like Sample Applications->MovR, or we could place it under the CLI Overview or cockroach workload pages...

Yahor's presentation on benchmarks: https://docs.google.com/presentation/d/1rermTtcOvhIgHauzmtWivNfCAsIwIWwMUvhQvnAY1gM/edit?ts=5d5451f9#slide=id.g5f1bca0bbd_0_48


CSS auto complete not work

VSCode Version: 1.9
OS Version: Windows 10 Home

Steps to Reproduce:

sometimes css auto complete not work for me

@valeri879 can you provide more details about your setup and extensions?

@bpasero I deleted all extensions and reinstall  code but after 1 day still not working auto complete

Can you paste the code example?
Can you open the developer tools (Help > Toggle Developer Tools) and see if there is anything in the console?

here is screenshot

@aeschli @bpasero Guys help me please, I really like this editor, but without suggestion it's very useless

duplicate of #19840


Users/carson/zwe command ref updates

Your checklist for this pull request
🚨Please review the guidelines for contributing to this repository.

[ ] If the changes in this PR is part of the next future release, make this pull request against the docs-staging branch which will be published at the next release boundary. If the changes in this PR are part of the current release, use the default base branch, master. For more information about branches, see https://github.com/zowe/docs-site/tree/master#understanding-the-doc-branches.

[ ] If this PR relates to GitHub issues in docs-site or other repositories, please list in Description, prefixed with close, fix or resolve keywords.

Description (including links to related git issues)
Updates the zwe server command reference with:

fix formatting for code examples
add an autogenerated nav menu on the left hand side

All of the changed files are generated from zowe-install-packaging using this PR (which will be merged to v2.x/staging): https://github.com/zowe/zowe-install-packaging/pull/2740
Except for sidebars.js - this contains new code to autogenerate the sidebar based on the new doc file directory structure.
Video of the changes running locally: https://user-images.githubusercontent.com/14897740/159085407-c8d8adad-87ec-46c2-83f5-bb5c2a2adeb7.mov
:heart:Thank you!

Some of the generated doc files have strange path references to other files, like [zwe](././zwe) - the ././. This is due to the recursive nature of how the doc files are generated. This could be cleaned up, but since it doesn't affect the generated link, I left it in.


[blog] root path articles not possible

What happened:
Currently hosting articles on the root path doesn't work.
What you expected to happen:
Setup articles within the first level.
blog/some-article vs /some-article.
Anything else we need to know?:
This fails as far as I can see due to list only accepting a subpath such as "blog/" and not "/".
Also seems it does default to the current directory for _index, which is not what one wants as _index assumes all things are fragments not pages so each article will show up as a content file.
Needs a bit of thinking, if that is something to support. If this is a problem in our current thinking or what else might be doable.

First level pages are a bit of a problem. We can certainly try and see how it's possible without breaking the fragment strategies. I'll get on it.

Awesome. Sounds like a challenge :P


When I learn the Tutorial: KnowRob basics, the command " rosrun rosprolog rosprolog knowrob_common“ will be failed.

I have updated the KnowRob basics wiki page,
please let me know if there still are problems.


Unexpected keyword argument 'base_api'

I'm currently attempting to run a project locally that utilizes a  VLLM OpenAI compatible instance, but I've encountered a stumbling block. Whenever I try to initiate the project, I'm met with the following error message:
"TypeError: init() got an unexpected keyword argument 'azure_endpoint'".
The code:
    lida = Manager(text_gen=llm(provider="openai", api_base="http://<IP_ADDRESS>:8000/v1", api_key="EMPTY", models=model_details))

Had the same issue trying to use HF Pro with OpenAI API for Llama 3.1.
Fix it by:
Open site-packages/llmx/generators/text/openai_textgen.py and in OpenAITextGenerator add base_url to init and self.client_args.  If needed, update the api.key default also here.  Under generate -> oai_config, comment out top_p: config.top_p.
Save and the OpenAI api should work with other base_urls now (HF Pro, Ollama, etc).


Fix ElasticDragDismissFrameLayout bump on fast scroll

As described in issue #185 and in this video, this
widget behave really weirdly when the scroll is performed
quickly, like a beginning of a fling gesture.
This is due to the 'returning' animation made in onStopNestedScroll.
Indeed, this method is called by the framework when ACTION_DOWN is
performed as a 'defensive cleanup for new gestures'.
This commit fixes it by retrieving the last actionEvent from
onInterceptTouchEvent, and perform the animation only if the last
actionEvent is not a ACTION_DOWN event.
Closes #185

Sorry for the slow response here but thanks for this fix!


Player doesn't work using Chrome on iPad OS

Expected behaviour
I should be able to play the video using the Plyr player
Actual behaviour
I can't play the video
Steps to reproduce
Using Plyr with youtube as provider on iPad
Environment

Browser: Google Chrome
Version: 80.0.3987.95
Operating System: iPad OS
Version: 13.4

Player also fails on https://plyr.io/#youtube in chrome. Also, more videos are not clickable.

Player also fails on https://plyr.io/#youtube in chrome. Also, more videos are not clickable.

It works fine on Chrome. The other videos are injected by YouTube. Anyway, this issue is about iPad OS.

Ah, sorry.
Still weird tho. It does not work on Android and Desktop chrome on my side..

This is about Chrome USING iPad OS
Not an issue about iPad OS because it’s working on Safari.

OK. I meant the environment is iPad OS. He’s referring to a desktop OS and piggybacking this issue.

Yeah ok


Generate dated versions

Repurpose the livecd generation code (insert commit)
Use this to generate kernel and other files with version, as well as .ipxe file
Link from latest.ipxe
Change initrd to be variable that can be replaced to support initrd.magic

Also create script that can verify these files


Add option to keep MenuAnchor open after MenuItem tap

This adds a ~keepMenuOpen~ closeOnActivate parameter to the MenuItemButton, RadioMenuButton and CheckboxMenuButton. This allows for more customisation including:

closing the menu after a delay has been specified
keeping the menu open until the user clicks outside the menu

Video showcasing the new features:
https://user-images.githubusercontent.com/73116038/228662171-3c9e66c7-410c-41de-b4a9-b3441a1834c5.mp4

Showcase code:
import 'package:flutter/material.dart';

void main() {
  runApp(const MyApp());
}

class MyApp extends StatefulWidget {
  const MyApp({Key? key}) : super(key: key);

  @override
  State<MyApp> createState() => _MyAppState();
}

class _MyAppState extends State<MyApp> {
  MenuController controller = MenuController();
  int? radioValue;
  List<bool?> checkboxValue = [false, false, false];

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        body: Align(
          alignment: Alignment.topCenter,
          child: MenuAnchor(
            controller: controller,
            menuChildren: [
              MenuItemButton(
                onPressed: () {},
                child: const Text("Button 1"),
              ),
              MenuItemButton(
                onPressed: () {
                  setState(() {
                    Future.delayed(const Duration(seconds: 1), () {
                      controller.close();
                    });
                  });
                },
                keepMenuOpen: true,
                child: const Text("Button 2"),
              ),
              MenuItemButton(
                onPressed: () {},
                keepMenuOpen: true,
                child: const Text("Button 3"),
              ),
              RadioMenuButton(
                value: 0,
                groupValue: radioValue,
                onChanged: (int? value) {
                  setState(() {
                    radioValue = value;
                  });
                },
                toggleable: true,
                child: const Text("Radio Button 1"),
              ),
              RadioMenuButton(
                value: 1,
                groupValue: radioValue,
                onChanged: (int? value) {
                  setState(() {
                    radioValue = value;
                    Future.delayed(const Duration(seconds: 1), () {
                      controller.close();
                    });
                  });
                },
                keepMenuOpen: true,
                toggleable: true,
                child: const Text("Radio Button 2"),
              ),
              RadioMenuButton(
                value: 2,
                groupValue: radioValue,
                onChanged: (int? value) {
                  setState(() {
                    radioValue = value;
                  });
                },
                keepMenuOpen: true,
                toggleable: true,
                child: const Text("Radio Button 3"),
              ),
              CheckboxMenuButton(
                value: checkboxValue[0],
                onChanged: (bool? value) {
                  setState(() {
                    checkboxValue[0] = value;
                  });
                },
                child: const Text("Checkbox Button 1"),
              ),
              CheckboxMenuButton(
                value: checkboxValue[1],
                onChanged: (bool? value) {
                  setState(() {
                    checkboxValue[1] = value;
                    Future.delayed(const Duration(seconds: 1), () {
                      controller.close();
                    });
                  });
                },
                keepMenuOpen: true,
                child: const Text("Checkbox Button 2"),
              ),
              CheckboxMenuButton(
                value: checkboxValue[2],
                onChanged: (bool? value) {
                  setState(() {
                    checkboxValue[2] = value;
                  });
                },
                keepMenuOpen: true,
                child: const Text("Checkbox Button 3"),
              ),
            ],
            builder: (context, controller, child) {
              return FilledButton(
                onPressed: () {
                  setState(() {
                    if (controller.isOpen) {
                      controller.close();
                    } else {
                      controller.open();
                    }
                  });
                },
                child: const Text("Tap me"),
              );
            },
          ),
        ),
      ),
    );
  }
}

@gspencergoog I haven't added tests yet, just wanted to get some feedback on the current implementation :)
Fixes #123655

Okay, I can see why you might want that. The UX still seems a little weird, especially if you're using keyboard traversal (accessibility), since activating the item doesn't close the menu, but I suppose you could make them hit ESC to close the menu.
As for the name, why not closeOnActivate, and have it default to true?

Okay, I can see why you might want that. The UX still seems a little weird, especially if you're using keyboard traversal (accessibility), since activating the item doesn't close the menu, but I suppose you could make them hit ESC to close the menu.

Awesome :)

As for the name, why not closeOnActivate, and have it default to true?

I remember reading/hearing somewhere that Flutter prefers defaults to have a false value. Though If closeOnActivate works for you, sgtm.

I remember reading/hearing somewhere that Flutter prefers defaults to have a false value. Though If closeOnActivate works for you, sgtm.

You're probably thinking of this: https://github.com/flutter/flutter/wiki/Style-guide-for-Flutter-repo#avoid-double-negatives-in-apis
So that would only apply if you're trying to default to false on something called noCloseOnActivate.

@gspencergoog @HansMuller @TahaTesser Sorry for the various ping but this PR is also ready for review :)


Container not showing up for calibration

If the only function applied to a container in the entire protocol is move_to, it will not show up for calibrations in the app.

Ping @btmorr and @Laura-Danielle: this bug is still present in v3 of the API. The following protocol results in no pipettes and no labware being reported to the app:
from opentrons import labware, instruments

trough = labware.load('trough-12row', '3', 'trough')
plate = labware.load('96-PCR-flat', '1', 'plate')
p200rack = labware.load('tiprack-200ul', '2', 'tiprack')

p200 = instruments.P300_Single(mount="left", tip_racks=[p200rack])

p200.move_to(p200rack)
p200.move_to(trough)
p200.move_to(plate)

@umbhau this is actually a purposeful design, but I personally think it should be reconsidered. The problem with this is that changing this behavior would break some existing protocols that have been written to leverage the existing design. I am in favor of making it such that any labware that is loaded is available for calibration, but this is something that the product team should weigh in on.

Hey @btmorr, I'm in favor of making all labware available as well, but would like to run through the original intended benefits of the current design (definitely before my time...sure I'm missing something).
Should also consider any unintended side effects with stacked placeables, i.e. modules.

personally I'm hoping they reconsider it because my lab can't run any protocols because they all result in "running out of tips" since the app won't load any tipracks we don't call directly. This would probably be fine though if they would just fix the bug that makes calling a specific tiprack erase that tiprack's calibration data.

@arachnologist sorry but I completely missed you comment in this thread. Can you please explain what you mean by:

the bug that makes calling a specific tiprack erase that tiprack's calibration data

We're unaware of any such bug, so if you've observed something weird I'd love to get it ticketed so we can address it


castor-core 3.12 side by side applications use the same database

Despite of their respective configuration files, containing two different connectionURI, both applications, using castor-core 3.12, write and read in the same database.
The mongo database is lodex, and not the one given in app1 and app2:
app1.json:
{
   "id": "app1",
   "connectionURI": "mongodb://localhost:27017/app1",
   "collectionName": "app1"
}

app2.json:
{
   "id": "app2",
   "connectionURI": "mongodb://localhost:27017/app2",
   "collectionName": "app2"
}

But, there is no mongo database called app1, nor app2.
> use lodex
switched to db lodex
> show collections
app1
app2
hotfolder
px_index
system.indexes
t2
t3
>

Both applications use the same data.
When the data of one is modified, it is visible in the other one (perhaps because the px_index points to the same collection).
The lodex collection used is the name of the command used to launch the application, as visible in starter.js.
Possibly a trouble with configuration?

That was not the case with the same applications using<EMAIL_ADDRESS>


options.namedExport not being honored with core api?

First of all, amazing project! Thank you for creating this!
🐛 Bug Report
@svgr/core does not appear to be honoring namedExport in the latest release, or even honoring the default value. perhaps I am mistaken as to how the core API works compared to, say, the webpack loader by default.
I'm using the very useful and simple esbuild-plugin-svgr , and patched it to do this, just to illustrate the issue:
module.exports = (options = {}) => ({
    name: 'svgr',
    setup(build) {
        const svgr = require('@svgr/core').default;
        const fs = require('fs');

        build.onLoad({ filter: /\.svg$/ }, async (args) => {
            const svg = await fs.promises.readFile(args.path, 'utf8');
            const contents = await svgr(svg, { ...options });

            const appendedContents = `${contents}\nexport const ${options.namedExport || 'ReactComponent'} = SvgComponent;`
            return {
                contents: appendedContents,
                loader: 'jsx',
            };
        });
    },
});

for context, here I'm providing the options.namedExport to esbuild
(previously, as you can see, the plugin just returns the resultant contents directly.)
I attempted to debug the svgr babel transform for a bit, but couldn't find where opts.namedExport was being ignored or why the named export wasn't even being appended at all, and couldn't fathom in time what previousExport was about besides maybe preventing duplicates? I can take a deeper look next week!
Perhaps the svgr/core module doesn't return a named export by default, even if `namedExport' is provided, and there's another config I've overlooked? Will look at how the loader works.
The oddest part is that I'm using the webpack module and the core module side by side (the former for storybook), same versions of svgr using resolutions, and the webpack module is still adding the default namedExport value of ReactComponent, whereas this transparent esbuild plugin using core directly is not.
To Reproduce
const contents = await svgr(svgString, { namedExport: 'MyNamedExport' });
console.log(contents.includes('MyNamedExport')) // false

const contents = await svgr(svgString);
console.log(contents.includes('ReactComponent')) // false

Expected behavior
const contents = await svgr(svgString, { namedExport: 'MyNamedExport' });
console.log(contents.includes('MyNamedExport')) // true

const contents = await svgr(svgString);
console.log(contents.includes('ReactComponent')) // true

Link to repl or repo (highly encouraged)

Will add soon!

Please provide a minimal repository on GitHub.
Issues without a reproduction link are likely to stall.
Run npx envinfo --system --binaries --npmPackages @svgr/core,@svgr/cli,@svgr/webpack,@svgr/rollup --markdown --clipboard
Paste the results here:

#584 seems to fix it.


Feat/merkle library

Implements a space efficient merkle tree data structure and merkle proof functions as stand alone contracts which will be incorporated into the fastBridgeReceiver and fastBridgeSender.
Contrary to the name of the branch, the merkle tree is not actually implemented in a library.
On rollups, there is no contract size limit, and duplicating the merkle tree data structure and merkle proof functions directly into the fast bridge will save gas.

On L1, incorporating the merkle proof functions directly into the fast bridge receiver is a significant gas saving (maybe 3k gas per message).
On L2, incorporating the merkle tree data structure into the fast bridge sender is a modest gas savings. Discarding the L1 fixed transaction cost and L1 calldata cost from L2 transactions, insertions with a merkle tree library cost 0.000000251911548938 eth versus  0.00000013056669626 eth when the merkle tree data structure is directly implemented in the fast bridge contract. This is a significant relative gas savings, but modest overall (saves fractions of pennies which can add up over time).

The leaves of the merkle tree are hashed with a different hash function (sha256) than the interior leaves to prevent a so-called '2nd pre-image attack'
https://flawed.net.nz/2018/02/21/attacking-merkle-trees-with-a-second-preimage-attack/

Required to resolve #54


upgrade firefox.rb

Looks good, thanks! :+1:

Why we changed the version from latest to a specific version?
Because Firefox can upgrade automatically, the latest version made me no worried about the upgrade.
But the specific version made me upgrade Firefox manually. It means every time Firefox cask upgraded, the Firefox get out of control of brew-cask. When I run brew cask list firefox then I get Warning: firefox is not installed

run brew cask update and brew cask install firefox without unistall

OK, I run brew cask install firefox and get brew cask list firefox works. but when I run ls /opt/homebrew-cask/Caskroom/firefox I got two items: 36.0.1 and latest
For now, every time Firefox upgrade (and cask upgrade), I have to reinstall it even Firefox can upgrade automatically.
I prefer latest to 36.0.1. I'll send a pull request to change to from 36.0.1 to latest if there's no good reason.

No, you don’t have to reinstall it. Just let Firefox do it on its own. Why does the name of the directory matter to you?
There is a good reason to have it versioned: checking the integrity of the download.

@vitorgalvao the integrity check is a good reason. I can't find a better solution.
I think the name of the directory matters. When Firefox version upgrades, brew cask info firefox will tell me that Not installed.
I thought that the version should be :latest when the App can upgrade by itself, for example google-chrome, skype, evernote, teamviewer and so on. How do you think about these casks?

I thought that the version should be :latest when the App can upgrade by itself

No, it has absolutely nothing to do with that. It is only a consequence of the url being versioned (changing with each update) or not.

OK, it's my misunderstanding.
For google-chrome, skype, evernote, teamviewer and firefoxdeveloperedition, they are using latest version. Will they be changed to specific version?
For Not installed issue, do you think it's OK?

Will they be changed to specific version?

It depends if such a url exists, but that should happen closer to when update is implemented.

For Not installed issue, do you think it's OK?

Yes, those other issues should also be fixed.


Develop

Develop branch has been ahead of the main branch for a while so perhaps it is time to update the main branch and bring in the various improvements @makeclean and @DanShort12 have made?
This should also update the main pip install which could be handy for users.
The PR would bring the improvments to the main branch:

improved cmake
improved openmc connectivity
fortran bindings

These tests are great Dan, really nice work

Thanks @Shimwell - apologies I've been rather sidetracked with other things recently so haven't been able to give this package much attention. I agree it makes sense to get things merged in and I'd certainly be interested to see the automated publish in action!

Hi @Shimwell - I suspect merging this will help with a few things as the version on pip will now be quite a way behind the code (and probably the version of OpenMC).


kvstore test failures

Description
test_kvstore.py::test_aggregator/test_sparse_aggregator segfault
http://jenkins.mxnet-ci.amazon-ml.com/blue/organizations/jenkins/mxnet-validation%2Fcentos-cpu/detail/PR-18025/30/pipeline#step-191-log-1085
http://jenkins.mxnet-ci.amazon-ml.com/blue/organizations/jenkins/mxnet-validation%2Fcentos-cpu/detail/PR-18025/44/pipeline#step-263-log-1091
dist_device_sync_kvstore.py::test_sync_push_pull
http://jenkins.mxnet-ci.amazon-ml.com/blue/organizations/jenkins/mxnet-validation%2Funix-gpu/detail/PR-18025/57/pipeline#step-760-log-1665

and dist-kvstore tests timed out http://jenkins.mxnet-ci.amazon-ml.com/blue/organizations/jenkins/mxnet-validation%2Funix-gpu/detail/PR-18025/46/pipeline/

related https://github.com/apache/incubator-mxnet/issues/17829

test_distributed_training-gpu.sh hangs.
http://jenkins.mxnet-ci.amazon-ml.com/blue/organizations/jenkins/mxnet-validation%2Funix-gpu/detail/PR-18025/58/pipeline/426


Score rank is hidden

the score rank wont show up

the score rank wont show up

Did you turn on "Advanced HUD" in the default Beat Saber settings? That did the trick for me.


Export with extended format breaks the page

If you enable the extended format on export pages, it does not modify any column width, but adds a new column with the simulator date. This breaks the whole page:
A4 example:

A5 example:

Wow... ok, will check it

looks like I lost some small but very important part of the code when I was updating pdf lib for export. The bug was introduced in v2.34.0. Going through the test and will release a new version soon


Fixes #404 - Recursive null checks

Do we need to be able to validate nulls at arbitrary depths? If so, would it make sense to have a test that generates data with 3rd, 4th, 5th level nulls? AFAIK, it seems like FHIR structures can get pretty nested, right?

Do we need to be able to validate nulls at arbitrary depths?

Yes, null is never valid in a FHIR resource.
I can add some more tests.  Some resource types can have arbitrary nesting, such as Questionnaire.item[0].item[0].item[0]...

The CodeQL warning is about how the value of resource could be a string or an array, which we properly check for above in the call stack.
The Codacy warning is stylistic, about object vs Record<string, unknown>, which paradoxically conflicts with the CodeQL warning.


Private Key Parsing

Implement parsing private key from PEM representation, e.g. from this input to an object in Signum.
-----BEGIN PRIVATE KEY-----
MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQggG4M6PesxC5/vIZz
YyXVTdNW3HgeXcdzvBes+G5cQHqhRANCAAT2M7CJBzjFcs2/GAb89tIRyB9aB8gk
Pj6QmWB94GzMT8bp/K9ivMAciGZ1uG0KMYpyrbGOGXQ7J7uXXst8Rd/l
-----END PRIVATE KEY-----

@iaik-jheher just to double-check: that's a new key, works and behaves as the ephemeral key, only it's not generated, but loaded from external data. I smell boilerplate code from the future

Yes, sounds about right. Signer.ForEncodedPrivateKey?

Ideally we'd want data classes for encoded private keys though...

I would really need this for verification of samples from specs. Key is defined in PKCS#1 or PKCS#8 format, e.g.:
-----BEGIN EC PRIVATE KEY----- (PKCS#1)
MHcCAQEEIGwHU3LKj2fCxiUWB76jCnxIOJ2KAgYKbYGays8h/g+goAoGCCqGSM49
AwEHoUQDQgAET+Zr8vrF+kdr1zpjK3ufUv1fd7DS0s8Yf8/Ny3Hb4I57Sz20Zabp
brDmqFB7AmrWhdejOPHn9+Ln51i42bCdGQ==
-----END EC PRIVATE KEY-----

and
-----BEGIN PRIVATE KEY----- (PKCS#8)
MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgbAdTcsqPZ8LGJRYH
vqMKfEg4nYoCBgptgZrKzyH+D6ChRANCAARP5mvy+sX6R2vXOmMre59S/V93sNLS
zxh/z83LcdvgjntLPbRlpulusOaoUHsCataF16M48ef34ufnWLjZsJ0Z
-----END PRIVATE KEY-----

on it

started in #202


fixes #125

Thinking further on this, maybe we can pass this query-string to the client by default?

@Yomguithereal Any thoughts on this? I'd like to get it working some way or another soonish.

What if you use a webpack config with the hmr endpoint? Does it work?

It's been working fine for me, all i'm doing is putting the proper url into the client script. I think this could actually be set to the kotatsu server url:port and there would be no need for a flag.

Yes. I guess this would be less cumbersome than a flag.

Sorry @SeeThruHead. I will close this as I don't remember what it was trying to solve nor if it is still relevant. Feel free to reopen the PR if this should still be fixed.


adding asAuditor() to megabank Sample application doesn't produce Audit

adding asAuditor() to megabank Sample application doesn't produce Audit
        RuleBook<Double> homeLoanRateRuleBook =
                RuleBookBuilder.create(HomeLoanRateRuleBook.class)
                    .withResultType(Double.class)
                    .withDefaultResult(4.5)
                    .asAuditor()
                    .build();

Hmm... I'll look into this and update the example to show auditing with Megabank example.

Ok, I checked out the example. And you're right, it was never setup for auditing. A RuleBookAuditor is a decorator for a RuleBook that allows AuditableRules to be added. Since HomeLoadRuleBook is not a RuleBookAuditor, when it adds rules, they cannot be tracked for Auditing. In addition, there isn't currently any good way to audit rules created using the defineRules() method. I guess I didn't really realize that until you brought it up. So, thanks for opening up this issue.

I just pushed a small update to 0.11-SNAPSHOT. The code below shows how the MegaBank example that defines the rules in the defineRules method can audit its rule execution.
public class HomeLoanRateRuleBook extends RuleBookAuditor<Double> {

  public HomeLoanRateRuleBook() {
    this(new CoRRuleBook<>());
  }

  public HomeLoanRateRuleBook(RuleBook<Double> ruleBook) {
    super(ruleBook);
  }

  @Override
  public void defineRules() {
    //credit score under 600 gets a 4x rate increase
    addRule(RuleBuilder.create().withResultType(Double.class).withName("Under 600 FICO")
      .when(facts -> facts.getIntVal("Credit Score") < 600)
      .then((facts, result) -> result.setValue(result.getValue() * 4))
      .stop()
      .build());

    //credit score between 600 and 700 pays a 1 point increase
    addRule(RuleBuilder.create().withResultType(Double.class).withName("Between 600 and 700 FICO")
      .when(facts -> facts.getIntVal("Credit Score") < 700)
      .then((facts, result) -> result.setValue(result.getValue() + 1))
      .build());

    //credit score is 700 and they have at least $25,000 cash on hand
    addRule(RuleBuilder.create().withResultType(Double.class).withName("Over 700 FICO with 25000")
      .when(facts ->
        facts.getIntVal("Credit Score") >= 700 &&
        facts.getDblVal("Cash on Hand") >= 25000)
      .then((facts, result) -> result.setValue(result.getValue() - 0.25))
      .build());

    //first time home buyers get 20% off their rate (except if they have a creditScore < 600)
    addRule(RuleBuilder.create().withFactType(Boolean.class).withResultType(Double.class).withName("First time home buyer")
      .when(facts -> facts.getOne())
      .then((facts, result) -> result.setValue(result.getValue() * 0.80))
      .build());
  }
}

public static void main(String[] args) {
RuleBook homeLoanRateRuleBook = RuleBookBuilder.create(HomeLoanRateRuleBook.class).withResultType(Double.class)
.withDefaultResult(4.5)
.build();
NameValueReferableMap facts = new FactMap();
facts.setValue("Credit Score", 650);
facts.setValue("Cash on Hand", 20000);
facts.setValue("First Time Homebuyer", true);

homeLoanRateRuleBook.run(facts);

homeLoanRateRuleBook.getResult().ifPresent(result -> System.out.println("Applicant qualified for the following rate: " + result));

Auditor auditor = (Auditor)homeLoanRateRuleBook;
System.out.println("Under 600 FICO: " + auditor.getRuleStatus("Under 600 FICO"));
System.out.println("Between 600 and 700 FICO: " + auditor.getRuleStatus("Between 600 and 700 FICO"));
System.out.println("Over 700 FICO with 25000: " + auditor.getRuleStatus("Over 700 FICO with 25000"));
System.out.println("Over 700 FICO with 25000: " + auditor.getRuleStatus("First time home buyer"));

}

Something to note is that when using the RuleBuilder to build rules, withName() makes the Rule auditable. So, in the context of a RuleBookAuditor, any Rule created using withName() will be audited.

Closing due to inactivity


Code cleanup. Removed not used namespaces/using

In the code was a lot of not used namespaces. It's minor changes in the code without any kind backward compatibility issues.

Agreement is signed.
In fact it's not stylistics in my particulate case. We are experimenting with api now and build of the project was integrated in Continuous Integration process. One step of the build is static code analysis. Based on our default rule set usings/namespaces are must be used or not presented in the code. There were 1000+ warning from this and we want to fix and observe other potential issues without such a noise.
As I see now - building CI process is not compatible with our default rules and it's easy just save the code on a disk and don't care about build process because it will take a lot of time.


[Event Requet] Table 246 "Requisition Line" - OnBeforeValidateVendorItemNo

Describe the request
I need to be able to default some custom fields when the value of the field "Vendor Item No." is modified. Therefore, I request the following event:
field(22; "Vendor Item No."; Text[50])
{
Caption = 'Vendor Item No.';
    trigger OnValidate()
    var
        IsHandled: Boolean;
    begin
        IsHandled := false;
        OnBeforeValidateVendorItemNo(Rec, xRec, IsHandled);
        if IsHandled then
            exit;
    end;

}
[IntegrationEvent(false, false)]
local procedure OnBeforeValidateVendorItemNo(var RequisitionLine: Record "Requisition Line"; xRequisitionLine: Record "Requisition Line"; var IsHandled: Boolean);
begin
end;
Additional context
Allows you to change values of other fields when the value of "Vendor Item No." is modified
Internal work item: AB#544697

Hello @Jattzia1978
Why event with IsHandled pattern if you want just to update some additional fields? Why not OnAfterValidate event?

Hi @AleksandricMarko,
You are correct, this would work. I will close the request


Bug: BigInt.toString produces incorrect decimal string for large uint256 numbers

Do you want to request a feature or report a bug?
Bug
What is the current behavior?
Calling BigInt.toString in graph-ts execution context produces an incorrect results for large numbers
If the current behavior is a bug, please provide the steps to reproduce and if possible a minimal demo of the problem.
Given this hex: 0x344435891c9a299443ad1ff6f97829fcf3aff343795f7eb86730d1d0f968cb54, various popular js libraries successfully convert the hex to the following decimal string:<PHONE_NUMBER>5816018536649662874651199072550547213372823297679392888119521495892
In the graph-ts execution context, BigInt.toString should return the same decimal string.
However BigInt.fromByteArray(ByteArray.fromHexString(hex)).toString() returns the following:
38353673751782187045679142956196807757628143702081891553022150933500130575412, which is incorrect.

Hi @JonathanAmenechi thanks for the report - @evaporei one thing that occurs to me is whether the conversion from hex to byte array to bigint will work as illustrated?

Does seem like that may be the case @maoueh - @leoyvens wondering if you have any ideas at a quick glance?

The issue is probably big endian vs little endian, and the result would be correct for BigInt.fromByteArray(ByteArray.fromHexString(hex).reverse()). We should have a nicer way of doing this such as a BigInt.fromHex which assumes the hex string is big endian.

0x344435891c9a299443ad1ff6f97829fcf3aff343795f7eb86730d1d0f968cb54 seems to be encoded in big endian, I'm using our Go tool to decode the hex to decimal (which expects the hex to be big endian) and it works:
to_dec 0x344435891c9a299443ad1ff6f97829fcf3aff343795f7eb86730d1d0f968cb54
23640783215816018536649662874651199072550547213372823297679392888119521495892

Now, I tried adding a unit test in graph-ts code but I realized the big_int_to_string is actually an intrinsics implemented in Rust, so I need to add a unit test in graph-node to see how it looks like.

if you arrived here trying to convert an Address to a BigInt then this is how you can do it:
BigInt.fromUnsignedBytes(
      changetype<ByteArray>(
        ByteArray.fromHexString(
          fooBarAddress.toHexString()
        ).reverse()
      )
    )

Question to me is when is a little endian read of from a Bytes or ByteArray useful when reading data from chain? I don't recall any data being little endian except possibly the serialization of the U256 internal data which is even chunked into u64's, hmmm. Internally the U256 type has read and write functions for big and little endian into slices. Maybe there should just be a BigInt.fromUnsignedBytesBE() as an option. I added a decode_number to do that.


ee log - more subcommands needed

ee log show => same as ee log we have now
ee log reset => run  > log.file on selected files. Special case --slow-log--db will drop all rows from slowlog table in database
ee log zip => will zip selected log files
ee log email --to=A --to=B => will email selected log files to A and B

Added in EasyEngine 3.1.0, Please update your EasyEngine.


Running

Hi there,
Many thanks for developing TITAN and making it public!
This sounds very interesting and I would like to give it a go, but already fail to use the provided test data. Specifically, I'm looking at Run trained TITAN model on data section, which I've translated to:
python3 scripts/flexible_model_eval.py \
    tutorial/data/test_small.csv \
    tutorial/data/tcr_full.csv \
    tutorial/data/epitopes.csv \
    ../TITAN-dataset/trained_model/ \
    bimodal_mca test20230303

I'm unsure about ./TITAN-dataset/trained_model/, which points to the externally provided data (https://ibm.box.com/v/titan-dataset ). But I couldn't find a model in the repo providing the code. Anyway, the above fails with:
RuntimeError: Expected 3D (unbatched) or 4D (batched) input to conv2d, but got input of size: [128, 1, 500, 26, 32]

Would it be possible to expand the documentation sections on to show how to use https://ibm.box.com/v/titan-dataset?
Many thanks,
Andreas

Hi Andreas!
I think the issue might be that you are using the provided trained version of TITAN, which expects the epitopes to be in SMILES format - but you are giving it the epitopes.csv file, which contains the epitopes in amino acids. Try with the epitopes.smi file and it should work. Let me know if you encounter any further problems!
Best,
Anna

Thanks Anna!


Submitter: add reaper process

Summary by CodeRabbit

New Features

Introduced new functions to delete older transactions based on a specified duration and status.
Added a reaper process that periodically cleans up old records from the database.

Bug Fixes

Adjusted the context parameter in the Start method to enhance consistency and reliability.

Tests

Updated tests to verify the new deletion functionality and ensure successful storage and removal of transactions.

@dwasse I know the docs for submitter config are not at all started, but I also think for this PR specifically, it'd be good to add a quick paragraph on reaper to this page
The other thing I'd do is make both reaperInterval and maxRecord age configurable, but default to the values you have


Pagination implemented

Hi Kenny,
Kindly attach screenshots of the pages designed on both large format screen and mobile screen

Check their is a merge conflict


Leaderboard site design

This branch focused on developing the site skeleton of the website. The following layouts were added;

[ ] Add a table to display leaderboard scores.
[ ] Add a form to allow users to submit their scores.

Hi @jonas-45,
While you made a great effort in this project, unfortunately, I cannot proceed to review your code.
Invalid Code Review Request
You do not have a descriptive readme file. Kindly use the template
Your Code Review Request will be marked as invalid in your Dashboard, so please submit a new one once you are ready 🙏
Cheers and Happy coding!👏👏👏
Feel free to leave any questions or comments in the PR thread if something is not 100% clear.
Please, do not open a new Pull Request for re-reviews. You should use the same Pull Request submitted for the first review, either valid or invalid unless it is requested otherwise.

Invalid Code Review Request does not count into the code reviews limit.

Hi @jonas-45,
While you made a great effort in this project, unfortunately, I cannot proceed to review your code.

Invalid Code Review Request
⚠ ⚠ Kindly use Microverse Readme template and make sure all the main sections present in yours and placeholders are replaced with your project and personal data. Please remove all the instructions targeting you. For example: "Describe how a new developer could make use of your project." The only optional section is the FAQ. Please remove the template logo on the top, if you have your own logo you can replace it with this one, otherwise please delete it. This is crucial to have a professional and instructive repository. 👌

Your Code Review Request will be marked as invalid in your Dashboard, so please submit a new one once you are ready 🙏
Cheers and Happy coding!👏👏👏
Feel free to leave any questions or comments in the PR thread if something is not 100% clear.
Please, remember to tag me in your question so I can receive the notification.
Please, do not open a new Pull Request for re-reviews. You should use the same Pull Request submitted for the first review, either valid or invalid unless it is requested otherwise.

Invalid Code Review Request does not count into the code reviews limit.

Hi @jonas-45,
While you made a great effort in this project, I can't review your code.
Invalid Code Review Request
You have submitted a project that does not have descriptive readme documentation. Kindly use this template to update your readme
Your Code Review Request will be marked as invalid in your Dashboard, so please submit a new one once you are ready 🙏
Cheers and Happy coding!👏👏👏
Feel free to leave any questions or comments in the PR thread if something is not 100% clear.
Please, do not open a new Pull Request for re-reviews. You should use the same Pull Request submitted for the first review, either valid or invalid unless it is requested otherwise.

Invalid Code Review Request does not count into the code reviews limit.

So sorry, I did not realize the readme file was not updated and kept sending requests for review. I will work on it right away. Thanks for your patience  @julie-ify, @huseyinbiyik , @DammyShittu

Thanks @Munsa1 for your time and effort in reviewing my work.


Tiny Fix in Docs for SliverFixedExtentList & SliverVariedExtentList

Tiny Fix in Docs for SliverFixedExtentList & SliverVariedExtentList
Fixes #154554
Pre-launch Checklist

[x] I read the Contributor Guide and followed the process outlined there for submitting PRs.
[x] I read the Tree Hygiene wiki page, which explains my responsibilities.
[x] I read and followed the Flutter Style Guide, including Features we expect every widget to implement.
[x] I signed the CLA.
[x] I listed at least one issue that this PR fixes in the description above.
[x] I updated/added relevant documentation (doc comments with ///).
[ ] I added new tests to check the change I am making, or this PR is test-exempt.
[ ] I followed the breaking change policy and added Data Driven Fixes where supported.
[x] All existing and new tests are passing.

If you need help, consider asking for advice on the #hackers-new channel on Discord.

Also, docs-only changes are automatically test-exempt!


Possible self-bootstrapping

As discovered by debugging the routing connection management an intermittent failure (perhaps related to the bootstrap cache file, but a unvalidated guess), occurs for crust 0.4.2, where a single node can bootstrap to itself.
@vinipsmaker 's test does not showcase this issue (so far), which might indicate some bootstrap cache file residue causing it?
 #[test]
    fn examine_self_bootstrapping() {
        let (tx, rx) = ::std::sync::mpsc::channel();
        let mut service = ::crust::Service::new(tx).unwrap();
        service.bootstrap();
        let timeout = ::time::Duration::seconds(5);
        let start = ::time::now();
        let mut result = Err(::std::sync::mpsc::TryRecvError::Empty);
        while ::time::now() < start + timeout && result.is_err() {
            result = rx.try_recv();
            if let Ok(ref ev) = result {
                match *ev {
                    ::crust::Event::OnAccept(ref ep) => {
                        panic!("What the hell? {:?}", ep);
                    },
                    _ => {
                        panic!("aaa {:?}", *ev);
                    },
                }
            }
            ::std::thread::sleep_ms(100);
        }
    }

Yesterdays observations (repeated from issue https://github.com/maidsafe/routing/issues/757) were eg :
$ RUST_LOG=routing=debug ./target/release/examples/key_value_store --node
INFO:routing::routing_node: RoutingNode Client(e61f88..ed1119) listens on [Tcp(V4(<IP_ADDRESS>:5483)), Tcp(V4(<IP_ADDRESS>:5483))]
DEBUG:routing::routing: Started routing run().
DEBUG:routing::routing_node: RoutingNode started running and started bootstrap
DEBUG:routing::routing_node: handle_on_connect: Disconnected adding unknown bootstrap Connection(Tcp V4(<IP_ADDRESS>:55474) -> V4(<IP_ADDRESS>:5483))
DEBUG:routing::routing_core: add_unknown_bootstrap_connection: added Connection(Tcp V4(<IP_ADDRESS>:55474) -> V4(<IP_ADDRESS>:5483))
DEBUG:routing::routing_core: add_unknown_bootstrap_connection: set state Bootstrapped
DEBUG:routing::routing_node: Saying hello I am Client(e61f88..ed1119) on Connection(Tcp V4(<IP_ADDRESS>:55474) -> V4(<IP_ADDRESS>:5483)), confirming None
DEBUG:routing::routing_node: handle_on_accept: Bootstrapped so not accepting Connection(Tcp V4(<IP_ADDRESS>:5483) -> V4(<IP_ADDRESS>:55474)). Dropping
DEBUG:routing::routing_node: Hello, it is Client(e61f88..ed1119) on Connection(Tcp V4(<IP_ADDRESS>:5483) -> V4(<IP_ADDRESS>:55474))
ERROR:routing::routing_core: Failed to add client Client(e61f88..ed1119) as relay connection on Connection(Tcp V4(<IP_ADDRESS>:5483) -> V4(<IP_ADDRESS>:55474)). Dropping.
DEBUG:routing::routing_node: Lost connection on Connection(Tcp V4(<IP_ADDRESS>:55474) -> V4(<IP_ADDRESS>:5483))

I've been thinking about this, but if my theory is correct, there may not be much we can do about this from Crust. Here is one problematic scenario:

We have on PC starting two nodes, one listens on endpoint X, the other one on port 5483. The one listening on 5483 adds X to it's bootstrap list. Then, another time, another node is created and it starts listening on X.port(), it looks into the bootstrap list where X is as well, then it tries to connect to itself. If X was stored in the bootstrap list as <IP_ADDRESS>:PortX, then we could filter it out, but X could be stored in the bootstrap list using an external IP address in which case we wouldn't be able to do much about it (without a per service UUID)

I reproduced this bug under the master branch (and saved the state using the @dirvine's suggested rr tool). Unfortunately, my test case had a panic! under the BootstrapFinished event and I don't know if some event would follow. And the rust-gdb interface isn't helping me much in exploring the environment. Anyway, I noticed a weird utp endpoint in the bootstrap cache even thou "utp_listening_port" attribute is set to null under the config file of the runned test.
I improved the test example and while it was running I've been examining bootstrap sequence in crust to try to find the issue.
If you have any hint (the environment you use) to increase the change of hitting the issue, it'd be helpful.

I thought there was a difference in behaviour between MAC and Linux, but I just realized that I wasn't observing the same behaviour in Linux because there was not enough time (the bootstrap cache list was giant). I assumed the difference in behaviour to be a bug in bootstrap and as the original bug, but it's not.

@benjaminbollen, can you provide your config and cache files for after a failing run?

So on today's meeting we discussed this, and it came up again that this is most likely because the bootstrap cache file contains an endpoint which points to the address we're currently listening on. As a workaround @benjaminbollen suggested that we wouldn't add any loopback addresses nor addresses from our local LAN to the bootstrap cache. This makes sense as we can always find such addresses using beacon and more often than not they would be obsolete very soon.

As a workaround @benjaminbollen suggested that we wouldn't add any loopback addresses nor addresses from our local LAN to the bootstrap cache.

Even if this is a "workaround", I think it should be done anyway. Gonna code the proposed solution.

This makes sense as we can always find such addresses using beacon and more often than not they would be obsolete very soon.

Makes sense.

Closing this issue now that #402 got merged. Reopen if needed.


Release Google.Cloud.Billing.V1 version 3.9.0

Changes in this release:
New features

Added currency field to billing account message (commit 0089a68)

Documentation improvements

Genereal documentation improvements (commit fb61eae)

Created release for Google.Cloud.Billing.V1-3.9.0


Feat(multicut): Multicut tool enhancement: select supervoxels instead of points

This PR enhances the multicut feature. It adds:

The ability to select individual supervoxels when performing a multicut.
Once selected, these supervoxels will turn red or blue, corresponding to their multicut group.
Hovering over a supervoxel will highlight the coordinate in the multicut list, and vice-versa.
Fixes issue #329, where certain annotations in the multicut did not bring up their description box when selected.

Edit: This PR is linked to issue #343

Thanks Nico! Good catch about 3D -- that's important. This is now fixed


Introducing inscriptions-sequence-consensus-hash

Following up on https://github.com/ordinals/ord/issues/2574.
Objective
The primary objective is to create a robust mechanism for ensuring data integrity and consistency across ordinal indexers. This involves introducing a consensus hash built using a Merkle root, derived from blockchain events. This enhancement aims to address the current limitations in the ordinals protocol, particularly in improving provability.
Problem
The current system is lacking of a consensus hash, limiting capabilities in detecting regressions and indexing divergences. To overcome these limitations, we propose the generation of a Merkle root. This root will be derived from specific blockchain events, namely inscription reveals and transfers. By employing cryptographic consensus hashes in the form of a Merkle root, ordinal indexers can enhance their upgrade process, establish verifiable checkpoints, and prevent the publication of inaccurate indexes.
Proposed Protocol
Event Types for Consideration

Inscription Revealed: This event occurs when an inscription's content becomes publicly known.
Inscription Transferred: This event is recorded when the ownership of an inscription changes hands.
Event Processing and Merkle Tree Construction
Events are chronologically sorted based on their on-chain inclusion timestamps.
These sorted events are then structured into a Merkle tree. This tree structure enables efficient and secure verification of the contents.
Generating the Consensus Hash
The Merkle proof, derived from the constructed tree, is combined with the consensus hash of the previous block, and the hash of the current Bitcoin block.
This combination generates the new consensus hash for the current block.
This hash serves as a reliable reference point for validating the integrity and consistency of ordinal indexers' data.

Inscription events
A satoshi being inscribed per the rules of a given sequence, would be augmenting the said sequence:
0        1        2                18               52              72                   74                  82
|--------|--------|-----------------|----------------|---------------|--------------------|-------------------|
 Sequence  Action   Ordinal Number    Inscription ID   Content hash    Output post-reveal  Offset post-reveal

Sequence : Sequence being inscribed - 0x00 if the sequence being indexed is the blessed sequence (which is the only stable sequence to date). We are versioning sequences because rules are changing overtime. Post-Jubilee, this byte will be bumped to 0x01.
Action: inscription = 0x01
Ordinal Number: Ordinal number being inscribed - uint128
Inscription ID: Id of the inscription. Composed of:

Transaction ID - 32 bytes,
Inscription index (intra-transaction) - uint16
Example: 94e524cbdaf19c27491ac6fe22e7884e35f11ee3ba290ddf218efeaf5d5e9bddi0 = 0x94e524cbdaf19c27491ac6fe22e7884e35f11ee3ba290ddf218efeaf5d5e9bdd + 0x0000

Content hash: hash160 of the inscription enveloppe - 20 bytes
Output post-reveal: Outpoint pointing to the satoshi, post reveal - uint16
Offset post-reveal: Outpoint pointing to the satoshi, post reveal - uint64

Transfer events

A satoshi is being transferred:

0        1        2                  36                         80                         124
|--------|--------|-------------------|-------------------------|---------------------------|
 Sequence  Action    Inscription ID      Satpoint pre-transfer      Satpoint post-transfer

Sequence : Sequence being inscribed - 0x00 if the sequence being indexed is the blessed sequence (which is the only stable sequence to date). We are versioning sequences because rules are changing overtime. Post-Jubilee, this byte will be bumped to 0x01.
Action: transfer = 0x02
Ordinal Number: Ordinal number being inscribed - uint128
Inscription ID: Id of the inscription. Composed of:

Transaction ID - 32 bytes,
Inscription index (intra-transaction) - uint16
Example: 94e524cbdaf19c27491ac6fe22e7884e35f11ee3ba290ddf218efeaf5d5e9bddi0 = 0x94e524cbdaf19c27491ac6fe22e7884e35f11ee3ba290ddf218efeaf5d5e9bdd + 0x0000

Satpoint pre-transfer: Satpoint pointing to the inscription id, pre transfer. Composed of:

Transaction ID - 32 bytes,
Output index - uint16
Offset - uint64

Satpoint post-transfer: Satpoint pointing to the inscription id, post transfer. Composed of:

Transaction ID - 32 bytes,
Output index - uint16
Offset - uint64

Outcome
Implementing this protocol will lead to:

Enhanced data provability and integrity within the ordinals ecosystem.
Reduced instances of regression and indexing errors.
Streamlined upgrade processes for ordinal indexers with reliable checkpoints for data validation.

How would the Merkle tree be built exactly?
Just the hash of these events paired up sequentially by the order they occur?

Hello world