Update Web Host to 6.0

Fixes #24890.
Internal Preview.
@Rick-Anderson How should we frame this article for 6.0? I've made minor tweaks to explain that WebApplication is recommended for web apps. Should I go through and update all the code to .NET 6/C# 10, or is this enough? I think it might be odd to show WebHost with a top-level program, if it's not an approach that we recommend now.

@halter73  how do you want to handle updates to WebHost ? Maybe we need a new article on WebApplication?

I think we should add a new entry under "Host" next to the existing "Generic Host" and "Web Host" entries called "WebApplication". The migration doc by itself isn't that helpful to people unfamiliar with the generic host already. I don't want to force people to learn generic host concepts first in order to understand the simplified WebApplication. I do understand not wanting to have 3 host sections with a bunch of duplicate content though.
Long term, could we remove conceptual docs for APIs that aren't officially deprecated? I figure they'd still existing for older versions, but I'm not sure if that would be too confusing. We could always link from the intro to the new doc to the older version of the doc.


Infer on C has degraded since 0.16 (motivating example trivial leak)

Consider:
#include <stdio.h>
int *leaks_data(int x)
{
        int *foo;
        foo = malloc(4);
        if (x > 10) {
                return NULL;
        }
        return foo;
}

We see:
root@8a00df1ee9d2:/# infer run -- gcc -c x.c
Capturing in make/cc mode...
Found 1 source file to analyze in /infer-out
1/1 [################################################################################] 100% 58.463ms

  No issues found

I build this infer from master about 2 weeks back.  We're running x86_64 ubuntu 20.

This leak is not the only issue.  I see lots of false positives in the form:
int f(someStruct *structure)
    foo = malloc(..);
    structure->field = foo;
    foo = NULL;
    return 0;
}

Will try to produce an example

Humorously, I foobarred the example leak and the actual issue is no so trivial to reproduce.  I'll close this and get better examples distilled from the real world cases.


sound effects added

A folder 'sound' added which contains four different sound in .ogg extension.
Sound effects for AI move and gamer move added.
Sound effects for winning and loosing the game added.

@JustA3DObject Required changes done. Please review again.


added test cases for python 2.7 and 3.5 in i386 and 64 bit architecture

Added docker compose for python 2.7 and 3.5 with i386 architecture.

Coverage remained the same at 94.57% when pulling e80655b6f74cdaf1dee04ac8f16fe07bfcf639fd on develop into 00c92bfa6505842466ea18d5d8cc17b39ceb61bc on master.

Coverage increased (+0.02%) to 94.595% when pulling 9f15189e398b326534684cf8b1f7155d12ea1ca4 on develop into 00c92bfa6505842466ea18d5d8cc17b39ceb61bc on master.


Revert "Fix quadratic performance of the ListMerger in specific usage pattern"

Reverts apple/swift#70910
This fails with a 32-bit ABIs.
In file included from swift/stdlib/public/Concurrency/Actor.cpp:26:
swift/include/swift/Basic/HeaderFooterLayout.h:27:16: error: 'padding' declared as an array with a negative size
   27 |   char padding[size];
      |                ^~~~

I suspect that the HeaderFooter TotalSize is larger than FooterSize:
      : HeaderFooterLayout<DefaultActorImplHeader, DefaultActorImplFooter,
                                sizeof(HeapObject) +
                                    sizeof(void *) * NumWords_DefaultActor> {

That's probably because DefaultActorImplHeader + DefaultActorImplFooter (PriorityQueue) is larger than
sizeof(HeapObject) + sizeof(void *) * NumWords_DefaultActor
I suggest revisiting the sizes provided to the layout, and the layout offset computation to ensure there aren't any subtle bugs. static assert may be useful in catching these problems.

@swift-ci smoke test

FYI @nickolas-pohilets we'll have to make sure it works on 32bit before bringing it back.

I confirmed that reverting these commits fixes the 32-bit build.

@atrick, where can I see details of the 32-build failing? Can I reproduce it by cross-compiling on arm64 Mac?
I've tried to use command line args for compiling Actor.cpp from arm64 build and replaced arch to i386, and I could not reproduce the issue:
sizeof(void*) = 4
TotalSize = 56
sizeof(Footer) = 24
alignof(Footer) = 4
sizeof(Header) = 24
maxFooterOffset = 32
footerAlignment = 4
footerOffset = 32
size = 8

I believe the issue is with the combination of a 32-bit target and SWIFT_CONCURRENCY_ENABLE_PRIORITY_ESCALATION, since that makes sizeof(ActiveActorStatus) 16 instead of 8.  StatusStorage is declared with 16-byte alignment in this configuration, so sizeof(Header) is probably 48:
0:  isa
4:  refcount
8:  alignment padding
12: alignment padding
16: StatusStorage
20: StatusStorage
24: StatusStorage
28: StatusStorage
32: isDistributedRemoteActor
36: tail padding
40: tail padding
44: tail padding

That is, the header is already using 10 of the 12 words available in NumWords_DefaultActor, 5 of which are totally empty.  The C++ ABI has an optimization to lay subsequent members in the tail padding of non-POD bases, but I believe Header is POD for those purposes, and it wouldn't be good enough anyway since IIRC we need 6 words in the footer and we'd only get 5.
I think there's a relatively simple fix: you need to move isDistributedRemoteActor prior to StatusStorage in this configuration, which will knock 4 words off Header.  (Alternatively, you could merge isDistributedRemoteActor into the flags stored in the status storage, which there's a longstanding TODO for.) HeaderFooterLayout will need to make sure it doesn't insert any padding when the footer and header combine for the full size.

I can make the changes, but my main struggle is to reproduce the issue and test the changes. Looks like I need swift_concurrency_private.h to build this case, which does not seem to be publicly available.

Hmm, I'm pretty sure I regularly build with the public SDK

I can make the changes, but my main struggle is to reproduce the issue and test the changes. Looks like I need <dispatch/swift_concurrency_private.h> to build this case, which does not seem to be publicly available.

dispatch_lock_t is ultimately just a uint32_t, if you want to hack things up to get the right layout.

I think there's a relatively simple fix: you need to move isDistributedRemoteActor prior to StatusStorage in this configuration, which will knock 4 words off Header. (Alternatively, you could merge isDistributedRemoteActor into the flags stored in the status storage, which there's a longstanding TODO for.) HeaderFooterLayout will need to make sure it doesn't insert any padding when the footer and header combine for the full size.

After moving isDistributedRemoteActor and updating HeaderFooterLayout to handle zero padding, I'm still getting sizeof(DefaultActorImpl) == 64, where 56 bytes are actually used, and the last 8 is just a trailing padding, because entire  DefaultActorImpl gets its alignment of 16 from ActiveActorStatus.
I can loosen static_assert from sizeof(DefaultActorImpl) <= TotalSize to something like this:
class DefaultActorImpl: public HeaderFooterLayout<DefaultActorImplHeader, DefaultActorImplFooter, TotalSize> {
  char bytesPastTheEnd[1];
  ...
};

static_assert(offsetof(DefaultActorImpl, bytesPastTheEnd) <= TotalSize);

Alternatively, you could merge isDistributedRemoteActor into the flags stored in the status storage, which there's a longstanding TODO for.

I don't think it this TODO is about that. IMO, it is about replacing bool with a bit inside a FlagSet<>. Variable isDistributedRemoteActor is immutable, I don't think it makes sense to store it inside ActiveActorStatus which is accessed atomically.


Support for calling

You can make a api for a group conversation chat so we can make something like a music bots and more :D

What is the issue?

Personally I don't feel that adding support for video/audio calls is anywhere on the roadmap for features for this api.  People are free to disagree and if you have a PR or seriously want to try to implement this we can have further discussion.


[Visual Studio Code - Project Manager] Not detecting new repos and repos that have moved

Extension – Visual Studio Code - Project Manager
Author: @MarkusLanger
Description
Project Manager is unable to find newly cloned and recently moved repositories.
Steps To Reproduce

Clone a new repo or move an existing repo
Use Project Manager to search for the repo

The current behavior

Newly cloned repos won't show up in the search results.
Old repos will have a white document icon instead of the blue folder icon with the path still showing the old path. Opening the old repo will open a new window of vscode without any projects open.

I've tried uninstalling and reinstalling the extension but the settings and the search results persist between reinstalls.
The expected behavior
The repositories are shown when searched for.
Raycast version
Raycast Version <IP_ADDRESS>

@vongb You have to add or remove the repositories in the VSCode Extension "Project Manger". My Raycast extension reads the projects defined in the VSCode extension.

thanks! that worked!


feat: add math/base/special/expf

Progresses #649
Description

adds math/base/special/expf, which would be the single-precision equivalent for math/base/special/exp.

This pull request:

Progresses: https://github.com/stdlib-js/stdlib/issues/649

Questions

Any questions for reviewers of this pull request?

No.
Other

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

No.
Checklist

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

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

@stdlib-js/reviewers

@vivekmaurya001 Thanks for working on this, CI tests must pass in order to move ahead with this PR.

done changes ,  waiting for your inputs in this @gunjjoshi !

@gunjjoshi , @kgryte , Kindly give some furthur review on this for any change or anything

/stdlib update-copyright-years

@vivekmaurya001 Can you please update all the JS and C benchmarks in this PR to generate values beforehand, not in the loop?

You can refer: https://github.com/stdlib-js/stdlib/blob/develop/lib/node_modules/%40stdlib/math/base/special/ldexpf/benchmark/benchmark.js and https://github.com/stdlib-js/stdlib/blob/develop/lib/node_modules/%40stdlib/math/base/special/ldexpf/benchmark/c/native/benchmark.c#L92.

@gunjjoshi , done that !

/merge

@vivekmaurya001 There are some lint errors arising from the return values in JS files. Can you please look over them?

@gunjjoshi  , resolved errors and thanks for suggested changes


updated google auth to v2 and ability to change response type

This looks great! Thank you very much. Could you also update the tests too? We should make sure all features don't break because of this change.

i have updated the test. please merge it

Superb!


DockerComposeContainer doesn't support classpath resources for compose files

The DockerComposeContainer only accepts "File" objects to load the compose files. This is very limiting, particularly if you want to package the compose file inside a jar. Allowing it to e.g. accept InputStream or a URL would allow a lot more options.

Background
Going to hijack the issue (so I don't have to create another one...)
Currently, it's somehow a blocker to me since Testcontainers are normally being shipped as Libraries being reused by plenty of modules running proper integration tests against a specific application or platform.
I personally have a Platform up and running which requires some other services to be present before starting my platform. Let's assume that I have a Postgres as a prerequisite but I want to run my service as a testcontainer for e.g. a client library.
Unfortunately, I'm not allowed to pack the docker-compose.yml into the jar and run it simply by reusing that particular packed docker-compose.yml - since the DockerComposeContainer requires a File and can't use an InputStream or similar.
How to fix

Allow InputStreams as Constructor parameter and write them to the tmp directory of the system.

private fun writeDockerComposeFileToTmp(is: InputStream): File {
    val tmp = File.createTempFile("docker-compose", "yml")
    FileUtils.copyInputStreamToFile(is, tmp)
    return tmp
}

Please let me know if I can simply contribute to your solution or if it even makes sense to you.

Hi @rnorth,
just marking you as one of the core-contributor of the project.
Could you briefly check if one can contribute to test containers adding such a mechanism?

Hi @rnorth,
just marking you as one of the core-contributor of the project.
Could you briefly check if one can contribute to test containers adding such a mechanism?

Probably related. I'm trying to get a DockerComposeContainer running on a Linux Docker host from a Windows client (working in a corporate environment which means I'm bound to Windows with no Docker support and have to use an external Docker host).
When trying to instantiate the DockerComposeContainer like this
@Container
public static DockerComposeContainer<?> ENVIRONMENT = new DockerComposeContainer<>(new File("src/test/resources/docker-compose.yml"));

