No Issue | Tip for a Mushroom-Desk-Card

Hi. Thanks to this project i can move my desk up and down with home assistant. awesome.
I've made a card that uses custom:button-card and custom:mushroom-card to create a mushroom-like desk-card.
The card looks like this (with the typical big padding for mushroom cards)

or like this (with my smaller paddings around the card)

The Buttons on the right side on the card...
1.) turn on the switch.down-entity
2.) turn off the switch.up and switch-down-entity
3.) turn on the swith.up-entity
4.) call the button.sit-entity
5.) call the button.stand-entity
To do this you need:

Button-Card
Mushroom-Cards
the following little script that switches switch.up and switch.down off (for the pause-button)

alias: schreibtisch anhalten
sequence:
  - service: switch.turn_off
    data: {}
    target:
      entity_id:
        - switch.up
        - switch.down
mode: single

And this yaml-code
type: custom:button-card
entity: cover.desk
show_name: false
show_state: false
show_icon: false
styles:
  card:
    - overflow: unset
    - padding: 3px
  grid:
    - grid-template-areas: '"mushroom colors"'
    - grid-template-columns: auto 15rem
custom_fields:
  mushroom:
    card:
      type: custom:mushroom-template-card
      entity: '[[[ return entity.entity_id ]]]'
      tap_action:
        action: more-info
      icon_color: blue
      primary: '{{ state_attr(entity,"friendly_name") }}'
      secondary: >-
        {{ states("sensor.desk_height") }} {{
        state_attr("sensor.desk_height","unit_of_measurement") }}
      icon: '{{ state_attr(entity,"icon") }}'
      card_mod:
        style: |
          ha-card {
            padding: 3px 3px 3px 3px !important; #comment this line out if you want the bigger paddings around the card
            text-align: left !important;
            border: none !important;
            box-shadow: none !important;
          }
  colors:
    card:
      type: grid
      columns: 5
      square: false
      cards:
        - type: custom:button-card
          tap_action:
            action: call-service
            service: switch.turn_on
            service_data:
              entity_id: switch.down
          size: 70%
          show_state: false
          show_name: false
          show_icon: true
          icon: mdi:arrow-down
          styles:
            card:
              - padding: 3px
              - height: 40px
              - width: 2.5rem
              - box-shadow: none
              - border: none
              - background: var(--secondary-background-color)
        - type: custom:button-card
          tap_action:
            action: call-service
            service: script.schreibtisch_anhalten
          size: 70%
          show_state: false
          show_name: false
          show_icon: true
          icon: mdi:pause
          styles:
            card:
              - padding: 3px
              - height: 40px
              - width: 2.5rem
              - box-shadow: none
              - border: none
              - background: var(--secondary-background-color)
        - type: custom:button-card
          tap_action:
            action: call-service
            service: switch.turn_on
            service_data:
              entity_id: switch.up
          size: 70%
          show_state: false
          show_name: false
          show_icon: true
          icon: mdi:arrow-up
          styles:
            card:
              - padding: 3px
              - height: 40px
              - width: 2.5rem
              - box-shadow: none
              - border: none
              - background: var(--secondary-background-color)
        - type: custom:button-card
          tap_action:
            action: call-service
            service: button.press
            service_data:
              entity_id: button.sit
          size: 70%
          show_state: false
          show_name: false
          show_icon: true
          icon: mdi:chair-rolling
          styles:
            card:
              - padding: 0px
              - height: 40px
              - width: 2.5rem
              - box-shadow: none
              - border: none
              - background: var(--secondary-background-color)
        - type: custom:button-card
          tap_action:
            action: call-service
            service: button.press
            service_data:
              entity_id: button.stand
          show_state: false
          show_name: false
          show_icon: true
          icon: mdi:human-handsup
          size: 70%
          styles:
            card:
              - padding: 0px
              - height: 100%
              - width: 2.5rem
              - box-shadow: none
              - border: none
              - background: var(--secondary-background-color)

thanks for that card. It looks really nice, better than the one i had before
for the pause/stop button.
Since i use a cover
cover:
  - platform: template
    # icon: mdi:table-chair
    # icon: mdi-human-male-height-variant
    name: "${device_name} Tisch"
.....

i just added
    stop_action:
      - logger.log: "Executing stop command"

an that stops the movement
i also added it in my config here:
https://github.com/iMicknl/LoctekMotion_IoT/issues/35


eslint-comments/no-unused-disable false positive when disabling line with eslint-comments/no-unused-disable

// eslint-disable-next-line eslint-comments/no-unlimited-disable
// eslint-disable-next-line

errors:
'eslint-comments/no-unlimited-disable' rule is disabled but never reported.eslint (eslint-comments/no-unused-disable)
Unexpected unlimited 'eslint-disable-next-line' comment. Specify some rule names to disable. (eslint-comments/no-unlimited-disable)

Hi @DetachHead!
Since this repo is unmaintained, you might want to re-open this issue in the @eslint-community fork https://github.com/eslint-community/eslint-plugin-eslint-comments
For more info about why we created this organization, you can read https://eslint.org/blog/2023/03/announcing-eslint-community-org

@MichaelDeBoey thanks. i've re-raised it https://github.com/eslint-community/eslint-plugin-eslint-comments/issues/130
btw you may be interested in https://github.com/DetachHead/issues-transfer if you want to automatically transfer all the issues from this repo

@DetachHead Unfortunately, I don't have any maintainer-rights on this repo
If I would, we would have transferred the whole repo to the community org and get rid of the fork 😛

i don't think you need maintainer rights, since all it does is copy the contents of the open issues and re-raises them on the specified repo. i don't think you need maintainer access on either repo so if you want i'm happy to run it myself

@DetachHead I think almost all issues have one in the fork, so it's fine


[Bug]: Responsiveness not appropriate

Is there an existing issue for this?

[X] I have searched the existing issues

Describe the bug
Hello @apu52 @anuragverma108 @heysagnik
Flex doesn't appear to be working properly.
Please assign issue under gssoc and difficulty level.
Expected behavior
on small devices no of div should be less according to respective screen sizes.
Add ScreenShots

On which device are you experiencing this bug?
No response
Record

[X] I have read the Contributing Guidelines
[X] I'm a GSSOC'24 contributor
[X] I'm a SSOC'24 contributor
[X] I have starred the repository

@sakshiglaze You want to contribute it under GSSOC or SSOC ?

@sakshiglaze You want to contribute it under GSSOC or SSOC ?

GSSOC

Hello @anuragverma108 @apu52
Please assign this under gssoc and the difficulty level too.


We need to go deeper…

Thank you for detailing your CbyGE adventures, and providing a full package for it.
Now this replicates the commands that the app would send to the cbyge server, but I would be curious if it wouldn't be faster to skip the server altogether.
Would you be willing to help a not so network inclined individual capture the packets sent and received by the actual device, to completely bypass the need to talk to the socket or GE web endpoints?
Unless I missed it, this would allow you to talk directly to the device within your network, without it going all the way out to the CbyGE mothership?
The backstory is that I have a now unsupported device that I'd like to keep using :)

Hi!  Not sure if either of you are still interested in this, but I'll share my findings and methods so far:
I'll share my full procedure down below, but if you just want a summary of what I've found, here it is:

The bulbs perform an unauthenticated standard DNS query for cm-ge.xlink.cn.  This can be easily altered by way of a local DNS server if you wish to MITM its traffic.
The protocol it uses is wrapped in TLS, although the bulbs do not validate the server's certificate, so any self-signed certificate (easily generated with OpenSSL) will do.
The bulbs communicate with the server over TCP on port 23779.
The protocol used by the bulbs is an unfamiliar binary protocol, but as already mentioned, programmers are lazy, and it's probably a different proprietary protocol being reused.

That's a basic summary of my findings, but if you want a full summary of my findings, read on:

I set up a raspberry pi running HostAPd, the software to make the pi operate as a WiFi Access Point (AP), and set up appropriate adapter bridging, DHCP server, and (this will become significant later) a local DNS server, so that the bulbs would be able to communicate with their server, but not without passing their traffic under my watchful eye.
I then factory-reset a bulb and had it connect to my pi AP.
By running Wireshark on the pi, I was able to see that as soon as the bulbs are powered on, they send a DNS query for the name cm-ge.xlink.cn, which I see was also hard-coded in the app.  They then establish a standard TCP connection to the returned IP address on port 23779.
In order to intercept the traffic, I added a local DNS entry on the pi, causing it to serve up the LAN-side address of my PC, rather than the cloud server's address.
I spun up a "packet proxy" similar to what's documented in the readme (although with NodeJS since that's my most comfortable language), and started sniffing the traffic with Wireshark.  Immediately noticed that all of its traffic is encrypted with TLSv1.2.  Bummer.
For no reason other than pure impulsiveness, I ran a TLS connection test to cm-ge.xlink.cn, and immediately saw an alert that the certificate was 10 months past expiration.  This generally means that the TLS implementation being used by the bulbs is lazy, or bare-bones, and is not performing proper date validation on the certificate, or any for that matter.
To test my theory, I used openssl to whip up a self-signed certificate for cm-ge.xlink.cn, upgraded my NodeJS packet proxy to become TLS-aware, and installed this certificate.  The bulb happily accepted this forged certificate, and proceeded with its connection to the cloud, allowing me to successfully MITM all of its traffic, giving me access to the plaintext stream.  I modified my NodeJS packet proxy so that it would log all of the traffic passed across the connection, and save it to the disk.
I was somewhat disappointed when I checked the log file, as it was an unfamiliar binary protocol (rather than the easily-recognized HTTP or WebSocket protocols), so I started googling (in hindsight, I probably should have started with that) and found this repo.

@FrenchBen - Since you asked about communicating within the LAN, without needing to go out to the CbyGE mothership, that seems totally possible, although you'll probably have to host a server on your network.  If we could find a way to replace the firmware on the bulbs, it'd be easy enough to expose a UDP listener or some other sort of direct-control API, which would eliminate the need for a server.
Hope this info helps!
PS if anyone wants to generate a self-signed certificate for tinkering purposes, this will do it (provided openssl is installed):
openssl req -x509 -newkey rsa:4096 -keyout key.pem -out cert.pem -subj '/CN=cm-ge.xlink.cn' -sha256 -days 3650 -nodes

I'm very interested in getting this to work with home assistant however
what you guys are doing is way over my head lol. Please let me know if I
can help at all.
On Mon, Jan 3, 2022, 18:50 micromashor @.***> wrote:

Hi! Not sure if either of you are still interested in this, but I'll share
my findings and methods so far:
I'll share my full procedure down below, but if you just want a summary of
what I've found, here it is:

The bulbs perform an unauthenticated standard DNS query for
cm-ge.xlink.cn. This can be easily altered by way of a local DNS
server if you wish to MITM its traffic.
The protocol it uses is wrapped in TLS, although the bulbs do not
validate the server's certificate, so any self-signed certificate (easily
generated with OpenSSL) will do.
The bulbs communicate with the server over TCP on port 23779.
The protocol used by the bulbs is an unfamiliar binary protocol,
but as already mentioned, programmers are lazy, and it's probably a
different proprietary protocol being reused.

