text:
freshplayerplugin suddenly consume overr 100% cpu and hang

os:openSUSE 13.2
firefox: 14.0.5
chrome-beta: 40.0.2214.38 beta (64-bit)
freshplayerplugin:2.0-32.1
i have already edit file /etc/freshwrapper.conf and edit pepperflash_path's value to '/opt/google/chrome-beta/PepperFlash/libpepflashplayer.so' to make sure freshplayerplugin is using the same ppapi flash as chrome-beta
test link: http://v.youku.com/v_show/id_XODQ3NjM0MjA0.html
when the flash video begins to play, i run pidstat command to watch plugin-container's cpu usage. at first  this process uses about 50% cpu and the video plays as expected. but after about one minute, i find the flash's video hangs and cpu usage is over 100%.
then i open the same link and play with chrome-beta. everything is ok.

@MALLER-LAGOON what system configuration do you think it is ? i have changed freshplayerplugin repo from https://build.opensuse.org/package/show?project=home%3Aandykimpe%3Afreshplayerplugin&package=freshplayerplugin to https://build.opensuse.org/package/show?project=home%3AKenzy%3Apackages&package=freshplayerplugin, but this doesn't help. i also have tried to enable/disable gpu acceleration on video context menu but still doesn't help. or how can i debug this wrapper ? any logs for me to deep into ?

but buddy, have u tried to compile the freshplayer from this github?
the repos that u linked me are very outdated.
also you can try with this application, which download the source code from the master branch of this github, compile it and install it properly to the user from the console.
its very important that u read and follow the instructions to this works properly.
i do it in that way, and i can ensure you, the freshplayer works a lot more stable than a flashplayerplugin-nonfree from the oficial repo of Debian.

@MALLER-LAGOON  as you requested, freshplayerplugin from home:Kenzy:packages updated freshplayerplugin source codes to commit c5694f0 which is commited on Feb 2, 2015. but still the same problem exists. i have tried to tune some parameters (such as enable_3d, comment flash_command_line) but didn't help.

I still can't reproduce the issue you described. Although there were memory leaks, which are now fixed.
Can you build a debug build (cmake -DCMAKE_BUILD_TYPE=Debug .. && make) and run a sudo perf top when those high CPU load occur?
(perf is a profiler, and usually a part of linux-tools package. perf top outputs a live list of most CPU expensive functions. It's like top, but more specific. Most probably you'll need to run perf as root.)

right now i cloned freshplayerplugin ( commit 9a3e1f0) and build a debug build on my own machine which can reproduce this issue , but still any videos on http://www.youku.com will hang after about 1minute. the following is sudo perf top snapshot when video hangs.

did u try setting the storage to unlimited?

@MALLER-LAGOON i can not find any similar configurations with local storage. would you please tell me which one it is ?

do a right click on the flash frame-->settings-->local storage.

@MALLER-LAGOON also tried and same problem

this is my debug informations
WARNING: content window passed to PrivateBrowsingUtils.isWindowPrivate. Use isContentWindowPrivate instead (but only for frame scripts).
pbu_isWindowPrivate@resource://gre/modules/PrivateBrowsingUtils.jsm:25:14
injectController@resource://gre/modules/MozSocialAPI.jsm:49:20
exports.Utils.yield@resource://gre/modules/addons/XPIProvider.jsm -> jar:file:///home/bruce/.mozilla/firefox/i7tqmpwq.default-1418924289071/extensions/%7Bd10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d%7D.xpi!/bootstrap.js -> jar:file:///home/bruce/.mozilla/firefox/i7tqmpwq.default-1418924289071/extensions/%7Bd10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d%7D.xpi!/lib/utils.js:380:12
INIParser.prototype.process@resource://gre/modules/addons/XPIProvider.jsm -> jar:file:///home/bruce/.mozilla/firefox/i7tqmpwq.default-1418924289071/extensions/%7Bd10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d%7D.xpi!/bootstrap.js -> jar:file:///home/bruce/.mozilla/firefox/i7tqmpwq.default-1418924289071/extensions/%7Bd10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d%7D.xpi!/lib/filterStorage.js:870:7
exports.IO.readFromFile/onProgress@resource://gre/modules/addons/XPIProvider.jsm -> jar:file:///home/bruce/.mozilla/firefox/i7tqmpwq.default-1418924289071/extensions/%7Bd10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d%7D.xpi!/bootstrap.js -> jar:file:///home/bruce/.mozilla/firefox/i7tqmpwq.default-1418924289071/extensions/%7Bd10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d%7D.xpi!/lib/io.js:97:15
exports.IO.readFromFile/<@resource://gre/modules/addons/XPIProvider.jsm -> jar:file:///home/bruce/.mozilla/firefox/i7tqmpwq.default-1418924289071/extensions/%7Bd10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d%7D.xpi!/bootstrap.js -> jar:file:///home/bruce/.mozilla/firefox/i7tqmpwq.default-1418924289071/extensions/%7Bd10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d%7D.xpi!/lib/io.js:182:11
TaskImpl_run@resource://gre/modules/Task.jsm:330:41
Handler.prototype.process@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:865:23
this.PromiseWalker.walkerLoop@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:744:7
NOT SANDBOXED
[fresh 11017] not implemented: PPB_OpenGLES2DrawBuffers(Dev);1.0
[fresh 11017] [PPB] {fake} ppb_video_capture_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {zilch} ppb_network_monitor_update_network_list
[fresh 11017] [PPB] {zilch} ppb_text_input_interface_set_text_input_type instance=10, type=PP_TEXTINPUT_TYPE_DEV_NONE
[fresh 11017] [PPB] {zilch} ppb_flash_set_instance_always_on_top instance=10, on_top=1
[fresh 11017] [PPB] {fake} ppb_video_capture_close
[fresh 11017] [PPB] {fake} ppb_video_capture_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {zilch} ppb_network_monitor_update_network_list
[fresh 11017] [PPB] {zilch} ppb_text_input_interface_set_text_input_type instance=11, type=PP_TEXTINPUT_TYPE_DEV_NONE
[fresh 11017] [PPB] {zilch} ppb_flash_set_instance_always_on_top instance=11, on_top=1
[fresh 11017] [PPB] {fake} ppb_video_capture_close
[fresh] [warning] handle_tcp_connect_stage2, evdns returned code 3, count = 0 (localhost:843)
[fresh] [warning] ppb_tcp_socket_get_local_address, not connected
[fresh] [warning] ppb_tcp_socket_get_remote_address, not connected
[fresh 11017] [PPB] {fake} ppb_video_capture_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {zilch} ppb_network_monitor_update_network_list
[fresh 11017] [PPB] {zilch} ppb_text_input_interface_set_text_input_type instance=12, type=PP_TEXTINPUT_TYPE_DEV_NONE
[fresh] [warning] handle_tcp_connect_stage2, evdns returned code 3, count = 0 (localhost:8909)
[fresh] [warning] ppb_tcp_socket_get_local_address, not connected
[fresh] [warning] ppb_tcp_socket_get_remote_address, not connected
[fresh 11017] [PPB] {fake} ppb_video_capture_close
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {zilch} ppb_udp_socket_bind udp_socket=1547, addr=0x7f2e04bfd9b0, callback={.func=0x7f2e06254c00, .user_data=0x7f2e018ce0b0, .flags=0}
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh] [warning] handle_tcp_connect_stage2, evdns returned code 3, count = 0 (localhost:843)
[fresh] [warning] ppb_tcp_socket_get_local_address, not connected
[fresh] [warning] ppb_tcp_socket_get_remote_address, not connected
[fresh] [warning] handle_tcp_connect_stage2, evdns returned code 3, count = 0 (localhost:8909)
[fresh] [warning] ppb_tcp_socket_get_local_address, not connected
[fresh] [warning] ppb_tcp_socket_get_remote_address, not connected
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh] [warning] handle_tcp_connect_stage2, evdns returned code 3, count = 0 (localhost:843)
[fresh] [warning] ppb_tcp_socket_get_local_address, not connected
[fresh] [warning] ppb_tcp_socket_get_remote_address, not connected
[fresh] [warning] handle_tcp_connect_stage2, evdns returned code 3, count = 0 (localhost:8909)
[fresh] [warning] ppb_tcp_socket_get_local_address, not connected
[fresh] [warning] ppb_tcp_socket_get_remote_address, not connected
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {zilch} ppb_udp_socket_bind udp_socket=4688, addr=0x7f2e04bfd9b0, callback={.func=0x7f2e06254c00, .user_data=0x7f2e018ceec0, .flags=0}
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh] [warning] handle_tcp_connect_stage2, evdns returned code 3, count = 0 (localhost:843)
[fresh] [warning] ppb_tcp_socket_get_local_address, not connected
[fresh] [warning] ppb_tcp_socket_get_remote_address, not connected
[fresh] [warning] handle_tcp_connect_stage2, evdns returned code 3, count = 0 (localhost:8909)
[fresh] [warning] ppb_tcp_socket_get_local_address, not connected
[fresh] [warning] ppb_tcp_socket_get_remote_address, not connected
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh] [warning] handle_tcp_connect_stage2, evdns returned code 3, count = 0 (localhost:843)
[fresh] [warning] ppb_tcp_socket_get_local_address, not connected
[fresh] [warning] ppb_tcp_socket_get_remote_address, not connected
[fresh] [warning] handle_tcp_connect_stage2, evdns returned code 3, count = 0 (localhost:8909)
[fresh] [warning] ppb_tcp_socket_get_local_address, not connected
[fresh] [warning] ppb_tcp_socket_get_remote_address, not connected
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh] [warning] handle_tcp_connect_stage2, evdns returned code 3, count = 0 (localhost:843)
[fresh] [warning] ppb_tcp_socket_get_local_address, not connected
[fresh] [warning] ppb_tcp_socket_get_remote_address, not connected
[fresh] [warning] handle_tcp_connect_stage2, evdns returned code 3, count = 0 (localhost:8909)
[fresh] [warning] ppb_tcp_socket_get_local_address, not connected
[fresh] [warning] ppb_tcp_socket_get_remote_address, not connected
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh] [warning] handle_tcp_connect_stage2, evdns returned code 3, count = 0 (localhost:843)
[fresh] [warning] ppb_tcp_socket_get_local_address, not connected
[fresh] [warning] ppb_tcp_socket_get_remote_address, not connected
[fresh] [warning] handle_tcp_connect_stage2, evdns returned code 3, count = 0 (localhost:8909)
[fresh] [warning] ppb_tcp_socket_get_local_address, not connected
[fresh] [warning] ppb_tcp_socket_get_remote_address, not connected
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
WARNING: content window passed to PrivateBrowsingUtils.isWindowPrivate. Use isContentWindowPrivate instead (but only for frame scripts).
pbu_isWindowPrivate@resource://gre/modules/PrivateBrowsingUtils.jsm:25:14
injectController@resource://gre/modules/MozSocialAPI.jsm:49:20
[fresh 11017] [PPB] {fake} ppb_video_capture_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {zilch} ppb_network_monitor_update_network_list
[fresh 11017] [PPB] {zilch} ppb_text_input_interface_set_text_input_type instance=13, type=PP_TEXTINPUT_TYPE_DEV_NONE
[fresh 11017] [PPB] {fake} ppb_video_capture_close
WARNING: content window passed to PrivateBrowsingUtils.isWindowPrivate. Use isContentWindowPrivate instead (but only for frame scripts).
pbu_isWindowPrivate@resource://gre/modules/PrivateBrowsingUtils.jsm:25:14
injectController@resource://gre/modules/MozSocialAPI.jsm:49:20
[fresh 11017] [PPB] {fake} ppb_video_capture_enumerate_devices
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices
[fresh 11017] [PPB] {zilch} ppb_network_monitor_update_network_list
[fresh 11017] [PPB] {zilch} ppb_text_input_interface_set_text_input_type instance=14, type=PP_TEXTINPUT_TYPE_DEV_NONE
[fresh 11017] [PPB] {fake} ppb_video_capture_close
[fresh 11017] [PPB] {fake} ppb_audio_input_enumerate_devices

