[UserAccountsDrawerHeader] New option for changing profiles images size

According to this issue: https://github.com/flutter/flutter/issues/73012
I made the changes and add  the option for changing profile image size.

Also, you have a test failure due to changing the default size I think:
The following TestFailure object was thrown running a test:
  Expected: <72.0>
  Actual: <40.0>

When the exception was thrown, this was the stack:
#4      main.<anonymous closure> (file:///b/s/w/ir/k/flutter/packages/flutter/test/material/user_accounts_drawer_header_test.dart:82:5)
<asynchronous suspension>
<asynchronous suspension>
(elided one frame from package:stack_trace)
...

@googlebot I signed it!

Here's what you should do for a test. Add a new test to user_accounts_drawer_header_test.dart by copying one of the existing tests. Render a UserAccountsDrawerHeader and find the two widgets whose size you are making configurable. You might be able to find these by using find.byType for Container and SizedBox if we're lucky. Expect that they have the default sizes. Then pass in new sizes to them and expect that they have the given sizes. You could do this in two different tests, or use a StatefulBuilder.
Let me know if you need any more specific help with any part of those tests.

I'm very new in Flutter, so I still don't familiar with all the Test section.

If you fix everything that has already been said (default values, using Size and not double, ...). Then I can write the tests for you!

If you fix everything that has already been said (default values, using Size and not double, ...). Then I can write tests for you!

I fixed what has been said (Default sizes, using the Size class and descriptions).
It would be nice that you helo me with the Tests.
Thank you.

I have something very strange with the default value test.
When I'm set the default at the constructor and use it with "widget.variable_name"
The size of the SizedBox is null, but when I type manually the Size inside the build tree, SizedBox has a value.
So what is the difference, why using widet. isn't passing the value?

I have something very strange with the default value test.
When I'm set the default at the constructor and use it with "widget.variable_name"
The size of the SizedBox is null, but when I type manually the Size inside the build tree, SizedBox has a value.
So what is the difference, why using widet. isn't passing the value?

Could you give us an example (code) of what you are talking about?

Could you give us an example (code) of what you are talking about?

Hi @burekas7,
I wrote the tests for your PR  + some minor changes!
Could you give me access to your Flutter repo?

Hi @burekas7,
I wrote the tests for your PR  + some minor changes!
Could you give me access to your Flutter repo?

@GaspardMerten
According to previouse comment I focus on one of the properties:
For example:
Constructor:
  const UserAccountsDrawerHeader({
    this.currentAccountPictureSize = const Size.square(72.0),
  }) : super(key: key);

final Size? currentAccountPictureSize;
Using it inside the widget build:
currentAccountPictureSize: widget.currentAccountPictureSize,
When I run the tests, the SizedBox return null as the width value.
But when I replace it with fixed value like this:
currentAccountPictureSize: const Size.square(72.0)
It does return a value.
So why the default value in the constructor isn't set in the widget build?

@GaspardMerten
According to previouse comment I focus on one of the properties:
For example:
Constructor:
  const UserAccountsDrawerHeader({
    this.currentAccountPictureSize = const Size.square(72.0),
  }) : super(key: key);

final Size? currentAccountPictureSize;
Using it inside the widget build:
currentAccountPictureSize: widget.currentAccountPictureSize,
When I run the tests, the SizedBox return null as the width value.
But when I replace it with fixed value like this:
currentAccountPictureSize: const Size.square(72.0)
It does return a value.
So why the default value in the constructor isn't set in the widget build?

Hi @burekas7,
I wrote the tests for your PR + some minor changes!
Could you give me access to your Flutter repo?

I added you.

Hi @burekas7,
I wrote the tests for your PR + some minor changes!
Could you give me access to your Flutter repo?

I added you.

@burekas7 that's because you are giving a null value to the constructor inside pumpTestWidget.     :)

If you think my commits are useful, please add them to this PR :)

If you think my commits are useful, please add them to this PR :)

I just pushed my commits on your repo! :)

Thanks I will check this.

@burekas7 that's because you are giving a null value to the constructor inside pumpTestWidget. So pumpTestWidget should look like that:
Future<void> pumpTestWidget(
    WidgetTester tester, {
      bool withName = true,
      bool withEmail = true,
      bool withOnDetailsPressedHandler = true,
      Size otherAccountsPictureSize = const Size.square(40),
      Size currentAccountPictureSize  = const Size.square(72),
    }) async {

@GaspardMerten
But I didn't used the "pumpTestWidget" function, I wrote it like this (As it does in one of the tests):
Why does I need to set defaults in the Test class, the defaults are defined in the Widget class.
  testWidgets('UserAccountsDrawerHeader account profile size changes', (WidgetTester tester) async {
    Widget buildFrame({
      Widget? currentAccountPicture,
      List<Widget>? otherAccountsPictures,
      Size? currentAccountPictureSize,
      Size? otherAccountsPicturesSize,
      Widget? accountName,
      Widget? accountEmail,
      VoidCallback? onDetailsPressed,
      EdgeInsets? margin,
    }) {
      return MaterialApp(
        home: Material(
          child: Center(
            child: UserAccountsDrawerHeader(
              currentAccountPicture: currentAccountPicture,
              otherAccountsPictures: otherAccountsPictures,
              currentAccountPictureSize: currentAccountPictureSize,
              otherAccountsPicturesSize: otherAccountsPicturesSize,
              accountName: accountName,
              accountEmail: accountEmail,
              onDetailsPressed: onDetailsPressed,
              margin: margin,
            ),
          ),
        ),
      );
    }

    await tester.pumpWidget(buildFrame());

    SizedBox sizedBoxWidget = tester.firstWidget(find.byType(SizedBox));

    expect(sizedBoxWidget.width, 72.0);
    expect(sizedBoxWidget.height, 72.0);

  });

I just pushed my commits on your repo! :)

Thanks I will check this.

@burekas7 that's because you are giving a null value to the constructor inside pumpTestWidget. So pumpTestWidget should look like that:
Future<void> pumpTestWidget(
    WidgetTester tester, {
      bool withName = true,
      bool withEmail = true,
      bool withOnDetailsPressedHandler = true,
      Size otherAccountsPictureSize = const Size.square(40),
      Size currentAccountPictureSize  = const Size.square(72),
    }) async {

@GaspardMerten
But I didn't used the "pumpTestWidget" function, I wrote it like this (As it does in one of the tests):
Why does I need to set defaults in the Test class, the defaults are defined in the Widget class.
  testWidgets('UserAccountsDrawerHeader account profile size changes', (WidgetTester tester) async {
    Widget buildFrame({
      Widget? currentAccountPicture,
      List<Widget>? otherAccountsPictures,
      Size? currentAccountPictureSize,
      Size? otherAccountsPicturesSize,
      Widget? accountName,
      Widget? accountEmail,
      VoidCallback? onDetailsPressed,
      EdgeInsets? margin,
    }) {
      return MaterialApp(
        home: Material(
          child: Center(
            child: UserAccountsDrawerHeader(
              currentAccountPicture: currentAccountPicture,
              otherAccountsPictures: otherAccountsPictures,
              currentAccountPictureSize: currentAccountPictureSize,
              otherAccountsPicturesSize: otherAccountsPicturesSize,
              accountName: accountName,
              accountEmail: accountEmail,
              onDetailsPressed: onDetailsPressed,
              margin: margin,
            ),
          ),
        ),
      );
    }

    await tester.pumpWidget(buildFrame());

    SizedBox sizedBoxWidget = tester.firstWidget(find.byType(SizedBox));

    expect(sizedBoxWidget.width, 72.0);
    expect(sizedBoxWidget.height, 72.0);

  });

Well, what I said is still applicable to your case, currentAccountPictureSize and othersAccountPicturesSize should never be null. So you could/should actually replace Size? by Size then specify the default value of those parameters as it is done inside the widget constructor that you wrote.
But the method you used should is redundant since there already is a pumpTestWidget function which simplifies the test's writing.

Well, what I said is still applicable to your case, currentAccountPictureSize and othersAccountPicturesSize should never be null. So you could/should actually replace Size? by Size then specify the default value of those parameters as it is done inside the widget constructor that you wrote.
But the method you used should is redundant since there already is a pumpTestWidget function which simplifies the test's writing.

Well, what I said is still applicable to your case, currentAccountPictureSize and othersAccountPicturesSize should never be null. So you could/should actually replace Size? by Size then specify the default value of those parameters as it is done inside the widget constructor that you wrote.
But the method you used should is redundant since there already is a pumpTestWidget function which simplifies the test's writing.

So basically I should set defaults also in the Test class?
I was thinking the concept is that I need to set the defaults only in the Widget class,
so in the Test class I'm calling the widget and testing if the defaults were set after the widget has been created.

Well, what I said is still applicable to your case, currentAccountPictureSize and othersAccountPicturesSize should never be null. So you could/should actually replace Size? by Size then specify the default value of those parameters as it is done inside the widget constructor that you wrote.
But the method you used should is redundant since there already is a pumpTestWidget function which simplifies the test's writing.

So basically I should set defaults also in the Test class?
I was thinking the concept is that I need to set the defaults only in the Widget class,
so in the Test class I'm calling the widget and testing if the defaults were set after the widget has been created.

If you think my commits are useful, please add them to this PR :)

Thanks.
How can I merge your commits with my files?

If you think my commits are useful, please add them to this PR :)

Thanks.
How can I merge your commits with my files?

How can I merge your commits with my files?

I just did it :)

How can I merge your commits with my files?

I just did it :)

Well, what I said is still applicable to your case, currentAccountPictureSize and othersAccountPicturesSize should never be null. So you could/should actually replace Size? by Size then specify the default value of those parameters as it is done inside the widget constructor that you wrote.
But the method you used should is redundant since there already is a pumpTestWidget function which simplifies the test's writing.

So basically I should set defaults also in the Test class?
I was thinking the concept is that I need to set the defaults only in the Widget class,
so in the Test class I'm calling the widget and testing if the defaults were set after the widget has been created.

Only because you are specifying a null argument, usually when you don't want to change the parameter you just do not specify it.
What I am trying to say is that:
Widget(size: null) won't work because Widget() should be used.

Well, what I said is still applicable to your case, currentAccountPictureSize and othersAccountPicturesSize should never be null. So you could/should actually replace Size? by Size then specify the default value of those parameters as it is done inside the widget constructor that you wrote.
But the method you used should is redundant since there already is a pumpTestWidget function which simplifies the test's writing.

So basically I should set defaults also in the Test class?
I was thinking the concept is that I need to set the defaults only in the Widget class,
so in the Test class I'm calling the widget and testing if the defaults were set after the widget has been created.

Only because you are specifying a null argument, usually when you don't want to change the parameter you just do not specify it.
What I am trying to say is that:
Widget(size: null) won't work because Widget() should be used.

@googlebot I fixed it.

@googlebot I fixed it.

@googlebot I fixed it.

@googlebot I fixed it.

@googlebot I consent.

@googlebot I consent.

@justinmc Does this PR looks good to you?

@justinmc Does this PR looks good to you?

@justinmc
When we can use this pr with the main release?
Should I need to update something in my packages?

@justinmc
When we can use this pr with the main release?
Should I need to update something in my packages?

Looks like you've got some analyzer failures, can you look at those?

Looks like you've got some analyzer failures, can you look at those?

