text:
kostal-ksem-inverter: grid falsch

Grid ist völlig falsch. Das wird ja hier https://github.com/evcc-io/evcc/blob/master/templates/definition/meter/kostal-ksem-inverter.yaml#L20 über den WR ausgelesen. Falsches Register oder bei Dir einfach nicht wie passende Konfiguration?
Originally posted by @andig in https://github.com/evcc-io/evcc/discussions/3619#discussioncomment-2932866

From the docs for register 252:

Total active power (powermeter)
Sensor position 1 (home consumption): (+) House consumption, (-) generation
Sensor position 2 (grid connection): (+) Power supply, (-) feed-in

/cc @stonemaan bei Dir scheint der Sensor/KSEM einfach an anderer Stelle zu sitzen!
/cc @premultiply wie gehen wir damit um?

Sensorposition muss geändert werden und in der Software auf grid connection geändert werden.
Hier gibt es nichts zu tun.

Sensorposition muss geändert werden und in der Software auf grid connection geändert werden. Hier gibt es nichts zu tun.
Man könnte höchstens noch einen Hinweistext ins Template einfügen.

Meinst du Hardwareseitig? Das wird nicht gehen. Dann muss ich leider wieder auf mein selbst gebasteltes Script umsteigen. Da hat es funktioniert ^^

Ja genau.

Ach ich verstehe. EVCC kann nur Sensor Position 1 verarbeiten. Und Sensor Position 2 nicht. Das muss man doch aber programmtechnisch abfangen können.. mit meinem kleinen Blockly Script in iobroker gehts ja auch. Nur ist evcc comfortabler programmiert. Schade

Ok, ganz verstanden habe ich es nicht, weil ja mein KSEM bzw. mein Kostal WR alle Messwerte (vermeintlich?!) richtig anzeigt.. So funktioniert ja letztendlich auch mein Skript.. ob die Messwerte am KSEM zu ungenau sind bzw. sich von den Messwerten am Zähler unterscheiden kann ich nicht beurteilen.. Vielleicht installiere ich mal irgendwas einen Lesekopf am Zähler und komme auf evcc zurück ;-) Dann danke euch trotzdem für die Hilfe und die gute Arbeit am evcc-Projekt!

Deine App scheint den jeweils anderen Wert auszurechnen. Evcc braucht aber immer und zwingend einen Netzzähler. Den Wert gibt der WR in Deinem Einbauszenario nicht aus. Ich schau später nochmal rein, aber da hilft nur Deine Lösung oder Umbau.

Closed in https://github.com/evcc-io/evcc/commit/131d650ee7b3ea3dedbe0794dcdf3f09d5a882f2

authors: andig premultiply stonemaan

repo: evcc-io/evcc


text:
PV Batterie maxBatteryChargingPower

Is your feature request related to a problem? Please describe.
Die installierte PV Batterie hat eine maximale Ladeleistung von 5kw. Wenn die PV mehr liefert, wird der Überschuss eingespeist. Mit einem Parameter zur Begrenzung der Ladeleistung der PV Batterie könnte parallel das Auto geladen werden. In dem konkreten Beispiel: maxBatteryChargingPower = 4000
in dem Fall würde ab einem Überschuss von 5400w (4000W Batterieladung + 1400W einphasig für das Auto) das Auto geladen werden.
Abgrenzung zu prioritySoC
Beispiel:
maxBatteryChargePower = 4000
prioritySoC = 60
residualpower = 500
Bis 60% wird die PV Batterie mit 4000W geladen und dann nur mit 500W fertiggeladen
Describe the solution you'd like
Ein neuer Parameter in evcc.yaml mit maxBatteryChargingPower.
if (mode == "pv" && (pvPower - homePower) > maxBatteryChargingPower) {
start loading
    if (batterySoC < prioritySoC) {
      maxLadestrom=(pvPower - homePower - maxBatteryChargingPower)/phases/230
   }
}

Describe alternatives you've considered
momentan muss manuell gestartet werden um den Überschuss zu nutzen
Additional context
N/A

Das Auto wird auch ohne diesen Parameter geladen?

source: gharchive/issue

authors: andig pschlein

license: MIT

license_type: permissive

license_source: github-api


text:
Error telemetry: upload failed

Describe the bug
telemetry: upload failed: unexpected status: 403 (Forbidden) every few seconds. reboot does not change anything.
it worked for a long time. i changed nothing in the config.
Steps to reproduce

...
Configuration details
# open evcc at http://evcc.local:7070
network:
  schema: http
  host: evcc.local # .local suffix announces the hostname on MDNS
  port: 7070

log: info
levels:
  cache: error

# unique installation id
plant: xxx

interval: 20s # control cycle interval

sponsortoken: xxx

# sponsors can set telemetry: true to enable anonymous data aggregation
# see https://github.com/evcc-io/evcc/discussions/4554
telemetry: true

mqtt:
  broker: 192.168.177.175:1883
  topic: # root topic for publishing, set empty to disable publishing
  clientid: evcc
  user: xxx
  password: xxx

meters:
- name: grid1
  type: custom
  power:
    source: mqtt
    topic: homeassistant/sensor/power_meter_active_power/state
    scale: -1 # Bezug/Einspeisung umtauschen
- name: pv_dach
  type: custom
  power:
    source: mqtt
    topic: homeassistant/sensor/inverter_input_power/state
- name: pv_gartenhaus
  type: custom
  power:
    source: mqtt
    topic: homeassistant/sensor/pv_gartenhaus_p_ac/state
- name: battery
  type: custom
  soc:
    source: mqtt
    topic: homeassistant/sensor/battery_state_of_capacity/state
  power:
    source: mqtt
    topic: homeassistant/sensor/battery_charge_discharge_power/state
    scale: -1 # Laden/Entladen umtauschen
  capacity: 10

chargers:
- type: template
  template: easee
  user: xxx
  password: xxx
  charger: xxx
  name: wallbox3

vehicles:
- type: template
  template: id
  title: ID4
  user: xxx
  password: xxx
  vin: xxx
  capacity: 77
  phases: 3
  icon: car
  cache: 15m
  mode: pv
  minSoc: 10
  targetSoc: 85
  minCurrent: 6
  maxCurrent: 25
  name: ev2

loadpoints:
- title: Carport
  charger: wallbox3
  mode: pv
  phases: 0
  mincurrent: 6
  maxcurrent: 25
  resetOnDisconnect: false

site:
  title: zu Hause
  meters:
    grid: grid1
    pv:
      - pv_dach
      - pv_gartenhaus
    battery: battery
  prioritySoc: 75
  residualPower: 200
  bufferSoc: 80
  smartCostLimit: 0.10

tariffs:
  grid:
    type: tibber
    token: "xxx"
  feedin:
    type: fixed
    price: 0.0683

Log details
site  ] ERROR 2023/07/05 12:02:09 telemetry: upload failed: unexpected status: 403 (Forbidden)
[site  ] ERROR 2023/07/05 12:02:11 telemetry: upload failed: unexpected status: 403 (Forbidden)
[site  ] ERROR 2023/07/05 12:02:17 telemetry: upload failed: unexpected status: 403 (Forbidden)
[site  ] ERROR 2023/07/05 12:02:37 telemetry: upload failed: unexpected status: 403 (Forbidden)
[site  ] ERROR 2023/07/05 12:02:45 telemetry: upload failed: unexpected status: 403 (Forbidden)
[site  ] ERROR 2023/07/05 12:02:57 telemetry: upload failed: unexpected status: 403 (Forbidden)
[site  ] ERROR 2023/07/05 12:03:17 telemetry: upload failed: unexpected status: 403 (Forbidden)
[site  ] ERROR 2023/07/05 12:03:57 telemetry: upload failed: unexpected status: 403 (Forbidden)
[site  ] ERROR 2023/07/05 12:04:17 telemetry: upload failed: unexpected status: 403 (Forbidden)
[site  ] ERROR 2023/07/05 12:04:37 telemetry: upload failed: unexpected status: 403 (Forbidden)
[site  ] ERROR 2023/07/05 12:04:57 telemetry: upload failed: unexpected status: 403 (Forbidden)
[site  ] ERROR 2023/07/05 12:05:17 telemetry: upload failed: unexpected status: 403 (Forbidden)
[site  ] ERROR 2023/07/05 12:05:37 telemetry: upload failed: unexpected status: 403 (Forbidden)
[site  ] ERROR 2023/07/05 12:05:57 telemetry: upload failed: unexpected status: 403 (Forbidden)
[site  ] ERROR 2023/07/05 12:06:17 telemetry: upload failed: unexpected status: 403 (Forbidden)
[site  ] ERROR 2023/07/05 12:06:37 telemetry: upload failed: unexpected status: 403 (Forbidden)

What type of operating system are you running?
HomeAssistant Add-on
Version
0.118.5

Klingt nach #8117. Es wird meines Wissen immer noch einer ausreichend detaillierteren Log gesucht.

Was mir aufgefallen ist:
Irgendwie ist dann wohl ein Teil des Sponsoring verloren gegangen.
Im UI wird das Sponsoring zwar noch angezeigt, aber in MQTT unter evcc/site/sponsor steht dann "not available" oder " unavailable"

Passiert das eigentlich immer von Anfang an (nach einem evcc Neustart) oder erst "zwischendrin"?

Passiert das eigentlich immer von Anfang an (nach einem evcc Neustart) oder erst "zwischendrin"?

Das passiert dann direkt nach dem Neustart wieder. Hab ein neues Sponsor Token generiert und in die Condor gepackt, jetzt ist der Fehler weg. Aber das alte war definitiv noch nicht über 1000 Tage alt.

@Snited hast Du das alte Token noch und könntest mir das mal an info@evcc.io schicken?

Schwer zu sagen, wann der Auslöser passiert. Die Fehlermeldung kommt ja nur, wenn geladen wird.
Bei mir ist es nach einem Neustart dann wieder okay.

Note to self: anscheinend gültiges Token per 403 abgelehnt.

Heute habe ich auch mit dem neuen Token das gleiche Problem. Zusätzlich mit der easee Wallbox
[easee ] ERROR 2023/07/07 05:04:04 token refresh: unexpected status: 401 (Unauthorized)
[easee ] ERROR 2023/07/07 06:04:03 token refresh: unexpected status: 401 (Unauthorized)
[easee ] ERROR 2023/07/07 07:04:02 token refresh: unexpected status: 401 (Unauthorized)
[easee ] ERROR 2023/07/07 08:04:02 token refresh: unexpected status: 401 (Unauthorized)
[lp-1  ] INFO 2023/07/07 08:13:51 car connected
[lp-1  ] INFO 2023/07/07 08:14:11 start charging ->
[lp-1  ] WARN 2023/07/07 08:14:13 charger out of sync: expected disabled, got enabled
[lp-1  ] ERROR 2023/07/07 08:14:14 charger: Post "https://api.easee.com/api/chargers/EHCG646Y/commands/pause_charging": unexpected status: 401 (Unauthorized)
[site  ] ERROR 2023/07/07 08:14:14 telemetry: upload failed: unexpected status: 403 (Forbidden)
[lp-1  ] WARN 2023/07/07 08:14:31 charger out of sync: expected disabled, got enabled
[lp-1  ] ERROR 2023/07/07 08:14:31 charger: Post "https://api.easee.com/api/chargers/EHCG646Y/commands/pause_charging": unexpected status: 401 (Unauthorized)

Easee siehe https://github.com/evcc-io/evcc/discussions/8844.

Bei mir derselbe Fehler mit der aktuellen Version 0.118.7 beim Laden.
telemetry: upload failed: unexpected status: 403 (Forbidden)
2x Easee Home

