Update: Posit.Positron version 2024.07.0 (2024.07.0-41)

Created by 🥟 Dumplings in workflow run #6530.

Log
Updated: 2024.07.0-39 → 2024.07.0-41
Submitting WinGet manifests
Found existing pull requests:
Update: Posit.Positron version 2024.07.0 (2024.07.0-39) - https://github.com/microsoft/winget-pkgs/pull/162605
Remove version: Posit.Positron version 2024.07.0 - https://github.com/microsoft/winget-pkgs/pull/162667
Update: Posit.Positron version 2024.07.0 (2024.07.0-27) - https://github.com/microsoft/winget-pkgs/pull/162245
The existing pull requests are ignored as the version is updated while the real version isn't
Creating manifests
Uploading manifests and making commits
Creating a pull request

Microsoft Reviewers: Open in CodeFlow

Hi @SpecterShell,

This PR modifies the same path as https://github.com/microsoft/winget-pkgs/pull/162605

Which manifest should be added at that path, the one ending in 39, or this one ending in 41?

Hi @SpecterShell,
* This PR modifies the same path as [Update: Posit.Positron version 2024.07.0 (2024.07.0-39) #162605](https://github.com/microsoft/winget-pkgs/pull/162605)

Which manifest should be added at that path, the one ending in 39, or this one ending in 41?

Keep this one please

https://github.com/microsoft/winget-pkgs/issues/142854


feat: add sample test for mobile

@olivier-martin-sf this change is ready to review, pls have a look. Thanks.

@mleonardsfdc if you have some time, could you please do a review of the README in this PR?

@mleonardsfdc has accepted all your comments.  Please have a check. Thanks.


exporter/stackdriver: missing distribution value for CountAggregation

Consider the following view:
        view := stats.NewView(
		"my.org/views/video_size_cum",
		"processed video size over time",
		nil,
		videoSize,
		stats.CountAggregation{},
		stats.Cumulative{},
	)

It fails with:
2017/11/21 14:52:52 Failed to export to Stackdriver Monitoring: rpc error: code = InvalidArgument desc = Request was missing field timeSeries[0].points[0].distributionValue.

This case happens if the measure descriptor is already created to represent a distribution value.
@songy23, what's our strategy here? We will just fail with this error?

In Java we keep track of all the views that are registered previously. If the exporter gets a view that has a registered name but with different attributes (e.g different aggregations), we will just skip and log it: https://github.com/census-instrumentation/opencensus-java/blob/master/exporters/stats/stackdriver/src/main/java/io/opencensus/exporter/stats/stackdriver/StackdriverExporterWorkerThread.java#L85.


Add a remark about canceling send done with the scheduler

Description
It can be misleading for the user that when an actor using the scheduler is stopped or restarted the send tasks are not automatically cancelled. This can lead to resource leaks or duplicate sends when the actor is restarted.
Purpose
This pull request is a:

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

Checklist

[ ] I have added tests that prove my fix is effective or that my feature works
[x] I have added necessary documentation (if appropriate)

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.Markku Linnoskivi seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.


Make Google Test usage configurable in CMake files

Google Test has been an implicit dependency to run the C++ tests.  This PR makes it explicit and configurable in the CMake rules, which in turn allows us to give better error messages if it isn't installed (rather than secretly not adding cpptest as a build target).
This PR additionally adds docs at the end of the current installation docs for enabling Google Test.  Perhaps eventually separate doc pages for users and developers will be required, but for now, the difference in dependencies is not great enough to warrant a full split yet.
CC @tqchen @vinx13 @jroesch

I was hoping we can do something different. When user has gtest, make cpptest as normal. When the user do not have gtest, nothing will happen. but when user type make cpptest, it will echo the message asking the user to install gtest.

@tqchen Let me know if the most recent version is in line with what you requested.


HDF5 files are just 1kb，I can not use those weights to optimize my own pictures

OSError: Unable to open file (unable to open file: name = 'D:\Download\image-super-resolution-master\image-super-resolution-master\weights\rdn-C6-D20-G64-G064-x2_enhanced-e219.hdf5', errno = 2, error message = 'No such file or directory', flags = 0, o_flags = 0)
Thanks in advance

Hi,
did you only clone the repository with git clone?
If so, this is normal. As mentioned in the documentation:

[the weights] are stored on git lfs. If you want to download the weights you need to run git lfs pull after cloning the repository.
Or have a look at the tutorial, where they are downloaded with a wget.

THX， I have successfully solved the problem. Thank you for everything you have done.

嗨，
你只用克隆存储库git clone吗？
如果是这样，这是正常的。如文档中所述：

[权重]存储在git lfs上。如果要下载git lfs pull克隆存储库后需要运行的权重。

或者看一下教程，用wget下载它们。

THX， I have successfully solved the problem. Thank you for everything you have done.


Update beforeEach and afterEach documentation

Closing since I've merged this information with #143. Thanks @Kylaaa!


How to set up the feed supply on the Nutri Vision Mini skyrc.feeder.vdfeed?

Nutri Vision Mini was added to Xiaomi Mi Auto without any problems. The feed supply works, but the dose is very small. How can I set it up so that a large dose of feed is fed when turned on?
Home Assistant 2022.12.8
Supervisor 2022.11.2
Operating System 9.4
Frontend 20221213.1 - latest
Integration: Xiaomi Miot Auto v0.7.4 - 2022-12-22
NAME:     Nutri Vision Mini
MODEL:    skyrc.feeder.vdfeed
https://home.miot-spec.com/s/skyrc.feeder.vdfeed

Try configuration:
# configuration.yaml
xiaomi_miot:
  device_customizes:
    skyrc.feeder.vdfeed:
      feeding_measure: 5

Thanks, it works. Tell me, do you know if it is possible to take out the camera? If so, how do I do it?

do you know if it is possible to take out the camera? If so, how do I do it?

Sorry i don't know.

Thanks. One more time. Then I will close the topic, and if someone sees this topic and knows how to do it, he can always add his answer if desired.


Sybase support

Original author<EMAIL_ADDRESS>(October 24, 2012 08:08:44)
Hi, your frameworks looks very good but it'd be fine to support Sybase. It's very similar to SQL Server.
I'll be looking forward for this enhancement if accepted.
Thanks in advance.
Original issue: http://code.google.com/p/flyway/issues/detail?id=350

Any news about the progress of Sybase support?

+1, would love Sybase support

+1
Same here, Sybase ASE would be awesome

Sybase support will be awesome

+1 SYBASE

+1 any updates?

Thanks @super132 for the PR! Merged.

+1

+1


Added CloudFront gotchas about 2048 bit ssl cert

I guess it's reasonable to have this in both CloudFront and in load balancing (but only once in the latter). Can we update this one once #281 is done to match the language/style?

Thanks again!

Updated phrasing according to #281

👍 Thanks for the addition!


Complete automation merge

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


fix: error handling when delete non-existent target

resolves #626

Codecov Report

Merging #627 (cbfdc47) into main (0f1dc30) will decrease coverage by 0.19%.
The diff coverage is 57.14%.

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
@@            Coverage Diff             @@
##             main     #627      +/-   ##
==========================================
- Coverage   75.09%   74.90%   -0.19%
==========================================
  Files          59       59
  Lines        5421     5428       +7
==========================================
- Hits         4071     4066       -5
- Misses        995     1004       +9
- Partials      355      358       +3

Files
Coverage Δ

content/oci/storage.go
60.91% <57.14%> (-0.34%)
:arrow_down:

... and 1 file with indirect coverage changes

Sorry, accidentally clicked "close", thought it was "merge"...


Not able to persist Port mapping in default service created for workload.

What kind of request is this (question/bug/enhancement/feature request):
question/bug
Steps to reproduce (least amount of steps as possible):
Deploy a workload, a default service will created automatically for that workload in service discovery tab, now, change/add port mapping to that service. now when we try to re-deploy or update CNI, the ports in the service resets back to default port 42.
Result:
its not able to persist the ports configured before, so every time i have to manually update the service
Other details that may be helpful:
Environment information

Rancher version (rancher/rancher/rancher/server image tag or shown bottom left in the UI):
rancher/rancher:latest (2.3.2)
Installation option (single install/HA):
single install

Cluster information

Cluster type (Hosted/Infrastructure Provider/Custom/Imported):
Custom

Machine type (cloud/VM/metal) and specifications (CPU/memory):
VM, 6CPU,32GB

Kubernetes version (use kubectl version):
Client Version: version.Info{Major:"1", Minor:"15", GitVersion:"v1.15.5", GitCommit:"20c265fef0741dd71a66480e35bd69f18351daea", GitTreeState:"clean", BuildDate:"2019-10-15T19:16:51Z", GoVersion:"go1.12.10", Compiler:"gc", Platform:"linux/amd64"}

Docker version (use docker version):
Client: Docker Engine - Community
Version:           19.03.3
API version:       1.40
Go version:        go1.12.10
Git commit:        a872fc2f86
Built:             Tue Oct  8 00:58:10 2019
OS/Arch:           linux/amd64
Experimental:      false

Server: Docker Engine - Community
Engine:
Version:          19.03.3
API version:      1.40 (minimum version 1.12)
Go version:       go1.12.10
Git commit:       a872fc2f86
Built:            Tue Oct  8 00:56:46 2019
OS/Arch:          linux/amd64
Experimental:     false
containerd:
Version:          1.2.10
GitCommit:        b34a5c8af56e510852c35414db4c1f4fa6172339
runc:
Version:          1.0.0-rc8+dev
GitCommit:        3e425f80a8c931f88e6d94a8c831b9d5aa481657
docker-init:
Version:          0.18.0
GitCommit:        fec3683

Close in favor of https://github.com/rancher/rancher/issues/17198


Add steps to sign the Windows installer

Pull request type
With this PR, if a code-signing certificate is available, then the Windows installer will be signed just before the upload step.
Please check the type of change your PR introduces:

[ ] Bugfix
[ ] Feature
[ ] Code style update (formatting, renaming)
[ ] Refactoring (no functional changes, no api changes)
[X] Build related changes
[ ] Documentation content changes
[ ] Other (please describe):

What is the current behavior?
The Windows installer is not signed.
Issue Number: Win Setup: Cryptographically sign binaries #735
What is the new behavior?
A code-signing certificate is introduced via four GitHub SECRETs:

cert_body: ${{ secrets.CERT_BODY }}
cert_pswd: ${{ secrets.CERT_PSWD }}
cert_algo: ${{ secrets.CERT_ALGO }}
cert_hash: ${{ secrets.CERT_HASH }}

For further information please visit the code-sign-action repository.
This fork added two important features:

SHA256 (SHA2) support
debug option

If a code-signing certificate is not available, then the installer simply won't be signed.
Does this introduce a breaking change?

[ ] Yes
[X] No

Other information
Screenshots of a signed Windows installer is given below, a self-signed code-signing certificate valid for ten years is used.

We should now have the necessary secrets available. I am merging to a termporary branch, as I think they are not accessible from a PR for security reasons.


Check meta before adding new custom section

What
Closes https://github.com/stellar/stellar-cli/issues/1694
Why
[TODO: Why this change is being made. Include any context required to understand the why.]
Known limitations
[TODO or N/A]

Update: added a test to reproduce, have been trying to delete a wasm file in release/<contract>.wasm and release/deps/<contract>.wasm for metadata to still persists in between builds 🤔
Will dig deeper into that. Using rustc + cargo 1.82 on 2 different Linux distros (not sure if that matters)

Thank you for adding that test @Ifropc!

This fix appears to address the symptom, avoid adding new meta when the meta is already, rather than addressing the issue that when building on linux without changes the .wasm file doesn't seem to be rewritten. I think we need to further understand what's going on and why before we patch this at another level.
It's also occurred to me while rereading this code that the cli is writing a whole new section per entry, but it should be joining the new entries together and writing them in one new entry, otherwise the wasm is unnecessarily larger due to managing one section per meta.
As an optimisation I think this change would be worthwhile, but after addressing the second paragraph above because as part of addressing it, it'll need to be solved a different way.

BTW the current fix doesn't work because it only checks for meta in the wasm file with the same name. Ideally it shouldn't even be there in a first place, and I'm looking into why it's there, though it seems that it might be coming somewhere from cargo/rustc itself

This fix appears to address the symptom, avoid adding new meta when the meta is already, rather than addressing the issue that when building on linux without changes the .wasm file doesn't seem to be rewritten. I think we need to further understand what's going on and why before we patch this at another level.

Good call - that makes sense. I'll close this PR as we understand the root cause.

It's also occurred to me while rereading this code that the cli is writing a whole new section per entry, but it should be joining the new entries together and writing them in one new entry, otherwise the wasm is unnecessarily larger due to managing one section per meta.

Good point! Does it make sense to create a new issue for this?

Opened a new issue:

https://github.com/stellar/stellar-cli/issues/1721


Improve objdump-nasm lexer

This improves the objdump-nasm lexer in the following two ways :

output from objdump --no-show-raw-insn is now pretty-printed
comments starting with # are now also correctly interpreted

Take for example the following output from objdump :
$ cat foo.dump

foo.o:     file format elf64-x86-64

Disassembly of section .text:

0000000000000000 <foo>:
   0:	endbr64
   4:	push   rbp
   5:	mov    rbp,rsp
   8:	sub    rsp,0x10
   c:	mov    DWORD PTR [rbp-0x4],edi
   f:	lea    rdi,[rip+0x0]        # 16 <foo+0x16>
  16:	call   1b <foo+0x1b>
  1b:	mov    eax,0x0
  20:	leave
  21:	ret

Running
pygmentize -l objdump-nasm -f html -O full -o /tmp/test.html /tmp/foo.dump

with the original version of pygments results in the following unsatisfactory listing :

With these changes applied, the result is instead :

Merged, thanks!


CFFL

CFFL

Linter check found the following problems:
The following problems have been found:
ERROR: /tmp/abs_8edi_ebh4c/clone/recipe/meta.yaml:16: pip_install_args: pip install should be run with --no-deps.
ERROR: /tmp/abs_8edi_ebh4c/clone/recipe/meta.yaml:21: missing_wheel: For pypi packages, wheel should be present in the host section
ERROR: /tmp/abs_8edi_ebh4c/clone/recipe/meta.yaml:37: http_url: http://github.com/mitsuhiko/phpserialize is not https
ERROR: /tmp/abs_8edi_ebh4c/clone/recipe/meta.yaml:37: missing_dev_url: The recipe is missing a dev_url
ERROR: /tmp/abs_8edi_ebh4c/clone/recipe/meta.yaml:37: missing_documentation: The recipe is missing a doc_url or doc_source_url
ERROR: /tmp/abs_8edi_ebh4c/clone/recipe/meta.yaml:37: missing_license_family: The recipe is missing the about/license_family key.
WARNING: /tmp/abs_8edi_ebh4c/clone/recipe/meta.yaml:37: missing_description: The recipe is missing a description
Errors were found


Is there a plan to support GeoShape Query?

Please use the following questions as a guideline to help me answer
your issue/question without further inquiry. Thank you.
Which version of Elastic are you using?
[ ] elastic.v7 (for Elasticsearch 7.x)
Please describe the expected behavior
support GeoShape query
Please describe the actual behavior
Any steps to reproduce the behavior?

We tried a few times (see #939), but for now you can only use RawStringQuery and build it for yourself.


feat: create tabs component

:tada: This PR is included in version 1.4.0-beta.20 :tada:
The release is available on:

v1.4.0-beta.20
GitHub release

Your semantic-release bot :package::rocket:


Error running timer ‘company-echo-show’

Error running timer ‘company-echo-show’: (error "Company: backend company-tabnine error "Invalid function: (messages (alist-get 'promotional_message company-tabnine--result))" with args (meta Singleton)")
My configuration:
(use-package company
        :demand
        :ensure t
        :hook ((after-init . global-company-mode))
        :config
        ;; Trigger completion immediately.
        (setq company-idle-delay 0)

        ;; Number the candidates (use M-1, M-2 etc to select completions).
        (setq company-show-numbers t)

        ;; Use the tab-and-go frontend.
        ;; Allows TAB to select and complete at the same time.
        (company-tng-configure-default)
        (setq company-frontends
              '(company-tng-frontend
                company-pseudo-tooltip-frontend
                company-echo-metadata-frontend)))

(use-package company-tabnine
        :ensure t
        :config
        (add-to-list 'company-backends #'company-tabnine))

Screenshot:

What's your emacs version and system configuration?

I'm running bleeding edge:
GNU Emacs 27.0.50 (build 2, x86_64-apple-darwin18.2.0, NS appkit-1671.10 Version 10.14.1 (Build 18B75)) of 2018-11-09
What parts of my configuration are you interested in? I have a huge init file put it doesn't cause any warnings and all settings are compartmentalized with use-package

It appears the problematic code is this:
when-let ((messages (alist-get 'promotional_message company-tabnine--result)))
  (s-join " " messages)

And apparently in your version of emacs ((messages ...)) is being treated as a function call, with (messages ...) being the function. As of Emacs 26.1, when-let should work the same way as let. This is quite strange.

I wasn't able to reproduce this issue on my other machine running GNU Emacs 27.0.50 (build 1, x86_64-apple-darwin18.0.0, NS appkit-1671.00 Version 10.14 (Build 18A391)) of 2018-11-11 with the same configuration. If I can't reproduce it on my first machine I'll close this

I get error every time on my first machine, now with GNU Emacs 27.0.50 (build 3, x86_64-apple-darwin18.2.0, NS appkit-1671.10 Version 10.14.1 (Build 18B75)) of 2018-11-14 and latest version of all plugins, I'll see if I make a fix for it


AppTheme onChange props not work

How can i fix it ?
  <AppTheme
        scheme={"light"}
        onColorChange={() => {alert("as")}}
        onSchemeChange={() => {alert("asa")}}
    />

Hi ViVek,
i am use  4.2.0 version and i checked the source code and i saw th e doesn't completed the props the this props operation and after then i looked the your web page and i saw the information about for it props. in my version is not available for using
thank for your quik reply :)


Standardize the naming of dataprep sequences.

A dataprep sequence is a ordered list of dataprep tools that run to process each event. There is variation in how these are defined for various prototypes with the early PDSP (protoDUNE 1 single-phase) putting the definitions in prolog and more recent (icebergX, coldbox) using the data namespace.
I would like to standardize this to make it easier for users (including myself) to move between prototypes and to make it easier duneproc to perform fcl generation.

The proposed standard is sequence definitions go in the data namespace with this syntax:

data.<DET>_dataprep_seq.

where <DET> is specifies the prototype (pdsp, iceberg5, vdbcb, ...) and <SEQ> is a sequence name (calib, wirecell, ...).
This is the convention already followed for iceberg and the recent coldbox data.
MC-specific sequence append sim to the detector name, e.g. pdsp --> pdspsim.

The new fcl has been validated by using in example 11. Changes  are committed to develop.


fix: Applied minimum amount of changes to adapt ajv-merge-patch to ajv v7 and v8

This PR contains the minimum amount of changes I had to apply locally to make all the existing ajv-merge-patch tests to pass on both ajv v7 and ajv v8 (and it is related to #38):

Ajv >= v7 is exporting the Ajv class as an ESM default export
ajv's addKeyword type signature did change and it is now expecting the kayword to be a property of the keyword definition (and not a separate string parameter)
rename "id" to "$id" in one of the json schema fixture used in the tests (apparently "id" was already deprecated in draft-06, but Ajv v7 seems to make renaming "id" to "$id" mandatory, v6-to-v8-migration guide does also mention it as a mandatory change to migrate to more recent ajv versions, but I was getting the error also while running the tests with ajv v7)
error.dataPath has been renamed to error.instancePath in Ajv v8 (which seems also expected, because it is explicitly mentioned in v6-to-v8-migration guide notes)

I had to also change the following assertions which I'm not 100% sure if they are expected differences:

error.dataPath (named instancePath in v8) actual value changed from ".q" to "/q" (the original asserted value in test_validate was ".q", but on Ajv v7 and v8 the value we get is now "/q")
error.schemaPath actual value changed from "#/properties/q/type" to #/${keyword}/properties/q/type and "#/required into '#/${keyword}/required' (basically in Ajv >= v7 the keyword seems to be part of the resulting error schemaPath, in <v6 it wasn't)

@epoberezkin I'm not sure if this was what you had in mind for #38 (and how the unevaluatedProperties Ajv feature could be used as an alternative approach as you did mention in https://github.com/ajv-validator/ajv-merge-patch/issues/38#issuecomment-754023506), but I briefly tried to adapt ajv-merge-patch to ajv >= v7 and these changes did seems to be mostly expected (and the test do pass on nodejs versions a bit more recent than v4 and v6) and so I opened this PR in case it may be helpful for #38.
Would you mind to look into the changes in this PR and confirm if the changes to the new values got for the error dataPath and schemaPath described in the issue description are expected (or if there are more changes to look into)?
Thanks in advance for your help!

Looks ok, it should be released as a major version change.
Does Ajv v7 need to be supported, or could it be skipped to support only v8?
If so, versions need to be updated (and .default could be dropped).
Thank you!

Looks ok, it should be released as a major version change.

:+1: yeah seems more than reasonable (I haven't bumped the package version in this PR, I personally prefer to put the package version bumps in their own separate commits and I see that you are doing the same in this repo)

Does Ajv v7 need to be supported, or could it be skipped to support only v8?
If so, versions need to be updated (and .default could be dropped).

Personally I'm totally fine with only supporting Ajv v8 in the new version, and given that doing that does also reduce the size of this PR even further I did also already update this PR accordingly.

Thank you!

Thank you for your work on ajv! Let me know if there is any other change needed on this PR and I'll be more than happy to come back to this asap to update it accordingly.

Looking forward to this update

@epoberezkin is there any other change needed on this PR to make it ready for being merged and released? (last round of changes I pushed should cover your last round of comments from https://github.com/ajv-validator/ajv-merge-patch/pull/39#issuecomment-832239884)

@epoberezkin hey, do you think we could merge this PR and get a new release?

@epoberezkin sorry to keep bugging you about this... Would it be possible to take another look at this PR and get this merged?

thank you - it works!

it's released as 5.0.0.
Any further changes - please send issue or PR.


⚠ Cioos Pacific CKAN Sitemap has degraded performance

In 7f78d4c, Cioos Pacific CKAN Sitemap (https://catalogue.cioospacific.ca/sitemap/sitemap-1.xml) experienced degraded performance:

HTTP code: 200
Response time: 13199 ms

Resolved: Cioos Pacific CKAN Sitemap performance has improved in 1e42697 after 7 minutes.


Fix CI to use stable numpy and networkx

Fixes broken CI caused by pre-release numpy. Thanks to @pmeier, he found that our CI installs torch using --pre flag, which will make pip to use pre-release numpy and networkx. I have reported to TorchVision about the issue so they should be able to start to investigate how to prevent the problem when numpy promotes this release version to stable. For TorchData side, to mitigate the problem, the CI should use stable numpy.
See workflows about the pre-release numpy:

https://github.com/pytorch/data/actions/runs/3579763020/jobs/6021271659#step:3:31
https://github.com/pytorch/data/actions/runs/3579763020/jobs/6021271659#step:3:23

This PR should resolve the broken domain CI

See pytorch/vision##7009.


Coverage not working with hfuzz-gcc and attach pid

Hi,
I am trying to fuzz svnserve from subversion software of Apache Software Foundation.
I successfully compiled it in by tweaking the config with something like ./config CC=/path/hfuzz-gcc CXX=/path/hfuzz-g++
Then after a successful make, running readelf -a /path/subversion/subversion/svnserve/svnserve | grep "cov_" on the target executable gives:
  2701:<PHONE_NUMBER>19a310   103 FUNC    GLOBAL DEFAULT   14 __sanitizer_cov_trace_cmp
  2741:<PHONE_NUMBER>19a5d0     1 FUNC    GLOBAL DEFAULT   14 __sanitizer_cov_trace_cmp
  2745:<PHONE_NUMBER>19a5e0     1 FUNC    GLOBAL DEFAULT   14 __sanitizer_cov_trace_cmp
  2772:<PHONE_NUMBER>19a310   103 FUNC    GLOBAL DEFAULT   14 __sanitizer_cov_trace_con
  3070:<PHONE_NUMBER>19a4c0   139 FUNC    GLOBAL DEFAULT   14 __sanitizer_cov_trace_swi
  3558:<PHONE_NUMBER>19a550   113 FUNC    GLOBAL DEFAULT   14 __sanitizer_cov_trace_cmp
  3617:<PHONE_NUMBER>19a5f0    95 FUNC    GLOBAL DEFAULT   14 __sanitizer_cov_trace_div
  3694:<PHONE_NUMBER>19a9b0    76 FUNC    GLOBAL DEFAULT   14 __sanitizer_cov_trace_pc_
  3775:<PHONE_NUMBER>19a450   103 FUNC    GLOBAL DEFAULT   14 __sanitizer_cov_trace_cmp
  3797:<PHONE_NUMBER>19a3f0    95 FUNC    GLOBAL DEFAULT   14 __sanitizer_cov_trace_cmp
  3853:<PHONE_NUMBER>19a650    95 FUNC    GLOBAL DEFAULT   14 __sanitizer_cov_trace_div
  4006:<PHONE_NUMBER>19a380   103 FUNC    GLOBAL DEFAULT   14 __sanitizer_cov_trace_cmp
  4049:<PHONE_NUMBER>19a450   103 FUNC    GLOBAL DEFAULT   14 __sanitizer_cov_trace_con
  4090:<PHONE_NUMBER>19a380   103 FUNC    GLOBAL DEFAULT   14 __sanitizer_cov_trace_con
  4097:<PHONE_NUMBER>19a3f0    95 FUNC    GLOBAL DEFAULT   14 __sanitizer_cov_trace_con
  4404:<PHONE_NUMBER>19a730   123 FUNC    WEAK   DEFAULT   14 __sanitizer_cov_indir_cal
  4436:<PHONE_NUMBER>19a2a0   107 FUNC    GLOBAL DEFAULT   14 __sanitizer_cov_trace_pc
  5126:<PHONE_NUMBER>19a6b0   123 FUNC    GLOBAL DEFAULT   14 __sanitizer_cov_trace_pc_
  5160:<PHONE_NUMBER>19a7b0   501 FUNC    GLOBAL DEFAULT   14 __sanitizer_cov_trace_pc_

So the coverage tracking routines seems to be in place.
But, when I run the fuzzer following this instrucitons - I get zero coverage on all.
By looking at the log I see connections to the server so the fuzzer is connecting and is collecting timeouts, but no coverage. I run honggfuzz without -c but with -f specifying a folder with corpus to run.
Note: svnserve is run in -d (daemon mode)
Any idea of what's wrong?

Given that the attach PID mode has been removed from honggfuzz, closing this one.


Can a space be notified instead of a person?

Hello,
is it possible to notify a space instead of a human? For example - we have a few Dev spaces our IT/Dev team uses for automated server stuff.
The ID (when inspecting our space icons) looks like data-group-id="space/XXXXXXXX"
Thanks in advance!

@chuckienorton Google chat doesn't provide support for notifying space. Instead now you can notify multiple spaces by adding those webhook urls as comma separated in the env with the latest release.
Thank you!


Proxy support

I could not connect to titan from my Node.js project when running behind corporate proxy. I had to modify code slightly based on https://github.com/websockets/ws#how-to-connect-via-a-proxy.

We decided do not use Titan after all. I'm closing pull request.


duckdb(":memory:") creates an instance on disk

dlt version
0.4.7
Describe the problem
The documentation says that passing ":memory:" to credentials of the duckdb destination should create an instance in-memory. This currently doesn't behave as describe and creates database on disk instead.
Expected behavior
As mentioned in the docs, it should not leave a database file on disk.
Steps to reproduce
Python script to reproduce. Passing a duckdb connection to dlt fixes the problem and leads to file on disk.
import duckdb
import dlt
from dlt.destinations import duckdb as duckdb_dest

def warning():
    data = [{"a": 1}, {"a": 11}]
    pipe = dlt.pipeline(
        pipeline_name="repro",
        destination=duckdb_dest(credentials=":memory:")
    )
    pipe.run(data, table_name="repro_table")

    # WARNING IN TERMINAL
    # 2024-04-13 15:41:56,080|[WARNING]|11823|140366066149184|dlt|configuration.py|_path_from_pipeline:180|
    # Duckdb attached to pipeline repro in path :memory: was deleted.
    # Attaching to duckdb database 'repro.duckdb' in current folder.

    with pipe.sql_client() as client:
        db_con = client.native_connection
        df = db_con.sql("SELECT * FROM repro_table").df()
        print(df)

    # RESULTS
    #     a        _dlt_load_id         _dlt_id
    # 0   1<PHONE_NUMBER>.0234153  UXPSK0TEvjZIHw
    # 1  11<PHONE_NUMBER>.0234153  n9iF1bPAfpzfaw

def success():
    data = [{"a": 1}, {"a": 11}]
    pipe = dlt.pipeline(
        pipeline_name="repro",
        destination=duckdb_dest(credentials=duckdb.connect(":memory:"))
    )
    pipe.run(data, table_name="repro_table")

    with pipe.sql_client() as client:
        db_con = client.native_connection
        df = db_con.sql("SELECT * FROM repro_table").df()
        print(df)

    # RESULTS
    #     a        _dlt_load_id         _dlt_id
    # 0   1<PHONE_NUMBER>.0707414  BeTxMtE+GEI8mg
    # 1  11<PHONE_NUMBER>.0707414  HE3kI0jYe07ogg

if __name__ == "__main__":
    warning()
    success()

Operating system
Linux
Runtime environment
Local
Python version
3.10
dlt data source
No response
dlt destination
DuckDB
Other deployment details
Initially encountered the bug when developing in a Jupyter notebook, but the error is reproduced with the same code in a script.
Additional information
Passing a duckdb instance directly fixes the issue (as mentioned in the repro)
pipe = dlt.pipeline(
        pipeline_name="repro",
        destination=duckdb_dest(credentials=duckdb.connect(":memory:"))
    )

Hey @zilto thanks for the report I was able to reproduce this and am working on the fix


New release with Linux build fix commit included

Hey, I'm new to swift. As far as I can see I can't use the master branch of packages with the package manager (which makes sense). So I get an error because commit https://github.com/PureSwift/Silica/commit/aa4f82a548224018cd9084da4634089dc4354890 is not included.
Can you make a 1.1.2 release of the package and the dependencies?
Thanks!
(Using the latest Swift release on Ubuntu 16.04)

https://github.com/PureSwift/Silica/releases/tag/1.1.2

Thanks a lot! Can you do the same for Cairo and this commit? https://github.com/PureSwift/Cairo/commit/c247d0b031c9b7b8b5c411d68acadfb7a086bb22
Seems to be a dependency of a dependency or so.


color for texts needs to be updated

after putting in the new background, causing text to be harder to read as it blends in with the background

fixed


Saving time doing only backscans

Hi, everyone.
Sometimes I just need back irradiance (hourly) and therefor added a new variable in AnalysisObj.analysis and AnalysisObj.analysis1axis to just skip the frontscan if I don't need it.

Works pretty well so far and saves about 20 second per simulated hour on my desktop PC.
Does anybody with a deeper insight in radiance/bifacial_radiance has further ideas how to save simulation time while doing only backscans?

Hi bnows -- great implementation, sorry I hadn't seen your issue. We worked on this during summer so hopefully it'll be rolled into the next version.
'Accuracy' is by default set to low and can be changed to high, which increases time but not really accuracy, as at most simulations that is dictated already by the stochastic nature of the process, in which case it is better to run various simulatiosn and average them. But that doesn't reduce your time.
Besides making your scene as simple and representative of what you want, the next step is going to Cloud environments. Raytracing itself is a very computationally expensive process. Things to save time is doing gencumsky1axis instead of gendyalit1axis for tracking routines or just gencumsky for fixed routines, but then you can't do power hour-by-hour calculations or electrical mismatch, and  just evaluate things like bifacial gain and shading factors.

We have implemented different front and back sensors, as well as sampling on X for full module sampling on the development branch, so closing the issue. Targetting this for the next release by end of the month.


Custom methods to work with turboboost

Turboboost requires a method (create/update) to execute a method in case of an error like so:
def create
  @post = Post.new(post_params)
  if @post.save
    flash[:notice] = 'Post was successfully created.'
    redirect_to @post
  else
    respond_to do |format|
      format.html { render :new }
      format.js { render_turboboost_errors_for(@post) }
    end
  end
end

Is there a way I can extend the devise methods for sessions/registrations/... to respond in such a way?

Please use the mailing list or StackOverflow for questions/help, where a wider community will be able to help you. We reserve the issues tracker for issues only. Thank you!


There should be a template for creating external storage plugins

Describe the solution you'd like
Given the fact there already exists a repository with a template to create a verifier plugin, there also should be a supported repo for a storage plugin.
It should give documentation on how to build and run a new external plugin as well as an example that can be run out of the box.
Anything else you would like to add:
Work on this did already start in a separate repo. The goal would be to review and adapt this and move it to the deislabs organisation, similar to the verifier plugin.
Environment:

Ratify version: (use the image tag):
Kubernetes version: (use kubectl version):

@toddysm for visibility


BDI “Attempt to de-reference null object” error on a valid negative scenario, it's preventing valid Data Import records from processing

" Attempt to de-reference null object' errors are persisting through to subsequent DIs
If a DI processing fails with “Attempt to de-reference null object” because it has data from an already deleted field (this is expected). All the following DIs with valid data fail with the same message (not expected), even if the failed DI is deleted from the list view. This makes the DI functionality unusable from that point onwards.
Pre-Conditions:
Advanced Mapping should be enabled when starting.
Have a custom field mapped through UI
Steps to reproduce:
1- Create a DI with data on the field from precondition (but don’t process the DI yet)
2- Go to CMT and delete the field mapping for the field on step 1
3- Go to Object Manager and delete the field from the Data Import Object
4- Go to NPSP Data import again, choose All from list view and start Import process with “Single Match or create”. This will give “Attempt to de-reference null object” but it is expected.
5- Go back to DI list view and delete the failed DI.
7- Refresh the page and proceed to create a new DI with valid information (the field from the previous steps is no longer present on the DI object).
8- Process the DI that has all valid data.
Expected Result: The new DI with valid data should be processed correctly without any issue.
Actual result: New DI fails with message “attempt to de-reference null object” even if all the data entered is valid.

**lurch: attach W-035485

**lurch: attach W-035485

Tracking W-035485

W-7783066

Please follow this Known Issue in the Trailblazer Community for updates.


Support for Shared Channels?

I'm trying to write a bot that knows about Shared Channels (https://api.slack.com/shared-channels#api_updates_and_additions).
Is there a way to get at the conversations.list mentioned in the docs? I don't get any Shared Channels back from GetGroups or GetChannels.

Turns out GetConversations works fine, needed to include the types to get both public and private shared channels.
	results := []string{}

	// Conversations cover channels and shared channels
	conversation, _, err := api.GetConversations(&slack.GetConversationsParameters{
		ExcludeArchived: "true",
		Types:           []string{"public_channel", "private_channel"},
	})
	if err != nil {
		return nil, err
	}

	// Check if we are a member of the conversations
	for _, conversation := range conversation {
		if conversation.IsMember {
			results = append(results, fmt.Sprintf("#%s", conversation.NameNormalized))
		}
	}


Zomato Stock Price Prediction using LSTM, SVM, SGD, Decision Tree Regressor And K-Nearest Neighbors

🛠 Related Issue
Fixed: #410
📝 Description
Predicting Zomato Stock Prices involves using various machine learning models like LSTM (Long Short-Term Memory), SVM (Support Vector Machine), Stochastic Gradient Descent (SGD), Decision Tree Regressor, and KNN (K-Nearest Neighbors) to analyze historical stock data and forecast future trends. Each model leverages different algorithms and methodologies to enhance prediction accuracy and reliability.
🔍 Type of PR

[x] ✨ Feature enhancement
[x] 📚 Documentation update

✅ Checklist

[x] I have performed a self-review of my code.
[x] I have read and followed the Contribution Guidelines.
[x] I have tested the changes thoroughly before submitting this pull request.
[x] I have provided relevant issue numbers, screenshots, and videos after making the changes.
[x] I have commented my code, particularly in hard-to-understand areas.

Hi @Akshat111111 , Please assign labels GSSOC and level 2 to this PR.
Resolves #410

@Akshat111111 Sir

Okay @Akshat111111

@Akshat111111 Can you give clarity that under which folder do i upload


UBI migration of Images - chaoscenter

Proposed changes
Migrate the base images of the chaoscenter container images of LitmusChaos from infra-alpine to ubi minimal.

litmusportal-server
litmusportal-subscriber
litmusportal-auth-server
litmusportal-event-tracker

Types of changes
What types of changes does your code introduce to Litmus? Put an x in the boxes that apply

[x] New feature (non-breaking change which adds functionality)
[ ] Bugfix (non-breaking change which fixes an issue)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] Documentation Update (if none of the other choices applies)

Checklist
Put an x in the boxes that apply. You can also fill these out after creating the PR. If you're unsure about any of them, don't hesitate to ask. We're here to help! This is simply a reminder of what we are going to look for before merging your code.

[x] I have read the CONTRIBUTING doc
[x] I have signed the commit for DCO to be passed.
[ ] Lint and unit tests pass locally with my changes
[ ] I have added tests that prove my fix is effective or that my feature works (if appropriate)
[ ] I have added necessary documentation (if appropriate)

Dependency

Please add the links to the dependent PR need to be merged before this (if any).

Special notes for your reviewer:
Other images that need to be migrated are in other repositories.

@Jonsy13 I've tested it with different user IDs and group IDs and it seems to be ready to merge.

Great work @dusdjhyeon 🚀🚀


Value-based Specialization and Dispatch

Feature request

Numba specializes functions based on their argument types. However, sometimes specializing based on argument values (or other conditions) is required.
In the basic argument specialization case, let's assume a simple function:
@jit
def f(A, B):
    ...

If f is called with f(2,10) for the first time, a compiler pass should be able to declare that B==10 is specialized, and the function should be recompiled if this condition is not true in any future calls to f. I think this is the most common case.
The next level would be enabling specialization based on any condition in the function. For example:
def f(...):
    ...
    check_and_recompile(cond)
    ...

A compiler pass should be able to insert a function that checks a condition and forces recompilation and re-execution. Compiling and executing the rest of the function might be required if there were side effects before this point in the function. I still need to think more about this case since the use case is still not fully clear yet.

I came across this, looking for way to make function parameter inlined.
I went through a thought experiment, which might be helpful:
I think numba already supports inlining of:
@njit
def g(i):   ..

@njit
def f():   ..
   ... g(i) ...

The call to g is inlined, or at least seems markedly faster than:
@njit
def f(g):   ..
   ... g(i) ...

Similarly for, integer and bool parameters, it would be nice to have dead code removal, which may allow writing fewer variations of functions that need to go at high speed.
@njit
def f(param=False):   ..
   if param: do_work()

I've already seen that moving variables names from parameters into the function closures:
@cached
def get_specialize_f(g, param):
   def f(param=False):   ..
       if param: do_work()    # njit can remove dead code for const-assumed param from closure?
        .... g()   ...    # njit  can inline g specified in closure

   return f

... provides these benefits already because numba assumes constyness of g and param because they: (i) have values, (ii) are closure variables.
However, if the mechanism exists, more generic steps to value specialization seem very mechanical.
That is, if the user can force specialization of variables with a wrapper, why can't numba do it. For example, we could add specializable_parameters to njit:
@njit(specializable_parameters=("g", "param"))
def f(a, b, g, param=False):   ..
   if param: do_work()  # remove for param==0
   g()   # inlined
   return 123

where specialize_values=("g", "param")
simply rewrites:
def njit(func, specializable_parameters=...):

   @cached        # Numba to generate this function dynamically
   def compiled_with_const_parameters_as_closure(g, feature=False):

       @njit  # Compile func where g and param are seen as closure variables and assume const
       def func_specialized(a,b):   ..
          # Body of func:
          if param: do_work()  # remove for param==0
          g()   # inlined
          return 123

       return f_specialized

    def deferred_specialization(a, b, g, feature=False):
         return  compiled_with_const_parameters(g, feature)(a,b)

    return deferred_specialization  #

I think the tricky part here is that: njit(h)  is expected to return a compiled object (that could, for example, be inlined when referenced by other functions).
To make it work auto-magically, each compiler reference to h needs to decide:

if h is specializable (is a  deferred_specialization function, or similar object that can generate an njit function giving specialization parameter values) AND all of the specialization parameters are available at the point of the call to h.,then we can replace the call to h(a,b,g,param) with, h.compiled_with_const_parameters_as_closure(g,param)(a,b). This need to be done at every function call site.  More generally, we could define specializable_parameters automatically as any parameter that whose value it known at the call site during compilation (as, I think, numba does for closure parameters). This would need to be done at each call site and by inspecting the parameters for every function call and testing for constyness.

otherwise proceed without specialization.

Is just a thought experiment. I don't understand the compilation internals of numba, but in principle, I would think that value specialization (for closure parameters) is not too hard because numba already supports inlining via the constyness of closure parameters values. I guess it would depend on how complex the code that emits a compiled function call is.

I do not fully understand this issue, but I managed to do something similar doing some dirty tricks that I do not know if are dangerous.
For example:
import numpy as np
import numba as nb

def outer_factor():
    rv = 1
    i = 1
    while i <=  mr:
        rv *= i
        i += 1
    return rv
mr = 4

fac4 = nb.jit(outer_factor, nopython=True, nogil=True)

for i in range(10):
    mr = i
    fac4.recompile()
    print(fac4())

Outputs:
1
1
2
6
24
120
720
5040
40320
362880

Strangely, if I try to recompile or compile again on a terminal it doesn't work anymore:
In [1]: runfile('/home/me/TEST.py')
1
1
2
6
24
120
720
5040
40320
362880

In [2]: mr = 3

In [3]: fac4.recompile()

In [4]: fac4()
Out[4]: 362880

In [5]: fac3 = nb.jit(outer_factor, nopython=True, nogil=True)
In [6]: fac3()
Out[6]: 362880

(maybe there's some to do with caching)
Alternatively, and I think this is advised against, I made a function factory that seems to work:
def fac_Factory(n):
    def inner():
        nonlocal n
        rv = 1
        i = 1
        while i <= n:
            rv *= i
            i += 1
        return rv
    return nb.jit(inner, nopython=True, nogil=True)


Testing with ridiculous screenshot sizes

more or less the title
I'm a madman, so when I looked at individual images and saw a pixelated blob when zoomed in, I was annoyed. I'd upload images but they've been deleted. For reference, they were made at 1440p. Keep in mind that the screenshots all have very little difference (no new chunks were explored/visited, I only built some stuff)
The small issue I have with this: anything larger than 4k is not taken properly. When I went to 8k, I played for five minutes, yet in the timelapse folder there were only two 8k images. I'll blame this on VRAM...I only have two and my SSD is fast enough for this.
ok so the game crashed with 16k images and the game at max settings, since I only have 2GB of it

4k Image:
(when I find out how to insert 21mb images I'll post it)
8k Image:
(when I find out how to insert 84mb images I'll post it)
16k Image:
(when I find out how to insert 330mb images I'll post it)

One more thing: Do the ingame settings for resolution of sprites and atlas affect screenshots?

For the mod the screenshot size doesn't matter, so screenshot not being taken or crashing the game is out of the influence of the mod.
Of course for the game itself it matters... Especially on (V)RAM I suppose. And yes quality settings, atlas size, etc (I suppose all on the graphical settings), will influence this as well. It is (all) using more or less (V)RAM and thus influences the maount left to take the actual screenshots.
I guess you'd better go to the Factorio forums or Reddit to find more experts on this area to find out how to maximize the resolution. :smile: (altough I am afraid the conclusion is to get better/more hardware)
PS There is [proof[(https://www.youtube.com/watch?v=dY2nxVNBHQs) that 8K screenshots work, I don't know about 16K... :stuck_out_tongue:

But will the atlas size and quality affect how detailed stuff is in the screenshots?

And also I don't think I'm ever touching 16k again.
I might TRY 32k but that's INSANE

But will the atlas size and quality affect how detailed stuff is in the screenshots?

AFAIK (I am certainly not a graphic-pipeline expert) atlas size defines how large each spritesheets (atlas) is. This influences how much spritesheets the game needs (not the quality, that is another setting) to be able to render all sprites. The optimum size of a spritesheet depends on several factors, where amount of VRAM is probably the most important (as it then would be able to fit 1 huge spritesheet, instead of swapping multiple smaller ones while rendering). Some other factors that pop in mind: amount of mods (defines total amount of sprites), memory bandwidth/speed, throughput RAM->VRAM, and probably quite some more.
For example, if you have some sprites (let's assume of the same size to keep things simple) and they fit one one spritesheet. By decreasing the size of the spritesheet by 4 (halved width and height), you'd suddenly need 4 spritesheets to fit all sprites.

interesting! I know nothing about these topics, thank you for explaining
Maybe once I get a device with 6GB of VRAM it will function far better...I'll keep testing in the meantime

So I tested with a 4GB VRAM laptop and an i7-10850H or something
It has a Quadro T2000
Interestingly, the lag was not due to VRAM being taken up at 4k screenshots and the base game at max (which hovered at 2.2GB VRAM usage -_-)
I have no clue what the issue is. Maybe the SSD but it's an SSD so I sort of doubt it. I'll test more, but I think it could also be the CPU...?
I have a question for you from someone else I asked about this.

Are you writing to storage directly from VRAM?
If so, try copying it to a CPU memory buffer before you touch IO.

I don't know how the mod does it

So I tested with a 4GB VRAM laptop and an i7-10850H or something
It has a Quadro T2000
Interestingly, the lag was not due to VRAM being taken up at 4k screenshots and the base game at max (which hovered at 2.2GB VRAM usage -_-)
I have no clue what the issue is. Maybe the SSD but it's an SSD so I sort of doubt it. I'll test more, but I think it could also be the CPU...?
I have a question for you from someone else I asked about this.

Are you writing to storage directly from VRAM?
If so, try copying it to a CPU memory buffer before you touch IO.

I don't know how the mod does it

The mod uses the Factorio API to make a screenshot, and TBH I don't know how the Wube devs implemented this.
I do know that no matter what the screenshot needs processing (rendering all tiles that are in the screenshot), which takes CPU and (V)RAM.
If you feel that there is something wrong or could be improved (performance wise), then I guess it would be best to go to the Factorio forums and ask/tell the devs about it. There is a bug reporting section IIRC on which more knowledgeable people are around :smile:

The mod uses the Factorio API to make a screenshot, and TBH I don't know how the Wube devs implemented this.
I do know that no matter what the screenshot needs processing (rendering all tiles that are in the screenshot), which takes CPU and (V)RAM.
If you feel that there is something wrong or could be improved (performance wise), then I guess it would be best to go to the Factorio forums and ask/tell the devs about it. There is a bug reporting section IIRC on which more knowledgeable people are around :smile:

Okie doke, thanks!

Okie doke, thanks!

1080p screenshots lag just a bit on that laptop, and they lag a teensy bit more on mine. I'd chalk that up to how the Wube devs implemented the screenshot feature...trying to confirm/deny that though.

1080p screenshots lag just a bit on that laptop, and they lag a teensy bit more on mine. I'd chalk that up to how the Wube devs implemented the screenshot feature...trying to confirm/deny that though.

Can we mark this as "not our problem - blame WUBE" and close?


What should I pay attention to when training with a single GPU?

When I tried to train on a single GPU, it was hard to get the same results as you can with multiple Gpus.
I tried to expand epoch, but the revenue wasn't good.

Taking DepthFormer as an example, rmse=0.43 at 22k iterations using a single sheet of 3090ti.

Make sure that there is no problem with the environment and dataset, because when training SimIPU, the training effect can reach the corresponding standard.

That could be difficult. To adopt an 8GPU-based config to a 1GPU environment, basically, you need to extend the iteration number and tune down the learning rate. I cannot ensure that the reproduction of DepthFormer on 1GPU.
The Swin-T version of DepthFormer is based on 2 3090s, so it could be easier for you to modify this light version.

非常感谢您对我的回复！
我后续没有停止训练，还在迭代，不过Swin-T 版本用一个3090Ti，可以训练到0.417，和您的log差的不太多。非常棒的复现体验。

其实我是想向您咨询一下多GPU联合训练，是不是除了改变迭代次数和学习率还需要缩小BatchSize？
感觉联合训练的策略，多个GPU分别取多个批次后平均总损失，还是多个GPU瓜分一个批次后叠加损失？
感觉这个会对训练结果影响比较大的样子。

Thank you very much for your reply!
I didn't stop training and I'm still iterating, but the Swin-T version uses a 3090Ti and can be trained to 0.417, which is not too far off your log. Great recreating experience.
In fact, I want to ask you about multi-GPU joint training, is it necessary to reduce the BatchSize in addition to changing the number of iterations and learning rate?
Sensory joint training strategy, multiple Gpus take the average total loss after multiple batches, or multiple Gpus divide a batch and add the loss?
It feels like this will have a big impact on the training results.

That's great, but I think 0.417 v.s. 0.399 is still a gap, and you can try to modify some configs to bridge it.
Actually, it is tricky to tune bs and lr. For me, I'd like to linear scale them. For example lr=0.01, bs/gpu=2, gpu_num=1 = lr=0.02, bs/gpu=4, gpu_num=1 = lr=0.04, bs/gpu=4, gpu_num=2.
For your other question, I forget the real implementation in PyTorch, but I think you can find the answer in the official docs.


Update using-global-side-effects-955ae31.md

Fixed Sideeffect - missing comma

Hi @andiblockiersystem , thanks for your contribution! We'll look into it and get back to you.

Hello everyone,
Thanks again for your contribution. The changes are incorporated into the Using Global Side Effects topic. Your changes will be visible with the next official SAPUI5 release.


File upload retry

Discussed in https://github.com/getnamingo/registry/discussions/82

Originally posted by getpinga December 27, 2023
Scripts that upload files, like escrow, lordn or reporting should have failsafe checks and if upload fails, to try to upload it again in some time. And if fails again, to try one more time.

escrow, lordn, reporting


change cron time to every 12 hours

fixes #57

Can we run it twice a day?

Yeah!! we can do that we will be even better

I thought the data loading service handled it. We should fix it.

@bodhi nope, the scrapper seems to simply be using start and end date with no time specified. I'll try to fix it ASAP, but need to discuss abt how to remove duplicates in already generated data in today's EOD.


23 cd adding continuous deployments to the project

Description
Adding capability to deploy all packages that are publishable!
Here are example of what occures:

Please merge #24 before merging this pr
Fixes #23
Thank you for contributing to our NX-Generatorz repo!
:rocket:(づ｡◕‿‿◕｡)づ:rocket:

One change I would suggest is to maybe have a bot account for doing the deployments. What do you think?

ing the deployments. What do you

One change I would suggest is to maybe have a bot account for doing the deployments. What do you think?

NOP V-V this makes me cry everyday :<

Looks like npmjs doesn't support service accounts for the CD step of the deployment phase. A feature we'll have to live without :(

lets make our own npm 🚀


.from_excel should support .xlsx file extension

The DataFrame.from_excel method does not support loading XLSX files since the spreadsheet gem does not support it.
We should write new functionality so that XLSX can be supported using the rubyXL gem.

@athityakumar you should incorporate this into your project if nobody submits a PR before the coding period.

It will be good to look at write_excel as well for xlsx .

@jeydurai Ideas on how far it should go? Like styling of output and something something?

While reading as daru dataframe and writing back as excel, it should preserve the original formatting on both ways.
Should be able to read the default sheet (selected one) if we call for read_excel function in daru object, in addition to which, there should be a functionality to create an Excel object, by which, any specific sheet can be read by giving the sheet name with an option to specify which column in the source file to be considered as Index of daru dataframe.
We should be able to save multiple daru dataframes as multiple sheet of a single excel file.
It should have an engine to give pivot_table functionalities. (The most important)
Feature should be there to write the pivot table object as excel file

@jeydurai Thanks, that is pretty informative list, we'll work our way on it.
@athityakumar I believe you should be really interested in this discussion :)
@Shekharrajak for you it is also may be useful (as "export to Excel with pivot tables" COULD be part of "views" rather than exporters, but it is a point to discuss again).

@v0dro - Sure, I'll try to accommodate these features in my project timeline.
@zverok - Yes, I'm looking forward to this. :)
@Shekharrajak - Regarding (4) and (5), we can consider using the pivot-table gem.
@jeydurai - Thanks for this list. Feel free to add more, if you come across any more potential use cases - my coding period starts from May 30th. I'll try incorporating as much features as possible within the timeline.
Regarding (3), would something like this suffice as use case?
df1.to_excel "filename.xlsx", sheet: 1
df2.to_excel "filename.xlsx", sheet: 2

@athityakumar I will surely come back in a day or two in order to add more use cases.
@athityakumar For the use cases of (3), the following syntax may be helpful.
Reading:
xlsx = Daru::DataFrame.ExcelFile(PATH\FileName.xlsx)
df_sheet1 = xlsx.parse('Sheet1')
df_sheet2 = xlsx.parse('Sheet2')
OR
df_sheet1 = xlsx.parse(0)
df_sheet2 = xlsx.parse(1)
Writing: (suggested use case looks like saving the file as many times as the number of df/sheets we have. However, the following syntax may be good).
writer = Daru::DataFrame.ExcelWriter('path/to/file_name.xlsx', engine='xlsxwriter') # to differentiate if we need XL or XLSX.
df1.to_excel(writer, sheet_name='Sheet1')
df2.to_excel(writer, sheet_name='Sheet2')
df3.to_excel(writer, sheet_name='Sheet3')
writer.save
(This could act as lazy so that only when we call save method from the writer object, the functionality should start writing to disc.)

We can create pivot table using the gem pivot_table as suggested by @athityakumar  and using Daru::Formatters::Table.format(data, headers: headers, row_headers: row_headers) , we can get the table.
I tried one example: gist link

pivot_table gem looks too inflexible and heavy to me. Moreover there will be the overhead of copying data from daru to the other gem. Maybe you can port some of the code from there to daru?

I also don't think we need any external gem for building pivot tables. We have everything you can need for this in Daru already.
I believe that writing several dataframes to several sheets IS a usecase, yet @athityakumar's proposal (with atomic writes, each "write this DF to that file, N sheet" is separate op) is good enough for starters. As far as I know, XLSX files opening/closing doesn't have a lot of overhead, so from "just dataframe"s point of view atomic writes is more logical.
Though, as a far future idea, support for some sort of "transactions" for writing could be useful, like

transaction writing to that db: df1 to table1, df2 to table2, then commit
transaction writing to that CSV file: df1, then df2, then flush
transaction writing to that XLSX file: df1 to sheet1, df2 to sheet2, then save

But it is "next level", anyways.

Thanks for suggestions. I think we must extend the DataFrame#pivot_table features accordingly.

option :agg - Function to aggregate the grouped values. Default to :mean. This must be changed if there is only single value to return then that will be added in column value (String, Symbol). Means it must not be restricted to numeric vectors.

Submitted PR https://github.com/athityakumar/daru-io/pull/28 for XLSX Importer. Please review. 😄

Implemented in daru-io


Minimum is 40 but needs to be 35

The min and max for the unit are 35% to 85% but the integration bottoms out at 40.
Thanks

Should be fixed in v0.3.0 (https://github.com/nbogojevic/homeassistant-midea-dehumidifier-lan/commit/c37b4487b07d6be3b40f9c7e626715050af2c8fc)

Great! Excellent work on this


Can't bind to 'scrollable-tabs'

Using in my existing project as a plugin...
Uncaught (in promise): Error: Template parse errors:
Can't bind to 'scrollable-tabs' since it isn't a known property of 'ion-tabs'.

If 'ion-tabs' is an Angular component and it has 'scrollable-tabs' input, then verify that it is part of this module.
If 'ion-tabs' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the<EMAIL_ADDRESS>of this component to suppress this message.
To allow any property add 'NO_ERRORS_SCHEMA' to the<EMAIL_ADDRESS>of this component. ("

save issue . I was using ionic scrollable tabs
https://market.ionicframework.com/plugins/ionic2-scrollable-tabs
Did you find any solution ?


chore(main): release helm/cron-set-controller 1.0.3

:robot: I have created a release beep boop
1.0.3 (2023-09-04)
Bug Fixes

ctrl: modify to use NODE_IDENTIFICATION_KEY env to create name of cronjob (7cc1192)
helm: set appVersion to 1.0.2 (e7d72ed)
helm: use range expression for setting env to manager (b14be84)

This PR was generated with Release Please. See documentation.

:robot: Release is at https://github.com/grasse-oss/cron-set-controller/releases/tag/helm/cron-set-controller-v1.0.3 :sunflower:


"error: cannot find derive macro Serialize in this scope" with homepage example

Hey,
I'm really, really confused by this. For reference, I have this same issue on two different machines with two different projects running two different operating systems. Also, in one project it used to work fine maybe a week ago without me changing anything in the project.
My "serde" dependency is set to "*" in the Cargo.toml, so cargo updated it to the most recent version. When I try to set it to an older version again (I went back as far as 1.0.90), the error remains. Here's what happens:
Given this code (simple example project, that I just created):
Cargo.toml
[package]
name = "ggg"
version = "0.1.0"
authors = ["Benedikt Terhechte<EMAIL_ADDRESS>edition = "2018"

# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html

[dependencies]
serde = "1.0.97"

main.rs
use serde::{Serialize, Deserialize};

#[derive(Serialize, Deserialize, Debug)]
struct Point {
    x: i32
}

fn main() {
    println!("Hello, world!");
}

When I run cargo check or cargo build or cargo build --release the following error happens:
cargo build --release
   Compiling serde v1.0.97
   Compiling ggg v0.1.0 (/private/tmp/ggg)
error: cannot find derive macro `Deserialize` in this scope
 --> src/main.rs:3:21
  |
3 | #[derive(Serialize, Deserialize, Debug)]
  |                     ^^^^^^^^^^^

error: cannot find derive macro `Serialize` in this scope
 --> src/main.rs:3:10
  |
3 | #[derive(Serialize, Deserialize, Debug)]
  |          ^^^^^^^^^

warning: unused imports: `Deserialize`, `Serialize`
 --> src/main.rs:1:13
  |
1 | use serde::{Serialize, Deserialize};
  |             ^^^^^^^^^  ^^^^^^^^^^^
  |
  = note: #[warn(unused_imports)] on by default

error: aborting due to 2 previous errors

error: Could not compile `ggg`.

To learn more, run the command again with --verbose.

cargo -V says: cargo 1.36.0 (c4fcfb725 2019-05-15)
Initially I thought, it would be a weird issue in my other project, but I've since created this super simple example project with nothing but the default example code, and it still fails.
Setting the Cargo.toml to serde = "*" and trying again (cargo clean; cargo build --release) still leads to the same issue. Anything else I can provide you with to help out?
Edit: One operating system is macOS 10.14, the other is macOS 10.15 beta.
Cheers

Take a look at where it says "Click to show Cargo.toml" in the readme, or check out https://serde.rs/derive.html. It looks like you haven't enabled the "derive" feature.

Thanks, I’ll try that tomorrow, is that a new addition?


Enable CI to compile for duckdb-wasm

Refactor of CI, unifying to extension-template, and add the necessary defines or patches to make so that it does cross-compile successfully.

Super cool! We should look into maybe trying to upstream some of the patches in the future to make it less brittle, but very excited to merge this!

Thanks! Yes, PR is not super clean, but I wanted to get it over the line, so to be able to test also the system as a whole.
Very happy to make another round cleaning up cmake and patch duplication.


Parameter Id is misspelled, the name is AppId

Parameter Id is misspelled, the correct parameter name is AppId.
Maybe this is worth to correct the documentation.

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: af7db55e-2c23-1e7f-0165-642240929bb4
Version Independent ID: 7038e976-0307-8b61-8e23-81045b5c60c4
Content: Get-NAVAppInfo (Microsoft.Dynamics.Nav.Apps.Management) - Dynamics NAV
Content Source: businesscentral-ps-19/Microsoft.Dynamics.Nav.Apps.Management/Get-NAVAppInfo.md
Product: dynamics365-business-central
GitHub Login: @jswymer

Hello, Thanks for the feedback!
-AppId is an alias or alternate name for -Id. Here is a clip from the article:

-IdSpecifies the ID of the Business Central app to be returned.

Type:
Guid

Aliases:
AppId

...

I think -AppId was the original parameter name, but we switched to -Id at some point. Both can be used, although -Id is preferred.  We'll close this issue for now, but if you have more feedback, we'll gladly reopen it.


Conditional style is overwritten in loop when using cssNamespace

Hi,
I have a namespace #my-widget.
Components looks schematically like this
const PolarityCell = styled.td`
   color: ${({isNegative}) => isNegative ? 'red': 'green'};
`

        {entries.map(({value, isNegative}) => (

                <PolarityCell isNegative={isNegative}>{value}</PolarityCell>

         )}

}

When entries: [{value: '1', isNegative: false}, {value: '-2', isNegative: true}] all values are red
When entries: [{value: '-1', isNegative: true}, {value: '2', isNegative: false}] all values are green

Done a bit digging and found out, that with such cases, styled-components generate a.b while this plugin gives only a, as result the style loaded last is used. Seems like a bug :(

this is caused by an issue in styled-components https://github.com/styled-components/styled-components/issues/3265

Wrapping the style rule with && solved it for me.
const PolarityCell = styled.td`
   && {
       color: ${({isNegative}) => isNegative ? 'red': 'green'};
   }
`

I have same issue

I have same issue

Try to downgrade styled-component dependency to v5.1.0.


yaegi incorrectly accepts non-bool conditional expression in if statement

The following program cond.go unexpectedly runs:
package main

import "fmt"

func main() {
	var i int
	if i % 1000000 {
		fmt.Println("oops")
	}
}

Expected result:
~ $ go run cond.go
# command-line-arguments
./cond.go:7:2: non-bool i % 1000000 (type int) used as if condition

Got:
~ $ yaegi cond.go
oops

The simpler case also has the same behaviour, this is just how I discovered it.
package main

import "fmt"

func main() {
	var i int
	if i {
		fmt.Println("oops")
	}
}

I have tried a fix in interp/cfg.go (below), but this breaks boolean expressions. It's not clear to me how to tie the type information with the AST here.
+++ b/interp/cfg.go
@@ -232,6 +232,21 @@ func (interp *Interpreter) cfg(root *node) ([]*node, error) {
                        sc = sc.pushBloc()

                case forStmt1, forStmt2, forStmt3, forStmt3a, forStmt4:
+                       var typ *itype
+                       switch n.kind {
+                       case forStmt1, forStmt3:
+                               typ, err = nodeType(interp, sc, n.child[0])
+                       default:
+                               typ, err = nodeType(interp, sc, n.child[1])
+                       }
+                       if err != nil {
+                               return false
+                       }
+                       if typ.rtype != nil && typ.rtype.Kind() != reflect.Bool {
+                               err = n.cfgErrorf("non-bool (type %s) used as for condition", typ.rtype)
+                               return false
+                       }
+
                        loop, loopRestart = n, n.lastChild()
                        sc = sc.pushBloc()

@@ -296,6 +311,20 @@ func (interp *Interpreter) cfg(root *node) ([]*node, error) {
                        }

                case ifStmt0, ifStmt1, ifStmt2, ifStmt3:
+                       var typ *itype
+                       switch n.kind {
+                       case ifStmt0, ifStmt1:
+                               typ, err = nodeType(interp, sc, n.child[0])
+                       default:
+                               typ, err = nodeType(interp, sc, n.child[1])
+                       }
+                       if err != nil {
+                               return false
+                       }
+                       if typ.rtype != nil && typ.rtype.Kind() != reflect.Bool {
+                               err = n.cfgErrorf("non-bool (type %s) used as if condition", typ.rtype)
+                               return false
+                       }
                        sc = sc.pushBloc()

                case switchStmt, switchIfStmt, typeSwitch:

Also, this doesn't fix cases like for i := 0; i; {} where the type information for i doesn't exist by the time we get to the cfg analysis.

Your fix doesn't work because it is inserted in pre-processing of AST walk. Pre-processing means at entry in the AST node, before all subtree is processed. To work, the check must be performed at post-processing (exit of AST node, when all subtree is processed). See #445 for the right fix.

This part of the code: pre/post processing and node walk, etc. would deserve some explanations (in a design doc), but also some refactoring. I fully agree that it is not really readable as it is right now, to say the least. Sorry for that.

Thanks


HIL needs to write flash config

Currently, at least the dell driver does not save the flash config, such that if a power outage happens the changes persist.
We need to:
a) Check all the drivers for this class of bug, and
b) fix it.
One possible way to address it would be to stick a "write ..." command in the switch driver's disconnect(). By doing it there rather than after each port mod, we might cut down on flash overwrites and potentially save some wear while speeding things up.

Looking at #673, since there could be a time/flash wearing vs. consistency tradeoff maybe we could make it a tunable as to whether the write ... happens in disconnect() or after every change?

One other option: we could recommend having the switch's stored config have all ports managed by HIL be disconnected from everything, so in the case of a power outage we fail-safe. This sidesteps the tricky problem of coordinating database commits and flash writes, as well having to worry about wearing out the flash.

I like that.
Going into our discussion (hopefully later this week), I think we need to keep in mind that we a) don't want anyone to have access to networks they shouldn't, and b) should have a sane way for HIL providers to restore or reinstall their switch.
 We may still need something like #687, since I noticed that once the switch was reset, using HIL to disconnect then reconnect the port gave me access to all VLANs

Have HIL maintain a copy of the switch config every time that is refreshed after every change.

Recommend that HIL providers have an external mechanism for backing up switch config.

We just had some more discussion with @naved001 @knikolla @kylehogan @meng-sun and @gfaline. It sounds like a plausible solution would be to add a reset_nic(), in addition to having reset_port().
reset_nic() would be able to handle situations like needing to replace a dead switch with one or two others that might have different port capacities. After the nic was disconnected from the previous switch and connected to the new one, one could run reset_nic(). It could also handle moving a node between racks.
reset_port() would be helpful in cases where a switch was replaced in-kind, and one could simply run reset_port() on all of the ports to get them back to functional. It would also handle cases like we had with losing power, since we wouldn't know which nodes needed to be reset -- we just want to do them all.

closing this because #749 and #753 were merged.


Feature request: PHP_CodeSniffer in CLI

Need to add PHP_CodeSniffer and PHPCompatibility (optional) to run code analysis.

Added in dc45e33fc0e236e4c3d961ab760c6eb2712d85f8
Released in v1.0.0


emulate az with azd - for terraform only

The emulation strategy
When azd invokes terraform cli, an az cli is emulated during the execution of terraform cli automatically.  This is how it works:

azd automatically sets 2 environment variables:

AZURE_AZ_EMULATOR=true
PATH=~/.azd/bin//az  -> overrides the path for the terraform cli to execute az cli from it

Implementation notes:

azd makes a copy of azd binary into ~/.azd/bin/<unique-forlder>/az.  The copy is deleted at the end of the command execution.

This strategy has been successfully tested for terraform.
Terraform local dev with azd
The steps for getting started with azd+terraform are:
before this PR:

install azd
azd auth login
azd init (terraform template or existing code)
install az
az login
az account set --subscription xxx-xxx-xx (select the same subscription you will use with azd)
azd up

After this PR:

install azd
azd auth login
azd init (terraform template or existing code)
azd up

This doesn't feel like the correct direction to create an emulation strategy to solve the authentication challenge with Azure and Terraform.
If the azure provider still requires the az CLI, then we should work with both the Azure team and Terraform to come up with a better strategy.

Yeah. My first approach was to make the azurerm provider to support using azd to auth.  I created a PR for it but it was rejected by Hashicorp (see: https://github.com/hashicorp/terraform-provider-azurerm/pull/22827#issuecomment-1737118266).  They won't take changes to the auth and they are not using DefaultAzureCredentials :).
The other approach is to make azd to expose an MSI when invoking tools like terraform.  But, that's way more complicated and the trick there would be to make terraform to think it is running in an Azure Environment.  So, azd would be emulating Managed Identity, instead of the az. :)

Based on internal team discussion - I think we are going to explore using a local MSI endpoint, similar to what is outlined in #3979 and then set the relevant terraform environment variables to tell the AzureRM provider to use MSI and our own endpoint instead of putting a dummy az on the path.  I think we are all just a bit too nervous about hijacking az in this way, and so plugging in via MSI will have fewer moving parts.

Instead of emulating az, we will pivot and explore using MSI endpoint for terraform as the solution here


Projection of predicted 3d keypoints onto the input video

I wonder how to project the predicted 3d keypoints obtained from TCMR onto the input video. Can you elaborate the process?
Do I have to convert the 3d keypoints to pixel coordinates?

@wunderlife
TCMR predicts camera projection parameters (scale, x translation, y translation), which project 3D keypoints to the input image plane.
Refer to the variable pred_cam
https://github.com/hongsukchoi/TCMR_RELEASE/blob/ade5ab5e2bd8b1a26338406c0b272d2a16f85070/demo.py#L190


Log refactoring

Improve logging:

Better handling of exceptions
Named logger
No logging messages printed by default if package is imported

☑


feat(matrix): Enhance matrix manipulation with advanced helper methods

Overview
This pull request introduces several new helper functions and methods to enhance the functionality of the matrix manipulation module. These additions aim to provide more flexibility and efficiency in working with matrices, including the ability to add, insert, drop rows and columns, as well as calculate matrix minors.
Notable Changes

AddColumn & AddRow: Two new functions, addColumn and addRow, have been added to append arrays to the last column or row of the matrix, respectively, without causing shallow copies.

addRowMatrix addRow(double[] a);
static Matrix addRow(Matrix m, double[] a);

addColumnMatrix addColumn(double[] a);
static Matrix addColumn(Matrix m, double[] a);

InsertRow & InsertColumn: New helper functions, insertRow and insertColumn, are introduced to insert arrays at specific row or column indices, shifting existing rows or columns accordingly.

insertRowMatrix insertRow(int row, double[] a);
static Matrix insertRow(Matrix m, int row, double[] a);

insertColumnMatrix insertColumn(int col, double[] a);
static Matrix insertColumn(Matrix m, int col, double[] a);

MinorMatrix: A new method, minorMatrix, calculates and constructs a new matrix representing the minor of a given matrix, useful for linear algebra operations.
Matrix minorMatrix(int row, int col);
static Matrix minorMatrix(int row, int col);

DropRow & DropColumn: Two new methods, dropRow and dropColumn, are introduced to remove specified rows or columns from the matrix, with support for negative indexing.

dropRowMatrix dropRow(int row);
static Matrix dropRow(Matrix m, int row);

dropColumnMatrix dropColumn(int col);
static Matrix dropColumn(Matrix m, int col);

Description
These additions significantly enhance the matrix manipulation capabilities of the Matrix class. With addColumn and addRow, users can conveniently append arrays to the matrix without worrying about shallow copies, which is particularly useful for large matrices where memory efficiency is crucial. The insertRow and insertColumn functions provide users with the flexibility to insert arrays at specific indices, allowing for more precise manipulation of matrix data.
Moreover, the introduction of the minorMatrix method adds advanced functionality to the Matrix class, enabling users to calculate minors of matrices efficiently. This can be particularly valuable in various linear algebra operations, such as determining cofactors and calculating determinants.
Additionally, the dropRow and dropColumn methods offer a convenient way to remove rows or columns from matrices, enhancing the module's usability and versatility. With support for negative indexing, users can easily specify rows or columns to remove relative to the end of the matrix.
Overall, these new functionalities not only enrich the matrix manipulation capabilities of the module but also improve its performance and usability, making it a more powerful tool for handling matrix operations.
Summary
In summary, these changes adds a suite of new functionalities to the matrix manipulation, including helper functions for appending, inserting, and dropping rows and columns, as well as a method for calculating matrix minors. These additions contribute to making the Matrix class more versatile and efficient in handling matrix operations.

⚠ Deprecation
The change method are no longer recommended to use and has been deprecated due to inefficiency to change and update a specific row entries of the matrix. Instead, you can utilize the new method called insertRow to change row entries. Moreover, if you want to change a specific column of the matrix, the insertColumn method can help in more efficient way.
By deprecating the change method, the select method are no longer utilized and deprecated.


⚠ ClamAV has degraded performance

In d24dfd0, ClamAV (https://spamassassin.apache.org/) experienced degraded performance:

HTTP code: 200
Response time: 55 ms

Resolved: ClamAV performance has improved in 1d84444.


Command delayed when sent from another thread

Using run_command from the river-control protocol, https://github.com/riverwm/river/blob/c16628c7f57c51d50f2d10a96c265fb0afaddb02/protocol/river-control-unstable-v1.xml, worked as expected when my application was single-threaded. The command was dispatched and my application received the resulting callback and River layout_demand immediately. However, when I moved the run_command code to a separate thread, I noticed odd behavior. The callback and layout_demand would only be received after another event was received in the same queue, as if the other event flushed the queue. As far as I can tell, it was the command being dispatched that was delayed, not the callback being received, because the layout_demand from River that should follow the command was also delayed.

Could you give some details about what you are doing? In particular what is being done on which thread?

The main thread runs the main dispatch loop,
fn main() {
    let mut layout_manager = LayoutManager::default();

    let conn = Connection::connect_to_env().unwrap();
    let mut event_queue = conn.new_event_queue();
    // `get_registry` has necessary side-effects.
    let _registry = conn.display().get_registry(&event_queue.handle(), ());
    event_queue.roundtrip(&mut layout_manager).unwrap();
    loop {
        event_queue.blocking_dispatch(&mut layout_manager).unwrap();
    }
}

and everything not handled by the other thread. The other thread is sometimes spawned during a LayoutDemand event. It runs a slow function, caches the result, and sends a command,
let control = Arc::clone(
    state
        .control
        .as_ref()
        .expect("River control should be initialized"),
);
let seat = Arc::clone(
    state.seat.as_ref().expect("seat should be initialized"),
);
let qhandle = qhandle.clone();
thread::spawn(move || {
    let layout = layout(usable_width, usable_height, view_count);
    CACHE.lock().unwrap().insert(key, layout);

    // River will send a new layout demand
    // if it receives a layout command.
    let control = control.lock().unwrap();
    control.add_argument("send-layout-cmd".to_owned());
    control.add_argument("owm".to_owned());
    control.add_argument("retry-layout".to_owned());
    control.run_command(&seat, &qhandle, ());
});

I guess the issue is that you need to flush the connection?

Could you put qhandle.flush() in the end of your control series?

Could you put qhandle.flush() in the end of your control series?

QueueHandle lacks a flush method. I only see freeze and make_data, https://docs.rs/wayland-client/latest/wayland_client/struct.QueueHandle.html.

Ah, yeah, it's on the queue itself. You could clone Connection, send it to other thread, and flush connection.

That worked. Although, the question remains, why do I need to flush the connection when sending from another thread?

Because when you do dispatch it does the flush automatically when you go back to it, however when you do that from another thread, you could be waiting on the epoll, but your other thread could send requests, thus they won't be flushed, because the main one is in epoll waiting.

I see. Perhaps this should be documented more prominently? Maybe a section on multithreading in the wayland-client top-level docs?

Well, the flush docs do say exactly that, but implicitly, they say that you must flush for your requests to reach the server.

However, a user is unlikely to look for the flush documentation unless they already know they need to flush the connection, and nothing in the top-level doc mentions flushing the connection.

I mean, I don't deny that more obvious docs could be better, it's up to @elinorbgr in the end.

Noted, we can improve the toplevel docs to make the need for flushing more obvious.


Displaying confirmation message before deleting a component from FormBuilder

Hi!
I was trying to implement a confirmation dialog before user tries to delete any component from the FormIO FormBuilder:

I found that there's a onDeleteComponent event for FormBuilder, but it seems to be triggered after the component has actually been deleted from the form. Returning true/false from this function changes nothing.
I know there's a confirmation message when trying to delete a group (e.g. columns layout) with nested items (the message says "Removing this component will also remove all of its children. Are you sure you want to do this?'"). I'd like to do the same, but for all components in the builder, not only grouped ones.
Is there any way to handle this currently or a PR would be needed?

I believe a PR would be needed. The onDeleteComponent is an event so it notifies you of that happening but does not allow modification of the flow. If you set up a PR with this change, it would probably be best to make it an option that can be passed in so that we don't change the default functionality.

If you haven't found it, the code is here: https://github.com/formio/formio.js/blob/master/src/WebformBuilder.js#L960-L970

I issued a PR with this change: https://github.com/formio/formio.js/pull/3396


Extract thumbnail image data when PIL can't read an IFD

Fix #151
This PR adds a fallback method to obtain a thumbnail image from a tiff/svs file when PIL can't open a thumbnail IFD. This is necessary because PIL's tiff reader can't read tiff images that are JPEG2k encoded.
In this case, the low res image determined to be the thumbail is extracted from the original tiff/svs image data.
To see the endpoint in action, run imagedephi gui and point your browser towards:
localhost:<port>/image/?file_name=<path/to/file>&image_key=thumbnail

Nothing to do with this PR directly, but I noticed it while testing.  We have a constant saying how tall an image would be in the GUI but not the maximum width.  When we hook it up, we probably want to specify the maximum width and height (and maybe make them something the url specifies if the UI ever needs different sizes).

Nothing to do with this PR directly, but I noticed it while testing. We have a constant saying how tall an image would be in the GUI but not the maximum width. When we hook it up, we probably want to specify the maximum width and height (and maybe make them something the url specifies if the UI ever needs different sizes).

#155


Regform locale

Implement locate restriction for latin.

@webknjaz  is it still actual?

I think, yes. Let's implement this in regform front-end.

:eto-ne-nuzhno:


different addresses are generated using same private key

I compared aptos and aptos-wallet-api by generating address using same private key, magically, I am getting 2 different addresses, this is a serious issue as a lot of transactions are failing, please either fix this, or mention it in the documentation

PS: the latter one 0x146 is the right one generated by aptos library, the same is also shown on all of the wallets, the left is generated using aptos-wallet-api

This error is because of passing privateKey with 0x. This issue is fixed in the latest code


Provide virtual method like IsSwipeAvailableFor(..)

As in title.
Provide virtual method so I can enable/disable swiping based on DataContext (and ViewHolder) - some item on list should have swipe left/right/top/bottom enabled - some not - based on it's data model.

Implemented, available in NuGet: https://www.nuget.org/packages/MvvmCross.AdvancedRecyclerView/1.15.2


Support Sphinx's caption option on the code-block node

https://www.sphinx-doc.org/en/master/usage/restructuredtext/directives.html#directive-option-code-block-caption
Sphinx allows to add a caption to a code block (e.g. a filename). We use this in some parts of the Symfony documentation and it would be great if we can add support for it in this library.

Failing test in Symfony's docs-builder repository
https://github.com/wouterj/symfony-docs-guides/actions/runs/4713936115/jobs/8359959701
4) SymfonyDocsBuilder\Tests\HtmlIntegrationTest::testBlocks with data set "code-blocks/code-caption.rst" ('/home/runner/work/symfony-doc...on.rst', '/home/runner/work/symfony-doc...n.html')
Failed asserting that two strings are equal.
--- Expected
+++ Actual
@@ @@
-'
\n
-
config/routes.php
\n
+'
\n

\n

1
\n

$foo='bar';
\n

\n

\n
-
\n
-
config/routes.php
\n
+
\n

\n

1
\n

$foo='bar';
\n

/home/runner/work/symfony-docs-guides/symfony-docs-guides/lib/docs-builder/tests/integration/HtmlIntegrationTest.php:29```

Yeah, we use that heavily in TYPO3 as well, will provide a test.


Feature request: Notification system for newly announced workshops

Some mechanism to be notified of newly announced Software Carpentry workshops in one's country would be very useful.

@simonthelwall do you want to be notified as an instructor or as a participant?

As a participant please. If you are building that functionality into the website, it might as well be added as a choice, perhaps multiselect checkboxes.

@simonthelwall I'm not sure if there are many workshops run that allow anyone to sign in… @jduckles any thoughts on this request?

Part of #795


fix: fix pom for artifactory deploy

After this change, and with appropriate ~/.m2/settings.xml file,
this will deploy successfully to artifactory:
sdk use java 11.0.11.hs-adpt
mvn deploy

Here's my settings.xml (replace username, and get encrypted password out of "User Profile" page in artifactory):
<?xml version="1.0" encoding="UTF-8"?>
<settings xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.2.0 http://maven.apache.org/xsd/settings-1.2.0.xsd" xmlns="http://maven.apache.org/SETTINGS/1.2.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <servers>
    <server>
      <username>YOUR_USERNAME</username>
      <password>YOUR_PASSWORD</password>
      <id>momento-java</id>
    </server>
    <server>
      <username>YOUR_USERNAME</username>
      <password>YOUR_PASSWORD</password>
      <id>momento-java-snapshots</id>
    </server>
  </servers>
  <profiles>
    <profile>
      <repositories>
        <repository>
          <snapshots>
            <enabled>false</enabled>
          </snapshots>
          <id>momento-java</id>
          <name>maven-java-local</name>
          <url>https://momento.jfrog.io/artifactory/maven-java-local</url>
        </repository>
        <repository>
          <snapshots />
          <id>momento-java-snapshots</id>
          <name>maven-java-local</name>
          <url>https://momento.jfrog.io/artifactory/maven-java-local</url>
        </repository>
      </repositories>
      <pluginRepositories>
        <pluginRepository>
          <snapshots>
            <enabled>false</enabled>
          </snapshots>
          <id>momento-java</id>
          <name>maven-java-local</name>
          <url>https://momento.jfrog.io/artifactory/maven-java-local</url>
        </pluginRepository>
        <pluginRepository>
          <snapshots />
          <id>momento-java-snapshots</id>
          <name>maven-java-local</name>
          <url>https://momento.jfrog.io/artifactory/maven-java-local</url>
        </pluginRepository>
      </pluginRepositories>
      <id>artifactory</id>
    </profile>
  </profiles>
  <activeProfiles>
    <activeProfile>artifactory</activeProfile>
  </activeProfiles>
</settings>

I did one deploy manually so there are some artifacts up there now:
https://momento.jfrog.io/ui/repos/tree/General/maven-java-local/com/google/code/simple-spring-memcached/momento-provider
You guys should test this before you send them the instructions, but they should be able to pull the artifacts by adding this to their consuming poms:
        <repository>
            <id>momento-java</id>
            <name>maven-java-public</name>
            <url>https://momento.jfrog.io/artifactory/maven-java-public</url>
        </repository>

I did make a new repo in artifactory, so I could get it to tell me the dang authentication config :)  Now that I know what that config is supposed to look like though, I should test it and see if it works with the old repo, and if so, delete the new one.  Will ping you on that in a sec.


Scheduler Page - when click on connection it does not filter on that page

Describe the bug
https://www.berrycast.com/conversations/4b239b80-59bd-5c65-adae-810b192b33f8

https://www.berrycast.com/conversations/6d5f70c9-9b28-5648-8d11-513b67cc544e


RST_STREAM sent by a Server Streaming client does not signal the gRPC layer

Environment Details

Helidon Version: 4.1.1
Helidon SE
JDK version: 21.0.4
OS: Mac OS 14.6.1

Problem Description
RST_STREAM sent by a Server Streaming client does not signal the gRPC layer
Steps to reproduce:

Start a Server Streaming connection to Helidon using a client like Postman and confirm you're receiving streaming data from the server.
Place a breakpoint in the Http2ServerStream.rstStream() method
Use the Postman cancel button to send a rst_stream to terminate the connection
The state changes to CLOSED but the Http2StreamWriter (passed here: https://github.com/helidon-io/helidon/blob/51b942a90aa9f2416ce6b32687748ee2b7701e75/webserver/http2/src/main/java/io/helidon/webserver/http2/spi/Http2SubProtocolSelector.java#L60) continues to accept data from the gRPC layer.
Our application above the gRPC layer needs an exception or some signal from Helidon to know that it needs to stop streaming data.

The "TODO" comment in the Http2ServerStream.rstStream() method seems to indicate this might be a known issue

@danielkec Do you know if this issue was addressed as part of the "revamp" in #9520 ? Thanks!

Hi, I am afraid it is not, we have to yet address that

@danielkec Ok, thanks for the reply. Do you have an idea on the timeline or which release this might land in?


fix redis-cluster-py link

Pull Request check-list

[ ] Do tests and lints pass with this change?
[ ] Do the CI tests pass with this change (enable it first in your forked repo and wait for the github action build to finish)?
[ ] Is the new or changed code fully tested?
[ ] Is a documentation update included (if this change modifies existing APIs, or introduces new ones)?
[ ] Is there an example added to the examples folder (if applicable)?

Description of change
I'm not sure if you want to keep the link to this package, from what i understand a lot of things have changed, for example atomic transactions are now possible (at least that's what i know).
so let me know what you decide.

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 74.86%. Comparing base (dcc1713) to head (3ed27ba).
Report is 2 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main      #99      +/-   ##
==========================================
- Coverage   75.17%   74.86%   -0.32%
==========================================
  Files         132      132
  Lines       34480    34447      -33
==========================================
- Hits        25922    25790     -132
- Misses       8558     8657      +99

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Super slow and stuttering zoom

Hello,
First of all, thanks for the plugin.
I'm trying to use it with a cluster of around 250 elements.
However, zooming stutters a lot, with lags in the order of several seconds:
https://i.gyazo.com/db929377681aa9ca2a7f06c745618086.mp4
The example seems to handle around 380 just fine:
https://leaflet.github.io/Leaflet.markercluster/example/marker-clustering-realworld.388.html
What can I do?

Hi,
thanks for your feedback. I also implemented a demo in the playground with 10.000 entries. This demo runs without a noticeable lag on zooming. Would it be possible to provide a demo, which illustrate the problem, so I check and debug the issue.
Thanks

@ruilvo Do you had the chance to create any demo for this issue, or did you already solved this problem?

Sorry, haven't had the time to work on this. I'll close it and reopen when I get the time to debug the issue any further if the need arises.


chore: rust maintenance

Removes wee-alloc due to lack of maintenance
Adds rustfmt config and format all files

I only had wee_alloc because of the Workers cold start problem, should've taken it out long ago

There is lol_alloc, should we want to still use a small allocator.

Probably doesn't matter too much anyway.

Good to know! Thanks for the insight. Hopefully isn't really an issue we have to worry about anymoroe.


Changing name of Action "Kill Process" to "Force Quit".

Self explanatory really, doing so will bring it in line with Apples '⌘⌥Esc' terminology which is how must people 'Kill Processes'.

I agree.

I don’t like name changes that will break people’s established mnemonics. For instance, I always hit K to find this action, and that would stop working. Also, “Quit” and “Force Quit” really only apply to applications. I thought the Kill action could be used for any process (many years ago - I could be wrong as I can’t actually find a way to do that).
Possible things we could do:

Now that details are working, we could add something more descriptive for this action that includes the phrase “Force Quit” somewhere.
We could name it “Kill Process (Force Quit)” so old mnemonics will still match it, but so will new ones like “FQ”.
We could make one the name and one the label, since both are matched against when typing. (Though I don’t know if that’s true for actions or just objects. And I’m not sure if actions can have both, but if they inherit from QSObject, it should work.)

While we’re on the subject, what do you think about changing the alternate action for Quit to be Kill Process (instead of Quit Others)?