Capability exchange.

Hi @michalvasko
I am having doubt on capability exchanging which are listed below :
1.) While I am connecting netopeer2-cli to netopeer2-server what changes/modifications to do so that I can get a hello message along with capability exchanging.As When we read netconf document they suggest that after connection hello message will exchange by client and server with their capabilities.
2.)Also, I am checking capabilities with the status command on netopeer2-cli side as shown below, so can u tell me the capabilities I am getting on the client-side those are of server or client.
> status
Current NETCONF session:
  ID          : 1
  Host        : <IP_ADDRESS>
  Port        : 830
  Transport   : SSH
  Capabilities:
	urn:ietf:params:netconf:base:1.0
	urn:ietf:params:netconf:base:1.1
	urn:ietf:params:netconf:capability:writable-running:1.0
	urn:ietf:params:netconf:capability:candidate:1.0
	urn:ietf:params:netconf:capability:confirmed-commit:1.1
	urn:ietf:params:netconf:capability:rollback-on-error:1.0
	urn:ietf:params:netconf:capability:validate:1.1
	urn:ietf:params:netconf:capability:startup:1.0
	urn:ietf:params:netconf:capability:xpath:1.0
	urn:ietf:params:netconf:capability:with-defaults:1.0?basic-mode=explicit&also-supported=report-all,report-all-tagged,trim,explicit
	urn:ietf:params:netconf:capability:notification:1.0
	urn:ietf:params:netconf:capability:interleave:1.0
	urn:ietf:params:xml:ns:yang:ietf-yang-metadata?module=ietf-yang-metadata&revision=2016-08-05
	urn:ietf:params:xml:ns:yang:1?module=yang&revision=2021-04-07
	urn:ietf:params:xml:ns:yang:ietf-inet-types?module=ietf-inet-types&revision=2013-07-15
	urn:ietf:params:xml:ns:yang:ietf-yang-types?module=ietf-yang-types&revision=2013-07-15
	urn:ietf:params:netconf:capability:yang-library:1.1?revision=2019-01-04&content-id=55
	urn:sysrepo:plugind?module=sysrepo-plugind&revision=2020-12-10
	urn:ietf:params:xml:ns:netconf:base:1.0?module=ietf-netconf&revision=2013-09-29&features=writable-running,candidate,confirmed-commit,rollback-on-error,validate,startup,url,xpath
	urn:ietf:params:xml:ns:yang:ietf-netconf-acm?module=ietf-netconf-acm&revision=2018-02-14
	urn:ietf:params:xml:ns:yang:ietf-netconf-with-defaults?module=ietf-netconf-with-defaults&revision=2011-06-01
	urn:ietf:params:xml:ns:yang:ietf-netconf-notifications?module=ietf-netconf-notifications&revision=2012-02-06
	urn:ietf:params:xml:ns:yang:ietf-netconf-monitoring?module=ietf-netconf-monitoring&revision=2010-10-04
	urn:ietf:params:xml:ns:netmod:notification?module=nc-notifications&revision=2008-07-14
	urn:ietf:params:xml:ns:netconf:notification:1.0?module=notifications&revision=2008-07-14
	urn:ietf:params:xml:ns:yang:ietf-x509-cert-to-name?module=ietf-x509-cert-to-name&revision=2014-12-10
	urn:ietf:params:xml:ns:yang:iana-crypt-hash?module=iana-crypt-hash&revision=2014-08-06
	urn:ietf:params:xml:ns:yang:iana-if-type?module=iana-if-type&revision=2017-01-19
	urn:sysrepo:my?module=my&revision=2021-05-29
	urn:sysrepo:college?module=college&revision=2021-11-17
	urn:examples?module=examples

**BUT** I am not sure that above listed lines are capabilities ? if yes then these capabilities are of server or of client

Hello message includes the capabilities, they are generally the same thing (one includes the other).
Client should advertise only capabilities

urn:ietf:params:netconf:base:1.0
urn:ietf:params:netconf:base:1.1

based on what protocol version it understands, no others. So the capabilities you see are server capabilities.

@michalvasko
Can you tell me how to enable the capabilities exchange during connection?

What do you mean? Capability exchange is just hello message exchange, which is a mandatory initial step of every NETCONF session, it is always "enabled".

Hi @michalvasko
We are not getting messages on connecting with netopeer2-server at netopeer2-cli side

You will need to include much more details and ideally some server/CLI output as well.

I am running server command and connecting through client below are the logs :
netopeer2-server side logs :