@Snited ich kann es leider- auch mit Deinem Token- nicht reproduzieren :(. Könnt ihr bitte mal folgende Konfiguration einstellen:
log: debug
levels:
  site: trace

Und mir dann- wenn es wieder passiert- das Log an info@evcc.io schicken?

@VolkerK62 passiert das nur nach einem Neustart oder kann das auch beliebig zwischendrin auftreten?

Kann ich leider nicht sagen. Da ich sonst keinen Token brauche, fällt es mir erst auf, wenn geladen wird.
Deshalb habe ich jetzt immer noch den MQTT Explorer offen.
Dabei habe ich festgestellt, dass gelegentlich nach einem Neustart unter /evcc/site/sponsor "Sponsor not available" angezeigt wird. Gleichzeitig bekomme ich aber im UI (unten rechts) angezeigt, dass ich Sponsor bin. Ein weiterer Neustart behebt das Problem dann.

Das klingt nach möglichem root cause. Ich schaue mal ob es dazu Logging gibt. Evtl. Könntest du mal „main“ auf trace stellen und schauen ob da was zu sehen ist.

so wie es aussieht, wird bzgl Sponsoring nichts geloggt. Ich habe 2x einen Neustart gemacht. Beim zweiten war dann im MQTT das Sponsoring weg. Aber im Log unter main: trace sind nur Einträge bzgl. latest release.

Ich habe den Fehler "telemetry: upload failed: unexpected status: 403 (Forbidden) " ebenfalls alle paar Sekunden, wenn geladen wird. An sich funktioniert sonst alles einwandfrei. Wie beschrieben tritt der Fehler nur beim Laden auf. Ich bin mir nicht zu 100% sicher, aber ich glaube ich hatte den Fehler zum ersten mal bereits mit Version 118.4
Ich führe jetzt daws Update auf 118.7 aus und melde mich nochmal (incl. log), wenn das Problem weiterhin auftritt.

Interessanter wäre ob die 118.3 den Fehler nicht hat- dann könnte ich nach Unterschieden fahnden.

Wir haben jetzt server-side Logging, wenns wieder passiert bitte melden damit ich sofort rein schauen kann- DANKE!

Fehler ist wieder da„telemetry: upload failed: unexpected status: 403 (Forbidden)“
Während des Ladens an Easee Home.
EVCC v0.118.9

Ich sehe die Logs von 12:08 bis 12:42. Kein Fehler. Merkwürdig.

Ich habe seit 118.8 das Problem nicht mehr. Lade aber auch an einer ABL Wallbox.

Gerade einen Neustart gemacht.
Seitdem tritt der Fehler wieder auf.
MQTT evcc/site/sponsor meldet "sponsorship unavailable"
Erneut neu gestartet, Sponsor ist wieder da, Fehler tritt nicht mehr auf.

Mit 0.118.10 und restart kein Fehler mehr.

Mit 0.118.10 und restart kein Fehler mehr.

Das Problem tritt ja sporadisch auf. "Jetzt hab ich grad kein Problem" hilft also als Update auch nicht.

Mit der 0.118.11 besteht das Problem scheinbar auch noch.
Log von gerade eben:
[site  ] DEBUG 2023/07/29 18:10:31 ----
[lp-1  ] DEBUG 2023/07/29 18:10:31 charge power: 1W
[lp-2  ] DEBUG 2023/07/29 18:10:31 charge power: 3W
[lp-3  ] DEBUG 2023/07/29 18:10:31 charge power: 19W
[lp-4  ] DEBUG 2023/07/29 18:10:31 charge power: 0W
[lp-5  ] DEBUG 2023/07/29 18:10:31 charge power: 2796W
[site  ] DEBUG 2023/07/29 18:10:31 pv power: 3583W
[site  ] DEBUG 2023/07/29 18:10:31 battery soc: 100%
[site  ] DEBUG 2023/07/29 18:10:31 battery power: 0W
[site  ] DEBUG 2023/07/29 18:10:31 grid power: -307W
[site  ] DEBUG 2023/07/29 18:10:31 site power: -207W
[lp-1  ] DEBUG 2023/07/29 18:10:31 charge total import: 24.088kWh
[lp-1  ] DEBUG 2023/07/29 18:10:31 charger status: A
[site  ] TRACE 2023/07/29 18:10:31 telemetry: charge: Δ26/26Wh @ 2819W
[site  ] TRACE 2023/07/29 18:10:31 POST https://api.evcc.io/v1/charge
[site  ] TRACE 2023/07/29 18:10:31 {"instanceId":"***","chargePower":2819,"greenPower":2819,"chargeEnergy":0.025558082153865277,"greenEnergy":0.025543251094807092}
[site  ] ERROR 2023/07/29 18:10:31 telemetry: upload failed: unexpected status: 403 (Forbidden)
[site  ] DEBUG 2023/07/29 18:10:36 ----

Den Fehler habe ich auch seit heute Mittag. Ging im laufenden Betrieb los. Leider ist mein evcc.log abgeschnitten, so dass ich nicht sagen kann, wann es genau losging.

Ha, hab's doch gefunden. :-) Um 13:41:09h gings los ...
[main  ] INFO 2023/07/29 08:07:25 evcc 0.118.11
[main  ] INFO 2023/07/29 08:07:25 using config file: /etc/evcc.yaml
[lp-3  ] ERROR 2023/07/29 12:10:26 charge meter: Get "http://192.168.178.95/cm?cmnd=Status+8&password=&user=": dial tcp 192.168.178.95:80: i/o timeout
[lp-2  ] ERROR 2023/07/29 13:09:29 charger: Post "http://xxx:***@192.168.xxx.xxx/rpc/Shelly.GetStatus": dial tcp 192.168.178.35:80: i/o timeout
[lp-2  ] ERROR 2023/07/29 13:33:25 charge meter: Post "http://xxx:***@192.168.xxx.xxx/rpc/Shelly.GetStatus": dial tcp 192.168.178.35:80: i/o timeout
[lp-3  ] ERROR 2023/07/29 13:36:54 charger: Get "http://192.168.178.95/cm?cmnd=Status+0&password=&user=": net/http: request canceled (Client.Timeout exceeded while awaiting headers)
[site  ] ERROR 2023/07/29 13:41:09 telemetry: upload failed: unexpected status: 403 (Forbidden)
[site  ] ERROR 2023/07/29 13:41:24 telemetry: upload failed: unexpected status: 403 (Forbidden)
[site  ] ERROR 2023/07/29 13:41:39 telemetry: upload failed: unexpected status: 403 (Forbidden)
[site  ] ERROR 2023/07/29 13:41:54 telemetry: upload failed: unexpected status: 403 (Forbidden)
[site  ] ERROR 2023/07/29 13:42:09 telemetry: upload failed: unexpected status: 403 (Forbidden)
[site  ] ERROR 2023/07/29 13:42:24 telemetry: upload failed: unexpected status: 403 (Forbidden)
...

@thierolm  hast du vor Kurzem einen Restart gemacht? Schau mal im UI, ob das Sponsoring angezeigt wird (evtl mit F5 aktualisieren)

Hi @VolkerK62 , ja irgendwas stimmt mit dem Sponsoring nicht: => Sponsorship unavailable :-(

Damit haben wir die Ursache bestätigt, danke!

Hab jetzt eine neues Sponsortoken und sponsore jetzt evcc.io und nicht mehr andig. Jetzt erkennt er mich wieder:

token habe ich auch schon erneuert. Gelegentlich (nicht immer) nach einem Neustart ist das Sponsoring aber wieder weg. Ein weiterer Neustart behebt das Problem dann meistens.

System- oder Dienstneustart?

Dienst. Also mit "restart evcc"

As of yesterday I have the hope our token management process might work better than before. Let's see if this pops up again during the next week and then tentatively close.

Hallo zusammen,
ich bin auf der Version 0.118.11. Bei mir tritt der Fehler auch auf.

Leider keine Verbesserung.
Nach einem Update und trotz mehrmaliger Restarts bleibt es bei "sponsorship unavailable" und damit bei den Fehlermeldungen, wenn geladen wird.

Leider keine Verbesserung. Nach einem Update und trotz mehrmaliger Restarts bleibt es bei "sponsorship unavailable" und damit bei den Fehlermeldungen, wenn geladen wird.

Also bei mir ist das Problem schon länger nnicht mehr aufgetreten. Hast Du Dir einen neuen Token geholt? Das und eines der letzten SW Updates hat zum Erfolg geführt.

Bei mir war es auch eine ganze Zeit ruhig. In der Vergangenheit hat ein Neustart das Problem immer behoben.
Obwohl der Token "ewig" gültig ist, habe ich ihn erneuert. Trotzdem kein Erfolg. Version ist das aktuelle Nightly.

Hatte gestern auch das Problem mit der 0.119.3. Hab mit dem zweiten neu generierten Tokens hat es dann funktioniert.

Habe das Problem jetzt auch neu mit 0.119.3, bereits zwei neue Token generiert und mehrfach neu gestartet. Habe die Telemetrie jetzt erstmal ausgeschaltet, führt sonst zu Irritation der Nutzer.

@andig - ist  heute bei mir zum ersten Mal aufgetreten (mit 0.119.3)... ich möchte das Laden jetzt nicht unterbrechen, aber wenn noch Analyse-Bedarf ist, stelle ich gern mal auf Trace... wenn Du mir genau sagst, was:
So wie Du's weiter oben beschrieben hast?
Oh, und ich sehe gerade, dass ich evtl ein neues Token generieren sollte (wobei meins vielleicht gerade 2 Wochen alt ist).

Bevor ich jetzt ein neues Token generiere und das hier zum Heisen-Bug wird... gebt mir einfach kurz Bescheid, ob weitere Logs im aktuellen Zustand gewünscht/hilfreich sind (falls sich das nach einem Neustart nicht in Luft auflöst).
Vielen Dank Euch!!
Markus
ep 02 16:57:16 evcc evcc[1294]: [lp-1  ] ERROR 2023/09/02 16:57:16 charge meter: data not available
Sep 02 16:57:16 evcc evcc[1294]: [lp-1  ] ERROR 2023/09/02 16:57:16 charge meter: not available
Sep 02 16:57:16 evcc evcc[1294]: [lp-1  ] INFO 2023/09/02 16:57:16 car connected
Sep 02 16:57:23 evcc evcc[1294]: [lp-1  ] INFO 2023/09/02 16:57:23 vehicle updated: unknown -> Kia
Sep 02 16:57:23 evcc evcc[1294]: [lp-1  ] WARN 2023/09/02 16:57:23 charger out of sync: expected disabled, got enabled
Sep 02 16:57:31 evcc evcc[1294]: [lp-1  ] INFO 2023/09/02 16:57:31 start charging ->
Sep 02 16:57:31 evcc evcc[1294]: [site  ] ERROR 2023/09/02 16:57:31 telemetry: upload failed: unexpected status: 403 (Forbidden)
Sep 02 16:57:46 evcc evcc[1294]: [site  ] ERROR 2023/09/02 16:57:46 telemetry: upload failed: unexpected status: 403 (Forbidden)
Sep 02 16:58:06 evcc evcc[1294]: [site  ] ERROR 2023/09/02 16:58:06 telemetry: upload failed: Post "https://api.evcc.io/v1/charge": context deadline exceeded
Sep 02 16:58:16 evcc evcc[1294]: [site  ] ERROR 2023/09/02 16:58:16 telemetry: upload failed: unexpected status: 403 (Forbidden)
Sep 02 16:58:31 evcc evcc[1294]: [site  ] ERROR 2023/09/02 16:58:31 telemetry: upload failed: unexpected status: 403 (Forbidden)
Sep 02 16:58:46 evcc evcc[1294]: [site  ] ERROR 2023/09/02 16:58:46 telemetry: upload failed: unexpected status: 403 (Forbidden)
Sep 02 16:59:01 evcc evcc[1294]: [site  ] ERROR 2023/09/02 16:59:01 telemetry: upload failed: unexpected status: 403 (Forbidden)
Sep 02 16:59:16 evcc evcc[1294]: [site  ] ERROR 2023/09/02 16:59:16 telemetry: upload failed: unexpected status: 403 (Forbidden)
Sep 02 16:59:31 evcc evcc[1294]: [site  ] ERROR 2023/09/02 16:59:31 telemetry: upload failed: unexpected status: 403 (Forbidden)
Sep 02 16:59:46 evcc evcc[1294]: [site  ] ERROR 2023/09/02 16:59:46 telemetry: upload failed: unexpected status: 403 (Forbidden)
Sep 02 17:00:01 evcc evcc[1294]: [site  ] ERROR 2023/09/02 17:00:01 telemetry: upload failed: unexpected status: 403 (Forbidden)
Sep 02 17:00:16 evcc evcc[1294]: [site  ] ERROR 2023/09/02 17:00:16 telemetry: upload failed: unexpected status: 403 (Forbidden)
Sep 02 17:00:31 evcc evcc[1294]: [site  ] ERROR 2023/09/02 17:00:31 telemetry: upload failed: unexpected status: 403 (Forbidden)
Sep 02 17:00:51 evcc evcc[1294]: [site  ] ERROR 2023/09/02 17:00:51 telemetry: upload failed: Post "https://api.evcc.io/v1/charge": context deadline exceeded
Sep 02 17:01:01 evcc evcc[1294]: [site  ] ERROR 2023/09/02 17:01:01 telemetry: upload failed: unexpected status: 403 (Forbidden)
Sep 02 17:01:16 evcc evcc[1294]: [site  ] ERROR 2023/09/02 17:01:16 telemetry: upload failed: unexpected status: 403 (Forbidden)
Sep 02 17:01:31 evcc evcc[1294]: [site  ] ERROR 2023/09/02 17:01:31 telemetry: upload failed: unexpected status: 403 (Forbidden)
Sep 02 17:01:46 evcc evcc[1294]: [site  ] ERROR 2023/09/02 17:01:46 telemetry: upload failed: unexpected status: 403 (Forbidden)
Sep 02 17:02:01 evcc evcc[1294]: [site  ] ERROR 2023/09/02 17:02:01 telemetry: upload failed: unexpected status: 403 (Forbidden)
Sep 02 17:02:16 evcc evcc[1294]: [site  ] ERROR 2023/09/02 17:02:16 telemetry: upload failed: unexpected status: 403 (Forbidden)
Sep 02 17:02:31 evcc evcc[1294]: [site  ] ERROR 2023/09/02 17:02:31 telemetry: upload failed: unexpected status: 403 (Forbidden)
Sep 02 17:02:46 evcc evcc[1294]: [site  ] ERROR 2023/09/02 17:02:46 telemetry: upload failed: unexpected status: 403 (Forbidden)
Sep 02 17:03:01 evcc evcc[1294]: [site  ] ERROR 2023/09/02 17:03:01 telemetry: upload failed: unexpected status: 403 (Forbidden)
Sep 02 17:03:16 evcc evcc[1294]: [site  ] ERROR 2023/09/02 17:03:16 telemetry: upload failed: unexpected status: 403 (Forbidden)
Sep 02 17:03:31 evcc evcc[1294]: [site  ] ERROR 2023/09/02 17:03:31 telemetry: upload failed: unexpected status: 403 (Forbidden)
Sep 02 17:03:46 evcc evcc[1294]: [site  ] ERROR 2023/09/02 17:03:46 telemetry: upload failed: unexpected status: 403 (Forbidden)
Sep 02 17:04:01 evcc evcc[1294]: [site  ] ERROR 2023/09/02 17:04:01 telemetry: upload failed: unexpected status: 403 (Forbidden)
Sep 02 17:04:16 evcc evcc[1294]: [site  ] ERROR 2023/09/02 17:04:16 telemetry: upload failed: unexpected status: 403 (Forbidden)

Bin dann jetzt auch betroffen!
Ebenfalls erst seit heute morgen mit Update auf 119.3!
Mehrere Restart des Dienstes ohne Erfolg...
Gruß
Markus

Here also since update form 0.119.1 to 0.119.3 yesterday

Ich bin leider auch betroffen. Ewigen Token von Andig bekommen. Was soll ich tun (119.3)

Was soll ich tun (119.3)

nichts. Ist ja nicht so tragisch. Du kannst die Übermittlung ausschalten, dann kommen keine Fehlermeldungen mehr.

Bei mir nun auch seit Update auf 119.3 / Lebenslang-Token, habe daher die Telemetrie-Datenübertragung nun deaktiviert, bis es dauerhaft gefixt ist.

bei mir steht (seit 0.119.3 - und auch beim Downgrade auf 0.119.2):
"Du bist Unterstützer" und "Vielen Dank, sponsorship unavailable!"
Token ist aktuell (extra nochmal aktualisiert)

Mit 119.4 wurde es bei mir anscheinend gelöst!
Zumindest funktioniert es aktuell wieder...

Ich würde ehr ein Zusammenhang mit https://github.com/evcc-io/evcc/issues/9696 als der Version vermuten.

Bin seit heute auch betroffen!
Ebenfalls erst mit heutigem Update auf 119.4 über latest von zuvor 118.4 von vor dem Urlaub.
Zahllose Restarts des Dienstes bleiben ohne Erfolg. Sponsorship (mein endloser Token, vor 5 Wochen gesponsert) ist auch zeitgleich betroffen: "Du bist Unterstützer
Vielen Dank, sponsorship unavailable! Dein Beitrag hilft, evcc weiterzuentwickeln."
@markusjnagel, du schreibst von „Token erneuern“. Wie geht denn das?
Grüße
Roland

Bei mir war erst wieder Ruhe an beiden Fronten, nachdem ich ein neues Sponsortoken geholt hatte und telemetry wieder auf false gesetzt hatte, Seitdem werde ich auch als Sponsor wieder namentlich erkannt:
@homrunner:
Hier Sponsortoken erhalten: https://sponsor.evcc.io/

@homrunner - was @sigma415 sagt :wink:  (Danke, warst schneller... :grin: )
Nur zur Info - habe heute neues Token generiert, eingetragen, neugestartet.... und immer noch denselben Fehler. :shrug:
Hatte per UI Telemetry ausgeschaltet, werde morgen mal per YAML ausschalten.... (und ggf wieder einschalten, wenn's denn geht).

Danke @sigma415, @markusjnagel,
Ich haben den Token erneuert und die Telemetry im UI vorübergehend deaktiviert. So klappt es aktuell wieder fehlerfrei.
Gerne würde ich meine Daten wieder über die Telemetry mit evcc teilen und hoffe, dass die Entwickler die Ursache schnell finden.

Moin, bei mir ist das Problem auch seit ein paar Tagen (nach einem Neustart) vorhanden.
Ich hatte bis eben die 0.118.11 drauf und jetzt auf die aktuellste Version aktualisiert.

Irgendwie habe ich den Eindruck, dass die beiden (konkurrierenden ?) Telemetry-Einstellungen in der yaml und im UI eine unterschiedliche Auswirklung auf den Fehler haben.
Bei mir ist es jetzt so:
a.) telemetry: false und im UI "Ich möchte meine Ladedaten teilen" aktiviert => Keine 403-Fehlermeldung
b.) telemetry: true und im UI "Ich möchte meine Ladedaten teilen" aktiviert => 403-Fehlermeldung und "Vielen Dank, sponsorship unavailable!"
c.) (... die dritte Möglichkeit hab ich jetzt nicht mehr ausprobiert)
Und was mich noch etwas verwundert:
Hier https://docs.evcc.io/docs/guides/setup/#telemetry--community-daten  steht, dass telemetry: true veraltet ("deprecated") wäre ....
Nur veraltet ? Oder auch problematisch ?

