Prepare for React Native 0.62.0

So I just see that react native will release new version 0.62.0. And I see that the core team of Ignite not really focus on Andross Boilerplate. For me, Andross Boilerplate is really good, especially for new beginners to React Native.
So I hope to ignite the core team to develop Andross Boilerplate, if it's because of the fund or something. Maybe we can open funding to develop more this boilerplate.
Regards,

This is a good idea. I want to give a hand.

dont, please wait for 0.63 release

I would like to donate for new Ignite Boilerplate roadmap, since I can't help to contribute

@DeVoresyah I really appreciate your offer! If someone outside of IR wants to take you up on your offer, that's great -- and tag me so I can review the PR.

@DeVoresyah @jamonholmgren i can send PR for upgrade.

@DeVoresyah I really appreciate your offer! If someone outside of IR wants to take you up on your offer, that's great -- and tag me so I can review the PR.

I've some requirement list to do in next ignite update:

[ ] React Native version minimum 0.62
[ ] React Navigation v5
[ ] Redux Saga

Please still using the current Ignite project structure, we just need to upgrade RN version and Navigation. For Reactotron, I think we don't need it anymore since RN 0.62 already give default debugger??

@DeVoresyah I have created a pull request here https://github.com/infinitered/ignite-andross/pull/307
It is currently creating a new project with above mentioned requirements.

@jamonholmgren I need your guideline for linting the project files. As i have not updated linting libraries.
Also plugins like dev-screens, vector-icons and redux-persist also needs to update.

@waqas19921
On linting, you probably don't need to update the linting library. Just keep it at the current version.
The plugins -- do you know what needs to be updated?

i think we have to remove dev-screens and move some screen examples in the boilerplate. Rest just needs version updates.

@waqas19921 If you can submit PRs and then post here with a list of all the PRs to review, I'll get that done.


Enhancement: Support for the new Bing image recognition

Contact Details
No response
What features would you like to see added?
Pretty self-explanatory. Bing recently had an update where you can now upload images in your chats, and it does a decent job at understanding them. This functionality (image upload) on the frontend shouldn't be too difficult to implement into LibreChat, no? Just wondering. Thanks for all that you do on this great project!
More details

Which components are impacted by your request?
No response
Pictures
No response
Code of Conduct

[X] I agree to follow this project's Code of Conduct

Hi @Mitman93 thanks for requesting this.
Unfortunately, it may not be so simple since Bing access is very hacky, using unofficial access to the backend api of bing.com, and something I haven't personally worked as I use a dependency to use it with this project.
Even so, it's not yet implemented in one of the more popular projects: https://github.com/acheong08/EdgeGPT/issues/573
I will have to defer this feature to a 3rd party.
I am working on file support, and we may get image interpretation by way of another means sooner.

Hi @Mitman93 thanks for requesting this.
Unfortunately, it may not be so simple since Bing access is very hacky, using unofficial access to the backend api of bing.com, and something I haven't personally worked on as I use a dependency to use it with this project: https://github.com/waylaidwanderer/node-chatgpt-api
Even so, it's not yet implemented in one of the more popular projects: acheong08/EdgeGPT#573
I will have to defer this feature to a 3rd party.
I am working on file support, and we may get image interpretation by way of another means sooner.

Thank you for your hard work.
I noticed that someone has implemented the new Bing image recognition feature in the issue you mentioned at  acheong08/EdgeGPT#573. Here's the project link: renqabs/ChatSydney-react-img. You may have noticed it already, but I hope it could be helpful to your work.

@danny-avila what do you think about this PR?: https://github.com/waylaidwanderer/node-chatgpt-api/pull/452
It would be nice if LibreChat supported this

@danny-avila what do you think about this PR?: waylaidwanderer/node-chatgpt-api#452 It would be nice if LibreChat supported this

I can look into it!


Fix configurable FQCN for User Model

Mandatory behaviour in case of custom app_name or User model moved in Models namespace.
Ref. #9

Awesome, thank you!
I did make one change after the merge, though: I called the config entry "user_model" instead of "user_fqcn". I'm kind of a naming nazi, I want everyone to understand what the variable is without looking at the comment above. Hope that's ok with you.
Cheers!

I'm ok ;) thanks for merge


Remove the redirect from shard to virtual workspaces

Summary
Remove the redirect from shard to virtual workspaces in case of standalone virtual workspace deployment.
Npw that the old "personal workspaces" feature has been removed from both the workspaces virtual workspace and the CLI, there's no need to point to virtual workspaces through the KCP server host.
In the future explicit virtual workspace Base URL (carried by the Shard resource) should be used.
So when a virtual workspace is started in standalone mode, there's no need anymore to setup a redirection from the KCP shard host to the virtual workspace host.
Related issue(s)
This is a followup of PR https://github.com/kcp-dev/kcp/pull/1685

@p0lyn0mial Are my answers OK for you ?

/lgtm

for approval
/assign @sttts

/approve


45033746 - Project 7: Siamese CNN Classifier for Alzheimers Disease

Description
This is a pull request to merge the recognition problem for project 7: Siamese CNN binary classifier for Alzheimer's disease using the ADNI dataset. The model comprises a triple Siamese convolutional neural network and a binary classifier. The model is trained to classify 2D images slices of brain scans as Alzheimer's disease (AD) and normal cognitive (NC).

Includes README.md with documentation
Models can be generated and trained with train,py
Models can be tested for accuracy with predict.py
Loss graphs are saved to ./assets and can be viewed after running train.py

Requirements

topic-recognition branch
commit log history
train.py must be run before predict.py

Please note, the data is retrieved via the rangpur location if on a linux system, and is retrieved via the file structure nominated in the readme on a windows system. Adjustments can be made to the filepath at the top of the dataset.py file if this is not the configuration preferred.
Requires PyTorch 2.0.1 and matplotlib 3.7.2
45033746
Treffery Webb (@tweeeb)

This is an initial inspection, no action is required at this point
Difficulty: Hard
Readme: Poor

details on algorithm and usage provided
no information on training choices
no results/figures/example predictions shown

Commit messages: Good
Code:

good design
well commented
algorithm/architectures seem correct

Functionality/Performance:

no numbers/plots provided to judge performance

General comments:

algorithm solves the problem apporpriately, with unknown performance

Marking
Good Practice (Design/Commenting, TF/Torch Usage)
Adequate design and implementation
Good spacing and comments
Header blocks
Recognition Problem
Solves problem, performance unknow no testing results -3
Driver Script present
File structure present
Shows Usage & Demo & Visualisation & Data usage, no result output, no training plots -3
Module present
Commenting
No Data leakage
Difficulty: Hard
Commit Log
Meaningful commit messages
Progressive commits used
Documentation
ReadMe OK, no refs, no plots -2, could have problem info etc. -1
Model/technical explanation
Good Description and Comments
Markdown used and PDF submitted
Pull Request
Successful Pull Request (Working Algorithm Delivered on Time in Correct Branch)
Feedback required, remove .idea files etc. -2
Request Description good

Feedback marks possible +2 if the requested changes are made (see above).

No feedback attempt and no feedback marks granted.

@wangzhaomxy the edstem post specified no hard deadline, why did that change???

@wangzhaomxy the edstem post specified no hard deadline, why did that change???

I just marked all problem pull requests and was making sure I had covered everyone.  You can still get marks after finishing the adjustment. I will get another inspection before the due date. However, we cannot wait for endless time, we have to update your grades to the school in a few days.  Please adjust it ASAP.

@wangzhaomxy

@wangzhaomxy the edstem post specified no hard deadline, why did that change???

I just marked all problem pull requests and was making sure I had covered everyone. You can still get marks after finishing the adjustment. I will get another inspection before the due date. However, we cannot wait for endless time, we have to update your grades to the school in a few days. Please adjust it ASAP.

Thank you! I got the final feedback only two days ago while on a buisness trip 😭😭 will update ASAP


raidboss: improve Manusya/Transmute alerts

During The Tower of Zot's first boss, Minduruva, cactbot has some tells
for the Transmute Fire III and Transmute Bio III delayed aoe attacks.
These trigger immediately when the Transmute begins casting, and warn
the player to run behind or under the orb that will have the Fire or Bio
attacks.
The boss will perform 2 transmutation of the elements before then using
a third element directly. If the boss uses Bio or Fire, the players must
first stack appropriately on the boss before running to the first or
second orb.
Since there is no tell for this, the tell for the orb mechanic can lead
players to run to the spot early, making it difficult to reach the
correct safe spot.
To correct this, we want to tell the player to first handle the mechanic
for the boss before handling the orb mechanic.
This is done by tracking which mechanic is under which orb. Note that
Minduruva never uses the same element twice during an attack, and as far
as I have noticed doesn't use both Fire and Bio for transmute at the
same time.
Instead of immediately providing info for "Get Behind Orb" or "Get Under
Orb", use a Map to track if its a Fire or Bio mechanic awaiting.
Then, once the boss uses the Manusya ability, alert the player. In the
case of Thunder and Blizzard, just alert about the orb mechanic that is
happening. If it is Fire or Bio, perform an alert which indicates to Get
Behind or Get Under first, followed by the appropriate orb mechanic. In
the event that there is no orb mechanic (beginning of the fight, or the
two orbs were blizzard and thunder), then just alert the player about
the Fire or Bio mechanic using the standard outputs.
In all cases, there is enough time to handle the appropriate Manusya
mechanic on the boss first before running to the orb, so the delay in
the tell shouldn't cause an issue.
With this change we no longer warn the player to run away from the boss
too early, and alert them to stand near the boss to handle the on-boss
mechanic first.
Signed-off-by: Jacob Keller<EMAIL_ADDRESS>

I noticed this while running the dungeon a couple days ago, that we sometimes give alerts which can be confusing.
This particular implementation is a little complex, and we might be able to make a few simplifications if we need.
I'm also not convinced the opening fire/bio tells are strictly necessary. (The ground indicators make it obvious from the moment the boss starts casting, which is the same time as our alert). I kept them in for completeness.

I pulled in your suggestions and fixed up the duration. The intuition about 8 seconds was pretty close but only works for orb 1.


Start Yin-Yang from menu，notify a error

What happened?
start Yin-Yang from menu，notify a error:
Error while loading application translations!

Version
yin-yang 3.4-1
How did you install Yin & Yang?
Git clone + running install script
What desktop environments are you seeing the problem on?
KDE
Which plugin causes the issue?
None
What software version do you use?
No response
Relevant log output
No response

Same here with debian 12 and kde plasma 5.27.
$ yin-yang -t
doesn't do anything
Log when runnning
$ yin-yang
Plugin Icons has no support for your desktop environment yet!
Traceback (most recent call last):
  File "/opt/yin-yang/yin_yang/__main__.py", line 113, in <module>
    raise FileNotFoundError('Error while loading application translations!')