root@6499--IOT--MCP7:/home/vvdn# netopeer2-server -d -v3 &
[1] 10331
root@6499--IOT--MCP7:/home/vvdn# [INF]: LY: Searching for "ietf-yang-types" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Newer revision than "ietf-yang-types@2013-07-15" not found, using this as the latest revision.
[WRN]: SR: Removing event pipe "sr_evpipe3" after a crashed subscription.
[WRN]: SR: Connection with CID 3 is dead.
[INF]: SR: Applying scheduled changes.
[INF]: LY: Searching for "ietf-datastores" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Loading schema from<EMAIL_ADDRESS>file.
[INF]: LY: Searching for "ietf-yang-library" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Loading schema from<EMAIL_ADDRESS>file.
[INF]: LY: Searching for "ietf-yang-types" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Newer revision than "ietf-yang-types@2013-07-15" not found, using this as the latest revision.
[INF]: LY: Searching for "ietf-inet-types" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Newer revision than "ietf-inet-types@2013-07-15" not found, using this as the latest revision.
[INF]: LY: Searching for "sysrepo-monitoring" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Loading schema from<EMAIL_ADDRESS>file.
[INF]: LY: Searching for "ietf-yang-types" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Newer revision than "ietf-yang-types@2013-07-15" not found, using this as the latest revision.
[INF]: LY: Implemented module "ietf-datastores@2018-02-14" is not used for import, revision "2018-02-14" is imported instead.
[INF]: LY: Searching for "sysrepo-plugind" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Loading schema from<EMAIL_ADDRESS>file.
[INF]: LY: Searching for "ietf-netconf" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Loading schema from<EMAIL_ADDRESS>file.
[INF]: LY: Searching for "ietf-inet-types" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Newer revision than "ietf-inet-types@2013-07-15" not found, using this as the latest revision.
[INF]: LY: Searching for "ietf-netconf-acm" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Loading schema from<EMAIL_ADDRESS>file.
[INF]: LY: Searching for "ietf-yang-types" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Newer revision than "ietf-yang-types@2013-07-15" not found, using this as the latest revision.
[INF]: LY: Searching for "ietf-yang-metadata" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Newer revision than "ietf-yang-metadata@2016-08-05" not found, using this as the latest revision.
[INF]: LY: Searching for "ietf-yang-types" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Newer revision than "ietf-yang-types@2013-07-15" not found, using this as the latest revision.
[INF]: LY: Searching for "ietf-netconf-with-defaults" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Loading schema from<EMAIL_ADDRESS>file.
[INF]: LY: Searching for "ietf-yang-metadata" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Newer revision than "ietf-yang-metadata@2016-08-05" not found, using this as the latest revision.
[INF]: LY: Searching for "ietf-netconf-notifications" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Loading schema from<EMAIL_ADDRESS>file.
[INF]: LY: Searching for "ietf-inet-types" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Newer revision than "ietf-inet-types@2013-07-15" not found, using this as the latest revision.
[INF]: LY: Implemented module "ietf-netconf@2013-09-29" is not used for import, revision "2013-09-29" is imported instead.
[INF]: LY: Searching for "ietf-origin" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Loading schema from<EMAIL_ADDRESS>file.
[INF]: LY: Searching for "ietf-yang-metadata" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Newer revision than "ietf-yang-metadata@2016-08-05" not found, using this as the latest revision.
[INF]: LY: Searching for "ietf-netconf-monitoring" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Loading schema from<EMAIL_ADDRESS>file.
[INF]: LY: Searching for "ietf-yang-types" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Newer revision than "ietf-yang-types@2013-07-15" not found, using this as the latest revision.
[INF]: LY: Searching for "ietf-inet-types" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Newer revision than "ietf-inet-types@2013-07-15" not found, using this as the latest revision.
[INF]: LY: Searching for "ietf-netconf-nmda" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Loading schema from<EMAIL_ADDRESS>file.
[INF]: LY: Searching for "ietf-yang-types" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Newer revision than "ietf-yang-types@2013-07-15" not found, using this as the latest revision.
[INF]: LY: Searching for "ietf-inet-types" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Newer revision than "ietf-inet-types@2013-07-15" not found, using this as the latest revision.
[INF]: LY: Implemented module "ietf-datastores@2018-02-14" is not used for import, revision "2018-02-14" is imported instead.
[INF]: LY: Implemented module "ietf-netconf@2013-09-29" is not used for import, revision "2013-09-29" is imported instead.
[INF]: LY: Searching for "nc-notifications" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Loading schema from<EMAIL_ADDRESS>file.
[INF]: LY: Searching for "ietf-yang-types" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Newer revision than "ietf-yang-types@2013-07-15" not found, using this as the latest revision.
[INF]: LY: Searching for "notifications" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Loading schema from<EMAIL_ADDRESS>file.
[INF]: LY: Searching for "ietf-yang-types" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Newer revision than "ietf-yang-types@2013-07-15" not found, using this as the latest revision.
[INF]: LY: Searching for "ietf-x509-cert-to-name" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Loading schema from<EMAIL_ADDRESS>file.
[INF]: LY: Searching for "ietf-yang-types" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Newer revision than "ietf-yang-types@2013-07-15" not found, using this as the latest revision.
[INF]: LY: Searching for "ietf-crypto-types" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Loading schema from<EMAIL_ADDRESS>file.
[INF]: LY: Searching for "ietf-yang-types" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Newer revision than "ietf-yang-types@2013-07-15" not found, using this as the latest revision.
[INF]: LY: Implemented module "ietf-netconf-acm@2018-02-14" is not used for import, revision "2018-02-14" is imported instead.
[INF]: LY: Searching for "ietf-keystore" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Loading schema from<EMAIL_ADDRESS>file.
[INF]: LY: Implemented module "ietf-netconf-acm@2018-02-14" is not used for import, revision "2018-02-14" is imported instead.
[INF]: LY: Searching for "ietf-truststore" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Loading schema from<EMAIL_ADDRESS>file.
[INF]: LY: Implemented module "ietf-netconf-acm@2018-02-14" is not used for import, revision "2018-02-14" is imported instead.
[INF]: LY: Implemented module "ietf-crypto-types@2019-07-02" is not used for import, revision "2019-07-02" is imported instead.
[INF]: LY: Searching for "ietf-tcp-common" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Loading schema from<EMAIL_ADDRESS>file.
[INF]: LY: Searching for "ietf-ssh-server" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Loading schema from<EMAIL_ADDRESS>file.
[INF]: LY: Searching for "ietf-ssh-common" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Loading schema from<EMAIL_ADDRESS>file.
[INF]: LY: Searching for "iana-crypt-hash" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Loading schema from<EMAIL_ADDRESS>file.
[INF]: LY: Implemented module "ietf-netconf-acm@2018-02-14" is not used for import, revision "2018-02-14" is imported instead.
[INF]: LY: Searching for "ietf-tls-server" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Loading schema from<EMAIL_ADDRESS>file.
[INF]: LY: Searching for "ietf-tls-common" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Loading schema from<EMAIL_ADDRESS>file.
[INF]: LY: Implemented module "ietf-keystore@2019-07-02" is not used for import, revision "2019-07-02" is imported instead.
[INF]: LY: Implemented module "ietf-netconf-acm@2018-02-14" is not used for import, revision "2018-02-14" is imported instead.
[INF]: LY: Searching for "ietf-netconf-server" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Loading schema from<EMAIL_ADDRESS>file.
[INF]: LY: Searching for "ietf-yang-types" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Newer revision than "ietf-yang-types@2013-07-15" not found, using this as the latest revision.
[INF]: LY: Searching for "ietf-tcp-client" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Loading schema from<EMAIL_ADDRESS>file.
[INF]: LY: Searching for "ietf-inet-types" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Newer revision than "ietf-inet-types@2013-07-15" not found, using this as the latest revision.
[INF]: LY: Searching for "ietf-tcp-server" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Loading schema from<EMAIL_ADDRESS>file.
[INF]: LY: Searching for "ietf-inet-types" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Newer revision than "ietf-inet-types@2013-07-15" not found, using this as the latest revision.
[INF]: LY: Implemented module "ietf-tcp-common@2019-07-02" is not used for import, revision "2019-07-02" is imported instead.
[INF]: LY: Searching for "ietf-interfaces" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Loading schema from<EMAIL_ADDRESS>file.
[INF]: LY: Searching for "ietf-yang-types" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Newer revision than "ietf-yang-types@2013-07-15" not found, using this as the latest revision.
[INF]: LY: Searching for "ietf-ip" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Loading schema from<EMAIL_ADDRESS>file.
[INF]: LY: Searching for "ietf-inet-types" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Newer revision than "ietf-inet-types@2013-07-15" not found, using this as the latest revision.
[INF]: LY: Searching for "ietf-yang-types" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Newer revision than "ietf-yang-types@2013-07-15" not found, using this as the latest revision.
[INF]: LY: Searching for "ietf-network-instance" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Loading schema from<EMAIL_ADDRESS>file.
[INF]: LY: Implemented module "ietf-interfaces@2018-02-20" is not used for import, revision "2018-02-20" is imported instead.
[INF]: LY: Searching for "ietf-yang-schema-mount" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Loading schema from<EMAIL_ADDRESS>file.
[INF]: LY: Searching for "ietf-inet-types" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Newer revision than "ietf-inet-types@2013-07-15" not found, using this as the latest revision.
[INF]: LY: Searching for "ietf-yang-types" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Newer revision than "ietf-yang-types@2013-07-15" not found, using this as the latest revision.
[INF]: LY: Searching for "ietf-subscribed-notifications" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Loading schema from<EMAIL_ADDRESS>file.
[INF]: LY: Searching for "ietf-inet-types" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Newer revision than "ietf-inet-types@2013-07-15" not found, using this as the latest revision.
[INF]: LY: Implemented module "ietf-interfaces@2018-02-20" is not used for import, revision "2018-02-20" is imported instead.
[INF]: LY: Implemented module "ietf-netconf-acm@2018-02-14" is not used for import, revision "2018-02-14" is imported instead.
[INF]: LY: Searching for "ietf-restconf" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Loading schema from<EMAIL_ADDRESS>file.
[INF]: LY: Searching for "ietf-yang-types" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Newer revision than "ietf-yang-types@2013-07-15" not found, using this as the latest revision.
[INF]: LY: Searching for "ietf-yang-push" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Loading schema from<EMAIL_ADDRESS>file.
[INF]: LY: Searching for "ietf-yang-types" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Newer revision than "ietf-yang-types@2013-07-15" not found, using this as the latest revision.
[INF]: LY: Implemented module "ietf-datastores@2018-02-14" is not used for import, revision "2018-02-14" is imported instead.
[INF]: LY: Searching for "ietf-restconf" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Loading schema from<EMAIL_ADDRESS>file.
[INF]: LY: Newer revision than "ietf-restconf@2017-01-26" not found, using this as the latest revision.
[INF]: LY: Searching for "ietf-yang-patch" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Loading schema from<EMAIL_ADDRESS>file.
[INF]: LY: Searching for "ietf-restconf" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Loading schema from<EMAIL_ADDRESS>file.
[INF]: LY: Newer revision than "ietf-restconf@2017-01-26" not found, using this as the latest revision.
[INF]: LY: Searching for "o-ran-compression-factors" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Loading schema from<EMAIL_ADDRESS>file.
[INF]: LY: Searching for "o-ran-module-cap" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Loading schema from<EMAIL_ADDRESS>file.
[INF]: LY: Searching for "o-ran-laa-operations" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Loading schema from<EMAIL_ADDRESS>file.
[INF]: LY: Searching for "iana-if-type" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Loading schema from<EMAIL_ADDRESS>file.
[INF]: LY: Implemented module "ietf-interfaces@2018-02-20" is not used for import, revision "2018-02-20" is imported instead.
[INF]: LY: Searching for "iana-hardware" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Loading schema from<EMAIL_ADDRESS>file.
[INF]: LY: Searching for "ietf-hardware" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Loading schema from<EMAIL_ADDRESS>file.
[INF]: LY: Searching for "ietf-inet-types" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Newer revision than "ietf-inet-types@2013-07-15" not found, using this as the latest revision.
[INF]: LY: Searching for "ietf-yang-types" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Newer revision than "ietf-yang-types@2013-07-15" not found, using this as the latest revision.
[INF]: LY: Searching for "o-ran-interfaces" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Loading schema from<EMAIL_ADDRESS>file.
[INF]: LY: Searching for "ietf-inet-types" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Newer revision than "ietf-inet-types@2013-07-15" not found, using this as the latest revision.
[INF]: LY: Implemented module "ietf-interfaces@2018-02-20" is not used for import, revision "2018-02-20" is imported instead.
[INF]: LY: Implemented module "ietf-ip@2018-02-22" is not used for import, revision "2018-02-22" is imported instead.
[INF]: LY: Searching for "ietf-yang-types" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Newer revision than "ietf-yang-types@2013-07-15" not found, using this as the latest revision.
[INF]: LY: Implemented module "iana-hardware@2018-03-13" is not used for import, revision "2018-03-13" is imported instead.
[INF]: LY: Searching for "o-ran-processing-element" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Loading schema from<EMAIL_ADDRESS>file.
[INF]: LY: Searching for "ietf-yang-types" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Newer revision than "ietf-yang-types@2013-07-15" not found, using this as the latest revision.
[INF]: LY: Searching for "ietf-inet-types" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Newer revision than "ietf-inet-types@2013-07-15" not found, using this as the latest revision.
[INF]: LY: Implemented module "ietf-interfaces@2018-02-20" is not used for import, revision "2018-02-20" is imported instead.
[INF]: LY: Implemented module "ietf-ip@2018-02-22" is not used for import, revision "2018-02-22" is imported instead.
[INF]: LY: Searching for "o-ran-file-management" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Loading schema from<EMAIL_ADDRESS>file.
[INF]: LY: Implemented module "ietf-crypto-types@2019-07-02" is not used for import, revision "2019-07-02" is imported instead.
[INF]: LY: Searching for "o-ran-performance-management" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Loading schema from<EMAIL_ADDRESS>file.
[INF]: LY: Implemented module "ietf-hardware@2018-03-13" is not used for import, revision "2018-03-13" is imported instead.
[INF]: LY: Implemented module "ietf-interfaces@2018-02-20" is not used for import, revision "2018-02-20" is imported instead.
[INF]: LY: Searching for "ietf-inet-types" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Newer revision than "ietf-inet-types@2013-07-15" not found, using this as the latest revision.
[INF]: LY: Implemented module "o-ran-interfaces@2020-04-17" is not used for import, revision "2020-04-17" is imported instead.
[INF]: LY: Implemented module "iana-hardware@2018-03-13" is not used for import, revision "2018-03-13" is imported instead.
[INF]: LY: Searching for "my" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Loading schema from<EMAIL_ADDRESS>file.
[INF]: LY: Searching for "examples" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Loading schema from "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang/examples.yang" file.
[INF]: LY: Searching for "ekta" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Loading schema from "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang/ekta.yang" file.
[INF]: LY: Searching for "o-ran-trace" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Loading schema from<EMAIL_ADDRESS>file.
[INF]: LY: Searching for "o-ran-troubleshooting" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Loading schema from<EMAIL_ADDRESS>file.
[INF]: LY: Searching for "o-ran-supervision" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Loading schema from<EMAIL_ADDRESS>file.
[INF]: LY: Searching for "ietf-yang-types" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Newer revision than "ietf-yang-types@2013-07-15" not found, using this as the latest revision.
[INF]: LY: Searching for "o-ran-fm" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Loading schema from<EMAIL_ADDRESS>file.
[INF]: LY: Searching for "o-ran-sync" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Loading schema from<EMAIL_ADDRESS>file.
[INF]: LY: Implemented module "ietf-interfaces@2018-02-20" is not used for import, revision "2018-02-20" is imported instead.
[INF]: LY: Implemented module "o-ran-interfaces@2020-04-17" is not used for import, revision "2020-04-17" is imported instead.
[INF]: LY: Searching for "college" in "/home/vvdn/hfcl_8t8r/sysrepo/build/repository/yang".
[INF]: LY: Loading schema from<EMAIL_ADDRESS>file.
[INF]: LY: Use of anydata to define configuration data is not recommended. /ietf-yang-push:{augment='/sn:filters'}/ietf-yang-push:selection-filter/{uses='selection-filter-types'}/filter-spec/datastore-subtree-filter/datastore-subtree-filter
[INF]: LY: Use of anydata to define configuration data is not recommended. /ietf-subscribed-notifications:filters/stream-filter/{uses='stream-filter-elements'}/filter-spec/stream-subtree-filter/stream-subtree-filter
[INF]: LY: Use of anydata to define configuration data is not recommended. /ietf-yang-push:{augment='/sn:subscriptions/sn:subscription/sn:target'}/ietf-yang-push:datastore/{uses='datastore-criteria'}/{uses='selection-filter-objects'}/selection-filter/within-subscription/{uses='selection-filter-types'}/filter-spec/datastore-subtree-filter/datastore-subtree-filter
[INF]: LY: Use of anydata to define configuration data is not recommended. /ietf-subscribed-notifications:subscriptions/subscription/{uses='subscription-policy'}/{uses='subscription-policy-dynamic'}/{uses='subscription-policy-modifiable'}/target/stream/stream-filter/within-subscription/{uses='stream-filter-elements'}/filter-spec/stream-subtree-filter/stream-subtree-filter
[INF]: LY: Missing explicit "deprecated" status specified in parent "subnet", inheriting for "prefix-length".
[INF]: LY: Missing explicit "deprecated" status specified in parent "subnet", inheriting for "netmask".
[INF]: LY: The ordered-by statement is ignored in lists representing notification content (/ietf-yang-push:push-change-update/datastore-changes/{uses='ypatch:yang-patch'}/yang-patch/edit).
[INF]: SR: No scheduled changes.
[INF]: SR: Datastore copied from  to .
[INF]: SR: Connection 1 created.
[INF]: SR: Session 1 (user "root", CID 1) created.
[INF]: SR: Triggering "ietf-subscribed-notifications" "done" event on enabled data.
[INF]: SR: Triggering "ietf-netconf-server" "done" event on enabled data.
[INF]: SR: Triggering "ietf-netconf-server" "done" event on enabled data.
[INF]: SR: Triggering "ietf-netconf-server" "done" event on enabled data.
[INF]: LN: Listening on <IP_ADDRESS>:830 for SSH connections.
[INF]: SR: Triggering "ietf-netconf-server" "done" event on enabled data.
[INF]: SR: Triggering "ietf-netconf-server" "done" event on enabled data.
[INF]: SR: Triggering "ietf-netconf-server" "done" event on enabled data.
[INF]: SR: Triggering "ietf-netconf-server" "done" event on enabled data.
[INF]: SR: Triggering "ietf-netconf-server" "done" event on enabled data.
[INF]: SR: Triggering "ietf-netconf-server" "done" event on enabled data.
[INF]: SR: Triggering "ietf-netconf-server" "done" event on enabled data.
[INF]: SR: Triggering "ietf-netconf-server" "done" event on enabled data.
[INF]: SR: Triggering "ietf-netconf-server" "done" event on enabled data.
[INF]: SR: Triggering "ietf-netconf-server" "done" event on enabled data.
[INF]: SR: Triggering "ietf-netconf-server" "done" event on enabled data.
[INF]: SR: Triggering "ietf-netconf-server" "done" event on enabled data.
[INF]: SR: Triggering "ietf-netconf-server" "done" event on enabled data.
[INF]: SR: Triggering "ietf-netconf-server" "done" event on enabled data.
[INF]: SR: Triggering "ietf-netconf-server" "done" event on enabled data.
[INF]: SR: Triggering "ietf-netconf-server" "done" event on enabled data.
[INF]: SR: Triggering "ietf-netconf-server" "done" event on enabled data.
[INF]: SR: Triggering "ietf-netconf-server" "done" event on enabled data.
[INF]: SR: Triggering "ietf-netconf-server" "done" event on enabled data.
[INF]: SR: Triggering "ietf-keystore" "done" event on enabled data.
[INF]: SR: Triggering "ietf-truststore" "done" event on enabled data.
[INF]: SR: Triggering "ietf-netconf-acm" "done" event on enabled data.
[INF]: SR: Triggering "ietf-netconf-acm" "done" event on enabled data.
[INF]: SR: Triggering "ietf-netconf-acm" "done" event on enabled data.
[INF]: SR: Triggering "ietf-netconf-acm" "done" event on enabled data.