I get a bind mount spec error:
Status 400: {"message":"invalid bind mount spec \"C:\\\\Users\\\\verhage\\\\projects\\\\app\\\\src\\\\test-integration\\\\resources:/c/Users/verhage/projects/app/src/test-integration/resources:rw\": invalid volume specification: 'C:\\Users\\verhage\\projects\\app\\src\\test-integration\\resources:/c/Users/verhage/projects/app/src/test-integration/resources:rw'"}

Hi @verhage,
yep that's related. Unfortunately docker isn't allowed to access the files inside your jar.
So you have to put them somewhere else instead. (My above solution works just fine, at least for me)
private fun writeDockerComposeFileToTmp(is: InputStream): File {
    val tmp = File.createTempFile("docker-compose", "yml")
    FileUtils.copyInputStreamToFile(is, tmp)
    return tmp
}

Hopefully @rnorth can tell if there is another way around it, or if I simply could contribute the work around for docker-compose containers.

Hmm, @Lacritz I don't think they are related. I think mine is a Windows issue. I'm not running my code from inside a jar file, I'm running a test straight from my IDE.
I nevertheless tried your solution but unfortunately, it doesn't work for me :(

@verhage sorry missed the details. I currently see that you are using a relative path. Could you briefly validate if the absolute path just works fine? Depending on your execution relative paths are pain in the a...

No worries. Tried with the absolut path and got a similar error. Not with the compose file itself, but some volume that is generated under the hood:
Status 400: {"message":"invalid bind mount spec \"C:\\\\Users\\\\verhage\\\\AppData\\\\Local\\\\Temp\\\\.testcontainers-tmp-11669779820560569668:/dummy:ro\": invalid volume specification: 'C:\\Users\\verhage\\AppData\\Local\\Temp\\.testcontainers-tmp-11669779820560569668:/dummy:ro'"}

At least for a single file it is technically possible to pipe them using cat compose.yaml | docker compose -f - up, so using an input stream for this case is possible.


python312Packages.google-cloud-tasks: 2.16.5 -> 2.17.0

Changelog: https://github.com/googleapis/google-cloud-python/blob/google-cloud-tasks-v2.17.0/packages/google-cloud-tasks/CHANGELOG.md

Things done

Built on platform(s)

[ ] 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

[ ] 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

[ ] 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

[ ] Fits CONTRIBUTING.md.

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

nixpkgs-review result
Generated using nixpkgs-review.
Command: nixpkgs-review pr 351377

x86_64-linux

:white_check_mark: 4 packages built:

python311Packages.google-cloud-tasks
python311Packages.google-cloud-tasks.dist
python312Packages.google-cloud-tasks
python312Packages.google-cloud-tasks.dist


Benefits?

Why methods don't rely on this is a benefit?

So you can mix them into things that don't have a reliable this, and invoke the methods without context:
const { on, off, emit } = mitt()

on('foo', console.log)

emit('foo', 1)

Similarly:
class Foo {
  constructor () {
    Object.assign(this, mitt())
  }
}


/docs/integrations headers

Purpose of this pull request
This pull request applies consistency and standardization to /docs/integrations headers so that they're always plural.
Select the type of change

[x] Minor Changes - Typos, formatting, slight revisions
[ ] Update Content - Revisions, updating sections
[ ] New Content - New features, sections, pages, tutorials
[ ] Site and Tools - .clabot, version updates, maintenance, dependencies, new packages for the site (Docusaurus, Gatsby, React, etc.)

Ticket (if applicable)

Looks good, @kimsauce! I have a couple of suggestions.

Thanks for the quick review!


No video with supported format and MIME type found

Im seeing this error on some hero pages, e.g. Rhinar, Katsu.
On other hero pages the video seems to play correctly, e.g. Fai, Dromai.
I am using Firefox 105.0.3 on PC.

I see it too on iOS Safari. I'll look into it, thanks.

Turns out this wasn't my fault. I store the media via git lfs and use GitHub to host the files. I'm not able to access these files myself. I get 1GB free storage. The problem is when I change the files, the old versions remain on GitHub's server - even if I remove them from the git history (I lost my history because I cleared it trying to free up space).
GitHub attempted to remove these files for me but they got rid of some they shouldn't. They've managed to restore them so the media on the site should be working again...but I'm back to square one for storage constraints. Hopefully they can properly fix it or I'll have to look into a CDN or something to host the media.

GitHub claim that this is now sorted. I will manually check all of the files after I finish work.


Edit comment wordlist go

Description
This PR changes a comment in the pkg/input/wordlist.go file on line 58. The comment says that is incrementing the cursor position and returning a boolean value. But it is just returning a boolean value and nothing else so I edited the comment accordingly.

Hi, thanks for this fix, can you make the change to CONTRIBUTORS.md to make it alphabetically sorted

done

Thanks!


suggestions on handling out of memory matrix operation on large dataset

One of my task is to compute a matrix transformation on large feature vectors, for example, I have a 20K x 60K size DataFrame df and  a square matrix 60K x 60K DataFrame mat_df, and I will call df.dot(mat_df). Because such large matrix operation cannot work on single machine, I was hoping that distributed dataframe could help and even provide better scalability if I want to work on even larger  dataset.
I am running on Ray Clusters, and my system is configured as the following:

Head,16 cores, 64GB memory, >100GB disk space

--object-store-memory<PHONE_NUMBER>0 # set object store to 15GB
--system-config='{"object_spilling_config":"{"type":"filesystem","params":{"directory_path":"/mnt/nas/tmp/spill"}}"}' # I have mounted 8TB NAS and use it for spilled objects.
--num-cpus 2 # I tried to limited the cores/workers to avoid OOM issue

raylet, 16 cores, 64GB memory, >100GB disk space
5. --object-store-memory<PHONE_NUMBER>0 # set object store to 10GB
6. --num-cpus=4 # limited cores/workers to avoid OOM.
Modin envs:
8. MODIN_EXPERIMENTAL_GROUPBY=True # I need to enable this to make my apply(func, axis=1) to work, otherwise, my func cannot access all of the columns.
9. MODIN_ENGINE=ray # ray engine
10. MODIN_RAY_CLUSTER=True # indicate that the client code is running on Ray Cluster
11.
Killed

Some warning messages that I've seen:
object spilling:
(raylet) Spilled 9156 MiB, 5 objects, write throughput 75 MiB/s. Set RAY_verbose_spill_logs=0 to disable this message.

killing worker(s):
(raylet) [2023-10-24 09:56:57,431 E<PHONE_NUMBER>81] (raylet) node_manager.cc:3007: 1 Workers (tasks / actors) killed due to memory pressure (OOM), 0 Workers crashed due to other reasons at node (ID: a343585c2e9b086071e513b714c99c79de4badb6303e52e3f44985d2, IP: <raylet_addr>) over the last time period. To see more information about the Workers killed on this node, use `ray logs raylet.out -ip <raylet_addr>`

object spilling request failure:
(raylet) [2023-10-24 09:57:00,615 E<PHONE_NUMBER>81] (raylet) local_object_manager.cc:360: Failed to send object spilling request: GrpcUnavailable: RPC Error message: Socket closed; RPC Error details:

worker not registering on time:
(raylet) [2023-10-24 10:04:30,463 E<PHONE_NUMBER>81] (raylet) worker_pool.cc:548: Some workers of the worker process(393356) have not registered within the timeout. The process is still alive, probably it's hanging during start.

So far I have tried to 1) limit workers, 2) limit partitions and 3) set less object store memory to try to utilize object spilling, but I still could not resolve the OOM issue. At this point, I would like to hear your opinions and suggestions on how I could handle the OOM problem on matrix operation by either tweaking my ray/modin configurations or improve my code, or is it feasible at all to do on my setups in the first place, if so, how do I determine the limit of the size of my feature vectors and resources to do the 60K one?

Hello @SiRumCz! Have you tried the opposite, increasing storage? Could you try increase up to 60% of host RAM (as Modin does by default for one host). Without setting MODIN_NPARTITIONS.

Hello @SiRumCz! Have you tried the opposite, increasing storage? Could you try increase up to 60% of host RAM (as Modin does by default for one host). Without setting MODIN_NPARTITIONS.

do you mean this?
storage – [Experimental] Specify a URI for persistent cluster-wide storage. This storage path must be accessible by all nodes of the cluster, otherwise an error will be raised. This option can also be specified as the RAY_STORAGE env var.

No, I mean using --object-store-memory

@anmyachev Yes, I have tried from range 1GB to all the way 60GB, they all seem to behave similarly except program will hang on 1GB.

@anmyachev I have tried the configs are you suggested, unfortunately it will still get killed. I don't quite get why increasing  MODIN_NPARTITIONS would help reduce concurrency, from the doc, I thought it by increasing this variable would also increase how many tasks to assign to the workers.
 This is not so bad because it uses shared memory One thing I noticed is that when doing the dot operation, the process seems to put all the workloads on one node, so I could see that one of my node is using almost 100% of the memory, while the other node just doing some light works with lots of free memory.

I don't quite get why increasing MODIN_NPARTITIONS would help reduce concurrency, from the doc, I thought if I increase the value, it would also increase how many tasks to be assigned to the workers.

@SiRumCz although this variable increases the number of partitions that are processed separately, the number of partitions that can be processed in parallel is limited by the number of CPUs.
An example of what it looks like to process 32 partitions on 2 CPUs (Obtained using ray.timeline function):

@anmyachev thanks for the explanation. What about the memory usage with Ray clusters, Modin doesn't seem to utilize both of the memories to do the dot operation on dataframe, because from my observation, only one node is being used heavily while the other node just idle with lots of available memory, is it possible for me to also utilize these?

@anmyachev thanks for the explanation. What about the memory usage with Ray clusters, Modin doesn't seem to utilize both of the memories when doing the dot operation on dataframes, because from my observation, only one node is being used heavily while the other node just idle with lots of available memory, is it possible for me to also utilize these?

Please also note: the current dot implementation is not the most efficient, since the right operand is materialized into a pandas dataframe and passed in its entirety to each process.

@SiRumCz now I am sure that OOM error appears at the moment of materialization of the right operand (memory consumption reaches more than 100GB). If the code passed this point, then the load for performing the dot operation would have to be divided equally between your nodes.
So this is not a fundamental problem with running code on a cluster, but a flaw in the implementation of the dot operation. We will see what can be done about this.

@anmyachev Happy new year! Just to check-in, any updates on this Issue?

@anmyachev Happy new year! Just to check-in, any updates on this Issue?

@SiRumCz Happy new year! :)
Unfortunately, there are no updates at the moment. I would like to try to get rid of the materialization of the right operand, this should reduce memory consumption and give a performance boost as well, but I haven’t had the free time yet.


Network Box 5V Low Power

Need to figure out a better way to get 5V power to the Network box, for the short (maybe long) term will be using odroid headers 5V power pins to supply.

Solved by shifting to odroid power


Incorrent timig with for loops

This is my code which I am testing
import { Bench } from "tinybench";

const bench = new Bench({ iterations: 100_000 });

bench
  .add("loop 1", () => {
    let sum = 1;
    for (let index = 0; indexindex < 10000; indexindex++) {
      sum = sum * index;
    }
  })
  .add("loop 2", () => {
    let sum = 1;
    for (let index = 0; indexindex < 10; indexindex++) {
      sum = sum * index;
    }
  });

await bench.run();

console.table(
  bench.tasks.map(({ name, result }) => ({
    "Task Name": name,
    "Time (ps)": result?.totalTime,
    "Variance (ps)": result?.variance * 1000,
  }))
);

The results are same in both
┌─────────┬───────────┬──────────────────────┬──────────────────────┐
│ (index) │ Task Name │      Time (ps)       │    Variance (ps)     │
├─────────┼───────────┼──────────────────────┼──────────────────────┤
│    0    │ 'loop 1'  │ 0.002133705863210011 │ 0.010551717975465412 │
│    1    │ 'loop 2'  │ 0.002180478539965521 │ 0.030143625437354347 │
└─────────┴───────────┴──────────────────────┴──────────────────────┘

I am using node v16.17.1

Let me know which tinybench version you are using.
And see if this is related #27 #28

