nghttp2: 1.24.0 -> 1.31.0

Haven't updated this in a while..
cc https://github.com/NixOS/nixpkgs/pull/32040
(which is probably worth revisiting
and updating to include/replace this)
If that doesn't sound good,
at least we can update it (this PR).

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option build-use-sandbox in nix.conf on non-NixOS)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Fits CONTRIBUTING.md.

@GrahamcOfBorg build nghttp2

Success on x86_64-linux (full log)
Attempted: nghttp2
Partial log (click to expand)
strip is /nix/store/j75dgadrff2d1fyc4fczmcgqkid2imdx-binutils-2.30/bin/strip
stripping (with command strip and flags -S) in /nix/store/bg46nhiyij28rvwgw8s0riv499k366qk-nghttp2-1.31.0-dev/lib
patching script interpreter paths in /nix/store/bg46nhiyij28rvwgw8s0riv499k366qk-nghttp2-1.31.0-dev
checking for references to /build in /nix/store/bg46nhiyij28rvwgw8s0riv499k366qk-nghttp2-1.31.0-dev...
shrinking RPATHs of ELF executables and libraries in /nix/store/sdalj702a9sb7p1m7lqj0wngjpvjlgix-nghttp2-1.31.0-lib
shrinking /nix/store/sdalj702a9sb7p1m7lqj0wngjpvjlgix-nghttp2-1.31.0-lib/lib/libnghttp2.so.14.16.0
strip is /nix/store/j75dgadrff2d1fyc4fczmcgqkid2imdx-binutils-2.30/bin/strip
stripping (with command strip and flags -S) in /nix/store/sdalj702a9sb7p1m7lqj0wngjpvjlgix-nghttp2-1.31.0-lib/lib
patching script interpreter paths in /nix/store/sdalj702a9sb7p1m7lqj0wngjpvjlgix-nghttp2-1.31.0-lib
checking for references to /build in /nix/store/sdalj702a9sb7p1m7lqj0wngjpvjlgix-nghttp2-1.31.0-lib...

Success on aarch64-linux (full log)
Attempted: nghttp2
Partial log (click to expand)
stripping (with command strip and flags -S) in /nix/store/hzc67ycbhqs0c5hin2qkaafsl95f1wy7-nghttp2-1.31.0-dev/lib
patching script interpreter paths in /nix/store/hzc67ycbhqs0c5hin2qkaafsl95f1wy7-nghttp2-1.31.0-dev
checking for references to /build in /nix/store/hzc67ycbhqs0c5hin2qkaafsl95f1wy7-nghttp2-1.31.0-dev...
shrinking RPATHs of ELF executables and libraries in /nix/store/9m6vx19ymcyj1k37wn76k83mkim4afd8-nghttp2-1.31.0-lib
shrinking /nix/store/9m6vx19ymcyj1k37wn76k83mkim4afd8-nghttp2-1.31.0-lib/lib/libnghttp2.so.14.16.0
strip is /nix/store/jk6j4lh9v5mvjdbdc35sj0zffhhf6s56-binutils-2.30/bin/strip
stripping (with command strip and flags -S) in /nix/store/9m6vx19ymcyj1k37wn76k83mkim4afd8-nghttp2-1.31.0-lib/lib
patching script interpreter paths in /nix/store/9m6vx19ymcyj1k37wn76k83mkim4afd8-nghttp2-1.31.0-lib
checking for references to /build in /nix/store/9m6vx19ymcyj1k37wn76k83mkim4afd8-nghttp2-1.31.0-lib...
/nix/store/ml5kai55q4i5jmd3p9cc321djdncfwsg-nghttp2-1.31.0-bin

Success on x86_64-darwin (full log)
Attempted: nghttp2
Partial log (click to expand)
patching script interpreter paths in /nix/store/rqljr0516dm7bwmkkgpsshpami50r2gz-nghttp2-1.31.0-bin
strip is /nix/store/kdff2gim6417493yha769kh00n63lnrw-cctools-binutils-darwin/bin/strip
patching script interpreter paths in /nix/store/45lrwnhbqypbna9lg31q2fzmz3lw3bf8-nghttp2-1.31.0
strip is /nix/store/kdff2gim6417493yha769kh00n63lnrw-cctools-binutils-darwin/bin/strip
stripping (with command strip and flags -S) in /nix/store/qylm6xdxy6pcl8wv7hrfd0ibs8lbclib-nghttp2-1.31.0-dev/lib
patching script interpreter paths in /nix/store/qylm6xdxy6pcl8wv7hrfd0ibs8lbclib-nghttp2-1.31.0-dev
strip is /nix/store/kdff2gim6417493yha769kh00n63lnrw-cctools-binutils-darwin/bin/strip
stripping (with command strip and flags -S) in /nix/store/r57gfqwrj1azn0mf6mjh4k7qz66g02x2-nghttp2-1.31.0-lib/lib
patching script interpreter paths in /nix/store/r57gfqwrj1azn0mf6mjh4k7qz66g02x2-nghttp2-1.31.0-lib
/nix/store/rqljr0516dm7bwmkkgpsshpami50r2gz-nghttp2-1.31.0-bin


Add the S3KeySensor into the dag

I am new to the airflow, anyone can tell me how to add the S3KeySensor into the DAG ? For example : The Bucket name is "bucket_A",while the key is "production/2015/09/20",I want to check if this key exists in the aws s3.

How can I set the conn_id for the S3KeySensor, I set the S3KeySensor like this :

The docs are missing a parameter s3_conn_id which defaults to s3_default (I'm adding it to the docs as soon as I have a minute), you need to create this connection through the Connection menu in the UI, or using environment variables.

@mistercrunch  So can you give me an example about the s3_conn_id,I don't know how to config it.BTW,need I set the system environment variables for the aws access key ? Can airflow read AWS credentials or  check first for environment variables and then fall back to ~/.aws/credentials if the env variables don't exist ?

@Thomasmisfit  Did u solved the issue? I am facing the same problem.

@pedrorjbr https://github.com/airbnb/airflow/issues/123
It may help for you~~

So, I use boto and AWS CLI on the same server where airflow runs. Assuming boto runs on this same box, airflow will default to using boto under the hood. If you use boto, then you may have a ~/.aws/credentials file. That will work. Just remove an config from the extra field on the connection edit page.
Here's an example of a using an s3 key sensor :
https://gist.github.com/r39132/b22671d0293cd7740b38


loadgen with gnmt on v0.5 seg-faults up on completion

When running gnmt with loadgen (loadgen_gnmt.py) it seg-faults in the logger up on finishing the run.
For e.g.
$ python loadgen_gnmt.py --mode Performance --scenario SingleStream --verbose
Fix that worked for me was to add a single line, runner.finish() to loadgen_gnmt.py. Pasting the diff below.
diff --git a/v0.5/translation/gnmt/tensorflow/loadgen_gnmt.py b/v0.5/translation/gnmt/tensorflow/loadgen_gnmt.py
index 8a3410e..fb43469 100755
--- a/v0.5/translation/gnmt/tensorflow/loadgen_gnmt.py
+++ b/v0.5/translation/gnmt/tensorflow/loadgen_gnmt.py
@@ -496,6 +496,7 @@ if __name__ == "__main__":
         total_queries, perf_queries, runner.load_samples_to_ram, runner.unload_samples_from_ram)

     mlperf_loadgen.StartTest(sut, qsl, settings)
+    runner.finish()
     mlperf_loadgen.DestroyQSL(qsl)
     mlperf_loadgen.DestroySUT(sut)

In case anybody else tried and had no idea about the seg-fault.

@minus-one issue a PR perhaps and assign to @christ1ne

@minus-one: Do you have a stack trace of the segfault? Just want to make sure we are addressing the root-cause and that there isn't a bug in the loadgen. Thanks!

This was the original stacktrace that I got via gdb.
translate 99 (QID 95052320): Sentence ID 58
Average latency (ms) per query:
693.60307677
Median latency (ms):
601.6180425
90 percentile latency (ms):
1139.0376233000004
[Thread 0x7ffe46ffd700 (LWP 53526) exited]

Thread 1 "python" received signal SIGSEGV, Segmentation fault.
__gnu_cxx::new_allocator<std::function<void (mlperf::AsyncLog&)> >::construct<std::function<void (mlperf::AsyncLog&)>, std::function<void (mlperf::AsyncLog&)> >(std::function<void (mlperf::AsyncLog&)>*, std::function<void (mlperf::AsyncLog&)>&&) (this=0xa916a0, __p=0x6100000070) at /usr/include/c++/7/ext/new_allocator.h:136
136             { ::new((void *)__p) _Up(std::forward<_Args>(__args)...); }
(gdb) bt
#0  __gnu_cxx::new_allocator<std::function<void (mlperf::AsyncLog&)> >::construct<std::function<void (mlperf::AsyncLog&)>, std::function<void (mlperf::AsyncLog&)> >(std::function<void (mlperf::AsyncLog&)>*, std::function<void (mlperf::AsyncLog&)>&&) (this=0xa916a0, __p=0x6100000070) at /usr/include/c++/7/ext/new_allocator.h:136
#1  std::allocator_traits<std::allocator<std::function<void (mlperf::AsyncLog&)> > >::construct<std::function<void (mlperf::AsyncLog&)>, std::function<void (mlperf::AsyncLog&)> >(std::allocator<std::function<void (mlperf::AsyncLog&)> >&, std::function<void (mlperf::AsyncLog&)>*, std::function<void (mlperf::AsyncLog&)>&&) (__a=..., __p=0x6100000070) at /usr/include/c++/7/bits/alloc_traits.h:475
#2  std::vector<std::function<void (mlperf::AsyncLog&)>, std::allocator<std::function<void (mlperf::AsyncLog&)> > >::emplace_back<std::function<void (mlperf::AsyncLog&)> >(std::function<void (mlperf::AsyncLog&)>&&) (this=0xa916a0)
    at /usr/include/c++/7/bits/vector.tcc:100
#3  mlperf::TlsLogger::Log(std::function<void (mlperf::AsyncLog&)>&&) (this=0xa91380, entry=...) at logging.cc:521
#4  0x00007ffff5e0eeed in mlperf::Logger::UnRegisterTlsLogger (this=<optimized out>, tls_logger=std::unique_ptr<mlperf::TlsLogger> = {...}) at logging.cc:227
#5  0x00007ffff5e0f07f in mlperf::TlsLoggerWrapper::~TlsLoggerWrapper (this=0x4b36300, __in_chrg=<optimized out>) at logging.cc:598
#6  std::default_delete<mlperf::TlsLoggerWrapper>::operator() (this=<optimized out>, __ptr=0x4b36300) at /usr/include/c++/7/bits/unique_ptr.h:78
#7  std::unique_ptr<mlperf::TlsLoggerWrapper, std::default_delete<mlperf::TlsLoggerWrapper> >::reset (__p=0x4b36300, this=<optimized out>) at /usr/include/c++/7/bits/unique_ptr.h:376
#8  mlperf::<lambda()>::operator() (__closure=<optimized out>) at logging.cc:609
#9  std::_Function_handler<void(), mlperf::InitializeMyTlsLoggerWrapper()::<lambda()> >::_M_invoke(const std::_Any_data &) (__functor=...) at /usr/include/c++/7/bits/std_function.h:316
#10 0x00007ffff5e0aeab in std::function<void ()>::operator()() const (this=0x7ffe54000d48) at /usr/include/c++/7/bits/std_function.h:706
#11 mlperf::TlsLogger::ForcedDetatchFromThread (this=0x7ffe54000ca0) at logging.cc:88
#12 mlperf::Logger::~Logger (this=0x7ffff6081800 <mlperf::GlobalLogger()::g_logger>, __in_chrg=<optimized out>) at logging.cc:166
#13 0x00007ffff7a27041 in __run_exit_handlers (status=0, listp=0x7ffff7dcf718 <__exit_funcs>, run_list_atexit=run_list_atexit@entry=true, run_dtors=run_dtors@entry=true) at exit.c:108
#14 0x00007ffff7a2713a in __GI_exit (status=<optimized out>) at exit.c:139
#15 0x00007ffff7a05b9e in __libc_start_main (main=0x4b4bd0 <main>, argc=7, argv=0x7fffffffe148, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7fffffffe138) at ../csu/libc-start.c:344
#16 0x00000000005bdf6a in _start () at ../Python/pystate.c:543
(gdb)