@justinmc I don't really see what could have affected the tests' results with my last commit. I literally just replaced x with x.0...
Could it be possible that the issue comes from "above"? Or am I missing something?

@justinmc I don't really see what could have affected the tests' results with my last commit. I literally just replaced x with x.0...
Could it be possible that the issue comes from "above"? Or am I missing something?

@justinmc, I checked the other current PR tests results and they all share the same results like the one we have. So since my last commit wasn't very sensitive.. (I replaced x with x.0). So I think that it is the master tree which is not currently sane.  Or am I missing something?

@justinmc, I checked the other current PR tests results and they all share the same results like the one we have. So since my last commit wasn't very sensitive.. (I replaced x with x.0). So I think that it is the master tree which is not currently sane.  Or am I missing something?

Ah you're right.  Could you try merging in master?  Hopefully that will fix it.

It seems like the tree is still not sane :(, I will try again tomorrow.

@justinmc tree is green :) !

@GaspardMerten @justinmc
Thank you!

Are we good to merge? :)

@AlexV525  could you accept the google-cla  :) ?

@AlexV525 could you accept the google-cla :) ?

You can remove co-authored from commit message to avoid the CLA issue when commit suggestions. I've accepted it already.

@AlexV525 could you accept the google-cla :) ?

You can remove co-authored from commit message to avoid the CLA issue when commit suggestions. I've accepted it already.

Oh I did not know that :) Thank you!

Thanks everyone!

Thank you all.
Well done!

Nice 😃


Nextjs module federation doesn't work when import remote style-components

it work well when I access remote server 'component-kit'(localhost: 3000) , but It crashed when I access host server 'shell'(localhost: 3001).

it work well when I switch styled component to react component.

Remote Config
packages.json

next.config.js

components/title.tsx

Host Config
packages.json

next.config.js

_document.tsx

index.tsx

this is original code: https://github.com/Goyathlay/test-nextjs-mf

Could you try using namespaces for the babel plugin in each of your projects?
    ["babel-plugin-styled-components", {
      "ssr": true,
      "namespace": "shell"
    }]

and
    ["babel-plugin-styled-components", {
      "ssr": true,
      "namespace": "component-kit"
    }]

Same problem, but with next 11.
It seems to me that the dependencies are not being shared, by the webpack_share_scopes , it is not correct

Looks related to the hooks error some are getting

The problems seem to be related. Both React and styled components are not being shared between microfronts.
But, expose components is working

under the hood i think styled components uses hooks, there is a hook error in your console

I can use the sharing of styled-components in the module federation normally, but some warnings occurred in the consumption
It looks like there are several instances of 'styled-components' initialized in this application. This may cause dynamic styles to not render properly, errors during the rehydration process, a missing theme prop, and makes your application bigger without good reason.

你遇到过这样的情况吗？
It looks like there are several instances of 'styled-components' initialized in this application. This may cause dynamic styles to not render properly, errors during the rehydration process, a missing theme prop, and makes your application bigger without good reason.


Rewrite of Pneck Reminder

Rewrites Pneck reminder to "Equip Alert" Which is basically the same code just adds a lot more items.
Makes this niche plugin more widely usable.

Please note that you are wiping your users' config. I did not see a migration method using ctrl+f, so I'd recommend migrating the config in startUp and ProfileChanged. Something like this should work (untested, just written on my phone):
private void migrate()
{
	boolean oldConfigValue = configManager.getConfiguration(configGroup, oldKeyName, Boolean.class);
	if (oldConfigValue != null)
	{
		configManager.setConfiguration(configGroup, newKeyName, oldConfigValue);
		configManager.unsetConfiguration(configGroup, oldConfigKey);
	}
}

Please note that you are wiping your users' config. I did not see a migration method using ctrl+f, so I'd recommend migrating the config in startUp and ProfileChanged. Something like this should work (untested, just written on my phone):

As in the config is completely reset upon exit? Or the new config settings wipe out pre-existing ones from the old version of the plugin? If it's wiping the config on exit everytime I'll have to add something in, otherwise the old config was only a singular option for something almost no one used so I'm not worried about wiping it out.