That's a basic summary of my findings, but if you want a full summary of
my findings, read on:

I set up a raspberry pi running HostAPd, the software to make the
pi operate as a WiFi Access Point (AP), and set up appropriate adapter
bridging, DHCP server, and (this will become significant later) a local DNS
server, so that the bulbs would be able to communicate with their server,
but not without passing their traffic under my watchful eye.
I then factory-reset a bulb and had it connect to my pi AP.
By running Wireshark on the pi, I was able to see that as soon as
the bulbs are powered on, they send a DNS query for the name
cm-ge.xlink.cn, which I see was also hard-coded in the app. They then
establish a standard TCP connection to the returned IP address on port

In order to intercept the traffic, I added a local DNS entry on the
pi, causing it to serve up the LAN-side address of my PC, rather than the
cloud server's address.
I spun up a "packet proxy" similar to what's documented in the
readme (although with NodeJS since that's my most comfortable language),
and started sniffing the traffic with Wireshark. Immediately noticed that
all of its traffic is encrypted with TLSv1.2. Bummer.
For no reason other than pure impulsiveness, I ran a TLS connection
test to cm-ge.xlink.cn, and immediately saw an alert that the
certificate was 10 months past expiration. This generally means that the
TLS implementation being used by the bulbs is lazy, or bare-bones, and is
not performing proper date validation on the certificate, or any for that
matter.
To test my theory, I used openssl to whip up a self-signed
certificate for cm-ge.xlink.cn, upgraded my NodeJS packet proxy to
become TLS-aware, and installed this certificate. The bulb happily accepted
this forged certificate, and proceeded with its connection to the cloud,
allowing me to successfully MITM all of its traffic, giving me access to
the plaintext stream. I modified my NodeJS packet proxy so that it would
log all of the traffic passed across the connection, and save it to the
disk.
I was somewhat disappointed when I checked the log file, as it was
an unfamiliar binary protocol (rather than the easily-recognized HTTP or
WebSocket protocols), so I started googling (in hindsight, I probably
should have started with that) and found this repo.

@FrenchBen https://github.com/FrenchBen - Since you asked about
communicating within the LAN, without needing to go out to the CbyGE
mothership, that seems totally possible, although you'll probably have to
host a server on your network. If we could find a way to replace the
firmware on the bulbs, it'd be easy enough to expose a UDP listener or some
other sort of direct-control API, which would eliminate the need for a
server.
Hope this info helps!
PS if anyone wants to generate a self-signed certificate for tinkering
purposes, this will do it (provided openssl is installed):
openssl req -x509 -newkey rsa:4096 -keyout key.pem -out cert.pem -subj
'/CN=cm-ge.xlink.cn' -sha256 -days 3650 -nodes
—
Reply to this email directly, view it on GitHub
https://github.com/unixpickle/cbyge/issues/8#issuecomment-1004470979,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AWDFOE3RQDXY5VR2AYQ5CHTUUJG7NANCNFSM5FBPLIVQ
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

on this. I'm going to be digging into reversing the binary protocol, I think with out any expertise on the topic my next step would be to make changes via the app and diff those changes to try and detect patterns.. Very brute force but that's all I got

That's been my process as well, but you'll very quickly notice that there's an exchange of 4-5 messages back and forth every time you make a change in the app.  I'm going to work on a way to be able to selectively replay these messages to see what they change, but it's quite difficult to figure out.
Also be warned that you should remove the power to all devices except one, as I've noticed that when multiple devices are on at the same time, they start RSTing connections very unpredictably, or make sure your packet proxy is ready to gracefully handle any socket that receives a RST from the remote host.   Not really sure what's going on there.

I'll leave this here... I don't have time (read: the skill to do so in a timely manner) to figure this out but after a couple hundred hours bashing my head against the wall without a debugger, I'm motivated to help:
http://wiki.telink-semi.cn/wiki/protocols/Telink-Mesh/
namely, the SDK.
telink_mesh_sdk.zip
if this doesn't contain 99% of what drives the C by GE firmware, I'll eat my own shorts.

I've been looking to try and integrate these lights with hass for a bit. I have a couple of notes, in no particular order. I'd love to help write a hass integration for the cloud, and possibly a separate version, if we can solve some of the BLE mesh issues with the "direct connect" bulbs.
I have gotten this project (cbyge) to work perfectly, without any trouble. It just magically works - very cool. I think the information in this code would serve as a basis for a cloud integration in hass. I'm not sure if the golang code can be used directly or it would require a port to Python. I haven't gotten that far in the hass docs yet.
The short of what I've found for controlling these lights locally is that while there is a way to query for the info needed to access the BLE mesh network, I can't seem to gain control using any of the existing tools. There are 2 different integrations that partially work, and both are based on the techniques describe in python-laurel:

There is a hass gelight integration, written in Python that doesn't really work well. The data fetch is kind of broken, but with a bit of effort the config can be set to something that I think is correct. But it won't connect to the mesh. It just times out trying. The computer hass is hosted on does seem to pair and connect to one of the bulbs reliably, but hass can't seem to see it.
There is also cync2mqtt, which is more cleanly written, but has a similar issue connecting to the mesh. That doesn't mean it can't be made to work, but I haven't had any luck so far.

Both of these solutions have tools to produce configuration files that grab too much data, and cause issues if not edited down (they seem to dump "group" data, which is unsupported by either tool).
For connecting to the mesh network using BLE, I've wondered if the older style bulbs (non-direct connect) will mesh with the newer direct connect bulbs, and if that would provide a way in. From what I understand, we only need hass to connect to one device in the mesh, to be able to control the rest. I don't have any old style bulbs to test that with, but I do wonder whether it would work.
Anyway, it would be great to get a hass cloud integration together, if nothing else. A mitm solution might also be kind of neat, but any basic control would be welcome, even if it uses the cloud.
I may take a stab at it, if I can find some time. Does anyone know of a good base to start from - some example cloud integration template in hass or similar?

I'm not entirely sure how hass works, but from what I've found, MITMing the network traffic seems to be the least finicky of the approaches. I tried tinkering with BLE/mesh and it was extremely unstable.
Unfortunately, we don't really have a great base to start from, since we have no documentation on how the network protocol operates. I've tried reading through the code in this repository to see if I can reverse-engineer it and figure out how the network protocols work, but it's just ended in ripped-out hairs because I am not familiar enough with Go to make any sense of it.
If you'd like, I can document my approach for MITMing the network traffic to the bulbs and the little bit of code that accompanies it. It requires a Raspberry Pi wired in via Ethernet.
We really need to figure out how this network protocol works (either by reverse-engineering or from the repository owner) in order to go any further with developing a solution that interfaces directly with the bulbs, bypassing the CbyGE cloud.

It seems like it should be possible to do something with BLE mesh - since that's literally how the battery power switch I have works, and that device does work reliably. Hmm, I wonder if having that switch in my mesh is causing some of the troubles with connecting?
I also though it might be easiest to extend cbyge to support mqtt messaging. In that case, we could just run this server, and use an existing mqtt integration in hass. That might be even easier than porting it to python and creating a new cloud integration. It would still require understanding golang though...

It looks like it should be relatively easy to just hit the rest API on a cbyge instance, directly from a hass light integration. I don't even think this will require changing any existing code!

Some details on the chipset for my use case - it's a Linkplay A31 v04, I tried to email the company to see if they would be willing to share how I can reflash/update, but no dice so far. Specs are here: https://www.linkplay.com/modules-wi-fi-2
There's been a little bit of work here from @Crymeiriver : https://github.com/Crymeiriver/LS150

I wrote a simple bridge between this project and hass through MQTT. Check it out!
https://github.com/CaptainN/cbyge2mqtt

This project works well enough as a client to the Cync service, it's removing the sketchy api that I'm most worried about.
BLE access is very strictly limited in the newer bulbs as when they changed from C by GE to Cync I believe they sold it to a 3rd party but continued to sell under their name. I couldn't see GE natively trying to use a Chinese API service.
Politics aside, they force network access (and the app repeatedly demands location information despite not needing it)and have discontinued almost all BLE add in devices and hubs. They don't want any way for you to not use the app.
My work to cut the cloud out has been met with pretty much failure up to this point. I was able to shut them off and turn them on but that's the end of it. Hoping that reviewing the updated info will let me come back with better info, be back soon :)

From what I've gathered, these bulbs use a proprietary Telink mesh (I used nRF Connect app on Android to figure that out). They do have devices sold under the Cync brand like battery powered light switches. These have no wifi capability. I'd imagine they'll want to support those for at least a while, and they do work reliably.Is there any info on telinks website that could help? http://wiki.telink-semi.cn/wiki/protocols/Telink-Mesh/On Feb 26, 2022 9:02 AM, Rattkener @.***> wrote:
This project works well enough as a client to the Cync service, it's removing the sketchy api that I'm most worried about.
BLE access is very strictly limited in the newer bulbs as when they changed from C by GE to Cync I believe they sold it to a 3rd party but continued to sell under their name. I couldn't see GE natively trying to use a Chinese API service.
Politics aside, they force network access (and the app repeatedly demands location information despite not needing it)and have discontinued almost all BLE add in devices and hubs. They don't want any way for you to not use the app.
My work to cut the cloud out has been met with pretty much failure up to this point. I was able to shut them off and turn them on but that's the end of it. Hoping that reviewing the updated info will let me come back with better info, be back soon :)
—Reply to this email directly, view it on GitHub, or unsubscribe.Triage notifications on the go with GitHub Mobile for iOS or Android.
You are receiving this because you commented.Message ID: @.***>

@Rattkener That's exactly my reason for being here. I don't trust a nameless API service (especially one that doesn't validate that it's actually connecting to the API service), but also for my purposes, I despise the sometimes hundreds of milliseconds latency that comes with using that external service. I run almost all of my other devices through a server hosted locally on my network, so I can achieve response times as low as a few ms.
As of today, this API service is no longer nameless, as [https://www.xlink.cn/](their website) is back up. I'll try reading through their developer docs and see if I can find anything re: Binary API Protocol, and update here if I find anything.
The issue, as you mentioned, is figuring out how the entirely undocumented API works. I've asked the repository owner to share documentation regarding the app-to-API protocol, as they appear to be very similar (if not the same), but I have yet to find such documentation.

I integrated with home Assistant through MQTT directly in cbyge . The result is FAR more stable than the previous attempt through node/REST. It still is using the cloud integration, but it works!

At any point does the app ever talk directly to the bulbs over wifi?
Any ideas on why setting up "scenes" in the app only works over bluetooth?
I just bought a few more of these last week, newegg had RGB light strips on sale. I also have 3 outdoor floods. If anyone wants me to gather info on these particular devices, let me know. I hate that we have to talk to some dodgy cloud server for all this, the idea that you lose control of your lights if your internet goes away is nuts.

They actually run on a BT mesh network, which is pretty cool. It looks like it should be possible to jump right in to that mesh too, and control things as if we were as switch (thats how their battery powered switches work). I can inspect that mesh, get the mac addresses, and even connect to it from my phone, and HA server.
But I gave up. I use these only in the basement, with a BT Switch, and removed them from the rest of my house.
I have been replacing them with some Zigbee Ledvance bulbs. Those are inexpensive, have freely available firmware, and work great with Conbee II. No need to jump through hoops with GE bulbs. If they ever open their API, they'd be great devices, but until then, they are only mildly useful.

I haven't had time to dig into these further, but there seems to be a decent amount of Chinese-language documentation and examples in the https://github.com/xlink-corp github org and on https://docs.xlink.cn/
This doc appears to describe the details of the serial protocol used by the devices: https://docs.xlink.cn/download/attachments/1703987/WIFI透传串口通讯协议V2.52.docx?version=1&modificationDate=1513584293000&api=v2

I've been independently working on a LAN controller for Cync devices and just happened upon this thread. PoC code that I've put together can be found here. It's a bit rough around the edges but I've been using it for the past few months without too many issues to control lightbulbs and smart plugs. No idea what the actual APIs are for the devices but I was able to figure out the commands I cared about by watching the TCP messages and through trial and error.
I've been unsuccessful with interfacing with a RGB lightstrip...I can usually get it to work for a few days, but it wises up to the MITM somehow (BT from phone?) and refuses to work unless I factory reset.
@sporkman are your lights the "direct connect" version or BT? They might be compatible with this code, but I'm only rocking older model lights & plugs. New firmware might be more intelligent?

@sporkman are your lights the "direct connect" version or BT? They might be compatible with this code, but I'm only rocking older model lights & plugs. New firmware might be more intelligent?

The light strips are BT-only, the floods are BT and wifi if that clarifies things?


SR replication results mismatch reported values on certain datasets

Thank you very much for your marvelous SR work and opensourcing! When training HAT for classic SISR results, I found a slight mismatch of results:

SRx2
Set5
Set14
B100
Urban100
M109

Reported
38.63/0.9630
34.86/0.9274
32.62/0.9053
34.45/0.9466
40.26/0.9809

Replication
38.61/0.9630
34.77/0.9266
32.61/0.9053
34.45/0.9465
40.23/0.9806

SRx4
Set5
Set14
B100
Urban100
M109

Reported
33.04/0.9056
29.23/0.7973
28.00/0.7517
27.97/0.8368
32.48/0.9292

Replication
33.00/0.9053
29.18/0.7967
27.99/0.7515
27.97/0.8368
32.44/0.9292

The replication is done with standard training from scratch setting, i.e. using config train_HAT_SRx2_from_scratch.yml and train_HAT_SRx4_from_scratch.yml.
While replications on other datasets yield similar results to reported values in the paper, I am a bit puzzled by the mismatch of Set14 and
Manga109 datasets. I am wondering about the cause of the mismatch: is that a normal fluctuation? Or there might be an inconsistency with test dataset versions? Thanks again!

@sairights Hi, I also met reproduce problems. What's your training settings?

@yumath I used the official code of HAT and the official train-from-scratch setting on DF2K. I also mod2/3/4 for test images, which is what #49 suggests. I think this might be some fluctuation.

@sairights maybe fluctuation about hyper-parameters: iter_num and batch_size?
https://github.com/XPixelGroup/HAT/issues/26#issuecomment-1288154862

@yumath Well I used 8 GPUs and kept iter_num and batch_size identically the same with the official setting. Really weird to see that there exists a large gap on Set14 between replications and reported values...


Can't save configmaps

Hi Vyshane,
Kid is almost prefect to me until I run it on my Macbook:
I used a simple configmap, given /path/to/config/my-config.properties

kubectl create configmap my-config --from-file /path/to/config

then tried to mount it to a Deployment with Volumes and mountVolumes
spec:
  containers:
  - name: my-deployment
    image: my-images:1
    ports:
    - containerPort: 10080
      name: http
    volumeMounts:
    - mountPath: /optconfig
      name: config
    - mountPath: /opt/secret
      name: secret
      readOnly: true
  volumes:
    - name: config
      configMap:
        name: my-config
    - name: secret
      secret:
        secretName: my-secret

So as a comparison, I also had a secret mounted, and turned out only the secret worked, that I can see files under the mounted path /opt/secret, however, the configmap mounted folder /opt/config is empty.
I've seen the same issue with kubernetes official one-node docker command on Mac, and desperately trying to find a solution, if you could please help ...
Thanks in advance
James

@Kapaski it may be due to the typo in your config file
    volumeMounts:
    - mountPath: /optconfig

hi @sublimino  sorry for the typo, but that wasn't the reason. I'd think it was due to the docker-machines running on Mac's file system and somehow it just can't rw in the mounted drive with configmaps (hint is the same thing just worked on a linux host)
I've also come across some issues from docker's repo about the same syndrome

I've got a similar issue on OSX too and I've found this issue https://github.com/kubernetes/kubernetes/issues/23392.

Yes @arnaud-deprez I tried shared and saw more errors later on, sorry can't find those past error stack traces... now I'm using skippbox's kmachine instead (which has an issue about ingress controller at the moment but works fine with configMaps)

Thx @Kapaski I'll give a try to kmachine.

Apparently, thanks to @spiralman, the following command:
docker-machine ssh $(docker-machine active) sudo mount --make-shared /

should make it work.

Hi!
I know it's not exactly the same kind of kubernetes implementation, but I invite you to use https://github.com/mikim83/qk8s (Try the last v0.6.6 beta branch). Yes, it´s made by me. :)
Hope it helps!

Thx @mikim83 but your solution is completly based on linux distro and I'm on OSX. I know I could use virtualbox with vagrant and so on and make your solution works (no doubt for that). But I like the way I can create many machine with a single command line and put it in a network like docker-machine.
I might take a look at https://github.com/skippbox/kmachine before going to any customer solution.

By the way
docker-machine ssh $(docker-machine active) sudo mount --make-shared /

does not work well on my side. I might have forgotten something :-(.


Add CommonJS, ES Module, and UMD build step.

Closes #6

Codecov Report

Merging #13 into master will not change coverage.
The diff coverage is n/a.

@@          Coverage Diff          @@
##           master    #13   +/-   ##
=====================================
  Coverage     100%   100%
=====================================
  Files           5      5
  Lines         225    225
=====================================
  Hits          225    225

Continue to review full report at Codecov.

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


Add transition to progress bar & slider

The .x-progressBar-progressBarBg > div:first-child > div part is a little hacky, but i am unable to figure out how to correctly edit the css mappings of spicetify.

Thanks for your contribution, what exactly is this PR doing?

i just added a 0.2s ease transition (the same that .prog-tooltip has) to the progress bar and progress bar slider have so the bar looks a bit smoother.

Do you mean the tooltip transition from the left side is not a bug in Dribbblish?
I hate it and did not notice it until last week.

oh yes i didn't notice the slower dragging, but i should be able to fix that.

What i mean by transition is the progress bar not moving every second but is (relatively) smooth on its way to the right

the slow dragging should be fixed now

I was trying to achieve your effect with this trick, but it won't work
@property --progress-bar-transform {
  syntax: '<percentage>';
  initial-value: 0%;
  inherits: true;
}
html {
    transition: --progress-bar-transform 5s !important;
}

i have also just fixed a bug where if you move your mouse too far up or down while dragging the bar hides the .prog-tooltip

you are using the transition property wrong, the syntax is transition: <property> <duration> <timing-function> <delay>; so if you wanted to transition say the bar from left to right and its position is set by the left property you'd say: transition: left 1s ease; MDN Docs

Yeah I'm trying to transition the --progress-bar-transform property, I did it for colors and it works fine: https://github.com/JulienMaille/spicetify-dynamic-theme/blob/91f733eab8ed9f29034dffec806e2b893a3a1871/user.css#L447

also, sometimes there is a <canvas> element in the dom wich takes up half the screen, i don't know if this is a bug with spotify / spicetify or just in my case. did you have this appear at some point too?
Example:

Can you check the console when you get this bug? Might be my code firing up too soon

Can you check the console when you get this bug? Might be my code firing up too soon

this dosen't happen all the time so that might be the case

Thank you

No problem, I'm currently working on changing the .prog-tooltip will open an PR later

Can you check the console when you get this bug? Might be my code firing up too soon

this dosen't happen all the time so that might be the case

I may need to add a check before cover color extraction.


Auto scroll is broken when using multiple containers

First I want to give some praise to this repo, it's nothing short of amazing. Code is really neat with plenty to learn from and it is a really powerful tool. Thanks!
Nevertheless, I've found one other issue (besides experiencing this one - #1080), and now it's about the auto scroll feature.
If we take the official example from the story book (Multiple Containers - Basic Setup), and we limit the height of horizontally sortable containers and make their overflow-y to auto or scroll, then horizontal auto scroll becomes basically unusable.
Here is a video where I copied the code from this repo to recreate the same example from the storybook with the additions mentioned above. Notice how it breaks on empty containers, while it seems to work fine when there are items in them. I tried conditionally adding overflow-y property if there are multiple children present, but then it happens for non-empty containers and not for the empty ones.
https://user-images.githubusercontent.com/20325132/229306611-35b95d23-ed84-4fe4-9f2a-b66aa8d1e07f.mov
Literally just removing overflow-y fixes the jitter, but it would be neat if we would be able to scroll even vertically.
I already tried altering the autoScroll config:

disabling layoutShiftCompensation does not help
removing y axis scrolling does not help ( e.g. threshold: { x: 0.2, y: 0 } )
added a canScroll function to skip the nested containers from auto scrolling vertically and only allow scrolling horizontally in the parent container - does not work

Any help is appreciated, thanks!

I'm facing the same issue, did you find a solution ?

I found this, https://github.com/clauderic/dnd-kit/issues/1108. It solved my problem

My solution is the linked PR above, I am using a patched local package of this repo.

#1094 works well.
You saved my time thank you :)

https://github.com/clauderic/dnd-kit/pull/1094 works well.
You saved my time thank you :)


No internet

After setting up and connecting, there is no internet connection from client

Maybe your server is behind NAT and it wasn't set up correctly.
See here for instructions: https://github.com/Nyr/openvpn-install/issues/138#issuecomment-196055353


iPad Pro Icon missing

167x167

167x167

closing since duplicate https://github.com/tadija/AEIconizer/issues/23


Deck stats

While drafting, display deck stats

monster/spell/trap ratio
monster attribute ratio
extra deck monster ratio
monster level ratio

Main Deck Monster subtype ratio (Tuner/Spirit/etc)

warn if no tuners in main deck but there are synchros in the extra deck

Extra Deck Level/Rank ratio (Synchros/XYZ/Links only)
Link Monsters w/ bottom markers (warn if >1 Links in deck but 0 w/ bottom markers)
Warning for if the deck does not contain any specialized materials for a monster (i.e. Chixiao requiring a non-Tuner Wyrm)


can i change activatation function,like mish?

您好 我能在训练过程中改变激活函数嘛

Since the backbones are usually pre-trained, it is not recommended and supported to do that unless the original pre-trained model uses mish. For other layers, you can change them, e.g., set LeakyReLU in ConvModule or change the self.relu to be other layers.


Show chart.js canvas element in featherlight lightbox?

I am trying to display a chart.js chart in a featherlight lightbox. The chart is a canvas element. For some reason, I can't get it to show.
Can anyone offer insight into this?
Thank you so much.

I am having the same issue as well with signature_pad canvas. I am trying to initialise the canvas with an "afterOpen" function

Should work with afterOpen, or specifying a content (can be a promise), or probably the best way would be to specify a content filter for this.
Best for question: make a minimum example, and use StackOverflow


Added Syncfusion Blazor Components

Please consider adding Syncfusion Blazor UI components to the Libraries section.

@danroth27, @guardrex - Thanks for your review and approval. Please merge this request.


more informative tweet text

Fixes #330
Checklist

[x] I have read the Contribution & Best practices Guide and my PR follows them.
[ ] My branch is up-to-date with the Upstream master branch.
[x] I have added necessary documentation (if appropriate)

Changes proposed in this pull request:

I have updated the tweet message, to make it more informative about the product.

Please resolve conflicts.

Not showing any conflicts in mine.

Taken care in #363
@ParthS007

closing with the reference to #363


TASK [gbraad.kubernetes-master : Configure etcd ADVERTISE CLIENTS]  fail

hello
i am trying to execute your role and it fails at the below step. can you give some tips? thanks
this is on atomic centos
TASK [gbraad.kubernetes-master : Configure etcd ADVERTISE CLIENTS] *******************************************************************************************************************************************
ERROR! The requested handler 'restart etcd' was not found in either the main handlers list nor in the listening handlers list

You likely have to rename the handler, however I believe this was already fixed some time ago. Else, this broke due to a newer/older version of Ansible.


Fix/make test accept jsx comment same line as div

[x] I have read freeCodeCamp's contribution guidelines.
[x] My pull request has a descriptive title (not a vague title like Update index.md)
[x] My pull request targets the master branch of freeCodeCamp.
[x] None of my changes are plagiarized from another source without proper attribution.
[x] All the files I changed are in the same world language (for example: only English changes, or only Chinese changes, etc.)
[x] My changes do not use shortened URLs or affiliate links.

Closes #34697
In this lesson, if the user inserts a JSX comment {/**/}that is on the same line as
, the solution will not be accepted; the test seems to think that the user has modified the h1 and p elements. It's possible that the comment is considered as the first child of JSX (pure speculation on my part).
The behavior, as in the comment is considered a child, is not the same if the comment is inserted in between h1 and p, as the solution is accepted in this case.
Another issue is normal JS comment /**/ is accepted when only JSX {/**/} should be accepted.
I've modifed the test to fix both of the above issues (credit goes to @richb999git for his suggestions).
One issue that I can't fix is any comment outside of the div will be accepted. In fact, a comment that is outside the JSX variable passed the test as well.

@paulywill Have you tried testing this fix?

@RandellDawson Not yet, first thing tomorrow am... and any other PRs you want me to look at.

@wanzulfikri, @paulywill This PR does not close the original issue for a number of issues:

The additions of the || in the 2nd and 3rd test would allow a different positioning of the original h1 and p elements and allow the following to pass the 2nd and 3rd tests.

const JSX = (

Here's a subtitle

This is a block of JSX

Here's a subtitle

);

The comment could be located outside the JSX div element and still pass (see below).

const JSX = (

This is a block of JSX

Here's a subtitle

);
{/* comment  but not in JSX */}

The includes method used would not allow a spaces between the { and /* or the */ and }, so variations of the following would fail incorrectly.

const JSX = (

This is a block of JSX

    { /* valid comment */ }

Here's a subtitle

);

I am working on a PR which should fix the original issue plus make sure the original elements are not modified.

Good points. And I think I mentioned the potential unsolved issues in my PR
writeup. Sadly. I wasn’t able to solve those issues.
It’s been a while since I submitted this and I don’t remember exactly what
I tried to fix. Please close this PR if you can submit a better one.
On Thu, 21 Feb 2019 at 7:03 AM, Randell Dawson<EMAIL_ADDRESS>wrote:

@wanzulfikri https://github.com/wanzulfikri, @paulywill
https://github.com/paulywill This PR does not close the original issue
for a number of issues:

The additions of the || in the 2nd and 3rd test would allow a
different positioning of the original h1 and p elements and allow the
following to pass the 2nd and 3rd tests.

const JSX = (

Here's a subtitle
This is a block of JSX
Here's a subtitle

);

The comment could be located outside the JSX div element and still
pass (see below).

const JSX = (

This is a block of JSX
Here's a subtitle

);
{/* comment  but not in JSX */}

The includes method used would not allow a spaces between the { and
/* or the */ and }, so variations of the following would fail
incorrectly.

const JSX = (

This is a block of JSX
    { /* valid comment */ }
    Here's a subtitle

);
I am working on a PR which should fix the original issue plus make sure
the original elements are not modified.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/freeCodeCamp/freeCodeCamp/pull/34706#issuecomment-465790064,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AS0JpJY22V1oAgXHZEUWMSdpLjoA9XxCks5vPdRcgaJpZM4ZZ8KE
.

@wanzulfikri, @paulywill - Feel free to pull down this PR and test it locally to see if I achieved what I say.  Hopefully, this will take care of most edge cases.

I am going to go ahead and close this PR due to it not achieving the desired goal, but if for some reason my PR does not get accepted, feel free to request this PR be reopened to add some more commits.  Also, feel free to create a new PR with different changes.


https + wrong user or password = error

When using https in the base URL and the user misses the login or password, the user is redirected to  https://domain:80/login/auth?login_error=1 that causes an error in Cloudflare because https does not use port 80, but 443
I tried to use https://domain:443/ on baseurl and still redirect to https://domain:80

With SSL and especially Cloudflare, you have several options of SSL, you can have that Half-baked option whereas the connection between User and Couldflare is SSL, but Cloudflare and your Streama is not. However it appears as SSL to the naked eye for what they are concerned.  (Easy)
The other option, SSL everywhere - may be somewhat of below here..
Now, SSL with Streama, I suppose you are looking at a way of piping Streama's traffic to 443 instead of 80, or 8080 as it uses by default.
Your Streama may basically think "I'm port 80!" while your Cloudflare thinks it's 443.
Haven't seen any way to change the port Streama would bind to - so if you managed to get yours from 8080 to 80 - I would also like to know how - The other way is to rebuild Streama from source and change it in the code I would imagine.
Not exactly sure how dularion pictured Streama under SSL, and it may be that it's not designed for it (yet).
So dularions input on this matter would be cool indeed.

Hi guys,
Well if I'm mentioned by name there is no way I'm not responding :)
Actually there is a way to run streama via ssl, but streama alone isn't quite capable. You use cloudflare for SSL? I guess that could work, but remember, then all traffic goes through cloud flare.. And we're talking videos here ... Not sure if you really want that. But anyway, in that case I guess all you need to do is change your port, and for that please check here:  https://github.com/dularion/streama/wiki/Getting-started#8-how-do-i-change-the-port
Alternatively, you could do it like me and hook an nginx or Apache in front that handles SSL and routes the requests. If you need more instructions let me know