ok! could you check if #28 solves your issue?

It's your code's error, not tinybench's problem.
Please check your for loop end condition
for (let index = 0; indexindex < 10000; indexindex++)

You declare a veriable named index, but the end condition is using a undeclared varibale indexindex.
These two code has same time because when it execute, it would throw error immediately and never into loop.
When I test correct code on v2.3.0, it give such result:

Aah sorry my mistake

Maybe tinybench think throw error is also a way to complete a function?

Please create a new issue in case! I don't think this is a problem anymore. Thanks.


Dragging a new avatar into avatar animator does not load new avatars

It appears this has not effect -- tested compiling from master.

Works for me.

This is actually not an issue -- my confusion arose from my expectation of seeing the svg being added to the drop down menu. This is not an issue but rather a minor limitation that would prevent users from flipping through designs. I will make a note in the readme file when addressing #26.


The impact of mislabelling on the performance and interpretation of defect prediction models

http://dl.acm.org/citation.cfm?id=2818852&CFID=550839757&CFTOKEN=78411605

authors contacted. waiting response

authors replied. they used the same data as
http://openscience.us/repo/other/bugclassify.html


Memory

Hi,
After doing a export/import from memorystream my memory usage is more than 400MB
using (MemoryStream ms = new MemoryStream())
{
//export
//import
}

yes, because of the natural characteristic of how .NET Framework handle the memory usage. Every objects creates by .NET will be temporary stayed in the memory. All the objects (string, class, values, etc) will be eventually be recycled by Garbage Collector when .NET believes that all the references and values are not more in use, but it is hard to tell when the Garbage Collector will start to clean up the resources. Therefore, you can manually tell the .NET Garbage Collector to free the memory by executing the following:
GC.Collect();


Workflow for building container image

This pull request introduces a new GitHub Actions workflow for building Docker images and refactors the Dockerfiles to separate dependencies from the main application. The key changes include the creation of a workflow file, modifications to the Containerfile, and the addition of a new Containerfile.dependencies.
Workflow and Dockerfile changes:

New GitHub Actions workflow:

Added .github/workflows/containers.yaml to automate the building and pushing of Docker images. This workflow includes steps to checkout code, retrieve commit messages, determine branch names, and handle Docker caching and login.

Refactoring Dockerfiles:

Modified Containerfile to use a pre-built dependencies image from the container registry, allowing for faster builds and better separation of concerns.
Added a new Containerfile.dependencies to define the base image with all necessary dependencies, including Python, R, and CMake installations.

[!IMPORTANT]
This depends on the cfa-cdcgov runners, which are currently not set for this repository. If you don't want to depend on the cdcgov runner (for now), we can change this to use ghcr.io instead.

@gvegayon  @damonbayer you've been setup with two instances of cfa-cdcgov for this repository.
Please let me know if you experience issues

[!IMPORTANT]
Please do not invite non-cdc users to be admins of this repository, or to allow non-cdc users to push directly to branches that trigger CI/CD.

@gvegayon @damonbayer you've been setup with two instances of cfa-cdcgov for this repository. Please let me know if you experience issues
Important
Please do not invite non-cdc users to be admins of this repository, or to allow non-cdc users to push directly to branches that trigger CI/CD.

@damonbayer and @dylanhmorris, aren't there explicit rules in the repo for that?
attn @zsusswein and @natemcintosh

The thing is runnning! But there's an issue with pyarrow. Will investigate.

Hey @damonbayer! It turns out that python 3.13 breaks the container (b/c of some stuff with pyarrow). Downgrading to Python 3.12 works.

Hey @damonbayer! It turns out that python 3.13 breaks the container (b/c of some stuff with pyarrow). Downgrading to Python 3.12 works.

I also had some issues with pyarrow when upgrading to 3.13. I was able to fix them by updating from pyarrow 17 to 18.

@gvegayon I update pyarrow. Please try Python 3.13 again, if you don't mind.

@gvegayon I update pyarrow. Please try Python 3.13 again, if you don't mind.

Running again!

If Damon merged the change to 3.13 into main, did that change also get merged into this branch?

If Damon merged the change to 3.13 into main, did that change also get merged into this branch?. Otherwise this branch will still be trying to use pyarrow 17, no?

I don't think so. GHA workflows triggered by PRs run on a merge (see here). I can try actively merging main into the Branch, but I think it will be the same thing.

@natemcintosh and @damonbayer, it's passing now! I'm still learning how PR-triggered workflows work, but at least is working!

Thanks @gvegayon!


[FEATURE] Build a reusable search component, similar to a modularized filter component

Describe your suggested improvement
It would be nice to add a traditional search bar to filter resources and videos (rather than only filter on tags/channels). I am open to suggestions on what fields should be searchable. Also, we can start this functionality on the front-end but eventually the searching could happen on the backend and we can build this to make sure that transition is "seamless".
Describe the benefit
Users are more easily able to find relevant resources.
Would you be capable/willing to implement the improvement?
Yes but I might not have time this week
Additional comments
@VeckoTheGecko let me know if you have any thoughts on how this should interact with the data.

I think this is a good idea (particularly for the resources page. The YouTube page would have minimal benefit as people don't search for individual videos, but mainly YouTubers and theres already filtering for that).
A few thoughts:

An off the shelf search integration would be great and likely produce a higher quality search (e.g. allowing for fuzzy maching which would be a pain to code manually). This would also reduce code debt in the project. Perhaps you could look into existing open source solutions that can be integrated into the platform? Let me know if you want me to look
I'm not sure what you mean by "back end". This platform is a statically hosted website, so its all just HTML, CSS and Javascript which is bundled and shipped to the client. There is no backend server.

I think once I (or someone else willing) am able to make progress on #299, adding new features like this will hopefully be more clearcut in terms of the organisation of the project

I can look into an OTS search option. There are definitely some libraries out there that can do this well.
Right, no backend so no worries there 👍


Add possibility to directly plot the MS data as faradaic efficiency

Method for ECMSMeasurement to calculate faradaic efficiency from quantified MS data and plot that in the MS part of the plot instead (or maybe in a third panel?).
This will only work under certain conditions (eg the values will become increasingly less meaningful the lower the total current), but I've come across the wish for such a feature multiple times in the last months.
As usual, not quite sure where this should go. Is it part of the plotter? of the calibration? simply a method for ECMSMeasurement that then also just outputs a plot? I'm a bit confused.

I think the code for this would fit nicely into the default ECMS plotter and have a delegation method in the ECMSMeasurement. As I understand the design, that is probably the way to go.

I tried implemented a crude version of this just to realise this is quite meaningless without proper mass transport deconvolution, as non-physical faradaic efficiencies will be calculated if mass signal and current dont match 100%.


Trouble saving models

I'm trying to export a model trained on a dataset with the following features:
#users: 700K
#user features: IDs only
#items: 30K
#item features: IDs only
#interactions: 56M
The model uses the default architecture except for WRMB loss, and was trained for only 5 epochs.
I've tried to export the model in 2 ways.

Use TensorRec.save_model. The problem here is that apparently the model is enormous, since I get this error: InvalidArgumentError: Cannot serialize protocol buffer of type tensorflow.GraphDef as the serialized size<PHONE_NUMBER>1bytes) would be larger than the limit<PHONE_NUMBER> bytes)
pickle the model directly. The cause of this problem is less clear to me, but a Google search reveals many similar issues. The error is TypeError: can't pickle _thread.RLock objects

Any advice on how to get around these issues would be greatly appreciated!

To add a bit more context, finding a way to use TensorRec.save_model would be great, but I'm ultimately interested in obtaining a TensorFlow SavedModel representation of the model to use for scoring (i.e., the equivalent of calling predict).
One option is calling the tf.saved_model.simple_save function. Similar to #142, this requires one to specify the input and output nodes of the graph to be saved. A comment there points to placeholders in TensorRec._build_tf_graph for training hyper-parameters and user/item feature iterators for input, and to the predict function for output (presumably self.tf_prediction).
As mentioned in another comment to #142, the hyper-parameter placeholders seem to be irrelevant inputs for prediction, but I'm not sure how to specify the input nodes for user and item features. E.g., using self.tf_user_feature_iterator for user input fails: AttributeError: 'Iterator' object has no attribute 'dtype'.
Does anyone know how to do this or anything similar?

A quick follow-up:
The huge model size seems to a result of how TensorFlow handles numpy data; see this link: https://www.tensorflow.org/guide/datasets#consuming_numpy_arrays
I had been using training data in sparse matrix format, which gets converted to numpy arrays here: https://github.com/jfkirk/tensorrec/blob/3e7dfe8962e8d9f78fc9032dfd86ebf421dd3505/tensorrec/input_utils.py#L22
One way around this is to save the training data first in TFRecord format. One caveat here is that it is easy to run out of memory during training unless batching is enabled. Since the user_batch_size parameter is only enabled for sparse matrix input, I had to handle batching directly, which was not difficult.
As for obtaining a SavedModel object, the method described in this comment worked fine: https://github.com/jfkirk/tensorrec/issues/138


AQ HL doesn't start on my ancient Notebook [ERR] [EGL] Command eglCreateContext errored out with EGL_BAD_ATTRIBUTE (0x12292): eglCreateContext

Regression?
No
System Info and Version
 System/Version info
5979ceb56b165ee35809a0eeda5f4be1aedbb7b6

Description
I installed hyprland-git via AUR and on my old notebook it fails to start.
How to reproduce
It has only a dedicated GPU no intel GPU
Crash reports, logs, images, videos
hyprlandCrashReport635.txt

is this legacy_renderer?

patch.txt
try this

Unfortunately, no
hyprlandCrashReport12833.txt
inxi.txt

again, is this legacy renderer?
also try this
patch.txt

again, is this legacy renderer?
also try this patch.txt

Hello vaxry, I tried both these patches on integrated and nvidia without success.
i'm have a intel HD4000
and nvidia GT740m GPUs

can someone answer my damn question

in my case I didn't build with legacyrenderer, I can try
I just
git clone --recursive https://github.com/hyprwm/Hyprland
cd Hyprland
make all && sudo make install

can someone answer my damn question

ok , i tried the second patch with a manual legacyrenderer build and it worked

what if you comment out lines 137 and 138 in opengl.cpp?

what if you comment out lines 137 and 138 in opengl.cpp?

I got very similar error on newer commit.
I can confirm that the second patch and commenting out those two lines works. I can run Hyprland. I still got some errors in the log about drm but nothing critical.

odd, why doesn't your EGL impl not support debug true? anyways, gpu drivers...

please check if it works now

without the patch and removing these 2 lines
    attrs.push_back(EGL_CONTEXT_OPENGL_DEBUG);
    attrs.push_back(ISDEBUG ? EGL_TRUE : EGL_FALSE);

it fails
[ERR] [EGL] Command eglCreateContext errored out with EGL_BAD_MATCH (0x12297): dri2_create_context
hyprlandCrashReport3406.txt
When I apply the second patch (patch-3.txt) and remove the 2 lines and build the legacyrenderer then HL starts.
strange, because hyperland-git from before AQ worked on this machine and there shouldn't be the legacyrenderer build as far as I know.
for now, it doesn't matter, Vaxry we still love you :P

I don't know what happened but commit 7c68236 doesn't work. I tried to rebuild it twice and the result is still the same.
hyprlandCrashReport569.txt

please check if it works now

in my case it doesn't work when i comment out the mentioned lines.
with the patch, it works but some things like blur doesn't work . also i get this error in logs when i exit hyprland:

IOT instruction (core dump) Hyprlandrom display: Broken pipeadd_accelerator: assertion 'GTK_IS_ACCEL_GROUP (accel_group) could not connect to wayland server
i think it may be related to AGS and not Hyprland

It seems like I commented different lines. I commented out

I don't know what happened but commit 7c68236 doesn't work. I tried to rebuild it twice and the result is still the same.
hyprlandCrashReport569.txt

I commented out these lines

legacyrenderer is broken thats why blur no work
@Micovec odd... does your driver support gles3.2?