**Logs after connecting from netopeer2-client side :**

vvdn@6499--IOT--MCP7:~$ netopeer2-cli

connect --host <IP_ADDRESS> --login vvdn
The authenticity of the host '<IP_ADDRESS>' cannot be established.
ssh-rsa key fingerprint is 34:14:b4:f8:0e:58:57:1e:38:05:c4:17:c7:35:b2:1d:f8:f2:04:4f.
Are you sure you want to continue connecting (yes/no)? yes
Interactive SSH Authentication
Type your password:
Password:

**netopeer2-server logs after connection established between server and client.**

[INF]: LN: Accepted a connection on <IP_ADDRESS>:830 from <IP_ADDRESS>:34500.
[INF]: SR: Session 31 (user "root", CID 1) created.
[INF]: LN: Received an SSH message "request-service" of subtype "ssh-userauth".
[INF]: LN: Received an SSH message "request-auth" of subtype "none".
[INF]: LN: Received an SSH message "request-auth" of subtype "interactive".
[INF]: LN: Received an SSH message "request-auth" of subtype "interactive".
[INF]: LN: User "vvdn" authenticated.
[INF]: LN: Received an SSH message "request-channel-open" of subtype "session".
[INF]: LN: Received an SSH message "request-channel" of subtype "subsystem".
[INF]: SR: Session 32 (user "root", CID 1) created.
[INF]: SR: There are no subscribers for "ietf-netconf-notifications" notifications.
[INF]: NP: Generated new event (netconf-session-start).
[INF]: LN: Session 1: Schema "ietf-inet-types@2013-07-15" was requested.
[INF]: NP: Session 1: thread 4 event new RPC.
[INF]: LN: Session 1: Schema "ietf-yang-types@2013-07-15" was requested.
[INF]: NP: Session 1: thread 4 event new RPC.
[INF]: LN: Session 1: Schema "ietf-yang-metadata@2016-08-05" was requested.
[INF]: NP: Session 1: thread 4 event new RPC.
[INF]: LN: Session 1: Schema "ietf-yang-types@2013-07-15" was requested.
[INF]: NP: Session 1: thread 4 event new RPC.
[INF]: LN: Session 1: Schema "ietf-yang-library@2019-01-04" was requested.
[INF]: NP: Session 1: thread 4 event new RPC.
[INF]: LN: Session 1: Schema "ietf-yang-types@2013-07-15" was requested.
[INF]: NP: Session 1: thread 4 event new RPC.
[INF]: LN: Session 1: Schema "ietf-inet-types@2013-07-15" was requested.
[INF]: NP: Session 1: thread 4 event new RPC.
[INF]: LN: Session 1: Schema "ietf-datastores@" was requested.
[INF]: NP: Session 1: thread 4 event new RPC.
[INF]: LN: Session 1: Schema "ietf-datastores@" was requested.
[INF]: NP: Session 1: thread 4 event new RPC.
[INF]: LN: Session 1: Schema "ietf-netconf-nmda@" was requested.
[INF]: NP: Session 1: thread 4 event new RPC.
[INF]: LN: Session 1: Schema "ietf-yang-types@2013-07-15" was requested.
[INF]: NP: Session 1: thread 4 event new RPC.
[INF]: LN: Session 1: Schema "ietf-inet-types@2013-07-15" was requested.
[INF]: NP: Session 1: thread 4 event new RPC.
[INF]: LN: Session 1: Schema "ietf-origin@" was requested.
[INF]: NP: Session 1: thread 4 event new RPC.
[INF]: LN: Session 1: Schema "ietf-yang-metadata@2016-08-05" was requested.
[INF]: NP: Session 1: thread 4 event new RPC.
[INF]: LN: Session 1: Schema "ietf-netconf-with-defaults@2011-06-01" was requested.
[INF]: NP: Session 1: thread 4 event new RPC.
[INF]: LN: Session 1: Schema "ietf-yang-metadata@2016-08-05" was requested.
[INF]: NP: Session 1: thread 4 event new RPC.
[INF]: SR: Published event "rpc" "/ietf-netconf-nmda:get-data" with ID 1 priority 0 for 1 subscribers.
[INF]: SR: Processing "/ietf-netconf-nmda:get-data" "rpc" event with ID 1 priority 0 (remaining 1 subscribers).
[INF]: SR: Successful processing of "rpc" event with ID 1 priority 0 (remaining 0 subscribers).
[INF]: SR: Event "rpc" with ID 1 priority 0 succeeded.
[INF]: NP: Session 1: thread 4 event new RPC.
[INF]: LN: Session 1: Schema "sysrepo@2021-09-07" was requested.
[INF]: NP: Session 1: thread 4 event new RPC.
[INF]: LN: Session 1: Schema "sysrepo-monitoring@2021-07-29" was requested.
[INF]: NP: Session 1: thread 4 event new RPC.
[INF]: LN: Session 1: Schema "sysrepo-plugind@2020-12-10" was requested.
[INF]: NP: Session 1: thread 4 event new RPC.
[INF]: LN: Session 1: Schema "ietf-netconf-notifications@2012-02-06" was requested.
[INF]: NP: Session 1: thread 4 event new RPC.
[INF]: LN: Session 1: Schema "ietf-inet-types@2013-07-15" was requested.
[INF]: NP: Session 1: thread 4 event new RPC.
[INF]: LN: Session 1: Schema "ietf-inet-types@2013-07-15" was requested.
[INF]: NP: Session 1: thread 1 event new RPC.
[INF]: LN: Session 1: Schema "ietf-inet-types@2013-07-15" was requested.
[INF]: NP: Session 1: thread 0 event new RPC.
[INF]: LN: Session 1: Schema "ietf-inet-types@2013-07-15" was requested.
[INF]: NP: Session 1: thread 4 event new RPC.
[INF]: LN: Session 1: Schema "ietf-inet-types@2013-07-15" was requested.
[INF]: NP: Session 1: thread 3 event new RPC.
[INF]: LN: Session 1: Schema "ietf-inet-types@2013-07-15" was requested.
[INF]: NP: Session 1: thread 2 event new RPC.
[INF]: LN: Session 1: Schema "o-ran-compression-factors@2020-03-05" was requested.
[INF]: NP: Session 1: thread 4 event new RPC.
[INF]: LN: Session 1: Schema "o-ran-module-cap@2020-04-17" was requested.
[INF]: NP: Session 1: thread 4 event new RPC.
[INF]: LN: Session 1: Schema "o-ran-laa-operations@2019-07-03" was requested.
[INF]: NP: Session 1: thread 4 event new RPC.
[INF]: LN: Session 1: Schema "iana-if-type@2017-01-19" was requested.
[INF]: NP: Session 1: thread 4 event new RPC.
[INF]: LN: Session 1: Schema "iana-hardware@2018-03-13" was requested.
[INF]: NP: Session 1: thread 4 event new RPC.
[INF]: LN: Session 1: Schema "ietf-hardware@2018-03-13" was requested.
[INF]: NP: Session 1: thread 4 event new RPC.
[INF]: LN: Session 1: Schema "ietf-inet-types@2013-07-15" was requested.
[INF]: NP: Session 1: thread 4 event new RPC.
[INF]: LN: Session 1: Schema "o-ran-interfaces@2020-04-17" was requested.
[INF]: NP: Session 1: thread 4 event new RPC.
[INF]: LN: Session 1: Schema "ietf-inet-types@2013-07-15" was requested.
[INF]: NP: Session 1: thread 4 event new RPC.
[INF]: LN: Session 1: Schema "o-ran-processing-element@2020-04-17" was requested.
[INF]: NP: Session 1: thread 3 event new RPC.
[INF]: LN: Session 1: Schema "ietf-inet-types@2013-07-15" was requested.
[INF]: NP: Session 1: thread 3 event new RPC.
[INF]: LN: Session 1: Schema "o-ran-file-management@2019-07-03" was requested.
[INF]: NP: Session 1: thread 0 event new RPC.
[INF]: LN: Session 1: Schema "o-ran-performance-management@2020-04-17" was requested.
[INF]: NP: Session 1: thread 4 event new RPC.
[INF]: LN: Session 1: Schema "ietf-inet-types@2013-07-15" was requested.
[INF]: NP: Session 1: thread 4 event new RPC.
[INF]: LN: Session 1: Schema "my@2021-05-29" was requested.
[INF]: NP: Session 1: thread 3 event new RPC.
[INF]: LN: Session 1: Schema "examples@" was requested.
[INF]: NP: Session 1: thread 3 event new RPC.
[INF]: LN: Session 1: Schema "ekta@" was requested.
[INF]: NP: Session 1: thread 3 event new RPC.
[INF]: LN: Session 1: Schema "o-ran-trace@2019-07-03" was requested.
[INF]: NP: Session 1: thread 3 event new RPC.
[INF]: LN: Session 1: Schema "o-ran-troubleshooting@2019-02-04" was requested.
[INF]: NP: Session 1: thread 3 event new RPC.
[INF]: LN: Session 1: Schema "o-ran-supervision@2020-01-24" was requested.
[INF]: NP: Session 1: thread 3 event new RPC.
[INF]: LN: Session 1: Schema "o-ran-fm@2019-02-04" was requested.
[INF]: NP: Session 1: thread 3 event new RPC.
[INF]: LN: Session 1: Schema "o-ran-sync@2019-07-03" was requested.
[INF]: NP: Session 1: thread 1 event new RPC.
[INF]: LN: Session 1: Schema "college@2021-11-17" was requested.
[INF]: NP: Session 1: thread 0 event new RPC.