Yea actually those instructions would be sweet.
You using self certificate or letsencrypt or so?
But yes, instructions for nginx or Apache in front would be swell!

I think there is a way to simplify this problem.
If you run the streama on port 8080 or on any port other than 80, even without SSL, the stream will redirect to port 80 and will reproduce the error.

This still happens, but not only when users misses the credentials, on sucessufly login it redirects to https::/domain:80


Updated Introduction (v5)

Updated example code to start discord bot with aoi.js@v5.
Updated Node version requirement.
Updated music example code.

why module.exports
plus in V5 stable bot.readyCommand do exist

I can change module.exports to bot.command. Wasn't sure about the syntax because its not enabled in<EMAIL_ADDRESS>


Retrying for installing test dependencies

fixes #93

Coverage remained the same at 98.33% when pulling 10b95609407694e65fdf648b62636d0046cb69cd on test-refactoring into f6bb078ef63a4d261e7c6b6f27c9bc060f6bdd9e on master.


[BUG] Hauler incompatible with image rancher/mirrored-nginx-ingress-controller-defaultbackend:1.5-rancher1

Environmental Info:

Any

Hauler Version:

v0.4.2

System CPU architecture, OS, and Version:

Any

Describe the bug:

When loading a store from a save that contains the image rancher/mirrored-nginx-ingress-controller-defaultbackend:1.5-rancher1, hauler fails with the following error.