Scheint wohl so ne Art Heisenbug zu sein...
Musste eh grad an die evcc.yaml ran, da habe ich gesehen dass bei mir überhaupt kein telemetry:<true|false> drin war, also hab ich es mal mit reingenommen (auf false wie bei Dir Fall a.) ).
Bei der Gelegenheit nochmal fix nen neues Token geholt (sicher is sicher)... aber: Keine Änderung, immer noch 403 und immer noch "sponsorship unavailable"
:shrug:

@andig ich sehe das auch immer wieder. Ich hab jetzt hier site und main auf trace, zusammen mit log-headers. Ich denke dann kommen wir jetzt schnell(er) zu einer Lösung.
Frage dazu noch: Mein bisheriger Eindruck (kann aber falsch sein) ist, daß ich das vor allem sehe wenn ich zum Testen meine eigenen Builds laufen habe. Gibt es da vielleicht irgendeinen Filter (vielleicht basierend auf Git Tags oder commit IDs) ?

Gleiches Problem hier auch.
v0,119.4
neues Token geholt
Dienst mehrfach neu gestartet und immer noch "Vielen Dank, sponsorship unavailable! Dein Beitrag hilft, evcc weiterzuentwickeln."

Dito

Bei mir das selbe Problem, nur zusätzlich besteht noch das Problem, dass die Easee Home die eingestellte Ladegrenze nicht erkennt und einfach weiter lädt. Womöglich durch den nicht korrekt erkannten Token!?
v0.119.4
Mein Sponsoring richtet sich noch an andig direkt und nicht an evcc-io! Könnte dies ein Teil des Problems sein, zudem scheint meine evcc.yaml shon recht alt zu sein.
Hier die Ausgabe ohne aktiven Ladevorgang des debug-logs:
[main  ] INFO 2023/09/05 21:32:57 evcc 0.119.4
[main  ] INFO 2023/09/05 21:32:57 using config file: /etc/evcc.yaml
[main  ] INFO 2023/09/05 21:32:57 starting ui and api at :7070
[db    ] INFO 2023/09/05 21:33:07 using sqlite database: /home/alese82/.evcc/evcc.db
[lp-1  ] WARN 2023/09/05 21:33:10 vehicles option is deprecated
[lp-1  ] WARN 2023/09/05 21:33:10 locking phase config to 3p for switchable charger
[site  ] WARN 2023/09/05 21:33:10 deprecated: use 'pv' instead of 'pvs'
[site  ] WARN 2023/09/05 21:33:10 deprecated: use 'battery' instead of 'batteries'
[site  ] WARN 2023/09/05 21:33:10 battery configured but residualPower is missing (add residualPower: 100 to site)
[site  ] INFO 2023/09/05 21:33:10 site config:
[site  ] INFO 2023/09/05 21:33:10   meters:      grid ✓ pv ✓ battery ✓
[site  ] INFO 2023/09/05 21:33:10     grid:      power ✓ energy ✗ currents ✗
[site  ] INFO 2023/09/05 21:33:10     pv 1:      power ✓ energy ✗ currents ✗
[site  ] INFO 2023/09/05 21:33:10     battery 1: power ✓ energy ✗ currents ✗ soc ✓ capacity ✗
[site  ] INFO 2023/09/05 21:33:10   vehicles:
[site  ] INFO 2023/09/05 21:33:10     vehicle 1: range ✓ finish ✓ status ✓ climate ✓ wakeup ✗
[lp-1  ] INFO 2023/09/05 21:33:10 loadpoint 1:
[lp-1  ] INFO 2023/09/05 21:33:10   mode:        pv
[lp-1  ] INFO 2023/09/05 21:33:10   charger:     power ✓ energy ✓ currents ✓ phases ✓ wakeup ✗
[lp-1  ] INFO 2023/09/05 21:33:10   meters:      charge ✓
[lp-1  ] INFO 2023/09/05 21:33:10     charge:    power ✓ energy ✓ currents ✓
[lp-1  ] DEBUG 2023/09/05 21:33:10 phase timer inactive
[lp-1  ] DEBUG 2023/09/05 21:33:10 pv timer inactive
[lp-1  ] DEBUG 2023/09/05 21:33:10 guard timer inactive
[site  ] WARN 2023/09/05 21:33:10 interval <30s can lead to unexpected behavior, see https://docs.evcc.io/docs/reference/configuration/interval
[server] FATAL 2023/09/05 21:33:10 unlinkat /tmp/evcc: operation not permitted

Ich hatte den Fehler bis eben auch... generell habe ich keinen telemtry Eintrag in der ivcc.yaml

Heute morgen Update (Dickes/ Synology) auf v0.119.4 gemacht.
Seitdem kam der Fehler wie hier beschrieben.
Telemetrie über UI ausgeschaltet.
Neustart von ivcc --> Fehler trat nicht mehr auf.
Über https://sponsor.evcc.io/ einen neuen Sponsor-Token generiert.
Neuen Token in ivcc.yaml eingetragen.
ivcc Neustart durchgeführt --> Telemetrie ist noch ausgeschaltet, Fehler tritt nicht auf :-)
Über UI Telemtrie wieder eingeschaltet --> seitdem kein Fehler mehr.

We will add a workaround with https://github.com/evcc-io/evcc/issues/9769.

Habe das gleich Problem - schicke nun eine MAIL...

@fsmaumke Dein Sponsorship ist gekündigt:

Hallo zusammen,
habe ab und an das hier im Log. Jemand eine Idee? AdGuard läuft zwar, dort wird die Adresse aber nicht gesperrt... Sponsoring ist erkannt.
telemetry: upload failed: Post "https://api.evcc.io/v1/charge\": context deadline exceeded

authors: Digital-DW GrimmiMeloni Gronir HooLeeChit MKausHH MrASN PeterMichaelMueller Schlafog0r Snited StefanSchoof ThomasGeissler TomS2 VolkerK62 alese82 andig andy6d erikgieseler fsmaumke homrunner markusjnagel mdkeil orthoenergy premultiply sigma415 snapscanii thierolm


text:
Create a chart type "template" or call it "Basic chart type".

Expected Behavior

