Support kong ingress controller

It would be awesome if rancher supported some popular ingress controllers, like the kong ingress controller.
https://github.com/Kong/kubernetes-ingress-controller
The nginx ingress controller works great, but is not very powerful when it comes to plugin customization for authentication and authorization.

This is covered in https://github.com/rancher/rancher/issues/14007


try.buildwinjs.com/#angular error

Hello,
I have been trying angular-winjs in my cordova app and found errors like the angular expressions are not working properly also I have found the same error in the at
http://try.buildwinjs.com/#angular
and here my snapshot
http://i.imgur.com/PvEJ5Rr.png

Thanks for the bug report. Just for clarification, are you saying that you see the same error when you use the angular sample code from http://try.buildwinjs.com/#angular in your cordova app?

Yes, same error. I added a snapshot of my app in WP8 emulator. Here is the snapshot again
http://i.imgur.com/PvEJ5Rr.png

Hi,
Similar issue when using the angular-winjs library in my SPA web application. It is working on Microsoft Edge and Chrome but not Safari and Firefox.
This issue can be reproduced with any of the samples at http://try.buildwinjs.com/#angular
Can you advice on which previous version to fallback on while you investigate this issue?
The issue seems to occur when angular is trying to load the winjs module i.e. angular.module('app', ['winjs'])
I have tested with the following versions...
    "angular": "~1.4.2",
    "winjs": "~4.1.0",
    "angular-winjs": "~3.1.0",

Thanks,
J-F

This is a shot in the dark. Issue I have experienced is the word "use strict" usually when winjs doesn't load in the angular-winjs file. Just for kicks comment out that line. It's the second or the third line and try again.

Success, it worked!
FYI, In the Firefox developer tools, there is a warning stating that 'use scripts' does not allow functions declared in a "if-else" statement... Seems that there is a line in the winjs library that causes that issue.
Will this fix be included in a future release on winjs?

I'm sure the winjs team will have a fix some time soon.

@asglu @frenchyjef @osmanm
This should be fixed in angular-winjs 3.1.1, released earlier today.

Confirmed, thanks!


Google prefers https://diesel.rs/ (which actually has an SSL error) to http://diesel.rs/

https://www.google.com/search?q=diesel+rs&ie=utf-8&oe=utf-8

--> https://diesel.rs/

Firefox ESR 45.7.0:

diesel.rs uses an invalid security certificate. The certificate is only valid for the following names: www.github.com, *.github.com, github.com, *.github.io, github.io, *.githubusercontent.com, githubusercontent.com
Error code: SSL_ERROR_BAD_CERT_DOMAIN

Chrome  56.0.2924.87 :

NET::ERR_CERT_COMMON_NAME_INVALID

I don't know that we have any control over this. Presumably it's something on Github's end that is causing this to occur? @arthurnn do you know who the right person to ping about this is?

I guess you could try https://konklone.com/post/github-pages-now-sorta-supports-https-so-use-it to add ssl to diesel github pages?
@parkr will know better.

Should be fine now, cc #808


bazel compile fatal failed: System headers not found

Relevant system information

Operating system Ubuntu 22.04
llvm-17 (libc++17-dev)
bazel 6.3.2