Expected behavior:

Local store recreates from the save file.

Actual behavior:

Local store fails to load from save.

Additional context / logs:

@zackbradys I added this here to track the issue.

This will be "somewhat" resolved with the --platform in an upcoming release.  This issue with this particular image is in its top level manifest.  It lists invalid sizes.  However, If we were to pull an individual arch/platform those manifests for this image don't give us any issues.


Make Shortcuts for Different Actions

Description of the new feature / enhancement
We can assign a combination of keys to perform a certain task. For example: If I press Windows key + T , it will run or activate Telegram as I assigned it before.
Scenario when this would be used?
Generally, run in all situations.
Supporting information
Autohot key script creator for similar actions - https://www.ahkgen.com/

/dup #5668


One letter mistake in wiki

Sorry if it's too much trivial :)
In https://github.com/rbock/sqlpp11/wiki/NULL ( tvin() explanation ):
select(all_of(tab)).from(tab).where(tab.alpha == sqlpp::tin(a));
=>
select(all_of(tab)).from(tab).where(tab.alpha == sqlpp::tvin(a));

Thanks, fixed it :-)


The base64 encoded picture cannot be displayed

[x] I have read the README
[x] I have already searched for the same problem
[x] I have read and done the setup for Android: IMPORTANT Note for Android and iOS and IMPORTANT Note for Android
[x] I have read and done the setup for iOS: IMPORTANT Note for Android and iOS and IMPORTANT Note for iOS
[x] I have ran the sample app and it does not work there

Environment

Technology
Version

Flutter version
v1.12.13+hotfix.8-stable

Plugin version
flutter_inappwebview: ^4.0.0+4

Android version
Android9

iOS version
IOS 13.5

Xcode version
11.5

Device information: Any android device
Description
Expected behavior: Load base64 encoded pictures normally
Current behavior: Cannot display Base64 encoded pictures on Android
Steps to reproduce
import 'package:flutter/cupertino.dart';
import 'package:flutter_inappwebview/flutter_inappwebview.dart';

class InAppWebViewPage extends StatefulWidget {
  @override
  _InAppWebViewPageState createState() => _InAppWebViewPageState();
}

