Make VM type descriptors local to the context in which they are used.

We have some deployments where globals and BSS segments get nuked in bare-metal-ish setups. It would be good to reduce the global usage (or anything using .got).
Some examples here:
https://github.com/google/iree/blob/7aa6b691b5ed81f191053404c181c49516765da0/iree/modules/hal/module.c#L29-L41
Also in the static library case the "vmfb" is a global.

There's been a TODO to do something with these for awhile but to set expectations it's unlikely to happen for awhile. I'd recommend checking your compilation flags - .got is only needed if you have position-independent code and if you have PIC you need it - there's no way around that. I'm going to guess you've got a PIC flag set when you shouldn't. Non-PIC code is fine with bss data on bare-metal - if an arduino can do it on 8-bit uc (or cc65 can do it on a 6502) anything can :)
The data segment is the best solution for size/startup cost/performance and anything we do to work around this is going to add overhead and memory consumption. Instead of a linker resolved fixup (PIC) or a constant (non-PIC) each context will need its own copy of these in dynamically allocated memory and will have to perform a few pointer hops to access them - and they are accessed a lot. The reason we'd want to move away from this is allowing multiple contexts to have different types registered as a tradeoff against size/perf/compatibility, not because of it.

AFAIK these are the only things using file-level variables, however there are function-level statics that also end up in bss that may exist (though unlikely to be on the path used by bare-metal - most are in platform-specific files).

I think this is done by the above commits.

Not yet but close - whenever it's fixed there should be no user-level changes, though.


Master Crashing when using Spider

The new Master file, with the merges from ia and diffbot-testing, crash when using the spider to load pages into the index at relatively high speed. Configuration used was 4 node non-mirrored cluster on Centos 7 machine running 24 cores, 64gb memory, and engine directory on Samsung 850 Pro 2TB SSD drive. This does not happen with diffbot-testing on the same machine using the same configuration, etc. Diffbot-testing is solid.

do you know where the crash occurs?
can you execute the addr2line statements at the end of the crashed gb's
log file and see what they say?
at least the first 5 or so.
On 10/17/2015 01:36 PM, MikeLx wrote:

The new Master file, with the merges from ia and diffbot-testing,
crash when using the spider to load pages into the index at relatively
high speed. Configuration used was 4 node non-mirrored cluster on
Centos 7 machine running 24 cores, 64gb memory, and engine directory
on Samsung 850 Pro 2TB SSD drive. This does not happen with
diffbot-testing on the same machine using the same configuration, etc.
Diffbot-testing is solid.
—
Reply to this email directly or view it on GitHub
https://github.com/gigablast/open-source-search-engine/issues/61.

--
WARNING: CONFIDENTIALITY NOTICE: This E-mail and the materials attached are the private confidential property of the sender, and the message and attachments are privileged communications intended solely for the receipt, use, benefit, and information of the intended recipient indicated above. If you are not the intended recipient, you are hereby notified that any review, disclosure, copying, distribution, or the taking of any other action in reliance on the contents of this transmission is strictly prohibited, and may result in legal liability on your part. If you have received this transmission in error, please notify the sender immediately by replying to the sender, then fully delete the transmission from your computer and destroy any copies hereof. Your cooperation is appreciated.

This is part of the log file generated after the shard went dead and auto-restarted. Let me know if you need more of the log.
site=www.maphappy.org siteroot=0 pathdepth=3 lastindexed=Oct-15-2015(10:22:17)(1444904537) contentinjected=0 urlinjected=0 isaddurl=0 errcnt=0 url=http://maphappy.org/2015/04/say-it-right-can-you-split-this-bill/ : Doc unchanged
1444905389103 002 build: coll=main collnum=0 ip=<IP_ADDRESS> firstip=<IP_ADDRESS> spidered=Oct-15-2015(10:36:28)(1444905388) scheduledtime=Oct-15-2015(06:31:48)(1444890708) discoverydate=Oct-15-2015(06:31:48)(1444890708) firsttime=1 goodinlinks=0 docid=200835723496 siteinlinks=0000 siterank=0 pageinlinks=0001 uh48=101630783377064 charset=UTF-8 ctype=text parentlang=01(en) lang=01(en) hopcount=01 contentlen=000042 robotstxtlen=0704 robotsallowed=1 ch32=1842720831 dh32=2146651843 sh32=3397914660 isrss=0 hasrssoutlink=0 addlistsize=00125 addspiderreqsize=00000 addspiderrepsize=00076 addstatusdocsize=00000 thumbnail=none urlfilternum=17 diffboterror=0 site=blog.ninds.nih.gov siteroot=0 pathdepth=0 contentinjected=0 urlinjected=0 isaddurl=0 spiderlinks=1 exactcontenthash=17646883285145208533 oldpriority=40 errcnt=0 httpstatus=405 url=http://blog.ninds.nih.gov/xmlrpc.php : Doc bad http status
1444905389366 002 build: coll=automobile collnum=6 ip=<IP_ADDRESS> firstip=<IP_ADDRESS> fakesreqfirstip=<IP_ADDRESS> spidered=Oct-15-2015(10:36:28)(1444905388) scheduledtime=Oct-15-2015(10:31:35)(1444905095) discoverydate=Oct-15-2015(10:31:35)(1444905095) firsttime=1 docid=257715817993 siteinlinks=0482 siterank=11 pageinlinks=0001 uh48=131099599534409 charset=UTF-8 ctype=html parentlang=01(en) lang=01(en) hopcount=01 contentlen=036645 robotstxtlen=0894 robotsallowed=1 ch32=2056500715 dh32=3278583608 sh32=4289727567 ispermalink=0 isrss=0 addlistsize=00077 addspiderreqsize=00000 addspiderrepsize=00076 addstatusdocsize=00000 thumbnail=none diffboterror=0 site=www.autoblog.com siteroot=0 pathdepth=2 lastindexed=Oct-15-2015(07:16:15)(1444893375) contentinjected=0 urlinjected=0 isaddurl=0 oldurlfilternum=17 oldpriority=40 errcnt=0 url=http://www.autoblog.com/contact/feedback/ : Doc unchanged
1444905389373 002 msg22: could not find title rec for docid<PHONE_NUMBER> collnum=0
1444905389373 002 db: Had error getting title record from titledb: Record not found.
1444905389373 002 net: Multicast got error in reply from hostId 2 (msgType=0x22 transId=55644 nice=2 net=default): Record not found.
1444905389373 002 db: Had error getting title record for docId of<PHONE_NUMBER>: Record not found.
1444905389373 002 query: Had error generating msg20 reply for d=9940255682: Record not found
1444905389501 002 msg22: could not find title rec for docid<PHONE_NUMBER>7 collnum=3
1444905389501 002 db: Had error getting title record from titledb: Record not found.
1444905389501 002 net: Multicast got error in reply from hostId 2 (msgType=0x22 transId=55660 nice=2 net=default): Record not found.
1444905389501 002 db: Had error getting title record for docId of<PHONE_NUMBER>7: Record not found.
1444905389501 002 query: Had error generating msg20 reply for d=75520345967: Record not found
1444905390279 002 table: grewtable posdb-indx from 65536 to 131072 slots in 3 ms (this=0x7fff7a256000) (used=16384)
1444905390292 002 xmldoc: reallocated big table! bad. old=65536 new=131072 nw=14125
1444905390308 002 build: coll=viral collnum=3 ip=<IP_ADDRESS> firstip=<IP_ADDRESS> spidered=Oct-15-2015(10:36:29)(1444905389) scheduledtime=Oct-15-2015(10:13:18)(1444903998) discoverydate=Oct-15-2015(10:13:18)(1444903998) firstindexed=Oct-15-2015(10:36:29)(1444905389) firsttime=1 goodinlinks=0 docid=46417695433 siteinlinks=0000 siterank=0 pageinlinks=0001 uh48=269426766497865 charset=UTF-8 ctype=xml parentlang=01(en) lang=01(en) country=00(zz) hopcount=01 contentlen=060210 robotstxtlen=0162 robotsallowed=1 ch32=3796421057 dh32=2889548619 sh32=3255929461 ispermalink=0 isrss=1 hasrssoutlink=0 outlinksadded=0040 outlinksaddedfromsamedomain=0040 addlistsize=547049 addspiderreqsize=00000 addspiderrepsize=00076 addstatusdocsize=00000 thumbnail=none priority=45 urlfilternum=13 diffboterror=0 site=www.playbuzz.com siteroot=0 pathdepth=1 contentinjected=0 urlinjected=0 isaddurl=0 spiderlinks=1 exactcontenthash=10526314807856479511 isadult=0 errcnt=0 url=http://www.playbuzz.com/rss/Funny : Success
1444905390441 002 msg22: could not find title rec for docid<PHONE_NUMBER>4 collnum=0
1444905390441 002 db: Had error getting title record from titledb: Record not found.
1444905390441 002 net: Multicast got error in reply from hostId 2 (msgType=0x22 transId=55752 nice=2 net=default): Record not found.
1444905390441 002 db: Had error getting title record for docId of<PHONE_NUMBER>4: Record not found.
1444905390441 002 query: Had error generating msg20 reply for d=28622385364: Record not found
1444905390862 002 tagdb: corrupt tag recsize<PHONE_NUMBER>
1444905390862 002 mem: addMem(1344301308): SafeBuf. ptr=0x7fe530994014 used=1936586166
1444905391060 002 loop: sigbadhandler. disabling handler from recall.
1444905391060 002 gb: seg fault. printing stack trace. use 'addr2line -e gb' to decode the hex below.
1444905391060 002 addr2line -e gb 0x574f4f
1444905391060 002 addr2line -e gb 0x575c7f
1444905391060 002 addr2line -e gb 0x7fe5ff12c130
1444905391060 002 addr2line -e gb 0x7fe5fdf78564
1444905391060 002 addr2line -e gb 0x7fe5fdf721d7
1444905391060 002 addr2line -e gb 0x5f0767
1444905391060 002 addr2line -e gb 0x6715e5
1444905391060 002 addr2line -e gb 0x493952
1444905391060 002 addr2line -e gb 0x672de5
1444905391061 002 addr2line -e gb 0x56cb7d
1444905391061 002 addr2line -e gb 0x4f3ad0
1444905391061 002 addr2line -e gb 0x4f4471
1444905391061 002 addr2line -e gb 0x4f495a
1444905391061 002 addr2line -e gb 0x574640
1444905391061 002 addr2line -e gb 0x57540f
1444905391061 002 addr2line -e gb 0x57597d
1444905391061 002 addr2line -e gb 0x40bdc7
1444905391061 002 addr2line -e gb 0x40593c
1444905391061 002 addr2line -e gb 0x7fe5fdf0aaf5
1444905391061 002 addr2line -e gb 0x4057c9
1444905391061 002 loop: sigbadhandler. trying to save now. mode=0
1444905391061 002 mem: checking mem for breeches
1444905391133 002 gb: Shutting down urgently. Timed try #0.
1444905391133 002 gb: disabling threads
1444905391134 002 gb: trying to shutdown


Wait for component deletion, Add --wait flag to odo delete

What type of PR is this?
/kind feature
What does does this PR do / why we need it:
It adds --wait flag in odo component delete, which waits for component and its dependents to get deleted. with foregroundDeletionPolicy kubernetes deletes the dependent first which are referring dc with ownerReference. Then it deletes the dc itself. we have added watch to dc so that it waits for deletion of dc
Which issue(s) this PR fixes:
Fixes #2682
How to test changes / Special notes to the reviewer:
Run odo delete -f -w on a deployed component,
Run oc get pvc, check th s2i pvc gets deleted
Run oc get route, check the route created via url gets deleted

/retest

How to test changes / Special notes to the reviewer:
Run odo delete -f -w on a deployed component, Immediately run odo push, it should not fail now with alreadyexist error as odo delete -f -w would wait for deletion to get completed.