Not sure how to check that. glxinfo says:
OpenGL ES profile version string: OpenGL ES 3.0 Mesa 24.1.4-arch1.2
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.00

If you could please direct me where to check that.

to add more info, my card /driver is 3.1, as I said for me, it is not crucial

yea both of you have drivers too old for gles3.2, I'm confused as to how it worked before

I've had some problems with blurs not working. For example in hyprlock or special workspaces, there was no blur. But I didn't think much of it since I'm using arch only because I want to check out Hyprland (on which I'm almost a year on) and I'm not skilled in linux world.

both of you have GPUs too old to run hyprland without legacy_renderer, and on legacy IIRC blur is broken. Life is life. Closing as solved

both of you have GPUs too old to run hyprland without legacy_renderer, and on legacy IIRC blur is broken. Life is life. Closing as solved

is there any chance you can make this work later? i mean it was working before moving to aquamarine :(

no clue.

no clue.

ok , I hope you fine a way, ty for great work btw.

wlroots has a GLES2 renderer which was used, and on my machine it detected EGL1.4 correctly,
sorry but I have no deep knowledge about wlroots internals.
And on my side I am using my machines for work, so I have all animations and blur disabled.
One could argue that I could use something else, but we love Vaxry.  :P
hyprland.log

but hyprland always used GLES3.2, so I am confused as to how that worked.

Could it be that for soem reason, magically it fallbacks to GLES2 (legacy)?
Is there a way to find out what renderer is used?

Could it be that, for some reason, magically it fallbacks to GLES2 (legacy)? Is there a way to find out what renderer is used?

this or maybe there's some translation going on in wlroots?(i'm not familiar with rendering stuff so maybe the translation thing is stupid)

no, we use gles3 extensions...

Changing OpenGL.cpp L137
    attrs.push_back(EGL_CONTEXT_MINOR_VERSION);
    attrs.push_back(2);

to 0 works for me (3.0 support), I don't know how "correct" it is to do that, but i guess not specifying it before is how it worked? (Mesa/OpenGL fallbacks??)

I commented out these two lines and normal release build now works without problem.(L136,  L137). nice job
@vaxerski

Generally, I always check what I use for compatibilty against GLES3.2. If anything breaks, you're on your own.

@vaxerski  before the switch to aquamarine, my laptop would run hyprland without problem.
It's EGL version 3.0
Setting Minor version to 0 works, but if that's not garanteed for the future, do we really want to restrict hyprland to newer hardware?

EGL has no 3.0, pretty sure you mean GLES 3.0
3.2 is already almost 10 years old... I can roll back the needed ver to 3.0 but I am unsure about what might break due to this. I don't check extensions for 3.0 compat, only 3.2

there, rolled it back. For 3.2-compliant drivers this shouldn't change anything AFAIK

Love you, thanks

Thanks Vaxry, you're the best.


Investigate CI options

Look into options for implementing CI into repository. Prefer Github solution if it exists and satisfies needs. Prefer simpler/free solutions:

Able to run test and lint on creation of a PR
Able to run test and lint on merge of a PR to main branch

Acceptance Criteria:

A comment on this issue outlining options
A recommendation for a CI solution to implement

Or a recommendation for opting out of CI for now

A new issue to implement the CI

Github Actions
Github actions may be the easiest solution for CI at the moment. It does not (immediately) require an external service to run linting/tests. It also provides solutions for deployments (CD) which we will not be utilizing at the moment.
The pricing for Github actions allows for the following monthly limits:

Account Type
Storage Limit
Number of Minutes

Free
500mb
2,000

Pro
1GB
3,000

The storage limit refers to the amount of space taken by all artifacts (temporary files) used by actions across all repositories on a given account. A public repository is given the free account type allocation. This project lives under a pro account. This account currently has no other repositories using actions/CI. Given the target scale of this application, along with the projected rate of development, exceeding the above stated limits is unlikely. At the very least, this should be a great, easy, and free starting point for instrumenting CI.
The number of minutes consumed by actions are multiplied by the OS on the runner. Given that this repository only requires a linux machine to run CI, and that an ubuntu runner has a multiplier of x1, consumption of minutes should be the minimum.
--
From the documentation on Github actions it should be possible to achieve a good amount of the CI necessary for this repository: run linter and tests on push, PR, and merge to main branch.

Issue created to implement CI: #13


Rename artifactIds to better reflect SBT conventions

I have renamed the artifactIds to:
play-pac4j-java
play-pac4j-scala_2.11
This reduces the number of awkward underscores and for the Scala dependency enables SBT to resolve the correct scala version:
libraryDependencies ++= Seq(
"org.pac4j" %% "play-pac4j-scala" % "1.5.0"
)
will resolve to play-pac4j-scala_2.11 based on the scalaVersion of the SBT project. This will enable us to later add Scala 2.12 or later modules without the user needing to change the libraryDependency.

I didn't know about this specific mechanism, it's a good idea. I will merge it.
Would you mind updating the demos as well?


create mask from map

It would be great to add functionality for creating masks from maps directly - like relion_mask_create
outline

binarize
extend
add soft edge

extending and soft edge can both be done similar to how you added a soft edge to the shapes @milesagraham

I think this would be really useful. I look forward to implementing

Added to 0.0.8 :)


Trying to type rainbow text causes a crash

Type
Crash or hang
Operating System
Linux
OS Version
arch linux
Bug description
Logged in with safe mode runelite --safe-mode, typed /p rainbow:test
Screenshots or videos
No response
RuneLite version
RuneLite 1.10.8
Launcher version 2.6.4
Logs
client.log
launcher.log

No longer reproducible after the latest OSRS update


Feature/refactor pass

Trying out some refactoring to get my head around the code. In progress

Stepping back to try in pieces.


Preview with moderated content / node revisions not working

Our Drupal setup is using content moderation and we noticed that draft versions of node cannot be viewed the same as unpublished content. We also noticed that node revisions (used by content moderation) in general cannot be viewed with the nextjs preview feature. Is there any way to make it work?

Sure. Node revisions are supported by default (except for nodes with paragraphs).
What happens when you visit the revision page? Do you see the working-copy or an error page?

Thank you for the quick reply.
I have nothing I can show but I can try to explain. There is no error. The view page of the draft content just doesn’t show the iFrame preview with the nextjs render. It just shows the default drupal view.

The iframe preview is there for the published node?

Ah I found the issue. I'll push a fix. Hold on.

I pushed a fix. Can you try the latest dev version and let us know?
composer require 'drupal/next:1.0.x-dev@dev'
Thank you