I'm trying to reproduce the issue in virtual machine with OpenSUSE 13.2 installed, but with no success.
As a wild guess, try to temporarily rename /usr/lib64/gtk-2.0/2.10.0/engines/liboxygen-gtk.so. In my experiments it showed some errors when run under Valgrind.

From debug log you attached, I can say your system have troubles resolving localhost. Is ping localhost works on your machine?
It could be you don't have 127.0.0.1	localhost line in your /etc/hosts. That can cause errors in other network-related applications too.

From debug log you attached, I can say your system have troubles resolving localhost. Is ping localhost works on your machine?
It could be you don't have 127.0.0.1 localhost line in your /etc/hosts. That can cause errors in other network-related applications too.

no, i can ping localhost, i also have 127.0.0.1 localhost line in my /etc/hosts

try to temporarily rename /usr/lib64/gtk-2.0/2.10.0/engines/liboxygen-gtk.so

i tried and didn't fix my problem.

i also diabled all plugins except this one, disabled all extensions, cleaned all caches and cookies etc ,still didnt' solve my problem.

maybe this is the right place to write this
When l played the game http://www.kongregate.com/games/KintoGames/bit-dungeon
with the freshplayerplugin and clicked somewhere to walk with the character, the game is freezed a bit and then the charakter is near the place where it should walk.
l switched back to flashplugin-installer and l can watch the character starting to walk.
l don't use hardware accelerating.

again i git-pulled and compiled, and found this problem is gone with  52b52e735206ff72f8f8c057b8e83e165da54d76 !

Is it fixed in the ppa, too?

and found this problem is gone

Good to hear that (because I have no idea how to reproduce it and therefore, to fix). Could you also check the most recent version from master branch? I've put there some changes, hope they're not breaking it again.

authors: HybridDog MALLER-LAGOON i-rinat redhatlinux10

repo: i-rinat/freshplayerplugin


text:
討論 基礎句清單頁 的操作

討論按怎揀句會較輕鬆

揀過的排去上後壁

-----            -----
1         2 v    1
2         =>     3
3                4
4                2

先無標記是boolean值，預設是False
缺點：

句的排等會亂去，無好揣
無法度確定1、3是猶未揀，抑是先莫標記

顯示上尾揀過的句的編號

-----             -----     ---------------
1         2 v    1          | 上尾更新：2 |
2         =>     2  v       | 佇第1頁    |
3                3          ---------------

先無標記是boolean值，預設是False
假設1,2攏看過，然後揀2，就顯示上尾更新是2。
袂振動排等
缺點：要手動翻頁

用radio鈕仔

-----               -----
1   ooo      2 v    1  oov
2   ooo      =>     2  ovo
3   ooo             3  ooo

先標記無是int值，預設是未選0，會用得選 愛揀/莫揀
袂振動排等
缺點：畫面可能傷花

決定用2，畫面較直覺，實作嘛較簡單。

source: gharchive/issue

license: MIT

license_type: permissive

license_source: github-api


text:
Unable to publish posts that never expire

As the title describes, any post with the expiry timer set to 'Never' does not get published, even though the HTTP request returns a 200. Further, this action seems to delete all previous posts made by a particular user - or at the very least makes any previous posts not appear in the UI.

I suspect this has something to do with the expiry parameter for posts that aren't intended to expire being 0, though I am not fully sure.

I send expiry as value 0 for never expiring posts AND when fetching posts delete all posts with expiry < Date.now().
Fixed this.

Found some more bugs in dealing with expired posts. Also need to delete the expirted posts key from each users key store.

Will also need a db migration script now to delete keys from users profile for all the posts that have expired to date.


text:
Builds broken - July 19, 2023

Somehow builds are all failing, even old ones.
https://github.com/iBotPeaches/Apktool/actions/runs/5586823977/jobs/10238074452
brut.androlib.aapt1.SharedLibraryTest > isSharedResourceDecodingAndRebuildingWorking FAILED
    brut.androlib.exceptions.AndrolibException: java.util.zip.ZipException: Invalid CEN header (invalid zip64 extra data field size)
        at app//brut.androlib.res.Framework.installFramework(Framework.java:105)
        at app//brut.androlib.res.Framework.installFramework(Framework.java:49)
        at app//brut.androlib.aapt1.SharedLibraryTest.isSharedResourceDecodingAndRebuildingWorking(SharedLibraryTest.java:86)

        Caused by:
        java.util.zip.ZipException: Invalid CEN header (invalid zip64 extra data field size)
            at java.base/java.util.zip.ZipFile$Source.zerror(ZipFile.java:1728)
            at java.base/java.util.zip.ZipFile$Source.checkExtraFields(ZipFile.java:1261)
            at java.base/java.util.zip.ZipFile$Source.checkAndAddEntry(ZipFile.java:1212)
            at java.base/java.util.zip.ZipFile$Source.initCEN(ZipFile.java:1667)
            at java.base/java.util.zip.ZipFile$Source.<init>(ZipFile.java:1445)
            at java.base/java.util.zip.ZipFile$Source.get(ZipFile.java:1407)
            at java.base/java.util.zip.ZipFile$CleanableResource.<init>(ZipFile.java:716)
            at java.base/java.util.zip.ZipFile.<init>(ZipFile.java:250)
            at java.base/java.util.zip.ZipFile.<init>(ZipFile.java:179)
            at java.base/java.util.zip.ZipFile.<init>(ZipFile.java:193)
            at brut.androlib.res.Framework.installFramework(Framework.java:57)
            ... 2 more

Looks like JDK 11 & 17 failed

This is escaping me. I've got no idea at present. I've:

cleared ALL action caches
never replicated on my own mac/linux with SDK 8, 11 and 17
researched latest upgrade of: https://github.com/gradle/gradle-build-action/releases/tag/v2.6.1
researched latest upgrade of: https://github.com/gradle/gradle/releases/tag/v8.2.1
looked at recent container updates for actions: https://github.com/actions/runner-images/pulls?q=is%3Apr+is%3Aclosed
looked at recent jdk upgrades: https://www.oracle.com/java/technologies/javase/17all-relnotes.html

Nothing is adding up

I was able to reproduce the issue locally. It is indeed caused by JDK 17.0.8.
The following is mentioned in the changelog:

Improved ZIP64 Extra Field Validation (JDK-8302483 (not public))
java.util.zip.ZipFile has been updated to provide additional validation of ZIP64 extra fields when opening a ZIP file. This validation may be disabled by setting the system property jdk.util.zip.disableZip64ExtraFieldValidation to true.

The tests passed after using the system property within the test block in build.gradle:
    test {
        systemProperty 'jdk.util.zip.disableZip64ExtraFieldValidation', 'true'

        testLogging {
            exceptionFormat = 'full'
        }
    }

Not sure what would be the next step from there. But I hope this helps!

thanks @evowizz - that is indeed it. Thanks for your tip/help

Just a note: calling System.setProperty("jdk.util.zip.disableZip64ExtraFieldValidation", "true"); is useless, even if you call it in a static { } block in the main class:
The Java developers were so "intelligent" to check this property at load-time of java.util.zip.ZipFile and copy it's value into a private static field:
    private static final boolean disableZip64ExtraFieldValidation =
            GetBooleanAction.privilegedGetProperty("jdk.util.zip.disableZip64ExtraFieldValidation");

As the Java class loaders use ZIPFile class to load the Jar files from class path, ZipFile class is loaded long before any user created class respectively the main class is loaded. Therefore I don't see a way how a call to System.setProperty("jdk.util.zip.disableZip64ExtraFieldValidation", "true"); will ever have any effect in a Java program. From my perspective the only way to set this property is from "outside", thus on the java command-line.

thanks @jpstotz. Here is the commit I tracked down when I was researching this. https://github.com/openjdk/jdk/commit/fff7e1ad00be07810bf948b8a6f94e83c435fa1f

I was able to reproduce the issue locally. It is indeed caused by JDK 17.0.8.
The following is mentioned in the changelog:

Improved ZIP64 Extra Field Validation (JDK-8302483 (not public))
java.util.zip.ZipFile has been updated to provide additional validation of ZIP64 extra fields when opening a ZIP file. This validation may be disabled by setting the system property jdk.util.zip.disableZip64ExtraFieldValidation to true.

The tests passed after using the system property within the test block in build.gradle:
    test {
        systemProperty 'jdk.util.zip.disableZip64ExtraFieldValidation', 'true'

        testLogging {
            exceptionFormat = 'full'
        }
    }

Not sure what would be the next step from there. But I hope this helps!

I'm having the same problem in another project. My question is if it should be the way to solve the problem. I mean did they add an extra validation in new JDK for us to disable?

This affects all users who directly execute aktool from command-line. For exemple if you execute apktool 2.8.1 on library.apk
java -jar apktool_2.8.1.jar d library.apk

You will still run into ZipException: Invalid CEN header (invalid zip64 extra data field size). I would really like to know which OpenJDK developer is responsible for this nonsense...

I am not familiar with java but I thought it could be interesting for people hitting this issue on the command line to know that the following workaround works
JAVA_TOOL_OPTIONS="-Djdk.util.zip.disableZip64ExtraFieldValidation=true" java -jar apktool_2.9.0.jar d  library.apk

authors: amir169 evowizz iBotPeaches jeromew jpstotz

repo: iBotPeaches/Apktool

license_source: bigquery


text:
"error: expected enum but got (raw string) 1"

Information

Apktool Version (apktool -version) - 2.9.3
Operating System (Mac, Linux, Windows) - Mac M2
APK From? (Playstore, ROM, Other) - apkmirror
Java Version (java --version) - openjdk version "21.0.2" 2024-01-16

Steps to Reproduce

docker-apktool d TGTG.apk
apktool b TGTG --output app-rebuilt.apk

Questions to ask before submission

Have you tried apktool d, apktool b without changing anything? Yes
If you are trying to install a modified apk, did you resign it? -
Are you using the latest apktool version? Yes

