nixos/systemd: apply .link even when networkd is disabled

Motivation for this change
The systemd.network.links option is now respected even when systemd-networkd is disabled.
This mirrors the behaviour of systemd - It's udev that parses .link files,
not systemd-networkd.
I added a test that creates a dummy interface and checks for the MTU to be set according to the .link file.
Follow-up of https://github.com/NixOS/nixpkgs/pull/77405#issuecomment-597357774
Thanks to @NinjaTrappeur for helping me unclutter some of the module code and being a rubberduck infinite recursion slayer / father of the dragon and liberator of slaves.
cc @obadz @danielfullmer
Should probably be backported to 20.03, given we don't default to networkd, meaning .link file handling is broken there.
@GrahamcOfBorg build nixosTests.networking.networkd.link nixosTests.networking.scripted.link
Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[x] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

Should probably be backported to 20.03, given we don't default to networkd, meaning .link file handling is broken there.

yes and no.   The link files that ship with systemd are still being read by udev afaik;  And I'm not sure how wide-spread link files for non networkd setups are currently.

Should probably be backported to 20.03, given we don't default to networkd, meaning .link file handling is broken there.

yes and no. The link files that ship with systemd are still being read by udev afaik; And I'm not sure how wide-spread link files for non networkd setups are currently as they were broken before anyway...

Yes, the systemd-provided files are read, but if people want to change some behaviour, try to apply the changes in .link files posted on the internet, it just doesn't work at all - and then you might come up with hacks like in https://github.com/NixOS/nixpkgs/pull/77405, or just give up.
I don't think fixing this for 20.03 will cause harm, so don't see a problem with backporting this fix into the (not-yet-released) 20.03 branch.

@disassembler, any reservations for backporting this to 20.03?

@GrahamcOfBorg build nixosTests.networking.networkd.link nixosTests.networking.scripted.link

As discussed with @andir in person, merged. Backported to 20.03 in cde800dbd7432f9b87b69b0a4ecd23e56b471bcb, f549fbfd9708ceb71436bb6f6c082648160185c2, 4b2151b9faf2ec62e211ffedd1cabad7c0cb9390.

FYi this PR seems to be the cause for the failing manual build. Fixed it in 7e978ca3243ec32c9d130c6c232981ae3ff65240.

