Fix po lines that are now in inconsistent workflow state

Putting in this repo since we have some tasks related to fixing encumbrances and helpers for po lines. But it could be a one-off script thing too.
We want to restore the "previous" version of po lines that for some reason got updated before/during/after CSP 7 upgrade. Search for POLs update date of 11/27 5pm pst through midnight with a POL Receipt Status of Pending AND PO workflow status of Open. Might need to slect based on UTC, which would be '2024-11-28T01:00:00Z' and '2024-11-28T08:00:00Z'. Once we have po line ID, we can use the endpoint GET /audit-data/acquisition/order-line/{id} to get versions of the po line. We want to select the audit data that was updated just prior to 11/27/2024. For example, we should get the data in orderLineSnapshot.map with orderLineAuditEvents id 72c443a7-173e-4e7b-886f-d30d446b3e3a:
{
  "orderLineAuditEvents" : [ {
    "id" : "9f8d9c41-b23f-4cdd-82d9-961921425c74",
    "action" : "Edit",
    "orderId" : "0cc2aa61-b962-47de-b982-634eb58782a0",
    "orderLineId" : "cb284d07-4641-4e7f-9caf-635dd80dca83",
    "userId" : "1da4a196-c7a6-4a6b-8099-6cb51a97b1ed",
    "eventDate" : "2024-11-28T01:28:07.318+00:00",
    "actionDate" : "2024-11-28T01:28:07.279+00:00",
    "orderLineSnapshot" : {
      "map" : {
        "id" : "cb284d07-4641-4e7f-9caf-635dd80dca83",
        "cost" : {
          "currency" : "USD",
          "discountType" : "percentage",
          "listUnitPrice" : 43.0,
          "quantityPhysical" : 1,
          "poLineEstimatedPrice" : 43.0
        },
        "rush" : false,
        "alerts" : [ ],
        "claims" : [ ],
        "source" : "MARC",
        "details" : {
          "productIds" : [ ],
          "receivingNote" : "note",
          "isAcknowledged" : false
        },
        "physical" : {
          "volumes" : [ ],
          "createInventory" : "Instance, Holding, Item"
        },
        "selector" : "MVN",
        "eresource" : {
          "trial" : false,
          "activated" : false
        },
        "isPackage" : false,
        "locations" : [ {
          "quantity" : 1,
          "locationId" : "1146c4fa-5798-40e1-9b8e-92ee4c9f2ee2",
          "quantityPhysical" : 1
        } ],
        "publisher" : "Dyskursus,",
        "collection" : false,
        "instanceId" : "a7426d71-6d12-40da-ba92-e5b99e888a4b",
        "orderFormat" : "Physical Resource",
        "checkinItems" : false,
        "contributors" : [ {
          "contributorNameTypeId" : "2b94c631-fca9-4892-a730-03ee529ffe2a"
        } ],
        "poLineNumber" : "143922-1",
        "vendorDetail" : {
          "referenceNumbers" : [ {
            "refNumber" : "OISSA2704",
            "refNumberType" : "Vendor internal number"
          } ]
        },
        "paymentStatus" : "Pending",
        "receiptStatus" : "Pending",
        "reportingCodes" : [ ],
        "titleOrPackage" : "Muzyky pravoberezhnoї Kolomyĭshchyny (Vid Slobody do Spasa). Biblioteka Kolomyĭshchyny vyp 11 / ",
        "automaticExport" : false,
        "publicationDate" : "2023.",
        "purchaseOrderId" : "0cc2aa61-b962-47de-b982-634eb58782a0",
        "fundDistribution" : [ {
          "value" : 100.0,
          "fundId" : "b6630c77-1560-4bce-9a3b-2a7c8baef166",
          "distributionType" : "percentage"
        } ],
        "acquisitionMethod" : "796596c4-62b5-4b64-a2ce-524c747afaa2"
      },
      "empty" : false
    }
  }, {
    "id" : "72c443a7-173e-4e7b-886f-d30d446b3e3a",
    "action" : "Edit",
    "orderId" : "0cc2aa61-b962-47de-b982-634eb58782a0",
    "orderLineId" : "cb284d07-4641-4e7f-9caf-635dd80dca83",
    "userId" : "53259d2f-c95b-4ba1-99b6-46181adb2822",
    "eventDate" : "2024-11-20T20:09:50.061+00:00",
    "actionDate" : "2024-11-20T20:09:50.048+00:00",
    "orderLineSnapshot" : {
      "map" : {
        "id" : "cb284d07-4641-4e7f-9caf-635dd80dca83",
        "cost" : {
          "currency" : "USD",
          "discountType" : "percentage",
          "listUnitPrice" : 43.0,
          "quantityPhysical" : 1,
          "poLineEstimatedPrice" : 43.0
        },
        "rush" : false,
        "alerts" : [ ],
        "claims" : [ ],
        "source" : "MARC",
        "details" : {
          "productIds" : [ ],
          "receivingNote" : "note",
          "isAcknowledged" : false
        },
        "physical" : {
          "volumes" : [ ],
          "materialType" : "1a54b431-2e4f-452d-9cae-9cee66c9a892",
          "createInventory" : "Instance, Holding, Item"
        },
        "selector" : "MVN",
        "isPackage" : false,
        "locations" : [ {
          "quantity" : 1,
          "holdingId" : "eb501475-e035-479d-8886-1e420a917ad5",
          "quantityPhysical" : 1
        } ],
        "publisher" : "Dyskursus,",
        "collection" : false,
        "instanceId" : "a7426d71-6d12-40da-ba92-e5b99e888a4b",
        "orderFormat" : "Physical Resource",
        "receiptDate" : "2024-11-20T20:09:50.038+00:00",
        "checkinItems" : false,
        "contributors" : [ {
          "contributorNameTypeId" : "2b94c631-fca9-4892-a730-03ee529ffe2a"
        } ],
        "poLineNumber" : "143922-1",
        "vendorDetail" : {
          "referenceNumbers" : [ {
            "refNumber" : "OISSA2704",
            "refNumberType" : "Vendor internal number"
          } ]
        },
        "paymentStatus" : "Awaiting Payment",
        "receiptStatus" : "Fully Received",
        "reportingCodes" : [ ],
        "titleOrPackage" : "Muzyky pravoberezhnoї Kolomyĭshchyny (Vid Slobody do Spasa). Biblioteka Kolomyĭshchyny vyp 11 / ",
        "automaticExport" : false,
        "publicationDate" : "2023.",
        "purchaseOrderId" : "0cc2aa61-b962-47de-b982-634eb58782a0",
        "fundDistribution" : [ {
          "code" : "RUEEUR-SUL",
          "value" : 100.0,
          "fundId" : "b6630c77-1560-4bce-9a3b-2a7c8baef166",
          "encumbrance" : "77d9e8d2-8b41-485b-b11d-f87f0f68079a",
          "distributionType" : "percentage"
        } ],
        "acquisitionMethod" : "796596c4-62b5-4b64-a2ce-524c747afaa2",
        "poLineDescription" : "vyp.11"
      },
      "empty" : false
    }
  },

We should then do a PUT to orders-storage/po-lines (try orders/order-line first to see if it'll let us, if not then orders-storage). Will doing a PUT to orders-storage create another orderline audit event or do we need to create one with a POST to /audit-data?

Maybe we create a rake task that processes a list of po line UUIDs that need fixing. We get the po line UUID's from running a psql query or maybe just a GET using CQL. There is an index on the purchase order table for workflow status "purchase_order_workflowstatus_idx" btree ("left"(lower(sul_mod_orders_storage.f_unaccent(jsonb ->> 'workflowStatus'::text)), 600)) so maybe an API query could work. There are indexes in the po line table for po_line_paymentstatus_idx and po_line_receiptstatus_idx.

Count of po lines updated for our datetime selection where paymentStatus is "Pending":
okapi=# select count(*)
okapi-# from sul_mod_orders_storage.po_line as pol
okapi-# where jsonb_extract_path_text(pol.jsonb, 'metadata', 'updatedDate') between '2024-11-28T01:00:00Z' and '2024-11-28T08:00:00Z'
okapi-# and jsonb_extract_path_text(pol.jsonb, 'paymentStatus') = 'Pending';
 count
-------
   354

We get the same count when looking for receiptStatus "Pending":
okapi=# select count(*)
okapi-# from sul_mod_orders_storage.po_line as pol
okapi-# where jsonb_extract_path_text(pol.jsonb, 'metadata', 'updatedDate') between '2024-11-28T01:00:00Z' and '2024-11-28T08:00:00Z'
okapi-# and jsonb_extract_path_text(pol.jsonb, 'paymentStatus') = 'Pending'
okapi-# and jsonb_extract_path_text(pol.jsonb, 'receiptStatus') = 'Pending';
 count
-------
   354
(1 row)

And joining with the purchase order table to check workflowStatus = Open we get the same count:
okapi=# select count(*) from sul_mod_orders_storage.po_line as pol
okapi-# left join sul_mod_orders_storage.purchase_order as po on po.id = pol.purchaseorderid
okapi-# where jsonb_extract_path_text(po.jsonb, 'workflowStatus') = 'Open'
okapi-# and jsonb_extract_path_text(pol.jsonb, 'metadata', 'updatedDate') between '2024-11-28T01:00:00Z' and '2024-11-28T08:00:00Z'
okapi-# and jsonb_extract_path_text(pol.jsonb, 'paymentStatus') = 'Pending'
okapi-# and jsonb_extract_path_text(pol.jsonb, 'receiptStatus') = 'Pending';
 count
-------
   354
(1 row)

For funsies, just checking what happens when doing po workflowStatus = "pending":
okapi=# select count(*) from sul_mod_orders_storage.po_line as pol
okapi-# left join sul_mod_orders_storage.purchase_order as po on po.id = pol.purchaseorderid
okapi-# where jsonb_extract_path_text(po.jsonb, 'workflowStatus') = 'Pending'
okapi-# and jsonb_extract_path_text(pol.jsonb, 'metadata', 'updatedDate') between '2024-11-28T01:00:00Z' and '2024-11-28T08:00:00Z'
okapi-# and jsonb_extract_path_text(pol.jsonb, 'paymentStatus') = 'Pending'
okapi-# and jsonb_extract_path_text(pol.jsonb, 'receiptStatus') = 'Pending';
 count
-------
     0

And for trying when po line paymentStatus and receiptStatus are Fully Paid and Fully Received (or not that <>):
okapi=# select count(*)
okapi-# from sul_mod_orders_storage.po_line as pol
okapi-# where jsonb_extract_path_text(pol.jsonb, 'metadata', 'updatedDate') between '2024-11-28T01:00:00Z' and '2024-11-28T08:00:00Z'
okapi-# and jsonb_extract_path_text(pol.jsonb, 'paymentStatus') <> 'Fully Paid';
 count
-------
   354
(1 row)

okapi=# select count(*)
from sul_mod_orders_storage.po_line as pol
where jsonb_extract_path_text(pol.jsonb, 'metadata', 'updatedDate') between '2024-11-28T01:00:00Z' and '2024-11-28T08:00:00Z'
and jsonb_extract_path_text(pol.jsonb, 'paymentStatus') = 'Fully Paid';
 count
-------
     9
(1 row)

okapi=# select count(*)
okapi-# from sul_mod_orders_storage.po_line as pol
okapi-# where jsonb_extract_path_text(pol.jsonb, 'metadata', 'updatedDate') between '2024-11-28T01:00:00Z' and '2024-11-28T08:00:00Z'
okapi-# and jsonb_extract_path_text(pol.jsonb, 'paymentStatus') <> 'Fully Paid'
okapi-# and jsonb_extract_path_text(pol.jsonb, 'receiptStatus') <> 'Fully Received';
 count
-------
   354
(1 row)

okapi=# select count(*)
from sul_mod_orders_storage.po_line as pol
where jsonb_extract_path_text(pol.jsonb, 'metadata', 'updatedDate') between '2024-11-28T01:00:00Z' and '2024-11-28T08:00:00Z'
and jsonb_extract_path_text(pol.jsonb, 'paymentStatus') = 'Fully Paid'
and jsonb_extract_path_text(pol.jsonb, 'receiptStatus') = 'Fully Received';
 count
-------
     9
(1 row)

using this query:
select pol.id from sul_mod_orders_storage.po_line as pol
left join sul_mod_orders_storage.purchase_order as po on po.id = pol.purchaseorderid
where jsonb_extract_path_text(po.jsonb, 'workflowStatus') = 'Open'
and jsonb_extract_path_text(pol.jsonb, 'metadata', 'updatedDate') between '2024-11-28T01:00:00Z' and '2024-11-28T08:00:00Z'
and jsonb_extract_path_text(pol.jsonb, 'paymentStatus') = 'Pending'
and jsonb_extract_path_text(pol.jsonb, 'receiptStatus') = 'Pending';

I got the following file of poline UUIDs:
pending_polines_with_open_po.txt

Testing changing the po line using data from a previous version for po line 128394-1 on folio-test. I took the audit event just prior to the last one and tried a PUT to /orders/order-lines and got a 400 Bad Request response:
{
    "errors": [
        {
            "message": "Please use the receiving App to update pieces and locations",
            "code": "locationCannotBeModifiedAfterOpen",
            "parameters": [
            ]
        }
    ],
    "total_records": 1
}

The locations object in the latest version is:
"locations": [
                        {
                            "quantity": 1,
                            "holdingId": "6865da3e-45a2-42ed-814e-bde28761abef",
                            "quantityPhysical": 1
                        }
                    ],

But in the previous version it is:
"locations": [
        {
            "quantity": 1,
            "locationId": "ec0d3f2e-c266-459e-8aaa-a44dea58255d",
            "quantityPhysical": 1
        }
    ],

I tried updating using the /orders-storage/po-lines endpoint (because the purpose is to see if an audit event gets created or not). It returns 204 when updating orders-storage. And it created a new audit event! Yay!

Another test for po line 108044-1 in folio-test. I did a PUT to orders-storage with the last audit-data version and it does create version history when going straight to the storage endpoint. I also accidentally PUT to a different po line the data for 108044-1 (whoops) and had to correct it: po line 507858F02-1

Double-checked that the po lines data in audit-data orderLineSnapshot field is the same as what is returned when doing a GET to orders-storage/po-lines and orders/order-lines. It is the same with the only difference being the metadata block with created/updated data/userId is not in the audit-data orderLineSnapshot. After doing a PUT to orders-storage for po line 108044-1 in folio-test, the metadata block is there.

Re-ran select in prod and got 340 po line IDs. Then ran rake task to restore previous version. All 340 were successfully updated.


remove quote in prettier script to make it work on Winodws OS

Description
When I ran the project in the Windows environment, the prettier script failed since it had the quote which was not recognized by Windows OS.
By removing it, it can work in both Windows and Mac environment.
Testing
Built the project in Windows 10 instance and local MacOS Catalina.
Submission Checklist
I confirm that I have...

[x] removed hard-coded Cognito IDs
[x] manually smoke-tested the BabylonJS integration tests
[x] manually smoke-tested the BabylonJS demos
[x] manually smoke-tested the Three.js integration tests
[x] manually smoke-tested the Three.js demo

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

What error was thrown?

What error was thrown?

https://stackoverflow.com/questions/48078281/run-prettier-on-windows Same like this.


Need a method which converts User object into JSON format

I can't flash the user object into the ejs file, the compiler saying I need to parse this a JSON
so whenever I make let user = new User ({mail : _mail}) I need to make that user into JSON
I guess I need a js object like  let newUser =[] which can be flashed

This issue is raised due to circular reference. This mainly occured because the User class has Vehicle class, and the Vehicle class has user class, making it a circular relationship. This is a code smell.

I will fix it soon.

Fixed in this commit dcc08f1cb745557c9cf0de3957c69e42fc313cea.


Need to provide font names and styles for both Mac and PC

Mac and PC refer to font styles differently and aren't mutually recognizable.  Need to include both versions when specifying fonts.

Addressed in #31


[T4A2][W09-B1]Yeo Xiang Guang Brandon

Ready for review.

You missed the 2nd part of the exercise :-p
Some comments added. Please close the PR after reading comments.


Possible reference leak

LEAK: ByteBuf.release() was not called before it's garbage-collected. Enable advanced leak reporting to find out where the leak occurred. To enable advanced leak reporting, specify the JVM option '-Dio.netty.leakDetection.level:advanced' or call ResourceLeakDetector.setLevel() See http://netty.io/wiki/reference-counted-objects.html for more information.

2017-01-17 03:00:16,353 nioEventLoopGroup-5-1 ERROR (ProtocolDecoder:37) - Decoder Result is null  this log happend

Haven't happened since that day.


The dependencies being used are unavailable

You need to upgrade the names of the dependencies(a few of them) from com.dius.... to au.com.dius..

kindly update the dependencies


Add whitelisted withdraw

Restrict request and claim withdrawals to whitelisted accounts
Code Change Checklist
To be completed before internal review begins:

[ ]  The contract code is complete
[ ]  Executable deployment file
[ ]  Fork tests that test after the deployment file runs
[ ]  Unit tests *if needed
[ ]  The owner has done a full checklist review of the code + tests

Internal review:

[ ] Two approvals by internal reviewers

Deploy checklist
Two reviewers complete the following checklist:
- [ ] All deployed contracts are listed in the deploy PR's description
- [ ] Deployed contract's verified code (and all dependencies) match the code in master
- [ ] The transactions that interacted with the newly deployed contract match the deploy script.
- [ ] Governance proposal matches the deploy script
- [ ] Smoke tests pass after fork test execution of the governance proposal

It will not be used.


Upgrade secp dependency

Upgrade rust-secp256k1 to the latest version v0.29.0. This removes the duplicate deps as well.
Includes removal of usage of ThirtyTwoByteHash and enables usage of Message::from(sighash).

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

7 of 9 (77.78%)  changed or added relevant lines in 2 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.005%) to 83.174%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

bitcoin/src/psbt/mod.rs
3
5
60.0%

Totals

Change from base Build<PHONE_NUMBER>:
0.005%

Covered Lines:
19096

Relevant Lines:
22959

💛  - Coveralls

CI is failing due to the double-dependency check. Though I'm not sure how to read its output and don't know what specifically is to blame.

I fixed it (hopelfully) by manually hacking the minimal/recent lock files to force secp to use hashes 0.14.0

I fixed it (hopefully) by manually hacking the minimal/recent lock files to force secp to use hashes 0.14.0 then I can just update-lock-files to make sure it works.

Looks tentatively like it's working. But FWIW you should've been able to use cargo update -p to avoid manually hacking up lockfiles.

Oh yeah, looks like you are right. I didn't think to use multiple -p in a single command eg, -p bitcoin_hashes -p bitcoin-internals ...


Start-Process fails on argument-less invocation of 7zip

For likely any version of Powershell beyond 5.1 (6.0.0 and up), if Start-Process is used to execute 7z.exe with the Wait and NoNewWindow flags enabled, the process throws an exception after apparently actually running the executable.
Steps to reproduce
$7zipExec = <path-to-7zip-exec>
Start-Process -FilePath $7zipExec -NoNewWindow -Wait

Expected behavior
Prints usage reference like:
Usage: 7z <command> [<switches>...] <archive_name> [<file_names>...] [@listfile]
...

Actual behavior
Prints usage reference as it should, but also ends with:
Start-Process : Cannot process request because the process (###) has exited.
At line:1 char:1
+ Start-Process -FilePath $7zipExec -NoNewWindow -Wait;
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo          : NotSpecified: (:) [Start-Process], InvalidOperationException
+ FullyQualifiedErrorId : System.InvalidOperationException,Microsoft.PowerShell.Commands.StartProcessCommand

Environment data

Tested with Powershell:
- 4.0 (Windows Server 2012R2)
- 5.1 (Windows 10 1809)
- 6.0.0 (Windows 10 1809)
- 6.2.3 (Windows 10 1809)
- 7.0.0 RC1 (Windows 10 1809)

I just tried with 7-Zip 18.05 on Windows PowerShell, PowerShell 7.0.5, 7.1.2, and the latest preview, 7.2.0-preview.4, and I don't see the symptom - but my Windows 10 version is newer: Version 20H2, OS Build: 19042.867
Are you still on the same Windows 10 version and do you still see the symptom?
As an aside: there's generally no good reason to use Start-Process for synchronous invocation of a console application in the same window: direct invocation does that automatically (in your case: & $7zipExec), and has the added advantage of integrating with PowerShell's output streams - see https://github.com/MicrosoftDocs/PowerShell-Docs/issues/6239


Add Documentation for Plasma-Mycroft

Hi,
I am creating this pull request for adding documentation on the plasma-mycroft enclosure for the KDE Desktop Platform. This pull request contains two added pages and one added image i.e.
a) plasma-mycroft.md [User and Developers Guide To Plasma Mycroft and Visual API for Plasma Platform]
b) plasma-mycroft-installation.md [Installation Guide For Plasma Mycroft]
c) plasmoid screenshot for user guide with navigation markings
The only original file that was modified was the Linux.md file to provide links to the above pages under corrected previous "KDE Plasmoid" title.
Request for review and addition to the documentation.
Thanks!

