Support total counts for GraphQL

This PR adds to possibility to query aggregate metric total_count:
sources_aggregate(filter: { source_type: { vendor: { not_eq: "Red Hat"} } })
{
   aggregate
   {
     total_count
   }
}

To query  total_count for collection:
<collection>_aggregate
{
   aggregate
   {
      total_count
   }
}

also with filtering as on collection:
<collection>_aggregate(filter: { source_type: { vendor: { not_eq: "Red Hat"} } })
{
     aggregate
     {
	 total_count
     }
}

Total count can be obtain without limits, offset but with filtering which was intended.
This aggregation can be also on nested associations(NOTE: There is no filtering on nested associations implemented, only limit, offset so filtering is not also present on nested aggregation):
query{
  sources(limit:2, offset:0, sort_by:{created_at: "desc"},
  filter: { source_type: { vendor: { not_eq: "Red Hat"} } })
  {
    name,
    id,
    created_at,
    source_type_id,
    applications {
      id
    },
    authentications{
      id
    },
    authentications_aggregate{
       total_count
    }
  }
}

Examples
With nested associations
query:
 {
    source_types(limit:2, offset: 0,filter: {vendor: {not_eq: "redhat"}}) {
      vendor
      product_name
      sources {
        name
        endpoints {
          host
          port
          role
          authentications {
            authtype
            username
          }
          authentications_aggregate {
            aggregate{
              total_count
            }
          }
        },
        endpoints_aggregate {
          aggregate{
            total_count
          }
        }
      },
      sources_aggregate {
        aggregate{
          total_count
        }
      }
    },
    source_types_aggregate(filter: {vendor: {not_eq: "redhat"}})
    {
      aggregate{
        total_count
      }

    }
  }

response
{
  "data": {
    "source_types": [
      {
        "vendor": "Amazon",
        "product_name": "Amazon Web Services",
        "sources": [
          {
            "name": "Amazon Source",
            "endpoints": [
              {
                "host": null,
                "port": null,
                "role": null,
                "authentications": [
                  {
                    "authtype": "access_key_secret_key",
                    "username": "XXX"
                  }
                ],
                "authentications_aggregate": {
                  "aggregate": {
                    "total_count": 1
                  }
                }
              }
            ],
            "endpoints_aggregate": {
              "aggregate": {
                "total_count": 1
              }
            }
          }
        ],
        "sources_aggregate": {
          "aggregate": {
            "total_count": 1
          }
        }
      },
      {
        "vendor": "Red Hat",
        "product_name": "Red Hat Ansible Automation Platform",
        "sources": [
          {
            "name": "Ansible Tower Source",
            "endpoints": [
              {
                "host": "tower.example.com",
                "port": null,
                "role": "ansible",
                "authentications": [
                  {
                    "authtype": "username_password",
                    "username": "XXX"
                  }
                ],
                "authentications_aggregate": {
                  "aggregate": {
                    "total_count": 1
                  }
                }
              }
            ],
            "endpoints_aggregate": {
              "aggregate": {
                "total_count": 1
              }
            }
          }
        ],
        "sources_aggregate": {
          "aggregate": {
            "total_count": 1
          }
        }
      }
    ],
    "source_types_aggregate": {
      "aggregate": {
        "total_count": 7
      }
    }
  }
}

Perfomance implications
Querying aggregation at top level:
{
  sources
  {
      name,
  },
  sources_aggregate(
  {
    aggregate{
      total_count
    }
  }
}

This executes 2 queries  one for collection and one for counts. PostgreSQL provides windows to query total count without using limit, offset - but there is drawback: offset has to be greater than total count. Other solution is do complex query.
So I left  2 queries as it looks that it is enough  - and we should take into account mentioned alternative only for lot of rows.
Querying aggregation on nested association:
Total counts are obtain by count on array as those associations are loaded - no extra sql queries.
cc @rvsia @syncrou @slemrmartin @lindgrenj6
Links
https://issues.redhat.com/browse/RHCLOUD-9332

cc @syncrou @lindgrenj6
I can't see warnings about redefining constants again but I added condition for certitude. Otherwise there are other checks for defining constants - so erb definitions are loaded just once.
So this should be ready to go.

@lpichler @lindgrenj6  When I can expect these changes be in the sources-api? 🙏

@lpichler @lindgrenj6 When I can expect these changes to be in the sources-api? 🙏

@rvsia after merging this https://github.com/RedHatInsights/sources-api/pull/417


Golden master testsuite

After seeing issues like https://github.com/opencontainers/image-spec/issues/626, it seems wise to create a golden master testsuite that contains known valid data structures and ensures that we parse and generate them correctly. Such a test suite should be done outside of the scope tools like gojsonschema to ensure they are operating correctly.

@erikh Yes, very simple. Most of the effort will be in verifying the golden master output.

What do you mean by "golden master output"? @erikh is suggesting parsing json and checking fields while you seem to be thinking about something differently.

@philips "Golden Master" is the technique of generating hand verified files and then testing output against them. They should have the correct values and format. It is just a form of black box testing that is effective in side-stepping the kinds of issues we've seen as of late.
The technique is demonstrated here in https://github.com/golang/protobuf/blob/master/protoc-gen-go/testdata/imp.pb.go.golden.

I'll put a reminder in to research over the weekend what needs to be done
and hopefully get back to you then with more information.
On Thu, Apr 13, 2017 at 1:41 PM Stephen Day<EMAIL_ADDRESS>wrote:

@philips https://github.com/philips "Golden Master" is the technique of
generating hand verified files and then testing output against them. They
should have the correct values and format. It is just a form of black box
testing that is effective in side-stepping the kinds of issues we've seen
as of late.
The technique is demonstrated here in
https://github.com/golang/protobuf/blob/master/protoc-gen-go/testdata/imp.pb.go.golden
.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/opencontainers/image-spec/issues/637#issuecomment-294015937,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AABJ67Co0HgpUCGSgsH2eU50fSnSy6vcks5rvoh3gaJpZM4MzZ2I
.

@erikh Any updates?

ah crap; I've been buried in box issues. I'll work on this tomorrow AM.
Is there urgency here? I don't want to hold anyone up.
On Tue, Apr 18, 2017 at 12:59 PM Stephen Day<EMAIL_ADDRESS>wrote:

@erikh https://github.com/erikh Any updates?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/opencontainers/image-spec/issues/637#issuecomment-294961799,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AABJ68RZ1Wo_uh1Se-NlYi-DtvfsPPAwks5rxRYNgaJpZM4MzZ2I
.

@stevvooe how do you feel about a program that takes a directory that could be packed into an OCI-compatible image, which is read in, validated, and assumed partial, and generates the rest of the fields based on defaults or spec calculation (e.g. chainids). it then can pass that to the user for validation; we can dog food this in our own tests to download test data and reformulate to ensure no deviation (or at least, alert on it) from the spec as well; take the image, remove the json files, run our tool, validate against the original json files.
the field generation/processing could be provided either with direct code or text/template generation, not entirely sure how that would work yet, but the text/template idea was basically to allow restricted generation (e.g., with a fixed name so you always get your result with it in there).
Validation can be performed trivially by gojsonschema I think; I think that code already exists. The differentiator here is the gap-filling calculations.
The big advantages of this approach:

"diffable" results since generation is tightly controlled
chainIDs are easy to vet
in theory, this should be useful to people implementing OCI image libraries both from a "this is how it's done" and a "is my stuff working" perspective...

Let me know if I'm not being clear; I'm still sorting through some of this in my head.

For the most part, we don't really need to validate fully baked image layouts. This effort should focus on getting masters together for the individual components. At this point, we've seen several reports of various problems that are internal to each data type, so we can keep the scope here relatively small.

the field generation/processing could be provided either with direct code or text/template generation, not entirely sure how that would work yet, but the text/template idea was basically to allow restricted generation (e.g., with a fixed name so you always get your result with it in there).

The idea of a golden master avoids any generation.

Validation can be performed trivially by gojsonschema I think

Again, we need to go around gojsonschema: we can see that it is not actually working or performing validation in all cases. The idea of a golden master verifies gojsonschema, as well.
You basically have a test like this:
func TestGolden(t *testing.T) {
  for _, testcase := range []struct{
    name string
    input interface{}
    expected string // can be a literal or a path
  }{
  name: "MyCase",
  input: ocispec.Manifest{...},
  expected:
}{
    t.Run(testcase.name, func(t *testing.T) {
      p, err := json.Marshal(testcase.input)
      if err != nil { t.Fatal(err) }

      // note that it is okay to reindent the expected for consistency
      if !bytes.Equal(p, testcase.expected) { // check marshaling
        t.Fatal(...) // show a diff
      }

      // check we got back what was expected
      roundtrip := reflect.Zero(reflect.TypeOf(testcase.input)).Interface() // i think this is right
      if err := json.Unmarshal(testcase.expected, roundtrip); err != nil { t.Fatal(err) }
      if !reflect.DeepEqual(roundtrip, testcase.input) { t.Fatal(...) }
  }})
}

i'm in favor moving this to post-v1.0.0 so it is not a blocker

@vbatts Agreed.


Make control channels in backend configuration public

What is the expected enhancement?
The following variable is private
backend.configuration()._control_channels

Having it public will make dealing with calibrations easier. See here: https://github.com/Qiskit/qiskit-experiments/pull/26#discussion_r622430294

Closed by https://github.com/Qiskit/qiskit-terra/pull/6327


Ringbuffer iterators macro

Resolves #6
Refactor the ring_buffer::{Iter,IterMut} implementations to use a macro, so there is less duplicate code.
Inspired by the slice iterator macro in lib core.
I have never worked with macros to generate const / mut implementations.
So this might be a little rough.
#![allow(stable_features)] is needed for current rust nightly, since otherwise conservative_impl_trait would throw a warning. Removing the feature flag would not be backwards compatible with earlier nightly versions.

Thanks @XOSplicer!
bors r+


[EBPF] Parse platforms to use in KMT from Gitlab CI file

What does this PR do?
When generating the config for CI, filters the platforms based on the Gitlab CI job definition
Motivation
With this PR, jobs in CI will only download the images that are going to be used in that specific job (e.g. Rocky/Oracle images will not be downloaded for system-probe).
Additional Notes

Possible Drawbacks / Trade-offs

Describe how to test/QA your changes

/merge


Web deploy fail using Visual studio 2019 preview. Self contained deployment

Not sure if this is the correct place to log this issue.
Describe the bug
I'm getting the following error when I try to publish a self contained deployment :
 Error : Assets file '{PathToClientFolder}\obj\project.assets.json' doesn't have a target for '.NETStandard,Version=v2.0'. Ensure that restore has run and that you have included 'netstandard2.0' in the TargetFrameworks for your project.
Some important info :

Project builds and runs fine.
Deploys fine to a local folder.
Web Deploy works fine using the framework dependent deployment mode.

To Reproduce
Steps to reproduce the behavior:

Create a starter Blazor (ASP.net core hosted) project
Import .publishsettings file from hosting provider
Validate connection
Change deployment mode to self contained and select correct target
Click publish

Expected behavior
Should publish
Screenshots

Additional context
SDKS :
2.1.800-preview-009696 [C:\Program Files\dotnet\sdk]
2.2.300 [C:\Program Files\dotnet\sdk]
3.0.100-preview6-012264 [C:\Program Files\dotnet\sdk]
VS :
Microsoft Visual Studio Community 2019 Preview
Version 16.2.0 Preview 3.0
VisualStudio.16.Preview/16.2.0-pre.3.0+29021.104
ASP.NET Core Blazor Language Services   16.0.19307.2
TIA! 👍

Read this https://github.com/aspnet/AspNetCore/issues/9285#issuecomment-502794472 and maybe this https://github.com/aspnet/websdk/issues/604#issuecomment-487328649

Thanks @Andrzej-W. #9285 did the trick. Removing <TargetFramework>netcoreapp3.0</TargetFramework> from the .pubxml is a good workaround for my issue. 😁 🤘


[EXAMPLE] Custom rtsp video recorder

Closed in favour https://github.com/boonya/meteor-recorder/pull/182


Fix Braket-PennyLane plugin in preparation for PennyLane v0.15.0 release

Issue #, if available:
Fixes https://github.com/aws/amazon-braket-pennylane-plugin-python/issues/61.
Context:
A new version of PennyLane is planned for release next week. This version includes some changes that impact the Braket-PennyLane device, including:

The analytic keyword argument for devices has been removed. Now, shots=None indicates analytic mode. (PR)
The new Tape-based core is now the default and the old core has been remove (PR). Consequently, qml.enable_tape() is no longer available and should be removed.

The plugin test matrix shows that this plugin is currently failing when used with the development branch of PennyLane (right-most column). Our objective is to have this column pass. Once the new version of PennyLane has been released, it would then be good to release a new version of this plugin.
Description of changes:
This PR fixes the currently broken tests. Most changes involve updating the shots/analytic behaviour and removing enable_tape().
One point for discussion:
For the BraketAwsQubitDevice, currently shots=None is the default, which is internally converted to a default number of shots set by AwsDevice.DEFAULT_SHOTS_SIMULATOR or AwsDevice.DEFAULT_SHOTS_QPU. Instead, shots=0 is used to signify analytic mode (not allowed for QPU devices).
Unfortunately, this is incompatible with the new style in core PennyLane, which uses shots=None as the method of selecting analytic mode. The fix in this PR is to keep shots=None as the default input (i.e., selecting analytic mode), but not to internally swap that out for a default number set by AwsDevice.DEFAULT_SHOTS_SIMULATOR or AwsDevice.DEFAULT_SHOTS_QPU. As a consequence, if users try to access a QPU device without specifying the number of shots, they will be met with an error ("QPU devices require the number of shots to be specified").
This is a breaking change for those using hardware devices without explicitly setting shots. However, I'd argue that it is better to require users explicitly specify their number of shots (forcing them to think about it), rather than using defaults behind the scenes. On the other hand, we could probably avoid a breaking change if we really want to - e.g., by keeping shots=None but swapping out for a default value as before, at a cost of not following core PL.

Note: there is a failing integration test :thinking:
ValueError: ('custom_gradient function expected to return', 1, 'gradients but returned', 12, 'instead.')

A tricky issue is that the Braket SDK uses shots=0 to indicate analytic mode, which differs from the upcoming PL practice of using shots=None. Probably worth thinking about which one makes more sense here (or perhaps both?)

A tricky issue is that the Braket SDK uses shots=0 to indicate analytic mode, which differs from the upcoming PL practice of using shots=None. Probably worth thinking about which one makes more sense here (or perhaps both?)

Thanks @licedric! Good point - this is respected at least internally since we still use shots=0 if self.analytic else self.shots when calling _device.run and _device.run_batch().
However, I'd also be up for allowing users to input shots=0 when loading the device and still get analytic mode (hence supporting both styles).

Coverage has been fixed with #63; everything should be good to go once you merge main into your branch and resolve the conflicts!

@speller26 @licedric - I made some updates to the shots behaviour - check out this comment.


Cluster connect release v1

@ds-ms This should go to master as well, right?

@atharvamulmuley Please do the following things after merging in the release branch:

Create a tag v1.1 on the latest release/v1 commit (which will be created after merging)
Cherry-pick these changes and raise a PR on master as well


RandomAccessFile setPosition not working as expected

I am trying to chunk a file into base 64 string parts but I am having an issue with streams read incorrectly & the length of the returned strings.
File file = File(result.files.single.path);
RandomAccessFile randomAccess = file.openSync(mode: FileMode.read);

randomAccess = await randomAccess.setPosition(0);
List<int> buff = randomAccess.readSync(10);
debugPrint(base64Encode(buff)); // outputs: /9j/4AAQSkZJRg==

randomAccess = await randomAccess.setPosition(10);
List<int> buff2 = randomAccess.readSync(10);
debugPrint(base64Encode(buff2)); // outputs: AAEBAAABAAEAAA==

// Correct string
// /9j/4AAQSkZJRgABAQAAAQABAAD//gA7Q1JFQVRP...

The first string returned is correct but the length does not match, 14 characters are returned for the first base 64 string, I expected 10, one byte for each character
The seconds string is also 14 characters and is nowhere to be found in the complete base64 file string (which i obtained by converting the entire file) i.e. if I convert the entire file at once I cannot find a pattern matching buff2's base64 segment
I used this testing image.
flutter doctor returns
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, 2.0.1, on Mac OS X 10.15.7 19H114 darwin-x64, locale en-ZA)
[✓] Android toolchain - develop for Android devices (Android SDK version 29.0.2)
[✓] Xcode - develop for iOS and macOS
[✓] Chrome - develop for the web
[✓] Android Studio (version 4.1)
[✓] VS Code (version 1.54.1)
[✓] Connected device (2 available)

