MovieClip update method is called by shared ticker

I am extending the MovieClip object so I can use an AssetManeger to autoload the frames of an MovieClip. After loading, my engine tries to call the update method of Pixi's MovieClip. I designed my code, that when there is an update method on an object, the super object (GameObject) tries to call the update methods on all children. But Pixi's movieclip uses the shared ticker to play and stop the movie clip. This means for me, that the movie clip will always play on load. I also found out that Pixi doesn't checks when the update method is called, that the movie is actually should play.
I believe this can be solved by adding an if statement in the update method:
if(this.playing) {
  // the rest of the update method
}

And my suggestion is to make the shared ticker an optional choice. Because when I make my own code structure, in this way, the update method is called by two tickers. I also tried to overwrite the play, stop and update methods, but with no results (jet).
Maybe somebody have some tips for me to solve this issue?
I fixed it with this code, but I believe this can be done beter.

define(["pixi", "core/AssetManager"], function (PIXI, AssetManager) {
    var MovieClip = function (assetId) {

        var mnr = AssetManager.get();
        var frames = [];

        var sprites = mnr.getAsset(assetId);
        for(var frameId in sprites) {
            var frame = [];
            frame['texture'] = PIXI.Texture.fromFrame(sprites[frameId].url);
            frame['time'] = 20;

            frames.push(frame);
        }
        PIXI.extras.MovieClip.call(this, frames);

        this.loop = false;

    }
    extend(MovieClip, PIXI.extras.MovieClip);

    MovieClip.prototype.play = function() {
        if(this.playing) {
            return;
        }

        this.playing = true;

    }

    MovieClip.prototype.stop = function() {
        if(!this.playing) {
            return;
        }

        this.playing = false;

    }

    MovieClip.prototype.update = function(delta) {
        if(this.playing) {
            this.super.update.call(this, delta);
        }

    }

    return MovieClip;

});

The PIXI docs show how to disable and/or manually update PIXI.ticker.shared. I'd also like a way to opt-out or unregister MovieClips from the shared ticker, but this could at least help you out in the meantime!

@Jorisslagter because PIXI is designed to be pretty much plug-n-play, the design of the shared ticker is intentional to be opt-out instead of opt-in. If you are have your own engine, and using PIXI as a base library, I would simply keep what you have as I think it's actually just fine for your use-case, or go with the suggestion from @AndyBarron and opt-out completely.
I would need to understand your engine a bit better to make a better suggestion. Right now I can only make an assumption that the term "GameObject" sounds similar to an entity system as Unity's, and most likely has a top-down approach. This is not how PIXI's MovieClip function because they're updates, as well as the InteractionManager's are intentionally kept separate from the render loop for the original reason to run at different speeds, and to be taken care of for most use cases. To understand move, might actually mean a better suggestion of the issue you describe, or maybe something else, like a different implementation, or digging into a more specific bug with PIXI's MovieClip that you are solving by extending it. I might suggest to just wrap the PIXI MovieClip object in your own component, where your component simply owns a PIXI MovieClip.
To opt-out completely, follow the suggestion above, but you will also need to keep in mind that you will need to call update for the InteractionManager if you are using it, potentially the new prepare plugin in PIXI v4, and MovieClip objects. It sounds like you are already calling MovieClip's update, but please keep in mind the others.
Actually looking at the new prepare plugin, it exposes a tick method that would need to be invoked, this breaks the pattern of update methods, so that might need to be addressed for people opting out of the shared ticker like this.

@GoodBoyDigital @englercj Can you shed some light on why MovieClips should even be implemented like this outside of the render loop? Is it just a legacy implementation, or is there a significant performance gain? I get why the InteractionManager is like this, but I can't currently think of a reason why the update method of a MovieClip couldn't be called from overridden _renderWebGL and _renderCanvas methods. Am I missing something obvious here?

I might be answering my own question here... the renderer itself does not provide timing information, so there would need to be an implementation of this in the MovieClip class if not consumer the ticker. Or the renderer would need gain another plugin to keep track of this.

@drkibitz We wanted MovieClip to be time-based instead of frame-based.

Good shout!

This is a pretty big change, and since we are rewriting MovieClip in v5 (#3122) going to move this one to that milestone.


Backmerge release 3.31.0

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.005%) to 31.743%

Totals

Change from base Build<PHONE_NUMBER>:
0.005%

Covered Lines:
12935

Relevant Lines:
14638

💛  - Coveralls


dart/entrypoints/jit tests are overly sensitive to usage counters

These tests are disabled in https://dart-review.googlesource.com/c/sdk/+/102820 because of changes in the way the usage counter is incremented.

The CL which is up for review wants to dart/entrypoints/jit: Skip. This would make our checked/unchecked entrypoint functionality untested. It was introduced to bypass Dart 2.0 type checks on function entry if it's safe, which gave - as far as I've been told - significant performance improvements.
Can you elaborate why exactly they will be skipped and if there's a plan to enable them again?

I think we should just emit the unchecked calls in optimized and unoptimized code. I can't see a reason to not do it in unoptimized code.
This would make the tests completely insensitive to usage counters.

It turns out this requires updating all the IC stubs


fix(*) do not run non-needed code on roles that don't need them

Summary
This commit changes the code to check not run certain initialization on certain modes:
init phase

do not build router on control planes

init worker phase

do not execute cache warmup on control planes
do not start plugin servers on control planes
do not initialize balancer on control planes (also disables healthchecks)
do not start async router rebuild timer on control planes
do not start async plugin iterator rebuild timer on control planes
do not subscribe on events with dbless

The considerations and questions:

do not build router on control planes

I think that is rather safe.

do not execute cache warmup on control planes

It is a warmup, so I would say it is safe.

do not start plugin servers on control planes

Go plugins don't have init_worker phase AFAIK, so control planes don't need plugin servers. But do we need to start servers for validating plugin configurations?

do not initialize balancer on control planes (also disables healthchecks)

After that I am not sure how admin api endpoints would work, or do they work at all? But even if they work, does that reflect to dps anyway? Is there something that is needed in balancer so that we need to initialize it on control plane? @locao?

do not start async router rebuild timer on control planes

Control planes don't route traffic, so they don't need router.

do not start async plugin iterator rebuild timer on control planes

Control planes don't run request phase plugins, and init worker plugins. So I don't think they need to update plugin iterator. It is also debatable whether control planes should even run init_worker phase of the plugins, or is that only meant for data planes in hybrid?

do not subscribe on events with dbless

Is there reason the dbless nodes should subscribe to these cluster and or worker events which are mostly crud type of events triggered by admin action, while the dps themselves are read-only?

So, reviewers, please check above. For a patch release, should we comment something out for now?


[5.6] Remove timeout alarm while the job finished

This PR fixes the bug described below.
Queue work using POSIX alarm to walk timeout method when the job run timeout.
While, the alarm do not be remove when the job finished success.
So that, the alarm signal will be send while the job finished success.
As a result, when we use redis queue with blocking pop, after process blocked, the alarm will walk the timeout method and kill the queue worker.
// Error logic.
while (true) {
    if (! $this->daemonShouldRun($options, $connectionName, $queue)) {
        $this->pauseWorker($options, $lastRestart);

        continue;
    }

    $job = $this->getNextJob(
        $this->manager->connection($connectionName), $queue
    );

    if ($this->supportsAsyncSignals()) {
        // Register the timeout handler using alarm signal.
        $this->registerTimeoutHandler($job, $options);
    }

    if ($job) {
        $this->runJob($job, $connectionName, $options);
    } else {
        $this->sleep($options->sleep);
    }

    // The alarm is still clocking at this moment.

    $this->stopIfNecessary($options, $lastRestart);
}

'connections' => [
    'default' => [
        'driver'      => 'redis',
        'connection'  => 'default',
        'queue'       => 'default',
        'retry_after' => 60,
        'block_for'   => 5,
    ],
],

Renaming the registerTimeoutHandler method is a breaking change. Either keep the old name or target the master (5.7) branch.

@sisve This is a bug fix PR, so I think it must be merge to branch 5.6, and then, pick it to master branch.

@sisve I have reset the name of this method, just fix the bugs.

These changes cause several Horizon tests to break. I would be curious to know why and it makes me hesitant to merge this as-is right now. Can you try your changes while running the Horizon tests and then re-open when you know what is causing that breakage?


Add --serial flag to print serial value as NGSI Go version

Proposed changes
This PR adds --serial flag to print serial value as NGSI Go version.
Types of changes
What types of changes does your code introduce to the project: Put an x in the boxes that apply

[ ] Bugfix (non-breaking change which fixes an issue)
[X] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] Update only documentation, not any source code.

Checklist
Put an x in the boxes that apply. You can also fill these out after creating the PR. If you're unsure about any of
them, don't hesitate to ask. We're here to help! This is simply a reminder of what we are going to look for before
merging your code.

[X] I have read the CONTRIBUTING doc
[ ] I have signed the CLA
[X] I have added tests that prove my fix is effective or that my feature works
[ ] I have added necessary documentation (if appropriate)
[ ] Any dependent changes have been merged and published in downstream modules

Further comments
N/A

Coverage remained the same at 100.0% when pulling 3a8b8ccecbeea50510a72c8f26e78b45ce83d71d on fisuda:improve/ngsi_version into 33213d181d2eb942b80ee9847f2468ce1e948b7c on lets-fiware:main.


React Firebase 3 Issue!

Hi,
I keep getting this error with the new SDK whenever I call Firebase functions

Does the new SDK work on React?
Thank You!

@rsflow
It works for me, i had the same issue what i think you should do is
npm uninstall --save firebase and after that npm install --save fireabase
That worked for me, now i'm trying to fix some other reactifre issues, I hope it helps!

ReactFire has not yet been upgraded to the latest Firebase 3.x.x SDK. Please be patient while we get #91 reviewed, tested, merged, and deployed.

@chitopolo I did a clean install of all the modules but still didn't help. :(
Did you get the same error? I checked the Firebase object from the import Firebase from 'firebase' and it's empty. Then I searched in the main repo for any _firebase2.default but no results.
@jwngr Great news thank you :)

@rsflow have you followed all this steps? You should review it again, because I think you might missed something, maybe the error is on you firebase.initializeApp config.
@jwngr How long could it take?

i was having this problem trying out the new SDK for a React & Webpack setup and the only solution that worked with me was to make sure to import the browser version of the SDK as webpack was attempting to import the node version , using ES6 imports use this and it should work
import firebase from 'firebase/firebase-browser';
that of course regarding the SDK itself , React Fire doesn't work with it yet
hope that helps .

@moonman22 Wow thank you very much ... finally it works. :)
@chitopolo The solution @moonman22 gave worked. This issue is happening only to the react and webpack users.

@rsflow Your are welcome , glad i could help .


Does it support Windows Phone push service?

Hello nikiben,
thank you for your interest in Pushkin.
As Windows phone generally has a very low share of the market we did not implement support for Windows phone push service nor do we plan to do so.
Of course, you are more than welcome to contribute to Pushkin project on this matter and you will have our support if you choose to do so.
Regards


[How To]: Tour/Highlight on ul > li elements (Sidebar)

