Pluto 24v4 QA - Draft 1

QAQC page.
DO link.
Please refer to DE notes for this build in the parent GH issue.

@jackrosacker, @sf-dcp and I met today to work through PLUTO QA and QA App updates. Final QA report is forthcoming, however our initial review left us with the following concerns:

0 changed records on "mismatch graph -- finance fields". The issue specifically occurs when the comparison type is set to "Last of same version type".

GIS suspects this may result from an issue in the streamlit app code rather than a source data issue. So before we determine whether to rebuild 24v4, Sasha is going to take a look at the QA app code to ensure there are no chart errors.
If there is not an bug in the chart configuration, GIS likely supports re-building 24v4 with Nov. Zoning (almost QA'd) and the DTM that was pulled by GIS on 20241122.

Additionally, we discussed how the inconsistency between DE and GIS dated naming conventions also makes confirmation of source data (especially DOF DTM) challenging, specifically across multiple version comparisons. This is an issue GIS and DE hope to discuss as part of a future join venture.

To the second point, we should chat, but we've recently moved those datasets from data library to our new tool which ensures that the date that you see for the DE "source data version" is the same as the date folder name in edm-publishing/datasets, rather than the date that it was archived by DE. The just run update (Nov zoning data) is the first time they've been archived using the new tool.

To the second point, we should chat, but we've recently moved those datasets from data library to our new tool to archive DE source data which ensures that the date that you see for the DE "source data version" is the same as the date folder name in edm-publishing/datasets, rather than the date that it was archived by DE. The just run update (Nov zoning data) is the first time they've been archived using the new tool.

Oh cool, would be interested to hear more about this!

Thanks for following up on this. Glad we can pass QA for this specific metric. We still have to run through the final tables in the QA app before fully passing, but should get to that today or tomorrow.

PLUTO 24v4, Draft 1 QA Results
Status: FAILED
Needs: Manual corrections prior to re-build.
Summary:
A close review of the unreasonably small apartments table has resulted in the need for corrections (see table below). The majority of these corrections are for over reporting of unitsres, however reseach on two BBLs indicated under reporting. Please double check those that were allegedly under reported:<PHONE_NUMBER> and<PHONE_NUMBER>.
@AmandaDoyle is going to advise further on QA of the following tables. Potentially worth waiting on re-build until additional review of these tables.

table of BBLs where bldgarea/lotarea > numfloors*2
New and Vanished BBLs

BBL
FIELD
OLD_VALUE
NEW_VALUE
TYPE
REASON
VERSION
Link

3013347501
unitsres
64
8
Research
PTS   error – units
24v4
https://streeteasy.com/building/1607-pacific-street-brooklyn

3032957503
unitsres
140
20
Research
PTS error – units
24v4
https://streeteasy.com/building/23-bleecker-street-brooklyn

1008017504
unitsres
169
13
Research
PTS   error – units
24v4
https://streeteasy.com/building/128-west-26-street-new_york/8

3053027502
unitsres
72
6
Research
PTS error – units
24v4
https://streeteasy.com/building/182-minna-street-brooklyn

4050767502
unitsres
149
30
Research
PTS   error – units
24v4
https://streeteasy.com/building/fowler-park

1010460160
unitsres
77
79
Research
PTS error – units
24v4
https://streeteasy.com/building/354-west-56-street-new_york

2026037501
unitsres
65
135
Research
PTS   error – units
24v4
https://streeteasy.com/building/540-southern-boulevard-bronx

3019147512
unitsres
103
18
Research
PTS error – units
24v4
https://streeteasy.com/building/904-bedford-avenue-brooklyn/1b

@sf-dcp @fvankrieken @damonmcc @alexrichey
FYI @jackrosacker @croswell81

@sf-dcp
Discussed with Jack, and we think using latest zoning and DTM would be best

Hi all - I met with Sasha and reviewed the the rest of the QAQC table.  Once the additional manual corrections made by the GIS team are incorporated PLUTO can be rebuilt.  Given that there are no issues with the source data and in a effort to get this PLUTO major out asap, we'll keep the source data as is.  We will release a 2 PLUTO minors with updated zoning data for December and January.  We will kick off PLUTO 25v1 on February 25 after the 25A release of Geosupport.

@jackrosacker, sounds good. Yes, we will keep all source data the same. I'm working on corrections today; after that I will re-build and promote to draft if everything looks good.
@caseysmithpgh, I'm going through the corrections list now, and the bbl<PHONE_NUMBER> doesn't appear to need a correction. Using your link, it mentions 77 and 79 units as shown below:

Looking at PTS data, this bbl has residential and retail areas: so the extra 2 units are probably the retail space, aligning with the street easy link.


Fix VisualShaderNodeVaryingGetter expanded ports adding ".x" to shader

When VisualShaderNodeVaryingGetter type was Vector2/Vector3/Vector4, expanding the output ports and connecting an individual value to a scalar input would add ".x" to the assignment in the generated shader.  This was due to VisualShaderNodeVarying::get_port_type ignoring the port number, and always returning the associated vector type.  Added checks for p_port == 0 to return either the vector type, or scalar for expanded ports, matching similar logic in other nodes, like VisualShaderNodeColorConstant::get_output_port_type.
Fixes #92832

Thanks!


Solved the issue #37046 for duplicated words in securityContext

<!-- ℹ

 Hello!

 Solving the issue #37046

/easycla

Actually I just realized that I made the commit from an incorrect email id which has caused that issue.
Can someone just close this PR so that I can submit a new one from the correct email id


InitializeAsync dead lock when AutoConnectRealtime = true

Bug report
Describe the bug
InitializeAsync never returns when set AutoConnectRealtime = true
To Reproduce
             Supabase.Client? cli;
            Task.Run(async () =>
            {
                var options = new Supabase.SupabaseOptions
                {
                    AutoConnectRealtime = true,
                    AutoRefreshToken = true
                };
                var client = new Supabase.Client(url,key, options);
                await client.InitializeAsync();
                cli = client;
            }).Wait(); // stuck here, never return

Expected behavior
Should return
System information

OS: macOS
.NET 8.0
ARM64

@Arktische do you have a work around solution for this?


Cannot find module yargs

I just installed oppni from the docker image and I cannot get it to run. The file has already run with several other apps that require bids format.
Suggestions would be greatly appreciated.

docker run --rm -v /Users/lwilliams/Documents/Studies/Test:/data:ro -v /Users/lwilliams/Documents/Studies/Test/derivatives/oppni:/out default/oppni /data /out participant --participant_label sub-01
Traceback (most recent call last):
File "/oppni/oppni.py", line 222, in
run_oppni()
File "/oppni/oppni.py", line 185, in run_oppni
validate_bids_spec(args.bids_dir)
File "/oppni/oppni.py", line 78, in validate_bids_spec
run_cmd(cmd)
File "/oppni/oppni.py", line 67, in run_cmd
raise Exception("Non zero return code: %d"%process.returncode)
Exception: Non zero return code: 1
module.js:471
throw err;
^
Error: Cannot find module 'yargs'
at Function.Module._resolveFilename (module.js:469:15)
at Function.Module._load (module.js:417:25)
at Module.require (module.js:497:17)
at require (internal/module.js:20:19)
at Object. (/usr/lib/node_modules/bids-validator/bin/bids-validator:25:5)
at Module._compile (module.js:570:32)
at Object.Module._extensions..js (module.js:579:10)
at Module.load (module.js:487:32)
at tryModuleLoad (module.js:446:12)
at Function.Module._load (module.js:438:3)

Hey Lynne, the issue seems to be with validating BIDS specification, done via a javascript ouside OPPNI.
Do you by chance have the BIDS validator installed? If not could try installing this: https://www.npmjs.com/package/bids-validator

Hi,
Thanks for the quick response.  I have run other BIDS apps on the dataset,
so I thought that it would run this time.  I will try the validator again
and let you know if it doesn't work.
Thank-you,
Lynne
On 1 June 2017 at 10:28, Pradeep Reddy Raamana<EMAIL_ADDRESS>wrote:

Hey Lynne, the issue seems to be with validating BIDS specification, done
via a javascript ouside OPPNI.
Do you by chance have the BIDS validator installed? If not could try
installing this: https://www.npmjs.com/package/bids-validator
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/BIDS-Apps/oppni/issues/13#issuecomment-305563437, or mute
the thread
https://github.com/notifications/unsubscribe-auth/ACSMCwaw_nCix9f1AwDuFiAKdEEyPbl3ks5r_vSogaJpZM4NtRoq
.

Actually, @chrisfilo has a better idea to make the installation of BIDS validator, part of OPPNI itself. This  additional feature is being tested, and will update you in a bit.

Hello,
My dataset comes back being a valid dataset with both the online and
command-line versions of the validator (no errors and no warnings). I still
get the same error when trying to run oppni from the docker container.
Lynne
Summary:                           Available Tasks:
Available Modalities:
8713 Files, 972.57MB        semantic decision (ADDT)
T1w
1 - Subject
T2w
1 -
Session
bold
On 1 June 2017 at 10:28, Pradeep Reddy Raamana<EMAIL_ADDRESS>wrote:

Hey Lynne, the issue seems to be with validating BIDS specification, done
via a javascript ouside OPPNI.
Do you by chance have the BIDS validator installed? If not could try
installing this: https://www.npmjs.com/package/bids-validator
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/BIDS-Apps/oppni/issues/13#issuecomment-305563437, or mute
the thread
https://github.com/notifications/unsubscribe-auth/ACSMCwaw_nCix9f1AwDuFiAKdEEyPbl3ks5r_vSogaJpZM4NtRoq
.

Thank-you

On Jun 1, 2017, at 11:06, Pradeep Reddy Raamana<EMAIL_ADDRESS>wrote:
Actually, @chrisfilo has a better idea to make the installation of BIDS validator, part of OPPNI itself. This additional feature is being tested, and will update you in a bit.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or mute the thread.

Thank-you. I reinstalled OPPNI with the BIDS validator and it gets me
through that. However, the Matlab Runtime is saying that it isn't finding a
function. Would you like me to start a new issue?
Lynne
docker run --rm -v /Users/lwilliams/Documents/Studies/Test:/data:ro -v
/Users/lwilliams/Documents/Studies/Test/derivatives/oppni:/out oppni/oppni
/data /out participant --participant_label sub-01
This dataset appears to be BIDS compatible.
Summary:                   Available Tasks:
Available Modalities:
680 Files, 951.13MB        semantic decision (ADDT)
T1w
1 - Subject
T2w
1 - Session
bold
run_oppni.sh /opt/mcr/v80/ /data /out participant --participant sub-01
--run_name linebisection --task_design event
Warning: application is running on a locale different from the original
platform locale.
WARNING: no contrast is specified. By default, will run all task conditions
vs. baseline
WARNING: no analysis specified. Using default model selection
WARNING: the --ndrop field is empty. The default is setting ndrop=0 (no
non-equilibrium scans dropped)
WARNING: the --atlasfile field is empty. No spatial normalization is
possible
Undefined function or variable "tsvfile_list".
Error in bids_parsejobs (line 113)
Error in run_oppni_bids (line 75)
MATLAB:UndefinedFunction
Unexpected error: <type 'exceptions.Exception'>
Traceback (most recent call last):
File "/oppni/oppni.py", line 222, in
run_oppni()
File "/oppni/oppni.py", line 199, in run_oppni
run_part_one(args.bids_dir, args.participant_label, task_group,
args.output_dir, args.analysis_level )
File "/oppni/oppni.py", line 150, in run_part_one
run_cmd(cmd)
File "/oppni/oppni.py", line 67, in run_cmd
raise Exception("Non zero return code: %d"%process.returncode)
Exception: Non zero return code: 255
On 1 June 2017 at 11:06, Pradeep Reddy Raamana<EMAIL_ADDRESS>wrote:

Actually, @chrisfilo https://github.com/chrisfilo has a better idea to
make the installation of BIDS validator, part of OPPNI itself. This
additional feature is being tested, and will update you in a bit.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/BIDS-Apps/oppni/issues/13#issuecomment-305573645, or mute
the thread
https://github.com/notifications/unsubscribe-auth/ACSMC49uAbjfjoYcBvQpc-BUMlcMM-mlks5r_v3BgaJpZM4NtRoq
.

Hi Lynne, thank you for trying it. We are doing some more internal tests to track the source of this error, and will update this app shortly with the latest code. Please wait for me to push these updates, so you give it another try. Thanks.

Thank-you.
Lynne

On Jun 5, 2017, at 14:35, Pradeep Reddy Raamana<EMAIL_ADDRESS>wrote:
Hi Lynne, thank you for trying it. We are doing some more internal tests to track the source of this error, and will update this app shortly with the latest code. Please wait for me to push these updates, so you give it another try. Thanks.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or mute the thread.


Fix #105

This PR is aimed to fix the build errors as specified in https://github.com/osrf/rmf_demos/issues/105.

@aaronchongth are you fine with switching to ament_target_dependencies()?


[BUG]Unexpected behaviors after node is recovered from the disconnection

Describe the bug
When the node is back from the network disconnections within a short period(5~6mins), all pods on the node won't be evicted. Then some unexpected issues will be triggered.
Scenario 1 (reproduce/always):
The attached volume will become faulted, then get salvaged and reattached if the setting auto-salvage is enabled.
Scenario 2 (reproduce/often):
The volume engines on the recovered node won't be updated. This means the volumes on the node cannot be attached/detached/deleted successfully and get stuck there.
To Reproduce
Steps for Scenario 1:

Launch a Longhorn system.
Disable the setting auto-salvage.
Create and attach a volume.
Disconnect the node that volume attaches to for 100 seconds.
Wait for the node back.
All replicas become failed and the volume will become Faulted.

Steps for Scenario 2:

Launch a Longhorn system.
Create some volumes.
Attach one volume then disconnect the node that volume attaches to for 100 seconds.
Wait for the node back and the volume update.
Repeat step 2~4 until the volume gets stuck in Attached or Attaching state rather than becoming Healthy.
Attach more volumes to the recovered node. All volumes get stuck in Attaching state.
(If the result in step 5 is not shown after multiple retries (3 times for example), maybe you can remove the current Longhorn and redo the reproducing steps from the very beginning. I haven't found a way to always reproduce it)

Expected behavior
For Scenario 1:
The volume should be detached and reattached automatically and the replicas on the running nodes should be fine.
For Scenario 2:
The volumes on the recovered node should work fine.
Environment:

Longhorn version: v1.0.0
Kubernetes version: v1.17
Node OS type and version: Ubuntu 18.04

Additional context

The script used to disconnect a node:
network_down.sh.zip

When the node is disconnected, the related engine manager will wrongly mark all replicas for all running engine processes as ERR due to the Ping-timeout error. After the engine manager pod is back, longhorn managers will get those wrong engine processes status then lead to the volumes becoming Faulted.

Scenario 2 may be the cause of the unexpected validation failures mentioned in #1327, #1536, #1451

For Scenario 1, we can directly delete the related pod if the instance manager object becomes Unknown. Then longhorn manager pods won't accept wrong engine/replica info from the instance manager pod on the back node.

Scenario 2 is caused by the unexpected dead lock in the engine controller after the node is back:
https://github.com/longhorn/longhorn-manager/blob/3879d122665f08841979516bfeb5ada6bcdaec14/controller/engine_controller.go#L313
Finally, the engine objects controlled by the back nodes won't be updated any more. And the volumes will get stuck in Attaching or Detaching state.

@shuo-wu great analysis :)

Steps for Scenario 1:

1. Launch a Longhorn system.
2. Disable the setting `auto-salvage`.
3. Create and attach a volume.
4. Disconnect the node that volume attaches to for 100 seconds.
5. Wait for the node back.
6. All replicas become failed and the volume will become `Faulted`.

This is might be expected? What caused the issue?

Steps for Scenario 1:

1. Launch a Longhorn system.
2. Disable the setting `auto-salvage`.
3. Create and attach a volume.
4. Disconnect the node that volume attaches to for 100 seconds.
5. Wait for the node back.
6. All replicas become failed and the volume will become `Faulted`.

This is might be expected? What caused the issue?

This is the observation. The expectation for the result of step 6 is that the replicas on other nodes should still work fine without the auto salvage if there is no data writing during the disconnection.

Pre-merged Checklist

[x] Does the PR include the explanation for the fix or the feature?

[x] Is the backend code merged (Manager, Engine, Instance Manager, BackupStore etc)?
The PR is at
https://github.com/longhorn/longhorn-manager/pull/617
https://github.com/longhorn/longhorn-manager/pull/619

[x] Is the reproduce steps/test steps documented?

[x] Which areas/issues this PR might have potential impacts on?
Area: manager
Issues: attachment/detachment stuck

[x] If the fix introduces the code for backward compatibility Has a separate issue been filed with the label release/obsolete-compatibility?
The compatibility issue is filed at

[x] If labeled: area/ui Has the UI issue filed or ready to be merged?
The UI issue/PR is at

[x] if labeled: require/doc Has the necessary document PR submitted or merged?
The Doc issue/PR is at

[x] If labeled: require/automation-e2e Has the end-to-end test plan been merged? Have QAs agreed on the automation test case?
The automation skeleton PR is at
The automation test case PR is at

[x] if labeled: require/automation-engine Has the engine integration test been merged?
The engine automation PR is at

[ ] if labeled: require/manual-test-plan Has the manual test plan been documented?
The updated manual test plan is at

Verified on Master - 07-10-2020
Validation - Passed
Scenarios:

Disconnect the node for 100 secs while restore is in progress. - Restoring volume got connected to other healthy node and completed the restore.
Disconnect the node for 5 secs while restore is in progress. - Restoring volume got connected to other healthy node and completed the restore.
Reboot the node while restore is in progress. - Restoring volume got connected to other healthy node and completed the restore.
Poweroff the node while restore is in progress. - Restoring volume got connected to other healthy node and completed the restore.
Scenario 2 from https://github.com/longhorn/longhorn/issues/1545#issue-649882585 - Volume didn't stuck in attaching state.


Gnosis Relayer Issues

Issue to hold the current main issues with the Gnosis Relayer.
1) Gnosis Relayer doesn't seem to be using the provided gasPrice.
See below, sent TX with gasPrice of 1 but the relayer used 3. Even if i set the gasPrice to 22 or 100, 3 is still used by the relayer. It does appear like the relayer does take extra DAI when i use a higher gasPrice so it seems to be fulfilling half of that deal.