@adisky Are you verifying the steps or torturing the code 🗡  hahaha....
I would say add steps which are easy to understand, user facing and more importantly use these steps in integration spec.

@adisky Please cleanup What type of PR is this?

How to test changes / Special notes to the reviewer:
Run odo delete -f -w on a deployed component, Immediately run odo push, it should not fail now with alreadyexist error as odo delete -f -w would wait for deletion to get completed.

@adisky Are you verifying the steps or torturing the code  hahaha....
I would say add steps which are easy to understand, user facing and more importantly use these steps in integration spec.

@amitkrout Please check the reported issue. it is signifying running odo push just after odo delete, however i have simplified

/test v4.1-integration-e2e-benchmark

/test v4.2-integration-e2e-benchmark

/test v4.1-integration-e2e-benchmark

/test v4.2-integration-e2e-benchmark

/retest

@adisky any update on this?

@adisky any update on this?

yes updated it.

@amitkrout raw test logs, in case resource exist, test should fail.
odo sub component command tests odo component delete should clean owned resources
  should delete the component and the owned resources with wait flag
  /home/adisky/go/src/github.com/openshift/odo/tests/integration/component.go:858
Created dir: /tmp/234650130
Creating a new project: fgqbtmujjt
Running odo with args [odo project create fgqbtmujjt -w -v4]
[odo] I0409 14:46:20.352890   18863 preference.go:165] The path for preference file is /tmp/234650130/config.yaml
[odo]  •  Waiting for project to come up  ...
[odo] I0409 14:46:21.186053   18863 occlient.go:531] Status of creation of project fgqbtmujjt is Active
[odo] I0409 14:46:21.186128   18863 occlient.go:536] Project fgqbtmujjt now exists
[odo] I0409 14:46:21.192714   18863 occlient.go:571] Status of creation of service account &ServiceAccount{ObjectMeta:k8s_io_apimachinery_pkg_apis_meta_v1.ObjectMeta{Name:default,GenerateName:,Namespace:fgqbtmujjt,SelfLink:/api/v1/namespaces/fgqbtmujjt/serviceaccounts/default,UID:c6364f68-7a42-11ea-875c-52fdfc072182,ResourceVersion:993551,Generation:0,CreationTimestamp:2020-04-09 14:46:20 +0530 IST,DeletionTimestamp:<nil>,DeletionGracePeriodSeconds:nil,Labels:map[string]string{},Annotations:map[string]string{},OwnerReferences:[],Finalizers:[],ClusterName:,Initializers:nil,},Secrets:[{  default-token-pcw66    } {  default-dockercfg-mctts    }],ImagePullSecrets:[{default-dockercfg-mctts}],AutomountServiceAccountToken:nil,} is ready
 ✓  Waiting for project to come up [812ms]
[odo]  ✓  Project 'fgqbtmujjt' is ready for use
[odo]  ✓  New project created and now using project: fgqbtmujjt
[odo] I0409 14:46:21.207444   18863 odo.go:80] Could not get the latest release information in time. Never mind, exiting gracefully :)
Running odo with args [odo component create nodejs lfhyf --app zgpbk --project fgqbtmujjt --context /tmp/234650130]
[odo]  •  Validating component  ...
 ✓  Validating component [7ms]
[odo]
[odo] Please use `odo push` command to create the component with source deployed
Running odo with args [odo url create example-1 --context /tmp/234650130]
[odo]  ✓  URL example-1 created for component: lfhyf
[odo]
[odo] To create URL on the OpenShift Cluster, please use `odo push`
Running odo with args [odo storage create storage-1 --size 1Gi --path /data1 --context /tmp/234650130]
[odo]  ✓  Added storage storage-1 to lfhyf
[odo]
[odo] Please use `odo push` command to make the storage accessible to the component
Running odo with args [odo component push --context /tmp/234650130]
[odo] Validation
[odo]  •  Checking component  ...
 ✓  Checking component [11ms]
[odo]
[odo] Configuration changes
[odo]  ✓  Added storage storage-1 to lfhyf
[odo]  ✓  Initializing component
[odo]  •  Creating component  ...
 ✓  Creating component [70ms]
[odo]
[odo] Applying URL changes
[odo]  ✓  URL example-1: http://example-1-zgpbk-fgqbtmujjt.apps-crc.testing created
[odo]
[odo] Pushing to component lfhyf of type local
[odo]  •  Checking files for pushing  ...
 ✓  Checking files for pushing [414035ns]
[odo]  •  Waiting for component to start  ...
 ✓  Waiting for component to start [20s]
[odo]  •  Syncing files to the component  ...
 ✓  Syncing files to the component [6s]
[odo]  •  Building component  ...
 ✓  Building component [7s]
[odo]  ✓  Changes successfully pushed to component
Running odo with args [odo url create example-2 --context /tmp/234650130]
[odo]  ✓  URL example-2 created for component: lfhyf
[odo]
[odo] To create URL on the OpenShift Cluster, please use `odo push`
Running odo with args [odo storage create storage-2 --size 1Gi --path /data2 --context /tmp/234650130]
[odo]  ✓  Added storage storage-2 to lfhyf
[odo]
[odo] Please use `odo push` command to make the storage accessible to the component
Running odo with args [odo component push --context /tmp/234650130]
[odo] Validation
[odo]  •  Checking component  ...
 ✓  Checking component [23ms]
[odo]
[odo] Configuration changes
[odo]  •  Retrieving component data  ...
[odo]  ✓  Added storage storage-2 to lfhyf
 ✓  Retrieving component data [37ms]
[odo]  •  Applying configuration  ...
 ✓  Applying configuration [35s]
[odo]
[odo] Applying URL changes
[odo]  ✓  URL example-1 already exists
[odo]  ✓  URL example-2: http://example-2-zgpbk-fgqbtmujjt.apps-crc.testing created
[odo]
[odo] Pushing to component lfhyf of type local
[odo]  •  Checking file changes for pushing  ...
 ✓  Checking file changes for pushing [169169ns]
[odo]  ✓  No file changes detected, skipping build. Use the '-f' flag to force the build.
Running odo with args [odo component delete -f --context /tmp/234650130]
[odo] This component has following urls that will be deleted with component
[odo] URL named example-1 with host example-1-zgpbk-fgqbtmujjt.apps-crc.testing having protocol http at port 8080
[odo] URL named example-2 with host example-2-zgpbk-fgqbtmujjt.apps-crc.testing having protocol http at port 8080
[odo] This component has following storages which will be deleted with the component
[odo] Storage storage-1 of size 1Gi
[odo] Storage storage-2 of size 1Gi
[odo]  •  Deleting component lfhyf  ...
 ✓  Deleting component lfhyf [220ms]
[odo]  ✓  Component lfhyf from application zgpbk has been deleted
Running oc with args [oc get routes --namespace fgqbtmujjt]
[oc] NAME              HOST/PORT                                     PATH   SERVICES      PORT   TERMINATION   WILDCARD
[oc] example-1-zgpbk   example-1-zgpbk-fgqbtmujjt.apps-crc.testing          lfhyf-zgpbk   8080                 None
[oc] example-2-zgpbk   example-2-zgpbk-fgqbtmujjt.apps-crc.testing          lfhyf-zgpbk   8080                 None

NAME              HOST/PORT                                     PATH   SERVICES      PORT   TERMINATION   WILDCARD
example-1-zgpbk   example-1-zgpbk-fgqbtmujjt.apps-crc.testing          lfhyf-zgpbk   8080                 None
example-2-zgpbk   example-2-zgpbk-fgqbtmujjt.apps-crc.testing          lfhyf-zgpbk   8080                 None
Deleting project: fgqbtmujjt
Running odo with args [odo project delete fgqbtmujjt -f]
[odo]  •  Deleting project fgqbtmujjt  ...
 ✓  Deleting project fgqbtmujjt [28s]
[odo]  ✓  Deleted project : fgqbtmujjt
Deleting dir: /tmp/234650130

• Failure [99.383 seconds]
odo sub component command tests
/home/adisky/go/src/github.com/openshift/odo/tests/integration/cmd_cmp_sub_test.go:13
  odo component delete should clean owned resources
  /home/adisky/go/src/github.com/openshift/odo/tests/integration/component.go:823
    should delete the component and the owned resources with wait flag [It]
    /home/adisky/go/src/github.com/openshift/odo/tests/integration/component.go:858

    Expected
        <string>: NAME              HOST/PORT                                     PATH   SERVICES      PORT   TERMINATION   WILDCARD
        example-1-zgpbk   example-1-zgpbk-fgqbtmujjt.apps-crc.testing          lfhyf-zgpbk   8080                 None
        example-2-zgpbk   example-2-zgpbk-fgqbtmujjt.apps-crc.testing          lfhyf-zgpbk   8080                 None

    not to contain substring
        <string>: example

    /home/adisky/go/src/github.com/openshift/odo/tests/helper/helper_oc.go:491
------------------------------
SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS

Summarizing 2 Failures:

[Fail] odo component command tests odo component delete should clean owned resources [It] should delete the component and the owned resources with wait flag
/home/adisky/go/src/github.com/openshift/odo/tests/helper/helper_oc.go:491

[Fail] odo sub component command tests odo component delete should clean owned resources [It] should delete the component and the owned resources with wait flag
/home/adisky/go/src/github.com/openshift/odo/tests/helper/helper_oc.go:491

Ran 2 of 170 Specs in 223.129 seconds
FAIL! -- 0 Passed | 2 Failed | 0 Pending | 168 Skipped
--- FAIL: TestIntegration (223.13s)
FAIL

Ginkgo ran 1 suite in 3m44.768249387s
Test Suite Failed

@amitkrout raw test logs, in case resource exist, test should fail.
odo sub component command tests odo component delete should clean owned resources
  should delete the component and the owned resources with wait flag
  /home/adisky/go/src/github.com/openshift/odo/tests/integration/component.go:858
Created dir: /tmp/234650130
Creating a new project: fgqbtmujjt
Running odo with args [odo project create fgqbtmujjt -w -v4]
[odo] I0409 14:46:20.352890   18863 preference.go:165] The path for preference file is /tmp/234650130/config.yaml
[odo]  •  Waiting for project to come up  ...
[odo] I0409 14:46:21.186053   18863 occlient.go:531] Status of creation of project fgqbtmujjt is Active
[odo] I0409 14:46:21.186128   18863 occlient.go:536] Project fgqbtmujjt now exists
[odo] I0409 14:46:21.192714   18863 occlient.go:571] Status of creation of service account &ServiceAccount{ObjectMeta:k8s_io_apimachinery_pkg_apis_meta_v1.ObjectMeta{Name:default,GenerateName:,Namespace:fgqbtmujjt,SelfLink:/api/v1/namespaces/fgqbtmujjt/serviceaccounts/default,UID:c6364f68-7a42-11ea-875c-52fdfc072182,ResourceVersion:993551,Generation:0,CreationTimestamp:2020-04-09 14:46:20 +0530 IST,DeletionTimestamp:<nil>,DeletionGracePeriodSeconds:nil,Labels:map[string]string{},Annotations:map[string]string{},OwnerReferences:[],Finalizers:[],ClusterName:,Initializers:nil,},Secrets:[{  default-token-pcw66    } {  default-dockercfg-mctts    }],ImagePullSecrets:[{default-dockercfg-mctts}],AutomountServiceAccountToken:nil,} is ready
 ✓  Waiting for project to come up [812ms]
[odo]  ✓  Project 'fgqbtmujjt' is ready for use
[odo]  ✓  New project created and now using project: fgqbtmujjt
[odo] I0409 14:46:21.207444   18863 odo.go:80] Could not get the latest release information in time. Never mind, exiting gracefully :)
Running odo with args [odo component create nodejs lfhyf --app zgpbk --project fgqbtmujjt --context /tmp/234650130]
[odo]  •  Validating component  ...
 ✓  Validating component [7ms]