class _InAppWebViewPageState extends State<InAppWebViewPage> {
  @override
  Widget build(BuildContext context) {
    return InAppWebView(
      initialUrl: "https://act.meituan.com/clover/page/adunioncps/second_cashback?utmSource=3532&utmMedium=C0011A482953B67F5FDBFCA1340D0059&accessToken=33920C06C13ED7929EC7192B17ED029F&timestamp=1594211114&requestId=63cd67ddc885491aa3be2a2ae53630c4&activity=hKxYsaIj0r&version=1.0",
      initialOptions: InAppWebViewGroupOptions(
        crossPlatform: InAppWebViewOptions(
          disableContextMenu: true,
          debuggingEnabled: true,
        ),
        android: AndroidInAppWebViewOptions(
            loadsImagesAutomatically:true,
          databaseEnabled: true,
        )
      ),
    );
  }
}

Open page
2.Click bottom left button jump this page

Images

Solve this issues.Add option.
      mixedContentMode: AndroidMixedContentMode.MIXED_CONTENT_COMPATIBILITY_MODE,


Update api-management-howto-cache.md

Adding content detailing how to clear the internal cache in Azure API Management. The update provides instructions on using the cache-remove-value policy to remove specific cached items asynchronously, as well as alternatives for clearing the entire internal cache by modifying and saving the policy or performing an update/reboot of the APIM instance.

@dlepow
Can you review the proposed changes?
Important: When the changes are ready for publication, adding a #sign-off comment is the best way to signal that the PR is ready for the review team to merge.
#label:"aq-pr-triaged"
@MicrosoftDocs/public-repo-pr-review-team


HiveSigner SDK usage on React Native

Hi @feruzm, how can I use this package on React Native?

Thank you 🙏

@feruzm I get this error:
app/node_modules/hive-uri/lib/index.js: url could not be found within the project or in these directories:
  node_modules
  // Assumes node.js if any of the utils needed are missing.
  if (typeof URL === 'undefined') {
     global['URL'] = require('url').URL;
                                              ^
   }

@alipiry have you tried to add hive-uri separately into your packages?

@alipiry have you tried to add hive-uri separately into your packages?

yes and still getting same error!


Added ability to customize the handle of a pick_list

This PR adds the ability to control the accessory content to the right of pick_list.
Currently in master it is only possible to change the icon size. This PR aims to add a little more customization options:

Size
Font
Content
Color

This gives the ability to add your own icons/text from your own font packs in various sizes. Example:
let accessory_content = pick_list::AccessoryContent::Custom {
    font: FONT_ICONS,
    content: String::from('\u{f1a7}'),
    size: Some(14),
};

let pick_list = pick_list(..).accessory_content(accessory_content);

Breaking changes

icon_size has been removed from Appearance.
accessory_content_color has been added to Appearance.

Awesome!
I have just renamed AccessoryContent to Handle and the Default variant to Arrow in 39f4918. I think they are more intuitive!
Let me know what you think, and we can merge!

Great names, thanks. LGTM.


Improvements to the file manager

From the forum: http://www.concrete5.org/index.php?cID=692637

It would be great if...

files in file sets were sortable, at least by file name or title (asc/desc), not only by drag & drop. If there is a big number of files, it's a pain to sort them manually.
the file manager would get an adjustable pagination to enable setting the number of files displayed per page (10, 50, 100, 500, all).
files could be assigned to file sets right after the upload process, such as in Concrete5.6.

@aembler can you tell us what is your plan (when) will you hack in the code ?
I am planning to add the possibility to context menus entries from addon  in the next weeks (I want to get that done before the next release as far as possible).
Can you tell me when would be a good time to work on that feature so it does not collide with you modifying the same files?

I believe number 1 is already possible. You just need to search by a file set and sort as you like:

Number 2 would be great. I definitely would like to see that back there. It probably doesn't need to always be visible (it could be just another field in advanced search) but this is something I miss too.
And yes, number 3 is something we would like to get done. It keeps getting pushed out just because there are more important things, but I'd like to get it in there as it was in 5.6.

Just closing this because it's kind of an overview issue. I think we can open a separate one for the pagination one (which may already exist.)

About number 1, the point is to reorder the fileset itself, not show a sorted view of it.

FYI Number 2 is right here: https://github.com/concrete5/concrete5-5.7.0/pull/1748


disable form fields

Hi there,
Just wondering is it possible to disable an entire form or fields within the form.
Thanks,
Stephen

Something like this will work:
Object.keys(this.schema.properties).map(prop => {
      this.schema.properties[prop].readOnly = true;
    });

I have added an example here: https://github.com/makinacorpus/angular2-schema-form/blob/master/tests/src/app/app.component.ts#L124

thank you, I found a different solution
  <fieldset [disabled]="true">         <sf-form [schema]="resultsNEW"></sf-form>         </fieldset>


[Mod] LunarTransferPlanner

Mod info

Mod name: LunarTransferPlanner
Author(s): RCrockford
License: MIT
Homepage: https://github.com/KSP-RO/LunarTransferPlanner
Download: https://github.com/KSP-RO/LunarTransferPlanner/releases

Thanks for the submission!


postprocess.ts failing

I've been playing around with this example -- I've been able to adapt your workflow and make a few of my own flat data repos that have been working really well.
Sometime yesterday, my GitHub Action/post-processing workflows started to fail. It looks like this example has also started to fail as well. Here's the output I'm getting:
 Warning Implicitly using latest version (1.0.0) for https://deno.land/x/url_join/mod.ts
17
  error: Relative import path "ssf" not prefixed with / or ./ or ../ from "https://cdn.deno.land/sheetjs/versions/v0.16.8/raw/types/index.d.ts"
18
  Error: Error: Command failed: deno run -q -A --unstable ./postprocess.ts active-conus-fires.csv
19
  Warning Implicitly using latest version (1.0.0) for https://deno.land/x/url_join/mod.ts
20
  error: Relative import path "ssf" not prefixed with / or ./ or ../ from "https://cdn.deno.land/sheetjs/versions/v0.16.8/raw/types/index.d.ts"

It looks like you're running into the same problem: https://github.com/pierrotsmnrd/flat_data_py_example/actions/runs/920123080.
Any thoughts on how to resolve?
Thanks so much for making this example and please let me know if I can help at all in tracking down this issue.

Hi @badgley  ! thanks for reaching out :)
I made this example because I am mainly a python programmer. I have no clue what Deno does here, it's out of my skills.
I thought for a moment it was related to the CDN issues that occured worldwide so waited, expecting it to settle down. Unfortunately, it doesn't.
I tried to fix the same issue as it also appears on a project of mine  : https://github.com/pierrotsmnrd/earthquakes
trying to change flat.yml to githubocto/flat@v3 but didn't succeed.
I'm clueless for the moment and don't have much time these days to dig deeper :/ any help will be greatly appreciated.

I think this error was due to an upstream issue with Deno described in githubocto/flat#45, and has just been fixed a few minutes ago.

alright so it looks like we can just remove the import of mod.ts and we're good to go! I opened a PR

Hi @badgley  :) thanks for your help. I can't see your PR though. If you don't mind, I'm going to replicate your commit and see if that works.

That worked ! :) thanks @badgley !


Default to generic icon for extensions that do not have custom icons

This request comes from the Marketplace team.

Need to send additional json data as request body:
"assetTypes":["Microsoft.VisualStudio.Services.Icons.Default"]

And add additional flag 0x02 to the current flags(this means include files). This would return the icon file as part of response if it exists.
For example current body for call from VS code will change to:
{"assetTypes":["Microsoft.VisualStudio.Services.Icons.Default"], "filters":[{"criteria":[{"filterType":1,"value":"vscode"}]}],"flags":391}

Fixed.


Check the behavior when a string is passed

echo "123\n123" | ./src/FileCheck tests/integration/tests/check_commands/CHECK/one_string/02-positive_match/filecheck.check
./src/FileCheck
Traceback (most recent call last):
  File "./src/FileCheck", line 212, in <module>
    assert candidate_line
AssertionError

Closed via #50 .


ENH Add pre-commit hooks for supported tools to .pre-commit-hooks.yaml

Baiscally, this is how pre-commit-hooks does it.
This would allow to make the .pre-commit-config.yaml syntax a lot more concise.
Using:
- repo: https://github.com/nbQA-dev/nbQA
  rev: 0.1.x
  hooks:
    - id: nbqa-flake8
    - id: nbqa-isort

Instead of:
- repo: https://github.com/nbQA-dev/nbQA
  rev: 0.1.32
  hooks:
    - id: nbqa
      args: ["flake8"]
      name: nbqa-flake8
      alias: nbqa-flake8
      additional_dependencies: ["flake8"]
    - id: nbqa
      args: ["isort", "--nbqa-mutate"]
      name: nbqa-isort
      alias: nbqa-isort
      additional_dependencies: ["isort"]

Didn't test if it works, just leaving the idea here.
If adding the args to the entry doesn't work, we could always add additional entry points in setup.py.

Agreed, this seems like a great suggestion!


Give an Option for Bundling

Some people (like me) would prefer to have the files bundled together instead of having import statements in the final build. It would be great if there was an option to use something like denopack or Deno.bundle.

can't use denopack or deno.Bundle, since we need to split code for pages, i have a plan to bundle all the deps in - directory

and this will be a part of the new compiler written in rust (i am focusing this currently)


Restricting the number of samples in the dataset

I have my dataset loading function like so:
def get_dataset(args):
    dataset = (
        wds.WebDataset(args.dataset_path, resampled=True, handler=wds.warn_and_continue)
        .shuffle(690, handler=wds.warn_and_continue)
        .decode("pil", handler=wds.warn_and_continue)
        .rename(
            original_prompt="original_prompt.txt",
            jpg_0="jpg_0.jpg",
            jpg_1="jpg_1.jpg",
            label_0="label_0.txt",
            label_1="label_1.txt",
            handler=wds.warn_and_continue,
        )
    )
    return dataset

Loader is also simple:
dataset = dataset.map(preprocess_images, handler=wds.warn_and_continue)
dataset = dataset.batched(args.per_gpu_batch_size, partial=False, collation_fn=collate_fn)
dataset = dataset.with_epoch(num_worker_batches)

dataloader = wds.WebLoader(
    dataset,
    batch_size=None,
    shuffle=False,
    num_workers=args.dataloader_num_workers,
    pin_memory=True,
    persistent_workers=True,
)

What I want to do is before batching, I want to restrict the number of samples (similar to take() from tf.dataset) before they're getting batched.
How to do this?

You have the .slice(...) method or the .with_epoch(...) method (They do the same thing).


[BUG] -  component causes Next.JS 14 to crash in next dev