Gnosis Relayer doesn't seem to be using the correct ETH to DAI (cash) rate. This should be a mocked value for now similar to the current price of ETH. i.e, 1 DAI = 148.46 DAI.

See below, these TX's fees should be way higher than 0.0000000035 DAI - expecting ~0.1DAI

did 2nd ever get addressed?

We put it behind a env flag. "It" being the automatic token addition logic we hacked in.


Works on Mac but not on Windows

Proto file(s)
{
"proto": "xxxxx/user.proto",
"call": "user.User.GetVerificationCode",
"n": 20,
"c": 5,
"d": {
"mobile": "1"
},
"insecure": true,
"host": "<IP_ADDRESS>:50051"
}
Command line arguments / config
xxx/ghz  -config xxx/config.json
Expected Behavior
`Summary:
Count:	20
Total:	79.92 ms
Slowest:	48.07 ms
Fastest:	8.89 ms
Average:	19.70 ms
Requests/sec:	250.26
Response time histogram:
8.886 [1]	|∎∎∎
12.804 [12]	|∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎
16.722 [0]	|
20.641 [0]	|
24.559 [2]	|∎∎∎∎∎∎∎
28.477 [0]	|
32.396 [0]	|
36.314 [2]	|∎∎∎∎∎∎∎
40.232 [0]	|
44.150 [0]	|
48.069 [3]	|∎∎∎∎∎∎∎∎∎∎
Latency distribution:
10% in 9.06 ms
25% in 9.72 ms
50% in 12.05 ms
75% in 35.45 ms
90% in 48.01 ms
95% in 48.07 ms
0% in 0 ns
Status code distribution:
[OK]   20 responses`
Actual Behavior
`Summary:
Count:        20
Total:        19.09 s
Slowest:      0 ns
Fastest:      0 ns
Average:      0 ns
Requests/sec: 0.00
Response time histogram:
Latency distribution:
Status code distribution:
[Unavailable]   20 responses
Error distribution:
[5]    rpc error: code = Unavailable desc = transport is closing
[15]   rpc error: code = Unavailable desc = all SubConns are in TransientFailure, latest connection error: `
Hi, I get the right result on Mac, but I can't run it on Windows. (version v0.31.0)

Hello, hmm as far as I know it should work fine on Windows. Unfortunately it's not an OS I have access to or can easily test on. Will try to investigate some more in the future if I can.

Hi I just figure it out that It's my problem.
By the way, awesome tool~


Add "data" parameter to request

Currently the proxy returns a json response if the image is blocked and the raw bytes of the image if it is not. Allow the user to specify if they want a json response if the image is allowed as well. i.e.:
Request:
{
    data:"json"|"raw"...
}

Response (if json):
{...
    categories: [...],
    data: "data/png:....".
}

Response (if raw)
"data/png...."

Available as property response_type in fetch requests starting version 1.1.0 or higher.


pkg_resources.VersionConflict: (pandas 1.3.5 (~/miniconda3/envs/myenv/lib/python3.8/site-packages), Requirement.parse('pandas==1.3.3'))

Hi there,
I'm getting this pkg_resources.VersionConflict error.
$ liccheck -s liccheck.ini