[odo]
[odo] Please use `odo push` command to create the component with source deployed
Running odo with args [odo url create example-1 --context /tmp/234650130]
[odo]  ✓  URL example-1 created for component: lfhyf
[odo]
[odo] To create URL on the OpenShift Cluster, please use `odo push`
Running odo with args [odo storage create storage-1 --size 1Gi --path /data1 --context /tmp/234650130]
[odo]  ✓  Added storage storage-1 to lfhyf
[odo]
[odo] Please use `odo push` command to make the storage accessible to the component
Running odo with args [odo component push --context /tmp/234650130]
[odo] Validation
[odo]  •  Checking component  ...
 ✓  Checking component [11ms]
[odo]
[odo] Configuration changes
[odo]  ✓  Added storage storage-1 to lfhyf
[odo]  ✓  Initializing component
[odo]  •  Creating component  ...
 ✓  Creating component [70ms]
[odo]
[odo] Applying URL changes
[odo]  ✓  URL example-1: http://example-1-zgpbk-fgqbtmujjt.apps-crc.testing created
[odo]
[odo] Pushing to component lfhyf of type local
[odo]  •  Checking files for pushing  ...
 ✓  Checking files for pushing [414035ns]
[odo]  •  Waiting for component to start  ...
 ✓  Waiting for component to start [20s]
[odo]  •  Syncing files to the component  ...
 ✓  Syncing files to the component [6s]
[odo]  •  Building component  ...
 ✓  Building component [7s]
[odo]  ✓  Changes successfully pushed to component
Running odo with args [odo url create example-2 --context /tmp/234650130]
[odo]  ✓  URL example-2 created for component: lfhyf
[odo]
[odo] To create URL on the OpenShift Cluster, please use `odo push`
Running odo with args [odo storage create storage-2 --size 1Gi --path /data2 --context /tmp/234650130]
[odo]  ✓  Added storage storage-2 to lfhyf
[odo]
[odo] Please use `odo push` command to make the storage accessible to the component
Running odo with args [odo component push --context /tmp/234650130]
[odo] Validation
[odo]  •  Checking component  ...
 ✓  Checking component [23ms]
[odo]
[odo] Configuration changes
[odo]  •  Retrieving component data  ...
[odo]  ✓  Added storage storage-2 to lfhyf
 ✓  Retrieving component data [37ms]
[odo]  •  Applying configuration  ...
 ✓  Applying configuration [35s]
[odo]
[odo] Applying URL changes
[odo]  ✓  URL example-1 already exists
[odo]  ✓  URL example-2: http://example-2-zgpbk-fgqbtmujjt.apps-crc.testing created
[odo]
[odo] Pushing to component lfhyf of type local
[odo]  •  Checking file changes for pushing  ...
 ✓  Checking file changes for pushing [169169ns]
[odo]  ✓  No file changes detected, skipping build. Use the '-f' flag to force the build.
Running odo with args [odo component delete -f --context /tmp/234650130]
[odo] This component has following urls that will be deleted with component
[odo] URL named example-1 with host example-1-zgpbk-fgqbtmujjt.apps-crc.testing having protocol http at port 8080
[odo] URL named example-2 with host example-2-zgpbk-fgqbtmujjt.apps-crc.testing having protocol http at port 8080
[odo] This component has following storages which will be deleted with the component
[odo] Storage storage-1 of size 1Gi
[odo] Storage storage-2 of size 1Gi
[odo]  •  Deleting component lfhyf  ...
 ✓  Deleting component lfhyf [220ms]
[odo]  ✓  Component lfhyf from application zgpbk has been deleted
Running oc with args [oc get routes --namespace fgqbtmujjt]
[oc] NAME              HOST/PORT                                     PATH   SERVICES      PORT   TERMINATION   WILDCARD
[oc] example-1-zgpbk   example-1-zgpbk-fgqbtmujjt.apps-crc.testing          lfhyf-zgpbk   8080                 None
[oc] example-2-zgpbk   example-2-zgpbk-fgqbtmujjt.apps-crc.testing          lfhyf-zgpbk   8080                 None

NAME              HOST/PORT                                     PATH   SERVICES      PORT   TERMINATION   WILDCARD
example-1-zgpbk   example-1-zgpbk-fgqbtmujjt.apps-crc.testing          lfhyf-zgpbk   8080                 None
example-2-zgpbk   example-2-zgpbk-fgqbtmujjt.apps-crc.testing          lfhyf-zgpbk   8080                 None
Deleting project: fgqbtmujjt
Running odo with args [odo project delete fgqbtmujjt -f]
[odo]  •  Deleting project fgqbtmujjt  ...
 ✓  Deleting project fgqbtmujjt [28s]
[odo]  ✓  Deleted project : fgqbtmujjt
Deleting dir: /tmp/234650130

• Failure [99.383 seconds]
odo sub component command tests
/home/adisky/go/src/github.com/openshift/odo/tests/integration/cmd_cmp_sub_test.go:13
  odo component delete should clean owned resources
  /home/adisky/go/src/github.com/openshift/odo/tests/integration/component.go:823
    should delete the component and the owned resources with wait flag [It]
    /home/adisky/go/src/github.com/openshift/odo/tests/integration/component.go:858

    Expected
        <string>: NAME              HOST/PORT                                     PATH   SERVICES      PORT   TERMINATION   WILDCARD
        example-1-zgpbk   example-1-zgpbk-fgqbtmujjt.apps-crc.testing          lfhyf-zgpbk   8080                 None
        example-2-zgpbk   example-2-zgpbk-fgqbtmujjt.apps-crc.testing          lfhyf-zgpbk   8080                 None

    not to contain substring
        <string>: example

    /home/adisky/go/src/github.com/openshift/odo/tests/helper/helper_oc.go:491
------------------------------
SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS

Summarizing 2 Failures:

[Fail] odo component command tests odo component delete should clean owned resources [It] should delete the component and the owned resources with wait flag
/home/adisky/go/src/github.com/openshift/odo/tests/helper/helper_oc.go:491

[Fail] odo sub component command tests odo component delete should clean owned resources [It] should delete the component and the owned resources with wait flag
/home/adisky/go/src/github.com/openshift/odo/tests/helper/helper_oc.go:491

Ran 2 of 170 Specs in 223.129 seconds
FAIL! -- 0 Passed | 2 Failed | 0 Pending | 168 Skipped
--- FAIL: TestIntegration (223.13s)
FAIL

Ginkgo ran 1 suite in 3m44.768249387s
Test Suite Failed

Thnaks @adisky for discussing it over BJN. As a discussion outcome what i found that, the validation is done for the storage sub string which is printed in StdOut (In this case it's "" because resource deleted successfully) and ofcourse as you metioned in the call we should not bother about the StdErr message, i agree.
Thanks @adisky for the clarification
Test looks good to me.
Approvers can you please have a look @girishramnani @kadel @cdrage

@amitkrout Thanks for the discussion and your inputs :)

/lgtm

/approve


@Superclass inheritance

It seems that requery is only recognizing the direct super class with the @Superclass annotation. Let's say you have these three classes
public abstract class A extends B {     @Column     int a; }
@Superclass public abstract class B extends C {     @Column     int b; }
@Superclass public abstract class C {     @Column     int c; }
The entity generated from A will only have the columns a and b but there will be no c.

Hi thanks for reporting. Looks like a bug only the parent class is considered. Should be fixed in the next update


Apt fix

Split up DEB package installation
Update to k8s v1.4.6 and use new repos with CF
Updated kismatic links to use CF

Messed up merging and this includes some other existing commits.

Closing and replacing by https://github.com/apprenda/kismatic/pull/136


Error parsing map()

First, thanks for all the hard work getting this far and having the code merged in with neovim!
This little snippet seems to have problems with map().  It is fine if either of lines two or three are commented out, and it is also fine if the parentheses are removed from the map.
a(
  x => 1,
  map({ $_ => $b->$_ } "a"),
);

"a"

thanks! i think i just didn't implement map with parens at all

ah, correction; i just wrongly assumed that parens would stop it from parsing as a block. Fix incoming


Error with make install (ranlib)

I am using checkinstall for installing the package from the latest github source.
Here is the output of an error.

Installing with make install...
========================= Installation results ===========================
Making install in common
make[1]: Entering directory '/home/user/xrdp/common'
make[2]: Entering directory '/home/user/xrdp/common'
make[2]: Nothing to be done for 'install-exec-am'.
/bin/mkdir -p '/usr/local/lib/xrdp'
/bin/bash ../libtool   --mode=install /usr/bin/install -c   libcommon.la '/usr/local/lib/xrdp'
libtool: install: /usr/bin/install -c .libs/libcommon.so.0.0.0 /usr/local/lib/xrdp/libcommon.so.0.0.0
libtool: install: (cd /usr/local/lib/xrdp && { ln -s -f libcommon.so.0.0.0 libcommon.so.0 || { rm -f libcommon.so.0 && ln -s libcommon.so.0.0.0 libcommon.so.0; }; })
libtool: install: (cd /usr/local/lib/xrdp && { ln -s -f libcommon.so.0.0.0 libcommon.so || { rm -f libcommon.so && ln -s libcommon.so.0.0.0 libcommon.so; }; })
libtool: install: /usr/bin/install -c .libs/libcommon.lai /usr/local/lib/xrdp/libcommon.la
libtool: install: /usr/bin/install -c .libs/libcommon.a /usr/local/lib/xrdp/libcommon.a
libtool: install: chmod 644 /usr/local/lib/xrdp/libcommon.a
libtool: install: ranlib /usr/local/lib/xrdp/libcommon.a
ranlib: could not create temporary file whilst writing archive: No more archived files
Makefile:407: recipe for target 'install-moduleLTLIBRARIES' failed
make[2]: *** [install-moduleLTLIBRARIES] Error 1
make[2]: Leaving directory '/home/user/xrdp/common'
Makefile:582: recipe for target 'install-am' failed
make[1]: *** [install-am] Error 2
make[1]: Leaving directory '/home/user/xrdp/common'
Makefile:427: recipe for target 'install-recursive' failed
make: *** [install-recursive] Error 1
****  Installation failed. Aborting package creation.

I googled for "checkinstall ranlib: could not create temporary file whilst writing archive", and it looks like a common problem not specific to xrdp.
I believe it's a permission problem. Did /usr/local/lib/xrdp exist prior to the install? Does the user running checkinstall have permissions to create files there?
Another possibility is that checkinstall is confused by static libraries being installed to a non-standard library directory. Please try configuring xrdp with ./configure --disable-static, recompiling it and installing it with checkinstall.
Please specify the distro version you are using and the version of checkinstall. It may help developers reproduce your problem.

It probably is a checkinstall problem, because installation went fine using "make install". Sometimes it can break an installation because of missing folder, it refuses to create it automatically even with elevated rights and I have to create it manually. In the meantime I have switched from Debian Jessie to Manjaro Linux so dealing with this problem is now obsolete. However, thank you for your answer.

Good to know. The issue can be closed now.

for anyone else that happens upon this thread who is using checkinstall
i had to give the user permissions to mkdir and dpkg-buildpackage like:
jenkins ALL=(ALL) NOPASSWD: /usr/bin/dpkg-buildpackage, /bin/mkdir

for a jenkins user with no password


iframe doesnt resize on window.resize, but on click inside iframe

HI,
my iframe resizes correct on page-load. but when you resize the window the iframe height stays the same. when I click inside the iframe the iframe heights is set to the correct height.
any idea why this doesn't happen on window.resize?
cheers,
ToM

Try version 4.0.4. Their was a bug that has been fixed.
--
Sent from my iPhone.


Security scan

conditionals added to azure pipeline .yml
now only using sonarcloud when pull request is merging to master

Run SonarCloud only on pull requests to master
Run SonarCloud less often to reduce build times for normal CI builds.


Fix Git’s handling of amend commits