Create a basic chart type to illustrate common chart component part creation progress.
Declare common variable which suitable for most of chart type,make common component variable definition have same name,and the data key value mappings could have same key name,like xAxisLabel,or just call it xLabel somelike.
Some variable could have same default value.
Implements common methods make other chart type could be use .
Code it and document it ,so anyone want to contribute a new chart type to britecharts would have acknowledgments to implement the chart type.
Current Behavior

have not create yet.
variable used to same purpose have different name.different default value.

Related to https://github.com/eventbrite/britecharts/issues/264

I've just write some piece of typescript code to illustrate the parts of chart creation.may this help?
// / <reference types = 'd3-selection' />

import {Selection} from 'd3-selection';

declare function define(...args: any[]): any;

interface ChartCreation{
       (this:void):ChartInterface;
}

interface ChartInterface {
    (_selection:Selection<any,any,any,any>):void;
    exportChart (filename) :void;
    width () :this|number;
    height():this|number;
    margin():this|number;
    on():this;
    colorSchema();
}

define(function(require){
    const {exportChart} = require('./helpers/exportChart');
    let svg;
    let exports:ChartInterface;
    let chartCreation:ChartCreation;
    chartCreation = function():ChartInterface{
        return exports;
    }
    exports =  <ChartInterface> function(_selection:Selection<any,any,any,any>){
          _selection.each(function(_data){

            });
    }
    exports.exportChart = function(filename):void{
         exportChart.call(exports, svg, filename);
    }

    return chartCreation

});

