Support for SPS-MS3 quantification

Hi, I recently started working on putting together a TMT pipeline and am evaluating Sage as well as Comet/OpenMS/custom approach. My question has to do with processing SPS-MS3 data. I can see you've got this in the works but wanted to open a discussion after encountering an error when attempting to process a file using IsobaricAnalyzer.
Would sage also have issues with quantifying data from these mzMLs which lack isolation window offsets for SPS masses? Here's an example:
<isolationWindow>
  <cvParam cvRef="MS" accession="MS:1000827" value="577.298034667969" name="isolation window target m/z" unitAccession="MS:1000040" unitName="m/z" unitCvRef="MS" />
  <cvParam cvRef="MS" accession="MS:1000828" value="-0.5" name="isolation window lower offset" unitAccession="MS:1000040" unitName="m/z" unitCvRef="MS" />
  <cvParam cvRef="MS" accession="MS:1000829" value="-0.5" name="isolation window upper offset" unitAccession="MS:1000040" unitName="m/z" unitCvRef="MS" />
</isolationWindow>

Thank you for your continued work on sage!

I'm pretty sure I used ThermoRawFileParser for SPS-MS3 when I wrote that code... Lemme dig into a couple files and see if I see the same isolation window defect (that does appear to be a bug/invalid behavior from TRFP, imo).
I could certainly add in a check for this behavior and override it (to some reasonable value, say -1.2 to 1.2 m/z?). I can also resurrect the SPS-MS3 code. I commented it out a while back when I switched from using integer scan numbers to including the full spectrum title (e.g. "controllerType=0 scan=3169") - this is used to lookup the proper MS2 scan.
Note that the commented out code was just for calculating SPS precursor purity - Sage will currently quantify SPS-MS3 data, but will not report SPS purity. Shouldn't be any issue with these files, since the isolation window is only needed to calculate purity. I also use TRFP for SPS-MS3 data all the time.

Thank you for the reply and for confirming quantification of SPS-MS3 should be fine -- lack of SPS precursor purity isn't a big deal!

Lemme know what you find! Definitely want to make TMT workflows as good as possible.
FYI, I've had good success setting fragment_tol much lower than what is frequently used in the literature (0.6 Da -> ~300 ppm)

Hey, so here's a question. Given the below config.json, sage (version 0.13.1, hot off the press) finishes searching in 41 seconds and outputs reasonable looking files, but according to the output there are 0 PSMs/peptides/proteins at 1% FDR (see full output below).
Am I misconfiguring something?
{
    "database": {
        "bucket_size": 16384,
        "fragment_min_mz": 150.0,
        "fragment_max_mz": 1500.0,
        "enzyme": {
            "missed_cleavages": 1,
            "cleave_at": "KR",
            "restrict": "P"
        },
        "static_mods": {
            "^": 304.207,
            "K": 304.207,
            "C": 57.0215
        },
        "variable_mods": {
            "M": 15.9949
        },
        "decoy_tag": "rev_",
        "generate_decoys": true,
        "fasta": "UP000005640_9606.fasta"
    },
    "output_directory": "output_tmt18_literature",
    "quant": {
        "tmt": "Tmt18",
        "tmt_settings": {
            "level": 3,
            "sn": false
        },
        "lfq": false
    },
    "deisotope": false,
    "chimera": false,
    "max_fragment_charge": 1,
    "report_psms": 1,
    "precursor_tol": {
        "ppm": [
            -50,
            50
        ]
    },
    "fragment_tol": {
        "ppm": [
            -10,
            10
        ]
    },
    "isotope_errors": [
        -1,
        3
    ],
    "mzml_paths": [
        "thermorawfileparser/1.4.2/ea05148_02042021_T18_F1.mzML"
    ]
}

Output:
[2023-05-19T00:59:47Z INFO  sage] generated 60073946 fragments, 4277706 peptides in 8553ms
[2023-05-19T00:59:47Z INFO  sage] processing files 0 .. 1
[2023-05-19T01:00:11Z INFO  sage]  - file IO:    15011 ms
[2023-05-19T01:00:11Z INFO  sage]  - search:      9035 ms (49964 spectra)
[2023-05-19T01:00:11Z INFO  sage_core::ml::retention_alignment] aligning file #0: y = 1.0000x + 0.0000
[2023-05-19T01:00:11Z INFO  sage_core::ml::retention_alignment] aligned retention times across 1 files
[2023-05-19T01:00:11Z INFO  sage_core::ml::retention_model] - fit retention time model, rsq = NaN
[2023-05-19T01:00:19Z INFO  sage] discovered 0 target peptide-spectrum matches at 1% FDR
[2023-05-19T01:00:19Z INFO  sage] discovered 0 target peptides at 1% FDR
[2023-05-19T01:00:19Z INFO  sage] discovered 0 target proteins at 1% FDR

File downloaded from this dataset: https://www.ebi.ac.uk/pride/archive/projects/PXD024275
Full URL: https://ftp.pride.ebi.ac.uk/pride/data/archive/2021/04/PXD024275/ea05148_02042021_T18_F1.raw
Converted with ThermoRawFileParser 1.4.2
Thanks!

We used a 50-ppm precursor ion tolerance and 0.9 Da product ion tolerance for MS2 scans collected in the ion trap and 0.02 Da product ion tolerance for MS2 scans collected in the Orbitrap.

10ppm fragment tolerance is probably just a tad too narrow here 😉
Perhaps start with 0.9 Da and then move it down? I like to make a histogram of MS2 fragment tolerance vs decoys and see if it can be generally tighter (sns.displot(data=df, x='fragment_ppm', hue='label')). I usually find that (on our instruments at least) even 0.6 Da is wider than necessary.

Using 10ppm, I also get 0 PSMs for that file.
With 0.9 Da:
[2023-05-19T01:43:24Z INFO  sage] discovered 5980 target peptide-spectrum matches at 1% FDR
[2023-05-19T01:43:24Z INFO  sage] discovered 5235 target peptides at 1% FDR
[2023-05-19T01:43:24Z INFO  sage] discovered 3123 target proteins at 1% FDR

With 300 ppm:
[2023-05-19T01:45:30Z INFO  sage] discovered 6920 target peptide-spectrum matches at 1% FDR
[2023-05-19T01:45:30Z INFO  sage] discovered 6040 target peptides at 1% FDR
[2023-05-19T01:45:30Z INFO  sage] discovered 3467 target proteins at 1% FDR

You might get difference results, given that we are using slightly different fasta files.

Makes sense, thank you for pointing that out!


[firebase auth]: Flutter, ReactNative apps hit Error code 39 (QuotaExceeded) message is too vague, shows on blaze plan

Is there an existing issue for this?

[X] I have searched the existing issues.

Which plugins are affected?
Auth
Which platforms are affected?
Android, iOS, Web
Description
Hi!
I got an internal error, code 39 when using calling the verifyphone method of phone sign in. Can you give me any specifics, what causes this error? Is there a list?
Thanks a lot in advance!
Reproducing the issue
I faced this error when I tried to logged in by using phoneNumber.
This functions have worked normally for 2 years.
I tested with many phoneNumbers that I have.
Error: {"error":{"code":503,"message":"Error code: 39","errors":[{"message":"Error code: 39","domain":"global","reason":"backendError"}]}}
Firebase Core version
2.27.0
Flutter Version
3.19.0
Relevant Log Output
No response
Flutter dependencies

Expand Flutter dependencies snippet

Replace this line with the contents of your `flutter pub deps -- --style=compact`.

Additional context and comments
No response

The exception is QuotaExceeded, this means you have hit the limit for the IP address. You might be able to whitelist your phone number which you can do in the Firebase console. Although, you will still have to wait until the temporary restriction is lifted by the Firebase server. (i.e. whitelist your phone number and wait a day for the ban to be lifted). This isn't something to be fixed on FlutterFire so I am closing it out.


Fix for Duplicate Entry SQL Error on 'pages' Table

This PR addresses a SQLSTATE[23000] integrity constraint violation error encountered when inserting a new page with a non-unique slug into the pages table. The error was caused by the pages_slug_unique constraint on the slug column.
Problem:
The application threw an exception for a duplicate entry for the key pages.pages_slug_unique when attempting to insert a new page with the same slug as an existing page, but with a different parent.
Solution:
The unique index on the slug column has been removed, and a new compound unique index has been introduced on the combination of slug and parent_id columns. This allows the same slug to be used as long as it has a different parent, thus ensuring unique URLs for different page hierarchies while avoiding the integrity constraint violation.

Hi thanks for noticing this bug. Please create new migration file to fix this. Avoid editing the existing migration file

[ ] Create a new migration file to fix unique index

#134
Please submit a new PR fixing this


How can I execute BGREWRITEAOF command from RedissonClient?

Does Redisson expose an interface to execute any Redis command? Thanks.

Yes.
Here it is https://github.com/redisson/redisson/wiki/10.-additional-features#107-low-level-redis-client

Thank you! Just to clarify, this will have to be a separate Redis client connection from the RedissonClient? i.e. can't re-use the underlying RedisClient from RedissonClient ?

It creates a separate Redis client connection.


[WIP] Initial Pass at Supporting Binary (and higher) Properties

Description
This PR aims to add support for curating data sets of physical properties measured for substances containing two or more components.
Status

[ ] Ready to go

Codecov Report

Merging #6 into master will increase coverage by <.01%.
The diff coverage is 0%.


About megadepth.py line 41

Hi Author ！
in megadepth.py line 41 there seems no key 'pairs' in scene_info, i transform the scene_info int a dict here is my print(scene_info.keys())outcomes:
dict_keys(['image_paths', 'depth_paths', 'intrinsics', 'poses', 'overlap_matrix', 'scale_ratio_matrix', 'angles', 'n_points3D', 'points3D_id_to_2D', 'points3D_id_to_ndepth'])
I have no idea about 'pairs' and overlaps

@ZhouShunlong
Hi, i have same problem. Did you figure out problem?

This comes from the megadepth preprocessing scripts that are described in dkm (similar process as loftr and d2net etc.)

Hi, @Parskatt
Can i get 'pairs' and 'overlaps' from only prep_scene_info ? because there are no  'pairs' and 'overlaps'  in preprocess_scene.py

This should work https://github.com/Parskatt/storage/releases/tag/prep_scene_info


Wrong Date and Source of the DAtasett

The website of the GLD project lists all information that is needed, with a citation information: https://starling.rinet.ru/new100/main.htm

Check also here: https://github.com/lexibank/starostinkaren


#454 Releasing Verifiers after KWExample run

Releases retained resources held by the verifiers
Avoids issues with objects in memory which have NSNotificationCenter subscriptions

Proposed fix for #454

Aye, this looks like it should be in - thanks for the bumps 👍