**As you can see here we are not getting any hello message or capability exchange.**

Like I said, hello message is exchanged but there are no messages printed. The command status, which you have used before, prints the capabilities received from the server.

okay, I am getting all the capabilities using status command but please confirm through status command client capabilities can be seen or not .
If not then what is the step to get client capabilities.

What do you need the client capabilities for?

@jktjkt actually for verifying purpose that what are the capabilities client and server both exchanging.

You cannot see client capabilities on the server but they are not really interesting, that is why, The client is supposed to send only the list of supported NETCONF versions, which are always 1.0 and 1.1 in this case.

In that case just activate verbose logging, and see the raw NETCONF protocol exchange. That should get you all the information that you're looking for.

@jktjkt actually for verifying purpose that what are the capabilities client and server both exchanging.


Add a language switch in the navigation or settings

The app supports two languages at this point but more can be added easily.
A switch has to be created to allow changing languages, probably saving the choice in the DB.

Locale is now determined from the browser, available locales defined in config/app.php with key locales.


Audio / video auto play (no user gesture input required)

TODO: add mWebview.getSettings().setMediaPlaybackRequiresUserGesture(false); in https://github.com/readium/SDKLauncher-Android/blob/master/SDKLauncher-Android/src/org/readium/sdk/android/launcher/WebViewActivity.java
This is already implemented in the iOS launcher app:
mediaPlaybackRequiresUserAction = NO
https://github.com/readium/SDKLauncher-iOS/blob/master/Classes/EPubViewController.m#L303

Fixed:
https://github.com/readium/SDKLauncher-Android/commit/8ec89c082b2ebe5989692796a7d9fec2788e43c2


adding repeated event

Remove setRepeat, add event.

Does it rise repeat also on first press? I think it should. Maybe it should be up, down, press?

Only on second down repeat for now. I think you can handle both differently. Maybe repeat is “running”.
From: Michał Moskal<EMAIL_ADDRESS>Sent: Wednesday, June 20, 2018 1:05 PM
To: Microsoft/pxt-common-packages<EMAIL_ADDRESS>Cc: Peli de Halleux<EMAIL_ADDRESS>Author<EMAIL_ADDRESS>Subject: Re: [Microsoft/pxt-common-packages] adding repeated event (#362)
Does it rise repeat also on first press? I think it should. Maybe it should be up, down, press?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FMicrosoft%2Fpxt-common-packages%2Fpull%2F362%23issuecomment-398879010&data=02|01|jhalleux%40microsoft.com|69c6f8a1018145e3055708d5d6e926eb|72f988bf86f141af91ab2d7cd011db47|1|0|636651219236946327&sdata=qlwMTCN00JOAbWdqHfzTgYGNKfexJC8YwaGwD%2FUB1jU%3D&reserved=0, or mute the threadhttps://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAD-4Kaq5bCZhEmknbVlYZGOXTvLMVtvVks5t-qsAgaJpZM4UvrLh&data=02|01|jhalleux%40microsoft.com|69c6f8a1018145e3055708d5d6e926eb|72f988bf86f141af91ab2d7cd011db47|1|0|636651219236956340&sdata=2lPNNNkHiDJzNyglAyNARAylZEVC96nDSvwDI1DzVYI%3D&reserved=0.


can we add flannel to cni plugin option aswell please

Hi, We are actually using kurl for our High availability. can we also have flannel as cni plugin please.

Hi @sairamkrishna222 , we've got an internal ticket about the future of CNI addons, I've linked to this issue from that ticket.
Thanks for registering interest in kURL!

Hi @alexanderjophus and @sairamkrishna222,
This request seems to be addressed already, see https://kurl.sh/:

So, I am closing this one.
However, please feel free to re-open or raise new ones if you see that fits.


https://visual-regression-tracker.com https cert is expired

https://visual-regression-tracker.com https cert was only valid until: "30.01.22, 10:58:19 MEZ"

@pashidlos Can you please help with this?

https://certbot.eff.org/ should do this for you automatically with letsencrypt certs :)

Where is that site hosted and what could we do to make it up to date?

@paazmaya it's hosted on digital ocean
let ,e know your email, I think I could invite you as team member there


"processManually" in config doesn't work when "autoProcess" set to "true"

Brief Description
I tried stream files by following this https://adonisjs.com/docs/4.0/file-uploads docs. But it seems like     "processManually" doesn't work when "autoProcess" set to "true".
Sample Code
Router.js:
...
Route.post('upload', 'UploadController.upload')
....

UploadController.js
...
    request.multipart.file('my-image', {}, async (file) => {
      await imageOptimizer(file.stream, file.fileName)
    })

    try {
      await request.multipart.process()
      console.log('works');
    } catch (error) {
      console.log(error);
    }
...

Code works correctly only if in config/bodyParser.js key autoProcess set to false (autoProcess: false)
But the same code doesn't work when:
autoProcess: true,
processManually: ['upload']

autoProcess: ['someurl'],
processManually: ['upload']

Error Stack
RuntimeException: E_CANNOT_PROCESS_STREAM: Cannot process multipart stream twice. Make sure to disable files {autoProcess} when manually calling multipart.process
    at Function.invoke (/Users/vlad/Downloads/nanoparser2/node_modules/@adonisjs/generic-exceptions/src/RuntimeException.js:83:12)
    at Multipart.process (/Users/vlad/Downloads/nanoparser2/node_modules/@adonisjs/bodyparser/src/Multipart/index.js:163:49)
    at UploadController.upload (/Users/vlad/Downloads/nanoparser2/app/Controllers/Http/UploadController.js:31:31)
    at Object.method (/Users/vlad/Downloads/nanoparser2/node_modules/@adonisjs/framework/src/Server/index.js:221:18)
    at Server._resolveMiddleware (/Users/vlad/Downloads/nanoparser2/node_modules/@adonisjs/framework/src/Server/index.js:110:28)
    at _resolveListItem (/Users/vlad/Downloads/nanoparser2/node_modules/co-compose/src/Runnable.js:50:28)
    at dispatch (/Users/vlad/Downloads/nanoparser2/node_modules/co-compose/src/Runnable.js:112:16)
    at _.once (/Users/vlad/Downloads/nanoparser2/node_modules/co-compose/src/Runnable.js:111:35)
    at /Users/vlad/Downloads/nanoparser2/node_modules/lodash/lodash.js:10067:25
    at AuthInit.handle (/Users/vlad/Downloads/nanoparser2/node_modules/@adonisjs/auth/src/Middleware/AuthInit.js:46:11)

Screenshots (if any)

It's not documented correctly in the docs, but the processManually array needs to be the exact route name as it appears in the route list, e.g:
processManually: ['/upload']

@antwaanvh thanks, adding slash to route.js and to UploadController.js solver the problem.

It's not documented correctly in the docs, but the processManually array needs to be the exact route name as it appears in the route list, e.g:
processManually: ['/upload']

Just to note that it may be also a dynamic route, like /upload/:id

Keep in mind you need to specify within processManually  the route(s) name, not the endpoint(s) name.

Just to add: if your route (ex:photos) has a prefix (ex: api) it should be added there in the processManually:['/api/photos']


Clarified use of SPO Management Shell and PnP PowerShell.

Corrected download links and updated powershell snippet
Category

[X ] Content fix
[ ] New article
Related issues: fixes #X, partially #Y, mentioned in #Z

What's in this Pull Request?
Clearified use of SPO PowerShell and PnP PowerShell. Updated download links (PnP was incorrectly linked to SPO PS Download). Updated PS snippet to do additional (required) Connect-PnPOnline for the New-PnPSite cmdlet to work.

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs/features/hub-site/create-hub-site-with-powershell.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.

thx Erwin, appreciated. Good to get that more clearly noted in the doc.


Outdated Overridden Functions

All the differences I found that didn't seem obviously deliberate:
The "vegetables" code near the bottom of FlattenTerrain has changed a bit in the game (basically just looks like added SFX). The rest of that method looks up-to-date.
UISpaceGuide._OnLateUpdate has a sizable chunk missing at the bottom and I think a few other differences that weren't commented on in the code.
Ice 氷 has its own waterTypeId (-2) in OnPlanetDataSet but doesn't in the GalacticScale code.
There's a call to planetData.GenBirthPoints in the base game that isn't in GalacticScale's Modeler.Compute; maybe that one's intentional.
GameHistoryData.SetForNewGame is missing the "this.propertyData.Clear();" at the end.
I thought maybe this sort of thing is why I experienced some odd behaviors with GalacticScale like floating over ice instead of being able to walk and build on it, sorters sometimes not noticing belts or even being able to build on top of other objects on some smaller planets, planets being missing from the starmap until I get very close, and the planet generation causing noticeably more lag, but I guess not. I couldn't say any particular issue I came across was caused by GalacticScale since I have ~20 mods installed, so I just thought I'd take a look and not post separate issues for every possible thing that may actually not be related to GalacticScale.
Edit: the theme for Scarlet Ice Lake has different settings than the base game for music (since they just released some new tracks) and rare resources. I didn't check the other themes.

Hey there.
Vegetables code at the bottom of FlattenTerrain I'll look at.
UISpaceGuide._OnLateUpdate I'll look at.
Ice <- The themes have this, are you saying there's other places it's used that I'm overriding? Will look at
GenBirthPoints is dont in the GS2 VeinAlgorithm, I'll make sure its not missing, but birthpoints are being made, so its probably intentional.
this.propertyData is new in the latest update so I'll make sure.
Looks like I need to go through and diff the DSP versions, thanks for the tips!

Yes, sorry, I meant I was comparing OnPlanetDataSet in the GalacticScale code to the same function in the base game; that's the place where the waterTypeId differs.
 Thanks for the mod! ;)

be good if you could join us on discord https://discord.gg/MQqdj2HMH7
you seem to have a bit of insight :)


How to prevent forwarding query without any dot or domain part?

In dnsmasq, settings domain-needed and address=// could both return NXDOMAIN results to prevent forwarding domain without any dot or domain part.
Is there any solution in unbound? I tried local-zone: "." always_nxdomain, while "." seems to match any/all domain.
Those queries without any dot come from Chrome when setting "use a prediction service to help complete searches and URLs typed in the address bar" is checked and no search domains (e.g. lan) is assigned on one's computer. And those queries could leak what users search to upstream DNS. Although it could be solved by uncheck the setting in Chrome, I deem preventing forwarding those queries on a local DNS resolver a more universal solution.
FYI, the feature "use a prediction service to help complete searches and URLs typed in the address bar" in Chrome causes huge traffic on root DNSs. Chromium’s impact on root DNS traffic. I personally care more about privacy but not the traffic on root DNSs.