• No issues found!

@Henco1
Looking at your code snippet, I don't see you using any Flutter widget and since RandomAccessFile comes from dart:io library, I think this issue should be opened here : https://github.com/dart-lang/sdk/issues.
A similar issue for reference : https://github.com/dart-lang/sdk/issues/43577
Closing from here.


$component->setComponentId('1234567890') working correctly?

While creating an order, I'm trying to add to each "component" our own unique identifier.
For "order" and "item" the fields are called

sourceOrderId
sourceItemId

In the documentation
https://docs.oneflowcloud.com/products/siteflow-order-structure/
it states as well that the field for a component is called

sourceComponentId

But I'm not able to find a corresponding method setSourceComponentId. I only find setComponentId and this will only set componentId in order.josn. I'm not sure if this will work as this is not even documented anywhere. Could you please check this and add the correct method setSourceComponentId?
If you need further details, please don't hesitate to ask.

In the meanwhile, I found a workaround.
        $component->__addProperty('sourceComponentId', '', true);
        $component->setValue(
            'sourceComponentId',
            'MY_Source_Component_Id'
        );

Would it be at least possible for you to wrap this into a method 'setSourceComponentId'?


[nginx-ingress-controller]: Adapt nginx hash sizes to the number of ingress

This change allows the tuning of 2 important NGINX variables:

server_names_hash_max_size
server_names_hash_bucket_size

The default values should be enough for most of the users but after +300 Ingress rules or long hostnames as FQDN NGINX requires tuning of this values or it will not start.
The introduced change allows the self-tuning using the Ingress information
Using --v=3 it's possible to see the changes:
...
I0822 21:42:10.517778       1 template.go:84] adjusting ServerNameHashMaxSize variable from 4096 to 16384
...

fixes #1487

This change is

@bprashanth ping

LGTM


Question: How to get expressions into bulk inserts?

I posted this question on SO: http://stackoverflow.com/questions/43481075/how-do-i-use-expression-with-bulk-insert-using-npm-mysql
var sql = "INSERT INTO Test (name, email, n) VALUES ?";
var values = [
    ['demian'<EMAIL_ADDRESS>1],
    ['john'<EMAIL_ADDRESS>2],
    ['mark'<EMAIL_ADDRESS>3],
    ['pete'<EMAIL_ADDRESS>4]
];
conn.query(sql, [values], function(err) {
    if (err) throw err;
    conn.end();
});

How would I pass an expression as one of those values? I know in a singular insert I can do INSERT INTO Test SET name=?, modified_on=NOW() for example. But the way the bulk insert converts to a string, not sure if it's even possible. Is this ask just impossible? There a a recommended way to write the query out properly?

Basically it seems impossible, so you should make a query string you want.
I would try this as follows.
var sql = "INSERT INTO Test (name, email, n, modified_on) VALUES ?";
var values = [
    ['demian'<EMAIL_ADDRESS>1, '::NOW()'],
    ['john'<EMAIL_ADDRESS>2, '::UNIX_TIMESTAMP()'],
    ['mark'<EMAIL_ADDRESS>3, '::DATE()'],
    ['pete'<EMAIL_ADDRESS>4, '::NOW()']
];

var formattedQuery = connection.format(sql, [values]).replace(/'::(.*?)'/g, '$1');

connection.query(formattedQuery, function(err) {
});

fomattedQuery is as follows.
INSERT INTO Test (name, email, n, modified_on) VALUES ('demian'<EMAIL_ADDRESS>1, NOW()), ('john'<EMAIL_ADDRESS>2, UNIX_TIMESTAMP()), ('mark'<EMAIL_ADDRESS>3, DATE()), ('pete'<EMAIL_ADDRESS>4, NOW())

I hope this helps.


[WIP, BUG] Patch subject_summary in reports

As identified in https://neurostars.org/t/fmriprep-traiterror/1538

Okay. I guess what would be good is to make sure that the reports look sensible for 1 task, 1 task (multi-echo), 2 tasks, 2 tasks (1 multi-echo), 2 tasks (both multi-echo).

How do you think would be best to go about testing that ? I imagine not adding new data sets....

If you have a dataset (locally) with at least two of each, you could just make copies where you remove pieces. And if you have a complete working directory, you can also make a copy of it for each test case, which should save a ton of time.

Oh I see. Sorry, I thought you were suggesting adding all of those cases as tests for CI !
We're already covering 1 run (ME) and 2 runs (non-ME) in the CI, and I've successfully generated local reports for 2 runs (ME). I can confirm the other cases, though.

So sorry for the delay-- had an odd docker cache error. It's running now but if you're ready to version a hot fix, I'm happy to just submit a separate PR in the case that mixed (non-)ME datasets cause previously unseen errors.

I'm not in a rush. Let us know when your tests pass.

@emdupre green lights?

Yes !! Sorry for the delay. An example report for non-ME and ME is available here, too.