A courtesy note to say that I'm about to merge this, however I need to do some things to WordPress to pick up the changes, and that the URL of the final documentation will be different than what is submitted with this PR. I will advise.


Nested Map with diff types.


about filter_dc_notch16

hello,actor:
firstly, thanks to ur code。
and i want to ask u a question about the function "filter_dc_notch16", i dont know what is used for.loonking forward to ur replay

hello,actor:
firstly, thanks to ur code。
and i want to ask u a question about the function "filter_dc_notch16", i dont know what is used for.loonking forward to ur replay

hi,
this funtion comes directly from speex for removing DC

thxs to ur reply。 but i have an another question，i want to change the parameter "frame_size" and i find u have "win_para_update.mat” fixed， can u tell me the formaluation of window function, looking forward to ur replay.thx again.

thxs to ur reply。 but i have an another question，i want to change the parameter "frame_size" and i find u have "win_para_update.mat” fixed， can u tell me the formaluation of window function, looking forward to ur replay.thx again.

The proto-filter is generated by window method as described in Subband Adaptive Filtering(Lee K A ), which satisfied the oversampled filter bank in this case.

thxs to ur reply。 but i have an another question，i want to change the parameter "frame_size" and i find u have "win_para_update.mat” fixed， can u tell me the formaluation of window function, looking forward to ur replay.thx again.