Hi!
Fist thank you very much for the fix, it landed just 2 days before I started having the same issue 😄
I was having similar issues and after running tests with a version of Kiwi with this merged I still have them.
This fixes the issue with the matchers, I’ve see how objets that were hitting that use case are now released. So those tests now work without problem. In the next example containerViewModel was being leaked with previous versions of Kiwi, now it gets released immediately after each it.
<EMAIL_ADDRESS>^{
  [[theValue(containerViewModel.displaySearch) should] beTrue];

👍
But I’m still seeing problems with other tests that use the stubbing. Specifically when an object captures another in it’s stubbed method. Like this:
beforeEach(^{...
  [refineViewModel stub:@selector(filterDelegate) andReturn:containerViewModel];

In this case containerViewModel doesn’t get deallocated. It gets deallocated after each test inside a context, as the new reassignment and stubbing free the previous instance but it gets leaked in the last it as nobody is cleaning up those stubs. I can fix it by calling clearStubs manually.
afterEach(^{
    [refineViewModel clearStubs];
});

But it feels like it should work without that. This seems to be related with an issue that I opened a while ago about stubs not being cleared #591.
Cheers, and thank you again 🎉


Define a "Brillig stdlib" for common functions for which the ACVM handles foreign calls.

Problem
Noir is currently replacing the usage of a number of directives with Brillig functions which involve external calls. This is good as it will allow us to remove the Directive opcode in future however we're now performing foreign calls for several standard ACVM operations, e.g. checking equality between two values.
Happy Case
We should define a set of standard brillig functions such as inversion, division, etc. here in ACVM and have the ACVM catch the relevant foreign calls internally rather than requiring the environment to implement this logic.
Alternatives Considered
No response
Additional Context
ACVM JS currently won't process most Noir programs for this reason unless the caller includes the "invert" foreign call handler.
Would you like to submit a PR for this Issue?
Yes
Support Needs
No response

This is just straight up incorrect. I think I brainfarted myself into thinking "brillig = foreign call" as we were using a foreign call to do inversion in the acvm_js tests but this isn't necessary.


Filters don't work on CellRenderer things.

Just like group keys.
Filters don't seem to work on the columns which have a cellRenderer instead of simple field value.

cell renderers should be for formatting only (ie creating complex html). so the renderer shouldn't be part of the filtering.
if you want to filter a value not based on field, you should be using valueGetters, which do work with filtering.

@ceolter  I think the api changed since 2015.
@vivektodi you should use filterValueGetter because valueGetters work only ig you want to format the value for display.


Issue with electron global shortcuts and typeString

var app = require('app');
var shortcut = require('global-shortcut');
var robot = require('robotjs')

app.on('ready', function() {
  shortcut.register('ctrl+x', function() {
    robot.typeString('test')
  });
});

app.on('will-quit', function() {
  shortcut.unregister('ctrl+x');
});

Go to empty Chrome address bar
Hit ctrl-x

Nothing happens.
But if you add a keyTap before the typeString in the shortcut handler, like so:
robot.keyTap('f')
robot.typeString('test')

then, ftest will be entered when pressing the shortcut.

The issue seems to be that ctrl is still held down when typeString('test') is called, so entered text is interpreted as ctrl+t etc. There would probably have to be some way to trigger it only after modifiers are released.

Thanks for the info @raine!


Error reading manifest file: reflect: call of reflect.Value.Set on zero Value

CLI version: v6.9.0
Reproduce
There is a section services in manifest.yml but no service specified at all like this:
---
applications:
- name: example-app
  services:

Then it throughs stacktrace when running cf push:
API endpoint:   https://api.ng.bluemix.net (API version: 2.19.0)
User:           <user-email>
Org:            <user-org>
Space:          prod
FAILED
Error reading manifest file:
reflect: call of reflect.Value.Set on zero Value
/var/vcap/data/gocd-agent/pipelines/Linux64-Unit-Tests/src/github.com/cloudfoundry/cli/Godeps/_workspace/src/github.com/cloudfoundry-incubator/candiedyaml/decode.go:95 (0x6d2ea7)
/var/vcap/packages/golang-1.2/src/pkg/runtime/panic.c:248 (0x4164f6)
/var/vcap/packages/golang-1.2/src/pkg/reflect/value.go:249 (0x4ecf1a)
/var/vcap/packages/golang-1.2/src/pkg/reflect/value.go:1380 (0x4f19b8)
/var/vcap/data/gocd-agent/pipelines/Linux64-Unit-Tests/src/github.com/cloudfoundry/cli/Godeps/_workspace/src/github.com/cloudfoundry-incubator/candiedyaml/resolver.go:93 (0x6de4a3)
/var/vcap/data/gocd-agent/pipelines/Linux64-Unit-Tests/src/github.com/cloudfoundry/cli/Godeps/_workspace/src/github.com/cloudfoundry-incubator/candiedyaml/decode.go:466 (0x6d5d92)
/var/vcap/data/gocd-agent/pipelines/Linux64-Unit-Tests/src/github.com/cloudfoundry/cli/Godeps/_workspace/src/github.com/cloudfoundry-incubator/candiedyaml/decode.go:196 (0x6d3d8e)
/var/vcap/data/gocd-agent/pipelines/Linux64-Unit-Tests/src/github.com/cloudfoundry/cli/Godeps/_workspace/src/github.com/cloudfoundry-incubator/candiedyaml/decode.go:394 (0x6d548d)
/var/vcap/data/gocd-agent/pipelines/Linux64-Unit-Tests/src/github.com/cloudfoundry/cli/Godeps/_workspace/src/github.com/cloudfoundry-incubator/candiedyaml/decode.go:193 (0x6d3e58)
/var/vcap/data/gocd-agent/pipelines/Linux64-Unit-Tests/src/github.com/cloudfoundry/cli/Godeps/_workspace/src/github.com/cloudfoundry-incubator/candiedyaml/decode.go:171 (0x6d3abe)
/var/vcap/data/gocd-agent/pipelines/Linux64-Unit-Tests/src/github.com/cloudfoundry/cli/Godeps/_workspace/src/github.com/cloudfoundry-incubator/candiedyaml/decode.go:137 (0x6d358d)
/var/vcap/data/gocd-agent/pipelines/Linux64-Unit-Tests/src/github.com/cloudfoundry/cli/tmp/cli_gopath/src/github.com/cloudfoundry/cli/cf/manifest/manifest_disk_repository.go:82 (0x4c24af)
/var/vcap/data/gocd-agent/pipelines/Linux64-Unit-Tests/src/github.com/cloudfoundry/cli/tmp/cli_gopath/src/github.com/cloudfoundry/cli/cf/manifest/manifest_disk_repository.go:50 (0x4c2032)
/var/vcap/data/gocd-agent/pipelines/Linux64-Unit-Tests/src/github.com/cloudfoundry/cli/tmp/cli_gopath/src/github.com/cloudfoundry/cli/cf/manifest/manifest_disk_repository.go:33 (0x4c1ed3)
/var/vcap/data/gocd-agent/pipelines/Linux64-Unit-Tests/src/github.com/cloudfoundry/cli/tmp/cli_gopath/src/github.com/cloudfoundry/cli/cf/manifest/generate_manifest.go:1 (0x4c39fe)
/var/vcap/data/gocd-agent/pipelines/Linux64-Unit-Tests/src/github.com/cloudfoundry/cli/tmp/cli_gopath/src/github.com/cloudfoundry/cli/cf/commands/application/push.go:389 (0x648ef3)
/var/vcap/data/gocd-agent/pipelines/Linux64-Unit-Tests/src/github.com/cloudfoundry/cli/tmp/cli_gopath/src/github.com/cloudfoundry/cli/cf/commands/application/push.go:368 (0x648c92)
/var/vcap/data/gocd-agent/pipelines/Linux64-Unit-Tests/src/github.com/cloudfoundry/cli/tmp/cli_gopath/src/github.com/cloudfoundry/cli/cf/commands/application/push.go:120 (0x6457b2)
/var/vcap/data/gocd-agent/pipelines/Linux64-Unit-Tests/src/github.com/cloudfoundry/cli/tmp/cli_gopath/src/github.com/cloudfoundry/cli/cf/command_runner/runner.go:50 (0x4b5c29)
/var/vcap/data/gocd-agent/pipelines/Linux64-Unit-Tests/src/github.com/cloudfoundry/cli/tmp/cli_gopath/src/github.com/cloudfoundry/cli/cf/command_runner/runner.go:1 (0x4b5f54)
/var/vcap/data/gocd-agent/pipelines/Linux64-Unit-Tests/src/github.com/cloudfoundry/cli/tmp/cli_gopath/src/github.com/cloudfoundry/cli/cf/app/app.go:76 (0x49bf5e)
/var/vcap/data/gocd-agent/pipelines/Linux64-Unit-Tests/src/github.com/cloudfoundry/cli/Godeps/_workspace/src/github.com/codegangsta/cli/command.go:101 (0x4dd210)
/var/vcap/data/gocd-agent/pipelines/Linux64-Unit-Tests/src/github.com/cloudfoundry/cli/Godeps/_workspace/src/github.com/codegangsta/cli/app.go:125 (0x4db724)
/var/vcap/data/gocd-agent/pipelines/Linux64-Unit-Tests/src/github.com/cloudfoundry/cli/main/main.go:181 (0x402769)
/var/vcap/data/gocd-agent/pipelines/Linux64-Unit-Tests/src/github.com/cloudfoundry/cli/main/main.go:118 (0x401dfe)
/var/vcap/packages/golang-1.2/src/pkg/runtime/proc.c:220 (0x4182cf)
/var/vcap/packages/golang-1.2/src/pkg/runtime/proc.c:1394 (0x41a800)

It works again when filling service instance name in manifest.yml, or just remove the section services.
Expectation
friendly error message instead of stacktrace.

CLI team is taking a look at this.

Hey there,
We've added a friendlier error message for this, it should read "error: services should not be null" now.


Upgrade to 97.1.x

A number of the XUnit tests have started failing after upgrade. Likely changes in Chromium.
Tests appear to be mouse/keyboard input related. Most of the problems seem to be timing related, as when stepping through at least some of the test cases with the debugger they work as expected.

https://ci.appveyor.com/project/cefsharp/puppeteer/builds/42280954
A new Chromium update is due in a few days so will try upgrading again before doing any serious debugging.

Failing tests will be tracked in https://github.com/cefsharp/Puppeteer/issues/8


Static Blogging App

It is a static Blogging app where the images get changed on every relod having about us, Contact pages etc.
Tech stack used:- HTML, CSS, jS

please assign me


RemixI18Next.getRouteNamespaces returns every namespace instead of matched routes

Describe the bug
The docs for getRouteNamespaces imply that it only returns the namespaces for the current request, however we are finding it returns every namespace in our app.
This causes the server to load a lot more namespaces from an http backend than necessary to serve the current request which impacts performance.
Perhaps it should use the current route matches instead of all routeModules instead,
e.g.
function getRouteNamespaces(context: EntryContext): string[] {
  const namespaces = Object.values(
    context.staticHandlerContext.matches
  ).flatMap((match) => {
    const route = match.route;

    if (typeof route?.handle !== "object") return [];
    if (!route.handle) return [];
    if (!("i18n" in route.handle)) return [];
    if (typeof route.handle.i18n === "string") return [route.handle.i18n];

    if (
      Array.isArray(route.handle.i18n) &&
      route.handle.i18n.every((value: string) => typeof value === "string")
    ) {
      return route.handle.i18n as string[];
    }

    return [];
  });

  return [...new Set(namespaces)];
}

Your Example Website or App
Can create if necessary.
Steps to Reproduce the Bug or Issue

Follow the standard remix-18next setup.
Create a Remix app with many separate localization namespaces.
Note that all namespaces are returned by getRouteNamespaces for each request.

  **let ns = i18next.getRouteNamespaces(remixContext);**

  await instance
    .use(initReactI18next) // Tell our instance to use react-i18next
    .use(Backend) // Setup our backend
    .init({
      ...i18n, // spread the configuration
      lng, // The locale we detected above
      ns, // The namespaces the routes about to render wants to use
      backend: { loadPath: resolve("./public/locales/{{lng}}/{{ns}}.json") },
    });

Expected behavior
As a developer, I expect only the namespaces required for the current matched routes to be returned.
Screenshots or Videos
No response
Platform
NodeJS 20+
Additional context
No response

This should be fixed in v7 as RR only sends the manifest of the matching routes during SSR and not every route


Isaac Sim support for windows

Options:

Store xml in volume
Windows Sandbox
Hyper-V
Dozen d3d12 to Vulkan

Used ROS2ForWindows


Error when launching QRpi

I got this error when I launch QRpi
Using pipeline:
     libcamerasrc ! video/x-raw,  width=(int)1024, height=(int)768, framerate=(fraction)15/1 ! videoconvert ! videoscale ! video/x-raw, width=(int)1024, height=(int)768 ! appsink

(QRpi:774): GLib-GObject-WARNING **: 10:25:52.137: invalid cast from 'GstLibcameraSrc' to 'GstBin'

(QRpi:774): GStreamer-CRITICAL **: 10:25:52.137: gst_bin_iterate_elements: assertion 'GST_IS_BIN (bin)' failed

(QRpi:774): GStreamer-CRITICAL **: 10:25:52.137: gst_iterator_next: assertion 'it != NULL' failed

(QRpi:774): GStreamer-CRITICAL **: 10:25:52.137: gst_iterator_free: assertion 'it != NULL' failed

[<EMAIL_ADDRESS>global cap_gstreamer.cpp:1535 open OpenCV | GStreamer warning: cannot find appsink in manual pipeline
[<EMAIL_ADDRESS>global cap_gstreamer.cpp:1173 isPipelinePlaying OpenCV | GStreamer warning: GStreamer: pipeline have not been created
[<EMAIL_ADDRESS>global cap.cpp:204 open VIDEOIO(GSTREAMER): backend is generally available but can't be used to capture by name
Failed to open camera.
I'm worjing on a Pi4 with no desktop environment.
Could you help me, please?

Problem

It appears that the error you're encountering is related to the GStreamer pipeline setup using libcamerasrc on your Raspberry Pi 4. The error message suggests an issue with casting GstLibcameraSrc to GstBin.

Solution

One potential solution to address this issue is to encapsulate the libcamerasrc element within a bin in your GStreamer pipeline. Here's an example modification:

#!/bin/bash

gst-launch-1.0 -e libcamerasrc ! video/x-raw, width=1024, height=768, framerate=15/1 ! videoconvert ! videoscale ! video/x-raw, width=1024, height=768 ! appsink

Thank you! If you have any concerns or doubts, please feel free to let me know.

It seems that the warning "WARNING: erroneous pipeline: no element 'videoconvert'" indicates that the 'videoconvert' element is not available within your GStreamer installation or configuration.
To resolve this issue, you may need to install the necessary GStreamer plugins or verify if they are properly installed on your system. 'videoconvert' is a part of the GStreamer base plugins and is commonly used for format conversion within GStreamer pipelines.
Try installing the GStreamer base plugins using your system's package manager. For instance, on Debian-based systems, you can use:
sudo apt-get install gstreamer1.0-plugins-base

Replace this command with the appropriate package manager command based on your system.
If 'videoconvert' is already installed or after installing it, if the issue persists, consider modifying the GStreamer pipeline to use an alternative or equivalent element that performs a similar function. For instance, 'autovideoconvert' or 'ffmpegcolorspace' could be viable alternatives.
Modify the pipeline as follows:
libcamerasrc ! video/x-raw, width=(int)1024, height=(int)768, framerate=(fraction)15/1 ! autovideoconvert ! videoscale ! video/x-raw, width=(int)1024, height=(int)768 ! appsink

After making these changes, try running the command again. If the problem persists, providing more details about your system configuration or the specific GStreamer version being used can help in further troubleshooting.


dev not picking up comments in pyproject.toml

After refreshing an environment, the pkgx comments nor python declaration in the file are enforcing the python version in the dev environment.

Discussed in https://github.com/orgs/pkgxdev/discussions/768

Originally posted by j1philli October  2, 2023
HI!
Just switched from tea to pkgx and went to get dev setup.

Because of issues with python 3.12 and my project I want to have it use 3.11.4 so I put it in the pyproject.toml

But alas I still have 3.12 in my dev environment

Any guidance would be much appreciated!

did this use to work pre 1.0?

k def not, will fix for 1.0.1

Who would normally make the python this version?
Sorry not sure I understand the question, isn't pinning versions of software pretty common place?
What should we do in such a case?
Installing all versions would not work. I wouldn't try and pull the version from the dependency list pyproject.toml because of the issue you specified. I would just make the pkgx comments work so that the user is able to specify the version they need in environment. I think if there are no comments then installing latest version like it does now is good enough.
I am surprised that you can't just send a command while in dev to change the version of an installed dependency

Sorry not sure I understand the question, isn't pinning versions of software pretty common place?

who enforces the python version, who installs it? the python package manager itself? The user?

who enforces the python version, who installs it? the python package manager itself? The user?
The user most of the time, then there are python utilities that also manage its own, seperate versions in environments they create(I don't think pkgx needs to worry about the latter at all).
The user needs to have python on machine. This is what pkgx should handle similar to the way https://github.com/pyenv/pyenv where you can specify different versions to use.
Then there are python environment managers like https://github.com/python-poetry/poetry that will use the systems python to run and then it manages environments with different versions of python and python packages installed in the environments it creats. Again, I don't think pkgx should be worried about these.
This has only come up because the poetry python dependency in the pantry wasn't specific enough to not use 3.12, so I wanted to override it somehow. Once pkgx gets the latest pantry version I believe it will install the proper version in dev and everything will work.
Hope that builds context, I would still consider myself a novice so let me know if something isn't clear.

Python person here - when it comes to the management of the version of python itself for a project, different tools may specify it in different ways in config, but all of them expect a matching version to be installed already for it to work. If there isn't a version that matches, it won't work.
So, if you for example only have python 3.11.4 on your machine:

Specifying 3.11.4 will work
Specifying 3.11 or ~3.11.x will or even ^3.x.y work and give you 3.11.4 (wouldn't do that last one though :) )
Specifying 3.11.6 will not work becuase there's only one version that matches and it's not on your machine.

Installation of different python versions is often (not always) handled via another tool (eg. asdf, pyenv etc.)

Tests cannot confirm the first part of this bug report, a pyproject.toml that has:
# pyproject. toml
# ---
# pkgx:
#<EMAIL_ADDRESS># ---

Results in python 3.10. Can you provide a test case?
The second part is a feature request to load python versions from the TOML which will go into 1.1

Not the results I am seeing. I have a pyproject.toml with only what you stated as comments. I enter the directory it is located which is brand new. I check the version of python and it is the latest 3.11.6 instead of the expected 3.10

k figured it out, fix coming up thanks. This only effects YAML FM in pyproject.toml that was a string with a pkgx: prefix.


ragg freezes check

It freezes and stalls with 100% cpu. This is output so far (but perhaps it is truncated)
* using log directory ‘/private/var/folders/nc/92km4tn11hg8k2fvx5fj6_mm0000gn/T/RtmpoxNIPh/file14ba98880374/ragg.Rcheck’
* using R version 4.0.3 (2020-10-10)
* using platform: x86_64-apple-darwin17.0 (64-bit)
* using session charset: UTF-8
* using options ‘--no-manual --no-build-vignettes’
* checking for file ‘ragg/DESCRIPTION’ ... OK
* checking extension type ... Package
* this is package ‘ragg’ version ‘0.4.0’
* package encoding: UTF-8
* checking package namespace information ... OK
* checking package dependencies ... OK
* checking if this is a source package ... OK
* checking if there is a namespace ... OK
* checking for executable files ... OK
* checking for hidden files and directories ... OK
* checking for portable file names ... OK
* checking for sufficient/correct file permissions ... OK
* checking whether package ‘ragg’ can be installed ... OK
* checking installed package size ... OK
* checking package directory ... OK
* checking DESCRIPTION meta-information ... OK
* checking top-level files ... OK
* checking for left-over files ... OK
* checking index information ... OK
* checking package subdirectories ...
*
* ```

This was due to recursive symlinks in the ragg script. Fixed now.

This was due to recursive symlinks in the ragg script. Fixed now.


Get faq via static Linux binary

This will need to be force merged to take effect.
Slight mod to simplify for Dockerfile usage from the instructions for static Linux binary given here:
https://github.com/jzelinskie/faq

/cherrypick release-4.5

/cherry-pick release-4.5

Looks like we only addressed this in 4.6+:
https://prow.ci.openshift.org/view/gs/origin-ci-test/pr-logs/pull/openshift_release/10638/rehearse-10638-periodic-ci-kube-reporting-metering-operator-release-4.5-metering-periodic-aws/1290299279805517824


[WIP] universal pagestorage

Signed-off-by: JaySon-Huang<EMAIL_ADDRESS>What problem does this PR solve?
Issue Number: close https://github.com/pingcap/tiflash/issues/6071
Problem Summary:
What is changed and how it works?
Check List
Tests

[ ] Unit test
[ ] Integration test
[ ] Manual test (add detailed scripts or steps below)
[ ] No code

Side effects

[ ] Performance regression: Consumes more CPU
[ ] Performance regression: Consumes more Memory
[ ] Breaking backward compatibility

Documentation

[ ] Affects user behaviors
[ ] Contains syntax changes
[ ] Contains variable changes
[ ] Contains experimental features
[ ] Changes MySQL compatibility

Release note

None

done by https://github.com/pingcap/tiflash/pull/6723


Add CI Test Run using Latest JDK

Description
Fixes #30865
Adds an additional CI test run using the latest released JDK version.
All SDK Contribution checklist:

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

General Guidelines and Best Practices

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

Testing Guidelines

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

/azp run java - search

/azp run java - search

/azp run java - search

/azp run java - search

/azp run java - search

/azp run java - search

/azp run java - search

API change check
API changes are not detected in this pull request.


Getting Internal Server error

Pasting lock file from our project and getting internal server error.
Attaching error I get in application console.

@jenerts-at-levelpath Thanks for submitting your issue. Any chance you could share the content of your Gemfile.lock?
Failure is probably related to something in there.
I just did a basic test to make sure that things are working with a pretty basic Gemfile.lock and it seems to be working as expected: https://www.railsbump.org/lockfiles/7058049a5cb15851acf766e758af9c49

Closing this until you can share more info. Feel free to re-open if it is still happening.


Build Any Favourite Franchise List using REST APIs

Example: Pokemon app which shows pokemon photo its details evolution , info, etc in card view in recycler view adapter using APIs

Hey, I can work on this. I can build an application using Kotlin. Can you assign it to me?

Sure! go ahead!
Assigning to you!

Hey @duttabhishek0 please update your progress here, so we'll know you are still working on same issue

Backend part doen, working on the UI.

Hey,
Sorry, but I don;t think so I would be able to complete it on time. Please remove me. I got engaged in some internship work. Again apologies!

@aadityamp01 can you assign this issue to me?

Hey @Kajal13081 please update your progress here, so we'll know you are still working on same issue


Watch FederatedClusters and cluster-registry Clusters in any namespace

What would you like to be added:
Allow the federation controllers to watch/update FederatedClusters in any namespace and not just a single Federation namespace. Similarly allow cluster registry resources to live in any namespace and not just a single designated cluster registry namespace.
Why is this needed:
Just as FederatedClusters in Federation v2, OpenShift Hive's ClusterDeployment resource is namespaced. Namespaces will be used to manage RBAC for the different users of the Hive cluster. Ideally, the FederatedCluster resource, related secret and ClusterRegistry cluster can live in the same namespace as their corresponding Hive ClusterDeployment so they can be managed together.

/kind feature

/cc @pmorie

This issue appears similar to #526.  As per commentary on that issue, federated clusters are currently in a single namespace to ensure that a cluster name referenced in a placement directive can be unambiguous.  If federated clusters were allowed to exist in multiple namespaces, it would be necessary to implement a way to either maintain that characteristic (e.g. webhook validation ensuring system-wide uniqueness of a cluster name) or allow placement directives to accept namepspace-qualified cluster names.

It should be possible to allow clusters to be defined in any namespace by ensuring references to those federated clusters are namespace-qualified.


Symptom check - Button Done on Step 10 page doesn't work

env. https://staging.fightpandemics.work/symptoms-check#step10
Steps:

Go to Symptom check
Answer questions and go to Step 10.
Scroll down to the button Done.
Done looks like enabled button(css div class sc-fzpans cKJzHK) but it doesn't work. Should it redirect somewhere? Message sent on slack to  @Yu.

More info:
Browser: Chrom v. 81
mac os
Expected behaviour: Figma screen. This button should open Feed:

I'm working on it.

I'm working on it.

Thanks! In the future please assign yourself on the right hand side.


Cleanup (braking changes) of status codes used in Javalin

PR on issue nº5 in https://github.com/javalin/javalin/issues/1517#issuecomment-1119568890

Refactored HttpResponseException to use HttpCode
Refactored Context#redirect to replace int parameter with HttpCode
Refactored Context.status to return HttpCode, added  statusCode() as an utility method that returns Int code
Refactored some other internal calls to the former methods
Refactored tests to use HttpCode in tests instead of raw int values

Signed-off-by: Alberto Zugazagoitia<EMAIL_ADDRESS>

There are a lot of changes, please take your time to review. Also build will fail due to javalin-testtools using the current Javalin Artifact from sonatype.

There are a lot of changes, please take your time to review. Also build will fail due to javalin-testtools using the current Javalin Artifact from sonatype.

Looks like javalin-testtools uses valid snapshot release. It just should be "Not Found":

https://github.com/javalin/javalin/blob/aef72d2a09773b688a646dbe9c47845c9a6da497/javalin-testtools/src/test/java/io/javalin/testtools/JavaTest.java#L121

Thanks @zugazagoitia, nice work! I see @dzikoysk has given a lot of good comments already, all of which I agree with. One additional thing I would do is remove the Javalin#error method which uses ints, I would prefer if we just offered 1 way of doing this. I believe there is a Context#status which uses ints that can be removed too.

Any other changes needed?

Any other changes needed?

Error:  Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.10.1:testCompile (java-test-compile) on project javalin-testtools: Compilation failure
Error:  /D:/a/javalin/javalin/javalin-testtools/src/test/java/io/javalin/testtools/JavaTest.java:[173,67] cannot find symbol
Error:    symbol:   variable INTERNAL_SERVER_ERROR
Error:    location: class io.javalin.testtools.JavaTest

Missing an import?

I've noticed, I'm currently checking

Maybe do a search for statusCode: Int and/or status: Int and get rid of as many as possible? The public API should just offer the enum now.

Didn't spot anything wrong.

Error:    Run 2: JavaTest.testing_full_app_works:121 � IllegalState Server already started. If you are trying to call start() on an instance of Javalin that was stopped using stop(), please create a new instance instead.

Seems something is trying to reuse an old Javalin instance.
The HttpCodes renaming is a bit inconsistent with the existing Header class. Is it possible to put the codes on a companion object in the interface?

Seems something is trying to reuse an old Javalin instance.

https://github.com/javalin/javalin/blob/60dd783c43fd856dc30215365c89b95c92d0768b/javalin-testtools/src/test/java/io/javalin/testtools/JavaApp.java#L11
Using a static value here means we use the same Javalin app for the three consecutive tries, and after it is stopped on the first run, it cannot be started again.

The HttpCodes renaming is a bit inconsistent with the existing Header class. Is it possible to put the codes on a companion object in the interface?

I don't think so, an enum implementing the interface is needed, if we move it into a companion the import would become something like: import io.javalin.http.HttpCode.Companion.HttpCodes;  if I'm not wrong.

How would you like the naming to be?

HttpStatus.NAME and HttpStatusCode for the interface perhaps?

Using a static value here means we use the same Javalin app for the three consecutive tries, and after it is stopped on the first run, it cannot be started again.

No idea why it was being triggered here, but I rewrote the test on master.

Like this?

Like this?

Yeah, I like this. How about you @dzikoysk ?
I know you both want int alternatives - we can always add them later if it turns out that they're needed.

All checks have failed
---
Error:  Errors:
Error:  io.javalin.testtools.JavaTest.testing_full_app_works
Error:    Run 1: JavaTest.testing_full_app_works:121 �  Assertion error:
expected: "Not found"
 but was: "Not Found"

I guess this was the reason for the error earlier - it flaked on this test and tried to run again, and we only got the error message related to the static instance.

I'll try to take a look tomorrow :)

So some overall notes:

I'd rename HttpStatus.status to HttpStatus.code, because it'll look like e.g. ctx.status.status. I know, there's ctx.statusCode(), but it's only example.
Tests still don't really use response.httpCode()
I'd keep consistent static imports to HttpStatuses in tests, because currently it's slightly random
HttpStatusCode sounds a little bit strange, but it's only interface that will be rarely used explicitly, so I think it's fine. I'd probably mention in Javadocs that people should take a look on HttpStatus for default codes, because currently they'll see quite meaningless interface in API.

They're actually called http status codes: https://en.m.wikipedia.org/wiki/List_of_HTTP_status_codes
I find it a bit hard to name them...

I mean that it sounds a little bit strange for me in a context of having also HttpStatus as enum. I wonder if it wouldn't be easier to just have one HttpStatus/HttpStatusCode class and some predefined objects and in case of any custom status codes users can just use new HttpStatus(code, message) instead of implementing interface on their own. It might be also easier to find those default status codes, because having interface in signatures might be confusing for some ppl, especially newbies.
Anyway, despite of points #1/#2/#3 I'm fine with those changes :) `#4 is more like a loose thought on that.

I wonder if it wouldn't be easier to just have one HttpStatus/HttpStatusCode class and some predefined objects and in case of any custom status codes users can just use new HttpStatus(code, message) instead of implementing interface on their own. It might be also easier to find those default status codes, because having interface in signatures might be confusing for some ppl, especially newbies.

I have no issues with that, sounds like an improvement really ☺

@zugazagoitia after a lot thinking and experimenting, I am ready to accept the ctx.status(int)/app.error(int) method overloads. Sorry about all the back and forth, this is a part of Javalin I care a lot about :)

@zugazagoitia after a lot thinking and experimenting, I am ready to accept the ctx.status(int)/app.error(int) method overloads. Sorry about all the back and forth, this is a part of Javalin I care a lot about :)

Great, I'll push a commit later this morning.

I'd rename HttpStatus.status to HttpStatus.code, because it'll look like e.g. ctx.status.status. I know, there's ctx.statusCode(), but it's only example.

I do agree on this.

Tests still don't really use response.httpCode()
I'd keep consistent static imports to HttpStatus in tests, because currently it's slightly random

I'll get it done too.

HttpStatusCode sounds a little bit strange, but it's only interface that will be rarely used explicitly, so I think it's fine. I'd probably mention in Javadocs that people should take a look on HttpStatus for default codes, because currently they'll see quite meaningless interface in API.

We could remove the interface if we accept integers, people can define their custom codes as a Static final constant. wdyt?

We could remove the interface if we accept integers, people can define their custom codes as a Static final constant. wdyt?

I think we should just offer enum + raw data types via overloaded methods. No interfaces or classes. I tried many things to make this work smoothly from both languages, but all approaches had their drawbacks.

Addressed everything in fb69983, but I'm concerned a build won't be triggered due to the failing testtools test. Can we make it depend on the local (source) version of Javalin instead of the reposilite one?

Can we make it depend on the local (source) version of Javalin instead of the reposilite one?

It already does that?

Can we make it depend on the local (source) version of Javalin instead of the reposilite one?

It already does that?

I don't think so, @dzikoysk ?

There are a lot of changes, please take your time to review. Also build will fail due to javalin-testtools using the current Javalin Artifact from sonatype.

Looks like javalin-testtools uses valid snapshot release from build phase. It should be "Not Found":

https://github.com/javalin/javalin/blob/2d2830fc1b6e8c415c50b30bd1f0634ec0ccff9b/javalin/src/main/java/io/javalin/http/HttpCode.kt#L30
https://github.com/javalin/javalin/blob/aef72d2a09773b688a646dbe9c47845c9a6da497/javalin-testtools/src/test/java/io/javalin/testtools/JavaTest.java#L121

For 4453ebb:

I just wanted to change it to use your new enum :)

I just wanted to change it to use your new enum :)

I thought I had done it already 😥

Everywhere except 1 line 😁

This looks very nice, thank you @zugazagoitia !

Happy to help!


Route-Model-Binding with nested resources

Currently it is not easily possible to differentiate nested resources for route model bindings:
Route::model('a', 'AModel');
Route::resource('a', 'AController');

Route::model('b', 'BModel');
Route::resource('b', 'BController');

Both of these resources have a nested resource called action with the following routes:
Route::resource('a.action', 'AActionController');
Route::resource('b.action', 'BActionController');

If I now want to route model bind their respective action models I can't differentiate them by name, because in both cases the Route will just look for a binding with the name action. The only possible  workaround is to do something like this:
Route::bind('action', function($value, \Illuminate\Routing\Route $route) {
	if ($a = $route->getParameter('a')) {
		return $a->actions()->findOrFail($value);
	} elseif ($b = $route->getParameter('b')) {
		return $b->actions()->findOrFail($value);
	}

	throw new NotFoundHttpException;
});

In my opinion this is very inconvenient and heavily obfuscates that there are actually two bindings going on instead of the expected one.
I would propose the following solution:
Name nested resource route parameters by their full name, for example the nested resource of
Route::resource('post.comment');

would result in routes with the following scheme:
.../post/{post}/comment/{post.comment}

With this you could directly bind to the complete identifiers a.action and b.action from my example

This is a problem I've run into as well, and this is quite an interesting solution.
I usually end up dropping model binding on the second parameter and performing the findOrFail() on the relationship in the controller action instead of the binding callback. I could see it getting really messy if you had the second model nested under a number of other models.

In my case it is actually even messier than you can imagine. My structure is something like this:
A->B->method->instance
A->C->action->instance
A->D->E->action->instance

You don't want to see the code i have to use in my Route::bind('instance', function () {...}) to sort out what instance I am currently getting =(

I dug around in source a bit and I found an issue that would most likely prevent the usage of the post.commment notation:
Laravel uses Symfony to compile its routes parameters into regular expressions. To do so it looks for the following regex on the route pattern #\{\w+\}#. Since \w in a regex is equivalent to [a-zA-Z_0-9] this won't recognize names that include .. That is also the reason why - in route parameters are converted to _ under hood.
A possible workaround would be to just replace . with _ in the name, but this would mean losing some clarity for example when wanting to bind foo-bar.comment, because it would result in foo_bar_comment which can't be distinguished from foo.bar-comment.

Seems to have rejected a while ago.


Running script in integrated terminal stops with error

VSCode Version: 1.20.1
OS Version: Windows 10 1709

Sorry that the following descpition is a bit fuzzy. I put this issue here, if someone else got a similar issue.
I don't know in which version this issue appeared first, maybe in 1.19.0
The project is a year old, nothing has changed and running this script in the terminal was never a problem.
Steps to Reproduce:
Running a build batch script gives the same error at different points like:
PS D:\Visual Studio\Projects\turnkey-board - new> .\tools\win32\build.bat blinky win32-gcc-arm NUCLEO-F401RE rebuild
Executing Command: tools\win32\util\make.exe -f build/win32-gcc-arm/gen.gmk rebuild APP=blinky TOOLCHAIN=win32-gcc-arm HAL=NUCLEO-F401RE
+++ cleaning all
+++ compile: src/app/blinky/task1.cpp
+++ compile: src/app/blinky/task2.cpp
+++ compile: src/lib/FreeRTOS/mem/heap_1.c
+++ compile: src/hal/NUCLEO-F401RE/sys/sys.cpp
tools\win32\util\echo.exe: write error
make: *** [src/hal/NUCLEO-F401RE/sys/sys.o] Error 1
PS D:\Visual Studio\Projects\turnkey-board - new>

Running this again gives:
PS D:\Visual Studio\Projects\turnkey-board - new> .\tools\win32\build.bat blinky win32-gcc-arm NUCLEO-F401RE rebuild
Executing Command: tools\win32\util\make.exe -f build/win32-gcc-arm/gen.gmk rebuild APP=blinky TOOLCHAIN=win32-gcc-arm HAL=NUCLEO-F401RE
+++ cleaning all
+++ compile: src/app/blinky/task1.cpp
+++ compile: src/app/blinky/task2.cpp
+++ compile: src/lib/FreeRTOS/mem/heap_1.c
+++ compile: src/hal/NUCLEO-F401RE/sys/sys.cpp
+++ compile: src/hal/NUCLEO-F401RE/sys/log.cpp
+++ compile: src/mcu/STM32F4xx/os/port.c
+++ compile: src/mcu/STM32F4xx/startup/crt0.cpp
+++ compile: src/mcu/STM32F4xx/startup/int_vect.cpp
tools\win32\util\echo.exe: write error
make: *** [src/mcu/STM32F4xx/startup/int_vect.o] Error 1
PS D:\Visual Studio\Projects\turnkey-board - new>

Running exactly the same script in the PowerShell gives no problem at all.
The write error may by a permission problem of echo.exe.

Duplicate https://github.com/Microsoft/vscode/issues/36630


Migrate addressable addresses to use host-based routing instead of a path

Problem
Path-based routing leaks implementation details that users shouldn't care about.
This is also a problem for DomainMapping users as reported in https://github.com/knative/serving/issues/12686
Persona:
Which persona is this feature for?

Event producer
System Administrator

Exit Criteria
A measurable (binary) test that would indicate that the problem has been resolved.
Time Estimate (optional):
How many developer-days do you think this may take to resolve?
15
Additional context (optional)
/area broker
/area sink
/kind feature-request

For the current channel implementation we are also using the path approach in this repo
k get kafkachannel -A
NAMESPACE   NAME                READY   REASON   URL                                                                                AGE
default     kafka-channel-one   True             http://kafka-channel-ingress.knative-eventing.svc.cluster.local/default/kafka-channel-one   3m13s

/remove-lifecycle stale


Shannon Decomposition error when synthesizing the GHZ unitary matrix

Description of the issue
Greetings there,
Hope all are well. I was trying the quantum_shannon_decomposition() function, and noticed that it doesn't work for the GHZ unitary matrix.
How to reproduce the issue
import cirq
from cirq.transformers.analytical_decompositions import quantum_shannon_decomposition
from scipy.stats import unitary_group

n_qubits = 2
ghz = cirq.Circuit()
qubits = [cirq.NamedQubit(f'q{i}') for i in range(n_qubits)]
ghz.append(cirq.H(qubits[0]))
ghz.append(cirq.CNOT(qubits[0], qubits[1]))

U = ghz.unitary()

qubits = [cirq.NamedQubit(f'q{i}') for i in range(n_qubits)]
circuit = cirq.Circuit(quantum_shannon_decomposition(qubits, U))

assert cirq.approx_eq(U, circuit.unitary(), atol=1e-9)

/home/ace07/Documents/GitHub/QICKIT/.venv/lib/python3.11/site-packages/cirq/transformers/analytical_decompositions/quantum_shannon_decomposition.py:121: RuntimeWarning: divide by zero encountered in scalar divide
  yield ops.ZPowGate(exponent=phi_2 / np.pi, global_shift=phase / phi_2).on(qubit)
/home/ace07/Documents/GitHub/QICKIT/.venv/lib/python3.11/site-packages/cirq/transformers/analytical_decompositions/quantum_shannon_decomposition.py:121: RuntimeWarning: invalid value encountered in scalar divide
  yield ops.ZPowGate(exponent=phi_2 / np.pi, global_shift=phase / phi_2).on(qubit)
/home/ace07/Documents/GitHub/QICKIT/.venv/lib/python3.11/site-packages/cirq/ops/common_gates.py:645: RuntimeWarning: invalid value encountered in scalar multiply
  p = 1j ** (2 * self._exponent * self._global_shift)
/home/ace07/Documents/GitHub/QICKIT/.venv/lib/python3.11/site-packages/cirq/ops/common_gates.py:645: RuntimeWarning: invalid value encountered in scalar multiply
  p = 1j ** (2 * self._exponent * self._global_shift)
  ---------------------------------------------------------------------------
AssertionError                            Traceback (most recent call last)
Cell In[7], [line 16](vscode-notebook-cell:?execution_count=7&line=16)
     [13](vscode-notebook-cell:?execution_count=7&line=13) qubits = [cirq.NamedQubit(f'q{i}') for i in range(n_qubits)]
     [14](vscode-notebook-cell:?execution_count=7&line=14) circuit = cirq.Circuit(quantum_shannon_decomposition(qubits, U))
---> [16](vscode-notebook-cell:?execution_count=7&line=16) assert cirq.approx_eq(U, circuit.unitary(), atol=1e-9)

AssertionError:

Cirq version
cirq == 1.4.1

If I print the unitary for the circuit, it's actually
array([[nan+nanj, nan+nanj, nan+nanj, nan+nanj],
       [nan+nanj, nan+nanj, nan+nanj, nan+nanj],
       [nan+nanj, nan+nanj, nan+nanj, nan+nanj],
       [nan+nanj, nan+nanj, nan+nanj, nan+nanj]])

Which explains the error.

@uzzzzzzz Can you kindly have a look please? I saw that you made the original commit for quantum_shannon_decomposition.py.

So, I implemented this natively on my side, and was able to get past the nan error, but still have the AssertionError problem. It's kind of confusing, it works for certain unitaries, and then for certain unitaries it doesn't.
I tried the following circuit, which is one of the cases that doesn't return the correct value (whilst for randomly generated unitaries, it works fine). A 4 qubit circuit with CX(0, 1) and CX(0, 2).

related to https://github.com/quantumlib/Cirq/issues/6666


[MNOE-962] Product pricing plans under product_pricings

Unable to assign a reviewer @ouranos
pricing_plans is to Apps what product_pricings is to Products

@adamaziz15


Proper Console Debugging/Messaging/Log

This issue is related to the discussion about how will proper made the Console messages and Console Logging for Yupi Emulator.
All related content will be discussed here.

Here are some lists of profanities that we can use for the wordfilter:
English only:
http://www.noswearing.com/dictionary
http://www.bannedwordlist.com/
Multiple languages:
https://github.com/LDNOOBW/List-of-Dirty-Naughty-Obscene-and-Otherwise-Bad-Words (used by Shutterstock)
Feel free to add resources for words!

@TheDoct0r11 wrong Issue. Right Issue is #143


Vernier CDR Grafting

Hi, I see that the CDR grafting option in the server performs straight grafting. Is there any way to automatically perform "Vernier" CDR grafting while retaining key "back-mutations" in the Vernier zones (as you describe in the paper)?
Thank you!!
SG

Hi @salvatta2 sorry for the late reply. You can use "Kabat + Vernier" CDR definition in the settings, this will avoid any mutations in those regions.

Hi David,
many thanks for your reply, sorry my fault I didn't see this on the web
server. Now clear!
Kind regards,
Salva
On Sat, 15 Oct 2022 at 13:58, David Příhoda @.***>
wrote:

Hi @salvatta2 https://github.com/salvatta2 sorry for the late reply.
You can use "Kabat + Vernier" CDR definition in the settings, this will
avoid any mutations in those regions.
[image: image]
https://user-images.githubusercontent.com/2894124/195985191-d87c6895-1312-472c-96e9-0d6e42d418e5.png
—
Reply to this email directly, view it on GitHub
https://github.com/Merck/BioPhi/issues/26#issuecomment-1279730427, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/A3MJICUTR5J5UFA2NLXPUZLWDKMAHANCNFSM6AAAAAAQ22X26Q
.
You are receiving this because you were mentioned.Message ID:
@.***>


POAP page claim: Limit mint per wallet

Looks like on https://poap.kodadot.art its possible to mint NFT more than once on one wallet. That is against the whole idea if POAPs.
Please limit mint to 1 NFT per wallet.
I accidentally minted Berlin POAP NFT twice on my wallet and now I have two poaps.


Unable to render forms/button_to from a component

Originally posted in #15, but also a problem for me:

Rendering a form/button_to from a component raises an error undefined method 'protect_against_forgery?' for #Happening::SignUpButton:0x00007f893937e7f8

we'd also need form_authenticity_token

#28 seems to be working towards addressing this issue

@mhw I agree. I've monkeypatched my project with that code and it's working well.

I believe this should be addressed in https://github.com/github/actionview-component/releases/tag/v1.3.0. Please re-open this if it isn't ❤


Update tokenizer.py

add trust_remote_code=True

Thank you for your contribution! This is actually solved by #364. Please check it out!


Needs to run  multiple rounds instead of one round!

Thanks for your repo.
I have the problem like as below:
My circle seekbar needs to run  4 rounds instead of one round of this repo.
Can it work? If can, how is implement it?
Thanks in advance!

any solutions came out or not..it doesn't stop circulating.

u can listen on progress when it be 100 increase local round with 1 and start seek from 0 again


sync: sync.Map keys will never be garbage collected

What version of Go are you using (go version)?

$ go version
go1.15

Does this issue reproduce with the latest release?
yes
What operating system and processor architecture are you using (go env)?
Can reproduce on any os and arch.
What did you do?
We are using some big struct as keys for sync.Map, struct{} as value, and we observed a memory leak after upgrading to go 1.15. I confirmed that this is because sync.Map will never delete keys. Instead, it only set the value to nil.
It worked well before 1.15 because we happened to have no read operation during the lifetime, and we were only reading it during shutdown so we didn't discover the memory leak, as some code like this: https://play.golang.org/p/YdY4gOcXVMO. So we happened to only have no key prompted to sync.Map.read, and thus Delete could delete the key in sync.Map.dirty.
In go1.15, this behaviour was changed by https://go-review.googlesource.com/c/go/+/205899, and causes a memory leak in our code.
This isn't the same as the behaviour of the native map. I admit I have misused sync.Map, but I think this behaviour should  either be documented clearly or be changed.

I've submitted a pr for this #41000 .

I don’t think deleting a key from a map should leave the key. How are you determining that memory is leaking?

@davecheney the current behaviour of sync.Map leaves the key. You can check it.

Could you please explain how.

@davecheney m.Delete only gets the value(e) from m.read or m.dirty, and e.delete() only sets it to nil.
It doesn't delete the key in m.read or m.dirty(after go1.15).
// LoadAndDelete deletes the value for a key, returning the previous value if any.
// The loaded result reports whether the key was present.
func (m *Map) LoadAndDelete(key interface{}) (value interface{}, loaded bool) {
	read, _ := m.read.Load().(readOnly)
	e, ok := read.m[key]
	if !ok && read.amended {
		m.mu.Lock()
		read, _ = m.read.Load().(readOnly)
		e, ok = read.m[key]
		if !ok && read.amended {
			e, ok = m.dirty[key]
			// Regardless of whether the entry was present, record a miss: this key
			// will take the slow path until the dirty map is promoted to the read
			// map.
			m.missLocked()
		}
		m.mu.Unlock()
	}
	if ok {
		return e.delete()
	}
	return nil, false
}

// Delete deletes the value for a key.
func (m *Map) Delete(key interface{}) {
	m.LoadAndDelete(key)
}

func (e *entry) delete() (value interface{}, ok bool) {
	for {
		p := atomic.LoadPointer(&e.p)
		if p == nil || p == expunged {
			return nil, false
		}
		if atomic.CompareAndSwapPointer(&e.p, p, nil) {
			return *(*interface{})(p), true
		}
	}
}

@bcmills please excuse me if I got the attribution wrong, but is this the expected behaviour?

@PureWhiteWu are you able to demonstrate a difference in runtime.Memstats to confirm that the key is not being deleted?

@davecheney It's quite easy to obverse from pprof/heap. You can try it.
The flame graph contains some internal code structure, so I cannot paste it here, sorry for this.

@rsc Excuse me, is this behaviour by-design or a bug?

@davecheney It's quite easy to obverse from pprof/heap. You can try it.
The flame graph contains some internal code structure, so I cannot paste it here, sorry for this.

Would you be able to include that data with your bug report please.

@davecheney Is this enough?

here, the linkBufferNode is referenced by something which is a key in a sync.Map that should have been deleted.

Thank you for the frame graph, it’s hard to tell what is going on from that. I’m going to wait for the person who made that change to comment

@davecheney I've added a Debug method in sync.Map:
func (m *Map) Debug() {
	m.mu.Lock()
	println("sync.Map read:")
	for k := range m.read.Load().(readOnly).m {
		println(k)
	}
	println("sync.Map dirty:")
	for k := range m.dirty {
		println(k)
	}
	println("sync.Map debug end.")
	m.mu.Unlock()
}

And the example code to call Debug: https://play.golang.org/p/H3fkSdAw-JJ
Output:
sync.Map read:
(0x1064920,0xc00000c060)
(0x1064920,0xc00000c0e0)
(0x1064920,0xc00000c140)
(0x1064920,0xc00000c100)
(0x1064920,0xc00000c120)
(0x1064920,0xc00000c160)
(0x1064920,0xc00000c040)
(0x1064920,0xc00000c080)
(0x1064920,0xc00000c0a0)
(0x1064920,0xc00000c0c0)
sync.Map dirty:
sync.Map debug end.

As you can see, the keys are not deleted.

@PureWhiteWu are you able to write a test that passes on 1.14 but fails on 1.15

@iand Sure, example code: https://play.golang.org/p/lHKYvukGbpZ
Also I added the Debug method above in both go 1.15 and 1.14.
On go 1.15, output:
sync.Map read:
sync.Map dirty:
(0x1064560,0xc00000c080)
(0x1064560,0xc00000c0a0)
(0x1064560,0xc00000c0c0)
(0x1064560,0xc00000c100)
(0x1064560,0xc00000c120)
(0x1064560,0xc00000c140)
(0x1064560,0xc00000c160)
(0x1064560,0xc00000c040)
(0x1064560,0xc00000c0e0)
(0x1064560,0xc00000c060)
sync.Map debug end.

On go 1.14, output:
sync.Map read:
sync.Map dirty:
(0x10603e0,0xc00000c100)
(0x10603e0,0xc00000c0c0)
(0x10603e0,0xc00000c140)
(0x10603e0,0xc00000c040)
(0x10603e0,0xc00000c080)
sync.Map debug end.

You can see that, if there's no read operation on map, the keys in dirty part can be deleted.

@iand keys in sync.Map.read are not deleted neither on go1.14 not go1.15, I just happened to have no read operation, so all my keys are in dirty and can be deleted.

@PureWhiteWu would you consider abandoning your documentation CL. I do not believe we should document this incorrect behaviour.

@davecheney maybe we should confirm if this is by-design or a bug first?

@davecheney maybe we should confirm if this is by-design or a bug first?

This is clearly a change in behaviour between versions so it needs fixing

git bisect points to 2e8dbae as @PureWhiteWu noted.

@iand This is an undocumented behaviour, which is quite related to the implementation(on go 1.14 keys in dirty can be deleted, which on 1.15 cannot).
On all go versions, keys in read cannot be deleted, this is consistent.
I think we should discuss if this behaviour is by-design.

And I think users should not know if a key is in dirty or read.

@PureWhiteWu what reason would there be for chaining sync.Map in Go 1.15 so that Delete did not delete entries? I think the more reasonable answer is this is a bug.

@davecheney
On go 1.14, if a key has been prompted to read, it cannot be deleted either.
This is the problem, not only at dirty.

If you add a sm.Range(...) between sm.Store and sm.Delete, the memory leaks on go 1.14, too.

One bug at a time mate

@gopherbot, please backport to 1.15. This is a regression from Go 1.14.7, and can cause difficult-to-predict memory leaks in existing code.

Here's another problem: keys in the read map cannot be deleted.
Should we reopen this issue and discuss this?
@bcmills @davecheney

Keys in the read map cannot be purged immediately, but they are only retained until the cost to rebuild the map has been amortized away. That is an intentional tradeoff in the design.
But perhaps we are missing some sort of cache-miss tracking for deleted keys. If you have a real-world program for which that causes a problem, please open a new issue and we can at least see if there is a straightforward fix for it.
(But also bear in mind that sync.Map is intended to solve a specific pattern in the Go standard library. It is surely not optimal for all “concurrent map” use-cases, and if it's not a good fit for your use-case it is totally fine to use something else instead. One of the nice things about sync.Map is that it should almost never appear in exported APIs, so in most cases it is easy to swap out for something else.)

@bcmills thanks for your reply!

This problem can be corrected as follows：
// LoadAndDelete deletes the value for a key, returning the previous value if any.
// The loaded result reports whether the key was present.
func (m *Map) LoadAndDelete(key interface{}) (value interface{}, loaded bool) {
read, _ := m.read.Load().(readOnly)
e, ok := read.m[key]
if !ok && read.amended {
m.mu.Lock()
read, _ = m.read.Load().(readOnly)
e, ok = read.m[key]
if !ok && read.amended {
// fixed it
if e, ok = m.dirty[key]; ok {
delete(m.dirty, key)
}
}
m.mu.Unlock()
}
if ok {
return e.delete()
}
return nil, false
}


Add rekor-createtree helm chart for creating a new tree for rekor

This will be used for sharding. Initially, I thought we could just force the createtree Job through the rekor Chart.
But, it looks like that will automatically restart the rekor server, which might lead to a race between updating the Rekor configmap with the new tree ID and starting up the server.
With a separate Chart, we can create a new tree, update the ConfigMap, but still  control when we actually restart the rekor server to pick up that change.
Signed-off-by: Priya Wadhwa<EMAIL_ADDRESS>

I believe the rekor-server is restarting as it watches the configmap. any time when the configmap changes, rekor-server will restart to read in the new configmap changes.
see #195
this was added as the configmap changes would be picked up when the pod restarted, which may be a surprise.
if we want full control over which configmap to use and when, should we use a different name for the configmap?

This will be used for sharding. Initially, I thought we could just force the createtree Job through the rekor Chart. But, it looks like that will automatically restart the rekor server, which might lead to a race between updating the Rekor configmap with the new tree ID and starting up the server.
With a separate Chart, we can create a new tree, update the ConfigMap, but still control when we actually restart the rekor server to pick up that change.
Signed-off-by: Priya Wadhwa<EMAIL_ADDRESS>

if we want full control over which configmap to use and when, should we use a different name for the configmap?

yes that could work! alternatively, we could have the rekor deployment rollout on sharding config map changes as well. then the flow could be something like this:

scale down rekor to 1 pod
in one PR, we can update the sharding configmap with the "old" tree ID & also set createtree.force=true. then, once the new tree ID is created the rekor server will automatically be restarted.
scale rekor back to 3 pods

Did some manual testing I think that will work, will close this.

if we want full control over which configmap to use and when, should we use a different name for the configmap?

yes that could work! alternatively, we could have the rekor deployment rollout on sharding config map changes as well. then the flow could be something like this:

scale down rekor to 1 pod
in one PR, we can update the sharding configmap with the "old" tree ID & also set createtree.force=true. then, once the new tree ID is created the rekor server will automatically be restarted.
scale rekor back to 3 pods

that sounds like it should work.
btw, im not against creating another helm chart, i just want to be clear that if we point to the same configmap, whether it is the same or different helm chart, rekor server would auto-rollout. though it would be nice to avoid an additional chart.

thanks

though it would be nice to avoid an additional chart.

yah i feel the same way! i don't think this will add much now that i know the deployment restarts if the configmap changes (initially i thought that was just something helm did since they were coupled in the same chart)


Support request: Where to install elvish completions in distro packages?

I'm writing some software that supports shell completions, using the Rust library (crate) bpaf. It has support for generating completion files for several different shells, including elvish.
I'm also packaging my software for Arch Linux (possibly other distros as well down the line). As part of that I install the completions as part of the package in the system location for the shell. Unfortunately I haven't been able to find out where I'm supposed to put completion files for elvish. I.e. what goes on the last line of this:
    "$_cmd_name" --bpaf-complete-style-zsh > "$pkgdir/usr/share/zsh/site-functions/_${pkgname}"
    "$_cmd_name" --bpaf-complete-style-bash > "$pkgdir/usr/share/bash-completion/completions/${pkgname}"
    "$_cmd_name" --bpaf-complete-style-fish > "$pkgdir/usr/share/fish/vendor_completions.d/${pkgname}.fish"
    # TODO: Where do completions for elvish go?
    #"$_cmd_name" --bpaf-complete-style-elvish

(I don't use elvish myself, I'm a zsh user, but I want to make the experience as good as possible for users of all supported shells.)

This is a duplicate of #1564; see the discussion there, which indicates that no such automatic discovery path currently exists.

Thank you. The reasoning seems strange (if I install a command I trust it (or I would sandbox it with flatpak), so there is little point in not also trusting the completion files, especially since they are usually installed by distro packages anyway, and installing a distro package is an act of trust).
I'm having a hard time seeing the security angle on this, since all the relevant code is in the same trust level, thus if I'm evil I could for example just patch your init file instead.

Closing this as a dup of https://github.com/elves/elvish/issues/1564, please see the latest comment there.


Vendor ID warning & reporters to explain result level

Fontbakery warns that my Vendor ID is not known registered id. And it should have a 4 character code. Actually a lot of Vendor ID has 2 character codes. And my id: LS is registered. Could you advise?

Was your vendorID added recently?
When I check our cached vendor list, https://github.com/googlefonts/fontbakery/blob/master/Lib/fontbakery/data/fontbakery-microsoft-vendorlist.cache, I can see LS isn't there.
@felipesanches perhaps we also need to strip the trailing spaces from font vendorIDs? I understand that a font vendorID is meant to be four characters long. However, I think the MS list removes these spaces since it's html.

Hi Marc,
yes its added recently.

Ok cool. I guess your vendorID will be included in the next fontbakery update. For the time being, please ignore this check.
Also, checks which produce a warn are not fatal. Think of them as alerts that something may not be quite right.

Cool! Many thanks!

@felipesanches please don't close this after confirmation of the latest update fixing this vendor ID. The the first step. But the fact that the meaning of the return levels isn't clear should also be addressed, so please keep this issue open and propose a way to address this in the various reporters :)

my proposal is to say that the ID was not yet recognized, but if the user can see it listed on microsoft's website, then it is all fine.

Our code-tests have a set of test-cases whith examples of good and bad vendor IDs. As you can see here, 2-char IDs are OK, but with some caveats:

I've just updated the list of vendor IDs and it includes LS for LetterSoup:

@felipesanches I've got a plus sign in mine - M+F - just in case you want another weird glyph to allow. 😜

@felipesanches I've got a plus sign in mine - M+F - just in case you want another weird glyph to allow. 😜

I believe that one is already considered good. Let me know if you ever see a legitimate one that is not accepted.

@felipesanches Many thanks!

 :-)


CUDA Runtime Error when using ad4 maps

Describe the bug
The CUDA runtime error happened just after the first batch was completed.
Batch 1 running time: 46419ms
Small
Max num_atoms: 40 Max num_torsions: 12 Max num_rigids: 5 Max num_lig_pairs: 467
Group size: 1309
Small Batch 2 size: 502
Performing docking (random seed:<PHONE_NUMBER>) ... atom_type::AD=1
CUDA error at /home/s2263780/Uni-Dock/unidock/src/cuda/monte_carlo.cu:2854 code=700(cudaErrorIllegalAddress) "cudaDeviceSynchronize()"

An error occurred: CUDA Runtime Error.

 Uni-Dock need your CUDA version >=11.8.

Hi @ysyecust , thanks for you reply. Please find the attached screenshot which contains the error (first batch completed but the second one crashed) and the CUDA version 12.4.

Also if I use the ligand_index parameter (file_paths.txt in the compressed), it shows 'segmentation fault' as #112


Info Version can only be set to v1 - should be able to be any string value.

In the Startup method the Swagger Info object is initialized with a version appropriate for the API:
            ... c.SingleApiVersion(new Info
            {
                Version = "1.2.3",
                Title = "My API",
                ...
            } ...

However, when the Swagger UI is set up, the SwaggerMiddleware is instantiated with a fixed URL of "/swagger/v1/swagger.json" (from SwaggerUiBuilderExtensions). Then in the SwaggerMiddleware the apiVersion is set to the "v1" from the fixed URL of "/swagger/v1/swagger.json" (in the RequestingSwaggerDocs method).
Finally in SwaggerGenerator the code:
        if (info == null)
            throw new UnknownApiVersion(apiVersion);

does not allow any Version other then what is in apiVersion which is fixed at "v1".
The Swagger Info Version property should allow any string value for display to the API consumer.
Thanks!

By design, the SwaggerGen and SwaggerUi components are strongly decoupled. As a result, if you change the version (or versions) provided through the former then you have to tell the UI component about the new URL for retrieving Swagger JSON from. For example:
app.UseSwaggerUi(swaggerUrl: "/swagger/1.2.3/swagger.json)

That's exactly what I need. Thanks for the quick response!


Improvement: Directly load events from signups

@couci can we make the signup registration sheet completely public? If so, I think we could directly load our data from there, thus decrease the manual workload.

You mean without any sign-ins required right? Yes we can make that, would you like me to request the form now?

Basically just "Anyone on the web can view" on the responses sheet. Why would you need to request the form? Can't we just do it in the CDT folders and set the permission to that? (I will need to have edit rights on the google form part so I can play around ;))

yes you are right :) we can totally do that

This is a WIP:

Now, let's find a library to convert country names to iso codes...


fix link to development architecture

noticed a dead link in the readme, fixed it

Nice catch, thanks! Can you make it https://docs.opnsense.org/development/architecture.html -- "wiki" is the legacy link :)

@fichtner done. glad i could help just a little bit. hope i can get my development environment running in the future, i would like to start creating plugins... maybe

@cwildfoerster for plugins you just need the plugins repository.
for an example, see: https://docs.opnsense.org/development/examples/helloworld.html

@cwildfoerster thanks! just ping us if you need help with plugins, we are happy to help :)


SCD2 support

Description
This PR adds basic support for SCD2.

Treats scd2 as a special case of the merge write disposition.
Support configurable names for the validity columns ("valid from" / "valid to").
Validity column names default to _dlt_valid_from and _dlt_valid_to if the user does not specify names.
Uses timestamps (not dates) to support sub-daily changes.
Uses high timestamp (9999-12-31T00:00:00+00:00) in "valid to" column to indicate active records.
Includes validity columns only in the root table. Validity dates for records in child tables can be linked through the root id.
Does not use "standard" configuration because it doesn't support resource-scoped configuration (correct me if I'm wrong). We want resource-scoped configuration because a user might want to load one table with the scd2 strategy and another one with "regular" merge behavior, or use different validity column names for different tables.
Introduces merge_config argument on the resource decorator to let the user specify the merge strategy and validity column names.
Adds merge_config key to TResourceHints, but not to TTableSchema.
Uses x-hints to store user configuration in the schema:

x-merge-strategy at the table level
x-valid-from and x-valid-to at the column level

Related Issues

Closes #828

@rudolfix two questions on this PR:

Do you agree with the interface? We now have additional fields on the resource to configure this as opposed to a settings on the destination how we do it with the replace strategy. I think this makes sense, but also looks a bit weird provided the replace strategy is set in a different way.
Right now the "cutoff date" is the created date of the load package. I am thinking we might want to make this overridable with a setting for certain cases, but maybe it is good like this now and we can add this feature when people request it.

Note that this is why I chose a different interface than the one used to configure replace strategy:

@rudolfix I adjusted the user interface according to your suggestion and introduced a default delete-insert merge strategy. WDYT?
I'll add docs after we've settled on the user interface.


Updated documentation to include SHELL_COMPLETIONS_DIR

Modified doc/lsd.md to include documentation on SHELL_COMPLETIONS_DIR / OUT_DIR. This is from issue #853.

Codecov Report

Merging #861 (0d0458c) into master (0e3f97b) will not change coverage.
The diff coverage is n/a.

:exclamation: Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the Github App Integration for your organization. Read more.
@@           Coverage Diff           @@
##           master     #861   +/-   ##
=======================================
  Coverage   87.04%   87.04%
=======================================
  Files          49       49
  Lines        4808     4808
=======================================
  Hits         4185     4185
  Misses        623      623

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


[pulsar-perf] record message failure and avoid exiting from process on publish failure

Motivation

Right now, perf-producer exit when it sees publish-failure. But pulsar-client should be handling any failure and client should not have to exist from the process.


Throw TypeError when new an object extends Proxy object

Hi,
The following code behaves incorrectly (inconsistent with other engines).
new class extends new Proxy(class {},{}) {}

In ChakraCore, the output is
TypeError: Object doesn't support this action
However, in V8 , SpiderMonkey and JSC, output is
BT_FLAG
BT group
2018.7.25

I believe that this is a duplicate of #5225 and has been fixed in master, but not in release/1.10. @sethbrenith do you think it's worth backporting to release/1.10?

Yes, I reopened #5225 to track backporting.

Thanks for the report! We'll use #5225 to track the backport work.


PicCap using native hyperion-webos service

We have updated hyperion-webos to be a native service.
The nodeJS-service isn't needed anymore.
Updated hyperion-webos
Merged impressions from @Informatic
Fixed up UI
@Informatic: Could you please take a look at this?
Thanks!

@Informatic Would you like to check again?
Thanks!

There is also a little "bug" in autostart. Haven't exited in the autostart script, that's possibly why dev-mode script is failing and failback mode is activated after second restart. Will fix it.

That's definitely a bug in service implementation, and definitely should be fixed there (though I couldn't reproduce it here?)
Does it actually start up the service in that case, and just not send a reply? I think a call should return with an error anyways, if a backing service just crashes mid-request.

Yeah it starts up, but after a normal reboot it has entered failsafe mode and I had to disable it.
It looked like: Boot -> autostart PicCap -> reboot -> Failsafe -> disable failsafe -> reboot -> autostart PicCap -> reboot -> failsafe ->  ....
Edited the script, until now two restarts and everything went well. Will take a look the next days

Sure, but this will also leave dangling luna-send execution in the background. I think we should probably rather use timeout or something similar.

Waiting on some tests here: https://github.com/TBSniller/piccap/releases/tag/0.2.1

Final tests done


🐞 Bug: Size of the buttons is not consistence

Is there an existing issue for this?

[X] I have searched the existing issues

Describe the bug

Steps To Reproduce

Go to https://circuitverse.org/users/219240/projects/tester-c3bf3b1c-2bb6-4927-b847-7b90c3de00d5
check these buttons that is have mentioned

Expected Behavior
size of three buttons should be same
Screenshots
No response
Device Information [optional]
- OS:
- Browser:
- version:

Additional context
No response
Are you working on this issue?
Yes

pls assign me this issue

can I work on this

can i fix this ? @tanmoysrt ?

@upsaurav12 shall I take this up if @tanmoysrt approves this?

ig someone has previously raised this issue for allignment, need to check. If I find, i will update you.

ig someone has previously raised this issue for allignment, need to check. If I find, i will update you.

ok np

I can't find duplicate issue, I hope there is none 😅
@upsaurav12 You can start working on the fix

I can't find duplicate issue, I hope there is none 😅 @upsaurav12 You can start working on the fix

i will also hope

@upsaurav12 can I work on this issue? If @tanmoysrt approve

@upsaurav12 can I work on this issue? If @tanmoysrt

@upsaurav12 can I work on this issue? If @tanmoysrt approve

it is already approved by the maintainer ane also i have been assigned for thus issue

Hi if no one is working on this issue can I take this up ?


[SYSTEMML-1396] Lazy cudafree

Lazily frees cuda memory. Reuses memory already allocation on the GPU as much as possible.
Caveat - It is possible to run into the issue of internal/external memory fragmentation.
cudaMemGetInfo returns the total available free memory. That reported memory may not be contiguous to satisfy a request for an allocation though. No successful experiments have run into this issue yet, but a bug that I had introduced in my initial coding showed me this issue.
Also, with 2 use cases that I ran - @prithvirajsen's  Autoencoder and @dusenberrymw's lennet script with some small sample data i was provided, showed between a 5x-10x speedup.
The PR also adds some advanced timers and adds certain bugfixes.
@niketanpansare - can you please verify if this bug fix is legit?
ping @bertholdreinwald

LGTM. This is an important performance update. We can revisit the fragmentation later. Thanks @nakul02  :+1:

Thanks @niketanpansare, will merge


Fix support of a rule

Support of a rule should be calculated from a union of antecedent and consequent, not from only consequent. This PR fixes this.
Also this PR includes some clean up for the test class. These changes don't affect test results.

remove some redundant method invocations,
simplify some assert conditions,
make invoke method private static
and reorder test cases.

:+1:


Invalid OpProcessor requested [null]

This is probably not the most relevant issue (i'm not using this library) but I can't find anything relevant on the Tinkerpop3 JIRA or Titan 1.x docs or github generally.. So you'll have to forgive me if this is out of place.
I'm having an immense amount of trouble communicating with my gremlin / titan server via websockets using C++. Logically this shouldn't be too hard, though I think the API is changing so drastically that none of the documentation I find has an accurate explanation of the message structure / format.
I'm using the easywsclient library, and an example of my code (and format) is as follows:
std::unique_ptr ws(WebSocket::from_url("ws://SERVER:8182/"));
string command = "\"[1,2,3,4]\"";
string mime = "\"application/json\"";
string language = "\"gremlin-groovy\"";
string session = "\"\"";
string bindings = "\"\"";
string rebindings = "\"\"";
string op = "\"eval\"";
string processor = "\"org.apache.tinkerpop.gremlin.server.op.session.SessionOpProcessor\"";
string accept = "\"application/json\"";
string executeHandler;
string request = "\"655BD810-B41E-429D-B78F-3CC5F3B8E9BA\"";

string msg = mime + "|-{" +
    "\"requestId\": " + request + "," +
    "\"op\": " + op + ","  +
    "\"processor\": " + processor + "," +
    "\"args\": {"  +
        "\"gremlin\": " + command + "," +
        "\"bindings\": " + bindings + "," +
        "\"language\": " + language + "," +
        "\"rebindings\": " + rebindings +
    "}" +
"}";

ws->send(msg);
//** then ws->poll and ws->dispatch to retrieve the response

To which my erroneous response is:
{"requestId":null,"status":{"message":"","code":499,"attributes":{}},"result":{"data":"Invalid OpProcessor requested [null]","meta":{}}}
I cannot seem to find any variation of op or processor (I have tried blank) that returns anything but the above.
Any help or tips would be greatly appreciated!

Hey @LovelyHorse . This is probably better suited on the Apache TinkerPop dev  mailing list, or on the gremlin-users mailing list.
For reference the documentation on writing drivers is located here.
The part that you will be interested in it :

[...] The above JSON represents the "body" of the request to send to Gremlin Server. When sending this "body" over websockets Gremlin Server can accept a packet frame using a "text" (1) or a "binary" (2) opcode. Using "text" is a bit more limited in that Gremlin Server will always process the body of that request as JSON. Generally speaking "text" is just for testing purposes.
The preferred method for sending requests to Gremlin Server is to use the "binary" opcode. In this case, a "header" will need be sent in addition to to the "body". The "header" basically consists of a "mime type" so that Gremlin Server knows how to deserialize the RequestMessage.

The first byte represents the length of the "mime type" string value that follows. Given the default configuration of Gremlin Server, this value should be set to application/json. The "payload" represents the JSON message above encoded as bytes.
So there are a few points you will need to look at in your code.
Note : Gremlin Server will only accept masked packets as it pertains to websocket packet header construction.

Is your ws client set to send packets as masked (1)
Is your ws client set to send packets with a binary(2) frame
The first byte of your body will have to be string msg = mimeLength + mime ...

Feel free to link to a thread or something on the lists. I can definitely help you out if need be.

Hey @PommeVerte, thanks for taking the time to post such a detailed answer. Greatly appreciated :).
@LovelyHorse Did you have some luck by looking at the relevant part of the code here? I also suggest posting to the Apache TinkerPop dev mailing list. Closing this but please feel free to post your progress here.

@PommeVerte thank you for the help!
@jbmusso Taking everything mentioned above into consideration I found that I had to change my bindings and rebindings entries from " " to {} and it worked perfectly. It was quite confusing that an improperly formatted bindings entry threw an error 'invalid opcode' though that's a bug I'll add to the TP3 Jira!
Thanks again.

Side note for anyone who finds this with similar issues: The mimecode was unnecessary in my case. Simply beginning the request body with curly brackets did the job.
Thanks again.

FYI this refers to the following part of the TP3 documentation :

Gremlin Server can accept a packet frame using a "text" (1) or a "binary" (2) opcode. Using "text" is a bit more limited in that Gremlin Server will always process the body of that request as JSON. Generally speaking "text" is just for testing purposes.

Using "text" implies an application/json mimeType so you indeed do not need to add it and can just send the JSON. But it comes with some production level caveats. Like not being able to use the  current typed JSON format, nor the new upcoming JSON format and Gremlin Language Variants (GLVs) features (like ByteCode queries). So in general it's best to move away from it for better coverage of TP3 features.

For anyone landing on this issue because of Invalid OpProcessor requested [null] (sorry for piggybacking your issue :pray: ).
In my case I was trying to use TextP.regex but the server was not recent enough to use it, resulting in this error message. Server logs:
org.apache.tinkerpop.shaded.jackson.databind.JsonMappingException: Could not deserialize the JSON value as r
equired. Nested exception: org.apache.tinkerpop.shaded.jackson.databind.JsonMappingException: Could not deserialize the JSON value as required. N
ested exception: java.lang.IllegalStateException: org.apache.tinkerpop.gremlin.process.traversal.TextP.regex(java.lang.String)

Changing from TextP.regex to TextP.contains fixed it, possibly because I was not using the right version for the server.


Wrong FanControl Cluster Revision

📖 Description
The cluster revision attribute is set wrong in the all-cluster-example-app and the test script TC-FAN-1.1.
🔎 Details
The FanControl cluster is at rev 4.

The all-cluster-example-app is wrongly set to clusterRevision 2.
The test script TC-FAN-1.1 has verification steps which should make sure its value is 3 (and the example output still shows 2), this should also be updated to 4.

dup to 27320


Unlock build using Elixir 1.15

Overview

Elixir 1.5 introduces some changes in the compilation process tha affects to the execution of our test suite. The problem has been reported here #4706
It seems that we are facing one of the incompatibility problems documented in the Elixir 1.15 release notes

Potential incompatibilities
Due to the code path pruning, if you have an application or dependency that does not specify its dependencies on Erlang and Elixir application, it may no longer compile successfully in Elixir v1.15. You can temporarily disable code path pruning by setting prune_code_paths: false in your mix.exs, although doing so may lead to runtime bugs that are only manifested inside a mix release.

Previous to this PR, if we try to run the elixir test suite with Elixir 1.15, the following error appears in any test that uses jiffy.
> make clean couch elixir

 1) test Basic reduce functions (ReduceTest)
     test/elixir/test/reduce_test.exs:16
     ** (UndefinedFunctionError) function :jiffy.decode/2 is undefined (module :jiffy is not available)
     stacktrace:
       (jiffy 1.0.9) :jiffy.decode("{\"ok\":true}\n", [:return_maps])