See https://github.com/jtojnar/nonemast/blob/4cab5971c17b35335b6ff5480cbe96ba1f4e4f16/tests/test_autosquashing.py#L120-L130
git rebase --interactive --autosquash will produce the following todo:
pick 32964da Hello ; empty
squash 6be3cc3 squash! Hello ; empty
fixup -C de31e4f amend! Hello ; empty

Which in turn opens editor with the following commit message:
; This is a combination of 3 commits.
; This is the 1st commit message:

Hello

; This is the commit message #2:

; squash! Hello

foo

; This is the commit message #3:

; amend! Hello

bar

; Please enter the commit message for your changes. Lines starting
; with ';' will be ignored, and an empty message aborts the commit.
;
; Date:      Mon Aug 8 18:57:20 2022 +0200
;
; interactive rebase in progress; onto 26e6453
; Last commands done (3 commands done):
;    squash 6be3cc3 squash! Hello ; empty
;    fixup -C de31e4fb53394d2f527ab7c3ee49f63c65dabfcd amend! Hello ; empty
; No commands remaining.
; You are currently rebasing branch 'main' on '26e6453'.
;
;
; Initial commit
;
; No changes

Instead of discarding all the commit messages before #3 as one would expect.
We need to report it to Git developers or sent a patch to the ML.

Looks like the feature was introduced in<EMAIL_ADDRESS>so that’s where we need to look.


Update logrus to v1.0.1

Fixes case sensitivity issue.
See https://github.com/sirupsen/logrus#logrus-

Will re-open once some of the dependencies have been fixed

I am seeing the same vendor errors on master. It seems like our use of some vendored packages has changed, so we need to revendor those to delete unused subpackages and make vndr happy. Could you please do that in this PR?
I assume this change won't cause problems vendoring swarmkit into projects that still use big-S Sirupsen?