The proto-filter is generated by window method, which satisfied the oversampled filter bank in this case.


Fix minor issues in book quickstart (#349)

Fixes the path to match the instructions and adds a helpful comment, as noted in #349

@robertpateii this indeed breaks Book tests. I've reversed your changes, so the concrete .feature file names are used instead animal.feature. Please, take a look. If it's OK for you, I'm going to merge.


Add --fail-fast option

To abort after first failed test.

Closing because inactive. If someone is interested enough to implement this.


Can persistant, shared globals state be enabled?

I'm not sure if this is a FR or something else, but here goes.
In my testing I've found global state isn't behaving how I expect Lua state in a game to act. It appears that each script runs inside it's own, enviroment/context. A global defined by one script is nil when another script tries to access it. I can see some cases for this, but it also seems to inhibit many of the approaches to scripting that I want to enable unless I go through a lot of effort to essentially reimplement parts of Lua as resources.
Perhaps relatedly, when a script is reloaded the original global state seems to be discarded and a fresh one replaces it. for instance this hook:
function on_level()
    if type(_G.i) == 'nil' then _G.i = 0 end
    if(i%200 == 0) then
        print("\n******** " .. i )
    end
    i=i+1
end

In theory the count should persist between reloads, if there was a single context and the hook function was simply replaced by executing the changed file. It appears that it's a clean new context though. Any stateful gameplay scripting live development is going to be really awkward this way. If I make use of require then it may be viable to code around this to a limited degree inside lua itself, but I'm not sure that can cover everything.
Do you think it'd be feasible for a game to get around either of those with custom ScriptHost implementations? If not, is it conceivable to make those alternate behaviors available somehow, likely optionally? I've only got a loose grasp of the internals of the crate so far, so I'm not able to make a confident guess myself.

Hi again! all great questions!
In short, yes I believe all of this could be handled by a custom ScriptHost. The interface is very flexible and in fact register_with_app of each ScriptHost is the sole point of contact with the app for the entire crate.
Discounting this itty bitty fragment of  shared code:
bevy_mod_scripting_core/src/lib.rs
    45 | fn build(&self, app: &mut bevy::prelude::App) {
    46 |  app.add_event::<ScriptErrorEvent>();
    47 | }

The removal of old contexts happens in the  reload_script method of a script which is used by the script_hot_reload_handler system
bevy_mod_scripting_core/src/hosts.rs
     366 |  // remove old context
     367 |  contexts.remove_context(script.id());

This system is registerd with the app in each ScriptHost like this
languages/bevy_mod_scripting_lua/src/lib.rs, from line 81
    fn register_with_app_in_set(app: &mut App, schedule: impl ScheduleLabel, set: impl SystemSet) {
        app.add_priority_event::<Self::ScriptEvent>()
            .add_asset::<LuaFile>()
            .init_asset_loader::<LuaLoader>()
            .init_resource::<CachedScriptState<Self>>()
            .init_resource::<ScriptContexts<Self::ScriptContext>>()
            .init_resource::<APIProviders<Self>>()
            .register_type::<ScriptCollection<Self::ScriptAsset>>()
            .register_type::<Script<Self::ScriptAsset>>()
            .register_type::<Handle<LuaFile>>()
            // handle script insertions removal first
            // then update their contexts later on script asset changes
            .add_systems(
                schedule,
                (
                    script_add_synchronizer::<Self>,
                    script_remove_synchronizer::<Self>,
                    script_hot_reload_handler::<Self>, \\ HERE
                )
                    .chain()
                    .in_set(set),
            );
    }

If all scripts are to share a context then instead of using:
    type ScriptContext = Mutex<Lua>;

you'd use something more appropriate, note I am not sure exactly how mlua would handle this exact use case mlua::chunk maybe? but you'd likely have to use a better suited type for the actual script context. This type is mainly used by APIProviders callback's so you'd need to think what would be appropriate. However do note that LuaBevyAPIProvider expects a Mutex<Lua> context type to work, so you could simply keep this the same and make changes elsewhere.
pub trait APIProvider: 'static + Send + Sync {
    /// the type of script engine/context the API is attached to, this must be the same as the APITarget of the ScriptHost meant to receive it.
    type APITarget: Send + Sync + 'static;
    /// The type of script context the APIProvider works with, must be the same as the ScriptContext of the target ScriptHost.
    type ScriptContext: Send + Sync + 'static;
    /// The type of documentation fragment produced by the APIProvider, must be the same as the DocTarget of the target ScriptHost.
    type DocTarget: DocFragment;

    /// provide the given script context with the API permamently.
    /// Depending on the host, API's may be attached on a per-script basis
    /// or on a per-engine basis. Rhai for example allows you to decouple the State of each script from the
    /// engine. For one-time setup use `Self::setup_script`
    fn attach_api(&mut self, api: &mut Self::APITarget) -> Result<(), ScriptError>;

    /// Hook executed every time a script is about to handle events, most notably used to "refresh" world pointers
    fn setup_script_runtime(
        &mut self,
        _world_ptr: WorldPointer,
        _script_data: &ScriptData,
        _ctx: &mut Self::ScriptContext,
    ) -> Result<(), ScriptError> {
        Ok(())
    }

    /// Setup meant to be executed once for every single script. Use this if you need to consistently setup scripts.
    /// For API's use `Self::attach_api` instead.
    fn setup_script(
        &mut self,
        _script_data: &ScriptData,
        _ctx: &mut Self::ScriptContext,
    ) -> Result<(), ScriptError> {
        Ok(())
    }

    /// Generate a piece of documentation to be merged with the other documentation fragments
    /// provided by other API providers
    fn get_doc_fragment(&self) -> Option<Self::DocTarget> {
        None
    }

    /// Some providers might provide additional types which need to be registered
    /// with the reflection API to work.
    fn register_with_app(&self, _app: &mut App) {}
}

What you'd need to be careful about is things like LuaBevyAPIProvider which implements setup_script as:
    fn setup_script(
        &mut self,
        script_data: &ScriptData,
        ctx: &mut Self::ScriptContext,
    ) -> Result<(), ScriptError> {
        let ctx = ctx.get_mut().expect("Could not get context");
        let globals = ctx.globals();
        globals
            .set(
                "entity",
                crate::lua::bevy::LuaEntity::new(script_data.entity),
            )
            .map_err(ScriptError::new_other)?;
        globals
            .set::<_, crate::lua::bevy::LuaScriptData>("script", script_data.into())
            .map_err(ScriptError::new_other)?;

        Ok(())
    }

Note this is run ONCE at the start of the lifetime of each script, (as dictated by the current Script Host implementation), and assuming all the other systems use a shared script context instead, this would mean entity and script globals would be incorrect. Easy fix however by defining a custom APIProvider which performs the same logic in setup_script_runtime instead.
Again this is all assuming mlua has a nice way of handling something like this (I just haven't properly looked!)

If this is something that the crate should handle in your opinion, then we could enable this behavior behind some feature flags in the next release!

I am more than happy to incorporate this as a feature, this would also have some performance benefits. Please do let me know how this goes, especially from the mlua side!  I'd love new ideas and happy to answer any questions, just shoot them as issues my way.
I can definitely have a look and especially interested in thoughts on the Bevy API as well as the proxy wrapper macros, currently working on a much more coherent and user friendly macro over at: https://github.com/makspll/bevy_mod_scripting/tree/feature/derive_macros

I've chewed on this one on and off, the way everything interconnects is pretty easy to get lost one and I'm not super familiar all these pieces yet. I've mainly attacked it from the Host side so far, but perhaps I should look again at how to do it from the provider side. Though so far I've been looking more at the shared-between-scripts part rather than the persistant-through-reloadspart.
I've tried creating my own derivative of the LuaScriptHost for this. The wall I seem to be hitting consistently is that I need to store a common Lua object, either as a Bevy resource or a field in my script host, and I need to be able to access that in the host's load_script to run the chunk in it. load script not having world access can't really get a resource, and storing it as a field is giving me all sorts of access headaches...
Without wrapping it in boxes I understand very poorly, the most viable option I've not yet tried is having load_script run the chunk on a self.lua, and create a dummy lua mutex just to pass back in the return value and immediately discard, or to just eliminate all use of the load_script function in the host entirely. I'm not sure if I can do that while still playing well with the load_script calls in insert_new_script_context, but maybe if I do both... creating and discarding a lua instance every load seems wasteful, but not actually more expensive than just creating and storing one for each which is already happening, so I guess I'll explore that a bit more.

alright, I did get it working!  the two problems are that the events model doesn't work this way(each script with an event hook function overwrites the last. The second problem is that it requires one tiiiiny upstream change.
The current implementation just stores a Mutex in the host struct, and passes that to anywhere that previously would have used the normally stored contexts. This actually accidentally achieved both goals, because the reload wiping out the stored context doesn't touch this overall context.
The one upstream change it needed was taking ScriptHost.handle_events and changing it from
    fn handle_events<'a>(
        &self,
        world_ptr: &mut World,
        events: &[Self::ScriptEvent],
        ctxs: impl Iterator<Item = (ScriptData<'a>, &'a mut Self::ScriptContext)>,
        providers: &mut APIProviders<Self>,
    );