This PR indroduces the suggested temporary fix in the mix.exs by adding prune_code_paths: false to the build config. With this change we can use Elixir 1.15 in our build process. I've tried to find the problem with our dependency declaration without sucess. This should be a temporary solution until we find the root of the problem.
This PR introduces a second change in the Makefile clean target by adding aditional cleanup for elixir build artifacts.
Testing recommendations

Install Erlang >= 24
Install Elixir 1.15
make clean couch elixir

The elixir test suite should run without problems. Then check the cleanup.

make clean
find . -name "_build" (No _build folder should be found)
MIX_ENV=integration mix deps (should inform that every dependency needs to be compiled/updated)

Related Issues or Pull Requests

This PR proposes a temporary solution for #4706
Checklist

[X] Code is written and works correctly
[ ] Changes are covered by tests
[ ] Any new configurable parameters are documented in rel/overlay/etc/default.ini
[ ] Documentation changes were made in the src/docs folder
[ ] Documentation changes were backported (separated PR) to affected branches

+1 from me as well.  I have tested the changes with Elixir 1.14.5 and 1.15.4 and there was no problem.  Thank you!

Thanks @pgj and @big-r81

Thanks for fixing it @jjrodrig!
I did notice in the last main full CI build for .deb packages failed to build with this error:
https://ci-couchdb.apache.org/blue/organizations/jenkins/jenkins-cm1%2FFullPlatformMatrix/detail/main/816/pipeline/552/
apache-couchdb-3.3.2-e60e275 (clean)