Hi @bung87!
Thanks a lot, however I think typescript is not super evident for everybody (it doesn't feel like that to me). I am working already in a small markdown file with some guidelines as you commented on the issue.
Also, I was thinking on grabbing one of the simplest charts and comment a lot inside, so that we can have a demo chart that is also a real chart.
Thanks anyways!

@Golodhros Good to know,we can move forward first,when this done back to exist code make them unified.still have lot work to do.

We would point to one of our charts from the code styleguide document.

repo: eventbrite/britecharts

license_source: bigquery


text:
New Custom Theme

The themes seem to be pretty straight-forward (array of colors). How should one go about creating their own theme?
I'm currently just passing an array of colors to the chart.colorSchema(['...', '...']) method, which I believe is all that it is, but there's nothing I could find in the documentation that outlined which item in the array is corresponding to which thing in the graph(s).
I'm assuming the schema's are pulling double-duty for multiple graph types, so not all array elements are needed from one graph to another, is that correct?
Is there somewhere that explains which each item relates to?
Thanks!

Hi @rpheath, thanks for the issue!
Yes, you are right, the creation of color schemas is as simple as an array with hex values. Yes, also the schema array doesn't need to have any given size. If you know the size of your data, having as many colors as the number of entries should work fine.
The assignation of colors to data entries is usually automatic, as we are using an ordinal scale from d3. There is a couple of proposals https://github.com/eventbrite/britecharts/issues/303 and https://github.com/eventbrite/britecharts/issues/358 about allowing to sort the elements of the chart. We are going to implement them, but I think that just doing the sorting yourself before injecting the data will work in most of the cases.
It's a good call you make for more docs about it. We are going to restructure the docs https://github.com/eventbrite/britecharts/issues/349, I will add a how to guide for customizing your colors.
Thanks again!

authors: Golodhros rpheath


text:
PolicyRule.Name should include vid and tenant id

Otherwise, policy rules from different vlan and tenant would be conflicted.

inactivity

authors: kylezh zwtop

repo: everoute/everoute


text:
Partially specifying copy to change doesn't work

The code seems to expect that you either don't customize any of the text, or you customize all of it - which makes it harder to provide a simple configuration. For instance, if you change the header text, but then don't provide levels because you want to just use the default one, it errors.

now it should thanks to #90

repo: everydotorg/donate-button


text:
Cannot download the PDF with PIL and AttributeError: module 'asyncio' has no attribute 'run'

when I  run the "python3 downloader.py" it stopped as under error:
Traceback (most recent call last):
File "downloader.py", line 2, in
from PIL import Image
ModuleNotFoundError: No module named 'PIL'
After I  commented  line 2, coutinue run "python3 downloader.py",it began to download the pdf by pages, when finished the downloading process,it shows as below:
Traceback (most recent call last):
File "downloader.py", line 250, in
asyncio.run(html2pdf())
AttributeError: module 'asyncio' has no attribute 'run'
who could help me .thanks a lot.

ModuleNotFoundError: No module named 'PIL'
This error message indicates that the Python interpreter cannot find the PIL (Python Imaging Library) module that is required for the code to run.
To resolve this issue, you need to install the PIL module in your Python environment. You can do this by running the following command in your terminal or command prompt:
Copy code
pip install pillow
This command will install the Pillow library, which is a fork of the PIL library that supports more image file formats and is actively maintained.
After installing the Pillow library, try running your code again. It should now be able to find and import the PIL module without any issues.
p/s: ChatGPT suggested and I have solved the same issue by this way.
please note that you should solve the issue not just "comment" the code to pass

ModuleNotFoundError: No module named 'PIL' This error message indicates that the Python interpreter cannot find the PIL (Python Imaging Library) module that is required for the code to run.
To resolve this issue, you need to install the PIL module in your Python environment. You can do this by running the following command in your terminal or command prompt:
Copy code pip install pillow This command will install the Pillow library, which is a fork of the PIL library that supports more image file formats and is actively maintained.
After installing the Pillow library, try running your code again. It should now be able to find and import the PIL module without any issues. p/s: ChatGPT suggested and I have solved the same issue by this way. please note that you should solve the issue not just "comment" the code to pass

Really thank you for you reply, this repository is minority repository, I didnt expect has such quickly reply, you are right I shouldnt solve the issue by "comment" the code to pass. I reinstall the Pillow library by blow commands:
python3 -m pip install --upgrade pip
python3 -m pip install --upgrade Pillow
after that the PIL error didnt show again,but another info shows after I run "python3 downloader.py" {'event': 'error', 'data': {'message': 'An unexpected error occurred.', 'code': 18}}  I really dont know what`s happening. Does it means the line of code 18:AUTH_TOKEN is not right ? I really confused...

repo: evmer/perlego-downloader


text:
Forking mainnet with createMemoryClient returns the wrong genesis block hash

The following jest test fails with the wrong block hash for mainnet's genesis block:
import { expect, it } from "@jest/globals";
import { http } from "viem";
import { createMemoryClient } from "tevm";
import { mainnet } from "tevm/common";

// obviously change this
const mainnetUrl = "http://erigon.dappnode:8545";

it("forks correctly", async () => {
  const client = createMemoryClient({
    fork: { transport: http(mainnetUrl)({}) },
    common: mainnet
  });

  // @ts-ignore
  const tevmBlock = await client.request({
    method: "eth_getBlockByNumber",
    params: ["0x00"]
  });

  expect(tevmBlock.hash)
    .toEqual("0xd4e56740f876aef8c010b86a40d5f56745a118d0906a34e69aec8c0db1cb8fa3");
});

The result I'm getting is "0xeff8054e319d68b09a444777360ba5d400372488a05cabc30d851b3d987b90d3", which is not the actual genesis block

This is expected because the mainnet common uses latest mainnet hardforks and eips. We enable EIPs 4844 and 1559 by default. For this reason tevm isn't gonna provide 100% fidelity on historical blocks and is more optimized for recent blocks.
Ethereumjs supports switching eip and hardfork based on block number but the code to do so is problematic with regard to tree shaking so when tevm adds support it will be optional and look different
This issue is very low on the priority list so gonna add a "looking for help" label

Looks like foundry just uses fork as source of truth for block hash for past blocks but otherwise isn't doing anything to keep hash correct. I'm not seeing anything that sets the EVM and uses the fork as source of truth on pre fork json rpc requests like eth_call.
Using the fork as source of truth even for computed values like blockHash feels like an easy fix and a good one. Will make a ForkedBlock class for this.
I also think adding a passThrough: true option that will do this behavior of using forked chain as source of truth whenever possible is a good compromise if hardfork during execution matters too for methods like eth_call.

Closing in favor of https://github.com/evmts/tevm-monorepo/issues/1360

repo: evmts/tevm-monorepo


text:
:package: Feat: Add new @tevm/chain package

Description
Concise description of proposed changes
Testing
Explain the quality checks that have been done on the code changes
Additional Information

[ ] I read the contributing docs (if this is your first contribution)

Your ENS/address:

#1112  👈
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @roninjin10 and the rest of your teammates on  Graphite

source: gharchive/pull-request


text:
Unable to show percentage sign in notification body

For example, the notification body is, 10% Interest! I cannot show that notification body when the app is in the foreground. I used FCM.presentLocalNotification() to send the notification when the app is in the foreground. The console is showing error given below:
failed to send local notification
java.lang.IllegalArgumentException: Invalid % sequence at 46: 10% Interest!
at libcore.net.UriCodec.decode(UriCodec.java:169)
at java.net.URLDecoder.decode(URLDecoder.java:60)
at com.evollu.react.fcm.SendNotificationTask.doInBackground(SendNotificationTask.java:63)
at com.evollu.react.fcm.SendNotificationTask.doInBackground(SendNotificationTask.java:37)
at android.os.AsyncTask$2.call(AsyncTask.java:295)
at java.util.concurrent.FutureTask.run(FutureTask.java:237)
at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:234)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588)
at java.lang.Thread.run(Thread.java:818)
Environment

react 16.3.1
react-native 0.55.2
react-native-fcm 14.1.3

Also, newline (\n) isn't working.

It works! Thank you.

repo: evollu/react-native-fcm

license: mit


text:
Fix build with react-native 0.33

The signature of onActivityResult changed in react-native@0.33, it now passes the Activity as the first parameter.
Tested by making changes locally in an app using react-native@0.33.0-rc.0

thanks, will merge after 0.33 is released

@evollu 0.33 released

authors: aneesv evollu janicduplessis


text:
Feature request - Enable to work with Parse Collections

This is more of a feature request.
Parse.com has a great backend for storing data that can also be retrieved as Backbone Collections. If there is a simple way to integrate with a Parse backend instead of localStorage, this can become an awesome front end for managing Parse objects.
I am not familiar with Backbone, hence finding it difficult to fork the code.

That's a very good idea. Parse and Evolutility seem to be a good fit. I'll look into it.
Thanks.

authors: evoluteur sathishc

repo: evoluteur/evolutility


text:
Update sbt-scoverage to 2.0.12

About this PR
📦 Updates org.scoverage:sbt-scoverage from 1.9.3 to 2.0.12 ⚠
📜 GitHub Release Notes - Version Diff
Usage
✅ Please merge!
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 = "30 days" },
  dependency = { groupId = "org.scoverage", artifactId = "sbt-scoverage" }
}]

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

Superseded by #331.

repo: evolution-gaming/stracer


text:
Обновленные данные по Мюнхену и небольшие правки

Добавлены детали про ALDI Talk
Добавлено, что сейчас в РФ визы вроде как дают на 6 месяцев, а не на 3
Уточнения про то, какие распечатки предоставлять при подаче на визу, связанные с Anabin
Добавлена ссылка на мюнхенское KVR, описана процедура регистрации в Мюнхене.
Актуализированы названия и сайт банка N26. Убраны противоречащие абзацы.

Может это, идиотскую проверку на опечатки убрать? Что, никто не в состоянии грамотно писать, что ли? А вставлять в файлик словаря слова "файлик", "пин", "симка", "KVR" - ну идиотизм же, ну.

64 строку в файле о банках я не трогал, видимо, так было.

:+1:

@oleksiikyrychenko

спасибо @GodfatherThe

authors: GodfatherThe oleksiikyrychenko profuel


text:
🛑 My Site is down

In 0b7528b, My Site ($SECRET_SITE) was down:

HTTP code: 0
Response time: 0 ms

Resolved: My Site is back up in 0f75258.

repo: exand/upptime


text:
Improve CVE scanner

Sonatye did not list CVE-2022-21724. Improve scanning pipeline to find it.

One option is OWASP dependency-check-maven and its Maven plugin.
This requires configuring a build cache, as it will download a lot of data.

do we dtill need this? We could also just stay with the ossindex scanner + the github security alerts

not important

authors: jakobbraun kaklakariada

repo: exasol/project-keeper-maven-plugin


text:
Add integration tests

Background

Currently, we only use unit tests with mocks for exaslct apis
If these apis our mocks will be wrong without knowing us

Acceptance Criteria

Add integration tests for at least exaslct apis, for github release it might be not so easy

This ticket was mostly done with https://github.com/exasol/script-languages-container-ci/pull/27. The only thing where we don't have an integration test for is the github release. However, this is, in general, difficult to test

repo: exasol/script-languages-container-ci


text:
unable to compile using jdk 14 and netbeans 12

Hi, thanks for the report.
I'm aware of this issue.
As stated in README, building is currently limited to Gradle 4.10 (which is limited to JDK 11) due to an issue in used plugin gradle-nbm-plugin 1.17.0.
I was hoping that plugin will be updated, but maybe it's abandoned. Either I will have to fix it myself or use other method for building...

thanks

From: Miroslav Hajda notifications@github.com
Sent: Thursday, August 6, 2020 7:18 PM
To: exbin/bined-netbeans-plugin bined-netbeans-plugin@noreply.github.com
Cc: Peter Cheung peter@quantr.hk; Author author@noreply.github.com
Subject: Re: [exbin/bined-netbeans-plugin] unable to compile using jdk 14 and netbeans 12 (#13)
Hi, thanks for the report.
I'm aware of this issue.
As stated in README, building is currently limited to Gradle 4.10 (which is limited to JDK 11) due to an issue in used plugin gradle-nbm-plugin 1.17.0https://github.com/radimk/gradle-nbm-plugin.
I was hoping that plugin will be updated, but maybe it's abandoned. Either I will have to fix it myself or use other method for building...
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://github.com/exbin/bined-netbeans-plugin/issues/13#issuecomment-669867482, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AMBCFGOVGXZQTPNLPYW4TYDR7KGO7ANCNFSM4PWOSAYA.

Included build of more recent version of the plugin. Hopefully it works now.

authors: hajdam quantrpeter

repo: exbin/bined-netbeans-plugin


text:
implement multiplayer undo/redo

As we can see in https://github.com/excalidraw/excalidraw/pull/6926. In the collaborative mode, users can only undo and redo their own modifications, and the data synchronized by other terminals cannot be undone.

Duplicate of #5375?

Will be fixed soon, actively working on it! 🙏
(for now closing as duplicate as noted above)

authors: dwelle lizuncong theonlypwner

repo: excalidraw/excalidraw


text:
Add “pan mode” to move canvas by dragging

This would also allow single-finger panning on mobile.

There already is such a mode and you can do so in two ways:

spacebar + drag
wheel (click & hold down) + drag

Or were you thinking of something different?

I was thinking of just regular dragging with nothing held down.

I see. Yes, I can see value in having a special tool (:hand:) to move the canvas, though I'm not sure if it won't add unnecessary clutter (though if no one knows about the shortcuts, then it is necessary indeed). WTBS, maybe adding it to the hint manager when you have selection tool active should be enough.
For mobile though, yea.

I reckon three-finger drag can't be easily implemented in browsers, right?

I doubt it. Two-finger scroll already works though.

I feel like the current behavior on mobile is not optimal. The only way to move around is with two fingers pan, unfortunately I can't be precise enough to be strictly parallel so end up zooming slightly in and out.
The downside is that our currently drawing method is very inefficient when zooming. This means that the experience feels very choppy and slow.
Single finger pan when not selecting an element, double finger pan + zoom in case the entire screen is composed of elements. The only thing remaining is rectangle selection. I don't really know what to do about that :(

The downside is that our currently drawing method is very inefficient when zooming. This means that the experience feels very choppy and slow.

I think the problem is that zoom is rounded to the nearest .01. Maybe we should only do that after the user releases, or not at all.

I think the reason is performance like vjeux suggested. I have very laggy experience on my mid-end Android.

I feel like the current behavior on mobile is not optimal. The only way to move around is with two fingers pan, unfortunately I can't be precise enough to be strictly parallel so end up zooming slightly in and out.
The downside is that our currently drawing method is very inefficient when zooming. This means that the experience feels very choppy and slow.
Single finger pan when not selecting an element, double finger pan + zoom in case the entire screen is composed of elements. The only thing remaining is rectangle selection. I don't really know what to do about that :(

Here is an idea - What do you think about adding a sticky "hand" icon (only on mobile only) under the "locker" icon (at the right edge). If a user clicks on it a one finger pan is activated. (Similar to holding SPACE key on a desktop.) You need a second click to deactivate it or a click on any of the tools.

Really enjoying Excalidraw (I use the Obsidian plugin), thank you.
A weird corner case - on Lenovo Thinkpad, the mouse (trackpoint) is part of the keyboard, and does not simultaneously register key press and mouse movement.  Because of this, I cannot hold down space and use the mouse (trackpoint) to pan.  Having a "move mode" similar to mural.co would make Excalidraw usable on my laptop.  Even if it were a configurable option to enable / disable this control to avoid the clutter (vs. making it mobile only), it would be great.
Thanks again

fixed via https://github.com/excalidraw/excalidraw/pull/6141 🖖

Hello. I am wondering if it is possible to change the default behavior of the "sticky hand" on mobile. For reference I am on a S-Tab 7+. I am also using Excalidraw through Obsidian.
Desired behavior: When in drawing mode with my S Pen, 1 finger panning should work. This requires the app to differentiate between my pen input and my finger input. This is the default behavior in Samsung Note for example and it works really nicely.
Current behavior: One finger panning is not supported so I am forced to use 2 finger panning. 2 finger panning is very bad as mentioned above. Since you can never move exactly parallel, the screen zooms in and out very quickly.
Perhaps this is an option somewhere already?

authors: dwelle heitara j-f1 kylevernyi sehlhorst vjeux


text:
refactor: Remove the word toggle from labels

Continuation of #2645

Why? It's still toggling. Now we'll have variables named zenMode which would indicate a boolean or something, and it's a function.

Yeah the variable names might have to stay untouched.. I was just doing that.

Looking good.

authors: dwelle lipis


text:
[Q] Adjust image position in cell

Hi,
I'm adding some images to my cells, and managed to adapt the cells to have the same width and height of the image, but now images are covering the border of the of the cell, so I want the images inside each cell to go one point to the the right and one point to the bottom, how can I do this?
This is how I'm adding images currently:
   worksheet.addImage(imageId2, {       tl: { col: (dataRow.length - 1), row: rowIndex + 2 },       ext: { width: 93, height: 93 }     });
Thanks.

Here is my solution, Maybe it works for you.
const range = {
    tl: { col: 2 - 0.94, row: 10 - 0.75 },
    br: { col: 6, row: 12 }
}
worksheet.addImage(imageId, range);

authors: skypesky tiagocostaHB

repo: exceljs/exceljs


text:
fix issue #894

Summary
When I use this lib for excel exporting, I found that the issue with image exporting.
When add image with none integer coordinates, I get the wrong position in result file. I found others also facing this problem in issues like #894.
I make some test and lookup the data affter unziping the drawing.xml file. I found that the error is caused by the wrong colwidth and rowheight. The tl and br are set to float number, if the col and row are not resized, the result is ok. But when width or height of the cell, in which tl or br defined, were resized, the result were still calculated with the standard cell width and row. So we got the wrong result.
Test plan
I read the code related with this problem. Finally, I found the reason occured in anchor.js. There is my fix below.
Put the following code in the first line in constructor function. After this we can get the real column width and row height in worksheet.
this.worksheet = worksheet;
Then, modify the colWidth and rowHeight getters methods to get the correct number. As the default height or width can be undefined in worksheet properties, so we can add some protection code for below sample. We can check if the default heigth or width defined, if not, use constant value instead. (for example, height is 15, width is 9.14XXXXXX.)
Math.floor(this.worksheet.getRow(this.nativeRow + 1).height/this.worksheet.properties.defaultRowHeight * 180000) Math.floor(this.worksheet.getColumn(this.nativeCol + 1).width/this.worksheet.properties.defaultColWidth * 640000)
as the following code we put the image in xlsx with correct positions.
worksheet.addImage(imageId, { tl: {col: 1.1, row: 5.83 }, br: {col: 8.85, row: 10.2 } });
testimage

The master code can not pass npm test successfully with node 8.17.0 on ubuntu. So it seems that not mine modification causing this problem.
And, I got the successful result with node 12.22.1 on local.
My local os is ubuntu 20.04.2 LTS


text:
How I can translate the forum to another language

Hi,
Any way to translate the language to french ?
Thanks

You'd need to add a french locale file like this: https://github.com/excid3/simple_discussion/blob/master/config/locales/es.yml
Send a PR for it if you do!


text:
Components are duplicated in the selection dialog

Steps to reproduce:

Open Experience Editor
Try to add new component to the page

Actual result:
Component are duplicated in the list

Expected result:
Dialog should show each component only once.

https://jodosc.blog/2023/06/09/sitecore-10-3-experience-editor-shows-duplicated-rendering-options/

https://jodosc.blog/2023/06/09/sitecore-10-3-experience-editor-shows-duplicated-rendering-options/

In current case described fix is not actual because pipeline is not the part of config.

But the problem still exists because of order of processors:
Sitecore.ExperienceEditor.Pipelines.GetPlaceholderRenderings.GetAllowedRenderings, Sitecore.ExperienceEditor processor should be the last in the list of  piplines like this:

authors: Antonytm bdruziuk

repo: exdst/jss-astro-public


text:
Add test for simple-cipher wrap on decode

Add test to ensure that simple cipher solution correctly wraps characters while decoding.

Great idea!  I see that this problem has no canonical tests, but this seems like a fine addition.  Thanks for your contribution!

authors: matthewmorgan nicholejeannine

repo: exercism/ecmascript


text:
First Class Functions: task 5 misleading test?

At first it was like:
https://github.com/exercism/go/blob/0419fde7a7d147bbe40f7b437a5d107c780eabb6/exercises/concept/expenses/.docs/instructions.md?plain=1#L144
But then:
https://github.com/exercism/go/blob/0419fde7a7d147bbe40f7b437a5d107c780eabb6/exercises/concept/expenses/expenses_test.go#L224
which contradicts the "regardless" part.
I think that's human error or just plain misleading.

Would changing this to "returns error when no records with category found in any period" (removed the word "days") make it clearer for you?

Yes, I believe so

@randych-gilad I'll take a PR for this if you want to make one :)

authors: andrerfcsantos randych-gilad

repo: exercism/go


text:
Misleading description for difference-of-squares exercise

The description of the difference-of-squares exercise states:

Find the difference between the square of the sum and the sum of the squares of the first N natural numbers.

Why do I have to make the tests for squareOfSum and sumOfSquares functions pass if I can code a solution without them by using a formula?

Exercism uses a Test Driven Development (TDD) approach. The detailed requirements are often not fully expressed in the description but are contained in the tests.
This isn't specific to the WebAssembly track. The problem-specifications are shared across languages, including exercise descriptions and test cases.

authors: Stexxe keiravillekode

repo: exercism/wasm


text:
Bob has only one test per default?

I find it a bit strange to have only one test for bob which is running when you run the tests. And the exercise can be completed with the default case of the condition.
Is this on purpose?

The ruby test suites are set up to start with only one failing test and everything else marked as "skip".  At the time these were ported to Elixir, ExUnit had no facility for doing this, so we tried to achieve the same thing by commenting out the later tests.  Now that ExUnit supports filtering by tags, we should uncomment these, tag with @pending and update the instructions to describe filtering out pending test cases.

In this case I need some clarification why the tests are skipped in ruby by default?
Most users would look at the tests to see if they are ignored / pending but there would be some who test against only one case and if it is OK they submit the solution. Then there would be some angry nitpicks mentioning that the code did not pass all the tests...

That has happened.  :smile:  I believe the original intent was to not present a wall of errors to users who are new to programming and/or TDD, as that might be overwhelming.  By focusing on a single test failure and then re-enabling just the next test when one is passing, the user has a path to follow.

OK :)
It is another approach to have the problem solvers look at the test cases too. But this should be done consistent across all the tracks, shouldn't it? I mean in the Java or Python tracks for example you get all the test failures right at the start so you can see that is wrong with the code -- or at least what cases you have to solve so you don't miss anything and shield yourself against angry nitpicks.

Yes, I would agree that it should be consistent.  If the model is to have pending tests, enabled one at a time, then the suites should be updated to match (if each language / testing framework has a way to do that).  Also, it should be clear in the instructions that the exercise is not complete until there are no more pending tests and no more failures.

I know of at least one track, the Go one, where there was an explicit choice to enable all tests because hiding errors is not the Go way.
The idea behind one test at a time seems to be a TDD-like red/green/refactor. However that doesn't work because often what the user will do is write all of the code, see that the first test passes and turn on all other tests.
The only real way in which I could see "staged tests" working is if you collect them into groups of equivalent level and have the exercism tool check for whether the tests pass and if so enable the next group. With group I mean something like for bob to have a group that tests the basic logic and then a second group that tests edge cases and stuff like unicode.
Barring this I would recommend just enabling all tests all the time.

But this should be done consistent across all the tracks, shouldn't it?

I don't think that there should be consistency across the tracks, since each language/culture is different both in terms of how they think about errors, and in terms of who typically submits code.

The idea behind one test at a time seems to be a TDD-like red/green/refactor.

Initially the idea was to provide a sort of simulated TDD environment. I was hoping to provide the feeling that TDD often can give you both in terms of having small "next steps" to follow, and in terms of the rhythm: fail, pass, fail pass.
Getting a wall of errors tends to freak some people out.
I don't necessarily think that exercism can (or should) help people learn TDD. The test suite is really only there to help give people a stopping point (for the first pass) and a starting point (for the conversation).
Ideally, I would like to see a way of making it so that people do not have to edit the test suite. In languages where there is a fail fast mechanism, this is easy. In others, I don't know what the answer is.
I think that angry nitpicks are unwelcome no matter what the person submitting code does, and I wish that I could find a way to address this. If someone didn't complete the exercise the way we expected then our instructions weren't good enough. That's no reason to be unkind.

Yesterday I've updated the bob tests marking them pending (as you can see), thanks for the merge @rubysolo
Now however I have a question about consistency in track itself. I went ahead to update the next assignment (word-count) but here all tests are working right from the start -- or better said they are not working because of the missing implementation.
What is the way for Elixir? Using pending tags and leave the first test case available at start or let every test run right from the start.
Or we shouldn't give it a hang, @kytrinyx ?

@ghajba I think consistency is useful, but I've not done any Elixir so I don't want to impose any solution that might not make sense for the language or track. I would lean towards using the pending tag.

I would say that the level of the exercise matters as well. In an advanced exercise I would expect the user to be able to deal with all tests enabled.
Katrina Owen notifications@github.com schreef op 27 mei 2015 18:32:17 CEST:

@ghajba I think consistency is useful, but I've not done any Elixir so
I don't want to impose any solution that might not make sense for the
language or track. I would lean towards using the pending tag.

Reply to this email directly or view it on GitHub:
https://github.com/exercism/xelixir/issues/47#issuecomment-105986092

In an advanced exercise I would expect the user to be able to deal with all tests enabled.

Agreed.

I do appreciate @tag :pending a lot though. Personally, I think users advanced enough to not need something doesn't care enough one way or another. I think it's more important to help ensure struggling users are set up to be successful and having an enjoyable experience.
Hinting where to start first also emphasizes what you want them to learn. For example, I think it was very useful to start the list-ops exercise by solving reduce function first. Since once that's done, other methods I needed to implement could use the reduce function I just wrote. I've seen a number of solutions posted that implemented the same recursion logic for each individual method of counting, reducing, mapping, appending, and so on. Seems like a tedious and repetitive way to go about it.
Anyway, just my two-cents.

Agreed--we've started adding the pending tag for some solutions. Let's keep going in that direction.

Disclaimer: I'm a total Elixir n00b.

Would it be worth making the exercises mix projects, so we can run mix test and mix test --include pending?
I had to google the whole :pending tag to understand how best to deal with it (comment them out or what) and this SO question was most helpful.
I'd be happy to look into doing this for a PR, if it would help? I think it would just mean including a mix.exs and test_helper.exs file and updating the Help section, unless I'm missing something?

I've changed my own Bob directory into a mix file as an example:
https://github.com/bordeltabernacle/exercism/tree/master/elixir/bob

If it is a mix project, can it still be run without the mix bit?

From my inexperienced forays into experimenting with this it looks like it can't, at least not easily.  But I don't know enough to know if I'm missing something.
From what I can gather mix appears to be the standard way of approaching Elixir projects, and their tests, in a similar way that lein is used for Clojure.  It would also mean that people would not have to edit the test suite.  And for someone who has only completed one Elixir exercise, I've spent more time trying to understand the idiomatic way to deal with @tag :pending than completing the exercise! :)
I can understand your comment "I don't necessarily think that exercism can (or should) help people learn TDD.", although I think exercism can present the language in the way it is used?
Again, I'm perhaps commenting wildly on things I don't know, so apologies if I'm talking rubbish!

I want Exercism to handle each language idiomatically, with as few dependencies as possible.
The idea behind the :pending tag is that you would be given one more test to deal with at a time. Using mix doesn't solve this, since if you run it with the flag to include pending tests, then it would run all of them, not just the next one.
The only language where this has been solved to my satisfaction so far is Go, where we create table tests and stop the execution after the first failure. That way if you get the first test passing, then it will automatically move on to the next one.
Perhaps some languages have a --fail-fast flag of some sort, but that doesn't really help in this case either, because tests are generally run in random order. That's the correct behavior, usually, but not in this context where we're simulating TDD.
@parkerl what's your take on this?

First, I think that making the exercises mix projects is overkill. It adds one more layer to learn for people just coming to Elixir. The reality is that test code is really just elixir code and can always be run with elixir. I think that the :pending tag is an effective way to achieve the step-wise progress you are looking for, @kytrinyx. Having folks run mix test --include pending will defeat that purpose. I also think that the knowledge gained from a need to research what "tags" are is of value to the person doing the exercise. I believe part of your goal is for people to not just learn the language but also how it is tested.
All that said I think perhaps a note in the READMEs might help. Also, I would suggest that trace: true be added to the config like this ExUnit.configure(exclude: :pending, trace: true). This has a more verbose output that includes indicating what tests are skipped.
It changes from this:
○ > elixir word_count_test.exs
word_count.exs:8: warning: variable sentence is unused
Excluding tags: [:pending]

  1) test count one word (WordsTest)
     word_count_test.exs:13
     Assertion with == failed
     code: Words.count("word") == %{"word" => 1}
     lhs:  nil
     rhs:  %{"word" => 1}
     stacktrace:
       word_count_test.exs:14

Finished in 0.08 seconds (0.08s on load, 0.00s on tests)
9 tests, 1 failure, 8 skipped

to this
○ > elixir word_count_test.exs
word_count.exs:8: warning: variable sentence is unused
Excluding tags: [:pending]

WordsTest
  * hyphens (skipped)
  * count multiple occurrences (skipped)
  * ignore punctuation (skipped)
  * count one of each (skipped)
  * ignore underscores (skipped)
  * count one word (2.0ms)

  1) test count one word (WordsTest)
     word_count_test.exs:13
     Assertion with == failed
     code: Words.count("word") == %{"word" => 1}
     lhs:  nil
     rhs:  %{"word" => 1}
     stacktrace:
       word_count_test.exs:14

  * include numbers (skipped)
  * normalize case (skipped)
  * German (skipped)

Finished in 0.07 seconds (0.07s on load, 0.00s on tests)
9 tests, 1 failure, 8 skipped

Thanks, @parkerl. It sounds like mix would be the equivalent of adding rake files to the Ruby tests, and it still wouldn't help solve the problem we're trying to solve. Let's leave it out.
I think you're right that we should add trace: true, and also a little something to the SETUP.md file in the root of this repo, which gets included into the READMEs.
@bordeltabernacle if you have the urge, want to prepare a couple of pull requests with these changes?

This all makes a lot of sense.  I completely understand keeping mix out of the exercises keeps the barrier to entry low, keeping it something to pick up later on for those new to the language.
And something to explain how to deal with the :pending tags will curtail any difficulties with accidentally breaking tests etc.  Adding in trace also makes what's going on more explicit to easily confused newbies like myself. :smile:
I'd be more than happy to submit these changes as PR's.

Thank you, @bordeltabernacle! I see that the first PR got merged (congrats and welcome to open source :)), and that the other is ready.

authors: bordeltabernacle ghajba kytrinyx mayppong parkerl pminten rubysolo

repo: exercism/xelixir


text:
Add version test for Accumulate with updated comment for clarity

See ticket for where this was recommended.

It's passing in the very last commit, but I'd really like to do all of these things separately.
Would you mind making a change to just the rna-transcription exercise, and only about updating the VERSION documentation?
That way if there's a complaint from travis about that, we can focus in on exactly why.

Okay sure! I am still a little new to this open source stuff...would the way that I should do it be to open a branch for each exercise to update the comments?

Yepp, a branch for each would be a great idea.
Sometimes (if the change is trivial) it's fine to make the exact same change to all the different exercises at once, but it's easier to review things and easier to merge when the PRs are very distinct.

Oh, and I'm always happy to help sort out the details, don't hesitate to ask!

authors: kickinbahk kytrinyx

repo: exercism/xruby


text:
Remove date time formatting for log.Fatal

Remove date time formatting for log.Fatal

Done https://github.com/exitshell/konnect/commit/1508d39f4d4bf4749bc5c6f0ac2a855ef389fa48

repo: exitshell/konnect


text:
BadRequest("Invalid 'hash' parameter: Odd number of digits")

Hey there!
I'm trying to submit transactions (and they do endup in the blockchain)!
But I'm getting this weird error printed on the server side...
Sat, 19 May 2018 15:32:15 +0100 ERROR iron::iron Error handling:
Request {
    url: Url { generic_url: "http://192.168.43.29:8000/api/explorer/v1/transactions/[object%20Object]" }
    method: Get
    remote_addr: V4(192.168.43.29:59393)
    local_addr: V4(0.0.0.0:8000)
}
Error was: Compat { error: BadRequest("Invalid \'hash\' parameter: Odd number of digits") }

Submitting the same signed transaction through curl works without any problems:
{
  "body": {
    "issuer": "fa7f9ee43aff70c879f80fa7fd15955c18b98c72310b09e7818310325050cf7a",
    "expiry": "never",
    "description": "print <3 Rust?"
  },
  "protocol_version": 0,
  "service_id": 1,
  "message_id": 0,
  "signature":"15011786453fafa2b432ae8fa1e41eb77ebdc1c831e694c0a362f1c0f51aff5d821f47a08d0f89872ff1a4a7ae7b297cc05f821f807b05e1d25632a457d03800"
}

The client code:
#!/usr/bin/env node
let Exonum = require('exonum-client')
const zeroPubKey = '0000000000000000000000000000000000000000000000000000000000000000'

let ServiceDelegate = Exonum.newType({
  fields: [
    { name: 'issuer', type: Exonum.PublicKey },
    { name: 'expiry', type: Exonum.String },
    { name: 'description', type: Exonum.String },
    { name: 'resolution', type: Exonum.PublicKey }
  ]
})

const keyPair = {
  publicKey: 'fa7f9ee43aff70c879f80fa7fd15955c18b98c72310b09e7818310325050cf7a',
  secretKey: '978e3321bd6331d56e5f4c2bdb95bf471e95a77a6839e68d4241e7b0932ebe2b' +
  'fa7f9ee43aff70c879f80fa7fd15955c18b98c72310b09e7818310325050cf7a'
}

const data_sd = {
  issuer: keyPair.publicKey,
  expiry: 'never',
  description: 'print <3 Rust?',
  resolution: zeroPubKey
}

////////////////////////////////////////////////
// Testing signing and signature verification //
////////////////////////////////////////////////

let signature_sd = Exonum.sign(keyPair.secretKey, data_sd, ServiceDelegate)

if (Exonum.verifySignature(signature_sd, keyPair.publicKey, data_sd, ServiceDelegate)) {
    console.log("OK, signature verified!")
} else {
    console.log("Nope")
}

/////////////////////////////////////
// Let's compose a transaction now //
/////////////////////////////////////

let createServiceDelegate = Exonum.newMessage({
  protocol_version: 0,
  service_id: 1,
  message_id: 0,
  fields: [
    { name: 'issuer', type: Exonum.PublicKey },
    { name: 'expiry', type: Exonum.String },
    { name: 'description', type: Exonum.String }
  ]
})

const data_create_sd = {
  issuer: keyPair.publicKey,
  expiry: 'never',
  description: 'print <3 Rust?'
}

let signature_create_sd = createServiceDelegate.sign(keyPair.secretKey, data_create_sd)
if (Exonum.verifySignature(signature_create_sd, keyPair.publicKey, data_create_sd, createServiceDelegate)) {
    console.log("OK, signature verified: "+signature_create_sd)
} else {
    console.log("Nope")
}

const transactionEndpoint = 'http://192.168.43.29:8000/api/services/empathy/v1/delegates'
const explorerBasePath = 'http://192.168.43.29:8000/api/explorer/v1/transactions/'

Exonum.send(transactionEndpoint, explorerBasePath, data_create_sd, signature_create_sd, createServiceDelegate)
  .then(tx => {
      console.log(tx)
  })
  .catch(err => {
      console.log(err)
  })

Exonum-client version: 0.8.0
Exonum version: 0.7.0

@akosenkov Unexpected response format has been returned on pushing transaction onto http://192.168.43.29:8000/api/services/empathy/v1/delegates endpoint.
Please try to return transaction hash. Hope this helps.

@boguslavsky I'm sorry, but how that would change an error I see in the Iron backend?

Here's the error I get in the .catch block on the client side:
TxCreate: a30c707962f28de175fdae210c03461f5a5f32e2a5583dea6c59fd1161ee88c5990c655e037f16774fa17d6f91531dd15eeab5549f583ab3cf03fdd9b0d1930e
{ Error: Request failed with status code 400
    at createError (/usr/src/app/empathy-client/node_modules/axios/lib/core/createError.js:16:15)
    at settle (/usr/src/app/empathy-client/node_modules/axios/lib/core/settle.js:18:12)
    at IncomingMessage.handleStreamEnd (/usr/src/app/empathy-client/node_modules/axios/lib/adapters/http.js:201:11)
    at IncomingMessage.emit (events.js:132:15)
    at endReadableNT (_stream_readable.js:1101:12)
    at process._tickCallback (internal/process/next_tick.js:152:19)
  config:
   { adapter: [Function: httpAdapter],
     transformRequest: { '0': [Function: transformRequest] },
     transformResponse: { '0': [Function: transformResponse] },
     timeout: 0,
     xsrfCookieName: 'XSRF-TOKEN',
     xsrfHeaderName: 'X-XSRF-TOKEN',
     maxContentLength: -1,
     validateStatus: [Function: validateStatus],
     headers:
      { Accept: 'application/json, text/plain, */*',
        'User-Agent': 'axios/0.18.0' },
     method: 'get',
     url: 'http://192.168.43.29:8000/api/explorer/v1/transactions/[object Object]',
     data: undefined },
  request:
   ClientRequest {
     _events:
      { socket: [Function],
        abort: [Function],
        aborted: [Function],
        error: [Function],
        timeout: [Function],
        prefinish: [Function: requestOnPrefinish] },
     _eventsCount: 6,
     _maxListeners: undefined,
     output: [],
     outputEncodings: [],
     outputCallbacks: [],
     outputSize: 0,
     writable: true,
     _last: true,
     upgrading: false,
     chunkedEncoding: false,
     shouldKeepAlive: false,
     useChunkedEncodingByDefault: false,
     sendDate: false,
     _removedConnection: false,
     _removedContLen: false,
     _removedTE: false,
     _contentLength: 0,
     _hasBody: true,
     _trailer: '',
     finished: true,
     _headerSent: true,
     socket:
      Socket {
        connecting: false,
        _hadError: false,
        _handle: null,
        _parent: null,
        _host: null,
        _readableState: [ReadableState],
        readable: false,
        _events: [Object],
        _eventsCount: 8,
        _maxListeners: undefined,
        _writableState: [WritableState],
        writable: false,
        allowHalfOpen: false,
        _bytesDispatched: 178,
        _sockname: null,
        _pendingData: null,
        _pendingEncoding: '',
        server: null,
        _server: null,
        parser: null,
        _httpMessage: [Circular],
        _idleNext: null,
        _idlePrev: null,
        _idleTimeout: -1,
        [Symbol(asyncId)]: 23,
        [Symbol(lastWriteQueueSize)]: 0,
        [Symbol(bytesRead)]: 275 },
     connection:
      Socket {
        connecting: false,
        _hadError: false,
        _handle: null,
        _parent: null,
        _host: null,
        _readableState: [ReadableState],
        readable: false,
        _events: [Object],
        _eventsCount: 8,
        _maxListeners: undefined,
        _writableState: [WritableState],
        writable: false,
        allowHalfOpen: false,
        _bytesDispatched: 178,
        _sockname: null,
        _pendingData: null,
        _pendingEncoding: '',
        server: null,
        _server: null,
        parser: null,
        _httpMessage: [Circular],
        _idleNext: null,
        _idlePrev: null,
        _idleTimeout: -1,
        [Symbol(asyncId)]: 23,
        [Symbol(lastWriteQueueSize)]: 0,
        [Symbol(bytesRead)]: 275 },
     _header: 'GET /api/explorer/v1/transactions/[object%20Object] HTTP/1.1\r\nAccept: application/json, text/plain, */*\r\nUser-Agent: axios/0.18.0\r\nHost: 192.168.43.29:8000\r\nConnection: close\r\n\r\n',
     _onPendingData: [Function: noopPendingOutput],
     agent:
      Agent {
        _events: [Object],
        _eventsCount: 1,
        _maxListeners: undefined,
        defaultPort: 80,
        protocol: 'http:',
        options: [Object],
        requests: {},
        sockets: [Object],
        freeSockets: {},
        keepAliveMsecs: 1000,
        keepAlive: false,
        maxSockets: Infinity,
        maxFreeSockets: 256 },
     socketPath: undefined,
     timeout: undefined,
     method: 'GET',
     path: '/api/explorer/v1/transactions/[object%20Object]',
     _ended: true,
     res:
      IncomingMessage {
        _readableState: [ReadableState],
        readable: false,
        _events: [Object],
        _eventsCount: 3,
        _maxListeners: undefined,
        socket: [Socket],
        connection: [Socket],
        httpVersionMajor: 1,
        httpVersionMinor: 1,
        httpVersion: '1.1',
        complete: true,
        headers: [Object],
        rawHeaders: [Array],
        trailers: {},
        rawTrailers: [],
        upgrade: false,
        url: '',
        method: null,
        statusCode: 400,
        statusMessage: 'Bad Request',
        client: [Socket],
        _consuming: true,
        _dumped: false,
        req: [Circular],
        responseUrl: 'http://192.168.43.29:8000/api/explorer/v1/transactions/[object%20Object]',
        read: [Function] },
     aborted: undefined,
     timeoutCb: null,
     upgradeOrConnect: false,
     parser: null,
     maxHeadersCount: null,
     _redirectable:
      Writable {
        _writableState: [WritableState],
        writable: true,
        _events: [Object],
        _eventsCount: 2,
        _maxListeners: undefined,
        _options: [Object],
        _redirectCount: 0,
        _requestBodyLength: 0,
        _requestBodyBuffers: [],
        _onNativeResponse: [Function],
        _currentRequest: [Circular],
        _currentUrl: 'http://192.168.43.29:8000/api/explorer/v1/transactions/[object%20Object]' },
     [Symbol(isCorked)]: false,
     [Symbol(outHeadersKey)]: { accept: [Array], 'user-agent': [Array], host: [Array] } },
  response:
   { status: 400,
     statusText: 'Bad Request',
     headers:
      { 'content-length': '163',
        'content-type': 'text/plain',
        date: 'Tue, 22 May 2018 23:52:26 GMT' },
     config:
      { adapter: [Function: httpAdapter],
        transformRequest: [Object],
        transformResponse: [Object],
        timeout: 0,
        xsrfCookieName: 'XSRF-TOKEN',
        xsrfHeaderName: 'X-XSRF-TOKEN',
        maxContentLength: -1,
        validateStatus: [Function: validateStatus],
        headers: [Object],
        method: 'get',
        url: 'http://192.168.43.29:8000/api/explorer/v1/transactions/[object Object]',
        data: undefined },
     request:
      ClientRequest {
        _events: [Object],
        _eventsCount: 6,
        _maxListeners: undefined,
        output: [],
        outputEncodings: [],
        outputCallbacks: [],
        outputSize: 0,
        writable: true,
        _last: true,
        upgrading: false,
        chunkedEncoding: false,
        shouldKeepAlive: false,
        useChunkedEncodingByDefault: false,
        sendDate: false,
        _removedConnection: false,
        _removedContLen: false,
        _removedTE: false,
        _contentLength: 0,
        _hasBody: true,
        _trailer: '',
        finished: true,
        _headerSent: true,
        socket: [Socket],
        connection: [Socket],
        _header: 'GET /api/explorer/v1/transactions/[object%20Object] HTTP/1.1\r\nAccept: application/json, text/plain, */*\r\nUser-Agent: axios/0.18.0\r\nHost: 192.168.43.29:8000\r\nConnection: close\r\n\r\n',
        _onPendingData: [Function: noopPendingOutput],
        agent: [Agent],
        socketPath: undefined,
        timeout: undefined,
        method: 'GET',
        path: '/api/explorer/v1/transactions/[object%20Object]',
        _ended: true,
        res: [IncomingMessage],
        aborted: undefined,
        timeoutCb: null,
        upgradeOrConnect: false,
        parser: null,
        maxHeadersCount: null,
        _redirectable: [Writable],
        [Symbol(isCorked)]: false,
        [Symbol(outHeadersKey)]: [Object] },
     data:
      { debug: 'BadRequest("Invalid \\\'hash\\\' parameter: Odd number of digits")',
        description: 'Bad request: Invalid \'hash\' parameter: Odd number of digits' } } }

real	0m2.905s
user	0m0.089s
sys	0m0.147s

Ok, that seemed to fix it!
        /// Common processing for transaction-accepting endpoints.
        fn post_transaction(&self, req: &mut Request) -> IronResult<Response> {
            match req.get::<bodyparser::Struct<EmpathyTransactions>>() {
                Ok(Some(transaction)) => {
                    let transaction: Box<Transaction> = transaction.into();
                    let tx_hash = transaction.hash();
                    self.channel.send(transaction).map_err(ApiError::from)?;
                    let json = TransactionResponse { tx_hash };
                    self.ok_response(&serde_json::to_value(tx_hash.to_string()).unwrap()) //&serde_json::to_value(&json).unwrap())
                }
                Ok(None) => Err(ApiError::BadRequest("Empty request body".into()))?,
                Err(e) => Err(ApiError::BadRequest(e.to_string()))?,
            }
        }

@DarkEld3r can you please take a look on it

@boguslavsky It's possible to calculate transaction hash on the client side, right? Why rely on the server response (other than checking 20x status, perhaps)?

@DarkEld3r you are right, good catch, i will make it independent to server response.

authors: akosenkov boguslavsky slowli

repo: exonum/exonum-client


text:
name field for debug?

A lot of properties has a name field like Mesh, Node, etc. It would be nice having a name to track when debugging with a complex gltf.

Hi, I've just added this as a feature: https://github.com/expenses/goth-gltf/commit/eaa7014101a350b23c92e45d5ed48b1e616d4ad1 as it might cause too many allocations as some people.

authors: expenses wicast

repo: expenses/goth-gltf


text:
OverflowError: cannot convert float infinity to integer

error while using webcam with predict.py

Traceback (most recent call last):
File "predict.py", line 134, in
main(args)
File "predict.py", line 49, in main
batch_boxes = get_yolo_boxes(infer_model, images, net_h, net_w, config['model']['anchors'], obj_thresh, nms_thresh)
File "C:\Users\aayaa\Desktop\Barrel Detection\yolov3\utils\utils.py", line 255, in get_yolo_boxes
correct_yolo_boxes(boxes, image_h, image_w, net_h, net_w)
File "C:\Users\aayaa\Desktop\Barrel Detection\yolov3\utils\utils.py", line 143, in correct_yolo_boxes
boxes[i].xmin = int((boxes[i].xmin - x_offset) / x_scale * image_w)
OverflowError: cannot convert float infinity to integer

Hi, did you manage to solve it?
I'm getting the same error when i'm trying to train!
Epoch 00027: loss did not improve from 21.46444
Epoch 00027: early stopping
keras/engine/saving.py:292: UserWarning: No training configuration found in save file: the model was not compiled. Compile it manually.
warnings.warn('No training configuration found in save file: '
Traceback (most recent call last):
File "train.py", line 284, in
main(args)
File "train.py", line 272, in main
average_precisions = evaluate(infer_model, valid_generator)
File "/keras-yolo3-master/utils/utils.py", line 48, in evaluate
pred_boxes = get_yolo_boxes(model, raw_image, net_h, net_w, generator.get_anchors(), obj_thresh, nms_thresh)[0]
File "/keras-yolo3-master/utils/utils.py", line 256, in get_yolo_boxes
correct_yolo_boxes(boxes, image_h, image_w, net_h, net_w)
File "/keras-yolo3-master/utils/utils.py", line 146, in correct_yolo_boxes
boxes[i].ymin = int((boxes[i].ymin - y_offset) / y_scale * image_h)
OverflowError: cannot convert float infinity to integer

Hi, did you manage to solve it?
I'm getting the same error when i'm trying to train!
Epoch 00027: loss did not improve from 21.46444
Epoch 00027: early stopping
keras/engine/saving.py:292: UserWarning: No training configuration found in save file: the model was not compiled. Compile it manually.
warnings.warn('No training configuration found in save file: '
Traceback (most recent call last):
File "train.py", line 284, in
main(args)
File "train.py", line 272, in main
average_precisions = evaluate(infer_model, valid_generator)
File "/keras-yolo3-master/utils/utils.py", line 48, in evaluate
pred_boxes = get_yolo_boxes(model, raw_image, net_h, net_w, generator.get_anchors(), obj_thresh, nms_thresh)[0]
File "/keras-yolo3-master/utils/utils.py", line 256, in get_yolo_boxes
correct_yolo_boxes(boxes, image_h, image_w, net_h, net_w)
File "/keras-yolo3-master/utils/utils.py", line 146, in correct_yolo_boxes
boxes[i].ymin = int((boxes[i].ymin - y_offset) / y_scale * image_h)
OverflowError: cannot convert float infinity to integer

I would say looking at the Training loss that your model hasn't learnt properly and bcoz of that, those weights are making values take a very large value >e+30 hence slowly moving to inf which throws this error.

@Srinivasan95D I removed early stopping. it is working better now. at least I have a model I can start trying it.

Hi i have this bug :
How can i correct it ?
Skipping registering GPU devices...
2022-03-03 17:17:47.722828: I tensorflow/core/platform/cpu_feature_guard.cc:142] This TensorFlow binary is optimized with oneAPI Deep Neural Network Library (oneDNN) to use the following CPU instructions in performance-critical operations:  AVX AVX2
To enable them in other operations, rebuild TensorFlow with the appropriate compiler flags.
WARNING:tensorflow:No training configuration found in the save file, so the model was not compiled. Compile it manually.
2022-03-03 17:17:49.641743: I tensorflow/compiler/mlir/mlir_graph_optimization_pass.cc:185] None of the MLIR Optimization Passes are enabled (registered 2)
Traceback (most recent call last):
  File "evaluate.py", line 68, in
    main(args)
  File "evaluate.py", line 56, in main
    average_precisions = evaluate(infer_model, valid_generator)
  File "C:\Users\GEnElect\Desktop\Khalladi_Sofiane_VehicleDetection\Notebook\utils\utils.py", line 50, in evaluate
    pred_boxes = get_yolo_boxes(model, raw_image, net_h, net_w, generator.get_anchors(), obj_thresh, nms_thresh)[0]
  File "C:\Users\GEnElect\Desktop\Khalladi_Sofiane_VehicleDetection\Notebook\utils\utils.py", line 258, in get_yolo_boxes
    correct_yolo_boxes(boxes, image_h, image_w, net_h, net_w)
  File "C:\Users\GEnElect\Desktop\Khalladi_Sofiane_VehicleDetection\Notebook\utils\utils.py", line 146, in correct_yolo_boxes
    boxes[i].xmin = int((boxes[i].xmin - x_offset) / x_scale * image_w)
ValueError: cannot convert float NaN to integer

authors: Aayaam-AI KhalladiSofianeIT Srinivasan95D SteveIb


text:
merge channel and release channel in build metadata

Checklist

[ ] I've added an entry to CHANGELOG.md if necessary.
[ ] I've tagged the changelog entry with [EAS BUILD API] if it's a part of a breaking change to EAS Build API (only possible when updating @expo/eas-build-job package).

Why
I've noticed that we unnecessarily make distinction between channel and releaseChannel in build metadata.
Build metadata is mostly only used for displaying them on the website.
How
This PR merges those two into channel.
Test Plan
None.

Thanks for thinking about this! So this is a confusing naming.
releaseChannel belongs to Classic Updates
channel belongs to EAS Update
They are somewhat analogous, but last time we discussed this, the idea was to keep them separated as they are indeed different things and conflating the difference here but not in other parts of the documentation could be more confusing than helpful.
Do you have a strong opinion about this? If so we could reopen this discussion.

@jkhales This change affects only metadata, it shouldn't have any impact on build process itself, values in job object are still separate
Also, we brought the topic of channel in eas.json up on turtle sync meeting, and from what I remember consensus was to merge the field in eas.json(If I understand correctly we can detect which updates we should configure based on the content of app.json). of course, this only affects user-facing config, job object can have those values separated.
As for the actual metadata change, I think we can reduce that problem to the question, do we want to display channels for classic updates and EAS update differently on the website? If yes then I agree those fields should be kept separate

Exactly, I don't have anything to add. If displaying these two things the same way on the website is fine - then I don't see any reason why we shouldn't merge them.
Currently, we don't make any distinction on the website other than the label name:

When making EAS Update, we wanted a different name than "release channel", since a release channel is really two things: 1. an attribute connected to a build and 2. a link between the build's release channel and a list of updates. In EAS Update, those two things are separate; we can change the channel to branch mapping (2) without changing the channel (1).
So, I'd like to keep these things separate on the website UI. We're going to have docs and videos describing the differences between Classic Updates and EAS Update, and having these term used interchangeably is going to make that more difficult.

i recall the same thing as @wkozyra95:

Also, we brought the topic of channel in eas.json up on turtle sync meeting, and from what I remember consensus was to merge the field in eas.json(If I understand correctly we can detect which updates we should configure based on the content of app.json).

my understanding was that we were going to have a single channel field in eas.json that we would use for both classic updates and eas update, and that the metadata would be updated to match that. this way we don't end up with channel and releaseChannel both in eas build profiles

Closing the PR, see https://github.com/expo/eas-cli/pull/539#issuecomment-889206277

@brentvatne I remember talking about de-nesting the "channel" property:
Changing this:
{
  "updates": {
    "channel": "my-channel"
  }
}

Into this:
{
  "channel": "my-channel"
}

So that "channel" becomes a top-level field in eas.json.
Separately, I think we should keep the "releaseChannel" property. Release channels behave differently with updates than channels and are only for use with Classic Updates. I am assuming that there's little to no difference between release channels and channels inside EAS Build. I'd assume that we end up writing some fields when either are defined. But to developers, Classic Updates and EAS Update will be different, and in our docs we'll be clear that Classic Updates uses the term "release channel" and EAS Update uses "channel", then we'll explain the differences.
If we merge the names to mean both things, I'm afraid we'll confuse developers who are switching to EAS Update, and also those that aren't.

authors: brentvatne dsokal jonsamp wkozyra95

repo: expo/eas-cli


text:
Add autofocus to send link dialog, use enter to accept

Opening the send link popup dialog will autofocus on the "Email or phone" input. Pressing enter will send the link just like clicking "Send Link".

cc @jesseruder

Imported this and cleaned it up in https://github.com/expo/xde/commit/23d01253df1aaed60578fc2d1979fc5cfc788540 -- sorry I forgot to add attribution :( thank you!

repo: expo/xde


text:
Support Device Rotation

The exponent client didn't support device rotation.

We should support it with https://docs.getexponent.com/versions/latest/guides/configuration.html#orientation. Is that not working for you?

repo: exponent/exponent


text:
Updated: URL for Pug

Earlier URL was for Jade and leading to a DNS resolution error

Thanks!


text:
Create CONTRIBUTING.md

Create a basic CONTRIBUTING.md for the project.

You need to give more time for the project to mature

I believe you are correct. However, creating a basic structure and starting development, whether alone or with a team, will help push the project towards maturity.
So created a basic CONTRIBUTING.md for now.

see merge request

We may need to change the license to MIT.

this is for another issue

can you close this issue?

repo: eyalFischel/SmartSaver

license: Unlicense


text:
Windows portable zip

I can make a version on Windows where you just unzip it into a folder and run a .bat file to launch, without touching the rest of the system. Could be for people who install a router distribution that doesn't come with a browser profile. Also avoid the "unknown publisher" thing I think.
To do this I should replace the static firefox.launchers/windows/*.bat files, which will differ from the ones that are generated by the exe installer according to the environment.

Technically this is done. Whether I want to use the background download service or not to handle updates is something I can wait on for a while. More important stuff to do.


text:
🛑 AUR Repo is down

In 37c8cc3, AUR Repo (https://aur.eyenx.ch/x86_64/eyenx.db.tar.gz) was down:

HTTP code: 404
Response time: 485 ms

Resolved: AUR Repo is back up in 3ada938.

repo: eyenx/upptime


text:
Latest update to FHDHR breaks Pluto only on plex. I grabbed the code from a few days ago.

Windows 11 Plex server.
The fhdhr Ui works fine. When I click play the channels open in VLC and successfully play the content.
However nothing will play in Plex. All the channels load in the guide but nothing will play. Any suggestions?
Thanks, Tom

remove tuner from plex, restart plexmediaserver, refresh your browser, and re-add

If thst doesn't work, set logging to debug and post them here

license: WTFPL


text:
$.fn.trigger() - preventDeafult() flag

Feature description
Add to collection method trigger(event, data, prevent) prevent: boolean flag for prevent defaults events from trigger node.
Feature motivation
This needed to replace triggerHandler() JQ method.
Is this feature present in jQuery? Yes

I'm not sure what you mean by this 🤔 jQuery doesn't have such a flag, does it?
I don't think triggerHandler is implementable in Cash. There's no API for retrieving the list of event handlers attached to a node, and we don't have a synthetic event system like jQuery's.

Closing for inactivity.

authors: Valexr fabiospampinato

repo: fabiospampinato/cash


text:
Remove unused state parameter from hk_state_compare and string_to_double

Should fix #31.

Good job, @Bigjango13.

repo: fabiosvm/hook-lang


text:
Minor change needed for scaffold to build against Suave 2.2.x

Description
The recent release of Suave 2.2.x includes a breaking change that, among other things, hides the YoLo.fs file from user code (so its functions are only exposed internally to Suave, and not to end-user code that consumes the Suave library).
This causes one line of the scaffold to break: in Auth.fs, there's a function that uses UTF8.bytes:
let UNAUTHORIZED s = unauthorized (UTF8.bytes s)

UTF8.bytes comes from YoLo.fs, so it's not accessible once you move to Suave 2.2.0 or later. The fix is to replace that line with:
let UNAUTHORIZED (s : string) = unauthorized (System.Text.Encoding.UTF8.GetBytes s)

Alternately, since the unauthorized and UNAUTHORIZED functions are already defined in Suave.RequestErrors, they could simply be deleted from Auth.fs, making the solution even simpler.

Can you please send a pull request?

Running out of time today, but will try to get to it soon (tomorrow, hopefully).

Okay, PR #146 should fix this.

authors: forki rmunn

repo: fable-compiler/fable-suave-scaffold

license: unlicense


text:
webpack changes rolled back

this rolls back webpack structural changes to fix the build

Pls remind that we have a commit and pr title pattern. https://github.com/fabric-design/components/blob/master/CONTRIBUTING.MD

@fragsalat thanks!  noted

authors: fragsalat mousemke

repo: fabric-design/components


text:
Revert "fix(osio): always use jenkins proxy"

Reverts fabric8-launcher/launcher-backend#387

Ike Plugins (test-keeper)
Thank you @gastaldi for this contribution!

It appears that no tests have been added or updated in this PR.
Automated tests give us confidence in shipping reliable software. Please add some as part of this change.
If you are an admin or the reviewer of this PR and you are sure that no test is needed then you can use the command /ok-without-tests as a comment to make the status green.
For more information please head over to official documentation. You can find there how to configure the plugin - for example exclude certain file types so if PR contains only them it won't be checked.

authors: alien-ike gastaldi


text:
WIREFRAME/VISUAL: Hierarchical presentation of areas

Create designs that show how to present the areas as paths and in a hierarchical view.
Also, related concerns/questions from the UX workshop:

Consider adding a description field
Explore showing collaborators (or not) on the areas page

(We agreed that the space name wouldn't appear on the page, but the rest of the presentation is up for grabs.)

Is someone working on the wireframe?  How do we go about it?

authors: Essjaysee sunilmalagi


text:
add commit to json,bugs

{
//Current UrlPrefix
"urlPrefix": "/App",
//Current Module CookiePrefix
"cookiePrefix": "App_",
//Current Module SessionPrefix
"sessionPrefix": "App_",
}
SimpleJson.DeserializeObject(json);//bugs here!

@xiaolu6t did you mean comment? If so we have no plans to support comment since it is not part of json spec.

no plans to add this as it is not part of the spec

repo: facebook-csharp-sdk/simple-json