(Didn't mean to close this)

I just tried it and it did not change. Also, the initial draft does have a preview but it 404s. Once it published it works. When creating another draft version, the preview defaults to the drupal built-in view (see screenshot).

What's the path for latest version?

node/6/latest

Looking into it.

OK I found the issue and pushed a fix for it. Can you try the latest dev and let me know?
composer require 'drupal/next:1.0.x-dev@dev'

Hmm probably something with latest-version and working-copy. I tested this locally with a published revision and a draft latest revision. I had to go back to the docs to check this one.
These are the lines handling this:
https://github.com/chapter-three/next-drupal/blob/222295ac1f6577ed376dd87e183f9a3b65a59cb8/modules/next/src/Entity/NextSite.php#L151-L169
Can you swap line 157 and 167 and see if this fixes it?
Thanks for your help figuring this out.

Swapped the lines, but it didn't change anything. Sorry! It still always shows the published version.

hmm, can you temporarily disable preview mode for this entity type and check if you see the expected version?

How do I disable Preview mode?

I figured out a way to disable it. “View” and “Latest version” show the correct content.

Here's what I have:
https://user-images.githubusercontent.com/124599/152150761-967aa473-2b3f-4d22-998a-62e8457d510b.mp4

Yeah, looks perfect on your end. Is there anything special I have to do on the nextjs server? I am just using the drupal starter template.

Nothing special on the Next.js site. Here's the file
https://github.com/chapter-three/next-drupal/blob/cd2ed5c86e23c8c5c364e6094a93033cb955edc0/examples/example-marketing/pages/[[...slug]].tsx#L62-L127
On the Drupal side, I've enabled content_moderation and added Basic Page to the Editorial workflow.

Tried pretty much everything, but I cannot get it to work with the basic starter kit/app. Thank you very much for your time and effort.

We just made a last ditch effort and setup a new Drupal (patches applied) installation and Nextjs-app (your basic starter kit). Unfortunately, the outcome did not change. Revisions are not rendered. Only the latest default/published revision is being rendered.
Again, thank you very much for trying to help us. We would love to give this another shot in the future.
Please let me know if you need more information from our side, in case you want to look into this issue again at some point.

Sure. I'm going to see if I can reproduce the issue with the basic starter today.

@senguendk Yep you were right. I updated the code in the basic starter to handle revision. Check it out.
export async function getStaticPaths(context): Promise<GetStaticPathsResult> {
  return {
    paths: await getPathsFromContext(["node--article", "node--page"], context),
    fallback: "blocking",
  }
}

export async function getStaticProps(
  context
): Promise<GetStaticPropsResult<NodePageProps>> {
  const path = await translatePathFromContext(context)

  if (!path) {
    return {
      notFound: true,
    }
  }

  // Check for redirect
  if (path.redirect?.length) {
    const [redirect] = path.redirect
    return {
      redirect: {
        destination: redirect.to,
        permanent: redirect.status === "301",
      },
    }
  }

  const type = path.jsonapi.resourceName

  let params = {}
  if (type === "node--article") {
    params = {
      include: "field_image,uid",
    }
  }

  const node = await getResourceFromContext<DrupalNode>(type, context, {
    params,
  })

  if (!node || (!context.preview && node?.status === false)) {
    return {
      notFound: true,
    }
  }

  return {
    props: {
      preview: context.preview || false,
      node,
    },
    revalidate: 900,
  }
}

And add import { translatePathFromContext } from "next-drupal"
Can you replace the code in your [...slug].tsx and let me know?
Thank you.

Thank you for responding so fast. We replaced the code, cleared .next and drupal cache. It did not make a difference unfortunately. It is, as if the "resourceVersion" or "rel" parameters are being ignored. We think so, because if the initial version of a page is a draft (unpublished), it 404s.

That's unfortunate. You reverted the change we made earlier to NextSite.php right?
I'm going to pull a fresh Drupal copy and see if I can reproduce this.

Yes, we did. I also set up a clean drupal installation myself.
Let me know how it goes. Maybe we ate still doing something wrong.

@senguendk Have you been able to look into this again?
@j4-m has been able to successfully preview revisions with content moderation with the latest dev release?
See https://github.com/chapter-three/next-drupal/issues/95#issuecomment-1043161140

@shadcn thanks for checking in again. Installed the latest dev release. Did not work unfortunately. Still the same issue.


example of changing inheritance to composition

This PR is an example for an refactoring of an abstract superclass (here AbstractOperationDataScanner) to an 'Utils-Bean' which is uses as dependency in the concrete implementation classes.  It is mainly intended as a basis of discussion.

Hi @tvahrst,
we had a longer discussion about this. We like the change towards composition.
This opens up more extension points to intercept into the api, we still treat the bean interfaces as internals. Consumers would be able to alter behavior, but we currently do not plan to actively support it as a public api.
We were wondering about your motivation for this change, is it just a refactoring to introduce more best practices or do you have a specific need?
We know this is a draft, but we could imagine to split up OperationDataScannerUtil even more to separate building channels and messages. First guess would be something like ChannelItemsUtil, ChannelItemBuilder, MessageBuilder, but there are probably better alternatives.

HI, a few days ago I made some enhancements to an old pr #264 and I experienced some issues during implementation which I commend there: (https://github.com/springwolf/springwolf-core/pull/264#issuecomment-1766333788). This was the main motivation for this little pr.
I just saw (#422) that AsyncApiDocket and some DataScanner classes are deprecated. So the initial reason for this pr (AbstractOperationDataScanner) will be removed in the future.

Closing as a lot of code has changed by now.
Thank you for the inspiration of composition as we used it as a base to do refactorings to all scanners!


Making windows service raises error from Nuget.

In Visual Studio 2017 Using nuget I tried to install Microsoft.AspNetCore.Hosting.WindowsServices.
But it was failed.

@EmmaHansson What exactly fails?  Does your app target .NET Core or .NET Framework?  Could you create a sample app and put it on a GitHub repo?

I have experienced the same issue. I'm targeting .NET Core, so I thought I should be able to install this from NuGet.
I looked into the code here https://github.com/aspnet/Hosting/tree/dev/src/Microsoft.AspNetCore.Hosting.WindowsServices and I found, that one of the imports is System.ServiceProcess which is, as far as I know, not supported in .NET Core anyways. The targeted framework is set to net451 in that package.
I thought that all of the code in this repository should target .NET Core or did I get this wrong? I'm new to .NET Core and would be thankful for any advice.
Thanks in advance
Timo

Asp.net Core as a whole runs on both .Net and .Net Core, but some special features (like this package) only work on one or the other because of their dependencies. This package will only work on .Net, not Core.

Oh ok, thank you for your quick response. It's kinda confusing though reading the description of https://github.com/aspnet/home which states that ASP.NET Core can be used  in .NET Core and .NET.
Are you able to give an estimation about how many classes are actually able to be used in .NET Core? Like, is it rather 95% of all classes or rather 60% for example?
Thank you

It would be great if I can't use it Core, then I can't install it for Core.  I guess it should work for Core, if you use 4.5.

This is the only package so far that only works on .Net, besides a few back compat packages.
Most other differences between frameworks are limited to individual method implementations.


Not successful booking from EMV is not catching in backend

log on error in evm
api_1    | INFO:     | 2022-03-31 14:52:16 | Booked through crypto, got b'\xeb\x9b\xb0\xfc\xf7\xba\x9f$\xbf\x0f=7\xe2\xa8\xda\xd0\xcdE\xe1\xaf-\xb4m|u\x9d\xd2w\xeet\x08\xe4'
api_1    | INFO:     | 2022-03-31 14:52:16 | Remember booking of sender_address='foo' nft_token='3' nft_contract='foo' verification_code='foo' receiver_address='0x795a04d0F74e892c452bB45747dFFdcDA286FBE7' for 0x795a04d0F74e892c452bB45747dFFdcDA286FBE7

according to https://github.com/whynft/nft-gift-button-backend/issues/11 I have implemented a better log and checked that backend does not work when exception comes from web3.
For the issue there should be more info


stockouts

as a healthcare specialist I would like to know about Drug stockouts and shortages
Notes:
To support this user story we need to import pharmacies locations

ticket covered by : https://github.com/healthsites/healthsites/issues/1363


CCM-AIDA

https://6492a1b20db05a234caadf93--harness-developer.netlify.app/docs/cloud-cost-management/use-ccm-cost-governance/asset-governance/gen-ai-overview
https://6492a1b20db05a234caadf93--harness-developer.netlify.app/docs/cloud-cost-management/use-ccm-cost-governance/asset-governance/gen-ai-use

Please check the Execution Link of the Pipeline for the Website Draft URL. This is located in the Preview Step and also is available in #hdh_alerts. E.g Website Draft URL: https://unique-id--harness-developer.netlify.app

Please check the Execution Link of the Pipeline for the Website Draft URL. This is located in the Preview Step and also is available in #hdh_alerts. E.g Website Draft URL: https://unique-id--harness-developer.netlify.app

Please check the Execution Link of the Pipeline for the Website Draft URL. This is located in the Preview Step and also is available in #hdh_alerts. E.g Website Draft URL: https://unique-id--harness-developer.netlify.app

Please check the Execution Link of the Pipeline for the Website Draft URL. This is located in the Preview Step and also is available in #hdh_alerts. E.g Website Draft URL: https://unique-id--harness-developer.netlify.app

Please check the Execution Link of the Pipeline for the Website Draft URL. This is located in the Preview Step and also is available in #hdh_alerts. E.g Website Draft URL: https://unique-id--harness-developer.netlify.app

Please check the Execution Link of the Pipeline for the Website Draft URL. This is located in the Preview Step and also is available in #hdh_alerts. E.g Website Draft URL: https://unique-id--harness-developer.netlify.app

Please check the Execution Link of the Pipeline for the Website Draft URL. This is located in the Preview Step and also is available in #hdh_alerts. E.g Website Draft URL: https://unique-id--harness-developer.netlify.app


Leave comments and comment threads

We want a Google Docs-like comment feature. We can use the Matrix Threads MSC for this.

Would it be possible to leave a root comment when highlighting some text? Or do comments always have to go in other messages of the thread?

It seems like highlights can be root comments of threads. This feature is now in, so I'm closing the issue :)


Update CanvasItem when MultiMesh instance transform changes

Fixes: https://github.com/godotengine/godot/issues/54854
The rect for canvasitems is only calculated as needed. In this case, it was only calculated on the first frame that the MultiMeshInstance was drawing. But because the underlying MultiMesh can be updated anytime, the bounding rect was quickly becoming out of date. This PR gets the CanvasItem to update whenever the AABB is recalculated for the MultiMesh.

@akien-mga Should be good to merge now!

Thanks!

Cherry-picked for 3.4.1.


Will clearing the TPM require a BitLocker code on reboot?

Note that I'm trying to provide feedback on this page:
https://docs.microsoft.com/en-us/windows/security/information-protection/tpm/initialize-and-configure-ownership-of-the-tpm
The document states "Clearing the TPM resets it to an unowned state. After you clear the TPM, the Windows 10 operating system will automatically re-initialize it and take ownership again."
If I restart Windows after clearing the TPM, will a BitLocker code be required? Will the drive still be encrypted? Will Windows function normally or will this make the partition unrecoverable? Please describe further exactly what this means.
Thanks

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 805915dd-11ed-01bb-47b8-7cd715275703
Version Independent ID: 5542a776-c895-b09b-d3eb-54cd8307b202
Content: Troubleshoot the TPM (Windows 10) - Microsoft 365 Security
Content Source: windows/security/information-protection/tpm/initialize-and-configure-ownership-of-the-tpm.md
Product: w10
Technology: windows
GitHub Login: @DulceMontemayor
Microsoft Alias: dansimp

Hello @dryphi - Thank you for asking this question. Please note that clearing TPM can result in many issues if you don't own the backup key or if you don't own the machine it can result in many issues. Please see https://docs.microsoft.com/en-us/windows/security/information-protection/tpm/initialize-and-configure-ownership-of-the-tpm#precautions-to-take-before-clearing-the-tpm for more details.
Thanks.
Imran.

Hi, thanks for the response.
Yes I do own the machine and hence the backup key.
Please clarify what you mean. Thanks

You will want to have a full backup on hand, as well as a ready-to-use restore plan, in case anything goes wrong after clearing the TPM (as stated in the linked document page). Clearing a TPM without a backup and restore plan is not recommended and can cause data loss unless you are 100% successful in restoring the TPM key to its original value afterwards.


"private" tilecache?

does it make for us to set up a tilecache locally, either on dsp or braincloud or something else,
so that when other people are using our services, it doesn't interfere with our own science?
@kunallillaney @alexbaden @randalburns

Throttling API requests by IP would go much farther than private tilecache
in keeping things online. From my experience, visualization doesn't bring
us down, massive numbers of get requests do.
Alex
On Wed, Jan 27, 2016 at 11:37 joshua vogelstein<EMAIL_ADDRESS>wrote:

does it make for us to set up a tilecache locally, either on dsp or
braincloud or something else,
so that when other people are using our services, it doesn't interfere
with our own science?
@kunallillaney https://github.com/kunallillaney @alexbaden
https://github.com/alexbaden @randalburns
https://github.com/randalburns
—
Reply to this email directly or view it on GitHub
https://github.com/openconnectome/open-connectome/issues/209.

@jovo We already run a local tilecache. GET requests do slow us down at times but have never brought us down still now. I think throttling based on IP is fine just that it not practical for example in case of VAST or other power users.

is it easy enough to do that?
can you estimate # of hours it would take to get it set up?
On Wed, Jan 27, 2016 at 2:39 PM, Alex Baden<EMAIL_ADDRESS>wrote:

Throttling API requests by IP would go much farther than private tilecache
in keeping things online. From my experience, visualization doesn't bring
us down, massive numbers of get requests do.
Alex
On Wed, Jan 27, 2016 at 11:37 joshua vogelstein<EMAIL_ADDRESS>wrote:

does it make for us to set up a tilecache locally, either on dsp or
braincloud or something else,
so that when other people are using our services, it doesn't interfere
with our own science?
@kunallillaney https://github.com/kunallillaney @alexbaden
https://github.com/alexbaden @randalburns
https://github.com/randalburns
—
Reply to this email directly or view it on GitHub
https://github.com/openconnectome/open-connectome/issues/209.

—
Reply to this email directly or view it on GitHub
https://github.com/openconnectome/open-connectome/issues/209#issuecomment-175816407
.

--
the glass is all full:  half water, half air.
neurodata.io

I have no idea or the bandwidth to do this. Maybe @alexbaden knows.

i guess when we are in amazon this won't matter anymore?

I think yes but we will know better after deployment.

ok, let's table this until then.
On Wed, Jan 27, 2016 at 3:58 PM, Kunal Lillaney<EMAIL_ADDRESS>wrote:

I think yes but we will know better after deployment.
—
Reply to this email directly or view it on GitHub
https://github.com/openconnectome/open-connectome/issues/209#issuecomment-175849201
.

--
the glass is all full:  half water, half air.
neurodata.io

If we are able to standup a service in AWS that allows us to spin up an arbitrary number of gateway servers that pull data from S3, then this will be much less of a problem (it's possible to overwhelm the throughput from S3 to EC2 users if a single chunk of data is being grabbed over and over and over again, but super unlikely). However, we could still have issues with our servers being overwhelmed, depending on how much money we are willing to spend on gateway servers / month (in addition to S3 costs). So, I think even on AWS it's worth considering throttling.
Kunal makes a good point, that throttling by IP isn't ideal. For example, it's possible that a group of people (e.g. lab, office, etc) all share the same IP. So, we'd have to be careful with our throttling and set some sort of generous upper bound.
It seems worth looking into, but it also seems that none of us really have time to dig in to this now. So, maybe throw it on the "rainy day features" pile?

Sounds good
On Jan 27, 2016 5:03 PM, "Alex Baden"<EMAIL_ADDRESS>wrote:

If we are able to standup a service in AWS that allows us to spin up an
arbitrary number of gateway servers that pull data from S3, then this will
be much less of a problem (it's possible to overwhelm the throughput from
S3 to EC2 users if a single chunk of data is being grabbed over and over
and over again, but super unlikely). However, we could still have issues
with our servers being overwhelmed, depending on how much money we are
willing to spend on gateway servers / month (in addition to S3 costs). So,
I think even on AWS it's worth considering throttling.
Kunal makes a good point, that throttling by IP isn't ideal. For example,
it's possible that a group of people (e.g. lab, office, etc) all share the
same IP. So, we'd have to be careful with our throttling and set some sort
of generous upper bound.
It seems worth looking into, but it also seems that none of us really have
time to dig in to this now. So, maybe throw it on the "rainy day features"
pile?
—
Reply to this email directly or view it on GitHub
https://github.com/openconnectome/open-connectome/issues/209#issuecomment-175883364
.


Fix #113 - Define Stack#fetch which fails fast when a value is unset

Fix #113.

@erran Is there a test that validates this new behavior?

@erran Is there a test that validates this new behavior?

@athompson-r7 Now there are (since https://github.com/rapid7/convection/pull/192/commits/e0b7517936c3c5f9207f5e15bec35f251908f459). 😜


Graylog doesn't start with default docker-compose from manual

I am trying to start Graylog for the testing purpose from docker-compose.yml which is on a site
version: '2'
services:
  # MongoDB: https://hub.docker.com/_/mongo/
  mongodb:
    image: mongo:3
    volumes:
      - mongo_data:/data/db
  # Elasticsearch: https://www.elastic.co/guide/en/elasticsearch/reference/6.x/docker.html
  elasticsearch:
    image: docker.elastic.co/elasticsearch/elasticsearch-oss:6.5.4
    volumes:
      - es_data:/usr/share/elasticsearch/data
    environment:
      - http.host=<IP_ADDRESS>
      - transport.host=localhost
      - network.host=<IP_ADDRESS>
      - "ES_JAVA_OPTS=-Xms512m -Xmx512m"
    ulimits:
      memlock:
        soft: -1
        hard: -1
    mem_limit: 1g
  # Graylog: https://hub.docker.com/r/graylog/graylog/
  graylog:
    image: graylog/graylog:2.5
    volumes:
      - graylog_journal:/usr/share/graylog/data/journal
    environment:
      # CHANGE ME (must be at least 16 characters)!
      - GRAYLOG_PASSWORD_SECRET=somepasswordpepper
      # Password: admin
      - GRAYLOG_ROOT_PASSWORD_SHA2=8c6976e5b5410415bde908bd4dee15dfb167a9c873fc4bb8a81f6f2ab448a918
      - GRAYLOG_WEB_ENDPOINT_URI=http://<IP_ADDRESS>:9000/api
    links:
      - mongodb:mongo
      - elasticsearch
    depends_on:
      - mongodb
      - elasticsearch
    ports:
      # Graylog web interface and REST API
      - 9000:9000
      # Syslog TCP
      - 514:514
      # Syslog UDP
      - 514:514/udp
      # GELF TCP
      - 12201:12201
      # GELF UDP
      - 12201:12201/udp
# Volumes for persisting data, see https://docs.docker.com/engine/admin/volumes/volumes/
volumes:
  mongo_data:
    driver: local
  es_data:
    driver: local
  graylog_journal:
    driver: local

When I open page http://local_ip:9000/ I've got an error
We are experiencing problems connecting to the Graylog server running on http://<IP_ADDRESS>:9000/api. Please verify that the server is healthy and working correctly.

Output of my docker ps
ds@graylog:~$ docker ps
CONTAINER ID        IMAGE                                                     COMMAND                  CREATED             STATUS                   PORTS                                                                                NAMES
be5a98510e38        graylog/graylog:2.5                                       "/docker-entrypoint.…"   About an hour ago   Up 4 minutes (healthy)   <IP_ADDRESS>:514->514/tcp, <IP_ADDRESS>:9000->9000/tcp, <IP_ADDRESS>:514->514/udp, <IP_ADDRESS>:12201->12201/tcp, <IP_ADDRESS>:12201->12201/udp   graylog-docker-compose_graylog_1
fd6e3314937d        mongo:3                                                   "docker-entrypoint.s…"   About an hour ago   Up 4 minutes             27017/tcp                                                                                graylog-docker-compose_mongodb_1
053746d73790        docker.elastic.co/elasticsearch/elasticsearch-oss:6.5.4   "/usr/local/bin/dock…"    It helps me. I think it's good idea to emphasis about this setting in the manual.


Test coverage

Hello,
I have been looking into test cases and found, that two cases are wrongly labeled and tests for some proxies are missing:

0x8260b9eC6d472a34AD081297794d7Cc00181360a which is described as detects EIP-897 delegate proxies, but is EIP-1967-direct proxy case.
0xed7e6720Ac8525Ac1AEee710f08789D02cD87ecB which is described as detects OpenZeppelin proxies, but is EIP-897 proxy case.

The first wrongly labeled test causes that the EIP-1967-direct is being tested twice. The second wrongly labeled one causes that OpenZeppelin proxy case is not tested at all. Same holds for EIP-1822 proxy (missing test).

New finding. The 0x8260b9eC6d472a34AD081297794d7Cc00181360a address implements the implementation() function (therefore its considered to be EIP-897 proxy) and also have occupied the EIP-1967 slot (therefore its considered to be EIP-1967 proxy).
I believe, that the EIP-897 proxy should be detected only when the EIP-1967 slot is not used.

Thanks for reporting!
I'm not sure if either @jfschwarz or myself got time to maintain the package. It was solving an internal problem and covers all the needs - you are welcome to create a PR


Bug 60564 - Migrating to SLF4J logger - components/config,control,extractor packages.

Hi Woonsan,
Thanks for the PR.
I just modified few lines as per my comment on PR 263
And in CSV DataSet , a call to file.getAbsolutePath() was wrongly replaced by a var that was not updated.
Thanks
Regards
Philippe

@pmouawad Thanks for the review! I totally overlooked the file being recreated. Cheers!


Register derived interface, request base interface results in Exception

serviceBuilder.Services.AddScoped<IModelRepository<User>, UserRepository>();

Then in a Controller I I request a IReadOnlyModelRepository. IModelRepository derives from IReadOnlyModelRepository.
Should I get the exception?
InvalidOperationException: Unable to resolve service for type 'IReadOnlyModelRepository`1[User]' while attempting to activate 'Controller'.

The workaround of course consists in registering IReadOnlyModelRepository as well.

This is by design. You don't get inherited interfaces for free, you need to register them.

Correct, registrations have to be of the exact type that will be requested.


Training of FlanT5 for summarization

I tried following the same framewrok for training the other llms (falcon,mistral,etc) with SFTTrainer to train the FlanT5 model as well.
But the results are bad, as if the llm doesn't learn anything.
Training it with the Seq2Seq method works. Why did you use this method for FlanT5 an SFTTrainer for all the other llms?

Hi @kel-varnsen,
Following the exact same pipeline for other LMs won't work for FlanT5 because Flan is an encoder-decoder model while the others are decoder-only models. These models are trained differently with different objectives and pre-train tasks. There are many blog posts that further explain these differences, for example this one.
Good to hear that you have made it work with Seq2SeqTrainer.
Let me know if you have any more questions!


Install strip-ansi as a dependency; required for Playwright reporter

@nprizal Me again 😅
playwright/reporter.js uses strip-ansi as a dependency, but it wasn't included in the list of necessary dependencies, so tests would fail with:
Error in reporter TypeError: Cannot read properties of undefined (reading 'split')
   at PlaywrightBuildkiteAnalyticsReporter.analyticsFailureMessages (/app/node_modules/buildkite-test-collector/playwright/reporter.js:98:52)
   at PlaywrightBuildkiteAnalyticsReporter.analyticsFailureReason (/app/node_modules/buildkite-test-collector/playwright/reporter.js:109:17)
   at PlaywrightBuildkiteAnalyticsReporter.onTestEnd (/app/node_modules/buildkite-test-collector/playwright/reporter.js:58:30)
   at ReporterV2Wrapper.onTestEnd (/app/node_modules/playwright/lib/reporters/reporterV2.js:87:158)
   at /app/node_modules/playwright/lib/reporters/multiplexer.js:47:65
   at wrap (/app/node_modules/playwright/lib/reporters/multiplexer.js:82:5)
   at Multiplexer.onTestEnd (/app/node_modules/playwright/lib/reporters/multiplexer.js:47:45)
   at InternalReporter.onTestEnd (/app/node_modules/playwright/lib/reporters/internalReporter.js:63:20)
   at Dispatcher._reportTestEnd (/app/node_modules/playwright/lib/runner/dispatcher.js:509:20)
   at WorkerHost.onTestEnd (/app/node_modules/playwright/lib/runner/dispatcher.js:243:12)
   at WorkerHost.emit (node:events:517:28)
   at ChildProcess.<anonymous> (/app/node_modules/playwright/lib/runner/processHost.js:97:16)
   at ChildProcess.emit (node:events:517:28)
   at emit (node:internal/child_process:944:14)
   at processTicksAndRejections (node:internal/process/task_queues:83:21)

This adds it as a dependency and bumps the version again for re-release.

Hi @tjschuck thanks for raising this issue and for opening the PR to fix it. Unfortunately, our package still uses CommonJS that means we cannot import an ESM, and switching to ESM is not in our priority at this moment.
We can either use the strip-ansi version 6.0.0 that still using CommonJS or strip the ANSI string without any library like we do in [jest/reporter.js](https://github.com/buildkite/test-collector-javascript/blob/2cbfccf51fdd6794a9f66b720515e4efd564e5f3/jest/reporter.js#L84). What do you think?

@nprizal I think jumping back to strip-ansi 6.0 is fine.  Update incoming!

@nprizal Okay, updated!  Let me know what you think.

I have released version 1.6.2 to NPM. Thanks again for your contribution.


ImportError: No module named aiy.voice.tts

Recently I have been trying to trigger GPIO LED on the cloudspeech_demo.py, but it returns the error, any clues?

Try running with “python3” at the prompt.   That resolved the package import errors I was seeing.

@tummmmmy Is this issue still reproducible ?

Closing, please reopen if that's still a problem.


xrdp: 0.9.5 -> 0.9.7

Motivation for this change
minor update (fixed memory leaks, etc)

@GrahamcOfBorg test xrdp

Failure on x86_64-linux (full log)
Attempted: tests.xrdp
Partial log (click to expand)
building '/nix/store/p25qm4gv1p743l5hhma6n8hfw4kxqygy-unit-display-manager.service.drv'...
cannot build derivation '/nix/store/yg6qal4kbmxdbpb4858qc9qsqhzh3nsr-system-units.drv': 2 dependencies couldn't be built
cannot build derivation '/nix/store/lbff9bdj4y5928pa58j76hxcyvj3rdh0-etc.drv': 1 dependencies couldn't be built
cannot build derivation '/nix/store/05mnc9j7zvdvz7nd9ayn6iyivkppr5gh-nixos-system-client-18.09.git.2163761.drv': 1 dependencies couldn't be built
cannot build derivation '/nix/store/lpiq0kvrmm5d1zdc4crr4x1gj15p7pp0-closure-info.drv': 1 dependencies couldn't be built
cannot build derivation '/nix/store/37g1lggqls6j8n2yk83n904wmz0wqach-run-nixos-vm.drv': 2 dependencies couldn't be built
cannot build derivation '/nix/store/30q4djizmkddcmnggbk83a827nh4cjy8-nixos-vm.drv': 2 dependencies couldn't be built
cannot build derivation '/nix/store/wz8ss4hn245jx30aga2sb5vc6xbhbxaa-nixos-test-driver-xrdp.drv': 2 dependencies couldn't be built
cannot build derivation '/nix/store/rvyvfdrpi69ydhd6cbnnh8ihwqxb0sw1-vm-test-run-xrdp.drv': 1 dependencies couldn't be built
error: build of '/nix/store/rvyvfdrpi69ydhd6cbnnh8ihwqxb0sw1-vm-test-run-xrdp.drv' failed

@GrahamcOfBorg test xrdp

Failure on aarch64-linux (full log)
Attempted: tests.xrdp
Partial log (click to expand)
cannot build derivation '/nix/store/pyl8n1k0p194cac6r4f3xz0mnvsr0d3s-nixos-vm.drv': 2 dependencies couldn't be built
cannot build derivation '/nix/store/lfbml8vnqgkxzczkz8in6j7lh2rn638y-system-units.drv': 2 dependencies couldn't be built
cannot build derivation '/nix/store/chqg511lzk574bnqm6dqhdlj471lmw6v-etc.drv': 1 dependencies couldn't be built
cannot build derivation '/nix/store/1sq6qcarjm7x1g7iiba8vphlgjqrj989-nixos-system-server-18.09.git.2163761.drv': 1 dependencies couldn't be built
cannot build derivation '/nix/store/2mvkqpvylqwyv1bnldhvqclirqk82pgz-closure-info.drv': 1 dependencies couldn't be built
cannot build derivation '/nix/store/mfsk2wiq4rnm2bab1mnf1c72g4ww8iws-run-nixos-vm.drv': 2 dependencies couldn't be built
cannot build derivation '/nix/store/q25brdilfjvfwxbsqkk8r80lzqwgxr1z-nixos-vm.drv': 2 dependencies couldn't be built
cannot build derivation '/nix/store/01gh3angrgmriincxrbwjd4zdjbkf6b0-nixos-test-driver-xrdp.drv': 2 dependencies couldn't be built
cannot build derivation '/nix/store/sqf1wyp38jrlfipmjf3r0qvjgly1c49v-vm-test-run-xrdp.drv': 1 dependencies couldn't be built
error: build of '/nix/store/sqf1wyp38jrlfipmjf3r0qvjgly1c49v-vm-test-run-xrdp.drv' failed

Success on x86_64-linux (full log)
Attempted: tests.xrdp
Partial log (click to expand)
syncing
client: running command: sync
client: exit status 0
test script finished in 49.38s
cleaning up
killing server (pid 593)
killing client (pid 605)
vde_switch: EOF on stdin, cleaning up and exiting
vde_switch: Could not remove ctl dir '/build/vde1.ctl': Directory not empty
/nix/store/d78553k1w989jc0i29h5jkgfsraisxis-vm-test-run-xrdp

Success on x86_64-linux (full log)
Attempted: tests.xrdp
Partial log (click to expand)
/nix/store/d78553k1w989jc0i29h5jkgfsraisxis-vm-test-run-xrdp

Success on aarch64-linux (full log)
Attempted: tests.xrdp
Partial log (click to expand)
server# [   50.098413] xrdp-sesman[687]:   RRScreenSizeSet ok 1
client: exit status 0
server# [   50.103628] xrdp-sesman[687]: rdpInDeferredUpdateCallback:
test script finished in 51.14s
cleaning up
killing server (pid 627)
killing client (pid 640)
vde_switch: EOF on stdin, cleaning up and exiting
vde_switch: Could not remove ctl dir '/build/vde1.ctl': Directory not empty
/nix/store/p010fkyrjx1c69cxyw2a5rmkxy4bf03m-vm-test-run-xrdp

Success on aarch64-linux (full log)
Attempted: tests.xrdp
Partial log (click to expand)
  /nix/store/4mnd5z4x4nkk3vpn870infgka930p47k-nixos-system-server-18.09.git.7c27bb4.drv
  /nix/store/9ghg9hcghlsb862rvm5nfmfp6ffi5a5z-run-nixos-vm.drv
  /nix/store/c0v6axq4fbqlvcrmx3ja6985wwfhiamw-nixos-vm.drv
  /nix/store/ljdmxph35gbmz72qihbflz46wiwidiq9-closure-info.drv
  /nix/store/svlia0nv7yq0fsm5n60123rg8z2garxg-run-nixos-vm.drv
  /nix/store/l6x7lk30syk3lj0ygpmzba35hwqdfxgj-nixos-vm.drv
  /nix/store/mga6a53zya3dp4zliw2wfhyl1c5s47fc-nixos-test-driver-xrdp.drv
  /nix/store/wxm53as48476qjl133d7zx6bgwr3z04r-vm-test-run-xrdp.drv
waiting for locks or build slots...
/nix/store/p010fkyrjx1c69cxyw2a5rmkxy4bf03m-vm-test-run-xrdp

@GrahamcOfBorg eval

Success on aarch64-linux (full log)
Attempted: xrdp
Partial log (click to expand)
/nix/store/n5blkmpfc9ndfbzjxsc32f0x1xgq8v9v-xrdp-0.9.7

Success on x86_64-linux (full log)
Attempted: xrdp
Partial log (click to expand)
shrinking /nix/store/qcrcj7r7sjzkvik59mnjj1fly0pqasps-xrdp-0.9.7/sbin/xrdp-sesman
gzipping man pages under /nix/store/qcrcj7r7sjzkvik59mnjj1fly0pqasps-xrdp-0.9.7/share/man/
strip is /nix/store/4qvrxzxa535y8304mk195x50b6p9607d-binutils-2.30/bin/strip
stripping (with command strip and flags -S) in /nix/store/qcrcj7r7sjzkvik59mnjj1fly0pqasps-xrdp-0.9.7/lib  /nix/store/qcrcj7r7sjzkvik59mnjj1fly0pqasps-xrdp-0.9.7/bin  /nix/store/qcrcj7r7sjzkvik59mnjj1fly0pqasps-xrdp-0.9.7/sbin
patching script interpreter paths in /nix/store/qcrcj7r7sjzkvik59mnjj1fly0pqasps-xrdp-0.9.7
/nix/store/qcrcj7r7sjzkvik59mnjj1fly0pqasps-xrdp-0.9.7/etc/xrdp/reconnectwm.sh: interpreter directive changed from "/bin/sh" to "/nix/store/8zkg9ac4s4alzyf4a8kfrig1j73z66dw-bash-4.4-p23/bin/sh"
/nix/store/qcrcj7r7sjzkvik59mnjj1fly0pqasps-xrdp-0.9.7/etc/xrdp/startwm.sh: interpreter directive changed from "/usr/bin/env bash" to "/nix/store/8zkg9ac4s4alzyf4a8kfrig1j73z66dw-bash-4.4-p23/bin/bash"
checking for references to /build in /nix/store/qcrcj7r7sjzkvik59mnjj1fly0pqasps-xrdp-0.9.7...
moving /nix/store/qcrcj7r7sjzkvik59mnjj1fly0pqasps-xrdp-0.9.7/sbin/* to /nix/store/qcrcj7r7sjzkvik59mnjj1fly0pqasps-xrdp-0.9.7/bin
/nix/store/qcrcj7r7sjzkvik59mnjj1fly0pqasps-xrdp-0.9.7

Success on x86_64-linux (full log)
Attempted: xrdp
Partial log (click to expand)
/nix/store/qcrcj7r7sjzkvik59mnjj1fly0pqasps-xrdp-0.9.7

Success on aarch64-linux (full log)
Attempted: xrdp
Partial log (click to expand)
/nix/store/n5blkmpfc9ndfbzjxsc32f0x1xgq8v9v-xrdp-0.9.7


different keys on each run

Not sure if its the expected behavior but on certain each reload gives me a different key.
5a99ac9d38347fbe8b8d249bee884ac03a84c489a7840cc2bf8c9dd28fdb09cca7f9a82402fa7bbe95fc12ac66a24b36b839b969636f127aafc2d6a6bc6f1cf21381975467b68921d46a5ea20c304002f741c3c836960d2902e0a526f7d581b35a551daa22a72a7a5e888a1c94d5cd7029adb73be05d7b296b23e2a328f8b75c7adc836c8ce31dfe376ec78fd5087ff472ac88c65b140fef2e771ab4c2a78da8b7835a5a0be0de972de495a37b839e73207b0fe9a94fd093bea9784c97c735a734431357a0e63d36339b007c66a02cae1391a5b9ef3c462ce9b9fea357d300160c537d920428ef59fc3c7abd22a664710c7cc69300e84ef2258c0b791752f3df
content_key_decryption.js:66 Output
content_key_decryption.js:66 bd951239a9a75d52678147832174a358
content_key_decryption.js:66 WidevineDecryptor: Found key: 6dc4cdf8a241cefcf63eb28fbb844bed (KID=a1ad0c5b689b5fb79aebee5057f66d57)
content_key_decryption.js:66 WidevineDecryptor: Found key: 0872e7395481446b8f2578e83c022894 (KID=b71229b9c9025feb96deda31da6af3cc)
content_key_decryption.js:66 WidevineDecryptor: Found key: fcbb606145659f10593238c84897e2b2 (KID=169d962f57fa50a6a8c594a13d69522e)

1f4bc299b570907ab4b44ef4509cae265760d94addc64589720ee0b2a4820aecc1e3bdb3ad27ee65f9f7e41f5c821e09784f49e8fb6589651bebc78d3b498bb053742692a946095af9f13fcc3b0e0e261d45f8c951afb757efb2f21817865de40edf34b1285a5831584258da285a135598cf170cc0d7a8256993564af94aff01993406382b21f8ccaedba051887b696136acaf5accaa31c7ca837a2b83fed14becbff926e2405a4eee36aac58962b8c6a41070b091db6ab0925072fff8c21561754e65fd62b2b4efd961825d8c5f18507d2f137fd61df00ae81fd4a62f7e2066461827f456936ed6c23522fc82c66ad8ee444b863effca2bfb6b80de606fdec6
content_key_decryption.js:66 Output
content_key_decryption.js:66 e4cf16369ddfb91fede4b3946d7093ba
content_key_decryption.js:66 WidevineDecryptor: Found key: 4d258eda7a0a2ae5a8a2b1b174201bb2 (KID=a1ad0c5b689b5fb79aebee5057f66d57)
content_key_decryption.js:66 WidevineDecryptor: Found key: 5ac6394125548397a977b6ba6eac9f98 (KID=b71229b9c9025feb96deda31da6af3cc)
content_key_decryption.js:66 WidevineDecryptor: Found key: 58b1a30917958f3eb7abca07c2551030 (KID=169d962f57fa50a6a8c594a13d69522e)

Looks like this fails to decrypt the file too
Could this be that every time its providing a different init data?

Netflix?
I think it's because of high profile and main profile and vp9 and whatnot.
One of the keys will definitely work.

Yeah for netflix, each profile have different keys. Use this extension to force 1080p https://github.com/truedread/netflix-1080p
then try but you still might get different key depends on your connection if it is quickly change to max bitrate and quality

9a47ba35e9824767333e0a6915ec580c3ddef52f0276086fbe4a8079438ab9e5bd8bc21ef36e5e1bfb34b138bb82ec86754a38e833bb9d7b9d95f2279f07fe9fc760e2434b50fb664f36f0b671d4fcaf16f3a666ee6b88a2e3008043ec28d96a406a529df77ee43bd3a9659393eb629efd746ee359b9199db4283b6765596ebacac3b2d9379bada622843bb63ba0620e1d7f6c2238f78b31d639288f103ef4ef2e8a2efe1e81d0e2342598b52b0cb771ff752395ab251093d4fe7e2362c6b3b377f6b02ed4b704cd94108b34510edf741cc12cb5f2572be5c1314ee9234989feec4ac333b80b526be47dcf676790428bb73fc856fd8a25a5ee6d26cd9e9ed45a
content_key_decryption.js:66 Output
content_key_decryption.js:66 746b199fc17aea33fb44a008ca76afd3
content_key_decryption.js:66 WidevineDecryptor: Found key: c9afc17e3b08558560af95aee6e489af (KID=a1ad0c5b689b5fb79aebee5057f66d57)
content_key_decryption.js:66 WidevineDecryptor: Found key: eba4862afbe5fcd4e9c0799098f816cf (KID=b71229b9c9025feb96deda31da6af3cc)
content_key_decryption.js:66 WidevineDecryptor: Found key: 0b7f902bda8319a4f45d8d086da01929 (KID=169d962f57fa50a6a8c594a13d69522e)

Actually no the site is not Netflix. It produces the same mpd each time. The mpd lists multiple resolutions but all the resolutions have the same pssh <cenc:pssh>AAAAOXBzc2gAAAAA7e+LqXnWSs6jyCfc1R0h7QAAABkiEf/xFYAtI8M1ikjQV7frg/yXSOPclZsG</cenc:pssh>
and KID cenc:default_KID="a1ad0c5b-689b-5fb7-9aeb-ee5057f66d57"

9a47ba35e9824767333e0a6915ec580c3ddef52f0276086fbe4a8079438ab9e5bd8bc21ef36e5e1bfb34b138bb82ec86754a38e833bb9d7b9d95f2279f07fe9fc760e2434b50fb664f36f0b671d4fcaf16f3a666ee6b88a2e3008043ec28d96a406a529df77ee43bd3a9659393eb629efd746ee359b9199db4283b6765596ebacac3b2d9379bada622843bb63ba0620e1d7f6c2238f78b31d639288f103ef4ef2e8a2efe1e81d0e2342598b52b0cb771ff752395ab251093d4fe7e2362c6b3b377f6b02ed4b704cd94108b34510edf741cc12cb5f2572be5c1314ee9234989feec4ac333b80b526be47dcf676790428bb73fc856fd8a25a5ee6d26cd9e9ed45a
content_key_decryption.js:66 Output
content_key_decryption.js:66 746b199fc17aea33fb44a008ca76afd3
content_key_decryption.js:66 WidevineDecryptor: Found key: c9afc17e3b08558560af95aee6e489af (KID=a1ad0c5b689b5fb79aebee5057f66d57)
content_key_decryption.js:66 WidevineDecryptor: Found key: eba4862afbe5fcd4e9c0799098f816cf (KID=b71229b9c9025feb96deda31da6af3cc)
content_key_decryption.js:66 WidevineDecryptor: Found key: 0b7f902bda8319a4f45d8d086da01929 (KID=169d962f57fa50a6a8c594a13d69522e)

Actually no the site is not Netflix. It produces the same mpd each time. The mpd lists multiple resolutions but all the resolutions have the same pssh <cenc:pssh>AAAAOXBzc2gAAAAA7e+LqXnWSs6jyCfc1R0h7QAAABkiEf/xFYAtI8M1ikjQV7frg/yXSOPclZsG</cenc:pssh>
and KID cenc:default_KID="a1ad0c5b-689b-5fb7-9aeb-ee5057f66d57"
But I still keep getting different Keys like above

give the license url

httpx://dimsum.my/programme-branded/sbs/all/series-1855
ticket server requires xsession and needs payload in base64 and a unique ticket retrieved in previous request.
(geo blocked to Singapore / Malaysia)
httpx://mm-star-production.cloud.seachange.com/mmapi//player/drm/widevine-modular

httpx://dimsum.my/programme-branded/sbs/all/series-1855
ticket server requires xsession and needs payload in base64 and a unique ticket retrieved in previous request.
(geo blocked to Singapore / Malaysia)
httpx://mm-star-production.cloud.seachange.com/mmapi//player/drm/widevine-modular

oh nvm. I don't have account for that

You don't need one just visit the link directly. With a VPN to SG/MY

Uncaught (in promise) TypeError: CryptoJS.CMAC is not a function
at Object.WidevineCrypto.decryptContentKey (content_key_decryption.js)
That's my case when I try to get the key on that site

Uncaught (in promise) TypeError: CryptoJS.CMAC is not a function
at Object.WidevineCrypto.decryptContentKey (content_key_decryption.js)
That's my case when I try to get the key on that site

get the background tree and then reload the extension and then reload the site.

yes disney+hotstar gives different keys on each run that too wrong decryption not works

Not sure if its the expected behavior but on certain each reload gives me a different key.
5a99ac9d38347fbe8b8d249bee884ac03a84c489a7840cc2bf8c9dd28fdb09cca7f9a82402fa7bbe95fc12ac66a24b36b839b969636f127aafc2d6a6bc6f1cf21381975467b68921d46a5ea20c304002f741c3c836960d2902e0a526f7d581b35a551daa22a72a7a5e888a1c94d5cd7029adb73be05d7b296b23e2a328f8b75c7adc836c8ce31dfe376ec78fd5087ff472ac88c65b140fef2e771ab4c2a78da8b7835a5a0be0de972de495a37b839e73207b0fe9a94fd093bea9784c97c735a734431357a0e63d36339b007c66a02cae1391a5b9ef3c462ce9b9fea357d300160c537d920428ef59fc3c7abd22a664710c7cc69300e84ef2258c0b791752f3df
content_key_decryption.js:66 Output
content_key_decryption.js:66 bd951239a9a75d52678147832174a358
content_key_decryption.js:66 WidevineDecryptor: Found key: 6dc4cdf8a241cefcf63eb28fbb844bed (KID=a1ad0c5b689b5fb79aebee5057f66d57)
content_key_decryption.js:66 WidevineDecryptor: Found key: 0872e7395481446b8f2578e83c022894 (KID=b71229b9c9025feb96deda31da6af3cc)
content_key_decryption.js:66 WidevineDecryptor: Found key: fcbb606145659f10593238c84897e2b2 (KID=169d962f57fa50a6a8c594a13d69522e)

1f4bc299b570907ab4b44ef4509cae265760d94addc64589720ee0b2a4820aecc1e3bdb3ad27ee65f9f7e41f5c821e09784f49e8fb6589651bebc78d3b498bb053742692a946095af9f13fcc3b0e0e261d45f8c951afb757efb2f21817865de40edf34b1285a5831584258da285a135598cf170cc0d7a8256993564af94aff01993406382b21f8ccaedba051887b696136acaf5accaa31c7ca837a2b83fed14becbff926e2405a4eee36aac58962b8c6a41070b091db6ab0925072fff8c21561754e65fd62b2b4efd961825d8c5f18507d2f137fd61df00ae81fd4a62f7e2066461827f456936ed6c23522fc82c66ad8ee444b863effca2bfb6b80de606fdec6
content_key_decryption.js:66 Output
content_key_decryption.js:66 e4cf16369ddfb91fede4b3946d7093ba
content_key_decryption.js:66 WidevineDecryptor: Found key: 4d258eda7a0a2ae5a8a2b1b174201bb2 (KID=a1ad0c5b689b5fb79aebee5057f66d57)
content_key_decryption.js:66 WidevineDecryptor: Found key: 5ac6394125548397a977b6ba6eac9f98 (KID=b71229b9c9025feb96deda31da6af3cc)
content_key_decryption.js:66 WidevineDecryptor: Found key: 58b1a30917958f3eb7abca07c2551030 (KID=169d962f57fa50a6a8c594a13d69522e)

Looks like this fails to decrypt the file too
Could this be that every time its providing a different init data?

Hiding the error and warnings in console gives wrong keys on each reload ! Dont hide
on hiding: gives wrong key

without hiding: gives correct key

My work is only responsible for this line:
content_key_decryption.js:66 Output
content_key_decryption.js:66 bd951239a9a75d52678147832174a358

So if that works, it decrypts (correctly) the session key. My assumption would be that they have either several encrypted copied (maybe 1 per CDN server?) or actually do encryption on the fly (easy enough to so, though computationally expensive. ) So the keys you get would only work when you download media in the same session, and they form a new session on reload? But that is just a guess. As I said, I will probably stop modifying extension anyway, so asking me in person for help is kind of pointless? I also don't have access to most streaming sites mentioned, so cannot test.

Uncaught (in promise) TypeError: CryptoJS.CMAC is not a function
at Object.WidevineCrypto.decryptContentKey (content_key_decryption.js)
That's my case when I try to get the key on that site

That looks like CryptoJS gets overwritten at some point, probably because site uses it for its own needs. Try assigning it to another variable?

Hiding the error and warnings in console gives wrong keys on each reload ! Dont hide

I'm on default levels too and the key changes every time.

on hiding: gives wrong key
https://user-images.githubusercontent.com/88180312/127995680-c028218a-0ee6-43d6-862b-9bf8d11d68b7.png
without hiding: gives correct key
https://user-images.githubusercontent.com/88180312/127995789-ad77dd9c-ba48-48c6-809b-f7210cbab2ef.png

are these from dimsum or some other site?

That looks like CryptoJS gets overwritten at some point, probably because site uses it for its own needs. Try assigning it to another variable?

Yup
tried making it
var newCryptoJS = CryptoJS;

and then changing
 CryptoJS.CMAC
to
newCryptoJS

fixes it.

So if that works, it decrypts (correctly) the session key. My assumption would be that they have either several encrypted copied (maybe 1 per CDN server?) or actually do encryption on the fly (easy enough to so, though computationally expensive. ) So the keys you get would only work when you download media in the same session, and they form a new session on reload? But that is just a guess

I doubt they're doing this now at least this wasn't the case before. very little again for them at huge costs if they're doing it.

are these from dimsum or some other site?

its disney+hotstar

Okay downloading the stream from same session also results in failed decryption. Well i'll try to debug more to see if i can find anything interesting.

I doubt they're doing this now at least this wasn't the case before. very little again for them at huge costs if they're doing it.

I should remind you that all https data is encrypted with, IIRC, AES key that is regenerated each connection, so with proper hardware/software it should be possible to do something similar to video? It is not like they are re-encoding it to different codecs? Depends on how they serve it. Well, anyway, I don't know enough about their backends to guess.
I added some noisy debug logs, maybe something can be made clear from them? I mean, they obviously send different keys with the same KID...

I eventually use bitmovin test page, pasting the mpd there, use https://widevine-proxy.appspot.com/proxy as license url, it produce same, consistent keys, and IT WORKS!

after more looking around looks like this might be caused due the the eme_interception.js itself

Not sure if its write but the extension only logs these errors for this site.

That warning is probably this. They do set robustness as empty string, but apparently that is not good enough for Chrome? I am not sure what to do with it.  One can modify addRobustnessLevelIfNeeded to work with  MediaCapabilities.decodingInfo call, and replace empty strings with SW_SECURE_CRYPTO and see if it helps?

Like I did it the commit. Other than that, please figure it out yourself XD

Amazing work mate the new commits fix the issue. On all the sites I could test :)


Icons in edit mode is WIP, but no option to disable icons in edit mode?!

Describe the bug
The documentation says icons in edit mode are work in progress (and I want to disable this feature since I don't use it AND conflicts with other plugins), but there is no option to disable icons in edit mode.
To Reproduce

Open Iconize settings
No option to disable icons in edit mode

Expected behavior
There should be an option to disable icons in edit mode.
Additional context
I use Espanso with : key trigger, which always triggers the unwanted iconize suggestion box, and I also use the Inline Scripts plugin set to trigger via ::, which also conflicts with iconize.

This has been released in v2.8.0.


[docs] Generalize non-markdown I18n

[x] I have followed (at least) the PR section of the contributing guide.

@oliviertassinari Thanks for fixing it up! It was 🕝 and I had run out of steam. (I didn't even look at the GitHub diff for clues! :sleeping:.)

Redux might not be the best tool for handling this

Yeah, context might be more appropriate, but as you say, it was working for the language menu, so I didn't want to start changing up the implementation at this point – "if it ain't broke"...
I had missed backers (I'll take a look), but also want to look at how we approach the Nav. (Perhaps that's best left for another PR though.)

One step at the time :)

I was thinking of finding a good module for it. Maybe we can simply add this helper in our core module
function compose(...funcs) {
  return funcs.reduce((a, b) => (...args) => a(b(...args)), arg => arg);
}

export default compose;

There's also recompose/pure. Not that big of an issue if we require<EMAIL_ADDRESS>and use React.memo

@eps1lon If we increase the minimum version of React to v16.8.0, it shouldn't be an issue. More bundle size savings :)


Add CI/CD tools for NPM module dependency management.

e.g Greenkeeper & Synk.

Opened an INFRA ticket to do this: https://issues.apache.org/jira/browse/INFRA-18705

INFRA said no. Waiting for clarification on this rule after emailing the mailing list...

Policy changed; we have dependabot enabled for this repo.  Closing as done


Add Configuration to Suppress Common Containers and drivers

Consider adding a configuration option to automatically suppress common container such as Tomcat and database drivers such as MySQL. These end up resulting in possible false positives. For instance, tomcat-juli.jar is identified as Tomcat. Database drivers end up being identified as the database server. While these findings may indicate a valid issue in the environment, several users are reporting these as false positives because the version of tomcat-juli or the database driver may not match exactly the server version that is deployed.

FYI. False positive for tomcat-embed-el as well.
tomcat-embed-el-8.0.28.jar (cpe:/a:apache:tomcat:8.0.28, cpe:/a:apache_tomcat:apache_tomcat:8.0.28, org.apache.tomcat.embed:tomcat-embed-el:8.0.28) : CVE-2013-2185, CVE-2009-2696, CVE-2007-5461, CVE-2002-0493

This likely cannot be implemented for the database connectors. See issue #434; NVD uses the same CPE for both the connectors and database server for MySQL (and likely others).

Due to issues with CPE identifiers being used for connectors/clients and the servers themselves I do not feel this should be implemented.


Unify HasBranches and TypeIterator

Get rid of KnowsBranches and use tree.branches::<Type>() instead.

New design does that