[2023-08-15T23:19:06.443Z] warning: the VM is running with native name encoding of latin1 which may cause Elixir to malfunction as it expects utf8. Please ensure your locale is set to UTF-8 (which can be verified by running "locale" in your shell)

[2023-08-15T23:19:07.182Z] Could not find Hex, which is needed to build dependency :junit_formatter

[2023-08-15T23:19:07.183Z] Shall I install Hex? (if running non-interactively, use "mix local.hex --force") [Yn] ** (Mix) Could not find an SCM for dependency :junit_formatter from CouchDBTest.Mixfile

[2023-08-15T23:19:07.183Z] Makefile:463: recipe for target 'clean' failed

[2023-08-15T23:19:07.183Z] make[4]: *** [clean] Error 1

[2023-08-15T23:19:07.183Z] make[4]: Leaving directory '/home/jenkins/workspace/kins-cm1_FullPlatformMatrix_main/bionic/couchdb/apache-couchdb-3.3.2-e60e275'

[2023-08-15T23:19:07.183Z] dh_auto_clean: make -j1 distclean returned exit code 2

[2023-08-15T23:19:07.183Z] debian/rules:20: recipe for target 'override_dh_auto_clean' failed

[2023-08-15T23:19:07.183Z] make[3]: *** [override_dh_auto_clean] Error 2