I was digging through the whole code, but could never find the issue in loadgen. 😥
Coming back to the python code and on comparing it with the classification example, noticed that this line was missing.

@minus-one: Thanks for the stack trace! I think the proposed fix makes sense. Can you issue a PR?
It looks like the runner is set up as a daemon thread, which means its destruction is not sequentially ordered at all with the destruction of the main thread and static storage duration variables. It's likely that the daemon thread is destroying its TlsLogger at the same time that it is being forcefully detached by the main thread's at_exit hooks.
Calling runner.finish() ensures the daemon thread is joined before the program starts the exit process.
Alternatively, we may be able to avoid this in the loadgen as well if InitializeMyTlsLoggerWrapper were to acquire a global lock in 1) the forced_detatch lambda and 2) the destructor of tls_logger_wrapper via some helper type. @minus-one : Since you can repro, could you also take a crack at that solution if you have the cycles?

I was taking a poke at it. I am trying to understand the issue.
Is there a race on the TlsLoggerWrapper destructor itself or between TlsLoggerWrapper destructor and the TlsLogger destructor ?
That is, the forced_detatch lambda calls TlsLoggerWrapper destructor (via reset()) while already the TlsLogger has been destroyed? In which case, shouldn't the lock be between TlsLoggerWrapper destructor and the TlsLogger destructor?
Or are there two calls on the TlsLoggerWrapper destructor itself, one of which is via the forced_detatch lambda?
I am just trying to understand who should own the mutex and where must it be acquired.
I am new to the code and have little idea. If you think it is easier for someone else to fix than explain all these, please let me know.

Or are there two calls on the TlsLoggerWrapper destructor itself, one of which is via the forced_detatch lambda?

I think this is the case that would cause the error you are seeing, but I'm not 100% sure.

I am new to the code and have little idea. If you think it is easier for someone else to fix than explain all these, please let me know.

It sounds like you have a pretty good grasp of the issue. I'm swamped atm, so would appreciate any help I can get. =)

can I just add the following line? It seems to make the error go away @briandersn @minus-one @nvmbreughe
runner.finish()

Good catch. Yes, let's add that.

Agree with adding that line.
I was hoping we could also fix the crash in the loadgen too, in case other submitters use daemon threads too. But at this point, let's just fix the reference.
We can revisit this if submitters run into this issue. The crash is after the test completes, so it shouldn't block submissions.

just committed to master

@minus-one : Can we close this issue?
Feel free to issue a PR for the loadgen fix we talked about if you already have something, otherwise we can kick that can down the road. Thanks!

Yes. I got some code written as per your suggestion, but that does not seem to be fixing the bug. I will issue a PR if I think I have got a working fix.


enable REPLACE OR EXISTS for procedures on DB2

Impact