FileNotFoundError: Error while loading application translations!

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "<frozen runpy>", line 198, in _run_module_as_main
  File "<frozen runpy>", line 88, in _run_code
  File "/opt/yin-yang/yin_yang/__main__.py", line 116, in <module>
    logger.error(str(e))
  File "/usr/lib/python3.11/logging/__init__.py", line 1518, in error
    self._log(ERROR, msg, args, **kwargs)
  File "/usr/lib/python3.11/logging/__init__.py", line 1634, in _log
    self.handle(record)
  File "/usr/lib/python3.11/logging/__init__.py", line 1644, in handle
    self.callHandlers(record)
  File "/usr/lib/python3.11/logging/__init__.py", line 1706, in callHandlers
    hdlr.handle(record)
  File "/usr/lib/python3.11/logging/__init__.py", line 978, in handle
    self.emit(record)
  File "/opt/yin-yang/yin_yang/NotificationHandler.py", line 8, in emit
    subprocess.call(['notify-send', record.levelname, str(record.msg),
  File "/usr/lib/python3.11/subprocess.py", line 389, in call
    with Popen(*popenargs, **kwargs) as p:
         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/subprocess.py", line 1024, in __init__
    self._execute_child(args, executable, preexec_fn, close_fds,
  File "/usr/lib/python3.11/subprocess.py", line 1901, in _execute_child
    raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: 'notify-send'

I think there is two problems: first it doesn't load the translations, which is right, but the it's the logger that then fails:
https://github.com/oskarsh/Yin-Yang/blob/f855d77f7a50572223459bbad67abce062c8b310/yin_yang/__main__.py#L110-L118
I am just skipping the line 116 as  a quick fix for now!

@simoncarrignon ok，I see and I fix it too with your way,thanks. And you can make yin-yang self-start when PC boot

@simoncarrignon I try to add the service for making it self -start , but it fail


fix @Gauge and @CachedGauge annotation  BeanPostProcessor bugs and add more tests

When I try to config metrics-spring using JavaConfig and add @Gauge and @CachedGauge annotation on methods, I can't get their metric info through jmx. Other annotations like @Counted, @Metered, @Timed work well. I looked into the source code, and find some problem that may be bugs.
In GaugeMethodAnnotationBeanPostProcessor line 28, the "return ReflectionUtils.invokeMethod(method, bean); " statement throw out java.lang.IllegalArgumentException: object is not an instance of declaring class. To my understanding, the argument bean is a proxy object, while method is the original Method object of the proxy target. We can't just call method like this. One simple solution is to find out the proxy object's corresponding Method and call it like this:
return ReflectionUtils.invokeMethod(bean.getClass().getMethod(method.getName(), method.parameterTypes), bean);
CachedGaugeAnnotationBeanPostProcessor class has the same problem and can be fixed in the same way.

Can you help me understand why you're referencing MBeans?
	…
	MBeanProxyFactoryBean factoryBean = new MBeanProxyFactoryBean();
	try {
		factoryBean.setObjectName(new ObjectName("metrics", "name", com.ryantenney.metrics.spring.javaconfig.MetricServiceImpl.gaugeValue"));
	}
	…

By referencing MBeans, I'm trying to ensure that the Metrics can produce right values through JMX reporter.

Okay, thanks for clarifying.  I'd rather not do any JMX testing in this project, as it's already thoroughly tested by JmxReporterTest in Metrics.
The resolution of the issue you're seeing shouldn't be to look up the method on every call to get/loadValue in the Gauge.  Perhaps we can to check if the bean is an instance of Advised, and then grab the target object, and invoke the gauged method on that.  I'll do some work on this and get back to you.

Any updates on this?

Any update on this issue? I am seeing the same error.


Summary of partner assessment does not display red assessments

The summary does not display the color red nor does it display the number of red assessments.
Screenshot of the assessment summary emailed to @VassilIordanov

@vassil @dspCarlson After the old-style partner assessments are migrated to periodic assessments (available in the next release), is this issue still relevant?

@vassil @dspCarlson After the old-style partner assessments are migrated to periodic assessments (available in the next release), is this issue still relevant?

@midmarch @gjvoosten @cemalettin-simsoft
I am closing this issue.
This issue is OBE (Overcome By Events) and is obsolete.
The requestor is long gone and the functionality is no longer used in ANET.


Remove lower-case check for postfix-main.cf

The check excludes any line with uppercase letters, such as cipher lines. Remove it because it is pretty rudimentary anyways.
I tried to add the following config line by using postfix-main.cf:
smtpd_tls_exclude_ciphers = aNULL,MD5,DES,3DES
It does not get applied because it fails the regex check.

I don't think we should remove the check. There may be empty lines and comments and whatnot in existing configuration files that are currently ignored. Removing the check will apply them and may break existing installations.
Furthermore the check is (almost) correct as described in the comment. It requires the option to START with a lower-case letter. In your case smtpd_tls_exclude_ciphers starts with s, so it should match. There is actually an option that starts with a digit (2bounce_notice_recipient), but your option should work.

I wrote a very simple test program to play around with the regex:
#!/bin/bash
if [[ "$1" =~ ^[a-z] ]]; then
  echo yes
else
  echo no
fi

As expected it responds with yes when I pass in your config line; it matches. If your change really solved your problem there must be something else that is wrong. Perhaps you have garbage in the config file (Windows CRLF line endings or a UTF-8 byte order mark for example)?

Thanks for testing the regex again.
As I was trying to find a solution, I removed the check and it worked for me - but i also changed the postfix-main.cf.
The real problem was that my postfix-main.cf only contains 1 line - and no EOL sequence (written with vscode).
Thus, read line returned false (exit status of read is non-zero if EOF).
I'm sorry for this mistake. You could use while read line || [ -n "$line" ]; do instead to support lines with no EOL sequence. But i guess it's a rare case, so I'm fine.

Right, I'll close this then. Merry Christmas!


Back button on home page shd close app

The back button on the home page shd close the app. it does nothing right now.

removed the backbuttonregistration that was causing this issue.


LABELs split across mutliple lines in Dockerfile are handled incorrectly

(Migrated from projectatomic/libpod#1149)
When building an image from a Dockerfile that has key=value pairs split across multiple lines of a single LABEL instruction, the resulting image has a mangled LABEL output.
This was observed on Fedora 28, using podman 0.7.2:
$ cat Dockerfile.multi
FROM registry.fedoraproject.org/fedora:28
LABEL io.openshift.commit = "deadbeef" \
      io.openshift.version = "3.11"
ENTRYPOINT "/bin/bash"

$ sudo podman build -t quay.io/miabbott/podman-label-test:multi -f Dockerfile.multi
STEP 1: FROM registry.fedoraproject.org/fedora:28
STEP 2: LABEL io.openshift.commit = "deadbeef"       io.openshift.version = "3.11"
STEP 3: ENTRYPOINT "/bin/bash"
STEP 4: COMMIT containers-storage:[overlay@/var/lib/containers/storage+/var/run/containers/storage:overlay.override_kernel_check=true]quay.io/miabbott/podman-label-test:multi
Getting image source signatures
Skipping fetch of repeat blob sha256:4656e146fab7f95ad90808bab5aa27e0041f1fa2427597a68efc6fa66693689d
Skipping fetch of repeat blob sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1
Copying config sha256:2a84c16f3f8d0cead85069105deb6399e6d0d27a657b730d90e8e2abb8c71fa1
 733 B / 733 B [============================================================] 0s
Writing manifest to image destination
Storing signatures
--> 2a84c16f3f8d0cead85069105deb6399e6d0d27a657b730d90e8e2abb8c71fa1

$ sudo podman inspect quay.io/miabbott/podman-label-test:multi
[
    {
        "Id": "2a84c16f3f8d0cead85069105deb6399e6d0d27a657b730d90e8e2abb8c71fa1",
        "Digest": "sha256:d1c1fdaf1387d124cfdca4bd38b759c72177e2d72847c7f552b2bd7d383ddd5a",
        "RepoTags": [
            "quay.io/miabbott/podman-label-test:multi"
        ],
        "RepoDigests": [
            "quay.io/miabbott/podman-label-test@sha256:d1c1fdaf1387d124cfdca4bd38b759c72177e2d72847c7f552b2bd7d383ddd5a"
        ],
        "Parent": "",
        "Comment": "Created by Image Factory",
        "Created": "2018-07-24T14:12:44.280970058Z",
        "ContainerConfig": {
            "Env": [
                "DISTTAG=f28container",
                "FGC=f28",
                "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
            ],
            "Entrypoint": [
                "/bin/sh",
                "-c",
                "\"/bin/bash\""
            ],
            "WorkingDir": "/",
            "Labels": {
                "io.openshift.commit": "= deadbeef       io.openshift.version = 3.11",
                "license": "MIT",
                "name": "fedora",
                "vendor": "Fedora Project",
                "version": "28"
            }
        },
        "Version": "",
        "Author": "",
        "Architecture": "amd64",
        "Os": "linux",
        "Size": 262873295,
        "VirtualSize": 262873295,
        "GraphDriver": {
            "Name": "overlay",
            "Data": {
                "LowerDir": "/var/lib/containers/storage/overlay/4656e146fab7f95ad90808bab5aa27e0041f1fa2427597a68efc6fa66693689d/diff",
                "MergedDir": "/var/lib/containers/storage/overlay/091bcce0127a47ee3e4342cbc6fe065b2a7f0787718ce7dab7e755031df09902/merged",
                "UpperDir": "/var/lib/containers/storage/overlay/091bcce0127a47ee3e4342cbc6fe065b2a7f0787718ce7dab7e755031df09902/diff",
                "WorkDir": "/var/lib/containers/storage/overlay/091bcce0127a47ee3e4342cbc6fe065b2a7f0787718ce7dab7e755031df09902/work"
            }
        },
        "RootFS": {
            "Type": "layers",
            "Layers": [
                "sha256:4656e146fab7f95ad90808bab5aa27e0041f1fa2427597a68efc6fa66693689d",
                "sha256:5f70bf18a086007016e948b04aed3b82103a36bea41755b6cddfaf10ace3c6ef"
            ]
        },
        "Labels": {
            "io.openshift.commit": "= deadbeef       io.openshift.version = 3.11",
            "license": "MIT",
            "name": "fedora",
            "vendor": "Fedora Project",
            "version": "28"
        },
        "Annotations": {},
        "ManifestType": "application/vnd.oci.image.manifest.v1+json",
        "User": ""
    }
]

If I change the Dockerfile to use a single LABEL instruction per key=value pair, it works correctly:
$ cat Dockerfile.single
FROM registry.fedoraproject.org/fedora:28
LABEL io.openshift.commit = "deadbeef"
LABEL io.openshift.version = "3.11"
ENTRYPOINT "/bin/bash"

$ sudo podman build -t quay.io/miabbott/podman-label-test:single -f Dockerfile.single
STEP 1: FROM registry.fedoraproject.org/fedora:28
STEP 2: LABEL io.openshift.commit = "deadbeef"
STEP 3: LABEL io.openshift.version = "3.11"
STEP 4: ENTRYPOINT "/bin/bash"
STEP 5: COMMIT containers-storage:[overlay@/var/lib/containers/storage+/var/run/containers/storage:overlay.override_kernel_check=true]quay.io/miabbott/podman-label-test:single
Getting image source signatures
Skipping fetch of repeat blob sha256:4656e146fab7f95ad90808bab5aa27e0041f1fa2427597a68efc6fa66693689d
Skipping fetch of repeat blob sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1
Copying config sha256:b05f036107d096578f7ced852104d3a9506079f77cbc3c03cbcbc9b88d4d8f27
 729 B / 729 B [============================================================] 0s
Writing manifest to image destination
Storing signatures
--> b05f036107d096578f7ced852104d3a9506079f77cbc3c03cbcbc9b88d4d8f27

$ sudo podman inspect quay.io/miabbott/podman-label-test:single
[
    {
        "Id": "b05f036107d096578f7ced852104d3a9506079f77cbc3c03cbcbc9b88d4d8f27",
        "Digest": "sha256:bd815b2a4be9cf8157844cf28eb86b8757c3c533fff8a2134bcd2bb0296dafde",
        "RepoTags": [
            "quay.io/miabbott/podman-label-test:single"
        ],
        "RepoDigests": [
            "quay.io/miabbott/podman-label-test@sha256:bd815b2a4be9cf8157844cf28eb86b8757c3c533fff8a2134bcd2bb0296dafde"
        ],
        "Parent": "",
        "Comment": "Created by Image Factory",
        "Created": "2018-07-24T14:14:20.42654769Z",
        "ContainerConfig": {
            "Env": [
                "DISTTAG=f28container",
                "FGC=f28",
                "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
            ],
            "Entrypoint": [
                "/bin/sh",
                "-c",
                "\"/bin/bash\""
            ],
            "WorkingDir": "/",
            "Labels": {
                "io.openshift.commit": "= deadbeef",
                "io.openshift.version": "= 3.11",
                "license": "MIT",
                "name": "fedora",
                "vendor": "Fedora Project",
                "version": "28"
            }
        },
        "Version": "",
        "Author": "",
        "Architecture": "amd64",
        "Os": "linux",
        "Size": 262873291,
        "VirtualSize": 262873291,
        "GraphDriver": {
            "Name": "overlay",
            "Data": {
                "LowerDir": "/var/lib/containers/storage/overlay/4656e146fab7f95ad90808bab5aa27e0041f1fa2427597a68efc6fa66693689d/diff",
                "MergedDir": "/var/lib/containers/storage/overlay/091bcce0127a47ee3e4342cbc6fe065b2a7f0787718ce7dab7e755031df09902/merged",
                "UpperDir": "/var/lib/containers/storage/overlay/091bcce0127a47ee3e4342cbc6fe065b2a7f0787718ce7dab7e755031df09902/diff",
                "WorkDir": "/var/lib/containers/storage/overlay/091bcce0127a47ee3e4342cbc6fe065b2a7f0787718ce7dab7e755031df09902/work"
            }
        },
        "RootFS": {
            "Type": "layers",
            "Layers": [
                "sha256:4656e146fab7f95ad90808bab5aa27e0041f1fa2427597a68efc6fa66693689d",
                "sha256:5f70bf18a086007016e948b04aed3b82103a36bea41755b6cddfaf10ace3c6ef"
            ]
        },
        "Labels": {
            "io.openshift.commit": "= deadbeef",
            "io.openshift.version": "= 3.11",
            "license": "MIT",
            "name": "fedora",
            "vendor": "Fedora Project",
            "version": "28"
        },
        "Annotations": {},
        "ManifestType": "application/vnd.oci.image.manifest.v1+json",
        "User": ""
    }
]

This probably falls back to ImageBuilder as the problem.  Do you agree @nalind ?

Ok the imagebuilder is using a very old dockerfile parser, which does not handle multiline labels or environments .
I will try to vendor in new parsers.

The Dockerfile.single case includes an extra "= " at the beginning of the label's value in the built image, which I think is not what you wanted.  Try removing the whitespace from around the = on the line with the LABEL instruction.

Oops your right without the space it works correctly.  It also fails the same way with Docker.  I guess I wasted a lot of the day on this one.

Ugh...sorry for the wasted effort folks.  :sob:


Feature/log figure abstract

What does this PR do?
Make abstraction layer for figure logging, i.e. add default for logging figures for all implemented loggers.
My suggestion to https://github.com/PyTorchLightning/pytorch-lightning/issues/4973
ToDo:

[x] MLFlow. How to include the step here?

[x] Neptune needs a step argument

[ ] TestTube (skipped for now)

[x] Base implementation (return None)

[x] Tensorboard

[x] Comet.ML

[x] CSV (defaults to base)

Before submitting

[x] Was this discussed/approved via a Github issue? (no need for typos and docs improvements)
[x] Did you read the contributor guideline, Pull Request section?
[x] Did you make sure your PR does only one thing, instead of bundling different changes together? Otherwise, we ask you to create a separate PR for every change.
[x] Did you make sure to update the documentation with your changes?
[x] Did you write any new necessary tests?
[x] Did you verify new and existing tests pass locally with your changes?
[x] If you made a notable change (that affects users), did you update the CHANGELOG?

PR review
Anyone in the community is free to review the PR once the tests have passed.
Before you start reviewing make sure you have read Review guidelines. In short, see the following bullet-list:

[ ] Is this pull request ready for review? (if not, please submit in draft mode)
[ ] Check that all items from Before submitting are resolved
[x] Make sure the title is self-explanatory and the description concisely explains the PR
[ ] Add labels and milestones (and optionally projects) to the PR so it can be classified; Bugfixes should be including in bug-fix release milestones (m.f.X) and features should be included in (m.X.b) releases.

Did you have fun?
Make sure you had fun coding 🙃

Hello @Haydnspass! Thanks for opening this PR.

In the file pytorch_lightning/loggers/base.py:

Line 161:121: E501 line too long (122 > 120 characters)
Line 335:121: E501 line too long (122 > 120 characters)
Line 336:1: W293 blank line contains whitespace

Do see the Hitchhiker's guide to code style

I am going to mark this PR now ready for review although some of the checks do not pass. However these affect only files that I have not touched, so I guess they are failing in master as well? Or am I missing something?
Otherwise, input/help appreciated.

hi @Haydnspass,
Seems the PR contains quite a lot unrelated changes. Your base branch was changed from release/1.2-dev to master since the PR was opened, so please rebase on master.

Closed in favor of PR on a clean branch.


Rebase kruskal fix

This is a rebase for an existing bug fix for bug #7759. The original fix #7763 was forgotten and not merged.

Reference issue
Closes #7759
Closes #7763
What does this implement/fix?
This fixes an overflow in scipy.stats.kruskal for large samples.
Additional information

Merged. Thanks @Lskvk , @JJLWHarrison and @andyfaff. Sorry for the exceedingly long delay. Somehow it fell between the cracks.


Random outages, appears to not communicat with radio.

Both of my sensors go dead and I have the following in my logs until I restart the add-on.  The outage can take 3-5 days to 2-3 weeks to happen.
MQTT Connection failed... MQTT Connected... MQTT Connection established. cb transfer status: 5, canceling... cb transfer status: 5, canceling... cb transfer status: 5, canceling... cb transfer status: 5, canceling... cb transfer status: 5, canceling... cb transfer status: 5, canceling... cb transfer status: 5, canceling... cb transfer status: 5, canceling... cb transfer status: 5, canceling... cb transfer status: 5, canceling... cb transfer status: 5, canceling... cb transfer status: 5, canceling... cb transfer status: 5, canceling... cb transfer status: 5, canceling... cb transfer status: 5, canceling... LIBUSB_ERROR_NOT_FOUND: Entity not found! Check your RTL-SDR dongle, USB cables, and power supply. WARNING: async read failed (-5). Library error -5, exiting...
I am running the latest version of the add-on in HA version as follows:
`
System Health

version
core-2022.2.6

installation_type
Home Assistant Supervised

dev
false

hassio
true

docker
true

user
root

virtualenv
false

python_version
3.9.7

os_name
Linux

os_version
5.10.0-9-amd64

arch
x86_64

timezone
America/Chicago

Home Assistant Community Store

GitHub API
ok

Github API Calls Remaining
4913

Installed Version
1.22.0

Stage
running

Available Repositories
978

Downloaded Repositories
14

Home Assistant Supervisor

host_os
Debian GNU/Linux 11 (bullseye)

update_channel
stable

supervisor_version
supervisor-2022.01.1

docker_version
20.10.11

disk_total
218.1 GB

disk_used
29.6 GB

healthy
true

supported
true

supervisor_api
ok

version_api
ok

installed_addons
Backup Hassio to Google Drive (1.7.2), Dropbox Sync (1.3.0), Duck DNS (1.14.0), File editor (5.3.3), Log Viewer (0.12.2), RPC Shutdown (2.2), WireGuard (0.6.0), Mosquitto broker (6.0.1), SSH & Web Terminal (10.0.2), Samba share (9.5.1), TasmoAdmin (0.16.0), Glances (0.14.2), Check Home Assistant configuration (3.9.0), DHCP server (1.2), Network UPS Tools (0.9.1), Samba Backup (5.0.0), Node-RED (10.4.0), Portainer (2.0.0), SDR to Home Assistant (0.1.6b), Home Assistant Google Drive Backup (0.105.2)

Lovelace

dashboards
1

resources
6

views
15

mode
storage

`
My yaml config output.
`
mqtt_host: <IP_ADDRESS>
mqtt_port: 1883
mqtt_user: yyyy
mqtt_password: xxxxxx
mqtt_topic: rtl_433
mqtt_retain: 'true'
frequency: '-f 433.92M'
protocol: '-R 40'
units: customary
discovery_prefix: homeassistant
discovery_interval: 600
debug: false`

hmm. Let me upgrade mine and see if I get the same.

I have had it happen in the current major and the last major as well.

Btw, do you know of a known working doorbell button?

I'm looking for a way to create an automation that looks for a bad log entry a would restart the addon.  Could that function be added to the watchdog in the addon?

That might help. If you turn debug on in the add-on, it will log the messages it is getting. I notice mine doesn't update for long periods, but it appears those are periods in which the sensor value didn't change. I mean I have an acurite sensor outside that sends both humidity and temp. They come in the same message to mqtt. And right now the Temp sensor updated 5 mins ago, and the humidity 1 minute ago. So unless the value changes Home Assistant is not marking it updated. I wonder if that is causing some of the issue.

Mine update very often.  Is there a way to dump the log in an auto?
Restarting the addon clears the log.  Also without debug my log is normally
empty.
On Fri, Feb 25, 2022, 9:21 PM Jeffrey Stone @.***>
wrote:

That might help. If you turn debug on in the add-on, it will log the
messages it is getting. I notice mine doesn't update for long periods, but
it appears those are periods in which the sensor value didn't change. I
mean I have an acurite sensor outside that sends both humidity and temp.
They come in the same message to mqtt. And right now the Temp sensor
updated 5 mins ago, and the humidity 1 minute ago. So unless the value
changes Home Assistant is not marking it updated. I wonder if that is
causing some of the issue.
—
Reply to this email directly, view it on GitHub
https://github.com/thejeffreystone/hassio_addons/issues/24#issuecomment-1051538355,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ACBE7KQM4YTHAXPUXJYYLWDU5BBKTANCNFSM5OPVB2XQ
.
You are receiving this because you authored the thread.Message ID:
@.***>

Yeah, since that thing is constantly reading the SDR I figured it could get nuts log wise, so I keep the messages suppressed. The only way I know of access the log is via docker. I tend to just use the log on the add-one and copy out what I need.
I been playing with updates tonight on my beta box, but didn't get anywhere other than I might have some more properties I can add. I know that some of the devices have a USB issue so I have always used a hub between the SDR and my device. Not sure if that is why I dont see an issue.

Update 1.9b just appeared and now installed.

Reverting to previous version.  The following error now happens and nothing reads:
Traceback (most recent call last):   File "/scripts/rtl_433_mqtt_hass.py", line 28, in <module>     WHITELIST_ENABLE = os.environ['WHITELIST_ENABLE']   File "/usr/lib/python3.9/os.py", line 679, in __getitem__     raise KeyError(key) from None KeyError: 'WHITELIST_ENABLE' Found Rafael Micro R820T tuner Exact sample rate is:<PHONE_NUMBER>14 Hz [R82XX] PLL not locked! Sample rate set to 250000 S/s. Tuner gain set to Auto. Tuned to 433.920MHz. MQTT Connected... MQTT Connection established.

And upon restore of old version the addon will not start:
No supported devices found.
Traceback (most recent call last):
  File "/scripts/rtl_433_mqtt_hass.py", line 28, in <module>
    WHITELIST_ENABLE = os.environ['WHITELIST_ENABLE']
  File "/usr/lib/python3.9/os.py", line 679, in __getitem__
    raise KeyError(key) from None
KeyError: 'WHITELIST_ENABLE'

0.1.11b should be working for SDR2MQTT and 0,3,12b should be for Acurite2MQTT

Got it and yes it did fix the issue.
Thanks!


Users can permanently lock tokens by updating a commit with a different numTokens

A user has tokens committed in these polls:
{ A: 1, B: 2, C: 3 }
Where A, B, C are pollIDs and 1, 2, 3 are committed tokens.
A user wants to update their commit for poll B. If all they're doing is changing their commitHash (choice or salt) this is fine, but what if they change their token amount? There is no logic in commitVote to delete an old node (nor would there be a way to do it without encumbering the interface with extra params, and even then a user could get it wrong and "the system" would be none the wiser). https://github.com/ConsenSys/PLCRVoting/blob/1d9ff1f487b9c1562695c2d6ce01118e4d9d3ad0/contracts/PLCRVoting.sol#L106-L122
Say the user wants to commit 4 tokens to poll B. They now have:
{ A: 1, B: 2, C: 3, B: 4 }
Later the user reveals for A, B and C, leaving them with:
{ B: 2 }
~They cannot rescueTokens for B because of this line:~ https://github.com/ConsenSys/PLCRVoting/blob/1d9ff1f487b9c1562695c2d6ce01118e4d9d3ad0/contracts/PLCRVoting.sol#L90
So their tokens are locked. ~The simple solution seems to be to remove line 90. Is there a reason that check is necessary or is it just defensive programming?~
CC: @yorhodes @cemozerr @stuckinaboot

My proposed solution actually would not work. When the remove(pollID) happened in revealVote there would be no way to use rescueTokens to recover other nodes inserted for that pollID. Now I'm thinking we have to do a defensive remove(pollID) at the top of commit vote, and with checks to see if the node actually exist lest it mess up the pointers of the root node.

To be able to do a defensive check of that sort, we'll need to inspect the numTokens of the node, and if they are > 0 then do a remove(pollID).
If there is a commitHash there but the numTokens are zero, is it fine to pretend it doesn't exist? Thinking through it (and adding R for root node):
{ R: 0, A: 1, B: 2, C: 3 }
User updates their commit for B, original B is removed because its numTokens > 0:
{ R: 0, A: 1, C: 3, B: 4 }
User updates their commit for A to 0:
{ R: 0, A: 0, C: 3, B: 4 }
User updates their commit for A to 1:
{ R: 0, A: 0, A: 1, C: 3, B: 4 }
User reveals all:
{ R: 0, A: 0 }
Is it a problem that there's still a node there? I don't think it's a problem.

This is not a bug. I did not read the function body of hasBeenRevealed, and my mental model of how the DLL stores data was wrong. When a new commit is added for a poll in a new position in the DLL, it overwrites the data stored for that pollID in the AttributeStore. So an old node does remain, but its data is overwritten and tokens are not locked. I added a test confirming this.


feat: allow to disable wsl upload through hidden configuration

Is your enhancement related to a problem? Please describe
In the e2e tests we often have a problem where uploading the model to the WSL leads to freeze. The source of the problem is unknown, and is blocking for QE.
The main lead are related to the WSL Upload code, which is using the podman cli (E.g. podman.exe) which freeze for unknown reasons.
Describe the solution you'd like
As discussed with @jeffmaury and @ScrewTSW, we could add an hidden option in the configuration to disable the WSL Upload.
Describe alternatives you've considered
No response
Additional context
No response

@ScrewTSW do we want to close this one ? or are we still interested to have this option ?

@ScrewTSW do we want to close this one ? or are we still interested to have this option ?

I'd say we are still interested in having the option.


Anonymous voting

Would it be possible to make the voting anonymous?

Hi. It would - it could be made an option at the board level. I need to give it a thought, to determine what happens when it's switched on, off and on again, but it should be possible - I'll get back to you. 🙂


Use sdk.shutdown() to shut all providers down

The new release of OpenTelemetry 1.23.0 brought a proper shutdown method.

I was looking forward to this otel-java feature arriving!


AttributeError when using dask_ml.model_selection.kfold object

What happened:
I'm currently trying to create a pipeline for model training using LogisticRegression and Nested cross-validation. I've got an unexpected AttributeError during the pipeline execution.
Exception: AttributeError("'numpy.ndarray' object has no attribute 'chunks'")

What you expected to happen:
I wasn't expecting that since, I double-checked that all the objects are dask.array. The following MWE shows what my pipeline looks like.
Minimal Complete Verifiable Example:
from typing import Tuple, Any
from dask.array.core import Array
from sklearn.pipeline import Pipeline
from sklearn.linear_model import LogisticRegression
from dask_ml.model_selection import GridSearchCV, KFold
from dask_ml.linear_model import LogisticRegression
from dask_ml.metrics import accuracy_score
from sklearn.metrics import roc_auc_score
from sklearn.base import is_classifier
from dask.distributed import Client, progress
import dask.array as da

import numpy as np
import joblib
from dask_ml.datasets import make_classification as dask_make_classification

# import warnings filter
from warnings import simplefilter

# ignore all future warnings
simplefilter(action="ignore", category=FutureWarning)

def fake_dataset() -> Tuple[Array, Array]:
    X, y = dask_make_classification(
        n_samples=1000,
        n_features=20,
        random_state=1,
        n_informative=10,
        n_redundant=10,
        chunks=1000 // 20,
    )
    return X, y

def train_model(X: Array, y: Array) -> None:
    n_outer_splits = 2
    n_inner_splits = 2
    param_grid = [
        {
            "classifier": [LogisticRegression()],
            "classifier__penalty": ["l1", "l2"],
            "classifier__C": np.logspace(-4, 4, 20),
            "classifier__solver": ["liblinear"],
        },
    ]
    # define the model
    pipeline = Pipeline([("classifier", LogisticRegression())])
    # XXX: check that is a proper model
    try:
        if not is_classifier(pipeline["classifier"]):
            raise Exception("Not valid classification algorithm")
    except Exception as e:
        print(f"Be aware of: {e}")
    finally:
        pass
    # set-up the nested cross-validation procedure
    cv_outer = KFold(n_splits=n_outer_splits, shuffle=True, random_state=1)
    # enumerate splits
    outer_results = list()
    for kth_fold, (train_ix, test_ix) in enumerate(cv_outer.split(X)):
        print(f"Running {kth_fold} Fold")
        # split data
        X_train, X_test = X[train_ix, :], X[test_ix, :]
        y_train, y_test = y[train_ix], y[test_ix]
        # setup inner cross-validation procedure
        cv_inner = KFold(n_splits=n_inner_splits, shuffle=True, random_state=1)

        # define search
        search = GridSearchCV(
            estimator=pipeline,
            param_grid=param_grid,
            scoring="accuracy",
            cv=cv_inner,
            refit=True,
        )
        with joblib.parallel_backend("dask"):
            result = search.fit(X_train, y_train)

    return None

if __name__ == "__main__":
    client = Client(
        processes=False, threads_per_worker=1, n_workers=4, memory_limit="10GB"
    )

    X, y = fake_dataset()
    train_model(X, y)

Anything else we need to know?:
Further debugging showed that the error comes from fit operation, however, there are not atrbiutes using np.ndarray objects.
Environment:

Dask version: 1.9.0
Python version: 3.8
Operating System: Ubuntu 20.04 LTS
Install method (conda, pip, source): conda

Can you post the full traceback?

Sure thing @TomAugspurger
Running 0 Fold
/home/makquel/anaconda3/envs/model_professor_2/lib/python3.8/site-packages/dask/array/slicing.py:1080: PerformanceWarning: Increasing number of chunks by factor of 14
  p = blockwise(
distributed.worker - WARNING - Compute Failed
Function:  cv_split
args:      (KFold(n_splits=2, random_state=1, shuffle=True), array([[ 0.19495857, -0.8850293 , -0.40491901, ...,  1.33906018,
        -1.25807389,  0.04787755],
       [ 0.25033412,  0.62342772,  0.43649497, ..., -0.18664019,
         2.01090793, -0.33272972],
       [ 0.07370212, -0.85365332,  1.06964283, ..., -0.30508485,
        -1.17534124,  1.20492622],
       ...,
       [ 1.38853841,  1.56361377,  0.34933573, ..., -0.69068144,
        -1.10318088,  0.26826262],
       [ 0.7677924 ,  0.19290652,  1.48708061, ...,  0.53962508,
        -1.22606228,  0.11060196],
       [-0.65174484,  1.41971851, -0.00285028, ..., -1.24113283,
        -1.30192431, -1.98192271]]), array([0, 0, 0, 0, 0, 1, 1, 0, 1, 1, 0, 1, 0, 1, 1, 0, 1, 1, 1, 0, 0, 1,
       0, 0, 1, 1, 0, 1, 1, 0, 1, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0,
       0, 1, 0, 1, 1, 0, 0, 1, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0,
       0, 1, 0, 1, 1, 1, 1, 1, 0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0, 1, 0,
       0, 1, 1, 0, 0, 0, 0, 1, 1, 0, 0, 0, 1
kwargs:    {}
Exception: AttributeError("'numpy.ndarray' object has no attribute 'chunks'")

('score-441cbc92926e2852d676f4d612a0c376', 1, 1) has failed... retrying
distributed.worker - WARNING - Compute Failed
Function:  cv_split
args:      (KFold(n_splits=2, random_state=1, shuffle=True), array([[ 0.19495857, -0.8850293 , -0.40491901, ...,  1.33906018,
        -1.25807389,  0.04787755],
       [ 0.25033412,  0.62342772,  0.43649497, ..., -0.18664019,
         2.01090793, -0.33272972],
       [ 0.07370212, -0.85365332,  1.06964283, ..., -0.30508485,
        -1.17534124,  1.20492622],
       ...,
       [ 1.38853841,  1.56361377,  0.34933573, ..., -0.69068144,
        -1.10318088,  0.26826262],
       [ 0.7677924 ,  0.19290652,  1.48708061, ...,  0.53962508,
        -1.22606228,  0.11060196],
       [-0.65174484,  1.41971851, -0.00285028, ..., -1.24113283,
        -1.30192431, -1.98192271]]), array([0, 0, 0, 0, 0, 1, 1, 0, 1, 1, 0, 1, 0, 1, 1, 0, 1, 1, 1, 0, 0, 1,
       0, 0, 1, 1, 0, 1, 1, 0, 1, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0,
       0, 1, 0, 1, 1, 0, 0, 1, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0,
       0, 1, 0, 1, 1, 1, 1, 1, 0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0, 1, 0,
       0, 1, 1, 0, 0, 0, 0, 1, 1, 0, 0, 0, 1
kwargs:    {}
Exception: AttributeError("'numpy.ndarray' object has no attribute 'chunks'")

Would be that enough to diagnose?

Thanks. You might want to try using the single-threaded scheduler (at least not using the distributed schedule) which should give cleaner tracebacks.
I’m trying to narrow down where things are converted to numpy arrays.

On Aug 19, 2021, at 8:45 AM, Miguel Ángel Cárdenas @.***> wrote:

Sure thing @TomAugspurger
Running 0 Fold
/home/makquel/anaconda3/envs/model_professor_2/lib/python3.8/site-packages/dask/array/slicing.py:1080: PerformanceWarning: Increasing number of chunks by factor of 14
p = blockwise(
distributed.worker - WARNING - Compute Failed
Function:  cv_split
args:      (KFold(n_splits=2, random_state=1, shuffle=True), array([[ 0.19495857, -0.8850293 , -0.40491901, ...,  1.33906018,
-1.25807389,  0.04787755],
[ 0.25033412,  0.62342772,  0.43649497, ..., -0.18664019,
2.01090793, -0.33272972],
[ 0.07370212, -0.85365332,  1.06964283, ..., -0.30508485,
-1.17534124,  1.20492622],
...,
[ 1.38853841,  1.56361377,  0.34933573, ..., -0.69068144,
-1.10318088,  0.26826262],
[ 0.7677924 ,  0.19290652,  1.48708061, ...,  0.53962508,
-1.22606228,  0.11060196],
[-0.65174484,  1.41971851, -0.00285028, ..., -1.24113283,
-1.30192431, -1.98192271]]), array([0, 0, 0, 0, 0, 1, 1, 0, 1, 1, 0, 1, 0, 1, 1, 0, 1, 1, 1, 0, 0, 1,
0, 0, 1, 1, 0, 1, 1, 0, 1, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0,
0, 1, 0, 1, 1, 0, 0, 1, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0,
0, 1, 0, 1, 1, 1, 1, 1, 0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0, 1, 0,
0, 1, 1, 0, 0, 0, 0, 1, 1, 0, 0, 0, 1
kwargs:    {}
Exception: AttributeError("'numpy.ndarray' object has no attribute 'chunks'")
('score-441cbc92926e2852d676f4d612a0c376', 1, 1) has failed... retrying
distributed.worker - WARNING - Compute Failed
Function:  cv_split
args:      (KFold(n_splits=2, random_state=1, shuffle=True), array([[ 0.19495857, -0.8850293 , -0.40491901, ...,  1.33906018,
-1.25807389,  0.04787755],
[ 0.25033412,  0.62342772,  0.43649497, ..., -0.18664019,
2.01090793, -0.33272972],
[ 0.07370212, -0.85365332,  1.06964283, ..., -0.30508485,
-1.17534124,  1.20492622],
...,
[ 1.38853841,  1.56361377,  0.34933573, ..., -0.69068144,
-1.10318088,  0.26826262],
[ 0.7677924 ,  0.19290652,  1.48708061, ...,  0.53962508,
-1.22606228,  0.11060196],
[-0.65174484,  1.41971851, -0.00285028, ..., -1.24113283,
-1.30192431, -1.98192271]]), array([0, 0, 0, 0, 0, 1, 1, 0, 1, 1, 0, 1, 0, 1, 1, 0, 1, 1, 1, 0, 0, 1,
0, 0, 1, 1, 0, 1, 1, 0, 1, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0,
0, 1, 0, 1, 1, 0, 0, 1, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0,
0, 1, 0, 1, 1, 1, 1, 1, 0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0, 1, 0,
0, 1, 1, 0, 0, 0, 0, 1, 1, 0, 0, 0, 1
kwargs:    {}
Exception: AttributeError("'numpy.ndarray' object has no attribute 'chunks'")
Would be that enough to diagnose?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or unsubscribe.

Hi everyone,
@TomAugspurger, I think that I have found the implicit NumPy conversion. The following script represents the functionality affecting X and y in the build_cv_graph function when called by the fit method of the DaskBaseSearchCV. Running this script makes clear that the to_keys function is the problem. Notably, this script will not throw an error because the actual splitting is not carried in this part of the code.
from sklearn.model_selection._split import KFold
from dask_ml.model_selection._search import compute_n_splits
from dask_ml.model_selection.utils import to_indexable, to_keys
from dask_ml.model_selection.methods import cv_split
import dask.array as da
from dask import get

def printtype(x, i):
    print(f"{i}, {type(x)}")
    return x

X = da.random.normal(size=(1_000_000, 5),
                     chunks=(100_000, None))
y = da.random.normal(size=1_000_000, chunks=100_000)
X, y, groups = to_indexable(X, y, None)
cv = KFold(3)

dsk = {}
dsk["check0"] = (printtype, X, 0)
X_name, y_name, groups_name = to_keys(dsk, X, y, groups)

dsk["check1"] = (printtype, X_name, 1)
dsk["cv_name"] = (cv_split, cv, "check1", y_name, groups_name, False, True)
get(dsk, "cv_name")

Looking inside dask_ml.model_selection.utils.to_keys, we see that X and y are acted on by
for x in args: # i.e. [X, y,...]
    ...
    elif isinstance(x, (da.Array, dd.DataFrame)):
        x = delayed(x)
        dsk.update(x.dask)
        yield x.key

The issue is eliminated when the x = delayed(x) transform is removed. This is exciting because the following mwe works with the change.
import dask.array as da
import dask.distributed
import dask_ml.model_selection as dcv
import xgboost as xgb

if __name__=="__main__":
    with dask.distributed.Client() as client:
        X = da.random.normal(size=(1_000_000, 5),
                             chunks=(100_000, None))
        y = da.random.normal(size=1_000_000, chunks=100_000)
        estim = xgb.dask.DaskXGBRegressor()
        params = {'max_depth': [3, 4, 5]}

        model = dcv.RandomizedSearchCV(estim, params, n_iter=1)
        model.fit(X, y)

As such, making this change could close this issue and issue #906. If possible, I would greatly appreciate the chance to push this change. Of course, I have only run it on this example and a very similar example with Dask's LinearRegression estimator, so other issues could emerge. However, on my understanding, calling delayed is unnecessary.
@trivialfis, if there are any particular tests that need to be run to verify the interoperability of Dask with this change and xgboost.dask, please let me know.

Unfortunately, the dask-ml package is not yet compatible with xgboost.dask so there's no test at the moment.

Hi everyone,
I have run the pytests. Some initially failed because dask.Array instances are mutable unlike dask.Delayed but this was easily fixed by calling id. However, I am unable to fix one of the failures.
The test_grid_search_dask_dataframe function repeatedly fails because "DataFrame.iloc only supports selecting columns. It must be used like df.iloc[:, column_indexer]." The issue arises when the _pandas_indexing function attempts to split the data frame along its rows into train and test parts.
In the past, this issue likely went undiscovered because much like the implicit Dask to NumPy conversion leading to the initial issue, there is an implicit Dask to Pandas conversion. As such, if test_grid_search_dask_dataframe is run with a DataFrame whose total size exceeds the worker memory limit, then a loop of warnings and failures will occur.
@TomAugspurger, given your advanced experience with Dask, I think it would be better for you to decide how to handle this data frame issue. If you would like I can push the changes that I have made so you can look at them.


Allow specifying a prefix for the URL

Can you allow an env var e.g. PREFIX=/dashboard so we can access it using that prefix?

Closing as completed with https://github.com/mohsenasm/swarm-dashboard/issues/28


train_loss一直震荡

Reminder

[X] I have read the README and searched the existing issues.

Reproduction
lr调至2e-7，train_loss还是震荡，求助
Expected behavior
No response
System Info
No response
Others
No response

用 5e-5

试过了，loss震荡得更厉害


Boost 1.70 cmake config broken

Issue description
Looks like the CMake config files produced by boost 1.70 do not work correctly because they assume the headers and the library to be in the same top-level folder (they are not, due to the fact there is "out" and "dev").
Steps to reproduce
Have a Cmakefile which does find_package(Boost REQUIRED COMPONENTS unit_test_framework) and try to build it.
Technical details
→ nix-shell -p nix-info --run "nix-info -m"
 - system: `"x86_64-darwin"`
 - host os: `Darwin 18.5.0, macOS 10.14.4`
 - multi-user?: `no`
 - sandbox: `no`
 - version: `nix-env (Nix) 2.2.1`
 - channels(ktf): `"nixpkgs-18.09pre154109.571b40d3f50, nixpkgs-19.03-19.03pre172363.b12b1e2f428, nixpkgs-unstable-19.09pre177248.ed1b59a98e7"`
 - nixpkgs: `/Users/ktf/src/nix/nixpkgs`

It appears the paths in those config files are quite aware of difference between the includedir and libdir as seen in "result-dev/lib/cmake/boost_atomic-1.70.0/boost_atomic-config.cmake":
get_filename_component(_BOOST_CMAKEDIR "${CMAKE_CURRENT_LIST_DIR}/../" ABSOLUTE)
get_filename_component(_BOOST_INCLUDEDIR "${_BOOST_CMAKEDIR}/../../../qk9apiwla9pzawjmnc4s5qsndyhkbqdg-boost-1.70.0-dev/include/" ABSOLUTE)
get_filename_component(_BOOST_LIBDIR "${_BOOST_CMAKEDIR}/../" ABSOLUTE)

The issue seems to be caused by the fact that these relative paths assume that the cmake configs will be installed in libdir which points to $out/lib, but in our case they end up in "$dev/lib".

I've seen other packages with a similar issue (e.g. fmt). Any suggestion on how to work this around?

Well, it makes perfect sense to leave cmake files in the dev output.
One workaround that doesn't require any understanding of how boost builds itself is to just patch this with brute force. Something like:
postInstall = stdenv.lib.optionalString (lib.versionAtLeast "1.70" version) ''
  for file in "$dev/lib/cmake/"*/*.cmake; do
    substituteInPlace $file \
      --replace 'get_filename_component(_BOOST_CMAKEDIR " "get_filename_component(_BOOST_CMAKEDIR "'$dev/lib/cmake/'" ABSOLUTE)' \
      --replace 'get_filename_component(_BOOST_INCLUDEDIR " "get_filename_component(_BOOST_INCLUDEDIR "'$dev/include/'" ABSOLUTE)' \
      --replace 'get_filename_component(_BOOST_LIBDIR " "get_filename_component(_BOOST_LIBDIR "'$out/lib/'" ABSOLUTE)'
  done
'';

This is just a sketch of a possible workaround, I didn't test it in any way.

Thanks, this allowed to get me a step further:
    myBoost = pkgs.boost170.overrideAttrs (attrs: {
      postFixup = ''
        # Make boost header paths relative so that they are not runtime dependencies
        cd ''${!outputDev} && find include \( -name '*.hpp' -or -name '*.h' -or -name '*.ipp' \) \
        -exec sed '1s/^\xef\xbb\xbf//;1i#line 1 "{}"' -i '{}' \;
        '';
      postInstall = ''
        echo "''${!outputDev}/lib/cmake/"*/*.cmake > $out/foo
        echo "''${!outputLib}/lib/cmake/"*/*.cmake >> $out/foo
        for file in "''${!outputLib}/lib/cmake/"*/*.cmake; do
          substituteInPlace $file \
            --replace "get_filename_component(_BOOST_CMAKEDIR" "get_filename_component(_BOOST_CMAKEDIR "''${!outputDev}/lib/cmake/" ABSOLUTE)#"   \
            --replace "get_filename_component(_BOOST_INCLUDEDIR" "get_filename_component(_BOOST_INCLUDEDIR "''${!outputDev}/include/" ABSOLUTE)#" \
            --replace "get_filename_component(_BOOST_LIBDIR" "get_filename_component(_BOOST_LIBDIR "''${!outputLib}/lib/" ABSOLUTE)#"
        done
        '';
    });
    myFmt = pkgs.fmt.overrideAttrs (attrs: {
      outputs = [ "out" ];
      cmakeFlags = [
        "-DFMT_TEST=FALSE"
        "-DBUILD_SHARED_LIBS=TRUE"
      ];
    });

Looks like in postInstall the files are still in $out.
Am I right that ${!outputDev} should be preferred over $dev so that people can merge out and dev if needed by doing:
outputDev = "out";

?
I still have a problem with unit_test_framework, but I suspect that's because I need also the static version of it...

@ktf Great! Do you mind opening a PR?
Regarding $outputFoo, I believe it's meant to provide a framework for generic builders. There is documentation in manual https://nixos.org/nixpkgs/manual/#multiple-output-file-type-groups . Most expressions in nixpkgs use $out, $dev and such, your use case is currently not supported.

Is there a workaround that does not involve rebuilding boost? Maybe something on the client side?

This may be resolved by #85254

If you run into this issue and need a quick fix, you can always symlink join boost with boost.dev to get a derivation with working CMake package config:
symlinkJoin {
  name = boost.name + "+cmake";
  paths = [ boost boost.dev ];
}

@veprbl I don't believe this is fixed yet— I'm still seeing the issue on the boost171 in the 21.05 release.

FWIW, it looks like this is actually fine in boost173-175, so maybe it is fine to close the ticket after all, since boost171 is now removed per #134930, and presumably the next NixOS release will be boost>=1.75:
$ grep filename /nix/store/2qn4pzrqpw0nlrq92v4c15nvg85jc0v3-boost-1.75.0-dev/lib/cmake/boost_system-1.75.0/boost_system-config.cmake
get_filename_component(_BOOST_REAL_CMAKEDIR "${CMAKE_CURRENT_LIST_DIR}/../" REALPATH)
  get_filename_component(_BOOST_CMAKEDIR_ORIGINAL "/nix/store/njh175giavpvnqpm1yzk6zn6d5pb81x5-boost-1.75.0/lib/cmake" REALPATH)
get_filename_component(_BOOST_CMAKEDIR "/nix/store/njh175giavpvnqpm1yzk6zn6d5pb81x5-boost-1.75.0/lib/cmake" REALPATH)
get_filename_component(_BOOST_INCLUDEDIR "${_BOOST_CMAKEDIR}/../../../2qn4pzrqpw0nlrq92v4c15nvg85jc0v3-boost-1.75.0-dev/include/" ABSOLUTE)
get_filename_component(_BOOST_LIBDIR "${_BOOST_CMAKEDIR}/../" ABSOLUTE)
  get_filename_component(_BOOST_CMAKEDIR "${CMAKE_CURRENT_LIST_DIR}/../" ABSOLUTE)

Nice. Then let's do that!


Add a method to the Item trait for drive item queries using the item id

The item() method in the Item trait should be changed to implement this method. The current item() method should be changed to either be a different trait or the name changed.

The documentation is here:
Drive item queries by id

No longer actionable.


Higher hashrate denominations.

Update smarty_globals.inc.php to include higher hashrate denominations.
Added PH/s and EH/s to Small helper array.
Update admin_settings.inc.php to include higher hashrate denominations.
Added PH/s and EH/s to Network Hashrate Modifier settings.

Below image shows the changes in live environment.

I was thinking that the /include/classes/bitcoinwrapperclass.php needs to be altered too but I am unsure exactly what to change it to.
$dNetworkHashrate = $this->getmininginfo();
if (is_array($dNetworkHashrate)) {
if (array_key_exists('networkhashps', $dNetworkHashrate)) {
$dNetworkHashrate = $dNetworkHashrate['networkhashps'];
} else if (array_key_exists('networkmhps', $dNetworkHashrate)) {
$dNetworkHashrate = $dNetworkHashrate['networkmhps'] * 1000 * 1000;
} else if (array_key_exists('networkghps', $dNetworkHashrate)) {
$dNetworkHashrate = $dNetworkHashrate['networkghps'] * 1000 * 1000 * 1000;
} else if (array_key_exists('hashespersec', $dNetworkHashrate)) {
$dNetworkHashrate = $dNetworkHashrate['hashespersec'];
} else if (array_key_exists('netmhashps', $dNetworkHashrate)) {
$dNetworkHashrate = $dNetworkHashrate['netmhashps'] * 1000 * 1000;
} else {


transaction relay policy zh translation

A Chinese translation for a transcript about 'transaction relay policy' by Gloria Zhao in Adapting Bitcoin 2021

Thanks for your review. I will do my best.


Edit and Save MP Monitoring Loads Data (13.0)

AC
Given a facility is selected
When a MP exists for the facility
Then MP can be edited
Given at least one change is made to MP Loads data
When the user saves the plan
Then updates are stored

dupe


SFG recipe

[x] URL directs you to what is SFG ibm url
[X] adding all warnings and notes to push and sync argo
[x] updating the section after deployment before validation with a warning in case of you decided to scale the pods or upgrade the version you should do the following steps
[X] Reason why we are disabling the datasetup & dbcreateschema

_ WE NEED TO ADD THE PVC YAMLS & FIX THE CHART VERSION TO 2.0.4 _

@hollisc  please take a look.


feat: setup auto-upgrade helm chart

Description of the changes
This This PR allows the automation of helm chart upgrades. It utilizes a workflow that has been centralized in the root module of the DevOps stack.
Breaking change

[x] No
[ ] Yes (in the Helm chart(s)): indicate the chart, version & release note link
[ ] Yes (in the module itself): give an explanation of the breaking change

This should not have been a feat and there was no need to create a release.


Remove healthcheck

The healthcheck is failing in preprod because we haven't got the right credentials.
Removing this for now so we can get connection info between us and eq for now until the issue is sorted

Closing as the correct thing to do is to add configuration for monitoring user credentials for the eq rabbit


No trailers in 1.011

Hi
I noticed there are no trailer/preview windows anymore in the 11. version of streama.
Is it a setting to be turned on ?
Thanks

Hm, it works for me. Can you check the network tab in the console and see if something gets suppressed that looks like youtube? also,  is it for all movies or only this particular one?

It's on all videos also the ones i saw trailers before.
I don't block anything on my nas network wise. What network tab do you mean ?

Chrome developer tools (f12) and then among other tabs there's one called network. Keep it open and reload the page and see if you can see anything relating to YouTube (you can also search through all the requests). Also check the console in general for Javascript errors

Here is the info. I don't see any requests :-(
Any other info you need ?

Hm, I cannot reproduce this issue for the life of me :( any way you could give me temporary admin access to this?

Hi dularion,
Unfortunately it runs only locally and at the moment i have no time to fiddle around to make it accessible from the net. Sorry.
I will come back to it, when i have more time.
Can i help in any other way ?
Thanks for trying!

Unfortunately I still cannot reproduce is. Is anyone else experiencing this?
I will close this issue until either you or someone else can help me track down this behaviour


x/exp/slices: runtime complexity of Delete

What version of Go are you using (go version)?

$ go version
go version go1.19 darwin/amd64

Does this issue reproduce with the latest release?
Yes
What operating system and processor architecture are you using (go env)?
go env Output
$ go env
GO111MODULE=""
GOARCH="amd64"
GOBIN=""
GOCACHE="/Users/deleplace/Library/Caches/go-build"
GOENV="/Users/deleplace/Library/Application Support/go/env"
GOEXE=""
GOEXPERIMENT=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOINSECURE=""
GOMODCACHE="/Users/deleplace/go/pkg/mod"
GONOPROXY=""
GONOSUMDB=""
GOOS="darwin"
GOPATH="/Users/deleplace/go"
GOPRIVATE=""
GOPROXY="https://proxy.golang.org,direct"
GOROOT="/usr/local/go"
GOSUMDB="sum.golang.org"
GOTMPDIR=""
GOTOOLDIR="/usr/local/go/pkg/tool/darwin_amd64"
GOVCS=""
GOVERSION="go1.19"
GCCGO="gccgo"
GOAMD64="v1"
AR="ar"
CC="clang"
CXX="clang++"
CGO_ENABLED="1"
GOMOD="/Users/deleplace/Documents/2022/08/26/slices-Delete-big-O/go.mod"
GOWORK=""
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -arch x86_64 -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=/var/folders/p4/g7fnpss96g5708_mmv3cxzgh0000gn/T/go-build1650505424=/tmp/go-build -gno-record-gcc-switches -fno-common"

What did you do?

I read the documentation comment of Delete
What did you expect to see?
"Delete is O(len(s)-j)"
What did you see instead?

Delete is O(len(s)-(j-i))

It seems to me this is a small error that can be fixed in a small CL.
A slice passed to Delete has 3 areas:
0                         i                j             len(s)
[      ...A...            |   ...B...      |   ...C...      ]

The region A has size i. It is left untouched by Delete. It does not incur a cost.
The region B has size (j-i). Surprisingly, its size does not influence the runtime cost. We may ignore B to compute the cost.
The region C has size (len(s)-j). The cost of Delete is proportional to C, which is the part that needs to be shifted to the left.
This can be derived from the current implementation of Delete, and is verified by this benchmark.

The updated cost O(len(s)-j) holds for the current Delete implementation, which does some shifting but no zeroing.
If we ever decide to zero the right tail (#54650) then the cost of Delete would become O(len(s)-i).


SqlClientFactory.Instance is null when using Microsoft.Data.SqlClient in Jupyter C# Kernel

Describe the bug
I attempted to load data from a SQL Server DB using the DatabaseLoader from a Jupyter Notebook.
I was first using System.Data.SqlClient as the ProviderFactory, but I got multiple re-direct issues in Jupyter. I moved to Microsoft.Data.SqlClient, which is supposed to work better with .NET Core and continued passed that issue. However, I instead run in to an issue where it says the provider factory is null.
Did this error occur while using dotnet try or online?

[X] dotnet-try
[ ] online

What kind of error was it?

[ ] User Interface (UI):  For example the output never displayed
[ ] Service Error: For example "The service is temporarily unavailable. We are working on it"
[X] Other:

Screenshots

Please complete the following:

OS

[X] Windows 10
[ ] macOS
[ ] Linux (Please specify distro)
[ ] iOS
[ ] Android

Browser

[X] Chrome
[ ] Edge
[ ] Safari

@aslotte not sure if this will help you, because you didn't post what package versions you might be using, and I was getting slightly different errors, But, I was able to get my scenario working by using:
#r "nuget:Microsoft.ML, 1.4.0"
#r "nuget:System.Data.SqlClient, 4.2.0"

using Microsoft.ML;
using Microsoft.ML.Data;
using System.Data.SqlClient;

While doing something similar, I had a potentially related issue.  When I try to instantiate a SqlConnection in a Jupyter notebook from code that I've imported, I get a System.PlatformNotSupportedException.
I'm running a C# Jupyter notebook setup using dotnet-try on a Windows 10 machine and accessing it from Chrome.
I import a dll on my machine using #r "path/to/library.dll" that exposes a method that uses a System.Data.SqlClient to get some data from a DB, do some parsing, and return an IEnumerable of the results.  When I call this function from the Jupyter notebook, a System.PlatformNotSupportedException is thrown when it reaches the new SqlConnection(connectionString) call.  When I run the code from my machine it performs as expected.
I've tried changing the imported version of the SqlClient library around as @jaymclain suggested, but haven't had any luck so far.  At first I thought the SqlClient was simply not yet supported by dotnet-try, but as jaymaclain got it working above, I'm wondering if the issue has to do with the indirect reference to the assembly.

@jaymclain - I was using Sql.Data.SqlClient v4.6.0. When I updated to use ML.NET v1.4.0 I got other issues, that it couldn't find Sql.Data.SqlClient v4.5.0, so I think I'm having redirect issues in Jupyter Notebook.
When I changed to using Sql.Data.SqlClient v4.2.0, it works as you mentioned. Do you know if ML.NET uses v4.2.0 and that's why v4.6.0 doesn't work?


Add marker to timeline when we can't find valid track

Fixes #40
Certain AAF files generated by Avid Media Composer with "Use Selected Tracks" may contain markers with invalid PhysicalTrackNumber properties.
The current behavior is to raise an exception when this occurs, but it seems preferable to handle this situation gracefully.
Avid currently handles these AAFs by dropping the marker entirely.
DaVinci Resolve handles these AAFs by adding the marker to the timeline, rather than a clip.
I personally prefer the Resolve approach, since we don't delete the data entirely. It means we always have somewhere where the marker data will end up.
I have update the AAF parser to do this approach - instead of raising an exception when OTIO can't find a matching track, we apply the marker to the timeline itself (or rather, the tracks property on the timeline. This is how OTIO files generated by Resolve represent timeline markers.)
Here is a screenshot of otioview running on this AAF, where the marker is applied to the timeline itself rather than the clip:

Tests
I've added a test for this case in contrib/opentimelineio_contrib/adapters/tests/test_aaf_adapter.py called test_aaf_marker_with_bad_track()
This test currently only ensures that we don't raise an exception when parsing a file like this.

Fixes AcademySoftwareFoundation/OpenTimelineIO/issues/1696.


WIP: don't let codecov fail github checks ever

[ ] https://github.com/keybase/client/pull/11836


feat(codegen): add sourcemap

@underfin I'll clean up the APIs and infrastructure. You may continue working on this, if there are outstanding problems to fix.


Pyfx UI redesign - New Frame

Bump dependency to the latest version
Always include a information bar in Pyfx
Change information bar text while switching focus
Exit Pyfx only when the focus is at JSON browser to avoid potential key conflict

Codecov Report
Base: 87.71% // Head: 86.50% // Decreases project coverage by -1.20% :warning:

Coverage data is based on head (7977b9c) compared to base (272c50d).
Patch coverage: 69.82% of modified lines in pull request are covered.

Additional details and impacted files
@@            Coverage Diff             @@
##             main      #99      +/-   ##
==========================================
- Coverage   87.71%   86.50%   -1.21%
==========================================
  Files          81       79       -2
  Lines        2850     2928      +78
  Branches      366      297      -69
==========================================
+ Hits         2500     2533      +33
- Misses        270      304      +34
- Partials       80       91      +11

Flag
Coverage Δ

test-macOS-latest-3.10
?

test-macOS-latest-3.8
?

test-ubuntu-latest-3.10
86.44% <69.82%> (-1.21%)
:arrow_down:

test-ubuntu-latest-3.8
86.43% <69.82%> (-1.21%)
:arrow_down:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

src/pyfx/view/components/__init__.py
100.00% <ø> (ø)

...omponents/autocomplete_popup/autocomplete_popup.py
96.07% <ø> (-2.04%)
:arrow_down:

src/pyfx/view/json_lib/__init__.py
100.00% <ø> (ø)

src/pyfx/view/keymapper/keymapper.py
89.36% <ø> (-0.84%)
:arrow_down:

src/pyfx/view/common/frame.py
60.16% <60.16%> (ø)

...autocomplete_popup/autocomplete_popup_keymapper.py
95.83% <75.00%> (-4.17%)
:arrow_down:

.../pyfx/view/components/help/help_popup_keymapper.py
95.65% <75.00%> (-4.35%)
:arrow_down:

src/pyfx/app.py
96.66% <100.00%> (-0.18%)
:arrow_down:

src/pyfx/view/common/__init__.py
100.00% <100.00%> (ø)

src/pyfx/view/components/help/help_popup.py
98.14% <100.00%> (ø)

... and 8 more

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


Error when trying to login with ldap user after switching to a new ldap server (failed to start tls)

Describe the Bug
We are currently using bookstack on our domain with ldap mode and everything is working fine. We are planning to switch the ldap server however and move to a new domain and move all users, roles, groups as they are to the new domain aswell.
However we wanted to test the scenario first.
Because we need the productive bookstack all the time I couldnt test it there.
So I cloned the productive bookstack VM which is still bound to the old Domain Controller and changed the ldap server in the .env file together with all the relevant settings (user dn, cn, binding user etc,)
Note that on the new DC there is TLS configured so the line for LDAP_Server is as follows:
LDAP_SERVER=ldaps://[FQDN].com:636
I have asked in the discord before, if it works to just duplicate an existing user and changing the "external_auth_id" field in the database for the user to be able to login to the new domain with all his permissions and roles etc.
Now, when trying to login, you get the "unknown error" window and the following entry gets written in the laravel.log file:
[2023-06-12 11:44:08] production.ERROR: ldap_start_tls(): Unable to start TLS: Can't contact LDAP server {"exception":"[object] (ErrorException(code: 0): ldap_start_tls(): Unable to start TLS: Can't contact LDAP server at /var/www/bookstack/app/Auth/Access/Ldap.php:38)
[stacktrace]
If you need any further information please let me know and I will gladly provide it.
I hope that you can help me out with this as we are currently unable to use the appliance in our new domain if we do not want to configure everything from the start.
Kind regards,
tumbri
laravel.log
Steps to Reproduce

Setup bookstack VM with LDAP Connection to DC 1 (no TLS)
Duplicate the VM and change LDAP_Server parameter to DC 2 (with TLS)
Change external_auth_id values in the database to new user_id value from .env file
Try to login

This was what we did and should replicate the issue
Expected Behaviour
Expected behaviour is that after cloning the VM and changing the server parameter, bookstack detects the new Domain and automatically changes the external auth id values so that all the users can login again.
Screenshots or Additional Context
No response
Browser Details
Opera, Chrome, Firefox
Exact BookStack Version
v23.02.3
PHP Version
8.2.5
Hosting Environment
Ubuntu 20.04.5 LTS (GNU/Linux 5.4.0-149-generic x86_64)

Hi @tumbri1,
I'm going to recategorise this as a support request since it's not confirmed to be a bug in BookStack, but more likely a configuration issue.

Note that on the new DC there is TLS configured so the line for LDAP_Server is as follows:
LDAP_SERVER=ldaps://[FQDN].com:636

Note that LDAPS and LDAP over TLS are two different things, with LDAP over TLS being more modern I believe.
I'd guess you want LDAP over TLS. In that case, it's common to use the standard LDAP port and protocol, so I'd expect settings along the following:
LDAP_SERVER=[FQDN].com
LDAP_START_TLS=true

Since there's been no follow-up I'm going to close this. If the issue remains and is something you still require to be fixed respond to my previous comment and this can then be re-opened.


Adventurer's Pickaxe's Veinminer Function Bug

my adventurer's pickaxe got veinminer ability. i broke a 2x2 iron ore; and i got only 2 iron ores! and also in diamond ores. veinminer mod doesn't give me the correct ore counts :((((
using minecraft 1.11.2 forge <IP_ADDRESS>6 and latest mod version

So the bug happens when using a vein mining pickaxe while the veinminer mod is installed. Do I understand that correctly?

No you misunderstand. Veinminer option is already in your mod. Just take a diamond adventurers pickaxe, mine with it, and it will get veinminer option soon. And the problem that i said, will happen. Because i didn't installed a mod about vein mining.

And i want to give an advice. Can you add the hexxit gear to your mod? Only hexxit flower, hexical diamond and 3 different hexxit armor sets :p it would be awesome. Thanks.

I'm awfully sorry but I can't seem to reproduce any voiding of ores. It may have been an issue with desyncing if you are playing on a server. If that was the case it may be fixed in the next version.
Also, no, I will not add Hexical Gear to my mod. The reasons being 1. I don't own the mod and will not just copy/steal other mods, 2. the mod doesn't aim for such things, the mods purpose is to assist vanilla Minecraft and new tiers of tools or armor are not a part of that, hence the titanium ore which was placed in between iron and diamond was removed a while ago.


[FA OPTIMIZATION] Keep results of FA dot operations in registers

This commit optimizes chain dot operation by keeping results of the first dot operation in registers.
https://github.com/ROCmSoftwarePlatform/frameworks-internal/issues/4788

@zhanglx13 Thanks for the detailed review! I see what confuses you about this PR. Strictly speaking, this PR does not optimize FA. This PR actually optimizes simple chain dot. In case of 'simple' chain dot we want to swap the operands of first dot, but we don't actually need transposed layout because the second dot will create a result in regular layout that we can just store, and don't need to transpose anything. For FA, we will need to swap the operands of the second dot as well (because of the correction done afterwards) which will force us to then transpose the result before storing it, and thus we need the notion of the transposed mfma layout.
My fault is that I actually added transposed layout in this PR, and didn't use it. That's why I added a comment about that to clear it up, and mentioned that I will separate it, and remove it from this PR.
Your second concern is about swapping the operands too early (on ttgir level). I see your point, it can be done while lowering ttgir to llvm ir the way you described it. However, the way this PR handles it is by using view op, which is basically reinterpretation cast, and reinterprets operand 0 as operand 1 and vice versa, but it also reinterprets mfma type as {warpsPerCTA[1], warpsPerCTA[0]} (basicaly 'transposed' warpsPerCTA). This way, compiler will generate correct code for transpose trick (it will correctly swap operands for every mfma instruction and correctly store result).
Again, FA will be handled a bit different, and we will need the transposed mfma layout.

@oplavsic I noticed that you pushed the swap trick to lowerDotOpToLLVM. Is there a persuading reason to do so or were you just testing different approaches?

@oplavsic I noticed that you pushed the swap trick to lowerDotOpToLLVM. Is there a persuading reason to do so or were you just testing different approaches?

I started by just testing different approaches. However it turns out that swapping in lowerDotOpToLLVM requires much less code and avoids dealing with view ops (reinterpretation casts) during convert_layout optimizations. I'm fine with both approaches, but once I've written the code for both, swapping in lowerDotOpToLLVM seemed cleaner. Let me know what you think.

@oplavsic I forgot to ask is this PR ready for review?

@oplavsic I forgot to ask is this PR ready for review?

Yes, it is ready for review.

One more thing. Can you get some performance numbers (time and tflops) for both the old and new fwd kernels in 06-fused-attention.py in this PR as a record?

I think this PR is ready to go. But can you document the limitations/TODO of this PR? like

Only f16 is supported and related parameters are hard coded
warpsPerCTA[1] must be 1
combine decomposeMfma and decomposeMma
etc

So that when people ask about FA we can tell what is supported and what is not.

@zhanglx13 I updated PR description. I didn't mentioned merging of decomposeMfma and decomposeMma, since this is a topic related to usage of USE_ROCM ifdefs and consequent code duplication in general which is not specific to this PR. We should probably discuss this offline and possibly create some tasks for refactoring.


docs: Warning about mistakenly creating public snapshots

maybe also a note along the lines of "You can confirm the snapshot will be private by seeing that the create snapshot dialog tells you it will be a team-private snapshot"?

@landism : This won't be available yet until https://github.com/tilt-dev/tilt/pull/3518 is merged and we have a new release right? So I'll be sure to add that here when that happens. But I'll definitely mention it when I send this to our customer separately.


Video play on custom embedder

Hello folks!
As I've already mentioned on other issues, we're porting flutter to run on custom hardware that is not iOS or Android and also to have a proper embedder for RaspberryPI/Asus Tinkerboard S.
So far we've successfully ported basic engine to the target devices and now we're looking to see how to use the video_player widget widget on our custom port/embedder.
Can someone point me to the directions on how to implement video support?
Thank you!

https://github.com/flutter/engine/pull/7087 and the example linked from it (which uses that API to implement video_player on macOS) would likely be useful references.

Thanks @stuartmorgan!
I've got a lot of good info from @slightfoot and Luigi Rosso (sorry didn't found the alias) from the Flutter Study Group on Slack and I'm working on it now.
Will update the issue once I have a final solution.
Thanks!

Since there's no specific issue here (other than the fact that the embedder API could definitely use more documentation, which is already tracked in another issue), I'm going to close this.


Remove infographics per news_flash code.

We only use infographics per location now.

Closed by https://github.com/data-for-change/anyway/pull/2580


Detecting Greengrass Core Disconnection at IoT Thing side

Describe the bug
My overall system consists of a Greengrass Core (Raspberry Pi) and multiple other devices (ESP-WROOM-32) which runs Amazon FreeRTOS and sends Sensor Readings every 10s. Also I want to cover the case when sometimes by mistake power supply of Greengrass Core is cut then Thing Code must detect that and try to reconnect to GGC. But Thing code is not able to detect this case.
System information

Hardware : ESP-WROOM-32
Operating System [Linux]
Version of FreeRTOS : 202011.00-4-ga83a71b33
Project [Custom Application]

Expected behavior
According to AWS IoT Greengrass documentation, all local communication uses QoS0 (no acknowledgement is provided) as shown below in a screenshot.

I have configured keep-alive timeout as 30s.
According to my understanding, I'm sending sensor readings every 10s which are QoS0 type messages. So, the last message time of MQTT Connection is getting reset after every 10s. In this case, Thing Code is not able to detect the keep-alive timeout. But after around 5 minutes, code detects NETWORK ERROR and knows that the QoS0 messages are actually not getting published. The screenshot of the same is attached below.

I tested the other alternative by an idle code which just waits for keep-alive timeout. In this case, when nothing is getting published, code is able to detect keep-alive timeout event exactly after 30s of GGC disconnection.
The expected behavior should be to detect keep-alive timeout event after 30s while sending sensor readings every 10s.
Thank you!

Hello @Prahar08modi
Thanks for reaching out and apologies for a bit delayed response.
As I understand based on your description, you sending sensor data every 10 seconds and you regularly see connection disconnect after 5 minutes.
You should not need to send a ping message since you are regularly sending PUBLISH messages.

In this case, when nothing is getting published, code is able to detect keep-alive timeout event exactly after 30s of GGC disconnection.

I'm assuming you are using process loop when connection is idle.  What do you mean by GGC disconnection?  If Ping is sent,  GGC should not disconnect. If Ping is not sent, since your keep-alive interval is 30 seconds, GGC should wait till 45 seconds before it disconnects.
Can you please confirm above ?

Hello @abhidixi11
Firstly I'm sorry for the late reply.

I'm assuming you are using process loop when connection is idle.
Yeah. The assumption is correct.

What do you mean by GGC disconnection?
I meant to say GGC disconnection (in this context) as when the power supply of GGC is cut/removed

Can you please confirm above ?
I think there is a confusion and let me clear it. GGC does not get disconnected by its own. I deliberately remove the power supply of GGC.

In this case, the application has to re-establish the connection
Yeah, I've implemented the logic of re-connection by the same flow you mentioned and it works perfectly well. But there is a problem of detecting MQTT disconnection in the case mentioned above.

It will only detect it when either send (eg. sending PUBLISH) of receive ( processLoop) fails.
Exactly that's what is expected. It is able to detect the processLoop failure immediately after keep alive timeout but it is not able to detect failure immediately due to NETWORK ERROR when PUBLISH is send. Instead it detects after around 5 minutes which is too much in my application.

Thanks for the help!

Is there any further update on this?

Hello @abhidixi11
I found a similar issue #2155. I think the fix provided there was for the older version of Amazon FreeRTOS as the version which I am using  (202011.00-4-ga83a71b33) uses coreMQTT Library's function MQTT_Publish for publishing a PUBLISH packet on network by using MQTT LTS PUBLISH API.

Hello @Prahar08modi
Apologies, for the late response, for some reason your response was missed.
The problem you are facing is at the transport layer. Since transport send does not fail, the publish is not failing , therefore, the connection failure is not detected. Send is not failing because the send queue is queuing the packet and it keeps retrying since the device did not receive close when you turned power off for GGC.
How frequently are you running process loop ? When you run process loop are you checking the status to make sure it has succeeded ?  I'm trying to determine if process loop will detect receive failure.

Hi @Prahar08modi,
What version MQTT library are you using? From the following line in your error log:

(MQTT connection 0x3ffdd370) Failed to send PUBLISH packet on the network.

It looks like it's coming from this line in the MQTT compatibility layer with the old API. I'd recommend using the latest coreMQTT API or the recently released coreMQTT Agent library if working with multiple threads.
Second, can you clarify the issue you are facing? Is the issue:

After power cycling the GGC, IotMqtt_Publish() returns success for 5 minutes despite not sending anything? Or
IotMqtt_Publish() returns NETWORK_ERROR for 5 minutes, and then the connection is disconnected only after the keep alive job fails?

If it's the former, this is an issue at the transport layer as @abhidixi11 described. For the latter, you can just close the network connection yourself as soon as the publish returns an error. Additionally, if using the old MQTT library, you might find this response helpful in explaining why the network connection isn't closed as soon as a receive failure is detected, and instead waits for the keep alive job to fail. This could be related to the issue you are facing.

Hello @abhidixi11 and @muneebahmed10,
Firstly, Thank you for the support.
I have a confusion regarding the MQTT v2.x.x Library and coreMQTT library. I can't understand the interlinking of these libraries.
IotMqtt_Publish uses MQTT_Publish API of CoreMQTT while for handling Keep Alive Timeout, it creates a Taskpool Job which calls _IotMqtt_ProcessKeepAlive from iot_mqtt_operation.c and not MQTT_ProcessLoop from coreMQTT library.

How frequently are you running process loop ? When you run process loop are you checking the status to make sure it has succeeded ? I'm trying to determine if process loop will detect receive failure.

Actually, for managing Keep Alive Timeout instead of MQTT_ProcessLoop, _IotMqtt_ProcessKeepAlive is called as mentioned above.

What version MQTT library are you using?

Old MQTT Shim for MQTT V2.x.x APIs is being used.

After power cycling the GGC, IotMqtt_Publish() returns success for 5 minutes despite not sending anything?

This is the case where I am not able to detect immediately whether the underlying network connection does not exist (i.e, the GGC's power is disconnected) and I'm still getting success messages from IoTMqtt_Publish API till 5 minutes. After 5 minutes, it detects the NETWORK_ERROR from IoTMqtt_Publish API and then connection is disconnected when keep alive timeout is detected.

I'd recommend using the latest coreMQTT API or the recently released coreMQTT Agent library if working with multiple threads.

Yeah I'm using multiple threads. Maybe I can give it a try...

Hello @Prahar08modi ,
Quick clarification :

I have a confusion regarding the MQTT v2.x.x Library and coreMQTT library. I can't understand the interlinking of these libraries.

I looks like you are using shim layer which was a compatibility layer between old API and new API. If you are developing a new application, I would recommend directly using coreMQTT library.  We are also working on adding support for coreMQTT-Agent library in this repository, but you can check out the sample usage of coreMQTT-Agent library, which supports connection sharing in demos repository which shows how various AWS services can be used.

Hello @abhidixi11 ,

Any particular reason you are using shim layer ?

Actually I had a previous experience using iot_mqtt_agent and had the above confusion regarding the new coreMQTT library. So, to reduce development time, I decided to move on with MQTT Shim for now and implement coreMQTT afterwards.

If you are developing a new application, I would recommend directly using coreMQTT library.

Okay. So, I'll be trying the new coreMQTT Agent library after understanding the basics of how packets are transmitted and received, keep alive is handled and all. We can close this issue. If I have any doubt regarding coreMQTT Agent Library, I'll create another thread for the same.
Thanks for guiding and helping me out...

Hi @Prahar08modi,
Closing this issue as suggested. Please don't hesitate to open another if you run into any problems with coreMQTT, or require further clarification on this topic. Thank you.


Feature request: spelling correction

https://github.com/jule-lang/jule/blob/main/localization/turkish.json#L121
https://github.com/jule-lang/jule/blob/main/localization/english.json#L22
https://github.com/jule-lang/jule/blob/main/localization/english.json#L23
https://github.com/jule-lang/jule/blob/main/localization/english.json#L24
https://github.com/jule-lang/jule/blob/main/localization/english.json#L25
https://github.com/jule-lang/jule/blob/main/localization/english.json#L87
https://github.com/jule-lang/jule/blob/main/localization/english.json#L50
https://github.com/jule-lang/jule/blob/main/localization/english.json#L59
https://github.com/jule-lang/jule/blob/main/localization/english.json#L67
https://github.com/jule-lang/jule/blob/main/localization/english.json#L68
it may be better to put the word underline instead of compound
current code
"notimpl_trait_def": ...

desired
"not_impl_trait_def": ...

It was actually a choice, but it seems more correct to do it the way you say.
Localization packs will be edited.
Thanks for your contribution.

Localization identifiers edited as snake_case.
See: 5565c8e


Delegate Mission Request: Implement a Prototype of an OP Stack Chain with Mempool Encryption

Delegate Mission Request: Implement a Prototype of an OP Stack Chain with Mempool Encryption
Delegate Mission Request Summary:
Implement a functional prototype of an OP stack chain with mempool encryption to draw insights regarding censorship resistance and front-running protection for OP stack networks.
S5 Intent 15 1:
Intent 1. Progress Towards Technical Decentralization
Proposing Delegate: @404DAO
Proposal Tier 13 1: Fledging Tier
Baseline grant amount: 100 K OP (Up to 50 K OP per applicant)
Should this Foundation Mission be fulfilled by one or multiple applicants: Multiple
Completion date: 6 months
Apply Here
Specification
How will this Delegate Mission Request help accomplish the above Intent?
MEV front-running and censorship are vectors of centralization. R&D of solutions that can protect users from front-running and censorship are key to optimize for security, resilience and decentralization. Moreover, advancing towards providing optionality to deploy an encrypted Mempool chain with the OP stack is also aligned with growing the Superchain (Intent 2) and improving the consumer experience (Intent 3), nobody likes to be front-ran or in a sandwich attack.
Encryption is powerful in this regard, because the inability to observe transactional contents during validation (e.g. by the sequencer or other transaction supply chain intermediaries) precludes the possibility of discriminatory processing and thus makes it a lot harder (or even impossible) to front-run or censor.
What is required to execute this Delegate Mission Request?

Research and evaluate different mempool encryption technologies.
Assess how these technologies can integrate with the OP stack.
Define generalized mempool encryption interfaces.
Prototype and deploy one or more mempool encryption technologies.
Documentation of the implementation process and codebase.

How should the Token House measure progress towards this Mission?

Quality of mempool encryption research.
Assess functionality and effectiveness of the deployed prototype.
Assess quality of the documentation and codebase.

How should badgeholders measure impact upon completion of this Mission?

See total amount of transactions and contracts deployed in the prototype.
Measure amount of censored transactions using various methodology such as https://censorship.pics/ 1 .
Total number of OPStack based chains implementing an encrypted mempool.

This project was selected for this mission request
https://app.charmverse.io/op-grants/generalized-mempool-encryption-interface-for-op-stack-chains-and-deployment-of-a-mempool-encrypted-op-stack-testnet-using-threshold-encryption-8763406955381605


ng e2e does not respect host setting in angular.json

🐞 Bug report
Command (mark with an x)
- [ x ] serve
- [ x ] e2e

Is this a regression?
I don't know.
Description
When executing ng e2e, the host parameter in the serve block is ignored.
🔬 Minimal Reproduction
$ ng init yourapp
$ nano angular.json  # add "host": "localhost.local" to serve configuration
$ sudo sh -c 'echo "<IP_ADDRESS>   localhost.local" >> /etc/hosts'
$ ng serve
** Angular Live Development Server is listening on localhost.local:4200, ...

$ ng e2e
** Angular Live Development Server is listening on localhost:4200, ...

angular.json serve block should be:
        "serve": {
          "builder": "@angular-devkit/build-angular:dev-server",
          "options": {
            "browserTarget": "yourapp:build",
            "host": "localhost.local"
          },
          "configurations": {
            "production": {
              "browserTarget": "yourapp:build:production"
            }
          }
        },

Note that passing baseUrl throws an exception.
ng e2e --baseUrl="http://localhost.local:4200"
The 'baseUrl' option cannot be used with 'devServerTarget'.
When present, 'devServerTarget' will be used to automatically setup 'baseUrl' for Protractor.

🌍 Your Environment

     _                      _                 ____ _     ___
    / \   _ __   __ _ _   _| | __ _ _ __     / ___| |   |_ _|
   / △ \ | '_ \ / _` | | | | |/ _` | '__|   | |   | |    | |
  / ___ \| | | | (_| | |_| | | (_| | |      | |___| |___ | |
 /_/   \_\_| |_|\__, |\__,_|_|\__,_|_|       \____|_____|___|
                |___/

Angular CLI: 7.3.8
Node: 8.11.1
OS: darwin x64
Angular: 7.2.12
... animations, common, compiler, compiler-cli, core, forms
... language-service, platform-browser, platform-browser-dynamic
... router

Package                           Version
-----------------------------------------------------------
@angular-devkit/architect         0.13.8
@angular-devkit/build-angular     0.13.8
@angular-devkit/build-optimizer   0.13.8
@angular-devkit/build-webpack     0.13.8
@angular-devkit/core              7.3.8
@angular-devkit/schematics        7.3.8
@angular/cli                      7.3.8
@ngtools/webpack                  7.3.8
@schematics/angular               7.3.8
@schematics/update                0.13.8
rxjs                              6.3.3
typescript                        3.2.4
webpack                           4.29.0

Hi krotscheck, thanks for reporting this.
There seems to be a bug where the host is not being respected. However, the exception is indeed correct as baseUrl should not be used in conjunction with the devserver.

Well, I was pointing that out more as a "Here's a workaround I tried" bit.