to be a &mut self instead. Otherwise I couldn't properly pass the master context to the providers.

That's great to hear! If this is the only upstream change required AFAIK there shouldn't be any issues including it in the next release

With that merged this seems closable. Once I've reached the conclusion of my efforts in #69 I'll see about tidying up and documenting my little demo project and posting it publicly for review.


Events not registering in message.type

According to StackOverflow and Reference Doc, message.type should return the type of action that is being sent to the server.
The following Node.JS code when using the emulator only logs the type when the type is considered a "message".
bot.add('/', new builder.CommandDialog()
    .matches('^set name', builder.DialogAction.beginDialog('/profile'))
    .matches('^quit', builder.DialogAction.endDialog())
    .onDefault(function (session) {
        if (!session.userData.name) {
            session.beginDialog('/profile');
        } else {

            console.log(session.message.text); // message entered by user
            console.log(session.message.type); // message type
            session.send('Hello %s!', session.userData.name);
        }
}));

According to this line it can ONLY ever be set to "Message".
Is the intent to have this display the type (BotAddedToConversation) or act like a Boolean to dictate that it is a message.
If it is the second, than something like message.isMessage = true would make more sense instead of message.type = 'Message'

That's currently by design. The other message types are either notification only or limited to a single reply from the bot. Since you cant have a full dialog with the sender they can't be routed to the dialog system like a normal message. The BotConnectorBot does let you handle these messages you just have to do it differently. Look at the docs for the BotConnectorBot to see how to handle the other message types:
http://docs.botframework.com/builder/node/bots/BotConnectorBot/#connector-message-types

Closing this for now. Please re-open if I didn't answer your question well enough.


Data being returned but dropdown not showing

I noticed that a typeahead field that I had which was working earlier has stopped showing the results recently (or could be a couple months ago, not sure). I tried doing a console log and I see that the data is present from the Meteor.call.
When I inspect the element, I see classes tt-menu tt-empty tt-open instead of tt-dropdown-menu from what I remember from before. Are those classes what they should be when there is data returned?
Here is the helper which I have tested and is working:
		typeahead: function () {
         return [
					 {
                 name: 'gearCategories',
                 valueKey: 'label',
                 displayKey: 'label',
                 source: function(query, callback) { Meteor.call("typeAheadCategories",  query, {}, function(err, res) { if (!err) callback(res); }); },
                 header: '
Categories
'
             },
						 {
                 name: 'gearSubCategories',
                 valueKey: 'label',
                 displayKey: 'label',
                 source: function(query, callback) { Meteor.call("typeAheadSubCategories",  query, {}, function(err, res) { if (!err) callback(res); }); },
                 header: '
Sub Categories
'
             },
             {
                 name: 'gearBrands',
                 valueKey: 'name',
                 displayKey: 'name',
                 source: function(query, callback) { Meteor.call("typeAheadBrands",  query, {}, function(err, res) { if (!err) callback(res); }); },
                 header: '
Brands
'
             }
         ];
	}

And the input text:

			<input aria-label="Search" type="text" class="form-control typeahead no-padding" name="brand" id="searchGr" placeholder="Search"  autocomplete="off" spellcheck="off" data-sets="typeahead" value={{value}}>

@niranjans since typeahead.js v0.11 source function takes three arguments, last one is async callback, second one is sync callback.

Oh got it. I tried looking at the change-logs but could not find a breaking change. Thanks for pointing that out.


Status of SciPy compatibility

SciPy issue tracker: https://github.com/scipy/scipy/issues/20669

Status update:

Test suite passing (disclaimer: with known thread-safety issues not covered by tests),
Nightly Linux wheels available at https://anaconda.org/scientific-python-nightly-wheels/scipy as of today.

macOS nightly wheels are also available now at https://anaconda.org/scientific-python-nightly-wheels/scipy

Closing in favor of the upstream issue.


Update for Avalonia 11.0.0-preview4

Update Avalonia to 11.0.0-preview4
Rename RichTextBlock to SelectableTextBlock
Target the web assembly demo app at .NET 7.0

Note: It looks like some of the 'Inlines' stuff that was on RichTextBlock has been moved up into TextBlock, so there might be more possible changes needed to support that

Ok, hopefully that's the build and the tests both working now


fixed and aligned versioning

I created the PR on your behalf @KarimAED

Should be fine to merge once checks resolve


Python callback into BridgeStan with C types

I have an implementation of Stan that iterates and does warmup calculations in Python and leapfrog/trajectories in C++.  The gradient calculations implicit in each leapfrog step happen via a Python callback which then calls BridgeStan: Python -> C++ -> Python/BridgeStan -> C/C++/BridgeStan.
Since the C++ code is calling a BridgeStan function, and Python/BridgeStan expects numpy arrays, I've got to convert a double* to a numpy array just so that BridgeStan can convert the numpy array back to double*.  The conversion to a numpy array is unnecessarily costly, especially since everything is using the same underlying memory.
Consider BridgeStan's python/bridgestan/model.py lines 219 to 229.  This code chunk defines the Python/BridgeStan interface to the C/BridgeStan function bs_log_density_gradient.  Lines 225 and 227 specify numpy arrays as argument types from Python/BridgeStan -> C/C++/BridgeStan.
Simply adding the following code to python/bridgestan/model.py::StanModel's __init__() method allows a Python callback from C++ to re-use the original double*:
self._ldg = self.stanlib["bs_log_density_gradient"]
self._ldg.restype = ctypes.c_int
self._ldg.argtypes = [
    ctypes.c_void_p,
    ctypes.c_int,
    ctypes.c_int,
    ctypes.POINTER(ctypes.c_double), # changed from double_array
    ctypes.POINTER(ctypes.c_double),
    ctypes.POINTER(ctypes.c_double), # changed from double_array
    star_star_char,
]

What do you think of building such functionality into BridgeStan?  Just adding the above code won't break our API in anyway, but does offer a whole new world of possibility for BridgeStan.  I'm not sold on the name _ldg, I'm just asking about the possibility of including such functionality.
If y'all are into this idea, would you brainstorm with me what a better design might look like that allow callbacks, from the various higher level languages, into BridgeStan using plain C types?

What do you think of building such functionality into BridgeStan?

I couldn't quite follow all the callbacks, so I'm not entirely sure what you are suggesting adding to BridgeStan and what that would enable for clients that they can't achieve now.

My understanding of Edward's request is that a user may be working with other code that uses ctypes, and as a result have a double array which is represented as a ctypes.POINTER(ctypes.c_double), rather than a numpy array object.
There is nothing at the C level of BridgeStan to differentiate between these, and in principle either is fine, but for convenience BridgeStan only speaks the language of numpy ndarrays, not 'raw' ctypes pointers. You can convert from a ctypes pointer to an ndarray, but since all BridgeStan really does is some bounds checking and then convert it back to a pointer internally, this comes with an extra cost at no extra benefit.
The concrete code Ed provided would give you a different function which accepts ctypes objects as opposed to numpy ones, but I also have a minimal patch prepared which would make it so either can be accepted anywhere we currently accept numpy arrays, meaning no extra functions, just slightly broader types being accepted.

Got it.  Thanks!

Right, this doesn't seem to be an issue outside of Python, for the reasons you mention.  Good call.
Brian proposed some code, in branch python/allow-ctypes-double-pointers, that allows direct access to BridgeStan's log_density_gradient() for both numpy arrays and ctypes.  The solution involves an extra if statement, relative to what lives in main branch.  To help us determine whether or not we want to include such functionality in BridgeStan, I ran some experiments and report the results below.
I ran some numerical simulations to better understand the computational cost trade-offs associated with this extra if statement. From a numpy array user perspective, we expect a slight slow down (one extra if statement).  From a ctypes user perspective, we expect a major gain (no unnecessary numpy array creation).  The code used for the simulations lives in the github repository bridgestan-speed.  The simulations were across three models: gaussian with data (2 parameters), logistic regression (25 parameters), and standard normal with no data (1_000 parameters).
Numpy array perspective.  500 runs of 1_000 evaluations of log_density_gradient
across two branches.  Times reported are means per run plus/minus standard
deviations.
dimensions / branch             main                    python/allow-ctypes-double-pointers
2 (normal w/ data)              13.9 ms +/- 40.9 μs     14.6 ms +/- 493 μs
25 (logistic regression)        96.2 ms +/- 8.42 ms     82.7 ms +/- 1.13 ms
1_000 (std_normal no data)      27.5 ms +/- 1.48 ms     27.1 ms +/- 721 μs

Ctypes perspective. 20 runs of Stan sampling with 1_000 warmup and 1_000
iterations across two branches.  Times reported are means per Stan run
plus/minus standard deviations.  RNG seeds were coordinated to ensure no branch
lucked into a worse part of the model parameter space than the other branch.

dimensions / branch             main                    python/allow-ctypes-double-pointers
2 (normal w/ data)              251 ms +/- 7.36 ms      89.9 ms +/- 5.3 ms
25 (logistic regression)        2.56 s +/- 132 ms       2 s +/- 74.9 ms
1_000 (std_normal no data)      1.51 s +/- 30.3 ms      908 ms +/- 92 ms

What do you all think, should we add this functionality to BridgeStan?

Thanks for the report @roualdes.  I couldn't quite tell what was being compared.  I see two tables of results, but don't know what they mean.  What does "across two branches" mean for the "Numpy array perspective"?  Is it that the first one is passing in an numpy array and the second passing in some raw memory?