[2023-08-15T23:19:07.183Z] make[3]: Leaving directory '/home/jenkins/workspace/kins-cm1_FullPlatformMatrix_main/bionic/couchdb/apache-couchdb-3.3.2-e60e275'

[2023-08-15T23:19:07.183Z] debian/rules:17: recipe for target 'clean' failed

[2023-08-15T23:19:07.183Z] make[2]: *** [clean] Error 2

[2023-08-15T23:19:07.183Z] make[2]: Leaving directory '/home/jenkins/workspace/kins-cm1_FullPlatformMatrix_main/bionic/couchdb/apache-couchdb-3.3.2-e60e275'

[2023-08-15T23:19:07.183Z] dpkg-buildpackage: error: fakeroot debian/rules clean subprocess returned exit status 2

[2023-08-15T23:19:07.183Z] Makefile:241: recipe for target 'dpkg' failed

[2023-08-15T23:19:07.183Z] make[1]: *** [dpkg] Error 2

[2023-08-15T23:19:07.183Z] make[1]: Leaving directory '/home/jenkins/workspace/kins-cm1_FullPlatformMatrix_main/bionic/couchdb-pkg'

[2023-08-15T23:19:07.183Z] Makefile:41: recipe for target 'all' failed

[2023-08-15T23:19:07.184Z] make: *** [all] Error 2