What happened?
Not really a bug,I would really want to show the tour on each of the sidebars' navigation item.They all have the class .fi-sidebar-item , how do i access each of  this elements in the Step::make() method? E.g suppose i have three nav items posts , category , sales . If i want to show a tour for all of them one after the other alongside there relevant description, how do i select each element ?
How to reproduce the bug
Try to select the nav items from their  Step::make() method.
Package Version
3.1
PHP Version
8.2
Laravel Version
10
Which operating systems does with happen with?
Linux
Notes
No response

According you always have the "Dashboard" Sidebar item.
The following code gonna work:
Step::make('li.fi-sidebar-item:nth-of-type(2)')->title('Posts'),

Step::make('li.fi-sidebar-item:nth-of-type(3)')->title('Categories'),

Step::make('li.fi-sidebar-item:nth-of-type(4)')->title('Sales')

Thank you .It works


Feature request: Stage channel support

The title says it all

Discord doesn't support activities (or video) in stage channels, there's nothing the bot can do about that


I get a error in creating lvm in linux

root@jky-UniServer-R5300-G3:/run/lock# lvcreate -n newlv -L 20m newvg
^C^C^C^C^C^C
when I was using lvcreate, the terminal seemed didn't work, ctrl +c can't stop this instruction, I worked on MobaXterm. Then I log in again, type lvs, it also didn't work, but ctrl + c can work, the output is
root@jky-UniServer-R5300-G3:/home/jky# lvs
^C  Interrupted...
Giving up waiting for lock.
Can't get lock for newvg
Cannot process volume group newvg
I search on the Internet, someone said open the file path /var/, click the file lock, then it converts to /run/lock/, in file path /run/lock, you can find a file path lvm, and delete it, I did that, and lvs can work
root@jky-UniServer-R5300-G3:/home/jky# cd /run/lock
root@jky-UniServer-R5300-G3:/run/lock# rm -rf lvm
root@jky-UniServer-R5300-G3:/run/lock# lvs
WARNING: Reading VG newvg from disk because lvmetad metadata is invalid.
LV    VG    Attr       LSize  Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
newlv newvg -wi-a----- 20.00m
but when using lvs, a warning occured, WARNING: Reading VG newvg from disk because lvmetad metadata is invalid.
I used lvdisplay to find LV Path:
root@jky-UniServer-R5300-G3:/run/lock# lvdisplay
--- Logical volume ---
LV Path                /dev/newvg/newlv
LV Name                newlv
VG Name                newvg
some information I didn't paste. Then I try to create a file system for /dev/newvg/newlv:
root@jky-UniServer-R5300-G3:/run/lock# mkfs.ext4 /dev/newvg/newlv
mke2fs 1.44.1 (24-Mar-2018)
The file /dev/newvg/newlv does not exist and no size was specified.
The output says the LV path didn't exist, but the output of lvscan means that LV PATH exists:
root@jky-UniServer-R5300-G3:/run/lock# lvscan
ACTIVE            '/dev/newvg/newlv' [20.00 MiB] inherit
When I use lvremove to delete /dev/newvg/newlv, it says newlv is successfully  removed, but the terminal MobaXterm didn't work again：
root@jky-UniServer-R5300-G3:/run/lock# lvremove /dev/newvg/newlv
Do you really want to remove and DISCARD active logical volume newvg/newlv? [y/n]: y
Logical volume "newlv" successfully removed
^C^C^C^C^C^C
I don't know how to solve this problem, is there anyone can help me?  Thank you in advance!

My English is not good, some sentences may have some errosr, I am sorry for that


Strip any whitespace from the LCSC field before calling the JLCPCB API

Currently the API call fails if there is any whitespace in there, which happens occasionally when copying and pasting LCSC number from a browser.

Where exactly do you paste the LCSC number?
I've just checked and the right click menu sanitizes the input ...

A combo - some were pasted into the BOM table view in Eescheema and some directly into the edit window of the components.
I just tested again and it doesn't clear whitespace on my build - Kicad 7.0 on Windows
--
Luke Reid
@.***
On Wed, Apr 19, 2023, at 6:11 PM, bouni wrote:

Where exactly do you paste the LCSC number?
I've just checked and the right click menu sanitizes the input ...
—
Reply to this email directly, view it on GitHub https://github.com/Bouni/kicad-jlcpcb-tools/issues/302#issuecomment-1514183565, or unsubscribe https://github.com/notifications/unsubscribe-auth/AACMG5DO337QUNYHJRGULVDXB562FANCNFSM6AAAAAAW5VW5ZE.
You are receiving this because you authored the thread.Message ID: @.***>


Nukies nerf

About the PR
Decreased base nukie TC from 250 to 225.
Increased bloodred suit, raid suit and elite tc cost (40 -> 50, 30 -> 50, 70 -> 75)
Decreased jug suit cost from 100 to 75.
Disabler SMG projectiles deals 4 ion damage (forgot to add this in ion damage PR)
Assault borg got flash protection (because it costs 375 tc)
Why / Balance
Nukies have too much TC after Duke Nukies update.
Calculations:

Changelog
:cl:

tweak: Syndicate borgs got flash protection.
tweak: Nuke ops now gain 225 TC instead of 250 TC. Increased price for all nukie armor.
fixed: Fixed disabler SMG dealt no Ion damage.

Summary by CodeRabbit
Release Notes

New Features

Introduced new damage type "Ion" for projectiles.
Added "FlashImmunity" to enhance cyborg resilience against flash effects.

Changes

Adjusted costs for several product bundles, including increases and decreases in Telecrystal values.
Updated configurations for Syndicate Operative gear, reducing telecrystal allocations and modifying related identifiers.

 They just won't have zillion spare TC when they can buy big guns and big armor.

mald pr bro close this

mald pr bro close this

When you proof my calculations wrong :trollface:

You could just change nukies TC to 240 and have a similar outcome, buying a blood red will leave them in the same position before the update
Or just increase the blood red and elite suit slightly
Reducing their overall TC is over tuned

There is no reason to bring nukies down to a worse economical position than they were in before the update if they just bought bloodreds

You could just change nukies TC to 240 and have a similar outcome, buying a blood red will leave them in the same position before the update
Or just increase the blood red and elite suit price slightly
Reducing their overall TC is over tuned

Calculations on screen. They still have more tc before update, they will have more tc if they buy any armor except blood red


Default resources

This is a start.  There is a small bug that the resource edit form sometimes pops up with default checked even though the resource isn't set as a default.  I wasn't able to test the code that should automatically add a user to all default resources so we can take that out if you want.

This fixes #49

When I was testing this out, i found a weird issue in the scheduler.
Seems like that just loops for a while tryiing to subscribe and publish to the MQTT broker.
I'll comment it out of the main branch and open an issue.
Just wanted you to be aware of it in case you run into that too.

Used @dfirebaugh's query. Switched over to isDefault and incorporated refactor updates.  Also figured out the problem with the checkbox.  Needed a ? in front.  Should be ready to go.


Disabling all selection in the calendar.

I can see that there are options to allow some dates or to block some dates from being selected. But is there an option (or some configuration of options) to block all dates from being selected?
When I pass empty array to setSelectableDays, all days are available for selection.

What's the point of having a picker when a user can't actually pick a date?
That said, you can implement your own DateRangeLimiter and do whatever you want if it isn't supported out of the box.

Yeah, I will be happy to implement my own, I just wanted to check with you if it's possible with your out of the box solution.
I think that there is a point in having such a functionality. In my case, I am allowing user to move around his notebook sorted by date. But the datepicker might be used as well. So in a state where the user made no notes yet the datepicker window will be inactive. Of course, you might just prevent the user from accessing datepicker when no dates are available, you are right.
Thanks for quick reply


Not able to copy cell value, maybe related to wayland?

I get an "xsel" "--clipboard": No such file or directory (os error 2) error attempting to copy a cell value with the y keybinding. I am using Sway (wayland based) window manager, which I think has a different clipboard manager interface. Any chance that is causing the issue?

Thanks for the report. I will investigate.


Missing "redefined without matching argument count" error for optional vs required keyword arg

Input
→ View on sorbet.run
# typed: strict

class A
  def foo(x:, y:)
  end
  def foo(x:, y: nil)
  end
end

Observed output
class <C <U <root>>> < <C <U Object>> ()
  class <S <C <U <root>>> $1>[<C <U <AttachedClass>>>] < <S <C <U Object>> $1> ()
    method <S <C <U <root>>> $1>#<N <U <static-init>> $156> (<blk>) @ Loc {file=-e start=3:1 end=8:4}
      argument <blk><block> @ Loc {file=-e start=??? end=???}
  class <C <U A>> < <C <U Object>> () @ Loc {file=-e start=3:1 end=3:8}
    method <C <U A>>#<M <U foo> $1> (x, y, <blk>) @ Loc {file=-e start=4:3 end=4:18}
      argument x<keyword> @ Loc {file=-e start=4:11 end=4:13}
      argument y<keyword> @ Loc {file=-e start=4:15 end=4:17}
      argument <blk><block> @ Loc {file=-e start=??? end=???}
    method <C <U A>>#<U foo> (x, y, <blk>) @ Loc {file=-e start=6:3 end=6:22}
      argument x<keyword> @ Loc {file=-e start=6:11 end=6:13}
      argument y<optional, keyword> @ Loc {file=-e start=6:15 end=6:17}
      argument <blk><block> @ Loc {file=-e start=??? end=???}
  class <S <C <U A>> $1>[<C <U <AttachedClass>>>] < <S <C <U Object>> $1> () @ Loc {file=-e start=3:1 end=3:8}
    type-member(+) <S <C <U A>> $1>::<C <U <AttachedClass>>> -> LambdaParam(<S <C <U A>> $1>::<C <U <AttachedClass>>>, lower=T.noreturn, upper=A) @ Loc {file=-e start=3:1 end=3:8}
    method <S <C <U A>> $1>#<U <static-init>> (<blk>) @ Loc {file=-e start=3:1 end=8:4}
      argument <blk><block> @ Loc {file=-e start=??? end=???}

editor.rb:6: The method foo does not have a sig https://srb.help/7017
     6 |  def foo(x:, y: nil)
          ^^^^^^^^^^^^^^^^^^^
  Autocorrect: Use -a to autocorrect
    editor.rb:6: Insert sig { params(x: T.untyped, y: T.untyped).returns(NilClass) }
     6 |  def foo(x:, y: nil)
          ^
    editor.rb:4: Insert extend T::Sig
     4 |  def foo(x:, y:)
        ^
Errors: 1

Expected behavior

Note how there is a <M ...> symbol in the symbol table, indicating that a method was mangle-renamed.
There is no corresponding error indicating to the user that this happened, even at # typed: strict (some of these method redefinition errors are silenced at # typed: false).

Having this error would have made it slightly more obvious what the problem was when incorrectly overriding initialize on a T::Struct subclass, like this. In that case, the mangle rename error was silenced, and the only indication that the user had done something wrong was that Sorbet no longer saw the name of the first initialize method as <U initialize> but rather as <M <U initialize> and then reported an error saying that the @foo instance variable was declared in the wrong place.