What does "across two branches" mean for the "Numpy array perspective"?

The first table is meant to show costs associated with the proposed solution to this issue for the most common Python/BridgeStan user, a user who is only dealing with numpy arrays.  The table presents mean run times for calling BridgeStan's log_density_gradient with numpy arrays.  The first column sets the baseline for run times in the branch main.  The second column displays run times for the proposed solution from branch python/allow-ctypes-double-pointers.

Is it that the first one is passing in an numpy array and the second passing in some raw memory?

Correct.  The second table is meant to show benefits associated with the proposed solution when a user has a double* to raw memory.
Let me know if I can offer any other words to help clarify what my results are about.

Thanks---that's what I suspected and this looks close enough to be worth doing.
If the results weren't clear enough here, I'd be tempted to do about 10 times as many evals over several batches because the inconsistent sd in the tests you list (e.g., "13.9 ms +/- 40.9 μs     14.6 ms +/- 493 μs" in the first line of the first table, where the new method has ten times the standard deviation).  This kind of micro-benchmarking is notoriously tricky, so probably not worth it.

They align with my expectation - for numpy arrays it is a wash and for raw pointers the overhead is much less.
If it had ended up being a significant increase for numpy arrays I would be more hesitant toward adding it. However, it's really just adding one more if into a part of the code that already has a bunch of ifs for validation logic, so I'm not shocked the impact is essentially nothing.


File transfer (owncloud, app file uploads) terminated

This issue is for tracking purposes only. Ran into issue uploading through the default settings as nginx cuts off at 1MB by default.
client_max_body_size 1024M;
Here's a diff in pastebin for reference: http://pastebin.com/eUVprahB

Since this is a configurable and not needed for the template I am closing this to leave for reference.


"Connection was Reset" while rendering a grid

I am trying to load a basic grid, like in the example given here.
Everything seems in place, include jquery, the css and JavaScript and the dll assembly (the code compiles).
When I browse to the page, the result is that the page HTTP request never completes; it stops at the last bit of HTML prior to the grid.  The Firefox browser says "The connection to the server was reset while the page was loading".  The same thing happens with Chrome.
I'm using ASP.NET Core v1.1.1.  with MVC6.Grid v1.4.0
Here is an example of simple code that causes this failure:
    @(Html.Grid(new [] { new { Name = "Hello" }, new { Name = "World" } })
          .Build(columns =>
          {
              columns.Add(model => model.Name);
          })
          )
    }

Could you try doing the same with this project? I added the same code to 3 of my projects and they worked without an error, so I'm guessing it's something on your side.

Thank you for your suggestion.  I seem to be incapable of reading installation instructions.  I had neglected to install the partial views.  So I'll close this issue.


how to make funnel chart with chart-js-plugin-funnel using it in angular-chart js

Hi Actually i am new to chart js and i just want to use "chartjs-plugin-funnel" plugin with angular chart-js i dont know how to make it. what canvas id i had to mention for funnel chart?

Please ask questions on StackOverflow: https://stackoverflow.com/questions/tagged/chart.js

Ho sorry Ben but No one is answering for my question in stackoverflow also

Ho sorry Ben but No one is answering for my question in stackoverflow also

Have you found a solution to your question ?


SCM view broken: cannot read property 'templateData' of null

Have some changes and a multi line commit message in SCM view
Discard changes by clicking on the "Discard All Changes" button in Changes area
Whole view gets broken down

Adding label important since the SCM view seems fully broken for me.
Reload fixes it.
 ERR Cannot read property 'templateData' of null: TypeError: Cannot read property 'templateData' of null
    at E.removeItemFromDOM (file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:513:286)
    at E._splice (file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:506:732)
    at E.splice (file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:506:467)
    at file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:30:994
    at Array.forEach (<anonymous>)
    at t.CombinedSpliceable.splice (file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:30:981)
    at file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:546:756
    at t.EventBufferer.bufferEvents (file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:98:214)
    at O.splice (file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:546:723)
    at O.splice (file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:1096:685)
    at Object.splice (file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:119:868)
    at t.IndexTreeModel.splice (file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:104:116)
    at t.ObjectTreeModel._setChildren (file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:111:499)
    at t.ObjectTreeModel.setChildren (file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:111:371)
    at c._setChildren (file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:117:159)
    at c.setChildren (file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:116:409)
    at t.CompressibleObjectTreeModel.setChildren (file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:120:771)
    at B.setChildren (file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:1112:793)
    at Ae.refresh (file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:7235:103)
    at Ae.onDidSpliceRepositories (file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:7233:383)
    at Ae.setVisible (file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:7234:762)
    at c.fire (file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:95:821)
    at Ue.setVisible (file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:6383:92)
    at file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:6401:328
    at Array.map (<anonymous>)
    at y.setVisible (file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:6401:319)
    at i.setVisible (file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:3900:24)
    at e.hideActiveComposite (file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:5751:399)
    at e.hideActiveViewlet (file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:6342:218)
    at O.setSideBarHidden (file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:6372:477)
    at e.run (file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:6174:841)
    at s.runAction (file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:123:740)
    at s.run (file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:123:598)
    at e.onClick (file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:973:176)
    at Immediate._onImmediate (file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:972:727)
    at processImmediate (internal/timers.js:439:21)
log.ts:197   ERR Cannot read property 'domNode' of null: TypeError: Cannot read property 'domNode' of null
    at E.updateItemInDOM (file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:512:463)
    at E._splice (file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:507:534)
    at E.splice (file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:506:467)
    at file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:30:994
    at Array.forEach (<anonymous>)
    at t.CombinedSpliceable.splice (file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:30:981)
    at file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:546:756
    at t.EventBufferer.bufferEvents (file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:98:214)
    at O.splice (file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:546:723)
    at O.splice (file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:1096:685)
    at Object.splice (file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:119:868)
    at t.IndexTreeModel.splice (file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:104:116)
    at t.ObjectTreeModel._setChildren (file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:111:499)
    at t.ObjectTreeModel.setChildren (file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:111:371)
    at c._setChildren (file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:117:159)
    at c.setChildren (file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:116:409)
    at t.CompressibleObjectTreeModel.setChildren (file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:120:771)
    at B.setChildren (file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:1112:793)
    at Ae.refresh (file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:7235:165)
    at Ae.onDidSpliceRepositories (file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:7233:383)
    at Ae.setVisible (file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:7234:405)
    at c.fire (file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:95:821)
    at Ue.setVisible (file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:6383:92)
    at file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:6401:328
    at Array.map (<anonymous>)
    at y.setVisible (file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:6401:319)
    at i.setVisible (file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:3900:24)
    at e.showComposite (file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:5749:975)
    at e.doOpenComposite (file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:5747:1007)
    at e.openComposite (file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:5747:539)
    at e.doOpenViewlet (file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:6342:900)
    at e.openViewlet (file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:6342:313)
    at e.run (file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:6174:913)
    at s.runAction (file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:123:740)
    at s.run (file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:123:598)
    at e.onClick (file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:973:176)
    at Immediate._onImmediate (file:///Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:972:727)
    at processImmediate (internal/timers.js:439:21)

Actual steps:

Create a file template with contents lorem ipsum lorem ipsum lorem ipsum lorem ipsum lorem ipsum lorem ipsum lorem ipsum lorem ipsum lorem ipsum
Run git config commit.template template
Focus File Explorer
Reload
Focus SCM

💥


K8SSAND-1585 ⁃ k8ss operator does not produce any logs/events in an event of the reaper deployment failure

Hi, just got into the issue while enabling Reaper due to the reaper deployment not having the resources defined due to our K8S cluster having OPA gatekeeper policy enforcing the requirement.
Behaviour is following:

Operator is stuck in Deploying reaper resource forever without throwing any errors
Once limit enforcement is suspended on the gatekeeper Reaper is able to proceed

Reaper Object/Operator should have some sort of log/event/status displayed in the event of the the faulty deployments of the Reaper resource
This is the reaper got stuck for hours state k get reapers.reaper.k8ssandra.io -o yaml
apiVersion: v1
items:
- apiVersion: reaper.k8ssandra.io/v1alpha1
  kind: Reaper
  metadata:
    annotations:
      k8ssandra.io/resource-hash: KYe14Itq609cgc+O66a43OKVRVq088Ev5fGgqOIYtCU=
    creationTimestamp: "2022-06-13T14:35:48Z"
    generation: 2
    labels:
      app.kubernetes.io/component: reaper
      app.kubernetes.io/created-by: k8ssandracluster-controller
      app.kubernetes.io/managed-by: k8ssandra-operator
      app.kubernetes.io/name: k8ssandra-operator
      app.kubernetes.io/part-of: k8ssandra
      k8ssandra.io/cluster-name: dev-westeurope-01
      k8ssandra.io/cluster-namespace: temporal-state
    name: dev-westeurope-01-primary-reaper
    namespace: temporal-state
    resourceVersion: "210319458"
    uid: 6125bead-67b9-47ca-ace5-d6a1462bec5b
  spec:
    ServiceAccountName: default
    autoScheduling:
      enabled: true
      initialDelayPeriod: PT15S
# Please edit the object below. Lines beginning with a '#' will be ignored,
      percentUnrepairedThreshold: 10
      periodBetweenPolls: PT10M
      repairType: AUTO
      scheduleSpreadPeriod: PT6H
      timeBeforeFirstSchedule: PT5M
    cassandraUserSecretRef:
      name: cassandra-reaper-cql
    containerImage:
      name: cassandra-reaper
      registry: docker.io
      repository: thelastpickle
      tag: 3.1.1
    datacenterAvailability: ALL
    datacenterRef:
      name: primary
      namespace: temporal-state
    heapSize: 2Gi
    initContainerImage:
      name: cassandra-reaper
      registry: docker.io
      repository: thelastpickle
      tag: 3.1.1
    jmxUserSecretRef:
      name: cassandra-reaper-jmx
    keyspace: reaper_db
    skipSchemaMigration: false
    uiUserSecretRef:
      name: cassandra-reaper-ui
  status:
    conditions:
    - lastTransitionTime: "2022-06-17T09:01:18Z"
      status: "False"
      type: Ready
    progress: Deploying
kind: List
metadata:
  resourceVersion: ""
  selfLink: ""

┆Issue is synchronized with this Jira Task by Unito
┆friendlyId: K8SSAND-1585
┆priority: Medium

Was anything noteworthy reported in the Reaper Deployment status? Not sure off hand what checks could be performed to determine that things are stuck. Certainly open to suggestions though :)
Did #553 resolve this issue?