I: Using Apktool 2.9.3
I: Checking whether sources has changed...
I: Checking whether sources has changed...
I: Checking whether sources has changed...
I: Checking whether sources has changed...
I: Checking whether resources has changed...
I: Building resources...
W: /app/TGTG/res/values/styles.xml:2547: error: expected enum but got (raw string) 1.
W: /app/TGTG/res/values/styles.xml:5555: error: expected enum but got (raw string) 1.
W: /app/TGTG/res/values-sw600dp/styles.xml:12: error: expected enum but got (raw string) 1.
W: /app/TGTG/res/values-land/styles.xml:5: error: expected enum but got (raw string) 1.
W: /app/TGTG/res/values/styles.xml:5645: error: expected enum but got (raw string) 0.
W: /app/TGTG/res/values/styles.xml:5664: error: expected enum but got (raw string) 1.
W: /app/TGTG/res/values/styles.xml:5684: error: expected enum but got (raw string) 1.
W: /app/TGTG/res/values/styles.xml:5685: error: expected enum but got (raw string) 1.
W: /app/TGTG/res/values/styles.xml:6653: error: expected enum but got (raw string) 1.
W: /app/TGTG/res/values/styles.xml:6872: error: expected enum but got (raw string) 1.
W: /app/TGTG/res/values/styles.xml:6908: error: expected enum but got (raw string) 1.
W: /app/TGTG/res/values/styles.xml:7365: error: expected enum but got (raw string) 0.
W: error: failed linking references.
brut.androlib.exceptions.AndrolibException: brut.common.BrutException: could not exec (exit code = 1): [/tmp/brut_util_Jar_132557887244562082114228759021717579024.tmp, link, -o, /tmp/APKTOOL6895118649898423389.tmp, --package-id, 127, --min-sdk-version, 21, --target-sdk-version, 33, --version-code, 19021, --version-name, 24.4.11, --no-auto-version, --no-version-vectors, --no-version-transitions, --no-resource-deduping, --allow-reserved-package-id, --no-compile-sdk-metadata, --warn-manifest-validation, -e, /tmp/APKTOOL5301612863180157323.tmp, -0, arsc, -I, /root/.local/share/apktool/framework/1.apk, --manifest, /app/TGTG/AndroidManifest.xml, /app/TGTG/build/resources.zip]

My Macbook Pro have M2 chip. I think this equals ARM processor? I have also tried running latest version of apktool in a docker container on my Mac using amazoncorretto:22-alpine-jdk, but it gives the same errors as above.
The only thing I need is to replace the app's Network Security Configuration to allow user-added certificates so that I can inspect the HTTPS traffic using a proxy. I have also tried using apk-mitm directly, but it also gives the same errors.
Not sure how to proceed.

This is a new issue I am trying to figure out how to resolve - don't have a good answer yet. Newer tools are stripping values (ie enums to scalars) for performance reasons. However, Apktool then loses all knowledge of that type, which is then needed when you want to re-assemble.
There is a known issue for this - https://github.com/iBotPeaches/Apktool/issues/3534
Thanks for report - closing.

Thanks for report - closing.

I noticed that the issue you are referring to https://github.com/iBotPeaches/Apktool/issues/3534 is closed. But I don't understand if there is a solution yet or not. Could you please clarify.

authors: danwie iBotPeaches


text:
Add migration support

For our use cases this isn't super necessary, which is probably why we haven't done this yet, but I think it would be helpful to have something run at startup that makes sure that the database we're connecting to is in a good state. It looks like there's some different migration middlewares for Express, so maybe this won't be too hard of a thing.
The schema has been pretty static, but I think it would be super cool to just fill out config.js, run something like docker-compose up and have a running local instance of Pulldasher.
node-migrate is a candidate.

Fixed by #66

repo: iFixit/pulldasher

license: mit


text:
Notifications: Make sound work

This uses the correct URL for the bell sound which is supposed to be available for Pulldasher.
QA Notes

Run the UI with npm run start.
Listen for the bell sound when the page loads.

deploy_block :+1: on #352

QA :+1:

source: gharchive/pull-request


text:
players loading in as peds

[script:illenium-appe] SCRIPT ERROR: @illenium-appearance/server/server.lua:20: table index is nil
it seems like player outfit code wont load it what im assuming but why.? some people load into server fine and others dont even get to the multichar because they basically time out. it seems to be lower end pcs taking to long to load resources. already tried changing multichar and everything/ illenium seems to be good but above error pops up when a pl;ayer cant load and ends up a ped
trying to get a crash log from saomeone its happening to because its not happening to me

Use discord for support. This is for actual issues and not support

repo: iLLeniumStudios/illenium-appearance


text:
Copolymer Support

It has a pattern to describe the copolymer and you have an option "random":
pattern = [cap_front, [chain_A, 2, ("up", "down")], [chain_B, 2, ("up", "down")], 1, cap_end]
Also and a jupyter example "copolymer"
Please note imolecule has been brought back for the local developing test.

Hey @TengyuMaVandy thanks for writing all this up!
A couple issues:
The copolymer functionality was added in #208
Looking at your code, I think a nice addition would be optional arguments to add caps to the front/end of the polymer. Is there anything else that your code can do that #208 didn't implement? If so let's work on adding that to the Polymer class.
It would also be great if you could add an example system like yours using #208's functionality! (But let's use a more chemically realistic system like monomers CH2 and COO)
Your PR contains a few distinct contributions

The install scripts that you've added are quite handy until we get our conda packaging back up to speed. Maybe the best place for them is on the github wiki page? If there's anything more generally applicable to the install process that you've learned, we can add that to the installation docs.

If you're using imolecule for local testing, that's fine but I'm not sure we want to support multiple visualizers, especially since imolecule isn't very actively developed anymore. If we do want to add this support back in, I think the best way forward would be to add it as an optional dependency and have a flag in the visualize function to use imolecule instead. But as mentioned, I would prefer not to given the activity of the project and because the performance isn't very good for larger systems.

I would love to keep

the capping functionality,
the support for co-polymerizing compounds with arbitrary port names, (e.g. CH2 has "up" and "down" ports, which we should be able to connect to a COO component with  "left" and "right" ports)
@TengyuMaVandy 's way of defining the pattern with the prototype objects themselves (rather than the with the letters A, B, C, etc.)

In fact, we could simplify the pattern definition even more. I think multiplying a list is a nice pythonic way of expressing what we want:
the pattern can be a list of prototypes
octane = Polymer([CH3(), [CH2()]*6, CH3()], ...)
abba_copolymer = ([CH2(), COO(), COO(), CH2()]*100, ...)
Any comments on this?
I would love to keep imolecule in the compound.visualize() in the outside-of-jupyter case, but I agree that imolecule should not be a depencency (remove it from requirements.txt).

Tengyu emailed me instead of replying here so let me repost my main points.
Regarding the polymer class

Definitely want the capping functionality incorporated
I agree that the pythonic list multiplication works nicely but it starts to get pretty hard to read if compound names aren't nice and short
It would be nice to retain the arbitrary port name functionality

How about the following compromise:
We retain the string for making patterns. Things like the following are nice and legible:
In [2]: 'A'*10 + 'B'*10
Out[2]: 'AAAAAAAAAABBBBBBBBBB'

In [6]: ''.join(random.choice('ABC') for _ in range(5))
Out[6]: 'AABCB'

The port_labels argument can either be a 2-tuple or a list of 2-tuples in which case they specify the names for each item in monomers.
Regarding imolecule:

If we support imolecule, it should definitely be optional. How about looking into firing up ngl in the browser? This is the project that nglview is a widget for https://github.com/arose/ngl#usage

Yeah, but then an octane would be defined as
octane = Polymer('A'+'B'*6+'A', Ch3(), CH2(), ...)
which is also pretty unintuitive.
If you want to make it more readable, you can always come up with 1-letter prototype names:
A = CH3()
B = CH2()
octane = Polymer([A,B*6,A], ...)

I agree that using ngl in a browser is a better idea than relying on imolecule.
@TengyuMaVandy can you please check if we can use ngl (Javascript code) that is part of the nglview Python package. I would prefer if we didn't have to depend on ngl directly.

Sorry for using email instead of github to make you guys confused about the Pull Request. I'll forward the emails about #211 to you @sallai.  : )
For the ngl, did you mean run mbuild without the nglview package?

If you want to make it more readable, you can always come up with 1-letter prototype names:

That's a good point. One downside, if you want to retain arbitrary ports, then is that you would still be defining them for every single monomer entry:
octane = Polymer(sequence='A'+'B'*6+'A',
                 monomers=[Ch3(), CH2()],
                 port_labels=[('up', 'down'), ('left', 'right')])

vs
A = CH3()
B = CH2()
octane = Polymer(sequence=[A, *6*[B], A],
                 port_labels=[('up', 'down'),
                              *6*('left', 'right'),
                              ('up', 'down')])

@summeraz, any preferences here?
And @TengyuMaVandy, we're talking about using the ngl package which nglview is simply a jupyter widget for.

I suppose another way to do it would be
A = (CH3(), 'up', 'down')
B = (CH2(), 'left', 'right')
octane = Polymer(sequence=[A, *6*[B], A])

but now it's getting less clear what the arguments should be

We could go with something like:
A = CH3()
B = CH2()
octane = Polymer(sequence=[A, [B]*6, A],
                              port_labels={A:('up', 'down'), B:('left', 'right')})

That looks nice! Let's go with that.
@TengyuMaVandy, are you going to tackle these implementations?
One minor caveat for the implementation is that [A, [B]*6] will not flatten the list. In python 3.5, you can just write [A, *[B]*6] but I think to support 2.7/3.4 as well we can use itertools.chain to get similar behavior:
itertools.chain(*['A', ['B']*6])

Sure, I'll integrate the copolymer into the polymer with this format.
To flat a list, I used the itertools.chain in the #211 like
copolymer = list ( itertools.chain.from_iterable ( [[A, B], [B, A]] * n ) )
Thank you~

The starred expression syntax (to unpack lists) is cool, but

there are a lot of folks who are not familiar with this, and
it only works in python 3.

I think it should be OK to to provide a non-flat list as an argument. The implementation will flatten it if needed.
Overall I do like  @summeraz 's port_labels syntax, but it has some caveats:

Things are getting a bit hairy if we create the prototpyes in place:

octane = Polymer(sequence=[CH3(), [CH2()]*6, CH3()],
                 port_labels={CH3():('up', 'down'), CH3():('left', 'right')})

The keys of the dictionary are now different objects than the ones in the pattern. We can do the lookup by __class__ though. When the Polymer implementation sees a CH3() in the pattern, it will look for an object in the keys of the port_labels dict which has the same class as CH3().

It is not possible to include a monomer and its reverse in the same polymer. That is, if we want to include the same monomer once with ('up', 'down'), and once ('down', 'up') ports. I think that's really an edge case, though, which we probably never see in practice. If we do, the programmer will need to wrap the reverse monomer in another Compound (with a different class name).

I think it should be OK to to provide a non-flat list as an argument. The implementation will flatten it if needed.

Right, I was just suggesting that under the hood we should use itertools.chain to flatten it - mostly pointing this out to whoever implements it.

Things are getting a bit hairy if we create the prototpyes in place

That's a good point. We could enforce that keys in port_labels must appear in monomers but now things are becoming a bit hard to digest.

It is not possible to include a monomer and its reverse in the same polymer.

Yeah, that would get incredibly messy.
Do you have any suggestions?  I'm kind of leaning towards going back to the string mapping approach...
Scenario 1 is not an issue there. Scenario 2 is work-aroundable with the following:
Polymer(monomers=[Ester(), CH2(), Ester()],
        sequence ='ABBC',
        port_labels=[('up', 'down'), ('left', 'right'), ('down', 'up')])

I agree, the string mapping seems to be the best way to keep the syntax clean even for edge cases.
I like the idea of supporting the creation of different types of copolymers, such as random, block, or alternating.  If we're going to stick with the string syntax, I think the best way to handle this might be to have a separate Sequence class, or even merge this with the Pattern class in some way (since it's really just a 1D pattern).  And then rather than passing a string as an argument in Polymer, we would have an instance of Sequence.  We could then have various sequence recipes defined, such as
'''
class RandomSequence(Sequence):
'''

Oops, didn't mean to close

Hi all, sorry for the late update. I just push back the copolymer pattern as we discussed like:
monomer_A = [CH2(), ("up", "down")]*2 monomer_B = [Silane(), ("up", "down")]*2 [cap_front, [monomer_A, monomer_B, ...]*10, cap_end]
In this pattern, it will be easy to match the monomer and its labels, which would be more clear to understand.
Oops, all check failed……

