单机多卡训练过程中，会直接卡住，超时后报错

作者您好，首先十分感谢贡献了这么棒的工作。最近在学习您的代码时，发现了训练过程中的一些问题，这十分困扰我。如果您能给予一些解决方案或建议，我将十分感激！
言简意赅，我在单机多卡（4个GPU，3090）训练模型时，会随机地卡在某一个epoch上（可能是第2个，可能是第10个，也可能是第20个），然后之后会说NCCL通信超时的报错。大概是卡在loss.backward()里面的 torch.distributed.all_reduce这里，具体报错如
log_error.txt：
Loss: 0.004, MAE:  120.83, Best_MAE:  120.8300 MSE:  357.8124,Best_MSE:  357.8124
[E ProcessGroupNCCL.cpp:587] [Rank 1] Watchdog caught collective operation timeout: WorkNCCL(OpType=ALLREDUCE, Timeout(ms)=3600000) ran for 360
6109 milliseconds before timing out.
[E ProcessGroupNCCL.cpp:587] [Rank 3] Watchdog caught collective operation timeout: WorkNCCL(OpType=ALLREDUCE, Timeout(ms)=3600000) ran for 360
6191 milliseconds before timing out.
[E ProcessGroupNCCL.cpp:587] [Rank 0] Watchdog caught collective operation timeout: WorkNCCL(OpType=ALLREDUCE, Timeout(ms)=3600000) ran for 360
6274 milliseconds before timing out.
[E ProcessGroupNCCL.cpp:587] [Rank 2] Watchdog caught collective operation timeout: WorkNCCL(OpType=ALLREDUCE, Timeout(ms)=3600000) ran for 360
6654 milliseconds before timing out.
Traceback (most recent call last):
  File "/home/cliu/testcode/STEERER_torch1-10-1/tools/train_cc.py", line 382, in <module>
    main()
  File "/home/cliu/testcode/STEERER_torch1-10-1/tools/train_cc.py", line 312, in main
    train(config, epoch, config.train.end_epoch,
  File "/home/cliu/testcode/STEERER_torch1-10-1/./lib/core/cc_function.py", line 92, in train
    loss.backward()
  File "/home/cliu/anaconda3/envs/py39/lib/python3.9/site-packages/torch/_tensor.py", line 307, in backward
    torch.autograd.backward(self, gradient, retain_graph, create_graph, inputs=inputs)
  File "/home/cliu/anaconda3/envs/py39/lib/python3.9/site-packages/torch/autograd/__init__.py", line 154, in backward
    Variable._execution_engine.run_backward(
  File "/home/cliu/anaconda3/envs/py39/lib/python3.9/site-packages/torch/autograd/function.py", line 199, in apply
    return user_fn(self, *args)
  File "/home/cliu/anaconda3/envs/py39/lib/python3.9/site-packages/torch/nn/modules/_functions.py", line 99, in backward
    torch.distributed.all_reduce(
  File "/home/cliu/anaconda3/envs/py39/lib/python3.9/site-packages/torch/distributed/distributed_c10d.py", line 1287, in all_reduce
    work = group.allreduce([tensor], opts)
RuntimeError: NCCL communicator was aborted on rank 1.  Original reason for failure was: [Rank 1] Watchdog caught collective operation timeout:
 WorkNCCL(OpType=ALLREDUCE, Timeout(ms)=3600000) ran for 3606109 milliseconds before timing out.
Traceback (most recent call last):
  File "/home/cliu/testcode/STEERER_torch1-10-1/tools/train_cc.py", line 382, in <module>
    main()
  File "/home/cliu/testcode/STEERER_torch1-10-1/tools/train_cc.py", line 312, in main
    train(config, epoch, config.train.end_epoch,
  File "/home/cliu/testcode/STEERER_torch1-10-1/./lib/core/cc_function.py", line 92, in train
    loss.backward()
  File "/home/cliu/anaconda3/envs/py39/lib/python3.9/site-packages/torch/_tensor.py", line 307, in backward
  Variable._execution_engine.run_backward(                                                                                [75/1812]
  File "/home/cliu/anaconda3/envs/py39/lib/python3.9/site-packages/torch/autograd/function.py", line 199, in apply
    return user_fn(self, *args)
  File "/home/cliu/anaconda3/envs/py39/lib/python3.9/site-packages/torch/nn/modules/_functions.py", line 99, in backward
    torch.distributed.all_reduce(
  File "/home/cliu/anaconda3/envs/py39/lib/python3.9/site-packages/torch/distributed/distributed_c10d.py", line 1287, in all_reduce
    work = group.allreduce([tensor], opts)
RuntimeError: NCCL communicator was aborted on rank 2.  Original reason for failure was: [Rank 2] Watchdog caught collective operation timeout:
 WorkNCCL(OpType=ALLREDUCE, Timeout(ms)=3600000) ran for 3606654 milliseconds before timing out.
Traceback (most recent call last):
  File "/home/cliu/testcode/STEERER_torch1-10-1/tools/train_cc.py", line 382, in <module>
Traceback (most recent call last):
  File "/home/cliu/testcode/STEERER_torch1-10-1/tools/train_cc.py", line 382, in <module>
    main()
  File "/home/cliu/testcode/STEERER_torch1-10-1/tools/train_cc.py", line 312, in main
    train(config, epoch, config.train.end_epoch,
  File "/home/cliu/testcode/STEERER_torch1-10-1/./lib/core/cc_function.py", line 92, in train
    loss.backward()
  File "/home/cliu/anaconda3/envs/py39/lib/python3.9/site-packages/torch/_tensor.py", line 307, in backward
    torch.autograd.backward(self, gradient, retain_graph, create_graph, inputs=inputs)
  File "/home/cliu/anaconda3/envs/py39/lib/python3.9/site-packages/torch/autograd/__init__.py", line 154, in backward
    Variable._execution_engine.run_backward(
  File "/home/cliu/anaconda3/envs/py39/lib/python3.9/site-packages/torch/autograd/function.py", line 199, in apply
    return user_fn(self, *args)
  File "/home/cliu/anaconda3/envs/py39/lib/python3.9/site-packages/torch/nn/modules/_functions.py", line 99, in backward
    torch.distributed.all_reduce(
  File "/home/cliu/anaconda3/envs/py39/lib/python3.9/site-packages/torch/distributed/distributed_c10d.py", line 1287, in all_reduce
    work = group.allreduce([tensor], opts)
RuntimeError: NCCL communicator was aborted on rank 0.  Original reason for failure was: [Rank 0] Watchdog caught collective operation timeout:
 WorkNCCL(OpType=ALLREDUCE, Timeout(ms)=3600000) ran for 3606274 milliseconds before timing out.
    main()
  File "/home/cliu/testcode/STEERER_torch1-10-1/tools/train_cc.py", line 312, in main
    train(config, epoch, config.train.end_epoch,
  File "/home/cliu/testcode/STEERER_torch1-10-1/./lib/core/cc_function.py", line 92, in train
    loss.backward()
  File "/home/cliu/anaconda3/envs/py39/lib/python3.9/site-packages/torch/_tensor.py", line 307, in backward
    torch.autograd.backward(self, gradient, retain_graph, create_graph, inputs=inputs)
  File "/home/cliu/anaconda3/envs/py39/lib/python3.9/site-packages/torch/autograd/__init__.py", line 154, in backward
  Variable._execution_engine.run_backward(                                                                                [37/1812]
  File "/home/cliu/anaconda3/envs/py39/lib/python3.9/site-packages/torch/autograd/function.py", line 199, in apply
    return user_fn(self, *args)
  File "/home/cliu/anaconda3/envs/py39/lib/python3.9/site-packages/torch/nn/modules/_functions.py", line 99, in backward
    torch.distributed.all_reduce(
  File "/home/cliu/anaconda3/envs/py39/lib/python3.9/site-packages/torch/distributed/distributed_c10d.py", line 1287, in all_reduce
    work = group.allreduce([tensor], opts)
RuntimeError: NCCL communicator was aborted on rank 3.  Original reason for failure was: [Rank 3] Watchdog caught collective operation timeout:
 WorkNCCL(OpType=ALLREDUCE, Timeout(ms)=3600000) ran for 3606191 milliseconds before timing out.
[E ProcessGroupNCCL.cpp:341] Some NCCL operations have failed or timed out. Due to the asynchronous nature of CUDA kernels, subsequent GPU oper
ations might run on corrupted/incomplete data. To avoid this inconsistency, we are taking the entire process down.
[E ProcessGroupNCCL.cpp:341] Some NCCL operations have failed or timed out. Due to the asynchronous nature of CUDA kernels, subsequent GPU oper
ations might run on corrupted/incomplete data. To avoid this inconsistency, we are taking the entire process down.
terminate called after throwing an instance of 'std::runtime_error'
terminate called after throwing an instance of 'std::runtime_error  what():  [Rank 0] Watchdog caught collective operation timeout: WorkNCCL(Op
Type=ALLREDUCE, Timeout(ms)=3600000) ran for 3606274 milliseconds before timing out.'

  what():  [Rank 3] Watchdog caught collective operation timeout: WorkNCCL(OpType=ALLREDUCE, Timeout(ms)=3600000) ran for 3606191 milliseconds
before timing out.
ERROR:torch.distributed.elastic.multiprocessing.api:failed (exitcode: -6) local_rank: 0 (pid: 3366366) of binary: /home/cliu/anaconda3/envs/py3
9/bin/python
Traceback (most recent call last):
  File "/home/cliu/anaconda3/envs/py39/lib/python3.9/runpy.py", line 197, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "/home/cliu/anaconda3/envs/py39/lib/python3.9/runpy.py", line 87, in _run_code
    exec(code, run_globals)
  File "/home/cliu/anaconda3/envs/py39/lib/python3.9/site-packages/torch/distributed/launch.py", line 193, in <module>
    main()
  File "/home/cliu/anaconda3/envs/py39/lib/python3.9/site-packages/torch/distributed/launch.py", line 189, in main
    launch(args)
  File "/home/cliu/anaconda3/envs/py39/lib/python3.9/site-packages/torch/distributed/launch.py", line 174, in launch
    run(args)
  File "/home/cliu/anaconda3/envs/py39/lib/python3.9/site-packages/torch/distributed/run.py", line 710, in run
    elastic_launch(
  File "/home/cliu/anaconda3/envs/py39/lib/python3.9/site-packages/torch/distributed/launcher/api.py", line 131, in __call__
    return launch_agent(self._config, self._entrypoint, list(args))
  File "/home/cliu/anaconda3/envs/py39/lib/python3.9/site-packages/torch/distributed/launcher/api.py", line 259, in launch_agent
    raise ChildFailedError(
    torch.distributed.elastic.multiprocessing.errors.ChildFailedError:
============================================================
tools/train_cc.py FAILED
------------------------------------------------------------
Failures:
[1]:
  time      : 2024-07-25_13:12:26
  host      : g01
  rank      : 1 (local_rank: 1)
  exitcode  : 1 (pid: 3366367)
  error_file: <N/A>
  traceback : To enable traceback see: https://pytorch.org/docs/stable/elastic/errors.html
[2]:
  time      : 2024-07-25_13:12:26
  host      : g01
  rank      : 2 (local_rank: 2)
  exitcode  : 1 (pid: 3366368)
  error_file: <N/A>
  traceback : To enable traceback see: https://pytorch.org/docs/stable/elastic/errors.html
[3]:
  time      : 2024-07-25_13:12:26
  host      : g01
  rank      : 3 (local_rank: 3)
  exitcode  : -6 (pid: 3366369)
  error_file: <N/A>
  traceback : Signal 6 (SIGABRT) received by PID 3366369
------------------------------------------------------------
Root Cause (first observed failure):
[0]:
  time      : 2024-07-25_13:12:26
  host      : g01
  rank      : 0 (local_rank: 0)
  exitcode  : -6 (pid: 3366366)
  error_file: <N/A>
  traceback : Signal 6 (SIGABRT) received by PID 3366366
============================================================

我目前大致做了如下尝试或排查，但是还是没有解决这个问题：
1、数据集本身并不存在问题。即使存在一些负样本，但是之前我使用其他模型（不同的项目文件）在该数据集上进行单机多卡训练时，并未出现如上问题。
2、不太可能是pytorch版本的问题。开始我考虑过可能是pytorch版本与NCCL版本可能不太适配，于是我按照我之前顺利使用单机多卡训练的项目的环境，来重新安装了较为一致的pytorch环境，并在版本更迭产生的可能会出错的代码进行了更改。
3、单卡训练应该是没有问题的，只是对单卡的显存要求比较高了，需要在A100这样的显卡上单卡训练。
4、关闭了opencv的多线程。因为训练代码中对dataset的处理，有用opencv相关操作，看网上说有可能是OpenCV与Pytorch互锁，于是在在import cv2后面添加cv2.setNumThreads(0)和cv2.ocl.setUseOpenCL(False)。
5、降低num_workers值；通过torch.set_num_threads()调整pytorch的线程数。
6、在loss.backward之前加了dist.barrier()
7、启动训练脚本时，设置了OMP_NUM_THREADS=1和NCCL_P2P_DISABLE=1：
这个问题实在是很困扰我，我也排查了训练代码，也不知道究竟是哪里出现了问题。请问作者在使用多卡训练的时候，会出现同样的问题吗？麻烦您可以解答一下，十分感谢！

@congyi-lcy 同学你好，你这个问题解决了吗？我在训练带有MOE的混合模型时也遇到了这个问题，搞了小一周了，我很头疼。


feat: Visualize World map of electronic passports

Implements #106

PR has been closed due to changes are migrated to the different repo


Update auth, dynamodb, s3, sqs to 2.17.146

Updates

software.amazon.awssdk:auth
software.amazon.awssdk:dynamodb
software.amazon.awssdk:s3
software.amazon.awssdk:sqs

from 2.17.66 to 2.17.146.
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

Ignore future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "software.amazon.awssdk" } ]

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

Superseded by #857.


[RFC] Supporting multiple versions of the Chrome Debugger Protocol

Hi Kevin,
Thanks for accepting my earlier pull request!
So, I went ahead and tried to implement code which can support the generation of the debugger protocol for multiple protocol versions, with special interest on my side to be able to support both the latest version of Chrome and Safari on iOS.
This PR is a first attempt to do so. It takes the various protocol.json files, and tries to merge all these files together.
It works rather nicely, but there are some edge cases which need to be taken care of and for which I'd like to consult with you. Overall, there are about 805 classes being generated in the current version of ChromeDevTools. With the 'multi protocol version'-support, I've encountered issues for 74 of them.
Basically they break down into these categories.

Commands to which parameters have been added. Take, for example, void continueToLocation(Location location, boolean interstatementLocation) vs. void continueToLocation(Location location) (in the debugger namespace). I could think of these ways to handle them:
Add the new interstatementLocation parameter as a property to the ContinueToLocation command. But how do you let the user know that this parameter is available on one version of the debugger tools and not the other?
Create two commands, and suffix them with (say) the number of parameters - ContinueToLocation1 and ContinueToLocation2.But how would a user know which one is the correct one?
Commands where the same parameter conflicts. Take, for example, void connectToWorker(string workerId) vs void connectToWorker(integer workerId).
Methods a diverging set of parameters. For example, (...) getMatchedStylesForNode(integer nodeId, boolean excludePseudo, boolean excludeInherited) vs getMatchedStylesForNode(integer nodeId, boolean includePseudo, boolean includeInherited) -- the boolean parameters have the opposite meaning
Commands with different return types, usually from void to a specific return type
Types with additional properties, e.g. the TimelineEvent type has gained the startTime and endTime properties in the latest version of the Chrome debugger tools.

I can think of a couple of approaches:

One version wins (e.g. the latest Chrome version). If another version adds a new command or type which does not conflict, it gets added. If a conflicting change is detected, that command or type is simply not available.
Multiple classes for the different versions where conflicts occur. The classes get tagged with an attribute (+ perhaps a <remarks> section) which indicate which version they apply to. Types can inherit from other versions of the type if properties have been added; or the properties get tagged with an attribute as well. Possibly runtime validation?
One namespace per version of the protocol. That means a lot of duplicated classes, which are not compatible - meaning you cannot simply share your code between, say, v1.0 and v1.1 of the Chrome protocol.

The code which I have so far is attached in this pull request. If you run the ProtocolGenerator, it will output the commands/types/events for which conflicts are detected in a CSV-format. (I've loaded that data in an Excel pivot-table and it helped me analyze some of the differences).
Thoughts?

Wow, interesting problem.  Funny you stumbled into this.  As I was reading the previous PR I figured that the next step is to just make different namespaces for each version.  I always figured there would be breaking changes.  Especially since it was pre 1.0.0 when I created this.  I'm really glad you recommended this as option 3, because I'm totally on board with that.  The biggest downside I see is that it might make development using this library confusing if you are referencing classes from multiple files - you'll have to make sure you import the correct namespace in each one.  Perhaps each version could get compiled into it's own assembly?  The Nuget package could link to the latest, but still install old versions if you want?  Is that fair to devs?
The SupportedBy attribute is an interesting approach.  How'd you like where that was heading?  I think if there was a way to globally set what version of the protocol you wanted to use, extend the Roslyn compiler so you could set your version somewhere and still get compilation errors, this would be pretty awesome.  Probably (definitely) overkill, but just throwing some ideas (probably bad) out there.
Actually, since you're the only one supporting multiple versions of the protocol.  How often, if ever, would you expect to reference different versions of the protocol from within the same application?  Just curious, trying to thing about how to maintain this going forward.
Finally, for now, thanks for adding tests!!!!


Initial check-in of port to OVR SDK 0.6.0

Not done yet. Still have compile errors.  Oculus changed DrawEyeViewsPostDistorted() to just DrawEyeViews().  Still need to update that.  There's several other errors as well.  I could use some help here.  I'm running low on time with this.  Anyone who can, please help out.  Thanks.

ok, go ahead and review this now.

removed vrapi from project settings.  not sure how that was working for me.

On Eclipse,
Framework Project -> Properties
-> Android: add library for VrAppFramework
-> Project References: Check LibOVR and VrAppFramework
At least, our framework builds successfully and runs with ovr <IP_ADDRESS>. We may need more tests with applications.

I will also take a look soon in the code porting part changes including draw eye views in activity_jni.cpp

All the sample app are working correctly with the latest check-ins on Note 4

Tried. Apps run well with this build.

Here is what I get from my side:

To build with VrAppFramework. You need to import VrApi into workspace first(But no need to change any project properties).
But for Framework, you can't make VrApi as its reference since Framework will already put libvrapi.so into lib/armeabi-v7a. If you still put VrApi into Framework's reference list. Then it will lead to duplicate library issue.

i think you shouldn't be seeing this with my latest check-in.  are you?

Yes. I think current version is fine.

ok, merge it then?

I took a look source codes briefly as well. As all the gvr samples are running well like Deepak said, I am okay with merging it at this point.

I think now we need to update the project website regarding the build instruction especially the "Building the Oculus Mobile SDK" part.


Do not shade Byte Buddy

Byte Buddy is currently shaded. As Byte Buddy retains compatibility, not shading the library would allow running recent JVMs without an update of assertj but only BB. Other libraries like Mockito or Hibernate do not shade BB and there are no known issues with this approach. In case of an error, stack traces would also be easier to process as break points remain intact.

Seems reasonable to me. What do you think @joel-costigliola?

If BB retains compatibility then I think it's fine, happy to remove shading as it will make life easier.

@raphw do you plan to have a major release at some point in the future that would break the backward compatibility?

No, I do not and given the wide spread of the library, I think I would change the namespace and group id in such a case.

Thanks @raphw!
I think this xkcd is quite close to be true for byte buddy! 😆 (you might consider relocating to Nebraska!)


on close function

I might be missing something basic, but is there a way to pass a function to open to be called when the dialog is closed non-programmatically (esc or overlay click)?  Or do I have to rely on the event broadcast?  I'm using a controller and it seems its remaining in scope somehow after the dialog is dismissed.  Maybe that's the bigger issue - is the controller scope being destroyed?

Can you post an example?

Yes, the parent scope is being destroyed, see #5

It's been fixed in version 1.0.4
Let me know


kek

instead of making it random, why not make it 100% :)

instead of making it random, why not make it 100% :)

well you can ser chancae option to 100


Could not use "NunoMaduroCollisionAdaptersPhpunitPrinter" as printer: class does not exist

Strange a simple
php artisan test is working but
php artisan test --watch not and getting the following error:
php artisan test --watch

PHPUnit 9.5.2 by Sebastian Bergmann and contributors.

Could not use "NunoMaduroCollisionAdaptersPhpunitPrinter" as printer: class does not exist

Please create an issue on the collision repo.

Nevermind, cc @caneco

I think this is an escaping issue with the command line flag. 🤔 No idea which part of this plugin is causing it to not be escaped though.

I'm pretty sure I know what's causing this, just going to do some tests.

Is someone planning a fix for this issue? or I can check it out and try to fix it.

Same situation, anyone have any ideas?

Anyone solved this?


Check filter-generate-jobs job completed successfully before trying to run upgrade-prod-hubs job

Adds a statement to check that the filter-generate-jobs job completed successfully before trying to execute upgrade-prod-hubs job. This should prevent the job always trying to run, even with invalid input.
fixes https://github.com/2i2c-org/infrastructure/issues/1233

@sgibson91 yikes always() is messy and badly documented.
I think though that by not having it here, a failure in one of the several staging jobs will make the deploy to prod hub job be skipped due to previous failures.

We need always() because other kinds of status check, which kind of does the same thing, doesn't make the job run if there is a previous failure - because of undocumented magic.
We want to not run if filter-generate-jobs errored still though, so we may want to add a explicit status check about the outcome of that job specifically if needed, or make our check for outputs be smarter than != `[]` or adding a default value to our output so that we don't end up with a blank string making this become truthy when the output is entirely unset.

If you want to accomplish (i) filter-generate-jobs has successfully completed (satisfied by the needs block),

I think though that by not having it here, a failure in one of the several staging jobs will make the deploy to prod hub job be skipped due to previous failures.

I think this is not true because upgrade-staging-and-support is not listed in upgrade-prod-hubs's needs block. If it were then I believe your assessment is true. But as it is, I think it only cares about the status of filter-generate-jobs which has retained it's always() statement

Related

About always(): https://docs.github.com/en/actions/learn-github-actions/expressions#always
About more explicit checks alongside always() etc.: https://docs.github.com/en/actions/learn-github-actions/expressions#evaluate-status-explicitly

Ugh, yeah this is not tidy at all.
I tested over here: https://github.com/sgibson91/testing-gh-actions/blob/main/.github/workflows/chained-failure.yaml
It also seems that the overall status will always be failed even though the workflow completed right through to the end. Which I don't really like, but I guess we need to know about support/staging failures somehow.

This is much more sensible!

@sgibson91 thanks for following up and fixing this!


The requested module 'flast' does not provide an export named 'utils'

Description
When running any restringer command (including restringer -h), the command fails with a SyntaxError indicating that the 'flast' module does not provide an export named 'utils'. This issue should affect any system with Node.js v20.13.0 and a fresh global installation of restringer.
Error Message
(node:12538) ExperimentalWarning: Importing JSON modules is an experimental feature and might change at any time
SyntaxError: The requested module 'flast' does not provide an export named 'utils'
at ModuleJob._instantiate (node:internal/modules/esm/module_job:134:21)
at async ModuleJob.run (node:internal/modules/esm/module_job:217:5)
at async ModuleLoader.import (node:internal/modules/esm/loader:316:24)
at async asyncRunEntryPointWithESMLoader (node:internal/modules/run_main:123:5)

Environment
Reproduction Environment

Node.js version: v20.13.0 (fresh installation)
NPM version: 10.5.2
Restringer version: 2.0.0
Installation method: Fresh npm install -g restringer

Test System Details (where reproduced)

Platform: GitHub Codespace
OS: Ubuntu 20.04.6 LTS x86_64

Steps to Reproduce

Start with a fresh installation of Node.js v20.13.0
Install restringer globally: npm install -g restringer
Run any restringer command (e.g., restringer -h, restringer --output, etc.)

Expected Behavior
The command should execute its intended function (display help information,  deobfuscate, etc.).
Actual Behavior
All commands fail with the same SyntaxError related to missing exports from the 'flast' dependency.
The error occurs in [node_modules path]/restringer/src/restringer.js line 2, specifically when trying to import the utils export from 'flast'.

Thanks for raising this issue!
This should now be fixed in v2.0.2
Please re-open the ticket if the issue persists


Ddms0.0.1 beta dev

ddms\classes\command\NewDynamicOutputComponent:
Continued addressing issue #26 and issue #27.
Implemented the following tests:

testRunThrowsRuntimeExpceptionIfBoth_initial_output_And_initial_output_file_FlagsAreSpecified()

testRunSetDynamicOutputFilesContentToSpecifiedInitialOutputIf_initial_output_FlagIsSpecified()

testRunSetDynamicOutputFilesContentToMatchSpecifiedFilesContentIf_initial_output_file_FlagIsSpecified()

All PhpUnit and PhpStan tests are passing.

Not accepted, additional changes have been made since this pull request was made that should also be included and documented in merge,


Requires CORS to be enabled on app

Hi, just running through the post and found I couldn't connect to the Okta api from angular due to CORS not being enabled, had to hunt down where this is set (via http://developer.okta.com/docs/api/getting_started/enabling_cors.html) and enable it for the app for it to work. Maybe this should be added to the tutorial?

For some reason, I wasn't subscribed to this repo. Sorry about that. I'll get this fixed soon.


Remove checks for Opensearch version

Description
Remove checks for Opensearch version
Issues Resolved
#36
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

@prudhvigodithi Please review this PR.

Thanks @rblcoder the PR LGTM, can you please update the the readme with more details mentioning the support for 2.x series of OpenSearch with the provider 2.x release series? also please add for 1.x version of OpenSerach its recommended to use 1.x version of provider.
Thank you

Also @rblcoder should we create a seperate readme for versioning  and support, like a matrix any thoughts? Example https://kops.sigs.k8s.io/welcome/releases/
https://github.com/prometheus-operator/kube-prometheus?tab=readme-ov-file#compatibility
Adding @bbarani @peterzhuamazon @phillbaker @jackson-theisen

Also @rblcoder should we create a seperate readme for versioning and support, like a matrix any thoughts? Example https://kops.sigs.k8s.io/welcome/releases/ https://github.com/prometheus-operator/kube-prometheus?tab=readme-ov-file#compatibility Adding @bbarani @peterzhuamazon @phillbaker @jackson-theisen

@prudhvigodithi I have modified the compatibility information according to the example you have provided.


CMS Comment Window is too large on some screens

The button cannot be pressed.

This should be fixed as part of PR #81
)


Android OvrRelease build

Okay, I really need some help here.
I've successfully created and installed my "cardboard release" app on my iPhone.
Getting it over to Android for the GearVR is a whole other story. So, when I run from the testbed app or I just run a debug app on my Android - everything works (more or less - the 360videos never load but I'm chalking that up the network). I do have an oculus signature at android/app/src/assets
So I've tried building a release and signing in through Android Studio. Everything seems to install okay - but it crashes on launch. So I ran adb logcat and saw that as soon as it crashes and I'm seeing:

E/AndroidRuntime: FATAL EXCEPTION: mqt_js                                                    Process: com.virosample.ovr, PID: 27935                                                    java.lang.RuntimeException: com.facebook.react.devsupport.JSException: Could not get BatchedBridge, make sure your bundle is packaged correctly                                                        at com.facebook.react.bridge.DefaultNativeModuleCallExceptionHandler.handleException(DefaultNativeModuleCallExceptionHandler.java:24)                                                        at com.facebook.react.devsupport.DisabledDevSupportManager.handleException(DisabledDevSupportManager.java:158)                                                        at com.facebook.react.cxxbridge.CatalystInstanceImpl.onNativeException(CatalystInstanceImpl.java:431)                                                        at com.facebook.react.cxxbridge.CatalystInstanceImpl.access$400(CatalystInstanceImpl.java:51)                                                        at com.facebook.react.cxxbridge.CatalystInstanceImpl$NativeExceptionHandler.handleException(CatalystInstanceImpl.java:447)                                                        at com.facebook.react.bridge.queue.MessageQueueThreadHandler.dispatchMessage(MessageQueueThreadHandler.java:33)                                                        at android.os.Looper.loop(Looper.java:207)                                                        at com.facebook.react.bridge.queue.MessageQueueThreadImpl$3.run(MessageQueueThreadImpl.java:196)                                                        at java.lang.Thread.run(Thread.java:818)                                                     Caused by: com.facebook.react.devsupport.JSException: Could not get BatchedBridge, make sure your bundle is packaged correctly                                                        at com.facebook.react.bridge.queue.NativeRunnable.run(Native Method)                                                        at android.os.Handler.handleCallback(Handler.java:815)                                                        at android.os.Handler.dispatchMessage(Handler.java:104)                                                        at com.facebook.react.bridge.queue.MessageQueueThreadHandler.dispatchMessage(MessageQueueThreadHandler.java:31)                                                        at android.os.Looper.loop(Looper.java:207)                                                         at com.facebook.react.bridge.queue.MessageQueueThreadImpl$3.run(MessageQueueThreadImpl.java:196)                                                         at java.lang.Thread.run(Thread.java:818)                                                      Caused by: com.facebook.jni.CppException: Could not get BatchedBridge, make sure your bundle is packaged correctly                                                        at com.facebook.react.bridge.queue.NativeRunnable.run(Native Method)                                                         at android.os.Handler.handleCallback(Handler.java:815)                                                         at android.os.Handler.dispatchMessage(Handler.java:104)                                                         at com.facebook.react.bridge.queue.MessageQueueThreadHandler.dispatchMessage(MessageQueueThreadHandler.java:31)                                                         at android.os.Looper.loop(Looper.java:207)                                                         at com.facebook.react.bridge.queue.MessageQueueThreadImpl$3.run(MessageQueueThreadImpl.java:196)                                                         at java.lang.Thread.run(Thread.java:818)  04-20 13:49:27.441 874-915/? E/MultiWindowProxy: getServiceInstance failed! 04-20 13:49:32.647 239-455/? E/MAL-Daemon:  (  rds_ru_3gpp_status_ind, 1421) [RDS-E][RU][EVENT_RU_DM_3GPP_STATUS_IND] Invalid u43gpp_status:0x6 04-20 13:49:35.629 252-1145/? E/Drm: Failed to find drm plugin 04-20 13:49:35.669 252-1145/? E/Drm: Failed to find drm plugin

So a quick Google regarding BatchedBridge not being found - I see people saying that I need to run react-native start (which worked okay okay) and then run cd android && ./gradlew assembleRelease - this gets me as far as this bit of code:

`:app:bundleOvrReleaseJsAndAssets
Loading dependency graph, done.
Warning: The transform cache was reset.
<EMAIL_ADDRESS>could not be found, because 'node_modules/react-native/Libraries/CustomComponents/NavigationExperimental/assets' is not a subdirectory of any of the roots  ('/Users/ashtonl/Development/ViroSample')
:app:bundleOvrReleaseJsAndAssets FAILED
FAILURE: Build failed with an exception.

What went wrong:
Execution failed for task ':app:bundleOvrReleaseJsAndAssets'.

Process 'command 'node'' finished with non-zero exit value 1

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

BUILD FAILED
Total time: 55.071 secs`

Now I'm pretty much stuck here. I dunno what else I should try. Help!

Hi Ashton,
Thanks for trying out the platform.
Quick question are you attempting to do a release or debug build of the app?
Thanks,

@achuvm a release build! Of the Gear VR flavor specifically.

Hi @atlance01
Can you try running just ./gradlew bundleOvrReleaseJsAndAssets within your /android directory to build just the OVR release bundle.
Thanks,

@achuvm sure!
Here's what I got:

~/Development/ViroSample/android master*
❯ ./gradlew bundleOvrReleaseJsAndAssets
NDK is missing a "platforms" directory.
If you are using NDK, verify the ndk.dir is set to a valid NDK directory.  It is currently set to /Users/ashtonl/Development/Android/ndk-bundle.
If you are not using NDK, unset the NDK variable from ANDROID_NDK_HOME or local.properties to remove this warning.
Incremental java compilation is an incubating feature.
:app:mergeOvrReleaseShaders UP-TO-DATE
:app:compileOvrReleaseShaders UP-TO-DATE
:app:generateOvrReleaseAssets UP-TO-DATE
:app:preBuild UP-TO-DATE
:app:preOvrReleaseBuild UP-TO-DATE
:app:checkOvrReleaseManifest
:app:preGvrDebugBuild UP-TO-DATE
:app:preGvrReleaseBuild UP-TO-DATE
:app:preOvrDebugBuild UP-TO-DATE
:app:prepareComAndroidSupportAnimatedVectorDrawable2500Library
:app:prepareComAndroidSupportAppcompatV72500Library
:app:prepareComAndroidSupportRecyclerviewV72340Library
:app:prepareComAndroidSupportSupportCompat2500Library
:app:prepareComAndroidSupportSupportCoreUi2500Library
:app:prepareComAndroidSupportSupportCoreUtils2500Library
:app:prepareComAndroidSupportSupportFragment2500Library
:app:prepareComAndroidSupportSupportMediaCompat2500Library
:app:prepareComAndroidSupportSupportV42500Library
:app:prepareComAndroidSupportSupportVectorDrawable2500Library
:app:prepareComFacebookFbuiTextlayoutbuilderTextlayoutbuilder100Library
:app:prepareComFacebookFrescoDrawee0110Library
:app:prepareComFacebookFrescoFbcore0110Library
:app:prepareComFacebookFrescoFresco0110Library
:app:prepareComFacebookFrescoImagepipeline0110Library
:app:prepareComFacebookFrescoImagepipelineBase0110Library
:app:prepareComFacebookFrescoImagepipelineOkhttp30110Library
:app:prepareComFacebookReactReactNative0412Library
:app:prepareComFacebookSoloaderSoloader010Library
:app:prepareComGoogleAndroidExoplayerExoplayerR220Library
:app:prepareOrgWebkitAndroidJscR174650Library
:app:prepareViroSampleGvr_commonUnspecifiedLibrary
:app:prepareViroSampleReact_viroUnspecifiedLibrary
:app:prepareViroSampleViro_rendererUnspecifiedLibrary
:app:prepareOvrReleaseDependencies
:app:mergeOvrReleaseAssets UP-TO-DATE
:app:compileOvrReleaseRenderscript UP-TO-DATE
:app:generateOvrReleaseResValues UP-TO-DATE
:app:generateOvrReleaseResources UP-TO-DATE
:app:mergeOvrReleaseResources UP-TO-DATE
:app:bundleOvrReleaseJsAndAssets
Loading dependency graph, done.
Warning: The transform cache was reset.
<EMAIL_ADDRESS>could not be found, because 'node_modules/react-native/Libraries/CustomComponents/NavigationExperimental/assets' is not a subdirectory of any of the roots  ('/Users/ashtonl/Development/ViroSample')
:app:bundleOvrReleaseJsAndAssets FAILED
FAILURE: Build failed with an exception.

What went wrong:
Execution failed for task ':app:bundleOvrReleaseJsAndAssets'.

Process 'command 'node'' finished with non-zero exit value 1

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

BUILD FAILED
Total time: 57.382 secs

Hi @atlance01
It sounds like that file is missing so either 1) a different version of react-native is being used or 2) your current installation of react-native was somehow corrupted.
To address the first issue, open your package.json file in your project root and ensure that you're targeting "react-native": "0.41.2". If not, then change it and also blow away your node_modules/directory and re-runnpm install`.
To address the second issue, can you try blowing away your node_modules/ directory and re-run npm install.
Let me know if that works!

Thanks for your help!
My package.json showed that I was running the correct version of react-native
So, I wiped out my node_modules folder. Ran npm install again and tada! I should've known - when in doubt, do a node_module reinstall.
So I've got my release OVR running on my phone right now - but none of my videos are playing. They're 720p mp4 360 videos. Any ideas?

Hi @atlance01
I'm glad that works!
We're not aware of any issues with 360 Video Playback, but to be sure, can you check the device logs to see if there are any errors? Attaching the logs here for us to look at would maybe be helpful too.
Do the videos work on other Viro supported platforms? (iOS Cardboard, Android Cardboard, etc)
Thanks,

Well I'm back to my original issue now - I'm trying to build a new version number and I'm getting my old error again. This time, wiping out the node_modules folder doesn't seem to help :(
What else could be going on? What could be causing that module to keep getting corrupted?

Hmm, I'd be stumped if you were getting the exact same error and the wiping away doesn't help...
The ./gradlew bundleOvrReleaseJsAndAssets command processes your .js files and copies and adds your assets to the android build directories under /android/build and /android/app/build.
Maybe you can try removing them and rebuilding your app?
If the error is different, I'd like to see that one too.
Thanks,

@achuvm This morning, I tried updating to Viro 1.1.0, killing all my node modules and wiping out 'android/build' and '/android/app/build' and I'm still getting the same old error!

<EMAIL_ADDRESS>could not be found, because 'node_modules/react-native/Libraries/CustomComponents/NavigationExperimental/assets' is not a subdirectory of any of the roots  ('/Users/ashtonl/Development/ViroSample')

:app:bundleGvrReleaseJsAndAssets FAILED

@achuvm Update: I created a new Viro project, then immediately ran the asset bundler and everything worked out fine. Then, I copied over my javascript from my old files and BAM! build failed?
My repo is here: https://github.com/atlance01/ViroVRapp
Is there something wrong with my files?

Hi @atlance01 ,
I pulled the repo and ran ./gradlew bundleOvrReleaseJsAndAssets just fine, although since your video files weren't included in the repo, I changed them to one of our own assets.
I noticed that the videos you do have in the js files have dashes and spaces, etc. Can you try renaming them to something simply alphanumeric ie. VIP 360 VR Montage 03-30-2017 1920x1080.mp4 -> VIP360VRMontage.mp4? I suspect this is possibly an issue, although, not sure why this could cause an error trace like the one you posted above.
If this works, then it's due to how React Native bundles its "assets" by actually placing it into the Android resources directories which cause all sorts of other problems because Android resources have a lot more restrictions on filename/filename collisions than Android assets.
Thanks,

@achuvm ,
First off, I wanna thank you for working so much with me on this. I really wanna get this up and running!
So I tried changing the filenames of the videos as you suggested... and still the same error. I've updated my repo with the latest changes. When you pulled down my repo earlier, were you able to build more than once? It seems like the first build might be okay and then things are getting wonky from there?
Could there be a node version or npm version conflict or anything? I'm running node v7.8.0 with whatever version of npm that comes with it.

@atlance01
It's no problem at all, we just want to see you guys build something awesome :).
To answer your question, I was able to run ./gradlew bundleOvrReleaseJsAndAssets more than once, with and without removing my /android/build/ and /android/app/build/ directories.
The node/npm version I'm using is:
~/ext-workspace/ViroVRapp$ node -v
v6.6.0
~/ext-workspace/ViroVRapp$ npm -v
4.4.4

I'll try updating my node version and see if I encounter this issue on my end.
In the meantime, can you confirm if you do have the file
<EMAIL_ADDRESS>in your project when you encounter the issue?
I also realized that I'm currently still on react-viro 1.0.0 based on the package.json, but you were running into this issue regardless of react-viro version.

Thanks!
I do indeed have that asset! Now the packager is throwing the same error when I try to run the testbed app too.

Closing this issue due to lack of activity.
Feel free to reopen this issue, create another issue or contact us at<EMAIL_ADDRESS>Thanks!


restore QDM test case feature flag

MADiE PR
Jira Ticket: none
(Optional) Related Tickets:
Summary
All Submissions

[x] This PR has the JIRA linked.
[x] Required tests are included
[x] No extemporaneous files are included (i.e Complied files or testing results)
[x] This PR is into the correct branch.
[ ] All Documentation as needed for this PR is Complete (or noted in a TODO or other Ticket)
[ ] Any breaking changes or failing automation are noted by placing a comment on this PR.

DevSecOps
If there is a question if this PR has a security or infrastructure impact, please contact the Security or DevOps engineer assigned to this project to discuss it further.

[ ] This PR has NO significant security impact (i.e Changing auth methods, Adding a new user type, Adding a required but vulnerable package)
[ ] All CDN/Web dependencies are hosted internally (i.e MADiE-Root Repo)

Reviewers
By Approving this PR you are attesting to the following:

Code is maintainable and reusable, reuses existing code and infrastructure where appropriate, and accomplishes the task’s purpose
The tests appropriately test the new code, including edge cases
If you have any concerns they are brought up either to the developer assigned, security engineer, or leads

will not be addressing the lack of coverage as this PR is restoring previously existing code that was mistakenly removed.
Coverage can be addressed at a later date.


Add skip_clean to travis file so that dist directory is published.

Add skip_clean to travis file so that dist directory is published.

Codecov Report

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

@@           Coverage Diff           @@
##           master      #73   +/-   ##
=======================================
  Coverage   94.74%   94.74%
=======================================
  Files         315      315
  Lines        4204     4204
  Branches      513      513
=======================================
  Hits         3983     3983
  Misses        198      198
  Partials       23       23

Continue to review full report at Codecov.

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


Faq's in solution not updating on app.

Hi,
I am trying to update the Faq section. The change is somehow not reflected in app. Is it something I am missing.

We are fixing this issue in the backend soon.

This is fixed now.

Many Thanks!!


Programmatically accessing mocks leads to errors

I was able to start the lws mocks programmatically with help of node when I run the following script standalone
const LocalWebServer = require("local-web-server");
const localWebServer = new LocalWebServer();
const server = localWebServer.listen({
    port: 8050,
    directory: "mocks",
    mocks: ["mocks/mockfile"]
});
// server with listening websocket now ready on port 8050

const sleep = (milliseconds) => {
    return new Promise(resolve => setTimeout(resolve, milliseconds))
};
// Stop listening when/if server is no longer needed

sleep(50000).then(() => {
    //do stuff
    server.close();
});

When I try to call the same in before() and after hooks in mocha for unittesting purposes, I get the following error.
Here's what I have as a hook file
const LocalWebServer = require('local-web-server');
const localWebServer = new LocalWebServer();
let server;
// server with listening websocket now ready on port 8050

const sleep = (milliseconds) => {
    return new Promise(resolve => setTimeout(resolve, milliseconds))
};
// Stop listening when/if server is no longer needed
export const before = function() {
    // runs before all tests in this block
    server = localWebServer.listen({
        port: 8050,
        directory: 'test/mocks',
        mocks: ["test/mockfile.js"]
    });

};
export const after = function (done) {
    sleep(10).then(() => {
        //do stuff
        server.close(done);
    });
};

and the above consts imported into test file like this
import {before, after} from "../start-mocks";
describe("affix-retriever", function () {
before(function () {
        before();
    });

describe("......");

after(function () {
        after();
    });

and this function call of before and after leads me to following errors
/Users/vrdy/projects/prm//test/mocks/mockfile.js:17
        return _possibleConstructorReturn(this, (MockSuggest.__proto__ || Object.getPrototypeOf(MockSuggest)).apply(this, arguments));
                                                                                ^

TypeError: Class constructor MockBase cannot be invoked without 'new'
    at new MockSuggest (/Users/vreddy/projects/webcomponents/name-studio/test/mocks/suggest.js:1:18)
    at mocks.map.mockModule (/Users/vreddy/projects/webcomponents/name-studio/node_modules/lws-mock-response/index.js:36:22)
    at Array.map (<anonymous>)
    at MockResponse.middleware (/Users/vreddy/projects/webcomponents/name-studio/node_modules/lws-mock-response/index.js:33:10)
    at filter.map.mw (/Users/vreddy/projects/webcomponents/name-studio/node_modules/lws/lib/stack.js:21:21)
    at Stack.map (<anonymous>)

Has anyone seen this as a problem reported by someone? Appreciate your input
Thanks

I suspect this bug lies somewhere in your code, not in local-web-server. If you send me a reproduction case (some failing code i can run and debug) i'll take a look at this for you.

will re-open once i receive a reproduction case.


Overlord v1

Overall, the organization was good with both the model and cucumber tests.
Be cleaner and more explicit with naming.

This is a very good first iteration. For this next iteration, please focus on your bomb.rb file and your features.
In particular, tighten up your scenarios at a higher level of abstraction. Please let me know if you have any questions. See this article as a reference on features, too:
https://robots.thoughtbot.com/acceptance-tests-at-a-single-level-of-abstraction


Changing the name of an AnimationNode in AnimationTree renders the AnimationNode to unusable.

Godot version:

e1f2feec2eccbc0589a66b84ea8b3af34c1740b4
OS/device including version:

Ubuntu 18.04 NVidia GT540M (NVidia drivers)
Issue description: and Steps to reproduce:

I created an AnimationTree and added an AnimationNode that I connected with output.
After that when I change the name of the animation (inside the GraphEdit and not in the inspector) and move the animation node a little bit (moving it to get the changes this is how GraphEdit works), the AnimationNode looses the connection with the output and the output of the AnimationNode and the input of the Output are rendered to unusable (you cannot connect the with anything). This is the error that popups :
"Unable to connect, port may be in use or connection may be invalid."
This error popups when I try to connect a node to an input that it is already in use.

Some more info.
If after the creation of the problem, I select another node in the inspector and the again select the AnimationTree node and get in to the editor of it, the connections and functionality are all back.

Add info: You cannot assign an animation to an AnimationNode if the name of that node has changed before

I still have this bug with transition node, need to restart godot to make new transition node work.

I still have this bug with transition node, need to restart godot to make new transition node work.

@Favkis Please open a new issue with a minimal reproduction project attached.

@Favkis Please open a new issue with a minimal reproduction project attached.


Do not create general pane if output action is provided by user

#147
@AndreSayreMSFT

Looks good!


Update pkg loader to not filter out packages with empty dependency sets

This was causing PackageLoader.GetLatestVersionAsync to not find any versions of analyzer packages (which don't typically have dependency sets).
Fixes #555

/azp run


Fix TZ arithmetic involving -HH:15 -HH:45

It was reversing the 15 minutes and 45 minutes past negative time zones, e.g. TZ -09:45 became -09:15. This change fixes the issue.

@steoxley I have addressed your comment. Please approve if everything is OK.


Change precedence of MF in QLTool

DNA binding (GO:0003677)
transcription regulator activity (GO:0140110)

This is the current list.  Should we just swap the positions of GO:0003677 and GO:0140110?
GO:0016491
GO:0016787
GO:0016740
GO:0016874
GO:0009975
GO:0016829
GO:0003824
GO:0030234
GO:0140110
GO:0005215
GO:0008092
GO:0051082
GO:0003677
GO:0003723
GO:0046872
GO:0008289
GO:0098631
GO:0005198

just move GO:0003677 to above  GO:0140110 keeping everything else the same..

That change is done now.  It should be visible in the morning.

"DNA binding" does not seem to take precedence over "transcription regulator"

Sorry, I forgot to check the change in.
I got distracted because there is redundancy in how the order/priority of terms is configured and I wanted to fix it before we launch.  The fix is half finished so I should have that done before the overnight load get to that point tonight.
I'll check in the morning.

I think this is fixed now.


adds personal-prow.sh

This is a test PR for my personal prow instance running on my dev box.
Does this PR introduce a user-facing change?:
No

/honk

/hont

/honk

/heart

/pony

On the off chance anyone is watching, I do not  think I want to add this script to k/k I'm just doing some UAT on setting up a personal Prow instance.

/trigger

/ok-to-test

/test all

/test all

/test/all

/test/all

/test all

/test all

/test all

/test all

/test all

/test all

/test all


BUG: Fix failing example tests

SlicerMorph has a high number of failing tests (https://slicer.cdash.org/viewTest.php?onlyfailed&buildid=2642704) due to having a bunch of outdated example tests. I've updated these example tests to the latest examples to provide working examples for when tests are added to more of SlicerMorph modules.
cc: @smrolfe for review

Thanks @jamesobutler, much appreciated!
I've added issue https://github.com/SlicerMorph/SlicerMorph/issues/202 to follow up on SlicerMorph tests.


Allow easier debugging of iOS SDK

Debugging SDK internals in case something does not work is incredibly painful. We need to improve this. Good way could be to include source files with PowerAuthSDK-Debug CocoaPod, so that integrators can place a breakpoint in it and tell us more specifically where the issue is...

This is IMHO redundant to #49 From my own experience as an user of PA-SDK, the errors reported to the application is the biggest pain in the ass. If you need to debug the library, then the library is basically wrong by design. Which is not in my opinion, but we need to improve SDK behaviour when something's going off the rails.

Anyway, if we will do this, then we have to move C++ & "core" parts of SDK to the separate project file (e.g. separate static library), otherwise it will be hell on earth to force cocoapods to generate right projects with all dependencies on C++, cc7, openssl, etc...
It's more work that you would expect :)

Fixed by PR #96
Now most of our SDK is distributed in pod as source code. Only low level C++ codes are precompiled into static FAT library, but those rarely contains bugs (due to good test coverage).


Add slot booking system and create user tables (login/logout without OAuth)

@AryanGodara We need to continue on the OAuth 2 first and then move to this issue. I think the current progress could suffice for now.


Change sigkill handler to sigint

You can't trap SIGKILL (kill -9), but previously it was ignored, now it gives
an EINVAL error preventing push jobs client from starting.

Independent testing confirms that on Ruby 2.3, Signal.trap("KILL") throws an "Errno::EINVAL: Invalid argument - SIGKILL" exception. This matches the error that we saw in DCC running ChefDK with Ruby 2.3.

:+1:

:+1: this should be in the upcoming chef-dk release.


Ballerina user repository cannot be used with runtime distribution

Description:
Packages in Ballerina user repository are marked as unknown packages when we use Ballerina runtime distribution.
Steps to reproduce:
Add few packages from user repository and run the Ballerina program.
Affected Versions:
0.95.7
OS, DB, other environment details and versions:
N/A
Related Issues (optional):
N/A
Suggested Labels (optional):
N/A
Suggested Assignees (optional):
N/A

This issue cannot be reproduced with ballerina 0.974.1-SNAPSHOT pack, hence closing this issue.


Tweak label and fix calculation

Again improve memory stats. Avoid uint64 wraparound instead of negative numbers. Make labels easier to understand.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

7 of 7 (100.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 88.0%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
308

Relevant Lines:
350

💛  - Coveralls


Fix pagination when browsing tags

Currently, if you're browsing a page with tags (e.g. /idea/list/?tags=tagname), if there are enough records for there to be pagination at the bottom, the pagination links remove the tags from the context (e.g. /idea/list/?page_num=2).
This update checks to see if the current context has any tags, and appends them to the pagination urls if appropriate.

@m3brown I'd like to merge this, but the travis failure concerns me. Problem is, it's not related to your change but to some other, bigger problem. Any ideas?

#89 would solve :grinning:
as would something simpler, a la https://github.com/cfpb/regulations-core/commit/e0a8bd18b96bcf69902dc0ab1e9f49e1c4565e57

I'm in the final stages of testing #89 right now, and will rebase this PR shortly.

It's passing now, @marcesher

looks good to me. Thanks @m3brown and @cmc333333 !


Fresh release

Any chance to make a fresh GitHub release as well as publish it on Docker Hub?

Sorry, I don't have plans to work on this project.
But you might be interested in similar (and new) one inpxer. While it doesn't have feature parity with DotOPDS, if your intention is to make an OPDS server from single inpx library, it'll be plenty enough.


CS0535 & CS0506 -- Another PR is needed so upstream build will no longer be broken

I got compiler errors when trying to build (both: upstream and in this repo):
CS0535 "GtkImage" doesn't implement the interface member "IImage.ToPlatformImage()"
CS0506 "PlatformCanvas.GetStringSize(string, IFont, float)": The inherited member "AbstractCanvas<PlatformCanvasState>.GetStringSize(string, IFont, float)" can't be overriden because it is not tagged as "virtual" , "abstract" or "override"

Do I still need a more special NuGet package or is it just due to new C# features, because of virtual/override on the GetStringSize() members. (Just messing around with  in the .csproj didn't do anything, though).
Is main still the place to be or do you suggest another lytico/* gtk branch?
I really could use some pointers to not get lost...

Work in Progress: https://github.com/lytico/Microsoft.Maui.Graphics/tree/lytico/track_api_changes_net6

IStringSizeService needs to be implemented.
Most of code is in PlatformCanva.Text.cs


As a library developer, I want to have candid_path rethought so that consumers of my library do not need to depend on ic_cdk directly

Is your feature request related to a problem? Please describe.
I am developing Sudograph, a procedural macro that is meant to be used within a Rust canister. Sudograph generates a GraphQL database, and reexports ic_cdk and other crates from cdk-rs. Right now, I have it designed so that the consumer of Sudograph only needs to depend on sudograph in their Cargo.toml for their canister. But as I've gotten into enabling cross-canister GraphQL resolvers, the CandidType attribute macro has caused me problems. Because of the way candid_path is designed, see here: https://github.com/dfinity/candid/blob/master/rust/candid_derive/src/lib.rs#L36 I have to force the consumers of Sudograph to depend directly on ic_cdk, when otherwise they would not have to. I think the root of the problem is hardcoding  this path ::ic_cdk::export::candid, especially the prefix ::.
Describe the solution you'd like
Consider changing the hard-coded candid_path to ic_cdk::export::candid, or allow the developer to set the crate location manually in another macro. For example, serde had a very similar problem that was solved with the introduction of this #[serde(crate="self::serde")], allowing the developer to specify the location of the serde crate (or something like that, I'm still trying to wrap my head around Rust's packages, crates, and modules, but the serde solution works).
Describe alternatives you've considered
I could always force the consumer of Sudograph to depend directly on ic_cdk, but it would be an extra inconvenience to them. Part of Sudograph's value proposition is being extremely simple, a sort of one-stop shop for developing on the IC using GraphQL. I have been messing with modules and crates to try and get this to work without needing changes to the candid libraries, but I'm not sure it's possible, and the fix on your end probably isn't too complicated.
Additional context
I can give more context on the serde issue if desired, I would need to dig up the issue. Please understand that this is about the ergonomics and ease of use of libraries like Sudograph, right now the CandidType attribute macro is somewhat tightly coupled to a specific project structure and could be made more composable.

Let me try to better understand the problem here. The reason :: prefix doesn't work is because sudograph exports its own version of ic_cdk? Note that even if we fix this, the user would still need to directly depend on serde, because the derive code for Deserialize is hardcoded to serde.
I was basically following serde's solution. Last time I checked, I think they have a :: prefix. But that was a few years ago. Hardcoding the path is never a good idea, so I am open to any improvement suggestions or pull requests.

The reason :: doesn't work isn't because Sudograph is a proc macro that users invoke in their own crate. The best developer experience I can think of is to not require my users to depend on anything but Sudograph. So, the :: prefix used in CandidType looks for ic_cdk in the user's crate. I have reexported ic_cdk from sudograph, which has thus far allowed me to not require the user to depend on ic_cdk directly from their crate. Serde isn't a problem either, I have fixed that by using [serde(crate="self::serde")].
Basically I need to be able to tell CandidType where ic_cdk is, having it hard-coded is causing issues. Let me find the serde issue that really explains this

And here is the issue: https://github.com/serde-rs/serde/issues/1465
I believe the problem I had with serde is very similar to the problem I am now having with CandidType. You might need to use the serde solution within this project as well?

I imagine a solution might look something like this: [candid(crate="self::sudograph::ic_cdk")]

Thanks for the link. I was looking at the same issue two years ago, and there was no solution at that time. #[candid(crate="self")] looks like a good solution.
We have some higher priority tasks, so it will take some time before I can handle this issue. I would be happy to review a pull request from you if you want things to go faster. Another immediate workaround is to clone candid in your repo, and then you can do whatever change you want.

Glad we're seeing the same thing now :) I might clone the repo and do a
pill request, seems the fastest way to solve my problem, though I also have
some priorities and can wait. We'll see, thanks for engaging on this issue
On Sat, Jun 19, 2021, 12:40 PM Yan Chen @.***> wrote:

Thanks for the link. I was looking at the same issue two years ago, and
there was no solution at that time. #[candid(crate="self")] looks like a
good solution.
We have some higher priority tasks, so it will take some time before I can
handle this issue. I would be happy to review a pull request from you if
you want things to go faster. Another immediate workaround is to clone
candid in your repo, and then you can do whatever change you want.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/dfinity/candid/issues/248#issuecomment-864441078, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/ABVNFD66BRDFMEXG6Z2SV6TTTTJCJANCNFSM466PO7PA
.

I cloned the repo into Sudograph and have confirmed that changing the path manually works. Now I'll experiment a bit with #[candid(crate="self")], hopefully it won't be too hard. I'll pull request if I get it.

Pull request: https://github.com/dfinity/candid/pull/249
I left some comments as I'm not sure on what conventions you have or what is best practice for unwrapping etc


flaky test might be signaling a real issue

There is a test named TestRandStringFromCharset that is sometimes failing.
This test generates a lot of random strings and asserts that each new random string it generates is unlike any it has generated this far.
Sometimes there's a match.
This could be a flaw in the test's design OR it could be a sign that the strings we generate are actually insufficiently random.
We should look into this.

I ran the test and modified it a bit to see which particular i values are having the collisions and it seems the i = minLen = 10 is the one that almost always has the collision while rest of the larger i values rarely have any even if I increase j to a large value like 60,000 rounds.  I think it comes down to pure probability in this case for (i,"abc") input where i=10 the no. of possible unique values if 3^10 (I think it's right ?) and as i increases for eg. to 20 the unique count also increases drastically (3^20) so the chances of collision drops. We should either increase the charset to use the value we use in kargo (abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ) or start i from a larger value like 20 or 30.

We should either increase the charset to use the value we use in kargo (abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ)

Unless I am missing something, I think the test is already using that exact charset, so even with a i == 10, the probability of duplication should be 1/52^10.
And that's what is making me suspicious that there isn't adequate entropy in these strings.
Did I miss something and the test is using a different charset than I had thought?

No it isn't using the default charset it just uses "abc" https://github.com/akuity/kargo/blob/427d50020f17757bb19c257cb3d5c459636aaefb/internal/cli/login/login_test.go#L82

I'll update it to use the default charset and it'll probably fix the issue as I didn't see any collisions in my local when usign the full charset.

🤦 idk how I missed that.
It was supposed to read str, err := randStringFromCharset(i, charSet)
Thanks for finding this!


better ping loop control CORE-4414

This is very tricky, and I have gotten it wrong like 2 times, so if you both could take a close look I would appreciate it. The goal here is for the ping loop to only be running when the connection is good, and not when we are trying to reconnect to Gregor. We have to try and coordinate our own disconnect/reconnect logic with the RPC library.
The old way was busted since IsConnected could start returning false, and we would never reconnect since the ping loop would skip that iteration (we would reconnect on any chat command, but for a bot just sitting there waiting for new messages it would just get stuck).

Actually this doesn't work...


Add leaf-node-mesh to handle meshes build without loading a file.

Tested over a port of OpenHRP.
The meshes are loaded using a classical OpenHRP ModelLoader, and provided to gepetto-viewer through a CORBA interface.

Thank you.


Update sbt-scalajs-crossproject to 1.3.2

About this PR
📦 Updates org.portable-scala:sbt-scalajs-crossproject from 1.2.0 to 1.3.2
📜 GitHub Release Notes - Version Diff
Usage
✅ Please merge!
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

⚙ Adjust future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "org.portable-scala", artifactId = "sbt-scalajs-crossproject" } ]

Or, add this to slow down future updates of this dependency:
dependencyOverrides = [{
  pullRequests = { frequency = "30 days" },
  dependency = { groupId = "org.portable-scala", artifactId = "sbt-scalajs-crossproject" }
}]

labels: sbt-plugin-update, early-semver-minor, semver-spec-minor, version-scheme:semver-spec, commit-count:1

@mergifyio rebase

@mergifyio update


Revamp dns-controller unit testing

This PR is reraised to k/f from k/k. The original PR is here https://github.com/kubernetes/kubernetes/pull/46606
This is just test improvement.
/cc @kubernetes/sig-multicluster-pr-reviews

/test pull-federation-verify
/assign @marun @irfanurrehman

@irfanurrehman, this pr is rebased and all checks have passed. PTAL. Thanks!


E2E tescases of pod,deployment,statefulste,daemonset,configmap backup and restore feature

What type of PR is this?
kind new feature
What this PR does / why we need it:
This PR does E2E testing of backup and restore feature of  pod,deployment,statefulste,daemonset,configmap resources
Which issue(s) this PR fixes:

Fixes #
Test Report Added?:
kind TESTED
Test Report:

Special notes for your reviewer:

Please add test scripts running snapshot

Please add test scripts running snapshot

Updated


TODO: Replace DB with Store

Replaced DB usage with Store in the following services

[x] Function
[ ] User

@asim , I've implemented most functions, but get confused about Search() function.
How to implement Query function with Store?
https://github.com/micro/services/blob/3cdf5baa23a82adc188764e10c621fbeaa229ee9/user/domain/domain.go#L377-L391

At first, I think I can create multiple keys, like
/user/account/{user_id}
/user/account/{username}
/user/account/{email}
But there may be some problems when do Update action.

So you can probably go back into the history of the code there to see the original that used the store. When you have queries that have multiple possible params you basically store a record per query type aka denormalise the data.
So you'll have a key that's userByEmail/ and userByUsername/ where the keys include the email or username to make the query an O(1) operation.

We will also have to address migration of the data. So that'll require an on start operation that reads all the existing data and rewrites it with the new keys.

So you can probably go back into the history of the code there to see the original that used the store. When you have queries that have multiple possible params you basically store a record per query type aka denormalise the data.
So you'll have a key that's userByEmail/ and userByUsername/ where the keys include the email or username to make the query an O(1) operation.
And yes updates require updates to all keys. So writes are slower but reads are fast.

What confused me is that if we store user with username key or email key, when update user's email or username with new value, how deal with the old email key and username key.
For example, an user with email<EMAIL_ADDRESS>There are 'user/id/1' and<EMAIL_ADDRESS>keys in Store.
But when the user want to update his email to<EMAIL_ADDRESS>How to deal with the old key<EMAIL_ADDRESS>

You have to effectively delete the old key and create a new one. During the update you see if the old email matches the one provided, if it does, nothing to do, if it changes you have to delete the old record.

I don't find any doc about micro Store transaction,
it doesn't support transaction, does it?


Cover error and warning branches in WalkSchema & UpdateSchemaDescription

Follow up from https://github.com/m-lab/go/pull/71

This change is

Pull Request Test Coverage Report for Build 598

5 of 5 (100.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.5%) to 82.941%

Totals

Change from base Build 596:
0.5%

Covered Lines:
846

Relevant Lines:
1020

💛  - Coveralls


Unreachable code

The following line can never be reached :
https://github.com/jarro2783/cxxopts/blob/e34676f73e49eeff30cb101f1c5ba8806fbe6773/include/cxxopts.hpp#L1666
On VS2019 it throws a warning C4702 : unreachable code
As I build my project with treat warning as error for release, I can't build it.
Regards

Ah so it is. I'll fix that.


Fixes NMS-178

Not as much a fix as NMS-178 was closed as invalid.
So I just removed the FT for it.

lgtm


update client_socket to work on ffox 36

Fix #51

So this repo has never succeeded on Shippable anyway, and this change does cause more tests to pass than before. Interestingly though, "integration: core.tcpsocket Gets info on client & server sockets" fails - at least on the two runs I've tried so far.
It passed locally on my machine with a similar change, so it may just be flaky - :+1: to merging this as it's a definite improvement over the status quo, but there may still be something else lurking either in the test or implementation of getInfo.

Yup. @ryscheng still needs to finish stabilization of shippable :+1:


Responses with multiple representations are not handled properly

Responses with multiple representations, for example the BankID Polling step which contains the BankID autostart URI and a QR code are not triggering the ClientOperationStep. Instead they are used as HaapiRepresentations.
The problem can be identified in the switch in line 117 of FlowViewModel.swift

BankID has been fixed for same device


Deploy Meilisearch v0.25.2 on K8s arm64 node failed

Describe the bug
Deploy Meilisearch v0.25.2 on K8s arm64 node failed.
Pod log:
<jemalloc>: Unsupported system page size
<jemalloc>: Unsupported system page size
memory allocation of 5 bytes failed

To Reproduce

Apply the yaml https://github.com/meilisearch/meilisearch-kubernetes/blob/main/manifests/meilisearch.yaml

Expected behavior
No error.
Screenshots
No.
MeiliSearch version:
v0.25.2
Additional context
OS: Linux xxx.xxx.xxx.xxx 4.18.0-305.10.2.el7.aarch64 #1 SMP Fri Jul 23 21:19:40 UTC 2021 aarch64 aarch64 aarch64 GNU/Linux
Architecture: arm64

I find a issue related issue: https://github.com/meilisearch/MeiliSearch/pull/1666. It seems that the env JEMALLOC_SYS_WITH_LG_PAGE=16 will be set when publishing binaries, but not when publishing docker images.

Two ideas:

Use Makefile and set the environment variable on make build
Set the environment variable in build.rs, like #2122
Would you like to give me some advice? :) @curquiza

Hello @Thearas
Sorry for the delay, and thanks for the contribution! 😄
We would rather not having this in our build.rs. Can you add the env variable in our docker CIs here

https://github.com/meilisearch/meilisearch/blob/main/.github/workflows/publish-docker-latest.yml
https://github.com/meilisearch/meilisearch/blob/main/.github/workflows/publish-docker-tag.yml
?

Thanks :)


[question] Move asgi.py to monitoring module?

Now that we have the monitoring module, might that be a better place? Additionally, we could include docstrings to document this feature.

Yes, definitely.
We can rewrite asgi monitor in terms of default rubrix model monitors.


Monkeys Don't Horizontal When Crit (Again)

This was a problem before, then it was fixed, then it became a problem again. Probably sprite related. Might check it out myself if no one does

Still happens with most mobs, started at some point in the past 6 months but I forgor when and no one has repro steps.


Is it possible to send a message to multiple channels at once?

Not sure if this is supported or not, but would like to send a message to multiple channels at once.

I don't think that it is, at least with just a single call to slack. (if there is a way w/ the slack api I'm happy to make any necessary adjustments to support it)
Depending on your requirements you'd probably want to do this in forked processes with some kind of error handling, but pinging while iterating over the channels you want would get close.
message = 'Hello World'
options = {}

[ '#foo', '#bar' ].each do |c|
  notifier.ping message, options.merge(channel: c)
end

@martijnrusschen did that answer your question ok?

Thanks for answering the question. I guess this isn't supported at all by the API. Will let you know if I see something different.

This would be a convenient feature, I'm on a DevOps team, and we frequently have to bounce into 3-5 channels to give me a head's up on updates/potential outages.

Ditto, for releases we are always having to paste to multiple channels.

Can it updated in such a way:
if slackSend channel: contains comma separated addresses, first of all split addresses in a [] and then just perform .each for every channel?

You can do this now with version 2.3.0 by passing an array of channels to the :channel param. For example:
notifier.post text: "hello", channel: ["#general", "#random"]
# => posts 'hello' to the general & random channel

@stevenosloan how would you use that for a bunch of private channels? and can you post images as well or does it always have to be text?

You'd specific private channels just the same, they just don't have the # before their name. Images, attachments, etc work the same as any other message. To post a gif for example:
notifier.post text: "hello https://media.giphy.com/media/LfCt1sR1VweBy/giphy.gif", channels: ["#general", "private"]

And it will appear like

screenshot

Hello, just wondering is this feature supported in python?

@siliang625 I think that will depend on how you're using slack in python (which library, apis, etc)

https://gist.github.com/ramielian/64e7f27630d66e9c9ad163cfbf11edcb

@ramielian What's your point with your php script? 😄
This is a ruby library which makes interacting with the slack API easier (~about what your slackService function does).


pd-recover parameter error message is incorrect

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

LGTM @aliyx
Please sign the CLA.

PTAL @disksing

LGTM.
Thanks for your PR @aliyx . Before merge, we need you to sign our CLA by clicking the 'CLA: not signed yet' button above.

Any update @aliyx

@disksing i had sign CLA.

Cheers. Thanks for your contribution. @aliyx


Plug-and-play support for ONVIF certified devices.

https://support.videotec.com/hc/en-gb/articles/217116646-Discovery-methods-supported-by-ONVIF-devices

Just a note. This issue is related to #190 and #191. Detecting ONVIF cameras can be abstracted as a standalone module. Once #190 is available, the camera scan module can use the source REST API on Ambianic Edge to add/remove/update camera information from the local network scan.

ONVIF device manager seems to be still one of the most popular open source projects for ONVIF device discovery. Its written mostly in C# and hasn't been updated to awhile. I tested it on my local network recently and it was able to discover my cameras. The project is hosted on sourceforge:
https://sourceforge.net/p/onvifdm/code/HEAD/tree/
https://sourceforge.net/projects/onvifdm/

Python ONVIF discovery library that appears to be actively maintained.
https://pypi.org/project/WSDiscovery/
https://github.com/andreikop/python-ws-discovery

ONVIF discovery example since 2018:
https://harshmunshi.github.io/hackipcams.html

No longer a priority. ONVIF is poorly supported and camera vendors keep changing firmware or discontinue models without notice. Makes it very distracting to constantly chase a moving target.
We are going towards Ambianic Box, which anyone can assemble quickly with inexpensive  off the shelf components and expect the same consistent behavior.


Feature request: ability to override table names

At the moment my table names are extremely long and make the DynamoDB UI in the AWS console quite hard to use and distinguish the tables from one another (as the names are cropped).
An example,  I have a GraphQL model called "Directory" - this is my table name

APIStack-BlahappsyncnestedstackNestedStackappsyncnestedstackNestedStackResourceB32A4078-QHOIR25MRDJL-DirectoryTable8D5AD835-1F6H4LDFTFI3O

I reached out to @kcwinner via Twitter for assistance, who recommended overriding the table name using the table map, this doesn't appear to be possible, however.
this.api.tableMap.DirectoryTable.tableName = "Directories";
eror TS2540: Cannot assign to 'tableName' because it is a read-only property.

Suggestion:
Introduce a "tableNameMap" argument when creating the API:
e.g.
this.api = new AppSyncTransformer(this, "Blah", {
      tableNameMap: {
        DirectoryTable: "Directories",
      },
      schemaPath: __dirname + "/schemas/schema.graphql",

I have noticed the same annoyance myself. The repetition of "appsyncnestedstackNestedStack" seems particularly unnecessary. Just finding a way to trim that part would already be a clear improvement.

In the meantime you can do something like this
for (const [name, table] of Object.entries(this.appsyncTransformer.tableMap)) {
  const cfnTable = table.node.defaultChild as CfnTable;
  cfnTable.tableName = name;
}

The name is the name from the map (e.g. CustomerTable. And will result in something like this
    "CustomerTable260DCC08": {
      "Type": "AWS::DynamoDB::Table",
      "Properties": {
        "KeySchema": [
          {
            "AttributeName": "id",
            "KeyType": "HASH"
          }
        ],
        "AttributeDefinitions": [
          {
            "AttributeName": "id",
            "AttributeType": "S"
          }
        ],
        "BillingMode": "PAY_PER_REQUEST",
        "TableName": "CustomerTable"
      },
      "UpdateReplacePolicy": "Retain",
      "DeletionPolicy": "Retain",
      "Metadata": {
        "aws:cdk:path": "table-test-dev/appsync-api/appsync-nested-stack/CustomerTable/Resource"
      }
    }

The provided solution is working for me! Thank you! I don't think the default naming convention should be discarded, it is ugly and it does not makes sense in this case. But as i noticed that is how AWS does it everywhere. E.g.: Creating a lambda function in your nested stack will also result in some long stack related name.
So it makes more sense to do configure table names yourself. Especially when it comes to large business applications where you want to have unique table names.

Yes, when using CloudFormation naming you get unique values for your resources. This is my preference and many of my colleagues since changing a resource name often results in replacement. However, some of the names are less human readable.
I've merged in a prop so you can specify your table names and the nested stack name if you want. I can't remove the name by default as that would be a breaking change to others using it already.


Registration sets session cookies even with REST_SESSION_LOGIN = False

Hello,
It seems that RegisterView always returns the session cookie, even when the session is disabled with REST_SESSION_LOGIN = False
Here is an example using the demo project and after setting REST_SESSION_LOGIN = False
$ curl  http://<IP_ADDRESS>:8000/rest-auth/registration/ -X POST -d '{"username":"test","email":"test@example.com","password1":"testtest","password2":"testtest"}' -H "Content-Type: application/json" -v
Note: Unnecessary use of -X or --request, POST is already inferred.
*   Trying <IP_ADDRESS>...
* TCP_NODELAY set
* Connected to <IP_ADDRESS> (<IP_ADDRESS>) port 8002 (#0)
> POST /rest-auth/registration/ HTTP/1.1
> Host: <IP_ADDRESS>:8002
> User-Agent: curl/7.54.0
> Accept: */*
> Content-Type: application/json
> Content-Length: 92
>
* upload completely sent off: 92 out of 92 bytes
< HTTP/1.1 201 Created
< Date: Thu, 15 Mar 2018 16:24:16 GMT
< Server: WSGIServer/0.2 CPython/3.6.4
< Content-Type: application/json
< Vary: Accept, Cookie
< Allow: POST, OPTIONS
< X-Frame-Options: SAMEORIGIN
< Content-Length: 50
< Set-Cookie:  csrftoken=Qmmhz3YtHguYyGFqvypkIIHkUQYdGOCUGbSbrgpGve73GrxVdCSBwUsUNDnrLsdt; expires=Thu, 14-Mar-2019 16:24:16 GMT; Max-Age=31449600; Path=/
< Set-Cookie:  sessionid=pxz6y1vk5owsodx99wollo1esse6pbvi; expires=Thu, 29-Mar-2018 16:24:16 GMT; HttpOnly; Max-Age=1209600; Path=/
<
* Connection #0 to host <IP_ADDRESS> left intact
{"key":"ad201218a174797b227877e136f47ff9ed20d1a0"}

These session cookies can be removed in RegisterView.create
if not getattr(settings, 'REST_SESSION_LOGIN', False):
    get_adapter().unstash_user(request)
    get_adapter().unstash_verified_email(request)
return Response(self.get_response_data(user),
                        status=status.HTTP_201_CREATED,
                        headers=headers)

or
if not getattr(settings, 'REST_SESSION_LOGIN', False):
    request.session.pop('account_user', None)
    request.session.pop('account_verified_email', None)

return Response(self.get_response_data(user),
                        status=status.HTTP_201_CREATED,
                        headers=headers)

I was able to workaround this by adding the following to my AccountAdapter:
def login(self, request, user):
    pass

def get_login_redirect_url(self, request):
    """
    See above on `login`
    """
    return ''

Apparently adapter.login is not used anywhere besides during registration when using django-rest-auth (at least in my setup).
I would definitely favour a fix to properly consider REST_SESSION_LOGIN = False over this hack though.

this package should not be used since no convenient developments are in progress. no-replies, nothing.

This is actually a valid problem, and it took us a while to figure this out.
Apparently django_login is the function that logins by default and handles the session creation. That needed to be turned off from all the places. We removed that from our custom code, but needed to override it in the adapter as well, just like how @ttill proposed above. +1 on the solution.
Indeed a hack, but unblocks us. Should ideally be fixed properly.


[Bug]: PrimitiveProps is not exported from radix-vue

Environment
Developement/Production OS: Windows 10 19043.1110
Node version: 18.x
Package manager: npm
Radix Vue version: 1.1.2
Vue version: 3.3.8
Nuxt version: 3.8.1
Nuxt mode: universal
Nuxt target: server
CSS framework: none
Client OS: Windows 10 19043.1110
Browser: Chrome 90.0.4430.212

Link to minimal reproduction
N/A
Steps to reproduce

Create a new Nuxt 3 project
Install Radix-Vue
Try importing PrimitiveProps from radix-vue like so import { type PrimitiveProps } from "radix-vue";
You will get the error:
Module '"radix-vue"' has no exported member 'PrimitiveProps'

It has to be imported like so for now:
import { type PrimitiveProps } from "radix-vue/dist/Primitive/Primitive";
Describe the bug
The PrimitiveProps type cannot be imported from the default package.
Expected behavior
I expect to be able to import the PrimitiveProps type from 'radix-vue'
Conext & Screenshots (if applicable)

Yeah forgot to export prop type for "Utilities" component. The fix for this is simple and straightforward 😉

Thank you! I was not sure how to fix it, so i didn't do the PR. I looked at what you did. Thanks


Batch Mode

Hi,
Is there a batch mode? Like can I run the comparison tool from a batch script without the UI and still getting the diff file?

Currently there is no command line diff tool provided with XML Notepad.  But I'll keep this issue open.  If I get time I can add it pretty easily.  If you are a programmer, the code lives here: https://github.com/microsoft/xmlnotepad.  Pull requests are welcome.


upath module not working properly inside jest

🐛 Bug Report
In Windows, upath  module behaves differently with node and jest.
When using node, path separator is / and for jest it is \.
To Reproduce
test.spec.js
const p = require('upath');

console.log(
  p.normalize('C:\\Users\\hivaj\\AppData\\Local\\Temp\\1577863552245')
);

test.todo('todo');

With jest:
jest e2e.spec.js

results in:
 PASS  tests/e2e.spec.js
  ✎ todo todo

  console.log tests/e2e.spec.js:3
    C:\Users\hivaj\AppData\Local\Temp\1577863552245

with node (with commented test.todo('todo'); line)
node .\tests\e2e.spec.js

C:/Users/hivaj/AppData/Local/Temp/1577863552245

Closer look:
node: C:/Users/hivaj/AppData/Local/Temp/1577863552245 (correct)
jest: C:\Users\hivaj\AppData\Local\Temp\1577863552245

Expected behavior
A module should display same behavior with node and jest in the same platform.
envinfo
  System:
    OS: Windows 10 10.0.18363
    CPU: (8) x64 Intel(R) Core(TM) i5-8250U CPU @ 1.60GHz
  Binaries:
    Node: 13.3.0 - C:\Program Files\nodejs\node.EXE
    npm: 6.13.1 - C:\Program Files\nodejs\npm.CMD
  npmPackages:
    jest: ^24.9.0 => 24.9.0

Just ran into this issue. It essentially comes down to e.g. require('path').resolve instanceof Function returning false in Jest context, preventing upath from reimplementing the path functions (see upath.coffee#L21). I guess that makes this issue a duplicate of #2549.

Ahh. yay it's that one again 🙈


prime: add note about switching between full/lite

Looks like when most users try to cancel, their subscription doesn't cancel until the end of the current billing cycle, and they can't re-subscribe until then either


Add poetry update to restart script

Dependencies should be updated when the bot restarts since there isn't a lockfile in the repo

I dont think poetry update installs the mcodingbot package, but idk if that matters.

Before, otherwise install would install outdated dependencies.

I am still of the opinion we should keep a lockfile on some stable branch and remove it on a dev branch (which is where pull requests are made to), but whatever.

I am still of the opinion we should keep a lockfile on some stable branch (which is where the bot pulls from) and remove it on a dev branch (which is where pull requests are made to), but whatever.

I'm starting to agree with you, tbh, but I think this is good for now.

I am still of the opinion we should keep a lockfile on some stable branch and remove it on a dev branch (which is where pull requests are made to), but whatever.

No reason to use poetry otherwise. We could migrate to setuptools with the current setup and it would be easier for new contributors lol.

I don't approve of removing the lockfile but whatever

The lockfile was gone anyway for some reason?


Improve compatibility of preset-typescript with Vue

This adds appendTsSuffixTo if the framework is Vue and rolls up two related PRs that help minimize additional manual configuration.

Remove react-typescript-docgen-loader from preset-typescript (rollup #68)
Don't default to empty include option (rollup #106)
Add appendTsSuffixTo to tsLoader options if framework is vue

Example repo
https://github.com/graup/storybook-vue-typescript
This actually doesn't require any custom config now, as you can see here 🎉
Just add the preset (and apply my storybook patch, which I'll introduce back to storybook later)

Hey @graup this looks awesome! I can't release it quite yet because I want to create a clear migration path for existing users. Would you have time to give feedback on that this coming week?

Hi @shilman, as far as the removal of docgen is concerned, I believe your PR here handles it: https://github.com/storybookjs/storybook/pull/8984
The other two changes don't require any migration afaics.

Hi @shilman, thanks for merging the other PRs. I rebased this onto master. I noticed you didn't remove react-docgen-typescript-loader from package.json, was that intentional?

@graup good catch -- bad merge! i'll fix and then merge this

Released as 2.1.0 🎉🎉🎉 Great work @graup 💯


Ybw's task2 branch

StarTank Changes:
1.Change the appearance of the tank.
2.Add an 'R' button limit to the rotation of turret.
3.Change the attack mode.

PLZ resolve the conflict and conduct the auto-check.


zombierecovery: support MuSig2 to rescue Simple Taproot channels

Fixes https://github.com/lightninglabs/chantools/issues/133.

Thank you for taking your valuable time to fix P2TR support for zombierecovery, @guggero.
When running this PR and trying to do makeoffer, it seemingly get stuck with no feedback.
Input your cipher seed passphrase (press enter if your seed doesn't have a passphrase): [enter]

Anything I could do to get us more info about what's going on?
Cheers

Hey, thanks for testing. I assume you hit "enter" a second time, just to make sure it's not just a weird console/terminal behavior? If yes, is the process actively doing anything, do you see CPU usage?
The only thing that could take a while is matching the keys. But unless you have thousands and thousands of keys in both files, it shouldn't take more than a couple of minutes.

I assume this works, as I haven't gotten any feedback yet stating otherwise. Going to merge, can always address issues later on.


shrink MLB on sharded axis

use onehot structure to store the real partition. goal is unsynced batchnorm2d that can be run on multigpu for training.
draft version in https://github.com/chenyuxyz/tinygrad/pull/109

Why do you need to track externally if they are real? Can't the shapetracker in the lazybuffer do it (if it's never valid)?

it might be possible but it feels quite complicated. for example, shrink on sharded axis -> some movementops -> pad on sharded axis -> allreduce. if mlb shrink is tracked with each lazybuffer's shapetracker (and make all but one invalid), the pad back cannot be done directly.
i have the ops working now, will know better once the batchnorm works

still have many work to do, but unsynced batchnorm training works!
344   43.96 ms run,   34.07 ms python,    9.89 ms HIP * 6,  499.00 loss, 0.000148 LR, 10.52 GB used,  46181.37 GFLOPS,   2030.09 GOPS
345   44.54 ms run,   33.62 ms python,   10.92 ms HIP * 6,  501.50 loss, 0.000137 LR, 10.53 GB used,  45579.10 GFLOPS,   2030.09 GOPS
346   44.05 ms run,   33.78 ms python,   10.28 ms HIP * 6,  501.50 loss, 0.000124 LR, 10.54 GB used,  46084.61 GFLOPS,   2030.09 GOPS
347   44.05 ms run,   33.77 ms python,   10.28 ms HIP * 6,  499.75 loss, 0.000112 LR, 10.54 GB used,  46084.53 GFLOPS,   2030.09 GOPS
348   44.23 ms run,   33.61 ms python,   10.63 ms HIP * 6,  503.25 loss, 0.000099 LR, 10.55 GB used,  45894.79 GFLOPS,   2030.09 GOPS
349   43.90 ms run,   33.69 ms python,   10.20 ms HIP * 6,  500.50 loss, 0.000086 LR, 10.56 GB used,  46248.74 GFLOPS,   2030.09 GOPS
shuffling test dataset in 42.29 ms (epoch=0)
eval     10035/10752 93.33%,    0.43 val_loss STEP=350 (in 3600.46 ms)
LATEBEAM=2 HALF=1 GPUS=6 BS=1536 EVAL_BS=1536 STEPS=350 python3   43.56s user 14.07s system 113% cpu 50.736 total

latest number, 40ms! 50TFLOPS!
345   40.95 ms run,   25.91 ms python,   15.04 ms HIP * 6,  502.00 loss, 0.000137 LR, 10.53 GB used,  49564.29 GFLOPS,   2029.46 GOPS
346   40.37 ms run,   25.95 ms python,   14.42 ms HIP * 6,  502.25 loss, 0.000124 LR, 10.54 GB used,  50276.55 GFLOPS,   2029.46 GOPS
347   40.74 ms run,   25.79 ms python,   14.94 ms HIP * 6,  501.00 loss, 0.000112 LR, 10.54 GB used,  49820.33 GFLOPS,   2029.46 GOPS
348   40.54 ms run,   25.87 ms python,   14.67 ms HIP * 6,  504.75 loss, 0.000099 LR, 10.55 GB used,  50058.92 GFLOPS,   2029.46 GOPS
349   40.23 ms run,   25.79 ms python,   14.45 ms HIP * 6,  502.50 loss, 0.000086 LR, 10.56 GB used,  50443.29 GFLOPS,   2029.46 GOPS
shuffling test dataset in 42.54 ms (epoch=0)
eval     10036/10752 93.34%,    0.43 val_loss STEP=350 (in 3592.29 ms)
LATEBEAM=2 HALF=1 STEPS=350 BS=1536 GPUS=6 python3 examples/hlb_cifar10.py  41.48s user 14.76s system 113% cpu 49.439 total

i am ready to merge this one. keep the real as an attribute to MLB, and use const(0) as the output of e and r if it's not real to avoid keeping references of a buffer. i think real represents a different state in the sense that we don't know if we need to compute those const(0) by checking the lb alone, because the real lb can also be a legit const(0), and we use real=False to skip computing those. it's also a pure optimization because computing those unreal const(0) will have the same outcome.
test-wise, i have all ops, uneven shard, different combination of conv/bn applying on partitions.
some open questions that i am investigating separately. (1) beam still have kernels on gpu1 to gpu5, (2) memory increase during multi gpu training. this is on master too and it's not the cause for METAL with virtual multi gpu, so it might be HIP specific?
@geohot let me know if you have any concerns or suggestions


Footer

Feedback:

Can we keep the background white?
Can we italicize 'Proudly serving?'

Thoughts @kevindherman @aschmoe ?
URL: http://patternlibrary.getproudcity.com/?v=&page=01-page
I feel like it's floating in space when it's white:

Made proudly serving <em>

Yeah, I think the footer needs texture or color to differentiate.
--
Kevin Herman
Business Director
Albatross Digital
www.albatrossdigital.com |<EMAIL_ADDRESS>|<PHONE_NUMBER>
On Tue, Sep 22, 2015 at 7:23 PM, Jeff Lyon<EMAIL_ADDRESS>wrote:

Made proudly serving
—
Reply to this email directly or view it on GitHub
https://github.com/proudcity/proudcity-patternlibrary/issues/4#issuecomment-142451080
.


help: How to customise quote and callouts highlight of the quote body text (not the icon)

Neovim version (nvim -v)
0.11.0-dev
Neovim distribution
Vanilla Neovim
Description
If I try the below configuration:
quote = {
	enable = true,
	highlight = '@text'
},

I can see that the highlight applies only to the left border of the quote but not to the body text of the quote that remains just the same as the default RenderMarkownQuote.
The issue is that since it links to @markup.quote which happens to be bold in my case.
So if I want to bold some text from the quote it would not show differently than the rest of the body text of the quote defeating the bolding intention.
Is it a bug or a feature to decouple that the highlight applies to only to the border?
If the ladder, it would be nice to have the ability to customise the highlight for the body text as well in the quote config. Same may apply to the Callouts I believe.

I managed to work around this by amending my colorscheme (i.e catpuccin) plugin config:
return {
	'catppuccin/nvim',
	name = 'catppuccin',
	priority = 1000,
	config = function()
		-- colorscheme catppuccin " catppuccin-latte, catppuccin-frappe, catppuccin-macchiato, catppuccin-mocha
		vim.cmd([[colorscheme catppuccin-frappe]])

		-- Overrides and add-ons
		vim.cmd([[highlight @markup.quote cterm=NONE gui=NONE guifg=#ea999c]])
		vim.cmd([[highlight @text.emphasis cterm=italic gui=italic guifg=#a6d189]])
		vim.cmd([[highlight RenderMarkdownHighlight guifg=#303446 guibg=#f2d5cf]])
	end
}

Applying a highlight to only the quote icon is the intended behavior.
The mental model is that  the body of a block quote uses the default highlight group @markup.quote, this just comes from nvim-treesitter: https://github.com/nvim-treesitter/nvim-treesitter/blob/master/queries/markdown/highlights.scm#L105-L106.
Since colorschemes should provide values for default groups there's no need to override any of this behavior with this plugin. If you don't like that catpuccin makes block quote bodies bold by default that would be something you resolve with the colorscheme: https://github.com/catppuccin/nvim/blob/main/lua/catppuccin/groups/integrations/treesitter.lua#L112.
So treat the icon in a special way since that is added by this plugin. Let nvim-treesitter and the users colorscheme naturally handle the quote body.


Cluster fates cleaner subsetting

For future reference: once new version of anndata releases, we can use proper subsetting here of the Lineage class thanks to  https://github.com/theislab/anndata/pull/335.

has there already been another anndata release?

I've bumped the version of anndata to >=0.7.2, where te numpy-view is already in place (not to mention that .obsp and other things are available from 0.7.0, which also scvelo requires).

that's really nice, thanks. Did you test whether this causes any problems already?


update opensource section

add jwoc gssoc crosswoc mwoc in the opensource section

** Not only in the README but also in the website 😉

I was talking about website only😅