Another issue did resolved this issue for the part when the cluster enforces the resource limits via the policy as this was the root cause of reaper not deploying.
This issue is about surfacing the problem which I believe operator can do as it should receive the deployment error message from the admission controller but instead it displays no error. Does it makes sense?

If the Reaper controller gets an error when it tries to add/update the Deployment, then we should definitely surface that information.
Can you provide steps to reproduce?

Sure thing, here are the steps

deploy OPA gatekeeper (wait for it to finish)

kubectl apply -f https://raw.githubusercontent.com/open-policy-agent/gatekeeper/master/deploy/gatekeeper.yaml

Deploy a policy template

apiVersion: templates.gatekeeper.sh/v1beta1
kind: ConstraintTemplate
metadata:
  name: k8scontainerrequests
spec:
  crd:
    spec:
      names:
        kind: K8sContainerRequests
  targets:
    - target: admission.k8s.gatekeeper.sh
      rego: |
        package k8scontainerrequests

        violation[{"msg": msg}] {
          container := input.review.object.spec.template.spec.containers[_]
          not container.resources
          msg := sprintf("`resources` are undefined for container <%v>", [container.name])
        }

        violation[{"msg": msg}] {
          container := input.review.object.spec.template.spec.containers[_]
          not container.resources.requests
          msg := sprintf("`resource requests` are undefined for container <%v>", [container.name])
        }

        violation[{"msg": msg}] {
          container := input.review.object.spec.template.spec.containers[_]
          not container.resources.requests.cpu
          msg := sprintf("`cpu request` are undefined for container <%v>", [container.name])
        }

        violation[{"msg": msg}] {
          container := input.review.object.spec.template.spec.containers[_]
          not container.resources.requests.memory
          msg := sprintf("`memory request` are undefined for container <%v>", [container.name])
        }

        violation[{"msg": msg}] {
          container := input.review.object.spec.template.spec.containers[_]
          not container.resources.limits
          msg := sprintf("`resource limits` are undefined for container <%v>", [container.name])
        }

        violation[{"msg": msg}] {
          container := input.review.object.spec.template.spec.containers[_]
          not container.resources.limits.cpu
          msg := sprintf("`cpu limit` are undefined for container <%v>", [container.name])
        }

        violation[{"msg": msg}] {
          container := input.review.object.spec.template.spec.containers[_]
          not container.resources.limits.memory
          msg := sprintf("`memory limit` are undefined for container <%v>", [container.name])
        }

        violation[{"msg": msg}] {
          container := input.review.object.spec.template.spec.containers[_]
          mem_orig := container.resources.requests.memory
          not re_match("[KMmGTPE]", mem_orig)
          msg := sprintf("Unable to parse memory request <%v> for container <%v>", [mem_orig, container.name])
        }

        violation[{"msg": msg}] {
          container := input.review.object.spec.template.spec.containers[_]
          mem_orig := container.resources.limits.memory
          not re_match("[KMmGTPE]", mem_orig)
          msg := sprintf("Unable to parse memory limit <%v> for container <%v>", [mem_orig, container.name])
        }

wait few seconds before the template is synchronised as otherwise step 5 may complain

create policies to enforce the resource check prior to deploy

apiVersion: constraints.gatekeeper.sh/v1beta1
kind: K8sContainerRequests
metadata:
  name: container-must-have-limits
  annotations:
    title: Resource requests and/or limits are missing for Deployment/Pod
    datadogtitle: Missing Container Resources
    datadogsubtitle: Pod is missing resource limits and/or requests
    description: |
      Deployment/Pod containers must have resource requests & limits defined.
      This avoids memory leaking applications running containers.
spec:
  enforcementAction: deny
  match:
    kinds:
      - apiGroups:
          - apps
        kinds:
          - Deployment

Deploy k8ssandra cluster without specifying the resource block for the reaper

In this scenario admission controller would reject the deployment so no PODs will ever get created. Reaper CRD won't have any info about it being rejected and would look like everything is WIP without any issues.


[crypto] add scheme field to ValidatorSet

Motivation
Add a scheme field to on-chain validator set to support crytpo
upgradability.
The remaining work can be done with pure code change and is left as future work until we have to do the upgrade.
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.)

:umbrella: The latest upstream changes (presumably d171a27b6febcf9b5476de3c265f1bbc8c51810b) made this pull request unmergeable. Please resolve the merge conflicts.

:umbrella: The latest upstream changes (presumably c2f473e7c5ff4ebf81e57ec2d31831083725e26e) made this pull request unmergeable. Please resolve the merge conflicts.

@bors-libra r=davidiw

:pushpin: Commit 58911b8 has been approved by davidiw

:hourglass: Testing commit 58911b84b903108a6af4d0998e16c6f715bf011e with merge af3181bb208a715bf76825b09abc9d67bd9ccf37...

:sunny: Test successful - checks-actions_land_blocking_test, checks-circle_commit_workflow
Approved by: davidiw
Pushing af3181bb208a715bf76825b09abc9d67bd9ccf37 to master...


Smart Hunter overlay Monster missing

Hello, I'm here for report one missing monster no monster data.
"Em127_00" Leshen
This parts dont show up in game, smart Hunter info dont find parts 2,3,4 e etc.
"Em127_01" ancient leshen
This monster dont show up nothing, only "unknow monster". It missing in monster data.

There is still an array overflow. https://imgur.com/a/2H1DIb9


set storage account to not be publicly accessible

In what area(s)?

/area administration
/area ansible
/area autoscaling
area configuration
/area cyclecloud
/area documentation
/area image
/area job-scheduling
/area monitoring
/area ood
/area remote-visualization
/area user-management

Describe the feature
Customer policy may require storage accounts to not be publicly accessible.
Unfortunately, the azurerm terraform provider currently does not support setting this property at creation time.
Fix once https://github.com/hashicorp/terraform-provider-azurerm/issues/16335 is addressed

cc @matt-chan

Note: currently, access to the Azure storage account is handled via specific network security rules.
When setting publicNetworkAccess = 'disabled', all access is blocked an these rules are no longer  in effect.
The only solution for this scenario is to create a private endpoint for the storage account.

Private endpoints will be the way to go in the future. Right now storage account access is only possible from the admin and compute subnets when working in a network lockdown scenario (no public ip). This rule is controlled by the network rules on the storage account, which is like a firewall.

Just mentioning that setting the PublicNetworkAccess property on the storage account should now be possible via terraform (v3.21.0 of the azurerm terraform provider).
https://github.com/hashicorp/terraform-provider-azurerm/issues/16335#issuecomment-1251465055

It looks like we will need to implement the private endpoint solution for the storage account for a customer until end of November.
@xpillons I don't know whether you have the time to look into this on your side, but if you have any specific hints / examples that you can share that could already be very helpful

close as duplicated with #1219


Paging not working in Jobs Tab

Describe the Issue
Paging not working in Jobs Tab. I see 60 jobs being executed, but only 1 page.
Expected behavior
I would expect to be able to view all job executions.
Version Information

Host Operating System: Windows Server 2016
Host PowerShell Version: 5.1.14393.3471
Universal Automation Version: 1.10

I ran several new jobs, and paging started showing. But I don't see prior to Job 54.. but that might be due to my db being corrupted. I'll mark it as closed and let someone else bring it up if they see this issue as well in other circumstances.


Rename the plugin?

The plugin's entry point is named pytest home so it suffers similar problems as pytest-enabler did.  Maybe you want to rename this plugin as well?

Thanks! Your work laying out the history made this change easy and quick to fix. I wouldn't have remembered what was the correct incantation without looking at the prior history.
Released in 0.6.


Code workflow

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


Jax is not compatible with the latest Pyarrow

Description
I am not able to create a Conda environment with jax and pyarrow>=14.0. I see that it's because of the pinned libgrpc version (>=1.58.1, <1.59.0a0)
System info (python version, jaxlib version, accelerator, etc.)
Here is a simple example to reproduce:
mamba create -n lala python=3.11 jax pyarrow=15 --dry-run

Hi - thanks for the report! JAX itself doesn't pin any libgrpc version. It looks like this pinning is likely coming from the jaxlib conda-forge package: https://github.com/conda-forge/jaxlib-feedstock. I'm not sure why such a specific version is pinned. The best place to raise this issue would probably be there.

As Jake says, this is a property of the (community-supported) conda-forge package. You can probably just install JAX's pip package inside your conda instance. JAX vendors dependencies like grpc internally in the pip package, so they don't show up as dependencies.
Since we don't ship the conda-forge packages, there's not much else we can do on our end!

It looks like this has been resolved in conda-forge. Thanks!


Automated dependency updates | Mon, 16 Sep 2019 12:00:49 +0000

Description
Dependency Updates for golangci-lint.

Looks like a simple linter update! 🚢

And yet the linter failed in this pr. I don't think we can ship this! (rerunning to see if repeats)

Looks like a simple linter update! 🚢

And yet the linter failed in this pr. I don't think we can ship this! (rerunning to see if repeats)

ooof was a bit too 🔫 shy there! Now looking to how a linter fails


does analytical IK improves the performance over IKNet

based on your experiments log, does analytical IK improves the performance over IKNet?

ne is the analytical IK in the chart?

Sorry for late response. This is the chat that I mentioned. We didn't reproduce IKNet but replace it with AIK, a pure mathematical method. In the chart, we want to see how different shape estimation methods perform and how AIK perform.


Add testcase for build arg without value

From #31990
Issue itself fixed by #31351
@nathanleclaire
Signed-off-by: Tonis Tiigi<EMAIL_ADDRESS>

Please sign your commits following these rules:
https://github.com/docker/docker/blob/master/CONTRIBUTING.md#sign-your-work
The easiest way to do this is to amend the last commit:
$ git clone -b "add-build-arg-testcase" git@github.com:tonistiigi/docker.git somewhere
$ cd somewhere
$ git rebase -i HEAD~842353706984
editor opens
change each 'pick' to 'edit'
save the file and quit
$ git commit --amend -s --no-edit
$ git rebase --continue # and repeat the amend for each commit
$ git push -f

