BUG safe_import_context incompatible with typing in CI

Hello, the CI tests cannot read the requirements of classes (Objective, Solver, Dataset, ...) when their methods are typed.
with safe_import_context() as import_ctx:
    from torch import Tensor

class Objective(BaseObjective):
    name = "fake"
    parameters = {}
    min_benchopt_version = "1.3"

    requirements = [
        "pip:torch",
    ]

    def set_data(self, data: Tensor):
        pass

Thanks for flagging this!
I doubt that typed parameters would impair detecting/installing requirements.
Could you pls provide a link to the CI error? Also, a link to the repository would be great!

Hello, https://github.com/JuliaLinhart/benchmark_sbi/actions/runs/5461731758/jobs/9940110771.
Tensor is imported in safe_import_context and used as typing in set_data.

it's not a typing issue I think but more that pytorch is not properly installed on the SBI benchmark.

It is a typing issue. Switching to the following (outside of the sage_import_context) fixes the CI issue (but it is ugly).
try:
    from torch import Tensor
    from torch.distributions import Distribution
except:
    Tensor = TypeVar("Tensor")
    Distribution = TypeVar("Distribution")

great !

Message ID: @.***>

Some features of importlib (like MetaPathFinder) can be used to modify the behavior of import, for instance to create "fake" modules when they are not available, which would solve the current issue.
See

https://python.plainenglish.io/metapathfinders-or-how-to-change-python-import-behavior-a1cf3b5a13ec
https://docs.python.org/3/library/importlib.html#importlib.abc.MetaPathFinder.

I think this could be used within safe_import_context. What do you think @tomMoral, @mathurinm, @Badr-MOUFAD ? If you think this is worth it, I can try to write a minimal working example.

This looks indeed promising, creating a fake object automatically when the module is not found would solve many issues.
If you can craft a minimal working example, that would be super helpful

Here is a MWE to replace all imported members (packages, modules, ...) within a context by Mock objects from unittest. Accessing the attributes of a mock object returns a mock object (super cool!), so there is never an issue.
import sys

from contextlib import contextmanager
from importlib.abc import MetaPathFinder, Loader
from importlib.util import spec_from_loader
from unittest.mock import Mock

class MockLoader(Loader):
    def __init__(self, name: str):
        self.name = name

    def create_module(self, spec):
        return Mock(name=self.name)

    def exec_module(self, module):
        module.__path__ = []

class MockFinder(MetaPathFinder):
    def find_spec(self, fullname, path, target=None):
        return spec_from_loader(fullname, MockLoader(fullname))

@contextmanager
def mock_import():
    try:
        sys.meta_path.insert(0, MockFinder())
        yield
    finally:
        sys.meta_path.pop(0)

with mock_import():
    import notapackage  # no error
    from notapackage.notamodule import notamember

import notapackageeither  # error

I think it is only necessary to activate this behavior in benchopt install and when looking for the dataset/solver names and parameters.


Potential support for red alert?

How likely is it in the future to add the support for large-scale real time strategy game like Red Alert? Training games like these probably requires tons of compute and time, but it would be really exciting if Retro could initiate such an attempt. Would definitely love to help if there's a possibility.

It looks like there is a version for PS1, so it's likely possible, someone already tried to integrate a PS libretro core here: https://github.com/openai/retro/issues/169
One of the bigger problems though is that training on pixels could be hard, and that I think that training on these sorts of games is often done via self-play which is unlikely to work with the libretro setup.

Closing this since we're unlikely to add support for this particular game.  You're welcome to fork the project to add that game though.  We could potentially add support for a new core in the main release but it should likely be tested out in a fork first.


Update toha mainstream

The css moved to scss, I would have to update lots of files. Leaving it as it is in the meantime

After hugo-toha/toha#785 has been fixed, I look forward to fixing my variables and merging this :)


Client side test coverage

I'm working on client side test coverage in my own fork.  I'm happy to create PR's, but wasn't sure if the extra coverage would be useful or not to others.. any interest?
edit: this is on the 0.4.0 branch

+1

Here is the branch I am working from.
Currently a work in progress, but open for any suggestions.

we're definitely pro-tests so please submit a PR for 0.4.0 when you're ready with some tests and we can review them for merge.
Thanks @cdriscol

@cdriscol I can't assign to you specifically but consider yourself assigned :-)
Can you estimate the work required here before you can provide a PR with good coverage and quality tests? I would like to see this for 0.4.0 so we can introduce testing on the angular side.

@lirantal - I should have angular 100% tested this week.

@cdriscol  That would be an amazing accomplishment, looking forward.

@cdriscol Dude this looks awesome.  We will also be merging in some admin functionality that will need tests.  Do you want to volunteer for these when the functionality is added? :)  https://github.com/meanjs/mean/pull/676

@trainerbill - I can throw in some tests for that!  I've been really busy this week with some other stuff - but will be jumping back into my test branch today and tomorrow.  I'll take a look at the admin module as well.


DBeaver does not work with proxy.pac file

I work in a company that has a very large and complicated proxy.pac file, which can change almost on a daily basis.
Currently, I have to download the latest version of the proxy.pac file, then figure out which proxy I would use, and enter that into the proxy field for DBeaver.
It would make my life much easier if I could simply supply the proxy.pac file to DBeaver, and have it figure out how to setup the proxy.

Another thought is to have DBeaver optionally use what is setup for the OS or browser. Maybe this way is easier?

Do you mean HTTP(S) proxy for drivers/artifacts download?
Or SOCKS proxy for database connections?
Generally that would be great to have some automation here but I'm not aware about any standard proxy configuration formats/systems.

Will be implemented in #6281


Flatpak support?

Noticing a strong lack of Lens at Flathub.  Any chance of a Flatpak version?
What would you like to be added:
Flatpak version of Lens
Why is this needed:
Pretty much every distribution of Linux except Ubuntu has moved to Flatpak applications. Gnome software dropped Snap support a few months ago.
Picture Lens here:

Fedora 32 will be out in a few days.
There's a developers guide here:
https://docs.flatpak.org/en/latest/

I did a little research.. so:
electron-builder doesn't seem to support flatpak?

https://github.com/electron-userland/electron-builder/issues/512

While electron-forge does seem to support flatpak:

https://github.com/electron-userland/electron-forge

As a non-nodejs developer... that's as far as I'm digging! :-)

This is correct, because electron-builder doesn't support it (and there has been several issues opened on this topic since over 4 years ago ).
The reason? who knows.. there isn't an actual reason to not support it from what I can tell..
We can in fact package an AppImage's into flatpak

extract the AppImage eg: https://github.com/starkers/joplin-flatpak/blob/master/build.sh#L11-L13
drop the contents into flatpak (see above repo)

The only caveat is that sometimes we need to run it the application without the sandbox
Its a little bit of a hack I suppose but it works. I will attempt to PR support for this via the npm run + Makefile + azure pipelines on this project as soon as I'm able :crossed_fingers:

Any news about this, please?

Any news about this, please?

I just put something together tonight: https://git.shivering-isles.com/sheogorath/lens-flatpak
It's a first draft and currently starts with an error but is basically functional. Next step is to submit it to Flathub

:fireworks: electron-builder now natively supports flatpak...
https://github.com/electron-userland/electron-builder/issues/512