Since unbound 1.7 you can use aggressive-nsec: yes to use cached covering NSEC answers to generate the NXDOMAIN answers you want for DNNSEC zones (ie. the root). The caveat is that this will work progressively as more and more NSEC records are cached.
SInce unbound 1.8 you can use the auth-zone clause to have unbound transfer the root zone locally and reply from that local data without contacting the root. You can find example configurations here and here and more information about the auth-zone options in your local manpage or online(latest version).
For the future, for such support questions I would recommend the unbound-users mailing list. Other enthusiastic and experienced  Unbound users are also subscribed to this mailing list and can also provide useful input and answers to your questions.
Hope that helps!

Also closing this issue; feel free to reopen if something is not clear.

Thanks for you help. I'm not sure this is want I'm looking for. I use unbound as a forwarding DNS server. What I want achieve is to forward all queries to a public DNS server like <IP_ADDRESS>, but prevent forwarding when no . is contained in the query.

The aggressive-nsec option will eventually do what you want as it can use cached NSEC records to prove that a TLD (Top Level Domain) does not exist. Thus returning NXDOMAIN without the need to contact the root (or the forwarder in your case).
The auth-zone will make unbound aware of the contents of the root zone (i.e., all TLDs). All TLD queries (i.e., "when no . is contained in the query") will be answered by unbound then without the need to ask the forwarder. The answer will either be delegation information in case the TLD exists, or NXDOMAIN for the rest.
Unless I totally misread your intention, I believe auth-zone is exactly what you need.

auth-zone does work, but only if you create one for each TLD, so in practice this is infeasible solution, except for such a limited use case.
If you set the auth-zone name to ., nothing resolves.
If you also set fallback-enabled: yes, then everything resolves, but also queries getting NXDOMAIN answer are every time going to fallback, i.e. forwarded.


Proj ci fix WIP

🚀 Pull Request
Description

Consult Iris pull request check list

Add any of the below labels to trigger actions on this PR:

https://github.com/SciTools/iris/labels/benchmark_this

Merge-ready I think,
Just updating from main ... Benchmarks re-running :
It will be interesting to see if the small slowdowns persist, but unless things get worse I will merge this

Background note :
I also dug a little deeper into how this can happen : #6141
Conclusion : "nox,.conda_install()" does not support a complete package "activation"
- i.e. it does not setup env variables specific to installed  packages
(even though a command-line "conda install" does do this, same as a "conda activate")


SDK resolution does not use global.json

Describe the bug
I have a project that has a specific SDK version in the global.json. However, the resolution for the SDK to use does not honor that.
To Reproduce
Add a global.json with a SDK version different than what UA is using and ensure no rollfoward policy is enabled. For example:
{
  "sdk": {
    "version": "6.0.301",
    "rollForward":"disable"
  },
}

Before adding the global.json, UA was loading 6.0.400-preview.22301.10 of the SDK. After the global.json was added, same thing.
Further technical details

Windows version and bitness info (32-bit or 64-bit): 64-bit
Include the output of dotnet --list-sdks:

3.1.405 [C:\Program Files\dotnet\sdk]
5.0.102 [C:\Program Files\dotnet\sdk]
5.0.200 [C:\Program Files\dotnet\sdk]
6.0.100 [C:\Program Files\dotnet\sdk]
6.0.300-preview.22204.3 [C:\Program Files\dotnet\sdk]
6.0.301 [C:\Program Files\dotnet\sdk]
6.0.400-preview.22301.10 [C:\Program Files\dotnet\sdk]
7.0.100-preview.5.22307.18 [C:\Program Files\dotnet\sdk]

Include the output of upgrade-assistant --version

0.3.330701+fa00bab2d06aab9c710c344c0f32440ad4eb8410

Just to be clear the project in this case is the project you're targeting for upgrade/analysis, right?


Adds recaptcha script management

Fixes #470

Thanks a lot for your help on this @D-Simona-G,
Even if I didn't ended up merging because v10 is too big of a refactor, your insights and PR helped a ton!


rename workflow yaml

rename workflow yaml to match the rest of the kubeflow repos
wait til #37 is merged

LGTM, seems like your branch needs to be rebased


Will .net 8 be supported as soon as it comes out? Will there be any further performance improvements?

At present, when the v1.4.0 version is in use, I feel that the performance is still relatively slow, and there will be obvious waiting when it is executed

Yes .NET 8.0 support was released today (in version 1.5.0)


Need new role: Triage team

need Triage Team (or First Responder Team) to recognize the work with Brigitta and Pey Lian do like on issues and PRs. This team could potentially include the new role identified in astropy/coordination#159 to help with making sure first response to issues and PRs is welcoming and timely.

This recently was brought up again but ultimately decided it was unnecessary because all core lib contributors can triage (do-ocracy) and other repos in the org have their own teams.


XML elements probably shouldn't be numbered

First - thanks for the hard work.  It's the clearest pattern for RESTful Zend I've seen
Not sure why XML elements get set with a number, I would expect that arrays of items added to the DOM would be a the singular of the parent node.   It's confusing that each result would get a different XML element name for what is actually the same data type.
actual:
<response>
<resources>
<resources_0>
<title>foobar</title>
</resources_0>
<resources_1>
<title>title</title>
</resources_1>
</resources>
</response>
expected:
<response>
<resources>
<resource>
<title>foobar</title>
</resource>
<resource>
<title>title</title>
</resource>
</resources>
</response>

oh, that's weird ... I it should behave exactly as you described ... I'll review and find the issue...

I don't use XML a lot anymore, thanks for finding that bug!

Again thanks.  Verified fixed :)


Ctrl + alt keybindings should not be used by default under Windows

VSCode Version: insiders
OS Version: windows

Steps to Reproduce:

Open vscode-insders, open console notice warning

https://github.com/Microsoft/vscode/issues/13567


Propagate Unity context to external projects

Propagate Unity context to external projects. My dependency references UnityEditor and when the dll is copied to the output folder, MSBuild breaks, so I have to manually remove it.

This is similar to the #67 issues, however, in that case the source lives outside of the Unity project but the C# project file has direct references to the current Unity project's generated files.
In this case, the C# project file has no references to any of the generated files of the current Unity project, but must be given the appropriate references to build.

This is also similar to having one Unity project references projects generated in another Unity project but using the former's data.


Calling parser concurrently

I wanted to call concurrently the php7 parser but as rootnode, comments and positions are defined as php7 module variable it does not work. What I did to solve this issue, was to move those structures to the lexer struct https://github.com/z7zmey/php-parser/blob/master/scanner/lexer.go#L438 and update the yacc parser file and it has worked.
Did I miss something somewhere to have it working with goroutines ?
If not, do you have a different idea to handle such a case or would you consider a pull request ?

Hello @antham.
I have refactored php5 and php7 packages. Lexer structures renamed to Parser.
The Parser saves inside AST, errors, positions, and comments.
Now we can concurrently create several instances of Parser and run parsing process.

It is already in master.

Ah ok right thank you.


[google_maps_flutter] Disable street labels

Hello guys,
its possible to hide the street names?
Thanks!

Hey, you can generate on https://mapstyle.withgoogle.com/ map style (without street labels for example)  as string in json format and pass it to GoogleMap controller
  void _onMapCreated(GoogleMapController controller) {     controller.setMapStyle(/* your json style string */);   }

Hello @pedro371 !
Did you manage to solve the issue? Does the solution by @Aljoxa88 worked for you?

Without additional information, we are unfortunately not sure how to resolve this issue. We are therefore reluctantly going to close this bug for now. Please don't hesitate to comment on the bug if you have any more information for us; we will reopen it right away!
Thanks for your contribution.


Template Program.Main should use 'await RunAsync' instead of 'Run'

Now that we can use newer C# features such as async Main, we can have the code inside Main also use async patterns.
Use await RunAsync:
https://github.com/aspnet/Extensions/blob/6991e2b0e8f7a133208d015dc7d0ca4192523ba0/src/Hosting/Abstractions/src/HostingAbstractionsHostExtensions.cs#L57
Before:
        public static void Main(string[] args)
        {
            CreateHostBuilder(args).Build().Run();
        }

After:
        public async static Task Main(string[] args)
        {
            await CreateHostBuilder(args).Build().RunAsync();
        }

FYI @ajcvickers @bricelam - I don't think this affects Migrations because that doesn't look at Main, only the CreateHostBuilder, stuff right?

Dup of https://github.com/aspnet/AspNetCore/issues/5440

@Eilon Correct; shouldn't impact EF.


[Bug]:

Package version
2.0.22
Jest version
29.5.0
node-versions
18.13.0
npm-versions
9.8.1
Description
When using @cloudscape-design/jest-preset on a NodeJS/Typescript web project with ts-jest and babel-jest, I am still getting the SyntaxError: Unexpected token 'export' error. Below is a copy of my jest.config.ts file where I attempt to merge @cloudscape-design/jest-preset with my settings for ts-jest and babel-jest.

ts-jest version: 29.1.0
babel-jest version: 29.7.0

jest.config.ts
import type {JestConfigWithTsJest} from 'ts-jest'
import {defaults as tsjPreset} from 'ts-jest/presets'
import merge from 'merge'

const config: JestConfigWithTsJest = merge.recursive(tsjPreset, {
    // Map @SRC to the src/ folder
    modulePaths: ['<rootDir>/src'],
    moduleNameMapper: {
      '^@SRC/(.*)$': '<rootDir>/src/$1',
    },

    // Enable ts-jest and have it reference test/tsconfig.json
    transform: {
      ...tsjPreset.transform,
      '^.+\\.tsx?$': [
        'ts-jest',
        {
          tsconfig: '<rootDir>/test/tsconfig.json',
        },
      ],
      '^.+\\.jsx?$': 'babel-jest',
    },
    transformIgnorePatterns: [
      '<rootDir>/node_modules/@cloudscape-design/*'
    ],
  }
)

export default config

Source code
No response
Code of Conduct

[X] I agree to follow this project's Code of Conduct
[X] I checked the current issues for duplicate problems

Hi,
in the code you shared, you are not importing the Cloudscape preset. You'll need to add the Cloudscape preset in order to support the syntax used in Cloudscape's code. You can find more details in the "Advanced usage" section of the package readme.


Possible bug in signals.py?

https://github.com/jazzband/django-axes/blob/master/axes/signals.py#L59
Should the following:
        for attempt in attempts:
            failures = max(failures, attempt.failures_since_start)

be modified to:
        for attempt in attempts:
            failures += attempt.failures_since_start

Given that settings.AXES_ONLY_USER_FAILURES maybe return multiple attempts from the same user (different path or data). Wouldn't it make sense for all failed attempts to be summed together?  🤔 💭
Thanks!

Thanks @aleksihakli. Do you know who might be able to determine if the current behaviour is correct (or not)?

I guess @camilonova could provide some input on the subject.

I can expect the current behavior is correct since it has been like this for a long time.
If you think this will be an improvement please make a PR and update tests accordingly.

It doesn't seem to be correct. Users are able to make more attempts than specified in AXES_FAILURE_LIMIT

Are you sure?
I can tell the tests make sure about that.
https://github.com/jazzband/django-axes/blob/master/axes/tests/test_access_attempt.py#L81

Is it possible that the user can have multiple simultaneous access attempts going on at the same time? Can the user be attempting login with different access attempt data or from different IPs?

Can the user be attempting login with different access attempt data or from different IPs?