Note that the same bug seems to affect optional vs required positional arguments:
Input
→ View on sorbet.run
# typed: true

class A
  def self.foo(x, y); end
  def self.foo(x, y = nil); end
end

Observed output
class <C <U <root>>> < <C <U Object>> ()
  class <S <C <U <root>>> $1>[<C <U <AttachedClass>>>] < <S <C <U Object>> $1> ()
    method <S <C <U <root>>> $1>#<N <U <static-init>> $156> (<blk>) @ Loc {file=-e start=3:1 end=6:4}
      argument <blk><block> @ Loc {file=-e start=??? end=???}
  class <C <U A>> < <C <U Object>> () @ Loc {file=-e start=3:1 end=3:8}
  class <S <C <U A>> $1>[<C <U <AttachedClass>>>] < <S <C <U Object>> $1> () @ Loc {file=-e start=3:1 end=3:8}
    type-member(+) <S <C <U A>> $1>::<C <U <AttachedClass>>> -> LambdaParam(<S <C <U A>> $1>::<C <U <AttachedClass>>>, lower=T.noreturn, upper=A) @ Loc {file=-e start=3:1 end=3:8}
    method <S <C <U A>> $1>#<U <static-init>> (<blk>) @ Loc {file=-e start=3:1 end=6:4}
      argument <blk><block> @ Loc {file=-e start=??? end=???}
    method <S <C <U A>> $1>#<M <U foo> $1> (x, y, <blk>) @ Loc {file=-e start=4:3 end=4:21}
      argument x<> @ Loc {file=-e start=4:16 end=4:17}
      argument y<> @ Loc {file=-e start=4:19 end=4:20}
      argument <blk><block> @ Loc {file=-e start=??? end=???}
    method <S <C <U A>> $1>#<U foo> (x, y, <blk>) @ Loc {file=-e start=5:3 end=5:27}
      argument x<> @ Loc {file=-e start=5:16 end=5:17}
      argument y<optional> @ Loc {file=-e start=5:19 end=5:20}
      argument <blk><block> @ Loc {file=-e start=??? end=???}

No errors! Great job.

Expected behavior


a little thing but not bug in the code

Hi.I've been learning bplusTree recently and I found your code which has been great help for me.Thank you. But I met some problem  today in  the Node's dump() function。I list some lines below.
1     data = (
2           used_key_length.to_bytes(USED_VALUE_LENGTH_BYTES, ENDIAN) +
3          key_as_bytes +
4            bytes(self._tree_conf.key_size - used_key_length) +
5           used_value_length.to_bytes(USED_VALUE_LENGTH_BYTES, ENDIAN) +
6            value +
7            bytes(self._tree_conf.value_size - used_value_length) +
8           overflow_page.to_bytes(PAGE_REFERENCE_BYTES, ENDIAN)
9       )
you see, the to_bytes() has pointed out the length for representing the int(key_as_bytes), which means whatever the key is , it will cost fixed bytes(USED_VALUE_LENGTH_BYTES = 8), so i wonder that if  the  variant-> used_key_length is necessary or not. Maybe this is about overflow? i'm not sure about that.Hope for you reply : ）thank you.

It is true that whatever the actual size of the key is, it will end up using the same amount of space once on disk. But later when calling load it is important to know how much of this space is actually useful data (and not just filled with zeros).
I am closing this issue, but feel free to comment is something is not clear in my explanation.


Not working for Vue 2.X

Check your own demo:
http://codepen.io/BosNaufal/pen/BKLNLN
"- invalid expression: v-move-dom="#here""

Hey @tobeorla,
It's not compatible yet with Vue 2.X. :confused: I'm sorry~

+1 for Vue 2.X

I've created a quick and dirty move html directive that works for my own personal usecase in Vue 2. Feel free to use or build upon at your own peril!
Vue.directive('moveHtml', {
	inserted: function(el, binding) {
		document.getElementById(binding.value).appendChild(el);
	}
});

Component template:

Cya im off to a new parent

What a Great works @Kiee! :grin: :+1:
But, does it work with component?


Rename ITensorsBenchmarks to ITensorBenchmarks, new package UUID

@emstoudenmire heads up that I'm changing the package name to be more consistent with our other package names. I don't think anyone else is using this package so it shouldn't affect anyone besides us.


Fix method name in ScalaDoc

Current coverage is 79.94%

Merging #249 into master will increase coverage by +0.11% as of c0a04d7

Powered by Codecov. Updated on successful CI builds.

Thanks @fthomas! We really need to get sbt-doctest running on these eventually.

Agreed. Adding sbt-doctest would have been my first option if I had more time right now.


Disable warning for concat. This fixes #6715

Hello, thanks for working on this great framework. This is my first try to contribute to it.

[x] Tests added / passed
[x] Passes black dask / flake8 dask

@jcrist thanks for your suggestions, I've added in the following commit.

CI failure is unrelated. Merging.
Thanks @3cham!


Scoring rubric for submissions review

Rubric for scoring

Alignment with the conference themes (1 - not at all 5 - very)

Daily themes as well

Appropriate spread of sessions across subthemes

Relevance to the FORCE11 audiences (1 - not at all 3 - appeals to one audience?  5 - appeals to multiple audiences at FORCE11) - tag different potential audiences?
[or: score to which audience(s)? to gauge spread BK]

Researchers
Publishers
Technologists
Funders
Librarians
Communicators?
Citizens / CitSci
Advocates / activists - OA, OS, etc.

FORCE11 mission and goal alignment (spell out for reviewers - top topics) (1 - not at all 5 - very)

check overlap with fit with themes and subthemes - do we need this as separate criterion? [BK]

Novelty of topic (1 - done to death 5 - top of mind right now)

Creativity of format (1 - not at all 5 - very novel / interactive)

Presenter qualification on topics - not a product pitch, balance of views, products ideas etc

Potentially related submissions - List out other session numbers

Speaker diversity  - tag as newbie, regular etc

added from comments below:

Speaker diversity - also M/F/X, geographical area, role
Clarity of submission - is it clear what the presenter is planning to do during the session?

Re: speaker diversity: also M/F/X, geographical area, role

related to #101 Make review of submissions transparant

Clarity of the submission. Is it clear what the presenter is planning to do during the session?

I'd be happy to think of a way to organize scoring this in an online way based on the spreadsheet provided by Copernicus. We don't need to be limited by Excel :-)

Lou suggested turning the above into a one-pager as instruction for reviewers

After submission closes, can we make that scoring rubric public to promote transparancy?

Other issues to discuss:

who will act as reviewers? (all programme committee members, excepting scoring self-submissions?)
early August: scan submissions for breadth and decide on promotion and/or inviting specific people/groups to submit?

Hi everyone,
Here is a first attempt at the submission rubric. I'm certain that we will have things to discuss and that some things will need to change, but it's a start.
https://docs.google.com/spreadsheets/d/1HzvgZtbHDTkLHHr2qa0LFyyO4YuRn1DBjqB50I14amY/edit?usp=sharing

Updates made based on feedback during the call last week.
Talk to you all tomorrow.

How are we making this public?