Recent electron-builder versions with flatpak support require >= node14. Which means that we need Electron 12 update first (#3572)

Update: I have gotten it to build and run, however I am still missing:

The application icon doesn't work
The tray icon doesn't work
verify that kube sync works as expected.

Thanks @Nokel81, do you have a working build for flatpak, I'm really interested if yes :)
Thanks a lot for your work !

Thanks @Nokel81, do you have a working build for flatpak, I'm really interested if yes :)
Thanks a lot for your work ! PS : Happy new year in advance !

Hi, can you share the Flatpak link even if it's not fully functional.

@mbana I cannot as there is no link this was just trying to create a flatpak locally, I have not be able to work on this recently.

@mbana I cannot as there is no link this was just trying to create a flatpak locally, I have not be able to work on this recently.

OK. How did you create the Flatpak locally? It would be nice if you share the set of commands you ran.

I put together a (somewhat) working version of a Lens flatpak over here: https://github.com/lensapp/lens/pull/6957
Would appreciate any kind of feedback! :crossed_fingers:

Ahh nice, I missed that :+1:
If I'm seeing that correctly, that one "re-packages" the existing snap for Lens, right? So I guess this does not really duplicate that work, as I assume a "native" build would be preferable in the end? I.e. if that gets accepted we could eventually just switch that over to this one?

I also tried to put a flatpak together using the debian package provided by https://github.com/MuhammedKalkan/OpenLens

I guess this can be closed now: https://flathub.org/apps/details/dev.k8slens.OpenLens
Really awesome work @proletarius101, thanks a lot!

I guess this can be closed now: https://flathub.org/apps/details/dev.k8slens.OpenLens
Really awesome work @proletarius101, thanks a lot!

I second that. Awesome work!
The README.md just needs updating so people know a Flatpak version now exists.

It would be awesome if lensapp would take ownership of the flathub release. Currently, https://flathub.org/apps/dev.k8slens.OpenLens screams "Unverified".

under the new closed-source model of lens, no longer have any interest in it.

also, for any lurkers, here are some awesome open source alternatives to the now-closed source lens:
k9s, kdash, Headlamp or Seabird.


Update nameserver record in DNS without CIDR network portion

This regressed in 0.2.x.
Signed-off-by: Erik Hollensbe<EMAIL_ADDRESS>

hat tip to @glimberg who found this


[Bug] Pihole registers all queries from the same client

DNS Bind9 -> Pihole chain makes Pihole to register all queries as the same client (10-42-0-79.bind-service.dns.svc.cluster.local)

Tried with forwardedHeaders.trustedIPs Traefik configuration but it not seems to work.


Accept: Manage characters

Description
Acceptance Test for #32
Ability to create, read, update, and delete characters belonging to a particular user.
UAT Environment for executing the acceptance flow
Acceptance flow

User Logs in
User clicks the "Create" button and fills the form
User Clicks accept and observes their character on the index
User clicks the edit icon, and makes some changes in the form
User clicks accept and observes the new values have appeared on their character
User clicks on the delete icon for their newly created character
User confirms their action in the deletion modal and observes the character is gone.

It was super easy to create a character and they showed up! I was able to edit and delete them with ease. Fantastic!
Some Suggestions:

Would be helpful if there was a dropdown feature for race/class/faction as to avoid typos for better organizing.
Will there be subclasses added? It would be great to have that eventually
The scroll for the level/downtime isn't ideal since a slight movement and suddenly I'm level 20 with 4000000 downtime. I'd remove this and make it a manual entry for both.
Sort would be helpful if the most recent characters added were first instead of on the second page
On the character page EDIT > UPDATE > would be ideal if it went right to SAVE instead of CONTINUE. Save a click

-Kate Ruscito


Sidebar: anchors with links

Fetched content from webpack-contrib plugins/loaders does not show up nicely when a header contains a link, such as https://webpack.js.org/loaders/coffee-loader/#-literate-http-coffeescript-org-literate-

Related: https://github.com/webpack-contrib/bundle-loader/pull/47

@simon04 sure, I can pick this up though I'm a little unsure of what the best fix/behavior would be...

It seems like it would be hacky to fix this at the component level, probably best in the markdown utility?
Also, what should the resulting markup look like? Probably removing them instead of having some double-linking behavior (link within a link), right?

Ideally the link text (anchor title) wouldn't contain any markdown syntax. Could this be achieved by editing the getAnchors function? A trimming of backticks seems to already be in place.

Ideally the link text (anchor title) wouldn't contain any markdown syntax.

Yeah, I understand that part -- just wanted to make sure there wasn't an expectation that we would actually turn those into nested <a> tags. getAnchors should be the right place to do this... I'll get started on this and few of the other UI/UX issues as soon as I have a chance.

With https://github.com/webpack-contrib/bundle-loader/pull/47 and similar PRs merged, there's a new similar problem:

Ok I guess we can reg ex that out as well.


docs: update Algolia DocSearch support links

Pre-flight checklist

[x] I have read the Contributing Guidelines on pull requests.
[ ] If this is a code change: I have written unit tests and/or added dogfooding pages to fully verify the new behavior.
[ ] If this is a new API or substantial change: the PR has an accompanying issue (closes #0000) and the maintainers have approved on my working plan.

Motivation

We created a new Discord global to Algolia instead of having a separated one for DocSearch, so in this PR I've updated the link to it.
We also now recommend using the support page instead of emails in order to properly scope the R&D area to forward ticket to.
Test Plan

Netlify preview
Test links

Deploy preview: https://deploy-preview-9755--docusaurus-2.netlify.app/
Related issues/PRs

Thanks 👍


Hyperion with Arduino Yun (openwrt)

I tried to download hyperion with my Arduino Yun Shield. But it didnt want to start at all. I downloaded the tar and extracted it because the installation skript failed.
root@YunShield:/mnt/sda1/hyperion/bin# ./hyperiond
./hyperiond: line 1: syntax error: unexpected word (expecting ")")
Is there any way to get this working with openwrt? We could use the serial to the Arduino to trandmit via the adalight "protocol". Then I could use the xbmc addon to send data to the Arduino yun. Any help with that?

The binaries you downloaded are for the Raspberry Pi and will not work on your processor. You will have to compile the Hyperion sources for your processor, but at first glance it looks like the processor may be a little too lightweight for Hyperion to run on.

Closing this, since it was just a question and the Arduino yun is just not made for this. Maybe its possible, but I wont use it anyways.


fix RuntimeErrors from msal package

MSALAuthCodeHandler.parse_id_token rewritten into different functions.
AsyncConfClient.validate_id_token raised uncaught RuntimeError from the msal package whenever a invalid token was presented.
Rearanged some things so there is a None for token_claims returned, as expected, instead of the the exception

Many thanks @yoerankaniok, appreciate the PR 🥇
However, the original design was as intended since there are some case where you just want to parse the token without validate it.
The main use case is when MSAL will present the token as expired but the session (when on multi node arch) has still a valid refresh token and we would like to use it without kicking out the user.
In these cases parsing the token (without validation) will allow us to do "silent refresh" of token.
Given these use case would you like to think about a design when both options are still presented?
Another small request - please make sure to run black for formatting the code - thank you!

Hi @dudil, happy to help :)
I see, missed that use case, i'm sorry! Could not find a place where you called the function with validate false so figured defaulting to validating the token would be wise.
I've updated the code + ran black, please have a look
Kind regards, Yoeran


Lack of email verification in block-core/nodes leads to acceptance of invalid email syntax and domains.

Currently, the email verification process within block-core/nodes is insufficient, as the form fails to differentiate between valid and invalid email addresses. This poses a risk of accepting invalid syntax (e.g<EMAIL_ADDRESS>or non-existent domains (e.g., "_@domain").
Solution: Integrate a regex pattern such as /^\w+([.-]?\w+)@\w+([.-]?\w+)(.\w{2,3})+$/ at the backend to ensure validation of email addresses, enhancing the verification process and accepting only valid email formats.

I would like to work on this @sondreb @miladsoft


Unable to fetch Jira issues: 401 Unauthorized: Basic authentication with passwords is deprecated.

Is the Comply project still actively supported?
It's a great project after you get it figured out, but the Jira integration no longer works because of changes on Jira's API access.
https://confluence.atlassian.com/cloud/deprecation-of-basic-authentication-with-passwords-for-jira-and-confluence-apis-972355348.html
I was wondering if this is something that would ever be fixed?
Thanks

Try to use an API Token instead of your password. It worked for me.


SW-3535 Add permissions for planting zones

In preparation for being able to configure the number of monitoring plots on a
per-planting-zone basis, add read and update permission logic for planting zones.
There are no create or delete permissions since planting zones are only created
via shapefile import, and are never deleted independently of the planting site.

Current dependencies on/for this PR:

main

PR #1114   👈

This comment was auto-generated by Graphite.


Git LFS - cannot push files on windows

Hi!
I'm testing the new functionality from v5.1.0 - git LFS support.
I do everything what's said in doc (https://keybase.io/docs/git/index).
Everything is working for normal repo but when I try to push the LFS connected file I got an error:

git push
Initializing Keybase... done.
Syncing with Keybase... done.
Uploading LFS objects: 100% (1/1), 1.2 GB | 0 B/s, done
invalid character 'U' looking for beginning of value
error: failed to push some refs to 'keybase://team/xxx/Repo2'

Propably Uploading LFS objects part isn't done because it not take any time to upload file.
Is it a bug or maybe am I doing something wrong?
I'm on Windows 10.
My log id: 2dc714afb17faf0439897d1c
Thanks!

I'm having this same problem, looks to me like the invalid character 'U' part is some failure looking for an encryption key or something like that.

What shell/command prompt are you both using on Windows?
Also, what exactly does this command show when you run it within your local checkout:
git config --get lfs.customtransfer.keybase-lfs.args

Thanks for trying out this new feature!

I was using git bash (which I believe is MINGw64)
that command returns
\"lfs origin keybase://team/**[MYTEAMNAME]**/**[MYGITNAME]**\"
What's in brackets is indeed correct and where I'm trying to send the files LFS uploads.

Ah hrm.  Maybe you don't need the quotes on git bash.  Can you edit your .git/config file to remove both \" from that option and see if it helps?

(I tested this in the normal command prompt I think.)

In the config file the "s have three slashes before them on either side.
\\\"lfs origin keybase://team/[MYTEAMNAME]/[MYGITNAME]\\\"

Oh sorry.  Both sets of \\\" should be removed for the test.

No luck, still the invalid character 'U' error.

Hmm strange.  The git config command above now shows it without any backslashes or quotes, right?
Also, what does this return:
git config --get lfs.customtransfer.keybase-lfs.path

I wonder if that contains backslashes or something else that the git shell can't handle.

Yeah the command from earlier now shows without slashes or quotes
git-remote-keybase
The new command outputs the above.

Ok thanks.  I am stumped for now, this kind of thing is hard to debug.  Maybe you put the \\\"s back and try it under regular command prompt, until I get the chance to test it myself?  I don't often get time on a Windows machine.

I tried it already with git bash, PowerShell and normal CMD - the error is the same everywhere.

Oh right, I tried GitHub Desktop as well, same error there.

Thanks all.  I just got some testing in on a Windows device, and you'll never guess this one simple trick to getting it to work...
Instead of completely removing each \\\" from the .git/config file, you can change them into \".  That solved it for me.
I swear I tested the current code in CMD before and got it to work, so I'll have to go back and try to figure out how to make it work automatically in the next release.  Sorry for the inconvenience.  Let me know if the above helps.

That seems to have done it, LFS files are uploading now. Thanks a ton.

Yes that helps.
But I have another problem. :(
I have big (~5GB) repo and after uploading push hasn't finished.
I'm waiting already few hours but it seems stuck after:
Syncing with Keybase... done.
@ThePhxRises didn't you have such a problem?

Uploads are pretty slow.  But if you do a keybase log send I can take a look and see what it's doing.

I leave it for the night and it hasn't finished. :(
Here is my log id: 280bee8fce552c2d2fe21d1c
Thank you for your support!

I did around a 3.5gb push the other day, which took around an hour and a half-ish.

@kubalobo thanks.  In your logs I see a bit of weirdness with the KBFS service being restarted occasionally during the middle of the transfer (not sure why), and also possibly some pressure based on the size of the disk.  But unfortunately, the git logs themselves don't contain much info.  keybase log send only sends back a portion of the logs, and I guess the interesting parts of the git operation must have taken place before this portion of the logs.
If you're willing, could you please zip up all the *.git.* files in %APPDATA%\Local\Keybase and share them with me in our keybase://private/kubalobo,strib folder?  That way I can get more info to see what the problem was.  Thanks!

I put everything there.
Thank you!

Thanks, that was helpful!  I think we probably need to re-think the way we upload huge collections of LFS files written all at once.  We're trying to sync them all at once, instead of in small batches, and I think that's causing stress and maybe hanging on your system.  I'll make an internal ticket to address.
In the meantime, if possible, I recommend only pushing small batches of files if you can break them up that way.  Sorry for the bad experience, and thanks for the report!

Hi!
I just confirm that separating my files for independent commits and pushes result with no errors so it is a workaround.
Thank you again!


Android WebView Bugfix: loadUrl() ignores default encoding

Closes #17385
The loadUrl() method ignores the default encoding on Android KitKat.
Motivation
I manage to reproduce the issue described by #17385 using Android KitKat (emulator).
Test Plan
I tested by modifying the RNTester project with the changes below. I have tested on Android KitKat (emulator) and Android Oreo 8.1 (device - Nexus 6p).

     <title>Hello Static World</title>
-    <meta http-equiv="content-type" content="text/html; charset=utf-8">
     <meta name="viewport" content="width=320, user-scalable=no">

-
Hello Static World

+
Hello Static World olá

Release Notes
[ANDROID] [BUGFIX] [WebView] - Default encoding for html content on older Android versions

WebView PRs are on hold pending approval of the WebView proposal at https://github.com/react-native-community/discussions-and-proposals/pull/3

WebViews have now been moved to react-native-community/react-native-webview. Would you like to relaunch this PR there? I'm sure the maintainers would love your contribution. 🙂


R200 Color Exposure Crashes

Using dev.set_option with any auto-exposure related functions always crashes (before or after start). (color_exposure crashing makes sense because it is listed as having only 0 as a value.) IR exposure functions as expected.
RealSense error calling rs_set_device_option(device:0x1faa020, option:COLOR_EXPOSURE, value:0):
    VIDIOC_S_CTRL error 22, Invalid argument

The enumerate devices demo lists them as being settable.
    COLOR_EXPOSURE : 0 .. 0, 1
    ...
    R200_AUTO_EXPOSURE_MEAN_INTENSITY_SET_POINT : 0 .. 4095, 0
    R200_AUTO_EXPOSURE_BRIGHT_RATIO_SET_POINT : 0 .. 1, 0
    R200_AUTO_EXPOSURE_KP_GAIN : 0 .. 1000, 0
    R200_AUTO_EXPOSURE_KP_EXPOSURE : 0 .. 1000, 0
    R200_AUTO_EXPOSURE_KP_DARK_THRESHOLD : 0 .. 1000, 0
    R200_AUTO_EXPOSURE_TOP_EDGE : 0 .. 65535, 1
    R200_AUTO_EXPOSURE_BOTTOM_EDGE : 0 .. 65535, 1
    R200_AUTO_EXPOSURE_LEFT_EDGE : 0 .. 65535, 1
    R200_AUTO_EXPOSURE_RIGHT_EDGE : 0 .. 65535, 1

Trying to 'get' the exposure time also crashes.
Is it possible to get or set the exposure on the color stream?
Thanks!

Required Info

Camera Model
R200

Firmware Version
<IP_ADDRESS>

Operating System & Version
Ubuntu 16.04 LTS

Kernel Version (Linux Only)
4.4.0-24-generic

Build System
Makefile

Duplicate of #19.


Perform unit testing using jest

In this milestone, my coding partner and I write tests using Jest library to test the functions that add and delete items to the to-do-list. We ensure that all tests pass.

Thank you for your feedback


More clear ReadMe for Installation

I got messed up during installation process, because skipped the part in beginning about it's dependency on NavMeshComponent.
So I made it more clear!
Also, update asset creation path, it is created in Navigation folder, not AI

Thanks!


How to block this script in hosting service

Hi
I propose some little hosting services and i want to block this script on my server for obvious security reasons..
Can you "help" me to block this script ?

Remove php

@PatrickePatate The best bet for blocking this script and others like it would be to install some security solutions (firewall, anti-virus, security monitoring tool, etc) onto your server and, if these solutions don't detect the script, add some custom signatures/indicators/etc for identifying the script in question. Exact implementation would depend on the nature of your needs, which level of authority you have at the server in question (root, admin access, user-level access, etc), in some cases, the type of server, server OS, etc. There are many possible solutions, but there isn't enough information known currently to provide any "best" solution for you. For example, there's a package available on GitHub which I currently maintain, built using PHP, which is capable of blocking this script when a user attempts to upload it via a HTTP request (standard HTML webform, cURL, etc); It's good at doing what it's specifically designed to do, but it would be useless in other situations (like uploading the script via FTP, SSH, etc).

check and utilize this tool: https://github.com/rfxn/linux-malware-detect
check and utilize this tool: https://github.com/emposha/PHP-Shell-Detector (many, many false positives but detects almost everything in return)
find php files writable by server - that's The Usual Suspects
regulary check system's processes with ps (experience required)
regulary check unusual php files in /tmp dir (experience required)

to find and remove webshells in general. Good luck - you will need it.

I think you're going about this wrong. If you have to block the file on the server, you're already vulnerable.
You should have the as little user file upload vectors available on your website as possible. Wherever you do have such a vector, you need to make sure that the file is saved at the very least with an extension that will never be executed as code (or preferably somewhere the user can't access directly, like outside the web root).
You can't just "block" this specific file on the server - that's not how security works in general, especially when dealing with executable code. People will always find ways to pack the code in such a manner that your automated system will not detect. Blocking code this way is simply a band-aid over a larger problem, which is the fact that files are uploadable to your server at all and can be called by remote users.
Finally, if you need uploadable PHP code by nature of your service, I would suggest fully sandboxing the code. Many "run PHP online" solutions exist in the wild, and I believe this is the way that they prevent server hijacking. They don't run regexes or checksums on the files to check if they are blacklisted - instead, they let the code run (whatever it is) and sandbox it. See PHPSandbox.
Good luck.

Given that prior to jazrak's reply above, the most recent reply to this issue was dated August 29th from last year, and we haven't heard from the OP since the issue was first opened, it would be good to hear from the OP too, as to whether or not the issue is still relevant for them. If it isn't, it could be closed by a repository maintainer.

there are many script like this one on the wild, so what you really need is not only block this script, but all other script like this one, c99, r57 etc
so you can try what @Maikuolan and @milosdjakonovic already suggest


Missing resolve from path import

When trying to build using solid-start-vercel, it throws an error due to missing resolve import.
Error message:
            input: resolve(join(config.root, appRoot, `entry-client`)),
                   ^

ReferenceError: resolve is not defined
    at Object.build (./node_modules/solid-start-vercel/index.js:26:20)
    at ./node_modules/.pnpm/solid-start@0.1.0-alpha.69_dd0a6a10e5f7b16d27d7286030fa2e9f/node_modules/solid-start/bin.cjs:39:13

The build goes successfully when adding the missing resolve import.

Thanks


Update #curl_headers args

[x] Have you followed the guidelines in our Contributing document?
[x] Have you checked to ensure there aren't other open Pull Requests for the same change?
[x] Have you added an explanation of what your changes do and why you'd like us to include them?
[ ] Have you written new tests for your changes? Here's an example.

[x] Have you successfully run brew typecheck with your changes locally?
[x] Have you successfully run brew tests with your changes locally?

This is a follow-up to #15389/#15351.
Recently Livecheck::Strategy#page_headers was updated to use Utils::Curl#curl_headers internally. As part of those changes, the related call stopped using Strategy::DEFAULT_CURL_ARGS, presumably because most of those args are part of the default curl args in #curl_headers. The exception is that DEFAULT_CURL_ARGS contains "--max-redirs", MAX_REDIRECTIONS.to_s and this needs to be added to the #curl_headers call in #page_headers to return to the previous behavior.

Besides that, the default curl args in #curl_headers also include --fail, which is deliberately omitted from livecheck's DEFAULT_CURL_ARGS. This flag isn't desirable within the context of livecheck because I've seen servers in the past that return a failing status code but still provide the output that we need (it's bad behavior but we can't control what remote servers do). The response body would be omitted when --fail is used, so it isn't appropriate or necessary for livecheck.
This PR removes --fail from the default curl args in #curl_headers and adds an explicit --fail arg to the #curl_headers call in CurlDownloadStrategy. This assumes that the --fail arg was intended for that context and is appropriate.

The response body would be omitted when --fail is used, so it isn't appropriate or necessary for livecheck.

What response body? Isn't it empty anyways for --head requests?

The response body would be omitted when --fail is used, so it isn't appropriate or necessary for livecheck.

What response body? Isn't it empty anyways for --head requests?

Oh gosh, yeah, it is empty. I've been spinning a bunch of different plates lately and was thinking of something else. Thanks for the sanity check.


Fix Public IP detection - Fix issue when seeip.org is unreachable #1241

The script does work when seeip.org is unreachable, so I changed the policy to define the public IP.
It solves the issue #1241
CHANGELOG
Added

Timeout limit on each try to solve the IP to avoid long waits;
Extra public IP providers as failovers;

Changed

the script only will try to solve an IP if the ENDPOINT is empty;

Removed

Unneeded output of CURL commands on IP detection;
Duplicated code;

Solves #1241

Thanks 🙏 I updated the seeip.org endpoint

Thanks again, this is great 😄


Airspeed sensor calibration displayed in QGC for multicopters

Not sure yet what is going on - I suspect its for users who haven't configured the airframe type yet and get QGC in a bad state without restarting it.

Fixed in 48d7295be65e091d45d37a258ff2be821d18db4c


add condition to prevent running endTestSession() twice

A fix for commit [0be0322].

Previously, endTestSession() was being called twice. It didn't matter before, but now we have to ensure it's only called once (thanks to this new pull request: https://github.com/silverstripe-labs/silverstripe-testsession/pull/30/).
The reason it's called twice is that it is called once when the SilverStripeAwareInitialiser object is destroyed, and then once again when the shutdown handler is run. Both of these cases are useful (e.g. if an E_FATAL is generated elsewhere, __destruct is never called directly, the object simply disappears - but with the register_shutdown_handler() it will at least be called once).
This method therefore needs to ensure that it only runs the code inside itself once.

We've changed to psr-2 so you'll need to space indent your new code. ;0

@tractorcow, I replaced the tab indent with space indent and squashed. Please check the new commit [299cde3].


[FR] Don't reload a single PDF to memory multiple time

Steps to reproduce

Get yourself a scanned pdf file (100 pages, 100mb)
Create new note in a vault
Make x10 "rectangular selections", or ... are they called backlinks? for each page (total count is 1000 links)
Watch your RAM go away

Expected behavior
The links shouldn't take more space than an original file they are linked to. (In my case, I need 7gigs of RAM just to view my note, while not really continuing the actual work -this is bad).
Actual behavior
The page shouldn't be duplicated in memory for each rectangular selection.
This slows down my PC, also images don't load.
Screen recordings or screenshots (sandbox vault)

Obsidian debug info

PDF++ debug info
-

Error messages

Actually, I've gone through only 40 pages of my document and am already out of RAM

First of all, this is not an unexpected behavior, so I relabeled it as a feature request.
Second, it's unusual that a PDF document takes up 1MB for each page. It's too large. I recommend you compress it before importing it to your vault.
Third, I'm curious whether this inefficient memory usage is also the case for Obsidian's native embeds or not. Can you try it?

Also, you can enable the Paste as Image option in the PDF++ settings to avoid reloading the huge PDF document again and again.

Closing this as there is a workaround (paste as image). But it might be addressed in the future together with #46 and #113.


⚠ Fetchers has degraded performance

In d8acd7d, Fetchers ($STATUS_URL) experienced degraded performance:

HTTP code: 200
Response time: 253 ms

Resolved: Fetchers performance has improved in 1643b96.


QA 2016.8

This is now on staging.  GitHub should link to the relevant issues, but let me know if anything is unclear.

Fix missing image (#524, #530)
Redirect from homepage to sponsor prospectus page (temporary) (#532)
Send emails when presentations are saved in the admin (#496, #402)
Add proposal type for education summit (#494, #521)

"Redirect from homepage to sponsor prospectus page (temporary) (#532)" - passes QA
"Add proposal type for education summit (#494, #521)" - passes QA
"Fix missing image (#524, #530)" and "Send emails when presentations are saved in the admin (#496, #402)" still have some issues.

#524, #530 should be fixed by f3b4950 now on Staging.

#496 is working; emails just weren't getting sent to<EMAIL_ADDRESS>(see https://github.com/PyCon/pycon/issues/402#issuecomment-139369872).
#524, #530 now pass QA


hiii

[x] Additional markup is supported, including @mentions, #references, links, emphasis, and HTML tags.
[x] List syntax is required.

You can nest lists below, too!

[x] This item is completed.
[ ] This item is not complete.

[x] Additional markup is supported, including @mentions, #references, links, emphasis, and HTML tags.
[x] List syntax is required.

You can nest lists below, too!

[x] This item is completed.
[ ] This item is not complete.

hii

hiiii


Work with redis "createCluster" throw a TypeError: this.subClient.psubscribe is not a function

Hello, I'm using the following versions of socket.io and redis, with Node.js v18.13.0
<EMAIL_ADDRESS>"^8.0.1",
    "express": "^4.18.2",
    "redis": "^4.5.1",
    "socket.io": "^4.5.4",

I have written the following test code based on the documentation https://socket.io/docs/v4/redis-adapter/ and https://github.com/redis/node-redis/blob/master/docs/clustering.md.
import express from "express";
import http from "http";
import { Server as SocketServer } from "socket.io";
import { createAdapter } from<EMAIL_ADDRESS>import { createCluster } from "redis";

const app = express();
  const server = http.createServer(app);
  const sio = new SocketServer(server);

  const pub = createCluster({
    rootNodes: [
      { url: "redis://<IP_ADDRESS>:6379", password: "password" },
      { url: "redis://<IP_ADDRESS>:6379", password: "password" },
      { url: "redis://<IP_ADDRESS>:6379", password: "password" },
    ],
  });
  const sub = pub.duplicate();

  pub.on("error", (err) => {
    console.log(`[err] PUB redis cluster: ${err}`);
    throw new Error("redis cluster error");
  });
  sub.on("error", (err) => {
    console.log(`[err] SUB redis cluster: ${err}`);
    throw new Error("redis cluster error");
  });

  await pub.connect();
  await sub.connect();

  sio.adapter(createAdapter(pub, sub));

  sio.on("connection", (socket) => {
    console.log(`hello: ${socket.id}`);

    socket.on("disconnect", () => {
      console.log(`goodbye: ${socket.id}`);
    });

    socket.onAny((evt, data) => {
      console.log(`from: ${socket.id}`, `- [${evt}]: ${data}`);
    });
  });

  app.get("/ping", (req, res) => {
    res.send("pong");
    return;
  });

  server.listen(5139, () => {
    console.log("server is listen on: 5139");
  });

But when I run this code, I get a TypeError:
TypeError: this.subClient.psubscribe is not a function
    at new RedisAdapter (/path/to/project/node_modules/@socket.io/redis-adapter/dist/index.js:88:28)
    at new <anonymous> (/path/to/project/node_modules/@socket.io/redis-adapter/dist/index.js:48:16)
    at Namespace._initAdapter (/path/to/project/node_modules/socket.io/dist/namespace.js:93:24)
    at Server.adapter (/path/to/project/node_modules/socket.io/dist/index.js:166:17)
    at initServer (file:///path/to/project/src/server.js:35:7)
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)

Node.js v18.13.0

I have tested this cluster pubsub with redis-cli and everything works fine when using redis-cli -c.
When I don't use createCluster and switch to use createClient everything works fine.
- const pub = createCluster({
-   rootNodes: [
-     { url: "redis://<IP_ADDRESS>:6379", password: "password" },
-     { url: "redis://<IP_ADDRESS>:6379", password: "password" },
-     { url: "redis://<IP_ADDRESS>:6379", password: "password" },
-   ],
- });

+ const pub = createClient({
+   url: "redis://localhost:6379",
+   password: "password",
+ });

When I run this code, everything looks ok.
This is very strange, can anyone help me?

Hi! It seems the redis package does not currently support PUB/SUB within a cluster: https://github.com/redis/node-redis/issues/2065
I think you will have to use the ioredis package for now:
const io = require('socket.io')(3000);
const redisAdapter = require('@socket.io/redis-adapter');
const Redis = require('ioredis');

const startupNodes = [
  {
    port: 6380,
    host: '<IP_ADDRESS>'
  },
  {
    port: 6381,
    host: '<IP_ADDRESS>'
  }
];

const pubClient = new Redis.Cluster(startupNodes);
const subClient = pubClient.duplicate();

io.adapter(redisAdapter(pubClient, subClient));

@darrachequesne I switch to use ioredis, everything works fine. Thankyou! :relaxed:


Use Object.keys() instead of for..in construct

As per documentation...

The Object.keys() method returns an array of a given object's own enumerable properties, in the same order as that provided by a for...in loop (the difference being that a for-in loop enumerates properties in the prototype chain as well).

I run into this issue in IE11 where I have to polyfill Array.prototype.includes. This is then enumerated as well and causing weird issues.
Note that Object.keys works for arrays as well, so nothing is broken by this change.

@manuelbieh Can you please have a look at this?

ping @manuelbieh

Not sure why this wasn't merged after approval. I've fixed conflicts.

Sorry, I'm currently working on Geolib v3 behind the scenes so v2 has had a pretty low priority for me recently. If you are interested in helping me maintaining the lib I can add you as contributor. Just drop me a line!

No thank you, it was a one time I needed your lib and now I just wanted to clear out my list of pending PRs :)

Ok ;)


[MM-57994] Hide Calls buttons/actions if plugin is not enabled

Summary
PR addresses some confusing behaviour for Calls on mobile. We'd be rendering the "start call" button even when the plugin was disabled (or uninstalled). The original intent was to advertise the feature existed and prompt users to reach out to their system admins to get it enabled.
Now that the plugin ships pre-packaged, this is not really needed any longer, and it caused more harm than good as some customers were confused to see the buttons there at all times.
@cpoile Changes are minimal. Let me know if I am missing anything. I think some of the logic in useTryCallsFunction could be deprecated but I wasn't sure especially since we don't yet support config updates over websocket (e.g. plugin getting disabled after the app initial load). I felt it may be best to retain it for now.
Ticket Link
https://mattermost.atlassian.net/browse/MM-57994
Release Note
Calls buttons and actions are now hidden if the plugin is not enabled

lgtm as long as is backwards compatible

There shouldn't be any compatibility concerns here since we are just adding client-side functionality.

@streamer45 I'm not sure if it's related to conflicts or even a build issue at all but, the test builds for this PR did not get posted to https://community.mattermost.com/core/channels/mobile-test-builds
Do you know any details about how this works? I can just try removing and re-adding the label but for some reason it's not clear to me if the pipeline is producing as build.

@DHaussermann Let me try to merge the conflicts and we can check again.


Implemented request #103

This implements feature request #103

Disabled swipe-to-refresh on all fragments extending AbstractListFragment.
Added refresh menu item in overflow menu to allow user to refresh the
content in *ListFragments.
Added refresh menu item to *DetailsFragments for consistency. But
kept the swipe to refresh action as well.
Moved showRefreshAnimation() from AbstractListFragment to UIUtils as it is
now used for detailed fragments as well.
Added SwipeRefreshLayout to DetailsFragments layouts to be able to show
the refresh animation
Introduces new class AbstractDetailsFragment to reduce code duplication.

Didn't thoroughly check the code, but from a first look i have the following comments:

I don't agree with removing the swipe to refresh from the lists. I admit tinkering with the swipe distance, but not remove it nor make it overly difficult to trigger. It's a standard pattern on Android, it is in production since the beginning, users are used to it and removing it will cause unnecessary confusion.
I don't object to adding a "refresh" option on the overflow menu (as long as it is hidden). I'm not in favor of it because it's a duplication of functionality, but i'm not against it (as long as the overflow menu doesn't have many options. If in the future it gets more "crowded", the refresh option is a candidate to go).
ItemId shouldn't be on the refactored abstract details fragment. That info is specific to each concrete fragment, and isn't abstract. The fact that in most cases there is only one id doesn't matter, as conceptually that info should be maintained by the fragment that knows what it means and what to do with it. In fact, in the episode details fragment there are 2 item ids (tvshowid and episodeid), which shows that you can't trust that there is only one. In the abstract fragment you don't really need the itemid, except in the sync function, which can call a virtual method overriden in each fragment to fill the necessary info (i might have missed it somewhere else).
The album details fragment didn't include a refresh on purpose. The thing is, there isn't a way to sync a single album (or a single artist), and music collections can be big, so triggering a full music sync (potentially slow) when the user is expecting just an album sync (supposedly quick)  doesn't feel right. Furthermore, the need for a single album sync isn't really that great because its info isn't volatile: in the tvshow and movies there is the "seen" bit which is volatile and it's useful to keep synced. Now, you could say "what about music videos, they are the same and also have a sync"... alas, i never claimed i was consistent :)... The thing is that i believe that a music video sync doesn't take as long as the music library, so i kept it.
By the way, there isn't a single album sync implemented because i was lazy - it's not as straightforward as the others (foreign keys on artists/genres) - and because i really think it's not as necessary as single tvshow/movie sync.
Summing up, i'm not convinced we should have a full music library sync triggered on an album details view.

Now, nitpicking:

I understand that this refactoring is easier to do on one big lump, but it's really difficult to review this many changes, and it is much easier for bugs to slip by. In the future i would appreciate smaller commits.
Try changing your settings to use spaces (4) instead of tabs. I don't want to enter in this holy war, but the fact of the matter is that all the existing code is using spaces and it should be consistent. Likewise, there are some settings regarding parameter alignment that you could review, as i saw some diffs that were only due to whitespace.
Just make the hostConnection/HostInfo in the abstractDetailsFragment and friends protected and drops the getters. Or at least make the getters protected, no need for them to be public.

On Wed, Nov 4, 2015 at 12:29 AM, Synced Synapse<EMAIL_ADDRESS>wrote:

Didn't thoroughly check the code, but from a first look i have the
following comments:

I don't agree with removing the swipe to refresh from the lists. I
admit tinkering with the swipe distance, but not remove it nor make it
overly difficult to trigger. It's a standard pattern on Android, it is in
production since the beginning, users are used to it and removing it will
cause unnecessary confusion.

Ok, I will add it again.

I agree that the swipe to refresh is a standard pattern on Android and
removing it will probably confuse users. But I do not think that the way
Kore applies it, is standard. If you take a look at google's design
guidelines:
https://www.google.com/design/spec/patterns/swipe-to-refresh.html
you will see they specifically target lists where the most recent content
appears at the beginning of the list. This was also noted by axelsimon in
#103.
Another reason why I personnally wanted the refresh menu item, is that with
big lists it is very inconvenient to scroll back to the top of the list to
start the refresh when I find out a new artist is not yet available on Kore.

I don't object to adding a "refresh" option on the overflow menu
(as long as it is hidden). I'm not in favor of it because it's a
duplication of functionality, but i'm not against it (as long as the
overflow menu doesn't have many options. If in the future it gets more
"crowded", the refresh option is a candidate to go).

ItemId shouldn't be on the refactored abstract details fragment.
That info is specific to each concrete fragment, and isn't abstract. The
fact that in most cases there is only one id doesn't matter, as
conceptually that info should be maintained by the fragment that knows what
it means and what to do with it. In fact, in the episode details fragment
there are 2 item ids (tvshowid and episodeid), which shows that you can't
trust that there is only one. In the abstract fragment you don't really
need the itemid, except in the sync function, which can call a virtual
method overriden in each fragment to fill the necessary info (i might have
missed it somewhere else).

Ok, I will change it.

The album details fragment didn't include a refresh on purpose. The
thing is, there isn't a way to sync a single album (or a single artist),
and music collections can be big, so triggering a full music sync
(potentially slow) when the user is expecting just an album sync
(supposedly quick) doesn't feel right. Furthermore, the need for a single
album sync isn't really that great because its info isn't volatile: in the
tvshow and movies there is the "seen" bit which is volatile and it's useful
to keep synced. Now, you could say "what about music videos, they are the
same and also have a sync"... alas, i never claimed i was consistent :)...
The thing is that i believe that a music video sync doesn't take as long as
the music library, so i kept it. By the way, there isn't a single album
sync implemented because i was lazy - it's not as straightforward as the
others (foreign keys on artists/genres) - and because i really think it's
not as necessary as single tvshow/movie sync. Summing up, i'm not convinced
we should have a full music library sync triggered on an album details view.

I wasn't too sure about this either. I mainly added it for consistency. I
will change it back.

Now, nitpicking:

I understand that this refactoring is easier to do on one big lump, but
it's really difficult to review this many changes, and it is much easier
for bugs to slip by. In the future i would appreciate smaller commits.

Do you mean you would prefer the refactoring of the code in a separate PR
and use another PR to add the refresh option, in this case?

Try changing your settings to use spaces (4) instead of tabs. I don't

want to enter in this holy war, but the fact of the matter is that all the
existing code is using spaces and it should be consistent. Likewise, there
are some settings regarding parameter alignment that you could review, as i
saw some diffs that were only due to whitespace.

I prefer using spaces as well. However, I thought I was save using Android
Studio with its default settings. Do you have any pointers in what needs to
be changed regarding parameter alignment?

Just make the hostConnection/HostInfo in the abstractDetailsFragment
and friends protected and drops the getters. Or at least make the getters
protected, no need for them to be public.

Didn't notice that. Sorry about that.

—
Reply to this email directly or view it on GitHub
https://github.com/xbmc/Kore/pull/131#issuecomment-153523132.

On 04/11/15 14:14, Martijn Brekhof wrote:

I agree that the swipe to refresh is a standard pattern on Android and
removing it will probably confuse users. But I do not think that the way
Kore applies it, is standard. If you take a look at google's design
guidelines:
https://www.google.com/design/spec/patterns/swipe-to-refresh.html
you will see they specifically target lists where the most recent content
appears at the beginning of the list. This was also noted by axelsimon in
#103.
Quick suggestion here, which may or may not be smart, but if the swipe
to refresh action at the top of the library should be phased out, a
temporary solution to help users understand where the “refresh library”
action went would be to display a text on swipe.

Ie: you pull the from the top, and rather than seeing the refresh icon
appear, you see a message telling you the action has been moved to the
overflow menu.
Then in time, you just remove that, once people have adjusted to where
the action now is.
I realise however it might not be (easily) possible to show something
else on pull to refresh.
Cheers
axel

@poisdeux I believe you're reading that guideline too strictly. Are you defending that swipe to refresh can only be used in lists with items that have some kind of timestamp and are sorted in chronological order? That might be the ideal scenario, but i don't think is the only one. Take a look at the Drive app, or the Docs/Spreadsheets and you'll see the same pattern used here, and the items aren't arranged in chronological order.
Anyway, @axelsimon swipe to refresh will stay, though we can tweak the swipe distance to make it harder to trigger.
@poisdeux. Smaller commits would be nice. As for the current one, if it's not too much trouble, spliting it would be better, but it can go in as is.
In Android Studio take a look at Settings->Editor->Code Style. Don't use tabs, set the tab size and indent to 4 spaces, and the continuation indent to 8 (humm, i had something set to 6, but that doesn't make sense, i'll change it). Also keep an eye on spaces on expressions. It should be if ((expression1) || (expression2)), not if ( ( expression 1 ) ) || ( ( expression2 ) ) (spotted this somewhere, but it's not consistent).

@poisdeux Sorry i made a mistake. Don't get rid of the getters (hostconnection, etc). Just make them protected. I wasn't thinking straight.
One other thing: i'll probably change the name of the Abstract*Fragment sometime in the future. Abstract is a really general name and not very informative. These fragments aren't really that general, they can't be used as base classes for the Addons list/details for instance, because the sync functions don't apply. They should probably be named something like SyncListFragment/SyncDetailsFragment. If you have any suggestions they are welcome.

On Wed, Nov 4, 2015 at 8:44 PM, Synced Synapse<EMAIL_ADDRESS>wrote:

@poisdeux https://github.com/poisdeux I believe you're reading that
guideline too strictly. Are you defending that swipe to refresh can only be
used in lists with items that have some kind of timestamp and are sorted in
chronological order? That might be the ideal scenario, but i don't think is
the only one. Take a look at the Drive app, or the Docs/Spreadsheets and
you'll see the same pattern used here, and the items aren't arranged in
chronological order.

I agree that swipe to refresh can be perfectly used in other scenarios as
well. I was merely trying to point out that I do not consider those
scenarios standard.

Anyway, @axelsimon https://github.com/axelsimon swipe to refresh will
stay, though we can tweak the swipe distance to make it harder to trigger.
@poisdeux https://github.com/poisdeux. Smaller commits would be nice.
As for the current one, if it's not too much trouble, spliting it would be
better, but it can go in as is.

Ok, I will split it in three PRs:

Refactoring: introducing AbstractDetailsFragment
Add binding to LibrarySyncService for detail fragments, just as we did
for list fragments.
Add the refresh menu item

I will change this PR to represent 3 when 1 and 2 have been merged.
In Android Studio take a look at Settings->Editor->Code Style. Don't use

tabs, set the tab size and indent to 4 spaces, and the continuation indent
to 8 (humm, i had something set to 6, but that doesn't make sense, i'll
change it). Also keep an eye

That's actually the default.
What I find annoying is that auto-indent lines seems to add extra spaces.
See for instance:
https://github.com/xbmc/Kore/compare/master...poisdeux:refactor/abstractdetailsfragment?expand=1#diff-511f10a905a2bacb46e3e47d187e1722L562
This makes the PR bigger than it should be. Do you have any idea how I can
prevent this?

on spaces on expressions. It should be if ((expression1) || (expression2)),
not if ( ( expression 1 ) ) || ( ( expression2 ) ) (spotted this
somewhere, but it's not consistent).

—

Reply to this email directly or view it on GitHub
https://github.com/xbmc/Kore/pull/131#issuecomment-153842570.

Regarding the spliting, if it's not too much trouble i agree.
Regarding the auto-indent, i justo took a look, and my Android Studio is doing the same. I believe that the default changed in one of the latest versions and i didn't realize. Anyway, i have the following options set in Settings->Code Style->Java->Wrapping and Braces:

Method Call Arguments -> Align when multiline
Chained Method Calls -> Align when multiline

But given that these aren't the default, ignore my comment regarding the white spaces. If anything it's me that should revert to the default.
Nevertheless, you should check your tab settings, as new files are getting generated with tabs or 8 spaces indent.
What do you mean by "makes the PR bigger"?

On Fri, Nov 6, 2015 at 4:16 PM, Synced Synapse<EMAIL_ADDRESS>wrote:

What do you mean by "makes the PR bigger"?

The diffs of my Pull Requests contain a lot of whitespace diffs which are
not functional changes. So they should not actually be included. In other
words, it makes the DIFF of the PR bigger than it should be.
The two settings you mentioned seemed to fix the problem. As these are not
default, I think we should mention them in the README.md

—
Reply to this email directly or view it on GitHub
https://github.com/xbmc/Kore/pull/131#issuecomment-154434866.

Hey @poisdeux, i'm going to push some changes that add a simple PVR support. AFAICT it shouldn't conflict with your changes as they don't seem to touch the same files, but i'm going to upgrade gradle to the latest version, so you might want to check your builds after.

I am going to fix this PR now to represent adding the refresh menu item. I will rebase it on master so if you have a local copy of this branch please remove it.


[C++][Parquet] Disable LZ4 codec

As discussed in https://issues.apache.org/jira/browse/PARQUET-1241, the parquet-cpp's LZ4 codec is not compatible with Hadoop and parquet-mr. We must disable the codec until we resolve the compatibility issues.
Reporter: Deepak Majeti / @majetideepak
Related issues:

[C++] lz4 codec is not compatible with Hadoop Lz4Codec (relates to)

Note: This issue was originally created as PARQUET-1515. Please see the migration documentation for further details.

Antoine Pitrou / @pitrou:
The irony is that fastparquet switched to LZ4 block compression to ensure compatibility with parquet-cpp:
https://github.com/dask/fastparquet/pull/315

Antoine Pitrou / @pitrou:
I don't think we're going to disable it soon, but we'll be implementing the new LZ4_RAW codec in PARQUET-1998.


QtViewerDockWidget.isVisible does not seem to work in tests

isVisible does not seem to work in tests for QtViewerDockWidgets. Noticed when working on #4991
e.g., the following test:
def test_toggle_or_get_widget(make_napari_viewer):
    viewer = make_napari_viewer()
    viewer.window.add_dock_widget(QWidget_example(viewer), name='test')
    widget = viewer.window._dock_widgets['test']
    print(widget.isVisible())

prints False.
When manually testing plugin menu toggling widget, it does work as expected.
Have discussed this with @DragaDoncila who has noted this not working inside tests.
Related ref: https://github.com/napari/napari/pull/4991#discussion_r1368056355
cc @Czaki

I've experienced this with other qt tests before, definitely with the ActivityDialog and possibly also with the QtReaderDialog although my memories of that are more vague. I'll note also that we've tried using show=True with make_napari_viewer and that does not address the issue in the cases I've seen.

this should work:
def test_toggle_or_get_widget(make_napari_viewer, qtbot):
    viewer = make_napari_viewer(show=True)
    viewer.window.add_dock_widget(QWidget_example(viewer), name='test')
    widget = viewer.window._dock_widgets['test']
    qtbot.wait_until(widget.isVisible)
    assert widget.isVisible()

Qt requires time to show something

Wow @Czaki if this works I'm gonna be so happy 😂 it would be great if we could start putting together a testing guide and adding tips like this to it

Interesting, and also why do we need show=True ?

And in cases where the widget is not visible, how long will qtbot.wait_until(widget.isVisible) wait for max? Do i need to take care when I use this?

I also had problems with testing isChecked, I will test this approach there too.

Interesting, and also why do we need show=True ?

Because widget will not be visible if the parent object is not visible

And in cases where the widget is not visible, how long will qtbot.wait_until(widget.isVisible) wait for max? Do i need to take care when I use this (in case i cause timeout problems)?

wait_until (same as waitUntil) has a default 5 seconds timeout.  So you do not need to worry. If timeout is exceeded then the test will fail.

Hi there, just in case, some other methods/utilities that could be useful when checking widgets visibility when testing:

QWidget.isVisibleTo: https://doc.qt.io/qt-6/qwidget.html#isVisibleTo
qtbot.waitExposed: https://pytest-qt.readthedocs.io/en/latest/reference.html#pytestqt.qtbot.QtBot.waitExposed

Thanks all, I will close this and open a PR in docs to add some of this info to our docs.


HSEARCH-1108 Test programmatic API @MappedSuperclass full text field

https://hibernate.atlassian.net/browse/HSEARCH-1108
I hope I got the right test case.

Thanks @yrodiere. Fixed the name.
I'll merge it as soon as we get a green light from the CI.

Merged thanks!


Failed: java.io.FileNotFoundException exception on running test on safari

Node Version: 6.11.3
Protractor Version: 5.1.2
Angular Version: 4
Browser(s): Safari
Operating System and Version Mac OS Sierra

My protractor configuration file has browser capability like this :
 multiCapabilities: [
    {
      'browserName': 'safari'
    }]

Output from running the test
Error from running the test in safari (other browsers do not have this problem)

[safari #51]     Failed: java.io.FileNotFoundException: http://localhost:29917/session/658663C8-1A53-44CE-804E-F6A17E4675AB/element/node-CA121C93-F696-41AA-903C-270872F8F920/displayed
[safari #51]   Stack:
[safari #51]     WebDriverError: java.io.FileNotFoundException: http://localhost:29917/session/658663C8-1A53-44CE-804E-F6A17E4675AB/element/node-CA121C93-F696-41AA-903C-270872F8F920/displayed
[safari #51]         at WebDriverError (/usr/local/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/error.js:27:5)
[safari #51]         at Object.checkLegacyResponse (/usr/local/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/error.js:505:15)
[safari #51]         at parseHttpResponse (/usr/local/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/http.js:509:13)
[safari #51]         at doSend.then.response (/usr/local/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/http.js:440:13)
[safari #51]         at process._tickCallback (internal/process/next_tick.js:109:7)
[safari #51]     From: Task: WebElement.isDisplayed()
[safari #51]         at WebDriver.schedule (/usr/local/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/webdriver.js:816:17)
[safari #51]         at WebElement.schedule_ (/usr/local/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/webdriver.js:1921:25)
[safari #51]         at WebElement.isDisplayed (/usr/local/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/webdriver.js:2270:17)
[safari #51]         at actionFn (/usr/local/lib/node_modules/protractor/lib/element.ts:94:34)
[safari #51]         at Array.map (native)
[safari #51]         at actionResults.getWebElements.then (/usr/local/lib/node_modules/protractor/lib/element.ts:484:67)
[safari #51]         at ManagedPromise.invokeCallback_ (/usr/local/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:1366:14)
[safari #51]         at TaskQueue.execute_ (/usr/local/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2970:14)
[safari #51]         at TaskQueue.executeNext_ (/usr/local/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2953:27)
[safari #51]         at asyncRun (/usr/local/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/promise.js:2813:27)Error
[safari #51]         at ElementArrayFinder.applyAction_ (/usr/local/lib/node_modules/protractor/lib/element.ts:482:23)
[safari #51]         at ElementArrayFinder.(anonymous function) [as isDisplayed] (/usr/local/lib/node_modules/protractor/lib/element.ts:96:21)
[safari #51]         at ElementFinder.(anonymous function) [as isDisplayed] (/usr/local/lib/node_modules/protractor/lib/element.ts:873:14)
....

The problematic part of the spec file is the following:
      banner.button1.isDisplayed().then(function(result) {
          if ( result ) {
            banner.button1.click();
          }
      });

Is there a way I can workaround this problem or solve this?

Hi @no5419595
Which version of Safari are you using? When I look at the error and you explanation it more looks like a Safari Webdriver error instead of a problem with Protractor. Have you also tried the Safari Webdriver page?


Stylability

Thank you for this module. We'd like to be able to apply more styles to it using CSS, but it hasn't proven possible due to the way that styles are applied in this project.
I've made a fork that uses css classes instead of the current styling mechanism, and adds class names to every element. This makes it very easy to style.
https://github.com/karlvr/react-google-places-suggest
This removes the use of the styled-components dependency. I have put the default styles into a sample.css file. I figure that users can take what they'd like from those styles. I thought about trying to include it in the component build; couldn't work out how to; and it would make it a bit more work to override the existing styles.
This is obviously quite a change, so I'm not sure that you'd like to merge this. Perhaps you can think of a way to retain the existing behaviour, while supporting a className-based styling model. Whatever happens, I'm interested in your thoughts on this!
Best,
Karl

Hi @karlvr, thank your help.
The solution will be to expose some primitive with the basic behavior and let the user style components inside a renderProp:
import ReactGooglePlacesSuggest, {
  // To customize style
  List,
  ListItem,
  Prediction,
  // To use a default style
  // ListWrapper
  // ListItemWrapper
  // PredictionWrapper,
} from "react-interactive-component"

import styled from "styled-components"

const Wrapper = styled.div`
  width: 100%;
  position: relative;
`

export default class GoogleSuggest extends React.Component {
  state = {
    search: "",
    value: "",
  }

  handleInputChange = e => {
    this.setState({search: e.target.value, value: e.target.value})
  }

  handleSelectSuggest = (geocodedPrediction, originalPrediction) => {
    console.log(geocodedPrediction, originalPrediction) // eslint-disable-line
    this.setState({search: "", value: geocodedPrediction.formatted_address})
  }

  render() {
    const {search, value} = this.state
    return (
      <ReactGooglePlacesSuggest
        googleMaps={googleMaps}
        onSelectSuggest={this.handleSelectSuggest}
        autocompletionRequest={{
          input: search,
        }}
      >
        {({predictions}) => (
          <Wrapper>
            <input
              type="text"
              value={value}
              placeholder="Search a location"
              onChange={this.handleInputChange}
            />
            {predictions && (
              <List>
                {predictions.map(prediction => <ListItem {...prediction} />)}
              </List>
            )}
          </Wrapper>
        )}
      </ReactGooglePlacesSuggest>
    )
  }
}

I wrote this example quickly without testing anything. There is some work to do to make it functional, but if you understand the idea, it is nice!
I would be very glad if you help me upgrade this library to let user styling each component on his own.
Of course it will be a lot of breaking change so it will be a new version

Thanks for your quick reply! I quite liked the idea of using css classes, but that may be because we are using external CSS (less actually) files for our styling.
What you've suggested above looks like it lets the developer replace the entire set of markup for the component, is that correct? Maybe that's more work than people want to do out of the box.
Perhaps we could a styling configuration object instead, that would let you pass in classNames to use for each element, and doing so would turn off the default styles? Or simply a className prefix, and then we apply default suffixes to each element, and turn off the default styles. Or provide an option in the styling configuration object to keep or turn off default styles:
e.g.
<ReactGooglePlaceSuggest
styleConfig={{
    classNamePrefix: 'react-google-places-suggest-',
    defaultStyles: false,
}}
...
/>

Sorry I don't want to accord a privilege about one styling solution on an other. A lot of people use CSS-in-JS solution right now and can't handle css files in their stack.
For a major breaking change, I would like to let people choose to style the widget on their own with the solution they choose and do not force them to use css

Fair enough, what if such a configuration option could contain class names or style text like you're using with the styledcomponents?

I just remember there is a customContainerRender prop you can use to style the list as you want. Did you try using it?


Remove empty line

Coverage remained the same at 99.325% when pulling 97194d8a05eea94aa15d80b277f86db8fa37279a on adriansuter:patch-1 into f0e0ac16cdf6baee59196f258ee5854f43f4c6aa on slimphp:4.x.


The request to the Slack API failed when configuring alerts and reports

When configuring alerts and reports, I am seeing the following error in my production environment. I used the same exact Slack API token in my staging environment and had no issues. I have printed the token out in superset_config.py to verify. Is there some issue with using the same token in two different instances?
| superset [2022-12-17 00:34:00,175: INFO/ForkPoolWorker-31] Scheduling alert Test2 eta: 2022-12-17 00:34:00            │
│ superset Query for Test2 took 84.05 ms                                                                                │
│ superset [2022-12-17 00:34:00,361: INFO/ForkPoolWorker-31] Query for Test2 took 84.05 ms                              │
│ superset Screenshotting chart at http://superset:8088/superset/slice/85/?standalone=true                              │
│ superset [2022-12-17 00:34:00,372: INFO/ForkPoolWorker-31] Screenshotting chart at http://superset:8088/superset/slic │
│ superset Init selenium driver                                                                                │
│ superset [2022-12-17 00:34:00,375: INFO/ForkPoolWorker-31] Init selenium driver                                       │
│ superset Taking a PNG screenshot or url http://superset:8088/superset/slice/85/?standalone=true&standalone=3          │
│ superset [2022-12-17 00:34:11,699: INFO/ForkPoolWorker-31] Taking a PNG screenshot or url http://superset:8088/supers │
│ superset Report state: The request to the Slack API failed.                                                           │
│ superset The server responded with: {'ok': False, 'error': 'not_authed'}                                              │
│ superset [2022-12-17 00:34:12,363: INFO/ForkPoolWorker-31] Report state: The request to the Slack API failed.         │
│ superset The server responded with: {'ok': False, 'error': 'not_authed'}

browser type and version: chrome 108
superset version: 1.3.1

Additional context
I configured the environment variable SLACK_API_TOKEN via a helm chart under the subfield values.superset.supersetNode.env.SLACK_API_TOKEN. This environment variable is visible when I describe my main superset pod but not visible in superset-custom-env (it was visible in my staging's version of superset-custom-env).

🤷 not sure what to say, seems like it's an issue with your token or environment. You could try generation a new token for prod.

Token reuse shouldn't be a problem. Looks like you configured thinks correctly in your staging instance, I'd suggest you apply whatever you did there to prod :)

Yea I have SLACK_API_TOKEN set as an environment variable because I need it to read from an external secrets manager. I then call SLACK_API_TOKEN = os.getenv(SLACK_API_TOKEN, none) in my config overrides. I printed the token in my logs and it seems to appear fine. Just wanted to check that it wasn't an issue with the double-use. I'll keep looking, thanks

maybe your network is blocking access to the slack api?

Closing this as stale since it's been silent for so long, and we're trying to steer toward a more actionable Issues backlog. If people are still encountering this in current versions (currently 3.x) please re-open this issue, open a new Issue with updated context, or raise a PR to address the problem. Thanks!


how to close phonon indicator programmatically

hi everyone
i want to know which method use to close phonon indicatro programmatically
when i use the .close() method if i try to reuse .open on the same component, it just show the transparent background but the text and the indicator isn't show ?
can anyone help me please ?

Can you show you code?


bug: max call stack exceeded when duplicate /webrtc listeners added

Version:

  "dependencies": {
    "@chainsafe/libp2p-noise": "^14.0.0",
    "@chainsafe/libp2p-yamux": "^6.0.1",
    "@libp2p/peer-id-factory": "^4.0.0",
    "@libp2p/tcp": "^9.0.4",
    "@libp2p/webrtc": "^4.0.31",
    "@libp2p/websockets": "^8.0.4",
    "@multiformats/multiaddr": "^12.1.11",
    "@nodeutils/defaults-deep": "^1.1.0",
    "it-length-prefixed": "^9.0.1",
    "it-map": "^3.0.3",
    "it-pipe": "^3.0.1",
    "libp2p": "^1.0.8",
    "p-defer": "^4.0.0",
    "uint8arrays": "^4.0.6"
  },
  "devDependencies": {
    "test-ipfs-example": "^1.1.0"
  },

Platform:

Darwin Russells-MacBook-Pro-314.local 23.4.0 Darwin Kernel Version 23.4.0: Fri Mar 15 00:10:42 PDT 2024; root:xnu-10063.101.17~1/RELEASE_ARM64_T6000 arm64

Subsystem:

@libp2p/webrtc, AddressManagerInit, and packages/libp2p/src/transport-manager
Severity:

Medium
Description:

Possibly fixed by https://github.com/libp2p/js-libp2p/pull/2133
I accidentally had two /webrtc entries in my listen: array passed to createLibp2p. It took me way too long to figure out what was actually happening. Note that this does not happen for duplicate TCP listen addresses.
The error that surfaces is
╰─ ✔ ❯ node src/listener.js
Listener ready, listening on:
file:///Users/sgtpooki/code/work/protocol.ai/test/SgtPooki/js-libp2p-examples/node_modules/libp2p/dist/src/transport-manager.js:115
        return Array.of(...this.listeners.values()).flat();
                     ^

RangeError: Maximum call stack size exceeded
    at [Symbol.iterator] (<anonymous>)
    at DefaultTransportManager.getListeners (file:///Users/sgtpooki/code/work/protocol.ai/test/SgtPooki/js-libp2p-examples/node_modules/libp2p/dist/src/transport-manager.js:115:22)
    at WebRTCPeerListener.getAddrs (file:///Users/sgtpooki/code/work/protocol.ai/test/SgtPooki/js-libp2p-examples/node_modules/@libp2p/webrtc/dist/src/private-to-private/listener.js:18:14)
    at file:///Users/sgtpooki/code/work/protocol.ai/test/SgtPooki/js-libp2p-examples/node_modules/@libp2p/webrtc/dist/src/private-to-private/listener.js:20:25
    at Array.map (<anonymous>)
    at WebRTCPeerListener.getAddrs (file:///Users/sgtpooki/code/work/protocol.ai/test/SgtPooki/js-libp2p-examples/node_modules/@libp2p/webrtc/dist/src/private-to-private/listener.js:20:14)
    at file:///Users/sgtpooki/code/work/protocol.ai/test/SgtPooki/js-libp2p-examples/node_modules/@libp2p/webrtc/dist/src/private-to-private/listener.js:20:25
    at Array.map (<anonymous>)
    at WebRTCPeerListener.getAddrs (file:///Users/sgtpooki/code/work/protocol.ai/test/SgtPooki/js-libp2p-examples/node_modules/@libp2p/webrtc/dist/src/private-to-private/listener.js:20:14)
    at file:///Users/sgtpooki/code/work/protocol.ai/test/SgtPooki/js-libp2p-examples/node_modules/@libp2p/webrtc/dist/src/private-to-private/listener.js:20:25

Node.js v18.16.1

Which seems to stem from here:
https://github.com/libp2p/js-libp2p/blob/7ae6063dfbc754f95a2c4bd0a6bd146f2989a5f5/packages/libp2p/src/transport-manager.ts#L152C3-L154
Steps to reproduce the error:

You can reproduce this on my branch of a js-libp2p-examples fork, https://github.com/SgtPooki/js-libp2p-examples/tree/bug/repro-dupe-listen-max-call-stack. See the tiny diff of changes required to repro the error here: https://github.com/libp2p/js-libp2p-examples/commit/8abf359b1ea680ef915f01ed8ff73fa312dda59b

I also ran `` to update all libp2p deps and it's also reproducible on latest:
 @chainsafe/libp2p-noise  ^14.0.0  →  ^15.0.0
 @chainsafe/libp2p-yamux   ^6.0.1  →   ^6.0.2
 @libp2p/peer-id-factory   ^4.0.0  →   ^4.1.1
 @libp2p/tcp               ^9.0.4  →  ^9.0.24
 @libp2p/websockets        ^8.0.4  →  ^8.0.22
 libp2p                    ^1.0.8  →   ^1.5.1


Support atom-1.2.0

Fixes https://github.com/prrrnd/atom-git-projects/issues/51.

@hmatsuda Thanks! I'll merge :tada:

@prrrnd I'm big fan of this package. Thanks for merging!


More execution time to upsert records while using spring-data-cosmos saveAll function after moving to 5.8.0 version of spring-data-cosmos.

Query/Question
I updated my spring-data-cosmos jar from 5.3.0 to 5.8.0 version. I was excited about this as saveAll function was using bulk api under the hood when we are trying to write more than 1 record. I was under the assumption that saveAll will take less time than before as we are using bulk api. But it was opposite and bulk api took more time to update the records in cosmos than the non-bulk one. I have two questions.

Will I be seeing more execution time if I am going to use bulk api in future?
If yes, is there any flag or something I can set so that I can disable the use of bulk api and proceed ahead without it for saveAll.

We are running our apps on VMs hosted on Azure.
I am attaching the runtimes below:
Without bulk api(Using 5.3.0 version)
Records-9
First-1251ms
Second-992ms
With bulk api(Using 5.8.0 version)
Records-9
First-1473ms
Second-989ms
Why is this not a Bug or a feature Request?
I am trying to understand the behavior of new version of the api. Right now this is not either impacting or does not require adding any new feature.
Setup (please complete the following information if applicable):

OS: [ubuntu VM(hosted on Azure)]
IDE: [NA]
Library/Libraries: [com.azure.spring:spring-cloud-azure-starter-data-cosmos:5.8.0]

@kushagraThapar please help take a look

@vasantteja thanks for raising this issue, usually bulk APIs should take lesser time and achieve high throughput when writing to Cosmos DB, however, it also depends on the distribution of the data that is being inserted, number of cores on the processor (on Azure VM in your case), and some other factors. You can read more about it here - https://learn.microsoft.com/en-us/azure/cosmos-db/bulk-executor-overview
However, that being said, in general it should be more efficient. @trande4884 - can you please take a look at this and see if there is any perf issue in our azure-spring-data-cosmos SDK?

@vasantteja what tool are you using to pull those execution times?

Thanks @kushagraThapar for the inputs. @trande4884 I was using StopWatch from org.springframework.util.StopWatch to time this method. The pseudocode is as follows:
StopWatch timed = new StopWatch(); timed.start(); repository.saveAll(object); timed.stop();

@trande4884 Hi Trevor! Is there anything I can do to enhance the performance or is my process evaluating the time taken for this method wrong?

@vasantteja that framework seems to only be testing the runtime of the function, and not the execution time of the saveAll() query itself. Some of the additional time is likely the setup of the bulk operation but I have not had time to investigate yet, I'm hoping to have time to get to this next week to compare actual execution times.
In our readme there is information on setting up query metrics that would better track actual execution times and RU's.  Our saveAll query runs only once a week. In this case can we persist the connection using a parameter? If the connection is persisted I am assuming we will have a faster insertion times as we will do away with setUp of bulk operation.

@vasantteja - you cannot persist the connection. Connections created by Cosmos DB SDK are short lived. Even if you extend the connection timeout value to a higher value like a week, there is high chance of that connection getting dropped because of any movement of machines on the backend service or network blips. Machines restart all the time because of system and security updates. So it won't work.
However, in this regard, you can use a feature called as proactiveConnection Management. This will allow you to create connections upfront to all your partitions, and you can also maintain a healthy active connection throughout the application lifecycle. If for some reason the connection gets dropped, SDK will re-create the connection instantly.
You can leverage this class CosmosContainerProactiveInitConfig while creating CosmosClient through spring.
This is the API in CosmosClientBuilder ->
/**
     * Sets the {@link CosmosContainerProactiveInitConfig} which enable warming up of caches and connections
     * associated with containers obtained from {@link CosmosContainerProactiveInitConfig#getCosmosContainerIdentities()} to replicas
     * obtained from the first k preferred regions where k evaluates to {@link CosmosContainerProactiveInitConfig#getProactiveConnectionRegionsCount()}.
     *
     *

     *     Use the {@link CosmosContainerProactiveInitConfigBuilder} class to instantiate {@link CosmosContainerProactiveInitConfig} class
     *

     * @param proactiveContainerInitConfig which encapsulates a list of container identities and no of
     *                                     proactive connection regions
     * @return current CosmosClientBuilder
     * */
    public CosmosClientBuilder openConnectionsAndInitCaches(CosmosContainerProactiveInitConfig proactiveContainerInitConfig) {
        this.proactiveContainerInitConfig = proactiveContainerInitConfig;
        return this;
    }


docs(Leaflet.SmoothPolygons): add new plugin to docs

I developed new plugin to Leaflet map to work with paper.JS. In plans create fully custom canvas vectorish render layer.

@sanchezweezer please update the PR

We added the plugin in the refactoring where we moved the plugins into seperate files #7805


i can't connect to my account

OOB auth no longer works with google. https://stackoverflow.com/questions/71318804/google-oauth-2-0-failing-with-error-400-invalid-request-for-some-client-id-but is a clunky way to get around it.

unfortunately I can not resolve.
But will "plexdrive" be updated? otherwise I can no longer use it

That's up to the coders if they want to install a return hook into plexdrive

but then only I can not configure my account with new google credentials? I don't understand why nobody else complains ..

I guessed I picked a really bad time to switch server providers. Now I can't link my google drive to plexdrive since google made that change. Seems rclone found a workaround so I hope this gets updated soon as well.

Could you tell me how you solved it? I couldn't figure out how to do it.
At the moment I have old credentials that work, but with new ones I can't. Help

fork the repo and edit the drive/drive.go file to have http://localhost:1/ instead of urn:ietf:wg:oauth:2.0:oob  then build from source. Once you get the new plexdrive built, it will give you a different url that eventually will say this site can’t be reached or whatever but on that failing url there will be a "code" section. Copy that and paste it onto plexdrive.

fork the repo and edit the drive/drive.go file to have http://localhost:1/ instead of urn:ietf:wg:oauth:2.0:oob  then build from source. Once you get the new plexdrive built, it will give you a different url that eventually will say this site can’t be reached or whatever but on that failing url there will be a "code" section. Copy that and paste it onto plexdrive.

I tried doing this but it says the following:
Error 400: invalid_request
Localhost URI is not allowed for 'NATIVE_DEVICE' client type.

Could you tell me how to compile the code?

Could you tell me how to compile the code?

It's there in README.


Update tutorial.md

Removes mention of an error that don't occur, the template was created.

Fixes #...
Please check the following:

[ ] Do the tests still pass?[^1]
[ ] Does the code comply with the style guide?

[ ] Run make lint from the Wagtail root.

[ ] For Python changes: Have you added tests to cover the new/fixed behaviour?
[ ] For front-end changes: Did you test on all of Wagtail’s supported environments?[^2]

[ ] Please list the exact browser and operating system versions you tested:
[ ] Please list which assistive technologies [^3] you tested:

[ ] For new features: Has the documentation been updated accordingly?

Please describe additional details for testing this change.
[^1]: Development Testing
[^2]: Browser and device support
[^3]: Accessibility Target

Merged in bf6bfa5af4ee3487b5e550df02e8183239afb8d3


Better code recording

This improves generated code in three ways:

Code is generated in the right order
Variable names are shorter (image1_gb instead of image_Result_of_Gaussian_blur)
Comment headlines can be used to generate jupyter notebooks

Codecov Report

Merging #20 (fb60346) into main (7d19302) will increase coverage by 0.29%.
The diff coverage is 92.00%.

@@            Coverage Diff             @@
##             main      #20      +/-   ##
==========================================
+ Coverage   89.68%   89.97%   +0.29%
==========================================
  Files           4        4
  Lines         378      389      +11
==========================================
+ Hits          339      350      +11
  Misses         39       39

Impacted Files
Coverage Δ

src/napari_workflows/_workflow.py
86.13% <91.66%> (+0.58%)
:arrow_up:

src/napari_workflows/__init__.py
100.00% <100.00%> (ø)

Continue to review full report at Codecov.

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


Prevent bold font in time series

How do I prevent the font in the time series from being automatically bolded (as shown below @ 08 20:01:00)? I'd like to have the time series show only "font-weight: normal" and not bold.

There is no way to do it for now

Currently there is no way to do it. We use bold font there to highlight some "big" changes on the timescale. Just wonder why here you have 08 20:01:00 highlighted instead of 09 02:01:00. Maybe it's timezone issue? Do you have -4 offset?

I'm going to close the issue. If you'll have any question or updates - feel free to ping me.


Indexing read_row

Is there a way to access the results of read_row by index?
Ie,
while (in.read_row(one, two, three)){
    for(int i = 0; i < 3; i++){
      final = read_row_results[i];
    }
}

No, there is not. This is by design because
a,b
1,2

and
b,a
2,1

should parse in the same way.


C++ modules conformance

Now that Visual C++ 16.5 Preview 2 has decent support for C++ modules, I'm able to once again tweak C++/WinRT to support C++ modules as an alternative to precompiled headers. This is still experimental as there remain some minor issues, but it is getting very close.
The cppwinrt.exe compiler will now generate a winrt/winrt.ixx file that may be compiled as a module as follows:
cl /c /I . /experimental:module /EHsc /bigobj /std:c++17 /await winrt/winrt.ixx

This will compile all of the projected namespaces into a single winrt module. This step takes quite a while - around 2 minutes on my machine. But once that's built, much like a PCH, you can import the module into any (compatible) TU very quickly as follows:
cl /experimental:module /EHsc /std:c++17 /await app.cpp winrt.obj

Here's a sample app that you can use to test this:
import winrt;
#include <stdio.h>

#pragma comment (lib, "oleaut32")

// Note: these two are only needed when compiling with modules.
#pragma comment (lib, "ole32")
#pragma comment (lib, "advapi32")

using namespace winrt;
using namespace Windows::Foundation;

int main()
{
    Uri uri(L"http://kennykerr.ca");
    printf("%ls\n", uri.Domain().c_str());
}

Note the extra libs that are required when compiling with modules. This is a C++ compiler bug.
There's also an issue with coroutines - waiting for a solution from the C++ team.

I tried it with the new pull.
1>------ Build started: Project: cppwinrt_modules, Configuration: Debug Win32 ------
1>winrt.ixx
1>d:\agent_work\8\s\src\vctools\Compiler\CxxFE\sl\p1\c\module\writer.cpp:5261: sorry: not yet implemented
1>c:\temp\cppwinrt_modules\cppwinrt_modules\Debug\Generated Files\winrt\winrt.ixx(491,1): fatal error C1001: Internal compiler error.
1>(compiler file 'd:\agent_work\8\s\src\vctools\Compiler\CxxFE\sl\p1\c\module\utilities.h', line 39)
1> To work around this problem, try simplifying or changing the program near the locations listed above.

@mediabuff You need to use Visual C++ 16.5 Preview 2 or later.

Actually, it 16.5/P2.  But may be it's related to this error;
' c:\temp\cppwinrt_modules\cppwinrt_modules\main.cpp(1,13): error C2235: mismatching target architecture for compiled module interface for 'winrt' from 'winrt.ifc'
1>    c:\temp\cppwinrt_modules\cppwinrt_modules\main.cpp(1,13): error C2230: could not find module 'winrt''

Could be. It looks like you're trying to build this from the IDE. I would suggest following the instructions exactly as I demonstrated above from a single dev command prompt. Keep in mind that C++ module support is still very new and experimental.


[BUG] S3 PUT does not work for Office Files (Excel, Word, PowerPoint)

Type of Connector
Independent Publisher Connector
Name of Connector
Amazon S3 Bucket
Describe the bug
Trying to use the connector to put office files into an Amazon S3 bucket.
The PUT appears to work, but the file in the amazon s3 bucket is corrupted. The error is below:

File types tried:
.docx
.pptx
.xlsx
.png
.txt, .csv, and .pdf file work.
I retrieved the file contents via a SharePoint site, OneDrive, and another S3 bucket.
Is this a security bug?
No, this is not a security bug
What is the severity of this bug?
Severity 2 - One or more important connector features are down
To Reproduce

Create an instant cloud flow
Add an action to get a file (from sharepoint, onedrive, or s3). For this test I used 'Get S3 Object Content'
I have used a Compose step here to get the output, but it doesn't make a difference in the result.
use the put object to put the content to another bucket.

Expected behavior
The file is uploaded to the S3 bucket used in step #4. The file opens in its corresponding app without error. I've attached more informations3 put object information.txt
Environment summary
Power Automate
Amazon S3
OS - windows 10
Additional context
I've attached a file with the raw inputs and outputs for the s3 get and put actions.

To be clear - no error is received. The error appears when trying to use the file that was put into the s3 bucket.

@skjones91199 can you please add a sreenshot of your PUT action. Please include also possible transformations of your file content before you use the action.
I have recognized, sometime it make sence to use a compose action in which is initialized with the file content and passes the content as output to the PUT action.
Please try this:
File content --> compose --> PUT S3

Especially for a file stored in sharepoint, you must decode the content:

I use this formula for my test flow:
decodeBase64(body('Get_file_content')?['$content'])

Hope this helps
BR / MIchael

We're also have the same issue and the above steps didn't help https://github.com/microsoft/PowerPlatformConnectors/issues/3702#issuecomment-2475717133. I noticed the screenshot for 'Put Object' has a different green icon compared with us having the red icon. Is it the same connector?

I am also seeing the same problem. I inspected the XLSX after the transfer, the file size is bigger and it appears that a bunch of higher-value ASCII bytes seem to be inserted in odd locations. I'll try to do some canned tests tomorrow and see if I can add some artifacts to this issue.

Ahh, I see. @ckane I can confirm that the stream is not correctly encoded at AWS S3. I need to investigate into this issue.

Yes, I have a SharePoint "Get file content" block that is feeding into the "Put Object"
Using the "Code View" in the PowerAutomate UI, the inputs.parameters.body field is populated with @body('Get_file_content'), and yes, when I inspect a successful or unsuccessful flow run, and look at the "Parameters" tab of the "Put Object", I can see that the INPUT parameter body.$content contains the base64-encoded file contents. If I copy->paste that value from the PowerAutomate UI for the flow run, into a file on my system, then base64-decode the created file, the resulting raw file is not corrupted. It seems like it either gets corrupted inside the Put Object action due to some sort of string->binary or binary->string encoding conversion, or it gets corrupted during PUT into S3 due to an attempted encoding translation in S3.

In our case, the file put up in S3 needs to be available to our data scientists who have processes that depend on the file being in xlsx format.

Yeah, our use case is similar

Hi @ckane & @skjones91199,
sorry for the waiting but I have good news to you! I found the issue. The root cause was, that the Base64 encoded content from Power Automate was not converted into binary content for S3. This worked for plain text files such as CSV or Base64 encoded formats (PDF), but not for XLSX files.
Therefore, I have modified the script.csx and added a method that tries to convert the given content from base64 directly into binary content before sending the request. If the content can't be converted from Base64 it is directly passed "as is" without any changes to S3.
The fix is included in the pull request https://github.com/microsoft/PowerPlatformConnectors/pull/3731
Note: you can test the upcoming bug fix by importing the connector files from this repository by using Power Platform CLI pac connector create or pac connector update.
Have a nice weekend & BR / Michael


make gasmeter, district heating meter and oil meter and implement costs

copy structure of electricityy meter
use prices in default configs

started in branch kr-implement-different-meters-and-prices


[GHSA-86jx-wr74-xr74] Add affected product org.apache.zeppelin:zeppel…

…in-interpreter 0.8.2 < 0.11.1
This information was in the CVE metadata at https://www.cve.org/CVERecord?id=CVE-2024-31866

Many thanks for the PR. I took a look at the sources for zeppelin-interpreter
https://repo1.maven.org/maven2/org/apache/zeppelin/zeppelin-interpreter/0.11.1/zeppelin-interpreter-0.11.1-sources.jar
And the shell script that's updated in the PR on this advisory does not seem to be present. How would you feel about changing the artifact on this to org.apache.zeppelin:zeppelin? The mailing list seems to be talking about the zeppelin project as a whole rather than a single component.
https://lists.apache.org/thread/jpkbq3oktopt34x2n5wnhzc2r1410ddd

I took a look at the sources for zeppelin-interpreter https://repo1.maven.org/maven2/org/apache/zeppelin/zeppelin-interpreter/0.11.1/zeppelin-interpreter-0.11.1-sources.jar
And the shell script that's updated in the PR on this advisory does not seem to be present.

Thanks for digging in! While indeed zeppelin-interpreter does not contain interpreter.sh, it does reference it (https://github.com/apache/zeppelin/blob/v0.11.1/zeppelin-interpreter/src/main/java/org/apache/zeppelin/conf/ZeppelinConfiguration.java#L1018).
This of course begs the question if there's other code paths that reference interpreter.sh. While there are, I suspect they were not marked as affected because they're already sufficiently isolated.

How would you feel about changing the artifact on this to org.apache.zeppelin:zeppelin?

While I would be fine with marking 'zeppelin as a whole' affected by this advisory, since this section has "ecosystem": "Maven", I'm not sure if org.apache.zeppelin:zeppelin makes sense: there is only pom metadata at these coordinates (https://repo1.maven.org/maven2/org/apache/zeppelin/zeppelin/0.11.1/), no actual artifact. I would be concerned scanners that map Maven ecosystem groupId:artifactId coordinates to jar files would produce a false negative because it didn't find a jar with coordinates org.apache.zeppelin:zeppelin (but would pick up zeppelin-interpreter as that does correspond to a jar artifact).
I don't see an ecosystem in https://ossf.github.io/osv-schema/#affectedpackage-field that could represent 'zeppelin as a whole', unfortunately.


feat(statistics): don't restrict the label to uppercase style

@razvanMiu this is handled in this pull request https://github.com/eea/volto-eea-design-system/pull/202
When that will be merged we will no longer have this issue as such I would  be  inclined to close this pull request.
One thing that we will be missing in case we can't select it from volto-style-block is to have the ability to
set the text to uppercase, although I would be inclined to also have an action on the slate toolbar for slate
content