What you did
following the https://docs.biomes.gg/docs/basics/running-locally. All is ok, until:
./b data-snapshot run
bazel run --config=release --show_result=0 --ui_event_filters=-INFO --color=yes --curses=yes //src:deploy_all_ts_deps -- ./biomes-game/src/gen
Generating TypeScript dependencies (release)...
Starting local Bazel server and connecting to it...
ERROR: ~/.cache/bazel/_bazel_riceball/397f6ead471743135a6ba8d0c332fb01/external/glslang/BUILD.bazel:93:11: Compiling glslang/GenericCodeGen/Link.cpp [for tool] failed: (Exit 1): clang failed: error executing command (from target @glslang//:glslang) /usr/lib/llvm-17/bin/clang -U_FORTIFY_SOURCE -fstack-protector -Wall -Wthread-safety -Wself-assign -Wunused-but-set-parameter -Wno-free-nonheap-object -fcolor-diagnostics -fno-omit-frame-pointer -g0 ... (remaining 41 arguments skipped)

Use --sandbox_debug to see verbose messages from the sandbox and retain the sandbox build root for debugging
In file included from external/glslang/glslang/GenericCodeGen/Link.cpp:39:
external/glslang/glslang/GenericCodeGen/../Include/Common.h:40:10: fatal error: 'algorithm' file not found
   40 | #include <algorithm>
      |          ^~~~~~~~~~~
1 error generated.
ERROR: ~/.cache/bazel/_bazel_riceball/397f6ead471743135a6ba8d0c332fb01/external/glslang/BUILD.bazel:93:11: Compiling glslang/MachineIndependent/InfoSink.cpp [for tool] failed: (Exit 1): clang failed: error executing command (from target @glslang//:glslang) /usr/lib/llvm-17/bin/clang -U_FORTIFY_SOURCE -fstack-protector -Wall -Wthread-safety -Wself-assign -Wunused-but-set-parameter -Wno-free-nonheap-object -fcolor-diagnostics -fno-omit-frame-pointer -g0 ... (remaining 41 arguments skipped)

Use --sandbox_debug to see verbose messages from the sandbox and retain the sandbox build root for debugging
In file included from external/glslang/glslang/MachineIndependent/InfoSink.cpp:35:
In file included from external/glslang/glslang/MachineIndependent/../Include/InfoSink.h:38:
external/glslang/glslang/MachineIndependent/../Include/../Include/Common.h:40:10: fatal error: 'algorithm' file not found
   40 | #include <algorithm>
      |          ^~~~~~~~~~~
1 error generated.
ERROR: ~/.cache/bazel/_bazel_riceball/397f6ead471743135a6ba8d0c332fb01/external/glslang/BUILD.bazel:177:11: Compiling SPIRV/InReadableOrder.cpp [for tool] failed: (Exit 1): clang failed: error executing command (from target @glslang//:SPIRV) /usr/lib/llvm-17/bin/clang -U_FORTIFY_SOURCE -fstack-protector -Wall -Wthread-safety -Wself-assign -Wunused-but-set-parameter -Wno-free-nonheap-object -fcolor-diagnostics -fno-omit-frame-pointer -g0 ... (remaining 53 arguments skipped)

Use --sandbox_debug to see verbose messages from the sandbox and retain the sandbox build root for debugging
In file included from external/glslang/SPIRV/InReadableOrder.cpp:51:
external/glslang/SPIRV/spvIR.h:52:10: fatal error: 'algorithm' file not found
   52 | #include <algorithm>
      |          ^~~~~~~~~~~
1 error generated.
ERROR: ~/.cache/bazel/_bazel_riceball/397f6ead471743135a6ba8d0c332fb01/external/glslang/BUILD.bazel:177:11: Compiling SPIRV/disassemble.cpp [for tool] failed: (Exit 1): clang failed: error executing command (from target @glslang//:SPIRV) /usr/lib/llvm-17/bin/clang -U_FORTIFY_SOURCE -fstack-protector -Wall -Wthread-safety -Wself-assign -Wunused-but-set-parameter -Wno-free-nonheap-object -fcolor-diagnostics -fno-omit-frame-pointer -g0 ... (remaining 53 arguments skipped)

Use --sandbox_debug to see verbose messages from the sandbox and retain the sandbox build root for debugging
external/glslang/SPIRV/disassemble.cpp:39:10: fatal error: 'cstdlib' file not found
   39 | #include <cstdlib>
      |          ^~~~~~~~~
1 error generated.
ERROR: ~/.cache/bazel/_bazel_riceball/397f6ead471743135a6ba8d0c332fb01/external/glslang/BUILD.bazel:177:11: Compiling SPIRV/SPVRemapper.cpp [for tool] failed: (Exit 1): clang failed: error executing command (from target @glslang//:SPIRV) /usr/lib/llvm-17/bin/clang -U_FORTIFY_SOURCE -fstack-protector -Wall -Wthread-safety -Wself-assign -Wunused-but-set-parameter -Wno-free-nonheap-object -fcolor-diagnostics -fno-omit-frame-pointer -g0 ... (remaining 53 arguments skipped)

Use --sandbox_debug to see verbose messages from the sandbox and retain the sandbox build root for debugging
In file included from external/glslang/SPIRV/SPVRemapper.cpp:36:
external/glslang/SPIRV/SPVRemapper.h:39:10: fatal error: 'string' file not found
   39 | #include <string>
      |          ^~~~~~~~
1 error generated.
FAILED: Build did NOT complete successfully
ERROR: Build failed. Not running target
Error: There was an error while generating the TypeScript dependencies.

Hi @snowyu. Checkout https://stackoverflow.com/a/74759390. "Clang doesn't have it's own header libraries for C++" so it's getting them from GCC. It might be targeting a GCC version that isn't installed, so you may have to install it.

Thanks.  It's ok after sudo apt install g++-12.


Learning to speak

A while back I had an idea to set up an experiment to try to improve the quality of speech provided through a simple Arduino text to speech library: https://github.com/jscrane/TTS.
Abstract
Google has awesome speech recognition capabilities, an example can be seen at https://www.google.com/intl/en/chrome/demos/speech.html. My idea is to set up a system that iterates through a list of words such as a .txt file version of an English dictionary. Each word would be sent to the Arduino board to be converted to speech. Google's speech api would need to listen to each word and return the text that it thought the spoken word was. A program would need to be written which checks to see if the word sent is the same as what was detected. If the words match then it should continue to the next word, otherwise it should make some small modification to the TTS library's sound bytes, recompile, and then download them onto the Arduino board. This is basically a brute-force method for making the text to speech library clearer, however it would be very interesting to see if this would actually improve the quality of sound produced.
Speech sample

Sometimes even the wisest of men and machines can be in error.

Current speech sample: [link]

Closed by https://github.com/gunthercox/salvius.arduino/commit/2162eb1c05286a821dff1f2df9a6c9f8a561bacb


Loop Chart

Is it possible to loop the charts displayed alongside a set timeout?
I've had a little joy playing with the following, but it causes the graph to reload somewhat sporadically.
var chart = c3.generate({
    data: {
        columns: [
            ['data1', 30, 200, 100, 400, 150, 250],
            ['data2', 50, 20, 10, 40, 15, 25]
        ]
    }
});

var test;
function testF1(){ test = setInterval( testF2, 20010 ); }
function testF2(){

setTimeout(function () {
    chart.load({
        columns: [
            ['data1', 230, 190, 300, 500, 300, 400]
        ]
    });
}, 10000);

setTimeout(function () {
    chart.load({
        columns: [
            ['data3', 130, 150, 200, 300, 200, 100]
        ]
    });
}, 10000);

setTimeout(function () {
    chart.unload({
        ids: 'data1'
    });
}, 10);

}

testF1()

For example, not all charts are coming through and/or displaying for what I would expect the correct amount of time is.
The goal here is to have the first chart load, after 10 seconds to change the data (or chart), repeat until all charts have been displayed and then loop back onto itself.

Hi,
The issue queue is to be used for reporting defects and problems with C3.js, in addition to feature requests and ideas.
It is not a catch-all support forum.
For general support enquiries, please use the Google Group at https://groups.google.com/forum/#!forum/c3js.
Nonetheless, you called setTimeout at the same time with the same timeout value (10000) which probably explains the "sporadically" part.


Can't Compile on CentOS 7.2

All compilations w/ 0.5.1-2115.33eefb1 are failing with the "Illegal instruction (core dumped)" message on CentOS 7.2 and VirtualBox 5.0.26 r108824.
Please advise.

@fribeiro1 What version of LLVM are you using? Did you build from source or install a prebuilt binary?

@Theodus I've installed from the latest ponyc-release package.

Can you give the program you're trying to compile and the output from the compiler?

@Praetonus It is actually failing for every program with the same "Illegal instruction (core dumped)" message.

Can you get a debugger stack trace and disassembly of the crash location? Also, what is your CPU?

@Praetonus The requested information follows below:
Stack Trace

[root@localhost Desktop]# strace ponyc
execve("/usr/bin/ponyc", ["ponyc"], [/* 43 vars /]) = 0
brk(0)                                  = 0x35a2000
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f2a46b57000
access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=74093, ...}) = 0
mmap(NULL, 74093, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f2a46b44000
close(3)                                = 0
open("/lib64/libz.so.1", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0p!\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=90632, ...}) = 0
mmap(NULL, 2183688, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f2a46721000
mprotect(0x7f2a46736000, 2093056, PROT_NONE) = 0
mmap(0x7f2a46935000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x14000) = 0x7f2a46935000
close(3)                                = 0
open("/lib64/libtinfo.so.5", O_RDONLY|O_CLOEXEC) = 3
read(3<EMAIL_ADDRESS>832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=174520, ...}) = 0
mmap(NULL, 2268928, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f2a464f7000
mprotect(0x7f2a4651c000, 2097152, PROT_NONE) = 0
mmap(0x7f2a4671c000, 20480, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x25000) = 0x7f2a4671c000
close(3)                                = 0
open("/lib64/libpthread.so.0", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\240l\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=142304, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f2a46b43000
mmap(NULL, 2208864, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f2a462db000
mprotect(0x7f2a462f1000, 2097152, PROT_NONE) = 0
mmap(0x7f2a464f1000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x16000) = 0x7f2a464f1000
mmap(0x7f2a464f3000, 13408, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f2a464f3000
close(3)                                = 0
open("/lib64/libdl.so.2", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\320\16\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=19520, ...}) = 0
mmap(NULL, 2109744, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f2a460d7000
mprotect(0x7f2a460da000, 2093056, PROT_NONE) = 0
mmap(0x7f2a462d9000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2000) = 0x7f2a462d9000
close(3)                                = 0
open("/lib64/libstdc++.so.6", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\20\265\5\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=995840, ...}) = 0
mmap(NULL, 3175456, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f2a45dcf000
mprotect(0x7f2a45eb8000, 2097152, PROT_NONE) = 0
mmap(0x7f2a460b8000, 40960, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xe9000) = 0x7f2a460b8000
mmap(0x7f2a460c2000, 82976, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f2a460c2000
close(3)                                = 0
open("/lib64/libm.so.6", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\260T\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=1141560, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f2a46b42000
mmap(NULL, 3150168, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f2a45acd000
mprotect(0x7f2a45bce000, 2093056, PROT_NONE) = 0
mmap(0x7f2a45dcd000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x100000) = 0x7f2a45dcd000
close(3)                                = 0
open("/lib64/libgcc_s.so.1", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\360\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=88720, ...}) = 0
mmap(NULL, 2184192, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f2a458b7000
mprotect(0x7f2a458cc000, 2093056, PROT_NONE) = 0
mmap(0x7f2a45acb000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x14000) = 0x7f2a45acb000
close(3)                                = 0
open("/lib64/libc.so.6", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0 \34\2\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=2112384, ...}) = 0
mmap(NULL, 3936832, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f2a454f5000
mprotect(0x7f2a456ac000, 2097152, PROT_NONE) = 0
mmap(0x7f2a458ac000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1b7000) = 0x7f2a458ac000
mmap(0x7f2a458b2000, 16960, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f2a458b2000
close(3)                                = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f2a46b41000
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f2a46b40000
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f2a46b3e000
arch_prctl(ARCH_SET_FS, 0x7f2a46b3e980) = 0
mprotect(0x7f2a458ac000, 16384, PROT_READ) = 0
mprotect(0x7f2a45acb000, 4096, PROT_READ) = 0
mprotect(0x7f2a45dcd000, 4096, PROT_READ) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f2a46b3d000
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f2a46b3c000
mprotect(0x7f2a460b8000, 32768, PROT_READ) = 0
mprotect(0x7f2a462d9000, 4096, PROT_READ) = 0
mprotect(0x7f2a464f1000, 4096, PROT_READ) = 0
mprotect(0x7f2a4671c000, 16384, PROT_READ) = 0
mprotect(0x7f2a46935000, 4096, PROT_READ) = 0
mprotect(0x208e000, 2781184, PROT_READ) = 0
mprotect(0x7f2a46b58000, 4096, PROT_READ) = 0
munmap(0x7f2a46b44000, 74093)           = 0
set_tid_address(0x7f2a46b3ec50)         = 3713
set_robust_list(0x7f2a46b3ec60, 24)     = 0
rt_sigaction(SIGRTMIN, {0x7f2a462e1780, [], SA_RESTORER|SA_SIGINFO, 0x7f2a462ea100}, NULL, 8) = 0
rt_sigaction(SIGRT_1, {0x7f2a462e1810, [], SA_RESTORER|SA_RESTART|SA_SIGINFO, 0x7f2a462ea100}, NULL, 8) = 0
rt_sigprocmask(SIG_UNBLOCK, [RTMIN RT_1], NULL, 8) = 0
getrlimit(RLIMIT_STACK, {rlim_cur=8192*1024, rlim_max=RLIM64_INFINITY}) = 0
brk(0)                                  = 0x35a2000
brk(0x35c3000)                          = 0x35c3000
brk(0)                                  = 0x35c3000
--- SIGILL {si_signo=SIGILL, si_code=ILL_ILLOPN, si_addr=0x4d64d9} ---
+++ killed by SIGILL (core dumped) +++
Illegal instruction (core dumped)

CPU Info

[root@localhost Desktop]# more /proc/cpuinfo
processor    : 0
vendor_id    : GenuineIntel
cpu family    : 6
model        : 58
model name    : Intel(R) Core(TM) i5-3340M CPU @ 2.70GHz
stepping    : 9
microcode    : 0x19
cpu MHz        : 2691.264
cache size    : 3072 KB
physical id    : 0
siblings    : 2
core id        : 0
cpu cores    : 2
apicid        : 0
initial apicid    : 0
fpu        : yes
fpu_exception    : yes
cpuid level    : 13
wp        : yes
flags        : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov
pat pse36 clflush mmx fxsr sse sse2 ht syscall nx rdtscp lm constant_tsc rep_goo
d nopl xtopology nonstop_tsc pni pclmulqdq ssse3 cx16 sse4_1 sse4_2 popcnt aes x
save avx rdrand hypervisor lahf_lm
bogomips    : 5382.52
clflush size    : 64
cache_alignment    : 64
address sizes    : 36 bits physical, 48 bits virtual
power management:
processor    : 1
vendor_id    : GenuineIntel
cpu family    : 6
model        : 58
model name    : Intel(R) Core(TM) i5-3340M CPU @ 2.70GHz
stepping    : 9
microcode    : 0x19
cpu MHz        : 2691.264
cache size    : 3072 KB
physical id    : 0
siblings    : 2
core id        : 1
cpu cores    : 2
apicid        : 1
initial apicid    : 1
fpu        : yes
fpu_exception    : yes
cpuid level    : 13
wp        : yes
flags        : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx rdtscp lm constant_t
sc rep_good nopl xtopology nonstop_tsc pni pclmulqdq ssse3 cx16 sse4_1 sse4_2 popcnt aes xsave avx rdrand hypervisor lahf_lm
bogomips    : 5382.52
clflush size    : 64
cache_alignment    : 64
address sizes    : 36 bits physical, 48 bits virtual
power management:

Let me know if you need more info.

Wasn't there a virtualbox problem we saw in the past that was unrelated to the ponyc or LLVM version?  I'm going to take a quick look through the ticket archives.

@fribeiro1 - can you check your virtualbox version against this note in the README?

(Hopefully this is just a dup of #693 and #441, and upgrading virtualbox will fix the issue.)

I think it's the same issue as #1176. Your processor supports AVX instructions and LLVM 3.8 incorrectly assumes that it also supports AVX-512. This bug is fixed in LLVM 3.9 but we have a few issues to resolve before we can distribute pre-built packages with LLVM 3.9. Until then, I'd recommend to build from source with LLVM 3.9.

@jemc Unfortunatelly I am using VirtualBox 5.0.26 r108824 already

This is most likely due to the Travis CI build server CPU having AVX2 support in addition to AVX while the Intel(R) Core(TM) i5-3340M CPU @ 2.70GHz CPU only supports AVX and not AVX2.

Would it make sense to turn off AVX2 in the default builds? I'm unsure of its impact.

@SeanTAllen In the mean time, I will try to build it from the source instead.

For now, we have decided to document the limitation here. You have to have a AVX2 compatible CPU to use pre-built packages. Otherwise you need to build from source. This should be added to install instructions in the README.

You can check if your CPU supports AVX2 using grep avx2 /proc/cpuinfo.  This should probably be in the README section about limitations of the prebuilt binaries.

Great, just forked the project to make that change.

Please keep in mind that Travis runs on GCE (https://docs.travis-ci.com/user/trusty-ci-environment#Overview) and GCE machines can have any of the following CPUs (For the n1 series of machine types, a virtual CPU is implemented as a single hardware hyper-thread on a 2.6 GHz Intel Xeon E5 (Sandy Bridge), 2.5 GHz Intel Xeon E5 v2 (Ivy Bridge), 2.3 GHz Intel Xeon E5 v3 (Haswell), or 2.2 GHz Intel Xeon E5 v4 (Broadwell). see: https://cloud.google.com/compute/docs/machine-types).
The newer CPUs will likely have features that the older ones are unlikely to have and just labeling AVX2 as a requirement for the pre-built packages in the documentation may not be sufficient.

@dipinhora What would you add there instead?

@dipinhora We could disable AVX2 with -mno-avx2 in the package builds. Do you think it would work?

@fribeiro1 My intent wasn't to discourage the addition into the documentation.
@Praetonus I think the appropriate solution is to decide on the oldest system architecture that we want to support and target it with a arch=<ARCH> to the make flags and add a note into the documentation accordingly. For example, we could target Ivy Bridge by adding arch=ivybridge. This would only use CPU features available on Ivy Bridge CPUs even if the build machine had additional CPU features that Ivy Bridge CPUs don't have (like AVX2, AVX512, etc) but it would mean that systems with older CPUs wouldn't work because we may rely on features that they don't support. This is similar to Linux distributions building binaries for generic i686 target long after newer CPUs came about due to the need for compatibility with older systems. NOTE: The main downside of this is that the Pony Runtime will also be built for the same "safe" target while any executables compiled with Pony will detect the users' system CPU and take advantage of their newer processor. In an ideal case, we would be able to build the Pony Runtime to take advantage of the users' system CPU but that would require compiling it on their machine instead of relying on the Pony Runtime compiled on the CI server when compiling executables with Pony.

@dipinhora That makes sense. For the runtime problem, we could build with Clang on Linux, which would enable us to ship the LLVM bitcode version of the runtime in the packages. The downside is that we wouldn't be testing the compiler against GCC anymore (currently we're doing GCC on Linux and Clang on OSX).
@ponylang/core Any input on what we should set as our baseline Travis architecture? If we decide to ship the LLVM bitcode runtime in the packages, generic i686 looks like the best solution.

@Praetonus I had the same thought re: the runtime bitcode and found the existing support in the compiler to rely on it. We'd likely have to make that automatic where if the runtime bitcode file exists, it is used automagically as opposed to having to require the user to pass the option to ponyc. I also found the following reference on Wikipedia LLVM can accept the IR from the GNU Compiler Collection (GCC) toolchain, allowing it to be used with a wide array of extant compilers written for that project. (at https://en.wikipedia.org/wiki/LLVM#Overview_and_description) which would allow us to keep using GCC to compile on Linux (after some testing to confirm that the LLVM in Pony is able to correctly use the GCC IR) but I haven't been able to confirm if that support still exists or if it has been bitrotted/deprecated.
Additionally, IIRC from the ARM cross compiling work, there are some C compile time related decisions that impact how Pony behaves made via IFDEFs that might need revisiting to make more dynamic but my memory on that front is fuzzy and most of these may have already been addressed by the cross compiling work mentioned.
In terms of the baseline target, it's probably a good idea to create two targets, one for 32 bit (i686) and another for 64 bit (x86_64) with Travis only building the 64 bit one by default (as it currently does).

The main issue with using the runtime bitcode by default is that we're running the optimisation pipeline after merging the program and the runtime modules together to get some very good whole-program-optimisations, and that takes a lot of time. But we could certainly supply a --runtimebc-no-wpo flag and use that by default if the bitcode file is found.
I've never worked with GCC's IR but I've heard that it's a pain to work with. I'll look into what can be done.

I'm not sure I follow. Are you saying we would want to default to --runtimebc-no-wpo for the shorter compile times because of the skipped whole-program-optimizations? Isn't that contrary to the second bullet point of the Pony Philosophy about performance?
Also, I have a strong suspicion that note in Wikipedia may have been linked to DragonEgg (http://dragonegg.llvm.org/) which is deprecated at this point. Your suggestion about using clang on linux is likely the best option available for generic compiler packages that still support the highest performance code generation by using the runtime llvm bitcode. This would actually be a performance improvement for anyone with a CPU with features the CI server CPU didn't have.

The performances of a program built with the runtime bitcode without WPO would be the same as a program linked with the static library (or a bit better, because of the possible CPU feature differences). There would certainly be a difference between WPO and non-WPO but that difference would be on the call boundaries between the program and the runtime. Each of the components would still be fully optimised separately in a release build.
I'd say that the large majority of the program builds out there are development builds, where full performance isn't needed, but where compilation times matter. If somebody is doing a production build, they can ask for full WPO.
Actually, we might even want to tune the default behaviour based on the type of build. Or even based on flags when building the compiler itself. I think I'll do a RFC to clarify all of that.
Regarding Clang and GCC, I'm currently considering whether pushing ponyc towards a tighter integration with Clang would be a good thing. That would enable us to do some nice things with FFI and the runtime but the available features of ponyc would depend on the availability of Clang and its libraries. But since LLVM and Clang are a package deal and we already depend on LLVM, maybe that would be feasible. Well, it also deserves a RFC.

NOTE: When I release build or debug build below I'm referring to whether -d is passed to ponyc and not to whether ponyc was build with config=debug or config=release.
I think enabling WPO by default for release builds and disabling it by default for debug builds makes a lot of sense and follows current standards where debug builds disable optimization passes that are enabled for release builds.
Default behavior is already dependent on type of build where the debug builds generate debug info and disable optimization passes where the release builds do the opposite. There are likely other differences also but I'm not aware of all of them.
I can't comment on the Clang coupling much but will gladly lurk and read the RFC. 8*D

I think enabling WPO by default for release builds and disabling it by default for debug builds makes a lot of sense

Agreed.  When I'm iteratively developing and want fast compile times, I always compile my pony programs --debug.  I would omit --debug for a production-ready build, where I care less about compile times.

I believe this should be fixed by #1663. And a new version of pony 0.11.1 will be released soon. Can you please give 0.11.1 a try after it is released and see if your issues are fixed. In the meantime, I'm going to close this issue under the assumption that its been fixed.


[WIP] Allow for registering multiple credentials

Summary
A PR for allowing multiple registrations in the qiskitrc file.
Details and comments
To-do

[X] If multiple providers have the same backend names, then rename to: duplicate_backend@provider1, duplicate_backend@provider2 etc.
[X] Allow accessing backends by extended names when duplicates present.
[ ] Redo tests to allow for multiple registered providers (or perhaps just run tests online, where we know that only a single provider is registered.)

Hi @nonhermitian,
I may missed something but looking at your PR I can't see how to reigster a provider coming from an addon, like the one we have on Aer.
The way we are doing it right now is like:
from qiskit import register, execute
from qiskit_addon_my_simulator import MySimulatorProvider

register(provider_class=MySimulatorProvider)
...
job = execute(quantum_circuit, 'qv_simulator')
result = job.result()

That's how the integration with Terra works at the moment.

Closing in favor of the solution to #925.


Events don't fire in phpunit. How do I make them fire?

So, I've been struck trying to figure out why the events don't fire for Laravel Ban in PHPUnit, but they function just fine when running the code in the browser.
Is there something special that I need to do to test for events in packages and make them fire?
Just an FYI, I ran the Laravel Ban tests and those pass without issue. The code I wrote for my project works just the same as in those tests and in the docs. (Albeit going through application specific code) So, it functions just fine when the browser-based version runs over the LOC that the tests are running.
I've tested to see if PHPUnit runs the service provider to observe the Ban model in the first place, and it runs that code. I've even manually added the code to observe the model, directly into the test as the first line of code, and that doesn't work. I've also removed all mocking from the tests to allow every event to fire, but the observer doesn't fire, and so the code that checks if a model got banned by the observer setting it in the DB properly, fails the check. It just doesn't fire.
Something is vehemently trying to make it NOT fire, and I need to know why. I have a hunch that it has to do with the way the code is bootstrapped.
Here are my tests:
/**
	 * @group current
	 */
	public function testCanSuspendUser()
	{
		$this->expectsEvents(ModelWasBanned::class);

		$user = factory(User::class)->create();
		$this->assertFalse($user->isBanned());

		$user->ban([
			'comment'		=> 'blah',
			'expired_at'	=> null,
		]);

		$this->assertTrue($user->isBanned());
	}

	/**
	 * @group current
	 */
	public function testCanUnsuspendUser()
	{
		$this->expectsEvents(ModelWasUnbanned::class);

		$user = factory(User::class)->create();
		$user->ban();

		$user->unban();

		$this->assertFalse($user->isBanned());
	}

@antonkomarev Try them as tests on the main Laravel app, as that's where I'm running mine from.

@rickmacgillis I see whats the problem.
Don't try to cover many cases within one test. It's good when your test cover only one thing at a time.
/** @test */
public function test_it_can_fire_model_was_banned_event_on_user_ban()
{
    $this->expectsEvents(ModelWasBanned::class);

    $user = factory(User::class)->create();

    $user->ban([
        'comment' => 'blah',
        'expired_at' => null,
    ]);
}

/** @test */
public function it_can_ban_user()
{
    $user = factory(User::class)->create();
    $this->assertFalse($user->fresh()->isBanned());

    $user->ban([
        'comment' => 'blah',
        'expired_at' => null,
    ]);

    $this->assertTrue($user->fresh()->isBanned());
}

Your issue was in line where you are trying to assert that user is banned. You are calling it on model created from factory. It wouldn't have changes made in Observers.

Additionally I recommend to make factory state which will create not banned user.
This construction:
$user = factory(User::class)->create();
$this->assertFalse($user->fresh()->isBanned());

Will be replaced with
$user = factory(User::class)->states('not-banned')->create();

Call it whatever you like. It's just an example.

I'm closing this issue since it's not a bug. Feel free to continue conversation here if you still have any questions.

Code blocks I've provided were successfully tested in my application. I've tried yours and they are working too.
No need to get fresh instance of the model right after its creation. This fresh() call is useless.
$user = factory(User::class)->states('not-banned')->create()->fresh();

You need to get fresh instance after suspend action.
public function testCanSuspendUser()
{
    $user = factory(User::class)->states('not-banned')->create();

    repo('User')->suspend($user, "Test suspension");

    $this->assertTrue($user->fresh()->isBanned());
}

Or when you have to do many checks on the fresh instance you could call refresh() method.
public function testCanSuspendUser()
{
    $user = factory(User::class)->states('not-banned')->create();

    repo('User')->suspend($user, "Test suspension");

    $user->refresh();
    $this->assertTrue($user->isBanned());
    $this->assertNotEmpty($user->bans);
}

I don't know why your events are not firing. What's written in test output, it usually gives you a vision what exactly failed. It should write something like:

These expected events were not fired: [Cog\Laravel\Ban\Events\ModelWasBanned]

@rickmacgillis from the source code.
fresh() method will refetch model and its loaded relations from database and return it.
$freshUser = $user->fresh();
// $freshUser will have fresh instance, and $user wouldn't be modified

Using this way $user will be immutable and your fresh model will be assigned to new variable.
refresh() method will refetch model and its loaded relations from database and reassign all the attributes and relations. Under the hood it will use fresh() method, but additionally will reassign all the attributes and relations.
$user->refresh();
// $user will have fresh instance

@antonkomarev No need. I just enjoyed the banter with someone who can keep up. :) It's not every day I meet someone else who's a high level software engineer.
With the tests failing only on my end then it must be something I need to work out locally when I come off of vacation. (I was working all day every day for weeks on this project, so I'm burned out!)
Thanks for your help.

@rickmacgillis Laravel documentation was updated with fresh & refresh methods.
You can find it in Retrieving Models section.

Thank you.


[tool_crash] FileSystemException: Cannot open file, OS Error: No such file or directory, errno = 2

Command
flutter test --no-sound-null-safety --coverage test/model/url_info_test.dart

Steps to Reproduce

run unit test while in hybrid null-safety mode

Logs
Failed to send crash report due to a network error: SocketException: OS Error: Operation timed out, errno = 60, address =
clients2.google.com, port = 61117
Oops; flutter has exited unexpectedly: "FileSystemException: Cannot open file, path =
'/Users/yang/dora/frontend/creator/build/unit_test_assets/web/assets/fonts.json' (OS Error: No such file or directory, errno =
2)".
A crash report has been written to /Users/yang/dora/frontend/creator/flutter_02.log.

FileSystemException: Cannot open file, OS Error: No such file or directory, errno = 2
#0      _File.open.<anonymous closure> (dart:io/file_impl.dart:356:9)
#1      _rootRunUnary (dart:async/zone.dart:1436:47)
#2      _CustomZone.runUnary (dart:async/zone.dart:1335:19)
<asynchronous suspension>
#3      writeBundle.<anonymous closure> (package:flutter_tools/src/bundle_builder.dart:164:33)
<asynchronous suspension>
#4      Future.wait.<anonymous closure> (dart:async/future.dart)
<asynchronous suspension>
#5      writeBundle (package:flutter_tools/src/bundle_builder.dart:153:3)
<asynchronous suspension>
#6      TestCommand._buildTestAsset (package:flutter_tools/src/commands/test.dart:482:7)
<asynchronous suspension>
#7      TestCommand.runCommand (package:flutter_tools/src/commands/test.dart:322:7)
<asynchronous suspension>
#8      FlutterCommand.run.<anonymous closure> (package:flutter_tools/src/runner/flutter_command.dart:1140:27)
<asynchronous suspension>
#9      AppContext.run.<anonymous closure> (package:flutter_tools/src/base/context.dart:150:19)
<asynchronous suspension>
#10     CommandRunner.runCommand (package:args/command_runner.dart:209:13)
<asynchronous suspension>
#11     FlutterCommandRunner.runCommand.<anonymous closure> (package:flutter_tools/src/runner/flutter_command_runner.dart:288:9)
<asynchronous suspension>
#12     AppContext.run.<anonymous closure> (package:flutter_tools/src/base/context.dart:150:19)
<asynchronous suspension>
#13     FlutterCommandRunner.runCommand (package:flutter_tools/src/runner/flutter_command_runner.dart:236:5)

[✓] Flutter (Channel stable, 2.8.1, on macOS 11.5.2 20G95 darwin-arm, locale zh-Hans-CN)
    • Flutter version 2.8.1 at /Users/yang/.asdf/installs/flutter/2.8.1-stable
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 77d935af4d (3 weeks ago), 2021-12-16 08:37:33 -0800
    • Engine revision 890a5fca2e
    • Dart version 2.15.1
    • Pub download mirror https://pub.flutter-io.cn
    • Flutter download mirror https://storage.flutter-io.cn

[✗] Android toolchain - develop for Android devices
    ✗ Unable to locate Android SDK.
      Install Android Studio from: https://developer.android.com/studio/index.html
      On first launch it will assist you in installing the Android SDK components.
      (or visit https://flutter.dev/docs/get-started/install/macos#android-setup for detailed instructions).
      If the Android SDK has been installed to a custom location, please use
      `flutter config --android-sdk` to update to that location.

[✓] Xcode - develop for iOS and macOS (Xcode 13.2.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • CocoaPods version 1.10.2

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 2020.3)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.10+0-b96-7249189)

[✓] VS Code (version 1.63.2)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.29.0

[✓] Connected device (1 available)
    • Chrome (web) • chrome • web-javascript • Google Chrome 96.0.4664.110

! Doctor found issues in 1 category.

Flutter Application Metadata
Type: app
Version: 0.1.0
Material: true
Android X: false
Module: false
Plugin: false
Android package: null
iOS bundle identifier: null
Creation channel: stable
Creation framework version: f4abaa0735eba4dfd8f33f73363911d63931fe03
Plugins
file_picker-4.3.0
flutter_plugin_android_lifecycle-2.0.5
package_info_plus-1.3.0
package_info_plus_macos-1.3.0
package_info_plus_web-1.0.4
password_credential-0.3.1
path_provider-2.0.8
path_provider_android-2.0.11
path_provider_ios-2.0.7
path_provider_linux-2.1.4
path_provider_macos-2.0.4
path_provider_windows-2.0.4
sentry_flutter-6.2.2
shared_preferences-2.0.11
shared_preferences_android-2.0.9
shared_preferences_ios-2.0.8
shared_preferences_linux-2.0.3
shared_preferences_macos-2.0.2
shared_preferences_web-2.0.2
shared_preferences_windows-2.0.3
sqflite-2.0.1
url_launcher-6.0.17
url_launcher_android-6.0.13
url_launcher_ios-6.0.13
url_launcher_linux-2.0.2
url_launcher_macos-2.0.2
url_launcher_web-2.0.5
url_launcher_windows-2.0.2
video_player-2.2.10
video_player_web-2.0.5

Hi @robturtle, thanks for filing the issue.
Can you provide the logs written to /Users/yang/dora/frontend/creator/flutter_02.log? as well as the test/model/url_info_test.dart test file?
Can you also confirm if /Users/yang/dora/frontend/creator/build/unit_test_assets/web/assets/fonts.json exists?

0. background
All the tests are passing before. Right now I'm migrating null-safety and I'm switching back and forth between dart 2.9 and dart 2.15 (via modifying pubspec.yaml). And afterward all tests are crashing no matter which dart version I selected.
1. flutter_02.log
Flutter crash report.
Please report a bug at https://github.com/flutter/flutter/issues.
command
flutter test --no-sound-null-safety --coverage test/model/url_info_test.dart
exception
FileSystemException: FileSystemException: Cannot open file, path = '/Users/yang/dora/frontend/creator/build/unit_test_assets/web/assets/fonts.json' (OS Error: No such file or directory, errno = 2)
#0      _File.open.<anonymous closure> (dart:io/file_impl.dart:356:9)
#1      _rootRunUnary (dart:async/zone.dart:1436:47)
#2      _CustomZone.runUnary (dart:async/zone.dart:1335:19)
<asynchronous suspension>
#3      writeBundle.<anonymous closure> (package:flutter_tools/src/bundle_builder.dart:164:33)
<asynchronous suspension>
#4      Future.wait.<anonymous closure> (dart:async/future.dart)
<asynchronous suspension>
#5      writeBundle (package:flutter_tools/src/bundle_builder.dart:153:3)
<asynchronous suspension>
#6      TestCommand._buildTestAsset (package:flutter_tools/src/commands/test.dart:482:7)
<asynchronous suspension>
#7      TestCommand.runCommand (package:flutter_tools/src/commands/test.dart:322:7)
<asynchronous suspension>
#8      FlutterCommand.run.<anonymous closure> (package:flutter_tools/src/runner/flutter_command.dart:1140:27)
<asynchronous suspension>
#9      AppContext.run.<anonymous closure> (package:flutter_tools/src/base/context.dart:150:19)
<asynchronous suspension>
#10     CommandRunner.runCommand (package:args/command_runner.dart:209:13)
<asynchronous suspension>
#11     FlutterCommandRunner.runCommand.<anonymous closure> (package:flutter_tools/src/runner/flutter_command_runner.dart:288:9)
<asynchronous suspension>
#12     AppContext.run.<anonymous closure> (package:flutter_tools/src/base/context.dart:150:19)
<asynchronous suspension>
#13     FlutterCommandRunner.runCommand (package:flutter_tools/src/runner/flutter_command_runner.dart:236:5)
<asynchronous suspension>
#14     run.<anonymous closure>.<anonymous closure> (package:flutter_tools/runner.dart:62:9)
<asynchronous suspension>
#15     AppContext.run.<anonymous closure> (package:flutter_tools/src/base/context.dart:150:19)
<asynchronous suspension>
#16     main (package:flutter_tools/executable.dart:94:3)
<asynchronous suspension>

flutter doctor
[✓] Flutter (Channel stable, 2.8.1, on macOS 11.5.2 20G95 darwin-arm, locale zh-Hans-CN)
    • Flutter version 2.8.1 at /Users/yang/.asdf/installs/flutter/2.8.1-stable
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 77d935af4d (3 weeks ago), 2021-12-16 08:37:33 -0800
    • Engine revision 890a5fca2e
    • Dart version 2.15.1
    • Pub download mirror https://pub.flutter-io.cn
    • Flutter download mirror https://storage.flutter-io.cn

[✗] Android toolchain - develop for Android devices
    ✗ Unable to locate Android SDK.
      Install Android Studio from: https://developer.android.com/studio/index.html
      On first launch it will assist you in installing the Android SDK components.
      (or visit https://flutter.dev/docs/get-started/install/macos#android-setup for detailed instructions).
      If the Android SDK has been installed to a custom location, please use
      `flutter config --android-sdk` to update to that location.

[✓] Xcode - develop for iOS and macOS (Xcode 13.2.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • CocoaPods version 1.10.2

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 2020.3)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.10+0-b96-7249189)

[✓] VS Code (version 1.63.2)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.29.0

[✓] Connected device (1 available)
    • Chrome (web) • chrome • web-javascript • Google Chrome 96.0.4664.110

! Doctor found issues in 1 category.

2. url_info_test.dart
It's not relavent, under current setup, all of the previous passing tests are crashing.
3. fonts.json
It's actually exist:

Hi @robturtle, please provide your pubspec.lock as well as pubspec.yaml.

pubspec.lock
# Generated by pub
# See https://dart.dev/tools/pub/glossary#lockfile
packages:
  _fe_analyzer_shared:
    dependency: transitive
    description:
      name: _fe_analyzer_shared
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "31.0.0"
  analyzer:
    dependency: transitive
    description:
      name: analyzer
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "2.8.0"
  archive:
    dependency: transitive
    description:
      name: archive
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "3.1.6"
  args:
    dependency: transitive
    description:
      name: args
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "2.3.0"
  async:
    dependency: transitive
    description:
      name: async
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "2.8.2"
  boolean_selector:
    dependency: transitive
    description:
      name: boolean_selector
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "2.1.0"
  build:
    dependency: transitive
    description:
      name: build
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "2.2.1"
  build_config:
    dependency: transitive
    description:
      name: build_config
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "1.0.0"
  build_daemon:
    dependency: transitive
    description:
      name: build_daemon
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "3.0.1"
  build_resolvers:
    dependency: transitive
    description:
      name: build_resolvers
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "2.0.6"
  build_runner:
    dependency: "direct main"
    description:
      name: build_runner
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "2.1.7"
  build_runner_core:
    dependency: transitive
    description:
      name: build_runner_core
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "7.2.3"
  built_collection:
    dependency: transitive
    description:
      name: built_collection
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "5.1.1"
  built_value:
    dependency: transitive
    description:
      name: built_value
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "8.1.3"
  cached_network_image:
    dependency: "direct main"
    description:
      name: cached_network_image
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "3.2.0"
  cached_network_image_platform_interface:
    dependency: transitive
    description:
      name: cached_network_image_platform_interface
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "1.0.0"
  cached_network_image_web:
    dependency: transitive
    description:
      name: cached_network_image_web
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "1.0.1"
  cassowary:
    dependency: "direct main"
    description:
      name: cassowary
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "0.4.0"
  characters:
    dependency: transitive
    description:
      name: characters
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "1.2.0"
  charcode:
    dependency: transitive
    description:
      name: charcode
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "1.3.1"
  checked_yaml:
    dependency: transitive
    description:
      name: checked_yaml
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "2.0.1"
  cli_util:
    dependency: transitive
    description:
      name: cli_util
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "0.3.5"
  clock:
    dependency: transitive
    description:
      name: clock
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "1.1.0"
  code_builder:
    dependency: transitive
    description:
      name: code_builder
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "4.1.0"
  code_editor:
    dependency: "direct main"
    description:
      name: code_editor
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "1.3.1"
  collection:
    dependency: "direct main"
    description:
      name: collection
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "1.15.0"
  convert:
    dependency: transitive
    description:
      name: convert
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "3.0.1"
  coverage:
    dependency: transitive
    description:
      name: coverage
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "1.0.3"
  crypto:
    dependency: "direct main"
    description:
      name: crypto
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "3.0.1"
  csslib:
    dependency: transitive
    description:
      name: csslib
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "0.17.1"
  dart_style:
    dependency: transitive
    description:
      name: dart_style
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "2.2.1"
  dependency_validator:
    dependency: "direct dev"
    description:
      name: dependency_validator
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "3.1.2"
  device_frame:
    dependency: transitive
    description:
      name: device_frame
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "0.6.1"
  fake_async:
    dependency: transitive
    description:
      name: fake_async
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "1.2.0"
  ffi:
    dependency: transitive
    description:
      name: ffi
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "1.1.2"
  file:
    dependency: transitive
    description:
      name: file
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "6.1.2"
  file_picker:
    dependency: "direct main"
    description:
      name: file_picker
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "4.3.0"
  fixnum:
    dependency: transitive
    description:
      name: fixnum
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "1.0.0"
  flutter:
    dependency: "direct main"
    description: flutter
    source: sdk
    version: "0.0.0"
  flutter_blurhash:
    dependency: transitive
    description:
      name: flutter_blurhash
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "0.6.0"
  flutter_cache_manager:
    dependency: transitive
    description:
      name: flutter_cache_manager
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "3.3.0"
  flutter_driver:
    dependency: "direct dev"
    description: flutter
    source: sdk
    version: "0.0.0"
  flutter_easyloading:
    dependency: "direct main"
    description:
      name: flutter_easyloading
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "3.0.3"
  flutter_highlight:
    dependency: transitive
    description:
      name: flutter_highlight
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "0.7.0"
  flutter_lints:
    dependency: "direct dev"
    description:
      name: flutter_lints
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "1.0.4"
  flutter_plugin_android_lifecycle:
    dependency: transitive
    description:
      name: flutter_plugin_android_lifecycle
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "2.0.5"
  flutter_spinkit:
    dependency: transitive
    description:
      name: flutter_spinkit
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "5.1.0"
  flutter_test:
    dependency: "direct dev"
    description: flutter
    source: sdk
    version: "0.0.0"
  flutter_web_plugins:
    dependency: "direct main"
    description: flutter
    source: sdk
    version: "0.0.0"
  font_awesome_flutter:
    dependency: transitive
    description:
      name: font_awesome_flutter
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "9.2.0"
  freezed_annotation:
    dependency: transitive
    description:
      name: freezed_annotation
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "0.15.0"
  frontend_server_client:
    dependency: transitive
    description:
      name: frontend_server_client
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "2.1.2"
  fuchsia_remote_debug_protocol:
    dependency: transitive
    description: flutter
    source: sdk
    version: "0.0.0"
  get:
    dependency: "direct main"
    description:
      name: get
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "4.6.1"
  glob:
    dependency: transitive
    description:
      name: glob
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "2.0.2"
  google_fonts:
    dependency: "direct main"
    description:
      name: google_fonts
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "2.2.0"
  graphs:
    dependency: transitive
    description:
      name: graphs
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "2.1.0"
  highlight:
    dependency: transitive
    description:
      name: highlight
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "0.7.0"
  html:
    dependency: transitive
    description:
      name: html
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "0.15.0"
  http:
    dependency: "direct main"
    description:
      name: http
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "0.13.4"
  http_multi_server:
    dependency: transitive
    description:
      name: http_multi_server
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "3.0.1"
  http_parser:
    dependency: transitive
    description:
      name: http_parser
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "4.0.0"
  intl:
    dependency: "direct main"
    description:
      name: intl
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "0.17.0"
  io:
    dependency: transitive
    description:
      name: io
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "1.0.3"
  js:
    dependency: "direct main"
    description:
      name: js
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "0.6.3"
  json_annotation:
    dependency: "direct main"
    description:
      name: json_annotation
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "4.4.0"
  json_serializable:
    dependency: "direct main"
    description:
      name: json_serializable
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "6.1.3"
  lints:
    dependency: transitive
    description:
      name: lints
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "1.0.1"
  logger:
    dependency: "direct main"
    description:
      name: logger
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "1.1.0"
  logging:
    dependency: transitive
    description:
      name: logging
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "1.0.2"
  matcher:
    dependency: transitive
    description:
      name: matcher
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "0.12.11"
  matrix4_transform:
    dependency: "direct main"
    description:
      name: matrix4_transform
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "2.0.1"
  meta:
    dependency: transitive
    description:
      name: meta
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "1.7.0"
  mime:
    dependency: transitive
    description:
      name: mime
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "1.0.1"
  mockito:
    dependency: "direct dev"
    description:
      name: mockito
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "5.0.17"
  nanoid:
    dependency: "direct main"
    description:
      name: nanoid
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "1.0.0"
  nested:
    dependency: transitive
    description:
      name: nested
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "1.0.0"
  node_preamble:
    dependency: transitive
    description:
      name: node_preamble
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "2.0.1"
  octo_image:
    dependency: transitive
    description:
      name: octo_image
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "1.0.1"
  package_config:
    dependency: transitive
    description:
      name: package_config
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "2.0.2"
  package_info_plus:
    dependency: transitive
    description:
      name: package_info_plus
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "1.3.0"
  package_info_plus_linux:
    dependency: transitive
    description:
      name: package_info_plus_linux
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "1.0.3"
  package_info_plus_macos:
    dependency: transitive
    description:
      name: package_info_plus_macos
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "1.3.0"
  package_info_plus_platform_interface:
    dependency: transitive
    description:
      name: package_info_plus_platform_interface
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "1.0.2"
  package_info_plus_web:
    dependency: "direct main"
    description:
      name: package_info_plus_web
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "1.0.4"
  package_info_plus_windows:
    dependency: transitive
    description:
      name: package_info_plus_windows
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "1.0.4"
  password_credential:
    dependency: "direct main"
    description:
      name: password_credential
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "0.3.1"
  path:
    dependency: transitive
    description:
      name: path
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "1.8.0"
  path_provider:
    dependency: transitive
    description:
      name: path_provider
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "2.0.8"
  path_provider_android:
    dependency: transitive
    description:
      name: path_provider_android
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "2.0.11"
  path_provider_ios:
    dependency: transitive
    description:
      name: path_provider_ios
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "2.0.7"
  path_provider_linux:
    dependency: transitive
    description:
      name: path_provider_linux
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "2.1.4"
  path_provider_macos:
    dependency: transitive
    description:
      name: path_provider_macos
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "2.0.4"
  path_provider_platform_interface:
    dependency: transitive
    description:
      name: path_provider_platform_interface
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "2.0.2"
  path_provider_windows:
    dependency: transitive
    description:
      name: path_provider_windows
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "2.0.4"
  pedantic:
    dependency: transitive
    description:
      name: pedantic
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "1.11.1"
  petitparser:
    dependency: "direct main"
    description:
      name: petitparser
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "4.4.0"
  platform:
    dependency: transitive
    description:
      name: platform
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "3.0.2"
  plugin_platform_interface:
    dependency: transitive
    description:
      name: plugin_platform_interface
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "2.1.0"
  pool:
    dependency: transitive
    description:
      name: pool
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "1.5.0"
  process:
    dependency: transitive
    description:
      name: process
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "4.2.4"
  provider:
    dependency: "direct main"
    description:
      name: provider
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "6.0.2"
  pub_semver:
    dependency: transitive
    description:
      name: pub_semver
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "2.1.0"
  pubspec_parse:
    dependency: transitive
    description:
      name: pubspec_parse
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "1.2.0"
  quiver:
    dependency: "direct main"
    description:
      name: quiver
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "3.0.1+1"
  recase:
    dependency: transitive
    description:
      name: recase
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "4.0.0"
  rxdart:
    dependency: transitive
    description:
      name: rxdart
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "0.27.3"
  sentry:
    dependency: transitive
    description:
      name: sentry
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "6.2.2"
  sentry_flutter:
    dependency: "direct main"
    description:
      name: sentry_flutter
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "6.2.2"
  shared_preferences:
    dependency: "direct main"
    description:
      name: shared_preferences
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "2.0.11"
  shared_preferences_android:
    dependency: transitive
    description:
      name: shared_preferences_android
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "2.0.9"
  shared_preferences_ios:
    dependency: transitive
    description:
      name: shared_preferences_ios
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "2.0.8"
  shared_preferences_linux:
    dependency: transitive
    description:
      name: shared_preferences_linux
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "2.0.3"
  shared_preferences_macos:
    dependency: transitive
    description:
      name: shared_preferences_macos
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "2.0.2"
  shared_preferences_platform_interface:
    dependency: transitive
    description:
      name: shared_preferences_platform_interface
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "2.0.0"
  shared_preferences_web:
    dependency: "direct main"
    description:
      name: shared_preferences_web
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "2.0.2"
  shared_preferences_windows:
    dependency: transitive
    description:
      name: shared_preferences_windows
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "2.0.3"
  shelf:
    dependency: transitive
    description:
      name: shelf
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "1.2.0"
  shelf_packages_handler:
    dependency: transitive
    description:
      name: shelf_packages_handler
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "3.0.0"
  shelf_static:
    dependency: transitive
    description:
      name: shelf_static
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "1.1.0"
  shelf_web_socket:
    dependency: transitive
    description:
      name: shelf_web_socket
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "1.0.1"
  sky_engine:
    dependency: transitive
    description: flutter
    source: sdk
    version: "0.0.99"
  socket_io_client:
    dependency: "direct main"
    description:
      name: socket_io_client
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "1.0.2"
  socket_io_common:
    dependency: transitive
    description:
      name: socket_io_common
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "1.0.1"
  source_gen:
    dependency: transitive
    description:
      name: source_gen
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "1.2.1"
  source_helper:
    dependency: transitive
    description:
      name: source_helper
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "1.3.1"
  source_map_stack_trace:
    dependency: transitive
    description:
      name: source_map_stack_trace
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "2.1.0"
  source_maps:
    dependency: transitive
    description:
      name: source_maps
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "0.10.10"
  source_span:
    dependency: transitive
    description:
      name: source_span
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "1.8.1"
  sqflite:
    dependency: transitive
    description:
      name: sqflite
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "2.0.1"
  sqflite_common:
    dependency: transitive
    description:
      name: sqflite_common
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "2.2.0"
  stack_trace:
    dependency: "direct main"
    description:
      name: stack_trace
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "1.10.0"
  sticky_headers:
    dependency: "direct main"
    description:
      name: sticky_headers
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "0.2.0"
  storybook_flutter:
    dependency: "direct main"
    description:
      name: storybook_flutter
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "0.8.0"
  stream_channel:
    dependency: transitive
    description:
      name: stream_channel
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "2.1.0"
  stream_transform:
    dependency: transitive
    description:
      name: stream_transform
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "2.0.0"
  string_scanner:
    dependency: transitive
    description:
      name: string_scanner
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "1.1.0"
  sync_http:
    dependency: transitive
    description:
      name: sync_http
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "0.3.0"
  synchronized:
    dependency: transitive
    description:
      name: synchronized
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "3.0.0"
  term_glyph:
    dependency: transitive
    description:
      name: term_glyph
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "1.2.0"
  test:
    dependency: "direct dev"
    description:
      name: test
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "1.17.12"
  test_api:
    dependency: transitive
    description:
      name: test_api
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "0.4.3"
  test_core:
    dependency: transitive
    description:
      name: test_core
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "0.4.2"
  timing:
    dependency: transitive
    description:
      name: timing
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "1.0.0"
  tuple:
    dependency: "direct main"
    description:
      name: tuple
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "2.0.0"
  typed_data:
    dependency: transitive
    description:
      name: typed_data
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "1.3.0"
  universal_html:
    dependency: "direct main"
    description:
      name: universal_html
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "2.0.8"
  universal_io:
    dependency: "direct main"
    description:
      name: universal_io
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "2.0.4"
  url_launcher:
    dependency: "direct main"
    description:
      name: url_launcher
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "6.0.17"
  url_launcher_android:
    dependency: transitive
    description:
      name: url_launcher_android
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "6.0.13"
  url_launcher_ios:
    dependency: transitive
    description:
      name: url_launcher_ios
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "6.0.13"
  url_launcher_linux:
    dependency: transitive
    description:
      name: url_launcher_linux
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "2.0.2"
  url_launcher_macos:
    dependency: transitive
    description:
      name: url_launcher_macos
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "2.0.2"
  url_launcher_platform_interface:
    dependency: transitive
    description:
      name: url_launcher_platform_interface
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "2.0.5"
  url_launcher_web:
    dependency: "direct main"
    description:
      name: url_launcher_web
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "2.0.5"
  url_launcher_windows:
    dependency: transitive
    description:
      name: url_launcher_windows
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "2.0.2"
  uuid:
    dependency: transitive
    description:
      name: uuid
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "3.0.5"
  vector_math:
    dependency: transitive
    description:
      name: vector_math
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "2.1.1"
  video_player:
    dependency: "direct main"
    description:
      name: video_player
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "2.2.10"
  video_player_platform_interface:
    dependency: transitive
    description:
      name: video_player_platform_interface
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "5.0.1"
  video_player_web:
    dependency: "direct main"
    description:
      name: video_player_web
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "2.0.5"
  vm_service:
    dependency: transitive
    description:
      name: vm_service
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "7.3.0"
  watcher:
    dependency: transitive
    description:
      name: watcher
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "1.0.1"
  web_fonts:
    dependency: "direct main"
    description:
      name: web_fonts
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "1.1.0"
  web_socket_channel:
    dependency: transitive
    description:
      name: web_socket_channel
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "2.1.0"
  webdriver:
    dependency: transitive
    description:
      name: webdriver
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "3.0.0"
  webkit_inspection_protocol:
    dependency: transitive
    description:
      name: webkit_inspection_protocol
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "1.0.0"
  win32:
    dependency: transitive
    description:
      name: win32
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "2.3.3"
  xdg_directories:
    dependency: transitive
    description:
      name: xdg_directories
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "0.2.0"
  yaml:
    dependency: transitive
    description:
      name: yaml
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "3.1.0"
sdks:
  dart: ">=2.15.0 <3.0.0"
  flutter: ">=2.5.0"

pubspec.yaml
name: flutterapp
description: A new Flutter application.

# The following line prevents the package from being accidentally published to
# pub.dev using `pub publish`. This is preferred for private packages.
publish_to: 'none' # Remove this line if you wish to publish to pub.dev

# The following defines the version and build number for your application.
# A version number is three numbers separated by dots, like 1.2.43
# followed by an optional build number separated by a +.
# Both the version and the util.builder number may be overridden in flutter
# build by specifying --build-name and --build-number, respectively.
# In Android, build-name is used as versionName while build-number used as versionCode.
# Read more about Android versioning at https://developer.android.com/studio/publish/versioning
# In iOS, build-name is used as CFBundleShortVersionString while build-number used as CFBundleVersion.
# Read more about iOS versioning at
# https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html
#
# 部署到生产环境前务必要更改版本号
# TODO: git 部署前检查版本号是否变化
# TODO: 如存在 feat 要求自增小版本号：0.1.2 -> 0.2.0
# TODO: 若否，如存在 fix/refactor/style 要求自增补丁号：0.1.2 -> 0.1.3
# TODO: 若否，全是 chore/docs/test 的非源码更改情况下不应该改版本
# TODO: 不允许在此添加 preview, build 部分（预留给测试环境和泳道环境自动化流程使用）（即禁用类似 0.1.2-alpha, 0.1.2+20211201 的版本号）
version: 0.1.0

environment:
  sdk: ">=2.7.0 <3.0.0"

dependencies:
  build_runner: any
  cached_network_image: any
  cassowary: any
  code_editor: any
  collection: any
  crypto: any
  file_picker: any
  flutter:
    sdk: flutter
  flutter_easyloading: any
  flutter_web_plugins:
    sdk: flutter
  get: any
  google_fonts: any
  http: any
  intl: any
  js: any
  json_annotation: any
  json_serializable: any
  logger: any
  matrix4_transform: any
  nanoid: any
  package_info_plus_web: any
  password_credential: any
  petitparser: any
  provider: any
  quiver: any
  sentry_flutter: any
  shared_preferences: any
  shared_preferences_web: any
  socket_io_client: any
  stack_trace: any
  sticky_headers: any
  storybook_flutter: any
  tuple: any
  universal_html: any
  universal_io: any
  url_launcher: any
  url_launcher_web: any
  video_player: any
  video_player_web: any
  web_fonts: any

dev_dependencies:
  dependency_validator: any
  flutter_driver:
    sdk: flutter
  flutter_test:
    sdk: flutter
  mockito: any
  test: any
  flutter_lints: any

# For information on the generic Dart part of this file, see the
# following page: https://dart.dev/tools/pub/pubspec
# The following section is specific to Flutter.
flutter:

  #fonts:
  #  - family: Inter
  #    fonts:
  #      - asset: fonts/Inter-Regular.ttf
  #      - asset: fonts/Inter-Medium.ttf
  #        weight: 700
  # The following line ensures that the Material Icons font is
  # included with your application, so that you can use the icons in
  # the material Icons class.
  uses-material-design: true

  assets:
    - images/
    - html/
    - google_fonts/
    - fonts.json
  # To add assets to your application, add an assets section, like this:
  # assets:
  #   - images/a_dot_burr.jpeg
  #   - images/a_dot_ham.jpeg
  # An image asset can refer to one or more resolution-specific "variants", see
  # https://flutter.dev/assets-and-images/#resolution-aware.
  # For details regarding adding assets from package dependencies, see
  # https://flutter.dev/assets-and-images/#from-packages
  # To add custom fonts to your application, add a fonts section here,
  # in this "flutter" section. Each entry in this list should have a
  # "family" key with the font family name, and a "fonts" key with a
  # list giving the asset and other descriptors for the font. For
  # example:
  # fonts:
  #   - family: Schyler
  #     fonts:
  #       - asset: fonts/Schyler-Regular.ttf
  #       - asset: fonts/Schyler-Italic.ttf
  #         style: italic
  #   - family: Trajan Pro
  #     fonts:
  #       - asset: fonts/TrajanPro.ttf
  #       - asset: fonts/TrajanPro_Bold.ttf
  #         weight: 700
  #
  # For details regarding fonts from package dependencies,
  # see https://flutter.dev/custom-fonts/#from-packages

Another interest fact is that my team members who are not frequently switching flutter versions (they stick with flutter 2.8.1) have no problem running the tests.

That isn't surprising as tool crashes usually occur because of some unknown factors. Possibly differences in setup and the likes.
Leaving this open for further investigation.

I found the reason: during the setup, I input flutter config --build-dir=build/storybook and forgot to changed it back. Somehow the test seem to get confused by the file locations.

Hi @robturtle, is it safe to assume that your issue has been resolved based on your above comment?

mine was resolved. However the behavior is not desirable -- changing the build dir should not crash the unit tests.

dupe? https://github.com/flutter/flutter/issues/68958


GH-1106 - addressed contentTyped compatibility issues

This PR consists of 3 commits. One from @sobychacko 6c259be which addresses the consumer side of things and two from me where the first commit addresses the producer side of things related to content type compatibility fixes. More details in individual commit. The third commit simply restored tests that use MessageCollector to depend on proper payload type

Codecov Report

Merging #1115 into master will increase coverage by 0.27%.
The diff coverage is 31.25%.

@@             Coverage Diff              @@
##             master    #1115      +/-   ##
============================================
+ Coverage     56.95%   57.22%   +0.27%
- Complexity      667      677      +10
============================================
  Files           122      122
  Lines          3408     3425      +17
  Branches        484      486       +2
============================================
+ Hits           1941     1960      +19
+ Misses         1308     1305       -3
- Partials        159      160       +1

Impacted Files
Coverage Δ
Complexity Δ

...ngframework/cloud/stream/binder/BinderHeaders.java
33.33% <ø> (ø)
1 <0> (ø)
:arrow_down:

...amework/cloud/stream/config/BindingProperties.java
57.57% <ø> (-5.59%)
13 <0> (-2)

...gframework/cloud/stream/binder/AbstractBinder.java
0% <ø> (ø)
0 <0> (ø)
:arrow_down:

...ud/stream/binder/AbstractMessageChannelBinder.java
0% <0%> (ø)
0 <0> (ø)
:arrow_down:

...rk/cloud/stream/test/binder/TestSupportBinder.java
93.54% <100%> (+0.21%)
4 <0> (ø)
:arrow_down:

...oud/stream/binding/MessageConverterConfigurer.java
72.72% <100%> (+1.67%)
16 <0> (ø)
:arrow_down:

...cloud/stream/binder/MessageSerializationUtils.java
23.91% <18.91%> (+23.91%)
4 <3> (+4)
:arrow_up:

...ngframework/cloud/stream/binder/MessageValues.java
64.86% <0%> (+13.51%)
10% <0%> (+3%)
:arrow_up:

...am/binder/StringConvertingContentTypeResolver.java
57.14% <0%> (+57.14%)
5% <0%> (+5%)
:arrow_up:

Continue to review full report at Codecov.

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

Tried this PR against the TaskProcessor tests and it looks like we are getting the JSON vs. the actual class as shown below:
Expected: Channel to receive a message whose payload is <TaskLaunchRequest{uri='maven://org.springframework.cloud.task.app:timestamp-task:jar:1.0.1.RELEASE', commandlineArguments=[], environmentProperties={payload=hello}, deploymentProperties={}}>
     but: received: "{\"uri\":\"maven://org.springframework.cloud.task.app:timestamp-task:jar:1.0.1.RELEASE\",\"commandlineArguments\":[],\"environmentProperties\":{\"payload\":\"hello\"},\"deploymentProperties\":{},\"applicationName\":\"Task-67c130ec-bfc2-4867-a588-ae80c1090077\"}"

Is this to be expected?

After talking it over with Oleg.  The downstream apps will convert the JSON to the POJO.  So in this case I will update the test, since the Stream Test Framework does not convert the JSON to POJO.

After discussing with the team and to clarify (in interim) what these fixes are(arn't) addressing (although this may still change, so I'll follow up):

The backward/forward compatibility between the messages has been restored for majority of the use cases, where byte[] representing the data on the wire represent either a raw/binary data (data that always existed as byte[]) or text type communicated through contentType header.
There are still concerns for cases where message payload is represented as POJO especially after removing the dependency on Cryo. Those concerns are split between producer and consumer:
2.1 On the producer side we seem to have a good handle on converting POJOs to byte[] via JavaSerializationMessageConverter. However we can only do it if contentType is set to application/x-java-serialized-object and POJO is Serializable.
2.2 On the consumer side we do not have the appropriate interceptor in the stack to do the oposite
At the very least we need to adress 2.2 to make it fully symetrical to 2.1. However we are still thinking of possibility of bringing Cryo back to ensure full compatibility between the messages from different versions of SCSt.

LGTM - polished, squashed and merged upstream.


Flutter Getx: How to create single page with url?

I am trying to create an app single page by using Getx.
When the user changes the URL, the page will change some widgets but Getx still moves to the same page(Observed from the movement when turning pages).
You can try by print(); in the initState() of Home().
It will print every you switch the URL.
Now, I am using:
getPages: [
        GetPage(
            name: "Page 1",
            page: () {
              globals.page= "Page 1";
              return Home();
            }),
        GetPage(
            name: "Page 2",
            page: () {
              globals.page= "Page 2";
              return Home();
            }),
    ]

How to solve it? I am looking like:
getPages: [
       GetPage(
           name: ["Page 1","Page 2"],
           page: () => Home(),
           refreshPageWidget: false,     //Don't return widget from page:
           onSamePage:  (String url) {     //Do it when routing to the original page.
             if(url == "Page 1"){
                globals.page= "Page 1";
             }else{
                globals.page= "Page 2";
             }
           }),
         ]

I don't want this anymore.
I can use setState to change the page and use a function that can change the url.


Add getMentionedX for all guild channels

Pull Request Etiquette

[x] I have checked the PRs for upcoming features/bug fixes.
[x] I have read the contributing guidelines.

Changes

[ ] Internal code
[x] Library interface (affecting end-user code)
[ ] Documentation
[ ] Other: _____

Closes Issue: NaN
Description
This PR adds getMentionedX() and getMentionedXBag() for all GuildChannels, which allows to retrieve mentions for a specific Channel type in a message. I'm not sure about the usefulness of the getMentionedXBag() methods as these could be easily replicated without the need of an extra method. Also, I'm not sure which characters to use here.

You can't mention categories, so the getMentionedCategories method could probably be removed.

You can't mention categories, so the getMentionedCategories method could probably be removed.

You kinda can but it's not directly supported by the Discord client.

I'm placing this on hold. One of the things we're discussing in the JDA 5 rework is something like Message#getMentions() : MessageMentions which would move all mention methods into a separate object.

Superseded by #1835


Add Optional Hash Algorithm to ECDSA Interface (#29)

This PR addresses Issue #29 by adding an optional HashAlgorithm parameter to ECDSA's signMessage and verifySignature methods. The update maintains backward compatibility, passing all existing tests without modification.

Thanks for taking on ECDSA should have a (optional?) hash parameter #29. I only had to add #include <functional> to gestalt/ecdsa.h for it to compile.
All tests are passing with this PR.


MongoObserver fails to add metrics to run.info

A similar (and likely related) problem was first reported in #691, but nobody seemed to care?
I initially reported this issue with Omniboard where metrics were not showing up in the list of runs, but could be viewed just fine within the detailed view. The Omniboard maintainer was very helpful and tracked it down to the references to the metrics collection missing from an affacted run's info.
I narrowed the conditions under which this happens down to this:
Call Experiment.run from automain function
With this setup the MongoObserver never adds the metrics references to the info field of the final run. FileStorageObserver doesn't care and works as expected. In #691 the main function is run several times to produce the issue.
Add a NeptuneObserver. Doesn't matter if it's added before or after the MongoObserver
Now any run is randomly missing the metrics references.
Unsure if this is specific to the NeptuneObserver or if it's caused by the slight delay that the network communication it does introduces. Adding FileStorageObserver doesn't make a difference.
Here's a simple example of what my experiment looks like (obviously needs neptune credentials to reproduce that part):
import time
import os.path as pt
import json

from sacred import Experiment
from sacred.observers import MongoObserver
from sacred.observers import FileStorageObserver
from neptunecontrib.monitoring.sacred import NeptuneObserver

with open(pt.expanduser(pt.join('~', '.config', 'sacred.conf'))) as f:
    CONF = json.load(f)
MONGO_ADDR = CONF['mongo_addr']
MONGO_USER = CONF['mongo_user']
MONGO_PASS = CONF['mongo_pass']

exp = Experiment()
# exp.observers.append(FileStorageObserver('sacredbug'))
exp.observers.append(NeptuneObserver(
    project_name='jfolz/sacredbug',
))
exp.observers.append(MongoObserver(
    url=f'mongodb://{MONGO_USER}:{MONGO_PASS}@{MONGO_ADDR}/sacredbug',
    db_name='sacredbug',
))

@exp.config
def config():
    arg1 = 1
    arg2 = 2
    arg3 = 3

@exp.command
def some_command(arg1, arg2, arg3, arg4):
    for i in range(arg4):
        # time.sleep(1)
        exp.log_scalar('important_value', arg1+arg2+arg3+arg4, i)

@exp.automain
def main(arg1, arg2, arg3):
    for i in range(1, 11):
        exp.run('some_command', config_updates=dict(arg4=i))

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

Still broken.


Req/Res with alternate

Hi,
Is it possible to create a Req/Res config with an alternate exchange?
Req specify the alternate exchange and the res connect to the exchange with try to create it and do not need to include the alternate exchange.
Regards
Ben

I found a way of doing this.
Sorry


Update es6

@vikasrohit Hey Vikas, I updated the code a little bit. I'm using the pattern that is recommended in the React docs to use ES6 classes for components that use state, and functional components for ones without state (only props). Not sure how we'll enforce the code styling for the community unless we add linting into the react-components Travis build to run linting on the code. I guess I'll also need to add code style rules into the readme.md... I'll try to do that asap, maybe tonight if I can get to it.

Awesome @nlitwin  Thanks for the hard work. I am merging your changes into dev so that I can update community to use the latest guidelines for new components and would ask them to adhere to these for already completed ones, in final fixes.


Remove default nodeSelector configuration for dask-gateway core pods (controller and api)

The dask-gateway helm charts comes with three core pods: api, controller, traefik. Two of these have been explicitly required to schedule on k8s nodes with the label k8s.dask.org/node-purpose: core. But not all three pods, only api and controller.
https://github.com/2i2c-org/infrastructure/blob/840b3bdf6d643ce0f27ed286cbfe78a00492f28d/helm-charts/daskhub/values.yaml#L105-L110
I think everything would be fine if this configuration just isn't done at all for api and controller. It adds complexity forcing users to create k8s nodes with this label but doesn't add clear value in my mind - just like it doesn't add value to declare a node label specific for grafana, prometheus, cert-manager, and other such pods.
A dedicated nodeSelector for on demand user created worker and scheduler pods (together makes up a Dask Cluster created on demand) could still make perfect sense. So I'm just suggesting that controller.nodeSelector and gateway.nodeSelector (api pod) isn't set.
Related

https://github.com/2i2c-org/infrastructure/pull/1573#issuecomment-1199181157

I just wanna make sure they end up on the core nodepool, and not on any of the user or dask-worker pools.

If they are tainted, we should be good!


get etcd endpoint from environment variable

Hi,
Thanks for the gr8 work
if it possible, please add the ability to set ETCD endpoint from environment variable,
currently you are using Cookies.get('etcd-endpoint');
var etcdBase = Cookies.get('etcd-endpoint');
if(typeof(etcdBase) === 'undefined') {
etcdBase = '<IP_ADDRESS>:2379';

This is done to facilitate different users or browser clients to access different etcd services. Environment variables can only access an etcd service, it is not convenient for a client to access multiple etcd.


Compiler segfault: deducing typenames for template-kernels

hipcc has problems to identify/deduce typenames for template kernels.
It crashes yielding clang-9 segmentation fault
>> hipcc --version
HIP version: 1.5.19123
HCC clang version 9.0.0 (/data/jenkins_workspace/compute-rocm-rel-2.3/external/hcc-tot/clang 785f31db116e742ac53d052e207979869a857d1a) (/data/jenkins_workspace/compute-rocm-rel-2.3/external/hcc-tot/compiler 87f982f8ce2b85ce824f91bf8c2c90f6843a50a3) (based on HCC 1.3.19115-9b3a740-785f31d-87f982f )
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /opt/rocm/hcc/bin

The following 2 code-samples reproduce the crash when compiling them with hipcc -c code.cpp

#include <stdlib.h>
#include <hip/hip_runtime.h>

template<typename T>
__global__ void kernel(T* arg1, T arg2)
{
    //do something with arg1 and arg2
}

int main()
{
    float *arg1, *arg2;
    hipLaunchKernelGGL(kernel, dim3(1), dim3(1), 0, 0, arg1, arg2);
    return 0;
}

#include <stdlib.h>
#include <hip/hip_runtime.h>

template<typename T>
__global__ void kernel(T* arg1, T arg2)
{
    //do something with arg1 and arg2
}

int main()
{
    float *arg1, *arg2;
    hipLaunchKernelGGL(kernel<float>, dim3(1), dim3(1), 0, 0, arg1, arg2);
    return 0;
}

What I would expect is the same error messages that one gets if kernel() is a simple CPU function:

In the first case the compiler should not be able to deduce the typename T

exap.cpp:15:5: error: no matching function for call to 'kernel'
    kernel(arg1,arg2);
    ^~~~~~
exap.cpp:6:6: note: candidate template ignored: deduced conflicting types for parameter 'T' ('float' vs. 'float *')
void kernel(T* arg1, T arg2)

In the second case, as the typename T is specified as float, the compiler should not able to convert float* to float to match the function prototype

exap.cpp:15:5: error: no matching function for call to 'kernel'
    kernel<float>(arg1,arg2);
    ^~~~~~~~~~~~~
exap.cpp:6:6: note: candidate function template not viable: no known conversion from 'float *' to 'float' for 2nd argument; dereference the argument with *
void kernel(T* arg1, T arg2)

I have the same error. Do you know how to deal with it now?

Hi @jzuniga-amd, do you still see this issue with latest ROCm 6.0.2 (HIP 6.0.32831)? Thanks.

This is the version that I currently have installed on my workstation:
jcarzu@cgy-cubone:~$ hipcc --version
HIP version: 6.0.32830-d62f6a171
AMD clang version 17.0.0

The compiler does now what is expected.

Thanks @jzuniga-amd.  I will close the ticket now.


Add npm tab to analytics.js docs

@silesky it doesn't make sense to include the NPM tab in the location that you want to add it. Currently those tabs are for adding the Segment snippet. But, what you want to add are complete steps for adding NPM. There's already a link above that says "You can add Segment to your project as an NPM package. For more information, see the instructions on GitHub."

@silesky it doesn't make sense to include the NPM tab in the location that you want to add it. Currently those tabs are for adding the Segment snippet. But, what you want to add are complete steps for adding NPM. There's already a link above that says "You can add Segment to your project as an NPM package. For more information, see the instructions on GitHub."

My take was that I saw those as general install instructions? I also thought we should better encourage people to use the npm version of the library, as that's the most modern approach and it is quite familiar to developers. It's also quite common to have snippet and npm in tabs, e.g. intercom.io onboarding.

I see what you're saying, let's schedule a meeting to see if we can find a better way to incorporate npm into the docs

closing this out as it's related to #5854


Implement statfs with synthetic values

Description of change
Draft prototype change for now. May not be merged.
Some applications do not work as expected when a file system reports available space as zero. Some applications may check for available space, and fail if that's a small number (like zero). I believe even df -h will not report the file system in the list by default for some reason - and this may fix it (TBC).
Next steps:

Are these the right fields to change? What use cases are we solving?
Confirm that we do actually want to implement statfs by default, diverging from the values provided by Fuser.
Converge on an agreed value for these fields.

u64 max may have some unexpected consequences - we have no idea. Half of u64 is probably large enough.
u32 max is too small - that would only be a bit over 4TiB using default block size of 1024.
In 2021, AWS shared that there are over 100 trillion objects in Amazon S3. Maybe we could take inspiration from there. https://aws.amazon.com/blogs/aws/amazon-s3s-15th-birthday-it-is-still-day-1-after-5475-days-100-trillion-objects/

Merge.

Relevant issues: #710
Does this change impact existing behavior?
Mountpoint will now report a non-zero number of available blocks, free blocks, and free files. Before, it reported zero for all three values.

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license and I agree to the terms of the Developer Certificate of Origin (DCO).

How do we think this should show up in df? This is what I now get on AL2:
$ df -ha
Filesystem      Size  Used Avail Use% Mounted on
[...]
mountpoint-s3      0 -4.0Z  4.0Z    - /path/to/mnt

While before it was:
mountpoint-s3      0     0     0    - /path/to/mnt

Note that in both cases I needed the --all flag. Did you expect that to change?

How do we think this should show up in df? This is what I now get on AL2:
$ df -ha
Filesystem      Size  Used Avail Use% Mounted on
[...]
mountpoint-s3      0 -4.0Z  4.0Z    - /path/to/mnt

While before it was:
mountpoint-s3      0     0     0    - /path/to/mnt

Note that in both cases I needed the --all flag. Did you expect that to change?

I was hoping it would change - based only on previous discussions. Looks like it doesn't.
What's also unexpected there is that we have a negative used value which I imagine we'd want to avoid.

Closing this PR for now since I have no intention at the moment of working on it further. However, hopefully this is a good starting point if we do want to move forward with it.