(I am not an expert in axes) If you look at models.py, ip_addresses and username are separate fields. So if AXES_ONLY_USER_FAILURES = True, then there could be multiple attempts records but only the max() # of failure from each unique IP would be considered?

Cache seems to be the problem in my case (just standard django config).
Have a look a the logs below. It looks like some login attempts are not
registering or even cause the total failure count to go down
(failures_since_start in database actually  go down . Post data are
correctly added to the record.).
Any ideas why this behavior? It works fine with dummy cache.
AXES: BEGIN LOG
AXES: Using django-axes 4.0.2
AXES: blocking by username only.
AXES: New login failure by {user<EMAIL_ADDRESS>ip: '<IP_ADDRESS>',
user-agent: 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:58.0)
Gecko/20100101 Firefox/58.0', path: '/login/'}. Creating access record.
AXES: Repeated login failure by {user<EMAIL_ADDRESS>ip: '<IP_ADDRESS>',
user-agent: 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:58.0)
Gecko/20100101 Firefox/58.0', path: '/login/'}. Count = 2 of 5
AXES: Repeated login failure by {user<EMAIL_ADDRESS>ip: '<IP_ADDRESS>',
user-agent: 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:58.0)
Gecko/20100101 Firefox/58.0', path: '/login/'}. Count = 2 of 5
AXES: Repeated login failure by {user<EMAIL_ADDRESS>ip: '<IP_ADDRESS>',
user-agent: 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:58.0)
Gecko/20100101 Firefox/58.0', path: '/login/'}. Count = 3 of 5
AXES: Repeated login failure by {user<EMAIL_ADDRESS>ip: '<IP_ADDRESS>',
user-agent: 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:58.0)
Gecko/20100101 Firefox/58.0', path: '/login/'}. Count = 3 of 5
AXES: Repeated login failure by {user<EMAIL_ADDRESS>ip: '<IP_ADDRESS>',
user-agent: 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:58.0)
Gecko/20100101 Firefox/58.0', path: '/login/'}. Count = 3 of 5
AXES: Repeated login failure by {user<EMAIL_ADDRESS>ip: '<IP_ADDRESS>',
user-agent: 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:58.0)
Gecko/20100101 Firefox/58.0', path: '/login/'}. Count = 4 of 5
AXES: Repeated login failure by {user<EMAIL_ADDRESS>ip: '<IP_ADDRESS>',
user-agent: 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:58.0)
Gecko/20100101 Firefox/58.0', path: '/login/'}. Count = 4 of 5
AXES: Repeated login failure by {user<EMAIL_ADDRESS>ip: '<IP_ADDRESS>',
user-agent: 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:58.0)
Gecko/20100101 Firefox/58.0', path: '/login/'}. Count = 4 of 5
AXES: Repeated login failure by {user<EMAIL_ADDRESS>ip: '<IP_ADDRESS>',
user-agent: 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:58.0)
Gecko/20100101 Firefox/58.0', path: '/login/'}. Count = 5 of 5
AXES: locked out {user<EMAIL_ADDRESS>ip: '<IP_ADDRESS>', user-agent:
'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:58.0) Gecko/20100101
Firefox/58.0', path: '/login/'} after repeated login attempts.
AXES: Repeated login failure by {user<EMAIL_ADDRESS>ip: '<IP_ADDRESS>',
user-agent: 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:58.0)
Gecko/20100101 Firefox/58.0', path: '/login/'}. Count = 5 of 5
AXES: locked out {user<EMAIL_ADDRESS>ip: '<IP_ADDRESS>', user-agent:
'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:58.0) Gecko/20100101
Firefox/58.0', path: '/login/'} after repeated login attempts.
AXES: New login failure by {user<EMAIL_ADDRESS>ip: '<IP_ADDRESS>',
user-agent: 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:58.0)
Gecko/20100101 Firefox/58.0', path: '/login/'}. Creating access record.
AXES: Repeated login failure by {user<EMAIL_ADDRESS>ip: '<IP_ADDRESS>',
user-agent: 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:58.0)
Gecko/20100101 Firefox/58.0', path: '/login/'}. Count = 2 of 5
AXES: Repeated login failure by {user<EMAIL_ADDRESS>ip: '<IP_ADDRESS>',
user-agent: 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:58.0)
Gecko/20100101 Firefox/58.0', path: '/login/'}. Count = 3 of 5
AXES: Repeated login failure by {user<EMAIL_ADDRESS>ip: '<IP_ADDRESS>',
user-agent: 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:58.0)
Gecko/20100101 Firefox/58.0', path: '/login/'}. Count = 2 of 5
AXES: Repeated login failure by {user<EMAIL_ADDRESS>ip: '<IP_ADDRESS>',
user-agent: 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:58.0)
Gecko/20100101 Firefox/58.0', path: '/login/'}. Count = 3 of 5
AXES: Repeated login failure by {user<EMAIL_ADDRESS>ip: '<IP_ADDRESS>',
user-agent: 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:58.0)
Gecko/20100101 Firefox/58.0', path: '/login/'}. Count = 4 of 5
AXES: Repeated login failure by {user<EMAIL_ADDRESS>ip: '<IP_ADDRESS>',
user-agent: 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:58.0)
Gecko/20100101 Firefox/58.0', path: '/login/'}. Count = 3 of 5
AXES: Repeated login failure by {user<EMAIL_ADDRESS>ip: '<IP_ADDRESS>',
user-agent: 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:58.0)
Gecko/20100101 Firefox/58.0', path: '/login/'}. Count = 5 of 5
AXES: locked out {user<EMAIL_ADDRESS>ip: '<IP_ADDRESS>', user-agent:
'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:58.0) Gecko/20100101
Firefox/58.0', path: '/login/'} after repeated login attempts.
On 7 February 2018 at 14:52, Camilo Nova<EMAIL_ADDRESS>wrote:

Are you sure?
I can tell the tests make sure about that.
https://github.com/jazzband/django-axes/blob/master/axes/tes
ts/test_access_attempt.py#L81
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/jazzband/django-axes/issues/299#issuecomment-363774931,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ATkgsU8BHI6DKLg-BbpMDDcJmnqEtj_xks5tSaqGgaJpZM4Rqgfm
.

@t1user you might be facing a different problem if you're using LocMemCache, please see this documentation.
@charleswhchan after reading through the source code briefly your estimate seems like a legitimate one; it could be possible that an user can attempt multiple logins from e.g. different addresses and axes doesn't take those into account. The AccessAttempt model logic doing the logging into the database wasn't trivial, however, so I think we should model some different scenarios to see how axes behaves in different non-trivial scenarios when the user tries to login from different IP addresses. This is definitely an issue worth spending some time on.
I'm a bit busy at the moment so I can not look into this in the upcoming weeks. It would be great if someone could lend a hand on resolving the issue.

Or at least would it make sense to make its implementation optional? One
definitely wouldn't want to implement a custom cache just for the sake of
Axes (and the standard django implementation LocMemCache doesn't work here).
On 9 February 2018 at 13:35, Aleksi Häkli<EMAIL_ADDRESS>wrote:

@t1user https://github.com/t1user you might be facing a different
problem if you're using LocMemCache, please see this documentation
https://django-axes.readthedocs.io/en/latest/configuration.html#known-configuration-problems
.
@charleswhchan https://github.com/charleswhchan after reading through
the source code briefly your estimate seems like a legitimate one; it could
be possible that an user can attempt multiple logins from e.g. different
addresses and axes doesn't take those into account. The AccessAttempt
model logic doing the logging into the database wasn't trivial, however, so
I think we should model some different scenarios to see how axes behaves
in different non-trivial scenarios when the user tries to login from
different IP addresses. This is definitely an issue worth spending some
time on.
I'm a bit busy at the moment so I can not look into this in the upcoming
weeks. It would be great if someone could lend a hand on resolving the
issue.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/jazzband/django-axes/issues/299#issuecomment-364422131,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ATkgsQyS9okW15ClOMQ5zw5UDnOBcIWiks5tTDt1gaJpZM4Rqgfm
.

@aleksihakli: Thanks for the update.
@t1user: I would also like a option to make caching optional. (also agree, it should probably be a separate ticket)

Please move the discussion on the caching issue to #302.


chore(deps): bumb @lit/react version to 1.0.6

This pull request includes a small change to the package.json file. The change updates the version of the @lit/react dependency from ^1.0.5 to ^1.0.6. In 1.0.5 there is a bug where if you are running the application in dev mode you are getting prototype errors. https://github.com/lit/lit/pull/4774
Also, I think maybe this could be automated trough dependabot?

Thanks for the suggestion, I will set up the dependabot asap.


TestGcat06 is incorrectly written and fails when correctly written

The last line of TestGcat06 is written as the inverse of what it should be according to de Morgan's law. Fixing this will ensure that the allocator works for more complex objects.

Current plan to solve the m-n garbage collection problem: use the second space in the memory block header and a constant amount of auxiliary space per cycle to form disjoint-union structures. This came in a flash of inspiration, an arc-welding of concepts I have not seen in literature to today.


Allow customization based on current cursor selection

I often want to run a custom build target that uses the current selection to know what to run. For example,  I'd like to write a command that does py.test {current-file} -k {current-selection}. It runs the currently selected test in the current file.

Current file is possible using replacements.
The current selection would be very involved and require knowledge of the current grammar scope and parser for that. This is outside of the scope of what this plugin can handle

I don't understand how using the current selection would require any parsing or knowledge of the grammar. It's literally just the text in the selection.

I'm sorry I didn't read you carefully enough. I though somehow extracting the currently selected test from the function.
A replacement for the cursor selection is actually a great idea! I'll look into this!

Sweet!


Provide fallback translations for live content

Short description

This pr provides an error message for mirrored pages where the selected languages does not exist, and provides existing languages as links.
Proposed changes

Add two fields to the language model for translating the error message
Provide the error message in the api in the page preview

Resolved issues

Fixes: #1054

Thank you for the feedback, I added your suggestions now :+1:


Public Comment

The map div will occasionally load incorrectly in the main window.  Looks like there is a slight offset in the display.

Not sure how to recreate this. I'll keep an eye on it


Adding Pig schema-to-ProtoDescriptor functionality with tests

Also add a new version of getMessageFieldNames that takes FieldDescriptors instead of protobufs class.

+1.


Fixed assignment operator terminology

It's not accurate to call the assignment operator = an equal operator, since it might be confused with the equality operators, eg ==.
For the very same reason changed the Minus Equals wording to characters -= and titled the challenges with its commonly used name: compound or augment assignment (see https://en.wikipedia.org/wiki/Augmented_assignment)
What do you think of this clarification?
Thanks.

PS: oops sorry for the branch name

/cc @SaintPeter What do you feel about this?

This is actually a reasonable change.  I do have some notes which I've added inline.

@zerkms When you make the above changes please update with git add then git commit --amend.  You can then do git push -f to overwrite your current branch which will automatically update this PR.

Fixed capitalisation


Swift 2.2 fixes

You need to change from: osx_image: xcode7.2 to osx_image: xcode7.3 in .travis.yml file to fix building. Xcode 7.3 is supporting Swift 2.2.

@okla, as @albinekcom mentioned, we'll need to update Travis config before merging this. Sorry for the delay & thanks :tada:

Hi @okla :wave:, did you want add the travis changes and squash the history? I'm happy help you get it fixed if you have any questions, or I can take over the PR for you if you would prefer.

@agentk Hi, you can take it, thanks.

Cheers @okla.
Closing as the changes are all in #107 now.


osTicket Demo Apps

Information with reference to osTicket Demo app has a comment "Current the  app" it should be "Currently"

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

ID: c0beb9e9-8d92-0194-7a16-111656529a41
Version Independent ID: 68fe41fc-951d-d06a-2eba-9c406e5d7c26
Content: Overview of Contoso migration to Azure
Content Source: articles/migrate/contoso-migration-overview.md
Service: azure-migrate
GitHub Login: @rayne-wiselman
Microsoft Alias: raynew

Hi @Puneetb
Thank you for reporting this issue! We will review and make any necessary changes.

@Puneetb, this has been resolved. confirming the update is now live. Thanks again for pointing this out.
Closing this issue.


Side menu

How to open two fragments in side menu

Hi, @nehachauhan2210 , what do you mean by opening two fragments  ? You want to  show them on one activity ?

Yes
On 29-Aug-2016 1:20 pm, "Alexey Chernenko"<EMAIL_ADDRESS>wrote:

Hi, @nehachauhan2210 https://github.com/nehachauhan2210 , what do you
mean by opening two fragments ? You want to show them on one activity ?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/Yalantis/Side-Menu.Android/issues/49#issuecomment-243055929,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AT721f_O8J7NYsshKV24B28ZqbL6fE8Cks5qko9QgaJpZM4Je623
.

First of all, make sepparate containers for fragment in your activity layout, it can be to FrameLayouts for example.
Ok so as you can see in example ,there is a replace fragment method. There is a line in it
  getSupportFragmentManager().beginTransaction().replace(R.id.content_frame, contentFragment).commit();
R.id.content_frame is your first fragment container. And the content fragment in there is your first fragment  So basicaly in onSwitch method , you can call replaceFragment () , and then   getSupportFragmentManager().beginTransaction().replace(R.id.second_fragment_container, second fragment).commit();

Thanks
On 29-Aug-2016 1:31 pm, "Alexey Chernenko"<EMAIL_ADDRESS>wrote:

First of all, make sepparate containers for fragment in your activity
layout, it can be to FrameLayouts for example.
Ok so as you can see in example ,there is a replace fragment method. There
is a line in it
getSupportFragmentManager().beginTransaction().replace(R.id.content_frame,
contentFragment).commit();
R.id.content_frame is your first fragment container. And the content
fragment in there is your first fragment So basicaly in onSwitch method ,
you can call replaceFragment () , and then getSupportFragmentManager().
beginTransaction().replace(R.id.second_fragment_container, second
fragment).commit();
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/Yalantis/Side-Menu.Android/issues/49#issuecomment-243057887,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AT721Yagz4OR6JXlWjxn2uqHWuGPVT9Qks5qkpHIgaJpZM4Je623
.

Hi,
I was following the instruction TeeRawk posted above for making another fragment but still getting errors.
So far, I understand that onSwitch is where I handle when each icon is clicked and replaceFragment uses getSupportFragmentManager().beginTransaction().replace(R.id.content_frame, contentFragment).commit(); and eventually returns ContentFragment object.
My question is: how do I create a fragment that has its own textView elements. For instance, when BUILDING icon is clicked, it should open a dashboard view with textView and editView elements.
When ABOUT is clicked, it should open a static text view.
I've tried multiple approaches including:
**adding a FrameLayout to activity_main.xml but I couldn't create another contentFragment for getSupportFragmentManager( ) so got errors.
**I created a new Fragment class to extend ContentFragment but still got errors w
**Created custom class to extend Fragment and implement ScreenShotable and still errors
Any tip / guidance will be super appreciated. Thanks.

=====================================
This is my fragment code - full project on github
https://github.com/mohamedebrahim96/Whos-in-Space
===========================================
you may also see the live version on google play
https://play.google.com/store/apps/details?id=com.vacuum.app.whoisinspace


Pluggable architecture

Let third party to extend commands supported by pytest_play thanks to a pluggable architecture

Codecov Report

Merging #1 into develop will increase coverage by 23.1%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           develop      #1      +/-   ##
==========================================
+ Coverage       72%   95.1%   +23.1%
==========================================
  Files            2       3       +1
  Lines          200     184      -16
==========================================
+ Hits           144     175      +31
+ Misses          56       9      -47

Impacted Files
Coverage Δ

pytest_play/engine.py
100% <100%> (ø)

pytest_play/providers.py
100% <100%> (ø)

pytest_play/plugin.py
59.09% <100%> (+4.92%)
:arrow_up:

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 847ff1d...1370feb. Read the comment docs.


Webops 893/wait for available

Inlining was pretty YOLO; can split this diff out and send it upstream after testing(?)

@thepwagner I think in this case keeping them separate and including it as a submodule makes more sense, so we can keep "giving back". To prevent you from doing work double, created https://github.com/DeviaVir/asg_persistence/pull/2 and PR'ed upstream as well over at https://github.com/dizzythinks/asg_persistence/pull/4
Should we move asg_persistence to the pebble org?

Agreed; just didn't want the OSS-shepherding to take longer than the patch while in get-er-done mode :P
Used this branch/Docker build to quickly verify the diff, will resubmit as submodule bump.


[feature/layout-fix-87] Moving graph to right column

Moving graph to right column as per design requirement.

@swarajpure the PR does visual change as below

@rajakvk Can you please add a screenshot for mobile responsive?


[core] Implementing zoom to point with Camera2D

I wanted to implement zoom to mouse position using Camera2D.
I tried setting the camera target to the mouse position (screentoworld coordinates).
This moves the complete viewport.
I already have panning implemented but I am facing difficulty implementing the point zoom.
The viewport should scale with respect to the mouse position.
For now I have zoom to fixed target is working fine.
Can you please help me?
Current code
bool ViewPort::onMouseScrolled(MouseScrolledEvent& event)
{
	const float MAX_ZOOM = 3;
	auto factor = event.GetYOffset() * 0.01f;
	auto zoom = camera.zoom + factor;

	if (zoom > MAX_ZOOM)
		return false;
	if (zoom < 1)
		return false;
	camera.zoom = zoom;
	return false;
}

This is an implementation issue, not an issue with raylib. You need to animate the zoom value.


Display version when building

Instead of this:
Start building sites …

                   | EN
-------------------+-----
  Pages            |  9
  Paginator pages  |  0
  ...

Display this:
Start building sites …
hugo v0.84.0-DEV+extended linux/amd64 BuildDate=unknown

                   | EN
-------------------+-----
  Pages            |  9
  Paginator pages  |  0
  ...

Justification: faster resolution of issues such as:

https://discourse.gohugo.io/t/image-markdown-render-hook-not-working-on-netlify/32876
https://discourse.gohugo.io/t/image-exif-data-shortcode-nil-pointer-evaluating-resource-resource-relpermalink/32643

But only for the initial build.


Too many files in a project just breaks analysis

When you have too many files in a project, we never start analyzing. Possibly related to the change to send files in bulk rather than individually.

I think I've resolved this by deferring initial analysis until after we've loaded all the files and can actually bulk send them. There doesn't seem to be a limit on how many files we can send at once.


Continue on Zed.

Validations

[X] I believe this is a way to improve. I'll try to join the Continue Discord for questions
[X] I'm not able to find an open issue that requests the same enhancement

Problem
Firstly, I love Continue!
But sadly, I'm not using VSCode or JetBrains.
Instead, I'm using Zed. It's an open source text editor written in rust available on macOS and Linux.
https://zed.dev/
Solution
It would be amazing to have a version of Continue available on Zed!
I haven't found your roadmap and I don't know if Continue will be implemented on Zed.
You can find Zed's roadmap for extensions here: https://zed.dev/roadmap
By the way, if you don't have a public roadmap, it would be nice to have one to track your progress.

Thanks for the suggestion! Right now our plan is to focus on JetBrains and VS Code to really get the experience right, and then once bandwidth allows we will expand to as many other editors as possible. For anyone who comes along this issue and wants Continue in Zed, please give a thumbs up—we'll take note of this when deciding what to prioritize!
Separately, while we won't be building a first-class extension right away, if anyone has interest in attempting to integrate Continue's autocomplete, we would potentially be open to contributions


Expose HMAC from cryptonite

Looked through cryptonite's HMAC code, it's a pretty good implementation of the standard algorithm.

Keys shorter than blocksize are zero-padded.
Keys longer than blocksize are hashed.
Inner/outer keys are XORed with the standard 0x36/0x5c.
cryptonite's HMAC type uses a constant-time comparison for Eq - tinfoil isn't using that type, but still a good sign.
HMAC key buffers are scrubbed after leaving scope.

Also:

Add proptests to verify hash/HMAC output against openssl.
Add faster/simpler implementation of safeEq in C to replace the mess that's currently there. There's one behavioural change here, which is that the new version reveals if the strings differ in length (the old one did too, just less obviously). I don't think this is an issue, but let me know if I'm missing something.
Use Control.DeepSeq.Generic for NFData instances, per discussion on #28.

Fixes #29.
@markhibberd

Hm, looks like it's not handling \NUL correctly in keys, will work out why.

Hm, looks like it's not handling \NUL correctly in keys, will work out why.

Keys are null-padded if they're too short, so generating keys with only 0x00 bytes was breaking the tests. Fixed the Arbitrary instance.

Working on the second IO test failure now: looks like encoding issues when invoking openssl, openssl dgst is evaluating HMAC($nonprintable, "") the same as HMAC("", "").

@markhibberd this should be good to go now, fixed the openssl encoding issue by using -macopts hexkey:foo -mac hmac rather than -hmac foo.

Superseded by #32.


thaliNotificationClient doesn't emit when peers go away so thaliReplication doesn't know when to stop looking for them

Right now thaliNotificationClient will only emit when a new peer is found or when an existing peer changes its network address. But it currently doesn't pass on any notifications of when a peer has disappeared. This is partially because we still don't really trust the logic we use to decide when a peer has disappeared and partially because we are trying to do less work for the incubation and this is a perf/battery issue more than a correctness issue.
So right now thaliPullReplicationFromNotification and really the thaliPeerPoolInterface have to decide how often to retry when connecting to a peer after a failure. They don't get any real hints that thaliMobile (via thaliNotificationClient) thinks the peer is gone. Fixing this is pretty easy so we should probably do it. If we trust the notification this will let us know that we can stop trying to connect to the peer. And even if we don't trust the notification it is a useful piece of data for a heurstic that the thaliPeerPoolInterface implementation can use to decide when to stop re-trying a connection.

I really don't like the idea of making the thali replication logic depend on the notification logic to decide when a peer is gone. It makes sense for thali replication logic to depend on notification logic to know when a peer is present because we first have to identify if the peer is anyone we want to replicate with and that is what the notification logic exists to do. But deciding if the peer is gone isn't something that the notification logic has any magic about.
So I think we should connect thaliPullReplicationFromNotification to thaliMobile's peerAvailabilityChanged event and when we get an event that a peer is gone then we can kill any replication we have associated with that peer.
In thaliPullReplicationFromNotification its peerDictionary will only keep track of an event for as long as it is in created state. Once it is started or killed it is no longer tracked. So if we get a peerAvailabilityChanged peer not available event then we can only remove the associated replication event IFF it hasn't been started or killed.
This means that the thaliPeerPool manager has to also track thaliPeerAvailabilityChanged event and for any replication actions it hasn't called kill on it has to kill them since the replication action will no longer be monitored by thaliPullReplicationFromNotification once start is called on it.
The same isn't true however for thaliNotificationAction. thaliNotificationClient will track all thaliNotificationActions until they get a peer not available notification. So thaliPeerPool doesn't need to worry about thaliNotificationActions going away because thaliNotificationClient will kill an action (even if it has started) if the peer disappears.

So a complication is that for the thali replication code or for the peer pool manager to do their thing they have to be able to associate a peer ID and connection type with a peer action. Now that should be easy since all peer actions, regardless of type, are required to provide that information. But it turns out we have a bug in thaliNotificationClient in that it doesn't send that info. What we have to do is update thaliNotificationClient.PeerAdvertisesDataForUs to include the peerID as a field.

So I'm not even sure this is actually a problem.
Let's say we get a peerAvailabilityChanged event for some peer with peerAvailable = true. This will trigger a thaliNotificationAction which will try to connect to that peer. If the action fails then it will automatically retry. If it succeeds then it will cause a replicationAction to be created. Now the replication action has its own retry logic but if that logic eventually fails out then by default we do nothing. It's up to the peer policy manager to decide if it wants to retry again or if it wants to wait for another peerAvailabilityChanged event. But if we could get thaliproject/Thali_CordovaPlugin#733 then it would give us a strong idea if a retry on replication is even worth it. Since we would know that if there is a peerAvailable = false for the peer we will hear about it from thaliproject/Thali_CordovaPlugin#733 but to be fair we could just handle this by subscribing to peerAvailabilityChanged events directly and matching on the peerID. Which I rather like. And it's simpler.


Using win.on event in renderer process give error on console

Using events in renderer process throw error on development console
saying Attempting to call a function in a renderer window that has been closed or released.
win.on('maximize', toggleMaxRestoreButtons);
win.on('unmaximize', toggleMaxRestoreButtons);

This will cause error because you haven't cleaned up correctly and a listener exists on a remote object from a renderer that does not exist any more.
Solution - Avoid using remote or clean up your event handlers on remote objects if you have to use it
Add event remover in your code where you had added events code
window.onbeforeunload = (e) => {
    win.removeAllListeners();
};

This will remove ALL listeners attached to your window before unloading it.
Note - onbeforeunload will be called before page is refreshed or closed.
Screenshot-

Conclusion- update tutorial to adapt to solution
To reproduce-
This is not same as your tutorial but here too I am using win.on events for blur and focus and it throws errors.
https://gist.github.com/AtiqGauri/1cea1c548025faa77f9f29008ca5a5fe#file-main-js-L4

Yeah I have implemented window.onbeforeunload / win.removeAllListeners(); in my own app because I was getting annoying warnings when react autoreloaded. It's a good idea.

Implemented in 73a24df

There is a problem with this, it's pretty likely you might have other event listeners on the win object that you might not want removed just because the webpage reloaded. Maybe only remove the ones that are for the window buttons?

Not hard:
win.removeListener("page-title-updated", updateTitle);
win.removeListener("maximize", toggleMaximized);
win.removeListener("unmaximize", toggleMaximized);
win.removeListener("blur", toggleBlurred);
win.removeListener("focus", toggleBlurred);
win.removeListener("enter-full-screen", toggleFullScreen);
win.removeListener("leave-full-screen", toggleFullScreen);

I suppose so... Perhaps one could even do something like
// Near top of file:
const trackedListeners = {};

// Later:
function addTrackedListener(win, event, handler) {
    win.on(event, handler);
    trackedListeners[event] = handler;
}

function removeTrackedListeners(win) {
    for (event in trackedListeners) {
        win.removeListener(event, trackedListeners[event]);
    }
}

In a way, that doesn't really make any sense.
You're swapping the add functions for a variable and functions that are longer and do the same thing, and the remove functions for two more functions that are longer than just doing it manually
It's more programmatic but it ends up being longer and harder to work out.

This way is much shorter but less proper in some ways:
events = {
  "page-title-updated": updateTitle,
  "maximize": toggleMaximized,
  "unmaximize": toggleMaximized,
  "blur": toggleBlurred,
  "focus": toggleBlurred,
  "enter-full-screen": toggleFullScreen,
  "leave-full-screen": toggleFullScreen
};

for (const event in events) {
  win.on(event, events[event]);
}

window.addEventListener("beforeunload", () => {
  for (const event in events) {
    win.removeListener(event, events[event]);
  }
});

I present to you everything including adding and removing the listeners as well as the functions themselves:
events = {
  "page-title-updated": () => {
    document.getElementById("titlebar-text").innerHTML = document.title;
  },
  "maximize, unmaximize": function toggleMaximized() {
    document.body.classList[win.isMaximized() ? "add" : "remove"]("maximized");
  },
  "blur, focus": () => {
    document.body.classList[win.isFocused() ? "remove" : "add"]("blurred");
  },
  "enter-full-screen, leave-full-screen": function toggleFullScreen() {
    document.body.classList[win.isFullScreen() ? "add" : "remove"]("full-screen");
  }
};

for (const event in events) {
  events[event]();
  event.split(", ").forEach(event2 => {
    win.on(event2, events[event]);
    window.addEventListener("beforeunload", () => {
      win.removeListener(event2, events[event]);
    });
  });
}

It also runs each of the functions, because that's how I made them to be.
As you can see, the variable naming in the second part is horrible, but I'm having trouble doing anything about that.


Update sbt-scoverage to 2.0.5

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

Adjust future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "org.scoverage", artifactId = "sbt-scoverage" } ]

Or, add this to slow down future updates of this dependency:
dependencyOverrides = [{
  pullRequests = { frequency = "@monthly" },
  dependency = { groupId = "org.scoverage", artifactId = "sbt-scoverage" }
}]

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

Codecov Report

Merging #246 (47e5347) into main (337494e) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main     #246   +/-   ##
=======================================
  Coverage   69.13%   69.13%
=======================================
  Files           4        4
  Lines          81       81
  Branches       12       12
=======================================
  Hits           56       56
  Misses         25       25

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


fix(variables): fix variable handling

Not yet ready to be merged
Looking for feedback on the general approach here. This moves a lot of logic into a JSON-based protocol with the debugger through Perl code we inject into it (in the Devel::vscode namespace I made for this purpose). This fixes many issues with variable handling, including changes to the UI (different scopes / scope names) and probably a couple of things I noticed along the way. Probably still has some debug-code in it that ought to be removed before merging. This also removes (as there is no need for it any longer) the variableParser.ts code and associated tests.
Fixes:

https://github.com/raix/vscode-perl-debug/issues/79
https://github.com/raix/vscode-perl-debug/issues/80
https://github.com/raix/vscode-perl-debug/issues/81
https://github.com/raix/vscode-perl-debug/issues/83
https://github.com/raix/vscode-perl-debug/issues/85

Note that the Travis-CI failures for OS X are bogus, https://travis-ci.org/raix/vscode-perl-debug/jobs/514878456 for instance is supposed to test Perl 5.22, but ends up using Perl 5.18 like all tests do for that platform, some pass, some do not, and at this point I doubt that it is due to issues in the code or tests. When I add a couple of commits they will eventually all pass for no apparent reason. The same thing has happened for most of my PRs here.

@hoehrmann I've spent some time on fixing the test suite - now tests pass on both windows/linux/mac os
travis didn't handle perl versions correctly - but now it's a true test matrix
I've fixed some tests leaking a perl instance etc.
I think the work you have in this pr is valuable as it improves variable handling (maybe removes the dependency on padwalker?)
If you get time try merging in master then let's see if the test suite behaves

@raix: It does not remove the need for PadWalker, but does improve a number of things... Okay, will try to update the PR.

@raix: Give this a try. Test suite passes locally at least, and cursory check in vscode suggests it is still working, I also made one change that made me say it is not ready to be merged yet; I still suspect there is some debug-print-ish line somewhere that should be disabled, but haven't found it on short notice. Also, I still replace all of setVariableRequest which has undergone major changes, not sure which version is better. I probably won't be able to do much more in the forseeable future.

Will this pull-request EVER get merged in already?


Invalid stop_str in conversion template json file.

Running this code
import os
import replicate
from dotenv import load_dotenv

load_dotenv()
REPLICATE_API_TOKEN = os.getenv("REPLICATE_API_TOKEN")

prompt = "Q: What is 10*10? A: "

output = replicate.run(
    "meta/llama-2-7b",
    input={
        "prompt": prompt,
        "max_new_tokens": 1000,
        "temperature": 0.75,
        "stop_sequences": "1,0"
    },
)
output = "".join(output)
print(output)

yields the error
Traceback (most recent call last):
  File "/path/to/my/code.py", line 10, in <module>
    output = replicate.run(
             ^^^^^^^^^^^^^^
  File "/path/to/my/anaconda3/envs/ltm/lib/python3.11/site-packages/replicate/client.py", line 148, in run
    return run(self, ref, input, **params)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/path/to/my/anaconda3/envs/ltm/lib/python3.11/site-packages/replicate/run.py", line 61, in run
    raise ModelError(prediction.error)
replicate.exceptions.ModelError: Traceback (most recent call last):
  3: mlc::llm::LLMChatModule::GetFunction(tvm::runtime::String const&, tvm::runtime::ObjectPtr<tvm::runtime::Object> const&)::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#10}::operator()(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) const
        at /workspace/mlc-llm/cpp/llm_chat.cc:1545
  2: mlc::llm::LLMChat::LoadJSONOverride(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool)
        at /workspace/mlc-llm/cpp/llm_chat.cc:483
  1: mlc::llm::LLMChat::LoadJSONOverride(picojson::value const&, bool)
        at /workspace/mlc-llm/cpp/llm_chat.cc:458
  0: mlc::llm::Conversation::LoadJSONOverride(picojson::value const&, bool)
        at /workspace/mlc-llm/cpp/conversation.cc:93
  File "/workspace/mlc-llm/cpp/conversation.cc", line 93
TVMError: Check failed: (config["stop_str"].is<std::string>()) is false: Invalid stop_str in conversion template json file.

What is wrong with "stop_sequences": "1,0"?
FYI if you comment out that line, it runs without error. But I need to use stop sequences. Thank you

FYI if you comment out that line, it runs without error. But i need to use stop sequences. Thank you

Hi @jdkanu. To clarify, the error you're seeing is a problem with the model rather than the Python client itself.
Looking at the schema for meta/llama-2-7b, stop_sequences is documented as:

A comma-separated list of sequences to stop generation at. For example, ',' will stop generation at the first instance of 'end' or ''.

Based on that, I think the model is expecting the encoded strings instead of the token ids. Does that work as expected if you pass those instead?

The intention in this example was to stop the sequence at the first instance of "1" or "0" in the completion, as ASCII characters.
That is, given the prompt "Q: What is 10*10? A: ", we would expect the completion "Q: What is 10*10? A: 100" from the model, so we should reliably expect the model to stop at the "1" or "0" that appear in the number "100". It seems like "stop_sequences": "1,0" should work given the documentation, but I keep getting the error.
I always get this error, even if I pass in simpler strings like "stop_sequences": "," or "stop_sequences": "x". As long as the string is not empty.