(Sorry, it's actually files that vndr wants to add. I can open a separate PR to do this if you prefer.)

@dmcgowan: Are you using the latest version of vndr? I remember having a similar problem when my copy was out-of-date.

@dmcgowan wrt bumping containerd to pickup the new case, with this PR merged onto #2299 the bump to alpha2 then alpha3 was pretty trivial (i.e. trivial enough you could just fold it in rather than create your own branch of containerd):
For the alpha2 update it is just s/WithNewRootFS/WithNewSnapshot/ in one place (diff here extracted from git show of the merge commit, so a bit more complex than the actual change):
diff --cc agent/exec/containerd/adapter.go
index b44f4f14,fd9ee819..08405381
--- a/agent/exec/containerd/adapter.go
+++ b/agent/exec/containerd/adapter.go
@@@ -283,3 -239,3 +283,3 @@@ func (c *containerAdapter) prepare(ctx
                containerd.WithSpec(spec),
--              containerd.WithNewRootFS(c.name, c.image))
++              containerd.WithNewSnapshot(c.name, c.image))
        if err != nil {
diff --cc vendor.conf
index 45c0cb12,8bd0a799..36cf7cd3
--- a/vendor.conf
+++ b/vendor.conf
@@@ -33,5 -33,5 +33,5 @@@ github.com/opencontainers/image-spec 87
  # containerd executor
- github.com/containerd/containerd df14b2c75b7eb7bbda9c9520faba6602a5060cf5 # v1.0.0-alpha1
 -github.com/containerd/containerd 70d8429b4096a8cd7843014e795207cdbc73d249 https://github.com/dmcgowan/containerd.git
 -github.com/containerd/fifo 69b99525e472735860a5269b75af1970142b3062
 -github.com/opencontainers/runtime-spec v1.0.0-rc5
++github.com/containerd/containerd 856b03843737a45ba1b8c1bf9558e44cabedb2e7# v1.0.0-alpha2
 +github.com/containerd/fifo fbfb6a11ec671efbe94ad1c12c2e98773f19e1e6
 +github.com/opencontainers/runtime-spec 4ffc6820f422b93b16e68681104c225c61b066c7 # v1.0.0
  golang.org/x/sync 450f422ab23cf9881c94e2db30cac0eb1b7cf80c

and for the alpha3 it is just s/TaskStatus/Status/ in one place (a normal diff this time):
diff --git a/agent/exec/containerd/adapter.go b/agent/exec/containerd/adapter.go
index 08405381..cacf2589 100644
--- a/agent/exec/containerd/adapter.go
+++ b/agent/exec/containerd/adapter.go
@@ -360,7 +360,7 @@ func (c *containerAdapter) wait(ctx context.Context) error {
 type status struct {
        ID         string
        Pid        uint32
-       Status     containerd.TaskStatus
+       Status     containerd.Status
        ExitStatus error
 }

diff --git a/vendor.conf b/vendor.conf
index 36cf7cd3..911b04dd 100644
--- a/vendor.conf
+++ b/vendor.conf
@@ -31,7 +31,8 @@ github.com/opencontainers/go-digest a6d0ee40d4207ea02364bd3b9e8e77b9159ba1eb
 github.com/opencontainers/image-spec 87998cd070d9e7a2c79f8b153a26bea0425582e5 # v1.0.0

 # containerd executor
-github.com/containerd/containerd 856b03843737a45ba1b8c1bf9558e44cabedb2e7# v1.0.0-alpha2
+github.com/containerd/containerd 0fa76584f8360345fdedccf4689ea1c8908a1f9d# v1.0.0-alpha3
+github.com/containerd/continuity 86cec1535a968310e7532819f699ff2830ed7463
 github.com/containerd/fifo fbfb6a11ec671efbe94ad1c12c2e98773f19e1e6
 github.com/opencontainers/runtime-spec 4ffc6820f422b93b16e68681104c225c61b066c7 # v1.0.0
 golang.org/x/sync 450f422ab23cf9881c94e2db30cac0eb1b7cf80c

Scratch branch at https://github.com/ijc/swarmkit/tree/containerd-logrus. The bump to alpha2 is actually in the merge. I tested the HEAD there briefly and it seemed to work ok.

what's the status on this one?

I believe it's superseded by #2345

Ah, thanks! Just hoping all of these PR's are merged before the next release is cut off, otherwise it may be messy 😅

Interesting that I can close pull requests but not merge.

I have the same; it's because of the way the "protected branches" are configured; IIRC, only "owners" are allowed to merge changes to master (I can edit comments, review PR's, close/open PR's and issues, but am not allowed to merge)


QA & Cert - Update Left-Hand Menu

As an ECMPS user, I want the left-hand menu for the application to be updated with additional options so that I can access the new QA & Certification Data module
Acceptance Criteria:
Given I access ECMPS
When I navigate to the left-hand menu
Then I see the available options updated according to the prototype provided (both the Global-View and the Workspace)
Note: The 3 options available under QA & Certifications are expanded by default and remain so at all times
Prototype for Reference (Use screen 3 of 14):
https://xd.adobe.com/view/c103c998-65ff-432a-b1f9-c586ebbceafa-9450/

Test Case:
TC667

Test Passed


Ability to provide a test timeout for every test in a session.

Description
Currently the timeout for a test is only an attribute apply-able on a test method in code. This cannot be changed without a rebuild of the test code. This request is to add a configurable timeout for each test in a session. This can be achieved via an additional setting in the runsettings section for the adapter like below:
<Runsettings>
   <MSTest>
      <TestTimeout>2000</TestTimeout>
   </MSTest>
</Runsettings>

So when the above runsettings is provided in a session, every test in that session can run for a maximum of 2000 milliseconds.

Few spec questions before implementing this:

What would happen if a test has its own timeout defined via the Timeout attribute? Which takes precedence?
All tests running in a session would now become time bound. Can/should a test opt-out?
/cc @pvlakshm

the attribute closest to the method will win.
if a method wants to, it can set a custom time out for itself.

It looks like this is just about done in #403. So look forward to NuGet 1.3.0 to have it?

@AdamDotNet Can confirm this is present in 1.3.2 at least, docs still don't reflect it though.

@IanKemp It was release in 1.3.0 version. Documented here.


data-inputmask-casing not run with mask "*"

Hi, data-inputmask-casing not run with mask "*".
The values not changed to upper case.
<input ...
data-inputmask-mask="..***[.999]"
data-inputmask-casing="upper"
/>

@mbraz ,
The casing is at the definition level and not as a general parameter.
But I will add such functionality.

Thanks Robin!!
Enviado do meu iPhone 4S

Em 5 de ago de 2016, às 19:38, Robin Herbots<EMAIL_ADDRESS>escreveu:
@mbraz ,
The casing is at the definition level and not as a general parameter.
But I will add such functionality.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.

This is fixed.


Little bug in context resolving order

I'm trying to inject MonoBehaviour "Foo" to some GameObject in GameObjectContext.
This class "Foo" uses class "Bar" which binded by some installer in SceneContext.
When method injection of "Foo" called, I got class "Bar" which is not propery member injected.
What I figured out is, Bar's method injection called after Foo's method injection, so Bar was not properly initialized.
I think this is bug, am I right? ;(

Yes, Zenject should guarantee that objects that are injected have already themselves been injected. The only case where this might not work is when there is a circular dependency.  I just tried reproducing what you described and found that Bar is correctly injected before Foo.  If you aren't aware of any circular dependencies, can you try reducing it down to a minimal example to show the issue?

I can reproduce it here with 7.3.1 in a clean project.
ZenjectOrder.zip

@AliveDevil Thanks for the nice example.   This was fixed earlier today with commit c55f3e27d131b6a0c0c3b68dde2cfd328462d309.   I think this bug was introduced with some recent optimized prior to 7.3.1 release

I confirmed the fix with your project, so if you update directly from source it should fix it for you too


Two issues on Windows - reflect-metadata missing and client app crash

There's two issues with windows.

webpack complained that it couldn't find reflect-metadata. I removed the import of reflect-metadata and then webpack completed without errors. I have no idea if this is correct fix.

The counter's increment button isn't working. Turns out the issue is that precache from server is displaying pages, gives illusion of working, but client app crashes. This can be proven if you remove precache from  tag and run. "Loading..." appears but the webpages are never shown. I have no idea what's broken. Maybe related to first issue?

Works fine using Ubuntu 16.04.

I was having both these issues, but after I added "reflect-metadata" to the "dependencies" under package.json, both issues were resolved.

Adding the import 'reflect-metadata' to boot-client.ts resolved the issue for me but only when compiling and running from VS2015. If I pop out to a cmd prompt and run > dotnet run I still get the following error. This is also what breaks the counter page.
Error: Cannot find module "reflect-metadata"
/dist/main.js?v=NRyF4xz17BbBUvE2kfFqr5de-qY0BPjRSvLL1hWLrAk:1
boot-client.ts:
require('zone.js');
import 'bootstrap';
import 'reflect-metadata';
import './styles/site.css';

@tsmith-sdm I presume you meant adding the "reflect-metadata" to the "dependencies" under package.json, as @BradRem suggested?  My boot-client.ts was correct out of the box, and I didn't need to add anything to it.  I did have to do what @BradRem suggested, and as you stated, it only works when run from Visual Studio, and continues to fail when run from the command line.

I'm pretty sure this is the same as #239 (and also mentioned in #82). reflect-metadata doesn't get installed properly on Windows if you're on NPM 2.x. You need NPM 3.x (as per docs).
Note that just having installed NPM 3.x on your Windows machine doesn't mean that Visual Studio will use it, since VS has its own private copy of Node/NPM that it uses. Getting VS to use NPM 3.x is a bit more involved - see the "A FIX" heading on http://www.hanselman.com/blog/VisualStudio2015FixingDependenciesNpmNotInstalledFromFseventsWithNodeOnWindows.aspx
If anyone's definitely on NPM 3.x (both when running from command line, and from VS, which has to be set up differently) and still gets this, please re-open!


[start-vercel] Update to Vercel Build Output API v3

This PR updates the solid-start-vercel adapter module to output the Vercel Build Output API v3 format, which is the successor of the currently implemented v2 File System API.

Thank you!


Possible Typo in A2C documentation

Describe the bug
The following lines,
python -m stable_baselines.ppo2.run_atari
runs the algorithm for 40M frames = 10M timesteps on an Atari game. See help (-h) for more options.
python -m stable_baselines.ppo2.run_mujoco
runs the algorithm for 1M frames on a Mujoco environment.

Shouldn't that line be a2c instead of ppo2?

Hello,
I think this will be fixed in https://github.com/hill-a/stable-baselines/pull/269 , thanks for pointing out the issue.

Sorry! I should have checked if a PR existed for it!


fix documentation -> /v1/..

Documentation fix :)

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.Rod seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.


Question: #locals and hidden variables

@enebo this is fixed in the most recent version of prism, def foo(...); end adds *, &, and ....
Overall these locals are there so that the parser can know when bar(*) is allowed (if you're within a context where * is in the local table or not). So either way, I need these in the C API. I might be okay with hiding them from the Java/Ruby API, but I do think it's nice to be able to tell in some methods where you can use * or &.

https://github.com/ruby/prism/issues/1737#issuecomment-1779575101
After the discussion in https://github.com/ruby/prism/issues/1737 there are some issues left that aren't clear to me.

if hidden *, & etc variables are needed for forwarding only - it makes sense for methods declaration and doesn't for blocks/lambda (because forwarding doesn't work within Proc), but BlockNode#locals still contain the hidden variables

bin/parse -e 'proc { |*| }'
@ ProgramNode (location: (1,0)-(1,12))
├── locals: []
└── statements:
    @ StatementsNode (location: (1,0)-(1,12))
    └── body: (length: 1)
        └── @ CallNode (location: (1,0)-(1,12))
            ├── receiver: ∅
            ├── call_operator_loc: ∅
            ├── message_loc: (1,0)-(1,4) = "proc"
            ├── opening_loc: ∅
            ├── arguments: ∅
            ├── closing_loc: ∅
            ├── block:
            │   @ BlockNode (location: (1,5)-(1,12))
            │   ├── locals: [:*]
            │   ├── parameters:
            │   │   @ BlockParametersNode (location: (1,7)-(1,10))
            │   │   ├── parameters:
            │   │   │   @ ParametersNode (location: (1,8)-(1,9))
            │   │   │   ├── requireds: (length: 0)
            │   │   │   ├── optionals: (length: 0)
            │   │   │   ├── rest:
            │   │   │   │   @ RestParameterNode (location: (1,8)-(1,9))
            │   │   │   │   ├── name: ∅
            │   │   │   │   ├── name_loc: ∅
            │   │   │   │   └── operator_loc: (1,8)-(1,9) = "*"
            │   │   │   ├── posts: (length: 0)
            │   │   │   ├── keywords: (length: 0)
            │   │   │   ├── keyword_rest: ∅
            │   │   │   └── block: ∅
            │   │   ├── locals: (length: 0)
            │   │   ├── opening_loc: (1,7)-(1,8) = "|"
            │   │   └── closing_loc: (1,9)-(1,10) = "|"
            │   ├── body: ∅
            │   ├── opening_loc: (1,5)-(1,6) = "{"
            │   └── closing_loc: (1,11)-(1,12) = "}"
            ├── flags: ∅
            └── name: :proc

declaring ... parameters leads to adding *, & and ... hidden variables but not ** (don't know why ... in locals could be useful but OK). So I am wondering whether missing ** is intentional and we can rely on this behaviour:

bin/parse -e 'def foo(...)end'
@ ProgramNode (location: (1,0)-(1,15))
├── locals: []
└── statements:
    @ StatementsNode (location: (1,0)-(1,15))
    └── body: (length: 1)
        └── @ DefNode (location: (1,0)-(1,15))
            ├── name: :foo
            ├── name_loc: (1,4)-(1,7) = "foo"
            ├── receiver: ∅
            ├── parameters:
            │   @ ParametersNode (location: (1,8)-(1,11))
            │   ├── requireds: (length: 0)
            │   ├── optionals: (length: 0)
            │   ├── rest: ∅
            │   ├── posts: (length: 0)
            │   ├── keywords: (length: 0)
            │   ├── keyword_rest:
            │   │   @ ForwardingParameterNode (location: (1,8)-(1,11))
            │   └── block: ∅
            ├── body: ∅
            ├── locals: [:*, :&, :"..."]
            ├── def_keyword_loc: (1,0)-(1,3) = "def"
            ├── operator_loc: ∅
            ├── lparen_loc: (1,7)-(1,8) = "("
            ├── rparen_loc: (1,11)-(1,12) = ")"
            ├── equal_loc: ∅
            └── end_keyword_loc: (1,12)-(1,15) = "end"

* is ambiguous when both * and ... are declared and forwarding probably should rely not on locals only but on ParametersNode instead (what makes locals not so useful for forwarding):

bin/parse -e 'def foo(*, ...)end'
@ ProgramNode (location: (1,0)-(1,18))
├── locals: []
└── statements:
    @ StatementsNode (location: (1,0)-(1,18))
    └── body: (length: 1)
        └── @ DefNode (location: (1,0)-(1,18))
            ├── name: :foo
            ├── name_loc: (1,4)-(1,7) = "foo"
            ├── receiver: ∅
            ├── parameters:
            │   @ ParametersNode (location: (1,8)-(1,14))
            │   ├── requireds: (length: 0)
            │   ├── optionals: (length: 0)
            │   ├── rest:
            │   │   @ RestParameterNode (location: (1,8)-(1,9))
            │   │   ├── name: ∅
            │   │   ├── name_loc: ∅
            │   │   └── operator_loc: (1,8)-(1,9) = "*"
            │   ├── posts: (length: 0)
            │   ├── keywords: (length: 0)
            │   ├── keyword_rest:
            │   │   @ ForwardingParameterNode (location: (1,11)-(1,14))
            │   └── block: ∅
            ├── body: ∅
            ├── locals: [:*, :&, :"..."]
            ├── def_keyword_loc: (1,0)-(1,3) = "def"
            ├── operator_loc: ∅
            ├── lparen_loc: (1,7)-(1,8) = "("
            ├── rparen_loc: (1,14)-(1,15) = ")"
            ├── equal_loc: ∅
            └── end_keyword_loc: (1,15)-(1,18) = "end"

My quick takes:
For 1 I think this is just convenient because we will emit a recv in runtimes for a rest but arguably if we do not forward or can access that rest reflectively we probably should not be storing it anywhere.
For 2 @andrykonchin I also thought when @kddnewton said ... he actually meant **.
For 3 is this new syntax for Ruby 3.3?  It is invalid for 3.2.

For 3 is this new syntax for Ruby 3.3? It is invalid for 3.2.

Oh, you are right. My bad. I haven't checked in Ruby, only with Prism (and Prism doesn't emit any syntax error).

2. declaring `...` parameters leads to adding `*`, `&` and `...` hidden variables but not `**` (don't know why `...` in locals could be useful but OK). So I am wondering whether missing `**` is intentional and we can rely on this behaviour:

I think this is because ... on CRuby is implemented/desugared as *, & + ruby2_keywords on the method definition.
But that's a CRuby implementation detail leaking to Prism, I think that's not good.
So I think ... should not be "desugared" by Prism, because the desugaring is implementation-specific (e.g. we desugar to *, **, & on TruffleRuby). i.e. it should remain as ... and nothing else.

Yeah I got some stuff wrong here for sure.

if hidden *, & etc variables are needed for forwarding only - it makes sense for methods declaration and doesn't for blocks/lambda (because forwarding doesn't work within Proc), but BlockNode#locals still contain the hidden variables

That was just a bug - those are no longer in the list. For some reason I had convinced myself that def foo(...) = bar(*) was allowed, but clearly it isn't.

declaring ... parameters leads to adding *, & and ... hidden variables but not ** (don't know why ... in locals could be useful but OK). So I am wondering whether missing ** is intentional and we can rely on this behaviour:

This was actually part of the same assumption, which was also wrong. Going forward, we're only going to put ... into the locals table, since that's the only thing that is allowed to be forwarded.

is ambiguous when both * and ... are declared and forwarding probably should rely not on locals only but on ParametersNode instead (what makes locals not so useful for forwarding):

This was another bug made by incorrect assumptions.
All of this should be fixed by #1800.


Add Daily Save picture

Able to save picture when picture not exist in directory
this ability is useful for web developers
thank's for script

Thanks for your PR. Unfortunately I don't see the point of modifying the README like you've suggested. It's just a small example and doesn't need to be expanded this way in my opinion.

yes i agree
maybe because i was trying to find some script like this ,but i didn't find but it's worked
thank you so much


improve notification framework

closes #989
todo for the scope of this PR:

[x] created_at for notifications, sort by this for web and notification sending
[x] fix event_detail URL for nonlocal participants
[x] proper design for views
[x] discuss: how to track read from mails
[x] db lock?
[x] migration of preferences for notification type?
[ ] tests

coverage: 87.547% (-0.6%) from 88.189%
when pulling 06cb458cc24853e002fc0430448c2e2d467f0ad2 on notification-improvements
into e814a20ec17398529f051dfa41f91ed97d3c326f on main.


Store data in sqlitedb to reduce memory usage

This could easily fill up the db so care must be taken


⚠ Nano has degraded performance

In 39945f5, Nano (https://nano.shuttleapp.rs/up) experienced degraded performance:

HTTP code: 0
Response time: 0 ms

Resolved: Nano performance has improved in d41e3b3 after 27 minutes.


[Request] Update to 1.21 if possible

I am currently playing around with a 1.21 skyblock and would like to include Ex Machinis. Ex Deorum is currently updated and it would be nice to have this available.

I will start working on this but may take some time


404 page done

I thought I had write access? Who removed me?

I thought I had write access? Who removed me?

Ill readd


[SPARK-10257][MLlib] Removes Guava from all spark.mllib Java tests

Replaces instances of Lists.newArrayList with Arrays.asList
Replaces commons.lang.StringUtils over com.google.collections.Strings
Replaces List interface over ArrayList implementations

This PR along with #8445 #8446 #8447 completely removes all com.google dependencies within mllib's Java tests.

Merged build triggered.

Merged build started.

Test build #41591 has started for   PR 8451 at commit a9b8b7a.

Test build #41591 has finished for   PR 8451 at commit a9b8b7a.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder/41591/
Test FAILed.

Merged build triggered.

Merged build started.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder/41601/
Test FAILed.

jenkins test this please

Merged build triggered.

Merged build started.

Test build #41603 has started for   PR 8451 at commit 71757ca.

Test build #41603 has finished for   PR 8451 at commit 71757ca.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder/41603/
Test PASSed.

Lists.newArrayList -> Arrays.asList look good to me. But I don't see why we need to replace Strings by StringUtils from commons-lang. Are we going to remove Guava from test scope? I think Guava is more careful about binary compatibility than Apache Commons. + @srowen

Overall I'm in favor of this. I was actually preparing a PR that touches up a load of small issues like this in the Java test suites; a lot of the code can be slimmed down, simplified and standardized.

OK, I will revert the changes s.t. we use Guava Strings over commons lang

The other sibling PRs look good and I can merge them. This looks good after the Strings change.

Whoops forgot to push the last commit, the Strings and default list size should be there now

Merged build triggered.

Merged build started.

Test build #41701 has started for   PR 8451 at commit 0695e51.

Test build #41701 has finished for   PR 8451 at commit 0695e51.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder/41701/
Test PASSed.


[AMO-132970] - Added namespaces for advertising cloud onboarding to AEP

Please link to the issue #…

@cmathis @prabhum2


Update README.md

Updated the Readme with current instructions, regarding composer update and gave instructions for file location.

@Gregg-Hendrix I'd actually like to stage this documentation change for the 4.x release. This will become the new default branch for this repository when ready. Can you update this line to say 4.x instead of 2.x ??

@callinmullaney Thank you Callin! It has now been changed :)

:tada: This PR is included in version 4.1.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Possible to configure nginx subfolder?

Is it possible to configure clipface on a subfolder? It works great if it place in the root location block in my nginx config, but if I try to do it on a subfolder I get 404 errors.
something like /clips instead of the root?:
location /clips {
proxy_pass http://clipface/;
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_connect_timeout 3s;
proxy_send_timeout 10s;
proxy_read_timeout 300s;
client_max_body_size 100m;
}

Good point, that's a really useful feature. It should also be pretty trivial to implement.

I managed to forward it to a custom URL path using reverse proxy but it got confused once we get there cause all of the clips path is /watch
I guess there needs to be a parameter that converts every subsequent URL to be behind the existing custom URL. I might be talking nonsense anw, it's my first time using a reverse proxy lol.


Test New LLMs (Llama2, CodeLlama, etc.) on Aider?

Hi @a7t0fwa7,
Notice you forked Aider. if you're trying to test other LLMs (codellama, wizardcoder, etc.) with it, I just wrote a 1-click proxy to translate openai calls to huggingface, anthropic, togetherai, etc. api calls.
code
$ pip install litellm

$ litellm --model huggingface/bigcode/starcoder

#INFO:     Uvicorn running on http://<IP_ADDRESS>:8000

$ aider --openai-api-base http://<IP_ADDRESS>:8000

I'd love to know if this solves a problem for you

Hi @a7t0fwa7,
Notice you forked Aider. if you're trying to test other LLMs (codellama, wizardcoder, etc.) with it, I just wrote a 1-click proxy to translate openai calls to huggingface, anthropic, togetherai, etc. api calls.
code
$ pip install litellm

$ litellm --model huggingface/bigcode/starcoder

#INFO:     Uvicorn running on http://<IP_ADDRESS>:8000

$ aider --openai-api-base http://<IP_ADDRESS>:8000

I'd love to know if this solves a problem for you

Thanks mate I will give it a try and let you know

Thanks @a7t0fwa7 - was testing new llms a problem for you before?


white screen on iOS device

Hi all,
I have the following problem when I run my app from an iOS device it stays on the white screen.
flutter doctor -v
[✓] Flutter (Channel stable, v1.5.4-hotfix.2, on Mac OS X 10.14.5 18F132, locale es-PE)
    • Flutter version 1.5.4-hotfix.2 at /Users/idkc/Documents/development/flutter
    • Framework revision 7a4c33425d (hace 9 semanas), 2019-04-29 11:05:24 -0700
    • Engine revision 52c7a1e849
    • Dart version 2.3.0 (build 2.3.0-dev.0.5 a1668566e5)

[✓] Android toolchain - develop for Android devices (Android SDK version 28.0.3)
    • Android SDK at /Users/idkc/Library/Android/sdk
    • Android NDK location not configured (optional; useful for native profiling support)
    • Platform android-28, build-tools 28.0.3
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1343-b01)
    • All Android licenses accepted.

[✓] iOS toolchain - develop for iOS devices (Xcode 10.2.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 10.2.1, Build version 10E1001
    • ios-deploy 1.9.4
    • CocoaPods version 1.7.2

[✓] Android Studio (version 3.4)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin version 35.2.1
    • Dart plugin version 183.6270
    • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1343-b01)

[✓] Connected device (3 available)
    • Android SDK built for x86 • emulator-5554                            • android-x86 • Android 9 (API 28) (emulator)
    • iPad de Manuel            • 40aa1e05d**********************************     • ios         • iOS 11.4
    • iPhone Xʀ                 • A621FE58-9594-43E6-B409-6A03DD3D24F1     • ios         • com.apple.CoreSimulator.SimRuntime.iOS-12-2
      (simulator)

• No issues found!

when I try it from:

Android studio with android device emulator works
Android studio with iOS device emulator works(iPhone X, iPad)
xCode with iOS emulator works(iPhone X, iPad)
xCode with iOS device does not work(iPad)

in the console, I get the following error
dyld: Library not loaded: @rpath/Flutter.framework/Flutter
  Referenced from: /var/containers/Bundle/Application/6D33BF57-BFD2-4666-9CDA-DCE9E1C48D24/Runner.app/Runner
  Reason: no suitable image found.  Did find:
	/private/var/containers/Bundle/Application/6D33BF57-BFD2-4666-9CDA-DCE9E1C48D24/Runner.app/Frameworks/Flutter.framework/Flutter: code signing blocked mmap() of '/private/var/containers/Bundle/Application/6D33BF57-BFD2-4666-9CDA-DCE9E1C48D24/Runner.app/Frameworks/Flutter.framework/Flutter'
(lldb)

Thinking something was wrong in my code, I decided to try the flutter example app, getting the same result.
I hope someone can help me.

Already solved.
In resumen, the same project will test it in another macbook of a friend and if it worked without problems. We tried everything but the solution was to format the macbook and install everything again :(


Struggling with data loading before render

I'm struggling with ensuring data loading before render. I thought I had solved my problem as everything worked fine in DEV, but when I deploy:prod childroutes break. I need to load 4 json (pages, posts, jobs) files before anything renders. Works fine if I go to "/" first. BUT, if I go to "/about" first, I get errors that wouldn't happen if the data was loaded first.
This works fine for "/" but not childroutes...
src/routes/index.js
import CoreLayout from '../layouts/CoreLayout'
import Home from './Home'
import { injectReducer } from '../store/reducers'

export const createRoutes = (store) => ({
	path		: '/',
	component	: CoreLayout,
	indexRoute	: require('./Home').default(store),
	onEnter		: (nextState, replaceState, callback) => {
		store.dispatch({type: 'GET_JSON_DATA', cb: callback})
	},
	getChildRoutes (location, cb) {
		require.ensure([], (require) => {
			cb(null, [
				require('./About').default(store),
				require('./Advertise').default(store),
				require('./Blog').default(store),
				require('./Contact').default(store),
				require('./Contributor').default(store),
				require('./Download').default(store),
				require('./G4e').default(store),
				require('./Into').default(store),
				require('./IntoItem').default(store),
				require('./Jobs').default(store),
				require('./Press').default(store),
				require('./PrivacyPolicy').default(store),
				require('./ProfileGuidelines').default(store),
				require('./StyleGuide').default(store),
				require('./TermsOfService').default(store),

			])
		})
	}

})

export default createRoutes

I even tried this to no avail
src/main.js
import React, { Component, PropTypes } from 'react'
import { browserHistory, Router } from 'react-router'
import { Provider } from 'react-redux'

class AppContainer extends Component {
  static propTypes = {
    routes : PropTypes.object.isRequired,
    store  : PropTypes.object.isRequired
  }

  shouldComponentUpdate () {
    return true
  }

  render () {
    const { routes, store } = this.props

    return (
      <Provider store={store}>

          <Router history={browserHistory} children={routes}  onEnter={(nextState, replaceState, callback) => {store.dispatch({type: 'GET_JSON_DATA', cb: callback})}}/>

      </Provider>
    )
  }
}

export default AppContainer

Please help me, davezuko/react-redux-starter-kit. you're my only hope!!! seriously, I could be fired if I don't solve this soon.

@carlwelchdesign Have you tried loading data on: componentWillMount(){}? Thats my aproach to loading data on route enter, I had the same problem as you by loading data on the onEnter method of the route. I solved it by moving the fetching to the component, as it makes sure data is loaded before rendering itself, and so far its working amazingly.

Thanks @albertovilva, but how do you register a call back to let componentWillMount() know that you've loaded all your data into the store?

I ended up doing this. Seems to work:
import React, { Component, PropTypes } from 'react'
import { browserHistory, Router } from 'react-router'
import { Provider } from 'react-redux'

class AppContainer extends Component {
	static propTypes = {
		routes : PropTypes.object.isRequired,
		store  : PropTypes.object.isRequired,
		loaded : PropTypes.bool.isRequired,
	}

	componentWillMount = (nextState, replace, callback) => {
		this.setState({loaded : false})
		const { routes, store } = this.props
		store.dispatch({type: 'GET_JSON_DATA', cb: this}) <--- include 'this' so I can call isLoaded() from my data-service actions
	}

	isLoaded(){
		console.log('isLoaded')
		this.setState({loaded: true})
	}

	shouldComponentUpdate () {
		return true
	}

	render () {
		const { routes, store } = this.props
		if(this.state.loaded){
			return (
				<Provider store={store}>

						<Router history={browserHistory} children={routes}/>

				</Provider>
			)
		}else{
			return

		}
	}
}

export default AppContainer

and in my data-service actions:
....
return axios.all([getPosts(), getPages(),getJobs()])
				.then(axios.spread(function (posts, pages, jobs) {
					console.log('STORE LOADED')
					action.cb.isLoaded() <-- I call the function isLoaded() in AppContainer.js
				}));
...


Fixes RedisCluster constants deprecation in PHPRedis 6.

When deploying a project which uses Tenancy for Laravel to Laravel Vapor using PHP 8.3 runtime (which uses PHPRedis 6) and a Redis cluster, the following error occurs:
Undefined constant RedisCluster::OPT_PREFIX
As detailed in this Laravel merged PR:
https://github.com/laravel/framework/pull/48362

The PHPRedis library removed RedisCluster:: constants since 6.0.0.  (...)
The author of PHPREDIS recommends not using the constants of RedisCluster anymore but using the constants in Redis instead (...)

This PR changes the use of $client:: (which can lead to the mentioned error when working with PHPRedis 6 and a Redis cluster) for constants to \Redis::.
Also, as stated in the Laravel PR mentioned above:

This is backward compatible since the underlying values of these constants are the same, so it will still work for older phpredis versions

Thanks for the PR! Implemented this in v4 the exact same way.

Thanks for merging it so fast!


DX-4 Add docs for standards-based profile maintenance

These patches add a top-level README and make some minor editorial changes to the existing READMEs.

This patch does not include anything yet for the iOS-AppAuth example, as I worked on it concurrently. I'll keep DX-4 open for that even when this patch is approved and merged.

Thanks, Jake and Konstantin, for your reviews.


Added 2 files

Please Review my PR
I have added both the files

@Megha0606 add   .ipynb files  not .py

Okay I'll make changes and upload again

Please Review my PR

@Megha0606 ur files are mot loading ,,,

reupload it.

Okay I'll do


Consider changing from MIT to EUPL license

@ccsr has recommended we switch to the EUPL license. The APInf platform is also licensed under EUPL.
https://tldrlegal.com/license/mit-license
https://tldrlegal.com/license/european-union-public-licence

If we change the license here, we should probably change it in openapi-space at the same time.

We've (again) decided to keep the license same.


chore: Update network config

Description

Updated testnet url to new format
Changed Rootstock testnet paymaster to new one
Replaced Mantle testnt (Goerli / deprecated) with Mantle Sepolia
Removed Klaytn testnet
Added Amoy testnet

Types of changes
What types of changes does your code introduce?

[ ] Bugfix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] Documentation Update
[ ] Code style update (formatting, renaming)
[ ] Refactoring (no functional changes, no api changes)
[ ] Build related changes
[x] Other (please describe): config changes

Further comments (optional)

@arddluma You might need to change the version number in package.json as well

@arddluma You might need to change the version number in package.json as well

I don't think there is a need as it is just configuration changes, wdyt ?


Cannot rename restored database to original database name

This does not work - Azure will not let you create reuse a database name or create a new database with the same name because of the retention on the original database:
If you want the restored database to be a replacement for the original database, you should specify the original database's compute size and service tier. You can then rename the original database and give the restored database the original name by using the ALTER DATABASE command in T-SQL.
If you restore a database, rename the original database, and then try to rename the new database with the name of the original database, or create a new database with the name of the original database, you will receive the following error: "A database with the same name already exists on this server."
Document Details
⚠ Do not edit this section. It is required for learn.microsoft.com ➟ GitHub issue linking.

ID: 1357a5f7-2e8e-9aab-5bc9-3a61f1a07f4f
Version Independent ID: 47497fe4-d8ab-87fc-3ca0-b46bbddb25f8
Content: Restore a database from a backup - Azure SQL Database
Content Source: azure-sql/database/recovery-using-backups.md
Service: sql-database
Sub-service: backup-restore
GitHub Login: @SudhirRaparla
Microsoft Alias: nvraparl

@JimSavage-hpg
Thanks for your feedback! We will investigate and update as appropriate.

@JimSavage-hpg  - Restore a database -> Rename the original database -> Rename the restored database to the original database name actually works.
Can you please share the exact steps you followed to rename the restored database to original database? Including the client through which you executed the commands?

Hi @JimSavage-hpg , thanks for contacting Microsoft! The scenario you're describing should work. As such, if you're encountering an issue, please either open a support ticket to investigate this further, or engage the community for further assistance.
I'll go ahead and close out this Git Issue since the documentation is currently correct but please feel free to comment should you need anything further.
Thanks again for reaching out and I hope you have a wonderful rest of your day!
Masha from the SQL Docs team
#please-close


Web - Chat - Message edits dont reflect in multiple devices in real time

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:

Login a single account into 2 devices (or use 2 browser tabs)
Go to the same chat and set the same message to edit mode
From device A, change the message draft
Notice in device B, the changed draft in not reflected
For context, message edit drafts are reflected in multiple devices in slack

Expected Result:
Edit drafts should be reflected b/w devices
Actual Result:
Edit drafts are not reflected b/w devices
Workaround:
Unknown
Platforms:

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

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

Version Number:  v1.3.55-0
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://github.com/Expensify/App/assets/115492554/ddf6f7a5-9d34-4bb8-992c-820041cbb57b
https://github.com/Expensify/App/assets/115492554/fffa3eda-facf-4bc4-b8b2-90744fb79d48
Expensify/Expensify Issue URL:
Issue reported by: @huzaifa-99
Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1691393656563719
View all open jobs on GitHub

Proposal From: @huzaifa-99
Proposal
Please re-state the problem that we are trying to solve in this issue.
We want the message edit drafts to be reflected b/w devices (just like slack)
What is the root cause of that problem?
We set the draft once on ReportActionItemMessageEdit mount here. When we update the draft from device B it wont reflected in device A.
What changes do you think we should make in order to solve the problem?
We should update the draft message whenever props.draftMessage or props.action change by using a useEffect and update the draft just like we set here
// this is just pseudocode
useEffect(() => {
    // the same as we do initially (setDraft initially)
    setDraft(() => {
        if (props.draftMessage === props.action.message[0].html) {
            // We only convert the report action message to markdown if the draft message is unchanged.
            const parser = new ExpensiMark();
            return parser.htmlToMarkdown(props.draftMessage).trim();
        }
        // We need to decode saved draft message because it's escaped before saving.
        return Str.htmlDecode(props.draftMessage);
    })
},[props.draftMessage, props.action])

Result
https://github.com/Expensify/App/assets/68777211/75aa252c-bae2-4ea5-a59d-82b46743041d

#### An important consideration
We set the draft to the original message [here](https://github.com/Expensify/App/blob/4230f289341c8d6d9a8b780d54da0725d4764b2b/src/pages/home/report/ReportActionItemMessageEdit.js#L193) whenever we clear the draft message.
Since now we are listening to the onyx draft changes, whenever we clear the component draft (i.e draft state value), the original message will be set as the draft from the useEffect i suggested above. If we want to solve this we can do these things
- Option A- Update the useEffect i suggested above to not update the component draft state value whenever we clear the draft (which will use the original message value), but in this case we will have to set the original value.
- Option B- We can use some kind of placeholder value (maybe something like `__FAKE__`) instead of setting the draft to original message [here](https://github.com/Expensify/App/blob/4230f289341c8d6d9a8b780d54da0725d4764b2b/src/pages/home/report/ReportActionItemMessageEdit.js#L193), and in use effect, we can check if the value is a placeholder (i.e `__FAKE__`) and if it is we will set the draft to empty string `''`.  This is necessary because we cannot set the draft [here](https://github.com/Expensify/App/blob/4230f289341c8d6d9a8b780d54da0725d4764b2b/src/pages/home/report/ReportActionItemMessageEdit.js#L193) to empty string because it will make [this](https://github.com/Expensify/App/blob/4230f289341c8d6d9a8b780d54da0725d4764b2b/src/pages/home/report/ReportActionItem.js#L324) condition `false` and we will be out of edit mode. If we go with this option, we will have to use the placeholder and in useEffect add this condition `if(props.draftMessage === '__FAKE__') return ''`
**Optional**
We can remove the original state value setting, since we will can `useEffect`
### What alternative solutions did you explore? (Optional)
N/A

This is not a bug. Drafts aren't stored on the back-end for now and are local to a given device-only.

We could, but I don't think it's particularly important that we do. I'm not sure if it's a real problem that a user would face, so I'd rather not treat it as a bug unnecessarily.


Cannot set web ui port

hi, how to set the default port of web ui, my default port 9090 has been used! thx

See -web.listen-address


AttributeValue conversion in aws_sdk macro not working correctly.

I tested the sample code. aws_sdk_dynamodb::model::AttributeValue <-> serde_dynamo::AttributeValue conversion fails (in both directions). Here's the simpler to_item code but from_item fails similarly:

the trait From<serde_dynamo::AttributeValue> is not implemented for aws_sdk_dynamodb::model::AttributeValue

Image for context

Cargo.toml
[package]
name = "farm"
version = "0.1.0"
edition = "2021"

[dependencies]
aws-config = "0.48.0"
aws-sdk-dynamodb = "0.18"
serde = { version = "1.0", features = ["derive"] }
serde_dynamo = { version = "4.0.8", feature = ["aws-sdk-dynamodb+0_18"] }
serde-aux = "4"
serde_json = "1.0"
# additional deps
cached = "0.34"
cadence = "0.29"
chrono = "0.4"
deadpool-redis = { path = "../deadpool-redis-cluster" }
farm_derive = { path = "../farm_derive" }
futures = "0.3"
futures-util = { version = "0.3", default-features = false }
http = "0.2.5"
openssl = "0.10"
opentelemetry = { version = "0.17", features = ["rt-tokio", "metrics", "trace"] }
redis = { version = "0.21.6", features = ["tokio-comp", "cluster", "connection-manager"] }
redis_cluster_async = "0.7"
scylla = { version = "0.4" , features = ["ssl"] }
thiserror = "1.0"
tokio = "1.17"
tracing = "0.1"

Code: (Note: AttributeValue is aws_sdk_dynamodb::model::AttributeValue)
use aws_sdk_dynamodb::model::AttributeValue;
use aws_sdk_dynamodb::{
    Client, Endpoint, Error, output::GetItemOutput, config::Builder,
    client::fluent_builders::GetItem, types::SdkError, error::GetItemError,
};
use serde::{Deserialize, Serialize};
use serde_dynamo;
use serde_dynamo::{from_item, to_item, from_attribute_value, to_attribute_value};

#[cfg(test)]
mod tests {
    #[test]
    fn demo_to_item() {
        #[derive(Clone, Serialize, Deserialize)]
        #[serde(transparent)]
        pub struct UserId(String);

        #[derive(Clone, Serialize, Deserialize)]
        pub struct User {
            id: UserId,
            name: String,
            age: u8,
        }

        let user = User {
            id: UserId(String::from("123")),
            name: "Arthur Dent".to_string(),
            age: 42,
        };

        // Serialize directly from the data structure to an item
        let direct_item: HashMap<String, AttributeValue> = to_item::<User, HashMap<String, AttributeValue>>(user.clone()).unwrap();
    }
}

Please let me know if you can reproduce, and if not whether there's any likely bugs.

Conversions to an from serde_dynamo::Item work fine. That would actually be enough for me to easily make my own AttributeValue conversions if the HashMap weren't a private field inside Item.

The bug resolved when I corrected feature to features in Cargo.toml.


fix(app): Compile time issue in demo web app fix

Codecov Report
Patch and project coverage have no change.

Comparison is base (32bc40e) 89.83% compared to head (05cc26b) 89.83%.

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #599   +/-   ##
=======================================
  Coverage   89.83%   89.83%
=======================================
  Files          98       98
  Lines        3927     3927
=======================================
  Hits         3528     3528
  Misses        265      265
  Partials      134      134

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


Disk config

add new config entry to allow user to config the docker data location

Coverage increased (+6.5%) to 69.907% when pulling 82c06d146bf884b9045d643c271f4c71ec357d1c on disk-config into 7e35691704be5e8e230f62e6e39d1ad9cc53378d on master.

@DongZhaoYu
Could this PR be compatible with this script?

@ydye it's compatible, the data root path will be configured before kubelet is started. And we will restart docker daemon to consume the latest configuration. This script call "docker info" to get the data root and it is exactly the path we have configured.


Cannot install v1.3.9 with Cordova 7.0.0

Getting to following error on my build server after upgrading to Cordova 7.0.0
Failed to install 'plugin.google.maps': CordovaError: Failed to fetch plugin https://bitbucket.org/nightstomp/cordova-plugin-googlemaps-sdk.git via registry.
I am trying to build an iOS app. Only cordova-plugin-googlemaps is included in my config.xml and I am pointing it at https://github.com/phonegap-googlemaps-plugin/cordova-plugin-googlemaps#1.3.9

Why do you want to use 1.3.9?

I was having issues with 1.4.x when I first tried it. I'll try again and report back

I recommend you use the v2.0-beta
https://github.com/mapsplugin/cordova-plugin-googlemaps-doc/blob/master/v2.0.0/README.md

2.0 was causing me bugs. When switching between pages of my app, the map
would not reliably render. On 1.3.9, I was able to remedy this by caching
the page but that's doesn't work with 2.0.
On Fri, Jun 30, 2017, 12:56 PM Masashi Katsumata<EMAIL_ADDRESS>wrote:

I recommend you use the v2.0-beta
https://github.com/mapsplugin/cordova-plugin-googlemaps-doc/blob/master/v2.0.0/README.md
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/mapsplugin/cordova-plugin-googlemaps/issues/1521#issuecomment-312359555,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AA5hT8i_RodxMy0HjI5VcpnExxZm7oWQks5sJVL0gaJpZM4OK7hX
.

Could you share your project files on github or bitbucket?
I will check it.
How and why?
https://github.com/mapsplugin/cordova-plugin-googlemaps/issues/1479

I cannot share the project but I will try to repro and publish. I'm using
Ionic 1. The map loads when the view first renders but if I leave the page
and come back, most of the time I'm just left with a blank map.
On Fri, Jun 30, 2017, 1:01 PM Masashi Katsumata<EMAIL_ADDRESS>wrote:

Could you share your project files on github or bitbucket?
I will check it.
How and why?
#1479
https://github.com/mapsplugin/cordova-plugin-googlemaps/issues/1479
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/mapsplugin/cordova-plugin-googlemaps/issues/1521#issuecomment-312360516,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AA5hTwfdNN_fYB2X2r1c06mP25ZxjIR5ks5sJVQZgaJpZM4OK7hX
.

I cannot share the project

Even with a private repository on bitbucket as free?

I'm just left with a blank map

Do you mean a blank map a white page or a gray map?

Since there is no update and no enough information is provided, I close this issue.


Weird error when using mv rewrite SQL with having statement

Steps to reproduce the behavior (Required)

Create table
drop table t11;
create table t11(
shop_id int,
region int,
shop_type string,
shop_flag string,
store_id String,
store_qty Double
) DUPLICATE key(shop_id) distributed by hash(shop_id) buckets 1;
truncate table t11;
insert into
t11
values
(1, 1, 's', 'o', '1', null),
(1, 1, 'm', 'o', '2', 2),
(1, 1, 'b', 'c', '3', 1);
drop MATERIALIZED VIEW mv11;

Create MV
create MATERIALIZED VIEW mv11 (region, ct) DISTRIBUTED BY RANDOM buckets 1 REFRESH MANUAL as
select region,
count(
distinct (
case
when store_qty > 0 then store_id
else null
end
)
)
from t11
group by region;

refresh MATERIALIZED VIEW mv11;

explain or execute query
explain
select  region,
count(
distinct (
case
when store_qty > 0.0 then store_id
else null
end
)
) as ct
from   t11
group by region
having
count(
distinct (
case
when store_qty > 0.0 then store_id
else null
end
)
) > 0

Expected behavior (Required)
The SQL could be rewrite with mv successfully.
Real behavior (Required)
Report error as "Error 1064 (HY000): only found column statistics: {9: region, 10: ct}, but missing statistic of col: 7: case."
StarRocks version (Required)
3.1.5

Thanks for your replies. I will check it.


Add support for custom domains (GitHub Enterprise, self-hosted Gitea/Forgejo)

What feature are you envisioning?
Allow the extension to be enabled for custom GHE domains. It could use a similar strategy to Better Pull Resquests for GitHub, implemented in this PR.
PS: I might give it a go when I find some time.

Hmm, I would love to add this but I think with MV3 it is no longer possible. I tried following https://github.com/fregante/webext-dynamic-content-scripts/blob/main/how-to-add-github-enterprise-support-to-web-extensions.md but was unable to make it work due to permissions errors, see https://groups.google.com/a/chromium.org/g/chromium-extensions/c/EnUmtHWOI9o?pli=1.

Ah,. actually that thread is outdated and optional_host_permissions is now shipped in browsers. I'll look into why it wasn't working again.

This has now been released in https://github.com/catppuccin/github-file-explorer-icons/releases/tag/v0.8.0 :)

Unfortunately it may take a few days for the new version to appear on the store, as it requires additional permissions and therefore may have to go under manual human review before approval.


benchmark: refactor watch benchmark

Hangs at/above 100 streams due to a hardcoded constant defaultMaxStreamsClient in grpc (having multiple grpc connections doesn't seem to make a difference)
Supersedes #7922, #8057

OK, I was setting --conns but not --clients, so it can get above 100. Will add a warning in the benchmark if it's exceeding the limit.

Codecov Report

Merging #8069 into master will decrease coverage by <.01%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master    #8069      +/-   ##
==========================================
- Coverage   76.66%   76.65%   -0.01%
==========================================
  Files         341      341
  Lines       26511    26511
==========================================
- Hits        20324    20322       -2
- Misses       4741     4743       +2
  Partials     1446     1446

Impacted Files
Coverage Δ

pkg/transport/timeout_conn.go
80% <0%> (-20%)
:arrow_down:

clientv3/namespace/watch.go
93.93% <0%> (-6.07%)
:arrow_down:

pkg/adt/interval_tree.go
89.63% <0%> (-3.66%)
:arrow_down:

etcdserver/api/v3election/election.go
64.7% <0%> (-2.95%)
:arrow_down:

raft/node.go
90.17% <0%> (-2.24%)
:arrow_down:

rafthttp/msgappv2_codec.go
71.3% <0%> (-1.74%)
:arrow_down:

rafthttp/peer.go
90.22% <0%> (-1.51%)
:arrow_down:

etcdserver/server.go
80.74% <0%> (-0.24%)
:arrow_down:

clientv3/watch.go
96.25% <0%> (+0.75%)
:arrow_up:

mvcc/watchable_store.go
88.75% <0%> (+0.77%)
:arrow_up:

... and 8 more

Continue to review full report at Codecov.

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


BAU: Add uri format mapping to JSON schema

What

Add JSON schema type mapping from LinkML uri to JSON schema string with uri format set.

Why
Without this a URI slot get rendered in JSON schema as a simple string which is too permissive, we should apply JSON Schema's uri format to the field.

Iam getting this when I build locally ./scripts/../v1/examples/security-check-jwt.json invalid [ { instancePath: '/vc/evidence/0/contraIndicator/0/mitigation/0/mitigatingCredential/0/id', schemaPath: '#/$defs/MitigatingCredentialClass/properties/id/format', keyword: 'format', params: { format: 'uri' }, message: 'must match format "uri"' } ]

This is a problem with the sample data being incorrect, this can be handled in the change in the data-vocab repo when we update the schema. Not actually a problem with this PR, we need to coordinate merges.

sure iam happy to do these changes as part of my PR.


Problems to start TENNISON

Hi,
It looks like the package colorama is not installed. This can be installed with the python package tool 'pip'

I installed it and it still doesn't work. Is there any additional configuration that I'm missing ?
Thanks,
Raul Ysa

I solved it . I needed to use the following command: sudo apt-get install -y python-colorama

Thanks for your answer, Mr. Fawcett

hello:
I have the below error when I tried to run tennison experimenter
ERROR: Please shut down the controller which is running on port 6653:


[qa] Add run check migration

GCI Task : link

Sorry i don't see migration folder here. I'll closed this issues.


FortuneSite.Cell not implemented

it's always an empty list
https://github.com/Zalgo2462/VoronoiLib/blob/6e468f60e2129fff8201ffd0b0b9f4777e2892aa/VoronoiLib/Structures/FortuneSite.cs#L10

oh, should look at the only issue in the list before posting the same thing again...
sorry.
https://github.com/Zalgo2462/VoronoiLib/issues/3


Support window's centered

This change implements this feature in Morphic host and OSWindow/SDL2 host.

The branch has some unrelated changes such as adding a build script that I was surprised that it's not there.


Optimisation Scheduler

Hello @LaurentMazare, I couldn't find any optimization scheduler in the library. Is there an alternative package available which I could readily use ? Or do I have to write it manually by accessing state of optimizer object ?
For example, I have written llama.c from scratch. But my loss increases after gradually reducing to 2 to 3 range. I think I have to introduce the scheduler. Hence the question.

Great that you're trying the llama.c from scratch, I've just added some hooks so that the learning rate can be set on optimizers via .set_learning_rate(new_lr). For now I would suggest doing it manually on your side using these and based on the lr schedule of your liking. If you get it to work well, it would be great to look at your code and see if there are bits that we want to integrate in the optimizer modules.
Also fwiw, there is some llama.c training bits in our examples, they seem to be learning without the schedule but it's likely to improve things there too!

Thanks Laurent, you are a saint.
I will try it out and let you know.
On Thu, 31 Aug 2023 at 12:34 PM, Laurent Mazare @.***>
wrote:

Great that you're trying the llama.c from scratch, I've just added some
hooks so that the learning rate can be set on optimizers via
.set_learning_rate(new_lr). For now I would suggest doing it manually on
your side using these and based on the lr schedule of your liking. If you
get it to work well, it would be great to look at your code and see if
there are bits that we want to integrate in the optimizer modules.
Also fwiw, there is some llama.c training bits in our examples
https://github.com/huggingface/candle/blob/main/candle-examples/examples/llama2-c/training.rs,
they seem to be learning without the schedule but it's likely to improve
things there too!
—
Reply to this email directly, view it on GitHub
https://github.com/huggingface/candle/issues/685#issuecomment-1700477667,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAXGU4AFJRZMOWKW54IAIXTXYAZP5ANCNFSM6AAAAAA4FQJVVQ
.
You are receiving this because you authored the thread.Message ID:
@.***>


Added a react-adal-bot sample + upgraded react-msal-bot

Q
A

Bug fix?
yes

New sample?
yes

What's in this Pull Request?

Added a react-adal-bot to demonstrate how to integrate a bot in a SharePoint site using authentication with ADAL and auhtorization code flow accessing Microsfot Graph resources.
Updated react-msal-bot + bug fixes + upgrade to 1.5.1

Thanks, Franck, really cool sample. Would you be interested in showing this in future SPFx community calls as a demo?

Hi @VesaJuvonen. Sure but I will be on vacation starting next monday to 17th September. I could do a demo after this date if spots are still available.

@VesaJuvonen Sure, I will be there!

Thanks, @FranckyC  - I'll get you queued up for that. Enjoy the break.

Thanks, @FranckyC - that settles it. TTYL.


Talent list sorting oddity

The talents that begin with "I'm" sort differently depending on whether the apostrophe is a straight quote mark vs a curved one (I think this only applies to "I'm a Doctor..." and "I’m Giving It All She’s Got!" (note the different punctuations in my copy/paste).
(I'm giving it also says ops division, not player's guide, but I think that's covered in #22  )

Nit-picky is helpful.

So apparently the straight quote vs. curly quote sorting is an issue that happens in Excel as well, so it must be how they're sorted in whatever system (unicode?). After looking into what the deal is, I would prefer curly quotes, as that's the preferred way to denote printed apostrophes (as opposed to straight, which in print denotes things like 'prime'), it's how they appear in the books, and the only reason this is an issue is because typewriter manufacturers wanted to save space by combining similar-looking keys.

Doing this change make clear to me that mixing standard apostrophe's with the curly single quotation mark makes the filter less predictable. I think most people are going to type a standard apostrophe, which in the original code, would fail to match a name that had a curly quotation mark in it.


Add LLMOps folder and W&B + OpenAI integration quickstart

Hello! I work at Weights and Biases and we have many offerings/teachings related to OpenAI as we work closely with them. Our MLOps platform has many first class integrations to for usage with OpenAI that we would love to show the community.
The W&B OpenAI AutoLogger logs requests, responses, token counts and model metadata with 1 line of code for all OpenAI models, allowing users to operationalize their LLM workflows.
Let me know if there are any suggestions or changes!

Hey @ted-at-openai! I was wondering if there were any other changes I needed to make

Thanks for the ping. I will take a look. (Apologies for the slow pace on this repo.)

Ok, going through the notebook now. Immediately hit an error in the first cell:
Failed to detect the name of this notebook, you can set it manually with the WANDB_NOTEBOOK_NAME environment variable to enable code saving.
wandb: Currently logged in as: ted_at_openai. Use `wandb login --relogin` to force relogin
wandb: ERROR Error while calling W&B API: permission denied (<Response [403]>)
Problem at: [/Users/ted/.virtualenvs/openai/lib/python3.9/site-packages/wandb/integration/openai/openai.py](https://file+.vscode-resource.vscode-cdn.net/Users/ted/.virtualenvs/openai/lib/python3.9/site-packages/wandb/integration/openai/openai.py) 108 _run_init
---------------------------------------------------------------------------
CommError                                 Traceback (most recent call last)
...
CommError: It appears that you do not have permission to access the requested resource. Please reach out to the project owner to grant you access. If you have the correct permissions, verify that there are no issues with your networking setup.(Error 403: Forbidden)

Not obvious to me what I did wrong or how to fix it, so I expect other users might also get confused here. Are users supposed to enter a pre-existing llm project name?

In the meantime, I've added a link on the Cookbook homepage advertising W&B as "A paid product for tracking model training and prompt engineering experiments." Hope this helps people discover what you're building.

One thought: This notebook looks pretty brief. Do you think it would make sense to discuss the value of logging inputs and outputs? Or a scenario in which a user might benefit from the logs? Right now I worry people might stumble upon it, run the ABC process of (a) turn logger on, (b) call API, (c) turn logger off, without really understanding what that might be useful to them.

Still want to add this? In the meantime, we've added a folder third_party_examples where this would fit nicely.

#714 Hey @ted-at-openai, I decided to open a new PR to add W&B examples to the third_party_examples you mentioned.


Invalid swagger type for path parameters declared at controller level

Description
When winter.route is used on a class with URL containing variables swagger shows wrong type (always string).
Expected behavior
Winter should inspect the type of such parameters according to type annotation in a method.
Code snippets
param will have a string type reported in swagger, while integer is expected.
@winter.controller
@winter.route('/test/{param}/')
class SomeContoller:
    @winter.route_get()
    def test(param: int):
        pass

Environment:

All python versions
Winter version 1.2.0

This is done in https://github.com/mofr/winter/commit/a63178703f0623d7d1bee250b28757da20201252