Your previous configuration in the pneckReminder group called neckOfFaith is not migrated to the new faith in the equipAlert group.
Something like this:
private void migrate()
{
	String oldConfigGroup = "pneckReminder";
	String oldKeyName = "neckOfFaith";
	String newConfigGroup = "equipAlert";
	String newKeyName = "faith";

	boolean oldConfigValue = configManager.getConfiguration(oldConfigGroup, oldKeyName, Boolean.class);
	if (oldConfigValue != null)
	{
		configManager.setConfiguration(newConfigGroup, newKeyName, oldConfigValue);
		configManager.unsetConfiguration(oldConfigGroup, oldConfigKey);
	}
}```

Which is then ran at startup of your plugin, would migrate the old config to the new config.

Keep in mind that it also needs to be called in ProfileChanged, not just startUp.

Thanks both for the help. Updated with the config merge.


Added issuetemplates

Pull Request Test Coverage Report for Build 52

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 92.199%

Totals

Change from base Build 50:
0.0%

Covered Lines:
130

Relevant Lines:
141

💛  - Coveralls


reverse dependency run

Dear everyone,
I noticed that at the moment, all reverse dependencies are built when I release a package X. This means if Y depends on X, this is scheduled for being built. If Z depends on Y, this is as well scheduled for being built.
Now, when I have an API change in X, the likeliness that Y will succeed is rather small. And thus, building Z is nothing that should ever be tried.
So, I have the following suggestion: the reverse dependency builds should be staged:

first all direct dependencies (here Y)

then the reverse dependencies of these (here Z)

This should imply that if Y fails to build, Z is never scheduled, and would ease the load on the CI machines (drastically, esp. for packages which are used all over).

There's as well the thing, if I release package A and B, where B depends on "A {=version}", (transitive) reverse dependencies for B are computed and run, although they are always a subset of the (transitive) reverse dependencies of A.

Dear @hannesm,
Thank you for your helpful suggestions on the reverse dependency runs. We do currently generate a flat list of reverse dependencies and start separate build jobs to test each of these reverse dependencies. I am currently looking into the reverse dependencies and related things in Opam Repo CI.  The suggestions in this issue are very helpful and we will keep them in mind, as we work on this. Thanks!


Implementing support for NativeOps in Julia

I am currently trying to implement NativeOps in Julia. (see https://github.com/dmlc/MXNet.jl/issues/15)
One of the issues is that calling a Julia function directly is not possible. Instead one has to provide a opaque pointer to the julia function one actually wants to call.
See http://julialang.org/blog/2013/05/callback/ and https://github.com/dmlc/MXNet.jl/blob/master/src/kvstore.jl#L115

Thanks! @pluskid could you take time to have a look at this?

This looks good to me. I think it is ready to be merged once @vchuravy rebase it to the latest master.
The rational for this modification is that currently Julia is unable to use function with closure capturing for C callbacks. So an opaque pointer object needs to be passed into the backend to hold necessary closure values. This also follows the updater API design in the KVStore.

So the p_forward pointers are pointing to the callback in julia and unused in python?
Looks good to me.

@piiswrong Yes.

Rebased
On Thu, 5 Nov 2015 at 12:37 Chiyuan Zhang<EMAIL_ADDRESS>wrote:

@piiswrong https://github.com/piiswrong Yes.
—
Reply to this email directly or view it on GitHub
https://github.com/dmlc/mxnet/pull/490#issuecomment-153944743.


Dex percent decimal too low

If you parse %pixelmon_trainer_dex_percent_caught% it returns 0.08839xxx
It should be 8.839xxx
Same for
%pixelmon_trainer_dex_percent_caught_rounded% (returns 0.09)
%pixelmon_trainer_dex_percent_caught_int% (returns 0)
%pixelmon_trainer_dex_percent_caught_gen_[1-8]%
%pixelmon_trainer_dex_percent_caught_gen_[1-8]_rounded%
%pixelmon_trainer_dex_percent_caught_gen_[1-8]_int%
%pixelmon_trainer_dex_percent_seen%
%pixelmon_trainer_dex_percent_seen_rounded%
%pixelmon_trainer_dex_percent_seen_int%
%pixelmon_trainer_dex_percent_seen_gen_[1-8]%
%pixelmon_trainer_dex_percent_seen_gen_[1-8]_rounded%
%pixelmon_trainer_dex_percent_seen_gen_[1-8]_int%

And one small thing, just noticed you have placeholder for held item in code but not on the wiki

Will fix when I get home later, appreciate - and oops on the held item. The wiki was quite a doosy to write lol - that I believe I can fix now.
Does this also apply to stuff like IV_percent?

No, IVs and EVs percentages are fine

Appreciate, will fix as soon as I get the chance

Oh, just found out total EVs isn't correct, you have a 520 instead of 510

All fixed in PixelmonExtension 1.0.1
Thank you <3


TV Youtube Bug

When watching TV Youtube. EqMac is causing youtube TV to pause the video image. It freeze when the audio in the youtube window is in mute. It plays audio fine but pauses the picture playback. Took me a while to figure out that it was eqmac causing the issue. I disabled eqmac and then tv youtube plays as intended. Then I enabled eqmac again ad all is well.  Weird bug but there it is.

I've got the same video freezing issue appearing a few hours after the Mac has started, not only on Youtube, but on EyeTV, VLC, or any video player software.
I finally found that eqMac v1.3.2 was causing this on my Mac Pro 2013, under Mac OS 10.14.6.
Now, instead of restarting the mac, I quit eqMac and relaunch it.
The issue appears usually at the end of the day, when I'm using multiple video features (playing, exporting, ...) at the same time.

I have not seen that issue before, I am closing this issue just based on the age of it, if you still encounter this issue, please feel free to reopen it. Note that, there is a pretty long standing bug where if the memory (RAM) usage is too high, macOS's audio output would be inconsistent, and that bug would happen even without eqMac.


Multi draw indirect from multiple VBOs

So, following this conversation, I open this ticket here  :grimacing:
I asked you since you usually are one of the contributors
I have opened also a thread on the opengl forums if this may interest you

Ahhh, this is quite an OpenGL feature here actually.
Well, it' actually more effective to merge all the VBOs into a single set of array and element array buffer.
We can use BaseVertex and BaseInstance to select the right range of vertex data.
Thanks,
Christophe


Allow writing BYTE_ARRAY with converted type NONE

This allows to store binary data of arbitrary length in a parquet file, without having to wrongly declare it as UTF-8.
Fixes the writer part of #42971
The reader part has already been fixed in 4d825497cb04c9e1c288000a7a8f75786cc487ff and this uses a similar implementation, but with a stricter set of "exceptions" (only byte arrays with NONE type are allowed).

Rationale for this change
Hello,
We are trying to store binary data (in our case, dump of captured CAN messages) in a parquet file. The data has a variable length (from 0 to 8 bytes) and is not an UTF-8 string (or a text string at all). For this, physical type BYTE_ARRAY and logical type NONE seems appropriate.
Unfortunately, the parquet writer will not let us do that. We can do either fixed length and converted type NONE, or variable length and converted type UTF-8. This change relaxes the type check on byte arrays to allow use of the NONE converted type.
What changes are included in this PR?
Allow the parquet stream writer to store data in a BYTE_ARRAY with NONE logical type. The changes are based to similar changes made earlier to the stream reader.
Are these changes tested?
I'm not sure if this is the right way to fix this problem. I'm happy to add tests if needed after the general idea has been validated.
In particular, the NONE type does not assume ASCII text (with no NULL bytes inside), so the operator<<(const char* v) method may need to be excluded from this (and only allow UTF-8), what do you think? In that case, what would be the way of implementing this without making slightly different versions of CheckColumn for each case?
Are there any user-facing changes?
Parquet stream writer allows using BYTE_ARRAY witn NONE converted type for storage of arbitrary binary data.

mind:

a test for this
Mark this pr for parquet stream writer?

Updated the existing test to cover this case, and modified the PR title.
The tests I found does not seem to validate the parquet file contents, is there another place where I could check that?


Permission denied error while installation

fatal: [<IP_ADDRESS>]: FAILED! => {"changed": false, "cmd": "/tmp/solr-8.5.0/solr/bin/install_solr_service.sh /tmp/solr-8.5.0.tgz -i /opt -d /var/solr -u solr -s solr -p 8983", "msg": "[Errno 13] Permission denied", "rc": 13}

did you run with become: yes in your playbook ?

@MacFlurry Thank you for response. Yes i have mentioned , here are the couple of lines of my playbook header.

hosts: solr
become: true

something wrong with your playbook.yml (missing the /)
src: "{{ download_dir }}solr-{{ solr_version }}.tgz"
it should be
src: "{{ download_dir }}/solr-{{ solr_version }}.tgz

@MacFlurry Thank you for finding out. The issue was with package. The only reason didn't clone was to make hands dirty.

@MacFlurry Thanks so much for the assistance on this issue :)
Got it resolved before I was even at the computer for the day!

@MacFlurry Thanks so much for the assistance on this issue :)
Got it resolved before I was even at the computer for the day!

you're welcome
I'll help in any way I can to free you from the time you don't always have...😁🥰


Getting warning for this package after upgrading to sveltekit 2

9:29:01 AM [vite-plugin-svelte] WARNING: The following packages have a svelte field in their package.json but no exports condition for svelte.

<EMAIL_ADDRESS>
Please see https://github.com/sveltejs/vite-plugin-svelte/blob/main/docs/faq.md#missing-exports-condition for details.

The recommended fix is found here https://github.com/sveltejs/vite-plugin-svelte/blob/main/docs/faq.md#missing-exports-condition
// package.json
  "files": ["dist"],
  "svelte": "dist/index.js",
+ "exports": {
+   ".": {
+     "svelte": "./dist/index.js"
+   }
  }

Hey Scott!
After releasing version 3.0.0 of svelte-tiny-virtual-list I will start working on proper SvelteKit support for this package as well and release it with version 2.0.0 around April (or earlier depending on my workload).
Hopefully this should fix any warning or incompatibilities.

Hi @jonasgeiler , how is it going with v2, is there an issue one may help with?


MPS test jobs are failing

with
Traceback (most recent call last):
  File "/Users/runner/work/vision/vision/pytorch/vision/test/smoke_test.py", line 103, in <module>
    main()
  File "/Users/runner/work/vision/vision/pytorch/vision/test/smoke_test.py", line 99, in main
    smoke_test_torchvision_resnet50_classify("mps")
  File "/Users/runner/work/vision/vision/pytorch/vision/test/smoke_test.py", line 52, in smoke_test_torchvision_resnet50_classify
    img = read_image(str(SCRIPT_DIR / ".." / "gallery" / "assets" / "dog2.jpg")).to(device)
RuntimeError: MPS backend out of memory (MPS allocated: 0 bytes, other allocations: 0 bytes, max allowed: 1.70 GB). Tried to allocate 0 bytes on private pool. Use PYTORCH_MPS_HIGH_WATERMARK_RATIO=0.0 to disable upper limit for memory allocations (may cause system failure).

example: https://github.com/pytorch/vision/actions/runs/9157662717/job/25174485539?pr=7990

Seems that all the failures are related to MPS - pinging @qqaatw as you've been our POC on this so far :)
Do you have any idea what might be causing this? Has there been any change on the PyTorch core side related to MPS that could be the source? Thanks!

Hmm, it looks related to MPSAllocator. cc @Kulinseth

Looks like it wasn't directly related to MPS but rather related to the recent drop of macos x86 support from pytorch. After https://github.com/pytorch/vision/pull/8446 I see the MPS tests passing, so I'll close this issue.
Thank you for your prompt response @qqaatw !


OutlineEffect: outline is missing on parts of object.

Is your feature request related to a problem?
Screenshot:

Describe the solution you'd like
We need an option to not combine outlines of multiple objects into one.
Three's OutlineEffect works as desired:
https://threejs.org/examples/?q=toon#webgl_materials_toon

Describe alternatives you've considered
Additional context
Can we use both Three's EffectComposer and postprocessing's EffectComposer at the same time? If so, then we can use OutlineEffect from Three's examples and use the rest from postprocessing.

Hi, three's OutlineEffect can be used together with postprocessing since it's not actually a fullscreen pass.

Hi there! Is there a general rule of thumb for which threejs original postprocessing effects do work with your EffectComposer implementation?
I've tried to use the original OutlineEffect with your EffectComposer with no luck. The following code block sums-up the main points, but this lead to a silent fail - no errors printed in console, but canvas just stays with the DOM color and is not even cleared with the renderer clear color. Is this the way to import the original OutlineEffect?
import { EffectComposer, EffectPass, RenderPass, BlendFunction } from 'postprocessing';
import { OutlineEffect } from 'three/examples/jsm/effects/OutlineEffect';

composer = new EffectComposer( renderer, { frameBufferType: HalfFloatType, stencilBuffer: true } );
composer.addPass( new RenderPass( scene, camera ));

// OutlineEffect works when outlineEffect.selection.add( c );
outlineEffect = new OutlineEffect( scene, camera, { edgeStrength: 3.0, visibleEdgeColor: 0x53fbff, hiddenEdgeColor: 0x53fbff, blur: true, xRay: false, blendFunction: BlendFunction.SCREEN } ); // SRC SCREEN
const outlinePass = new EffectPass( camera, outlineEffect );
composer.addPass( outlinePass );

// The below function is hooked to onModelLoad
scene.traverse( ( c ) => {
	if ( c.isMesh )
		if ( outlineEffect?.selection )
			outlineEffect.selection.add( c );
})

Despite its name, OutlineEffect is not an Effect. I can see how this can be confusing, but it's a completely different thing.
Passes from three are incompatible with postprocessing due to API differences.

Ok thanks for getting back so fast as always. I think I was mislead by your previous comment which should probably be three's OutlineEffect can't be used [...]

No, that comment was correct. Here's how you'd use OutlineEffect from three:
const outlineEffect = new OutlineEffect(renderer);
let renderingOutline = false;

scene.onAfterRender = function() {

	if(renderingOutline) {

		return;

	}

	renderingOutline = true;

	outlineEffect.renderOutline(scene, camera);

	renderingOutline = false;

};

Note: that's the scene, you'd render using a RenderPass via postprocessing. Further passes have nothing to do with outlineEffect.

Closing this as it seems to be resolved.


Proxy ports

Need to update routes to different services outside of Django to proxy through port 80. This will mostly involve Nginx configuration as well as an authentication mechanism (hopefully tied in through Django auth). Deployment via playbook will be affected as well.

Scratch the auth mechanism. Will make that a separate issue.

Same response as for #292
Nope, not gonna happen. Per https://issues.apache.org/jira/browse/SPARK-20044. Thanks to @ghukill for testing this. Basically, the apps that were going to be proxied through are not designed to accommodate this. Instead, a more sustainable solution is to have these apps firewalled off to the world and access be granted to needed IPs.


proposal: Go 2: Multi-dimensional slices

This proposal was originally denied back in 2014, not because it was unjustified, but because the go team said that go1 was, justifiably, stable, with the argument that consideration of this should be deferred to go2.
Its 2020 and data science, machine learning and AI are more important today than ever.
There are some really compelling arguments for why go can be the next disruptive language for data science.
I would like to thank @btracey and the gonum team for their originally written proposal.
Please do reconsider.

Unless the concerns in #6282 are addressed, the mere passage of time should not change the decision that was made before

#6282 is a long discussion so it deserves a recap.
There are no concerns to be addressed, the go team acknowledged that this is a valid point and though the proposal is not 100% perfect, it is justified and should be brought up to more mature discussion when people will start discussing go2 more seriously.
Here is the original decision
And to quote @griesemer :

We suggest that this discussion continue with the intent to come up with a new and improved design (possibly along the lines of one of the alternatives above) with the intent of having a blueprint for consideration for Go 2.

This issue fell between the cracks and was frozen due to age. It should be revived.

But someone still needs to come up with a new and improved design.  Opening this issue doesn't help without that.

This is a difficult feature. Somewhat analogous to generics, a good design is not something that appeared over night. It required significant engineering efforts, including involvement also from the core go dev team. And a since a good design is going to require a community effort, this will not be solved unless it is discussed and tracked, which it was not.
I am arguing that this is a valid problem that was put aside because it was a tough problem that came in a time where the go language was not open to changes. Though I have the capability to present a design, I think this would be presumptuous and I believe that bringing everyone to discuss this is the important first step.

I agree with what you say.  My point is a different one.  This isn't how we use the issue tracker, and, in general, this kind of discussion does not work on the issue tracker.  The problem is that the issue tracker is not threaded, and the GitHub interface starts hiding comments when there are too many of them.  A better place for this kind of discussion is a mailing list.
So by all means have the discussion.  Just don't do it here.  Thanks.

@ianlancetaylor  I completely agree with you on this one. I think the original issue staled because it was too big of a discussion. My plan for now is to make an Experience Report which was not submitted for the original issue, because experience reports did not exist at the time of original proposal. And move with the community to a refined proposal from there.

For the sake of discussion, let's assume Go had support for multi-dimensional slices. Such slices would need to support a certain set of operations, such as creation/allocation of those slides, the ability to index elements, possibly iteration over the elements, maybe element-wise operations (adding two matrices), etc.
Also for the sake of discussion, I am going to make a few claims:

Multi-dimensional slices are nice for small problems but don't scale. Real problems require detailed control over the layout of matrices: There is a reason why numerical libraries such as LINPACK, LAPACK, etc. but also gonum support various representations of matrices. There are dense and sparse matrices. There may be distributed matrices. The representations of these matrices can be very different from a basic multi-dimensional slice - at best they may use multi-dimensional slices underneath.

AI applications, while operating on matrices, depend on maximum throughput and (typically) specialized hardware. To achieve the throughput or drive the hardware, the data must be brought into a suitable form which may be different from the "built-in" representation of matrices/multi-dimensional slices of a programming language. Again, real applications require detailed control over the layout of such data structures.

In summary, what we need is full programability of (memory) layout. And with programmability of layout we also need programmability of operations, as they depend on the layout.

Go already provides support for that: it's called user-defined data types. With generics, we can also parameterize these data types (vectors, dense and sparse matrices, etc.) by element type. Using methods, we also can implement the necessary operations.

So if anything is missing it's perhaps convenience of notation, i.e., syntax.

Operator methods are not sufficient. Simply permitting operator "names" such as +, *, etc. as method names (as in func (x *Vector) + (y *Vector) *Vector, so that we can write x + y which would mean x.+(y)) is a fairly easy language change but unfortunately it also doesn't scale. First, we don't just need operator methods, we probably also want operator method overloading: given a matrix m and a scalar value x, m + m would invoke the + method with a matrix receiver and argument, while m + x would have to invoke a method with a matrix receiver and a scalar argument. That is, we need two + methods (same name, different signatures), or perhaps a generic + method with method-specific type parameters. Operator overloading is not something we would be willing to add to Go (it would cause serious damage to the simplicity of method lookups); and generic methods are not sufficiently understood to be considered (see the generics draft design). One could make the 2nd operator parameter an empty interface and use a type switch inside the operator method, but that seems also not very satisfactory.

But it gets worse: for performance, we would not write (for example) a matrix multiplication as B = A*x (translated to B = A.*(x)) because it would require a (possibly large) allocation for the result B. For performance, we would want to pass in the result memory as an argument (perhaps the receiver) to the operations. That is what math/big and the gonum package do. In short, unless there's yet another mechanism to somehow control how results are allocated, operator methods fall flat in real applications.

To make progress here we need to have strong arguments as to why these claims are wrong.
There's one thing we could do on the syntax side: we could perhaps support indexing methods. If we declare methods such as [] and []=
type Matrix[T Numeric] struct ...
func (m *Matrix[T]) [] (i, j int) T ... // getter: x = m[i, j] translates to x = m.[](i, j)
func (m *Matrix[T]) []= (i, j int, x T) ... // setter: m[i, j] = x translates to m.[]=(i, j, x)

we could implement multi-dimensional data structures in libraries yet provide notationally convenient access to the elements. Such methods would only accept a prescribed signature (n integer arguments and a result or argument of a given element type). (See also https://www.dotconferences.com/2016/10/robert-griesemer-prototype-your-design.)

Based on the discussion above, this proposal is a likely decline.  Discussing the topic is fine but there is no detailed proposal here.  Leaving open for four weeks for final comments.

Thank you for giving me the time to do the required homework on this. The post by @griesemer and your past works gave me some significant food for thought. I have published an experience report on this issue and linked it in the experience reports page.
The experience report focuses on understanding the problem at hand. I did became convinced, only after the fact, that the solution proposed by @griesemer actually solves the right problem. So I am proposing that you consider it as a proposed solution. I do hope that you reach the same conclusion after you read my report.
Thanks again for the opportunity.

A 15 Years of array programming experience report:
Harris, C.R., Millman, K.J., van der Walt, S.J. et al. Array programming with NumPy. Nature 585, 357–362 (2020). https://doi.org/10.1038/s41586-020-2649-2

Hello, author of gorgonia.org/tensor here. Hope you don't mind me chiming in.
The tensor package has a very numpy-ish API, and scales indefinitely with number of dimensions (i.e. you can have a 4/5/6/...128 dimensional array.
I think @griesemer merely scratches the surface of the issues with making multidimensional slices. I also think there may be some benefits to additional accessor syntax. Just not in the way most would imagine it.
Here's an example:
Assume T is a 3 dimensional array with shape (5, 10, 10). With the tensor package, you can write something like this to slice the array:
T.Slice(S(0,3), nil, S(5,9))

In Python/Numpy, it'd look like this:
T[0:3, :, 5:9]

The latter is very much cleaner than the former.
Ideally with the [] and []= syntax extensions, they should be parameterized over a given tensor rank (or dimension, if you are coming from the numpy world).
Just having it as a plain accessor (as suggested) isn't going to do much though. You could currently do something like this:
T.SetAt(value, i,j,k)
x, err := T.At(i,j,k)

Going from that to this:
T[i][j][k] = value
x := T[i][j][k]

brings little utility. When programming with arrays, you seldom set values like this. Instead you typically set values  in batches. So, using the same T as an example, you need to be able to syntactically support doing something like this:
T[i] = ... // multidimensional value here

This is doable with some slight modification to the extension that @griesemer proposed, e.g.
type Dense[T any] struct ...
func (d *Dense[T]) [] (coords ...type U) ... // getter or slicer
func (d *Dense[T]) []= (val T, coords ...type U) ... // setter

where U is defined
type U interface{
    int, Slice
}

Numpy's killer feature is the ability to slice with syntax and I think Go should have them too.
Of course, the problem is if you allow this, then abuses of syntax extensions will be abound. So we gotta balance that as well.

Thanks @chewxy. I completely agree with you.
My experience report stresses that [] and []= need be parametrized for many use cases.
It might not be exactly what @griesemer suggested, but I am arguing that simply having the ability to specify operator methods for [] and []= will solve most of the syntax issue.

You can find a proposal which is based on the proposal template here.
Thanks again for your precious time.

Please note, I have made some significant additions to the proposal to better address the ability to add custom slicing operations. This better addresses my experience report and now fully supports the use-case detailed by @chewxy .


reverting mongo operator back to 0.2.0 for patch release

cherry-pick for main: https://github.com/RHEcosystemAppEng/dbaas-operator/pull/185


Return OneTableErrors with code:UniqueError when values are not unique

This was failing to properly handle errors and just returning the TransactionCancelled error

Ah it looks like I missed some failures with dynamo v2. I'll take a look at those soon, any pointers on that would be appreciated.

Updated and fixed tests

Thank you.


Parse srcset and return different image URLs (and do the same for [video] sources?)

Kind of brought this up (over here, wrongly) before, but I was curious if it would be possible to eventually include more in photo or video than what's in a u-photo or u-video's src.
Some video tags contain multiple sources (for browsers to pick and choose the one they best support). Same (well, sort of) with img/srcset, or even picture/source/srcset.
If video or photo could be a nested array with multiple URLs (or also include the raw srcset attribute) per "asset," apps using this library would have quite a bit more to work with.

@janboddez A better place would be https://github.com/microformats/microformats2-parsing/issues/7


[BUG] tailwindcss/migration-from-tailwind-2 rule issues

Describe the bug
Using bg-opacity-* or ring-opacity-* classes results in lint errors.
To Reproduce
Steps to reproduce the behavior:

Use one of the classnames bg-opacity-10, ring-opacity-5
See error

Expected behavior
Allow correct usage of opacity classes.
Screenshots

Environment (please complete the following information):

OS: macOs
Softwares + version used:

node 16, eslint 7.32.0, eslint-plugin-tailwindcss 7.28.0

Additional context
None
eslint config file or live demo
module.exports = {
  ignorePatterns: [
    '.eslintrc.js',
    'gatsby-config.js',
    'gatsby-node.js',
    'src/graphql/graphqlTypes.ts',
  ],
  env: {
    browser: true,
    es2021: true,
  },
  extends: [
    'eslint:recommended',
    'plugin:react/recommended',
    'plugin:react-hooks/recommended',
    'plugin:@typescript-eslint/recommended',
    'plugin:react/jsx-runtime',
    'plugin:tailwindcss/recommended',
    'plugin:prettier/recommended',
  ],
  settings: {
    react: {
      version: 'detect',
    },
  },
  parser: '@typescript-eslint/parser',
  parserOptions: {
    ecmaFeatures: {
      jsx: true,
    },
    ecmaVersion: 12,
  },
  plugins: ['react', '@typescript-eslint', 'tailwindcss'],
  rules: {
    'react/jsx-uses-react': 'error',
    'react/jsx-uses-vars': 'error',
    'react/prop-types': 0,
  },
};

Hi @dbtek & @charkour, 👋
This is on purpose.
If you take a look 👀  at the Tailwind CSS docs for v3.x.x, you will not find any page about:

bg-opacity
ring-opacity
...

If you read background-color docs about opacity you can see that they recommend using the opacity suffix (e.g. /50) like so
<button class="bg-sky-500/50 ..."></button>.
As they explain in the upgrade guide:

Wherever possible we have preserved the old name as well so many of these changes are non-breaking, but you’re encouraged to update to the new class names.

That's what these rules are meant for: encouraging you to update to the new classnames 😉
So, this is not a bug, it is made on purpose.
▶ If you don't like it, you can easily disable the rule in your eslintrc file.
Hope it helps.

Sorry, that's my bad.
@francoismassart thanks for heads up. Used components from Tailwind UI, didn't think they're outdated.

Thanks for the quick response. I had also misread that. Thank you.

bg-opacity is not outdated, it's available and active in Tailwind 3 https://tailwindcss.com/docs/opacity
Also it's useful when using components with bg color and adding opacity conditionally.


bug report Snapshot

Good morning,
I want to report a very annoying bug, when I restore the snapshot it does not load external repositories and therefore does not load third-party addons, can you fix this annoying bug?
third-party addons are not installed
thank you,
Francesco Russo

my web site: https://www.itchsblog.it

+1
I've noticed the exact same problems when trying to move my hassio to a new hardware; I crate a snapshot, reloaded the snapshot on a fresh new installation and all is good but only for the add-ons which are part of the Official Repository; all add-ons which have been installed from other repositories must be manually added (prior to install all the missing repositories) and then manually configured or reloding again the snapshot.
I think this is a bug missing feature (if you don't want to call it "bug") as I'm expecting that as the snapshot includes all add-ons and their configuration woudl carry as well a backup of all the additional reporitories configured in Hass.IO; this will make restoring a snapshot an easier process.

@homeassistant

The repository will only restore on full restore and not partial. That is no bug.
That is also the wrong repository, please open an issue on Hass.io repository of supervisor. I put it to my task list for Q3-Q4 2019 if no other developer tries to improve the partial restore.

@pvizeli
ok, then I'll move the question

The repository will only restore on full restore and not partial. That is no bug.
That is also the wrong repository, please open an issue on Hass.io repository of supervisor. I put it to my task list for Q3-Q4 2019 if no other developer tries to improve the partial restore.

maybe I did not explain myself correctly but the issue I experience was on full snapshot recovery and definitely it's a bug...
the process did not work as the addons not in the offcial  repository weren't restored!


upgrade clap

Upgrade clap to latest version
Blocked by rust upgrade - https://github.com/graphprotocol/graph-node/pull/4985

The Rust version bumped has happened. Can you touch this up so we can merge it?


Fix Literal values bug

See https://github.com/Microsoft/visualfsharp/pull/4485
I Added a test to check that the problem is tested

Ok cool. Test is red.

@forki ILComparer should throw error that the generated IL from the test code is different from the generated IL from LKG compiler

Ah so it's testing against last compiler. Not the actual value. Interesting.

But it's now green? While nothing in the sources changed?

My fault I need to prepare a file to compare the il I'll do it later

@forki @dsyme @KevinRansom ok now I think the test failed because of il diff

@AviAvni I think we probably also need to ensure we do the right thing on coreclr and desktop and under fsi.
I'm currently looking at reflection code similar to:
open System
open System.Linq
open System.Reflection

module public MyLiteralFields =
    [<Literal>]
    let public literalFieldX = 7

[<EntryPoint>]
let main argv =

    printfn "MyFields.literalFieldX = %d" MyLiteralFields.literalFieldX

    // Use dotnet reflection to verify that x is a Literal Constant
    // This works on full desktop / coreclr and also fsi
    let asm = Assembly.GetExecutingAssembly()
    let typ =  asm.GetTypes() |> Array.filter(fun t -> t.FullName.EndsWith("+MyLiteralFields")) |> Array.tryLast

    let result =
        match typ with
        | Some typ ->
            // Gets literalFieldX checks to see if it is marked "Literal"
            let fieldInfo = typ.GetTypeInfo().DeclaredFields |> Seq.tryFind(fun fi -> fi.Name.StartsWith("literalFieldX"))
            match fieldInfo with
            | Some fieldInfo ->
                if fieldInfo.IsLiteral = true then 0 else 2
            | None ->
                printfn "Failed to find fieldliteralFieldX ="
                3
        | None ->
            printfn "Failed to find module public MyLiteralFields ="
            1
    if result = 0 then printfn "Succeeded" else printfn "Failed: %d" result
    result

result is 2 without the fix and 0 with the fix on the desktop runnung under fsi.
However the reflection code is still desktop and netstandard 2.0, so it needs converting to netstandard1.6 because we still test on that puppy.
I will send you a pr with this to incorporate in your testing if you would like.

@KevinRansom ok waiting for your pr

@KevinRansom I added you as collaborator to my fork

thanks.

@AviAvni on ci_part2 and ci_part3 that tests fails with this output,:
1) Error : FSharp-Tests-Core+RegressionTests.literal-value-bug-1-FSC_BASIC
System.Exception : Invalid path regression/literal-value-bug-1/test.il.bsl
   at Microsoft.FSharp.Core.PrintfModule.PrintFormatToStringThenFail@1645.Invoke(String message)
   at TestFramework.diff(Boolean normalize, String path1, String path2) in D:\j\w\release_ci_pa---c6929ad7\tests\fsharp\test-framework.fs:line 454
   at FSharp-Tests-Core.RegressionTests.literal-value-bug-1-FSC_BASIC() in D:\j\w\release_ci_pa---c6929ad7\tests\fsharp\tests.fs:line 1473

@KevinRansom thanks I'm working on it

@KevinRansom I fixed the comparison
one thing left I don't understand when I run the unit test I get
'C:\Users\aviav\Source\Repos\visualfsharp\tests\fsharp\regression\literal-value-bug-1\test.il' and 'C:\Users\aviav\Source\Repos\visualfsharp\tests\fsharp\regression\literal-value-bug-1\test.il.bsl' differ; "diff between [C:\Users\aviav\Source\Repos\visualfsharp\tests\fsharp\regression\literal-value-bug-1\test.il.bsl] and [C:\Users\aviav\Source\Repos\visualfsharp\tests\fsharp\regression\literal-value-bug-1\test.il]
line 40
 -  // MVID: {5AA663EB-D9C1-2E4E-A745-0383EB63A65A}
 + // MVID: {5AA66C86-D9C1-2E4E-A745-0383866CA65A}
diff between [C:\Users\aviav\Source\Repos\visualfsharp\tests\fsharp\regression\literal-value-bug-1\test.il.bsl] and [C:\Users\aviav\Source\Repos\visualfsharp\tests\fsharp\regression\literal-value-bug-1\test.il]
line 46
 - // Image base: 0x02BF0000
 + // Image base: 0x00910000
diff between [C:\Users\aviav\Source\Repos\visualfsharp\tests\fsharp\regression\literal-value-bug-1\test.il.bsl] and [C:\Users\aviav\Source\Repos\visualfsharp\tests\fsharp\regression\literal-value-bug-1\test.il]
line 55
 -   .field public static literal int32 x = int32(0x00000007)
 +   .field public static int32 x = int32(0x00000007)

the MVID and  Image base always changing the other change is what we looking for

@AviAvni It looks to me as if you inadvertently added an extra space at the start of the mvid line:
https://github.com/AviAvni/visualfsharp/blob/845e4c0b12ddbd7c73021dcd350273edbfc46ce6/tests/fsharp/regression/literal-value-bug-1/test.il.bsl#L40

@KevinRansom Ilcomparer is doing it and it only used in fsharpqa test and I didn't figure out how it run
fsdiff don't ignore comments and in FsharpTestSuite there is no use of ilcomparer

@AviAvni
Durn it, our test suites are not great.  I think the reflection tests will catch the error. but you could add your test over here:   https://github.com/Microsoft/visualfsharp/tree/master/tests/fsharpqa/Source/CodeGenEmittedIL/
There are plenty of examples there how to check against a baseline.

@KevinRansom ok i moved the test to fsharpqa waiting to see the build result

I will merge my  pr into this one, and close mine then we will be Golden :-)

@KevinRansom If I can help with something ping me

Thank you for everything you have done I really appreciate it.
Kevin

@dsyme, @AviAvni , @brettfo, @TIHan please review this.
Thanks
KEvin

I added the similar refactor for the marshal case. It wasn't broken, but now it's same pattern


Not present in offline help viewer

Not present in offline help viewer

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

ID: ebff2f40-62ed-8c2a-58c7-f712146a4e2e
Version Independent ID: 60ddd91f-76f1-37d1-53a0-8d7e516d08fe
Content: FltQueryInformationByName function (fltkernel.h) - Windows drivers
Content Source: wdk-ddi-src/content/fltkernel/nf-fltkernel-fltqueryinformationbyname.md
Product: windows-hardware
Technology: windows-devices
GitHub Login: @lorihollasch
Microsoft Alias: loriwhip

@PisarevSergey , are you using an old CHM to reference WDK documentation? We only publish documentation online through docs.microsoft.com now - we are not generating CHMs anymore. I'm going to close this issue since the refpage is published on the website. Let me know if you are referring to something else, thanks.

I am using Help Viewer that comes with Visual Studio 2019
Sent from my iPhone

On 28 Jun 2019, at 00:49, Lori Whippler Hollasch<EMAIL_ADDRESS>wrote:
Closed #540.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.

Thanks for clarifying! I'll reopen this issue and investigate.

@PisarevSergey, we just published updated offline books. Go ahead and update your HelpViewer docs and all should be good now!


Thank you for your comments.

Can we add explanation on how to use this in the printUsage method?

I see. I'll check the current usage first.

What if the remote peer isn't kerberised? I guess initCredentialsForCluster call would throw an exception?

I think there are several cases as you mentioned, but in general, initCredentialsForCluster shouldn't throw exceptions for non-kerberos cluster configuration(connection).
I know initCredentialsForCluster is odd as another issue.
https://issues.apache.org/jira/browse/HBASE-26205
https://github.com/apache/hbase/pull/3592
Current initCredentialsForCluster won't work for the following case and I'd like to fix it in HBASE-26205 (#3592) as indivisual change (because initCredentialsForCluster is common feature)

cluster A is non-secure(hbase.security.authentication=simple in job conf), cluster B is secure(hbase.security.authentication=kerberos in cluster conf)
cluster A is secure(hbase.security.authentication=kerberos in job conf), cluster B is non-secure(hbase.security.authentication=simple in cluster conf)

Since we are making VerifyReplication a general comparison tool (not replication specific anymore), shouldn't we cover all possible scenarios (unsecure/secure, secure/secure, secure/unsecure, unsecure/unsecure)?

Yes, it could handle either combination with configuration for the VerifyReplication execution.
For example, these is some examples of the execution for the combinations.
(Please make sure, #3592 is necessary for mixed env)
# non-secure vs secure (as well as for opposite)
hbase VerifyReplication \
  -D hbase.security.authentication=simple \
  -D hbase.zookeeper.quorum=non-secure-hbase-a-1.example.com,non-secure-hbase-a-2.example.com,non-secure-hbase-a-3.example.com \
  -D hbase.zookeeper.property.clientPort=2181 \
  -D zookeeper.znode.parent=/hbase-a
  -D verifyrep.peer.hbase.security.authentication=kerberos \
  -D<EMAIL_ADDRESS>\
  -D<EMAIL_ADDRESS>\
  ... \
  secure-hbase-b-1.example.com,secure-hbase-b-2.example.com,secure-hbase-b-3.example.com:2181:/hbase-b \
  table

# secure vs secure (use different principal for cluster daemons)
hbase VerifyReplication \
  -D hbase.security.authentication=kerberos \
  -D hbase.zookeeper.quorum=secure-hbase-a-1.example.com,secure-hbase-a-2.example.com,secure-hbase-a-3.example.com \
  -D hbase.zookeeper.property.clientPort=2181 \
  -D zookeeper.znode.parent=/hbase-a
  -D<EMAIL_ADDRESS>\
  -D<EMAIL_ADDRESS>\
  -D<EMAIL_ADDRESS>\
  -D<EMAIL_ADDRESS>\
  ... \
  secure-hbase-b-1.example.com,secure-hbase-b-2.example.com,secure-hbase-b-3.example.com:2181:/hbase-b \
  table

Any chance to add UTs?

I'll try it.

Any chance to add UTs?

I'll try it.

Added test case for both is secure.
Unfortunately, I couldn't add a test case for non-secure and secure because it's difficult to start non-secure and secure cluster at the same time in a single process.
User (UserGroupInformation) uses static heavily and it can be either SIMPLE auth or Kerberos auth, so either cluster confuse and won't work properly.
If you know how to boot both of non-secure and secure cluster at the same time, please tell me so that I could add test case for it...

:confetti_ball: +1 overall

Vote
Subsystem
Runtime
Comment

+0 :ok:
reexec
0m 27s
Docker mode activated.

-0 :warning:
yetus
0m  3s
Unprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --whitespace-eol-ignore-list --whitespace-tabs-ignore-list --quick-hadoopcheck

_ Prechecks _

_ master Compile Tests _

+1 :green_heart:
mvninstall
4m 15s
master passed

+1 :green_heart:
compile
0m 30s
master passed

+1 :green_heart:
shadedjars
8m 12s
branch has no errors when building our shaded downstream artifacts.

+1 :green_heart:
javadoc
0m 21s
master passed

_ Patch Compile Tests _

+1 :green_heart:
mvninstall
4m 19s
the patch passed

+1 :green_heart:
compile
0m 31s
the patch passed

+1 :green_heart:
javac
0m 31s
the patch passed

+1 :green_heart:
shadedjars
8m 11s
patch has no errors when building our shaded downstream artifacts.

+1 :green_heart:
javadoc
0m 20s
the patch passed

_ Other Tests _

+1 :green_heart:
unit
10m 46s
hbase-mapreduce in the patch passed.

39m 11s

Subsystem
Report/Notes

Docker
ClientAPI=1.41 ServerAPI=1.41 base: https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3591/2/artifact/yetus-jdk11-hadoop3-check/output/Dockerfile

GITHUB PR
https://github.com/apache/hbase/pull/3591

Optional Tests
javac javadoc unit shadedjars compile

uname
Linux 92870a2e54d0 4.15.0-58-generic #64-Ubuntu SMP Tue Aug 6 11:12:41 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/hbase-personality.sh

git revision
master / 721cb96f8c

Default Java
AdoptOpenJDK-11.0.10+9

Test Results
https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3591/2/testReport/

Max. process+thread count
4005 (vs. ulimit of 30000)

modules
C: hbase-mapreduce U: hbase-mapreduce

Console output
https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3591/2/console

versions
git=2.17.1 maven=3.6.3

Powered by
Apache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.

:confetti_ball: +1 overall

Vote
Subsystem
Runtime
Comment

+0 :ok:
reexec
1m  9s
Docker mode activated.

Added examples

Examples:
 To verify the data replicated from TestTable for a 1 hour window with peer #5
 $ hbase org.apache.hadoop.hbase.mapreduce.replication.VerifyReplication --starttime=1265875194289 --endtime=1265878794289 5 TestTable

 To verify the data in TestTable between the cluster runs VerifyReplication and cluster-b
 Assume quorum address for cluster-b is cluster-b-1.example.com,cluster-b-2.example.com,cluster-b-3.example.com:2181:/cluster-b
 $ hbase org.apache.hadoop.hbase.mapreduce.replication.VerifyReplication \
     cluster-b-1.example.com,cluster-b-2.example.com,cluster-b-3.example.com:2181:/cluster-b \
     TestTable

 To verify the data in TestTable between the secured cluster runs VerifyReplication and insecure cluster-b
 $ hbase org.apache.hadoop.hbase.mapreduce.replication.VerifyReplication \
     -D verifyrep.peer.hbase.security.authentication=simple \
     cluster-b-1.example.com,cluster-b-2.example.com,cluster-b-3.example.com:2181:/cluster-b \
     TestTable

 To verify the data in TestTable between the secured cluster runs VerifyReplication and secured cluster-b
 Assume cluster-b uses different kerberos principal, cluster-b/_HOST@E, for master and regionserver kerberos principal from another cluster
 $ hbase org.apache.hadoop.hbase.mapreduce.replication.VerifyReplication \
     -D<EMAIL_ADDRESS>\
     -D<EMAIL_ADDRESS>\
     cluster-b-1.example.com,cluster-b-2.example.com,cluster-b-3.example.com:2181:/cluster-b \
     TestTable

 To verify the data in TestTable between the insecure cluster runs VerifyReplication and secured cluster-b
 $ hbase org.apache.hadoop.hbase.mapreduce.replication.VerifyReplication \
     -D verifyrep.peer.hbase.security.authentication=kerberos \
     -D<EMAIL_ADDRESS>\
     -D<EMAIL_ADDRESS>\
     cluster-b-1.example.com,cluster-b-2.example.com,cluster-b-3.example.com:2181:/cluster-b \
     TestTable

:confetti_ball: +1 overall

Vote
Subsystem
Runtime
Comment

+0 :ok:
reexec
0m 26s
Docker mode activated.

-0 :warning:
yetus
0m  3s
Unprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --whitespace-eol-ignore-list --whitespace-tabs-ignore-list --quick-hadoopcheck

_ Prechecks _

_ master Compile Tests _

+1 :green_heart:
mvninstall
4m 32s
master passed

+1 :green_heart:
compile
0m 28s
master passed

+1 :green_heart:
shadedjars
8m 12s
branch has no errors when building our shaded downstream artifacts.

+1 :green_heart:
javadoc
0m 24s
master passed

_ Patch Compile Tests _

+1 :green_heart:
mvninstall
4m 16s
the patch passed

+1 :green_heart:
compile
0m 29s
the patch passed

+1 :green_heart:
javac
0m 29s
the patch passed

+1 :green_heart:
shadedjars
8m 12s
patch has no errors when building our shaded downstream artifacts.

+1 :green_heart:
javadoc
0m 21s
the patch passed

_ Other Tests _

+1 :green_heart:
unit
9m 57s
hbase-mapreduce in the patch passed.

38m 37s

Subsystem
Report/Notes

Docker
ClientAPI=1.41 ServerAPI=1.41 base: https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3591/3/artifact/yetus-jdk11-hadoop3-check/output/Dockerfile

GITHUB PR
https://github.com/apache/hbase/pull/3591

Optional Tests
javac javadoc unit shadedjars compile

uname
Linux 681aaaf7b99d 4.15.0-136-generic #140-Ubuntu SMP Thu Jan 28 05:20:47 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/hbase-personality.sh

git revision
master / 33e15a261d

Default Java
AdoptOpenJDK-11.0.10+9

Test Results
https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3591/3/testReport/

Max. process+thread count
4660 (vs. ulimit of 30000)

modules
C: hbase-mapreduce U: hbase-mapreduce

Console output
https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3591/3/console

versions
git=2.17.1 maven=3.6.3

Powered by
Apache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.

:confetti_ball: +1 overall

Vote
Subsystem
Runtime
Comment

+0 :ok:
reexec
1m  7s
Docker mode activated.

_ Prechecks _

+1 :green_heart:
dupname
0m  0s
No case conflicting files found.

+1 :green_heart:
hbaseanti
0m  0s
Patch does not have any anti-patterns.

+1 :green_heart:
@author
0m  0s
The patch does not contain any @author tags.

_ master Compile Tests _

+1 :green_heart:
mvninstall
5m  8s
master passed

+1 :green_heart:
compile
1m  1s
master passed

+1 :green_heart:
checkstyle
0m 23s
master passed

+1 :green_heart:
spotbugs
1m  0s
master passed

_ Patch Compile Tests _

+1 :green_heart:
mvninstall
5m  1s
the patch passed

+1 :green_heart:
compile
0m 51s
the patch passed

+1 :green_heart:
javac
0m 51s
the patch passed

-0 :warning:
checkstyle
0m 22s
hbase-mapreduce: The patch generated 10 new + 8 unchanged - 0 fixed = 18 total (was 8)

+1 :green_heart:
whitespace
0m  0s
The patch has no whitespace issues.

+1 :green_heart:
xml
0m  1s
The patch has no ill-formed XML file.

+1 :green_heart:
hadoopcheck
24m 39s
Patch does not cause any errors with Hadoop 3.1.2 3.2.1 3.3.0.

+1 :green_heart:
spotbugs
1m  9s
the patch passed

_ Other Tests _

+1 :green_heart:
asflicense
0m 13s
The patch does not generate ASF License warnings.

51m 49s

Subsystem
Report/Notes

Docker
ClientAPI=1.41 ServerAPI=1.41 base: https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3591/5/artifact/yetus-general-check/output/Dockerfile

GITHUB PR
https://github.com/apache/hbase/pull/3591

Optional Tests
dupname asflicense javac hadoopcheck xml compile spotbugs hbaseanti checkstyle

uname
Linux 5f5f5217e9aa 4.15.0-143-generic #147-Ubuntu SMP Wed Apr 14 16:10:11 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/hbase-personality.sh

git revision
master / c8d9d4df80

Default Java
AdoptOpenJDK-1.8.0_282-b08

checkstyle
https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3591/5/artifact/yetus-general-check/output/diff-checkstyle-hbase-mapreduce.txt

Max. process+thread count
86 (vs. ulimit of 30000)

modules
C: hbase-mapreduce U: hbase-mapreduce

Console output
https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3591/5/console

versions
git=2.17.1 maven=3.6.3 spotbugs=4.2.2

Powered by
Apache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.

:confetti_ball: +1 overall

Vote
Subsystem
Runtime
Comment

+0 :ok:
reexec
0m 26s
Docker mode activated.

-0 :warning:
yetus
0m  3s
Unprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --whitespace-eol-ignore-list --whitespace-tabs-ignore-list --quick-hadoopcheck

_ Prechecks _

_ master Compile Tests _

+1 :green_heart:
mvninstall
4m 16s
master passed

+1 :green_heart:
compile
0m 29s
master passed

+1 :green_heart:
shadedjars
8m  4s
branch has no errors when building our shaded downstream artifacts.

+1 :green_heart:
javadoc
0m 21s
master passed

_ Patch Compile Tests _

+1 :green_heart:
mvninstall
4m 19s
the patch passed

+1 :green_heart:
compile
0m 29s
the patch passed

+1 :green_heart:
javac
0m 29s
the patch passed

+1 :green_heart:
shadedjars
8m  9s
patch has no errors when building our shaded downstream artifacts.

+1 :green_heart:
javadoc
0m 22s
the patch passed

_ Other Tests _

+1 :green_heart:
unit
10m 44s
hbase-mapreduce in the patch passed.

38m 42s

Subsystem
Report/Notes

Docker
ClientAPI=1.41 ServerAPI=1.41 base: https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3591/6/artifact/yetus-jdk11-hadoop3-check/output/Dockerfile

GITHUB PR
https://github.com/apache/hbase/pull/3591

Optional Tests
javac javadoc unit shadedjars compile

uname
Linux 529bae00b77e 4.15.0-58-generic #64-Ubuntu SMP Tue Aug 6 11:12:41 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/hbase-personality.sh

git revision
master / c8d9d4df80

Default Java
AdoptOpenJDK-11.0.10+9

Test Results
https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3591/6/testReport/

Max. process+thread count
3736 (vs. ulimit of 30000)

modules
C: hbase-mapreduce U: hbase-mapreduce

Console output
https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-3591/6/console

versions
git=2.17.1 maven=3.6.3

Powered by
Apache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.

:confetti_ball: +1 overall

Vote
Subsystem
Runtime
Comment

+0 :ok:
reexec
1m 11s
Docker mode activated.


Basket. Empty page appear on a second after adding an operation to the Basket.

Description

When user click on "Save to basket" empty page appears on a second
After save to basket - can't interact with elements on the page

Example
https://github.com/novasamatech/nova-spektr/assets/40560660/7c78d61d-2f4b-4e5f-9141-178ad3e13e10

Environment
https://github.com/novasamatech/nova-spektr/commit/36f0e025b9dca5cdf7db66b521f9200584f39813

Status verification: ❌
What has been verified:

Assets page ✅
Staking page ❌
Appears empty state for a moment on staking page:
https://github.com/novasamatech/nova-spektr/assets/40560660/ba570d3d-840d-41b0-8e85-02c7c9cf36e2
Interact with elements on the page ✅

Status verification: ✅


Implement GeoTIFF exporter

Some users have expressed their interest to read the pysteps output in GeoTIFF format. This is because GeoTIFF is the standard format for GIS applications (e.g. QGIS). Being able to easily import pysteps output into GIS applications would be especially helpful for visualization purposes.

@pulkkins You might not want to pull in wradlib as a dependency, but maybe your users (eg. me) already have it installed. Then you might get some inspiration from this wradlib-notebook. This uses GDAL as another big dependency (which QGIS normally also have installed). It can output to all available GDAL raster formats.

PR #118 closes this issue.

Does somebody know that, how can I import fmi_geotiff dataset? when I use "fmi" it uses the pgm. but how can use geotiff dataset?


Try to add cpp files for a reinforcement learning examples

This pull request tries to make reinforcement learning examples run without the need for cpp notebooks.
I am not sure if this should work, it is only an attempt to reach a working example on my machine.
@zoq I might need your help in understanding what is happening, or do I need to install the server directly on my machine.
This example compiles successfully.
I have copied the entire cpp directory from the gym_tcp_api environment,  I was not able to install the gym_tcp_api since there is not installing target.

You don't necessarily need to run your own instance of the server, you can use gym.kurg.org. https://github.com/zoq/gym_tcp_api/tree/master/cpp is header only, so no need to build it, you just have to link against pjson to encode the json messages. https://github.com/zoq/gym_tcp_api/blob/master/cpp/CMakeLists.txt should be helpful, happy to clarify anything further.

@zoq, Exactly all of that was completely clear, I was able to build the example perfectly, the only issue was the server, I was not able to connect to it.

@zoq To clarify better,  I did not receive any message or error from the server-side, so it was either blocking or training.

@zoq Actually it was training, We need to print a small cout telling this. I am not sure of the code yet, maybe we can use the callbacks.
I also got the video at the end, so I think I am going to continue will all examples tomorrow.
Do you think I have to include the headers in the repository here? otherwise, it would be complicated for users to know where the Environment is coming from.

Do you think I have to include the headers in the repository here? otherwise, it would be complicated for users to know where the Environment is coming from.

Agreed, either we include the header here or download the latest version, I think either works.

@zoq I will do the above modification as you have mentioned. I will add the repository gym in the RL repository.

In the meanwhile, I will convert it into a draft in order to finish it then we can review it.

@zoq I will do the above modification as you have mentioned. I will add the repository gym in the RL repository.

In the meanwhile, I will convert it into a draft in order to finish it then we can review it.

Sounds like a good plan.

@zoq  I think this pull request is ready for review.

@shrit should we merge this in?

Yes, you can merge this one

Super excited about this, thanks for putting this together.


EAS build fails - android ( tested on both sdk 44 and sdk 43 )

Build/Submit details page URL
https://expo.dev/accounts/shirotp0ison/projects/employee-self-service/builds/719451c8-f61f-4eeb-bab4-5d70b89bc5b9
Summary
EAS build failing to produce android apk .
I think it has something to do with "https://jcenter.bintray.com" not being available. Because It was working on my project last week.
I even tested it on fresh expo init
build : https://expo.dev/accounts/shirotp0ison/projects/employee-self-service/builds/719451c8-f61f-4eeb-bab4-5d70b89bc5b9
Managed or bare?
managed
Environment
Expo CLI 5.0.3 environment info:
System:
OS: Windows 10 10.0.22000
Binaries:
Node: 14.18.1 - C:\Program Files\nodejs\node.EXE
npm: 6.14.15 - C:\Program Files\nodejs\npm.CMD
Watchman: 20210110.135312.0 - C:\ProgramData\chocolatey\bin\watchman.EXE
IDEs:
Android Studio: Version 2<IP_ADDRESS> AI-203.7717.56.2031.7784292
npmPackages:
expo: ^44.0.0 => 44.0.5
react: 17.0.1 => 17.0.1
react-dom: 17.0.1 => 17.0.1
react-native: 0.64.3 => 0.64.3
react-native-web: 0.17.1 => 0.17.1
Expo Workflow: managed
Error output
[stderr] FAILURE: Build failed with an exception.
[stderr] * What went wrong:
[stderr] Could not determine the dependencies of task ':app:lintVitalRelease'.
[stderr] > Could not resolve all artifacts for configuration ':app:debugRuntimeClasspath'.
[stderr] > Could not resolve org.webkit:android-jsc:+.
[stderr] Required by:
[stderr] project :app
[stderr] > Failed to list versions for org.webkit:android-jsc.
[stderr] > Unable to load Maven meta-data from https://jcenter.bintray.com/org/webkit/android-jsc/maven-metadata.xml.
[stderr] > Could not get resource 'https://jcenter.bintray.com/org/webkit/android-jsc/maven-metadata.xml'.
[stderr] > Could not GET 'https://jcenter.bintray.com/org/webkit/android-jsc/maven-metadata.xml'.
[stderr] > Read timed out
Reproducible demo or steps to reproduce from a blank project
I even tested it on fresh expo init -> eas build:configure -> eas build

Hey,
Thanks for reporting. This is not a problem with EAS Build itself but like you mentioned with the upstream dependency - jCenter. I'm aware that in the managed workflow you don't have control over which Maven repositories are used. However, we have deployed a fix for this to bypass jCenter if it's used in a project. At the same time, we're working on not relying on jCenter in Expo modules. I'm closing this issue for now. If you ever encounter a problem with jCenter again, please see https://status.expo.dev/


Get kubeapps.com to work with network nodes

Done on branch development_vdc_kubeapps

we deployed kubeapps on our gird
we used kubeapps to install MySQL chart and it worked great

we are using the latest version of kubernetes so it is not totally compatible with all the charts in the kubeapps

Verified

Success Deployment

Kubeapp

Verified

Success Deployment

Kubeapp


BACKLOG-22955 : Create daemon threads for CarteStatusCache

Use daemon threads to avoid blocking shutdown. Switching the thread launched to be daemon otherwise it blocks the pentaho server shutdown. Also naming the thread created with class name to make tracking of threads easy
Testing : tested with QAT-352. Replaced kettle-engine jar and verified that the server stops and process goes away.
@pentaho/rogueone @pamval @kcruzada @dkincade

Build Completed
:x: This pull request has errors. They will need to be addressed before it can be accepted. See below for more details. Some links are also available below for further assistance in addressing those issues.
Build Commands
mvn -B -fn -f 'pom.xml' -pl 'engine' -P '!assemblies' -Dsurefire.runOrder=alphabetical -Daudit -amd clean install

Cleanup Commands
mvn -B -f 'pom.xml' -pl 'engine' -P '!assemblies' -amd build-helper:remove-project-artifact

Changed files
  engine/src/main/java/org/pentaho/di/www/cache/CarteStatusCache.java

Unit Test Coverage
These statistics help you identify how your changes have affected the coverage of the following files. If a file is not in this list, then its coverage was not affected by your changes. To get some help interpreting these metrics, please refer to Jacoco's documentation.

:warning: Coverage Changes (click to expand)
org.pentaho.di.job.entries.evalfilesmetrics.JobEntryEvalFilesMetrics

Branch Change: -0.4% :small_red_triangle_down:
Complexity Change: -0.5% :small_red_triangle_down:
Instruction Change: -0.1% :small_red_triangle_down:

org.pentaho.di.job.entries.getpop.MailConnectionMeta

Branch Change: -1% :small_red_triangle_down:
Complexity Change: -1.5% :small_red_triangle_down:
Instruction Change: -0.3% :small_red_triangle_down:

org.pentaho.di.job.entries.sql.JobEntrySQL

Instruction Change: -3.4% :small_red_triangle_down:
Line Change: -3.8% :small_red_triangle_down:

org.pentaho.di.trans.steps.csvinput.CsvInputMeta

Instruction Change: -0.1% :small_red_triangle_down:

org.pentaho.di.trans.steps.dbproc.DBProcMeta

Instruction Change: -0.1% :small_red_triangle_down:

org.pentaho.di.trans.steps.ldapoutput.LDAPOutputMeta

Instruction Change: -0.1% :small_red_triangle_down:

org.pentaho.di.trans.steps.memgroupby.MemoryGroupByMeta

Branch Change: -3.3% :small_red_triangle_down:
Complexity Change: -3.9% :small_red_triangle_down:

org.pentaho.di.trans.steps.sort.SortRowsMeta

Instruction Change: -0.1% :small_red_triangle_down:

org.pentaho.di.trans.steps.symmetriccrypto.symmetriccryptotrans.SymmetricCryptoTransMeta

Branch Change: -3.3% :small_red_triangle_down:
Complexity Change: -1.8% :small_red_triangle_down:
Instruction Change: -0.3% :small_red_triangle_down:

org.pentaho.di.trans.steps.tableoutput.TableOutputMeta

Branch Change: -0.9% :small_red_triangle_down:
Complexity Change: -0.8% :small_red_triangle_down:

org.pentaho.di.trans.steps.salesforceupsert.SalesforceUpsertMeta

Instruction Change: -0.1% :small_red_triangle_down:

License header violations

:heavy_exclamation_mark: Copyright year is not the current year on engine/src/main/java/org/pentaho/di/www/cache/CarteStatusCache.java. Found 2017. Was expecting 2018

Checkstyle violations
The code submitted is not complying with one or more of our guidelines. To perform these checks locally, please use this tool.
/home/buildguy/project/engine/src/main/java/org/pentaho/di/www/cache/CarteStatusCache.java

:heavy_exclamation_mark: '(' is not followed by whitespace. at Line: 52 Column: 31

:heavy_exclamation_mark: ')' is not preceded with whitespace. at Line: 52 Column: 41

:heavy_exclamation_mark: '(' is not followed by whitespace. at Line: 53 Column: 63

:heavy_exclamation_mark: ')' is not preceded with whitespace. at Line: 53 Column: 64

:heavy_exclamation_mark: '(' is not followed by whitespace. at Line: 54 Column: 21

:heavy_exclamation_mark: ')' is not preceded with whitespace. at Line: 54 Column: 25

:heavy_exclamation_mark: ')' is not preceded with whitespace. at Line: 55 Column: 58

:heavy_exclamation_mark: ')' is not preceded with whitespace. at Line: 58 Column: 6

Corrected Copyright year, checkStyle errors and did force push.

Build Completed
:fire: This pull request has some issues. It would be preferable to fix them in order for it to be just perfect. See below for more details. Some links are also available below for further assistance in addressing those issues.
Build Commands
mvn -B -fn -f 'pom.xml' -pl 'engine' -P '!assemblies' -Dsurefire.runOrder=alphabetical -Daudit -amd clean install

Cleanup Commands
mvn -B -f 'pom.xml' -pl 'engine' -P '!assemblies' -amd build-helper:remove-project-artifact

Changed files
  engine/src/main/java/org/pentaho/di/www/cache/CarteStatusCache.java

Unit Test Coverage
These statistics help you identify how your changes have affected the coverage of the following files. If a file is not in this list, then its coverage was not affected by your changes. To get some help interpreting these metrics, please refer to Jacoco's documentation.

:warning: Coverage Changes (click to expand)
org.pentaho.di.job.entries.evalfilesmetrics.JobEntryEvalFilesMetrics

Branch Change: -0.8% :small_red_triangle_down:
Complexity Change: -1% :small_red_triangle_down:
Instruction Change: -0.2% :small_red_triangle_down:

org.pentaho.di.trans.steps.dbproc.DBProcMeta

Instruction Change: -0.1% :small_red_triangle_down:

org.pentaho.di.trans.steps.dimensionlookup.DimensionLookupMeta

Method Change: -1% :small_red_triangle_down:

org.pentaho.di.trans.steps.excelwriter.ExcelWriterStepMeta

Branch Change: -1.3% :small_red_triangle_down:
Complexity Change: -0.7% :small_red_triangle_down:

org.pentaho.di.trans.steps.singlethreader.SingleThreaderMeta

Instruction Change: -0.1% :small_red_triangle_down:

org.pentaho.di.trans.steps.webservices.WebServiceMeta

Branch Change: -1.7% :small_red_triangle_down:
Complexity Change: -1.2% :small_red_triangle_down:
Instruction Change: -0.1% :small_red_triangle_down:

org.pentaho.di.trans.steps.salesforceupsert.SalesforceUpsertMeta

Instruction Change: -0.1% :small_red_triangle_down:

The coverage change warnings are for other classes not changed in this PR.


Correct way of connecting to redis cluster

I have a redis cluster with sentinel flow with one master and 2 slaves running on kubernetes
Pods
rediscluster-node-0           2/2     Running   0          14d
rediscluster-node-1           2/2     Running   0          14d
rediscluster-node-2           2/2     Running   0          14d
Service
rediscluster            ClusterIP   --.--.--.---            6379/TCP,26379/TCP   14d
rediscluster-headless   ClusterIP   None                     6379/TCP,26379/TCP   14d
when I connect to the cluster using service "rediscluster",  and when I try writing some json data to redis cluster, the flow is not going in the correct way. Basically whenever there are any write operations to cluster those should be done from master node and read operations through any of the master/slave nodes. But in my case the write operations are also happening through slave nodes.
Here is how I was connecting to cluster and inserting data using this library.
var provider = new RedisConnectionProvider("rediscluster");
var data= provider.RedisCollection<Data>();
 data.Insert(new Data{name: "name1"});

My question here is, is there any parameter to pass to specify master node, so that the write operations should only be done from master node ?

Found the solution for my issue.
If we are using sentinel flow then we need to specify the master service name in the connection string in order to connect to master for write operations. In my case the service name is my-master. Once I add that every thing is working expected. Thanks.
var connection = ConnectionMultiplexer.Connect("localhost:6379,serviceName=my-master,AllowAdmin=true");
provider = new RedisConnectionProvider(connection);

Just a heads a heads-up @shankar369, if this is redis sentinel (which is different from Redis Cluster), you need to connect to a sentinel rather than a primary, those sentinels are typically on port 26379, that will allow the client to understand the topography of the sentinel deployment, and handle failovers when they happen

@slorello89, that makes sense. Thanks :)


update johen==0.1.2

Sure, I'll push a version that supports 3.10, thanks!

it appears to be a ~zero star

It has >=1 star :o)


Updated README

-1
Why delete useful information from the README? It's easier to read here that to look into the code and find the information

Tommy. What has been removed either duplicates information available via the "-help" flag, or is obvious, or is standard expected behaviour that we don't want to copy into every single README.
What do others think? I prefer minimal, concise, specific, correct, up-to-date  README.  If it's not minimal, it tends not to always be correct or up-to-date.

+1
less tldr, more rtfm

I agree that the READMEs shouldn't duplicate standard information, but in this case it's not standard (also, not all conventions are documented in a central location). The __health is standard, but I would also expect a __gtg for the aggregate healthcheck, for example.
If the README didn't contain the __ping endpoint I wouldn't have known it exists without looking in the code.
The default values are also useful to have in the README, again to avoid always looking in the code.
An alternative to making the README too large is to document stuff in the code and then let services like godoc expose them, for example: https://godoc.org/github.com/Financial-Times/message-queue-gonsumer/consumer
This is empty: https://godoc.org/github.com/Financial-Times/subjects-rw-neo4j, but the subjects package is ok: https://godoc.org/github.com/Financial-Times/subjects-rw-neo4j/subjects.

+1 for prefering godoc to README.md where it makes sense, and pointing to godoc from the README.md

I think this is not relevant anymore, I'll close it


[Bug]: NOK : mint limit exceeded on polygon

Version

[X] Yes

General Question

[X] No

What happened?
A bug happened!
What have you tried?
I Googled and asked the community in the discord server but could not find a solution.
Relevant log output
No response
Protect your information

[X] I Agree

I ran into the same issue.  It is unclear where the problem lies.   Is it a NFTPort limitation?
I read that all of the NFTs should be minted in 1 call.  Is that correct?  The codes seems to make 10k calls if there are 10k NFTs in the collection.


Swift 4 support

I have added Swift 4 support.

Thanks for the contribution, this PR will be left on hold until Swift 4 becomes official and out of beta.

@metochu so it has been released. Can you please merge this PR?

Hello, due to the lack of full Swift 4 support for all targets (the iOS/Mac framework and their demo apps), I've added Swift 4 support manually in b5c86bc now. This PR will now be closed.


FINN examples : Build ResNet50

Prerequisites
Please make sure to check off these prerequisites before submitting a bug report.

[*] Test that the bug appears on the current version of the dev-branch. Make sure to include the commit hash of the commit you checked out.
[ ] Check that the issue hasn't already been reported, by checking the currently open issues.
[ ] If there are steps to reproduce the problem, make sure to write them down below.
[ ] If relevant, please include the ONNX files, which were created directly before and/or after the bug.

Quick summary
Please give a brief and concise description of the bug.
When I rebuild resnet50 example on FINN compiler, some errors happened on step 9 (Details in figure). Pls help me to fix it, thanks.
Details
Please add to the following sections to describe the bug as accurately as possible.
Steps to Reproduce
Add what needs to be done to reproduce the bug. Add code examples where useful
and make sure to include the resulting ONNX files, and the commit hash you are working on.

Clone the FINN repositoryOK
Checkout the dev branch, with commit hash: [.ok]
Start the docker container with the command: [ok]
Run transformation [ok] on ONNX file [ok] or run the dataflow builder with the following settings: [...]
[Further steps ...]

Expected behavior
Please add a brief description of what you expected to happen.
Generate whole Resnet50 ip
Actual behavior
Describe what actually happens instead.

Optional
Possible fix
If you already know where the issue stems from, or you have a hint please let us know.
Additional context
Add any other context about the problem here.

Make sure 64GB RAM u have


Fixed issue with rounding coordinates

Coordinates should be rounded before calculating the offset

Check Google's polyline tool for [[0, 0.000006], [0, 0.000002]]. The encoded polyline should be ?A?@, but this library returns ?A??

@jfirebaugh Any chance this can get merged please?

@tmcw Can you take a look? I'm backed up on other commitments.

Yep, looking into it now

Well, I wrote an pretty cool test suite that compared the two javascript, python, and ruby, modules against authoritative results and confirmed this issue and also identified issues in several other libraries. And then I deleted it accidentally.
So I'm going to merge this and take a walk.

@tmcw Thanks! Any chance the issues you noticed were present in https://github.com/frederickjansen/polyline? I maintain that library, so I'd like to keep it bug-free.

Yes, there was a discrepancy where that library generated more points for the same line as Google. I'll redo the work at some point but am pretty discouraged.

No worries, now I know and can do some research myself.


Support for Lenovo Mirage Solo

Since the Lenovo Morage Solo is deprecated it's one of the more affordable VR headsets. I know that Trinus VR do support the device, but I do wonder why ALVR won't support it.

Agreed, we need support for this. Specwise the Lenovo Mirage Solo is almost identical to the quest, only the room scale tracking works a bit different and it doesn't have it's own 6DoF controllers. Saw it on sale for 99€ today.

I'm really interested in this, too. The mirage is much better than the Oculus go for around 100€. If the support is there I consider buying one.
Can someone give some feedback wether or not there will be support added?
Greetings!


[FEATURE] Standardising the Dexios Header Sizes

In the next major release of Dexios, I think headers should be standardised to 48 (or 64) bytes at the start of the file. This would be able to account for the 16 byte salt, and the (current) max nonce length of 24 bytes, with room to spare.
The header would then be padded with random bytes/zeroes until it reaches that 48 byte length. This would mean there is no risk of data loss when stripping/dumping the headers, as the start of the encrypted data would always be after the 48 byte header.
We could possibly use these extra bytes to store information about the cipher and mode used (e.g. XChaCha20-Poly1305/AES-256-GCM and memory/stream modes). This would remove the need for the user to even care about what mode their file was encrypted with, and Dexios would be able to detect it automatically.
This would break compatibility with older files, so the major version would have to be incremented, in order to adhere to semantic versioning.

@Rust-Galt do you think this is worth it?
I feel as though it is, but I'm hesitant on bumping up to v8.0.0 just for this feature.
It would make everything a lot more user-friendly as they wouldn't have to specify -m or -s in header functions, or for decrypting.

I think a header size of 64 bytes would work best.
2 bytes can be allocated towards denoting the encryption algorithm (such as XChaCha20-Poly1305)
2 bytes can be allocated towards denoting the mode that it was encrypted in (stream/memory)
16 bytes of that can be salt, with room to expand.
Our current max nonce size is for XChaCha20-Poly1305 in memory mode, at 24 bytes
This brings us up to 44 bytes, with 20 to spare. I feel as though this is a good trade-off between header size and room to expand - we don't need to allocate ourselves too much data.
I think we should have one standard function for reading headers. It should take in an &mut File

It will read the first two bytes, and get the encryption algorithm
It will read the next two bytes, and get the encryption mode
It will read the next 16 bytes, and get the salt
It will read the next 16 bytes, and discard them as they should be zeroes
It will finally read the last X bytes, depending on encryption mode/algorithm
It should read enough extra bytes to make the file handle seek to 64 bytes, no matter the nonce length

I'm not too sure about the extra empty space - maybe we could start using a 32-byte salt? I don't see what benefits that would provide us though.
I don't think there's any AEAD that we could implement which requires larger than a 24 byte nonce, so that shouldn't be an issue.

I think we should have one standard function for reading headers. It should take in an &mut File

This would allow for us to pass a detached header file directly, too.
We would also need a standard function that takes an &mut File and writes a header to it - it would also need to take information such as encryption mode/algorithm, and stuff like that.
Maybe even another function could handle serialisation/deserialisation of those types, so they're all in one place and can easily be expanded upon. I quite like the idea of hex.
I think there should be a switch for encrypting a file with a detached header, such as --detached file.header.
This will write the header to the specified file. It will then write 64 empty bytes + the encrypted data to the output file. The user would be required to provide that detached header on decryption, as there would be no header information for Dexios to read otherwise.
If we keep 64 bytes spare at the start of the file, empty or not, the user has the room to restore the header at will.
Dexios encrypted information should always start after the first 64 bytes of the file, imo. It keeps everything standardised.

I've started working on a decent implementation - I have left out argon2 parameters though, I honestly don't know enough about them.
I do like the idea of a header/app_version prefix - I've placed all of the header functions in one place so this should be fairly easy to add.

I quite like the idea of hex.

I was referring to using hex bytes to identify, e.g. [0x0E, 0x01] - 0x0E being encryption algorithm and 0x01 being XChaCha20-Poly1305.
My plan wasn't to implement support for encrypting with a detached header, but instead detaching it from the file during encryption (padding the start of the file with 64 empty bytes instead). For users who plan to strip their header and store it elsewhere, it could've been useful, but strip just provides that functionality anyway.
I'll implement versioning within the header once I've finished this - I'm moving both encrypt modes over to use the new header functions, and I'm rewriting memory mode because I'm not happy with how I had the function structured.


WSL2 won't boot up again after adding new user

Version
10.0.22621.1
WSL Version

[X] WSL 2
[ ] WSL 1

Kernel Version
<IP_ADDRESS>
Distro Version
Debian 11
Other Software
No response
Repro Steps
Add a new user to the distro with adduser newuser
Reboot Windows
Try to start wsl
Expected Behavior
WSL would start up and display the prompt
Actual Behavior
WSL just gets stuck in the boot
Diagnostic Logs
.wslconfig is empty, no custom kernel.
All packages were up to date, everything was working fine.
I added the new user to connect my second github remote with a seperate user. Did some git stuff (git pull, git push), shutdown my pc, rebooted, wanted to continue working and wsl is just stuck at boot
WSL-Version: <IP_ADDRESS>
Kernelversion: <IP_ADDRESS>
WSLg-Version: 1.0.33
MSRDC-Version: 1.2.2924
Direct3D-Version: 1.601.0
Windows-Version: 10.0.22621.1

@VenRoot add debugConsole=true to your .wslconfig to get more feedback, and start WSL under a different user, like wsl -u root or the user that was previously working. If it recovers fix whatever issue is with the new user.

Very wird...
Added the debugConsole option
Tried wsl --system, didn't work properly but the debug showed up
Tried again with just wsl and now it suddenly works... logging me in in my default user
But that you, @elsaco
I'll reopen the issue once that happens again
Closes #8417