NextUI Version
2.4.2
Describe the bug
When hovering on a Tooltip in dev mode in Next.js (14.2.7) it causes the crash:
Error: Only two keyframes currently supported with spring and inertia animations. Trying to animate scale(0.85),scale(0.86182),scale(0.88541),scale(0.91045),scale(0.93264),scale(0.95066),scale(0.96457),scale(0.97493),scale(0.98248),scale(0.98787),scale(0.99167),scale(0.99432),scale(0.99615),scale(0.9974),scale(0.99825),scale(0.99883),scale(0.99922),scale(0.99948),scale(0.99966),scale(0.99977),scale(1)

It seems to be a framer-motion issue, because when setting disableAnimation={true} it doesn't cause the app to crash anymore.
Your Example Website or App
No response
Steps to Reproduce the Bug or Issue

Start Next.js app with next dev
Hover
Next.js app crashes (see screenshot)

Expected behavior
As a user I expect <Tooltip /> to work in next dev
Screenshots or Videos

Operating System Version
macOS 14.6.1
Browser
Chrome

This has been resolved in previous version (after 2.4.2). Please upgrade to the latest version.

This has been resolved in previous version (after 2.4.2). Please upgrade to the latest version.

Thanks for the answer @wingkwong! I just upgraded to 2.4.6 and while the issue seems to be less frequent I'm still getting this crash when quickly hovering over a Tooltip 2-3 times:
Error: Only two keyframes currently supported with spring and inertia animations. Trying to animate scale(0.85),scale(0.86182),scale(0.88541),scale(0.91045),scale(0.93264),scale(0.95066),scale(0.96457),scale(0.97493),scale(0.98248),scale(0.98787),scale(0.99167),scale(0.99432),scale(0.99615),scale(0.9974),scale(0.99825),scale(0.99883),scale(0.99922),scale(0.99948),scale(0.99966),scale(0.99977),scale(1)

Please check the docs. I think you also need to upgrade framer motion as well

That solved it! Thanks @wingkwong!
For anyone with the same problem: I upgraded framer-motion 11.0.8 -> 11.5.4


[KCC] Add the Go CLI to test Config Connector solutions

Currently, it only runs the test for a single solution at a time. Improvements will be done in future PRs.

Hi @morgante, this CLI is used to run test for the Config Connector resources (YAMLs) created under ../solutions folder. go test, however, is used to test code written in Go, which doesn't fit our case.

Hi @morgante, this CLI is used to run test for the Config Connector resources (YAMLs) created under ../solutions folder. go test, however, is used to test code written in Go, which doesn't fit our case.

Regarding this - since Go is required to run tests, is wrapping the execution of tests into a go test package give any extra benefits? Such as developers not having to learn new CLI or being able to run all the tests from the root folder above Config Connector?

Hi @morgante, this CLI is used to run test for the Config Connector resources (YAMLs) created under ../solutions folder. go test, however, is used to test code written in Go, which doesn't fit our case.

Regarding this - since Go is required to run tests, is wrapping the execution of tests into a go test package give any extra benefits? Such as developers not having to learn new CLI or being able to run all the tests from the root folder above Config Connector?

Discussed offline. Yes, I agree that the requirement of installing Go seems to be unnecessary because contributors don't need to actually run go code to do the tests, but instead, being able to run the CLI binary would be sufficient.
Will submit the generated lib and remove the dependency on Go in the README in the upcoming PRs.


Allow double ratchet messaging encryption

We need a way to generate new keys for each request and response thus increasing the security of the messages
look into https://www.youtube.com/watch?v=9sO2qdTci-s

merged to master


AdjustCenterOfMass shifts the local frame of the children shapes

Calling AdjustCenterOfMass shifts the local position of the mutable compound children.
Clip: static mutable shape getting added a box shape child and called AdjustCenterOfMass:
https://github.com/user-attachments/assets/3321b683-f831-445f-b74c-0a81a9363f33

Are you notifying the body interface that the shape changed? See:
https://github.com/jrouwe/JoltPhysics/blob/c7d9114f44d98cb76ecf3806dc3621cd73371226/Samples/Tests/Shapes/MutableCompoundShapeTest.cpp#L105-L110

I did not! That was the issue. Thank you!


Batch follow example should be in separate hashes

Batch following many feeds (requires ruby 2.1 or later)
follows = [{
:source => 'flat:1', :target => 'user:1',
:source => 'flat:1', :target => 'user:2',
:source => 'flat:1', :target => 'user:3'
}]
should be:
follows = [
{:source => 'timeline:1', :target => 'user:1'},
{:source => 'timeline:1', :target => 'user:2'},
{:source => 'timeline:1', :target => 'user:3'}
]
Otherwise the keys will just get overwritten.

Thanks @gcwokeup all fixed.


Vapor 3

Migrate to Vapor 3 - this will be a long process!
TODO:

[ ] Integrate Swift lint
[ ] Migration guide
[ ] README
[ ] Code Coverage with GH Actions
[x] Proper excludes in Package.swift
[x] LinuxMain.swift

Codecov Report

Merging #36 into master will increase coverage by 11.81%.
The diff coverage is 94%.

@@             Coverage Diff             @@
##           master      #36       +/-   ##
===========================================
+ Coverage   82.12%   93.93%   +11.81%
===========================================
  Files          17       30       +13
  Lines        1857      907      -950
  Branches       91        0       -91
===========================================
- Hits         1525      852      -673
+ Misses        323       55      -268
+ Partials        9        0        -9

Impacted Files
Coverage Δ

Sources/SteamPress/SteamPressError.swift
0% <0%> (ø)

...teamPress/Services/RealRandomNumberGenerator.swift
0% <0%> (ø)

Sources/SteamPress/Extensions/String+Random.swift
100% <100%> (ø)

...teamPress/Extensions/Request+PageInformation.swift
100% <100%> (ø)

...mPress/Middleware/BlogAuthSessionsMiddleware.swift
100% <100%> (ø)

...ces/SteamPress/Controllers/API/APIController.swift
100% <100%> (ø)

Sources/SteamPress/Config/FeedInformation.swift
100% <100%> (ø)

...mPress/Extensions/String+Optional+Whitespace.swift
100% <100%> (ø)

...eamPress/Middleware/BlogRememberMeMiddleware.swift
100% <100%> (ø)

.../SteamPress/Extensions/BCrypt+PasswordHasher.swift
100% <100%> (ø)

... and 41 more

Continue to review full report at Codecov.

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


🌱 sync OWNERS from main

OWNERS has falled out of sync, take it from main.

/test-ubuntu-integration-release-1-1


Filled type for Tag component

This function solves the problem (这个功能解决的问题)
Hello.
Is that possible to implement also filled type for Tag like in screen below:

Expected API (期望的 API)
<n-tag :filled="true|false">Tag</n-tag>

Thank you for great UI.

Any updates on this. Is that possible to implement such tags?

This issue does not have any recent activity. If you are still experiencing similar problems, open a new error, including a minimal copy of the problem

@jahnli sorry, but why it has been closed. Requested feature is not implemented yet. There are still no filled tags.

At present, the problem has been submerged, I personally think that only by re-opening a problem can more people see it and be willing to add it. If this problem is closed, I am very sorry and I will re-open it


Only the first name, last name, and email fields should be required for tickets purchased by admins

This is so that employees can quickly sell tickets at the door or over the phone.

This ticket was conveniently also on our jira To Do, and is going to be tackled this week


Error: \ncardano-cli: Network.Socket.connect: <socket: 11>: does not exist (No such file or directory)

I just followed the instructions from the readme/guide and had the hasura docker image running for 2 days.
Suddenly the api stopped working with the following error:
Error: \ncardano-cli: Network.Socket.connect: <socket: 11>: does not exist (No such file or directory)
I had to down the  docker image and up it again.

Having the same issue, not quite sure how to prove it yet but currently to use any known public cardano-graphql servers online, plus deploying my own seems imposible, too much random errors.
For example using 4.0.0 --no-build on my own I'm getting:
{
  "errors": [
    {
      "message": "Error: \ncardano-cli: Network.Socket.connect: <socket: 11>: does not exist (No such file or directory)",
      "locations": [
        {
          "line": 2,
          "column": 3
        }
      ],
      "path": [
        "cardanoDbMeta"
      ],
      "extensions": {
        "code": "INTERNAL_SERVER_ERROR",
        "exception": {
          "stacktrace": [
            "Error: Error: ",
            "cardano-cli: Network.Socket.connect: <socket: 11>: does not exist (No such file or directory)",
            "    at Object.<anonymous> (/app/packages/api-cardano-db-hasura/dist/executableSchema.js:168:35)",
            "    at Generator.throw (<anonymous>)",
            "    at rejected (/app/packages/api-cardano-db-hasura/dist/executableSchema.js:6:65)",
            "    at processTicksAndRejections (internal/process/task_queues.js:93:5)"
          ]
        }
      }
    }
  ],
  "data": null
}

Maybe is totally unrelated but just in cases:
In other servers this last 48hs most of times I encounter errors on queries, like
{
  "errors": [
    {
      "message": "database query error",
      "locations": [
        {
          "line": 2,
          "column": 3
        }
      ],
      "path": [
        "assets"
      ],
      "extensions": {
        "path": "$",
        "code": "unexpected",
        "exception": {
          "message": "database query error",
          "stacktrace": [
            "GraphQLError: database query error",
            "    at Object.relocatedError (/app/node_modules/@graphql-tools/utils/index.cjs.js:3350:12)",
            "    at handleNull (/app/node_modules/@graphql-tools/delegate/index.cjs.js:744:49)",
            "    at handleResult (/app/node_modules/@graphql-tools/delegate/index.cjs.js:1007:16)",
            "    at checkResultAndHandleErrors (/app/node_modules/@graphql-tools/delegate/index.cjs.js:1036:12)",
            "    at CheckResultAndHandleErrors.transformResult (/app/node_modules/@graphql-tools/delegate/index.cjs.js:1030:16)",
            "    at /app/node_modules/@graphql-tools/delegate/index.cjs.js:1187:40",
            "    at Array.reduceRight (<anonymous>)",
            "    at Transformer.transformResult (/app/node_modules/@graphql-tools/delegate/index.cjs.js:1186:37)",
            "    at /app/node_modules/@graphql-tools/delegate/index.cjs.js:1290:71",
            "    at processTicksAndRejections (internal/process/task_queues.js:93:5)"
          ]
        }
      }
    }
  ],
  "data": null
}

or
{
    "errors": [
        {
            "message": "TypeError: Cannot read property 'currentEpoch' of undefined",
            "locations": [
                {
                    "line": 94,
                    "column": 3
                }
            ],
            "path": [
                "cardano"
            ],
            "extensions": {
                "code": "INTERNAL_SERVER_ERROR",
                "exception": {
                    "stacktrace": [
                        "Error: TypeError: Cannot read property 'currentEpoch' of undefined",
                        "    at Object.<anonymous> (/app/packages/api-cardano-db-hasura/dist/executableSchema.js:159:35)",
                        "    at Generator.next (<anonymous>)",
                        "    at fulfilled (/app/packages/api-cardano-db-hasura/dist/executableSchema.js:5:58)",
                        "    at processTicksAndRejections (internal/process/task_queues.js:93:5)"
                    ]
                }
            }
        }
    ],
    "data": null
}