[X, Bug fix (non-breaking change which fixes expected existing functionality)
[ ] Enhancement/New feature (adds functionality without impacting existing logic)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Description
Fixes #4388

Hello @MichaelKern-IVV , seems we are missing an import at  liquibase-standard/src/main/java/liquibase/change/core/CreateProcedureChange.java?

You are right, I added the missing import.

Is it possible to write some tests?

Is it possible to write some tests?

Created a ticket DAT-15523 to add a test into Test Harness.


Bug Report for QSC Eval (qsc_eval)

The compiler throws an error when the cont_tup and cont_arr functions in compiler\qsc_eval\src\lib.rs are called with &Vec arguments. The error suggests replacing these with &[ExprId].
To Reproduce
Compile the qsc_eval library using cargo clippy --all-targets --all-features -- -D warnings.
Expected behavior
The compilation should succeed without any errors.
Screenshots
Not applicable for this bug report.
System information
Package/Extension: QSC Eval (qsc_eval)
Operating System: [Please specify your operating system]
IDE (if applicable): [Please specify your IDE, if applicable]
Additional context
The error message suggests using slices (&[_]) instead of vectors (&Vec) as arguments for the cont_tup and cont_arr functions. This is likely because using slices can be more efficient in this case.
Additional Notes:
The provided traceback seems unrelated to the specific bug and can be omitted from the report unless relevant for deeper troubleshooting.
You can modify the report title to be more specific, such as "QSC Eval: Error with &Vec in cont_tup and cont_arr functions".
Version Information
Detected cargo fmt version: rustfmt 1.7.0-stable (07dca489 2024-02-04)
Detected cargo clippy version: clippy 0.1.76 (07dca489 2024-02-04)
Detected node.js version v20.9.0
Detected wasm-pack version wasm-pack 0.12.1

This appears to be a newer lint as of clippy 1.76


Fail on streaming param

hi author,
I had an error above:
self.callback_manager.on_llm_new_token(
AttributeError: 'LLMAPI' object has no attribute 'callback_manager'
Help me fix. Thanks

Sorry I don't understand the context of this, maybe you can elaborate with more info about which services do you run and a script snippet which shows your scenario


qt/util.h:  move implementation to source file

What's the reason setQtSurfaceFormat is still in the header file?


Create instruction video to show how the RAM model and SSD are installed

Right now, there is no way for the user to see how the components are supposed to be installed

Create the video for RAM and put it in the environment. The video is very laggy since my laptop can't handle recording and playing in the same time.


.prettierignore file not used when fixing on save

Information
VIM - Vi IMproved 8.0 (2016 Sep 12, compiled Mar 14 2018 23:02:54)
MS-Windows 64-bit console version
Operating System: Windows 10 64bit
:ALEInfo
Current Filetype: javascript
Available Linters: ['eslint', 'flow', 'jscs', 'jshint', 'standard', 'xo']
Enabled Linters: ['eslint', 'flow', 'jscs', 'jshint', 'standard', 'xo']
Linter Variables:
let g:ale_javascript_eslint_executable = 'eslint'
let g:ale_javascript_eslint_options = ''
let g:ale_javascript_eslint_suppress_eslintignore = 0
let g:ale_javascript_eslint_suppress_missing_config = 0
let g:ale_javascript_eslint_use_global = 0
let g:ale_javascript_flow_executable = 'flow'
let g:ale_javascript_flow_use_global = 0
let g:ale_javascript_flow_use_home_config = 0
let g:ale_javascript_jscs_executable = 'jscs'
let g:ale_javascript_jscs_use_global = 0
let g:ale_javascript_jshint_executable = 'jshint'
let g:ale_javascript_jshint_use_global = 0
let g:ale_javascript_standard_executable = 'standard'
let g:ale_javascript_standard_options = ''
let g:ale_javascript_standard_use_global = 0
let g:ale_javascript_xo_executable = 'xo'
let g:ale_javascript_xo_options = ''
let g:ale_javascript_xo_use_global = 0
Global Variables:
let g:ale_cache_executable_check_failures = 0
let g:ale_change_sign_column_color = 0
let g:ale_command_wrapper = ''
let g:ale_completion_delay = 100
let g:ale_completion_enabled = 0
let g:ale_completion_max_suggestions = 50
let g:ale_echo_cursor = 1
let g:ale_echo_msg_error_str = 'Error'
let g:ale_echo_msg_format = '%code: %%s'
let g:ale_echo_msg_info_str = 'Info'
let g:ale_echo_msg_warning_str = 'Warning'
let g:ale_enabled = 1
let g:ale_fix_on_save = 1
let g:ale_fixers = {'javascript': ['prettier']}
let g:ale_history_enabled = 1
let g:ale_history_log_output = 1
let g:ale_keep_list_window_open = 0
let g:ale_lint_delay = 200
let g:ale_lint_on_enter = 1
let g:ale_lint_on_filetype_changed = 1
let g:ale_lint_on_save = 1
let g:ale_lint_on_text_changed = 'always'
let g:ale_lint_on_insert_leave = 0
let g:ale_linter_aliases = {}
let g:ale_linters = {}
let g:ale_linters_explicit = 0
let g:ale_list_window_size = 10
let g:ale_loclist_msg_format = '%code: %%s'
let g:ale_max_buffer_history_size = 20
let g:ale_max_signs = -1
let g:ale_maximum_file_size = 0
let g:ale_open_list = 0
let g:ale_pattern_options = {}
let g:ale_pattern_options_enabled = 0
let g:ale_set_balloons = 0
let g:ale_set_highlights = 1
let g:ale_set_loclist = 1
let g:ale_set_quickfix = 0
let g:ale_set_signs = 1
let g:ale_sign_column_always = 0
let g:ale_sign_error = '>>'
let g:ale_sign_info = '--'
let g:ale_sign_offset = 1000000
let g:ale_sign_style_error = '>>'
let g:ale_sign_style_warning = '--'
let g:ale_sign_warning = '--'
let g:ale_statusline_format = ['%d error(s)', '%d warning(s)', 'OK']
let g:ale_type_map = {}
let g:ale_warn_about_trailing_blank_lines = 1
let g:ale_warn_about_trailing_whitespace = 1
Command History:
(executable check - failure) jshint
(executable check - failure) standard
(executable check - failure) xo
(finished - exit code 0) 'cmd /s/c "prettier --version"'
(finished - exit code 0) 'cmd /s/c "cd C:\Projects\evision-test\apiserver && prettier --stdin-filepath C:\Projects\evision-test\apiserver\server.js --stdin < C:\Users\Casper\AppData\Local\Temp\VISCBE6.tmp\server.js"'
(finished - exit code 1) 'cmd /s/c "eslint -f unix --stdin --stdin-filename C:\Projects\evision-test\apiserver\server.js < C:\Users\Casper\AppData\Local\Temp\VITCDFA.tmp\server.js"'
<<>>
Oops! Something went wrong! :(
ESLint: 4.18.2.
ESLint couldn't find the plugin "eslint-plugin-react". This can happen for a couple different reasons:

If ESLint is installed globally, then make sure eslint-plugin-react is also installed globally. A globally-installed ESLint cannot find a locally-installed plugin.

If ESLint is installed locally, then it's likely that the plugin isn't installed correctly. Try reinstalling by running the following:
npm i eslint-plugin-react@latest --save-dev

If you still can't figure out the problem, please stop by https://gitter.im/eslint/eslint to chat with the team.
<<>>
(executable check - failure) jscs
(executable check - failure) jshint
(executable check - failure) standard
(executable check - failure) xo
(finished - exit code 1) 'cmd /s/c "eslint -f unix --stdin --stdin-filename C:\Projects\evision-test\apiserver\server.js < C:\Users\Casper\AppData\Local\Temp\VIUD195.tmp\server.js"'
<<>>
Oops! Something went wrong! :(
ESLint: 4.18.2.
ESLint couldn't find the plugin "eslint-plugin-react". This can happen for a couple different reasons:

If ESLint is installed globally, then make sure eslint-plugin-react is also installed globally. A globally-installed ESLint cannot find a locally-installed plugin.

If ESLint is installed locally, then it's likely that the plugin isn't installed correctly. Try reinstalling by running the following:
npm i eslint-plugin-react@latest --save-dev

If you still can't figure out the problem, please stop by https://gitter.im/eslint/eslint to chat with the team.
<<>>
(executable check - failure) jscs
(executable check - failure) jshint
(executable check - failure) standard
(executable check - failure) xo
(finished - exit code 1) 'cmd /s/c "eslint -f unix --stdin --stdin-filename C:\Projects\evision-test\apiserver\server.js < C:\Users\Casper\AppData\Local\Temp\VIVDD3E.tmp\server.js"'
<<>>
Oops! Something went wrong! :(
ESLint: 4.18.2.
ESLint couldn't find the plugin "eslint-plugin-react". This can happen for a couple different reasons:

If ESLint is installed globally, then make sure eslint-plugin-react is also installed globally. A globally-installed ESLint cannot find a locally-installed plugin.

If ESLint is installed locally, then it's likely that the plugin isn't installed correctly. Try reinstalling by running the following:
npm i eslint-plugin-react@latest --save-dev

If you still can't figure out the problem, please stop by https://gitter.im/eslint/eslint to chat with the team.
<<>>
(executable check - failure) jscs
(executable check - failure) jshint
(executable check - failure) standard
(executable check - failure) xo
What went wrong
Prettier (set as a fixer in ALE for javascript) is being run on files that are supposed to be ignored by
.prettierignore
apiserver/

When I save a file contained in apiserver/ I expect ALE not to format it with prettier, but it does.
Reproducing the bug
Steps for repeating the bug:

Configure ALE to fix on save with prettier for javascript.
Create .prettierignore file in project directory and insert an ignore statement.
Edit and save a file in the ignored directory.
Observe the ignored file is now formatted by prettier.

The following issue appears to be the same problem, but is marked as resolved for prettier ^1.6.0. My prettier version is 1.10.2.
https://github.com/w0rp/ale/issues/1095

Same problem here, even with let g:ale_javascript_prettier_use_local_config = 1

Any updates to this??

No, there are no updates. Don't comment asking for updates on GitHub. When someone feels like looking into the bug, they will, and they'll leave a comment or close the issue when a commit has been merged to master.

Sure, how about performing triage, then, or is that going to be deferred indefinitely?
Relatedly, I've given up on .prettierignore since the eslint-prettier-plugin does not support .prettierignore at all, which is what we've been using as a part of the eslint fixer. So this actually is not an ALE issue anyways.

For anyone finding this thread using eslint-plugin-prettier:
https://github.com/prettier/eslint-plugin-prettier/issues/88

@w0rp The bug is supposedly fixed in eslint-plugin-prettier but I'm still having the same issue

Still not working. I'm using vim 8.0 and eslint-plugin-prettier 3.0.1. My ale configuration:
let g:airline#extensions#ale#enabled = 1

let g:ale_linters = {
\ 'javascript': ['eslint', 'flow'],
\ 'typescript': ['tsserver', 'tslint'],
\ 'typescript.tsx': ['tsserver', 'tslint'],
\}

let g:ale_fix_on_save = 1
let g:ale_sign_column_always = 1
let g:ale_fixers = {
\ 'javascript': ['prettier', 'eslint'],
\ 'scss': ['prettier'],
\ 'css': ['prettier'],
\ 'typescript': ['prettier', 'tslint'],
\}

It's still not working because no one has fixed it yet.

It's still not working because no one has fixed it yet.

Ok. Got it. Is it problem with prettier itself or ale side?

I'm not sure. Someone who is familiar with prettier can look into it. Maybe the working directory needs to be set differently.

For anyone still having this problem.
AFAIK it's always been possible to pass specific CLI flags to prettier through ALE. I use this in my .vimrc to handle special configs in special projects:
autocmd BufNewFile,BufRead ~/special/* let g:ale_javascript_prettier_options = "--config ~/special/.prettierrc"

to extend this to use a specific .prettierignore use the --ignore-path flag
autocmd BufNewFile,BufRead ~/special/* let g:ale_javascript_prettier_options = "--config ~/special/.prettierrc --ignore-path=~/special/.prettierignore"

I guess it's not a direct fix to ALE itself, but it seems like it already supports this functionality. I kind of assumed this is how you're supposed to do it.

I don't believe this is an ALE issue. Like other tools, they follow an ignore file but will allow command line arguments to override those.
Adding file.js to my .prettierignore will ignore it when running prettier with no args but will not ignore it when passing the file as a CLI argument prettier file.js.
You can observe the same behavior with some git pre-hooks that run things on specific files.
Since ALE likely (not familiar with the internals) calls the CLI with whatever file is in the buffer, it will override any configured ignores.
I have this exact same problem with rubocop.

Okay, that makes sense. I'll close this issue, in that case. If you want to ignore specific files in Vim, you can use buffer variables to change which files are affected by fixing files.


Only show activity from today and older

The activity log shows events in the future. This simple fix filters out all future events, so that the activity log only shows historical items.
This is an interim fix whilst we work on correcting the event data.

The problem is that when you click on the last event in the timeline it doesn't match the status of the application or the timeline of that application.
You need to filter out the events when the app boots up to keep them both in sync but that won't solve the status issue.
Maybe what you have is good enough sort of? Hmmm

I'm going with good enough, for now, to support the research into assigning applications to users. When the research has concluded, we can roll back the change and work on correcting the Faker event generation.


refactor: Update app service examples for Ireland

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

[ ] Tests for the changes have been added (for bug fixes / features)
[ ] Docs have been added / updated (for bug fixes / features)

If your build fails due to your commit message not passing the build checks, please review the guidelines here: https://github.com/edgexfoundry/edgex-examples/blob/master/.github/Contributing.md.
What is the current behavior?

Issue Number:
What is the new behavior?
Does this PR introduce a breaking change?

[ ] Yes
[ ] No

Specific Instructions
Are there any specific instructions or things that should be known prior to reviewing?
Other information

examples updated on individual PRs. Closing this large all in one.

Handled by multiple PRs


fix: replace master with main in package.json

Alaska Airlines Pull Request
Quick PR to make the release branch target main instead of master.
Summary:
Please summarize the scope of the changes you have submitted, what the intent of the work is and anything that describes the before/after state of the project.
Type of change:
Please delete options that are not relevant.

[x] Infrastructure change (automation, etc.)

Checklist:

[x] My update follows the CONTRIBUTING guidelines of this project
[x] I have performed a self-review of my own update

By submitting this Pull Request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
Pull Requests will be evaluated by their quality of update and whether it is consistent with the goals and values of this project. Any submission is to be considered a conversation between the submitter and the maintainers of this project and may require changes to your submission.
Thank you for your submission!
-- Auro Design System Team
Summary by Sourcery
CI:

Update the release branch to target "main".

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Hxsggsz 35268942

On this pull request i make a toggle social media with a switch component using the checkbox input as a base for it
The toggle social media component
To use this component you need to pass as props the social media name, here is the code example:
import { ToggleSocialMedia } from './components/toggleSocialMedia';

function App() {
  return (
	<ToggleSocialMedia socialMedia="Facebook" />
  );

}

export default App;

The final result:

How to use the switch component on your code:
You will need to pass two props to the component: the checked state as a boolean and the setChecked
here is an example in code how to use it
function App() {
  const [checked, setChecked] = useState(false);

  return (
      <Switch checked={checked} setChecked={setChecked} />
  );

}

export default App;

Final result of the switch component

Adorei o PR! Vamos tentar seguir mais esse padrão no projeto!


Modifying the reviewer regex to more closely match GitHub usernames

GitHub usernames contain only alphanumeric characters or single hyphens, do not start or finish with hyphens, and are at most thirty-nine characters long. This can be discerned looking at the join page.

This PR adapts the regular expression used in find_reviewer to match on these constraints. I used the regular expression here and adapted it to the needs of the expression in this project.
This is related to #96 and does not include changes for #39. That will come later.

I'm closing this now. The only change I would do here at this point is trivial and not on theme with the title of this PR. I'll save it for another PR where I can include it.
Thanks!


Add constant folding for FNegate

Let OpFNegate against a constant be the negative of the operand.
Contributes to #709.

Hi @jaebaek : Please rebased your change and add tests as requested


Performance test

We should have a performance similar to Java or .NET stream client

Duplicate of #100, already implemented


Revisit versioning and streamline maintenance adding "bump" and "tag_release" nox sessions

Revisit versioning by hard-coding the IDC index version as the major version specified in the pyproject.toml file.
Add nox sessions:

bump: for updating the sources by querying the latest IDC index version
tag_release: for displaying instructions for tagging a release

Adapted from https://github.com/scikit-build/cmake-python-distributions/pull/470 by @henryiii
Once this is integrated, it will be trivial to setup a scheduled workflow for creating a pull request if a new version of the IDC table is available.
Related issues:

https://github.com/ImagingDataCommons/idc-index-data/issues/2

@jcfr everything works as expected - thank you for your efforts!!!


Snowflake ID execution in ekuiper will lose precision

Snowflake ID execution in ekuiper will lose precision
Environment:

eKuiper version (e.g. 1.3.0):  1.14.0
Hardware configuration (e.g. lscpu): x86_64
OS (e.g. cat /etc/os-release): Debian GNU/Linux
Others:

What happened and what you expected to happen:
fix it please!
How to reproduce it (as minimally and precisely as possible):
Enter a snowflake ID in the data source
Anything else we need to know?:

@echils Thanks for rasing this up. We are willing to fix any problems, but before that, we need to know the problem. How to reproduce it. I am not sure this one line explanation can help or not.

My use case：

Create a kafka source named root ，the sample data structures are shown below

    {
      "createTime": "2024-12-12T14:34:37.516Z",
      "data": {
          "abnormal": false,
          "data": [
          {
              "field": "unit",
              "tag": false,
              "value": "m/s"
          }
          ],
          "definitionId":<PHONE_NUMBER>348461056,
          "time": "2024-12-12 14:34:37",
          "value": 0
      },
      "definitionId":<PHONE_NUMBER>348461056,
      "messageId": "schedule-1867095692340801536",
      "msg": null,
      "status": 200
    }

Create a simple rule

 select data.definitionId from root

Create a mqtt sink
The mqtt result has lost accuracy


chore: rename packages/cloud-cognitive to packages/ibm-products (v2)

Contributes to #2903
In preparation for v2 release, this PR renames packages/cloud-cognitive to packages/ibm-products.
What did you change?
All instances of components/files imported from packages/cloud-cognitive have been updated to packages/ibm-products.
How did you test and verify your work?
Checked that all stories still render as expected and wait to see how the ci-check goes in this PR

Gladly! 😁


Provide a way to select whether to use tox-conda on an env by env basis

It's currently possible to opt in of using tox-conda on a project by project basis, by specifying tox-conda in the requires section under [tox]. However, I would like to be able to control whether conda is used on an environment by environment basis, since I want to make sure that things work properly both with system Python and conda Python.
I think the cleanest way to do this might be to have a way to opt out of auto conda environment with a flag inside the [tox] section:
auto_use_conda = false

and then allow environments to specify:
use_conda = true

I'm happy to investigate how to code this up as a patch, but didn't want to waste time on it unless people think it would be a good idea to allow this? Just to be clear, the defaults would be as they are now, this would just be an opt-in mechanism to allow finer grained control. It would also allow projects to opt out of global enabling if a user has tox-conda installed but a project wants to guarantee conda is not used.

Related :
https://github.com/drdavella/tox-conda/issues/11
https://github.com/drdavella/tox-conda/pull/12

@gaborbernat will tox 4 support this kind of feature? (not limited to conda only)

Yes 👍 see https://tox.readthedocs.io/en/rewrite/config.html#runner, which defaults to virtualenv but may be changed.

Hi guys, is there any example on how to use the runner option to achieve something similar to this?
I had a look on the docs, but I couldn't figure out what the value assigned to runner is...
(e.g.: is runner supposed to be the name of a CLI script that builds a virtual environment? An entry point that follows the same API as tox.tox_env.runner.RunToxEnv?)

It's an entry point 🤞


Unicode support

I was trying to extract text out of a PDF document which has mix of English and Malayalam text. Tabula only extracts out the English text. Anything we can do to make tabula extract text from other languages?

I believe this has nothing to do with Tabula. Rather you need to check if apache pdfbox supports it or not


Endpoint: retry on restore

Retry on regenerate endpoint in case of the endpoint is not into the
endpointManager.
Signed-off-by: Eloy Coto<EMAIL_ADDRESS>

This change is

test-me-please

test-me-please


Page Extensions Trigger OnAfterGetCurrRecord not fired, when the C/Side Trigger is empty

I want to add a new fact box at the "Location List" by page extension:
pageextension 50100 "Location List Ext" extends "Location List"
{
    layout
    {
        addfirst(FactBoxes)
        {
            part(MyPart; MyPart) { }
        }
    }

    trigger OnAfterGetRecord();
    begin
       // This trigger is fired correct
    end;

    trigger OnAfterGetCurrRecord();
    begin
       //  This trigger is never fired - becuase the C/Side trigger is empty
       Message('Trigger fired on: %1', Code);
    end;
}

Unfortunately the OnAfterGetCurrRecord is never fired.
The current fix is, to add a comment at the C/Side trigger e.g.:

...and the result - my page extension trigger is fired correct:

My Version(s):

I have the same issue. I use the NAV 2018 cu3, AL Language 0.12.17720

i have same issues related service. please check all list and card pages.
thank you.


[Documentation]: Enhance the README file

Description
I want to enhance the README file using emojis and adding some text to it.
I'm a GSSoC'22 contributor. Kindly assign this issue to me.
Domain
Documentation
Code of Conduct

[X] I follow Contributing Guidelines of this project.

/assign


Implement Fan Out and Merging

Currently we only chose the a single operation runner. When multiple operation runners are available we should call each and merge the resulting messages.

Calling multiple operation runners for each operation will necessitate merging of the resulting messages. We intend to implement this leveraging upcoming features of reasoner-pydantic - see this PR.

You do not need to call multiple services for non-unique actions. Check https://standards.ncats.io/operation/1.0.1/schema to determine which actions should be duplicated.


feat(stats): Adding vol status to istgtcontrol replica cmd

This PR is to add volume status based on various conditions to 'istgtcontrol replica' command.
With this PR, response of 'istgtcontrol -q replica vol1' will be as below:
{
  "Volume status": [
    {
      "name": "vol1",
      "status": "Healthy",
      "Replica status": [
        {
          "replica": "6161",
          "status": "HEALTHY",
          "checkpointed_io_seq": "1000",
          "inflight_read": "0",
          "inflight_write": "0",
          "inflight_sync": "0",
          "connected since(in seconds)": 1276
        },
        {
          "replica": "6162",
          "status": "HEALTHY",
          "checkpointed_io_seq": "1000",
          "inflight_read": "0",
          "inflight_write": "0",
          "inflight_sync": "0",
          "connected since(in seconds)": 1274
        },
        {
          "replica": "6163",
          "status": "HEALTHY",
          "checkpointed_io_seq": "1000",
          "inflight_read": "0",
          "inflight_write": "0",
          "inflight_sync": "0",
          "connected since(in seconds)": 1027
        }
      ]
    }
  ]
}

Below are possible 'status' values in 'volume status':
Status being Offline means no IOs are served
Status being DisabledFeatures means volume is performing in degraded mode and some features might be disabled
Status being DegradedPerformance means volume is performing in degraded mode but all features are enabled
Status being Healthy means all the components are working in healthy mode
This also have testcases to verify the volume status in 'istgtcontrol replica' command.
Signed-off-by: Vishnu Itta<EMAIL_ADDRESS>

@vishnuitta I will prefer the keys to have a uniform case. Some keys are space separated and can be converted to '_'(underscored) keys.
And do we really need to put (in seconds) in the key?
All the above suggestions are the least prioritized and can be considered as an improvement.

Recommend to have string states than integers as strings will be more meaningful as discussed

Recommend to have string states than integers as strings will be more meaningful as discussed

Updated the PR description as per new changes

@vishnuitta I will prefer the keys to have a uniform case. Some keys are space separated and can be converted to '_'(underscored) keys.
And do we really need to put (in seconds) in the key?
All the above suggestions are the least prioritized and can be considered as an improvement.

This output is for our debugging and our modules consumption. I would say - better to get them reviewed from doc team and handle in other PR if we need to


Invalid memory limit in container cgroup file

Description of problem:
When running containers without memory limits, the memory cgroup file that stores the memory limit has an invalid value. See the following steps to reproduce for details:
$ docker run -d redis
08bd1b1ef7667906112e5bafe6fe8125ee6fd983ce2f411aa5e55d215db03835
$ docker inspect -f '{{.HostConfig.Memory}}' 08bd1b1ef766
0  # This is expected

The redis container has no memory constraints, so it should be able to use all host memory. However, the memory cgroup for the container shows an invalid value, far bigger than the actual total memory in the host.
$ grep Mem /proc/meminfo
MemTotal:        4035420 kB   # Total host memory. Expected to match the cgroup limit
MemFree:          297544 kB
$ cat /sys/fs/cgroup/memory/docker/08bd1b1ef7667906112e5bafe6fe8125ee6fd983ce2f411aa5e55d215db03835/memory.limit_in_bytes
18446744073709551615   # This is<PHONE_NUMBER>3 GB memory, which is obviously wrong

When running containers with memory constraints, the memory limit cgroup file has the right value.
docker version:
Client:
Version:      1.9.0
API version:  1.21
Go version:   go1.4.2
Git commit:   76d6bc9
Built:        Tue Nov  3 17:43:42 UTC 2015
OS/Arch:      linux/amd64
Server:
Version:      1.9.0
API version:  1.21
Go version:   go1.4.2
Git commit:   76d6bc9
Built:        Tue Nov  3 17:43:42 UTC 2015
OS/Arch:      linux/amd64
docker info:
Containers: 3
Images: 65
Server Version: 1.9.0
Storage Driver: aufs
Root Dir: /var/lib/docker/aufs
Backing Filesystem: extfs
Dirs: 71
Dirperm1 Supported: false
Execution Driver: native-0.2
Logging Driver: json-file
Kernel Version: 3.13.0-67-generic
Operating System: Ubuntu 14.04.3 LTS
CPUs: 8
Total Memory: 3.848 GiB
Name: thunder04
ID: IXHS:LGA5:GUVS:3MFH:7FQ3:CKCL:GB5C:6JGU:YKDO:YOCN:B6KI:2MLX
WARNING: No swap limit support
uname -a:
Linux thunder04 3.13.0-67-generic #110-Ubuntu SMP Fri Oct 23 13:24:41 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
Environment details (AWS, VirtualBox, physical, etc.):
Physical host. Detailed hardware information available here.

Why is this a problem?
This is the the value of memory.limit_in_bytes with or without docker when there is no limit in place. (look at cat /sys/fs/cgroup/memory/memory.limit_in_bytes on the host).
The value<PHONE_NUMBER>3709551615 is the maximum 64-bit int, so it is a valid limit.

Thanks for the quick response. I understand your point, but IMO it is not consistent with what the documentation says. The container will indirectly be restricted to the max available memory in the host, but just because the limit is set to an upper bound.
This is also inconvenient in monitoring systems and tools that exploit the container stats through the remote api. Tracing the memory limits and consumption for a container using the stats api would report inconsistent values when compared to the values obtained using the "/info" endpoint to get the host limits (there is no host stats api).

it is not consistent with what the documentation says.

What documentation are you referring to?

Tracing the memory limits and consumption for a container using the stats api would report inconsistent values when compared to the values obtained using the "/info" endpoint to get the host limits

I don't follow. Neither the stats api, nor /info have any relation to (and do not display) the cgroup memory.limit_in_bytes parameter. So why is memory.limit_in_bytes being set to the max an issue?

I found this issue when these value caused an overflow in the monitoring system I'm developing. While digging into it to find the source of the issue, I eventually found the value in the memory.limit_in_bytes file, so I opened the issue.
I'm using only the Docker remote api, and looking into it with more detail I see now that the value that caused the overflow is the hierarchical_memory_limit in the memory.stats (see the output below). So the Docker stats api is returning the right value for the memory limit. Apologies if my previous comment caused confusion but was made based on the path I followed to find the root cause of my issue.
This said, I don't know if Docker is the one who writes the stats and memory limits files, but the advice seems to be to not read directly those values as the real limits that are being applied. When it comes to build some graphics and report stats, it is safer to fallback to the host info when the container's HostConfig.Memory is 0, as the one reported in the stats and limits file can be different than the actual host physical limits.
I understand this might not be a bug of Docker itself (given it doesn't really manage those cgroup files), but it is still quite inconvenient.
root@thunder04:~# docker run -d redis
cf7bbe2a26fa095dcac42ca75c8ea633735ba207945b9070ea8444c0ae0fa35f

root@thunder04:~# nc -U /var/run/docker.sock
GET /containers/cf7bbe2a26fa/stats?stream=false HTTP/1.1

HTTP/1.1 200 OK
Content-Type: application/json
Server: Docker/1.9.0 (linux)
Date: Thu, 19 Nov 2015 14:33:10 GMT
Content-Length: 1695

{"read":"2015-11-19T14:33:10.785571441Z","precpu_stats":{"cpu_usage":{"total_usage":199362378,"percpu_usage":[3545487,80691088,60341141,14080771,31770965,2375061,6557865,0],"usage_in_kernelmode":90000000,"usage_in_usermode":110000000},"system_cpu_usage":6843803900000000,"throttling_data":{"periods":0,"throttled_periods":0,"throttled_time":0}},"cpu_stats":{"cpu_usage":{"total_usage":200150282,"percpu_usage":[4333391,80691088,60341141,14080771,31770965,2375061,6557865,0],"usage_in_kernelmode":90000000,"usage_in_usermode":110000000},"system_cpu_usage":6843811890000000,"throttling_data":{"periods":0,"throttled_periods":0,"throttled_time":0}},"memory_stats":{"usage":6946816,"max_usage":6959104,"stats":{"active_anon":6598656,"active_file":0,"cache":12288,"hierarchical_memory_limit":18446744073709551615,"inactive_anon":0,"inactive_file":0,"mapped_file":0,"pgfault":4241,"pgmajfault":0,"pgpgin":1806,"pgpgout":1728,"rss":6586368,"rss_huge":6291456,"total_active_anon":6598656,"total_active_file":0,"total_cache":12288,"total_inactive_anon":0,"total_inactive_file":0,"total_mapped_file":0,"total_pgfault":4241,"total_pgmajfault":0,"total_pgpgin":1806,"total_pgpgout":1728,"total_rss":6586368,"total_rss_huge":6291456,"total_unevictable":0,"total_writeback":0,"unevictable":0,"writeback":0},"failcnt":0,"limit":4132270080},"blkio_stats":{"io_service_bytes_recursive":[],"io_serviced_recursive":[],"io_queue_recursive":[],"io_service_time_recursive":[],"io_wait_time_recursive":[],"io_merged_recursive":[],"io_time_recursive":[],"sectors_recursive":[]},"networks":{"eth0":{"rx_bytes":648,"rx_packets":8,"rx_errors":0,"rx_dropped":0,"tx_bytes":648,"tx_packets":8,"tx_errors":0,"tx_dropped":0}}}

@nacx the kernel writes that value.  It can be the max or it will inherit the limit from the cgroup before it in a hierarchy so reporting it is correct.  Your monitoring tool will just have to be smarter to account for this type of thing.  Everything else is correct on the docker and kernel side.


Question - Is it possible to console.log events once it happened for debug ?

I did not find the topic "how to watch events" in documentation/tests.
I expect something like web3.eth.watch.logs() based on eth_filterLogs.
Maybe you have an example of how to make it with ganache-core

Thanks for the question @askucher! Im wondering if you're looking for subscribe?  Something like this: https://web3js.readthedocs.io/en/1.0/web3-eth-subscribe.html#subscribe-logs
Make sure to connect to ganache over websocket, subscribe is not supported through HTTP.

Thank you for answer @nicholasjpaterno . I will try and publish results here

I got managed it with
const contract = new web3.eth.Contract(abi, address)

contract.once("Transfer", {}, callback);

It works in 100% percent of my tests.


feature: incremental zstd mode

Motivation
Fix #76 (implement it).
This changes the use-zstd to create a chain of target.tar.zst files, each time capturing only newly created/modified files, using mtime, making breaking multiple cargo invocations into a chain of separate derivations much cheaper (virtually free in terms of disk space, extraction cost proportional to the size of whole ./target, and compression cost relative to the size of only modified/new files).
Previous behavior (taking full snapshots of ./target each time) is retained for time being under a new name (use-zstd-no-incr), as there's no guarantee that no one ever will hit a case where something modifies a file without changing mtime (though it seems unlikely). Supporting both is very easy anyway.
Edit: Only later it occurred to me that incremental approach does not correct delete files (it will keep re-storing them). It could be handled, but seems unnecessary and it will have a perf cost. Current behavior is most probably OK in practice for 99.9% cases. AFAIR science goes, there are no credible reports of ./target directory ever shrinking in the nature. But an additional reason to keep the old method around.
Possibly there should be:

use-zstd-incremental
use-zstd-full
use-zstd (alias for use-zstd-incremental, or any method deemed even better in the future).

This way if anyone has a step that actually delete things, they can use use-zstd-full as a one-off. It might be also useful if someone really wants to introduce a break in the chain (e.g. they have really, really long chain and it seems worth it).
Checklist

[ ] added tests to verify new behavior
[ ] added an example template or updated an existing one
[ ] updated docs/API.md (or general documentation) with changes
[ ] updated CHANGELOG.md

I can't just let @j-baker win with #386 after all that arguing. ;)
Turns out it was surprisingly easy, and in my local tests looks like it shrank the second state target archive from 12GB to 6GB (which then gets compressed to 2.08GB)
Here is the PR using for my project where I care about it most: https://github.com/fedimint/fedimint/pull/3219
Here is the last merge to master build: https://github.com/fedimint/fedimint/actions/runs/6211721161/job/16861196422
I will compile some stats soon, or tomorrow.

All right.  There was one bug (must use --no-recursion). Also the 12GB I mentioned before was largely caused by the #370 , so the new baseline seems to be 6GB compressed to 2GB (yay!).
The timestamps are mixed, as I had to re-run, and for some there was no point in re-copy-pasting.
Before
deps only, compression:
Sun, 17 Sep 2023 07:56:12 GMT fedimint-deps> compressing target to /nix/store/bpma92pg41jbk5h0a9w1fp5p4haxz1jg-fedimint-deps-0.0.1/target.tar.zst
Sun, 17 Sep 2023 07:56:16 GMT fedimint-deps> /*stdin*\            : 22.28%   (  3.59 GiB =>    818 MiB, /nix/store/bpma92pg41jbk5h0a9w1fp5p4haxz1jg-fedimint-deps-0.0.1/target.tar.zst)

workspace, decompression:
Sun, 17 Sep 2023 07:28:04 GMT fedimint-workspace-build> decompressing cargo artifacts from /nix/store/bpma92pg41jbk5h0a9w1fp5p4haxz1jg-fedimint-deps-0.0.1/target.tar.zst to target
Sun, 17 Sep 2023 07:28:08 GMT fedimint-workspace-build> configuring

workspace, compression:
Sun, 17 Sep 2023 07:57:11 GMT fedimint-workspace-build> compressing target to /nix/store/0kh9szbry5zhc3fvvlsh4scgs0p43cwp-fedimint-workspace-build-0.0.1/target.tar.zst
Sun, 17 Sep 2023 07:57:18 GMT fedimint-workspace-build> /*stdin*\            : 30.91%   (  6.33 GiB =>   1.96 GiB, /nix/store/0kh9szbry5zhc3fvvlsh4scgs0p43cwp-fedimint-workspace-build-0.0.1/target.tar.zst)

tests, decompression:
Sun, 17 Sep 2023 07:31:53 GMT fedimint-test-all> decompressing cargo artifacts from /nix/store/0kh9szbry5zhc3fvvlsh4scgs0p43cwp-fedimint-workspace-build-0.0.1/target.tar.zst to target
Sun, 17 Sep 2023 07:32:00 GMT fedimint-test-all> configuring

After
deps only, compression:
Sun, 17 Sep 2023 07:32:30 GMT fedimint-deps> compressing target to /nix/store/xvqh9q9sadqzqhc4150hxkc3q9v8rlhl-fedimint-deps-0.0.1/target.tar.zst
Sun, 17 Sep 2023 07:32:34 GMT fedimint-deps> /*stdin*\            : 21.54%   (  3.74 GiB =>    825 MiB, /nix/store/xvqh9q9sadqzqhc4150hxkc3q9v8rlhl-fedimint-deps-0.0.1/target.tar.zst)

workspace, decompression:
Sun, 17 Sep 2023 07:32:37 GMT fedimint-workspace-build> decompressing cargo artifacts from /nix/store/xvqh9q9sadqzqhc4150hxkc3q9v8rlhl-fedimint-deps-0.0.1/target.tar.zst to target
Sun, 17 Sep 2023 07:32:41 GMT fedimint-workspace-build> configuring

workspace, compression:
Sun, 17 Sep 2023 07:51:03 GMT fedimint-workspace-build> compressing target to /nix/store/by7kqaq2jip4h2687hzjhylfdgldmj9f-fedimint-workspace-build-0.0.1/target.tar.zst
Sun, 17 Sep 2023 07:51:06 GMT fedimint-workspace-build> /*stdin*\            : 42.13%   (  2.75 GiB =>   1.16 GiB, /nix/store/by7kqaq2jip4h2687hzjhylfdgldmj9f-fedimint-workspace-build-0.0.1/target.tar.zst)

tests, decompression:
Sun, 17 Sep 2023 07:52:59 GMT fedimint-test-all> decompressing cargo artifacts from /nix/store/slislj5ja57zb9jsd7vwqkf7dyh58vxn-fedimint-deps-0.0.1/target.tar.zst to target
Sun, 17 Sep 2023 07:53:02 GMT fedimint-test-all> decompressing cargo artifacts from /nix/store/by7kqaq2jip4h2687hzjhylfdgldmj9f-fedimint-workspace-build-0.0.1/target.tar.zst to target
Sun, 17 Sep 2023 07:53:05 GMT fedimint-test-all> configuring

Summary,
                 before             vs   after
               size       ;   c;   d             size    ;   c;  d
deps-only: 3.59G =>  818 M;  4s;  4s  vs   3.74G =>  818M;  4s; 4s
workspace: 6.33G => 1.96 G;  7s;  7s  vs   2.75G => 1.16G;  3s; 6s

As far as I can tell it is working as expected.

Will try to rebase and debug.

Ah, damn it. sqlite-sys's build.rs uses std::fs::copy to generate the file by using checked-in copy.
Unfotunately on MacOS that uses fcopyfile:

The fcopyfile function preserves the modification, access, and creation timestamps from the source file to the destination file by default.

So the generated file copied the mtime from the existing one, and gets skipped. Bummer. Didn't take long to hit and overlooked issue.
Another reason why use-zstd-full will be required sometimes, but also I have a simple solution - if the given deriation doesn't inherit any artifacts, it should just always do the full snapshot.

Re: https://github.com/rust-lang/rust/issues/115982

Yep - that's (among other reasons) why I didn't like the look of anything which relies on FS metadata - too easy to mess it up accidentally, especially when cross platform.
inotify might be another viable approach? subscribe to the dir pre-build, watch for events and stash them for later?

I think it's OK as is for now. Thanks to using a full mode in deps only step, the worst case (build.rs scripts of 3rd party tools) are virtually never going to get affected by this. And it's always possible to revert to use-zstd-full.
It would be possible make a use-zstd-diff-precise. During decompression it would store somewhere next to ./target a list of all paths with their checksums, then during compression use mtime as a first fast check, and if 0, double-verify the existence, then checksum. Since everything here is basically IO-bound, an extra CPU time would get largely amortized and everything here should parallize well.  :)

I think for now we can force Darwin builds to do a non-incremental compression until https://github.com/rust-lang/rust/issues/115982 is resolved. We can also follow up with other optimizations later! (I think there's value in landing this in the mean time)

@dpc I pushed my changes to a separate branch (I had forked off before you had made other changes and I didn't want to necessarily clobber your branch): https://github.com/ipetkov/crane/pull/398
I think I've addressed all the points we've brought up here (for the time being), feel free to take it for a spin

I'm going to close this since https://github.com/ipetkov/crane/pull/398 has landed (though feel free to open a new PR if there's anything else worth changing). Thanks again for the feedback and initial direction here!


Please add a license.

https://choosealicense.com/no-license/
Absence of license file means no one else can use this code/software without being at risk of dealing with lawyers.
"If you find software that doesn’t have a license, that generally means you have no permission from the creators of the software to use, modify, or share the software. Although a code host such as GitHub may allow you to view and fork the code, this does not imply that you are permitted to use, modify, or share the software for any purpose."

Updated project with the MIT license.


Problem with logformat

Hello
Please help me with custom log format
[06/Nov/2015:17:25:37 +0000] <IP_ADDRESS> -> <IP_ADDRESS>:80 "200" [0.000 sec] "www.site.com" "GET /uk/live/23232 HTTP/1.1"  "https://www.site.com/uk/live" "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:40.0) Gecko/20100101 Firefox/40.0"

The following works:
log-format [%d:%t %^] %h %^"%s" [%T %^] %^ "%r" "%R" "%u"
date-format %d/%b/%Y
time-format %H:%M:%S

Thanks!


GCM topic to iOS is received, but no sound, vibration and badge

The issue79 branch has fixed issue 404 which is a great step forward.
However, I open this issue because when topic is received there is no sound, vibration and badge.
This is my client setup:
function _initPush() {
        var topics = _getTopics();
        var push = PushNotification.init({
            android: {
                senderID: app.config.gcm.senderID,
                topics: topics
            },
            ios: {
                senderID: app.config.gcm.senderID,
                gcmSandbox: "true",
                alert: "true",
                badge: "true",
                sound: "true",
                vibration: "true",
                clearBadge: "true",
                topics: topics
            }
        });

        push.on('registration', function(data) {
             console.log('Registration ID: ' + data.registrationId);
        });

        push.on('notification', function(data) {
            //TODO: update badge
            console.log('Push on notification')
            console.dir(data)
            push.finish(function() {
                console.log('Processing of push data is finished');
            });
        });

        push.on('error', function(e) {
            console.log('PushNotification error: ' + e.message);
        });
    }

On the service side I'm using node-gcm package like this:
var topic = _.findWhere(getTopics(), {"name": data.new_val.category[0]});
    if ( typeof topic !== typeof undefined ) {
        var message = new gcm.Message({
                            priority: 'high',
                            count: 1,
                            contentAvailable: true,
                            //dryRun: true,
                            notification: {
                                title: 'Yukon Now',
                                body: data.new_val.desc
                            }
                        }),
            sender  = new gcm.Sender(config.gcm.api_key);

            sender.send(message, {topic: '/topics/' + topic.topic}, function(err, response) {
                if (err) {
                    console.error(err);
                }
                else {
                    console.log('Push success: ' + JSON.stringify(response));
                }
            });
    }

When the topic is receive on my iPhone 6 the console output looks like this:

2016-01-14 12:08:51.242 YukonNow[869:513841] didReceiveNotification with fetchCompletionHandler
2016-01-14 12:08:51.242 YukonNow[869:513841] app in-active
2016-01-14 12:08:51.242 YukonNow[869:513841] this should be a silent push
2016-01-14 12:08:51.242 YukonNow[869:513841] Notification received
2016-01-14 12:08:51.242 YukonNow[869:513841] Push Plugin key: content-available
2016-01-14 12:08:51.242 YukonNow[869:513841] Push Plugin key: alert
2016-01-14 12:08:51.257 YukonNow[869:513841] Push Plugin finish called
2016-01-14 12:08:51.332 YukonNow[869:513841] didReceiveNotification with fetchCompletionHandler
2016-01-14 12:08:51.332 YukonNow[869:513841] app in-active
2016-01-14 12:08:51.332 YukonNow[869:513841] this should be a silent push
2016-01-14 12:08:51.332 YukonNow[869:513841] Warning: Application delegate received call to -application:didReceiveRemoteNotification:fetchCompletionHandler: but the completion handler was never called.
2016-01-14 12:08:51.332 YukonNow[869:513841] Notification received
14 12:08:51.333 YukonNow[869:513841] Push Plugin key: content-available
2016-01-14 12:08:51.333 YukonNow[869:513841] Push Plugin key: alert
2016-01-14 12:08:51.334 YukonNow[869:513841] Push Plugin finish called
2016-01-14 12:09:11.330 YukonNow[869:513841] Push Plugin stopBackgroundTask called
2016-01-14 12:09:11.331 YukonNow[869:513841] Push Plugin handlerObj
2016-01-14 12:09:11.333 YukonNow[869:513841] Push Plugin: stopBackgroundTask (remaining t: 9.981632)

@bardu great bug report :+1:

Is there anything I can do helping to fix this bug?  Unfortunately, I'm not a native programmer.

@bardu no, unless you know Objective-C it's going to be hard for you to contribute to the fix. However, you have written a great bug report. Being able to reproduce a bug is the key step in fixing it. Also, when I've got a fix I'll enlist you in testing.
It's been a bit crazy this month as we were putting on PhoneGap Day US. Actually we just finished up and folks are flying home today. :airplane:

@macdonst  any chance to get a fix in 1.6.0 release?

@bardu haven't had a chance to work on it yet. If not 1.6.0 then 1.6.x,

+1, this one isn't on my radar yet but it might be soon. I can assist in testing/debugging as well. Push comes to shove, I'll dive in the ObjC if needed.

This seems to be one of the oldest bugs. I checked with the plugin v1.6.1 and it still persist.
Same issue on Android
@macdonst  Any chance for a fix?

@bardu haven't had much of a chance to look at it but I will look at it for the next release.

Using plugin v1.6.2, cordova-ios v4.1.0 and a payload such as:
{
                            priority: 'high',
                            delayWhileIdle: true,
                            timeToLive: 3,
                            content_available: true,
                            notification: {
                                url: 'infos',
                                title: 'Whitehorse Now',
                                body: data.new_val.title,
                                sound: 'default',
                                badge: 1
                            }
                        }

solved the issue.
@macdonst Thanks for all your hard work!


BUG: remove warning when writing 1D, 4D, 5D and 6D images read from disk

Fixes #1753. The warning has been introduced by 0a1fd9e. 9e76e34
addressed it for 2D and 3D images but not for other dimensions.
This patch adresses it for dimensions 1D to 6D.
Other options to remove the warning would be:

Implement the same thing but without the templated function but copy pasting following what's been started by @aylward if templated function is not desirable in this code.
Remove the original direction matrix from the metadata dictionary since it's not used in ITK (I'm not sure where it's used @vfonov?).
Put the original direction matrix in the metadata dictionary as an std::vector instead of an itk::Matrix which would work for any dimension but requires a conversion to the adequate matrix type when it's used.

PR Checklist

[x] No API changes were made (or the changes have been approved)
[x] No major design changes were made (or the changes have been approved)
[ ] Added test (or behavior not changed)
[ ] Updated API documentation (or API not changed)
[ ] Added license to new files (if any)
[ ] Added Python wrapping to new files (if any) as described in ITK Software Guide Section 9.5
[ ] Added ITK examples for all new major features (if any)

Refer to the ITK Software Guide for
further development details if necessary.

Remove the original direction matrix from the metadata dictionary since it's not used in ITK (I'm not sure where it's used ).

for us the idea was to be able to get information on how data was stored on the disk, before ITK reader decided to flip it.

@vfonov I guess we should add a test case that uses the original direction matrix, so that someone doesn't mistakenly think no one uses it...

looks good to me.


jdk_security: sun/security/pkcs11/Secmod/AddTrustedCert.java failed with `main' threw exception: java.security.KeyStoreException: sun.security.pkcs11.wrapper.PKCS11Exception: CKR_ATTRIBUTE_READ_ONLY

19:58:21 ACTION: main -- Failed. Execution failed: `main' threw exception: java.security.KeyStoreException: sun.security.pkcs11.wrapper.PKCS11Exception: CKR_ATTRIBUTE_READ_ONLY
19:58:21 REASON: User specified action: run main/othervm AddTrustedCert
19:58:21 TIME:   1.614 seconds
19:58:21 messages:
19:58:21 command: main AddTrustedCert
19:58:21 reason: User specified action: run main/othervm AddTrustedCert
19:58:21 Mode: othervm [/othervm specified]
19:58:21 elapsed time (seconds): 1.614
19:58:21 configuration:
19:58:21 STDOUT:
19:58:21 SunPKCS11-NSSKeyStore version 1.8
19:58:21 entries: 1
19:58:21 [mykey]
19:58:21 first entry = Trusted certificate entry:
19:58:21 [
19:58:21 [
19:58:21   Version: V3
19:58:21   Subject<EMAIL_ADDRESS>CN=OpenTSA Root CA, O=OpenTSA, L=Dublin, ST=Co. Dublin, C=IE
19:58:21   Signature Algorithm: SHA1withRSA, OID = 1.2.840.1135<IP_ADDRESS>
19:58:21
19:58:21   Key:  Sun RSA public key, 2048 bits
19:58:21   modulus:<PHONE_NUMBER>6364875829141896049677220882914191436294605577513377891910662717336292436491710471594406842772073838695462019009454723293288506992417485761129126311538268002377286178684649711932051555842344360775863345218752895239460508761587090794001550599392104457188635329925564746414056111210478603450167440907565077703922928621867939042884745257219423496925695838757642236269036957557147241224660577528253185760515264362748497612078896510637739121732184250485539505699485155279825000189178169555672844007672373755234739866676449460941418806853690713277829199399068163905100762713680303566487520616527043839846563616127
19:58:21   public exponent: 65537
19:58:21   Validity: [From: Thu Oct 17 20:51:34 UTC 2002,
19:58:21                To: Mon Oct 16 20:51:34 UTC 2006]
19:58:21   Issuer<EMAIL_ADDRESS>CN=OpenTSA Root CA, O=OpenTSA, L=Dublin, ST=Co. Dublin, C=IE
19:58:21   SerialNumber: [    00]
19:58:21
19:58:21 Certificate Extensions: 6
19:58:21 [1]: ObjectId: <IP_ADDRESS> Criticality=false
19:58:21 AuthorityKeyIdentifier [
19:58:21 KeyIdentifier [
Tests with similar issue:
sun/security/pkcs11/Secmod/AddTrustedCert.java
sun/security/pkcs11/ec/TestECDH.java
sun/security/pkcs11/ec/TestECDSA.java
sun/security/pkcs11/ec/TestECGenSpec.java
sun/security/pkcs11/rsa/TestCACerts.java
sun/security/rsa/TestCACerts.java
tools/launcher/TestSpecialArgs.java

@sophia-guo you can close old issues that I raised back in June as duplicates, as your issues are 'fresher'...  this is a duplicate of #69

jdk_core is a super group of
jdk_core =
:jdk_lang
:jdk_util
:jdk_math
:jdk_io
:jdk_nio
:jdk_net
:jdk_rmi
:jdk_time
:jdk_security
:jdk_text
:core_tools
:jdk_other
Will adding core_tools and delete this group. Test build running time is expected to be one hour less.
Update this failure tests to be under jdk_security.

Thanks Sophia!

core_tools is a subset of jdk_tools, which is enabled. Will just delete jdk_core group.

Fail reason for the below 3 test cases matches with the #70
sun/security/pkcs11/ec/TestECDH.java
sun/security/pkcs11/ec/TestECDSA.java
sun/security/pkcs11/ec/TestECGenSpec.java
So removing these from bug description.

tools/launcher/TestSpecialArgs.java don't have any relation with this failure and it is not there in problem list, so removing that also from description.

The failures javax/crypto/CryptoPermission/CryptoPolicyFallback.java and javax/crypto/CryptoPermission/TestUnlimited.java are not reproducible.

Now all test failures except sun/security/pkcs11/Secmod/AddTrustedCert.java are tracking through different bug ids. And now it is a duplicate of openjdk bug https://bugs.openjdk.java.net/browse/JDK-8180837

Closing stale issues as they are not being addressed and fresh ones can/will be raised via nightly triage.


Add monitor API to notify each account if they have a low balance amount

Description
I addad a balance_alarm_amount column to the account table, and depending on the value set in that column.
Each account will notify low_balance based on the value of the each balance_alarm_amount
Fixes #750
Type of change
Please delete options that are not relevant.

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] This change requires a documentation update

Checklist before requesting a review

[x] I have performed a self-review of my code.
[x] If it is a core feature, I have added thorough tests.

Deployment

[ ] Should publish npm package
[x] Should publish Docker image

I have a question, the address table needs to have the primary key, as you suggested, and it is probable that it was not included in previous works.
If we change the database column and type, we must configure it in the migrations file and run it first. I can not see any of the migration files regarding this project's changes.
https://github.com/Bisonai/orakl/tree/master/monitor/migrations

You need to set alter table with a new migration file for it first.

balace_alarm_acmount column should be set with int data_type with default value 0

before running the above command, you need to remove previous work which you have done in the database.
Now tables of accounts have two index keys (account_pkey, account_address_index)
Remove both indexes and set to the migration file only one primary key.
Overall thank you for your job. You may need to have some time to figure it out, please do not hesitate to ask and discuss.~

I have a question, the address table needs to have the primary key, as you suggested, and it is probable that it was not included in previous works.
If we change the database column and type, we must configure it in the migrations file and run it first. I can not see any of the migration files regarding this project's changes.
https://github.com/Bisonai/orakl/tree/master/monitor/migrations

You need to set alter table with a new migration file for it first.
balace_alarm_acmount column should be set with int data_type with default value 0

before running the above command, you need to remove previous work which you have done in the database. Now tables of accounts have two index keys (account_pkey, account_address_index) Remove both indexes and set to the migration file only one primary key.
Overall thank you for your job. You may need to have some time to figure it out, please do not hesitate to ask and discuss.~

Thank you for your comment! I wrote new column in the create_initial_table.ts file.
balance_alarm_amount: {
        type: 'int',
        notNull: true,
        default: 0
      }

I have a question, I can't find create index code and already set the primary key in the migration file.
Still should I remove index code and set primary key?


chore: Added threads to logging

Description

Added thread in the logs, now an method running on threads would be visible.
for e.g.
[2024-09-02 06:56:16,840] [boundedElastic-2] requestId= userEmail= traceId= spanId= - Adding manage workspace policy map indices
The second brackets hold the thread on which this logging was run, the thread utilised is same as the one in which process is running.

[!WARNING]
If no issue exists, please create an issue first, and check with the maintainers if the issue is valid.

Automation
/ok-to-test tags=""
:mag: Cypress test results

[!CAUTION]
If you modify the content in this section, you are likely to disrupt the CI result for your PR.

Communication
Should the DevRel and Marketing teams inform users about this change?

[ ] Yes
[ ] No

This doesn't require CI runs to merge, neither does it require Unit tests.


Click inside iframe blocks test.

Are you requesting a feature or reporting a bug?
Bug reporting.
What is the current behavior?
I'm trying to check if redirect works after I click on an image that is inside an iframe.
The click is done because I receive feedback and the new page appears but then the rest of the test remains blocked. No code is executed after the click.
I get a message on the browser that "Waiting for element to appear".
In the console, the test fails at the "await t.click( ad )" line. I receive the following message: "1) The specified selector does not match any element in the DOM tree." as if the ad element cannot be found but it was just clicked or as if it searches again the ad on the new loaded page.
What is the expected behavior?
After the click action, the page loads and the test continues to run the next code lines.
How would you reproduce the current behavior (if this is a bug)?
Create an iframe. Add an image that has a src attribute. Click on it. Check if the page loads and doesn't wait for elements.
Provide the test code and the tested page URL (if applicable)
This is the code I'm using:
await t
.switchToIframe( iframe )
.click( ad )
where iframe and ad variables contain valid selectors ( they can be printed and I can extract attributes from them )
This code works with no problems if the image is not inside the iframe.
Specify your

operating system: macOs Sierra
testcafe version: 0.17.2
node.js version: v6.11.0

Hi @anamariaoros,
I've tried to reproduce your issue but it works properly on my side. Take a look at the following test:
import { Selector } from 'testcafe';

fixture `iframe images`
    .page `https://jsfiddle.net/fb8ke867/`;

test('My test', async t => {
    await t
        .switchToIframe('[name=result]')
        .click('img');
});

Could you please modify my example to reproduce the problem, create your example or provide us with a link to your page and test code?

testIssue.zip
Hi @AlexanderMoskovkin,
Thanks for your reply.
I attached the html and test file.
Let me know if it's ok.
Ana

@anamariaoros Thanks a lot for your example. It helped me to reproduce the problem. I'll try to find as reason of the issue as soon as possible and will notify you about the progress

@AlexanderMoskovkin any progress on this matter? Were you able to reproduce the behaviour?

Hi @anamariaoros. Yes, I've reproduced this and we've found the cause of the issue. TestCafe works incorrectly because it's a cross-domain iframe and click on the ad opens a link in a new browser window (not inside an iframe) on the original page. We don't handle this case properly for now. We're going to discuss the issue tomorrow with the team. After this we'll be able to provide you with some estimates.

Hi @AlexanderMoskovkin
Do you have any updates on the issue?

Hi @anamariaoros,
We've investigated the issue, and found the reason. When the redirect occurs the domain of the main page changes because the iframe has a cross-domain url. As a result we lose our service data from the browser's sessionStorage (since browser attach it to a specific domain).
It seems it requires changes in both modules (testcafe and the proxy). While we are finding the best fix for this you can use workarounds. You can use the navigateTo instead of click to redirect the page or test the target page separately.

Hi @AlexanderMoskovkin,
Thank you for your reply.
I used the navigateTo() to check if it redirects. So, thank you for the suggested workaround.
Regarding the issue with click: do you have an estimate on when that might be implemented?

Hi @anamariaoros,
Sorry for the long delay. The issue is quite complex for us and we didn't decide what the best way to fix it yet. So I can't provide you with estimates for now.
Does the provided workaround allow you to test your website/web application?

Hi @AlexanderMoskovkin,
I have a same problem with an iframe that contain a login window.
I use the Role to define the authentication process, so testcafe open a new page, compile the fields,  click on login button and go back to the main page.
But...when returns to the main page I'm not yet logged in, also if I force the reloading page, etc...
I have tried before the Role, also with switchToIframe, but not working probably because the context is different.
With Role constructor, If I understand, userID and password are saved into localStorage, but maybe can be a problem if the logged in is in another context, and not in a page of a same root.
In my case my domain is biblioteca.xxxxxx.it but the login window is an iframe that embed the source form testmy.xxxxxxx.it/index.php
Hope to explaned correctly my problem, also to help you to fix this.

Hi @lightmnd,
It seems your issue is different with the issue described in the topic starter post.
Browser keeps different localStorage/cookie values for different domains. I guess your issue relates to this. Try the following approach:
const role = Role('http://second-domain-url', async t => {
     // this is executed on the second domain page

    // fill login form here
    await t
        .typeText(loginSelector, 'login')
        .typeText(passwordSelector, 'password')
        .click(submitBtn);

   // TestCafe saves localStorage/cookies state for a Role when the `useRole` init function is executed.
   // So, go to the first domain page inside the Role init function to keep right credentials.
    await t.navigateTo('http://first-domain-url');
});

Please let me know, does this way works in your case? If not it's better to create a separated issue for this to discuss it.

Thank you so much for your answer @AlexanderMoskovkin !
and sorry for intruding me :)
I tried but unfortunately the system does not keep in login, it was a method I had already tried ... honestly do not understand the reason.
I definitely do other tests and keep you up to date on a specific discussion about it.
Have a nice day!


Fire trigger only once for multi machine environments

On a "vagrant up" the "up"-trigger gets fired for each machine of my Vagrant environment. I'd like to activate the trigger only once per "up"/"destroy". Is this possible with the current implementation?

+1

+1


Can't work with win10 x64

References to #6

Ok, I found the reason that the sample in README.rst won't works.
I don't have a ps/2 keyboard !
So I tried to plugged in a ps/2 keyboard, it works after restarted.
So if you want to try that "Keyboard Emulation" sample, you must have a ps/2 keyboard, otherwise nothing will happen!


Where are the files stored?

Where is the database files are stored into Android disk (similar to SQLite)?
I mean, after the user install the apk, where Hive save the data?
I'm using Hive with Flutter.

Hive stores the files inside the directory provided when calling Hive.init(..) method. If you've initialized Hive using initFlutter in that case hive will use path_provider to getApplicationDocumentsDirectory() method to determine application data directory.


pre-populated database android not working

I put the database file in assets and did the following:
var db = SQLite.openDatabase({name : "players.db", createFromLocation : "~example.db", location: 'Library'});
it's work but when I got the apk output, it did not work and did not have any tables in the database at all. There is no error to open the database, but there is no data.
Please help me, I could not find a solution to this problem

Problem solved.
It's problem for other reasons.
Thank you


net: enable happy eyeballs by default

What version of Go are you using (go version)?
go version go1.9.1 linux/amd64

Does this issue reproduce with the latest release?
Yes.
What operating system and processor architecture are you using (go env)?
I suspect any OS, but here's what I'm using:
GOARCH="amd64"
GOBIN=""
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOOS="linux"
GOPATH="/home/ivan/go"
GORACE=""
GOROOT="/usr/local/go"
GOTOOLDIR="/usr/local/go/pkg/tool/linux_amd64"
GCCGO="gccgo"
CC="gcc"
GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0"
CXX="g++"
CGO_ENABLED="1"
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"

What did you do?
Run the following program:
package main

import (
	"log"
	"net"
	"time"
)

func main() {
	d := net.Dialer{
		Timeout: 8 * time.Second,
	}

	s := time.Now()

	// IPv4 is example.com, IPv6 is a blackhole
	//
	// $ host broken-ipv6-working-ipv4.bobrik.name
	// broken-ipv6-working-ipv4.bobrik.name has address <IP_ADDRESS>
	// broken-ipv6-working-ipv4.bobrik.name has IPv6 address 100::1
	c, err := d.Dial("tcp", "broken-ipv6-working-ipv4.bobrik.name:80")
	if err != nil {
		log.Fatal(err)
	}

	log.Printf("Dial to %v completed in %v", c.RemoteAddr(), time.Since(s))
}

What did you expect to see?
Connection succeeding to IPv4 address with no human perceptible delay, working IPv6 or not.
What did you see instead?
2017/10/12 02:39:42 Dial to <IP_ADDRESS>:80 completed in 4.016407843s

This is the half of net.Dialer.Timeout.
What happened here is that my custom dialer did not set net.Dialer.DualStack to true explicitly.
Current docs: https://github.com/golang/go/blob/d2826d3e06/src/net/dial.go#L46-L51
// DualStack enables RFC 6555-compliant "Happy Eyeballs"
// dialing when the network is "tcp" and the host in the
// address parameter resolves to both IPv4 and IPv6 addresses.
// This allows a client to tolerate networks where one address
// family is silently broken.
DualStack bool

This setting is off by default in zero-value net.Dialer, net.Dial() and friends. However, it was turned on in http.DefaultTransport: #15324.
We fixed an issue in Grafana that caused 15s stalls for us:

https://github.com/grafana/grafana/pull/9367

Wikipedia says:

Implementations of Happy Eyeballs stacks exist in Google's Chrome web browser, Opera 12.10, Firefox version 13, OS X, and cURL.

https://en.wikipedia.org/wiki/Happy_Eyeballs

I think Go should also have this on by default. This protects users from indefinite (half of default infinite connect timeout is still infinity) stalls if resolver returns both A and AAAA (or even AAAAA), but the network drops fancy IPv6 packets on the floor.
Current name DualStack is also slightly confusing, because Go dials both stacks in either case. Setting only controls Happy Eyeballs part, so having NoHappyEyeballs instead would allow zero-valued dialers to work seamlessly with broken IPv6.
If we end up not enabling Happy Eyeballs by default, this issue will at least hold the reason why.
cc @bradfitz

If we change the default we want to make the zero Dialer pick up that default, because various code including package net does things like
 d := Dialer{Timeout: xxx}

to override one part of the default and expect the rest of the default behavior to carry forward. That would mean a second DisableDualStack bool and ignoring the current DualStack bool or something like that. Let's leave this API decision for Go 1.11, when @bradfitz and @mikioh can have more time to discuss it (Brad is away right now and will be until at least the freeze).

@rsc see the 2nd paragraph from the end in the original ticket description. I think we should go with DisableHappyEyeballs instead of DisableDualStack.

@bradfitz, @mikioh is this a better time when 1.11 window is open?

I'm fine with having appropriate default values for stateful/connection-oriented communication setup using net.Dial and its variants.
Right now I have no concrete idea which variables should have default values but it seems like Timeout and DualStack might be mandatory. The most extreme case I've ever heard is some experiment using MPTCP over IP over MLPPP over some satellite communication protocol, but we can exclude such possibility.
Well, for naming thing, in early draft CLs the existing DualStack of Dialer was HappyEyeballs (or EnableHappyEyeballs) and @rsc proposed renaming; see What's next in networking? Joyful spleens? Ebullient elbows? Raving kneecaps perhaps. .

I don't think that renaming RFC6555 is a good idea: https://tools.ietf.org/html/rfc6555
Timeouts seem like a whole big separate story, I'd rather focus this issue on Happy Eyeballs. Can we start by having DisableHappyEyeballs addition to the struct and deprecation of DualStack?
Suggested algorithm:
useHappyEyeballs := d.DualStack || !d.DisableHappyEyeballs

DisableHappyEyeballs
DualStack
Happy Eyeballs enabled

false
false
true (new default)

true
false
false (explicitly disabled)

false
true
true (explicitly enabled via DualStack)

true
true
false (explicitly weird)

The change here is that if user explicitly disables DualStack, they'll have to explicitly set DisableHappyEyeballs to true now to retain the same behavior.
The behavior is "connect to IPv6 and stall indefinitely if it doesn't respond". It's a fairly safe choice to assume this to be very exotic (if existing in practice at all) use case.

IIUC, Eyeballs or Eyeball network is slang or a password in telco sector or some inner circle. I'm still not sure the reason why we need to stick with it, even if it's a standardized technology name, though I still don't have a good replacement for it.
If we need a new control knob that defaults to being disabled, it's better to name FeatureNameDisabled instead of DisableFeatureName.

Timeouts seem like a whole big separate story

I don't think so because in my understanding the purpose of Happy Eyeballs is just to establish a TCP connection in a reasonable period and to report an error as quickly as possible without having unreasonable long failover delays on funky circumstances. Timeouts in the go runtime (Dialer.Timeout, Dialer.FallbackDelay) and the kernel (max # of syn-rexmit * rexmit-delay) are part of the delays.
However, what you want here is just to run a connection setup race by default, that's probably fine.

that's probably fine.

I mean, it's fine to send a CL containing:

"Updates #22225", not "Fixed #22225" so that we are able to navigate issues complaining "Happy Eyeballs is broken" or "Happy Eyeballs doesn't work on my circumstance" to this issue,
a new variable in net.Dialer with a nice name: not so pedantic, not so private to some inner circle.

Happy Eyeballs aka Fast Fallback. FastFallbackDisabled could be a good name for a var.

It sounds like the plan needs to be:

Deprecate (ignore) DualStack, because we want it to default to true and can't distinguish "unset" from "set to false explicitly".
Default to happy eyeballs ON.
Add new way to force eyeballs off.

One option is to add a new field for 3, but another option is to take the existing FallbackDelay field. If FallbackDelay < 0, then fallback is disabled.
Anyone object to that?

No objections, and @bradfitz approves, so let's do this for Go 1.12 very soon and then we'll have 3 months before the release to undo this change if it causes problems.


minimum cycle

This pull request is:

[x] A new Algorithm
[ ] An update to an existing algorithm.
[ ] An error fix
[ ] Other (Describe below*)

This pull request fixes:

Changes:

it can find the minimum cycle(grith) in the undirect graphs
it uses BFS


clientutils module injection fails in Chrome

Using the bookmarklet to inject CasperJS' clientutils module fails due to security issues with browser defaults.

@geekmuse This should have been fixed with 6c976a299caf2f9653851471ebdfdbfbedf6bc3c. Could you try updating your bookmarklet?

As part of a cleanup effort:
Looks to be a stale help request. Assuming you've moved on to better and cooler things. Please feel free to re-open if this is still an active issue for you and we'll try our best to help out.


How to match std::exception error text easily?

I am trying to write something analogous to Catch2 REQUIRE_THROWS_WITH( func(), ContainsString("too big")).
My first instinct was to use REQUIRE_THROWS_MATCHES like this:
#define SNITCH_IMPLEMENTATION
#include "snitch_all.hpp"

#include <exception>

void func() {
	throw std::runtime_error("unimplemented");
}

TEST_CASE("blah") {
	REQUIRE_THROWS_MATCHES( func(), std::runtime_error, snitch::matchers::contains_substring("too big") );
}

But apprently, I need to provide matcher for std::exception object, not just for its what() message?
a.cpp(11): error C2664: 'bool snitch::matchers::contains_substring::match(std::string_view) noexcept const': cannot convert argument 1 from 'const std::runtime_error' to 'std::string_view'
a.cpp(11): note: No user-defined-conversion operator available that can perform this conversion, or the operator cannot be called
c:\dev\testbed\cpp-snitch\snitch_all.hpp(3769): note: see declaration of 'snitch::matchers::contains_substring::match'
a.cpp(11): note: while trying to match the argument list '(const std::runtime_error)'
a.cpp(11): error C2664: 'snitch::small_string<1024> snitch::matchers::contains_substring::describe_match(std::string_view,snitch::matchers::match_status) noexcept const': cannot convert argument 1 from 'const std::runtime_error' to 'std::string_view'
a.cpp(11): note: No user-defined-conversion operator available that can perform this conversion, or the operator cannot be called
c:\dev\testbed\cpp-snitch\snitch_all.hpp(3774): note: see declaration of 'snitch::matchers::contains_substring::describe_match'
a.cpp(11): note: while trying to match the argument list '(const std::runtime_error, snitch::matchers::match_status)'

Is there any shorthand for this (IMO common) scenario? Or do I need to write my own set of matchers for std::exception message? Or am I missing something obvious?

You can use the matcher snitc:: matchers::with_what_contains{"message"}, which checks against the output of what(). The test macro REQUIRE_THROWS_MATCHES(...) doesn't require an exception object that derives from std::exception (e.g., could be int), so it can't call what() directly; that needs to happen in the matcher.

No worries!


Development: Improve use of verify in server tests

Checklist
General

[x] Language: I followed the guidelines for inclusive, diversity-sensitive, and appreciative language.
[x] I chose a title conforming to the naming conventions for pull requests.

Server

[x] I followed the coding and design guidelines.

Motivation and Context

While working on another PR about server tests, I noticed that there are some bad practices and redundancies related to verify that could be improved.
Description

In this PR I make verify statements shorter and more readable by:

Omitting times(1) since this is default behavior
Using atleastOnce() instead of atLeast(1)
Replacing times(0) with never()

Review Progress

Code Review

[ ] Code Review 1
[ ] Code Review 2

Test Coverage

unchanged

Codecov Report

Merging #6781 (2eceeeb) into develop (d8b419a) will increase coverage by 0.00%.
The diff coverage is n/a.

:exclamation: Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the Github App Integration for your organization. Read more.
Additional details and impacted files
@@            Coverage Diff             @@
##             develop    #6781   +/-   ##
==========================================
  Coverage      80.43%   80.43%
- Complexity     13992    13994    +2
==========================================
  Files           2449     2449
  Lines          93628    93628
  Branches       13156    13156
==========================================
+ Hits           75308    75312    +4
+ Misses         10069    10066    -3
+ Partials        8251     8250    -1

see 3 files with indirect coverage changes

Flag
Coverage Δ

client
76.21% <ø> (-0.01%)
:arrow_down:

server
84.97% <ø> (+0.01%)
:arrow_up:

Continue to review full report in Codecov by Sentry.

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


Testing

Various updates to add testing with vitest. Includes tests for @app/api/livepeer/route.ts, @app/lib/access-keys.ts, and token gating features in @app/components/Videos/Upload/index.tsx.

Summary by CodeRabbit

New Features

Introduced new test suites for various API functions including audio-to-text conversion and translation.
Added a new GET route for generating access keys in the Livepeer API.

Bug Fixes

Enhanced error handling and messaging in authentication and access key generation processes.

Documentation

Updated testing capabilities with new scripts and dependencies in package.json.

Chores

Updated .gitignore to manage ignored files and directories.
Removed obsolete files related to OrbisDB models and thirdweb type declarations.

Refactor

Streamlined various components and functions for better readability and maintainability, including the CreateInfo and CreateThumbnail components.

I just implemented the most of the requested revisions, will have the rest of them up tomorrow.

@liberalterian Which version is the correct version to merge for this file app/api/livepeer/audio-to-text/route.ts

I deleted it like we discussed. We aren't even using it at the moment and it was throwing an error during the build process.


Hints / messages that are displayed in the upper right corner of the wallet are not meaningful enough.

I think it should generally be checked whether the hints / messages that are displayed when using the wallet are really meaningful enough. The messages should be adapted for each case.
Here is an example:
Under "Profile Import" there is no direct input field. Instead of  "Fields cannot be empty. Please, verify your input."
a message should be displayed that describes that the user has to select an address.

In this case, the message should also be deleted after selecting the first address.  Otherwise the message remains visible even under "Finish".

@bassemmagdy maybe we can change message to
"Please select at least one account from the list." I think it's better than "Please, select 1 or more accounts from the list"

Fixed.


add option for Google Analytics

Adds the option to add Google Analytics tracking by setting the G_ANALYTICS_TAG env variable.
Signed-off-by: AdamKorcz<EMAIL_ADDRESS>

Fixes https://github.com/ossf/fuzz-introspector/issues/623