Hi.  I am using fMRIprep 1.0.11, and am getting the error linked to at the top of this thread (https://neurostars.org/t/fmriprep-traiterror/1538).  Does 1.0.11 include the fix that apparently was merged in here? thanks!

Yes, it does.


Wrong MSRV in README

A minimal Travis setup could look like this (requires Rust 1.24.0 or greater):

However, the rustfmt component is only available starting from 1.31.0. Anything below gives:
└─ rustup toolchain add 1.30.0 -c rustfmt
info: syncing channel updates for '1.30.0-x86_64-unknown-linux-gnu'
info: latest update on 2018-10-25, rust version 1.30.0 (da5f414c2 2018-10-24)
error: component 'rustfmt' for target 'x86_64-unknown-linux-gnu' is unavailable for download for channel 1.30.0

The docs originally mentioned the rustfmt-preview component which was subsequently corrected (as that component stopped being shipped a long time ago), but obviously the version wasn't updated accordingly.
Thanks for the report @YaLTeR!
For anyone interested in fixing this, the incorrect line can be found here:
https://github.com/rust-lang/rustfmt#checking-style-on-a-ci-server

I'd like to fix this.


Dummy cells in menuItem [Calendar Example]

Hey, first of all, Thanks a lot, it's a great library saved a lot of time.
I am just playing around with the features of Calendar example, I want to show 2(in my case) dummy cells for the future date in menuItems collectionView,
Why dummy? because those future dates should not be accessible,
by doing this my selected date(today's date) will be in the center in menuItems collectionView.
Is this possible to do this using current functionality OR can you suggest how I can do this?

Hi @moosabaloch! Yes, this should be possible!
For example, you can update CalendarItem with an isSelectable property:
struct CalendarItem: PagingItem, Hashable, Comparable {
  let date: Date
  let dateText: String
  let weekdayText: String
  let isSelectable: Bool
  ...
}

Then create your own PagingViewController subclass, override didSelectItemAt and check if the item is selectable:
class CustomPagingViewController: PagingViewController<CalendarItem> {

  override func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) {
    let pagingItem = visibleItems.pagingItem(for: indexPath)
    if pagingItem.isSelectable {
      super.collectionView(collectionView, didSelectItemAt: indexPath)
    }
  }

}

Then you just need to update your date source to set isSelectable to false if the date is later than today's date. You can also update the styling of CalendarPagingCell based on the isSelectable property.
Does that work for you?

Yes it works from the menu side but not from the UIPageController
by swiping, it takes to the future date but it shouldn't.  😞

@rechsteiner: In the current implementation, Is there any possibility to avoid generating pages for future dates?

Hi @moosabaloch! Sorry for the late reply. Unfortunately, I don't know a way of achieving this at the moment. I guess one way to achieve this is to change viewControllerForPagingItem in PagingViewControllerInfiniteDataSource to return an optional UIViewController. You might need to do some additional changes. I guess you could fork Parchment and see if you get that working

Thanks, I'll try.


How to set up Paper ejection direction?

Hi,
my scan has two ejection forward and backward.
any one know how to set up it by using code C#?
thank you!

I am not sure I know what "paper ejection" means, but it does not sound like a standard TWAIN capability.

What is the name of the device?

If it is a custom TWAIN capabilty, you will need to know which one it is and set it using DTWAIN_SetCapValues.  For this, it requires that you know from the manufacturer if custom capabilties are supported, which one it is.

hi @dynarithmic , thank you for the reply.
"paper ejection" --> when you open with UI, you will see this setting.

I want the code let the paper forward out of the scanner after scanning. ( not return backward the paper, it  occurs Paper Jam a lot this way )

What is the name of the device? --> plustek MobiOffice D600 Plus
Seems like it's not a standard TWAIN CAP. I will do more research about this DTWAIN_SetCapValues

If you run the DTWDEMO.exe program, select the source, you can get a listing of the capabilities if you choose Source Properties... from the main menu Source Selection Test.
If you see capabilities named CAP_CUSTOMBASE + xxxx, those are the custom capabilities.

DTWAIN does not know what those capabilities do, what data type they are (string, booleans, integers, etc.), and whether they can be set (some may be read-only).
You will need to get the custom capability information from the manufacturer as to the data type, container used to store the information, etc.   Once you get this information, you would call DTWAIN_GetCapValuesEx() specifying the container to use and data type.

See DTWAIN_GetCapValuesEx2.  Once you get the information about the capability, use this function.

Make sure you are using the latest version of DTWAIN, as many changes have occurred since then.
You can also try the new DTWAIN_TestGetCaps introduced in version 5.5.0 (see the updates.txt on how to use this function.  This function can be used to test the custom capabilities using all the container and data types.
I will be closing this ticket, and will only reopen if there still is an issue.


[Sprig App] Sigma Games

Author name
Author: happy
About your game
What is your game about?
No
How do you play your game?
No

Unfortunately, this is not a valid game.
You can follow various tutorials and look at documentation on the sprig website to learn how to make your first game.
Feel free to ask in #sprig if you need any help!


Exploring what partial shared classes look like

Work in progress

Prefer we close in favor of this solution here https://github.com/Azure/autorest.csharp/pull/3434/commits/8d3e7c211e741ee4d517a2daf96883d856cb0934#diff-c3ec2274d241a0d6bc4ae6c34e926e310082c290372840042c96bdb94e71cf1e


Fix size limit on extension.js

Removes dependency on roamjs-scripts, which enforced a size limit on extension.js
I also tried adding a css minifier, but it looks like webpack already minifies the css pretty well, there was only a very small difference.

Also deleted the extension.js from the repository, since it is compiled the extension.js should not be committed


Strange issue with User Defined types + container registry

Bicep version
Bicep CLI version 0.25.3 (862708594a)
Describe the bug
I am storing Bicep templates to container registry. The bicep templates have user defined types (schemas). Often we find some issues with user defined types where for example we have put incorrect type for property/parameter. We store bicep templates with versioning so for solution with name exampl1 we can have the following tags example1:1, example1:1.1, example1:1.1.2. Once we find some issue in the schema we force update tags example1:1 and example1:1.1 and we create a new tag example1:1.1.3. In the bicep parameters file if I reference in using statement example1:1 and I do command in VSC restore bicep modules force, the modules are restored successfully but those changes are not somehow available in VSC. Below you can see issue that flagged in VSC:

If I browser the actual file that was downloaded. In my case: C:\Users<user name>.bicep\br<container url><solution name>\1$
I can see that the schema is correct:

but the issue stands in VSC. So there must be some other cache that somehow does not validates the schema correctly when there are changes.
Can you figure out where this issue is and why it is happening?
To Reproduce
I think I have described it well
Additional context
Add any other context about the problem here.

@alex-frankel  sorry to bother you but I think this is quite important bug as well.

@slavizh some questions:

Does the issue persist after closing the editor pane for the .bicepparam file and re-opening it?
Does the issue persist after restarting VSCode?
Do you see similar behavior in .bicep files (e.g. if you use a module reference instead of .bicepparam + using)?

Answers below

Could you confirm that this is a behavioral change with the latest release (e.g. does this work with the previous release)? - Not in latest release, I have noticed it in 0.24 but I was thinking that was issue in our publishing process. After upgrade to 0.25. I had the time to really troubleshoot does why I have logged it yesterday.
Does the issue persist after closing the editor pane for the .bicepparam file and re-opening it? - Could not just test by just closing that editor as my PC was restarted overnight so I could only test with restart of VSC.
Does the issue persist after restarting VSCode? - After closing VSC and re-opening everything is behaving properly.
Do you see similar behavior in .bicep files (e.g. if you use a module reference instead of .bicepparam + using)? - Do not have information on modules as I am not using them and now will be hard to troubleshoot without actually simulating some issue and publishing version to our registry.

Thanks! I have a fix out for it here: https://github.com/Azure/bicep/pull/13278
Given the recent type issues, I suspect we're going to want to do a hotfix release, so this may be released soon!

@anthony-c-martin awesome!


DAT-65883: allow chevron icon inherit the text color in DlDropdownButton

by passing null to DlIcon's color we make it use inherit in the styles, thus using same color settings as its parent

@guyDataloop updated


quic: Terminate streams with empty trailers

Commit Message: quic: Terminate streams with empty trailers
Additional Description:
QUIC streams with empty trailers are currently improperly terminated: https://github.com/envoyproxy/envoy/issues/33226
This pull request fixes the handling of empty trailers to terminate the stream instead of sending an empty HEADERS frame.
An alternative would be to skip the call to encodeTrailers when headers are empty. That would require broader changes to Envoy and may break the design of filters if we expect empty trailers processed by a first filter to be handled by a subsequent ones. This change is more narrowly scoped but it would be good for a maintainer to confirm that this is the right fix.
Risk Level: Low. Few clients should be affected by this change since empty trailers together with HTTP/3 should be rare (but needed for gRPC-Web).
Testing: Verified that gRPC Web requests are working as expected after this fix.
Docs Changes: N/A
Release Notes: N/A
Platform Specific Features: N/A
Fixes #33226

/assign @RyanTheOptimist

Let's add a runtime feature to control this behavior change.
/wait


Write Question 2

There's a stag head on the wall. Look into its eyes? No: continue, Yes: -1 heart, it falls on you and the prongs impale you


L5: php artisan queue:listen redis connection problem

Having moved from L4 to L5 we experience some problems with our queue. We run the queue via redis – which we also use for session, so there should be no problem with our redis connection (we can ping pong on the server via redis-tools aswell)
When we execute the command php artisan queue:listen we get the following exception
[Predis\Connection\ConnectionException]
Connection refused [tcp://xxx.xx.x.xx:tcp://xxx.xx.x.xx:6379]

it seems like laravel is trying to connect to [ (tcp://ip) : (tcp://ip) : (port) ], where it should obviously only connect to (tcp://ip) : (port)
I have been unable to locate any descripencies in the various redis/queue related places i've looked.
Thanks in advance!

Can't replicate. Please make sure you're using the correct dependency versions and have updated your config.

I am also having the same issue! Running Lumen in a php-fpm Docker container. When I run a custom artisan command, it duplicates the connection string:
[Predis\Connection\ConnectionException]
Connection refused [tcp://redis:tcp://<IP_ADDRESS>:6379]
However, redis connection works fine when app is accessed from web browser.

I found this to be an issue with the phpdotenv library. If some environment variable is defined in the OS, and also the same variable is defined in the .env file, phpdotenv gets the system variable by default. This behavior is controlled by the attribute $immutable in Dotenv.php class.

In my case the problem was that the env var  REDIS_PORT was set to
REDIS_PORT=tcp://<IP_ADDRESS>:6379
And overwrite the REDIS_PORT set in Laravel .env file.
Maybe Artisan get OS environment variable. I resolved it setting OS environment variable REDIS_PORT to
REDIS_PORT=6379
I use docker and docker-compose so i just modified my docker-compose.yml adding this 2 line:
environment:    REDIS_PORT: 6379

use host name into .env config,REDIS_HOST=app_redis_1:6379

For future reference I ran into this issue yesterday so I'll document it here.
Environment

laravel 5.3
rancher 1.2.0
docker 1.12.2
php-fpm 7.0
apache
mysql
redis

Setup
Redis is used in laravel as a queue, cache, session storage.
Mysql is used for db storage.
We have one rancher stack that contains two containers
web: apache+php-fpm+laravel
redis: only runs redis
What went wrong
For it's service discovery rancher will inject a lot of environment variables based on the name of the containers.

SERVICENAME_REDIS_1_PORT=tcp://redis:6379
SERVICENAME_REDIS_1_PORT_6379_TCP=tcp://redis:6379
SERVICENAME_REDIS_1_PORT=tcp://redis:6379
SERVICENAME_REDIS_1_PORT_6379_TCP=tcp://redis:6379
REDIS_PORT_6379_TCP_ADDR=redis
REDIS_PORT_6379_TCP_PORT=6379
SERVICENAME_REDIS_1_PORT_6379_TCP_ADDR=redis
REDIS_PORT_6379_TCP=tcp://redis:6379
SERVICENAME_REDIS_1_PORT_6379_TCP_PROTO=tcp

This ended up overwriting our usage of REDIS_PORT that we set as an environment variable on the container when deploying it.
TLDR
If you're using rancher, avoid environment variables that could match a container/service name in some form, a lot of pain can be avoided that way

====docker-compose.yml
laravel:
depends_on:
- db
- redis
links:
- db:mysql
- redis
=======.env
.env
REDIS_HOST=redis:6379
works for me

Make sure that the redis service is accessible inside docker. This is my solution.
.env file.
### REDIS CONFIG REDIS_HOST=redis REDIS_PASSWORD=null REDIS_PORT=6379


Edit static Makefile include file make.inc

Add license and file description
Add conditional logic to set variables based on compiler choice.

This is a stale branch that should either be merged or deleted.

Current coverage is 42.95% (diff: 100%)

Merging #278 into master will decrease coverage by 7.43%

@@             master       #278   diff @@
==========================================
  Files             2          2
  Lines           909       1639   +730
  Methods          42         83    +41
  Messages          0          0
  Branches        195        373   +178
==========================================
+ Hits            458        704   +246
- Misses          368        816   +448
- Partials         83        119    +36

Powered by Codecov. Last update 427a93e...eb73215

LGTM

ah but it's out of date... I'll update from here.

still
looks good to me


[MAD][DATA1018][labDataCleaning]AlbertoCastellanos

Resolved project proposed for data cleaning using pandas

Happy coding and analyzing!!


API

Helo ! Is there any API or something similar so I can try to develop a site with information about Flax?

Hey, our website is https://flaxnetwork.org/. This is a fork of https://github.com/Chia-Network/chia-blockchain. You can see there for more info, but there is currently no user-facing API.


Fix speaker page to be a little more visually appealing

fixes #14

Here is what things look like now:


Add tests for domains and threads interactions

These tests generate random trees of spawning nodes (either a domain or a thread) and then joining them in another random pattern
These tests only come with generators, not shrinkers, at the moment. It would be interesting to add some shrinkers if we run into failing examples.

Looks good to me, thanks!


OCPBUGS-7465: fix: upgrades oc version to the latest

Description
Currently oc-mirror is hitting 401 status code (OCPBUGS-7465)
The code on this PR is based on oc PR #1556
Fixes OCPBUGS-7465
Type of change
Please delete options that are not relevant.

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

/lgtm

/hold

It is not required anymore since the issue was happening because of the clock out of sync.
For more information see: https://access.redhat.com/solutions/6966257


Feature/playbook cleanup

PR to bring more files under ansible-control

Thanks for bringing these things in, I appreciate the cleanup and look forward to merging this. Please delete the steps you've automated from the README.

Thanks for bringing these things in, I appreciate the cleanup and look forward to merging this. Please delete the steps you've automated from the README.


More complex documents can not be queried properly

I'm experiencing strange behaviour when trying to query more complex JSON documents in embedded mode. When the document that is inserted inserted to tiedot is created from a string via json.Unmarshal() it can be queried successfully. In case it is created from a directly initialized object it can not be queried.
Example object is taken from the example in documentation:
{"Name": [
  {"PenName": "Joshua"},
  {"PenName": ["John", "David"]}
]}

Consider the following code snippet:
_, err = coll.Insert(jsonDoc)

query := map[string]interface{}{
	"eq": "John",
	"in": []interface{}{"Name", "PenName"},
}

queryResult := make(map[int]struct{})
if err := db.EvalQuery(query, coll, &queryResult); err != nil {
	panic(err)
}

Query returns any data only in a case when jsonDoc is created as:
s := `{"Name": [{"PenName": "Joshua"}, {"PenName": ["John", "David"]}]}`
var jsonDoc map[string]interface{}
json.Unmarshal([]byte(s), &jsonDoc)

but does not work when created as:
jsonDoc := map[string]interface{}{
  "Name": []interface{}{
    map[string]interface{}{
      "PenName": "Joshua",
    },
    map[string]interface{}{
      "PenName": []string{"John", "David"},
    },
  },
}

From my understanding these two methods of creating jsonDoc are equivalent. What I'm missing?

On further comparison of the objects created by direct initialization and json.Unmarshal I found that []string need to be declared as []interface{} in order for the insert to collection to succeed.
i.e. the object needs to be declared as:
jsonDoc := map[string]interface{}{
  "Name": []interface{}{
    map[string]interface{}{
      "PenName": "Joshua",
    },
    map[string]interface{}{
      "PenName": []interface{}{"John", "David"},
    },
  },
}

which is, IMHO, kind of rather unintuitive.

Hello!
Terribly sorry about the inconvenience, here's the culprit:
https://github.com/HouzuoGuo/tiedot/blob/master/db/doc.go#L14
The function works very well for JSON documents deserialised from string, but as you have observed, unfortunately it does not have a match for []string.
Reflection may come in handy in this case, but I have yet to understand the performance implication of reflection vs type matching.

Thanks for the explanation.
On a second thought this might be not that big of a problem in practice as people are mostly (i would guess) piping the structs to be stored via json.Marshal -> json.Unmarshal to have map[string]interface{} for Insert method and this takes care of passing arrays correctly.
I found this when writing simple test program for tiedot evaluation and initialized  map[string]interface{} variable with data directly.
Maybe it would make sense to mention this in documents (or embedded usage tutorial) somehow, but I do not have a good proposal how and where in particular.


[FLOC-2862] Upgrade to Eliot 0.8.0

This looks good. Logging appears to still work.
I did file https://clusterhq.atlassian.net/browse/FLOC-2867 during testing, but this problem is present in master as well, so seems unrelated.
OK to merge.


scoop says lynx needs openssl 32bit. openssl is installed. Lynx install also partly broken.

>scoop install lynx
Updating Scoop...
...
Scoop was updated successfully!
Installing 'lynx' (2.9.0dev.4) [64bit]
lynx-newssl-setup.exe (1.4 MB) [==============================================================================] 100%
Checking hash of lynx-newssl-setup.exe ... ok.
Extracting lynx-newssl-setup.exe ... done.
Running pre-install script...
Linking ~\scoop\apps\lynx\current => ~\scoop\apps\lynx\2.9.0dev.4
Creating shim for 'lynx'.
Persisting $dir/lynx.cfg
The system cannot find the path specified.
Path not found - C:\Users\bugma\scoop\apps\lynx\current\$dir
Running post-install script...
lynx requires the 32-bit version of openssl to be installed

>lynx
(assorted error dialogs appear)

>scoop search openssl
'main' bucket:
    openssl-mingw (1.1.1d_2)
    openssl (1.1.1d)

>scoop install openssl
WARN  'openssl' (1.1.1d) is already installed.
Use 'scoop update openssl' to install a new version.

Also something wrong in lynx install itself
Persisting $dir/lynx.cfg
The system cannot find the path specified.
Path not found - C:\Users\bugma\scoop\apps\lynx\current\$dir

See https://github.com/lukesampson/scoop/issues/3105 . Please try scoop uninstall openssl; scoop install -a 32bit

worked once I changed the second part to
scoop install openssl -a 32bit

Will this work with tools that require 64bit openssl or can I also install the 64bit side by side?

Unfortunately, Scoop can't install openssl 64bit and 32bit side by side now.

Could you have a look at https://github.com/ScoopInstaller/Main/pull/512 ?

This issue belongs in the Main bucket. Unfortunately, we cannot move this issue on this end, so it is being closed.
If this is still an issue, please create a new issue in the Main bucket via https://github.com/ScoopInstaller/Main/issues/new?body=Moved+from+https%3A%2F%2Fgithub.com%2Flukesampson%2Fscoop%2Fissues%2F3714


Added conventions for generic type parameters

Based on post https://msdn.microsoft.com/en-us/library/aa479858.aspx?f=255&MSPPError=-2147217396
Summary
Added the two naming conventions mentioned to a new category describing the conventions for generic type parameters

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.:x: michaelschnyder sign nowYou have signed the CLA already but the status is still pending? Let us recheck it.

Thank you, @michaelschnyder, for contributing to the dotnet/docs repo. Unfortunately, as the original text that indicated that we've republished this with the permission of Pearson Education, Inc., indicated, we are not authorized to modify this content. As a result, I'm going to have to close your PR,


add MOVIE FINDER

With the use of Movie Finder, users can easily view all the related details for a particular movie like ratings, release date, genre, language, actors, plot etc

Sorry, someone is already working on this. Do not be demotivated and raise a new issue.


node issue after 2 min of running

I just started from scratch today and my node stopped after 2 min of running. Please check the below printscreen.
Even if you reboot your machine or your screen session and restart the node, the problem comes up again within 2 min from launching.
Thanks!

Hi @AlexDCryptoC thanks for reporting.
What OS are you using?
What version of go are you using? Run go version to find out.

ubuntu 18.04
go version go1.13 linux/amd64
19db6fe6d54dd138d9fb19908878e8015df05f9d

Sounds like a ulimit problem.  Read the following link to see if it solves your issue;
https://medium.com/@muhammadtriwibowo/set-permanently-ulimit-n-open-files-in-ubuntu-4d61064429a

Hei. Thanks for link but still i have the same issue after i followed each step described there.

@AlexDCryptoC Looks like this is a different, known error.
Sometimes when a node crashes, the staking port remains occupied.
Try running the node again, but do --staking-port=10000 (or some other empty port).

nope, still doesn't work

@AlexDCryptoC Same problem? Different problem?

Ya the behavior was the same, but after i reinstalled everything from scratch on another machine with go version go1.14 linux/amd64 , i could manage to start the node and create the validator as well.
I'll close this issue.
Thank you for support.


I see a error in replit

Screenshot :-

Website :- www.replit.com

Maybe this is just an issue with replit?
i worked with replit a bit and i am pretty sure this is an issue with the repl template

from what i understand so far, graphics programs on replit run in an x11 environment, which the python 3 template does not have
choose the pygame template instead and it'll work

Thanks @kingofsponges
Closing this issue


Publish also images based on ltsc2016

It would be great if you published also images based on older ltsc2016 tag (now your images are based on 1809).
I would like to prepare a new PR but I don't know how exactly the build process works, how to ensure the build.cmd would be executed twice.

The build process is pretty dumb, it just builds all images unless you pass a specific keyword to build just that image, eg build.cmd pg12.
Notes to self:
See if a registry manifest can make this simple for the end user, use https://hub.docker.com/_/hello-world/?tab=tags as a reference. Specifically, tags nanoserver-1809 and nanoserver-1803 exist, but also nanoserver which references both images (and also latest which references even more).
https://docs.docker.com/engine/reference/commandline/manifest/

there are no ltsc* tags for nanoserver, only for servercore.
Suitable nanoserver tags to build on:

1709 (EOL)
1803 (EOL)
1809
1903
1909

As I understand it, servercore:ltsc2016 is the same as servercore:1607 but there's no corresponding nanoserver:1607 image available (it used to exists but is no longer available to pull).

Yes, we need the version compatible with 10.0.14393 OS version, thus ltsc2016 or 1607 tag for microsoft/windowsservercore image.
The nanoserver respective tag seems to be mcr.microsoft.com/windows/nanoserver:10.0.14393.2551, or simpler mcr.microsoft.com/windows/nanoserver:sac2016 (they have the same digest: sha256:2b783310e6c82de737e893abd53ae238ca56b5a96e2861558fb9a111d6691ddb).
So maybe the solution would be to have possibility to specify tag for nanoserver and servercore separately. It would be sac2016 and ltsc2016.

It seems there could be an issue with the sac2016 image:
Step 13/22 : RUN mkdir "C:\\docker-entrypoint-initdb.d"
 ---> Using cache
 ---> ff03810dc36f
Step 14/22 : COPY --from=prepare /pgsql /pgsql
 ---> Using cache
 ---> 83a9310a4e4a
Step 15/22 : USER ContainerAdministrator
 ---> Using cache
 ---> 40f6c248d1e1
Step 16/22 : RUN setx /M PATH "C:\\pgsql\\bin;%PATH%"
 ---> Running in 1b83c62e938b
container 1b83c62e938b7595b7ec58c48ac6c1a633ac8306c72c5add6655e3cd721b2f58 encountered an error during CreateProcess: failure in a Windows system call: The user name or password is incorrect. (0x52e)
[Event Detail:  Provider: 00000000-0000-0000-0000-000000000000] extra info: {"CommandLine":"cmd /S /C setx /M PATH \"C:\\\\pgsql\\\\bin;%PATH%\"","User":"ContainerAdministrator","WorkingDirectory":"C:\\","CreateStdInPipe":true,"CreateStdOutPipe":true,"CreateStdErrPipe":true,"ConsoleSize":[0,0]}

I pushed a rewritten build.cmd, you can probably reproduce the above error with build.cmd pg12 win1607.

Thank you very much for solving this for me, very appreciated!
I tried to run the build.cmd pg96 win1607 and got the same error as you.
I found this interesting comment about change of the default user in the Windows base images.

The instruction USER ContainerAdministrator doesn't work with 2016. It was introduced with 1709...
So the solution is not to perform the USER ContainerAdministrator in case of win1607. I confirmed this on my machine.

I've just also tried to execute the image built and it seems that also the second USER directive is causing the same problem, but when executing the entrypoint.
So the correct solution is not to use the USER directives for these old base images.

C:\Users\augustyn>docker run --rm mcr.microsoft.com/windows/nanoserver:sac2016 powershell Get-LocalUser

Name           Enabled Description
----           ------- -----------
Administrator  True    Built-in account for administering the computer/domain
DefaultAccount False   A user account managed by the system.
Guest          False   Built-in account for guest access to the computer/domain

When I tried to execute the container as Administrator (-u Administrator) then the output is slightly different (but the container still exits):
The files belonging to this database system will be owned by user "Administrator".
This user must also own the server process.

The database cluster will be initialized with locale "C".
The default text search configuration will be set to "english".

Data page checksums are disabled.

fixing permissions on existing directory C:/pgsql/data ... ok
creating subdirectories ... ok
selecting default max_connections ... 100
selecting default shared_buffers ... 128MB
selecting default timezone ... Europe/Belgrade
selecting dynamic shared memory implementation ... windows
creating configuration files ... ok
running bootstrap script ... ok
performing post-bootstrap initialization ... child process was terminated by exception 0xC000001D
initdb: removing contents of data directory "C:/pgsql/data"
****************************************************
WARNING: No password has been set for the database.
         This will allow anyone with access to the
         Postgres port to access your database. In
         Docker's default configuration, this is
         effectively any other container on the same
         system.
         Use "-e POSTGRES_PASSWORD=password" to set
         it in "docker run".
****************************************************
authMethod: trust
The system cannot find the drive specified.
pg_ctl: directory "C:/pgsql/data" is not a database cluster directory
pg_ctl: directory "C:/pgsql/data" is not a database cluster directory
PostgreSQL init process complete; ready for start up.
Execution of PostgreSQL by a user with administrative permissions is not
permitted.
The server must be started under an unprivileged user ID to prevent
possible system security compromises.  See the documentation for
more information on how to properly start the server.

What's the specific reason you need an image based on 1607? Personally I don't think it's worth to continue with sac2016 since it's long EOL and the image is clearly lacking.
I'm also wondering if it makes sense to continue with nanoserver in general due to the lack of PowerShell.
A rebase on servercore gives the advantage of PowerShell and longer support periods for some images (it seems there's no concept of LTS on nanoserver).
Also, upstream significantly refactored the postgres entrypoint script and that's gonna be a pain to re-implement in batch script, if it's possible at all.
It'll take a bit of effort but it's probably worth to start from scratch with a PowerShell based entrypoint instead of batch script. We can still have smaller images using the nanoserver variants of https://hub.docker.com/_/microsoft-powershell

The reason is that we are still running some workload on Windows Server 2016 (as native Windows Containers) and I think that we can run 1607-based images only (correct me if I'm wrong).
I agree that it's not worth the effort to support so old base images.


websockets.connect() raises Exception after upgrading to version 10

The following minimal code sample works with websockets==9.1, and raises an exception upon upgrading to websockets==10.
This is a reduced example of code that is currently running and working with websockets==9.1.
import websockets

async def main():
    await websockets.connect('wss://testnet.bitmex.com/realtime')

if __name__ == '__main__':
    import asyncio
    asyncio.get_event_loop().run_until_complete(main())

I have been able to reproduce this error in a clean virtual environment where the only change is using different versions of the library. I have tested this on Ubuntu 20.04.2 LTS with Python 3.8. The traceback of the error is as follows:
Traceback (most recent call last):
  File "main2.py", line 8, in <module>
    asyncio.get_event_loop().run_until_complete(main())
  File "/usr/lib/python3.8/asyncio/base_events.py", line 616, in run_until_complete
    return future.result()
  File "main2.py", line 4, in main
    await websockets.connect('wss://testnet.bitmex.com/realtime')
  File "/home/jayjay/projects/pyct/venv/lib/python3.8/site-packages/websockets/legacy/client.py", line 649, in __await_impl_timeout__
    return await asyncio.wait_for(self.__await_impl__(), self.open_timeout)
  File "/usr/lib/python3.8/asyncio/tasks.py", line 494, in wait_for
    return fut.result()
  File "/home/jayjay/projects/pyct/venv/lib/python3.8/site-packages/websockets/legacy/client.py", line 660, in __await_impl__
    await protocol.handshake(
  File "/home/jayjay/projects/pyct/venv/lib/python3.8/site-packages/websockets/legacy/client.py", line 331, in handshake
    self.extensions = self.process_extensions(
  File "/home/jayjay/projects/pyct/venv/lib/python3.8/site-packages/websockets/legacy/client.py", line 220, in process_extensions
    raise NegotiationError(
websockets.exceptions.NegotiationError: Unsupported extension: name = permessage-deflate, params = [('client_no_context_takeover', None)]

The server you're connecting to doesn't implement https://www.rfc-editor.org/rfc/rfc7692.html#section-<IP_ADDRESS> correctly.
Specifically, it doesn't comply with:

A server accepts an extension negotiation offer with this parameter
by including the "server_max_window_bits" extension parameter in the
extension negotiation response to send back to the client with the
same or smaller value as the offer.

You can work around this issue by adding compression=None or extensions=[ClientPerMessageDeflateFactory()] to the connect() call.
(I briefly believed this was a bug in websockets, which is why I investigated despite the cryptocurrency policy, but I wasted my time 🤷)

#!/usr/bin/env python
import asyncio
import websockets
async def hello():
async with websockets.connect("ws://localhost:8765") as websocket:
await websocket.send("Hello world!")
await websocket.recv()
asyncio.run(hello())


Properly synify promoted list types

We reconstruct promoted list literals whenever possible. That means
that synifyType produces
'[Int, Bool, ()]

instead of
(Int ': (() ': (Bool ': ([] :: [Type]))))

For the Hi-Haddock branch (which uses synifyType much more), this helps quite a bit:
Before:

After:

/cc @sjakobi


[branch-CONVERT-REACT] create footer components for main website

Check 2nd Branch, name- convert-react
Clone this, navigate to main-website folder,this is our main website we are converting into react website,
Task:
Just create a simple footer like that -

You can join our discord server - lets build together Join

I am on it.

@devvsakib  check PR: #77

Take a look @devvsakib PR: #81

solved #81


woocommerce_api_authentication_error, wrong signature

Hi everyone.
Well, if i use any construction i had this problem with signature. Why? WooCommerce on server lastest, api key on write/read mode, all okay. What is issue?

omg! this worked fine, while i write issue in this


Rate limit not configured as expected in Kraken 2

Kraken 2
Rate limit has no effect
The extra_config for endpoint rate limiting does not work when adding qos/ratelimit/router. Adding github.com/devopsfaith/krakend-ratelimit/juju/router works however but the documentation is pretty clear that for 2.0 I'm supposed to use qos/ratelimit/router while juju is for 1.4.
Configuration file
{
  "$schema": "https://www.krakend.io/schema/v3.json",
  "version": 3,
  "endpoints": [{
    "backend": [{
      "host": [
        "http://service-xxxxxx.svc"
      ],
      "url_pattern": "/api/v1/xxxxxx"
    }],
    "endpoint": "/xxxxxx/api/v1/yyyyyy",
    "input_query_strings": [
      "*"
    ],
    "method": "GET",
    "extra_config": {
      "qos/ratelimit/router": {
        "max_rate": 1,
        "client_max_rate": 1,
        "strategy": "ip"
      }
    }
  }]
}

Expected behavior
I expect to see 429 and 503 responses. I use bombardier with 125 concurrent requests during 10 seconds. I get 100% 200 repsonse codes.
Additional context
If i change my extra_config to
"github.com/devopsfaith/krakend-ratelimit/juju/router": {
  "maxRate": 1,
  "capacity": 1,
  "clientMaxRate": 1,
  "strategy": "ip"
}

Then rate limiting work as expected. However this is the kraken 1.4 config directive.

There was an issue with the config parser. The fix is being released.
Thanks for the heads up!

Version 2.0.1 released.


Integration test: Add test for preserving default gateway

As https://bugzilla.redhat.com/show_bug.cgi?id=1748389 stated,
Currently nmstate will remove routes next hop to interface chose for
saving DNS config which is not listed in desired state.
The test case is added to demonstrate this use case and marked as xfail.

Coverage remained the same at ?% when pulling 7e394baf580679ade9b3669255461fef53787cf5 on cathay4t:test_lose_route into 04902c2658b94fcb79b3edb654743e1c3df0c851 on nmstate:master.

Coverage remained the same at ?% when pulling 7e394baf580679ade9b3669255461fef53787cf5 on cathay4t:test_lose_route into 04902c2658b94fcb79b3edb654743e1c3df0c851 on nmstate:master.

New patch uploaded.
Changes:

Removed the could from function name.
Add check on DNS config been preserved also.


--print-label strips colors from log ouput

When using the --print-label option, colors are stripped from the log output. It would be preferable if that wasn't the case.

a potential related approach to possibly consider: https://github.com/mysticatea/npm-run-all/issues/131

Oh good technique. Will add it to the docs. I noticed that there is already a known issues section.

If it's eg chalk that deactivate the color then we should maybe check if we could upstream it to not just check TTY but also that env variable?

The force color env var works pretty well.  Been playing with that.

Using env vars and whatnot, I think thats probably the best solution with this flag for now.


[layernode] Bug fix for gradient access @open sesame 02/11 18:12

Add bug fix to check if gradient is available before accessing gradient
related variables.
Signed-off-by: Parichay Kapoor<EMAIL_ADDRESS>

:memo: TAOS-CI Version: 1.5.20200925. Thank you for submitting PR #1840. Please a submit 1commit/1PR (one commit per one PR) policy to get comments quickly from reviewers. Your PR must pass all verificiation processes of cibot before starting a review process from reviewers. If you are new member to join this project, please read manuals in documentation folder and wiki page. In order to monitor a progress status of your PR in more detail, visit http://nnstreamer.mooo.com/.

:octocat: cibot: @kparichay, A builder checker could not be completed because one of the checkers is not completed. In order to find out a reason, please go to http://nnstreamer.mooo.com/nntrainer/ci/repo-workers/pr-checker/1840-202202111456450.73382496833801-4837fd8fabb1bfc800420cc99dd406d7f3d4bc3c/.

:octocat: cibot: @kparichay, A builder checker could not be completed because one of the checkers is not completed. In order to find out a reason, please go to http://nnstreamer.mooo.com/nntrainer/ci/repo-workers/pr-checker/1840-202202111811240.80174803733826-4837fd8fabb1bfc800420cc99dd406d7f3d4bc3c/.

This is covered in #1842.


Longer-term plans for the Prometheus x-fork?

Hey Alin,
I've been following your posts on the Prometheus Google Group, and comments in the Grafana issue tracker for some time now.
I wanted to start off by offering my gratitude for the time you've taken to carefully and clearly outline the limitations of the Prometheus rate, increase, and delta functions, and for rolling up your sleeves and creating the code to solve these issues.
I was one of the many confused Prometheus/Grafana users who saw my graphs jumping around between refreshes.  I'm tracking many slow-moving counters where the exact values of occasional (but rare) spikes are significant and meaningful.  Yet, I haven't been able to use them reliably due to these limitations.
The experiments you published really made things click for me.  Only when I saw your screenshots of the rate of a slowly-incrementing counter being visualized inaccurately with the stock rate and precisely with your modified xrate function, did it click for me that this was exactly the problem I was having, and the way your function represented the data matched exactly the behavior I had been seeking for months.
Having read the debate you had with the Prometheus maintainers, it seems that a philosophical impasse has been reached, and that these code changes for the moment are unlikely to be merged into a release anytime soon.  My intention here is not to take sides, and I do believe that everyone involved is acting with only best intentions in mind.  The stance of the maintainers seems to be that Prometheus is only designed to produce approximations of data, and that if exact results are desired, then a logs-based monitoring system should be used.  That's certainly a fair line for the maintainers to draw, but I count myself as one of the (growing?) minority who believes that we're so close to having our cake and eating it too, by implementing a monitoring system that can be both precise and cheap to operate.
I wanted to start a discussion here to see how you'd feel about maintaining a long-running fork.  Ideally to me, this fork would be:

Maintained by a community of users who share your views, and share in the work of maintaining it
Documented to justify its existence, both in a TL;DR kind of way that's easy for newcomers to grasp, and more thoroughly for those seeking to understand the nitty-gritty.  Perhaps a list of "real-world" use cases contributed by the community would be helpful, where the functionality of the fork allowed meaningful results where they were not possible before.  I'd be happy to help with this.
Automatically kept in-sync with the upstream project, such that new releases there trigger new builds & releases here.
Open to reconciliation with upstream project.  Brian had indicated in a comment that perhaps these changes could be possible in Prometheus 3.0.  I'm thinking back to the node/io fork and eventual reconciliation.  I'm hoping that with enough friendly diplomacy and community education that perhaps the fork's features could be deemed too valuable not to merge upstream, and that the upstream maintainers concerns could be addressed in a way that is satisfactory to them.
Named in a way that would be distinct from the upstream project, but descriptive enough to be recognizable.  Perhaps promx? 😀

If there's a better place to have this discussion, please let me know.  Perhaps a separate mailing list could be justified?
Thanks again!
Dave

Hey Dave,
Your proposal sounds very enticing indeed. If you want to help maintaining a fork then it sounds like a plan. I have no idea how many people will actually be interested in (even using) a fork, but I've been known to work on things with little apparent external interest. ;o)
I'm happy to start writing up the reasoning and implementation details. If you have any idea how to handle keeping releases in sync with upstream, feel free to go ahead and do it. Do you think we should maintain this fork as is (i.e. under free/prometheus) or do you think it makes more sense to start a separate "organization"? (I have no experience with how that works.) In the meantime, I've added you as collaborator on this repo.
As for the naming, I guess Prometheus X makes sense (that's what I've been renaming my locally built tar files to, so I could keep track of them). Not sure whether there will be any naming issues (i.e. whether the Prometheus guys will like us stealing their name), so maybe we should ask on the devel IRC/mailing list first.
And finally, since we're considering maintaining a fork, there is another PR I've done for TSDB, back when I was testing Prometheus on a sandbox VM shared with other disk hungry VMs, causing Prometheus to hang when pushing data to disk on every collection/eval: prometheus/tsdb#149 . It's not a fix, merely a workaround and we don't have to include it, but it might be worth considering.
FYI I'm on vacation until May 7th, with no plans, so depending on how it pans out I might not have a lot of time to spend until then, maybe an hour or two in the evening.
Cheers,
Alin.

Looks like nothing with Prometheus/Prom in the name is going to fly (understandably so). I have been racking my brains, trying to come up with a reasonable name (some mythological character, "PX", "X") and then it dawned on me that we could simply call it "xrate" and leave it at that. I'll change the repository name to xrate, if you agree.
In the meantime, I'm on vacation until next week and I'll probably not get much done in the meantime.

xrate sounds good to me!

If you have any idea how to handle keeping releases in sync with upstream, feel free to go ahead and do it.

Looks like Docker Hub supports building new image when an upstream image changes using the Repository Links feature.  However, Prometheus images are deployed to quay.io, and I haven't found a similar feature there.  It may be possible to implement this using a less elegant polling system like TravisCI's Cron Jobs.  I'll keep investigating...

Yeaaaaah! I can't tell you how relieved I am to find people that are as disappointed as I am by the choices  that can be made by some members prometheus core team.
If you fork this an implement your xrate and xdelta I will be one of the first to use it.

Are you considering a hard fork or just a branch with unaccepted patches that you would rebase onto prometheus release branches and make v2.x.z+free.z tags ?

Hi Alin,
While this is in progress do you have any plans to update this fork with the recent 2.3x Prometheus releases? We sorely need xrate and the last tag I see is for 2.19 which is already one year old.
Thanks for your great work btw!
Franck

fwiw, VictoriaMetrics does the math correctly and also uses ~3x less storage space.
https://github.com/VictoriaMetrics/VictoriaMetrics/blob/e1a715b0f5cee93e5238dd1bc18990f444cb96aa/app/vmctl/README.md#migrating-data-from-prometheus

I have continued the fork here: https://github.com/vinted/prometheus/tree/xrate_2.33.1. The tests pass so it should be OK.


Fixed Path2D Plugin Editor so segments can be split.

This should fix #18958
Fixed an issue with the plugin editor for the Path2D node where the segment could not be split as originally advertised by existing toolbar buttons.

CC @YeldhamDev @groud for review.

This seems like another editor that would heavily benefit from being inherited of AbstractPolygon2DEditor.

Thanks!


[tests]: add additional retries to apt-get calls when installing da…

…tadog-signing-keys package

What does this PR do?

Motivation

Additional Notes

Possible Drawbacks / Trade-offs

Describe how to test/QA your changes

/merge


Errors importing template from PTGui 10

Have extracted stills from VideoStitch to PTGUI 11.27. Added control points and exported to template via "Save as Template ..."
When importing into VideoStitch through Calibration->Import a template->Browse calibration the import fails with "[panorama configuration] invalid configuration Cannot apply the calibration to the current panorama configuration. The calibration has 0 video inputs, the current panorama has 5"

The main reason this fails is that PTGUI in release 11 (june 2018) has switched to a JSON based format. Here is the PTGUI 11 example file I'm trying to import (had to rename .pts to .txt for github to accept it)
ptgui11_template.txt
PTGUI version history has the following description:
"New project file format: Over the years the PTGui .pts project file format has extended upon the original script file format used by Panorama Tools. All the new (and future) changes no longer fit well in this format; therefore PTGui 11 switches to a new JSON based file format. This will make it much easier to incorporate new features in the future. Of course PTGui 11 can read project files from previous versions. Also an 'export to PTGui 10' function is included to enable interoperability with previous versions and third party software, although this will not cover the new functionalities and parameters."
Therefore, exported the template in PTGui 10 format through File->Export->PT GUI 10 project.
When attempting to importing this in VideoStitch it's at least parsed, but a few errors prevent it from applied.
First error: "Invalid parameter '0' in panorama line

This error is thrown from https://github.com/stitchEm/stitchEm/blob/7cf79a5ed0353e4e92109d4ae3a53ead32757339/lib/src/core/defs/ptoParse.cpp#L1019
And as far as I can see it's because of the scientific notation e+0 not being handled
(the code thinks its a new keyword instead of part of the value)
p w2493 h1547 f2 v2.3866944051177779e+02 u0.0000000000000000e+00 n"JPEG g0 q95"
Manually converted the numbers in the text file
(one other instance in addition to the panorama
o w1 h1 y0 r0.0000000000000000e+00 p0.0000000000000000e+00 v1.1611371715017235e+02 a-2.6611977007859056e-02 b9.6513635218542934e-02 c-1.1199153471077572e-01 f0 d1.3578383190335692e+00 e-2.3133098912679517e+00 g0.0000000000000000e+00 t0.0000000000000000e+00)
Here is the PTGUI 10 template file
pt10_template.txt
Here is the Videostitch debug log entries:
videostitch.txt

Leaving this ticket for the import problem from the supported PTGui 10 format, created #94 for the feature request of importing PTGui 11 JSON formats.


Move to const enum where possible

This change has no direct influence on any of our users, but will improve performance slightly.
Since we are exporting the const-enums (a change in this PR), js developers can still use it, and they will still be included in the types. We are maintainin back-compat. The only difference is that modules using the const enums in this repository will get the value injected directly, thus avoiding one object lookup.
The only way this could be considered breaking change is for people who are creating a framework that embeds babylon and exporing it - in this case, they will need to preserve const enums as well, otherwise their js (and only js) consumers won't find them. The compiled application will still work correctly.
CC @ryantrem who suggested using const enums (for a slightly different use-case). This step will allow us to start using const enums more often in more performance-heavy sections of the framework.
note (probably slightly repeating myself) - the string lookup that typescript enums do is still present and has not been changed. It improves perf only for compiled js files that are a part of the framework.

Please make sure to label your PR with "bug", "new feature" or "breaking change" label(s).
To prevent this PR from going to the changelog marked it with the "skip changelog" label.

Snapshot stored with reference name:
refs/pull/15228/merge
Test environment:
https://babylonsnapshots.z22.web.core.windows.net/refs/pull/15228/merge/index.html
To test a playground add it to the URL, for example:
https://babylonsnapshots.z22.web.core.windows.net/refs/pull/15228/merge/index.html#WGZLGJ#4600
Links to test babylon tools with this snapshot:
https://playground.babylonjs.com/?snapshot=refs/pull/15228/merge
https://sandbox.babylonjs.com/?snapshot=refs/pull/15228/merge
https://gui.babylonjs.com/?snapshot=refs/pull/15228/merge
https://nme.babylonjs.com/?snapshot=refs/pull/15228/merge
To test the snapshot in the playground with a playground ID add it after the snapshot query string:
https://playground.babylonjs.com/?snapshot=refs/pull/15228/merge#BCU1XR#0

WebGL2 visualization test reporter:
https://babylonsnapshots.z22.web.core.windows.net/refs/pull/15228/merge/testResults/webgl2playwright/index.html

Visualization tests for WebGPU (Experimental)
https://babylonsnapshots.z22.web.core.windows.net/refs/pull/15228/merge/testResults/webgpuplaywright/index.html


where is the yarn conf host port

i start my yarn resourcemanager in host1:8080 , now i start the dr-elephant service in host2, but i could not find the conf about the yarn rm's  ip : port . what should i do ?  hope your reply .
the dr_elephant.log show errors :
Caused by: java.lang.RuntimeException: Cannot get YARN resource manager address from Hadoop Configuration property: [yarn.resourcemanager.webapp.address].

i set my conf

yarn.resourcemanager.webapp.address
<IP_ADDRESS>:8088

in app-conf/GeneralConf.xml
anyway forget it .


What should HubConnection.StopAsync cancellation token do?

https://github.com/aspnet/SignalR/pull/2000#discussion_r181334729

Not sure yet. Need to look deeper. Maybe we need to pass it to DisposeAsync or use it from the outside to cancel dispose. But we can just not support it for now. File an issue.

Let's just leave it. It's there for us to use when we want to, but we don't really see a scenario for cancelling stop. One thing that is clear: Cancelling StopAsync will not '
'stop the stop', it might transform from a graceful shutdown to ungraceful but the moment StopAsync is called, the connection is considered dead.


KT-14095 Eclipse: Outline view could show implicit types too

Solved by obtaining a org.jetbrains.kotlin.descriptors.CallableDescriptor from a org.jetbrains.kotlin.resolve.BindingContext
Change-Id: I158d7d44b8f1724f7fbffd4effcd1873747e2404
Signed-off-by: Simon Scholz<EMAIL_ADDRESS>

Thanks for the hint with the DescriptorRenderer. Looks like expected

Merged manually. Thank you!


Subject encoding is sometime not what's expected

Describe the bug
Sometimes, the subject is not what expected,
As an example, I have an email in gmail web browser with subject Maj Vidéotron.
When calling $message->getSubject(), I am getting the subject: MAJ =?utf-8?b?Vmlkw6lvdHJvbg==?=.
It is the same subject no matter what decoder option is set in the decode.message.subject config.
(utf-8, iconv and mimeheader)
To Reproduce
Steps to reproduce the behavior:
Connect to a mailbox then:
 $this->client->connect();
 $folder = $this->client->getFolder('INBOX');
$unseenMessages = $folder->query()->unseen()->get();

foreach($unseenEmails as $email) {
    dd($email->getSubject())
}

Expected behavior
The subject returned by getSubject() should be Maj Vidéotron.
Screenshots

raw subject header:

Desktop / Server (please complete the following information):

OS: Ubuntu 20
PHP: 8.0.6
laravel-imap 2.4.0
php-imap 2.6.0

Hi @Naghal ,
many thanks for your report.
Please update your webklex/php-imap dependency to the latest release (>2.7.0).
This will hopefully solve the problem. If not, please head over to the webklex/php-imap repository and create a new issue.
Best regards,


[feat] Show more tags in browse and home

Summary of Changes
Amundsen currently shows a small list of curated tags on both the homepage and browse. This is built using a FE configuration which explicitly lists out a set of approved tags to show on this widget. Since this list is manually curated but not updated, this list isn't necessarily the best set of tags to show. Additionally the "/browse" page shows the same content as the homepage, which isn't very useful. We should remove the manually curated list of tags.
The browse component should have two parts:

"Popular Tags" section that shows the top X tags based on usage.
"All Tags" section that shows all other tags not in the "Top Tags" section.

On the home page, we should display just the "Popular Tags" section.
On the browse page we should display both the "Popular Tags" section as well as the "All Tags" section underneath.
Tests
What tests did you add or modify and why? If no tests were added or modified, explain why. Remove this line
Documentation
What documentation did you add or modify and why? Add any relevant links then remove this line
CheckList
Make sure you have checked all steps below to ensure a timely review.

[ ] PR title addresses the issue accurately and concisely. Example: "Updates the version of Flask to v1.0.2"

In case you are adding a dependency, check if the license complies with the ASF 3rd Party License Policy.

[ ] PR includes a summary of changes, including screenshots of any UI changes.
[ ] PR adds unit tests, updates existing unit tests, OR documents why no test additions or modifications are needed.
[ ] In case of new functionality, my PR adds documentation that describes how to use it.

All the public python functions and the classes in the PR contain docstrings that explain what it does

[ ] PR passes all tests documented in the developer guide

Codecov Report

Merging #532 into master will not change coverage.
The diff coverage is 100.00%.

@@           Coverage Diff           @@
##           master     #532   +/-   ##
=======================================
  Coverage   81.16%   81.16%
=======================================
  Files         230      230
  Lines        5718     5718
  Branches      676      676
=======================================
  Hits         4641     4641
  Misses       1009     1009
  Partials       68       68

Impacted Files
Coverage Δ

...lication/static/js/components/BrowsePage/index.tsx
100.00% <ø> (ø)

...ication/static/js/components/HomePage/constants.ts
100.00% <100.00%> (ø)

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update ffea88d...3adb14b. Read the comment docs.


[Couchbase] TypeError: CBLQueryExpression.property(...).between is not a function

I'm using Couchbase plugin on android for some time now and had zero issues.
I ran one of our apps on an Apple device for the first time and the following error occured:
TypeError: CBLQueryExpression.property(...).between is not a function
I use latest version of plugin and my apple device runs os 13.5.
I tried to log between function inside plugin sources and it returns undefined.
Additionally, after checking Couchbase lite docs, I found out this function is a pair with and.
https://docs.couchbase.com/mobile/2.8.0/couchbase-lite-objc/Classes/CBLQueryExpression.html#/c:objc(cs)CBLQueryExpression(im)between:and:

I'll check that out

Any progress regarding this?

It seems plugin requires native code since native function between needs argument labels.
Perhaps, a custom Objective-C function named betweenAnd with 2 arguments that calls between the native way would do the trick.
Then call the custom function inside TypeScript.


Language Preference

How can I select english in K8s deployment while I follow instructions using your repo.

Dashboard language is based on your system's language settings, if your system language is english, dashboard is english


Unable to sign in into GitHub with VS code in Ubuntu

Issue Type: Bug
my vs code editor is no signing into github, previously it was signed in for some time but signed out automatically, also cant use co-pilot feature due to same. please help me resolve this issue.
VS Code version: Code 1.66.2 (dfd34e8260c270da74b5c2d86d61aee4b6d56977, 2022-04-11T07:49:24.808Z)
OS version: Linux x64 5.13.0-39-generic snap
Restricted Mode: No

System Info

Item
Value

CPUs
Intel(R) Core(TM) i3-5005U CPU @ 2.00GHz (4 x 700)

GPU Status
2d_canvas: unavailable_softwarecanvas_oop_rasterization: disabled_offdirect_rendering_display_compositor: disabled_off_okgpu_compositing: disabled_softwaremultiple_raster_threads: enabled_onoop_rasterization: disabled_offopengl: disabled_offrasterization: disabled_softwareraw_draw: disabled_off_okskia_renderer: enabled_onvideo_decode: disabled_softwarevideo_encode: disabled_softwarevulkan: disabled_offwebgl: unavailable_softwarewebgl2: unavailable_software

Load (avg)
1, 1, 1

Memory (System)
5.72GB (0.91GB free)

Process Argv
--no-sandbox --force-user-env --unity-launch --crash-reporter-id 9ac87b84-7a49-4870-8a89-a68f0d4e15e5

Screen Reader
no

VM
0%

DESKTOP_SESSION
ubuntu

XDG_CURRENT_DESKTOP
Unity

XDG_SESSION_DESKTOP
ubuntu

XDG_SESSION_TYPE
x11

Extensions (65)

Extension
Author (truncated)
Version

ng-template
Ang
13.3.1

code-gnu-global
aus
0.2.2

apex-pmd
chu
0.5.9

bracket-pair-colorizer-2
Coe
0.2.4

doxdocgen
csc
1.4.0

c-cpp-compile-run
dan
1.0.15

vscode-eslint
dba
2.2.2

green-fish-comfort
Dip
0.0.3

githistory
don
0.6.19

javadebugger
don
0.1.5

prettier-vscode
esb
9.5.0

lana
Fin
1.4.2

code-runner
for
0.11.7

c-cpp-runner
fra
3.3.9

copilot
Git
1.12.5517

vscode-pull-request-github
Git
0.40.0

r
Iku
2.4.0

better-cpp-syntax
jef
1.15.13

intellij-idea-keybindings
k--
1.5.1

vscode-github
Kni
0.30.7

MagicPython
mag
1.1.0

git-graph
mhu
1.30.0

apex-code-coverage-visualizer
mod
0.9.6

vscode-docker
ms-
1.21.0

python
ms-
2022.5.11051003

vscode-pylance
ms-
2022.4.1

jupyter
ms-
2022.3.1000901801

jupyter-keymap
ms-
1.0.0

jupyter-renderers
ms-
1.0.6

remote-containers
ms-
0.231.6

remote-ssh
ms-
0.78.0

remote-ssh-edit
ms-
0.80.0

remote-wsl
ms-
0.66.0

cmake-tools
ms-
1.10.5

cpptools
ms-
1.9.7

cpptools-extension-pack
ms-
1.1.0

vsliveshare
ms-
1.0.5527

vsliveshare-audio
ms-
0.1.91

emoji
Per
1.0.1

material-icon-theme
PKi
4.15.0

java
red
1.5.0

vscode-xml
red
0.20.0

vscode-yaml
red
1.6.0

salesforce-vscode-slds
sal
1.4.8

salesforcedx-vscode
sal
54.8.0

salesforcedx-vscode-apex
sal
54.8.0

salesforcedx-vscode-apex-debugger
sal
54.8.0

salesforcedx-vscode-apex-replay-debugger
sal
54.8.0

salesforcedx-vscode-core
sal
54.8.0

salesforcedx-vscode-expanded
sal
54.8.0

salesforcedx-vscode-lightning
sal
54.8.0

salesforcedx-vscode-lwc
sal
54.8.0

salesforcedx-vscode-soql
sal
54.8.0

salesforcedx-vscode-visualforce
sal
54.8.0

pytorch-snippets
SBS
1.0.2

cmake
twx
0.0.17

c-cpp-flag-debugging
uts
0.0.1

vscode-lldb
vad
1.7.0

vscodeintellicode
Vis
1.2.19

vscode-java-debug
vsc
0.40.1

vscode-java-dependency
vsc
0.19.0

vscode-java-pack
vsc
0.22.3

vscode-java-test
vsc
0.34.2

vscode-maven
vsc
0.35.1

vim
vsc
1.22.2

(18 theme extensions excluded)

A/B Experiments
vsliv368:30146709
vsreu685:30147344
python383:30185418
vspor879:30202332
vspor708:30202333
vspor363:30204092
vstes627:30244334
pythonvspyl392:30443607
pythontb:30283811
pythonvspyt551cf:30345471
pythonptprofiler:30281270
vshan820:30294714
vstes263:30335439
vscorecescf:30445987
pythondataviewer:30285071
vscod805:30301674
pythonvspyt200:30340761
binariesv615:30325510
bridge0708:30335490
bridge0723:30353136
vsaa593cf:30376535
vsc1dst:30438360
pythonvs932:30410667
wslgetstarted:30449410
pythonvsnew555:30457759
vscscmwlcmt:30465135
cppdebug:30466689

This has started occurring for me as well, now the various sign-in triggers(co-pilot/sync, etc) open an empty browser window and then do nothing until an error notification appears(the error depends on the extension/trigger).
Example:
"GitHub Copilot could not connect to server. Extension activation failed: "Cancelled""

this is exactly what happening with mine

I am getting this issue as well, Chrome will successfully get a token from GitHub but then fail to pass it to VSCode. The network debug tab shows a red "cancelled" status on the request for the vscode:// redirect URL. How do I manually put the token in? There used to be a popup where you could paste it if the redirect failed, but that's gone since 1.66.0.

@AlexHowansky did you always have to use this popup workaround to get redirection working or did redirection work previously?

I've also was facing the same issue.
For my specific setup, I found the cause: having my default browser set to Flatpak Firefox instead of the default Firefox included with Kinoite. Once I changed my default back to the default Firefox install and tried a sync again, I was able to sign now.  Then I could change my default browser back to Flatpak Firefox.
The removal of the popup window to paste a token makes troubleshooting incredibly painful.

I was able to solve it by setting Chromium as my default browser temporarily while signing in.

@TylerLeonhardt The auto-redirect has never worked for me on Linux, I've always had to paste the token in. (Currently on Ubuntu 20.04 and Chrome 100.0.4896.127.) Granted, it was always pretty easy to do that manual paste, so I never spent much time debugging this issue.
Still fiddling with it, but it seems to be related to xdg-open, as I can't get it to work with any browser.

If I run xdg-settings set default-url-scheme-handler vscode vscode.desktop it will now at least launch VSCode when it gets that redirect URL, but it's then just opening a new editor window and not passing the token to the plugin that asked for it.

OK got it! I had to make two changes to my vscode.desktop file:

Add --open-url %U to the end of the invocation command for the Exec line.
Add x-scheme-handler/vscode to the MimeType line, either via the xdg-settings command or manually.

Exec=/path/to/vscode/bin/code --open-url %U
MimeType=x-scheme-handler/vscode;

What's interesting to me is have this got messed up... Installing the VS Code Snap should set this already... unless you were using the standalone linux build of VS Code? The standalone doesn't have a "setup" so it can't setup this xdg default.
cc @deepak1556 please correct me if I'm wrong.

It worked, i was unable to set edge as default so had to remove firefox first. changing default browser worked. Had to Re-install Copilot extension

@TylerLeonhardt Correct, I'm using the tarball and had manually created the vscode.desktop file. (I'm on a rather restricted VM that I don't have a lot of control over and snaps don't work well.) I never realized that you could register browser protocol handlers in a .desktop file. In any case, the removal of the ability to manually paste the token is really what got me -- that process worked well as a work-around and I never bothered investigating why the auto-redirect didn't work.
I am back in business, thanks for the help.

FWIW, we now have some fallback logic that will take you through a flow that doesn't rely on protocol handlers. That's in VS Code Insiders today, and will be in the next VS Code stable.
In short, you cancel the existing flow and it'll say "wanna try a different flow?" And when you say "yes" you'll be taken through that. It works similar to how Microsoft auth works today, for reference.


Creation of a GUI

This feature is requested for the ESEO project. The GUI shall be based on the leop-client and shall work both in Windows and Linux.

Basic user interface is now ready. Now, I'm working on a binary file for Debian 8 and Windows.


feat: add Vitest in ESLint

:tada: This PR is included in version 6.5.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


[BACKLOG-17875] When selecting a folder with a long name, the search …

…box label should have the name truncated on the search box with trailing ellipsis
@bmorrise

Build Completed
:white_check_mark: This pull request has passed all validations.
Build Commands
mvn -B -fn -f plugins/file-open-save/core/pom.xml clean install && mvn -B -f plugins/file-open-save/core/pom.xml site

Cleanup Commands
mvn -B -f plugins/file-open-save/core/pom.xml build-helper:remove-project-artifact

Changed files
  plugins/file-open-save/core/src/main/javascript/app/app.component.js
  plugins/file-open-save/core/src/main/javascript/app/app.html


[C++] arrow_reader_writer_test.cc slow to compile

As soon as some optimizations are enabled, src/parquet/arrow/arrow_reader_writer_test.cc becomes extremely slow to compile (more than one minute just for itself). This is perceivable on e.g. the conda-cpp-valgrind build where we add -Og to the gcc flags in order to make the tests less slow under emulation.
Reporter: Antoine Pitrou / @pitrou
Note: This issue was originally created as ARROW-13221. Please see the migration documentation for further details.

This issue still applies. cc @mapleFU in case you want to take a look.

===-------------------------------------------------------------------------===
                         Miscellaneous Ungrouped Timers
===-------------------------------------------------------------------------===

   ---User Time---   --System Time--   --User+System--   ---Wall Time---  ---Instr---  --- Name ---
  11.0381 ( 82.7%)  20.8372 ( 99.7%)  31.8752 ( 93.1%)  32.8761 ( 93.3%)<PHONE_NUMBER>45  Code Generation Time
   2.3077 ( 17.3%)   0.0531 (  0.3%)   2.3608 (  6.9%)   2.3671 (  6.7%)<PHONE_NUMBER>1  LLVM IR Generation Time
  13.3458 (100.0%)  20.8903 (100.0%)  34.2361 (100.0%)  35.2433 (100.0%)<PHONE_NUMBER>06  Total

In debug on my Machine nearly 20 seconds are taken to compile it...Should we try to split it?

Yes, as I wrote in https://github.com/apache/arrow/issues/28908#issuecomment-1378033202, we can try to split it. Then it might also become easier to rely less on templating.

I've tried to split the page index test out. But this doesn't make it compile faster :-(
https://github.com/apache/arrow/commit/f69ab13516e5b7bc3e32b3a4b20a25bdb01c0aa0


[BACKPORT] Pick a random host port if the user does not specify a host port.

For overlay, l2bridge, and l2tunnel, if the user does not specify a host port, windows driver will select a random port for them.  This matches linux behavior.
For ics and nat networks the windows OS will choose the port.
Signed-off-by: Pradip Dhara<EMAIL_ADDRESS>Signed-off-by: Madhu Venugopal<EMAIL_ADDRESS>

Can you change the title to use [18.09 backport] ? (makes it slightly easier to track)

backport of https://github.com/docker/libnetwork/pull/2368


Add Alt and Plus instances

Both Map k and StrMap should be instances of Alt and Plus, with union and empty as the corresponding methods.
Also, something odd I've noticed: While Map k a has a Semigroup instance as long as Ord k, StrMap a seems to require a Semigroup a instance... which means if I have a type Foo with no Semigroup instance, I have a Monoid instance for Map String Foo but not StrMap Foo, which is... odd, to say the least.

👍
The Semigroup and Monoid instances for StrMap definitely look inconsistent with the ones for Map. Maybe they are the ones induced by the Applicative instance, but we should try to be consistent.

There's no Applicative instance either; not that this is a problem since Alt and Plus only require Functor. (There couldn't be an Applicative instance either, since there's no way to write pure :: v -> Map k v. I might be able to imagine an Apply instance, but I'd have to think about it to make sure it's law-abiding.)

I meant the Apply instance, for which there is definitely a law-abiding instance.