I suggest we close this for now (together with #101), but make a note for next year.


Nested type: 'reference' Does not resolve when editing

Description
When editing a nested field with type: 'reference' it does not resolve to its data but instead has the id as its data.
Steps to reproduce
Have a schema.ts that looks something like this
import { defineSchema } from '@tinacms/cli';

export default defineSchema({
  collections: [
    {
      label: 'Blog Posts',
      name: 'posts',
      path: 'content/posts',
      fields: [
+        {
+          type: 'object',
+          name: 'asdf',
+          label: 'adsf',
+          list: true,
+          templates: [
+            {
+              name: 'template1',
+              label: 'template one',
+              fields: [
+                {
+                  name: 'author',
+                  label: 'Author',
+                  type: 'reference',
+                  collections: ['authors'],
+                },
+              ],
+            },
+          ],
+        },
// ...

      ],
    },
    {
      label: 'Authors',
      name: 'authors',
      path: 'content/authors',
      fields: [
        {
          type: 'string',
          label: 'Name',
          name: 'name',
        },
        {
          type: 'image',
          label: 'Avatar',
          name: 'avatar',
        },
      ],
    },
  ],
});

Expected result
When adding a new template "template one" it should resolve the author document like it does normally.
The data should look like this
"asdf": [
          {
            "__typename": "PostsAsdfTemplate1",
            "author": {
              "__typename": "AuthorsDocument",
              "data": {
                "name": "Logan Anderson",
                "avatar": "http://res.cloudinary.com/dvy3mawsb/image/upload/v1620171151/IMG_3988_iqa2nf.jpg"
              }
            }
          }
        ],

Actual result
We get this data
"asdf": [
          {
            "__typename": "PostsAsdfTemplate1",
            "author": 'content/authors/napolean.md'
        }
],

Environment
Tinacms Package Versions
"tinacms": "0.55.2"

A Quick update
I have been looking into this issue for a little bit and here is what I have found so far.
In the useGraphqlForms hook we are looking to see if an async update needs to happen. (AKA is it a reference field?) . We are looking at the paths object on the field to see if the current path is in the array of paths. Our field should be in the paths array but it is not.
The paths field is set on the backend here. Our field is not getting updated and I am unsure why. I played around with the code for a bit to no success.
The source code with this issue already presenting itself is here
cc: @jeffsee55

Hi guys, just following this. We're experiencing this on a client project right now and working on finding a solution. Tina has been really good to us, tho! @nikipotato @mystrdat


Backport pipeline from release-2.3 to release-2.2

Description

This are the changes needed to deploy the kubecf-release-2.2 pipeline, already flown:
https://concourse.suse.dev/teams/main/pipelines/kubecf-release-2.2
Motivation and Context

The pipeline definition from release-2.2 does not work anymore: needs kind & ECP, and concourse workers in the internal network, none of which are present now.
Backport the pipeline definiton from release-2.3 completely and add a new kubecf-release-2.2.yaml with correct config for branches, pr_base_branch, stable_jobs and experimental_jobs.
PR is ready, marking as draft for it not get merged by mistake.
How Has This Been Tested?

Yes, the pipeline is already flown.
Screenshots (if appropriate):
Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

[ ] My code has security implications.
[x] My code follows the code style of this project.
[x] My change requires a change to the documentation.
[x] I have updated the documentation accordingly. (the folder contains the updated readme)

Removing the draft from the PR; https://concourse.suse.dev/teams/main/pipelines/kubecf-release-2.2 works fine.
It even has green jobs for smokes-eirini, cats-diego, sits-diego, rotate-diego.


Painful development with docker

When I was developing in docker environment, I felt that the development was painful because the following issues:

Folders are copied when docker starts. So, any modification isn't  "on the fly"
Elm container ends after executing gulp for the first time
Jarbas container has the command to collectstatics after the update by elm container. So I had to execute the command manually every time that gulp executes

I haven't used Docker for dev in Jarbas yet, but the critique makes a lot of sense. Unfortunately as a newbie in Docker I'm not sure about the best strategy to address this issue — any idea @petriuslima?
Would #18 be the only possible solution?

Also in spite of the title of this issue the problem is developing in Elm (frontend) or also in Python (backend)? May I add "with Elm" to make the title clearer?

I didn't test python container itself, but I think that the same occurs because the entire folder is copied to container. So, any change made in the real folder don't affect the folder inside the container.

Thanks, @petriuslima. What about my first comment? Any idea? I feel kind of lost when it cames to Docker…

AFAIK, we could share local volumes with the docker containers on docker-compose.yml, for example:
elm:
    build:
      context: .
      dockerfile: Dockerfile-elm
    volumes:
      - "assets:/assets/"
      - ".:/root"

(Dockerfile-elm doesn't have a WORKDIR, I don't know if it is copying all the files to /root, I just assumed)
But this should be only for development, we could have a docker-compose.dev.yml or call the current one docker-compose.prod.yml.
IMHO it is very good to develop using docker (when it is well configured for that), specially in this case since I don't know much about python, just want to see it running. It also helps getting a closer-to-prod environment since we would be reusing the (almost) the same Dockerfiles and docker-compose configs.

I'm sorry I cannot address this issue right now as I'm a total newbie in Docker. I'm really glad @gomex, @gwmoura and @pedrommone have made important contribution in the direction of fixing an important issue: the deployment process, which is still very manual (wired up by a git hook in the production server).
All that just to say: I totally agree with @rogeriochaves, it is very good to develop using docker. But unfortunately the maintainers of Jarbas need help when it comes to Docker, and the Docker instance itself started as a tool to automate deploy.
I hope this explain a bit of the context of the issue — even if it doesn't help in addressing the issue itself ; )

Hey @petriuslima !
Thanks for your feedback:

Folders are copied when docker starts. So, any modification isn't "on the fly"

We can solve this mount our code to container:
https://github.com/datasciencebr/jarbas/pull/114
https://github.com/datasciencebr/jarbas/pull/113

Elm container ends after executing gulp for the first time

How can we solve that? Is there other way?

Jarbas container has the command to collectstatics after the update by elm container. So I had to execute the command manually every time that gulp executes

But this is design, right? Without docker you still need to collect that, right?

But this is design, right? Without docker you still need to collect that, right?

If you run Django in debug mode (this is what people do in development) you can skip collectstatic. But not sure if we can mimic that in a Docker environment. Debug mode is active when .env (or envvar) DEBUG equals True.

@cuducos you are right. We need to solve that part of collectstatic :( I will think about something

@cuducos to run django in debug mode we just need to have a environment variable DEBUG=True? If yes get my PR to solve this problem:
#115

Great! I added minor comments to the PR, once you've checked them I merge it!
BTW #113 and #114 already merged.

@cuducos #115 updated. Can you please check again?

Many thanks, @gomex 🎊
@petriuslima After this 3 merged PR (#113, #114 and #115), can you update this issue highlighting what is still painful in the Docker development env so we can target it in a more specific way?

@cuducos thanks!
@petriuslima I am here to help you. I am not developer, because that may be it is not good yet.

Hey guys, sorry for my absence!
@cuducos

Would #18 be the only possible solution?

I think no. We have solutions without spliting the repositories. But, it would be a good thing to do in the future.
@rogeriochaves great suggestions. The Docker Compose have some ways to extend the files too.
@gomex Nice, man. I didn't test everything, but the docker-compose.yml looks pretty good. I don't know much about python and elm development, so I can test only for my use case.
@cuducos The Debug=True is to Django collect the files automatically? If yes, what we need to do @gomex is make sure that elm container still running, but I don't know the best approach, I read only while true and tail -f examples :/

@cuducos The Debug=True is to Django collect the files automatically?

Yes… but not exactly. Let's say it's a side effect.
The idea of the debug mode is to make it easier to develop — which includes other features besides the bypass of collectstatic as reloading the server once any .py file is changed or completely disabling CSRF.
In the debug mode Django itself serves the static files for you, directly, which is a terrible idea (performance-wise) for production. In production the collectstatic puts them all together in a separate folder so you can serve them directly from the file system through nginx, for example — way faster.

Not sure if it helps but I just remember there is the npm run watch command that watches for any changes in **/*.Elm and re-compile the app.js on the fly. Maybe using this command instead of npm run assets might help — but I'm not sure about how to code that to the first in development and the second on production.

Hey @petriuslima

@gomex is make sure that elm container still running, but I don't know the best approach, I read only while true and tail -f examples :/

Until we find a better way for that I created a make target to run ELM again:
make build.elm

Not sure if it helps but I just remember there is the npm run watch command that watches for any changes in **/*.Elm and re-compile the app.js on the fly. Maybe using this command instead of npm run assets might help — but I'm not sure about how to code that to the first in development and the second on production.

We can replace the command inside docker-compose.yml, because we will use different docker-compose file to put in prod.
Can you tell the exact command I need to run?

Yay. So here we go:

npm run watch for development
npm run assets for production

@cuducos PR #126

Merged!

Hey @petriuslima
Can you test again?

@gomex,
The Elm container was still stopping on start process, so I fix that (was some problem with shared volumes, as described by the commit c4305c93e9eefaa644de75570fc3300877ad9127, if you want to see) and do some changes to allow the development of dev and prod environment. The best way I tought is using docker compose extends but for now I think this should work.
@cuducos and @gomex, I think that the command for Debug=True was not working. The Elm container is refreshing the app.js (with some seconds of delay because of the time to process the changes) but I had to run the collectstatic to update the files in Jarbas container. I guess that if the staticfiles volume from Jarbas container was shared with Elm container and in the gulpfile.js the elm task put the app.js in this shared volume instead of in jarbas/frontend/static/app.js, it should works. Could this have any side-effects?

@petriuslima I hope the PR #127 solve that. Let's wait @cuducos merge that.

@cuducos and @gomex, I think that the command for Debug=True

Minor detail: it should be DEBUG=True not Debug=True but I guess in the file it was right.
Anyway… not sure if debug mode is active? Let's check if then:

Jump in Jarbas directory inside the container (the directory that has the manage.py file)
Enter python manage.py shell -c 'from django.conf import settings; print(settings.DEBUG)'

You will see True or False in the console ; )
Was debug mode active or nor in your environment?

We just merged #127 that should have made dev in Docker a bit easier — tou @gomex. Can you guys test and feedback? Many thanks

just tested it.... and got:

Closing this issue to focus discussion on that topic on #163


docs: specify that pixel coordinates of hotspot are rounded to the floor

Since we now have a raw API, we shall specify how this is calculated, so users of the raw API can do the same in their rendering code.

TBH, I'm unsure if we should round to the floor, or to the nearest. The former is more prone to precision problems, where instead of 0.36*100 = 36.00000 -> 36, you get 35.99998 -> 35.

std::round would make more sense indeed

I've made the lib round.

Changed the doc accordingly.


fix(InlineContent): reset tracked x position after new line

Description
This resolves an issue where the number of lines rendered by InlineContent sometimes exceeds the maxLines. The source of the issue was where we calculate which line each piece of text/icon/badge is rendered on. When a new line is in the content string, the next item should start on a new line. Prior to this change, that would increase the line number for the next item and set the ending x position of the last item rendered to the width of the InlineContent component. Both of those changes individually are meant to denote a new line should be started, so doing both resulted in adding 2 lines. This change still increases the line number but sets the tracked end x position of the last item to the beginning of the component.

References
LUI-1016

Testing
This issue was only reproducible in the inner source repo.

Navigate to "InlineContent / With Inline Content String" story
set contentWrap to true and set maxLines to 4
ER: 4 lines of text are rendered

Automation
Bug initially reported by Automation team.

Checklist

[x] all commented code has been removed
[x] any new console issues have been resolved
[x] code linter and formatter has been run
[x] test coverage meets repo requirements
[x] PR name matches the expected semantic-commit syntax

Test Execution Passed.

Test Execution Passed.

Seems to work for maxLines of 5, but not 6, I see 7 lines displayed still.
Also, mind setting a default value in the story controls so we don't have to hit the "set number" button?

Just did some experimenting. It actually seems like the "maxLinesSuffix" is what causes it to wrap to the next line, so maybe this isn't be included in the calculation for truncation?

Test Execution Passed.

Test Execution Passed.

:tada: This PR is included in version @lightningjs/ui-components-v2.12.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Link labels

Greetings,
It seems that each link to a page in "support.office.com" is automatically displaying the page title as the link label.
Depending on each sentence, the link label might need to be adequately edited.
> Link 1:
In the intro paragraph, at the top of the page:
" [What is a SharePoint hub site?] help you organize your intranet. "
The link label should most probably be "Hub sites", and the sentence would become:
"[Hub sites] help you organize your intranet."
> Link 2:
Section "Can I make just one hub site for my whole organization?"
" Naming conventions: Add a prefix to news article titles and use a [Use the Highlighted content web part] to roll up news (...) "
The link label should simply be "Highlighted content web part", and the sentence would become:
" Add a prefix to news article titles and use a [Highlighted content web part] to roll up news (...) "
> Link 3:
Section "How should I organize my hub site? / Association"
"A site becomes part of a hub family by [Associate a SharePoint site with a hub site]. "
This one does not sound as weird as "Link 1" and "Link 2", but still, it might deserve review.

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

ID: 99d8d3fd-3c87-c237-495d-01ac9bcd7944
Version Independent ID: 2c621ca7-5395-f4b8-b66a-aa8a8ab4b1e5
Content: Planning your SharePoint hub sites
Content Source: SharePoint/SharePointOnline/planning-hub-sites.md
Service: sharepoint-online
GitHub Login: @kaarins
Microsoft Alias: kaarins

@officedocsbot assign @scanum

@a-zaf Thank you for your suggestions and improving MS docs.  I'll have them reviewed soonest.

@scanum this can be closed thank you.

@a-zaf  Thank you for submitting this feedback.
From our understanding the issue has been resolved. If you feel it hasn't been resolved please re-open this issue.

@officedocsbot close


V4 version not working with mesh displacement transfrom

Mesh displacement transform is not correctly implemented currently.

The v4 does not need to work with the mesh version. the v4 framework supports sparse displacements transform for any displacement transforms.


Prices copied back to purchase order are wrong

If I add multiple items to my purchase order and press the 'Transfer PO' button:
The correct prices / amounts / etc. are displayed in the Mouser Actions panel:

But, the wrong prices are set in the purchase order:

It seems one of the prices is set to all the line items in the purchase order.
Running inventree 0.13.0 and the latest version of this plugin.
BTW: The functionality of this plugin is really great, can't wait for TME and Digikey support.

Thanks for the hint. This is because you do not have IPNs added to your parts. We use IPNs, so the problem never showed up. I changed the code line to use the SKU now which needs to be there. Give it a try.
I will never add TME because we do not have TME as a supplier. Digikey is still on the roadmap but their authentication system is quite complex. I tried to add Farnell but found that they do not have a shopping cart API so far.

It is working now with Mouser in my situation. Thank you.

Thanks.
fixed with e9deb5e


Add a JVM method signature builder

In order to resolve Java methods, one needs to declare type signatures like "(Ljava/lang/Object;)V" which is a bit unwieldy.
It would be nice to have an easy way to generate those strings.
See https://docs.oracle.com/javase/1.5.0/docs/guide/jni/spec/types.html

Partially done in #30.


STORE: Make try_decode_PrivateKey() ENGINE aware

This function only considered the built-in and application
EVP_PKEY_ASN1_METHODs, and is now amended with a loop that goes
through all loaded engines, using whatever table of methods they each
have.
Fixes #11861

@beldmit, @vt-alt, please have a look.

Seems good, TCL tests are passed and STORE issue is fixed too. (You, probably, need to rebase your branch on the master though.)

The tests have stopped failing.
Is it really relevant for 1.1.1?
And don't we have a similar code somewhere else?

1.1.1 openssl storeutl fails on that DER file, doesn't it? If it does, this fix should be applied there as well.

I currently have the tests catching it enabled for 3.0 only. Will try to rerun a bit later

It seems working without this fix:
OPENSSL_CONF=my.conf openssl pkey -inform DER -text -noout -in pkcs8-1.der
Private key: 499F36A98A6EE9142351EA0A979B2FAEF62E32B88778042FB9222F8C08397E79
Public key:
   X:3A5EB29A20FAB84B58ADECB6F27EBAF2F21FE12122A5B1CF0ACEDD52756F238E
   Y:D2CB63A5699267CDA88FABA9E417C5931FA106B07D6853D9B70BACB4E592A6CC
Parameter set: id-GostR3410-2001-CryptoPro-A-ParamSet

openssl version
OpenSSL 1.1.1h-dev  xx XXX xxxx

I think 1.1.1's pkey not used STORE to load a key.

@beldmit, do it again, but with storeutl

beldmit@manul$ ./openssl_wrap.sh storeutl -keys 1.pem
0: Pkey
-----BEGIN PRIVATE KEY-----
MEMCAQAwHAYGKoUDAgITMBIGByqFAwICIwEGByqFAwICHgEEIHl+OQiMLyK5LwR4
h7gyLvauL5uXCupRIxTpboqpNp9J
-----END PRIVATE KEY-----
Total found: 1

beldmit@manul$ ./openssl_wrap.sh storeutl -keys pkcs8-1.der
Total found: 0

The patch does not apply cleanly to 1.1.1

Okie, I'll make a 1.1.1 specific PR tomorrow

Travis failure looks relevant.

Why is the code dropping the pkey if there are multiple matches?

Because the interpretation is ambiguous, there's no way to decide which one is "correct".  With current objects, this shouldn't happen, but in case there are two different ASN.1 that can be encoded to look like each other, it would be seriously bad if we made a random decision on one of them.  It's much safer to refuse all interpretations and to tell the user that "nope".

Travis failure looks relevant.

Ah, forgot to check for OPENSSL_NO_ENGINE...  fix coming up!

Why is the code dropping the pkey if there are multiple matches?

Because the interpretation is ambiguous, there's no way to decide which one is "correct". With current objects, this shouldn't happen, but in case there are two different ASN.1 that can be encoded to look like each other, it would be seriously bad if we made a random decision on one of them. It's much safer to refuse all interpretations and to tell the user that "nope".

Could we have a relevant diagnostics in this case? Smth like "More than one implementation found"?

Could we have a relevant diagnostics in this case? Smth like "More than one implementation found"?

You mean like this?
https://github.com/openssl/openssl/blob/a7ad40c502d3484e0a574e121cfba70631f224bf/crypto/store/loader_file.c#L1481-L1483

Yes, it looks understandable

Something I wish to have informational records in the error queue...  of course, one could regard all records as informational, but it would be really confusing to try to go for purely informational records, since they are still displayed as records.  if we had information records, I could add one for every successful match, which would make an "ambiguous content type" error much more informative.

In this case, we could write something like "More than one implementation are found" and add more data providing the algorithm name.

In this case, we could write something like "More than one implementation are found" and add more data providing the algorithm name.

Which means adding a whole darn mechanism just to save those names.

Hmm, maybe this is purely theoretical, but the current implementation will fail if you have multiple engines that support asn1 method for exactly the same object type. I mean in this case the ambiguity would not be in terms of what the object type it is but which engine should load it. Perhaps it is still a good idea to error out. I am just asking whether this was considered.

Multiple engines supporting the same thing has always been ambiguous even in other areas. I haven't given that any deeper consideration specifically for STORE...

OK then.

24 hours has passed since 'approval: done' was set, but as this PR has been updated in that time the label 'approval: ready to merge' is not being automatically set.  Please review the updates and set the label manually.

Merged to master
b84439b06a1b9a7bfb47e230b70a6d3ee46e8a19 STORE: Make try_decode_PrivateKey() ENGINE aware

The patch does not apply cleanly to 1.1.1

Er...  I just cherry-picked it cleanly.

Sorry for the lack of clarity :(

Backport to 1.1.1 in #11887


Tests are going to fails without being adjusted first

Hello
Just wantd to say jsRube's AST are slightly different from those of esprima;  for example, while jsRube keeps nodes' start and end locations ('loc') in 'start' and 'end', respectively, esprima keeps them in 'ranges'. The code at the beginning of the function 'compare' in module './util.js' is actually the 'adjuster' code. Thanks a lot reading this far.

I thought something like that. The framework for testing is basically ready so we just need to hook the "adjuster" in.

@zenekron
Wow! That is goin to be awesome! I'm going to prepare the adjuster.
Could I ask you hook it in when I get it functioning? Thanks :)

@icefapper
I hope that I removed all the unnecessary break statements I added and I refactored a bit the test runner.
If you open the test/source.js you can see that there's a method for running tests over a test tree, it's second argument is a function that returns an AST from the given source. That way it should be pretty straight-forward to hook in the adjuster!


Check out zenodo-client

Might be worth checking out https://GitHub.com/cthoyt/zenodo-client. I implemented a lot of the functionality for dealing with versions and interacting with zenodo’s api in python in a (hopefully) reusable way.

Looks super helpful... if I hadn't already implemented a direct API solution :) Thanks for sharing for others to check out and for future reference.


Statistical assessment of spatial distributions

Objective
In #12484 the question arose of how we would actually go about testing the point-sampling methods introduced. In this PR, we introduce statistical tools for assessing the quality of spatial distributions in general and, in particular, of the ShapeSample implementations that presently exist.
Background and approach
A uniform probability distribution is one where the probability density is proportional to the area — that is, for any given region, the probability of a sample being drawn from that region is equal to the proportion of the total area that region occupies.
It follows from this that, if one discretizes the sample space by partitioning it into labeled regions and assigning to each sample the label of the region it falls into, the discrete probability distribution sampled from the labels is a multinomial distribution with probabilities given by the proportions of the total area taken by each region of the partition.
Given, then, some probability distribution which is supposed to be uniform on some region, we can attempt to assess its uniformity by discretizing — as described above — and then performing statistical analysis of the resulting discrete distribution using Pearson's chi-squared test. The point is that, if the distribution exhibits some bias, it might be detected in the discrete distribution, which will fail to conform adequately to the associated multinomial density.
Solution
This branch contains a small library that supports this process with a few parts:
/// A trait implemented by a type which discretizes the sample space of a [`Distribution`] simultaneously
/// in `N` dimensions. To sample an implementing type as a [`Distribution`], use the [`BinSampler`] wrapper
/// type.
pub trait Binned<const N: usize> {
    /// The type defining the sample space discretized by this type.
    type IntermediateValue;

    /// The inner distribution type whose samples are to be discretized.
    type InnerDistribution: Distribution<Self::IntermediateValue>;

    /// The concrete inner distribution of this distribution, used to sample into an `N`-dimensional histogram.
    fn inner_dist(&self) -> Self::InnerDistribution;

    /// A function that takes output from the inner distribution and maps it to `N` bins. This allows
    /// any implementor of `Binned` to be a [`Distribution`] — the output of the distribution is `Option<[usize; N]>`
    /// because the mapping to bins is generally fallible, resulting in an error state when a sample misses every bin.
    fn bin(&self, value: Self::IntermediateValue) -> Option<[usize; N]>;

    /// Bin-sample the discretized distribution.
    fn sample<R: Rng + ?Sized>(&self, rng: &mut R) -> Option<[usize; N]> {
        let v = self.inner_dist().sample(rng);
        self.bin(v)
    }
}

The preceding trait models the discretization process for arbitrary spatial distributions, but provides no metadata about what the associated multinomial densities should be; that is supported by the following additional trait:
/// A discretized ([`Binned`]) probability distribution that also has extrinsic weights associated to its bins;
/// primarily intended for use in chi-squared analysis of spatial distributions.
pub trait WithBinDistributions<const N: usize>: Binned<N> {
    /// Get the bin weights to compare with actual samples.
    fn get_bins(&self) -> [BinDistribution; N];

    /// Get the degrees of freedom of each set of bins.
    fn dfs(&self) -> [usize; N] {
        self.get_bins().map(|b| b.bins.len().saturating_sub(1))
    }
}

Next, an N-dimensional histogram type is used to actually aggregate samples for the purposes of comparison:
/// An `N`-dimensional histogram, holding data simultaneously assessed to lie in
/// `N` different families of bins.
///
/// Constructed via its [`FromIterator`] implementation, hence by calling [`Iterator::collect`]
/// on an iterator whose items are of type `Option<[usize; N]>`. Most notably, the sample iterator
/// of [`BinSampler<T>`](super::traits::BinSampler) where `T` implements [`Binned`](super::traits::Binned)
/// produces values of this type.
pub struct Histogram<const N: usize> {
    /// The actual histogram, with the invalid items diverted to `invalid`
    pub(crate) inner: BTreeMap<[usize; N], usize>,

    /// The total samples present in the histogram — i.e., excluding invalid items.
    pub total: usize,

    /// Count of invalid items, separate from the actual histogram.
    pub invalid_count: usize,
}

Finally, chi-squared analysis functions take these histograms (or their projections) as input and produce actual chi-squared values:
/// Compute the chi-squared goodness-of-fit test statistic for the `histogram` relative to the ideal
/// distribution described by `ideal`. Note that this is distinct from the p-value, which must be
/// assessed separately.
pub fn chi_squared_fit(histogram: &Histogram<1>, ideal: &BinDistribution) -> f64 { //... }

Presently, the actual testing implemented by this branch includes Binned implementations for the interiors and boundaries of Circle and Sphere. Two wrapper types, InteriorOf<T> and BoundaryOf<T> have been introduced for implementors of ShapeSample, with the purpose of allowing the constituent sampling methods to be used directly as Distributions. This adds modularity; the library itself operates also at the level of Distributions.

Changelog

Moved shape_sampling.rs into a new sampling submodule of bevy_math that holds all of the rand dependencies.
New wrapper structs InteriorOf<T> and BoundaryOf<T> allow conversion of ShapeSample implementors into Distributions.

Discussion
Caveat emptor
The statistical tests in sampling/statistical_tests/impls.rs are marked #[ignore] so that they do not run in CI testing. They must never, ever, ever run in CI testing. The purpose of these statistical tests is that they reliably fail when something is wrong — not that they always succeed when everything is fine.
Presently, the alpha-level of each individual test is .001, meaning that each constituent check fails 1/1000th of the time; with the current volume of tests, this means that about 1% of the time, a failure would occur even if everything was perfect.
On the other hand, chi-squared error has the property that it grows with sample size for mismatched distributions, while remaining constant for matched ones. That is to say: statistical biases in the output should lead to the tests failing quite reliably, meaning they do not need to be run particularly often. We can use very large sample sizes to ensure this if need be.
Personally, I am not sure what the best way of using these tests would be other than running them manually. Presently, this can be done as follows:
cargo run -p bevy_math -- --ignored

What?
 In a sense, it is. Frankly, the reason that I made this isn't because I wanted to (not that I didn't enjoy myself), but really that I couldn't think of any other way to externally assess the quality of our sampling code that was actually meaningful in any way. For example, using a fixed-seed RNG and comparing output to some known values doesn't really demonstrate anything (and, in fact, breaks spuriously when the code is refactored).

Chi-squared, Nice! Looks pretty good at a glance, I will have time to review later in the week.

I'm thinking this code/module should probably be behind a feature flag. I'm not convinced bevy devs need this compiled into their apps by default.

Regarding spurious failures: at least the false-negative rate could be calculated exactly in this case :P
Jokes aside, I agree with Alice on all points, I just wanted to say that I think this PR is really really cool :D
Math checks out at a cursory glance, although I didn't double-check any constants used.
Not entirely sure if we need to explain what a critical value is, otherwise this might quickly turn into a statistics 101.
But yeah, when in doubt, add more documentation :)


Waydroid not launching and how to upgrade from 39 to 40 on the Steam Deck.

Hello. Please, I need your assistance.
I haven't used my steam deck in months and today I decided to give it a go. I am currently using the Bazzite deck (KDE).
I didn't notice any issues until I tried launching Waydroid. It shows the icon but refuses to launch. I looked around for solutions to this and I saw that the issue would be fixed when Fedora 40 was released.
My problem today is how to upgrade from 39 to 40. I tried updating from the Gaming Mode but it says no update. I even tried using "just update" but it still says Fedora 39 in the System Os. How exactly do I resolve this issue? Thanks for your contributions to the community.

I had an issue like this on some version (one of the builds based on Fedora 40 in my case), where it wouldn't update at all. I had to rebase to the stable version and then the updates worked fine; even when I rolled back to the version that previously wouldn't update it would still update just fine.

rpm-ostree status

Thanks for replying. Here is the rpm-ostree status:
$ rpm-ostree status
State: idle
Deployments:
● ostree-image-signed:docker://ghcr.io/ublue-os/bazzite-deck:39
Digest: sha256:f87d5dd11724f35cf8f47a1d22e38777d22160412737ad8d8a288fe23758eb1d
Version: 39.20240419.0 (2024-04-19T17:09:55Z)
Initramfs: '-I /etc/crypttab /etc/modprobe.d/amdgpu.conf /etc/modprobe.d/deck-blacklist.conf'
ostree-image-signed:docker://ghcr.io/ublue-os/bazzite-deck:39
Digest: sha256:71d6d01f69c440aa40e3b633867725090b9c330ba916372b0823d7a042935e49
Version: 39.20240415.0 (2024-04-16T02:22:54Z)
Initramfs: '-I /etc/crypttab /etc/modprobe.d/amdgpu.conf /etc/modprobe.d/deck-blacklist.conf'

Thanks for replying. Here is the rpm-ostree status:
$ rpm-ostree status
State: idle
Deployments:
● ostree-image-signed:docker://ghcr.io/ublue-os/bazzite-deck:39
Digest: sha256:f87d5dd11724f35cf8f47a1d22e38777d22160412737ad8d8a288fe23758eb1d
Version: 39.20240419.0 (2024-04-19T17:09:55Z)
Initramfs: '-I /etc/crypttab /etc/modprobe.d/amdgpu.conf /etc/modprobe.d/deck-blacklist.conf'
ostree-image-signed:docker://ghcr.io/ublue-os/bazzite-deck:39
Digest: sha256:71d6d01f69c440aa40e3b633867725090b9c330ba916372b0823d7a042935e49
Version: 39.20240415.0 (2024-04-16T02:22:54Z)
Initramfs: '-I /etc/crypttab /etc/modprobe.d/amdgpu.conf /etc/modprobe.d/deck-blacklist.conf'

rpm-ostree rebase ostree-image-signed:docker://ghcr.io/ublue-os/bazzite-deck:stable

Thanks for your help. I successfully upgraded to version 40 and I also fixed the issue i had with Waydroid. I will go ahead and close this. Once again, thanks a bunch.


Does it work with Unreal Engine 4.8.1?

Hi there, I followed the instructions.

Installed Unreal Engine 4.8.1
Place the contents of latest release of BLUI "Windows Shipping" folder into C:\Program Files\Epic Games\4.8\Engine\Binaries\Win64
Downloaded your demo application, tried to open it "BLUIDemo.uproject", it asked to rebuild some DLL, I said yes
Run demo, no browser showing, just white rectangles where the browser should be

Can I provide more information? What else can I try?

Hello, something tends to go wrong with the demo project where converting it to a 4.8 project causes the Default URLs of all displays to be lost.
I suggest trying to make your own project, and try BLUI there.
I'll be updating the demo project to repair the conversion soon.

Ok I'll try tomorrow thanks! (its late here)

I don't really understand how to add it to a new project, ... fairly confused. I'm a programmer, I understand code, but I don't know the Unreal UI system. Is there something I can do to the demo project to make the demo project work?

I didn't really read on this much, but this should possibly help you with the installation. https://docs.unrealengine.com/latest/INT/Programming/Plugins/index.html

Click on each display in the demo in editor. See if the Default URL property is empty

Closing this for spring cleaning


Utility commands - mySQL

import/export need better examples in description - is. flag/option syntax
import should also drop tables first to prevent tables skipping format of .sql dumps

resolved : https://github.com/4AllDigital/DockerDrupalCli/commit/1d88d16854816c76b5f748baef1adc86a7a3d0fa


Champ can create a new collection from scratch.

@ralanlittle Currently Champ is able to create a new collection. What else do you expect to be done for this issue?

Whatever is done should be based on the newly added appsody stack create CLI (introduced in appsody 0.4.7) .

As a useful reference, there is this recently release developer.ibm.com tutorial:
https://developer.ibm.com/tutorials/create-appsody-stack/

Closing issue due to collections being removed in 0.6.0.
A new Appsody stack can be created using instructions provided on the Appsody website.
These stack should be able to be used within Kabanero.


DNS checks should use fully qualified names

I noticed that the code at https://github.com/postalhq/postal/blob/bb27d8c8a1703250a080caa0a182452aa4896783/app/models/domain/dns_checks.rb#L43 just uses the entered domain name without appending an "." (to make it fully qualified)
This means in certain configurations, e.g. ndots:5 in resolv.conf, will cause DNS checks to fail.

Thanks @hameno are you experiencing this error currently?

Yes, I managed to reduce the ndots configuration in my kubernetes environment for the pod and it now works, but I believe this should be fixed

Ah cool, I'll leave it open as a bug so it'll get sorted one way or the other

I imagine I'll never get an answer to this but presumably you have use_local_ns_for_domains enabled?

I'm not sure, what does this setting do exactly? don't remember setting it explicity (and not fully involved in that project anymore)

Postal will usually try to query directly with your nameservers for these DNS checks which really shouldn't be affected by the ndots. If not, it'll use your local resolvers.
I can just add a trailing . to the end of the queries though for extra safety.

Please can you upgrade to the latest version of Postal and confirm whether this issue still exists? If so, please open a new issue for triage. Be sure to include any relevant log data as well as details about your environment as prompted by the new issue template.


MRG: distribution project report.

We create this place to work on distribution project report together.

Coverage remained the same at 63.107% when pulling 1d9413cd53988544023a590821ce3de589a1a28a on z357412526:report into 8369fe44f8707961494c642aee588b9c1791540c on berkeley-stat222:master.

Coverage remained the same at 63.107% when pulling 8eb1ea89bb29aca0e41170be7c9f9b731884c149 on z357412526:report into 8369fe44f8707961494c642aee588b9c1791540c on berkeley-stat222:master.

Coverage remained the same at 63.107% when pulling 03fc8a131ebad942d4e28432672e90831ca4c7f4 on z357412526:report into 8369fe44f8707961494c642aee588b9c1791540c on berkeley-stat222:master.

Coverage remained the same at 63.107% when pulling f4baa341236d80e931ffc2ed9df7d24cca0b9cee on z357412526:report into 8369fe44f8707961494c642aee588b9c1791540c on berkeley-stat222:master.

Coverage remained the same at 63.107% when pulling f4baa341236d80e931ffc2ed9df7d24cca0b9cee on z357412526:report into 8369fe44f8707961494c642aee588b9c1791540c on berkeley-stat222:master.

Coverage remained the same at 63.107% when pulling ec880b2ddafef7d5420f12b8647c88eee9a07435 on z357412526:report into 8369fe44f8707961494c642aee588b9c1791540c on berkeley-stat222:master.

Coverage remained the same at 63.107% when pulling 1e474c7400ac6fb35f3700326de57c404885b250 on z357412526:report into 8369fe44f8707961494c642aee588b9c1791540c on berkeley-stat222:master.

Coverage remained the same at 63.107% when pulling 1e474c7400ac6fb35f3700326de57c404885b250 on z357412526:report into 8369fe44f8707961494c642aee588b9c1791540c on berkeley-stat222:master.

Coverage remained the same at 63.107% when pulling 1d03f50bf64d1a955cde7b20299e82c1d418178b on z357412526:report into 8369fe44f8707961494c642aee588b9c1791540c on berkeley-stat222:master.

Coverage remained the same at 63.107% when pulling 1d03f50bf64d1a955cde7b20299e82c1d418178b on z357412526:report into 8369fe44f8707961494c642aee588b9c1791540c on berkeley-stat222:master.

Coverage remained the same at 63.107% when pulling c3f7d1a498870f574490ae6e13cc9d7eb1ccdbab on z357412526:report into 8369fe44f8707961494c642aee588b9c1791540c on berkeley-stat222:master.

Coverage remained the same at 63.107% when pulling c3f7d1a498870f574490ae6e13cc9d7eb1ccdbab on z357412526:report into 8369fe44f8707961494c642aee588b9c1791540c on berkeley-stat222:master.

Coverage remained the same at 63.107% when pulling 9574c23d98d2df1906c77dd5853d4bddefba2791 on z357412526:report into 8369fe44f8707961494c642aee588b9c1791540c on berkeley-stat222:master.

Coverage remained the same at 63.107% when pulling 9574c23d98d2df1906c77dd5853d4bddefba2791 on z357412526:report into 8369fe44f8707961494c642aee588b9c1791540c on berkeley-stat222:master.

Coverage remained the same at 63.107% when pulling f67a53dff93edba379f36816262c4ea1d75e54bb on z357412526:report into 8369fe44f8707961494c642aee588b9c1791540c on berkeley-stat222:master.

Coverage remained the same at 63.107% when pulling f67a53dff93edba379f36816262c4ea1d75e54bb on z357412526:report into 8369fe44f8707961494c642aee588b9c1791540c on berkeley-stat222:master.

Coverage remained the same at 63.107% when pulling f67a53dff93edba379f36816262c4ea1d75e54bb on z357412526:report into 8369fe44f8707961494c642aee588b9c1791540c on berkeley-stat222:master.

Coverage remained the same at 63.107% when pulling f3f2e857bf36e0da4a5e843d77c8a83a8740ab8b on z357412526:report into 8369fe44f8707961494c642aee588b9c1791540c on berkeley-stat222:master.

Coverage remained the same at 63.107% when pulling f3f2e857bf36e0da4a5e843d77c8a83a8740ab8b on z357412526:report into 8369fe44f8707961494c642aee588b9c1791540c on berkeley-stat222:master.

Coverage remained the same at 63.107% when pulling 8ffc1df81c6e9e85cb225fca3fdff0970c3928ea on z357412526:report into 8369fe44f8707961494c642aee588b9c1791540c on berkeley-stat222:master.

Coverage remained the same at 63.107% when pulling 8ffc1df81c6e9e85cb225fca3fdff0970c3928ea on z357412526:report into 8369fe44f8707961494c642aee588b9c1791540c on berkeley-stat222:master.

Coverage remained the same at 63.107% when pulling<PHONE_NUMBER>ec0c4f2ac0c9dd54202f3a2fe9f387 on z357412526:report into 8369fe44f8707961494c642aee588b9c1791540c on berkeley-stat222:master.

Coverage remained the same at 63.107% when pulling<PHONE_NUMBER>ec0c4f2ac0c9dd54202f3a2fe9f387 on z357412526:report into 8369fe44f8707961494c642aee588b9c1791540c on berkeley-stat222:master.

@jarrodmillman We have finalized our report and rebased. It is ready to merge now. Thanks!

Coverage remained the same at 63.107% when pulling 98a73435872f58d03815dca804878307a50227de on z357412526:report into 8369fe44f8707961494c642aee588b9c1791540c on berkeley-stat222:master.


Replace pkg_resources with importlib

Since pkg_resources has been deprecated in favor of importlib this PR replaces the old API with the new one.
As a reference the following migration guides were used:

importlib.metadata
importlib.resources

Odd, I could have sworn I already did this, but apparently not! Thanks!


Issues with constraints in iOS 8.3

App crashing before appearing. Perhaps reason in "multiplier" when you add constraints, if we change that value from 0 to 1, everything works fine.

Are there any crash logs available so I can see where the app crashes?

[#31] addresses this.

#31 has been merged


Update CODEOWNERS

what we holding off @ahayden ?  seems ok to me.

Yes looks good to change, please proceed


Need Help for testing

Hi, i wanted to contribute so i decide to test the Events.
But i can't figure it out what i'm doing wrong here :
describe("$.delegate", function() {
	it("exists", function() {
		expect($.delegate).to.exist;
	});
	it("add event on children of subject", function() {
		var test = false;
		var subject = document.createElement("ul");
		subject.id = "tete";
		var inside = document.createElement("li");
		subject.appendChild(inside);

		document.body.appendChild(subject);
		$.delegate(subject, "click", {
			li: function(){
				console.log("te");
				test = true;
			}
		});
		$('#tete li').click();
		expect(test).to.be.equal(true);
	});
});

My file called "DelegateSpec.js" in the folder "tests/Events/" and i get this error by karma:
TypeError: 'undefined' is not a function (evaluating '$('#tete li').click()')
            at F:/Web/bliss/tests/Events/DelegateSpec.js:19

I'm quite new at testing (and already hate that :-P), so be nice with me please :-)

Hey there, thanks for contributing!
There is no click method on li elements. Only some types of elements have this natively (e.g. a elements).
If you were trying to fire a click event on the element, change it to:
$('#tete li')._.fire("click");

(in a rush so haven’t checked the rest of the code)

Thank for the answer.
I guess chrome add itself the click function on all the elements because it worked on my test to understand delegate in chrome :)
When i use the fire function, i have no error but it didn't fire the click function from the $.delegate
I used the same code as my first post, except the line :
$('#tete li').click();
//replace by
$('#tete li')._.fire("click");

I don't know if i have to open an other issue. But when i try to create an element with the property 'events', i get an error:
$.create("a", {
	href: "#here",
	title: "Permalink",
	className: "permalink",
	events: {
		click: function(evt) {
			console.log("test")
		}
	}
});

ReferenceError: Can't find variable: EventTarget
            at F:/Web/bliss/bliss.js:408
            at F:/Web/bliss/bliss.js:328
            at F:/Web/bliss/bliss.js:566
            at F:/Web/bliss/bliss.js:588
            at F:/Web/bliss/bliss.js:88
            at F:/Web/bliss/tests/Events/DelegateSpec.js:15

I think you're using an older version. Please pull?

He said, Already-up-to-date.

Ok, i update my fork and it works. My bad here
Anyway for the test of delegate, it still doesn't work.
it("add event on children of subject", function() {
		var test = false;
		var subject = document.createElement("div");
		subject.id = "tete";
		var aa = $.create("a", {
			href: "#here",
			title: "Permalink",
			className: "permalink",
			events: {
				click: function(evt) {
					console.log("testa")
				}
			}
		});
		subject.appendChild(aa)
		document.body.appendChild(subject);
		var tt = subject._.delegate("click",
		{
			a: function(){
				console.log("tea");
				test = true;
			}
		});
		$('#tete a')._.fire('click');
		expect(test).to.be.equal(true);
	});

LOG: 'testa'
PhantomJS 1.9.8 (Windows 8 0.0.0) $.delegate add event on children of subject FAILED

So when i fire 'click', the callback from the $.create works but the one from delegate doesn't.
I try to remove the event from the $.create and the result is the same.
Maybe i didn't understand how to delegate function work :/

So I rewrote the test to work independently of other Bliss methods. (I hope you don't mind, @wcastand.)
I think the issue here is that $.delegate legitimately doesn't work on PhantomJS. When I run my test, I'll get an error like
PhantomJS 1.9.8 (Windows 8 0.0.0) $.delegate adds event to children of the subject FAILED
        TypeError: 'undefined' is not a function (evaluating 'evt.target.matches(selector)') (C:/Users/guogu_000/Git/bliss/bliss.js:480)

indicating that Element.matches isn't valid in PhantomJS. Replacing Element.matches with Element.webkitMatchesSelector makes the test pass on PhantomJS.
[Note: I force-pushed over commit 39c214e, so that's why it shows up twice. Didn't know the mention wouldn't go away. Sorry!]

Hi,
I don't mind at all. Thanks for the help !
I will continue to test the others methods of Events.

This begs the question, should we have tests that only execute in a real browser?

Honestly, I wouldn't mind. PhantomJS is being really buggy for me on watch mode. I'll karma start and everything will pass, and then I'll save one of the test files without changing anything and PhantomJS will fail. Am I missing something about how PhantomJS operates during watch mode?

I actually had the same issue when i was trying to figure it out delegate. Sometime my test just didn't pass on my DelegateSpec.js and at one point i get an error on a bliss file. i just save the file again and the error disappear.
I didn't understand why.

Actually, maybe we can use Firefox. Travis-ci seems to have support for that.

I'm going to change our config to Firefox, and see if Travis builds. Probably better if we use a real browser if Travis supports one.

Ok. I think I'm almost there.

Ok. It seems to be running the tests with Firefox now, but can anyone tell me if it's really running the tests or not. It seems like it is, but the counts are off: https://travis-ci.org/LeaVerou/bliss/jobs/95623030

According to the screenshot here (http://www.sitepoint.com/testing-javascript-jasmine-travis-karma/), it seems like that's the normal behavior.

And I see 27 SUCCESS lines. So I think we can have a normal test now instead of some special PhantomJS version. @wcastand and @guoguo12, is there any cleanup we need to do since we have a Firefox test environment on Travis now?

Okay, great. I don't think there's any cleanup that needs to be done.

Close this one out then?

Sure.

Thank you all!
Sorry if this is a silly question, but why Firefox and not Chrome? AFAIK there is a Chrome launcher too…

Firefox is already on Travis. From what I've read, it seemed like I would need steps to build and install Chrome.
I can try Chrome and see what happens. We can always go back to Firefox.

I'm curious now. Going to try it.

Given that Chrome has a much higher market share, I’d prioritize that. But if it's too much of a hassle, Firefox is fine!

Ok. Looks like we can't start Chrome. I can get this to work. I've done it on Wercker. But it's going to take me a few tries. I don't mind.

Chrome is set. Closing this out.

Good work!

@zdfs if we are going to run the suite in Chrome, should i back out that change i made to get $.all to run in headless mode?
the expr.constructor.name vs instanceof business

You can do that. I can merge something like that as opposed to changes that affect core code.

Thank you so much @zdfs!


Filter dependency list for versioning

I simple thought occurred to me as reflecting on how we'd use this in GiveWP. We currently, and will continue to, do version checking when someone installs one of our add-ons — we need to make sure it's compatible with the version of core installed.
I understand that versioning is out of the scope of this, which is fine. What would be useful would be to have the ability to filter the plugin names as they appear in the dependency lists. Even if it's not functionally doing anything, being able to have the dependency appear as "GiveWP 2.21.4" instead of just "GiveWP" — as a subtle communication to the user.

Version checking for what? PHP or WordPress?
PHP version would be checked if GiveWP has the Requires PHP header set. At best, this will be in WordPress 6.1. You can also set Requires WP header in the plugin.
You won't be able to specify a version. You will be able to see a View Details iframe that should have that information. The most current version of GiveWP will be installed.
I believe the order in the Dependencies tab is alphabetical by slug, but not certain at the moment.
You could probably modify the order, etc via the plugins_api_result filter.

I'm referring to the version of the dependency. In our case, for example, we might release GiveWP Recurring 2.0.0 which is dependent on GiveWP 3.0.0.
Now, I understand that actually checking the dependency version is not in the scope of this feature plugin. So what I'm talking about is doing something that's purely visual. So consider the following:

In this case, it would be useful to have a filter for the "Required by:" list on a per plugin basis. In our case, for example, we'd change "GiveWP" to "GiveWP 3.0.0" within that list. (Again, understanding that it's purely visual.) So the hook might look something like this in a highly simplified example:
add_filter('wp_plugin_dependency_list_item', function($plugin_name, $plugin_slug) {
  if ( $plugin_slug === 'give-recurring' ) {
    return $plugin_name . ' ' . GIVE_RECURRING_MIN_GIVE_VERSION;
  }

  return $plugin_name;
});

From here, our plugin would handle the actual version check. Does that make sense?

I could probably add a filter for that.

I added the filter but there's a problem. Using anything other that the true name doesn't all the proper creation of the View details link in the Requires: GiveWP area.
Sorry, it just wouldn't be an easy fix.
You might try adding a plugin header with the needed data and then add some code to read and check it before allowing activation.

The idea was intended to be purely helpful to users. It's not a big deal, just a shame we can't surface such information to the user in light of this effort.

Honestly the scope is to encourage users to use the currently released versions of plugins. The feature is not designed to imitate composer's ability to specify versions.


Game wont start without mod loaded

Wether playing through the proxy or not, if i want to play without the mod loaded, the game gets stuck on the "Noita" screen after clicking new game.

disable the mod in the mod menu

disabling the mod in the mod menu doesnt fix the problem


Add upload_apk option

This adds a new optional parameter :upload_apk. When set to false (default true), no steps are taken to upload an apk.
The intention of this parameter is to allow uploading changelogs while skipping the apk upload.
The :apk_path option is now optional so it can be omitted when :upload_apk is false.
In addition, we had a problem where amazon would respond with a single json object rather than an array after requesting edits/<edit_id>/apks. Since the official documentation still hints at an array being returned, a small change now checks whether an array was returned, and just uses the object otherwise.

This seems useful. @mohammedhemaid wdyt?

Hey everyone, @FlaShG thank you so much for creating this PR and working this feature,
I will try to review it ASAP and if everything is good I will merge it and create a release.
@tmm1 yeah it looks helpful, thank you for mentioning me about it, I missed it and I got notified by your message

Hey everyone, @FlaShG thank you so much for creating this PR and working on this feature,
I will try to review it ASAP and if everything is good I will merge it and create a release.
@tmm1 yeah it looks helpful, thank you for mentioning me about it, I missed it and I got notified by your message

I literally spent all day preparing my fork to become a gem so we can keep on working on it over here 😆
I suppose my changes to my fork's master summoned you from beyond 😄
Given that this PR has been open for over a month now, I'd like to ask how you're planning to maintain this plugin in the future. If your time for this repo is somewhat limited, I could offer to be a collaborator and take over some maintenance responsibilities?

@FlaShG I am sorry for that,
Exactly, I was working and got a bunch of emails about you doing some commits, so I jumped to see what's going on 😆
I was very busy working on other stuff in the last month, also I was on vacation too so I couldn't contribute a lot.
Let me discuss that with the team and I will let you know, for now I try my best to be active on the plugin
Thank you so much!

Great, thank you so much!

Hello @mohammedhemaid !
Since it's been another two weeks, which makes this PR open for a total of eight weeks, I wanted to ask about this repo's future. The plugin is currently unusable under certain conditions, which would be fixed with this PR. Since we don't really want to wait much longer, I'd like to have this merged (or constructively rejected) very soon. Is that feasible for you (or your team)?
Sorry if this is worded somewhat harshly, but my ticket to integrate this into our pipeline is giving me an evil look from inside my backlog 😉

Hello @FlaShG
Sorry for that delay, I was very busy in the last 2 weeks and forgot about it, I will make sure to review it and create a new release today.
thank you!

@FlaShG
this code in helper was causing runtime exceptions sometimes so I will remove it
res = http.request(req)         unless res.kind_of? Net::HTTPSuccess           raise res.body         end


Template suggetion for Website

I wants to suggest u some templates for ur website for better look which will give traditional look to website if thats ohk then i will add pull request.

Hello, I saw your project and I want to help you to give it a better look!


SNOW-704094  Flatten select after filter

Please answer these questions before submitting your pull requests. Thanks!

What GitHub issue is this PR addressing? Make sure that there is an accompanying issue to your PR.
Fixes #SNOW-704094

Fill out the following pre-review checklist:

[ ] I am adding a new automated test(s) to verify correctness of my new code
[ ] I am adding new logging messages
[ ] I am adding a new telemetry message
[ ] I am adding new credentials
[ ] I am adding a new dependency

Please describe how your code solves the related issue.
The code change checks if the subquery's where clause depends on a column that is NEW in the current query, if it does not, flatten the query. Note that, WHERE is evaluated on the subquery first, so it is safe to flatten when there are columns that are CHANGED between the current query and the subquery.

Better add a client side param to protect it.


Add support for the Signature attribute

This adds support for reading the Signature attribute (jvms 4.7.9).  It does not attempt to parse it, however, as the parsing rules (jvms <IP_ADDRESS>) are rather complicated.

👍


Fix loose warning for @babel/plugin-proposal-private-methods

Description
This PR fixes this warning message:
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-methods since the "loose" mode option was set to "true" for @babel/plugin-proposal-class-properties.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-methods", { "loose": true }]
to the "plugins" section of your Babel config.

Type of change

[X] @shopify/babel-preset  Patch: Bug (non-breaking change which fixes an issue)
[ ]  Minor: New feature (non-breaking change which adds functionality)
[ ]  Major: Breaking change (fix or feature that would cause existing functionality to not work as expected)

Checklist

[x] I have added a changelog entry, prefixed by the type of change noted above (Documentation fix and Test update does not need a changelog as we do not publish a new version for these changes)

There might be some trickery we can do with assumptions to avoid this usage of loose, but this feels like a good enough fix for now.


What was the reason forwhich  esp_wifi_repeater was created?

Hi Martin
esp_wifi_repeater is an impressive project,
you literally implemented a Wireless Router, with some additional functionality that cannot be found on most routers (e.g. Port Mirroring), on the ESP8266.
I am curious to ask you a non-technical question please:
What was the reason for which you created it?
Thank you

As I am doing R&D in the IoT/wireless networking area, I was curious about the ESP8266, as it was so cheap, powerful and reasonably well documented. I was simply playing around a little bit and most things worked exceptionally well. From there it evolved... ;-)

Quite a deep evolution.. ;)
BTW, If I can recommend you,
If you need Port Mirroring for Ethernet,
a really nice Smart Switch is the TP-Link TL-SG108E.
https://www.amazon.com/dp/B00K4DS5KU/
It only costs 30$.
Speaking of Ethernet, you mentioned in the ReadMe support for the ENC28J60 Ethernet Module.
I remember back in the days when I started with Arduino (it was 2012),
there were 2 Ethernet Modules available back then:
Wiznet W5100,
and the ENC28J60.
The Wiznet one, back then, cost 20$,
and the ENC28J60 was about 3$.
But in every Forum that I read about the ENC28J60, users wrote
"don't buy it, it's problematic, only buy the Wiznet one".
It wasn't just one thread, but many like that..
So when you worked with the ENC28J60, was it working OK for you?
BTW, since then, the price of the Wiznet W5100 dropped, and is now just a few dollars.

The Wiznet W5100 is somewhat similar to the original SW of the ESP8266. It is not only a NIC but a complete controller with Ethernet MAC and PHY plus a basic TCP/IP stack. Obviously this make it much easier for an Arduino ATMega to handle simple TCP-communication via Ethernet. However, if you have an ESP with a full LWIP-Stack (and already existing IP-connectivity), it only makes sense to and another MAC and PHY - like the ESP32 already includes an Ethernet MAC, that only needs an additional PHY.
The ENC28J60 support is still beta - some simple tests work, but it is not stable under load (buffer issues?). I stopped working on that, as there was no real use case and interest in the community. Today, if you really need WiFi and Ethernet on a µC, you simply use an ESP32, it is more performant and even cheaper.
Thanks for the hint with the TP-Link.

Oh right, I now recall all about the differences between the W5100 and the ENC28J60.
Another recommendation If I may,
TP-Link has a really nice and small router, which is called the TL-WR844N.
https://www.tp-link.com/en/home-networking/wifi-router/tl-wr844n/v1/
It is quite a weird animal, compared to most of TP-Link's other routers:
It's a compact router, yet it's not a portable router, since it has quite big Wi-Fi antennas.
It works on 5v 0.6A (one of their few Routers that work on 5v, the other one I know is their Portable Router model, which lately is not seen in stores).
It is Multi-Mode, like all of their routers, but in addition to the modes Router/AP/Repeater, it includes a WISP mode,
which is basically what you do with the ESP here - connect to the Internet (uplink) via Wi-Fi.
And, like all of TP-Link's Home Routers, it does not have Port Mirroring sadly.
So your great project will remain useful for many people for quite a long time.


Unable to comment on Partner Center REST API docs

Describe the bug
Unable to login or comment on Partner Center REST API docs
To Reproduce
Steps to reproduce the behavior:

Go to 'https://docs.microsoft.com/en-us/partner-center/develop/azure-rate-card'
Click on 'Feedback'
Click on 'Sign in'
Follow on screen prompts to authenticate with Microsoft, Facebook, Google
Successful auth is not processed to complete the login process
Click on 'Create New Account'
Popup box from Step 3 goes blank
Note that no option for 'Content Feedback' (aka. auth via Github) is present

Expected behavior
Expect to be able to login and leave a comment on the doc to report an issue with CSP margin being applied twice to the Rate property.
Screenshots
If applicable, add screenshots to help explain your problem.
Successful auth (Step 6)

Blank popup after Create New Account (Step 8)

Desktop (please complete the following information):

OS: Windows 10
Browser: Chrome (v68.0.3440.84) and Edge (v41.16299.492.0)
Version [see above]

Smartphone (please complete the following information):

Device: N/A
OS: N/A
Browser: N/A
Version: N/A

Additional context
Pretty straight forward. I'm trying to login / leave a comment and none of the options available work.

@cjmod The comment will be removed from docs site eventually, which will be replaced by GitHub issue. So if you have any feedback or issue, you can create issue in this channel or if you see the picture like

on the bottom of page. You can click content feedback and create feedback.

@Powerhelmsman: Does that mean I should create an issue here for the Partner Center Rate Card API? I'm trying to make sure the feedback makes it to the API developers.


WIP: Adding initial hooks for validation and modification of environment specifications

Closes #117

Putting this work on hold until we have a request for this feature. It is close to being complete but still need to think more about if it makes sense to have multiple hooks ... should it be one?


Port line layer example and web worker data loader to ocular gatsby website

For #3775, subtask of #3754
I've ported the LineDemo example from the current website into the ocular gatsby system.  I'm looking for feedback on the port of this single example before I move the rest over in one or more future PRs.
To port the new example, I did the following:

Reworked the LineDemo component to work without redux
Moved the use of InfoPanel into the LineDemo component as a direct dependency
Ported over a minimal set of code for the loading data on web workers
Added a gatsby SCSS plugin to the website and ported over some minimal styling

Coverage remained the same at 80.871% when pulling 18bd232c687544e0e2433de592722769d2e83ed5 on tgorkin/gatsby-line-example into 1b455f425221d40f95414faf3fba240f5104cd43 on master.


UEFI printk backend

First cut of a facility to use the UEFI console facility as the backend to printk (and thus LOG_MINIMAL, though longer term we'd probably want a proper log backend for it).
Seems to work well for me for all the simple code I throw at it.  Unfortunately it's having some odd problems with most of the tests: the first call will work, but the second will never appear.   That just screams "stack overflow"[1].  And in a few cases I've been able to work around that by increasing sizes, but not all.
I'm probably going to have to add a stack switch to the thunking layer to prove this, I suspect.
But as it stands this works pretty well for trying code in simple rigs.
[1] Our tests tend to use pretty cramped stacks, and let's be honest: who knows how much stack firmware is going to try to use on devices with gigabytes of RAM!  In that realm pushing a multiple-kilobyte buffer for formatting or buffering or whatever is trivially doable.

Got the stack switch working (I'm really pleased with how this looks now!), and found one more issue with the firmware (sigh) enabling interrupts under its own code and breaking locks.  This should be good to go now, please re-review.

Sorry, one last fixup.  Please re-review