(this last one makes me dubt if my queries are right, but as i said, everyting start happening this las 48hs aprox.)
Also queries with assets fail weirdly for the first 20 minutes aprox, on new transactions, or new minting transactions.
Too much to report, but hope this make sense. I really want to rely on this server to build stuff, but sometimes it gets really hard to rely on. Any help would be apretiated. Thnks!

The next version resolves the issues surrounding assets and the cardano-node socket. You can test this out by building the master branch, making sure to re-initialise the git submodules.

The release branch has been made, and we'll be tagging once final QA checks are performed:
https://github.com/input-output-hk/cardano-graphql/tree/5-0-stable


Error while &stats command, On the main bot.

Command that caused the error
&stats
To Reproduce
Steps to reproduce the behavior:

do &stats

Self-hosted instance?
No.
Error file
Message: TypeError: Cannot read property 'username' of undefined

Stack Trace: TypeError: Cannot read property 'username' of undefined
    at StatsCommand.run (/home/esmBot/esmBot/commands/general/stats.js:19:63)
    at module.exports (/home/esmBot/esmBot/events/messageCreate.js:90:39)
    at runMicrotasks (<anonymous>)
    at processTicksAndRejections (node:internal/process/task_queues:96:5)

Additional context
I ran the command while the bot was almost processed the image and was bout to post it i think, here's a image,

(don't mind my nickname)

Fixed on master with 0af6533


Responsive grid are too small

Hello guys,
I have a Sony Xperia Z3 Compact and my materialize's website was printed as a tablet but it's a phone...
400px is for very small phone, my phone is also a compact version and it's recognized as a tablet.
Is there a way to adjust the dimensions of the grids ???
Sorry for the bad english I'm French :/

The label is arbitrary. You can design your "tablet" version to be similar to a phone version.
But you can always download the Sass version and edit the variables.scss file:
Look for these values and they will change the media queries for the entire framework.
// Media Query Ranges
$small-screen-up: 601px !default;
$medium-screen-up: 993px !default;
$large-screen-up: 1201px !default;
$small-screen: 600px !default;
$medium-screen: 992px !default;
$large-screen: 1200px !default;


THRIFT-5648: add uuid support in rust

[x] Did you create an Apache Jira ticket?  (not required for trivial changes)
[x] If a ticket exists: Does your pull request title follow the pattern "THRIFT-NNNN: describe my issue"?
[x] Did you squash your changes to a single commit?  (not required, but preferred)
[x] Did you do your best to avoid breaking changes?  If one was needed, did you label the Jira ticket with "Breaking-Change"?
[x] If your change does not involve any code, include [skip ci] anywhere in the commit message to free up build resources.

@allengeorge per discussion in #2700, @fishy suggested that we do not bring any 3rd dependencies (in go library). here we are facing the same issue, do you believe we shall remove the uuid dependency in rust?

@allengeorge per discussion in #2700, @fishy suggested that we do not bring any 3rd dependencies (in go library). here we are facing the same issue, do you believe we shall remove the uuid dependency in rust?

go library is slightly different in that it already has zero third party dependency right now so there's a big incentive to keep it that way, which does not apply to rust library (which I believe already have third party dependencies).

I'm ok with adding a dependency (we shouldn't add them without thought, of course). The Rust UUID crate is dual-licensed ASL 2.0/MIT, so that's not an issue.

I'm ok with adding a dependency (we shouldn't add them without thought, of course). The Rust UUID crate is dual-licensed ASL 2.0/MIT, so that's not an issue.
We can always reimplement the UUID portions necessary and remove the dependency over time.

thanks for the context. @allengeorge in this case do you think this pr can be merged as is?

I'd like to know why this pr was closed. thanks

I'd like to know why this pr was closed. thanks

hi, simple answer - i was not able to get approvers for this.

I'd like to know why this pr was closed. thanks

hi, simple answer - i was not able to get approvers for this.

what a pity！

hi, simple answer - i was not able to get approvers for this.

For starters, I am not a Rust guy, and @allengeorge already chimed in. That's why I removed the review request.
Next, we have plenty of pending PRs, which is a whole topic on itself. Getting no approvers applies to most of them, but the real question is why? IMHO this is not a indication of a quality issue, but a quantity issue. If we had enough active committers taking care, we would be able to give better responses than "there just was nobody around to take care".

I just skimmed over the changes and what could be better is the fact, that the compiler part also has a lot of refactorings in it. It's a bit hard to see what the real changes are for uuid and what is just shuffling comments around etc. I'd say we give it another chance. Shall we?


Main value ist shifted when using the secondary input

Hello, I've found the following small issue, if I use the secondary input: Is a unit defined for the main value, then everything looks fine (picture 1). If I don't define a unit, then the main value is shifted to left (picture 2). Probably there is a space on the right side (marked in picture 3).

Fixed but with minor drawback - if unit  is configured to be empty, no way to show it with control message. So if needed to be dynamically changed, the initial configuration should contain something.


feat(cdk): introduce breakpoint service

PR Checklist
Please check if your PR fulfills the following requirements:

[x] The commit message follows Conventional Commits
[x] Tests for the changes have been added (for bug fixes / features)
[ ] Docs have been added / updated (for bug fixes / features)

PR Type
What kind of change does this PR introduce?

[ ] Bugfix
[x] Feature
[ ] Refactoring
[ ] Code style update
[ ] Build or CI related changes
[ ] Documentation content changes

What is the current behavior?
Closes #3336
What is the new behavior?
New service has been introduces which emits corresponding TUI_MEIDA key on media query change.
Does this PR introduce a breaking change?

[ ] Yes
[x] No

@zarghamkhandev just a ping to see if you want this to make Monday's release :) All is missing is the demo page.

@waterplea  I am on it. What I am not able to figure out is, whether I need to create a viewport like UI within the example or ask user to change the actual viewport and just display the current breakpoint. WDYT.

@waterplea  I am on it. What I am not able to figure out is, whether I need to create a viewport like UI within the example or ask user to change the actual viewport and just display the current breakpoint. WDYT.

Just ask to change the actual window size.   And place a few DOM elements visible only for particular media configurations through CSS side by side with the same kind of elements hidden with *ngIf and this new service.

@waterplea its ready for review


ERROR - list index out of range

I get the next error:  ERROR - list index out of range

same here

try the new version


feat: Suppress product artwork schema GRO-360

This PR updates our artwork structured data components to switch from Product to CreativeWork when we don't have price info. The ticket called for suppression of the structured data altogether, but I chatted with Jenna and we decided there was still some value to running the more generic type here.
I tried really hard to verify this fix prior to creating a PR, but for whatever reason the Rich Results Test does not like ngrok URLs, haha. Furthermore, staging can't be tested either because we block robots:
jon@juggernaut:~/code/force(master)% http https://staging.artsy.net/robots.txt --body
User-agent: *
Disallow: /

So then I updated my local env file to allow robots but it still didn't work, probably because of whatever shenanigans ngrok does. 🤷 I don't think this is a very risky change to test in prod but open to other ideas. I did try to copy/paste the html but that doesn't work because so much happens client side.
https://artsyproduct.atlassian.net/browse/GRO-360
/cc @artsy/grow-devs

👍 Lets see how it goes

Follow up - it worked!

And by "it worked" I mean that we no longer have an error. 😝


typescript-multiple-files/index.handlebars does not exists

When running (from an npm script)
gql-gen --url http://<IP_ADDRESS>:8889/graphql --template ts-multiple --out ./outM

one gets:
Error: Template file /Users/roey/generators/typescript-multiple-files/index.handlebars does not exists!
    at Object.exports.loadFromPath (/Users/roey/Development/gql2ts/node_modules/graphql-code-generator/dist/loaders/template-loader.js:11:15)
    at Object.exports.compileTemplate (/Users/roey/Development/gql2ts/node_modules/graphql-code-generator/dist/loaders/template-loader.js:30:39)
    at Transform (/Users/roey/Development/gql2ts/node_modules/graphql-code-generator/dist/engine/transform-engine.js:85:44)
    at process._tickCallback (internal/process/next_tick.js:103:7)

Notice that for some reason it searches for the file in the home folder (/Users/roey/generators/...).
Full package.json:
{
  "name": "gql2ts",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1",
    "emit": "gql-gen --url http://<IP_ADDRESS>:8889/graphql --template typescript --out ./out/typings.d.ts",
    "em": "gql-gen --url http://<IP_ADDRESS>:8889/graphql --template ts-multiple --out ./outM"
  },
  "author": "",
  "license": "ISC",
  "devDependencies": {
    "graphql-code-generator": "^0.5.2"
  },
  "dependencies": {
    "graphql": "^0.9.6"
  }
}

Note that emit works, but em doesn't.

I don't think this resolves correctly. And this is probably the fix:
https://stackoverflow.com/questions/12238477/determine-command-line-working-directory-when-running-node-bin-script

probably solves once this issue is solved #49

This will be fixed with #110

This is fixed in master, it's just awaiting a release.

Fixed in 0.5.5 :)


Is there anyway to switch router with keyboard( like arrow key ) ？

I want to use arrow key to control the router so that I can show different pages;
e.g.
/
-> use right arrow key -> /info
-> use right arrow key -> /about
-> use left arrow key -> /info
-> use left arrow key -> /

I think this experience must be interesting!
now I'm using react-router V4, is that possible?

You'll need to set up a keyboard event handler and call the push() function from the history in Router. But this is a bug tracker, not a support system. For usage questions, please use Stack Overflow or Reactiflux. Thanks!


Project parsing failed

Every time I create a new classlib project do I get the same error from ionide that the Project parsing failed: <project name>
Status: failed to load