~/miniconda3/envs/myenv/lib/python3.8/site-packages/setuptools/command/install.py:34: SetuptoolsDeprecationWarning: setup.py install is deprecated. Use build and pip and other standards-based tools.
  warnings.warn(
gathering licenses...
Traceback (most recent call last):
  File "~/miniconda3/envs/myenv/bin/liccheck", line 8, in <module>
    sys.exit(main())
  File "~/miniconda3/envs/myenv/lib/python3.8/site-packages/liccheck/command_line.py", line 336, in main
    sys.exit(run(args))
  File "~/miniconda3/envs/myenv/lib/python3.8/site-packages/liccheck/command_line.py", line 331, in run
    return process(args.requirement_txt_file, strategy, args.level, args.reporting_txt_file, args.no_deps)
  File "~/miniconda3/envs/myenv/lib/python3.8/site-packages/liccheck/command_line.py", line 241, in process
    pkg_info = get_packages_info(requirement_file, no_deps)
  File "~/miniconda3/envs/myenv/lib/python3.8/site-packages/liccheck/command_line.py", line 157, in get_packages_info
    packages = [transform(dist) for dist in resolve_func(requirements)]
  File "~/miniconda3/envs/myenv/lib/python3.8/site-packages/liccheck/command_line.py", line 157, in <listcomp>
    packages = [transform(dist) for dist in resolve_func(requirements)]
  File "~/miniconda3/envs/myenv/lib/python3.8/site-packages/liccheck/requirements.py", line 51, in resolve
    for dist in pkg_resources.working_set.resolve(requirements):
  File "~/miniconda3/envs/myenv/lib/python3.8/site-packages/pkg_resources/__init__.py", line 782, in resolve
    raise VersionConflict(dist, req).with_context(dependent_req)
pkg_resources.VersionConflict: (pandas 1.3.5 (~/miniconda3/envs/myenv/lib/python3.8/site-packages), Requirement.parse('pandas==1.3.3'))

I'll admit I don't fully understand the error. I'm also a bit confused as I didn't think liccheck would check for dependency version conflicts - is there a way to turn this off maybe?
Many thanks for any help, and for this great tool!

I found this was as a result of having a different version of pandas installed to what my requirements.txt specified.


NFT in WebGL ?

Hello! I am trying to use your example of NFT, inside a WEBGL Unity Game.
import { programs } from "@metaplex/js";
import { Connection, PublicKey } from<EMAIL_ADDRESS>
// NFT is a mint. just like SRM, USDC ..., the only different is that NFT's supply is 1
//
// if we want to get NFT's metadata, first we need to know what is the mint address.
// here I take a random DAPE as an example
// https://explorer.solana.com/address/9MwGzSyuQRqmBHqmYwE6wbP3vzRBj4WWiYxWns3rkR7A
//
// tokenmeta is a PDA a which derived by mint address
// the formula is ['metadata', metadata_program_id, mint_id]
// is it totally fine to forget it because sdk already wrapped it for us

const connection = new Connection("https://api.mainnet-beta.solana.com");

async function main() {
  let mintPubkey = new PublicKey("9MwGzSyuQRqmBHqmYwE6wbP3vzRBj4WWiYxWns3rkR7A");
  let tokenmetaPubkey = await programs.metadata.Metadata.getPDA(mintPubkey);

  const tokenmeta = await programs.metadata.Metadata.load(connection, tokenmetaPubkey);
  console.log(tokenmeta);
}

main().then(
  () => process.exit(),
  (err) => {
    console.error(err);
    process.exit(-1);
  }
);

Basically I would need to plug your code, inside the body of the index.html page, and in the header I should embed this:

Or something like that.
I can't embedd your
import { programs } from "@metaplex/js";
import { Connection, PublicKey } from<EMAIL_ADDRESS>
into the header of the HTML file.
How can Typescript libraries can be used  in an HTML page?
Thanks!

I found some lib maybe you can take a look https://github.com/allartprotocol/unity-solana-wallet
I have no idea how to use it with unity sorry.


Error handling in python client

Moved from https://issues.basho.com/show_bug.cgi?id=385, reported by Mehmet Ali Akmanalp
It looks like it's hard to handle or even notice errors with the python client. Here's a prime example:
import riak

c = riak.RiakClient("<IP_ADDRESS>", 8087, transport_class=riak.RiakPbcTransport)

b = c.bucket("")
o = b.new("")
o.set_data({"foo":1, "bar": 4})
o.store()

This runs silently. No exceptions are thrown. I don't know what it did. I can't check any of the return values because they mostly return "self". There seems to be a RiakError but that's a more generic "oh crap something went terribly wrong" whereas the sort of granularity people would want (IMHO) is "the database connection failed" (which throws a socket.error by the way) or "x does not exist".
Thanks,
~mali

any update ?
cc: @k-okada


Support Stellar testnet

Any movement on this one @orbitlens ? Hoping to integrate into a project and would be much better off if testnet were supported. Thanks for all your work!

:heavy_check_mark: Implemented
@dexterlohnes Sorry for the delay


Multi-network sync with K8S

KEP Multi-Network is attempting to define a multi-network solution for K8S, allowing some workloads to have multiple NICs in different networks.
From off-line discussions, they may implement a controller to create EndpointSlices representing the additional NICs and
make changes to Service to deal with this.
We need to at least:

Ignore or attach to the Istio model of network the endpoints belonging to the different NICs
Configure some mapping between their concept of network and our network names

Ideally we would also:

Change 'network' to a list - so Istiod can return endpoints in all networks that a Pod/VM is attached to
Adopt whatever API they define, to reduce confusion
Work with them to include our main use case - which is support for gateways between networks.
Make sure istio Gateways are well integrated with this and can provide connectivity ( without having to run
a gateway on each network and expose it with a public address, as we do today - we could have gateways
on pods with 2 NICs, not exposed to the internet )
And of course - prioritize the switch of the multi-network gateways to HBone and cover the remaining gaps.

Describe the feature request
Describe alternatives you've considered
Affected product area (please put an X in all that apply)
[ ] Ambient
[ ] Docs
[ ] Installation
[ ] Networking
[ ] Performance and Scalability
[ ] Extensions and Telemetry
[ ] Security
[ ] Test and Release
[ ] User Experience
[ ] Developer Infrastructure
Affected features (please put an X in all that apply)
[ ] Multi Cluster
[ ] Virtual Machine
[ ] Multi Control Plane
Additional context

Also - this defines a Network CRD, which includes some DNS elements and the 'gateway IP of the network' and few other things. There are some overlaps with our Network config - not sure if we can completely represent it using the new CRD, but maybe we can work with them to add what's missing.


rework-edit-comment

I mean somthing like that about edit form for comment

there are some conflicts


Chat commands for private messages, replying and unprivate.

Hey,
I noticed while playing that I normally don't move my hands from the keyboard. If someone sends you a private message the only method to privately write them back is to move one's hand to the mouse and click their username. This is especially tedious while conversing with multiple users that way.
The commands "/private <username>", "/reply" and "/unprivate" allow you to initiate and end private messages with other people in the room.
I hope you consider merging this :)

Merged ad 816dcb00914c227a13b40105d209d6b81003064f. Thank you very much!


About Training Settings

Can you provide init training and finetune training settings?
model config, data config, not just table1 in the paper.
e.g. whether use struct model? whether enable template? whether use extra msa?
thx.

Thank you for your interest. FastFold currently provides a high-performance distributed Evoformer implementation, which can be used with OpenFold if a complete training process is required. You can refer to OpenFold for specific training configurations.

@Shenggan  thx for your reply.
I want to know what configs to run in init training and finetune so that the paper can get init training 2.487s/step, 4.153s/step, and finally training alphafold2 in 67 hours.

Here is our config file, for your reference.
config.py

@Shenggan thx！！！

For the first to fifth points, we use the same settings as AlphaFold/OpenFold, template, extra MSA stack, structure model, and recycling are all turned on, and the number of recycling is uniformly distributed from 1 to 4 times. For the sixth point, we can only turn off recomputing in the case of initial training with dap=4.


Rkt monitor results of start/stop time with different flavors

Environment
rkt - from master
Linux 4.6.3-coreos x86_64
--
NAME=CoreOS
ID=coreos
VERSION=1097.0.0
VERSION_ID=1097.0.0
BUILD_ID=2016-07-02-0145
PRETTY_NAME="CoreOS 1097.0.0 (MoreOS)"
ANSI_COLOR="1;32"
HOME_URL="https://coreos.com/"
BUG_REPORT_URL="https://github.com/coreos/bugs/issues"
--
systemd 229
+PAM +AUDIT +SELINUX +IMA -APPARMOR +SMACK -SYSVINIT +UTMP +LIBCRYPTSETUP +GCRYPT -GNUTLS -ACL +XZ -LZ4 +SECCOMP +BLKID -ELFUTILS +KMOD -IDN

What did you do?
I run 200 iterations for 60s for all stressers and all flavors i.e.
 ./bin/rkt-monitor ./bin/log-stresser.aci -s ./bin/stage1-coreos.aci -d 60s -r 200 -w ./results -f

Results

cc @alban

As I mentioned in the community sync, these results seem very strange, 1ms for starting a rkt container is way too fast.
So I checked the code that gathers the stats and I believe it's wrong. It starts the timer before starting rkt but stops it after calling exec.Start(). According to the exec.Start documentation:

"Start starts the specified command but does not wait for it to complete."

So this doesn't really make sure the pod is started, it will return whenever the new process (rkt) is created (fork+exec).
The stop time is also wrong because it stops the timer once killAllChildren() returns, and that function just sends SIGKILL to all the children, which is asynchronous.

@jjlakis @mzylowski @dkrzyszczyk looks like we need additional fixes to rkt-monitor

I will prepare PR with some improvements of rkt-monitor in next week.
For now this issue can be assign to me.

Tracked via #3093.

We have new charts after changes made in rkt-monitor:

Start time looks now OK, and coreos flavor is better then kvm solutions.
Stop time for qemu and lkvm is stable, but we still, can see problem with coreos.

I made additional measure for core OS stop time.
Rkt monitor started with -r 1000 and -d 30s (1000 iteration and 30s - container lifetime).
The problematic trend is also visible:

I think it is good moment to assign to this issue somebody who is more advanced in coreos flavor development.

@mzylowski sure! Can you please just move these findings to its own ticket, attaching:

your host environment setup
kernel, go, and rkt version
command invocations and images being run
data-points and graphs

Sorry if any of this is already obvious from the tests, but I'm not used to rkt-monitor so I'd prefer to have your recipe explicitly written down to reproduce as-is in my environment. From your graph, there seems to be some linear growth, which may be rooted into resource-walking and some bits not being properly garbage-collected.


Section 508 502.3.1: (ExpenseItIntro/menu item '' back forth menu) The Name property of a focusable element must not be null.

The following accessibility issue needs investigation.
App: ExpenseIt9
Element path: menu item ''
Issue Details: The Name property of a focusable element must not be null. Section 508 502.3.1
How To Fix: Provide a UI Automation Name property that concisely identifies the element.
This accessibility issue was found using Accessibility Insights for Windows, a tool that helps debug and find accessibility issues earlier. Get more information and download this tool at https://aka.ms/AccessibilityInsights.

The menu and menu item are on the navigation bar. They are not part of content. The behavior of screen reader is as expected - this element should not be read. So we will not be fixing this bug.


Custom fields in resolve object of custom authenticator not set in session

I'm working on a new project now and in my previous project using ESA ~0.3 (I know i know it's old haha) I was able to "inject" additional values into the session as part of my custom authenticator by adding them to the object returned from resolve.  The code looked like this:
  authenticate: function(options) {
    var self = this;
    return new Ember.RSVP.Promise(function(resolve, reject) {
      var data = { identification: options.identification, password: options.password };
      self.makeAuthenticationRequest(data).then(function(response) {
        Ember.run(function() {
          resolve({
            isAuthenticated: response.isAuthenticated,
            isAdmin: response.user.is_admin,
            id: response.user.id,
            sessionID: response.sessionID
          });
        });
      }, function(error) {
        var response = JSON.parse(error.jqXHR.responseText);
        Ember.run(function() {
          reject(response.userMessage);
        });
      });
    });
  }

My new project does the exact same thing but I'm now using ESA 0.8-beta2 with ember-cli and the session is not modified with the additional values (tested by simply printing out the session object in the init method of the application controller).  The isAuthenticated value is there and the authentication works great, just no custom fields in the session.
Based on the documentation and examples it looks like adding values to the resolved object in the custom authenticator should work.  Is this still the correct way to add values to the session object at authentication time?
Thank you!