Amending updates the existing PR. You DO NOT need to open a new one.

Nice.
Though I do wonder if there's a bit of a bigger issue here around what happens to a client when the daemon it's targeting panics. Especially since the client clearly could not continue in a healthy manner but still returned 0 like there was no error.

LGTM


Possible to disable?: 'Save as Workspace?' prompt, upon closing a window

The issue remains unsolved after 2 years (previous one: https://github.com/microsoft/vscode/issues/42657)
There is a recent question on stack overflow (https://stackoverflow.com/questions/60671567/disable-vscode-prompt-do-you-want-to-save-your-workspace-configuration)
I think we need an option to disable this prompt. It's really annoying

We do this because the workspace could have user defined settings.

I have updated my extension to quit vscode when all editors are closed
https://marketplace.visualstudio.com/items?itemName=Hai.AlwaysOpenWorkspace
The trick is to call vscode.commands.executeCommand('workbench.action.quit'); when all editors are closed.
workbench.action.quit will quit vscode without any prompts


Fixes failing TestPeerInfoApi test on windows

Motivation
This fixes the TestPeerInfoApi test currently failing on our windows CI run.
Changes
Moved the call to t.Cleanup to close apps to be after any call to t.TempDir used to setup apps, this ensures that we first close apps, and then delete their temp dirs as opposed to vice-versa.
Test Plan
See that TestPeerInfoApi passes on the windows CI run.

bors merge


There might be a problem with the project dependency tree. It is likely not a bug in Create React App, but something you need to fix locally.  The react-scripts package provided by Create React App requires a dependency:    "webpack": "4.19.1"

Hi guys! I can't start my react app, I always get this error message even if I tried the steps:
C:\Users\loicq\Desktop\Coding\react\diablo-mvp>npm start

<EMAIL_ADDRESS>start C:\Users\loicq\Desktop\Coding\react\diablo-mvp
react-scripts start

There might be a problem with the project dependency tree.
It is likely not a bug in Create React App, but something you need to fix locally.
The react-scripts package provided by Create React App requires a dependency:
"webpack": "4.19.1"
Don't try to install it manually: your package manager does it automatically.
However, a different version of webpack was detected higher up in the tree:
C:\Users\loicq\node_modules\webpack (version: 4.27.0)
Manually installing incompatible versions is known to cause hard-to-debug issues.
If prefer to ignore this check, add SKIP_PREFLIGHT_CHECK=true to an .env file in your project.
That will permanently disable this message but you might encounter other issues.
To fix the dependency tree, try following the steps below in the exact order:

Delete package-lock.json (not package.json!) and/or yarn.lock in your project folder.
Delete node_modules in your project folder.
Remove "webpack" from dependencies and/or devDependencies in the package.json file in your project folder.
Run npm install or yarn, depending on the package manager you use.

In most cases, this should be enough to fix the problem.
If this has not helped, there are a few other things you can try:

If you used npm, install yarn (http://yarnpkg.com/) and repeat the above steps with it instead.
This may help because npm has known issues with package hoisting which may get resolved in future versions.

Check if C:\Users\loicq\node_modules\webpack is outside your project directory.
For example, you might have accidentally installed something in your home folder.

Try running npm ls webpack in your project folder.
This will tell you which other package (apart from the expected react-scripts) installed webpack.

If nothing else helps, add SKIP_PREFLIGHT_CHECK=true to an .env file in your project.
That would permanently disable this preflight check in case you want to proceed anyway.
P.S. We know this message is long but please read the steps above :-) We hope you find them helpful!
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR<EMAIL_ADDRESS>start: react-scripts start
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>start script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR!      C:\Users\loicq\AppData\Roaming\npm-cache_logs\2018-12-06T03_16_34_961Z-debug.log
C:\Users\loicq\Desktop\Coding\react\diablo-mvp>

The first time I deleted node_modules using rimraf on my windows command line, was it the right way or I need to delete it  directly on my desktop folder?

Delete it in Windows Explorer. Be sure you're deleting C:\Users\loicq\node_modules -- it has nothing to do with your project folder.

Got it! Thanks a lot, really appreciated!

#5838
#4167

go to your package.json
replace "react-scripts": "whatever ver u got" to "react-scripts": "1.1.4",
then run npm install, after that npm start


Improved argument checking for lax.broadcast_in_dim

Added checking that the output shape has higher or equal rank to input
Added checking that the broadcast_dims are sorted (required by XLA)
Relaxed check that operand dimension size can be 1
Added lax.broadcast_in_dim docstring

This was inspired by reviewing #2424 and #2401. The checks added here match the XLA semantics.

Wow, nice error message tests!


Links in tutorials goes to wrong url with .md extension which returns an error.

On the docs pages / tutorials like this one:
https://www.microsoft.com/net/tutorials/csharp/getting-started/strings
there are links that points to .md files.
For example: https://www.microsoft.com/net/tutorials/csharp/getting-started/methods.md
That link doesn't work and returns an error. The correct path is https://www.microsoft.com/net/tutorials/csharp/getting-started/methods
Looks like all links have the same issue.
/cc @ardalis

Those docs aren't part of this repository, but I'll follow up and get it fixed. Thanks!

Thanks, I didn't know where to file an issue. asked on slack and followed to this repo.


Base for Reflections and Refraction/Transparency

Doesn't follow the 42 norm yet and still hard coded, but you could easily adapt it with the parsing :)
Still some bugs about the transparency to investigate (Certainly the distance = 0 thing)
Both Reflection and Transparency create N times a new ray at each hit, with N the max recursive factor set in the define.
Reflected rays are deviated depending of the surface normal vector, Refracted rays are computed using the Snell Descartes law.
You can disable both reflection and refraction by setting RECURSIVE_REFLECTION_HITS and RECURSIVE_REFRACTION_HITS to 0 (The program will then execute as before), in this demo reflection is applied to all objects with a depth layer of 2.

So nice!!! :D Thanks a lot!! Will take the time to adapt it in the future. Thanks again! :tada:

So nice!!! :D Thanks a lot!! Will take the time to adapt it in the future. Thanks again! :tada:


Add autowiring for RequestFactory and ResponseFactory

Q
A

Bug fix?
no

New feature?
yes

BC breaks?
no

Deprecations?
no

Related tickets
n/a

Documentation
in/a

License
MIT

What's in this PR?
MessageFactory has 2 parent interfaces (allowing to typehint against only the part you want). This makes these interfaces work for autowiring too (by using the existing message_factory service, as it implements these interfaces due to this inheritance)
Why?
Autowiring is great, and the bundle should make it work fine.

Thank you @xabbuh for the review.


Cannot read properties of undefined when copying the primitives

Please provide the environment you discovered this bug in.
Created an NX based AnalogJS project with the defaults and added the UI components as described in the docs.s
Which area/package is the issue in?
Don't know / other
Description
When I wanted to copy the primitives it gave me an error. It is the same if I choose all (or select every option I'd like)
Please provide the exception or error you saw
√ Choose which primitives you want to copy · accordion, alert, alertdialog, aspectratio, avatar, badge, button, card, command, dialog, icon, input, label, menu, popover, progress, radiogroup, scrollarea, separator, sheet, skeleton, spinner, switch, tabs, toggle, typography, table, hovercard, collapsible, menubar, contextmenu

√ Some of the primitives you are trying to install depend on the icon primitive. Do you want to add it to your project? (Y/n) · true
√ Some of the primitives you are trying to install depend on the button primitive. Do you want to add it to your project? (Y/n) · true
√ The context menu is implemented as part of the menu-helm primitive. Adding menu primitive. (y/N) · true
√ The menubar is implemented as part of the menu-helm primitive. Adding menu primitive. (y/N) · true

 >  NX   Cannot read properties of undefined (reading 'internalName')

TypeError: Cannot read properties of undefined (reading 'internalName')
    at C:\Users\Shadow\Documents\Projects\thd\node_modules\@spartan-ng\nx\src\generators\ui\generator.js:44:68
    at Generator.next (<anonymous>)
    at fulfilled (C:\Users\Shadow\Documents\Projects\thd\node_modules\tslib\tslib.js:166:62)
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)

Other information
No response
I would be willing to submit a PR to fix this issue

[ ] Yes
[X] No

Taking a look! Thanks for reporting this!

@benjaminforras this should be fixed with the newest release of alpha 315

tryharddood@SHADOW-TG1OJ07U:~/Projects/aiis$ npx nx g @spartan-ng/nx:ui --verbose

>  NX  Generating @spartan-ng/nx:ui

✔ Choose a directory to place your spartan libraries, e.g. libs/ui · libs/ui
? Choose which primitives you want to copy …
? Choose which primitives you want to copy …
✔ Choose which primitives you want to copy · all

 >  NX   Cannot read properties of undefined (reading 'internalName')

TypeError: Cannot read properties of undefined (reading 'internalName')
    at /home/tryharddood/Projects/aiis/node_modules/@spartan-ng/nx/src/generators/ui/generator.js:48:68
    at Generator.next (<anonymous>)
    at fulfilled (/home/tryharddood/Projects/aiis/node_modules/tslib/tslib.js:166:62)
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)

Sadly it's still the same with alpha-315

Checking it out now

I created a workspace with npx create-nx-workspace@latest, choose the monorepo type with an Angular app.
Installed tailwind with nx/angular generator.
Then I followed the instructions from the spartan.ng documentation site.
And then the issue happened again with the npx nx g @spartan-ng/nx:ui command

Okay I will try to reproduce and fix now

Just released alpha 316. Should work now

It works fine! Thank you!


feat(cache_in_memory)!: In-memory cache with generic types

Adds support for using custom structs for cached representation of Discord API data via generics on InMemoryCache and a set of traits for cached data that is required for caching functionality.
I remember this was discussed a long time ago but AFAIK there never was an RFC for it. I went ahead to try and see if it could be implemented at all, this is a proof of concept.
Feedback welcome!
Some notes:

The compiler can't infer the default types for the generics yet (even though it should), so DefaultInMemoryCache is necessary
This could be made less breaking by naming the new DefaultInMemoryCache to InMemoryCache  and renaming the latter, but I think this is the better name long-term and this change is so huge, it should go to next either way
Migration is still very straightforward (just replace InMemoryCache imports with DefaultInMemoryCache)
Functionality is very much untouched, all I did was moving field access to the traits and from_model methods were replaced with From implementations
It is very uncommon for traits to have conditional methods (in this case some getters are only required with the permission-calculator feature enabled), but in this case users will explicitly enable it and this is very low-level anyways. If the permission calculator is not needed, the methods definitely shouldn't need to be provided, because the fields don't have to be stored at all
This could potentially reduce memory usage drastically when structs are optimized properly by implementors, which should definitely outweigh the relatively annoying amount of generics. Plus, the generics are pretty much set in stone until Discord adds entirely new models, which will require a lot of changes in twilight already
"But users should just write their own cache at this point" - Disagree. I think that 99% of the usecases will be removing a couple of fields to save up to several megabytes or even gigabytes of memory at scale and the caching logic itself is universal. Copy pasting twilight only creates a higher burden of maintainance for library users and this way the actual logic remains in our control, allowing for bugfixes to be distributed quickly

Many of these changes are related to listing the traits, maybe it's a good idea to keep the implementation only on Event, users can easily create an Event from the wrapped type by wrapping it in one anyway

Very intrigued by this change.
I'm using discord.py right now, and have been looking at (gradually) moving some components to Twilight. Being able to tailor my cache to not take up 16-20GB of RAM would be excellent.

Not sure how feasible this would end up, but maybe we could separate the cache structs to for example GuildCache etc to reduce the use of generics, for example someone that doesn't cache members wouldn't need to provide a type for the Member generic

This is almost certainly something we won't get 100% right the first time but it looks decent enough for a preview. I think we should experiment with unstable features à la https://docs.rs/tokio/latest/tokio/#unstable-features and merge this to main so that we're free to iterate till 0.16 based on user feeback.

That would require duplicating the entire code since the APIs are internally incompatible (probably in a seperate module) and then conditionally useing them based on the flags. Is that really something we want to maintain? Since this is backwards incompatible due to the compiler's inability to infer default generic types here, it would go to next instead of main anyways

That would require duplicating the entire code since the APIs are internally incompatible (probably in a seperate module) and then conditionally useing them based on the flags. Is that really something we want to maintain? Since this is backwards incompatible due to the compiler's inability to infer default generic types here, it would go to next instead of main anyways.
Edit: Alternative would be making it backwards compatible and making the traits sealed behind the flag if that's what you mean?

If it's infeasable then let's not do that.
I think the next major release is still a bit off so I'm for merging this ASAP to maximize its brewing time.

That would require duplicating the entire code since the APIs are internally incompatible (probably in a seperate module) and then conditionally useing them based on the flags. Is that really something we want to maintain? Since this is backwards incompatible due to the compiler's inability to infer default generic types here, it would go to next instead of main anyways.
Edit: Alternative would be making it backwards compatible and making the traits sealed behind the flag if that's what you mean?

If it's infeasable then let's not do that.
I think the next major release is still a bit off so I'm for merging this ASAP to maximize its brewing time.

I'll just go with renaming the traits then and will debase later.


Update documentation for Each queries.

Hi, it appears Each queries can also accept useMasterKey and sessionToken option but it wasn't documented, this PR is just a minor docs fix.

Thanks, looks good!


Infrastructure Catalog should be enabled by default

Rancher Version: master 10/4
Steps to Reproduce:

Setup a brand new Rancher
Click on Configure for kubernetes

Results: Get an error cause Infrastructure catalog is off by default
Expected:  Should be on

Backend, part of https://github.com/rancher/rancher/issues/6157


jest test broken with your approach

It seems awesome that I can have runtime environment variables but to my surprise many of my tests stopped working because they seem to be unable to find window._env_  while running react-scripts testare you experiencing similar issues?

Hello, could you try something like this:
const window = global;
window._env_ = {
  API_URL: "https://github.com"
};

I've commited to this file for example: https://github.com/kunokdev/cra-runtime-environment-variables/blob/master/src/App.test.js
Let me know if this helped you, otherwise we will figure something else for your case.

Assuming this should work, closing. Comment if you still have issues, then we will reopen this issue.

Hey, thanks. since my project is kind of in a hurry we went ahead and removed those tests for now.  when we run into it again I will try this.


TNT-40804 - move version bump config to separate file

Fix version bump config for release

Coverage remained the same at 95.119% when pulling 06723106bf496ae33d1c0491392dde5c98e9505a on dcottingham:release_testing into 1a8921ea35dd44506c2afdb334be8589272341e8 on adobe:main.


getFeedback CommentType - change unbound to false.

I was making a getFeedback request but the SDK was flagging an error when I assigned a CommentType, like so:
$request->CommentType    = Enums\CommentTypeCodeType::C_POSITIVE;
So I changed unbound to false in the GetFeedbackRequestType file and it worked.

If you look at the documentation for the CommentType field you should see that the Occurrence column indicates that the field is repeatable. This means that the API accepts multiple values for that field. In the SDK these fields will have unbound set to true and will allow you to specify multiple values by treating the field as an array. For example all the below are valid ways of setting the field.
// Assign two values one at a time.
$request->CommentType[] = Enums\CommentTypeCodeType::C_POSITIVE;
$request->CommentType[] = Enums\CommentTypeCodeType::C_NEUTRAL;

// Assign an array of values.
$request->CommentType = [
	Enums\CommentTypeCodeType::C_POSITIVE,
	Enums\CommentTypeCodeType::C_NEUTRAL
];


我在使用MVC4时发现一个bug（I found a bug when using MVC4）

原文我写在了博客里面：http://www.cnblogs.com/RainbowInTheSky/p/4550066.html
我使用form传递参数的时候，想把参数转化成对象，结果使用了对象变量名“action”，结果得到的值是null。当我改变这个变量名为model的时候，是可以得到值的。请问，这个是不是一个错误？
I use the “form” transfer parameters, want to convert the parameters into the object, the results of the use of the object variable name "action", the results get the value is null. When I change the name of the variable named “model”, it can be obtained.. Excuse me, is this a mistake?

If you're using conventional routing (which it appears that you are) - then the values action and controller will be bound from the URL by the route.
It's interfering with model binding because the system is trying to find a match for the parameter name. Since it find a route value for action then it tries to convert that value into your model.
A few suggestions for how you could avoid this (choose any):

Use attribute routing
Avoid using parameters named action or controller with conventional routing
Use [ModelBinder(Name = "")] to force model binding to ignore the value for action
Provide a prefix when you generate the form use generate keys with the prefix action.ActionName, action.ActionParam, etc.

thanks

oh,no , too many dogs.

No such thing as too many dogs.

:joy_cat:


implement gittuf add-hooks to configure pre-push hook

Manage hooks as described in: #158
Added UpdateHook functionality. There doesn't seem to be support for managing hooks in go-git (https://github.com/src-d/go-git/issues?q=is%3Aissue+is%3Aopen+hook)
Unit test currently breaks as the conf.Core.Worktree value is not populated when creating a repo with PlainInit. Any input appreciated. done
Add following tests / features before merging:

make sure hook is executable
do not overwrite hook script unless force

Further considerations:

gittuf rsl record HEAD should not add a record when executed multiple times. We need a new issue for this.

I'll fix the DCO before merging to keep the history intact.

Just took another quick look. I think this is largely good to go minus --force and a corresponding test.

Just took another quick look. I think this is largely good to go minus --force and a corresponding test.

I implemented --force and squashed so the DCO check is happy!


fix(cli): install error message

Printing an error message telling the user OLM is not available if that was selected during installation
Fixes #2105

Release Note
NONE

I wonder if we should do that only when the option is explicitly set, not when defaulted?

I wonder if we should do that only when the option is explicitly set, not when defaulted?

I think the usability issue reside in the fact that we choose to default to OLM. If we decided to default to a regular installation, it would be straightforward as we'd call the OLM procedure if that was explicitly required by the user. If we want to leave OLM as default, then we should at least output a warning that we're falling back to a regular installation because OLM is not available. We may think to ask for a confirmation from the user before proceeding ahead with the installation or dropping it.

I saw that the integration tests are failing, so I assume that the expected procedure right now is to fallback to a regular installation. However, I think that from usability perspective we should ask a confirmation before proceeding with the installation. I'm logging a separate issue for that.

Let's merge this. Yaks tests failures are unrelated.

Thanks.


Digital Ink Recognizer, candidate score always 0, flutter adnroid

I tried the example, and it has the same problem
Title:
Digital Ink Recognizer, candidate score always 0, flutter adnroid
Discription:
when app check, recognize text, it gives list of candidate,
the candidate has a text - candidate.text - which has no problem, and has a score - candidate.score - which always 0.0 (this is the problem)
To Reproduce:

before test edit code in recognizeText function to to show score with text
from  for (final candidate in candidates) {       _recognizedText += '\n${candidate.text}';     } to for (final candidate in candidates) {       _recognizedText += '\n${candidate.text}-${candidate.score}';     }
in example app, go to Digital ink recognition
download the language model
after finish draw the letter you want to recognize Like H
the press read text so see results
you can see letters with 0.0 scores always
tested on android device
Expected behavior: the score should not alway be zero

Platform:
OS: Android
Device: Samsung Note 9
Flutter 3.10.5 • channel stable
Dart 3.0.5
plugin version: google_mlkit_digital_ink_recognition: ^0.10.0
Screenshots
If applicable, add screenshots to help explain your problem.

Hi @homamAboAhmad
Thanks for opening the issue.
Returning 0 will be from the native API.
This package works on that.
I hope it helps you.

@bensonarafat thanks for reply, in logs from native, score is not zero, and works fine

Okay.. let me check

Any new updates?
في السبت، 16 ديسمبر 2023, 3:59 م Benson Arafat @.***>
كتب:

Okay.. let me check
—
Reply to this email directly, view it on GitHub
https://github.com/flutter-ml/google_ml_kit_flutter/issues/564#issuecomment-1858812885,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AJ7CFSJP7FUK6OVFGNFUQI3YJWLLJAVCNFSM6AAAAABAWXTV7SVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQNJYHAYTEOBYGU
.
You are receiving this because you were mentioned.Message ID:
@.***>

Are there any updates about this? I need to get result in the logcat
Recognition result: あ with score: -183.65