script returned exit code 2

It mentions hex so was wondering if it's related perhaps to this PR. I'll try to re-run the CI build again to see if fails in the same way.


Maven Central Build warning "save-sate"

The save-state command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
see: https://github.com/crazy-max/ghaction-import-gpg/releases/tag/v5.2.0

fixed with 1.0.0-RC4


Node zoom

The node graph needs zoom badly.
So here is an implementation inspired by https://github.com/gzp-crey/shine, and the style scaling was copied from there as well.
Because this is just me updating stuff from a fork, this also contains egui 0.22, and placement of node rather to finder window pos than mouse pos (mouse can be outside graph area when finder window is large).

The zoomed style during runtime is retained in PanZoom, it uses parent ui's style by default, but when in a zoomed state, a scaled style is used
And the zoom is towards center of the ui area. I find towards mouse zoom unintutive, but feel free to change that.
Node positions are updated by the delta when zoomed
I like this, because the we can keep the pan untouched.

All in all, this seems to work pretty well... though not optimal, pan_zoom's scale needs to be used in a couple of places... But better than having double egui context in my opinion.
What it looks like:
https://github.com/setzer22/egui_node_graph/assets/12234005/5cb8c57a-8864-4aca-94de-57589f20dd98
Feel free to edit MAX, MIN zooms and anything that should be changed...

I have merged this into my own fork and it works great.
One problem I encountered though is that the node graph flows out the top of the TopBottomPanel I have put it into here.

Not sure if I am doing something wrong or if the clip rect needs to be adjusted?

Might be that the clip rect should be adjusted.  Don't mind a fix!

This fixes the problem for me but I am still wondering why the clip_rect is wrong in the first place.
Still learning egui...

Hello @setzer22 , is there a chance this PR will be accepted?

Because I use this in my project, I've kept the fork up to date. Still find it very usable :)