Verify Fail error

After running Homebridge with HomeAssistant platform and 2 Liftmaster garage accessories, I just saw this error which stopped homebridge. Any clue what it is related to? Had been running for probably 2 days no issue before.
Verify Fail
Layer Decrypt fail!
Verify Fail
Layer Decrypt fail!
undefined:1
{"characteristics":[{"aid":2,"iid":13,"ev":true},{"aid":2,"iid":16,"ev":true},{"aid":3,"iid":13,"ev":true},{"aid":3,"iid":16,"ev":true},{"aid":33,"iid":11,"ev":true},{"aid":33,"iid":14,"ev":true},{"aid":7,"iid":11,"ev":true},{"aid":7,"iid":14,"ev":true},{"aid":35,"iid":11,"ev":true},{"aid":35,"iid":14,"ev":true},{"aid":36,"iid":11,"ev":true},{"aid":36,"iid":14,"ev":true},{"aid":12,"iid":11,"ev":true},{"aid":12,"iid":14,"ev":true},{"aid":11,"iid":11,"ev":true},{"aid":11,"iid":14,"ev":true},{"aid":6,"iid":11,"ev":true},{"aid":6,"iid":14,"ev":true},{"aid":8,"iid":11,"ev":true},{"aid":8,"iid":14,"ev":true},{"aid":4,"iid":10,"ev":true},{"aid":4,"iid":13,"ev":true},{"aid":26,"iid":11,"ev":true},{"aid":26,"iid":14,"ev":true},{"aid":28,"iid":11,"ev":true},{"aid":28,"iid":14,"ev":true},{"aid":25,"iid":11,"ev":true},{"aid":25,"iid":14,"ev":true},{"aid":32,"iid":11,"ev":true},{"aid":32,"iid":14,"e
Here is my config file.
{
"bridge": {
"name": "Homebridge",
"username": "MAC",
"port": 8128,
"pin": "031-45-154"
},
"accessories": [{
	"accessory": "LiftMaster",
	"name": "Garage Door Left",
	"username": "email",
	"password": "password",
	"deviceID": "device"
}, {
	"accessory": "LiftMaster",
	"name": "Garage Door Right",
	"username": "email",
	"password": "pass",
	"deviceID": "device"
}],

"platforms": [{
	"platform": "HomeAssistant",
	"name": "HomeAssistant",
	"host": "http://IP:8123",
	"password": "",
	"supported_types": ["light", "switch", "media_player", "scene"]
}]

}

I faced the same issue today, after enabling iOS 10 beta 8 yesterday for the first time. Before it was running without any issues for 3 weeks.
These are the last lines of the homebridge.err:
`Tue, 30 Aug 2016 07:08:13 GMT EventedHTTPServer [<IP_ADDRESS>] HTTP Response is finished
Tue, 30 Aug 2016 07:08:18 GMT EventedHTTPServer [<IP_ADDRESS>] Sending HTTP event '113.9' with data: {"characteristics":[{"aid":113,"iid":9,"value":21.6}]}
Tue, 30 Aug 2016 07:08:20 GMT EventedHTTPServer [<IP_ADDRESS>] HTTP request: /characteristics
Tue, 30 Aug 2016 07:08:20 GMT HAPServer [CC:22:FF:E3:CE:30] HAP Request: PUT /characteristics
undefined:1
{"characteristics":[{"aid":122,"iid":12,"ev":true},{"aid":122,"iid":15,"ev":true},{"aid":36,"iid":11,"ev":true},{"aid":36,"iid":14,"ev":true},{"aid":37,"iid":11,"ev":true},{"aid":37,"iid":14,"ev":true},{"aid":38,"iid":12,"ev":true},{"aid":38,"iid":15,"ev":true},{"aid":39,"iid":15,"ev":true},{"aid":39,"iid":18,"ev":true},{"aid":40,"iid":12,"ev":true},{"aid":40,"iid":15,"ev":true},{"aid":123,"iid":13,"ev":true},{"aid":123,"iid":16,"ev":true},{"aid":42,"iid":12,"ev":true},{"aid":42,"iid":15,"ev":true},{"aid":43,"iid":15,"ev":true},{"aid":43,"iid":18,"ev":true},{"aid":44,"iid":12,"ev":true},{"aid":44,"iid":15,"ev":true},{"aid":143,"iid":13,"ev":true},{"aid":143,"iid":16,"ev":true},{"aid":144,"iid":13,"ev":true},{"aid":144,"iid":16,"ev":true},{"aid":125,"iid":11,"ev":true},{"aid":125,"iid":14,"ev":true},{"aid":28,"iid":11,"ev":true},{"aid":28,"iid":14,"ev":true},{"aid":4
SyntaxError: Unexpected token `

Still seeing this error now and then. Here's a more recent log.
http://pastebin.com/bzt9hWn5

I believe v0.4.9 fixes the problem. Please open the issue again if you experiences similar problem again.


memory leak in CRYPTO_set_ex_data

Under low memory a memory leak was observed with openssl-1.0.2j:
Reason is a bit unclear, probably it is possible that in def_get_class
an unnoticed error happens on lh_EX_CLASS_ITEM_insert, which
makes int_new_ex_data succeed, but int_free_ex_data fails,
and does not even remove the sk object.
The following patch makes the memory leak go away.
The first hunk may be unnecessary.
Direct leak of 32 byte(s) in 1 object(s) allocated from:
    #0 0x7f6ba50fa310 in __interceptor_malloc ../../../../gcc-7-20161211/libsanitizer/asan/asan_malloc_linux.cc:62
    #1 0x2153e5a in CRYPTO_malloc crypto/mem.c:346
    #2 0x21ac96c in sk_new crypto/stack/stack.c:162
    #3 0x21ac96c in sk_new_null crypto/stack/stack.c:154
    #4 0x215920c in CRYPTO_set_ex_data crypto/ex_data.c:614
    #5 0x236b017 in ssl_verify_cert_chain ssl/ssl_cert.c:734
    #6 0x239dd44 in ssl3_get_server_certificate ssl/s3_clnt.c:1255
    #7 0x23aacc8 in ssl3_connect ssl/s3_clnt.c:345
    #8 0x233e3ae in ssl23_get_server_hello ssl/s23_clnt.c:799
    #9 0x233e3ae in ssl23_connect ssl/s23_clnt.c:228
    #10 0x233f744 in ssl23_write ssl/s23_lib.c:173

--- crypto/ex_data.c.orig       2016-09-26 11:49:07.000000000 +0200
+++ crypto/ex_data.c    2016-12-17 19:02:12.862512254 +0100
@@ -501,9 +501,9 @@ static void int_free_ex_data(int class_i
     void *ptr;
     CRYPTO_EX_DATA_FUNCS **storage = NULL;
     if (ex_data == NULL)
-        return;
+        goto err;
     if ((item = def_get_class(class_index)) == NULL)
-        return;
+        goto err;
     CRYPTO_r_lock(CRYPTO_LOCK_EX_DATA);
     mx = sk_CRYPTO_EX_DATA_FUNCS_num(item->meth);
     if (mx > 0) {
@@ -517,7 +517,7 @@ static void int_free_ex_data(int class_i
     CRYPTO_r_unlock(CRYPTO_LOCK_EX_DATA);
     if ((mx > 0) && !storage) {
         CRYPTOerr(CRYPTO_F_INT_FREE_EX_DATA, ERR_R_MALLOC_FAILURE);
-        return;
+        goto err;
     }
     for (i = 0; i < mx; i++) {
         if (storage[i] && storage[i]->free_func) {
@@ -528,6 +528,7 @@ static void int_free_ex_data(int class_i
     }
     if (storage)
         OPENSSL_free(storage);
+ err:
     if (ad->sk) {
         sk_void_free(ad->sk);
         ad->sk = NULL;

@bernd-edlinger  at this point you've opened more than 20 issues/bugfixes.  We have gotten past the point of considering these to be trivial  Please sign our CLA.

yes, I agree, will do that ASAP,
but it will take a while because I need a corporate CLA to be signed by
company, www.softing.com
The good news is that with these changes the openssl survives our
OPC/UA stress test so far, while it crashed immediately before.

That is really good news.  While waiting for the CCLA paperwork, perhaps you could start a pull request that has all your changes? :)

All patches combined?
Note: I am not sure if #2114 is the right way to fix or if in this case it would be better
to set the SSL object in an error state, also for #2113 might be the wrong place
to handle the error.  What is clear is that there is no crash or memory leak with these
patches at least.


qt5.qtsvg: Fix cross

qt cross is really a mess.
$ nix build ".#pkgsCross.aarch64-multiplatform.qt5.qtsvg"
qtsvg-aarch64-unknown-linux-gnu> Error: detected mismatched Qt dependencies:
qtsvg-aarch64-unknown-linux-gnu>     /nix/store/.-qtbase-aarch64-unknown-linux-gnu-5.15.11-dev
qtsvg-aarch64-unknown-linux-gnu>     /nix/store/.-qtbase-5.15.11-dev

/nix/store/xm6g4inrfph2nh0m5g9p1ppqrkn1ca7k-qtsvg-aarch64-unknown-linux-gnu-5.15.12.drv
└───/nix/store/r6yh8h14hqbcx23zdvmsyj15gvhbvdwz-qmake-hook.drv
    └───/nix/store/0bkp01mapjqirs5f61255vwgpi306rm6-qtbase-5.15.12.drv

https://github.com/NixOS/nixpkgs/pull/264964 might work too or could be broken in more ways but qt cross is a mess
Description of changes

Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
24.11 Release Notes (or backporting 23.11 and 24.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

Any progress on this? I just tried it and it didn't error, compiled correctly.


feat: add securityContext defaults to deployment manifest

Fix ?
In it's current form, the installation instructions for capacitor in this repository do not work for clusters that are hardened following pod security best practices and have the restricted pod security standard enforced for it's flux-system namespace.
The following error will be thrown by the kubernetes API:
'pods "capacitor-XXXXX-XXXX" is forbidden: violates PodSecurity "restricted:latest":
      allowPrivilegeEscalation != false (container "capacitor" must set securityContext.allowPrivilegeEscalation=false),
      unrestricted capabilities (container "capacitor" must set securityContext.capabilities.drop=["ALL"]),
      runAsNonRoot != true (pod or container "capacitor" must set securityContext.runAsNonRoot=true),
      seccompProfile (pod or container "capacitor" must set securityContext.seccompProfile.type
      to "RuntimeDefault" or "Localhost")'

Solution
In a similar fashion to flux's security documentation this change makes the capacitor manifests compatible with the standard allowing deployment to a hardened cluster without manual configuration by the enduser.
What has been done

The helm values have been updated to include a securityContext compatible with the "restricted" PodSecurity standard profile
The manifests have been re-rendered to include this change

This is a quality pull request. Sorry for keeping you waiting.


need support ubuntu 20

need support ubuntu 20

Hi,
I've added support for Ubuntu 20.04 on the release 0.1.17
kind regards,


Problem when using with JQuery

Hi, I'm trying to use kaminari in a project that uses jquery-rails.
After installing the gem and adding the appropriate code to the controller and index.html.erb
I get the following error:
Missing partial exercises/exercise with {:handlers=>[:erb, :rjs, :builder, :rhtml, :rxml], :formats=>[:html], :locale=>[:en, :en]}
Any ideas?
Regards,
Jens

I have the same question as epipheus.. apparently the prototype-rails UJS helper does some magic when it receives a HTML response to a remote pagination link whereas the jquery UJS helper doesn't. It's a shame because replacing a render :partial with an index.js.erb feels like an unnecessary evil. We're now working on a UJS solution for this, which we will share if anyone can use it.

The fact that you must create a .js version of your controller action is completely normal. I've never used prototype but even on rails 2.x and the old rjs you must tell what the action's response will be from a javascript request. I'm not following what's wrong with either kaminari or jquery-rails.

Well, now I have a simple
render :partial => "list", :layout => false

in my controller (if request.xhr? of course) and the following JS to handle updating:
$(".pagination a[data-remote]").live("ajax:complete", function(event, xhr, status) {
  var container = $(this).parents(".pagination").get(0).parentNode;
  $(container).html(xhr.responseText);
});

This way there is no need for an additional layer of JavaScript in my views. This way we don't need to add js views to all our index actions, since this is the behavior that we counted on in our Rails 3.0 + Prototype application.
For a new application, the .js approach is just as fine of course. I'm just putting this here to help out those looking for a quick fix after switching from Prototype to jQuery.

I agree it's a good solution but it's also implementation dependent. We can't be sure the class is .pagination or that the container is the parent of the element.
Just pointing out why they must not assume this kind of stuff, exactly because they don't know what code is using the pagination :)


Do not download mac/windows binary for ppc64le

These binaries will not work on ppc64le. Only create the openshift-clients/ directories which are needed by the architecture. This also remove the need for the unzip package on ppc64le.

/ok-to-test
/lgtm

This should be handled as part of createdish.sh, CI passes because of x86_64 platform.

rebase was a little messy for me, sorry! deleted branch and pushed cleanly so hopefully works out

Closing this. Use PR #305


Retrieve serverless build hash from nodes info API

This PR adds retrieval of build hash for serverless clusters from nodes info API (_nodes?filter_path=**.build_hash).
The PR introduces 2 configuration settings under driver section:

serverless.mode - equals true if Rally targets serverless cluster
serverless.operator - equals true if Elasticsearch user has operator privileges

Thank you for the change! Does it make sense to add a test in driver_test.py?

@ebadyano

Does it make sense to add a test in driver_test.py?

Sure, added in https://github.com/elastic/rally/pull/1756/commits/b9a2ab8752a458a2cd29003756a24bfec0a0bd54. Please take a look.


Guard mocha cli reporter from registering step logger multiple times

Motivation/Description of the PR

Programmatic invocation of CodeceptJS allows multiple reruns of the tests from one node process with the logging registering on each test run and producing duplication of the log entries in console output being only problem so far. The change in CodeceptJS cli reporter insures logger is registered only once.
Resolves #issueId (if applicable).

Applicable helpers:

[ ] WebDriver
[ ] Puppeteer
[ ] Nightmare
[ ] REST
[ ] FileHelper
[ ] Appium
[ ] Protractor
[ ] TestCafe
[ ] Playwright

Applicable plugins:

[ ] allure
[ ] autoDelay
[ ] autoLogin
[ ] customLocator
[ ] pauseOnFail
[ ] coverage
[ ] retryFailedStep
[ ] screenshotOnFail
[ ] selenoid
[ ] stepByStepReport
[ ] stepTimeout
[ ] wdio
[ ] subtitles

Type of change

[ ] :fire: Breaking changes
[ ] :rocket: New functionality
[x] :bug: Bug fix
[ ] :clipboard: Documentation changes/updates
[ ] :hotsprings: Hot fix
[ ] :hammer: Markdown files fix - not related to source code
[ ] :nail_care: Polish code

Checklist:

[ ] Tests have been added
[ ] Documentation has been added (Run npm run docs)
[ ] Lint checking (Run npm run lint)
[ ] Local tests are passed (Run npm test)

Thanks!


Update navigation.cjsx

Add a link to the FAQ post on Talk

@jwidness is this new link going to stay in the navbar permanently (or for a while)? If so, there's a minor style change that needs to be made for the menu when on small viewports (mobile, tablet), but I can get that in a separate PR.

I think the plan was to keep it long term, though I think we may change the destination at some point (which actually isn't that relevant to your question).

@jwidness Ok, sounds good. I'll merge this in and fix the mobile menu in a separate PR today. It just needs a size adjustment to accommodate another link.


clean suggestions

I need delete some suggestions that contains passwords.
Can you help me?
Thanks

Ok, I edit .zsh_history. I don't know why before I didn't see the lanes. Thanks.


GUI Based Analysis is Orders of Magnitude Slower Than CLI

Describe the bug
With a large database (tested with 300+MB) analysis that takes only a few seconds directly with the CLI takes quite a while on the GUI, and there is no real progress notification.
Expected behavior
I think we should add a button to skip writing the analysis results to the database if possible, perhaps storing them in AppState, which is I suspect the bottleneck.

further investigation fins this is largely because the methods to write analysis records to the database are not sharded and thus only single threaded. I think its worth exploring two approaches, the one proposed above, and alternatively (or also) changing analysis results to be sharded like collect results.


Update urdf-rs, k, and urdf-viz

~~Depend on https://github.com/openrr/k/pull/116 and https://github.com/openrr/urdf-viz/pull/207 https://github.com/openrr/urdf-viz/pull/208.~~

Hmm, yaserde seems to be buggy.

thread 'clients::joint_position_limiter::tests::from_urdf' panicked at 'assertion failed: (left !== right) (left: 0.0, right: -2.0, expect diff: 1e-6, real diff: 2.0)', arci/src/clients/joint_position_limiter.rs:503:9


Typography

Issue summary
Expected behavior
Actual behavior
Steps to reproduce
Browser and OS
Additional notes

This seems to be a SPAM account.


Add deploy preview

Is there a way to add a deploy preview to the CI checks? If so, that would make it easier to review some PRs.

This is done now 🎉 although it will only start working for other PRs once we merge https://github.com/adopted-ember-addons/ember-collapsible-panel/pull/121 👍


License

Add licence please, preferably Apache 2.0

Could you explain your preference over MIT license? I thought to add that one.

MIT is even better thank you, some MRs may follow, we are going to upgrade the project a bit to use latest versions of apollo, react, babel, webpack etc... and use it as an initial scaffold setup to base other projects on it.

Done


Add handling for /stats command

Use Cases

/stats: show stats overview
/stats STAT_NAME: show detail view for a particular stat
/stats --help: print help on the stats command, including the list of available STAT_NAME arguments that will work.

Specs defined in https://github.com/LearnersGuild/learning-os-software/pull/135

@tannerwelsh -- please update this once you figure out the behavior around viewing stats. Thanks!

Thanks @jeffreywescott. This is now blocked by https://github.com/LearnersGuild/game-prototype/issues/109

Admin UI to the rescue!


Port not visible

If I want to change the settings of a server I see no port. When you save the port is not stored in the connection.json. If the port is not saved (eg 6697), a connection is denied. Probably Convos then wants to connect to the standard port 6667. You can specify the port, but it is no longer displayed after saving it

Ah! I know where this bug is.
Thanks for reporting in :)


Possibly wrong rule in the solver ruleset

The sample solution generated for the orthocentre problem by alhpageometry looks like this:
* From theorem premises:
A B C D : Points
BD ⟂ AC [00]
CD ⟂ AB [01]

 * Auxiliary Constructions:
E : Points
C,A,E are collinear [02]
B,D,E are collinear [03]

 * Proof steps:
001. E,C,A are collinear [02] & B,E,D are collinear [03] & BD ⟂ AC [00] ⇒  ∠CED = ∠BEA [04]
002. E,C,A are collinear [02] & B,E,D are collinear [03] & BD ⟂ AC [00] ⇒  ∠DEA = ∠CEB [05]
003. BD ⟂ AC [00] & CD ⟂ AB [01] ⇒  ∠BAC = ∠CDB [06]
004. B,D,E are collinear [03] & E,A,C are collinear [02] & ∠CDB = ∠BAC [06] ⇒  ∠CDE = ∠BAE [07]
005. ∠CED = ∠BEA [04] & ∠CDE = ∠BAE [07] (Similar Triangles)⇒  CE:BE = DE:EA [08]
006. CE:BE = DE:EA [08] & ∠DEA = ∠CEB [05] (Similar Triangles)⇒  ∠DAE = ∠CBE [09]
007. CE:BE = DE:EA [08] & ∠DEA = ∠CEB [05] (Similar Triangles)⇒  ∠EDA = ∠ECB [10]
008. ∠DAE = ∠CBE [09] & C,A,E are collinear [02] & B,D,E are collinear [03] & ∠EDA = ∠ECB [10] ⇒  AD ⟂ BC
==========================

I0118 18:44:43.041623<PHONE_NUMBER>28416 alphageometry.py:575] Solved.

As far as I understand, step 003 is wrong: the statement is correct for the angles between two straight lines, not for angles BAC and CDB. Does that mean the network has generated the wrong text? Or it just used a rule from the set, and the rule is wrong?

I think it is indeed a wrong statement. If ABC is an acute triangle and D is the orthocenter of ABC (based on the premises). Then D lie inside the triangle and making BAC = 180 - CDB.
Hope to see some response on this. My prediction is the language model might be off on this step.

Angles are full angles. BAC=180-CDB implies ∠CDB = ∠BAC as of the definition of angles in DD.

I think it is indeed a wrong statement. If ABC is an acute triangle and D is the orthocenter of ABC (based on the premises). Then D lie inside the triangle and making BAC = 180 - CDB. Hope to see some response on this. My prediction is the language model might be off on this step.

Also there are degenerate cases when ABC is a right triangle.

http://www.mmrc.iss.ac.cn/~xgao/paper/jar-gdbase.pdf Contains a good explanation of many predicates. But some are new here.

Why does 006 looks wrong? If ratios are congruent and angles are congruent, then triangles are similar.

Because the angles are full angles.

In this case it does not matter because the angle is 90º, so it is still valid. And in the last step, it is also needed to assume that the angle is 90º to arrive at the conclusion which is not stated. Maybe the traceback function did not work well and lost some steps in the process. But the proof seems valid. Further clarification from authors is needed to know if the failure is on the traceback or the deduction steps.

I think it is indeed a wrong statement. If ABC is an acute triangle and D is the orthocenter of ABC (based on the premises). Then D lie inside the triangle and making BAC = 180 - CDB.

We use oriented/directed/full angles, where both cases are covered.

Because the congruent angles are full angles, but for similarity we need the traditional interpretation of the angles congruency.

In this case it does not matter because the angle is 90º, so it is still valid.

Yes it is valid because of 90.
For angles other than 90, you can confirm the step is valid with the diagram (https://github.com/google-deepmind/alphageometry/commit/82364a7f3f245ba00df5574a1db40bf38def9a7f).

And in the last step, it is also needed to assume that the angle is 90º to arrive at the conclusion which is not stated. Maybe the traceback function did not work well and lost some steps in the process. But the proof seems valid. Further clarification from authors is needed to know if the failure is on the traceback or the deduction steps.

There is no need for the angle to be 90, using the premises of [008]:
∠DAE = ∠CBE [09]  ∠EDA = ∠ECB [10] => ∠AED = ∠BEC [008a]
∠AED = ∠BEC [008a]  C,A,E are collinear [02] => ∠(AC, ED) = ∠(BE, AC) [008b]
∠(AC, ED) = ∠(BE, AC) [008b]  B,D,E are collinear [03] =>  ∠(AC, ED) = ∠(ED, AC)  [008c]
 ∠(AC, ED) = ∠(ED, AC)  [008c] => AC ⟂ ED [*]
So the "angle = 90 [*]" that you need is already in the premise.

Because the congruent angles are full angles, but for similarity we need the traditional interpretation of the angles congruency.

In this case it does not matter because the angle is 90º, so it is still valid.

Yes it is valid because of 90. For angles other than 90, you can confirm the step is valid with the diagram (82364a7).

Sorry, I didn't understand. On step 006, the solver used the rule r39:

I think there is an example where step 6 might be false if applied definition of directed angle: Consider a right triangle ABC with M be midpoint of BC. Then ∠CMA=∠AMB, and CM/AM=AM/BM (as MA=MB=MC). However, AMB and AMC are not similar, because the angles are not congruent.

Angles in AlphaGeometry have direction (sign). I made some improvements in a fork repository and have some ideas to further improve the performance of AlphaGeometry, check out AG4Masses and issue 110. I also shared my experiences with AG, including explanation of the sign of angle issue.


fix default value set for bool type

bool is subclass of int, while default True or False should not be converted into int 1 or 0.

aaz cmd:

before:

after:

corresponding swagger line：
https://github.com/Azure/azure-rest-api-specs/blob/493aa7224fd65fe1e5b4cff59bcae5c6cdf4525e/specification/monitor/resource-manager/Microsoft.Insights/preview/2023-05-01-preview/tenantActionGroups_API.json#L570

Also see https://stackoverflow.com/questions/37888620/comparing-boolean-and-int-using-isinstance

As a side note, https://github.com/Azure/azure-cli/pull/16081 took a different approach. It sets the default value of role to None and defaulting it to Contributor in custom.py's code.

The C source code of bool also mentions:
https://github.com/python/cpython/blob/832c37d42a395d4ea45994daffa5e41bd74ac1bb/Objects/boolobject.c#L118

The class bool is a subclass of the class int, and cannot be subclassed.

An alternative is to consider developing our own Bool and implementing special methods such as __bool__, __str__, so that it acts like a real bool, and also bears additional attribute is_default.


Job summary lists unwanted results for builds invoked by tooling and/or tests

We have CI workflows/jobs setup w/ the Gradle build action - it's running fine w/o any issues for quite a while now.
The only thing that I do not fully understand is that the build summary lists a lot of "phantom" Gradle builds that requested the classes task (see screenshot), although the workflow does not do that, neither do our build files directly.
We do use the Quarkus plugin in our builds, and I suspect that the Quarkus plugin somehow triggers/causes these "phantom" builds listed in the summary.
Would it be possible to hide these "phantom" builds in the action?

Workflow reference
"Heads-up" on the Quarkus side: https://github.com/quarkusio/quarkus/issues/29890

I'm having this issue, but I think my problem is slightly different.
I'm one of the strange ones who uses long-lived github runners.  Over time, these runners run many different gradle builds from many different projects.
It has gotten to the point now when I do a single gradle build of a single project, my build summary shows 100's of lines, showing various projects that are not related to my current build.
Is this something to do with cache, or possibly with a cluttered gradle user home?  I've added a step at the beginning of my workflow that clears ~/.gradle but that doesn't seem to help.

@nnellanspdl Yes this likely has a different cause. Can you please open a separate issue to track this?


Can we get rid of the IRenderTarget interface?

Description of the new feature/enhancement
As I understand it, the IRenderTarget interface is primarily used by the TextBuffer class to support the concept of multiple buffers in conhost. So when a text buffer triggers a redraw, that goes through the ScreenBufferRenderTarget implementation, and it'll only forward the call to the renderer if we're in the active buffer.
But what if we added a flag in the TextBuffer class to track if it is the active buffer or not? That's easy to update whenever the active buffer changes, and then we can deal with the renderer directly. When the buffer needs to trigger a redraw, it simply checks the flag to see if it's active before forwarding the request to the renderer.
I've been working on an PR for this, and it looks to me like it's doable. It doesn't appear to make a great difference to the performance one way or the other, but it does shrink the binary, and I think it makes the code a little simpler. My main reason for wanting this, though, is because I'm hoping it will help with the AdaptDispatch refactoring I'm working on for #3849.
Proposed technical implementation details (optional)
TextBuffer gets a new field which tracks whether it's active or not, and has a reference to the actual Renderer class rather than IRenderTarget. When it needs to trigger a redraw (or any of the other IRenderTarget methods), it checks whether it's active or not before forwarding the request to the renderer.
Anywhere that is currently getting a IRenderTarget from the TextBuffer in order to trigger a redraw, would now just call the TriggerRedraw method on the TextBuffer class itself, since that will handle the active check which would previously have been the responsibility of the render target. All the trigger methods that are currently in IRenderTarget would now be exposed in TextBuffer.
One catch with this approach is that we'd need to rethink the initialization order in conhost. In the ConsoleInitializeConnectInfo function, we'd need to move the Renderer initialization up so it's constructed first, and only after that call the SetUpConsole function to initialize the buffer. Once they're both initialized, we can then call the Renderer::EnablePainting method to allow the render thread to start.
The other catch is that the renderer tries to setup its initial viewport in the constructor, but at that point in time the viewport size would be unknown. However, that can easily be addressed by moving the viewport initialization into the EnablePainting method, since that would still be called after the buffer is setup (as mentioned above).
Note that this order of initialization more closely matches the Windows Terminal implementation, which is one of the reasons why I think it'll be beneficial for #3849.
On the whole, the changes needed to make this work look fairly straightforward. The biggest pain is getting the unit tests to work again, because some of them rely on the IRenderTarget interface for mocking the renderer, and others depend on the order of initialization. They're all fixable, but it might be a bit messy.

I'm planning for the renderer to decompress the viewport into a buffer, so that each rendering engine can directly access the string of text on each row and don't need to use complex iterators in order to parse run-length encoded attributes.
So instead of calling each rendering engine with Invalidate, PrepareRenderInfo, PaintBackground, PaintCursor, etc., I'm planning to effectively only have one function call in the future. That one will provide the engine with a "fat struct" containing all of that decompressed data and the engine can use it however it sees fit. This will be immensely helpful to the AtlasEngine as it doesn't "paint a background" or "paint a cursor" for instance - it's not based on GDI or Direct2D after all.
Because the "fat struct" is a snapshot of the state of the TextBuffer we'll be able to hold the console lock for a shorter period of time. I hope that this will additionally reduce bugs and simplify unit testing, as the engines will not hold any implicit state between rendering passes anymore (and only rely on the "fat struct snapshot" instead).
I believe this won't interfere with your plans. 🙂

Apart from that I think it's a bit weird that the TextBuffer would trigger redraws and I feel like it makes more sense if the caller of the TextBuffer would do so. However we have a pretty large API surface for TextBuffer, so practically it's probably safer to trigger redraws there. As such I'm personally in favor of your idea. (Also we can just change it again in the future if it doesn't work out as planned.)

It doesn't appear to make a great difference to the performance one way or the other, but it does shrink the binary, and I think it makes the code a little simpler.

Weirdly enough your other interface-related changes in the past also didn't show a noticeable performance improvement for me. But it seems they have quite an effect when we build our official PGO'd releases of Windows Terminal, because 1.13 has like 16% faster VT throughput than 1.12.

Apart from that I think it's a bit weird that the TextBuffer would trigger redraws and I feel like it makes more sense if the caller of the TextBuffer would do so.

In some cases it may be appropriate for the caller to trigger the redraw directly on the renderer, assuming it's a "global" update. But when the update is the result of a buffer modification, they're going to need to check whether they're working with the active buffer, otherwise the redraw shouldn't be happening.
So rather than having all of those callers doing something like
if (buffer.IsActiveBuffer())
{
    renderer.TriggerRedraw();
}

I figured it would cleaner to let the buffer handle the check, and then the caller just uses:
buffer.TriggerRedraw();

That way all of those active checks are happening in once place, and there should be less code bloat.

Weirdly enough your other interface-related changes in the past also didn't show a noticeable performance improvement for me. But it seems they have quite an effect when we build our official PGO'd releases of Windows Terminal, because 1.13 has a ~16% faster VT throughput than 1.12.

Wow! That's good to know. I was rather disappointed with the results I was seeing for those interface changes, because I was convinced we should be getting at least some boost from removing the virtuals. So maybe there's a chance this refactor could still have some performance benefit too.

In some cases it may be appropriate for the caller to trigger the redraw directly on the renderer, assuming it's a "global" update.

IMHO the ScreenBufferRenderTarget is just fine conceptually, but it should own both instances of TextBuffer, manage the active one, call the renderer as needed, and be called /TextBuffer(Adapter|Dispatcher|...)/ instead. I don't particularly like that it depends on global state / doesn't "own" the data it manages.
Basically if I were to write this from scratch I'd have the "owner" of the TextBuffer be responsible to call the renderer. If we add a reference to the renderer into TextBuffer, we conceptually have a circular dependency between the buffers and renderer, where the buffers signal changes to the renderer and the renderer reads from the buffer. IMHO software is usually easier to understand if "data" only "flows" in one direction, but this way it flows in both.
But I realize that it's a bit annoying when we have more than a few APIs to cover in the /TextBuffer(Adapter|Dispatcher|...)/. It'd be nice if it had only one function that can modify the buffer. (For instance by accepting some coordinates and a VT string and the TextBuffer parsing the VT as appropriate. That would also allow us to rewrite Win32 Console functions in VT sequences.)

IMHO the ScreenBufferRenderTarget is just fine conceptually, but it should own both instances of TextBuffer,

There's not just two instances of TextBuffer though. A Windows console app can theoretically have an infinite number of buffers, each of which can have main and alternate variants. And if/when we support VT paging, we'll need to manage those buffers too. Although the VT pages would ideally be a variant of the console buffers, because I was hoping that might give us way to "pass-through" those buffers to conpty.

we conceptually have a circular dependency between the buffers and renderer, where the buffers signal changes to the renderer and the renderer reads from the buffer.

But that's already the case now - the TextBuffer is already calling the renderer (via the render target) to trigger a redraw. In the case of the Terminal, the render target is literally also the renderer. If you think there's a way we can eliminate that circular dependency, that's great, but that seems like a candidate for a future PR. My proposed changes should at least make that easier I think.

It'd be nice if it had only one function that can modify the buffer.

Maybe I'm not understanding what you mean, because I can't see how that would possibly work.

That would also allow us to rewrite Win32 Console functions in VT sequences.

That is my ultimate goal. So at least we agree on something. 😉

Well now I agree on everything you say. 😄

Maybe I'm not understanding what you mean, because I can't see how that would possibly work.

I'm not familiar with our VT implementation yet. But personally I was hoping to have a function akin to
textBuffer.Write(VtVersion::Xterm256, L"\x1b[123;456X");

...and implement all of the Console API on top of that function. Any VT state would be part of the TextBuffer in that case. However I didn't consider situations like alternative buffers, so I realize that this won't be possible. Our current VT solution involves a lot of different classes and I always appreciate it if we can reduce the number and consolidate state.

Your idea of a textbuffer.Write function is essentially our StateMachine::ProcessString method. The state machine handles the low level parsing of the escape sequences, but it's responsible for both input and output sequences, which is why it then has to split into two separate "engine" classes. It's possible that split could be avoided, but there's not an obvious fix for that as far I can see.
Then in the OutputStateMachineEngine, there's a further level of parsing before the commands are forwarded to a dispatcher. This is because we've got one dispatcher for conhost and another for the terminal, which is what I'm currently trying to merge. With a single dispatch class, we might then be able to combine the dispatcher with the output engine, but I think that's a long way off still.
I fully appreciate the desire to simplify and cut down on the number of classes, and I'm doing my best to achieve that, but it's not going to happen overnight (at least not at the rate I'm going 😉). I think we just need to take one step at a time, and try to make sure that each step is moving us in the right direction.


Refs #16508 -- Made Model.init aware of virtual fields.

Making Model.init recognize keyword arguments for virtual fields means
it is no longer necessary for GenericForeignKey (and any other virtual
fields) to intercept them using the pre_init signal.
This makes two tests for GenericRelatedObjectManager.add fail, see the ticket for discussion.

Apart of the get_field() comment, LGTM.

merged in 8a47ba679d2da0dee74671a53ba0cd918b433e34 and b9f8635f58ad743995cad2081b3dc395e55761e5, thanks!
For future reference, we usually try to have the tests pass after each commit (not sure if you realized that some tests were broken after the first one).


use git resource rather than container wf

the daisy container has a copy of the workflows from compute-image-tools, which are used for the references within the build-publish workflows. this PR changes the reference so we are always consistently using the git resource from the pipeline

/lgtm


Outlook reminder dialog expands to size of fancy zone.

Environment
Windows build number: [Microsoft Windows [Version 10.0.17763.1217]]
PowerToys version: Version v0.16.1
PowerToy module for which you are reporting the bug (if applicable):

Steps to reproduce

Open Outlook
Fit it to a fancy zone
set a reminder
when reminder comes it if fill the fancy zone.

Expected behavior
Reminder dialog  is a fix dialog window it should not expand

Actual behavior
When a reminder dialog comes up it expands to fit the fancy zone and there is no way to resize it back to normal

Screenshots

Hi @ToadCodeGitHub
please update to https://github.com/microsoft/PowerToys/releases and verify if it still happens.
Thanks.

Closing since it should be fixed in 0.19, please reopen if it still reproduces.

This problem returned a few days ago, Exclusion of "Reminders" used to work keeping reminders pop-up original size, now the small fixed reminders pop-up window is again expanding to the area full screen.


Dependency system

A system for creating, instantiating, storing dependencies. Ability to inject dependencies into other...
I only have a basic design in my head and will be posting more about it in comments.

I've decided that it would take too long for this, so v2 will be more simple than this.


[20.09] firefox: 85.0 -> 85.0.1; firefox-esr: 78.7.0esr -> 78.7.1esr

Motivation for this change
Backport #112184
Things done

[ ] Completed nixos tests
[ ] Tested on aarch64
[ ] Tested on x86_64 X11
[ ] Tested on x86_64 Wayland

Has this been properly tested? 2h seems a bit short for x86_64 X11, wayland and aarch64? I doubt it at the speed that it was merged at.

It's been my default at least for several days now (x86_64 X11).


Pdoc.Burntsushi.net is down

I was trying to access the API and noticed it was down.

Please see #359


Filter option on up & standby both

Which package/s are you suggesting this feature for?
Dashboard
Is your feature request related to a problem? Please describe
If a user wants to have a quick insight of available capacity, regardless of whether online or asleep, current options are only up, only standby, or all (which included hundreds of nonexisting down nodes)
Describe the solution you'd like
An extra option 'up + standby' would be convenient

Requires a ticket in grid-proxy

It's blocked on https://github.com/threefoldtech/tfgrid-sdk-go/issues/911

WIP:
I tried adding the filter but I'm currently facing an error. Still working on it.

Work completed:
Added the new status filter to grid proxy & playground. Also updated the status value while validating in grid proxy.

Verified, Devnet ccab3f0.
A new filter is added to the node status Up & Standby.

TC2255 - Filter Online/Offline/Standby nodes

Verified:

Devnet
ad30945


Possible word omission

About  two thirds of the way through the article, under the heading Azure Service Bus, there is a bullet list.  The first bullet item reads:  "Reliable asynchronous message delivery (enterprise messaging as a service) that requires polling".
Shouldn't that be "that doesn't require polling".  Maybe I'm missing something, but I wouldn't think polling would be necessary.

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

ID: 7084a128-b0ee-bad1-cacd-eb4313e5713c
Version Independent ID: 4cebf906-1a46-5e4d-4ca5-08f24a23b52b
Content: Compare Azure messaging services - Azure Service Bus
Content Source: articles/service-bus-messaging/compare-messaging-services.md
Service: service-bus-messaging
GitHub Login: @spelluru
Microsoft Alias: spelluru

@markshyn
Thanks for your feedback! We will investigate and update as appropriate.

Hi @markshyn
Event Grid can push events to event handers. No polling required
Service Bus queues and topics - Clients do need to poll queues and topics' subscriptions for messages. The messages are not pushed to the destinations.

Well, OK, but take a look at this Microsoft article:
https://learn.microsoft.com/en-us/azure/service-bus-messaging/service-bus-azure-and-service-bus-queues-compared-contrasted
If you look under the heading "Consider using Service Bus queues", the first bullet item states:
"Your solution needs to receive messages without having to poll the queue. With Service Bus, you can achieve it by using a long-polling receive operation using the TCP-based protocols that Service Bus supports."
So whoever wrote the above sentence must have viewed long-polling as being very different from standard polling, and therefore chose to say "without having to poll the queue".   I can see that this could turn into a debate more about terminology , i.e. a debate about what constitutes polling.   But I just wanted to call your attention to this minor inconsistency in Microsoft's documentation.

updated the page after discussing with the architect. #please-close


Copyright javadocs

Currently Dozer uses javadoc for copyright notice in source code, above the package statement:
/**
 * Copyright 2005-2017 Dozer Project
 *
 * ....
 */
package org.dozer.functional_tests;

javadoc does not support this notation, package-level comments should be specified in dedicated files inside the package. This causes "complaints" from IDE, like IDEA's "dandling javadoc". Moreover, classical code conventions recommend to use comments for copyrights:

3.1.1 Beginning Comments
All source files should begin with a c-style comment that lists the class name, version information, date, and copyright notice:

Does it makes sense to align Dozer code styles for copyright notice with industry standards and replace copyright javadocs with comments?

Am not sure what you mean... comparing what Camel does and what we have, they look the same.
https://github.com/apache/camel/blob/master/camel-core/src/main/java/org/apache/camel/CamelContext.java#L1-L17
https://github.com/DozerMapper/dozer/blob/master/core/src/main/java/org/dozer/DozerBeanMapper.java#L1-L16

When it comes to code conventions, I believe "right" or "wrong" is not always applicable. We can observe both approaches to handle copyright notices. For instance, Spring is using comments.
To me this is purely question of taste and preferences. My argumentation to use comments is quite simple.
First, according to javadocs tool documentation, package is not a proper place to use "Javadoc comments" :

Placement of comments - Documentation comments are recognized only when placed immediately before class, interface, constructor, method, or field declarations -- see the class example, method example, and field example.

Thus javadoc as a file header is a misuse of this tool to me.
And second, the problem of copyright notice is addressed in Sun's/Oracle's Code Conventions - it is recommended to use a comment at the beginning of the file.
As I said, this is one of those topics where personal opinion makes a big deal. So if you are not convinced with the arguments, let's just close this issue :)

@orange-buffalo ; sorry, but i am totally missing the point. You keep mentioning comments, but isn't that what the license format currently is?
Think the easiest thing to do is; make a change and show me that, then i'll understand what you mean.
Is it purely that theres a empty line between the license and package? i.e.:
/**
 * Copyright 2005-2017 Dozer Project
 *
 * ....
 */

package org.dozer.functional_tests;

@garethahealy, sorry for being confusing. This is not about empty line, but about comment format.
There are two types of comments in this context.
The first one is "Javadoc comment", I refer to it in my statements as "javadoc". It looks like the following:
/**
 * Copyright 2005-2017 Dozer Project
 *
 * ....
 */

It is used in Dozer, Camel and others for copyright notices. This type of comments is processed by javadoc tool to generate documentation.
The second is regular multi-line comment, in code convention Oracle refers to it as "c-style comment", I used "comment" in my previous posts:
/*
 * Copyright 2002-2016 the original author or authors.
 *
 */

This is ignored by javadoc tool. Spring, google-gson and others use this style for copyright notices.
These two types of comments have different semantic and purpose. As far as I am aware, most of IDEs and editors with syntax highlighting would render them differently:

Coming back to a change in Dozer, it would be basically removing one asterisk character (which sounds like a petty thing, but makes some difference):
/*
 * Copyright 2005-2017 Dozer Project
 *
 * ....
 */

OK, i get it now. Had a quick check on the plugin, and not sure if theres that final control, but might be possible. If not, we can move to the codehaus plugin. Up to you.


embed: allow again ipv6 addrs in brackets

At the moment I pass something like --listen-peer-urls http://[::]:2439 to etcd but current master fails to start with this option with expected IP in URL for binding. This seems like a regression to me.

LGTM. /cc @heyitsanthony

seem like a regression. we probably should backport the fix.

this still returns the error from #6336, I can put the SplitHostPort bit in #6412. This probably shouldn't be merged since the original fix for #6336 should be reverted first?

@heyitsanthony @nekto0n https://github.com/coreos/etcd/pull/6412 is merged. Do we still need this one?

I guess not

@nekto0n thanks for finding this one. Apologies for the patch clobbering. Closing.

@heyitsanthony no hard feelings :)


Suggestion: Add overloads for AddEventListener methods

Ideally, there would be overloads similar to:
AddEventListener<TEvent>(string name, Action<TEvent> callback) where TEvent : Event

We discussed this issue today, although need to do a little research.

@strygo, could you, please, clarify a use case? I don't say there is no use case. Certainly, there is. Also it might be obvious what a use case is, but it would be ideal if you clarify the exact scenario where it is needed.

Window.AddEventListener<ErrorEvent>("error", this.OnErrorEvent);

private void OnErrorEvent(ErrorEvent evt)
{

}

So, currently, it is possible to do with
Window.AddEventListener("error", (Action<ErrorEvent>)this.OnErrorEvent);

but you'd like to avoid casting and prefer a generic approach, right?
By the way, I have noticed that there is no ErrorEvent in Bridge.Html5. Created an issue - #941.

yes, I'd like to avoid the casts. Another interesting idea might be to map:
Window.AddErrorEventListener(Action callback);
This would generally require more overloads for various events but it would make them all more type safe.


The experimental results in TTAB are inconsistent with the original results in CoTTA

In TTAB, we trained WideResnet28*10 with Cifar-10, which is also used in the original paper of CoTTA.   Nevertheless,  the accuracy of using CoTTA to predict data Snow-5 is 51% in TTAB; the accuracy of using CoTTA to predict data Snow-5 is 85% in the original paper.  So why there is a huge gap between the two results?

Hello, thanks for your attention on our work.

First of all, we have checked our implementation through directly comparing the performance of our implementation to that of the original repository under the same experimental setting (i.e., using the same ResNet-26 model checkpoint and same hyperparameters with the original paper).

Secondly, our goal is to compare prior TTA methods as fair as possible, so we adjust part of the implementation in a reasonable way to make it consistent with other methods. According to my experience, the gap between the original work and our work is mainly due to the normalization transform applied to the input image. If I remember correctly, the original implementation does not use transforms.normalize (you can quickly check it out on their repo by adding a normalize transform, or remove the normalize in TTAB).

Hello, thanks again for you interest!
Does my answer resolve your concern? If yes, can I close this issue?

Hello，sorry for not replying in time. Recently, the  server in our school was shut down due to cooling problem. So we haven't debugged the code yet.  You can close the problem first. If I have any questions later, can I consult you by email?Thanks again for your careful reply.
Best wishes

Sure!


Blockchain downloaded by blockchain lost

I downloaded the blockchain by torrent. Both (lnd and blockchain) where finished with downloading and hashing. I opened the session with my phone and it started to delete and move block. But my session was not staying open (cell phone went in standby). Now the system will try to redownload again. How can i recover the downloaded blockchain?

I had the same problem. What did you do then? Did you re-download it again or synced up it via BTC network?

Terminals closing/standbying can be problem, thats why using a terminal on dekstop is recommended for now.
Once we will have the TORBrowser-Setup such processes will be designed to run in the background.


404

lost file due to language error, we will fix it as soon as possible, thank you for liking our theme


OpenRewrite fails with "Illegal state while comparing versions" when using internal dependencies with non-SemVer versions

Hello,
I'm encountering an issue with OpenRewrite when attempting to upgrade to Spring Boot 3.3 using the UpgradeSpringBoot_3_3 recipe. Our project includes internal company dependencies that use version numbers not following Semantic Versioning (SemVer), such as ORC-246-1-SNAPSHOT. This causes OpenRewrite to fail with an exception when comparing versions.
Environment:
OpenRewrite Gradle Plugin Version: 6.26.0
OpenRewrite Spring Recipe Version: 5.22.0
Build Tool: Gradle
Gradle Version: gradle-7.6
Java Version: JDK 17
Operating System: (macOS Sequoia)
Build Script Snippets:
build.gradle file:

plugins {
    id 'java'
    id 'org.springframework.boot' version '3.0.1'
    id 'io.spring.dependency-management' version '1.1.0'
    id 'org.hibernate.orm' version '6.1.6.Final'
    id 'org.openrewrite.rewrite' version '6.26.0'
}

dependencies {
    // Other dependencies...

    implementation "com.veon.eurasia.oraculum:jira-api:ORC-246-1-SNAPSHOT"
    rewrite("org.openrewrite.recipe:rewrite-spring:5.22.0")
}

rewrite {
    activeRecipe("org.openrewrite.java.spring.boot3.UpgradeSpringBoot_3_3")
}

Problem Description:
When running the rewriteRun task, we receive the following error:

Caused by: java.lang.IllegalStateException: Illegal state while comparing versions: [ORC.0.0.0-<IP_ADDRESS>] and [9.0.0]. Metadata = [9.0.0]
    at org.openrewrite.semver.LatestRelease.compare(LatestRelease.java:164)
    at org.openrewrite.semver.VersionComparator.upgrade(VersionComparator.java:45)
    at org.openrewrite.gradle.DependencyVersionSelector.select(DependencyVersionSelector.java:142)
    at org.openrewrite.gradle.DependencyVersionSelector.select(DependencyVersionSelector.java:83)
    ...
Caused by: java.lang.IllegalStateException: No match found

logs.txt
Analysis:
It appears that OpenRewrite is attempting to compare our internal dependency version ORC-246-1-SNAPSHOT (parsed as ORC.0.0.0-<IP_ADDRESS>) with a standard SemVer version 9.0.0. This leads to an exception because the version format does not match the expected SemVer pattern.
Steps to Reproduce:
Include a dependency with a non-SemVer version format in the project, e.g., ORC-246-1-SNAPSHOT.
Configure OpenRewrite with the UpgradeSpringBoot_3_3 recipe.
Run the rewriteRun Gradle task:
bash
Copy code
./gradlew rewriteRun
Expected Behavior:
OpenRewrite should handle dependencies with non-SemVer version formats gracefully, perhaps by:
Skipping them during version comparison.
Providing a warning instead of throwing an exception.
Allowing configuration to exclude certain dependencies from version comparisons.
Attempted Workarounds:
Is there a recommended way to configure OpenRewrite to handle dependencies with non-SemVer version formats?
Thank you for your assistance!

Fixed in https://github.com/openrewrite/rewrite/pull/4656

Thanks for the report @kadirbekov & thanks for the fix @Jenson3210 !


reset-waydroid command  error/broken

running ujust reset-waydroid in terminal results in:
ujust reset-waydroid
error: Unknown start of token:
|
165 |   distrobox-create --nvidia --image quay.io/toolbx-images/centos-toolbox:latest -n centos -Y
|                    ^
this is on bazzite-deck:latest
can't reset waydroid and running the init-waydroid presents that same error.
any fix/workaround? im not even sure what the error is even trying to tell me.

Do an rpm-ostree update to get the fix and reboot, sorry about that!

Do an rpm-ostree update to get the fix and reboot, sorry about that!

Ah ok will that fix the system update applying stalling at 99% under system in game mode ?

No that will just fix the error you have, I'm unsure about the 99% thing. I'm not too familiar with bazzite in that regard but please open an issue for that if one doesn't exist already. Thanks!


Handle case where nodenv-commands --sh returns nothing

In exceptional cases (e.g., custom installation, malfunctions elsewhere), nodenv-commands --sh may return nothing. In non-Fish shells, this would cause "syntax error near unexpected token )'" in nodenv()`.
Bash does not allow one to specify a case option without a pattern. We work around it by defaulting to /. Commands, being filenames, can never match it. In Fish, nothing needs to be done: it apparently does interpret a case without an argument as one that never matches.
This patch is based on 02e1d4a^1 from pyenv, which was written by @ native-api and I.

Feel free to edit the commit message as needed, but I would appreciate if you kept most of it. I sometimes find it useful to grep the Git logs when developing.
If you want to see some discussion about the original patch for pyenv, look at https://github.com/pyenv/pyenv/pull/2908.

Is there a corresponding PR for rbenv?

@jasonkarns, no, not unless someone else made one. I can do that, if you require patches to be upstream first.

We don't require it, no. But I wanted to make sure the work isn't duplicated since we do pull from upstream somewhat regularly.
If you're comfortable opening it there, it's easier to start in the rbenv repo. If not, we can leave it here and I'll see about moving it upstream later.

I can make a PR in rbenv soon to better match your workflow. I'm more used to working with pyenv, which I don't think has had changes merged from rbenv in years.
If it gets accepted upstream, then I'll close this PR.

Thank you, that would be helpful. Even if it gets merged upstream, it's probably best to keep this issue open here until that fix gets pulled downstream as well.
(And we may merge this one in advance anyway once I get a chance to dig into it)

It's been a while since I submitted this PR, so I rebased my branch and tested it, and it still works.
I still haven't gotten around to upstreaming my changes to rbenv, but I will some day.


TS error: Only a void function can be called with the 'new' keyword.ts(2350)

Can someone please help me with this?

Having this with write-file-webpack-plugin on new WriteFilePlugin() line


Debug Assertion Failed (benchmark unit test)

Hello, messaged you before via mail. Following your instructions, I tried the unit test "benchmark" and it gives the same error I got earlier when experimenting with my own model.
Debug Assertion Failed!
Program ...SCCN.exe
File:c:\program files(x86)....\msvc\14.16.27023\include\vector
Line: 122
Expression: cannot seek vector iterator after end
Because I suspected the input dimension being wrong in my model, I managed to make the conv3x3 unit test work just fine. I will run more tests and successively modify the unit test conv3x3 towards the benchmark one and see when it breaks.
EDIT: found the culprit (or at least how to trigger it). I modified the Conv3x3 test to use 1 channel input as follows:
test_x = np.random.rand(10, 3, 3, 1).astype('f').astype('f')
test_y = np.random.rand(10, 1).astype('f')
model = Sequential([
Conv2D(1, (3, 3), input_shape=(3, 3, 1)),
Flatten(),
Dense(1)
])
This works. But as soon as I increase the input size to anything larger than the kernel size of the Conv2D layer and load the generated model into the Cpp project.
test_x = np.random.rand(10, 9, 9, 1).astype('f').astype('f')
test_y = np.random.rand(10, 1).astype('f')
model = Sequential([
Conv2D(1, (3, 3), input_shape=(9, 9, 1)),
Flatten(),
Dense(1)
])
This was sufficient for me to trigger the error.

Still relevant, haven't found a fix.

Still valid


Automated cherry pick of #2853: ansibleserver: 限定Playbook字段长度

Cherry pick of #2853 on release/2.10.0.
#2853: ansibleserver: 限定Playbook字段长度

Codecov Report

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

@@               Coverage Diff                @@
##             release/2.10.0   #2860   +/-   ##
================================================
  Coverage                  ?   7.61%
================================================
  Files                     ?     411
  Lines                     ?   64673
  Branches                  ?       0
================================================
  Hits                      ?    4923
  Misses                    ?   59327
  Partials                  ?     423

Flag
Coverage Δ

#aFlag
7.61% <ø> (?)

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 a2db6bb...3776dc9. Read the comment docs.

/lgtm

/approve


macro 'method_missing' expects 1 argument (call)

I'd like this code to work (https://carc.in/#/r/5lqc):
class Foo
  macro method_missing(call, file = __FILE__, line = __LINE__)
    {% raise "Method #{call.name} missing at #{file}:#{line}" %}
  end
end

Foo.bar

# Expected: Method bar missing at temp.cr:7
# Got: Error in line 2: macro 'method_missing' expects 1 argument (call)

To display the place from there the call occurred.
It would be even better if I could display the caller line in that macro (i.e. line: Foo.bar)

Maybe fixing
class Foo
  macro method_missing(call)
    {% raise "Method #{call.name} missing at #{call.filename}:#{call.line_number}" %}
  end
end

Foo.new.bar

would be good enough

@jhass nope, it returns Error in line 3: Method bar missing at nil:nil, see https://carc.in/#/r/5lqt

That's my point, maybe fixing the nils  instead of making the macros signature more complex is good enough.

@Sija, fixed, thanks.
Also call.receiver returns Nop.
Is it possible to somehow print the call line? E.g.
some_complex_call(Foo.new.bar)
                          ^~~~

@vladfaust that would be a job for call.raise "..." but the lack of location on the call makes it show nothing.


Hello!How long will the data store default?

Description

Environment

Pinpoint version:
OS, WAS, affected library, etc:
Additional details (e.g. how your collector/web is set up):

Additional Info

please find same issue before question.


Open the overlays menu from the pause menu and create a new overlay and add JourneyMap to it. Then position it on your right hand.

          Open the overlays menu from the pause menu and create a new overlay and add JourneyMap to it. Then position it on your right hand.

Originally posted by @tom5454 in https://github.com/tom5454/ViveCraftCompat/issues/18#issuecomment-2296411674
It doesn't work
https://www.youtube.com/watch?v=wqBF4l7_dUk

dont ignore pls

Duplicate of #15


Make date fields "required"

Currently it is possible to track a time without adding any information in the form. Make it such that you have to specify all info.
This goes hand in hand with #2 if we want to implement it.

closed by #21


Is there any way to force the app window to come to the foreground when shown?

When showing/popping up a message, is there any way to force it to come to the foreground?  Sometimes it does, but other times I just get a blinking icon on the taskbar which I have to click on in order to bring the window to the foreground

MacOS:
For bitsdojo_window: You can use the package bitsdojo_window, then navigate to project>macos>Runner>MainFlutterWindow.swift and add the line "self.level = .floating" in the "override func bitsdojo_window_configure()" function body inside of the MainFlutterWindow class.
Any OS:
For window_manager: window_manager contains the built-in feature to set the window to always show on top.


preddiction for the first test image is incorrect

In the notebook it said that the prediction is correct. i think it is due to a copy past from the feed forward notebook

I signed it

I signed it!


arm_vsi.h is missing

This library does not compile. arm_vsi.h is missing.  Same ARMCM3.h used in startup_ARMCM3.c.
This may indicate a serious flaw in testing approach/release policy.
It seems that this library is not yet at a state where it could be just included with another project, which probably was its original purpose.

@tdjastrzebski What are you using to build ?
arm_vsi.h is not part of the library and only used for some examples which are not part of CMSIS-DSP.
startup_ARMCM3.c is is also not part of the library. It used to be delivered as part of the test framework and to run on our IPSS tool. But it has been removed because it is not the goal of the library to maintain boot code. So now the test framework is relying on CMSIS build tools.
So I don't now where you get those 2 files from ?
You should not have to use any of those files to build the library. README is explaining how to do it. You have several choices CMSIS-Build tools, cmake or Makefile.

I simply build all the files one by one with GCC and it does not build.
If arm_vsi.h is not part of the library and examples are neither, why those files are referenced in this repo?
References of missing headers are easy to find:
https://github.com/ARM-software/CMSIS-DSP/search?q=arm_vsi.h
https://github.com/ARM-software/CMSIS-DSP/search?q=ARMCM3.h
The best libraries are 'build tool agnostic' because they are meant to be part of other, often much larger systems, using own build tools and because build tools evolve.

The library is build tool agnostic but since it is part of CMSIS ecosystem it is easier to use with CMSIS tools. But we do support Makefile and cmake.
Normally, you should compile only the Source folder as explained in documentation.
The streaming nodes from the ComputeGraph folder are a different project which is dependent on CMSIS-DSP but is not required to use CMSIS-DSP.
You do not need this ComputeGraph for CMSIS-DSP.
The ARMCM3.h is part of the CMSIS Library. It is only needed if you want to run one of the example on a real device in bare metal (Cortex-M3 in this example)
The files in cmsis_build/RTE folder are needed only if you want to build the example with CMSIS build tools and they use CMSIS pack technology for the boot code for real HW.
In summary : if you follow the README you should be able to build the library ...
The other projects like the examples and tests are relying on CMSIS technology for the boot code.
Some part of the compute graph are made to be used in some Arm Virtual Hardware (AVH) demo and require AVH. But, with compute graph only GenericNodes is required. You use the nodes you need (I repeat you don't need this for CMSIS-DSP).
Since we have more and more people coming from outside of the CMSIS ecosystem, this may be confusing. So, I'll improve the README to highlight what is the core of CMSIS-DSP and build tool and HW independent, and what are the other projects in this repository.

Thank you. I guess, indeed, I got confused. I just included this library using git submodule add and I was hoping for immediate success. Not this time ;)

I am showing that in order to build one needs Source, Include and PrivateInclude folders.
But it still does not build because FilteringFunctions.c and FilteringFunctionsF16.c and similar include C files, rather than headers. That, of course, results in multiple definition of errors when linking.
After removing those files I was able to build and link correctly.
Maybe it would make sense to mention that in README in case one doe snot want to or cannot use Make/CMake.

Indeed, if people don't look at the Makefile content they may not see this problem.
For instance, for Basic Maths, Makefile is just using : BasicMathFunctions.c and all other files are included by this file.
I'll add it to the documentation.
(Reason why it is done like that : on some embedded compilers it makes the compilation much much faster).

I would consider adding #ifdef directives around such non-quite-standard C file includes.

I have updated the documentation. I'll consider for a future release what's the best way to handle those not standard C includes (and perhaps remove them).


Fix/compare graph wrong values

The values in the GHG compare graph were not being filtered by the available years of the calculation data (population and gdp). Some refactoring was done in the process

This is what I see

Seems very different, let's review it together tomorrow


Errors encountered during validation. Nothing is written in the detections.json file.

Hi, Thank you very much for your help last time.
I need your help because I faced another error.

1
I want to train my custom dataset(with a different number of keypoints than the coco). So, I followed this link(https://github.com/Daniil-Osokin/lightweight-human-pose-estimation.pytorch/blob/master/TRAIN-ON-CUSTOM-DATASET.md) and modified the code to fit my custom dataset.
But, I encountered the following error at the verification stage :

Validation...
Running test for keypoints results.
loading annotations into memory...
Done (t=0.00s)
creating index...
index created!
Loading and preparing results...
Traceback (most recent call last):
  File "train.py", line 171, in <module>
    train(args.prepared_train_labels, args.train_images_folder, args.num_refinement_stages, args.base_lr, args.batch_size,
  File "train.py", line 134, in train
    evaluate(val_labels, val_output_name, val_images_folder, net)
  File "/workspace/lightweight_openpose/val.py", line 174, in evaluate
    run_coco_eval(labels, output_name)
  File "/workspace/lightweight_openpose/val.py", line 22, in run_coco_eval
    coco_dt = coco_gt.loadRes(dt_file_path)
  File "/workspace/env-light_openpose/lib/python3.8/site-packages/pycocotools/coco.py", line 329, in loadRes
    if 'caption' in anns[0]:
IndexError: list index out of range

My custom dataset have 6 num keypoints.
So, I checked following this link(https://github.com/Daniil-Osokin/lightweight-human-pose-estimation.pytorch/issues/197) :
def evaluate(labels, output_name, images_folder, net, multiscale=False, visualize=False):
    net = net.cuda().eval()
    base_height = 368
    scales = [1]
    if multiscale:
        scales = [0.5, 1.0, 1.5, 2.0]
    stride = 8
    dataset = CocoValDataset(labels, images_folder)
    coco_result = []
    for sample in dataset:
        # file_name = sample['file_name']
        img = sample['img']

        avg_heatmaps, avg_pafs = infer(net, img, scales, base_height, stride)

        total_keypoints_num = 0
        all_keypoints_by_type = []
        # for kpt_idx in range(18):  # 19th for bg
        for kpt_idx in range(6):
            total_keypoints_num += extract_keypoints(avg_heatmaps[:, :, kpt_idx], all_keypoints_by_type, total_keypoints_num)
            print("TOTAL KEYPOINTS NUM : ", total_keypoints_num)

        pose_entries, all_keypoints = group_keypoints(all_keypoints_by_type, avg_pafs)

        print("pose_entries length", len(pose_entries))
        print("all_keypoints_by_type length: ", len(all_keypoints_by_type))
        print("avg_pafs length ", len(avg_pafs))

        coco_keypoints, scores = convert_to_coco_format(pose_entries, all_keypoints)

        print("RESULT KEYPOINTS : ", coco_keypoints, "SCORES : ", scores)

        # image_id = int(file_name[0:file_name.rfind('.')])
        image_id = sample['image_id']
        for idx in range(len(coco_keypoints)):
            coco_result.append({
                'image_id': image_id,
                'category_id': 1,  # person
                'keypoints': coco_keypoints[idx],
                'score': scores[idx]
            })

        print("coco results length : ", len(coco_result))
        print("========================================")

        if visualize:
            for keypoints in coco_keypoints:
                for idx in range(len(keypoints) // 3):
                    cv2.circle(img, (int(keypoints[idx * 3]), int(keypoints[idx * 3 + 1])),
                               3, (255, 0, 255), -1)
            cv2.imshow('keypoints', img)
            key = cv2.waitKey()
            if key == 27:  # esc
                return

    with open(output_name, 'w') as f:
        json.dump(coco_result, f, indent=4)

    run_coco_eval(labels, output_name)

output:
TOTAL KEYPOINTS NUM :  0
TOTAL KEYPOINTS NUM :  0
TOTAL KEYPOINTS NUM :  1
TOTAL KEYPOINTS NUM :  1
TOTAL KEYPOINTS NUM :  1
TOTAL KEYPOINTS NUM :  1
pose_entries length 0
all_keypoints_by_type length:  6
avg_pafs length  1080
RESULT KEYPOINTS :  [] SCORES :  []
coco results length :  0

and + errors
Is there any part that I corrected wrong?

2
Also, nothing is recorded in the detections.json file during training. So my detections.json file is an empty file.
Is this the cause of the error?
I don't know why nothing is recorded in the detections.json file. When does the detections.json file become an empty file?
What exactly is the role of the detections.json file?

3
Last, Why was keypoint[2] used like "keypoint[2]==1:visible and ==2:not in image" at datasets/transformations.py(https://github.com/Daniil-Osokin/lightweight-human-pose-estimation.pytorch/blob/1590929b601535def07ead5522f05e5096c1b6ac/datasets/transformations.py#L12)?
coco keypoint docs(https://cocodataset.org/#format-data:~:text=v%3D0%3A not labeled (in which case x%3Dy%3D0)%2C v%3D1%3A labeled but not visible%2C and v%3D2%3A labeled and visible) says "v=0: not labeled (in which case x=y=0), v=1: labeled but not visible, and v=2: labeled and visible".

Thank you.

Hi! detections.json is a file, which stores detections from all images. If it is empty, it is likely training goes wrong, the model just does not predict any persons. I suggest to visualize input image and target heatmaps, are they looks consistent to each other. If not, this might be a reason of not trained model.

Thank you for your reply.
I will check input image and target heatmaps.
And, Can I get an answer to the last question?
I use custom data sets labeled "v=0: not labeled (in which case x=y=0), v=1: labeled but not visible, and v=2: labeled and visible" according to the Coco document(https://cocodataset.org/#format-data:~:text=v%3D0%3A not labeled (in which case x%3Dy%3D0)%2C v%3D1%3A labeled but not visible%2C and v%3D2%3A labeled and visible),
but I wonder why they use it as "keypoint[2]==1:visible and ==2:not in image" in datasets/transformations.py(
lightweight-human-pose-estimation.pytorch/datasets/transformations.py
Line 12 in 1590929
for keypoint in keypoints:  # keypoint[2] == 0: occluded, == 1: visible, == 2: not in image
)?
Does this affect learning?

Thank you.
I'll try. I'll try to bring good news.
Thank you for your kind reply every time.

I'm sorry for leaving a question again when I was closing this issue.
I tried to visualize the heat map and the following results are.
    net = DataParallel(net).cuda()
    net.train()
    for epochId in range(current_epoch, 280):
        scheduler.step()
        total_losses = [0, 0] * (num_refinement_stages + 1)  # heatmaps loss, paf loss per stage
        batch_per_iter_idx = 0
        for batch_data in train_loader:
            if batch_per_iter_idx == 0:
                optimizer.zero_grad()

            images = batch_data['image'].cuda()
            keypoint_masks = batch_data['keypoint_mask'].cuda()
            paf_masks = batch_data['paf_mask'].cuda()
            keypoint_maps = batch_data['keypoint_maps'].cuda()
            paf_maps = batch_data['paf_maps'].cuda()

            tmp_img = images.squeeze().permute(1,2,0).cpu().numpy()
            tmp_img = np.uint8(255*tmp_img)
            tmp_img = cv2.resize(tmp_img, (500, 500))

            tmp_heat = keypoint_maps.squeeze().permute(1,2,0).cpu().numpy()
            tmp_heat = np.uint8(255*tmp_heat)

            heat_img = cv2.applyColorMap(tmp_heat[-1], cv2.COLORMAP_JET)
            heat_img = cv2.resize(heat_img, (500,500))

            keypoint_mask = keypoint_masks.squeeze().permute(1,2,0).cpu().numpy()
            keypoint_mask = np.uint8(255*keypoint_mask)

            keypoint = cv2.applyColorMap(keypoint_mask[-1], cv2.COLORMAP_JET)
            keypoint = cv2.resize(keypoint, (500,500))
            keypoint = cv2.cvtColor(keypoint, cv2.COLOR_BGR2GRAY)

            heatmap_img = cv2.addWeighted(heat_img, 0.7, tmp_img, 0.3, 0)
            final_img = cv2.copyTo(tmp_img, keypoint, tmp_img)
            cv2.imwrite('/workspace/lightweight_openpose/data/heatmaps/keypoint_mask.png', final_img)
            cv2.imwrite('/workspace/lightweight_openpose/data/heatmaps/heatmap.png', heatmap_img)

keypoint heatmap + input image result(keypoint_mask.png) :

keypoint mask + input image result(heatmap.png) :

And,  To get the target heat map, I modified val.py  as follows :

def evaluate(labels, output_name, images_folder, net, multiscale=False, visualize=False):
    net = net.cuda().eval()
    base_height = 368
    scales = [1]
    if multiscale:
        scales = [0.5, 1.0, 1.5, 2.0]
    stride = 8

    dataset = CocoValDataset(labels, images_folder)
    coco_result = []
    for sample in dataset:
        file_name = sample['file_name']
        img = sample['img']
        tmp_img = img.copy()
        tmp_img = cv2.resize(tmp_img, (500, 500))

        avg_heatmaps, avg_pafs = infer(net, img, scales, base_height, stride)
        avg_heatmap = avg_heatmaps.copy()
        avg_heatmap = np.uint8(255*avg_heatmap)
        heat_img = cv2.applyColorMap(avg_heatmap[-1], cv2.COLORMAP_JET)
        heat_img = cv2.resize(heat_img, (500, 500))

        final_img = cv2.addWeighted(heat_img, 0.8, tmp_img, 0.2, 0)
        cv2.imwrite('/workspace/lightweight_openpose/data/heatmaps/val_heatmap.png', final_img)

target heatmap(val_heatmap.png) :

I knew intuitively that this result I got was a mess. 😭😥😢
Does this result mean that the model is not properly trained?

Think so. It seems, that target data was not properly prepared (with a proper target data you should have heatmap peaks at pigs keypoints locations). Suggest to check keypoints coordinates transformation to heatmap peaks. BTW, for visualization during training, suggest to add a loop over batch:
for batch_id, tmp_img in enumerate(images.data.cpu().numpy()):
    tmp_img = (tmp_im * 256 + 128).transpose((1, 2, 0)).astype(np.uint8)
    background_heatmap = batch_data['keypoint_maps'][batch_id, -1]
    cv2.imshow('input image', tmp_img)
    cv2.imshow('1 - heatmaps', background_heatmap)
    cv2.waitKey()
    and so on...

It hasn't been long since I started studying, so I'm very immature.
Therefore, your answer is very helpful to me.
Thank you VERY MUCH.
Thanks to your kind reply, I was able to check the keypoint heatmap as follows:

What I'm most curious about is how to modify this when the number of keypoints is less than coco.
I think I need to modify that part for evaluation, is that right?

For correct metric computation, you just need to store keypoints in the COCO format. I believe it might be great to check keypoints grouping code once again. It may be the reason of empty predictions, if predicted heatmaps are reasonable.

Thank you very much for your kind reply.
It helped me a lot.

Hello, excuse me. I have the same problem as you. How did you solve it?

@xin4431
Hi, I had a problem with my dataset. detections.json was empty because the model did not learn properly and could not detect any objects during the verification process.
When I visualized heatmap, the heatmap came out badly and I decided that the model was not learning my dataset properly.


German data not showing on coverage map

I noticed that there's nothing in Germany on the OpenAddresses.io coverage map, but PR #705 mentions several German cities that have been added.
cc @sevko

The sources need to have conform objects added so that we know where to find the address details in the source data.


Can't install the app with Chinese language using

I can not find the app through 'Plaid' keyword searching in Google Play. Then installment through PC Google Play still failed because of error code 940(Tip on handheld device: Content not found). Then I guess it maybe language configuration related issue. After change device language to English, I can search the result and install it. I think this may be a problem:)
(Ps: Attempt to send e-mail to<EMAIL_ADDRESS>failed too through gmail. It's really weird.)

It's not an issue. It's the policy. Google Play has Country Restrictions. And it's great that you found a solution. :+1:

Got it :)


[FEATURE] sync iMessages

Use case
As a regular use, I want to backup messages from icloud so that I can have a local archive of older messages and free some space on the iphone.
Describe the solution you'd like
In the same manner that files and photos are synced, I would like to be able to make a local archive of messages so that I can free up space on the phone and set message to remove messages older than 1 year.  This is the largest source of data storage on my iPhone.
Describe alternatives you've considered
No workable way I have found to to this through iCloud and don't run Windows or Mac to see if the iCloud Desktop can do it.

In this app's current form, it can do things that are possible through icloud.com. Looks like iMessages are not available on iCloud.com. So, it's not possible right now.
However, we are looking into different, more complex authentication methods enable ADP that will most likely help enable this feature.

Maybe this project could be integrated in order to sync iMessages (don’t know if it still works)

Pypush seems to be broken at the moment. From their README:

Pypush is broken at the moment. We thank you for your continued support of the project! The Pypush demo will not work without significant modification to the code to remediate challenges posed as a response to third party iMessage clients growing in popularity.


enforce pnpm a bit more

closes: #81

btw: pnpm has a tool to force a specific package manager called pnpm/only-allow if you want to include it in the project as well, I can include it in this PR

Thanks a lot!


[berkeley] Remove stop-slots from compile config

This PR removes the stop slots from the compile config.
These caused a previous issue where a release was baked expecting it to use the compile config, where CI is not set up to do so. Instead, we remove the options so that they are only injected in the correct location: in the runtime config that we provide for the network.

!ci-build-me

Is this change necessary in berkeley?
It looks safe and sane, but I'd prefer to avoid any changes to berkeley unless we're confident they're necessary.
As for these changes, I suggest we merge them to develop and on berkeley reject any PR that touches compile configs (including touching the stop slots).

Very stale. Closing.


⚠ Processors has degraded performance

In b0fded2, Processors ($STATUS_URL) experienced degraded performance:

HTTP code: 200
Response time: 46 ms

Resolved: Processors performance has improved in 55e6227.


.Net: [Part1] Removing dependency on BinaryData class from AudioContent class

Motivation and Context
Today, SemanticKernel.Abstractions package has unnecessary dependency on System.Memory.Data package which according to this issue https://github.com/microsoft/semantic-kernel/issues/5226 should be removed to minimize number of dependencies and keep only absolutely necessary ones.
Description
This PR replaces usage of the System.Memory.Data.BinaryData type by ReadonlyMemory in AudioContent class.
Contribution Checklist

[ ] The code builds clean without any errors or warnings
[ ] The PR follows the SK Contribution Guidelines and the pre-submission formatting script raises no violations
[ ] All unit tests pass, and I have added new tests where possible
[ ] I didn't break anyone :smile:

@SergeyMenshykh So you need also remove BinaryData from imagecontent class.

@SergeyMenshykh So you need also remove BinaryData from imagecontent class.

Right, the plan is to have a PR per type. So, there will be at least two more PRs - one for ImageContent, and the other one for BinaryContent. I updated the PR description to make it clear.

@SergeyMenshykh So you need also remove BinaryData from imagecontent class.

Right, the plan is to have a PR per type. So, there will be at least two more PRs - one for ImageContent, and the other one for BinaryContent. I updated the PR description to make it clear.

Actually, it appears that the PR per class will be too excessive, so I'll push all the changes as one PR.


Install and manage Falco via operator in Kubernetes

Currently we have the falco operator. This operator does NOT install Falco in Kubernetes, but rather manages Falco rules based on CRDs. Debatably this repository could be renamed something like falco-rules-operator.
We have outlined various ways to Install Falco with Kubernetes in the official documentation.
In all of these examples there is a common theme. The theme is that

Falco is configurable, and each environment will require a different configuration. Furthermore that the installation story stops once Falco is running.

I believe this is a fundamental problem for all software, Falco included.
In order to provide users with a dynamic and logical installation method, we will need to encapsulate the installation method with software. Furthermore, if we want to support the installation over time we will need the same software to ensure the original state remains true.
This is where operators enter.

Can we please consider building a piece of software that has the following responsibilities

Detecting the constraints of the environment which is running the software
Making a decision on the best way to install Falco given those constraints
Securely installing Falco with Kubernetes
Ensures the state of Falco over time

There are a number of tools and patterns available to help with this effort. I have the most experience with kubebuilder and it worked well for me in the past. I am very interested in finding out more about Flux if anyone has any experience reports to share.

Helm Chart Operator - Openshift
Operator SDK
Kubebuilder
Flux

Does anyone have any thoughts or suggestions about overall design patterns here?
Should we use falcoctl?
Should we use a framework of sorts?
Should we leverage the helm chart?
Should we use CRDs? If so -- what do they look like?

All feedback is welcome :smile_cat:

My 2 cents:
I never tried Flux, I only know Helm operator (a wrapper for Helm charts but using an operator) and Operator SDK.
If the target is just having an Operator (so Falco is available in Operator Hub, for example), then just wrapping the existing helm charts using Helm operator can be a fast option.
I think it would also be interesting exploring Application CRDs from the Application SIG group and using the CRDs from https://github.com/open-cluster-management to manage multi-cluster deployments.
For example,  Falco could be automatically deployed in multiple clusters that are managed by Red Hat Advanced Cluster Management or IBM CloudPak for Multicloud Management using these CRDs.
Probably, Helm or helm-operator could also cover the case of using specific Application / open-cluster-management CRDs too.

I'm used to doing these from scratch, but more recently there's been a nice Ansible wrapper to make things a lot more simple (in the way of actually creating an operator), thoughts on requirements below:

Detecting the constraints of the environment which is running the software This is really only limited by the imagination and privilege level. More on the second part below..
Making a decision on the best way to install Falco given those constraints I'm sure experience can be turned into business logic with relative ease, no problem
Securely installing Falco with Kubernetes This merits a conversation. If you want a kernel module, by definition you need privilege. If you want security, you must limit privilege. I like to imagine a dotted line between hosts and the k8s scheduler layer, you should not pierce this if you can help it. There are a wave of products that are leaning on the Deamonset feature to distribute a host agent with root privs. Abuse of the scheduler? Maybe. This won't work on immutable infrastructure, which has been the new standard in the enterprise for almost a year with bleeding edge k8s products..
Ensures the state of Falco over time Also fits the operator pattern well, should be easy.


How can I specify the app version?

There are only three versions available:
rm -rf ../my-kibana-app/*
yo kibana-plugin
? Your Plugin Name myapp
? Short Description An app
? Target Kibana Version
❯ master
  6.0.0
  5.1.0
  5.0.0

I tried 5.1.0 (I run Kibana 5.1.3) and now I see these warnings in the console:
optmzr    log   [12:39:24.526] [warning] Plugin "myapp" was disabled because it expected Kibana version "5.1.0", and found "5.1.3".
server    log   [12:39:24.587] [warning] Plugin "myapp" was disabled because it expected Kibana version "5.1.0", and found "5.1.3".

Plus, I don't see the app icon on the left bar:

Yeah, this seems like a bug in the generator. We currently keep a list of available versions, which we clearly don't keep updated.
That should probably just be a text entry.
@SergeyBondarenko you can set kibana.version or version in your package.json file, just make sure it matches the version of Kibana you are using (5.1.3 in your case).

Since this generator has been replaced by the template, and the template just uses a text input, I'm going to close this.


angr.errors.SimEngineError: No bytes in memory for block starting at addr

When trying to run bootloadertaint.py on the samples bootloaders and config files I get the same error:
(angr) [10:10:04] Ram-MacBook-Pro:BootStomp ramhillel$ python taint_analysis/bootloadertaint.py config/config.hboot
WARNING | 2017-10-10 10:10:07,511 | cle.blob | No custom_entry_point was specified for blob, assuming 0
Deprecation warning: Use main_object instead of main_bin
Traceback (most recent call last):
File "taint_analysis/bootloadertaint.py", line 330, in
bt.run()
File "taint_analysis/bootloadertaint.py", line 271, in run
self._preprocess_taint_file()
File "taint_analysis/bootloadertaint.py", line 199, in _preprocess_taint_file
line = patch_fucking_idapython(line, base_addr)
File "taint_analysis/bootloadertaint.py", line 155, in patch_fucking_idapython
bl = self._p.factory.block(int(call_addr, 16) - base_addr, thumb=True)
File "/Users/admin/code/.virtualenvs/angr/lib/python2.7/site-packages/angr/factory.py", line 308, in block
backup_state=backup_state, opt_level=opt_level, num_inst=num_inst, traceflags=traceflags
File "/Users/admin/code/.virtualenvs/angr/lib/python2.7/site-packages/angr/block.py", line 60, in init
traceflags=traceflags)
File "/Users/admin/code/.virtualenvs/angr/lib/python2.7/site-packages/angr/engines/vex/engine.py", line 462, in lift
raise SimEngineError("No bytes in memory for block starting at %#x." % addr)
angr.errors.SimEngineError: No bytes in memory for block starting at 0x70076c44.
The same happens for each of the config files.
angr and all of its dependencies were installed without any issues.
Thanks,

After some digging, find out that installing older versions of angr and its dependencies solved that issue.

find out that installing older versions of angr and its dependencies solved that issue.

I'm aware that the mega refactor we had in angr impacted BootStomp. We are not sure if or when we are going to resolve this issue. The best workaround right now is to install an old version of angr.

It might be a good idea to have a Dockerfile, based on angr/angr, that checks out the right commits from the various repos (cc @badnack).


gitlab_ci init script: sudo require tty but it's not available at boot [AWS]

I had some problems with gitlab_ci init script when it run on an CentOS (Amazon AMI).
In particular, the script doesn't start succesfully because at the boot yty aren't available and the default setting of sudo is to require it .
So, I inspected the script and I saw the lines responsible of  the problem, these are:
if [ "$USER" != "$app_user" ]; then
  sudo -u "$app_user" -H -i $0 "$@"; exit;
fi

I also have installed gitlab and it doesn't have any issue to start at boot time, so I inspected its init script , it does the same thing but using su. This is the code:
if [ "$USER" != "$app_user" ]; then
  eval su - "$app_user" -c $(echo \")$0 "$@"$(echo \"); exit;
fi

I'd two choices, disable requiretty in /etc/sudoers or substitute the part in the gitlab_ci script with the gitlab one. I chose the second one.
What do you think about that?

Thanks for the issue report but we only support issues for the latest stable version of GitLab. I'm closing this issue but if you still experience this problem in the latest stable version, please open a new issue (but also reference the old issue(s)). Make sure to also include the necessary debugging information conforming to the issue tracker guidelines found in our contributing guidelines.

I'm not experiencing the issue any more with the last version (GitLab CI 7.8.1 424cb42). Thank for have the issue closed.