Error:
MSBuild failed with exitCode 1 Working Directory: '/home/daniel/Projects/F#/testProject/testProject' Exe Path: 'dotnet' Args: 'msbuild /home/daniel/Projects/F#/testProject/testProject/testProject.fsproj /p:SkipCompilerExecution=true /p:ProvideCommandLineArgs=true /p:CopyBuildOutputToOutputDirectory=false /p:UseCommonOutputDirectory=true /t:_Inspect_FscArgs /p:_Inspect_FscArgs_OutFile=/tmp/tmpAxh9jH.tmp.FscArgs.txt /p:DesignTimeBuild=true /t:_Inspect_GetResolvedProjectReferences /p:_Inspect_GetResolvedProjectReferences_OutFile=/tmp/tmpONCems.tmp.GetResolvedProjectReferences.txt /t:_Inspect_GetProperties /p:_Inspect_GetProperties_OutFile=/tmp/tmpmqSlod.tmp.GetProperties.txt /nologo /verbosity:quiet' Log: /opt/dotnet/sdk/2.2.102/Microsoft.Common.CurrentVersion.targets(1179,5): error MSB3644: The reference assemblies for framework ".NETFramework,Version=v4.6.1" were not found. To resolve this, install the SDK or Targeting Pack for this framework version or retarget your application to a version of the framework for which you have the SDK or Targeting Pack installed. Note that assemblies will be resolved from the Global Assembly Cache (GAC) and will be used in place of reference assemblies. Therefore your assembly may not be correctly targeted for the framework you intend. [/home/daniel/Projects/F#/testProject/testProject/testProject.fsproj]

I guess that I will have to mention that i'm a linux user and I do have mono installed
Name            : mono
Version         : <IP_ADDRESS>-1
Description     : Free implementation of the .NET platform including runtime and compiler
Architecture    : x86_64
URL             : http://www.mono-project.com/
Licenses        : GPL  LGPL2.1  MPL
Groups          : None
Provides        : monodoc
Depends On      : zlib  libgdiplus>=4.2  sh  python  ca-certificates
Optional Deps   : None
Required By     : fsharp  gtk-sharp-2  mono-addins  msbuild-stable  nuget
Optional For    : avahi  graphviz
Conflicts With  : monodoc
Replaces        : None
Installed Size  : 237,46 MiB
Packager        : Levente Polyak<EMAIL_ADDRESS>Build Date      : 2018-12-08T13:17:06 CET
Install Date    : 2019-01-15T20:16:32 CET
Install Reason  : Explicitly installed
Install Script  : Yes
Validated By    : Signature

Seems like your project is configured to build for .NETFramework,Version=v4.6.1 too and you don't seem to have the dependencies installed or not found.
In your fake.sh or build.sh file can you try to add export FrameworkPathOverride=$(dirname $(which mono))/../lib/mono/4.5/
#!/bin/bash

OS=${OS:-"unknown"}

echo $OSTYPE
if [ "$OS" != "Windows_NT" ]
then
  # Allows NETFramework like net45 to be built using dotnet core tooling with mono
  export FrameworkPathOverride=$(dirname $(which mono))/../lib/mono/4.5/
fi

dotnet restore build.proj
dotnet fake $@

Sry for being slow here @MangelMaxime but I'm not quite sure what I should do here, should I add the following content to my build.sh?
#!/bin/bash

OS=${OS:-"unknown"}

echo $OSTYPE
if [ "$OS" != "Windows_NT" ]
then
  # Allows NETFramework like net45 to be built using dotnet core tooling with mono
  export FrameworkPathOverride=$(dirname $(which mono))/../lib/mono/4.5/
fi

dotnet restore build.proj
dotnet fake $@

In that case do I see the error No executable found matching command "dotnet-fake"

All of you need to supply some missing path overrides because our friends over on the MSBuild team won't help us out any. The simplest way to add these parameters is to download this file from the Type provider SDK: https://github.com/fsprojects/FSharp.TypeProviders.SDK/blob/master/netfx.props
Save that to your repository and include it in any project that needs to target the net4XX series of frameworks. You can do this via a line in your project file like <Import Project="..\netfx.props" />. Make sure you have the correct path to the file. Ionide (and the dotnet tooling in general) should work from this point.

Thanks @baronfel.
Do you know where the so called repository is located?

Workarounds provided by @MangelMaxime and @baronfel solves this issue.


Update pekko-stream, pekko-stream-testkit to 0.0.0+26630-2c4d0ee0-SNAPSHOT

About this PR
📦 Updates

org.apache.pekko:pekko-stream
org.apache.pekko:pekko-stream-testkit

from 0.0.0+26605-0a8b8a57-SNAPSHOT to 0.0.0+26630-2c4d0ee0-SNAPSHOT
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.apache.pekko" } ]

Or, add this to slow down future updates of this dependency:
dependencyOverrides = [{
  pullRequests = { frequency = "30 days" },
  dependency = { groupId = "org.apache.pekko" }
}]

labels: library-update, early-semver-build-metadata, semver-spec-build-metadata, commit-count:1

Superseded by #14.


fix(createEdit): Prevent routing issues caused by original fix for #266

@wski Added the setInterval/clearInterval jazz.

@wski, first review please.

looks good until we find a better way, passing to @arw180 for final review

@arw180 Changed "horrible" to "HACK".
On a side note, I rebased and force

Looks good :+1:


Comparisons should be grouped using AND not OR

Q
A

Bug Fix?
yes

New Feature?
no

BC Breaks?
no

Deprecations?
no

Fixed Tickets
#2

License
MIT

A new inspection was created.

The inspection completed: 1 updated code elements

A new inspection was created.

The inspection completed: 1 updated code elements


KeyError: 'Non-existent config key: SOLVER.TEST_PERIOD'

❓ Questions and Help
When I run the model I trained, the error is as follows：
File "/home/shuai/.conda/envs/PyTorch10/lib/python3.6/site-packages/yacs/config.py", line 213, in merge_from_file
self.merge_from_other_cfg(cfg)
File "/home/shuai/.conda/envs/PyTorch10/lib/python3.6/site-packages/yacs/config.py", line 217, in merge_from_other_cfg
_merge_a_into_b(cfg_other, self, self, [])
File "/home/shuai/.conda/envs/PyTorch10/lib/python3.6/site-packages/yacs/config.py", line 460, in _merge_a_into_b
_merge_a_into_b(v, b[k], root, key_list + [k])
File "/home/shuai/.conda/envs/PyTorch10/lib/python3.6/site-packages/yacs/config.py", line 473, in _merge_a_into_b
raise KeyError("Non-existent config key: {}".format(full_key))
KeyError: 'Non-existent config key: SOLVER.TEST_PERIOD'
I don't know how to change maskrcnn_benchamrk/config/defaults.py

@zyqlalala excuse me,have you solved this problem?thanks~~

@zyqlalala excuse me,have you solved this problem?thanks~~

Still waiting for the solution.

Is there a solution?
thanks!


Remove the need for Proxy when generating a dummy address.

Issue Number
#3165
Summary
This PR removes the use of Proxy in the type signature for dummyAddress:
     -- | Generates a dummy address value.
-    dummyAddress :: Proxy c -> Address c
+    dummyAddress :: Address c

bors r+


AtomicCell accessing uninitialized memory

Run the follow code sample with cargo +nightly miri run
use crossbeam_utils::atomic::AtomicCell;

#[allow(dead_code)]
#[repr(align(8))]
#[derive(Copy, Clone, Debug)]
enum Test {
    Field(u32),
    FieldLess,
}

fn main() {
    assert!(AtomicCell::<Test>::is_lock_free());
    let x = AtomicCell::new(Test::FieldLess);
    println!("{:?}", x.load());
}

I see the following error from Miri
error: Undefined Behavior: type validation failed at .value.<enum-tag>: encountered uninitialized bytes, but expected a valid enum tag
note: this indicates a bug in the program: it performed an invalid operation, and caused Undefined Behavior

I think the root of this issue is that AtomicCell is trying to do a transmute_copy on the None value, but the upper bits are uninitialized, therefore AtomicCell is reading uninitialized data.
crossbeam-utils = "0.8.5"
cargo 1.56.0-nightly (cc17afbb0 2021-08-02)

This seems an instance of https://github.com/rust-lang/unsafe-code-guidelines/issues/69?
I don't know if there is a way to fix this issue other than to restrict the types that can be used in AtomicCell using something like unsafe marker traits.

cc @RalfJung @jeehoonkang @Amanieu

This seems an instance of rust-lang/unsafe-code-guidelines#69?

Well, having uninitialized tags violates Rust's UB rules: enum values must have valid discriminants.
It seems like the AtomicCell implementation should be using MaybeUninit somewhere, to properly express that it is dealing with potentially uninit data.

enum values must have valid discriminants.

But isn't the discriminant valid in the above example? My understanding is that the rest of the enum is uninitialized (because writing Test::FieldLess only writes the discriminant) and AtomicCell::<T> always reads the full size_of::<T>() bytes.

But isn't the discriminant valid in the above example?

Yes, and a transmute_copy of that data at the given type would be fine. But AtomicCell evidently does something more interesting.

AtomicCell:: always reads the full size_of::() bytes.

let x = Test::FieldLess; let y = x also copies all the bytes, and that is okay since the discriminant is valid.

I assume this is the relevant transmute_copy?
https://github.com/crossbeam-rs/crossbeam/blob/2653a6cfe7f8756d27f53d51cc84fcabf5d1d549/crossbeam-utils/src/atomic/atomic_cell.rs#L789
Unfortunately all the types are inferred here so I am not sure at which type this is invoked.
But it just occurred to me that this might be an instance of https://github.com/rust-lang/rust/issues/69488. AtomicCell will load the entire 8-byte data at type u64, and it is not legal to load (partially) uninitialized data at type u64. Miri currently does not complain in this case (https://github.com/rust-lang/miri/pull/1904 will implement a flag for Miri to detect this), but the way Miri works means that the uninitializedness is 'amplified' -- basically, if any of the 8 bytes in memory is uninit, then the entire integer is "poisoned". So this is related to https://github.com/rust-lang/unsafe-code-guidelines/issues/71.
What should happen is that the (atomic) load occurs at type MaybeUninit<u64> instead of u64, but there is no way to do that in Rust...

The proper fix is to do the (atomic) load at type MaybeUninit instead of u64, but there is no way to do that in Rust...

so is it not possible to implement a sound AtomicCell like type in Rust?

AtomicCell goes beyond what is soundly possible in Rust in multiple ways -- besides this issue, also see https://github.com/crossbeam-rs/crossbeam/issues/315. Furthermore, it uses an SeqLock, which cannot be soundly implemented in C/C++/Rust (see e.g. this article).

Minimized:
#[allow(dead_code)]
#[repr(align(8))]
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
enum Test {
    FieldLess,
}

fn main() {
    unsafe {
        let v = Test::FieldLess;
        let v = std::mem::transmute::<_, u64>(v);
        let _v = std::mem::transmute::<_, Test>(v); // error: Undefined Behavior: type validation failed at .<enum-tag>: encountered uninitialized bytes, but expected a valid enum tag
    }
}

playground
And using [u64; 1] instead of u64 will fix the error.
          let v = Test::FieldLess;
+         let v = std::mem::transmute::<_, [u64; 1]>(v);
          let _v = std::mem::transmute::<_, Test>(v);

playground
I agree that this appears to be an instance of https://github.com/rust-lang/rust/issues/69488.

And using [u64; 1] instead of u64 will fix the error.

Ah, that is an interesting work-around -- looks like single-element arrays get a different ABI than their element type, so they are not treated as scalars any more.

Btw, there is another way to trigger the same problem, which maybe shows a bit clearly what happens:
use crossbeam_utils::atomic::AtomicCell;

#[derive(Copy, Clone, Debug)]
#[repr(align(4))]
struct Test(u8, u16);

fn main() {
    assert!(AtomicCell::<Test>::is_lock_free());
    let x = AtomicCell::new(Test(1, 2));
    println!("{:?}", x.load());
}

Test has a padding byte, which is uninitialized, so AtomicCell internally using i32 to represent a Test does not work.