Anything that the authenticator's authenticate method resovles with is still accessible via the session but has been moved to the secure key, so instead of this.get(session.value) you would now do this.get(session.secure.value) instead.
Also you shouldn't try to set the isAuthenticated property from the object the authenticator is resolving with. The session's isAuthenticated property is set to true automatically when the promise returned by the authenticator's authenticate method resolves, and to false if it rejects.

@marcoow thank you for the response.  Greatly appreciate it!


How to create a vertex?

hello,
Can you please give an example as to how to create a vertex?
Tried this but its not working
let query = Query.g.addV(table).property('pk','pk');  let response = db.runQuery < GremlinResponse < GremlinElement >> (query);

Hi @shashankkr!  Sure, here's a simple example (written in typescript).
// This config is reusable and doesn't need to re-created with each DB connection
let gremlinConfig: DbConfig = {
  endpoint: 'wss://my-cosmos-1.gremlin.cosmos.azure.com:443',
  primaryKey: 'superSuperSecretKey==',
  database: 'my-db-1',
  collection: 'myCollection',
}
let db = new DbConnection(gremlinConfig)

try {
  await db.open()

  let addVertex = Query.g
    .addV('myLabel')
    .property('pk', 'pk')
    .property({
      foo: 'foo',
      bar: 'bar',
      baz: 'baz',
    })

  let response: GremlinResponse<GremlinNode> = await db.runQuery(addVertex)
} catch (e) {
  console.error('Failed to connect to DB')
} finally {
  await db.close()
}


List virtual machines with details=min,nics

This should fix https://github.com/apache/cloudstack/issues/8975

did a quick testing, it looks ok
the API command is
 2024-04-26T08:20:25,740 DEBUG [c.c.a.ApiServlet] (qtp1375394559-21:[ctx-8dc8b523]) (logid:10e8a469) ===START===  <IP_ADDRESS> -- GET  apiKey=FbdMHXgGot3JuiEmoldLwOo3ZWh4fGjSDTsLz5qXDZn05Q7CSh4ZXSFVJfNYUwWct5YBwHlLZKFVLR-NFKnLkw&command=listVirtualMachines&details=min%2Cnics&listall=true&response=json&signature=K3US18HTxZvG2pJ29nnP8N3PYRg%3D
the parameter  (details=min%2Cnics) is set as expected


Improved builder pattern for ExecuteKernel's set_arg, set_arg_local_buffer, set_global_work_offsets, ...

What has been done?
I have, as stated in the title, made use of better Rust syntax for the builder pattern methods of ExecuteKernel to give them more flexibility if necessary (needed in my case).
Usage example
As an example take the following code:
let mut execute_kernel = ExecuteKernek::new(kernel) // values gets dropped while being used
  .set_arg(...); // temporary value is freed after this statement

if condition {
    execute_kernel = execute_kernel.set_arg(...); // borrow later used here
} else {
   execute_kernel = execute_kernel.set_arg(...); // borrow later used here
}

What happens in this example is that it will fail as stated by my comments. To get over this, instead of borrowing ExecuteKernel, actually taking ownership of it, since it can be done in implementation methods. Once this is done that exampĺe can actually work instead of breaking because with taking ownership there will be no borrows.
How was it done?
I did this by basically just taking the classic Rust syntax & from each of the methods that made up a builder pattern for the ExecuteKernel struct, and then removing these borrows from the return types of these methods. This results in owned returns and owned methods.

Ah, sorry for not basing my pull request in the main branch, didn't read the Contributing guide, if it is really necessary I can recreate the pull request and fork on develop with the same changes.

Also, looking over, there is a way to implement my use case without the owning of the parameters but it is not very nice nor elegant. A demonstration of that would be the following:
let mut execute_kernel = ExecuteKernek::new(kernel);
let mut execute_kernel_ref = &mut execute_kernel; // or if there is a need to set_arg before,
                                                                                // it can be called instead of manually borrowing

if condition {
    execute_kernel_ref = execute_kernel.set_arg(...);
} else {
    execute_kernel_ref = execute_kernel.set_arg(...);
}

and the set_arg can be repeated as many times as needed because of that. But still using the owning of the self instead of borrowing it is more elegant.

Thank you for submitting this PR Gabriel.
According to the rust style guidelines, the current builder pattern: Non-consuming builders, is preferred to the Consuming builders version.
I appreciate that your new consuming builder  version solves the example you have provided, but there are other ways of implementing your example, without changing the library.
Please can you explain why I should change the ExecuteKernel builder to your consuming builder version from the rust style guidelines preferred version?

Thank you for submitting this PR Gabriel.
According to the rust style guidelines, the current builder pattern: Non-consuming builders, is preferred to the Consuming builders version.
I appreciate that your new consuming builder version solves the example you have provided, but there are other ways of implementing your example, without changing the library.
Please can you explain why I should change the ExecuteKernel builder to your consuming builder version from the rust style guidelines preferred version?

I understand this way works now, even with my example after some changes, but i think using a consuming builder does give more flexibility in how you can write the code out in a situation like I showed. I think it is better to have more flebility than to not have it.
Using a non-consuming builder forces the code in a situation like this into being harder to read while with a consuming builder it does make it easier to read while having some of the same constraints that the non-consuming builder has.

Sorry Gabriel, but you have not provided me with a compelling reason to change ExecuteKernel's builder pattern.
If and when the rust style guidelines change, I'll consider changing it, not before.


Fetching public github repo fails

To reproduce:
>>> import agentos
>>> ilya_repo = agentos.Repo.from_github("ikostrikov", "pytorch-a2c-ppo-acktr-gail")
>>> ilya_repo.get_local_repo_dir("master")