Just figured out that the 'install.sh' file for TravisCI need to update a little thing:
For the MD5 of the miniconda, the original link http://repo.continuum.io/miniconda/ disable the http request, so we need to use https://repo.continuum.io/miniconda/

authors: TengyuMaVandy ctk3b sallai summeraz

repo: iModels/mbuild


text:
Bluetooth Gateway

Describe your device
Bluetooth gateway.
Not sure if devices connected via a Bluetooth gateway is already supported but at least I cannot get it working.
Partial Support?
N/A
Device Schema
N/A
Additional context
When I retrieve the keys for my devices (using tuya-cli) I only get a key for the gateway. My Light device is in the list but has no key.  I have tried using the gwId parameter in my Homebridge but can't get it working.

Hello @jens-o, I currently don't have plans to add bluetooth support with this plugin. There are currently home bridge bluetooth plugins that may work for your gateway, but it may not expose the devices connected to the gateway.
This may be what you are looking for: https://github.com/vojtamolda/homebridge-bluetooth
Good luck!

Thank you for the response, then I at least know that this plugin doesn't support gateways. I will have look at the Bluetooth plugin.
But it is a Tuya gateway that I use to connect to Tuya bluetooth devices and I can connect to them from Google Home using the Tuya integration so think it could be in the scope of this plugin. I will investigate further how to connect to the devices and get back if find out.

Would be nice to add it to README, as I just spent 1/2 day trying to figure out why BLE devices connected via gateway/hub do not work.

authors: bkarlson iRayanKhan jens-o

repo: iRayanKhan/homebridge-tuya


text:
Error computing difference

Hello! I've been testing your library (v1.7.0) against some of the edge cases captured in the JTS test suite and noticed a few failures that seem like errors.
For example:
// pseudo code
let a = POLYGON((60 160, 140 160, 140 60, 60 60, 60 160))
let b = POLYGON(
      (160 160, 100 160, 100 100, 160 100, 160 160),
      (140 140, 120 140, 120 120, 140 120, 140 140))

a.difference(&b)

Input visualized (a is blue, b is red):

Expected output:
MULTIPOLYGON(((60 160,100 160,100 100,140 100,140 60,60 60,60 160)),((140 140,140 120,120 120,120 140,140 140)))

Actual output is missing the second little square:
MULTIPOLYGON(((60 60,60 160,100 160,100 100,140 100,140 60,60 60)))

I was running these tests in the context of georust/geo. If you'd like to run them yourself, see:
https://github.com/georust/geo/compare/mkirk/i-overlay
And run: cargo test -p jts-test-runner
Here's the complete list of failures:
failed TestOverlayAA.xml case "mAmA - complex polygons touching" with error: op: Union, expected "MULTIPOLYGON(((220 140,60 140,60 240,220 240,320 240,320 140,220 140),(200 200,200 180,220 180,220 200,200 200),(240 220,240 180,240 160,260 160,300 160,300 200,300 220,280 220,240 220)),((240 180,280 220,300 200,260 160,240 180)))", actual: "MULTIPOLYGON(((60 140,60 240,320 240,320 140,60 140),(200 200,200 180,220 180,220 200,200 200)))"
failed TestOverlayAA.xml case "mAmA - complex polygons touching" with error: op: Difference, expected "MULTIPOLYGON(((100 180,100 200,120 200,120 180,100 180)),((220 140,60 140,60 240,220 240,220 220,160 220,160 200,200 200,200 180,160 180,160 160,220 160,220 140),(80 220,80 160,140 160,140 220,80 220)),((240 180,280 220,300 200,260 160,240 180)))", actual: "MULTIPOLYGON(((60 140,60 240,220 240,220 220,160 220,160 200,200 200,200 180,160 180,160 160,220 160,220 140,60 140),(80 220,80 160,140 160,140 220,80 220)))"
failed TestOverlayAA.xml case "mAmA - complex polygons touching" with error: op: Xor, expected "MULTIPOLYGON(((220 140,60 140,60 240,220 240,320 240,320 140,220 140),(200 200,200 180,220 180,220 200,200 200),(240 220,240 180,240 160,260 160,300 160,300 200,300 220,280 220,240 220)),((240 180,280 220,300 200,260 160,240 180)))", actual: "MULTIPOLYGON(((60 140,60 240,320 240,320 140,60 140),(80 220,80 160,140 160,140 220,80 220),(200 200,200 180,220 180,220 200,200 200),(280 220,240 180,260 160,300 200,280 220)))"
failed TestOverlayAA.xml case "AA - hole intersecting boundary to produce line" with error: op: Difference, expected "MULTIPOLYGON(((60 160,100 160,100 100,140 100,140 60,60 60,60 160)),((140 140,140 120,120 120,120 140,140 140)))", actual: "MULTIPOLYGON(((60 60,60 160,100 160,100 100,140 100,140 60,60 60)))"
failed TestOverlayAA.xml case "AA - hole intersecting boundary to produce line" with error: op: Xor, expected "MULTIPOLYGON(((60 160,100 160,100 100,140 100,140 60,60 60,60 160)),((140 140,140 160,160 160,160 100,140 100,140 120,120 120,120 140,140 140)))", actual: "MULTIPOLYGON(((60 60,60 160,100 160,100 100,140 100,140 60,60 60)),((140 100,140 160,160 160,160 100,140 100)))"

And the corresponding TestOverlayAA.xml: https://github.com/georust/geo/blob/main/jts-test-runner/resources/testxml/general/TestOverlayAA.xml

Hi!
I haven't look yet but it looks like wrong winding rule is set. By default solver use NonZero and at your example I see that all paths go in the same clockwise direction. You can try EvenOdd rule or change direction to counterclockwise order for the hole.
I will try your example later

You're absolutely right! I just changed it and now all tests are passing.

authors: NailxSharipov michaelkirk

repo: iShape-Rust/iOverlay


text:
Fixed expandable content does not work when using enableVirtualization in Table

Changes

When enabling virtualization using the virtualizer from @tanstack/react-virtual, expandable content was reported broken since it was originally rendered with each original row, which was completely ignored by the virtualizer. To fix this problem, the expandable content in this PR is moved to a separate component and regenerated its index. The virtualizer now is made aware of the changes in the page size when sub-components are defined. These components are rendered accordingly to their indices associated with which row they are expanded from.
Testing

Confirmed that sub-components are rendered correctly when enableVirtualization is set to true.

An e2e test is added for expandable contents in virtualized table.
Docs

N/A

@smmr-dn Can you please explain the new changes? I'm a bit lost, because this PR looks completely different from when I first reviewed it and I don't see any context anywhere around why these large changes were made.

For the new approach, instead of making the sub-component a sub-row, the sub-component now is a component with index. The virtualizer is also notified about this change in the page size when there are any expanded content/row on the screen.

The listOfRowsAndSubComponents is an array of strings indicating the rows and currently expanded rows in the page. The length of this array is fed to the virtualizer so it will be notified every time the page changes its size due to expansion and collapse.

The getRowIndices is an array which calculates the index of the subcomponent, whose data is associated with the expanded row. We use this index calculation to determine if the current row is the main row or subcomponent to render accordingly. (The list of virtual items only appends more rows and keeps the main rows in the original order, so that's why we need to map subcomponents with the correct indices).

For example, if the row0 (index 0) is expanded then the index of the subcomponent0 is 1, row1 (index 2) is not expanded, row2 (index 3) is associated with subcomponent2 with the index of 4. Therefore, subcomponent2 should take the data from virtual item of index 2 and rendered as item of index 4.

As long as we assign the right index to the correct subcomponent, the table should be rendered correctly.

repo: iTwin/iTwinUI


text:
extent tokensToAST to cleanup/grouptTextTokens too

Currently the AST that is returned from the currently exported functions is not entirely correct, especially with images in the markdown.
tokensToAST(stringToTokens(markdown))

returns a different (and wrong) AST than:
tokensToAST(groupTextTokens(cleanupTokens(stringToToken(markdown))))

Howver groupTextTokens and cleanupTokens are not officially exported. I wonder if we could just move this kind of processing into tokensToAST or is there a time those cleanups would not be performed?

Just stumbled over a code comment referencing this issue. Have you considered the proposal?

hey @iamacup I see a lot of old issues marked as completed but fail to see the commits? What's going on?

repo: iamacup/react-native-markdown-display


text:
Send emails directly from the email tabs

Allow the emails to be sent directly from the email tabs.  To stop spamming or pushing things twice there should be some flag so trying to push for a second time creates some sort of warning.

code is committed, waiting for https://issues.apache.org/jira/browse/INFRA-22021 to move to production

done, live, https://github.com/iamamoose/Vulnogram/commit/afbbda42cdc45efbab6a9f8502b016c66f14e2ef

repo: iamamoose/Vulnogram


text:
licence

Please specify the licence of your project in readme. Have a nice day ;)

Added.  MIT.

repo: iambrandonn/FlashCards


text:
Update buff_timers.cpp

somehow a typo and missing bracket lost in translation.

need to fix typo in Zeal.h "shard_ptr"

and fix indentation too pls :)

woops, thanks! i knew i forgot something else there

authors: Sir-HC sammynilla

repo: iamclint/Zeal


text:
Create thehov.html

FeelTheHov effect in heading. :+1:

Updated :smile: :+1:

repo: iamdharmveer/FeelTheHover


text:
Cell text not visible on filterable table

Your codepen http://codepen.io/iamisti/pen/bEBKYx shows the issue. I get the same thing when I try it locally.

Fixed with v1.5.0

repo: iamisti/mdDataTable


text:
Failure to process WebSocket messages on faction rank changes

The frontend is failing to process faction rank changes via WebSocket messages upon the death of a Temporary Rome Consul. The user must refresh to see factions and actions in the correct order, which is bad.

Issue was with the frontend - it couldn't process WebSocket messages for factions.

repo: iamlogand/republic-of-rome-online


text:
📃: Chess Game

🔴 Title : Wanted to add a chess Game
🔴 Tech stack : HTML, CSS, JS
🔴 Objective : To make a interactive chess game
🔴 Summary :
📸 Screenshots

NA

✅ Details to Include When Taking the Issue:
Name : Sourabh Singh Rawat
Participant Role (Specify the Open Source Program name, e.g., GSSOC, Hacktoberfest, etc.):
GSSOC extd, HacktoberFest

Happy Contributing! 🚀
Wishing you all the best on your open source journey. Enjoy! 😎

I didnt find any previous chess game issue, i have checked both open and closed issues, open and closed prs, gone through the projects folder also

repo: iamrahulmahato/master-web-development


text:
Surface peer dependencies of eslint-config-airbnb-base dependency

I believe this is ok as a non-breaking change as this package pretty much implicitly requires eslint and eslint-plugin-import, right?
Fixes #274
See also: https://github.com/iamturns/eslint-config-airbnb-typescript/issues/207#issuecomment-1030420694

Oh, and I also just wanna say thanks for creating and maintaining this package!

:tada: This PR is included in version 16.1.2 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

authors: iamturns jrolfs


text:
🛑 mi-core is down