Actually there was also some other problem, I'm currently only able to revert – see 0729b8c.
I found this missing:
--- a/nixos/tests/networking.nix
+++ b/nixos/tests/networking.nix
@@ -499,13 +499,13 @@ let
     };
     privacy = {
       name = "Privacy";
-      nodes.router = { ... }: {
+      nodes.router = { lib, ... }: {
         virtualisation.vlans = [ 1 ];
         boot.kernel.sysctl."net.ipv6.conf.all.forwarding" = true;
         networking = {
           useNetworkd = networkd;
           useDHCP = false;
-          interfaces.eth1.ipv6.addresses = singleton {
+          interfaces.eth1.ipv6.addresses = lib.singleton {
             address = "fd00:1234:5678:1::1";
             prefixLength = 64;
           };

but I don't think that could have caused the Hydra error.

FYI 20.03 is also blocked on the error.  So far I focused on nixos-unstable channel, as that was lagging for more than a week, but I will (try to remember to) revert it there as well if you don't find an alternative "quickly".

Hmm, looks like my commit is the culprit here. I'm on it.

I can't reproduce any evaluation error on the networking test. Be it with the scripted or networkd test.

Yes, I've been trying for at least an hour to reproduce the error locally and I failed.  That's why I simply reverted.  (Only after it occurred to me to bisect directly on Hydra.nixos.org.)

I took unbreaking 20.03 channel as an opportunity to "bisect further".  Apparently the commit with pkgs.lib is triggering this (9cc7ab153cdf).
I still can't see what's the issue, but I assume the rest of the PR can be "safely" re-applied?  (to master first)

@vcunat it might have something to do with the recent measures to not evaluate everything at once.
Can you cherry-pick the other two commits to master? (Maybe we need to change 36ef112a477034fc6d1d9170bf1bcda0140a8d1d slightly due to the revert of 1115959a8d4d73ad73341563dc8bbf52230a281e).


printlns interfere with show

Briefly discussed this in discord
reproduced at miguel-vila/mill-issue-repr
expected behaviour:
mill show foo.testTask to be valid json without the result of any println
works in 0.10.1 , breaks in 0.11.0 and 0.11.1

This is a regression, possibly related to https://github.com/com-lihaoyi/mill/pull/2428/files#diff-10fa43b77073c51ec13ec41ca13cf84707d831a39d344acad2d08a6f9bb1ee14. Needs to be fixed so that show foo > can work properly again


Problem in FreiHand data-loader

When I tried to train the PostNet on the FreiHand dataset, I got the following errors:
File "/home/nankaingy/data/code/pose-shape/Pose2Mesh_RELEASE/main/../data/FreiHAND/dataset.py", line 202, in getitem
mano_mesh_cam, mano_joint_cam = self.get_mano_coord(mano_param, cam_param)
File "/home/nankaingy/data/code/pose-shape/Pose2Mesh_RELEASE/main/../data/FreiHAND/dataset.py", line 172, in get_mano_coord
R, t = np.array(cam_param['R'], dtype=np.float32).reshape(3, 3), np.array(cam_param['t'], dtype=np.float32).reshape(3)
KeyError: 'R'
Since the argument ‘cam_param’ loaded from 'freihand_train_data.json'，the keys of ‘cam_param‘ dict in JSON file only contains 'focal' and 'princpt' without 'R' or 't', as shown below:
freihand_$SPLIT_data.json
|-- db_idx: {
‘cam_param’: {
‘focal’: focal lengths in x- and y-axis (intrinsic. pixel unit.),
‘princpt’: principal point coordinates in x- and y-axis (intrinsic. pixel unit.)
},
‘mano_param’: {
‘pose’: 48-dimensional mano pose vector (theta),
‘shape’: 10-dimensional mano shape vector (beta)
},
‘joint_3d’: 21x3 joint coordinates (MANO joint set. meter unit.) from mesh,
‘scale’: groundtruth scale provided from FreiHAND
}
How can I fix this?

@ZhimaoPeng
There was a mismatch between FreiHAND/dataset.py and the json files.
I replaced the json files, so you could download the proper json files!


Progress

Convert warnings to debug for fewer warnings
It does not allow updating if it is a development or experimental version
Remove versions that contain a hash
Fixes certain errors with downloading on sourceforge

Fix

  File "", line 198, in _run_module_as_main
  File "", line 88, in _run_code
  File "/home/fran/projectos/livecheck/livecheck/__main__.py", line 3, in
    main()
  File "/usr/lib/python3.12/site-packages/click/core.py", line 1157, in __call__
    return self.main(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.12/site-packages/click/core.py", line 1078, in main
    rv = self.invoke(ctx)
         ^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.12/site-packages/click/core.py", line 1434, in invoke
    return ctx.invoke(self.callback, **ctx.params)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.12/site-packages/click/core.py", line 783, in invoke
    return __callback(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/fran/projectos/livecheck/livecheck/main.py", line 541, in main
    do_main(r=r,
  File "/home/fran/projectos/livecheck/livecheck/main.py", line 466, in do_main
    doc = etree.fromstring(r.text)
          ^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.12/xml/etree/ElementTree.py", line 1335, in XML
    parser.feed(text)
xml.etree.ElementTree.ParseError: not well-formed (invalid token): line 25, column 75

and fix

Traceback (most recent call last):
  File "/usr/lib/python3.12/site-packages/urllib3/connectionpool.py", line 789, in urlopen
    response = self._make_request(
               ^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.12/site-packages/urllib3/connectionpool.py", line 536, in _make_request
    response = conn.getresponse()
               ^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.12/site-packages/urllib3/connection.py", line 507, in getresponse
    httplib_response = super().getresponse()
                       ^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.12/http/client.py", line 1428, in getresponse
    response.begin()
  File "/usr/lib/python3.12/http/client.py", line 331, in begin
    version, status, reason = self._read_status()
                              ^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.12/http/client.py", line 300, in _read_status
    raise RemoteDisconnected("Remote end closed connection without"
http.client.RemoteDisconnected: Remote end closed connection without response

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib/python3.12/site-packages/requests/adapters.py", line 667, in send
    resp = conn.urlopen(
           ^^^^^^^^^^^^^
  File "/usr/lib/python3.12/site-packages/urllib3/connectionpool.py", line 843, in urlopen
    retries = retries.increment(
              ^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.12/site-packages/urllib3/util/retry.py", line 474, in increment
    raise reraise(type(error), error, _stacktrace)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.12/site-packages/urllib3/util/util.py", line 38, in reraise
    raise value.with_traceback(tb)
  File "/usr/lib/python3.12/site-packages/urllib3/connectionpool.py", line 789, in urlopen
    response = self._make_request(
               ^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.12/site-packages/urllib3/connectionpool.py", line 536, in _make_request
    response = conn.getresponse()
               ^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.12/site-packages/urllib3/connection.py", line 507, in getresponse
    httplib_response = super().getresponse()
                       ^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.12/http/client.py", line 1428, in getresponse
    response.begin()
  File "/usr/lib/python3.12/http/client.py", line 331, in begin
    version, status, reason = self._read_status()
                              ^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.12/http/client.py", line 300, in _read_status
    raise RemoteDisconnected("Remote end closed connection without"
urllib3.exceptions.ProtocolError: ('Connection aborted.', RemoteDisconnected('Remote end closed connection without response'))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "", line 198, in _run_module_as_main
  File "", line 88, in _run_code
  File "/home/fran/projectos/livecheck/livecheck/__main__.py", line 3, in
    main()
  File "/usr/lib/python3.12/site-packages/click/core.py", line 1157, in __call__
    return self.main(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.12/site-packages/click/core.py", line 1078, in main
    rv = self.invoke(ctx)
         ^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.12/site-packages/click/core.py", line 1434, in invoke
    return ctx.invoke(self.callback, **ctx.params)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.12/site-packages/click/core.py", line 783, in invoke
    return __callback(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/fran/projectos/livecheck/livecheck/main.py", line 535, in main
    if url.startswith('data:') else session.get(url, headers=headers, timeout=30))
                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.12/site-packages/requests/sessions.py", line 602, in get
    return self.request("GET", url, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.12/site-packages/requests/sessions.py", line 589, in request
    resp = self.send(prep, **send_kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.12/site-packages/requests/sessions.py", line 703, in send
    r = adapter.send(request, **kwargs)
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.12/site-packages/requests/adapters.py", line 682, in send
    raise ConnectionError(err, request=request)
requests.exceptions.ConnectionError: ('Connection aborted.', RemoteDisconnected('Remote end closed connection without response'))

I ran the latest master of livecheck today and it still showed debug output even though I did not pass --debug. I thought this was fixed in a prior PR?

I have to modify something in the code

Do you want me to split this pull request?

Just have to fix the conflicts. Unfortunately it's confused because moving the arguments in the signature.

I will attempt to apply the change manually by reverse patching using https://github.com/Tatsh/livecheck/commit/7162f1a09ec6cbdbb5856f78f16f00751dfd2d64

Reopening


Search

Is this the search function like in the full desktop app? If so yeah I was wondering about that....no good if I can't find old messages or look up something on a text channel or something.


Append CargoWebSever to the list of your application user.

Hello Duktape,
I'm proud to tell you that I successfully integrate your engine in Golang in a different way than GoDuktape was doing it. My way is inspired by Otto a js engine written in Golang. Here is the test file as example of how user can use (duktape/chakracore/jerryscript) in go. I think my api is simple and really link Go and JS. You can access js object and function from go or access go function and object from js... Each interpreter run in it own process and communicate via tcp socket with the application that made use of it, it's isolate the client application from JS error and crash.
Get a look i think you will be proud of what duktape can do in Go...

This is the link to the go test unit
https://github.com/CargoWebServer/CargoWebServer/blob/master/Project/src/code.myceliUs.com/GoJavaScript/GoJavaScriptTest/GoJavaScript_test.go

@davecourtois Hmm, so for the project list link:

Should the project name be "CargoWebServer" and link to https://github.com/CargoWebServer/CargoWebServer (or maybe http://cargowebserver.com/ )?
Could you provide a short description, i.e. what is Duktape used for in the project (see the other entries)?

Hi Sami,
thank first of all thank your for the answer and also for creating
Duktape!-) I really appreciated the quality of your JS engine, it's
compact, fast and easy to compile in all platform. I also appreciate your
devotion to other open source project even the one who compete with your
own project, that's the true spirit of open source movement and I wish the
best to you and Duktape. Because of it's quality I'm please to tell you
that it will be the engine by default in CargoWebServer, I also integrate
Chakra and JerryScript but I was unable to compile it in windows and they
also need external library compiling to make them work. Your engine compile
successfully by  cgo so no work is needed to make it work with go.
CargoWebSever is a complete web application framework with it own data
store (entity manager) and it own ide named Bridge there is some
screenshot.
[image: image.png]
This is the code editor, it support multi-user coding like google doc.
[image: image.png]
the entity editor
[image: image.png]
the search engine, i made use of xapian.
[image: image.png]
the query editor, (entity query) it also support SQL.
there is also LDAP, OAUTH2, SQL, Session and user management ...
All the server is written in go because of it high performance and it
concurrency model. Application and user sessions has their own JS engine
running in their own process, it possible to run JS engine in distant
computer...
The sub-project name GoJavaScript is an engine container. The engine is
running in it process and communicate via a TCP socket with the client side
who is see as a library in the client side, it's a kind of minimalist
node.js.
GoJavaScript can do what Otto, a native go js engine can do. So with
GoJavaScript Duktape became very useful and simple to use in go
application. CargoWebServer is a huge piece of code that made heavy use of
JS and
it work very well with Duktape so I think GoJavascript can be use
confidently by go project who need Javascript.
Now to ask about what to wrote in the description...

The link must be  https://github.com/CargoWebServer/CargoWebServer
Now the decription; A Javascript web application framework written in Go.

Again thank you for your interest!-)
best regard Dave Courtois
Le sam. 15 sept. 2018 à 16:53, Sami Vaarala<EMAIL_ADDRESS>a
écrit :

@davecourtois https://github.com/davecourtois Hmm, so for the project
list link:

Should the project name be "CargoWebServer" and link to
https://github.com/CargoWebServer/CargoWebServer (or maybe
http://cargowebserver.com/ )?
Could you provide a short description, i.e. what is Duktape used for
in the project (see the other entries)?

—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/svaarala/duktape/issues/1975#issuecomment-421632932,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABnlXDBFuC_7rphzpHETJrkxVWzwqAyYks5ubWjLgaJpZM4WqBCL
.

Thanks @davecourtois, you're quite welcome! Good to hear things worked out with the integration.
I'll add the project link and keep Cargo in mind for future use :-)

https://github.com/svaarala/duktape-wiki/pull/210


The dotnet command running path is not specified

Description
Describe the issue:
Running the command dotnet add package and there is an error: "The project was not found."

Suggestion:
Add command cd src/web before dotnet add package Azure.Identity .
@seesharprun and @hemarina for notification.
Repro steps
None
Expected behavior
Execute  commands successful.
Screenshots
No response
Environment
No response

This has been resolved in PR #4


⚠ Bofrost.be has degraded performance

In 1a21123, Bofrost.be (https://www.bofrost.be) experienced degraded performance:

HTTP code: 200
Response time: 1272 ms

Resolved: Bofrost.be performance has improved in 2ec2130.


Sql integration

sqlite can not handle multiple namespaces (schemas in sqlalchemy), so maybe postgres will be inevitable

Codecov Report

:exclamation: No coverage uploaded for pull request base (main@0ffdf07). Click here to learn what that means.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main      #17   +/-   ##
=======================================
  Coverage        ?   98.75%
=======================================
  Files           ?       36
  Lines           ?     1612
  Branches        ?        0
=======================================
  Hits            ?     1592
  Misses          ?       20
  Partials        ?        0

Continue to review full report at Codecov.

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

updated to close #14 and #15 with the first successful test of inter-project import


Curl of a scalar ?

Hello,
I wanted to know if MFEM could calculate the curl of a scalar?
If so, how can I do?
Best regards,
Leïla

That’s not mathematically defined. Do you mean something like curl a \hat{i}? That is curl of a single component vector? Curl only acts on vectors. Grad acts on scalars.
-john

On Jul 10, 2018, at 3:45 AM, LeilaSalomon<EMAIL_ADDRESS>wrote:
Hello,
I wanted to know if MFEM could calculate the curl of a scalar?
If so, how can I do?
Best regards,
Leïla
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.

The curl of a scalar function in 2D can be obtained by rotating its gradient: (df/dx, df/dy) -> (df/dy, -df/dx). The gradient of a GridFunction can computed with one of the methods: GetGradient for a single point in one element, or GetGradients for multiple points in one element.
You can also compute the gradient of a GridFunction as another (vector) GridFunction by constructing and applying a discrete gradient operator - I can explain how to do that, if you want to obtain the grad and then the curl as a GridFunction.
Does one of these options work for you?

That is simply curl f \hat z as I wrote before. “Curl of a scalar” doesn’t mean anything. Can he simply do what I suggested and define the vector as f \hat z and take the curl? That is if that is what he really means since his question is ill defined.
-john

On Jul 11, 2018, at 7:59 PM, Veselin Dobrev<EMAIL_ADDRESS>wrote:
The curl of a scalar function in 2D can be obtained by rotating its gradient: (df/dx, df/dy) -> (df/dy, -df/dx). The gradient of a GridFunction can computed with one of the methods: GetGradient for a single point in one element, or GetGradients for multiple points in one element.
You can also compute the gradient of a GridFunction as another (vector) GridFunction by constructing and applying a discrete gradient operator - I can explain how to do that, if you want to obtain the grad and then the curl as a GridFunction.
Does one of these options work for you?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or mute the thread.

Thanks for the explanation @dobrev. I wasn’t aware of that convention. Seems like something that might come up in 2D fluid mechanics.
@LeilaSalomon let us know if this solution works for you.
-john

On Jul 13, 2018, at 3:24 AM, Veselin Dobrev<EMAIL_ADDRESS>wrote:
@jcwright77, in many math books the curl of a scalar function of two variables, f(x,y) is defined to be the 2D vector field (df/dy,-df/dx), so I assume that is what @LeilaSalomon means.
You are absolutely right about the reason for that definition -- it is a short notation for the standard 3D curl operator applied to the vector field (0,0,f), which is (df/fy,-df/dx,0).
In MFEM, assuming that you have a scalar function on a 2D mesh, defined as a GridFunction object, the easiest way to compute the vector field (df/dy,-df/dx) is to compute its gradient and then apply the 90 degree clockwise rotation: (vx,vy) -> (vy,-vx).
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.

Hi Leïla, were you able to get this working? -Tzanio


Don't prepend an underscore to the field name; update tests and documentation

Please see issue #12 and PR #13.

Thank you heaps for feedback on this issue. I've merged in #16, which move the prefix into a configuration option. Really appreciate the pull request :beers:


feat: add support for deploying ocp in custom cloud endpoints

Description
Issue: https://github.ibm.com/GoldenEye/issues/issues/11259

Release required?

[ ] No release
[ ] Patch release (x.x.X)
[x] Minor release (x.X.x)
[ ] Major release (X.x.x)

Release notes content

Run the pipeline
If the CI pipeline doesn't run when you create the PR, the PR requires a user with GitHub collaborators access to run the pipeline.
Run the CI pipeline when the PR is ready for review and you expect tests to pass. Add a comment to the PR with the following text:
/run pipeline

Checklist for reviewers

[ ] If relevant, a test for the change is included or updated with this PR.
[ ] If relevant, documentation for the change is included or updated with this PR.

For mergers

Use a conventional commit message to set the release level. Follow the guidelines.
Include information that users need to know about the PR in the commit message. The commit message becomes part of the GitHub release notes.
Use the Squash and merge option.

/run pipeline

/run pipeline

/run pipeline


Discovery is not finding some ssm-enabled instances

First off - this is pretty cool.
I am testing with a group of 6 instances I have with SSM enabled, that I can get to via SSM using python and boto3 - but for some reason only 2 of the 6 show up non-grey in the "select instances" list. I am frankly not even sure how to troubleshoot this. Any suggestions welcome.

Do all 6 instances show in the AWS console under EC2 > Managed Instances? If they all instances are listed there, can you check the browser console (under the debugger/developer tools) to see if there are any errors logged there?

I believe you're correct about the paging, i did some testing and that looks to be the issue. I will update the code by the weekend, and update this issue so that you're notified when that's completed.
Thanks for the feedback!

I updated the code to include paging for ec2 and ssm commands. Can you test and let me know if you're still having an issue?

It works beautifully now. Close this issue, and thanks!

Thanks for the update! And for the feedback.


 and 10 is "you need a PhD in parallel systems and two decades of industry experience", how much do I have to think before I type to work with an odoyle session from multiple threads - and is it worth it? Are there any obvious gotchas, or any areas that may have some not-so-odvious gotchas and require more thought?
More specifically, I'm confused when it comes to thinking about facts being inserted vs rules being fired at different times, or whether it's possible (or even desirable) to selectively fire rules on specific threads. If it is, then do we have to ensure that the rules don't interact in any way, or can that still be managed?
I guess what I'm ultimately wondering about is whether rule firing can be selective and incremental, so that in an architecture like this:
          thread B
        /          \
thread A            thread D
        \          /
          thread C

Thread A can fire only those rules that both B and C require, B and C fire independent rules in parallel, and thread D merges everything and carries on.
If it's possible, can the dependency graph be determined automatically, so that thread A knows which rules it has to fire given which rules threads B and C each want to fire themselves?
Example use case
Let's assume that I'm writing a TODO app with Vim-style modal editing and that I want something like the following async architecture, where each number is a loop running on a separate thread (real or core.async pool):

Receives keyboard and mouse events, timestamps them, and o/inserts them into some kind of queue in the session, without firing anything so that it doesn't block and miss(time) further incoming events.
Pulls from the event queue and fires only those rules that are triggered by those events that have been inserted, in the order they were inserted, with the state as it was at the time they were stamped. This presumably generates and inserts other facts, such as new TODO entries, TODO state changes, app mode changes etc.
Fires all other rules that may have been matched by the insertion of facts by no. 2, such as creating/modifying/deleting GUI components according to TODO entry creation/modification/deletion above, reinserting those into the session's GUI-related state.
o/querys the GUI-related state, topologically sorting them according to whether they overlap and passing each strand to be rendered in parallel by separate threads.

Example entries made by no. 1 (in chronological order & grouped by their relevance, see below):
{:key "n" :time 123}, {:key "esc" :time 124},

{:key "n" :time 125}, {:key "enter" :time 126}, {:key "tab" :time 127}

{:key "n" :time 128} {:key "A" :time 129}, {:key "B" :time 130}, {:key "enter" :time 131}

Example rules that are fired by no. 2 based on the above:

If the state is normal and the key n is pressed, make a new empty TODO, set it as current, and set the state to insert.
If the state is insert, the current TODO is empty, and the key esc is pressed, delete the TODO and set the state to normal.
If the state is insert and the key enter is pressed, save the current TODO and set the mode to normal.
If the state is normal and the key tab is pressed, set the current TODO's state to done.
If the state is insert and any other key is pressed, type the character in the TODO's text.

All of the above would result in:

The creation and instant deletion of an empty TODO (which happened so fast that it would never reach thread no. 3 and therefore no GUI component would be needlessly created)
The creation of an empty TODO, which is promptly marked as done so that I can pat myself on the back and take a well-deserved break to eat some cake.
The creation of a TODO with the text "AB".

More questions

Is this sort of thing even possible? Obviously an overkill for a TODO app, but I can imagine this sort of architecture being useful for apps like IDEs that would love to be as-asynchronous-as-possible and have this kind of declarative logic.
If it's not possible with a single session, then could it work with each thread having its own session and have a loop that looks like this:

read events that previous thread left in the channel
-> insert them into own session
-> fire rules
-> do stuff with the results
-> put new facts on a channel for the next thread

(I imagine this assumes that the rules for each thread's session don't have to interact, and that if they do that the state is duplicated and synced across the threads?)
3. What's the overhead in calling fire-rules? Is there a benefit in batching inserts before fire-rules is called, or would that cause problems? Would it help with avoiding unnecessary creation of GUI widgets, e.g. in the case where a TODO is created and then instantly deleted?
Outro
Thanks for writing and maintaining this awesome library, sorry for the barrage of questions and if half of them are obvious or don't make sense (or if they're a duplicate of #20 - that seemed more general than what I had in mind), I'd love to contribute to it at some point, writing async GUIs is hard, cheers & bye.

If you want to process state changes on separate threads but still cleanly merge their results together, I think you need a CRDT. They are designed for exactly that purpose: merging independent changes in a way that produces a deterministic result.
Rules can theoretically trigger any other rule, so I don't see a way to automatically separate them into silos that execute independently. If you managed to do this, it would sound quite similar to just using separate sessions with different rulesets.
To answer your question about the overhead of fire-rules, it is generally better to just call it once per "frame" rather than after each insert. In fact, I made an early mistake in pararules by making it fire rules automatically after every insert. You have to manually turn autoFire off to disable this behavior. In odoyle I don't even have an "auto fire" feature, because it's just wasteful and provides a really minor convenience.


Adding tests for NonExistant account

Description:
Adding tests for NonExistant account
Related issue(s):
https://github.com/hashgraph/hedera-smart-contracts/issues/482

LG Currently the tests use a non existing address as the base for the call. What about when the calls is to a non existing address e.g. a contract creation for an address that doesn't exist or a function call (code size or balance) on an address that doesn't exist. The last example might already be covered in other recent solidity code so double check the epic or current tests.

Addressed in the new version :)


Name should be less than 13 characters, or less than 14 if last character is between 1-5 or a-j, and only contain the following symbols .12345abcdefghijklmnopqrstuvwxyz

i am facing this error when i hit my Post API,Basically i am creating this API for propose the  Multisig Transaction. And i am follow the documentation of EOSJS from offical website of EOSIO. MY naming convention is follow which is mention but still facing error
MY API IS
app.post('/propose', async (req, res) => {
const actions = [{
account: 'eosio',
name: 'updateauth',
authorization: [{
actor: 'adeelabbasna',
permission: 'active',
}],
data: {
account: 'adeelabbasna',
permission: 'active',
parent: '',
auth: {
threshold: 1,
keys: [{
key: 'EOS7BJChRpdmRbwLgdR2MPW4f7BkXye21quFxqN2Pjv8tJy6iejpF',
weight: 1
}],
accounts: [],
waits: []
}
},
}];
(async () => {
const serialized_actions = await api.serializeActions(actions)
    proposeInput = {
        proposer: 'adeelabbasna',
        proposal_name: 'changeowner',
        requested: [{
                actor: 'adeelabbasna',
                permission: 'active'
            },
            {
                actor: 'rajazahoor11',
                permission: 'active'
            }
        ],
        trx: {
            expiration: '2019-09-16T16:39:15',
            ref_block_num: 0,
            ref_block_prefix: 0,
            max_net_usage_words: 0,
            max_cpu_usage_ms: 0,
            delay_sec: 0,
            context_free_actions: [],
            actions: serialized_actions,
            transaction_extensions: []
        }

    };
    const result = await api.transact({
        actions: [{
            account: 'eosio.msig',
            name: 'propose',
            authorization: [{
                actor: 'adeelabbasna',
                permission: 'active',
            }],
            data: proposeInput,
        }]
    }, {
        blocksBehind: 3,
        expireSeconds: 30,
        broadcast: true,
        sign: true
    });
})();

And then this error will come
UnhandledPromiseRejectionWarning: Error: Name should be less than 13 characters, or less than 14 if last character is between 1-5 or a-j, and only contain the following symbols .12345abcdefghijklmnopqrstuvwxyz
at SerialBuffer.pushName (/home/adeel/Documents/EOSIO apis/Multisig Transaction/Propose/node_modules/eosjs/dist/eosjs-serialize.js:253:19)
at Object.serialize (/home/adeel/Documents/EOSIO apis/Multisig Transaction/Propose/node_modules/eosjs/dist/eosjs-serialize.js:841:57)
at Object.serializeStruct [as serialize] (/home/adeel/Documents/EOSIO apis/Multisig Transaction/Propose/node_modules/eosjs/dist/eosjs-serialize.js:591:28)
at Object.exports.serializeActionData (/home/adeel/Documents/EOSIO apis/Multisig Transaction/Propose/node_modules/eosjs/dist/eosjs-serialize.js:1070:12)
at Object.exports.serializeAction (/home/adeel/Documents/EOSIO apis/Multisig Transaction/Propose/node_modules/eosjs/dist/eosjs-serialize.js:1079:23)
at Api. (/home/adeel/Documents/EOSIO apis/Multisig Transaction/Propose/node_modules/eosjs/dist/eosjs-api.js:311:71)
at step (/home/adeel/Documents/EOSIO apis/Multisig Transaction/Propose/node_modules/eosjs/dist/eosjs-api.js:49:23)
at Object.next (/home/adeel/Documents/EOSIO apis/Multisig Transaction/Propose/node_modules/eosjs/dist/eosjs-api.js:30:53)
at fulfilled (/home/adeel/Documents/EOSIO apis/Multisig Transaction/Propose/node_modules/eosjs/dist/eosjs-api.js:21:58)
at process._tickCallback (internal/process/next_tick.js:68:7)
(node:26207) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 1)
(node:26207) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
i also attached Screen shot

Your parent is empty (which is correct) and eosjs caught that as an issue.  This has since been changed in eosjs and the fix is within the edge release on NPM, but there is a workaround for the latest release: you can set the parent to '...' and the serializer will resolve that to '' without causing the error.

''
Hey @bradlhart ,

Yes, i tried but it gives new error, my code is same as i mention above but according to your comment i set parent with  '...' then they show me this err

or

Your parent is empty (which is correct) and eosjs incorrectly caught that as an issue. This has since been changed in eosjs and the fix is within the edge release on NPM, but there is a workaround for the latest release: you can set the parent to '...' (or any number of periods as long as its within 13) and the serializer will resolve that to '' without causing the error.

Thnaks

Your parent is empty (which is correct) and eosjs incorrectly caught that as an issue. This has since been changed in eosjs and the fix is within the edge release on NPM, but there is a workaround for the latest release: you can set the parent to '...' (or any number of periods as long as its within 13) and the serializer will resolve that to '' without causing the error.

Thanks...!!
working :+1:  :

Your parent is empty (which is correct) and eosjs incorrectly caught that as an issue. This has since been changed in eosjs and the fix is within the edge release on NPM, but there is a workaround for the latest release: you can set the parent to '...' (or any number of periods as long as its within 13) and the serializer will resolve that to '' without causing the error.

Thanks...!!
working :+1:  :


Fix config sync directory for Drupal 8 websites that are using a custom sync directory

The Problem/Issue/Bug:
Drupal 8.9.6 website, that is using a custom deprecated (but still supported) setup for configuration sync directory, gets overridden by ddev default setup.
CONFIG_SYNC_DIRECTORY = 'sync'
$config_directories[CONFIG_SYNC_DIRECTORY] = `/var/www/html/config/sync`

How this PR Solves The Problem:
Rearranging the conditions that check if a configuration sync directory already exist.
Manual Testing Instructions:
I am thinking testing for this, would require 6 scenarios, installing Drupal Umami + Drush 10, and then run drush cex -y.
(no custom config directory)
Drupal 8.7 Umami
Drupal 8.8 Umami
Drupal 9.0 Umami
(with custom config directory)
Drupal 8.7 Umami
Drupal 8.8 Umami
Drupal 9.0 Umami
Some of these tests should fail with the conditions set in ddev master, but pass with the new set of conditions (in this patch)
Automated Testing Overview:

Related Issue Link(s):
Release/Deployment notes:

Tested again on all 3 cases, with and without modifications, seems OK.


fix bad use of memcpy

memcpy is not guaranteed to work with overlapped memory areas, however memmove is.
Apart from the semantic difference this fixes a compiler warning and possibly previously unexplained occurrences of ERROR_INVALID_STATE.

Looks good to me!


feat!: adds support for gRPC streaming and removes dependency on RPC

The Celestia-node part of https://github.com/celestiaorg/celestia-core/pull/1513

PR still not fully ready, some tests are still failing. but would be good to get initial opinion + if someone can see if it's providing you with any performance increase

Codecov Report
Attention: Patch coverage is 52.02312% with 83 lines in your changes missing coverage. Please review.

Project coverage is 45.31%. Comparing base (2469e7a) to head (7d89608).
Report is 376 commits behind head on main.

Files with missing lines
Patch %
Lines

core/fetcher.go
50.00%
55 Missing and 26 partials :warning:

core/listener.go
66.66%
1 Missing :warning:

nodebuilder/core/constructors.go
0.00%
1 Missing :warning:

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #3915      +/-   ##
==========================================
+ Coverage   44.83%   45.31%   +0.47%
==========================================
  Files         265      307      +42
  Lines       14620    21900    +7280
==========================================
+ Hits         6555     9923    +3368
- Misses       7313    10888    +3575
- Partials      752     1089     +337

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

conflicts cc @rach-id

@vgonkivs Fixed 🙏  Would be good to know if this PR is good to go so that we start merging the changes in core/comsos-sdk

Tested locally. Both grpc clients works


tooltip.inverseOrder has no effect on stacked series

Although legend: { inverseOrder: true } reverses the legend order in a stacked chart, tooltip: { inverseOrder: true } does not do the same. Setting the value to true or false has no effect on the order.
CodePen.

@junedchhipa Added CodePen.

Is there any update on this ?

Fixed it.
A new patch version will be released soon.


Added transformPage function to renderPage to allow custom wrapper on…

… app #1751

Is the new function signature of this PR
renderPage(Component => EnhancedComponent)

I forked next just to add this very thing. My approach was simply to change:
  const renderPage = () => {
    const app = createElement(App, {
      Component,
      props,
      router: new Router(pathname, query)
    })

to
  const renderPage = (decoratePage = page => page) => {
    const app = createElement(App, {
      Component: decoratePage(Component),
      props,
      router: new Router(pathname, query)
    })

Regardless, this is feature is a must-have.

Would you mind looking at #2010 and sharing your thoughts? My change only decorates the Component var, whereas yours decorates the entire App. I'm not sure which approach is better, if any.

Closing in favor of #2010


Short order on Bitfinex still open...

... again, thanks for open-sourcing blackbird! Been testing it for a week with docker cloud + microsoft azure and really like it!
However, I just ran into the following issue:

The program seems to be stuck there forever... The open position does indeed exist on Bitfinex and it seems to be the result of a limit sell order:

I can manually close the open position on Bitfinex with a marked sell order but that's not the idea of running a bot I guess ;-)
Any idea what's the problem?

The same problem for me:
[ 03/24/2017 22:12:36 ]
   Bitfinex: 	960,01 / 961,00
   OKCoin: 	958,76 / 959,18
   Bitstamp: 	947,16 / 950,01
   Kraken: 	947,98 / 953,33
   ----------------------------
   OKCoin/Bitfinex:	 0.09% [target  0.80%, min -0.64%, max  0.29%]
   Bitstamp/Bitfinex:	 1.05% [target  0.80%, min -0.35%, max  1.22%]   trailing  1.14%  1/1
<Bitstamp> Looking for a limit price to fill 0,02 BTC...
<Bitstamp> order book: 4,52@$950,01
<Bitfinex> Looking for a limit price to fill 0,02 BTC...
<Bitfinex> order book: 3,94@$960,03

[ ENTRY FOUND ]
   Date & Time:       03/24/2017 22:12:36
   Exchange Long:     Bitstamp (id 2)
   Exchange Short:    Bitfinex (id 0)
   Fees:              0,25% / 0,20%
   Price Long:        $950,01 (target)
   Price Short:       $960,03 (target)
   Spread:            1,05%
   Cash used:         $15,00 on each exchange
   Exit Target:       -0,35%

<Bitstamp> Trying to send a "buy" limit order: 0,02@$950,01...
<Bitstamp> Done (order ID: 202�925�985)

<Bitfinex> Trying to send a "sell" limit order: 0,02@$960,03...
<Bitfinex> Done (order ID: -2�141�136�781)

Waiting for the two orders to be filled...
Short order on Bitfinex still open...
Short order on Bitfinex still open...
Short order on Bitfinex still open...
Short order on Bitfinex still open...
Short order on Bitfinex still open...

I'm wondering, how big is the order_id(eg. how many digits is it)?

Yep, looks like bitfinex orderIds are too big now.
Fixed it locally, here is the code: https://github.com/butor/blackbird/pull/138

Hi @greatwolf,
I just compiled current version with PR #138, but it still hangs:
<Kraken> Trying to send a "buy" limit order: 0,02 @ $942,64...
<Kraken> Done (transaction ID: OWHFJG-SQGUX-YT5QUN)

<Bitfinex> Trying to send a "sell" limit order: 0,02@$954,31...
<Bitfinex> Done (order ID: -2�132�946�650)

Waiting for the two orders to be filled...
<Kraken> No order exists
Short order on Bitfinex still open...
Short order on Bitfinex still open...
Short order on Bitfinex still open...

There is probably problem to get info about position, because order on Bitfinex exists:

I'm having the same issue - Bitfinex/Bitstamp. Compiled on (095b3f0) a few hours ago on a new machine.
<Bitstamp> Done (order ID: 203,273,352)

<Bitfinex> Done (order ID: -2,133,372,473)

Randomized the last 6 digits of both order IDs.

I've pushed a changeset that treats the orderId as a string under the new branch Fix_issue_137. It'll need some testing though. See if that corrects the open order issue.

@greatwolf appreciated
It appears to have solved the issue for me. The Bitfinex orders are now correctly identified as filled.

I can confirm as well.  I was having this same issue, but this changeset fixed it.  Thanks!

That's good to hear, I'll go ahead and merge the branch into master.

Hi,
By bitfinex order still won't complete.
I'm suspicious of the negative sign on the order id but not sure:

 Trying to send a "sell" limit order<EMAIL_ADDRESS> Done (order ID: -2093402821)
.
.
.

after two days since the spread closed:

Short order on Bitfinex still open...
Short order on Bitfinex still open...

Can you check if the submitted order shows up on the finex web interface? If it's on the list, you can actually inspect the html source for the order id. eg.
<tr id="order_2108174286">

This will confirm whether their order id can have a negative symbol or not.

I closed that order manually this morning, it's listed in the order history but the order id in the row tag is interestingly totally different. I searched for it and the related order id is nowhere in the html source. I'll check it again in the live orders section if this happens again, thank you.
And how do you configure not to use the margin short feature? I'd prefer not to use it too (until it's absolutely fixed) as all my problems in my last 5-6 iterations were due to this. And how efficient would that be? It would reduce your chances to find a spread by half, no?

Try checking the trade history and order history under 'Reports'. The order id should be the first column.
As far as turning off margin short, I don't think you can since blackbird relies on it when taking a short position on one side.

OK, I caught another case of the same situation:

16 hours later:

And still running...

The order seen on blackbird logs (first screenshot) is the one on the bitfinex console (last screenshot), I know it because the amounts and the timestamps are identical. But the id's don't match. It's not on the live orders tab it's on the order "history" and it is marked as executed, so blackbird will never be able to close the order.
I never managed to automatically complete an order with blackbird due to this problem.

It worked for me after you switched it to a string in the code.  The int
didn't work (I think because their order numbers finally got larger than
2^32 / 2) So although the api sent the order number, it was being stored as
a 32 bit integer which made it negative instead and bitfinex wouldn't
understand when asking about it.
On Thu, Apr 6, 2017 at 1:48 AM, cihanbilir<EMAIL_ADDRESS>wrote:

OK, I caught another case of the same situation:
[image: screen shot 2017-04-06 at 09 02 55]
https://cloud.githubusercontent.com/assets/11620711/24740051/df781362-1aa7-11e7-8890-f7b1fe319d8f.png
16 hours later:
[image: screen shot 2017-04-06 at 09 04 15]
https://cloud.githubusercontent.com/assets/11620711/24740086/0a85842c-1aa8-11e7-8294-8d20a488f9c1.png
And still running...
[image: screen shot 2017-04-06 at 09 05 59]
https://cloud.githubusercontent.com/assets/11620711/24740141/575848c0-1aa8-11e7-903c-89705d592139.png
The order seen on blackbird logs (first screenshot) is the one on the
bitfinex console (last screenshot), I know it because the amounts and the
timestamps are identical. But the id's don't match. It's not on the live
orders tab it's on the order "history" and it is marked as executed, so
blackbird will never be able to close the order.
I never managed to automatically complete an order with blackbird due to
this problem.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/butor/blackbird/issues/137#issuecomment-292084509,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAfxbJA5eaPV4aaMI1xw_kzTZEEDNwTdks5rtIrMgaJpZM4Mott5
.

Can you check that json_int_t is 64 bits in width? According to Jansson docs json_int_t falls back to long if long long isn't supported by the compiler.
eg. The following should compile without failing any of the static_asserts:
#include "jansson.h"
#include <type_traits>

int main()
{
  static_assert(sizeof(json_int_t) == 8, "");
  static_assert(!std::is_same<json_int_t, int>::value, "");
  static_assert(!std::is_same<json_int_t, long>::value, "");
}

I'm so sorry, I'm sure I did (build after pull), but apparently I haven't.
This is fixed for me too now.
Thank you very much.

I'm seeing the same issue today - "Short order on Bitfinex still open..." and I indeed do still have a position open on Bitfinex. Was built with master build yesterday.


Why buckets in metrics

Hi, I'm new in Hystrix and all concepts about resilient software, bulkhead, circuit breaker and etc...
I read the wiki and I'm in doubt with buckets within metrics!!
Why use buckets and not total value at all?
Why Hystrix used buckets?
Ps.: I don't know if I need to put some tag or simbol in subject.. so I apologize.

In our system, writes to metrics happen at the volume of command executions, which is in the 1000s of executions/second on a single instance.  If we were to re-calculate the aggregate view of metrics every time a single metric was received, this would be prohibitively expensive.  Instead, we've found that putting metrics into time-buckets allows us to only recalculate aggregate metrics on bucket boundaries without sacrificing much accuracy.  So this is purely a performance optimization (though necessary in our case)

Thanks for the answer... so I can put 360000/1 to recalculate after 1 hour is this right?
But I believe this isn't a good practice.... is this right too?

The reason that these metrics exist is to provide insight into the running system.  An hour is too late to be operationally useful.  We find the defaults of metrics updating every second or so to be adequate for alerting purposes.

Ok.. thanks man

Closing unless you've got more to discuss.  Please re-open if so.


Fix workspace names

Fixes https://github.com/multinet-app/multinet-client/issues/13.
Fixes https://github.com/multinet-app/multinet-client/issues/18.
These issues are addressed by adding a "mapping collection", which is a collection that resides in the _system database, and maps the workspace names to a valid generated workspace name on the backend.
If you were to check this out locally, you should be able to create a workspace with spaces/whatever you like in the name. However, note that if you do this and then switch to a different branch, you'll have workspaces with gibberish names (as they're no longer being mapped), so you'll just have to delete them.
Currently there's no UI component for renaming workspaces, but this PR adds this functionality through an API endpoint (PUT /api/workspaces/{workspace}), and making a change through the API will result in that change being shown in the UI.
Along with the normal review, please let me know if you think there's any missing features.

There is UI for renaming workspaces. When you're in a workspace, the top bar has an edit symbol (on hover). Maybe it would be work connecting that up in this PR, too.

There is UI for renaming workspaces. When you're in a workspace, the top bar has an edit symbol (on hover). Maybe it would be work connecting that up in this PR, too.
If we want to leave it for later, it will be worth opening an issue for.

Now that the server and client are separated, this will have to be a separate issue + PR :smile_cat:

There is UI for renaming workspaces. When you're in a workspace, the top bar has an edit symbol (on hover). Maybe it would be work connecting that up in this PR, too.
If we want to leave it for later, it will be worth opening an issue for.

Now that the server and client are separated, this will have to be a separate issue + PR 😸

Oh yeah :joy:

There is UI for renaming workspaces. When you're in a workspace, the top bar has an edit symbol (on hover). Maybe it would be work connecting that up in this PR, too.

I mean't it isn't connected to this change and does nothing right now

One question: what happened to the @lru_cache I saw in one of the commits? My major concern with this approach is database performance. The caching mechanism might be one way to mitigate that, but I also feel like we'll need to run some tests to see if there's any difference in performance. If there is, we may need to converge to the alternative approach of programmatically computing the internal name from the external name, and shunt those back and forth via the type system. But this looks really great and solves our immediate problem.

I agree with your concerns, that's the biggest concern I had as well. The reason I got rid of the @lru_cache was because when I was using it, it seemed to be causing false cache hits, and breaking the behavior. I can experiment with this more to see if we can use this properly. That being said, when using it locally at least, the loading time isn't slower than is usual for a web app. Testing it against multinet.app it seems to run just as fast.

One question: what happened to the @lru_cache I saw in one of the commits? My major concern with this approach is database performance. The caching mechanism might be one way to mitigate that, but I also feel like we'll need to run some tests to see if there's any difference in performance. If there is, we may need to converge to the alternative approach of programmatically computing the internal name from the external name, and shunt those back and forth via the type system. But this looks really great and solves our immediate problem.

I agree with your concerns, that's the biggest concern I had as well. The reason I got rid of the @lru_cache was because when I was using it, it seemed to be causing false cache hits, and breaking the behavior. I can experiment with this more to see if we can use this properly. That being said, when using it locally at least, the loading time isn't slower than is usual for a web app. Testing it against multinet.app it seems to run just as fast.

Ok, let's keep away from this sort of lightweight caching then.

@waxlamp @JackWilb Lmk if you still have concerns I haven't addressed

Before you merge--I just realized this doesn't actually fix https://github.com/multinet-app/multinet-client/issues/18. We'll need to add UI to the client to full solve that. Can you update the description before merging?

Before you merge--I just realized this doesn't actually fix multinet-app/multinet-client#18. We'll need to add UI to the client hook up the existing UI to this functionality to full solve that. Can you update the description before merging?

Good catch, sure thing.


VehicleLeaveListener causes lag spikes

About
The VehicleLeaveListener causes lag spikes. The problem is probably caused by initializing the Vehicle class from the config (looping through the entire config). This might also apply to the other listeners, but the VehicleLeaveListener spiked in my timings.

Minecraft version: 1.19.2
Server software: Paper
Plugin version: 2.4.3

When and why?
When I leave a vehicle.
Documentation

Thanks for reporting here we will look into it soon

method now uses data already saved in VehicleData instead of initialising VehicleUtils.getVehicle() again and looping the entire vehicles.yml


Why >lep login Failed？？？

root@iZt4n5462zgbdxz4pnhy3iZ:/home/search_with_lepton# lep login
_     _____ ____ _____ ___  _   _       _    ___

| |   | |  _ _   / _ | \ | |     / \  | |
| |   |  | | |) || || | | |  | |    / _ \  | |
| || ||  __/ | || || | |\  |   / ___ \ | |
||||    || _/|| _|  //   __|
========================================================
Traceback (most recent call last):
File "/usr/local/bin/lep", line 8, in
sys.exit(lep())
File "/usr/local/lib/python3.10/dist-packages/click/core.py", line 1157, in call
return self.main(*args, **kwargs)
File "/usr/local/lib/python3.10/dist-packages/click/core.py", line 1078, in main
rv = self.invoke(ctx)
File "/usr/local/lib/python3.10/dist-packages/click/core.py", line 1688, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
File "/usr/local/lib/python3.10/dist-packages/click/core.py", line 1434, in invoke
return ctx.invoke(self.callback, **ctx.params)
File "/usr/local/lib/python3.10/dist-packages/click/core.py", line 783, in invoke
return __callback(*args, **kwargs)
File "/usr/local/lib/python3.10/dist-packages/leptonai/cli/cli.py", line 146, in login
info = api_client.info()
File "/usr/local/lib/python3.10/dist-packages/leptonai/api/v1/client.py", line 177, in info
response = self._get("/workspace")
File "/usr/local/lib/python3.10/dist-packages/leptonai/api/v1/client.py", line 155, in _get
return self._session.get(self.url + path, *args, **self._safe_add(kwargs))
File "/usr/local/lib/python3.10/dist-packages/requests/sessions.py", line 602, in get
return self.request("GET", url, **kwargs)
File "/usr/local/lib/python3.10/dist-packages/requests/sessions.py", line 575, in request
prep = self.prepare_request(req)
File "/usr/local/lib/python3.10/dist-packages/requests/sessions.py", line 486, in prepare_request
p.prepare(
File "/usr/local/lib/python3.10/dist-packages/requests/models.py", line 368, in prepare
self.prepare_url(url, params)
File "/usr/local/lib/python3.10/dist-packages/requests/models.py", line 439, in prepare_url
raise MissingSchema(
requests.exceptions.MissingSchema: Invalid URL '/api/v1/workspace': No scheme supplied. Perhaps you meant https:///api/v1/workspace?

This error will be reported when I type the command BACKEND=BING python3 search_with_lepton.py or lep login

Did the problem get resolved? I am facing the same issue.

How did you solve the problem? Please share your method, as I am facing the same issue.


Add tactics, techniques, and mitigations from MITRE ATLAS

Addresses #245

added new external threat model thing (ATLASThing) and subclasses ATLASTactic, ATLASTechnique, and ATLASMitigation, as well as a new datatype property atlas-id
added make update-atlas command to generate mappings following example of make update-attack
maps tactics, techniques and mitigations from the ATLAS STIX data into D3FEND using the new classes

Please help me review and correct any mistakes in this mapping, especially in the Python code I could use another pair of eyes. Thank you.

needs a few minor tweaks

[ ] rename tactics to Credential Access - ATLAS, add a prefLabel for Credential Access

currently: Credential Access (ATLAS Tactic)

[ ] we're missing "Credential Access - ATLAS - Technique" classes to group their techniques.

needs a few minor tweaks
* [ ]  rename tactics to `Credential Access - ATLAS`, add a prefLabel for `Credential Access`

currently: Credential Access (ATLAS Tactic)

* [ ]  we're missing "Credential Access - ATLAS - Technique" classes to group their techniques.

First point makes sense. Can you clarify the second point concretely with an example?

[ ]  we're missing "Credential Access - ATLAS - Technique" classes to group their techniques.

Like we do here:

Can you revert the actual ontology changes in this pull so its just the generative code. Also, were there any other additions necessary? I think you added the convenience classes I requested.

Can you revert the actual ontology changes in this pull so its just the generative code. Also, were there any other additions necessary? I think you added the convenience classes I requested.

Which ontology changes? Do you man d3f:atlas-id, d3f:ATLASTactic, d3f:ATLASTechnique, etc? We need the Tactics, Techniques, and Mitigations to have superclasses, as they aren't ATT&CK Enterprise tactics and techniques.
Keep this to group them? But remove ATLASTechnique and Tactic? What should the replacement superclasses be? I kind of want d3f:ReconnaissanceTechnique to be ideally decoupled from ATT&CK Enterprise so we can reuse it as a superclass to organize techniques across all ATT&CK frameworks.
:ATLASCollectionTechnique a owl:Class ;
    rdfs:label "Collection - ATLAS - Technique" ;
    rdfs:subClassOf :ATLASTechnique,
        :OffensiveTechnique,
        [ a owl:Restriction ;
            owl:onProperty :enables ;
            owl:someValuesFrom :AML.TA0009 ] .


Added dummy idealstate-updater utility

We can write custom code to apply any changes we want to idealstate on a live cluster

Codecov Report

Merging #2955 into master will increase coverage by 23.02%.
The diff coverage is n/a.

@@             Coverage Diff             @@
##           master    #2955       +/-   ##
===========================================
+ Coverage   45.84%   68.87%   +23.02%
===========================================
  Files         914      914
  Lines       43463    43473       +10
  Branches     5925     5928        +3
===========================================
+ Hits        19925    29941    +10016
+ Misses      21869    11527    -10342
- Partials     1669     2005      +336

Impacted Files
Coverage Δ

...nkedin/pinot/common/metrics/ValidationMetrics.java
15.94% <0%> (-55.08%)
:arrow_down:

...pinot/controller/validation/ValidationManager.java
46.19% <0%> (-21.64%)
:arrow_down:

.../BrokerResourceOnlineOfflineStateModelFactory.java
49.15% <0%> (-10.17%)
:arrow_down:

...mpl/dictionary/DoubleOffHeapMutableDictionary.java
69.09% <0%> (-9.1%)
:arrow_down:

.../impl/dictionary/FloatOnHeapMutableDictionary.java
80% <0%> (-6.67%)
:arrow_down:

.../impl/dictionary/LongOffHeapMutableDictionary.java
81.81% <0%> (-5.46%)
:arrow_down:

...ot/core/query/pruner/ColumnValueSegmentPruner.java
88.13% <0%> (-5.09%)
:arrow_down:

...e/impl/dictionary/LongOnHeapMutableDictionary.java
88.88% <0%> (-4.45%)
:arrow_down:

...roller/helix/core/PinotTableIdealStateBuilder.java
72.56% <0%> (-4.43%)
:arrow_down:

...afkaHighLevelConsumerBasedRoutingTableBuilder.java
92.3% <0%> (-3.85%)
:arrow_down:

... and 481 more

Continue to review full report at Codecov.

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


Cloudflare List import is returning all items from the API into state

Confirmation

[X] My issue isn't already found on the issue tracker.
[X] I have replicated my issue using the latest version of the provider and it is still present.

Terraform and Cloudflare provider version
Terraform: 1.4.7
Cloudflare: 4.15.0
Affected resource(s)

cloudflare_list

Terraform configuration files
resource "cloudflare_list" "bulk_redirect" {
  account_id = var.account_id
  name       = "bulk_redirect"
  kind       = "redirect"

  lifecycle {
    ignore_changes = [item]
  }
}

Link to debug output
https://gist.github.com/watchinharrison/e18b948e59e66558f8a9a9d690604285
Panic output
No response
Expected output
I expect the lifecycle ignore changes for [item] to be respected and the list items are neither stored in state or considered changed when changes are made outside of Terraform.
Actual output
The import retrieved all the items from the API, stored them in state and then subsequently fetched them from the API on all future plans, resulting in a 15min+ total time to plan existing changes.
Steps to reproduce

Create a list in Cloudflare dashboard
Add 1 or more items to the list
Create the resource in terraform code (.tf file)
Use the latest Cloudflare provider version to import the resource into state terraform import
View the state file

Additional factoids
This change appears to have introduced the bug which conflicts with this line which when respecting no changes to item and item is length 0.
Having tested both 4.15 and 4.14, I can confirm that 4.14 does not import all the items into state leaving the state with an empty item: [] value.
References
No response

Hi @watchinharrison  sorry that my change confused you :)
But it fixed behaviour that you exactly described: https://github.com/cloudflare/terraform-provider-cloudflare/issues/2573
In the versions before fix - import of items didn't work at all, independently from ignore_changes option.
Also, for ignore_changes - i checked behaviour for cloudflare_list and compared it with cloudflare_access_application.
ignore_changes don't prevent storing something in state, it only prevent update resources if something changed manually via UI.
@jacobbednarz correct me if i'm wrong.

per @Nmishin this seems correct behaviour given you are trying to import the list into Terraform.

ignore_changes don't prevent storing something in state, it only prevent update resources if something changed manually via UI.

correct - it only impacts the Update/Read methods really.


Promote integration-service from staging to production

Included PRs:

https://github.com/redhat-appstudio/integration-service/pull/641
https://github.com/redhat-appstudio/integration-service/pull/636
https://github.com/redhat-appstudio/integration-service/pull/636
https://github.com/redhat-appstudio/integration-service/pull/639
https://github.com/redhat-appstudio/integration-service/pull/638
https://github.com/redhat-appstudio/integration-service/pull/637
https://github.com/redhat-appstudio/integration-service/pull/622
https://github.com/redhat-appstudio/integration-service/pull/623
https://github.com/redhat-appstudio/integration-service/pull/632
https://github.com/redhat-appstudio/integration-service/pull/634
https://github.com/redhat-appstudio/integration-service/pull/635
https://github.com/redhat-appstudio/integration-service/pull/631
https://github.com/redhat-appstudio/integration-service/pull/618
https://github.com/redhat-appstudio/integration-service/pull/620
https://github.com/redhat-appstudio/integration-service/pull/630
https://github.com/redhat-appstudio/integration-service/pull/609
https://github.com/redhat-appstudio/integration-service/pull/617

/test appstudio-e2e-tests

/test appstudio-e2e-tests

/test appstudio-e2e-tests

/retest

/retest-required

/retest-required

/retest

/test appstudio-e2e-tests

/test appstudio-e2e-tests

/retest-required

/test appstudio-e2e-tests

/retest-required

/retest-required

/retest required

/retest-required

/retest-required

/retest-required

/retest-required

/retest-required

/retest-required

/retest-required

/lgtm
/approve


Fix bug in meta cache in MetadataCachingBaseFileSystem

Description:
meta data may be deleted in client cache although it is very hot.
Now MetadataCache holds mStatus which stores the current file/dir status and mDirStatuses which stores the children status.
  private class CachedItem {
    private final URIStatus mStatus;
    private final List<URIStatus> mDirStatuses;

For example, There is a path '/A/B/C'.
We run the listStatus request on the directory '/A/B'. After receiving result from alluxio master, it caches 'A/B' into the cache map which stores the children status for the path '/A/B' as mDirStatuses and its children '/A/B/C' into the cach map which stores the file/dir status as mStatus.
Then we run the listStatus request on the directory '/A'. After receiving result from alluxio master, it caches '/A' into the cache map which stores the children status for the path '/A' as mDirStatuses  and its children '/A/B' into the cach map which stores the file/dir status as mStatus. It replaces the previous content with a new CachedItem for '/A/B'.

public void put(AlluxioURI dir, List<URIStatus> statuses) {
    mCache.put(dir.getPath(), new CachedItem(statuses));
    for (URIStatus status : statuses) {
      mCache.put(status.getPath(), new CachedItem(status));
    }

If you rerrun the listStatus request on the directory '/A/B', you could not get the result. Because although the path '/A/B' is in the cache, it holds the content with mStatus. And the CachedItem with mDirStatuses has been replaced in the step 3.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-PR-Builder/10121/
Test FAILed.

@QianxiZhang Thanks for this contribution!
Could you create an issue (https://github.com/Alluxio/alluxio/issues) for this bug? The content in the PR description can go there.
Also, could add a unit test for this fix?

@QianxiZhang Thanks for this contribution!
Could you create an issue (https://github.com/Alluxio/alluxio/issues) for this bug? The content in the PR description can go there.
Also, could add a unit test for this fix?

Sure. Will do. @gpang

@QianxiZhang can you address these comments? thanks

@apc999 Sorry. I have some trouble with my account. Sure, I will handle these comments.

@apc999 @ZacBlanco
I have updated the commit. Please review.
Thanks.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-PR-Builder/10446/
Test FAILed.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-PR-Builder/10447/
Test FAILed.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-PR-Builder/10467/
Test FAILed.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-PR-Builder/10468/
Test FAILed.

I made some minor tuning on logging and indent.
LGTM and will merge this improvement after tests pass

Jenkins, test this please

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-PR-Builder/10469/
Test FAILed.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-PR-Builder/10470/
Test FAILed.

Jenkins, test this please

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-PR-Builder/10472/
Test FAILed.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-PR-Builder/10482/
Test FAILed.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-PR-Builder/10483/
Test PASSed.

@QianxiZhang
@apc999
Is there a github issue we can link to? Also, is there a more specific PR title we can use as to what was exactly fixed? Lastly, is there a simple unittest we can add to verify the correct behavior?

@QianxiZhang
@apc999
Is there a github issue we can link to? Also, is there a more specific PR title we can use as to what was exactly fixed? Lastly, is there a simple unittest we can add to verify the correct behavior?
@gpang

Here is the issue. https://github.com/Alluxio/alluxio/issues/11765
I agree. Let me think another title which can describe this PR more accurately.
I am writing a unittest for this issue. Will update later.

@QianxiZhang @zqxjjj  Thanks! Please update the unit test here so I could merge them together

@apc999
I have added unit test for this issue. Please help to review.
Thanks

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-PR-Builder/10520/
Test FAILed.

jenkins, test this please

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-PR-Builder/10521/
Test FAILed.

jenkins, test this please

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-PR-Builder/10530/
Test PASSed.

alluxio-bot, merge this please


table fixed

Not able to fix the heading and button while we scroll horizontally. Could you help me with this?

good


Build Failure When Running appSizeAnalysisRelease - Output folders are not match

I was trying to integrate the library into our codebase, but I'm encountering an issue.
Here is the block that I added to the app-level Gradle file:

When I run the following command:
./gradlew app:appSizeAnalysisRelease --no-configure-on-demand --no-configuration-cache --stacktrace

I receive the following output in the terminal:
> Task :app:generateApkRelease FAILED
The app.apks generated successfully

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:generateApkRelease'.
> Output folders are not match for default_device15161887257484072452

The way that you set the device specs needed to be corrected. It's unnecessary to create a new ListProperty
Try this:
appSizer {
    enabled = true
    projectInput {
        apk {
            // Remove val deviceSpecs = project.objects.listProperty(...)

            deviceSpecs = [
                    file("${rootProject.rootDir}/app-size-config/device-1.json"),
                    file("${rootProject.rootDir}/app-size-config/device-2.json")
            ]
        }
       ....
    }

Or using Gradle Kotlin DSL
        apk {
            deviceSpecs.set(listOf(
                file("${rootProject.rootDir}/app-size-config/device-1.json"),
                file("${rootProject.rootDir}/app-size-config/device-2.json")
            ))
        }


Exception when starting to play video (youtube)

This is the Exception I'm getting:
Exception in thread "lava-daemon-pool-playback-1-thread-1" java.lang.UnsatisfiedLinkError: com.sedmelluq.discord.lavaplayer.natives.opus.OpusDecoderLibrary.create(II)J
at com.sedmelluq.discord.lavaplayer.natives.opus.OpusDecoderLibrary.create(Native Method)
at com.sedmelluq.discord.lavaplayer.natives.opus.OpusDecoder.(OpusDecoder.java:21)
at com.sedmelluq.discord.lavaplayer.container.common.OpusPacketRouter.initialiseDecoder(OpusPacketRouter.java:190)
at com.sedmelluq.discord.lavaplayer.container.common.OpusPacketRouter.checkDecoderNecessity(OpusPacketRouter.java:174)
at com.sedmelluq.discord.lavaplayer.container.common.OpusPacketRouter.process(OpusPacketRouter.java:91)
at com.sedmelluq.discord.lavaplayer.container.matroska.MatroskaOpusTrackConsumer.consume(MatroskaOpusTrackConsumer.java:47)
at com.sedmelluq.discord.lavaplayer.container.matroska.MatroskaStreamingFile.processFrameInBlock(MatroskaStreamingFile.java:372)
at com.sedmelluq.discord.lavaplayer.container.matroska.MatroskaStreamingFile.parseClusterSimpleBlock(MatroskaStreamingFile.java:336)
at com.sedmelluq.discord.lavaplayer.container.matroska.MatroskaStreamingFile.parseNextCluster(MatroskaStreamingFile.java:321)
at com.sedmelluq.discord.lavaplayer.container.matroska.MatroskaStreamingFile.provideFrames(MatroskaStreamingFile.java:297)
at com.sedmelluq.discord.lavaplayer.container.matroska.MatroskaAudioTrack.lambda$process$0(MatroskaAudioTrack.java:39)
at com.sedmelluq.discord.lavaplayer.track.playback.LocalAudioTrackExecutor.executeProcessingLoop(LocalAudioTrackExecutor.java:257)
at com.sedmelluq.discord.lavaplayer.container.matroska.MatroskaAudioTrack.process(MatroskaAudioTrack.java:38)
at com.sedmelluq.discord.lavaplayer.track.DelegatedAudioTrack.processDelegate(DelegatedAudioTrack.java:27)
at com.sedmelluq.discord.lavaplayer.source.youtube.YoutubeAudioTrack.processStatic(YoutubeAudioTrack.java:77)
at com.sedmelluq.discord.lavaplayer.source.youtube.YoutubeAudioTrack.process(YoutubeAudioTrack.java:69)
at com.sedmelluq.discord.lavaplayer.track.playback.LocalAudioTrackExecutor.execute(LocalAudioTrackExecutor.java:90)
at com.sedmelluq.discord.lavaplayer.player.DefaultAudioPlayerManager.lambda$executeTrack$1(DefaultAudioPlayerManager.java:349)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
Thanks to everyone helping me :-)

most likely a duplicate of #169.
Please provide details about your LP version, OS, etc.

Greetings,
I use LavaPlayer 1.3.18 (I think so, it's the newest version) and I use Windows 10 as OS 64 bit. I'm coding with Java 8 and Intellij
using Gradle. I just clicked that issue you told me here it's duplicated, I didn't find it before, but I also don't understand his fixing. Is there anything else I could show you, so that the problem shows more precisely?

Use 64 bit Java.

Most likely a case of 32-bit JDK being used. Open a new issue if that is not the case. New versions should throw a more informative exception in case of native library load failure.


[consensus][reconfig] notify epoch change upon sync

Motivation
Normally a node aggregates the end-epoch QC and broadcasts the proof
to everyone else.
While there's edge cases that nodes might receive a SyncInfo that has
end-epoch QC and needs to start new epoch too, e.g. sending a older
SyncInfo to the node that's committing the reconfiguration block and
reply a SyncInfo with end-epoch QC.
This change addresses the problem and make sure nodes can switch epoch
after sync to the reconfig block.
Have you read the Contributing Guidelines on pull requests?
Y
Test Plan
Existing tests.
Related PRs
(If this PR adds or changes functionality, please take some time to update the docs at https://github.com/libra/website, and link to your PR here.)

@bors-libra r=davidiw

:pushpin: Commit 37f3088 has been approved by davidiw

:hourglass: Testing commit 37f3088b7923a00c60bad119a28528d4de3c3b29 with merge 17498fc878288dc680c531b584dcbae817747e31...

:broken_heart: Test failed - checks-circle_commit_workflow

@bors-libra r+

:pushpin: Commit 3b8902f has been approved by zekun000

:hourglass: Testing commit 3b8902f53366df4bd24d94d3125cbaa83b6b8327 with merge bebbb6d7975fd5af12793bd81195c9fc1fdd4cb1...

:sunny: Test successful - checks-circle_commit_workflow
Approved by: zekun000
Pushing bebbb6d7975fd5af12793bd81195c9fc1fdd4cb1 to master...


SectionList yellowbox misleading

Is this a bug report?
yes
Have you read the Contributing Guidelines?
yes
Environment

react-native -v:  react-native-cli: 2.0.1 & react-native: 0.47.2
node -v: v8.4.0
npm -v: 5.3.0
yarn --version: 0.27.5

Then, specify:

Target Platform: iOS

Development Operating System: Mac OS X

Build tools: react-native run-ios

Steps to Reproduce

Create a SectionList
Add flexWrap: 'wrap' style to the contentContainerStyle
See misleading yellowbox

Expected Behavior
SectionList doesn't support numColumns.  So there should be no yellowbox telling me to add it.

(Write what you thought would happen.)
Actual Behavior
FlatList warning comes in with advice that is useless on SectionList.   It also says it won't work, when it works just fine.

What should happen?
If we are going to add numColumns to SectionList, then the message should be different.  If we are not, then the yellowbox shouldn't show.
https://github.com/facebook/react-native/blob/57c7324ab7679df9a26d0b41e9fffba9dd50bd98/Libraries/Lists/VirtualizedList.js#L545-L548

I'm happy to fix this depending on what the proper path for SectionList is.  Also, I need to know why we're showing a warning saying it doesn't work, when it does.  Let me know how to proceed in fixing!

 I'm happy that the flexWrap css property still works even though we're warned not to use it, but I'm reluctant to use it in my app because of the warning. The react native team must've included this warning for a reason, right? I'm starting to see some wacky rendering behavior with the flexWrap property.
Does anyone know the reason for this warning?


Add an upgrade guide for v3

Extracted from #84.

Nevermind, got a little ahead of myself on this one. Will re-open when I catch up with other commits.


Inherit properties fix

@greentopsecret Please read this documentation chapter carefully: http://doctrine-orm.readthedocs.org/projects/doctrine-orm/en/latest/reference/inheritance-mapping.html#mapped-superclasses

any updates here?

@smoench , sorry for so late response. Check please PR, is it what you meant?

can you rebase it? thanks!

Follow PR #252


Unable to access Frontend VM from jump box

Hi,
I was installed ficus stamp version successfully. Did all code changes and its working well.
But from yesterday onwards I am unable to access the frontend VM using ssh from jump box and other VM's.
I think somehow the port 22 is disabled.
Can you please suggest me how to solve this issue? Also, there is no NSG for scale set VM's, how to enable the port 22 for scale set VM's?

Is this still an open issue for you?

Yes, eltoncarr.


Stop new item from inserting

For insertItem(item): Promise|insertedItem,
If no item is returned, inserting item will be used as inserted item.
In my case, validation is added to insertItem(item) function, thus, if the validation fail, no ajax was send to insert data into the database. Yet, new row is still added to the table without fail, how do i disable the new insertion?

Please, check out this ticket https://github.com/tabalinas/jsgrid/issues/54
For the insert you should redefine finishInsertmethod.


added code to store notify event in database table

added code to store notify event in database table
added exception handler to make sure error in function does not block the transaction.

great, thank you!


removed note section

I believe this section better be removed as it does not contain any specific information and only confuses
https://github.com/MicrosoftDocs/windows-itpro-docs/issues/6544

Dear @JohanFreelancer9,
kindly do the copy editor review for this PR.
Dear @nam31, for your information
Thank you

@mapalko PR has been copyedited and is ready for final review, could you please check and merge? Thanks!


Update scalafmt-core to 3.3.1

Updates org.scalameta:scalafmt-core from 3.3.0 to 3.3.1.
GitHub Release Notes - Version Diff
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

Ignore future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "org.scalameta", artifactId = "scalafmt-core" } ]

labels: library-update, early-semver-patch, semver-spec-patch, commit-count:1

Codecov Report

Merging #24 (5e78712) into main (11fc721) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main      #24   +/-   ##
=======================================
  Coverage   46.62%   46.62%
=======================================
  Files           5        5
  Lines         326      326
  Branches        7        7
=======================================
  Hits          152      152
  Misses        174      174

Continue to review full report at Codecov.

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


aggregateSpec use unclear

Hello could you please provide a clear explanation how aggregateSpec in useAggregateFromServer is to be defined? Its currently very unclear what the input is.
Thx for the and help and the lib!

Hey 👋
the best documentation is probably from firebase: https://firebase.google.com/docs/firestore/query-data/aggregation-queries#calculate_multiple_aggregations_in_a_query
The argument list of firestore's getAggregateFromServer and react-firehooks' useAggregateFromServer are identical.
// Example from firestore docs
const coll = collection(firestore, 'cities');
const snapshot = await getAggregateFromServer(coll, {
  countOfDocs: count(),
  totalPopulation: sum('population'),
  averagePopulation: average('population')
});

console.log('countOfDocs: ', snapshot.data().countOfDocs);
console.log('totalPopulation: ', snapshot.data().totalPopulation);
console.log('averagePopulation: ', snapshot.data().averagePopulation);

// Usage with react-firehooks
const coll = collection(firestore, 'cities');
const [data] = useAggregateFromServer(coll, {
  countOfDocs: count(),
  totalPopulation: sum('population'),
  averagePopulation: average('population')
});

console.log('countOfDocs: ', data?.countOfDocs);
console.log('totalPopulation: ', data?.totalPopulation);
console.log('averagePopulation: ', data?.averagePopulation);


Create Publisher form broken in Firefox

Describe the bug
I cannot publish an extension because the form to create a publisher from the instructions doesn't work in Firefox
To Reproduce

In Firefox, visit https://marketplace.visualstudio.com/manage/createpublisher
Fill out name and id
Click "Create" at bottom

Nothing happens and no errors appear in the console
Expected behavior
The form should submit
Screenshots
n/a
Desktop (please complete the following information):

OS: Windows 10
Browser: Firefox
Version 90.0

Additional context
The same steps work properly in Microsoft Edge

Just had the same issue with the following configuration:

OS: MacOS 12.0 Beta (21A5304g)
Browser: Firefox
Version: 92.0 (64 bit)

Switching to Google Chrome worked fine.

Hi @mattrossman,
Thanks for reaching VS Marketplace Team, are you still facing the issue?
Regards,
VS Marketplace Team

Closing the issue since there has been no updates on the information requested. If the issue still persists, please feel free to reopen or create a new issue.


mining client expansion issue

Hi there,
the current mining client only recognized the UUID of the disk storage, and I found out an issue is that it cannot be expanded. so this issue will be fixed? will it be iterated?
best regards

by the way, I wonder to know is that storage miners and consensus miners always require public IP?

The hard disk UUID has been cancelled. As long as your data is still there, you can expand the hard disk at any time. The current implementation requires storage miners and consensus miners to provide public IP, which will be considered to be lifted later.


Foot notes should be separated from text

what browser/OS are you seeing this in?

Chrome  76.0.3809.132 (Build oficial)  On Fedora 30
68.0.2 (64-bit) (also on Fedora 30)

Still present even with changes in #54

We need to differentiate the normal text from the footnotes, right now looks the same and is difficult to understand what that at the end of the blogpost is as looks like part of the post.

horizontal ruler or similar?

would adding "Footnotes" as the title for the section? Seems like a good way to provide good accessibility. WDYT @ptrnull @iranzo

@matthewcarleton worth to try, yes, and maybe making another block like the "" to have it separated from the article itself?

@ptrnull ok, that would probably fall upon the blog post contributor, so should we close this?

I think that the footnotes section should be indicated, having a title would be also good, appearing only when footnotes are present but still, with some kind of 'breaker' between article text and the notes


Introduce two operations to consumption API, price sheet and updated budget

Fix Go conf
Thanks you for your contribution to the Azure-SDK-for-Go! We will triage and review it as quickly as we can.
As part of your submission, please make sure that you can make the following assertions:

[ ] I'm not making changes to Auto-Generated files which will just get erased next time there's a release.

If that's what you want to do, consider making a contribution here: https://github.com/Azure/autorest.go

[ ] I've tested my changes, adding unit tests where applicable.
[ ] I've added Apache 2.0 Headers to the top of any new source files.
[ ] I'm submitting this PR to the dev branch, or I'm fixing a bug that warrants its own release and I'm targeting the master branch.
[ ] If I'm targeting the master branch, I've also added a note to CHANGELOG.md.
[ ] I've mentioned any relevant open issues in this PR, making clear the context for the contribution.

Closing for now, in response to #1057. These changes will be incorporated shortly.


Add find_columns_decimal

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Comparison is base (7e7b54a) 99.87% compared to head (ae972aa) 99.87%.

Additional details and impacted files
@@           Coverage Diff           @@
##             main      #96   +/-   ##
=======================================
  Coverage   99.87%   99.87%
=======================================
  Files          38       38
  Lines         801      804    +3
  Branches       84       84
=======================================
+ Hits          800      803    +3
  Partials        1        1

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Version Requirements

Hello, I noticed that you participated in the RL4 competition. I would like to reproduce your code to see the experimental results. Could you please tell me the versions of the dependencies in your requirements?

Hey 👋
I've updated the requirements.txt with versions. Hope this is enough for you. Let me know if you need any further assistance. Closing this issue now.
Ekrem


Weapons have invisible spots

When in third person, if you have a modded shield or curio item on you, it will make celestisynth weapons look see-through. Examples:

it seems to work fine if you change the texture and model files to act like vanilla weapons. Example of breezebreaker retexture:

Works fine if no items are equipped or in the offhand.

The issue must be with the weapon models, maybe to do with the fact they are flat 0 width textures. If the width is increased this may be fixed.

the same


updated folx (5.0.13493)

Changes to a cask
Editing an existing cask

[x] Commit message includes cask’s name (and new version, if applicable).
[x] brew cask audit --download {{cask_file}} is error-free.
[x] brew cask style --fix {{cask_file}} left no offenses.

Merged as 50abd0614b62ed45b15c7edb38a1f5339b00b53a.


Game crashed when placing an Energy Cell from Applied Energistics 2 next to a Flux Point

That's all there is to it, really. I'm playing SkyFactory 4 version 4.1.0. Twitch is being dumb right now so I can't get the mod or Forge version numbers, but it's Minecraft 1.12.2. Hopefully the missing stuff is easy information to get.
Crashlog: https://paste.dimdev.org/mibahedexu.mccrash

Outdated version


Add CCI config for releasing.

This PR gets us most of the way to an automated release + GitHub hosted chart repository. I'd appreciate quick review because I need this to land to make progress on the frontend and documentation, since this PR sets up chart repository hosting.

@nappelson Yep working on it currently.


EBUCore: WritingLibrary was missing if ReadByHuman option is set

Ugly but fast implementation before a complete refactoring of human readable fields management is implemented.

@g-maxime EBUCore and PBCore outputs should be same whatever is set the ReadByHuman option, please add some CI tests with XML.mxf and a file with video/audio in order to be sure we have this property always there.


Repository 'UpdateSiteSourceControl' operation failed with System.Net.WebException: The remote server returned an error: (502) Bad Gateway.

Hello,
I am following the manual deployment guideline, and always get the same error message for the 3rd time, even after trying a few other recommendations that seemed to have worked for others as found on other reported issues here.

@gsv022 I noticed you have helped at least one more person with this issue, can you please provide some assistance here as well?
I bet there is more than this error,

Hi @magafaterr ,
Thanks for logging the query. We are following this issue internally

Hi @magafaterr,
Please let us know if you face any issues otherwise we can make it to closure

Thank you! This issue was resolved yes, but unfortunately while uploading the Authors zip I am getting an error shared via email to you @gsv022. If you have a chance and can take a look, much appreciated!

@magafaterr , Please share the author manifest file

Thank you Sai Venkat , and Cristiano. I found the issue in the manifest, the app domain was not correct. This is now resolved. And you can close this open issue. I truly appreciate the amazing support!
Sent from my iPhone
On May 26, 2023, at 3:13 AM, Sai Venkat @.***> wrote:

@magafaterrhttps://github.com/magafaterr , Please share the author manifest file
—
Reply to this email directly, view it on GitHubhttps://github.com/OfficeDev/microsoft-teams-apps-company-communicator/issues/1051#issuecomment-1563914472, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AHRSLCJMI6PX46EHUGQIJLTXIBJYNANCNFSM6AAAAAAYMN36S4.
You are receiving this because you were mentioned.Message ID: @.***>


This package should define a peer dependency for crypto-browserify to latest version

The version shipped with this package is 3.2.x, which doesn't have the 'createVerify' and other methods implemented, which are required to run this package in the browser. The newest package of 'crypto-browserify (3.11.0) has them implemented.

I noticed upon defining the peer dependency this package says:
npm WARN peerDependencies The peer dependency crypto-browserify included from jsonwebtoken will no
npm WARN peerDependencies longer be automatically installed to fulfill the peerDependency
npm WARN peerDependencies in npm 3+. Your application will need to depend on it explicitly.

This package doesn't ship with "crypto-browserify", maybe you are using some fork?
https://github.com/auth0/node-jsonwebtoken/blob/master/package.json#L21-L34
crypto is part of nodejs and this project wasn't meant to be used in the browser.

if you only need to decode JWTs in the browser you can use http://github.com/auth0/jwt-decode
if you need to verify you can use http://kjur.github.io/jsrsasign/

Ah! Cool, thank you for the links, will definitely put them to use.
Cheers!

glad to help


How to let BboxT‘s track_id value be set?

internal uint track_id;           // tracking id for video (0 - untracked, 1 - inf - tracked object)
the comment shows tracking id will be 0 when untracked. I wonder to known how to enable tracking? Thank you very much!

Currenty i not use the logic of yolo for tracking. I work on an own implementation YoloTracking.cs but maybe i check the yolo internal again.

Hi, Tino, Thank you for you reply, I will show my approach just for a suggestion.
First: We need to add tracking feature to yolo_cpp_dll.dll
Open yolo_v2_class.cpp of project yolo_cpp_dll and change Line 325
from
return bbox_vec;
to
return tracking_id(bbox_vec, true, frames_story, max_dist);
PS.  frames_story and max_dist can be defined as parameters of Detector::detect or just leave them as magic number.
Second: Add and set TrackingId property to YoloItem in project Alturos.Yolo
public class YoloItem
{
        public string Type { get; set; }
        ......
        public uint TrackingId { get; set; }  // Add this.
        ......
}

in YoloWrapper.cs
private IEnumerable<YoloItem> Convert(BboxContainer container)
{
        ......
        var yoloItem = new YoloItem
        {
                X = (int)item.x,
                Y = (int)item.y,
                Height = (int)item.h,
                Width = (int)item.w,
                Confidence = item.prob,
                Type = objectType,
                TrackingId = item.track_id  // Add this.
        };
        ......
}

Third: Add tracking function to your code
private void DoTracking(string filename)
{
        VideoCapture capture = new VideoCapture(filename);

        while (!_exiting)
        {
                Mat mat = new Mat();
                capture.Read(mat);
                if (mat.Empty())
                    break;

                IEnumerable<YoloItem> items = _yoloWrapper.Detect(mat.ToBytes(), detectThresh, frameStory, minDist));

                if (items.Count() != 0)
                {
                    DoSomethingWithTrackingId();
                }

                Cv2.WaitKey(sleepTime);
        }
}

PS: I also change interface of Detect function that exported from yolo_cpp_dll.dll and pass frameStory and minDist parameter to tune tracking function.


[fpv,lc_ctrl,sec_cm] Failing "overnight" FPV tests for lc_ctrl

Description
An FPV test is failing for some assertions in lc_ctrl. To run this test, you can use:
util/dvsim/dvsim.py hw/top_earlgrey/formal/top_earlgrey_fpv_sec_cm_cfgs.hjson --select-cfgs=lc_ctrl_sec_cm --gui

The assertions that fail are FpvSecCmCtrlLcCntCheck_A, FpvSecCmCtrlKmacIfFsmCheck_A and FpvSecCmCtrlLcStateCheck_A.
All of these assertions are created with the ASSERT_PRIM_FSM_ERROR_TRIGGER_ALERT macro. This tries to say that if the prim_sparse_fsm_flop instance in question has an invalid state_o signal then we'll see an alert a few cycles later.
In these tests, we use Jasper's stopat functionality to turn the state_o signal into a free variable (which is why it's jumping around confusingly in the trace below).
This invalid state signal is detected with an is_undefined_state function (simulation only), which walks through the values in the enum and considers the state undefined if none of them match the signal we can see.
Here's a screenshot of Jasper showing a trace from a counterexample. I added the local state_o signal to make things a little easier to follow:

The confusing thing is that the unused_err_o signal is going high for some states which are definitely known. In this example, this happens with LcStateTestUnlocked4, LcStRma, LcStDev and LcStProd , as well as (correctly) happening with bogus values.
I don't understand why the Jasper interpretation of the code is driving the unused_err_o signal like this.

I've done a bit of further debug (with the help of @GregAC: thanks!). If you look at a failing trace, you can actually "step through" the body of the function that calculates whether an enum value is allowed. (Wow, Jasper!)
Unfortunately, this shows that we're comparing the 320-bit values which we're supplying with some 8-bit known values. Unsurprisingly, these don't match very often!
I have a strong suspicion this is a tool bug and that the most straightforward approach is to waive this particular failure. If anyone else has a good idea, I'd love to hear it!

I'm tagging this as part of M4 for now, since it's a genuinely failing test. I'm not sure whether the correct solution is a clever fix or a waiver, but it should hopefully be reasonably easy. Marking as P2 (not super important) and estimating 1 day of effort.

Oh! This turns out to duplicate an existing issue from two years ago. That issue had already been moved to the backlog. Will close this one as already tracked (and use the lower priority!)
Duplicate of #12693.