...throws the following error:
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Users/andyk/Development/agentos/agentos/repo.py", line 299, in get_local_repo_dir
    local_repo_path = self._clone_repo(version)
  File "/Users/andyk/Development/agentos/agentos/repo.py", line 315, in _clone_repo
    porcelain.clone(
  File "/usr/local/Caskroom/miniforge/base/envs/agentos_dev/lib/python3.8/site-packages/dulwich/porcelain.py", line 460, in clone
    fetch_result = fetch(
  File "/usr/local/Caskroom/miniforge/base/envs/agentos_dev/lib/python3.8/site-packages/dulwich/porcelain.py", line 1583, in fetch
    fetch_result = client.fetch(path, r, progress=errstream.write, depth=depth)
  File "/usr/local/Caskroom/miniforge/base/envs/agentos_dev/lib/python3.8/site-packages/dulwich/client.py", line 532, in fetch
    result = self.fetch_pack(
  File "/usr/local/Caskroom/miniforge/base/envs/agentos_dev/lib/python3.8/site-packages/dulwich/client.py", line 1978, in fetch_pack
    refs, server_capabilities, url = self._discover_references(
  File "/usr/local/Caskroom/miniforge/base/envs/agentos_dev/lib/python3.8/site-packages/dulwich/client.py", line 1839, in _discover_references
    resp, read = self._http_request(url, headers, allow_compression=True)
  File "/usr/local/Caskroom/miniforge/base/envs/agentos_dev/lib/python3.8/site-packages/dulwich/client.py", line 2118, in _http_request
    raise HTTPUnauthorized(resp.getheader("WWW-Authenticate"), url)
dulwich.client.HTTPUnauthorized: No valid credentials provided

@nickjalbert is it obvious to you what I'm doing wrong here?

I found the bug causing this.
I believe our use of lstrip in parse_github_web_ui_url() inside agentos/utils.py is incorrect:
https://github.com/agentos-project/agentos/blob/485686904846e6686820e64a442a06db2ec25aa9/agentos/utils.py#L47
Per https://docs.python.org/3/library/stdtypes.html#str.lstrip "the chars argument [to str.lstrip(chars)] is not a prefix; rather, all combinations of its values are stripped."
I tested this with:
>>> "abc".lstrip("ba")
'c'
>>> "abcabc".lstrip("abc")
''

So the fix will be to use str.replace(old, new, count) instead w/ count=1.

Good find!  Thanks for the fix.


Update request

Please, update Instacode, that plugin to work correctly in 2016. Now name of service — instaco.de. Thanks.

It would seem that the new version of Instacode doesn't support publishing via the same method as I used before. After a bit of looking around, no other editor plugin is updated either...
Waiting for now. Until I can find a method to publish the code again.

I wrote a letter to the author Instaco.de, he corrected errorы. Now InstacodeSublime works for me.
Thanks.


Where can I find the latest jar release?

I can't find the release folder in the master branch.
I follow the CDM and Azure Data Services Integration Tutorial. Although it provides spark-cdm-assembly-0.3.jar in its own repository, it seems didn't work for some data type.
I wonder where can I find the latest jar file. Thanks!

@mmn599 - The version of the file spark-cdm-assembly-0.3.jar in release doesn't seem to work in the CDM and Azure Data Services Integration Tutorial example (it comes up with the UTf8 error), the latest version I found in one of the branches was Sep26 which seems to have this issue resolved but now comes up with "Unparseable date: "1/1/2013&#34" error (which seems to be a separate issue reported)...is there a version that has both issues fixed please?

I found a release in another repository - https://github.com/Azure/spark-cdm-connector/blob/master/spark-cdm-connector-assembly-0.4.jar, haven't test it though.

I am also wondering where the release folder is in the master branch, given that this is referenced in the README

@phetzel1 we are working on a replacement for this library, which is considered deprecated.  We hope to release the replacement in a few weeks and will post here with details of the new library.  The new library will support CDM 1.0, details of which can be found here:  https://docs.microsoft.com/en-us/common-data-model/1.0om/api-reference/api-reference

That is great news @billgib . One of the difficult parts of Azure's data stack is being able to query ADLS Gen2 storage in a serverless fashion. I am hoping that this library will help limit the number of steps it takes to reliably use datasets in ADLS Gen2 within Power BI Service.

Power BI allows direct connection to CDM folders in ADLS.  This can be done with Power BI dataflows and via a Power BI/CDM connector.  There are some point in time issues regarding the versions of CDM that are supported by the various tools and services that will hopefully resolve soon.  We are also enabling SQL query directly over ADLS data from Azure Synapse Analytics - this will also be extended to support CDM data.  In addition, mapping data flows in ADF and the Data Integration tools in Synapse are being enabled to read/write and transform CDM data.  Expect the role of CDM in Azure data services to increase over time.

Hi @billgib I've been following the thread. Did you say there is an updated jar file that we can load? As of right now, I am unable to display any dataframes for any "date" types.
display(df) causes error.
"Date" were loaded as "Datetimes" from powerbi CDM and interpreted as "date" during read.

@datalord123 Hold tight, will be available soon

@billgib thank you for responding!!
Do you expect weeks or days? I'm just asking so i know whether to spin down some azure resources or not.

Should be days.  Team is squashing some last bugs, but no guarantees :-(

@billgib
Do you have an update regarding such? How can we receive a notification when it's available?
Thank you!
Respectfully,
Darryll Petrancuri

We're still fixing some last bugs.  I will post an update here with a link to the content when it's available.

Bueller? Bueller?

I had to look that up...

Please see this repo for the new Spark CDM Connector, with documentation and samples.  Please leave all comments on the new library in the new repo and consider this repo and the samples provided here as obsolete.
https://github.com/Azure/spark-cdm-connector

An initial limited preview release of the new Spark CDM Connector is available here:  https://github.com/Azure/spark-cdm-connector.  Please treat the content of this (spark-cdm) repo as obsolete.
Thanks for your patience!


[Hi-lvl Python SDK] Handling file buffers on exceptions

Back again with another transaction-related question. We currently have a finalizer logic in place, which allows the transaction to discard a buffer if it does not succeed (in reality, this means if an exception happened, i.e. if sys.exc_info is populated).
However, I do not see a way to discard a WritableObject's buffer, outside of accessing the private spooled tempfile. Could you provide an API like AbstractBufferedFile.discard() in fsspec? https://github.com/fsspec/filesystem_spec/blob/master/fsspec/spec.py#L1701
Also currently, __exit__ing any IOBase object calls close(), which at least in the writeable object case results in an upload attempt regardless. If there's an exception (see the above point), a discard should in my opinion be preferred to the current behavior.
BTW - the current ObjectReader's close() also fails a cleanup test in our suite, meaning that on a failed read of a StoredObject, a local file descriptor is created that is never cleaned up. (Source for the failing test)

Thanks again @nicholasjng,
Looking into this.

@nicholasjng Opened https://github.com/treeverse/lakeFS/pull/7200 to address the issues here.
You can use the associated branch to see if your tests pass.
Some questions:

However, I do not see a way to discard a WritableObject's buffer, outside of accessing the private spooled tempfile. Could you provide an API like AbstractBufferedFile.discard() in fsspec? https://github.com/fsspec/filesystem_spec/blob/master/fsspec/spec.py#L1701

As you mentioned - we use a SpooledTemporaryFile object to maintain WritableObject's buffer. The SpooledTemporaryFile is being discarded once the object is closed. If I understand correctly, you want to be able to discard of the buffer in situations where you don't want to call writer.close()? If so what do you feel the expected behavior should be after discard?

Should the writer be closed after discard? Should you be able to write after discard?

BTW - the current ObjectReader's close() also fails a cleanup test in our suite, meaning that on a failed read of a StoredObject, a local file descriptor is created that is never cleaned up. (Source for the failing test)

Not sure why this is happening. ObjectReader doesn't open a file, it hold a BytesIO object as a read buffer and we are not writing anything to file.

Hi @nicholasjng,
Following up to make sure the new SDK release resolved all your issues and that you are on track

Thanks @N-o-Z! New stuff works well, I finished migrating the package this week. I ran into a few things where I would have expected different behavior, I can post them as separate issues if you're interested.

@nicholasjng

That's great news! 🎉
We're always happy to get more feedback. I would suggest referencing all of the concerns / questions / suggestions in a single issue and we can discuss them there.

Thanks again!


Add mechanism to provide explicit class-based item slugs

This allows users to provide a slug value for their class-based item definitions, allowing class names to remain in PascalCase while also having a copy of the slug on the class that can be found by text searches.
For example:
BoxSizesEnum = Enum('BoxSizesEnum')

class LargeBox(Item):
    __enum__ = BoxSizesEnum
    value = 10
    slug = 'large_box'
    display = "Large box"

>>> print(BoxSizesEnum.LARGE_BOX)
<enum.Item: 10 large_box 'Large box'>

Oh neat! Thanks!

Released in 1.4.0!


model.set_option does not work for I/O options

Hello,
while using the crate, we can send options to the solver via model.set_options('option_string',value), we can control some of the options from here however when we need to write the solution file and/or the model file, nothing happens.
Other than that we do think that the crate is very easy to use, and appreciate all the work that has been put into it :).
Best regards
Alaa

Those options do not concern highs when used as a library.
If you have a model file and want the solution written to a solution file, then you don't need a library and can use the highs binary directly.

hi,
thanks for your answer, maybe I did not explain the issue correctly,
We do not have a model file we are creating the problem and solving the model using the highs library, and we do collect the results in the code, however sometimes for comparison purposes  the model file in .lp format is helpful due to its portability to test on other machines/solvers.
For the solution file, we do not need it per se, but when i was trying to pass the option, it did not work.
Best
Alaa


[FEATURE] Support file mode filter - to convert octal to decimal

It seems that json/yaml charts don't support octal representation of numbers [1]. This makes it quite cumbersome to mange unix file permissions for files.
Helm can help simplify things if ti exposes a filter to convert octal form to decimal form.
{{ 0777 | toDecimal }} -> 511

https://kubernetes.io/docs/concepts/configuration/secret/#using-secrets-as-files-from-a-pod

I would suggest contributing that to Sprig. github.com/Masterminds/sprig


CLI: Retry on connection reset

In our integration test run we are seeing some connection-reset errors which causes the CLI operation to fail.
To fix this:

Set TCP-KeepAlive to keep Azure load balancer connections alive longer than the default timeout (4 minutes).
Treat ConnectionResetError as retryable.

Codecov Report

Merging #2468 (26f00bb) into main (0c4cd54) will decrease coverage by 4.92%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##             main    #2468      +/-   ##
==========================================
- Coverage   29.88%   24.95%   -4.93%
==========================================
  Files         288      118     -170
  Lines       35180    12070   -23110
==========================================
- Hits        10513     3012    -7501
+ Misses      24667     9058   -15609

Impacted Files
Coverage Δ

...nt/onefuzz-task/src/tasks/fuzz/libfuzzer/dotnet.rs

src/agent/win-util/src/wer.rs

src/agent/debugger/src/dbghelp.rs

...rc/agent/onefuzz-task/src/local/dotnet_coverage.rs

...rc/agent/input-tester/src/test_result/fast_fail.rs

src/agent/dynamic-library/src/lib.rs

src/agent/coverage/src/lib.rs

src/agent/debugger/src/debug_event.rs

...nt/onefuzz-task/src/tasks/fuzz/libfuzzer/common.rs

src/agent/onefuzz/src/asan.rs

... and 160 more

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

Doing a check-pr run first to validate.

Didn't cause any problems, at least.


using conda and pip to instal tensorflow as default

Is your feature request related to a problem? Please describe.
using conda+pip to install tensorflow, and also fix README.md
Describe the solution you'd like
N/A.
Describe alternatives you've considered
Additional context
arcface loss unit test not pass using conda to install tensorflow, beacuse number precision which caused by Tensorflow Compile Flags. conda may re-compile tensorflow fro source by itself and not support some SIMD for linux x86.

مرحبا  ان نبحت عل برنامج  اخترق  ايميل


fix(driving_environment_analyzer): fixed depend pkg name about behavior_path_planner_common

Description
Fixes for adding the autoware_ prefix

https://github.com/autowarefoundation/autoware.universe/pull/7288

Tests performed
before
~/autoware$ rosdep install -y --from-paths src --ignore-src --rosdistro humble
ERROR: the following packages/stacks could not have their rosdep keys resolved
to system dependencies:
driving_environment_analyzer: Cannot locate rosdep definition for [behavior_path_planner_common]

after
~/autoware$ rosdep install -y --from-paths src --ignore-src --rosdistro humble
#All required rosdeps installed successfully

Notes for reviewers

Interface changes

Effects on system behavior

Pre-review checklist for the PR author
The PR author must check the checkboxes below when creating the PR.

[x] I've confirmed the contribution guidelines.
[x] The PR follows the pull request guidelines.

In-review checklist for the PR reviewers
The PR reviewers must check the checkboxes below before approval.

[x] The PR follows the pull request guidelines.
[x] The PR has been properly tested.
[x] The PR has been reviewed by the code owners.

Post-review checklist for the PR author
The PR author must check the checkboxes below before merging.

[ ] There are no open discussions or they are tracked via tickets.
[ ] The PR is ready for merge.

After all checkboxes are checked, anyone who has write access can merge the PR.

@SakodaShintaro By the way, I think it may be better to add rosbag2_cpp depend in this PR.
I failed to build below error.
In file included from /home/yabuta/workspace/autoware_tools/driving_environment_analyzer/include/driving_environment_analyzer/driving_environment_analyzer_rviz_plugin.hpp:18,
                 from /home/yabuta/workspace/autoware_tools/driving_environment_analyzer/src/driving_environment_analyzer_rviz_plugin.cpp:15:
/home/yabuta/workspace/autoware_tools/driving_environment_analyzer/include/driving_environment_analyzer/analyzer_core.hpp:19:10: fatal error: rosbag2_cpp/reader.hpp: No such file or directory
   19 | #include "rosbag2_cpp/reader.hpp"
      |          ^~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.

@SakodaShintaro I think it may be better to add rosbag2_cpp depend in this PR. I failed to build below error.
In file included from /home/yabuta/workspace/autoware_tools/driving_environment_analyzer/include/driving_environment_analyzer/driving_environment_analyzer_rviz_plugin.hpp:18,
                 from /home/yabuta/workspace/autoware_tools/driving_environment_analyzer/src/driving_environment_analyzer_rviz_plugin.cpp:15:
/home/yabuta/workspace/autoware_tools/driving_environment_analyzer/include/driving_environment_analyzer/analyzer_core.hpp:19:10: fatal error: rosbag2_cpp/reader.hpp: No such file or directory
   19 | #include "rosbag2_cpp/reader.hpp"
      |          ^~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.

Should I submit it under a different PR?

@yabuta I'll add deps right away.


shape input names order mismatch after partitioning

Description
The input names of a symbol are produced by a DFS traversal of the symbol's graph from the outputs back up to the inputs. During graph partitioning, some nodes are added to subgraphs, thus potentially changing the order of the DFS traversal. After graph partitioning, shape propagation occurs, and the inferred shapes for the inputs are returned in the order that they appear in a DFS traversal.
However, when graph partitioning happens and the DFS traversal order changes, the inferred shapes may be returned in a different order than expected. Since the original symbol is not modified, the caller is expecting the shapes in the same order as the original symbol.
Since DFS order is not guaranteed to be identical before and after partitioning, we need to map the names-to-shapes and ensure that the shapes are returned in the original order.
Environment info (Required)
The error occurs on every release, and is reproducible on the master branch. I have built from source using the master branch and reproduced the problem.
Error Message:
Traceback (most recent call last):
  File "run.py", line 139, in <module>
    mod.set_params(arg_params, aux_params, allow_missing=True)
  File "/home/ubuntu/mxnet/python/mxnet/module/module.py", line 358, in set_params
    self._exec_group.set_params(arg_params, aux_params, allow_extra=allow_extra)
  File "/home/ubuntu/mxnet/python/mxnet/module/executor_group.py", line 413, in set_params
    exec_.copy_params_from(arg_params, aux_params, allow_extra_params=allow_extra)
  File "/home/ubuntu/mxnet/python/mxnet/executor.py", line 361, in copy_params_from
    array.astype(dst.dtype).copyto(dst)
  File "/home/ubuntu/mxnet/python/mxnet/ndarray/ndarray.py", line 2089, in copyto
    return _internal._copyto(self, out=other)
  File "<string>", line 25, in _copyto
  File "/home/ubuntu/mxnet/python/mxnet/_ctypes/ndarray.py", line 92, in _imperative_invoke
    ctypes.byref(out_stypes)))
  File "/home/ubuntu/mxnet/python/mxnet/base.py", line 254, in check_call
    raise MXNetError(py_str(_LIB.MXGetLastError()))
mxnet.base.MXNetError: [22:29:46] src/operator/random/./../elemwise_op_common.h:135: Check failed: assign(&dattr, vec.at(i)): Incompatible attr in node  at 0-th output: expected [1,1,128,128,60], got [15,1024,1,1]
Stack trace:
  [bt] (0) /home/ubuntu/mxnet/python/mxnet/../../lib/libmxnet.so(dmlc::LogMessageFatal::~LogMessageFatal()+0x32) [0x7fe5684779a2]
  [bt] (1) /home/ubuntu/mxnet/python/mxnet/../../lib/libmxnet.so(bool mxnet::op::ElemwiseAttr<mxnet::TShape, &mxnet::op::shape_is_none, &mxnet::op::shape_assign, true, &mxnet::op::shape_string[abi:cxx11], -1l, -1l>(nnvm::NodeAttrs const&, std::vector<mxnet::TShape, std::allocator<mxnet::TShape> >*, std::vector<mxnet::TShape, std::allocator<mxnet::TShape> >*, mxnet::TShape const&)::{lambda(std::vector<mxnet::TShape, std::allocator<mxnet::TShape> > const&, unsigned long, char const*)#1}::operator()(std::vector<mxnet::TShape, std::allocator<mxnet::TShape> > const&, unsigned long, char const*) const+0x2202) [0x7fe56868d322]
  [bt] (2) /home/ubuntu/mxnet/python/mxnet/../../lib/libmxnet.so(bool mxnet::op::ElemwiseShape<1l, 1l>(nnvm::NodeAttrs const&, std::vector<mxnet::TShape, std::allocator<mxnet::TShape> >*, std::vector<mxnet::TShape, std::allocator<mxnet::TShape> >*)+0x410) [0x7fe568692db0]
  [bt] (3) /home/ubuntu/mxnet/python/mxnet/../../lib/libmxnet.so(mxnet::imperative::SetShapeType(mxnet::Context const&, nnvm::NodeAttrs const&, std::vector<mxnet::NDArray*, std::allocator<mxnet::NDArray*> > const&, std::vector<mxnet::NDArray*, std::allocator<mxnet::NDArray*> > const&, mxnet::DispatchMode*)+0xe8a) [0x7fe56a74d87a]
  [bt] (4) /home/ubuntu/mxnet/python/mxnet/../../lib/libmxnet.so(mxnet::Imperative::Invoke(mxnet::Context const&, nnvm::NodeAttrs const&, std::vector<mxnet::NDArray*, std::allocator<mxnet::NDArray*> > const&, std::vector<mxnet::NDArray*, std::allocator<mxnet::NDArray*> > const&)+0x368) [0x7fe56a753a28]
  [bt] (5) /home/ubuntu/mxnet/python/mxnet/../../lib/libmxnet.so(MXImperativeInvokeImpl(void*, int, void**, int*, void***, int, char const**, char const**)+0xb2a) [0x7fe56ae4fd6a]
  [bt] (6) /home/ubuntu/mxnet/python/mxnet/../../lib/libmxnet.so(MXImperativeInvokeEx+0x534) [0x7fe56ae518f4]
  [bt] (7) /usr/lib/x86_64-linux-gnu/libffi.so.6(ffi_call_unix64+0x4c) [0x7fe578ef5e40]
  [bt] (8) /usr/lib/x86_64-linux-gnu/libffi.so.6(ffi_call+0x2eb) [0x7fe578ef58ab]

Minimum reproducible example
This problem occurs on a few models, the one that I can share is the faster-rcnn model from the GluonCV package. Here is how to get the model:
#get model
import gluoncv as cv
model = cv.model_zoo.faster_rcnn_resnet50_v1b_coco(pretrained=True)
im_fname = cv.utils.download('https://github.com/dmlc/web-data/blob/master/gluoncv/detection/biking.jpg?raw=true', path='biking.jpg')

x, orig_img = cv.data.transforms.presets.rcnn.load_test(im_fname)
model.hybridize()
box_ids, scores, bboxes = model(x)
model.export('faster-rcnn')

Once the model is exported, here is the code to reproduce the error using CPU context:
import mxnet as mx
import numpy as np
from collections import namedtuple
Batch = namedtuple('Batch', ['data'])
import os
from mxnet.base import _LIB, check_call, c_str, mx_uint, c_str_array

op_names = [
    "_add",
            "_contrib_MultiBoxDetection",
            "_contrib_MultiBoxPrior",
            "_contrib_MultiBoxTarget",
            "_copy",
            "_div_scalar",
            "_DivScalar",
            "_minus",
            "_Minus",
            "_minus_scalar",
            "_MinusScalar",
            "_mul",
            "_Mul",
            "_mul_scalar",
            "_MulScalar",
            "_plus",
            "_Plus",
            "_plus_scalar",
            "_PlusScalar",
            "_rdiv_scalar",
            "_RDivScalar",
            "_rminus_scalar",
            "_RMinusScalar",
            "_rnn_param_concat",
            "_sub",
            "abs",
            "Activation",
            "arccos",
            "arccosh",
            "arcsin",
            "arcsinh",
            "arctan",
            "arctanh",
            "argmax",
            "argmin",
            "BatchNorm",
            "BatchNorm_v1",
            "BlockGrad",
            "broadcast_add",
            "broadcast_equal",
            "broadcast_greater",
            "broadcast_greater_equal",
            "broadcast_lesser",
            "broadcast_lesser_equal",
            "broadcast_mul",
            "broadcast_not_equal",
            "broadcast_plus",
            "cast",
            "Cast",
            "clip",
            "concat",
            "Concat",
            "Convolution",
            "Convolution_v1",
            "cos",
            "cosh",
            "crop",
            "Deconvolution",
            "Dropout",
            "elemwise_add",
            "elemwise_mul",
            "elemwise_sub",
            "Embedding",
            "exp",
            "expand_dims",
            "flatten",
            "Flatten",
            "flip",
            "FullyConnected",
            "identity",
            "identity",
            "LeakyReLU",
            "LinearRegressionOutput",
            "log",
            "log_softmax",
            "LRN",
            "make_loss",
            "MakeLoss",
            "max",
            "max_axis",
            "mean",
            "min",
            "min_axis",
            "negative",
            "one_hot",
            "pad",
            "Pad",
            "pick",
            "Pooling",
            "Pooling_v1",
            "prod",
            "reciprocal",
            "relu",
            "repeat",
            "reshape",
            "Reshape",
            "reverse",
            "RNN",
            "rsqrt",
            "sigmoid",
            "sin",
            "sinh",
            "slice",
            "SliceChannel",
            "softmax",
            "SoftmaxActivation",
            "SoftmaxOutput",
            "softmin",
            "split",
            "sqrt",
            "sum",
            "sum_axis",
            "tan",
            "tanh",
            "tile",
            "topk",
            "transpose",
            "zeros_like"
]
check_call(_LIB.MXSetSubgraphPropertyOpNames(c_str("default"),
                                             mx_uint(len(op_names)),
                                             c_str_array(op_names)))

os.environ['MXNET_SUBGRAPH_BACKEND'] = 'default'

ctx = mx.cpu()

sym, arg_params, aux_params = mx.model.load_checkpoint('faster-rcnn', 0)
mod = mx.mod.Module(symbol=sym, context=ctx, label_names=None)
mod.bind(for_training=False, data_shapes=[('data', (1,3,224,224))],label_shapes=mod._label_shapes)
mod.set_params(arg_params, aux_params, allow_missing=True)

fname = mx.test_utils.download('https://github.com/dmlc/web-data/blob/master/mxnet/doc/tutorials/python/predict_image/cat.jpg?raw=true')
img = mx.image.imread(fname)

# convert into format (batch, RGB, width, height)
img = mx.image.imresize(img, 224, 224) # resize
img = img.transpose((2, 0, 1)) # Channel first
img = img.expand_dims(axis=0) # batchify

mod.forward(Batch([img]))
print(mod.get_outputs())

What have you tried to solve it?
Ive tested a fix in a private branch: https://github.com/samskalicky/incubator-mxnet/commit/517d29498059d081873d1bd160d95479a5c8cea9

During graph partitioning, some nodes are added to subgraphs, thus potentially changing the order of the DFS traversal.

Previously, I thought graph partitioning from default backend won't change input order. Can you explain more about the input order change? like, which op in op_names cause this, or which kind of op connection cause this?
CC @reminisce as he may know something behind.

@mxnet-label-bot add [Bug]

@ZhennanQin Im not sure why we think the input order should not change after partitioning. It makes sense to me that since we're changing the graph its possible the order may change. Maybe @reminisce can explain the rationale behind that assumption that it should not change. All ive been able to figure out the input order does change, hence the error message above about the shapes mismatch.

@samskalicky The order should be preserved because that's how I implemented it. If it's changed in your case, there might be a bug. Can you draw a diagram to show which inputs' order is changed?

@reminisce can you explain how you implemented it in such a way that the order is preserved?
There is a failing example with the sources in the description, would really appreciate your help debugging through this with your expertise and familiarity.
Here is an example showing the problem:

Assume the initial traversal order is:
A -> J
A -> J -> G
A -> J -> G -> D
A -> J -> G -> D -> E
A -> J -> G -> D -> F
A -> J -> G -> H
A -> J -> K
A -> B
A -> B -> C
And then assume that B, D, and G are included in the subgraph.
Then the post partitioning traversal would be:
A -> J
A -> J -> S
A -> J -> S -> E
A -> J -> S -> F
A -> J -> S -> H
A -> J -> S -> C
A -> J -> K
Thus the order would change from: [E, F, H, K, C] to: [E, F, H, C, K]

@samskalicky Thanks for the diagram. This is indeed the case that breaks the order of inputs and it's not considered in the implementation. We may need the solution in your PR to solve this.

So it's a common case from all backend that the input order may get change after partitioning. So we should consider this in whole partition flow, not for a particular backend. @samskalicky Thanks for finding and fixing this.

I believe this issue is fixed in master, below is my result:
[09:17:25] src/executor/graph_executor.cc:1936: Subgraph backend default is activated.
[09:17:25] src/executor/graph_executor.cc:1735: SubgraphPropertyOpNameSet for subgraph property default has been assigned a value. Please make sure it is initialized only for the testing purpose.
[
[[[ 0.]
  [ 0.]
  [ 0.]
  ...
  [-1.]
  [-1.]
  [-1.]]]
<NDArray 1x80000x1 @cpu(0)>,
[[[ 0.05506234]
  [ 0.05506234]
  [ 0.05506234]
  ...
  [-1.        ]
  [-1.        ]
  [-1.        ]]]
<NDArray 1x80000x1 @cpu(0)>,
[[[ -9.554436<PHONE_NUMBER>5  224.      ]
  [ -9.554436<PHONE_NUMBER>5  224.      ]
  [ -9.554436<PHONE_NUMBER>5  224.      ]
  ...
  [ -1.        -1.        -1.        -1.      ]
  [ -1.        -1.        -1.        -1.      ]
  [ -1.        -1.        -1.        -1.      ]]]
<NDArray 1x80000x4 @cpu(0)>]

Result is the same with quoting out os.environ['MXNET_SUBGRAPH_BACKEND'] = 'default'


Loglikelihood refactor

Not sure if utils.py is the best place for these functions. Open to starting a new utils file under models.

Hey @anjor , thanks for taking this on, and I'm sorry it took so long to look at for me!
I agree with Lintang that the current refactor is a bit more confusing in terms of adding abstraction / redirection for someone reading the code.
I think an alternative way to execute this refactor would be to do something analogous to the BaseLM class in the old v0.3.0: implementing the skeleton code / outer loops of the 3 different request type functions in a subclass of LM that is an intermediate between the fully-abstract LM base class and a fully-implemented specific LM subclass. Then, things like HFLM could have the potential to offload some of the boilerplate to this shared location and just keep their specific machinery.

All good, thanks for the comments.
Your suggestions sounds good, I will get that implemented. Any ideas on what to call the intermediate layer?

TemplateLM perhaps?

Sorry have been a bit occupied with some other stuff. Hoping to get to this soon.


创建project以后要重启服务才能push成功

创建project以后，push代码不成功。
$ git remote add origin http://<IP_ADDRESS>:8001/david/demo.git
$ git push -u origin master
fatal: unable to access 'http://<IP_ADDRESS>:8001/david/demo.git/': The requested URL returned error: 500
kill gunicorn进程，重新启动，可以push成功。
$ git push -u origin master
Counting objects: 20, done.
Delta compression using up to 8 threads.
Compressing objects: 100% (10/10), done.
Writing objects: 100% (20/20), 2.51 KiB | 0 bytes/s, done.
Total 20 (delta 2), reused 0 (delta 0)
To http://<IP_ADDRESS>:8001/david/demo.git

[new branch]      master -> master
Branch master set up to track remote branch master from origin.

服务器：centos 6.3, python 2.7.3
客户端：mac 10.9.1

@davideuler 欢迎再试


chore: cleanup dependency declaration in package.json

There are some tools but don't know all of them.
Tried to use this one in the past but it lead to too many errors, but worth trying it again: https://github.com/Thinkmill/manypkg
one thing I like is the ability to ensure all deps in the monorepo are using the same semver range for example


[$2000] Background selection indicator disappears after holding down on floating menu on mWeb but not on native apps

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Action Performed:

Open mWeb on chrome
Click on "New" icon
Hold down on an action
Notice the selection indicator
Open Android / iOS app and do the same

Expected result:
The background selection indicator should disappear after a while just like mWeb
Actual result:
The background selection indicator persists
Workaround:
Can the user still use Expensify without this being fixed? Have you informed them of the workaround?
Platforms:

Which of our officially supported platforms is this issue occurring on?

[x] Android / native
[ ] Android / Chrome
[x] iOS / native
[ ] iOS / Safari
[ ] MacOS / Chrome / Safari
[ ] MacOS / Desktop

Version Number: <IP_ADDRESS>
Reproducible in staging?: y
Reproducible in production?: y
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Notes/Photos/Videos: Any additional supporting documentation
https://user-images.githubusercontent.com/43996225/235791625-93e4c02b-7efa-4b0e-98e6-c07264a841fe.mp4
https://user-images.githubusercontent.com/43996225/235791705-abc2e85e-b828-46da-b94e-983c9ea4c19c.mp4
Expensify/Expensify Issue URL:
Issue reported by: @nathan-mulugeta
Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1683019489514809
View all open jobs on GitHub
Upwork Automation - Do Not Edit

Upwork Job URL: https://www.upwork.com/jobs/~016a13290cdc798dc7
Upwork Job ID:<PHONE_NUMBER>930145792
Last Price Increase: 2023-05-22

Bug0 Triage Checklist (Main S/O)

[ ] This "bug" occurs on a supported platform (ensure Platforms in OP are ✅)
[ ] This bug is not a duplicate report (check E/App issues and #expensify-bugs)

If it is, comment with a link to the original report, close the issue and add any novel details to the original issue instead

[ ] This bug is reproducible using the reproduction steps in the OP. S/O

If the reproduction steps are clear and you're unable to reproduce the bug, check with the reporter and QA first, then close the issue.
If the reproduction steps aren't clear and you determine the correct steps, please update the OP.

[ ] This issue is filled out as thoroughly and clearly as possible

Pay special attention to the title, results, platforms where the bug occurs, and if the bug happens on staging/production.

[ ] I have reviewed and subscribed to the linked Slack conversation to ensure Slack/Github stay in sync

Ah nice, yeah I agree. Do we have a current convo going in slack about this?

Ah nice, yeah I agree. Do we have a current convo going in slack about this?

Not that I know of, do you want to start the convo? 😅

Brought it up here!!

Didn't get to this today due to prioritizing Payroll, CPM, ECUK items! Will review Monday!

Today:

review convo above and summarize
apply that to this issue

Melvin, I just posted above!

Discussion resulted in:

So perhaps the path is:
If right-click menu, hold-press activates it
If no right-click menu, hold-press disappears/doesn’t tie to any action

Given this, this is a bug

@Nathan-Mulugeta can you confirm this is still active? I cannot repro on mWeb/Chrome Native android app

@dylanexpensify I am still able to reproduce this. I will attach a video. https://user-images.githubusercontent.com/111440031/236991784-e25c6a43-c03e-4ef7-81a3-6f315aec4019.mp4

Coming back from OOO! @Nathan-Mulugeta would you mind posting the video?

Linked to: https://github.com/Expensify/App/issues/18113

Updated format:

long press on all mobile devices will have the same effect as a right click on desktop

@dylanexpensify should we put this on hold for other similar issue?

@MonilBhavsar I think these should all be open! We came to this decision. LMK if I'm missing something!

I'm heading OOO tomorrow for about a week so adding another BZ member while I'm away to help keep the train moving! 🚂 Thanks @mallenexpensify!!

@dylanexpensify @Nathan-Mulugeta I don't think we have an issue here.

Updated format:

long press on all mobile devices will have the same effect as a right click on desktop

Long Pressing any action item (New Chat, New Group) does not trigger onpress event. I think it is the expected behavior.
Regarding the background color, I think it is the expected behavior and occurs throughout the app. Same is the case in other apps as well.

Going to take it as I have context.

Long Pressing any action item (New Chat, New Group) does not trigger onpress event

@sobitneupane what is happening here then: https://github.com/Expensify/App/issues/18113?

Holding down on new icon and releasing it after a few seconds opens up the menu on Android but not on mWeb

@twisterdotcom In https://github.com/Expensify/App/issues/18113, long pressing New icon triggers press event in native which is not the case here.

Proposal
Please re-state the problem that we are trying to solve in this issue.
When holding down on floating menu, selection indicator doesn't disappear on native mobile apps.
What is the root cause of that problem?
This is the default behavior of mobile native apps.
What changes do you think we should make in order to solve the problem?
In our current project, MenuItem component uses PressableWithSecondaryInteraction internally and we can pass onSecondaryInteraction to MenuItem component to act the same as right-click.
In cases onSecondaryInteraction is not provided, we need to manually check the long-press and apply styles.
We can do this in MenuItem component.

Add the state to the MenuItem component above this line
https://github.com/Expensify/App/blob/2f34da8fa8f5edd87f906b8fad2ec864a7e19564/src/components/MenuItem.js#L65

    const [pressedIn, setPressedIn] = React.useState(false);

If onSecondaryInteraction is not provided, we set the pressedIn state to false after some time(here 500ms: default delay of long press). We set this state to false in onPressOut callback as well for consistency. Add the following methods to MenuItem component.

    const onPressIn = (e) => {
        props.shouldBlockSelection && props.isSmallScreenWidth && DeviceCapabilities.canUseTouchScreen() && ControlSelection.block();
        setPressedIn(true);
        if (!props.onSecondaryInteraction) {
            setTimeout(() => {
                setPressedIn(false);
            }, 500);
        }
    }

    const onPressOut = (e) => {
        setPressedIn(false);
        ControlSelection.unblock(e);
    }

Set the props to the PressableWithSecondaryInteraction component.

https://github.com/Expensify/App/blob/2f34da8fa8f5edd87f906b8fad2ec864a7e19564/src/components/MenuItem.js#L104-L105
    onPressIn={onPressIn}
    onPressOut={onPressOut}

Update the styles.

https://github.com/Expensify/App/blob/2f34da8fa8f5edd87f906b8fad2ec864a7e19564/src/components/MenuItem.js#L109
                StyleUtils.getButtonBackgroundColorStyle(getButtonState(props.focused || hovered && pressedIn, pressed && pressedIn, props.success, props.disabled, props.interactive), true),

This works fine

Result
https://github.com/Expensify/App/assets/126839717/994c1903-7bda-43a1-881c-a58132ac668d

What alternative solutions did you explore? (Optional)

long pressing New icon triggers press event in native which is not the case here

But our goal is the align the two. So, in this instance, isn't it more like hovering?

So, we always want it to show the highlight don't we? But we don't want the action to be incurred when they release because that would be a longpress, which these buttons don't have actions for.

@sobitneupane damn you're right.
This also feels weird though doesn't it? Like, holding down your left-click and releasing it doing nothing. 🤔
Asking again: https://expensify.slack.com/archives/C01GTK53T8Q/p1685027043235089?thread_ts=1683612523.902839&cid=C01GTK53T8Q

Okay, no. Let's do nothing for a long click as well. That's clean.

@twisterdotcom
Should we update the issue description with the new findings? The issue exists on Web not on native and mWeb. So, the only change we are expecting here is to remove long press triggering action from Web. Long Pressing the menu items on New (New Chat, New Group, etc.) should do nothing.

Proposal
Updated

Proposal
Updated

We are still in discussion: https://expensify.slack.com/archives/C01GTK53T8Q/p1683612523902839

Same ^

Still discussing in Slack. I think we may need to take this to a wider audience even. The core piece is whether we agree that:

Consistency across platforms means the same action does the same thing everywhere OR
Platform Consistency means adhering to what the user would expect of that platform.

Proposal
Updated

@sobitneupane could you please take a look. We arrived to [this] consensus (https://expensify.slack.com/archives/C01GTK53T8Q/p1685572307831119?thread_ts=1683612523.902839&cid=C01GTK53T8Q) on slack discussion

@MonilBhavsar Is this the required behavior?  If so, I don't think any change is required here. We already have the behavior.

Well we decided what would happen when you unpressed, but I think that when you hold the press down, the highlight should remain, which is what @WikusKriek is fixing.

@WikusKriek

What is the root cause of that problem?
On mobile platforms the "pressed" event stays true on a long press unlike mWeb and desktop. This is why the ButtonBackgroundColorStyle is still active while holding in the menu item on mobile.

IMO the root cause here is: the default behavior of mWeb is to allow text selection on long press. When long pressed on mWeb, text is selected and background color changes back to normal. This is the case for almost all menu items in our app.
If we block the text selection, the highlighted background color will remain as long as menu item is pressed. But the question is if we want to do so? Might require some discussion.
@WikusKriek I am not sure how your solution will work. Will the background be highlighted and text selected?

Just want to interject and say I really really appreciate all the back and forth here, especially from you @sobitneupane and @WikusKriek. I never knew how confusing such a seemingly simple thing could be to get to the bottom of.
Agree, I'd love to see a screen recording. And this, to my untrained eye, sounds good:

I am not blocking text selection, my solution only changes whether or not the ButtonBackgroundStyle is active. I have an additional flag that is controlled by the long-press. And with this new flag and the previous "pressed" flag I control the styling(pressed || longPress to activate background style).

@WikusKriek Can we see how it look on mWeb. I don't think there was any issue on native.

So, going back to this, do we want to block text selection on long press in mWeb for consistency across all platforms or do nothing as it is expected in mWeb for text to be selected on long press?
cc: @twisterdotcom @MonilBhavsar

do nothing as it is expected in mWeb for text to be selected on long press?

This would be my preference.

Are we moving on this one now?

@twisterdotcom I think this was the only issue here. I don't think we have any thing to fix.
cc: @WikusKriek

Whoah! Sorry for missing these updates. Okay, so we should close right @sobitneupane? I'd sort of be happy to pay out an equal amount to a bug reporting bonus for for @WikusKriek and @sobitneupane, even if we aren't going to go ahead with any change given the work you've put into getting us here. Does that sound okay?

Yup @twisterdotcom. We are good to close this.

Two offers of $250 sent. I'll close this out now and just get those paid whenever you accept. Thanks all!


Updated read me for create-react-app-example

In response to the Issue 269 which is to Update the example files to be the latest version of Mirrorful. I added information to the README file to help users get started with the create-react-app

Hi @nyeno thanks! We also need to update Mirrorful to version 5.0.6 (the latest) here in the package.json: https://github.com/Mirrorful/mirrorful/blob/main/examples/create-react-app/package.json#L39

Related to: https://github.com/Mirrorful/mirrorful/issues/269

Hi @alexdanilowicz I have updated all the example to the latest version of mirrorful. I also ran npx mirrorful after updating on each example to assert that it works well. It does work without any issues on each example.

@nyeno amazing, thank you so much! will merge this in tomorrow.

You are welcome @alexdanilowicz It was a pleasure


Use the library with minSdkVersion 19

I want to use this library, but my app has minSdkVersion 19. I force it using below code. What's the thing will be broken? or are there an alternative way to use this library in app that has minSdkVersion 19?
 <uses-sdk         android:minSdkVersion="19"         tools:overrideLibrary="app.futured.donut" />

Hi! We cannot guarantee a proper functionality on devices below API 21, but as far as everything compiles and works fine on these devices, you should be good to go :)

argh, it turns out the compile is failed with error android.view.InflateException: Binary XML file line #62: Error inflating class app.futured.donut.DonutProgressView is there a way to solve this?

I already solved it the compile failure and I create  PR #55  for that. But I still don't know if it breaks something or not. I'm so grateful if there are contributor who willing to check it.

Yes, I checked it yesterday and problem was the API21+ constructor. Thanks for the PR, will look at that. We also consider changing the library to minSdk 19, so the manifest override would not be needed.


No clearly documented way to create an AppX for a Linux distribution

Try as I might I have yet to find documentation on how to construct an AppX that will allow a Linux distribution to be installed.
I'm hoping I'm missing something terribly obvious and that this isn't a secret.

Microsoft provides the Appx files in this article Windows Server Installation Guide.

Ubuntu: https://aka.ms/wsl-ubuntu-1604
OpenSUSE: https://aka.ms/wsl-opensuse-42
SLES: https://aka.ms/wsl-sles-12

Where's Fedora?

@xenithorb Fedora is not officially available now. But you may try this procedure. See this comment https://github.com/Microsoft/WSL/issues/8#issuecomment-212116902

Good info here but what I'm actually looking for is a documented way to create the AppX bundle for a Linux distribution from scratch, in order to create a custom distribution that could be sideloaded or submitted to the Windows Store.

"create the AppX bundle for a Linux distribution from scratch, in order to create a custom distribution"

@brad-x Add those words in your issue tittle.
I'm pleased that you want to create custom distribution, many user want other distros. But all of those are not available in Store till now. May be you create one using those .tar.gz files from distro's website. But those tarballs are different from the availability ones in Store. See #8

@tara-raj might be able to answer questions on official documentation for publishing your own distro.

@brad-x The two essential parts of Linux distro appx packages are 1. Open source userspace compressed tarballs (.tar.gz) 2. Close source installer executable (.exe). You can make packaged appx with visual studio.
Though you can get the tarball in any distro homepage, you can not get that installer executable.

@Biswa96 I think Debian let loose the secret on creating a distro in the Windows Store. Probably also relevant to @DDoSolitary and @RoliSoft

@DarthSpock, According to @bitcrazed making a distro for WSL is not a rocket science. The distro launcher in those Windows Store Appx files are depends on wslapi.dll.
For example, If you download Ubuntu Appx (i.e. CanonicalGroupLimited.UbuntuonWindows_1604.2017.922.0_x64__79rhkp1fndgsc.Appx) from Windows Store and extract ubuntu.exe, then you get that it imports all WSL functions from wslapi.dll. I'm not amaze seeing this code. But I'm astonished that Debian released that code (C++). ❤ Debian
All distro launcher have same code except the commands to add user in Linux (depends on distro). I'm interested in wsl.exe or bash.exe and how the connect with LxssManager.dll with COM.

@DarthSpock Is it official report of original code for debian.exe? I doubt that because the repo owner name has -guest meaning he is not the debian developer.

@Biswa96 It looked to me to be the same code they used for uploading to the Windows Store and creating the .appx file. I did get a partial spoiler for how they create  Kali has something similar with their Kali-WSL-chroot page but doesn't include the .appx info unfortunately. I know the repo owner is a Debian developer and took the credit on Twitter for getting this published. Indeed, if you look at the issues tracker, another Debian developer pointed out as much since the WSL image wasn't built the same way as other images Debian creates. I did notice about cdebootstrap but I'm guessing you're familiar with it as you already call the WSL API.
I would recommend opening an issue there so he can walk you through how he used wsl.exe and/or bash.exe  to LxssManager.dll. I personally don't have enough know how to build and distribute a distro for WSL but since you've already gotten most of the process down, it would be great to see you releasing something a bit more official (and easier to use).

For the debian based distros (i.e. Debina, Ubuntu, Kali), I assume that the launcher executable will be same as they have same commands to add users. If you want to create that launcher just change this line with the distro name (in MyLinuxDistroLauncher.cpp):
this->_myName= L"Debian";
One can get the easy source code from @yuk7 repositories. See his works.

So I was right and wrong about the link above. It's specific to Debian but I found another by another Debian developer and gives ALL the build steps you need to create a distro for WSL. https://salsa.debian.org/zobel/WSL

Good news, I've found that wslapi.dll does some COM mechanism with LsxxManagerProxy.dll to install .tar.gz. WslRegisterDistribution() calls CreateThread() first and then CoCreateInstance().
May be there is a way not using wslapi.dll and not the Wsl functions. @benhillis Am I right?

Good news, I've found that wslapi.dll does some COM mechanism with LxssManagerProxy.dll to install .tar.gz. WslRegisterDistribution() calls CreateThread() first and then CoCreateInstance().  The two parameters goes into CreateThread's lpParameter.
May be there is a way not using wslapi.dll and not the Wsl functions. @benhillis Am I right?

@Biswa96 - The COM interface is not documented, the Wsl* functions are.

@Biswa96 We recommend holding-on for a little longer: @tara-raj is currently driving the process to open-source the launcher project that distro partners have been forking & using to create the launcher for their distro packages.
The reference launcher implementation provides default implementation of the launching process, as well as some key functionality we'd like to see all launchers support consistently (e.g. clean).
The launcher uses the public Win32 API's which in turn call the internal WSL APIs and infrastructure. As always, avoid calling internal APIs since they may change without warning.

@bitcrazed - Clean is a bad example, that has been removed from the new sample.  The supported way to clean is via app settings.  Right click tile -> More -> App settings -> Reset

I want to explore the COM programming and not to dependent on public WSL* functions. So I choose the COM mechanism and search (i.e. reverse) the procedure in wslapi.dll.
The WslRegisterDistrbution function include many extra functions like GetCurrentPackagePath() which does not require in simple win32. And also it extracts tar.gz with QueryFullProcessImageName() at execution path.

@Biswa96 There are FAR better ways of exploring COM programming than trying to call non-public COM API's. Note that since the COM API is not public, it's liable to change at any time, which will likely break your code.
It's MUCH safer to call the public & documented Win32 API's.

The good news has finally arrived: https://github.com/Microsoft/WSL-DistroLauncher
See this blog post: https://blogs.msdn.microsoft.com/commandline/2018/03/26/wsl-distro-launcher/


MESSAGE-GLOBIOM_1.0 EMF33 scenarios are from MESSAGEix-GLOBIOM_1.0

The set of EMF33_* scenarios from the MESSAGE-GLOBIOM_1.0 have actually been created with the newer version MESSAGEix-GLOBIOM_1.0. This is a minor issue, but should be addressed in a future update of the SR1.5 scenario data set.

thank you @volker-krey for identifying this inconsistency!


Add autogen op tests

Ticket
N/A
Problem description
As mentioned in here, add autogen op tests
What's changed

Add tests/autogen_op
Skip running tests/autogen-op/Stable_Diffusion_V2/test_Stable_Diffusion_V2_aten_convolution_default.py so the job can reduce time spent from 42 min to few min

I am concerned how adding 2k small files affects repo performance. But I am ok to merge this now as is.
Please think if it would be better to store raw collected data and generate tests on the fly from that.

tests/autogen-op is generated by metrics/ folder, which is the record generated from model tests.
If store the metrics/(i.e. the raw data) in the fly, then can python3 tools/generate_input_variation_test_from_models.py to generate tests/autogen-op
I don't know how to add either raw data or tests/autogen-op on the fly @@


Support helm charts in kwok

What would you like to be added?
It would be great if KWOK could support Helm charts. I had a brief discussion with @wzshiming on Slack, and here's a summary.
The main issue arises from the conflict with the go template's {{ and }}. Since Helm charts also use these as default values, KWOK would need to support modifying the default {{ and }}. This change is straightforward but requires modification at every occurrence.
To enable coexistence between the two, there are two options:
Integrate kustomize with Helm, as detailed here: https://helm.sh/docs/topics/advanced/#post-rendering
Integrate Helm with kustomize, as detailed here: https://kubectl.docs.kubernetes.io/references/kustomize/kustomization/helmcharts
Option 2 (integrating Helm into kustomize) appears to be the more feasible solution.
@dmitsh, what are your thoughts on this?
Why is this needed?
Helm charts are widely used, making it easier to configure, create, and manage virtual clusters.

cc @wzshiming @dmitsh  Created an issue on helm support.

Could you elaborate about the conflict with the go template?

Regardless, we are using ArgoCD to automate deployments of components with Helm. The goal is to deploy all the components without user intervention or input.

Could you elaborate about the conflict with the go template?

I think what Shiming referenced to was a helm template needs additional {{ }} in a stage's statusTemplate.
 next:
   statusTemplate: |
     {{`

    `}}

@dmitsh
@yuanchen8911
I've released the first helm chart to validate the CI process, and it seems to be working pretty well.
https://artifacthub.io/packages/helm/kwok/kwok
https://github.com/kubernetes-sigs/kwok/tree/main/charts/kwok


VS Code is not remembering all the functions from Wordpress Folder

I'm Developing WP theme in VS code.
Now my point is:

As i'm working under the Wordpress folder, VS code is not showing any function reference when i type couple of their first letter...

As you can see in the image above , i'm in functions.php file
But when I write add_action() , VS code doesnot showing the full add_action() ro me when i start to write add_ac
IS there any settings to make it rue or Its not available in VS code ?
Please help me..

You need to install a PHP extension like this

Please file this issue against the php extension you are using.


Update netlify to use new API.

NOTE!
This also includes a change to support a plaintext field on the secret object. Without this there's no reasonable way for an extension to get a plaintext secret value.
Unreasonable ways include having the extension mount the secret into an exec, cat the value and select the stdout. That defeats the purpose of secrets though.

The automated test is skipped because we don't have a shared netlify token; it can still be useful locally by filling in your netlify token if desired.

This also includes a change to support a plaintext field on the secret object. Without this there's no reasonable way for an extension to get a plaintext secret value.

Yep. I know there's secrets API discussions and TBD's going around, but we'll need something for now to get unstuck

Also, I think you could do me the honor of git rm sdk/go/dagger/legacy_client.go -- that was the last remaining bits from the old SDK

Sounds great :-) I need to update the Go version of netlify too quickly (this is just ts), but I'll push a commit with that rm too.