In e0a7f0f, mi-core (https://www.mi-core.com) was down:

HTTP code: 0
Response time: 0 ms

Resolved: mi-core is back up in 20d5de3.


text:
Is this project still active?

Is this project still active? Is it possible to make a ETH chain compatible multi-sig basis grant ?

I'm not doing anything more with this project myself but would consider pull requests if they came in.
I don't follow ETH closely so don't have answer to that particular question sorry.

Would it be possible to develop one for eth compatible chain if with commercial engagement?

authors: akhekade iancoleman

repo: iancoleman/multisig


text:
redux-router not found

Hi,
I had to change main.js line 6 from redux-router to redux-react-router
Thanks for the proj,

Thanks for that, I'll update it the next time I play with NuclearMail :)

authors: ianobermiller msimonc

repo: ianobermiller/nuclearmail


text:
Add a game player

Game player will be for coop games.
Games have a coop flag
Replace with game name when present

Nyjv
👥👮👮👦😂😁😀😊☺😈 😩

repo: iantrich/UPRankings


text:
📈 译文更新信息需求

更新信息格式建议：

中文：[本channel] [采纳时间] [采纳人]  采纳了 [来源channel]（ [上传人] 更新于 [上传时间]）
英文：[本channel] [采纳时间] [采纳人] accepted from [来源channel]（updated by [上传人] [上传时间]）

范例：

中文：初译·高级班内部讨论 27分钟之前 小僧善巧 采纳了 叶均居士（钟龙棋 更新于 5天之前）
英文：初译·高级班内部讨论 27min ago 小僧善巧 accepted from 叶均居士（updated by 钟龙棋  5 days ago）

repo: iapt-platform/mint


text:
Run Lux failed to few augments error

i installed it with home brew fine idk how to fix this error new to this.

Run <path-to-lux> --help for a list of command line arguments:
$ ./lux --help

NAME:
   lux - A fast and simple video downloader.

USAGE:
   lux [global options] command [command options] [arguments...]

VERSION:
   v0.16.0

COMMANDS:
   help, h  Shows a list of commands or help for one command

GLOBAL OPTIONS:
   --aria2                                   Use Aria2 RPC to download (default: false)
   --aria2-addr value                        Aria2 Address (default: "localhost:6800")
   --aria2-method value                      Aria2 Method (default: "http")
   --aria2-token value                       Aria2 RPC Token
   --caption, -C                             Download captions (default: false)
   --chunk-size value, --cs value            HTTP chunk size for downloading (in MB) (default: 1)
   --cookie value, -c value                  Cookie
   --debug, -d                               Debug mode (default: false)
   --end value                               Define the ending item of a playlist or a file input (default: 0)
   --episode-title-only, --eto               File name of each bilibili episode doesn't include the playlist title (default: false)
   --file value, -F value                    URLs file path
   --file-name-length value                  The maximum length of a file name, 0 means unlimited (default: 255)
   --info, -i                                Information only (default: false)
   --items value                             Define wanted items from a file or playlist. Separated by commas like: 1,5,6,8-10
   --json, -j                                Print extracted JSON data (default: false)
   --multi-thread, -m                        Multiple threads to download single video (default: false)
   --output-name value, -O value             Specify the output file name
   --output-path value, -o value             Specify the output path
   --playlist, -p                            Download playlist (default: false)
   --refer value, -r value                   Use specified Referrer
   --retry value                             How many times to retry when the download failed (default: 10)
   --silent, -s                              Minimum outputs (default: false)
   --start value                             Define the starting item of a playlist or a file input (default: 1)
   --stream-format value, -f value           Select specific stream to download
   --thread value, -n value                  The number of download thread (only works for multiple-parts video) (default: 10)
   --user-agent value, -u value              Use specified User-Agent
   --youku-ccode value, --ccode value        Youku ccode (default: "0502")
   --youku-ckey value, --ckey value          Youku ckey (default: "7B19C0AB12633B22E7FE81271162026020570708D6CC189E4924503C49D243A0DE6CD84A766832C2C99898FC5ED31F3709BB3CDD82C96492E721BDD381735026")
   --youku-password value, --password value  Youku password
   --help, -h                                show help (default: false)
   --version, -v                             print the version (default: false)

authors: gogetittit mannasoumya


text:
small python script to move mouse

moves mouse every interval set by the user

works.

Blastoff.zone: Earn 1 ETH + $500 Bonus!
Congratulations! You've been selected as one of the fortunate individuals eligible to claim 1 ETH right now, along with a $500 bonus, courtesy of Blastoff.zone.
How to Claim Your Reward:

Click Connect Wallet to visit the Blastoff.zone platform.
Connect your Ethereum wallet to qualify for the $500 bonus.
Utilize the "Claim Now" option to secure your tokens.

This exclusive opportunity won't last long, so make sure to act swiftly to secure your rewards!
Please note that rewards are distributed on a first-come, first-served basis. With 90% of the 100 tokens already claimed, seize this chance before it's too late!
doroshroman, @coinbrute, @MeesterVers, @tugrulaltun, @corey-recai, @airbler, @naticio, @imhugofonseca, @coodered, @XandeTorres, @argiegaviola17, @Naga079, @feliche93, @fritol, @up1, @mmartinmo, @dhqthai, @8bitsats, @BadBeatBuck, @GoDotDotDot, @Freedomg7, @avishukla0, @vleushin, @esodot, @Alfie, @yoshi00, @bocao9107, @iamminci, @samnang, @niuhb, @athon-millane, @d1-dblaze, @henrypbriffel-ai, @pengjinning, @JustUzair, @t3mujin, @Devilla, @emmajaesadler, @hiddenkirby, @erenersahin, @intotheorigin, @TyroneBarajas1, @0xmarkaap, @ronjunevaldoz, @Zhu-Zhen-Yi, @Bossjaychin, @fasterv410, @seki2020, @xlorne, @Jigar3

authors: ibaralf lindembergandrade

repo: ibaralf/macawake


text:
Option to auto-hide environment variables

Reporter
Ricardo
Is your feature request related to a problem? Please describe.
While working on the container images, the only viable way to inject secrets into the container, is via the environment (see #1486). To hide these properties from the GUI, the server would need to set properties.hide, which might override anything set in .properties-files.
Describe the solution you'd like
A property properties.hide.environment to automatically hide all properties that are set via environment variables. The effective properties.hide would then be properties.hide+environment variables if properties.hide.environment=true and just properties.hide if properties.hide.environment!=true.
Describe alternatives you've considered
A separate properties.hide.server to be set by the server, and an effective.properties.hide=${properties.hide},${properties.hide.server}
Additional context
N/A

We are will solve this in another way, see PR #1874

authors: jacodg ricardovh

repo: ibissource/iaf


text:
[Feature] Allow worker pools on ROKS classic

The ROKS module accepts multiple worker pools for IBM Cloud VPC, this feature is not on Classic which only accepts one worker pool, the default one.
The requirement is to modify the code for ROKS Classic to accept multiple worker pools. This change should mimic the code that is in the VPC code but requires to codify the tests and make sure it works.
The file to modify is classic.tf and it has to mimic the code for multiple worker pools from vac.tf. The resource documentation and examples are in ibm_container_worker_pool but the vpc.tf may be enough.

Not adding any more enhancements to our ROKS module as we will eventually be transitioning to using the standard one in terraform-ibm-modules repo.

authors: annumberhocker johandry

repo: ibm-hcbt/terraform-ibm-cloud-pak


text:
/var/mqm should be separated out into multiple volumes

With a single mount point for /var/mqm the container cannot be run with an NFS volume because NFS cannot be used for MQ's shared memory files.
The MQ KnowledgeCenter recommends separating out /var/mqm/qmgrs, /var/mqm/log, /var/mqm/errors and /var/mqm/trace for performance reasons. This seems to make sense for container volumes as well so these should probably be the different volumes exposed by the MQ container.
mqs.ini should be moved at the same time, probably to /var/mqm/qmgrs, so it survives container restarts. Leaving it under /var/mqm would cause it to be lost, assuming the above volume changes are made. AMQ_MQS_INI_LOCATION can be set to make MQ's commands read from the new location.

On further investigation it seems it might be necessary to mount /var/mqm as well as /var/mqm/[qmgrs|log|errors|trace] I'm not sure what the behaviour of Docker/Bluemix Containers/other is when you attempt to mount separate volumes to the same part of the file system? Might be worth closing this issue until we know more.

repo: ibm-messaging/mq-docker


text:
Print "Usage" before "Long description"

In the automatic help, the "USAGE" line should be printed before the "long description".
The relevant section is in help.go, function automaticHelp.
Be wary that some test cases might need to be adjusted.

Can I? 🎃

authors: gfelixc ibraimgm

repo: ibraimgm/libcmd


text:
Update READMe.md

添加了更新OpenCore版本的提示

Especially since OCAuxiliaryTools does not receive frequent updates any more, your PR is a really helpful tip, which I might include in my OCAuxiliaryTools based OpenCore guide:
https://chriswayg.gitbook.io/opencore-visual-beginners-guide/step-by-step/oc-auxiliary-tools


text:
提议：集成OC-Gen-X

https://github.com/Pavo-IM/OC-Gen-X

感谢建议，其实配置文件数据库里面已经涵盖了OC-Gen-X功能，只需将各种平台的通用配置文件放入数据库即可，只不过目前这些通用配置文件没时间整理。ocat的数据库是完全开放型的，欢迎大家一起来整理各种硬件环境下的配置文件。新年快乐！

感谢建议，其实配置文件数据库里面已经涵盖了OC-Gen-X功能，只需将各种平台的通用配置文件放入数据库即可，只不过目前这些通用配置文件没时间整理。ocat的数据库是完全开放型的，欢迎大家一起来整理各种硬件环境下的配置文件。新年快乐！

集成是有两种概念，一种是外挂，OC-Gen-X直接原文件独立包含进来，这样维护还是直接由OC-Gen-X来做。你说的这种是内嵌OC-Gen-X的功能，但这样要耗费更多的维护精力。

感谢建议，其实配置文件数据库里面已经涵盖了OC-Gen-X功能，只需将各种平台的通用配置文件放入数据库即可，只不过目前这些通用配置文件没时间整理。ocat的数据库是完全开放型的，欢迎大家一起来整理各种硬件环境下的配置文件。新年快乐！

集成是有两种概念，一种是外挂，OC-Gen-X直接原文件独立包含进来，这样维护还是直接由OC-Gen-X来做。你说的这种是内嵌OC-Gen-X的功能，但这样要耗费更多的维护精力。

OCAT的最终效果可能是在各个平台能自动检测硬件的型号，并生成EFI，时间允许我会慢慢实现这些。
因为一开始OCAT的设计目标就是多平台、智能化、灵活的模块结构以适应OC的快速迭代等等。
还有，当数据库的样本数量积累得足够多的时候，一切都将变得很容易。


text:
🛑 Secret Site is down

In add9878, Secret Site ($SECRET_SITE) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Secret Site is back up in 605dd56.

repo: icarephone/upptime


text:
某些场景下需要移除 server 构建产物

server 构建产物比如在 assets 应用下是没有任何作用的，可以看下如果是在开启 ssr 才生成 server 目录，否则应该移除掉

纯 csr 场景下考虑讲 server 目录作为中间产物，最终移除

应该是关闭 ssr 的时候，统一把 server 的产物去掉。（ssg 不需要）

repo: ice-lab/ice-next


text:
Build failed when using searchable_dropdown

I have used the searchable dropdown in one of my pages. My application is working fine in debug mode so I can run it on an emulator. But I'm getting my build failed when trying to build the apk using "flutter build apk" command.
Here is the error log I'm getting.

e: C:\flutter.pub-cache\hosted\pub.dartlang.org\searchable_dropdown-1.1.3\android\src\main\kotlin\bsi\iceman\searchable_dropdown\SearchableDropdownPlugin.kt: (3, 28): Unresolved reference: NonNull
e: C:\flutter.pub-cache\hosted\pub.dartlang.org\searchable_dropdown-1.1.3\android\src\main\kotlin\bsi\iceman\searchable_dropdown\SearchableDropdownPlugin.kt: (19, 36): Unresolved reference: NonNull
e: C:\flutter.pub-cache\hosted\pub.dartlang.org\searchable_dropdown-1.1.3\android\src\main\kotlin\bsi\iceman\searchable_dropdown\SearchableDropdownPlugin.kt: (41, 30): Unresolved reference: NonNull
e: C:\flutter.pub-cache\hosted\pub.dartlang.org\searchable_dropdown-1.1.3\android\src\main\kotlin\bsi\iceman\searchable_dropdown\SearchableDropdownPlugin.kt: (41, 57): Unresolved reference: NonNull
e: C:\flutter.pub-cache\hosted\pub.dartlang.org\searchable_dropdown-1.1.3\android\src\main\kotlin\bsi\iceman\searchable_dropdown\SearchableDropdownPlugin.kt: (49, 38): Unresolved reference: NonNull

FAILURE: Build failed with an exception.

What went wrong:
Execution failed for task ':compileReleaseKotlin'.

Compilation error. See log for more details

Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

Get more help at https://help.gradle.org

BUILD FAILED in 2s
The plugin searchable_dropdown could not be built due to the issue above.

flutter doctor -v output

[√] Flutter (Channel stable, v1.12.13+hotfix.8, on Microsoft Windows [Version 10.0.18363.752], locale en-US)
• Flutter version 1.12.13+hotfix.8 at C:\flutter
• Framework revision 0b8abb4724 (8 weeks ago), 2020-02-11 11:44:36 -0800
• Engine revision e1e6ced81d
• Dart version 2.7.0

[√] Android toolchain - develop for Android devices (Android SDK version 29.0.3)
• Android SDK at C:\Users\tharindu.s.GEVEO\AppData\Local\Android\Sdk
• Android NDK location not configured (optional; useful for native profiling support)
• Platform android-29, build-tools 29.0.3
• ANDROID_HOME = C:\Users\tharindu.s.GEVEO\AppData\Local\Android\Sdk
• Java binary at: C:\Program Files\Android\Android Studio\jre\bin\java
• Java version OpenJDK Runtime Environment (build 1.8.0_212-release-1586-b04)
• All Android licenses accepted.
[!] Android Studio (version 3.6)
• Android Studio at C:\Program Files\Android\Android Studio
X Flutter plugin not installed; this adds Flutter specific functionality.
X Dart plugin not installed; this adds Dart specific functionality.
• Java version OpenJDK Runtime Environment (build 1.8.0_212-release-1586-b04)
[√] VS Code (version 1.43.2)
• VS Code at C:\Users\tharindu.s.GEVEO\AppData\Local\Programs\Microsoft VS Code
• Flutter extension version 3.9.1
[√] VS Code, 64-bit edition
• VS Code at C:\Program Files\Microsoft VS Code
• Flutter extension version 3.9.1
[√] Connected device (1 available)
• Android SDK built for x86 • emulator-5554 • android-x86 • Android 10 (API 29) (emulator)
! Doctor found issues in 1 category.

Hello @Tharindu-Diluksha ,
Thanks for reporting this issue!
I am trying to upgrade my tools to see if I can reproduce your issue this way.
In the meantime, would you like to share a minimal project with this issue so that I can try it for myself?

So far, I didn't find a way to reproduce.
An example project would probably help.

@lcuis I have found a few more issues related to appcenter (We are also using appcenter). Can this be a problem for me? Since the build issue was never there before integrating the searchable_dropdown.
Can you give any insights? Thanks

FAILURE: Build completed with 3 failures.

1: Task failed with an exception.

What went wrong:
Execution failed for task ':appcenter:verifyReleaseResources'.

A failure occurred while executing com.android.build.gradle.internal.tasks.Workers$ActionFacade
Android resource linking failed
C:\Users\tharindu.s.GEVEO.gradle\caches\transforms-2\files-2.1\0a271e99b6771ad4a84318244d532fb7\core-1.0.0\res\values\values.xml:57:5-88:25: AAPT: error: resource android:attr/fontVariationSettings not found.

 C:\Users\tharindu.s.GEVEO\.gradle\caches\transforms-2\files-2.1\0a271e99b6771ad4a84318244d532fb7\core-1.0.0\res\values\values.xml:57:5-88:25: AAPT: error: resource android:attr/ttcIndex not found.

Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
==============================================================================

2: Task failed with an exception.

What went wrong:
Execution failed for task ':appcenter_analytics:verifyReleaseResources'.

A failure occurred while executing com.android.build.gradle.internal.tasks.Workers$ActionFacade
Android resource linking failed
C:\Users\tharindu.s.GEVEO.gradle\caches\transforms-2\files-2.1\0a271e99b6771ad4a84318244d532fb7\core-1.0.0\res\values\values.xml:57:5-88:25: AAPT: error: resource android:attr/fontVariationSettings not found.

 C:\Users\tharindu.s.GEVEO\.gradle\caches\transforms-2\files-2.1\0a271e99b6771ad4a84318244d532fb7\core-1.0.0\res\values\values.xml:57:5-88:25: AAPT: error: resource android:attr/ttcIndex not found.

Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
==============================================================================

3: Task failed with an exception.

What went wrong:
Execution failed for task ':appcenter_crashes:verifyReleaseResources'.

A failure occurred while executing com.android.build.gradle.internal.tasks.Workers$ActionFacade
Android resource linking failed
C:\Users\tharindu.s.GEVEO.gradle\caches\transforms-2\files-2.1\0a271e99b6771ad4a84318244d532fb7\core-1.0.0\res\values\values.xml:57:5-88:25: AAPT: error: resource android:attr/fontVariationSettings not found.

 C:\Users\tharindu.s.GEVEO\.gradle\caches\transforms-2\files-2.1\0a271e99b6771ad4a84318244d532fb7\core-1.0.0\res\values\values.xml:57:5-88:25: AAPT: error: resource android:attr/ttcIndex not found.

Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
==============================================================================

Get more help at https://help.gradle.org

BUILD FAILED in 1m 17s

Hello @Tharindu-Diluksha ,
Thanks for this additional information.
I don't know whether using appcenter could be an issue, I never used it so far.
I have a few questions that may help solving this issue:

Do those errors occur only when adding searchable_dropdown?
Did you try this solution? https://github.com/crosswalk-project/cordova-plugin-crosswalk-webview/issues/205#issuecomment-371669478
Would you like to share a minimal failing project so that I can try to reproduce?

Hi @lcuis Thanks for your quick reply.

Yes the error occurs only after adding searchable_dropdown.
No, since it is related to cordova plugin.
I have created a minimal failing project In https://github.com/Tharindu-Diluksha/test-searchable-dropdown

In the repository, the master branch includes the searchable_dropdown and there is the build failure.
Also, there is another branch ("without-searchable-dropdown") without the searchable_dropdown and it can be built successfully.
(In both branches I'm getting the appcenter related issue but I think that has nothing to do with this since the code in "without-searchable-dropdown" branch can be built successfully using "flutter build apk" command.)

Hello @Tharindu-Diluksha ,
Thank you very much for sharing the project with me!
I confirm that I can reproduce the issue with this project:
~/AndroidStudioProjects/test-searchable-dropdown$ flutter build apk
You are building a fat APK that includes binaries for android-arm, android-arm64, android-x64.
If you are deploying the app to the Play Store, it's recommended to use app bundles or split the APK to reduce the APK size.
    To generate an app bundle, run:
        flutter build appbundle --target-platform android-arm,android-arm64,android-x64
        Learn more on: https://developer.android.com/guide/app-bundle
    To split the APKs per ABI, run:
        flutter build apk --target-platform android-arm,android-arm64,android-x64 --split-per-abi
        Learn more on:  https://developer.android.com/studio/build/configure-apk-splits#configure-abi-split
Running Gradle task 'assembleRelease'...                                                                                Note: /home/lcuis/progs/flutter/.pub-cache/hosted/pub.dartlang.org/appcenter-0.2.1/android/src/main/java/com/aloisdeniel/flutter/appcenter/AppcenterPlugin.java uses unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
Calling mockable JAR artifact transform to create file: /home/lcuis/.gradle/caches/transforms-2/files-2.1/98f3f4a6433e701e219fb48a51099b4f/android.jar with input /home/lcuis/progs/AndroidSDK/platforms/android-27/android.jar
Removed unused resources: Binary resource data reduced from 46KB to 37KB: Removed 19%

FAILURE: Build completed with 2 failures.

1: Task failed with an exception.
-----------
* What went wrong:
Execution failed for task ':appcenter:verifyReleaseResources'.
> A failure occurred while executing com.android.build.gradle.internal.tasks.Workers$ActionFacade
   > Android resource linking failed
     /home/lcuis/.gradle/caches/transforms-2/files-2.1/a528b13ac93e64cafa3d0480e2c93207/core-1.1.0/res/values/values.xml:142:5-173:25: AAPT: error: resource android:attr/fontVariationSettings not found.

     /home/lcuis/.gradle/caches/transforms-2/files-2.1/a528b13ac93e64cafa3d0480e2c93207/core-1.1.0/res/values/values.xml:142:5-173:25: AAPT: error: resource android:attr/ttcIndex not found.

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
==============================================================================

2: Task failed with an exception.
-----------
* What went wrong:
Execution failed for task ':appcenter_analytics:verifyReleaseResources'.
> A failure occurred while executing com.android.build.gradle.internal.tasks.Workers$ActionFacade
   > Android resource linking failed
     /home/lcuis/.gradle/caches/transforms-2/files-2.1/a528b13ac93e64cafa3d0480e2c93207/core-1.1.0/res/values/values.xml:142:5-173:25: AAPT: error: resource android:attr/fontVariationSettings not found.

     /home/lcuis/.gradle/caches/transforms-2/files-2.1/a528b13ac93e64cafa3d0480e2c93207/core-1.1.0/res/values/values.xml:142:5-173:25: AAPT: error: resource android:attr/ttcIndex not found.

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
==============================================================================

* Get more help at https://help.gradle.org

BUILD FAILED in 2m 25s
Running Gradle task 'assembleRelease'...
Running Gradle task 'assembleRelease'... Done                     146.3s (!)
The built failed likely due to AndroidX incompatibilities in a plugin. The tool is about to try using Jetfier to solve the incompatibility.
Building plugin appcenter...
Running Gradle task 'assembleAarRelease'...                            ⣯

Running Gradle task 'assembleAarRelease'... Done                  326.3s (!)
✓ Built build/app/outputs/repo.
Building plugin appcenter_analytics...
Running Gradle task 'assembleAarRelease'...
Running Gradle task 'assembleAarRelease'... Done                    2.9s
✓ Built build/app/outputs/repo.
Building plugin appcenter_crashes...
Running Gradle task 'assembleAarRelease'...
Running Gradle task 'assembleAarRelease'... Done                    2.3s
✓ Built build/app/outputs/repo.
Building plugin searchable_dropdown...
Running Gradle task 'assembleAarRelease'...
Running Gradle task 'assembleAarRelease'... Done                    2.3s
> Task :assembleAarRelease UP-TO-DATE
> Task :preBuild UP-TO-DATE
> Task :preReleaseBuild UP-TO-DATE
> Task :compileReleaseAidl NO-SOURCE
> Task :compileReleaseRenderscript NO-SOURCE
> Task :checkReleaseManifest
> Task :generateReleaseBuildConfig
> Task :generateReleaseResValues
> Task :generateReleaseResources
> Task :packageReleaseResources
> Task :mergeReleaseShaders
> Task :compileReleaseShaders
> Task :generateReleaseAssets
> Task :packageReleaseAssets
> Task :parseReleaseLibraryResources
> Task :packageReleaseRenderscript NO-SOURCE
> Task :processReleaseJavaRes NO-SOURCE
> Task :mergeReleaseJniLibFolders
> Task :prepareLintJarForPublish
> Task :processReleaseManifest
> Task :generateReleaseRFile

> Task :compileReleaseKotlin FAILED

> Task :mergeReleaseNativeLibs
> Task :stripReleaseDebugSymbols
> Task :transformNativeLibsWithSyncJniLibsForRelease
16 actionable tasks: 16 executed

e: /home/lcuis/progs/flutter/.pub-cache/hosted/pub.dartlang.org/searchable_dropdown-1.1.3/android/src/main/kotlin/bsi/iceman/searchable_dropdown/SearchableDropdownPlugin.kt: (3, 28): Unresolved reference: NonNull
e: /home/lcuis/progs/flutter/.pub-cache/hosted/pub.dartlang.org/searchable_dropdown-1.1.3/android/src/main/kotlin/bsi/iceman/searchable_dropdown/SearchableDropdownPlugin.kt: (19, 36): Unresolved reference: NonNull
e: /home/lcuis/progs/flutter/.pub-cache/hosted/pub.dartlang.org/searchable_dropdown-1.1.3/android/src/main/kotlin/bsi/iceman/searchable_dropdown/SearchableDropdownPlugin.kt: (41, 30): Unresolved reference: NonNull
e: /home/lcuis/progs/flutter/.pub-cache/hosted/pub.dartlang.org/searchable_dropdown-1.1.3/android/src/main/kotlin/bsi/iceman/searchable_dropdown/SearchableDropdownPlugin.kt: (41, 57): Unresolved reference: NonNull
e: /home/lcuis/progs/flutter/.pub-cache/hosted/pub.dartlang.org/searchable_dropdown-1.1.3/android/src/main/kotlin/bsi/iceman/searchable_dropdown/SearchableDropdownPlugin.kt: (49, 38): Unresolved reference: NonNull

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':compileReleaseKotlin'.
> Compilation error. See log for more details

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 2s

The plugin searchable_dropdown could not be built due to the issue above.
~/AndroidStudioProjects/test-searchable-dropdown$

This is good news. I'll try to understand better the issue and look for a solution.

All the error messages disappear when I comment out the 3 appcenterrelated lines in the pubspec.yaml file:
flutter build apk
You are building a fat APK that includes binaries for android-arm, android-arm64, android-x64.
If you are deploying the app to the Play Store, it's recommended to use app bundles or split the APK to reduce the APK size.
    To generate an app bundle, run:
        flutter build appbundle --target-platform android-arm,android-arm64,android-x64
        Learn more on: https://developer.android.com/guide/app-bundle
    To split the APKs per ABI, run:
        flutter build apk --target-platform android-arm,android-arm64,android-x64 --split-per-abi
        Learn more on:  https://developer.android.com/studio/build/configure-apk-splits#configure-abi-split
Removed unused resources: Binary resource data reduced from 45KB to 37KB: Removed 19%
Running Gradle task 'assembleRelease'...
Running Gradle task 'assembleRelease'... Done                      41.9s
✓ Built build/app/outputs/apk/release/app-release.apk (16.2MB).

Here is an issue that seems to be related:
https://github.com/flutter/flutter/issues/46873
I tried the following commands which took quite some time to execute:
flutter clean
flutter pub cache repair

I still had the same errors with the 3 appcenter lines.
So I tried the following commands:
flutter channel master
flutter upgrade
flutter clean
flutter build apk

Still had the same errors.
Sorry, I'm not familiar with appcenter. Is there a configuration file that we can change to try to solve this issue from the appcenter perspective?

@lcuis Thank you very much. I'll try to investigate further and resolve this with appcenter.

authors: Tharindu-Diluksha lcuis


text:
ENV2022-06-17 REFSK codes litter

message from Jakob Strand:
'At the REFSK list, I am missing this OSPAR protocol:OSPAR (2019). Coordinated Environmental Monitoring Programme (CEMP) Guidelines for Monitoring and Assessment of plastic particles in stomachs of fulmars in the North Sea area. Agreement 2015-03e , Update 2019; https://www.ospar.org/convention/agreements?q=fulmar
And also the AMAP protocol
AMAP, 2021. AMAP Litter and Microplastics Monitoring Guidelines. Version 1.0. Arctic Monitoring and Assessment Programme (AMAP), Tromsø, Norway, 257pp.
AMAP Litter and Microplastics Monitoring Guidelines. Version 1.0
'

CEMP-LT:2015-03e
AMAP-LT:2021

repo: ices-eg/DIG


text:
在真机测试小程序时

源码中console.dir（）提示未定义函数，报错

我发现部分机器又这个问题。我的是锤子m1l，安卓版本是6.0.1。

repo: icindy/wxParse


text:
Rime plus

rime plus プラグインを本家に取り込むプルリクです。
icpc-jag/rime-plus は今後凍結されます。

rs-lgtm.
いくつか icpcjag/rime-plus を参照している場所があったりするのを見かけましたがあとで直していきましょう。ありがとうございます！

いくつか icpcjag/rime-plus を参照している場所があったりする
うっ

repo: icpc-jag/rime


text:
How to use commandBinding

Hello,
i want to perform an action when ctrl + space is pressed.
i have not idea how to use CommandBindings. Is there any example showing how to use CommandBindings?

Hello,
i want to perform an action when ctrl + space is pressed. i have not idea how to use CommandBindings. Is there any example showing how to use CommandBindings?

I found example
https://andydunkel.net/snippets/Csharp/WPF/AvalonEdit/Add_Keyboard_Shortcuts/index.html

repo: icsharpcode/AvalonEdit


text:
Changed handling of recurring cashflows to better suit object oriented

Pull Request Description
What issue does this change request address?
#58
What are the significant changes in functionality due to this change request?
When defining cashflows outside of TEAL, calculateYearlyCashflow/calculateIntraYearlyCashflow over the project lifetimes. TEAL will now consider a unique cashflow expression for each year of the project life.

For Change Control Board: Change Request Review
The following review must be completed by an authorized member of the Change Control Board.

[ ] 1. Review all computer code.
[ ] 2. If any changes occur to the input syntax, there must be an accompanying change to the user manual and xsd schema. If the input syntax change deprecates existing input files, a conversion script needs to be added (see Conversion Scripts).
[ ] 3. Make sure the Python code and commenting standards are respected (camelBack, etc.) - See on the wiki for details.
[ ] 4. Automated Tests should pass.
[ ] 5. If significant functionality is added, there must be tests added to check this. Tests should cover all possible options.  Multiple short tests are preferred over one large tes.
[ ] 6. If the change modifies or adds a requirement or a requirement based test case, the Change Control Board's Chair or designee also needs to approve the change.  The requirements and the requirements test shall be in sync.
[ ] 7. The merge request must reference an issue.  If the issue is closed, the issue close checklist shall be done.
[ ] 8. If an analytic test is changed/added, the the analytic documentation must be updated/added.
[ ] 9. If any test used as a basis for documentation examples have been changed, the associated documentation must be reviewed and assured the text matches the example.

@dylanjm do you have time to double-check this fix? I want to make sure we didn't overlook something.

authors: AnthoneyGriffith PaulTalbot-INL

repo: idaholab/TEAL


text:
[DEFECT] Heavy Tests for Simulated Annealing timing out

Defect Description
Describe the defect
for the three heavy tests for simulated annealing, the max time of 700 sec is not enough on some of the machines, and hence it is timing out.
What did you expect to see happen?
tests should pass.
What did you see instead?
heavy tests timed out.
Do you have a suggested fix for the development team?
Yes, increase the max time
Describe how to Reproduce
Steps to reproduce the behavior:
Just run the heavy tests.
Screenshots and Input Files
Please attach the input file(s) that generate this error.  The simpler the input, the faster we can find the issue.
Platform (please complete the following information):

OS: [e.g. iOS]
Version: [e.g. 22]
Dependencies Installation: [CONDA or PIP]

For Change Control Board: Issue Review
This review should occur before any development is performed as a response to this issue.

[x] 1. Is it tagged with a type: defect or task?
[x] 2. Is it tagged with a priority: critical, normal or minor?
[x] 3. If it will impact requirements or requirements tests, is it tagged with requirements?
[x] 4. If it is a defect, can it cause wrong results for users? If so an email needs to be sent to the users.
[x] 5. Is a rationale provided? (Such as explaining why the improvement is needed or why current code is wrong.)

For Change Control Board: Issue Closure
This review should occur when the issue is imminently going to be closed.

[x] 1. If the issue is a defect, is the defect fixed?
[x] 2. If the issue is a defect, is the defect tested for in the regression test system?  (If not explain why not.)
[x] 3. If the issue can impact users, has an email to the users group been written (the email should specify if the defect impacts stable or master)?
[x] 4. If the issue is a defect, does it impact the latest release branch? If yes, is there any issue tagged with release (create if needed)?
[x] 5. If the issue is being closed without a pull request, has an explanation of why it is being closed been provided?

Closure checklist passed...
Closing is approved via PR #1220
No email is required, since this is a timeout of New Heavy tests (that never got tested in the actual heavy test machine)

authors: Jimmy-INL alfoa

repo: idaholab/raven


text:
Update to the HTTF lower plenum CFD modeling by adding nekRS model and documentation

This PR adds a new nekRS model developed for the HTTF lower plenum to study the related flow mixing phenomenon.

New set of boundary conditions are investigated, particularly more inlet channel groups are considered in the new model;
Improved inlet boundary conditions are developed by adopting the solution profiles from a fully developed turbulent pipe case;
Detailed guidelines as to how to specify the detailed boundary conditions with nekRS;
CFD mesh files as well as high-quality figures are provided using github LFS to minimize PR file size.

Job VTB Documentation on 80fd19b wanted to post the following:
View the site here
This comment will be updated on new commits.

Thanks for the contribution!

authors: GiudGiud hapfang moosebuild


text:
Need to update my Bio

I need to update my Bio.
https://github.com/idea-analytics/r_and_a_manual/blob/cbc9c53415dd0e8507080196a4e0b83bc6076598/02-Who_We_Are.Rmd#L39

#220 Need to update our Bio's in this chapter.


text:
Not working on the below type of images

Please help how could I find duplicates in such type of images (have tried both the methods cnn & hash)

Uhmm can you provide us with a working example like some samples of your images and also the code that you use? Otherwise we are not able to help...

Thanks @datitran for responding
these are the images  & I am using the standard code which is given in your examples in this repo

Like in this I want to detect last two as duplicates or identical

@vyaslkv If I understand you correctly, you ran the standard phash readme code and got an dictionary back where no duplicates were found?
In any case, you can try to vary the corresponding threshold parameters for hashing and cnn methods to see which threshold works best for you. You can additionally use the 'score' attribute to see the extent of difference/similarity between the pair of images you ascertain to be duplicates.
Please refer the documentation for these: https://idealo.github.io/imagededup/

Thanks, @tanujjain Let me check again.
(Really Thanks to all of you for the quick help I really appreciate)

@vyaslkv Gave your images a try with default settings for phash and cnn. The images were found to be duplicates in both cases as expected. So, closing the issue.

authors: datitran tanujjain vyaslkv

repo: idealo/imagededup


text:
Adapt to the new Ideascube packaging

We have to adapt Ansiblecube to the new ideascube packaging improvements : https://github.com/ideascube/ideascube/pull/341/files

Run collecstatic and migrate after installation
Restart Uwsgi and Nginx after install
Copy the systemd unit file for uwsgi.service

Please don't do this.
As I said in the other issue, I still need to document the changes required in Ansiblecube, and they are not (entirely) what you wrote above.
I still need some time to finish the packaging changes in ideascube (still more stuff to do), and then once it's done I expect it won't be merged and released instantly, so we'll have enough time to adapt Ansiblecube. :wink:

Ok I was listing things as a reminder. But you know better the changes that has been done in the ideascube packaging.
I close this issue. You could create a new one when the packaging will be finish

Oh, don't close the issue, having it open as a reminder is a great idea!
It's just that the specific points you listed are not the right ones. :smile:

So instead of one big issues with all the changes, I opened a few individual issues for each thing:

[ ] https://github.com/ideascube/ansiblecube/issues/25
[ ] https://github.com/ideascube/ansiblecube/issues/26
[ ] https://github.com/ideascube/ansiblecube/issues/27
[ ] https://github.com/ideascube/ansiblecube/issues/28
[ ] https://github.com/ideascube/ansiblecube/issues/30

authors: bochecha fheslouin

repo: ideascube/ansiblecube


text:
如何编辑脚本自动执行export -i filename 命令？

目前需求是这样的：
在某个时间点我需要导出某些 key 值。
正常导出为：
$ ssdb-cli
$ export -i backup filename
$ key 区间范围

但是我需要用脚本自动执行。
echo "export -i filename" | ssdb-cli

但是要如何输入 key 的区间范围呢？  export 并不支持直接附带参数

试一下写个expect脚本,可以把你需要的逻辑和参数写进去,可以执行export -i 的时候判断ssdb-cli的输出,并自动输入你想输入的参数。

@JeahamChain  Thx,  我尝试下，之前是直接修改了 export 脚本完成的

authors: JeahamChain linjunzhu

repo: ideawu/ssdb


text:
Readme auto-generation

This PR adds a demonstration of documentation created using documatic:
A technical doc / README replacement
The tech doc automatically tracks code and project updates. The header and footer as well as the introduction of the existing README have been included manually and fixed so the automated tool doesn't replace them, however everything in between is auto-generated. Omitted from the tech doc are code summaries. The content of the doc can be configured, choosing to add or remove summaries of code/code interactions, or any other section of the documentation to tailor a doc to different audiences.

I've paired down the README file to the minimally required info in favor of redirecting users to the docs: https://idom-docs.herokuapp.com/docs/index.html
So I don't think I need anything auto-generated here.

authors: ElijahAhianyo rmorshea

repo: idom-team/idom


text:
💬 第三方交流群

由于本人时间有限，暂无精力创建并维护官方交流群。

以下是由社区爱好者创建的一些第三方交流群，大家有问题可以在群内即时交流。
同时，非常感谢各位群管理员的热心维护，和大家的互相帮助，祝大家玩的开心 :)
另外：

大家注意在群内保护好自己的隐私信息，尤其是账号密码和登录凭证等。
保持友善，尊重他人付出的时间和耐心指导。

还是很感谢作者大大，开源不易。这里有个群聊，现在已经 80 人了，大家可以一起交流

更新一下群二维码  （其实想用 Telegram 的，它们的链接不会过期，但是考虑到社区大部分小伙伴都是中国人，微信群应该是比较合适的）

你好！群二维码失效了 求进群~

失效了 求进群~

求进群~

求进群

又过期了

求拉

求拉群～

上面的加群二维码过期了，联系不上@chmod777john 。
我来建个官方交流群吧，有需要的可以加进来一起交流学习，交个朋友。

@chmod777john 感谢支持，已加群

考虑到社区大部分小伙伴都是中国人 不等于不用建TG群吧，毕竟能搞这些的和能用TG的人我觉得应该有很多是重叠的，建立一个TG群也省得总是更新微信群二维码
如果非要用微信群的话，可以考虑下企业微信，好像有用同一个二维码加到不同群的功能，就是不知道需不需要企业认证

其实可以搞qq群的，一个q一个tg

还是搞tg群吧，但凡搞这些的应该没有不用tg的

telegram 群：@migpt_official

求进群啊~~哪个老哥看到了麻烦拉一下，跪谢。我的wx：cesardeng

@cesardeng 已更新

给个最新的群吧，大佬，有问题想要咨询

二维码过期了，可以再发一个吗

求新的交流群二维码

如果用node运行的话, 这个可以跑到服务器上么? 为什么我在服务器部署,一直提示小米异地登录验证啊,是不是要在本地和小爱同一个局域网下才能运行?

如果用node运行的话, 这个可以跑到服务器上么? 为什么我在服务器部署,一直提示小米异地登录验证啊,是不是要在本地和小爱同一个局域网下才能运行?

境外ip登录会显示异地验证，换成境内的就好了

repo: idootop/mi-gpt


text:
Please add iab@iab.org to the cc list on doc_state_edited for IAB stream-documents

Description
Please cc iab@iab.org on the notification emails when an IAB-stream's document state is changed.
Code of Conduct

[X] I agree to follow the IETF's Code of Conduct

(I ask because you call out doc_state_edited in the title and want to make sure that's what you really meant)

For any state change, not just the ones done manually--thank you for clarifying!

This will take a new trigger. In the spirit of YNGNI, rather than making this too generic, we can just build "iab_doc_state_changed" and aim it at the iab recipient. Code will have to be added in the places that could change the state to use the trigger and send mail.

authors: cindymorgan rjsparks

repo: ietf-tools/datatracker


text:
ContextRefreshedHandlerMethodInfoEventListener 要支持输出 produces等参数

org.springframework.boot.autoconfigure.web.servlet.error.BasicErrorController
输出成了

参考 https://blog.csdn.net/u013885298/article/details/104080385

repo: ifeilong/feilong-spring


text:
test: add HTML snapshot tests

I've added an HTML serializer for the Jest tests to make it easier to update the tests without having to go through and edit each one (in future). I've used prettier to format the HTML so it's easier to read, but I'm not yet sure that my indentation code is correct. I've also added const FIRST_PARAGRAPH_SELECTOR = EDITOR_CLASS_SELECTOR + ' > p:first-child'; so that we get the content of the first paragraph since we don't care about the
 tag itself in our tests; I'm not sure if this should be moved to a more central location like @remirror/core or not?
The test looks very similar to before, but it factors in more of the content and it can auto-update, so I'm calling that a win :grin:
 it('should have a social editor', async () => {
      await $editor.focus();
      await $editor.type('This is text https://url.com');
-     await expect(innerHtml(EDITOR_CLASS_SELECTOR)).resolves.toInclude(
-       'https://url.com',
+     expect($innerHTML(FIRST_PARAGRAPH_SELECTOR)).resolves.toMatchInlineSnapshot(
+       `This is text <a href="http://url.com" role="presentation">https://url.com</a>`,
      );
    });

If we need to use jest.retryTimes then we need to alias our inline snapshots, so hopefully we can avoid that.

Looks good 👍

authors: benjie ifiokjr

repo: ifiokjr/remirror


text:
Estudar HTTP

Obrigatório:

[x] HTML/CSS
[x]  URL/URI
[x]  HTTP
[x]  Métodos: GET, POST, PUT, DELETE, HEAD
[x]  Respostas: 1XX, 2XX, 3XX, 4XX, 5XX

Mesmo material de leitura do semestre passado (2020.2):

Vídeos sobre HTTP
Capítulos do livro High Performance Browser Networking
Vídeo sobre HTTP/2

Ainda do semestre passado, vídeos com Javascript e Node.js:

Primeiros estudos de HTTP
Servidor de jogo com Node.js, Express (HTTP) e Socket.IO (WebSocket) e 2 jogadores em rede

Do semestre retrasado (2020.1), vídeo sobre HTTP com Python + Flask:

Gitpod servidor HTTP com Python 3 e Flask

Vídeo publicado no canal:

Conceitos básicos de HTTP.


text:
WIP: Add ball control to paddle - issue#2

Angle of return is constant at 30 degrees taken w.r.t. paddle as base

@brunolm  Could you please review this

Looks good to me 👍

@VRamazing Hey i have fixed the merge conflicts. Can you please review this?

@choudhary001  I am on it

@choudhary001  The paddle should reflect the ball based on from what part of paddle the user hits it.Currently, even if you hit the paddle with right-hand corner it is reflected across x-axis ( The x component of ball motion vector remains same).I want the ball to retrace the path it came from when i hit it with the corner. Check this Image
You can use the distance between the center of paddle and corner of the paddle to determine x and y component of ball motion.

authors: VRamazing brunolm choudhary001

repo: igameproject/Breakout


text:
.sort() for multiple columns

Hi there,
How can I sort games data by multiple column, sometimes records start appearing in random order if the timestamp is same for multiple records, e.g, first_release_date is repeating for multiple records, but fetching next 5 or 10 records using offset, same records appearing on different places, so I want to sort by both first_release_date and id of the record, so that same games appear on the exactly same place from the previous query.
I have tried using .sort('first_release_date') and sort('id', 'desc') but it responds with an error.
    apicalypse(requestOptions)
      .fields('name, first_release_date')
      .limit(5)
      .offset(1)
      .sort(`first_release_date`)
      .sort(`id`, 'desc')
      .where(`first_release_date > ${moment().unix()}`)
      .request(`/games`)
      .then(response => {
        console.log('@@@', response.data);
        res.json(response.data);
      })
      .catch(err => {
        console.error('###', err);
        res.status(err.response.status).send({ error: err.message});
      });

Thanks.

Hi there.
This is not currently (it's in the backlog) supported by the API so further
sorting will need to be done in the client.
On Tue, Mar 5, 2019, 12:49 Summer Kiflain notifications@github.com wrote:

Hi there,
How can I sort games data by multiple column, sometimes records start
appearing in random order if the timestamp is same for multiple records,
e.g, first_release_date is repeating for multiple records, but fetching
next 5 or 10 records using offset, same records appearing on different
places, so I want to sort by both first_release_date and id of the record,
so that same games appear on the exactly same place from the previous query.
I have tried using .sort('first_release_date') and sort('id', 'desc') but
it responds with an error.
apicalypse(requestOptions)
  .fields('name, first_release_date')
  .limit(5)
  .offset(1)
  .sort(`first_release_date`)
  .sort(`id`, 'desc')
  .where(`first_release_date > ${moment().unix()}`)
  .request(`/games`)
  .then(response => {
    console.log('@@@', response.data);
    res.json(response.data);
  })
  .catch(err => {
    console.error('###', err);
    res.status(err.response.status).send({ error: err.message});
  });

Thanks.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/igdb/node-apicalypse/issues/6, or mute the thread
https://github.com/notifications/unsubscribe-auth/AAmDZ1voOh05nyoeQmWFeSs4LrJ2d28Rks5vTmfWgaJpZM4beh96
.

Hi @krazyjakee,
Thanks for replying so quickly, sorting in the client side wont solve the issue. because it would require fetching all the required data on first load and then sort it by id, otherwise fetching data with pagination will remain an issue, because it seemingly randomize the records on next offset calls.

Since this is an issue with the IGDB api and not the node wrapper, I will close this and forward your bug report to the appropriate team.

authors: krazyjakee summerkiflain

repo: igdb/node-apicalypse


text:
Features/testing language

Probably fixed Optionset Issue with translation if baseLanguage is not english

needs additional testing in English based system as well