import error when importing from langchain import OpenAI on 0.0.151

got the following error when running today:
    from langchain.agents import MRKLChain, ReActChain, SelfAskWithSearchChain
  File "venv/lib/python3.11/site-packages/langchain/agents/__init__.py", line 2, in <module>
    from langchain.agents.agent import (
  File "venv/lib/python3.11/site-packages/langchain/agents/agent.py", line 17, in <module>
    from langchain.chains.base import Chain
  File "venv/lib/python3.11/site-packages/langchain/chains/__init__.py", line 2, in <module>
    from langchain.chains.api.base import APIChain
  File "venv/lib/python3.11/site-packages/langchain/chains/api/base.py", line 8, in <module>
    from langchain.chains.api.prompt import API_RESPONSE_PROMPT, API_URL_PROMPT
  File "venv/lib/python3.11/site-packages/langchain/chains/api/prompt.py", line 2, in <module>
    from langchain.prompts.prompt import PromptTemplate
  File "venv/lib/python3.11/site-packages/langchain/prompts/__init__.py", line 14, in <module>
    from langchain.prompts.loading import load_prompt
  File "venv/lib/python3.11/site-packages/langchain/prompts/loading.py", line 14, in <module>
    from langchain.utilities.loading import try_load_from_hub
  File "venv/lib/python3.11/site-packages/langchain/utilities/__init__.py", line 5, in <module>
    from langchain.utilities.bash import BashProcess
  File "venv/lib/python3.11/site-packages/langchain/utilities/bash.py", line 7, in <module>
    import pexpect
ModuleNotFoundError: No module named 'pexpect'

does this need to be added to project dependencies?

I am also dealing with the same issue

Seems like pexpect was recently added in https://github.com/hwchase17/langchain/pull/3580/files#diff-5f99ae6d8500359517f487845b0a2b2f6cad1e3d7751c501bdc9b99bd18aadc3R7 but I don't seem to see the new packaged added anywhere, unless I'm missing something

I'm facing the same issue as well

@vowelparrot for vis

Will fix. Thank you

The reason this slipped through is that it is a dependency of poetry itself. we will address this. Thanks for everyone's patience

Was there any solution to this or will I have to downgrade langchain version?

Downgrading is probably the fastest way currently, while this issue is getting fixed

As a WA you can simply install
pipenv isntall pyexpect
this will patch the issue until it is fixed

As a WA you can simply install pipenv isntall pyexpect
this will patch the issue until it is fixed

This does not help,. it will fail with:
    def _initialize_persistent_process(prompt: str) -> pexpect.spawn:
AttributeError: module 'pexpect' has no attribute 'spawn'

Ran into the same issue this morning. Manually installing pyexpect did not resolve it. Still getting "ModuleNotFoundError: No module named 'pexpect'". I had to downgrade langchain to version 0.0.150 by adding langchain = "==0.0.150" to the pipfile.

Ran into the same issue this morning. Manually installing pyexpect did not resolve it. Still getting "ModuleNotFoundError: No module named 'pexpect'". I had to downgrade langchain to version 0.0.150 by adding langchain = "==0.0.150" to the pipfile.

Yea same, jumped a version back and that one works :)

what file do you open to change langchain = "==0.0.150"? sorry im a little new on this ^^

what file do you open to change langchain = "==0.0.150"? sorry im a little new on this ^^

Ah, not a file, when you installed langchain where was command pip install langchain, you can specify which version to install with pip install -U langchain==0.0.150

Thanks! Doing progress now!

@Nacho48 If you are using pipenv, the line should be in your Pipfile. Otherwise, install directly like Vlado suggested

For windows you could just add your own class for PowerShell like this (until windows is supported):
from typing import List, Union
from uuid import uuid4
import re
import pexpect
from pexpect.popen_spawn import PopenSpawn

class PowerShellProcess:
    """Executes PowerShell commands and returns the output."""

    def __init__(
        self,
        strip_newlines: bool = False,
        return_err_output: bool = False,
        persistent: bool = False,
    ):
        self.strip_newlines = strip_newlines
        self.return_err_output = return_err_output
        self.prompt = ""
        self.process = None
        if persistent:
            self.prompt = str(uuid4())
            self.process = self._initialize_persistent_process(self.prompt)

    @staticmethod
    def _initialize_persistent_process(prompt: str) -> PopenSpawn:
        process = PopenSpawn(
            "pwsh -NoProfile", encoding="utf-8"
        )
        # Set the custom prompt
        process.sendline(f"function prompt {{'{prompt}'}}")

        process.expect_exact(prompt, timeout=10)
        return process

    def run(self, commands: Union[str, List[str]]) -> str:
        """Run commands and return final output."""
        if isinstance(commands, str):
            commands = [commands]
        commands = ";".join(commands)
        if self.process is not None:
            return self._run_persistent(
                commands,
            )
        else:
            return self._run(commands)

    def _run(self, command: str) -> str:
        """Run commands and return final output."""
        try:
            output = subprocess.run(
                f"pwsh -Command {command}",
                shell=True,
                check=True,
                stdout=subprocess.PIPE,
                stderr=subprocess.STDOUT,
            ).stdout.decode()
        except subprocess.CalledProcessError as error:
            if self.return_err_output:
                return error.stdout.decode()
            return str(error)
        if self.strip_newlines:
            output = output.strip()
        return output

    def process_output(self, output: str, command: str) -> str:
        # Remove the command from the output using a regular expression
        pattern = re.escape(command) + r"\s*\n"
        output = re.sub(pattern, "", output, count=1)
        return output.strip()

    def _run_persistent(self, command: str) -> str:
        """Run commands and return final output."""
        if self.process is None:
            raise ValueError("Process not initialized")
        self.process.sendline(command)

        # Clear the output with an empty string
        self.process.expect(self.prompt, timeout=10)
        self.process.sendline("")

        try:
            self.process.expect([self.prompt, pexpect.EOF], timeout=10)
        except pexpect.TIMEOUT:
            return f"Timeout error while executing command {command}"
        if self.process.after == pexpect.EOF:
            return f"Exited with error status: {self.process.exitstatus}"
        output = self.process.before
        output = self.process_output(output, command)
        if self.strip_newlines:
            return output.strip()
        return output

Should work for most use cases

The latest version should be fixed. The persistent Bash shell still doesn't support windows, but it shouldn't be a blocker for other usage

"persistence"-feature should work with that custom pwsh class in windows in the meantime


[Feat] Update to the new injured_count_per_age_group widget

Is your feature request related to a problem? Please describe.
Update to the new injured_count_per_age_group widget in the backend server
Describe the solution you'd like
Update the FE code to be compatible
Additional context
The new BE code is currently only dev branch and not in master branch or PROD.
More info is available at issue #1645 in anyway BE server project, Image:

@atalyaalon

@atalyaalon

@atalyaalon Let's discuss the design for this card

@atalyaalon Let's discuss the design for this card

Example of a returned json:
{
      "name": "injured_count_per_age_group",
      "data": {
        "items": {
          "00-04": {
            "fatal": 1,
            "severe": 2
          },
          "05-09": {
            "fatal": 1,
            "severe": 4
          },
          "10-14": {
            "severe": 5
          },
          "15-19": {
            "fatal": 7,
            "severe": 17
          },
          "20-24": {
            "fatal": 6,
            "severe": 39
          },
          "25-34": {
            "fatal": 7,
            "severe": 35
          },
          "35-44": {
            "fatal": 11,
            "severe": 36
          },
          "45-54": {
            "fatal": 11,
            "severe": 29
          },
          "55-64": {
            "fatal": 11,
            "severe": 12
          },
          "unknown": {
            "fatal": 1,
            "severe": 6
          },
          "65+": {
            "fatal": 13,
            "severe": 21
          }
        },
        "text": {
          "title": "Injury severity per age group in מחלף קמה - צומת פלוגות"
        }
      },
      "meta": {
        "rank": 14
      }
    }

Example of a returned json:
{
      "name": "injured_count_per_age_group",
      "data": {
        "items": {
          "00-04": {
            "fatal": 1,
            "severe": 2
          },
          "05-09": {
            "fatal": 1,
            "severe": 4
          },
          "10-14": {
            "severe": 5
          },
          "15-19": {
            "fatal": 7,
            "severe": 17
          },
          "20-24": {
            "fatal": 6,
            "severe": 39
          },
          "25-34": {
            "fatal": 7,
            "severe": 35
          },
          "35-44": {
            "fatal": 11,
            "severe": 36
          },
          "45-54": {
            "fatal": 11,
            "severe": 29
          },
          "55-64": {
            "fatal": 11,
            "severe": 12
          },
          "unknown": {
            "fatal": 1,
            "severe": 6
          },
          "65+": {
            "fatal": 13,
            "severe": 21
          }
        },
        "text": {
          "title": "Injury severity per age group in מחלף קמה - צומת פלוגות"
        }
      },
      "meta": {
        "rank": 14
      }
    }

@atalyaalon
If I remember correctly, "items" supposed to be an array, not an object

@atalyaalon
If I remember correctly, "items" supposed to be an array, not an object

@yuvalbl so at the time we decided it can be either an array or an object - see accident_count_by_severity widget

Created a new issue here


Create Single Page Responsive React Website

Website should be based on self-learning theme

I would like to work on this

Go ahead


Add voice transport and TwiML application.

Just some comments about ports that are confusing me. Everything else looks good.

:+1:


Very basic questions, hoping for help!

Hey there!
I am currently a MSc student and I have very minimal experience with coding and am at a bit of a loss using ImageDePhi.
I've got it working on Windows, where it opens in a browser and allows me to select the folder I want to redact PHI from WSI and where I want the images to end up. It will then run but the redacted version is the exact same as the original.
I was looking through some code on here but I do not know how to run the code. When the browser opens so does a terminal, which doesn't allow me to type. When I try to open the code from the Zip file I downloaded, it will open and close immediately.
I am fairly confident that this is a competency issue on my part and I apologize for bothering anyone but I would really appreciate some help as this seems like the only feasible and useful method for mass de-identifying WSI.
Thanks in advance!

Hi!
Thank you for taking the time to reach out. ImageDePHI is still in the initial development stage and therefore may not do everything you need yet. That being said there are few things that might help you get unstuck.
First I would recommend extracting the zip file, if you haven't already. Then open a command prompt terminal, you can search for this in the start menu of windows. In that terminal navigate to where you placed the extracted ImagedePHI.
When there type in the terminal imagedephi. You will then get a list of command options.
I think the one that would be most useful for you at the moment is the plan command. This will tell you what will be extracted from your images. The full command is imagedephi plan [path_to_input_directory]. Then you can see if enough redaction will be done. If so then you can run the redaction, otherwise supplementary redaction rules would be needed.
When you ran the program through the browser was the issue that there was no redaction or were there things that you had thought would be redacted but weren't? Also, out curiosity, what is you main goal in using ImageDePHI? Your feedback is very valuable as we build out this program so thank you again for reaching out.
If you need further assistance or have more questions please don't hesitate.

Hi,
Thanks for your reply! ngrindro and I are working on this project together. We tried your suggestion above and was able to pull up the plan in the command prompt. A few questions:

Is there a dictionary of some sort to describe what each of the key_names refer too (so that we can choose what to keep, delete, and replace)?
When putting in the path_to_input_directory, we are pointing to a .svs file, but the terminal prints out Tiff key_names and base rules. How would we print out the base_rules for .svs images?

Overall, our main goal is to de-identify .svs slides. Any help you can provide will be much appreciated!

Sorry for the delayed response. I have been out of office and just catching up.
 You should see something similar to this print out for a svs image:

For a list of Tiff tags you can look at the link below, please note this list isn't fully comprehensive.
https://www.loc.gov/preservation/digital/formats/content/tiff_tags.shtml
Things do get a bit trickier with svs though. Svs images make use of the ImageDescription Tiff tag, meaning the svs key_names are found within the tag. The tricky part being, there is no published list for what those keynames are. The good news is that we have a lot of experience with these types of files. One of our developers, @manthey, has worked with svs for several years and it is with his knowledge that we have been able to make the base_rules for svs.
That being said it is certainly possible for there to be key_names on your images that we have not considered. The imagedephi plan command should list all key_names on your image, even if they are not considered in our base_rules.
Lastly, I think it would be useful for you to be able to see the values in these tags and key_names so that you can make decisions. One way to do this would be to use Aperio's ImageScope software: https://www.leicabiosystems.com/digital-pathology/manage/aperio-imagescope/
Once you have that downloaded you can up load your image into the software and see the value in your tags/key_names by clicking Image->Information in the top menu.
If you would prefer not to use another software let me know and I will be happy to set you up with a programmatic solution.


"aria_" should be handled like "data_" in html_params

The title says it. Naturally this can be done by changing
elif k.startswith('data_')

to
elif k.startswith('data_') or k.startswith('aria_')

but in the long run probably a more sophisticated system might be needed. Maybe a sophisticated implementation already exists.
Related Issue (https://github.com/wtforms/wtforms/issues/48)
Further reference if needed: http://www.w3.org/TR/wai-aria/
Alex

+1
Further reference here as well: https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA
This is a feature I'd really like to see implemented.
It's now part of Foundation's standard help-text formatting as well http://foundation.zurb.com/sites/docs/forms.html#help-text

Good idea. I'm putting it on the schedule for 3.0

@crast Is this feature anywhere near to being included? I have a PR ready to submit if this is still something you guys want?

@ftm-1 I'm the new maintainer. If you have a PR, please submit it! :-)

Hi @davidism, I was @ftm-1 but now I'm on this account (I managed to get a better username). I have reopened the PR on my new account so it should be ready to go.

Closed in #389


Automatically install dependency

It would be nice if we automatically installed the version of the dependency to user is moving to.

@latest if the user selected the latest version
@^2 if the user selected version 2.X.Y that is not the latest
@~0.14 if the user selected version 0.14.X that is not the latest and is before the 1.0.0 release

You can just always use carrots. If you're pre 1.0.0 they act the same as tilde anyway:
https://github.com/npm/node-semver/blob/master/README.md#caret-ranges-123-025-004
We should use whatever specifier they were using previously

what ever happened w/ this anyone implement it?  looks like the project has been stale for a while but seems pretty useful...


Relax Restrictive Upper Bounds on base

Would it be possible to add a revision that relaxes the upper bounds on base to <5?
At the moment, kqueue isn't compatible with GHC 8.4.3 and base-<IP_ADDRESS>.

Thanks for the report! I've raised the bound and published a new revision.


pipe: without knowing shape

Is there a way to pipe the video to buffer without knowing the size?
            out, _ = (
                cmd.output('pipe:', format='rawvideo', pix_fmt='rgb24')
                    .run(capture_stdout=True, quiet=True)
            )

            video = np.frombuffer(out, np.uint8).reshape([-1, self.size, self.size, 3])

For example if I don't know what self.size is. Perhaps somehow also piping iw and ih

Fixed by passing shape:
    def _get_video_size(self, filename):
        probe = ffmpeg.probe(filename)
        video_info = next(s for s in probe['streams'] if s['codec_type'] == 'video')
        width = int(video_info['width'])
        height = int(video_info['height'])
        return width, height


Horizontal and vertical camera treated as different by colmap

Describe the bug
If you create a dataset with vertical and horizontal images, colmap will treat this as two different cameras. This breaks the dataloader.
To Reproduce
Take vertical and horizontal images and process them with ns-process-data. The model can not train on the resulting dataset.
Expected behavior
The method should be invariant to camera capture orientation.

Tested by taking images in both horizontal and vertical orientation. The pipeline (colmap + training) worked as expected.


Updated ikrs.txt to add explanation and list some more schools

@narve Pull request merged. Thank you for the update!


    Path: C:\Users\Sahand\.vscode\extensions\ms-vscode.csharp-1.17.1\.omnisharp\1.32.8\OmniSharp.exe
    PID: 11972

[info]: OmniSharp.Stdio.Host
        Starting OmniSharp on Windows 6.2.9200.0 (x64)
[info]: OmniSharp.Services.DotNetCliService
        DotNetPath set to dotnet
[info]: OmniSharp.MSBuild.Discovery.MSBuildLocator
        Located 1 MSBuild instance(s)
            1: StandAlone 15.0 - "C:\Users\Sahand\.vscode\extensions\ms-vscode.csharp-1.17.1\.omnisharp\1.32.8\msbuild\15.0\Bin"
[info]: OmniSharp.MSBuild.Discovery.MSBuildLocator
        MSBUILD_EXE_PATH environment variable set to 'C:\Users\Sahand\.vscode\extensions\ms-vscode.csharp-1.17.1\.omnisharp\1.32.8\msbuild\15.0\Bin\MSBuild.exe'
[info]: OmniSharp.MSBuild.Discovery.MSBuildLocator
        Registered MSBuild instance: StandAlone 15.0 - "C:\Users\Sahand\.vscode\extensions\ms-vscode.csharp-1.17.1\.omnisharp\1.32.8\msbuild\15.0\Bin"
            CscToolExe = csc.exe
            CscToolPath = C:\Users\Sahand\.vscode\extensions\ms-vscode.csharp-1.17.1\.omnisharp\1.32.8\msbuild\15.0\Bin\Roslyn
            MSBuildExtensionsPath = C:\Users\Sahand\.vscode\extensions\ms-vscode.csharp-1.17.1\.omnisharp\1.32.8\msbuild
            MSBuildToolsPath = C:\Users\Sahand\.vscode\extensions\ms-vscode.csharp-1.17.1\.omnisharp\1.32.8\msbuild\15.0\Bin
[info]: OmniSharp.Cake.CakeProjectSystem
        Detecting Cake files in 'c:\Users\Public\Documents\Unity Projects\New'.
[info]: OmniSharp.Cake.CakeProjectSystem
        Could not find any Cake files
[info]: OmniSharp.WorkspaceInitializer
        Project system 'OmniSharp.DotNet.DotNetProjectSystem' is disabled in the configuration.
[info]: OmniSharp.MSBuild.ProjectSystem
        Detecting projects in 'c:\Users\Public\Documents\Unity Projects\New\New.sln'.
[info]: OmniSharp.MSBuild.ProjectManager
        Queue project update for 'c:\Users\Public\Documents\Unity Projects\New\Assembly-CSharp.csproj'
[info]: OmniSharp.Script.ScriptProjectSystem
        Detecting CSX files in 'c:\Users\Public\Documents\Unity Projects\New'.
[info]: OmniSharp.Script.ScriptProjectSystem
        Could not find any CSX files
[info]: OmniSharp.WorkspaceInitializer
        Invoking Workspace Options Provider: OmniSharp.Roslyn.CSharp.Services.CSharpWorkspaceOptionsProvider
[info]: OmniSharp.MSBuild.ProjectManager
        Loading project: c:\Users\Public\Documents\Unity Projects\New\Assembly-CSharp.csproj
[info]: OmniSharp.WorkspaceInitializer
        Configuration finished.
[info]: OmniSharp.Stdio.Host
        Omnisharp server running using Stdio at location 'c:\Users\Public\Documents\Unity Projects\New' on host 1144.
[fail]: OmniSharp.MSBuild.ProjectLoader
        The reference assemblies for framework ".NETFramework,Version=v4.5" were not found. To resolve this, install the SDK or Targeting Pack for this framework version or retarget your application to a version of the framework for which you have the SDK or Targeting Pack installed. Note that assemblies will be resolved from the Global Assembly Cache (GAC) and will be used in place of reference assemblies. Therefore your assembly may not be correctly targeted for the framework you intend.
[warn]: OmniSharp.MSBuild.ProjectManager
        Failed to load project file 'c:\Users\Public\Documents\Unity Projects\New\Assembly-CSharp.csproj'.
c:\Users\Public\Documents\Unity Projects\New\Assembly-CSharp.csproj
C:\Users\Sahand\.vscode\extensions\ms-vscode.csharp-1.17.1\.omnisharp\1.32.8\msbuild\15.0\Bin\Microsoft.Common.CurrentVersion.targets(1126,5): Error: The reference assemblies for framework ".NETFramework,Version=v4.5" were not found. To resolve this, install the SDK or Targeting Pack for this framework version or retarget your application to a version of the framework for which you have the SDK or Targeting Pack installed. Note that assemblies will be resolved from the Global Assembly Cache (GAC) and will be used in place of reference assemblies. Therefore your assembly may not be correctly targeted for the framework you intend.

[fail]: OmniSharp.MSBuild.ProjectManager
        Attemped to update project that is not loaded: c:\Users\Public\Documents\Unity Projects\New\Assembly-CSharp.csproj

so it just like me
anybody know how to fix it?

I had a similar problem, and I fixed it by removing all pre-2017 Visual stuio versions from my PC and installing most up-to-date VS 2017 version.
Yes I'm talking about "big" VS, not VSCode.
If you have problems with this still, inside VS Installer app you can try "Modify Installation -> Individual Components -> Add missing pack"

witch one of this components do i need?

In the error log there is "The reference assemblies for framework ".NETFramework,Version=v4.5" were not found", so just try to get all 4.5 packs?
Do you have multiple installations of VS on your machine? Maku sure all are updated. I saw ome guy have issues because it had random VS2013 installation lying somewhere, and I had issues because I had both VS2017 pro and community installed, a d community was not up to date

the same issue, the same log,unity3d with .net4.6

i had solved it
1.visit https://dotnet.microsoft.com/download/visual-studio-sdks?utm_source=getdotnetsdk&utm_medium=referral
2.download .NET Framework4.x Developer Pack and install

Is there a solution for Linux in this case? We only have .NET Core

Hi,
well using Visual Studio Code (and no Vistial Studio is installed on the System) I could not find a solution for ".NET Framework 4.5" referenced by <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>  in project pptx2tex https://github.com/timdams/Pptx2Tex
[fail]: OmniSharp.MSBuild.ProjectLoader
        The reference assemblies for .NETFramework,Version=v4.5 were not found. To resolve this, install the Developer Pack (SDK/Targeting Pack) for this framework version or retarget your application. You can download .NET Framework Developer Packs at https://aka.ms/msbuild/developerpacks

Neigher on the webpage "Download .NET SDKs for Visual Studio" https://dotnet.microsoft.com/download/visual-studio-sdks?utm_source=getdotnetsdk&utm_medium=referral nor  on webpage "Download .NET" https://dotnet.microsoft.com/download/dotnet?utm_source=getdotnetcorecli&utm_medium=referral there is a DEV Pack for 4.5.
The DEV Pack Installationfiles  NDP451-KB2861696-x86-x64-DevPack.exe and NDP452-KB2901951-x86-x64-DevPack.exe I had run. But I cannot fine one dev Pack for v4.5. Has any one an idea?

Visual Studio Code
Version: 1.55.1
Commit: 08a217c4d27a02a5bcde898fd7981bda5b49391b
Date: 2021-04-07T15:06:02.360Z
Electron: 11.3.0
Chrome: 87.0.4280.141
Node.js: 12.18.3
V8: <IP_ADDRESS>-electron.0
OS: Windows_NT x64 10.0.18363

dotnet --info
.NET SDK (gemäß "global.json"):
 Version:   5.0.202
 Commit:    db7cc87d51

Laufzeitumgebung:
 OS Name:     Windows
 OS Version:  10.0.18363
 OS Platform: Windows
 RID:         win10-x64
 Base Path:   C:\Program Files\dotnet\sdk\5.0.202\

Host (useful for support):
  Version: 5.0.5
  Commit:  2f740adc14

.NET SDKs installed:
  3.1.407 [C:\Program Files\dotnet\sdk]
  5.0.202 [C:\Program Files\dotnet\sdk]

.NET runtimes installed:
  Microsoft.AspNetCore.App 3.1.13 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 5.0.5 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.NETCore.App 3.1.13 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 5.0.5 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.WindowsDesktop.App 3.1.13 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
  Microsoft.WindowsDesktop.App 5.0.5 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]

To install additional .NET runtimes or SDKs:
  https://aka.ms/dotnet-download

@ifrh It may be easier to change the TargetFrameworkVersion to 4.5.1 or 4.5.2 since you have those installed.

@JoeRobich : Thanks. That helped. And I had to change some information in App.config, too.

i am confused on the .NET Framework4.x.x Developer Pack where is it on the websites provided

@SolariusEclipse If you are on Windows, I recommend installing Build Tools for Visual Studio. It will provide a more complete set of build tools for working with older project types.


Move refresh from publishRobots to call method

in class Viewer, in order to make publishRobots method re-implementable in
derived classes.

Sounds reasonable to me. You can merge if you tested.


[nrf fromtree] net: wifi_shell: Updated TWT flow id range

[SHEL-1571] TWT flow id is of 3 bit value(maximum mnumber of flows supported is 8). Flow id range limited to 0 to 7.
Signed-off-by: Ajay Parida<EMAIL_ADDRESS>(cherry picked from commit 519e0a36de3d8040e8ffa37ded99a64618617450)

@ajayparida Is this aiming 2.4? If so, please rebase - conflict (same for the manifest PR).

I haven't seen this PR, so, I already pulled this as part of my https://github.com/nrfconnect/sdk-nrf/pull/11181 so, closing this, as my PR pulls in this and an additiona fix.


Changing the bpm stops new ToneEvents from firing

Describe the bug
After changing the bpm, any new ToneEvents seem to not fire.
To Reproduce
I'm using the browser console for convenience, instead of creating a repo.

Go to a page with Tone.js loaded https://tonejs.github.io/docs/14.7.77/ToneEvent
Run Tone.start().then(() => Tone.Transport.start())
Run new Tone.ToneEvent(console.log).start() -> expect the time to be logged e.g. 29.58420918367347 null
Run Tone.Transport.bpm.value = 70 to change the bpm
Run new Tone.ToneEvent(console.log).start() again -> the time does not get logged

Expected behavior
New events should be scheduled, based on the current time of the transport.
Related to https://github.com/Tonejs/Tone.js/issues/962?

I've noticed that using the bpm.setValueAtTime and debouncing any inputs connected to it helps minimize the buggy behavior.
This is an example of a tempo-slider Svelte component that works nicely for me:
<script lang="ts">
  import { getTransport } from 'tone'
  import { onDestroy } from 'svelte'

  let timer: NodeJS.Timeout

  const setTempo = (e: CustomEvent) => {
    const value = +e.detail.value

    clearTimeout(timer)
    timer = setTimeout(() => {
        getTransport().bpm.setValueAtTime(value, getTransport().now())
    }, 1000)
  }

  onDestroy(clearTimeout(timer))
</script>

<Slider value="120" on:change={setTempo} />

I am also having this issue in React. Changing Tone.Transport.bpm.value while the Transport is playing causes crackling and/or Tone crashes entirely and no longer generates sound until the page is refreshed.
Code
  const updateTempo = (val: number) => {
    setTempo(val);
    Tone.Transport.bpm.value = val
}

I had previously used Tone.Transport.bpm.rampTo() to get around this, but this is also currently failing:
  const updateTempo = (val: number) => {
    setTempo(val);
    Tone.Transport.bpm.value = val
}

The debouncing strategy described by FractalHQ does not seem to work either.
  const updateTempo = (val: number) => {
    setTempo(val);
    if(timer.current != null){ clearTimeout(timer.current) }
    timer.current = setTimeout(() => { Tone.Transport.bpm.value = val}, 1000);
  };


Push notifications

It would be great, if you could implement push notifications for RainLoop:
https://developers.google.com/web/fundamentals/getting-started/push-notifications/?hl=en
Most modern browsers support this feature (Chrome, Firefox, Safari). Microsoft Edge will follow:
https://blogs.windows.com/msedgedev/2016/05/16/web-notifications-microsoft-edge/
This feature would be real added value for RainLoop, especially the mobile version, because it would make dedicated mail apps more or less obsolete.

Hi,
Would also be great to have PushOver/Bullet notifications. Cause actually you got to open a web browser to check mails, thats clearly uncomfortable.

+1 for Pushover notifications on new mail. I use multiple accounts and would have to log in and out of each one to see if there's new mail. The other solution would be to add each mail account to my phone which I'm sure would deplete my battery very fast.

@f3bruary Set up z-sync to support ActiveSync then add your email accounts on your phone as Exchange AS. You can add multiple accounts to a main account in RainLoop, so you will be able to switch accounts easily without logging out/in.
Pushover/bullet notifications can be done easily, but the main login credentials are not stored (I believe). Obviously it needs a cron or daemon.
Checking for new mails & sending notifications can be done by a separate script, but it has nothing to do with Rainloop except the notification includes a link to the RL page. I may create one next week.


Updated developer guide appendix F

Pull Request Test Coverage Report for Build 342

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 87.5%

Totals

Change from base Build 341:
0.0%

Covered Lines:
2765

Relevant Lines:
3160

💛  - Coveralls


Update package version in PyPI

Hello, can you update PyPI to current version (1.3.1) of this package? Nowadays is not possible to install 1.3.1 version by pip install django-elasticsearch-debug-toolbar
See https://pypi.org/project/django-elasticsearch-debug-toolbar/

Done


Remove last_match fields from FindCaptures and FindMatches

I removed last_match fields from FindCaptures and FindMatches structs and simplified algorithm of next method.
I think that behavior of iterators should not change (at least, all tests are passed), but please double-check that.

@defuz Cool! Are you sure you ran all the tests? It looks like some of them are failing, e.g., tests::searcher_one_zero_length_matches. I think I commented on the bit of code that causes it.
I would definitely welcome simplifications to this code though. I'm not happy with it and it is convoluted and tricky and non-obvious what is going on. The test coverage also clearly isn't great. It looks like only two tests failed, and they aren't even regex specific tests (they're testing the implementation of the Pattern/Searcher traits.

@BurntSushi thanks for the feedback! This problem brought me back to thinking about how it should work with empty captures at all. It seems that my previous code works well only in certain cases (not mixing empty and non-empty captures). It always returns redundant empty capture right after the non-empty captures.
I tried to get rid of the problem by adding boolean state between iterations. It seems that it works well for me. I also added 3 test that might detect problems when they occur.

@defuz Right, OK! I think I buy it. I'm still hoping for making the code clearer, but I think is at least an improvement. The added tests are a nice bonus. :-) Thank you!

@defuz Just wanted to let you know that I had to revert this change in my local branch. I came up with additional test cases that fail with this patch but pass under the old code. I tried fixing what you had here, but it ended up no longer being a simplification unfortunately. (The problem happens when there are non-adjacent successive empty width matches.) I think it ends up being clearer to test the actual last match location directly.
Here are the failing tests:
---- tests::match_multi_3 stdout ----
        thread 'tests::match_multi_3' panicked at 'For RE '(?m)^' against '"abc\ndef\nxyz"', expected '[(0, 0), (4, 4), (8, 8)]' but got '[(0, 0), (4, 4), (4, 4), (8, 8), (8, 8)]'', regex_macros/tests/tests.rs:380
note: Run with `RUST_BACKTRACE=1` for a backtrace.

---- tests::match_multi_4 stdout ----
        thread 'tests::match_multi_4' panicked at 'For RE '(?m)$' against '"abc\ndef\nxyz"', expected '[(3, 3), (7, 7), (11, 11)]' but got '[(3, 3), (3, 3), (7, 7), (7, 7), (11, 11), (11, 11)]'', regex_macros/tests/tests.rs:382

@BurntSushi It's more like a bug in the algorithm. I found this solution:
// Don't accept empty matches immediately following a match.
// i.e., no infinite loops please.
if e == s {
    self.last_end = e + self.search[e..].chars()
                         .next().map(|c| c.len_utf8()).unwrap_or(1);

It seems that this fix passes all tests.


⚠ Bofrost.nl has degraded performance

In 82ebf65, Bofrost.nl (https://www.bofrost.nl) experienced degraded performance:

HTTP code: 200
Response time: 1780 ms

Resolved: Bofrost.nl performance has improved in 142d704.


User Roles

Role assignments for registered users should be created and assignable to user accounts:
Admin
Volunteer
Member
User

I think we could either make user something that is a non-assigned role. Which means, maybe no rule needs to be assigned to a user.
rolify is a good gem that could help with this.


Add experimental data for the WP6 challenge

PR adds experimental data for the WP6 challenge that was provided by Isaacs on 11/30/2021.
Files added:

SAMPL9_Datasheet_20210727.cdx - a ChemDraw file that contains smiles strings and a view of the host and guest molecules
host_and_guest_smiles.csv - a .csv. containing the host and guest smile strings (taken from SAMPL9_Datasheet_20210727.cdx)
SAMPL9_answersheet.docx - a MS Word document that contains the measured thermodynamic data
SAMPL9_answersheet.csv - a machine-readable format version of SAMPL9_answersheet.docx

I did a little cleanup on the csv file because it was incorrect (10^4 had become 104; G1^a had become G1a, etc.), and added a bit more to the manifest. I'll merge. Thanks!


Fix #99: add DeprecationWarning and seealso for distributions.

Fixes #99.

Coverage decreased (-0.02%) to 65.545% when pulling 706359b3e469c2759247904676dda7417c9bcef6 on fix-99 into c6e3493a8a89a6e8470493e2b69659d8cb7202db on master.


Update to 0.24.11

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.2 out of 18 committers have signed the CLA.:white_check_mark: rschu1ze:white_check_mark: vitlibar:x: kedartal:x: graebm:x: bretambrose:x: TwistedTwigleg:x: sbSteveK:x: beat-schaer:x: TingDaoK:x: xiazhvera:x: yasminetalby:x: gqmelo:x: waahm7:x: DmitriyMusatkin:x: SergeyRyabinin:x: alfred2g:x: jmklix:x: sfodYou have signed the CLA already but the status is still pending? Let us recheck it.


Missing Toolbar after 0.6.10 update

Hi,
I updated my Atom package julia-client to 0.6.10 and now the toolbar is gone!!
My atom package versions:
indent-detective -> 0.2.0
ink -> 0.8.3
julia-client -> 0.6.10
language-julia -> 0.15.0
latex-completion -> 0.3.3
tool-bar -> 1.1.6
uber-juno -> 0.1.2

Julia package versions:
Juno => v"0.4.0"
Atom => v"0.6.11"

I tried uninstalling uber-juno and all the above packages with no results! I even tried deleting my ~/.atom folder, restarting atom and installing uber-juno. :/
Regards,
vish

Just execute the Tool Bar: Toggle command in the command pane:

Thanks!! :)
That worked. But when I tried this yesterday, it was not working! :/
Also I found that even if I do a package update in atom, I have to manually do the update of related Atom.jl package in julia. For a normal user, this is a bit annoying, because we just installed an update and suddenly the things are going mad with cryptic warnings. I appreciate the effort you are putting in developing the package. Is it possible to make that part also automated - like I update package in Atom and the relavant julia package will also get updated in julia's package folder?

I just upgraded Atom, deleted .atom, and reinstalled uber-juno. Still no toolbar, and toggling doesn't help. :-(

After the update I have the same problem and the Toggle command does not work. Any ideas?

Solved it: go to Settings - Julia Client - settings: Enable Menu and restart!

Should be Enable Toolbar, but yes, that setting needs to be switched on.

For my case, having enable menu as @HamletFr said, toggling still required as @pfitzseb said. So, I combined both of the suggestions.

Settings - Julia Client - settings did that, still didn't work.
How do I find Command Pane to execute the command to follow @pfitzseb suggestion?

I found it, and executed the command following @pfitzseb  suggestion, it worked.
To find command pane: Packages > Command Palette > Toggle
Thanks.

yes  you should recompile toolbar package in the favor of julia -client and then toggle it on. So it is not the issue it is just side effect of the atoms plugin technology

I'm having a similar / equivalent  issue. Toolbar was missing next time I restarted Atom, toggle doesn't work, and almost all julia-related commands are now missing from the command palette (all except the two from language-julia). Have tried several uninstall-reinstall sequences but nothing has worked yet.

2brenhinkeller  just
1 recompile toolbar (for my case it was enough)
2 recompile julia client
3. check Julia Client - settings: Enable Menu and restart
4. toggle toolbar On from menu
In the my case works sequence  : 1,3,4
Most probably it was due to precompiled tool bar libs, that was shipped with julia client (newer version
of tool bar was a bit incompatible)

How does one recompile toolbar, since as far as I can see these Atom add-ons like toolbar are written mostly in scripting languages and css, not really compiled languages? I assume you mean something different than just using apm to uninstall and reinstall? I searched the repo for toolbar (https://github.com/suda/tool-bar) but there is no mention of compilation and certainly no makefile. https://github.com/suda/tool-bar/lib seems to be all javascript.

today was toolbar update - check it!
If it does not work -my way:>
a) uninstall toolbar and restart atom
b) install toolbar and got an incompatibility message from atom (with suggestion to recompile some libraries) -choose it
c)after some working .. restart atom and toggle the toolbar on

Thanks! Everything seems to be working again now.


Handle SIGHUP event

Thanos, Prometheus and Golang version used
thanos: v0.5.0
What happened
Sending a SIGHUP signal to sidecar, store gateway, querier or compactor crashes it.
What you expected to happen
They should not crash. Maybe they should also reload configuration (?)
How to reproduce it (as minimally and precisely as possible):
$ kill -SIGHUP <thanos>

I think thanos should at least not crash upon receiving a SIGHUP signal.
I understand that flags are used to configure thanos components, but it would be nice to have a way to reload configuration files immediately with a SIGHUP signal. This is what most applications do (eg: prometheus). Potential use case: Have an ansible handler sending the SIGHUP signal.

It is fixed in 0.9:
level=info ts=2019-12-23T03:16:32.298801119Z caller=grpc.go:98 service=gRPC/server component=store msg="listening for StoreAPI gRPC" address=<IP_ADDRESS>:10901
level=info ts=2019-12-23T03:16:32.298299889Z caller=prober.go:127 msg="changing probe status" status=healthy
level=info ts=2019-12-23T03:16:32.302900836Z caller=http.go:53 service=http/server component=store msg="listening for requests and metrics" address=<IP_ADDRESS>:10902
Hangup
[root@test thanos]#
───────────────────────────────────────────────────────────────────────────────────────────[root@test thanos]# ps faux | grep than
root       61482  0.7  0.1<PHONE_NUMBER>8 pts/2    Sl+  11:16   0:00  |   \_ ./thanos store --objstore.config={type: FILESYSTEM, config: {directory: ./obj_data}}
root       61929  0.0  0.0 112708   992 pts/3    S+   11:16   0:00      \_ grep --color=auto than
[root@test thanos]# kill -SIGHUP 61482
[root@test thanos]#

@jojohappy @bwplotka please close it.

@daixiang0 Thanks! let me double check it ASAP.

@daixiang0 Hi, maybe this issue is not fixed. @tomleb hopes that thanos should not exit when receive the SIGHUB.
@tomleb As you said, thanos now use the flags as the provider for the most configurations, if you want to change them, restart it. On the other hand, it is a nice improvement to reload the configuration file of object store without restart. Maybe we can use the reload package to listen the changes of the configuration file of object store like store discovery files.

Yea we might not handle it properly. I think it's a feature to reloader or just ignore SIGHUP. Help wanted (:


Mic and webcam return each process as an attribute

Fixes https://github.com/LAB02-Research/HASS.Agent/issues/249
The state is now the number of processes using the mic or webcam, and each process is added as an attribute. This removes the need to do any template string parsing for automation triggers/conditions.

Looking good so far @jordandrako, thanks for your work. I'll run a test today or tomorrow and merge afterwards 😄

Thanks @LAB02-Admin. Did the tests work out for you? How do you handle the breaking change this will introduce?

Sorry this took so long @jordandrako, please don't take it as a lack of interest, just very busy irl. Looks like it's working fine, neat implementation too!
I might split it into two sensors; change this to 'MicrophoneProcesses' and use 'MicrophoneProcess' for the single value, to avoid the breaking change. But I'll think about that, and merge this for now.
Thank you VERY much for helping, it's really appreciated! And if you find any other fun tickets and you find yourself bored, please don't hesitate 😁
https://lab02research.youtrack.cloud/


on:qvisible doesn't work on invisible elements like

Qwik Version
0.0.100
Operating System (or Browser)
Chrome
Node Version (if applicable)
No response
Which component is affected?
Qwik Runtime
Expected Behaviour
Having a component like this one:
import { component$, useClientEffect$ } from<EMAIL_ADDRESS>
export default component$(() => {
  useClientEffect$(() => {
    console.log('foo')
  })

  return (
    <></>
  )
})

And calling it inside head.tsx component doesn't work as expected because it produces:
<head q:id="2" q:head on:qvisible="/src/head_component_useclienteffect_euppxjgcjwg.js#_hW[0]">

Which means on:qvisible will never execute because head is not a visible element.
The workaround is:
  useClientEffect$((track) => {
    //...
  }, { eagerness: 'load' })

But i'm opening the issue as requested:
manucorporat — Today at 1:33 PM
This is an actual issue, we are appending a visibility event to head, qwik should be smart to print a warning or automatically use load in this scenario

Actual Behaviour
.
Additional Information
No response

Is it the same issue? https://github.com/BuilderIO/qwik/issues/1413


Add choice groups for fusion and nesting of dimensions

Add new two new choice groups DimFusion and DimNesting that allow for the separation of fusion and nesting choices from sequential ordering choices from Order.

bors r=Elarnon

bors retry

bors retry

bors cancel

bors r-

bors r=Elarnon

bors retry

bors retry

bors retry

bors retry

bors retry

bors retry

bors retry


Split out Test plugin into separate, highly cohesive plugins

The omission of dependencies in the nuspec file was purely because initially, PowerTasks (previously psakify) was a monolithic package that contained the scripts for all the bundled tasks, and because consumers of the package would not always require all the functionality, we didn't want to require the installation of supporting NuGet packages that would never be used. Now that the bundled tasks are being delivered as plugin packages, it makes sense to add the dependencies to the respective plugin NuGet packages' nuspec files.
However, if we do this for the Test plugin, then we would be forcing the consumer to install Machine.Specifications.Runner.Console, NUnit.Runners, SpecFlow and Chutzpah. Additionally, we would have to bundle the BrowserStackLocal.exe which is likely to become outdated pretty quickly. Also, who are we to assume that all consumers of the Test plugin are going to want to use BrowserStack for their SpecFlow tests? On top of this, due to a recent collaboration on a shared project I know first hand that the Test plugin is no longer working as-is for that project due to custom requirements. These facts lead me to conclude that we were overly optimistic in thinking that we could write a "one size fits all" test plugin for PowerTasks, as we quickly outgrew the supported functionality it provided and now use a customised test task in the consuming project.
The current state of the Test plugin is a bit of a mess, with an implicit dependency on the Compile plugin, and is therfore a prime candidate for refactoring (or preferably outright deprecation). In order to achieve loose coupling and high cohesion, the plugins should all be very focused and adhere to SRP. This will enable a modular design that is easily pluggable and suitable for a wide audience.
There is concern about being able to call pt test, instead of pt unittest, jstest, acceptancetest which is valid, but due to the flexibility of Invoke-Build it can easily be achieved by using composition, through defining top-level tasks in the consuming project such as this:
task Test UnitTest, JsTest, AcceptanceTest

task ci Clean, Version, Compile, Test, Pack, Push

task dev Clean, Compile, Test

I propose that we split out the various test types into separate, highly cohesive plugins, each doing only one thing. These should have very specific names, such as MSpec, NUnit, SpecFlow, Chutzpah, etc. thus leaving room for a possbile future xUnit one (and others). Once that is done, then we can add the relevant dependencies to the respective plugins' nuspec files. It would also be nice if we could break the implicit dependency on the Compile plugin, so that we can individually compile test projects and avoid compiling any test projects if we only want to compile the main project.

One thing to note about the dependencies:
Since the plugins are installed into the main project, it doesn't always make sense to add dependencies there. For example: it does make sense to add test runners as a dependency, but it doesn't make sense to add mspec as a dependency.

This is fixed in https://github.com/shaynevanasperen/PowerTasks/pull/14


Add files via upload

Based on #68

While raising a PR for some issue try to tag that issue in the description.

Thank you for the contribution


Can lida.summarize( )  ,input a long string  instead of local file ?

I want to embed it in my program. So I want to input a formated long string to  summarize(). Can it support?

Hi @nuaabuaa07 ,
Can you describe the use case you intend to support? E.g. what is the input and expected output?
Currently, LIDA is optimized for tabular data, but I am happy to explore support for string data if the use case aligns.

HI @victordibia
Can I use Lida with external vector database such as Milvus? Whether is the same way as LLaMA2?

@lhcg What exactly do you want to store in the vector database?

Adding support for string is a good feature.


Implement headless mode for Kotlin

Description
Implement headless mode for Kotlin

PR #367 implements Kotlin support in the headless mode, except the coverage collection part. It have to be done in a separate PR to resolve this issue fully. Current status(after merging #367):

[x] Kotlin test generation and compilation support
[x] Method-level generation support
[ ] Kotlin coverage collection (To be done in another PR)


SuperSorter: Avoid storing extra writable channels.

PR #13368 replaced a FrameFile cache with a PartitionedOutputChannel cache. Unfortunately, these objects are heavyweight: each has a writable channel and a frame memory allocator with an 8MB arena. This patch replaces it with a Supplier, which is lighter weight, and is all that was needed anyway.

#13755 fixes the same bug.


404 error if multibyte URL's are allowed.

When I added
URLSegmentFilter:
default_allow_multibyte: true
to .yml file, I got 404 error if visiting multibyte URL, like this - for example: www.mydomain.com/ru/заглавная-страница

Please check that the URL works with Translatable enabled, but without the LanguagePrefix module...
Discussion here: http://www.silverstripe.org/community/forums/general-questions/show/101333?start=8

Could you send me a MySQL dump of your test database? That would give me the russian content, which I can't create myself. Also your default Translatable locale?

My default Translatable locale is en_US. MySQL dump you can download here: http://error.si/data/sql_dump.zip

Thanks, got it :)

At a quick poke through I'd say this double escape is probably causing issues: https://github.com/Martimiz/silverstripe-languageprefix/blob/master/code/PrefixModelAsController.php#L74 - although the default charset is utf8 which should be fine, so I am not sure. But seems most likely since latin charsets likely won't be touched (since they're generally all lowercase numbers, letters, and hyphens anyway) which accounts for the majority of test cases (especially if transliterating).
The original ModelAsController uses sprintf to build a raw where clause to pass directly in, rather than using the orm, so needs the manual escape.
Alas I do not have a development environment on hand to debug this through.

@NightJar: you were right on target, thanks :)
@Darianno: Could you check if the latest commit to master fixes your problem, so I can close this as fixed?

@Martimiz: I have checked. URL's are now working perfectly. Thank you!

Fixed in 7bb01b52bbdd7a6a7e1519a2f068aa7b3f4ffeee


Optimize escape functions

Use java.lang.StringBuilder instead of scala wrapper
Rewrite Html.buildString to use bulk copy methods
when possible.

Hi @isaacl,
Thank you for your contribution! We really value the time you've taken to put this together.
Before we proceed with reviewing this pull request, please sign the Lightbend Contributors License Agreement:
http://www.lightbend.com/contribute/cla

cla signed

ping... I also posted in chat and got no response....

Hi @isaacl,
I think it would be good to have JHM benchmarks added to the project so that we can better see/prove/check performance numbers when doing such optimizations:
https://github.com/ktoso/sbt-jmh
Basically, you write a benchmark for the function and run it before and after the optimization to see how the code change affected performance.
Do you have the time to do it?
Best.

if you're willing to do it, that would be easier for me, but I will get to it eventually.

Do you have a benchmark framework to use or are you asking for simple jmh?


Add support for caching

This integrates actions/cache into the tox workflow.
Closes #44

Looks nice!

This should be ready now!


Update JSON-RPC-interface.md

test8

@jonastest3 has been requested to review this pull request as specified in the REVIEWERS file.


Blacklist has apps that are both on the whitelist and blacklist

I customized my Blacklist and then I noticed that there are a couple apps that are both checked and unchecked. For example, Xbox apps and MS Paint are both checked and unchecked. Even .NET framework is on both lists. Is this normal?
screenshots

It happens, I know what you mean!! I use to save the Custom File for a future installation of Windows and that thing is happening!!
Delete the "Custom-list" from the Debloater folder, open the GUI and create a new Custom-list and it should be ok.
That what I do.


[audio] memory leak with multi channel sound

Please, before submitting a new issue verify and check:

[x ] I tested it on latest raylib version from master branch
[x ] I checked there is no similar issue already reported
[x ] My code has no errors or misuse of raylib

Issue description
There is a small amount of memory in the buffer of each channel closing the pools should look like this:
// Close the audio buffers pool
static void CloseAudioBufferPool()
{
for (int i = 0; i < MAX_AUDIO_BUFFER_POOL_CHANNELS; i++) {
RL_FREE(audioBufferPool[i]->buffer);  <--- additional code
RL_FREE(audioBufferPool[i]);
}
}
Environment
Linux
Issue Screenshot
N/A
Code Example
see above

@chriscamacho thanks! :D


Problems with spanish chars.

Hello,
i have a problem in ASP.net with Spanish chars in rtf. I am fetching the params from the db.
Example
the rtf A continuaci#f3n should be translated in html with ó
private string ToHtml(string text)
{
if (string.IsNullOrEmpty(text))
{
return string.Empty;
}
if (text.StartsWith(@"{\rtf1"))
{
var correction = Rtf.ToHtml(text);;
// i have to change this.
correction = correction.Replace("f3", "ó");
correction = correction.Replace("e1", "é");
return correction;
}
var htmlDocument = new HtmlDocument();
htmlDocument.LoadHtml(text);
if (htmlDocument.ParseErrors.Any())
{
return text;
}
// if it is an invalid html we treat as html.
return "" + text + "";
}

Can you send me an example of the document? As a side note, with non-ASCII (that is non-English) characters, RTF tends to work better when read from a stream than from a string. However, I can help more if I have an example of the document. Thanks!


Smooth avoidance output

Feature request #11445
Test data / coverage
SITL tests
avoidance log with Firmware master: https://review.px4.io/plot_app?log=a3068607-d374-4679-9364-0a6edcdcc63a
avoidance log with this branch: https://review.px4.io/plot_app?log=133e20af-091e-4ba8-8af8-2df394a5ba33
Describe problem solved by the proposed pull request
Smooth obstacle avoidance output with PX4 trajectory generator
To do

[x] reintroduce failsafe
[x] enable OA with auto straight line
[ ] enable OA in pos control
[x] move all OA interfaces to the library

Putting this interface in a library is definitely a step in the right direction. 👍
You have to be careful with the subscription though. The class lives inside the a task and therefore only as long as this task is initialized. So on every switch you would resubscribe which generates a file descriptior leak. The solution to this from beat is the subscription_array. So you need to pass it from the task to the constuctor of your class and subscribe like it's done here: https://github.com/PX4/Firmware/blob/684e2974ac042e6ba2168f06bf91be4fbb7b6050/src/lib/CollisionPrevention/CollisionPrevention.cpp#L63-L70
Tell me if you need help with that.

I have actually tested for the memory leak in SITL by continuously switching between the auto flight tasks and others and I couldn't get into a seg fault. I thought it was safe. I'll make the change right away!

SITL logs

AUTO_MODE 0, position sp https://review.px4.io/plot_app?log=dff012ba-da57-4b5c-9bfa-cd86b68ba671
AUTO_MODE 0, velocity sp https://review.px4.io/plot_app?log=9b004f8e-8078-4cc8-bf04-3738f3cb11a5
AUTO_MODE 1, position sp https://review.px4.io/plot_app?log=07c1d725-2618-4654-b82e-0d2293ad2370
AUTO_MODE 1, velocity sp https://review.px4.io/plot_app?log=129bcff0-2a04-4fff-89c5-fe6270d695bc
failsafe https://review.px4.io/plot_app?log=045b7e03-c1e3-491e-80ab-4d926c15d3cc
wp2 blocked https://review.px4.io/plot_app?log=10747848-3bfb-42a1-8547-472ed623baf2

Just write when you consider it ready and are expecting review.

@MaEtUgR I think it's in good enough shape to be reviewed. Thanks

I did not look at ObstacleAvoidance.cpp yet since it is a refactor. Other than that looks good and much cleaner

@Stifael I have addressed your comments

@MaEtUgR Thank you for the review!

@bresch @jkflying this is finished from my side. How do you want to move this forward?

@mrivi great work, looks good to me. It would be nice if we can have a few real test flights now.

Test flight was mixed. Sometimes it was really smooth (as expected), but there were also a few big setpoint jumps which definitely violated the smoothing. Also during the flight cruising speed was really really slow, maybe there is some strange interaction between the position setpoints and that getting translated into a velocity.
We were having some issues with our companion computer, so the log isn't very pretty, but here we go anyway:
https://logs.px4.io/plot_app?log=b5e66611-b026-4ece-bdf9-0c04729b675e
Note the weird takeoff with the Z setpoints.

@jkflying I think the jumps are happening when the vehicle goes into failsafe (loiter). I will take a closer look.
As far as the reduce cruise speed, I noticed that in SITL as well. I have an idea on why that's happening but I need to understand better what @bresch smoothing is doing.
Why aren't you logging vehicle_trajectory_waypoint ?

I think the problem with really slow speed is due to the target being already a setpoint. When the Auto task runs without OA the pos_sp_xy is the waypoint of the current triplet and the speed_sp_track can be MPC_XY_CRUISE when far away from the waypoint. However when the OA is enabled and we inject the avoidance output, we are injecting setpoints and not waypoints. Therefore the speed_sp_track is always low (< 1.0)

Yes, we are using position setpoints. Do you think it would work better with velocity setpoints?

@jkflying yes, it should. From the simulation and looking on how they are handled in the code, I expect the speed to be closer to current master.
If you are going to retest this in the next days, do you mind logging vehicle_trajectory_waypoint? It would help with the log analysis. Thank you.

Flying with velocity setpoints worked really well, on par with anything we've seen before from a safety and responsiveness perspective, and smoother. Two logs:
https://logs.px4.io/plot_app?log=31879e3f-e089-4ce0-b64d-7edcb34ff592
https://logs.px4.io/plot_app?log=8f85e115-2edc-4072-94fc-9c3c197f0cc2
Unfortunately I forgot to log the vehicle_trajectory_waypoint, I'll do another flight with that now and post it too.

Here are logs with the messages you asked for, as well as EKF replay (just in case)
https://logs.px4.io/plot_app?log=8c089b3c-67b4-4f21-86db-6251606b3ce9
https://logs.px4.io/plot_app?log=3aba8930-c9a3-42f2-a74b-415d94d6c253
From a PX4/Avoidance side I am happy with the performance here,  this is good for merging from me.
@bresch @mrivi Your thoughts please, is this something we can get into 1.9, or is the risk too high?

@jkflying I would test the following things before merging:

successful avoidance test with MPC_AUTO_MODE = 0 (line following)
successful avoidance test when one waypoint is within an obstacle
regression testing without OA

@jkflying Btw, are you generating the desired velocity from a position error? If yes, we should not do it that way, because it creates double cascaded position feedback; this is why the altitude setpoint is a bit oscillating.
IMO you should really send position setpoints and increase the gain of the position trajectory controller MPC_XY_TRAJ_P and MPC_Z_TRAJ_P. I usually have them at 1.0 (default if 0.3). You can even increase more if you have high jerk and acceleration settings, until you see that the position setpoint starts to oscillate. This
Here is a quick diagram of what's happening in case of velocity mode from position feedback estimate (top) and how you can have stable setpoints using the position mode and build-in trajectory controller in position mode:

Where
( )_d is  "desired"
( )_T is "trajectory"
(~) is "estimate"
x, v, a, j  are position, velocity, acceleration and jerk

Ok, previous flight tests had the wrong firmware flashed, so please discard them.
Flight testing again, with position setpoints and increased MPC_XY_TRAJ_P to 0.7, we get some strange behavior in the turns that we weren't seeing before, where the drone starts towards the goal before facing in that direction, and thus before the camera would have the obstacle in the field of view. This is the expected behavior in Mission with @bresch 's new smoothing, but with Avoidance on we should be  overriding the velocity to be 0 when the drone doesn't face in the right direction yet. We are investigating if it is something we can fix from the Avoidance side, or if we need to change something in firmware.

but with Avoidance on we should be overriding the velocity to be 0 when the drone doesn't face in the right direction yet.

I think that's a general requirement to be able to configure that yaw heading is important and needs to be reached before going fast forward. I think it would be best to enable that as an option via parameter and then enable the same functionality when obstacle avoidance is on.

After discussion with @bresch we determined that we should be able to reproduce turning-before-moving behavior from Avoidance side until it can be added to the smoothing.
We'll do one more flight test after rebase, then this should be good to merge.

Logs:

OA with MPC_AUTO_MODE=1 https://review.px4.io/plot_app?log=49a4677a-8ac7-4437-a28f-200c1a333fb8
OA with MPC_AUTO_MODE=0 https://review.px4.io/plot_app?log=bc7efd9a-9dd6-45a4-9955-ba07095f3a52
OA with blocked waypoint
no OA with MPC_AUTO_MODE=0 https://review.px4.io/plot_app?log=56246451-39a8-4079-afd1-a9e5e4a5dd93
no OA with MPC_AUTO_MODE=1

This is good to merge from all parties I believe?

Let's go!


Building issue on the OracleLinux7

Hi All,
I want to build subscription-manager package for Oracle Linux 7, 8 and 9. I have successfully able to build subscription-manager package for Oracle Linux 8 & 9.
But for Oracle Linux 7, multiple issues are being faced while running Dockerfile. So I modified it to resolve those issues, but even after that there are errors that I need your support to resolve.
My modified Dockerfile
FROM oraclelinux:7-slim
RUN echo "sslverify=0" >> /etc/yum.conf
RUN yum-config-manager --enable ol7_optional_latest
RUN yum -y install oracle-epel-release-el7 oracle-nodejs-release-el7
&& yum -y install @buildsys-build tito rpm-build rpm-sign nodejs npm which expect
&& rm -rf /var/cache/yum
&& npm config set strict-ssl false
&& npm config set unsafe-perm true
&& npm config set registry http://registry.npmjs.org/
&& npm install -g yarn
&& rpmdev-setuptree
COPY scripts/* /
RUN chmod +x /my-build-rhsm.sh /rpm-sign.exp
CMD ["/my-build-rhsm.sh"]
These are issues being faced. Complete output of "./build-rhsm-ol7.sh" is also attached.

error: Bad file: /tmp/tito/rpmbuild-subscription-managereTU7Gq/SOURCES/subscription-manager-cockpit-1.24.51.tar.gz: No such file or directory
RPM build errors:
Bad file: /tmp/tito/rpmbuild-subscription-managereTU7Gq/SOURCES/subscription-manager-cockpit-1.24.51.tar.gz: No such file or directory
ERROR: Error running command: rpmbuild  --eval '%undefine scl' --define "_topdir /tmp/tito/rpmbuild-subscription-managereTU7Gq" --define "_sourcedir /tmp/tito/rpmbuild-subscription-managereTU7Gq/SOURCES" --define "_builddir /tmp/tito/rpmbuild-subscription-managereTU7Gq/BUILD" --define "_srcrpmdir /tmp/tito" --define "_rpmdir /tmp/tito"  --define 'dist .el7' --nodeps -bs /tmp/tito/rpmbuild-subscription-managereTU7Gq/SOURCES/subscription-manager-1.24.51/subscription-manager.spec
Status code: 1
Command output: ['error: Bad file: /tmp/tito/rpmbuild-subscription-managereTU7Gq/SOURCES/subscription-manager-cockpit-1.24.51.tar.gz: No such file or directory', '', '', '', 'RPM build errors:', '    Bad file: /tmp/tito/rpmbuild-subscription-managereTU7Gq/SOURCES/subscription-manager-cockpit-1.24.51.tar.gz: No such file or directory']

Looking for your great help !!
Regards,
Faisal Naeem
build-rhsm-ol7.sh - error n output.txt

Fixed via #10


Add missing controllers for Policy, PolicyConfig and AutomatedExceptions

Towards: https://github.com/giantswarm/giantswarm/issues/29684, https://github.com/giantswarm/giantswarm/issues/30062
Adds controllers and types for Policy, PolicyConfig and AutomatedExceptions
Adds utils for new types and CRUD operations

[!IMPORTANT]
I am still missing to remove some hardcoded values from Exceptions handling.

Updated the branch so we have CRDs here. Will test tomorrow how it runs.


Survey: allow runs to be created against applications via app-group selector

No change required

Isn't gui change needed ?

my bad - target entity is encoded in the template.  Closing.


Website migration to Hugo

What this PR does / why we need it:
This will migrate the existing site from Jekyll to Hugo
Which issue(s) this PR fixes

Fixes #

Special notes for your reviewer:
Release note:
release-note

To fix the conflicts, I squashed all the commits to avoid having to deal with Gemfile.lock changes from the first few commits (which get deleted in the end anyway). Then git pull --rebase origin/master and re-adding the changes there should do it.
The changes in https://github.com/vmware-tanzu/octant/pull/2326 will need to be applied.
We can also use netlify.toml instead of the configuring via netlify's portal as well.


Denoiser Fixes: Use build in materials for color conversion, fix denoiser blocking fade animation

Removes some unnecessary material changes and uses three.js built-in materials to perform srgb conversion to simplify things.
Fix the partially-faded-in path traced view caused by the denoiser blocking the fade animation from completing.
Fix the "pop" in when transitioning to the denoised view by waiting for the fade animation to finish

Also I'm seeing some bright edges at the edge of the canvas on in the denoised image - I'm not sure if this is an artifact of the denoiser?

raw
denoised

It looks like this is a result of the denoiser. Here's a comparison of the canvas at a smaller scale showing there's are some white edges on in the denoised version:

raw
denoised


Contradictory output from different commands about dependents of py2cairo

[X] ran brew update and can still reproduce the problem?
[X] ran brew doctor, fixed all issues and can still reproduce the problem?
[X] ran brew config and brew doctor and included their output with your issue?

What you were trying to do (and why)
Tried to uninstall py2cairo.
What happened (include command output)
Got error.  See command output.

Command output

$ brew uninstall py2cairo
Error: Refusing to uninstall /usr/local/Cellar/py2cairo/1.18.2
because it is required by pygobject3, which is currently installed.
You can override this and force removal with:
  brew uninstall --ignore-dependencies py2cairo
$ brew uses py2cairo
pygtk
$ brew uses --include-build --include-test --include-optional py2cairo
pygtk
$ brew uses --installed py2cairo
pygobject3
$ brew uses --installed --include-build --include-test --include-optional py2cairo
$ brew deps --1 pygobject3
gobject-introspection
py3cairo
python
$ brew deps --1 --include-build --include-optional --include-test --include-requirements --annotate pygobject3
gobject-introspection
meson [build]
ninja [build]
pkg-config [build]
py3cairo
python
$ brew deps pygobject3
cairo
fontconfig
freetype
gdbm
gettext
glib
gobject-introspection
libffi
libpng
lzo
<EMAIL_ADDRESS>pcre
pixman
pkg-config
py3cairo
python
readline
sqlite
xz
brew deps --include-build --include-optional --include-test --include-requirements --annotate pygobject3
cairo
fontconfig
freetype
gdbm
gettext
glib
gobject-introspection
libffi
libpng
lzo
meson [build]
ninja
<EMAIL_ADDRESS>pcre
pixman
pkg-config
py3cairo
python
readline
sqlite
xz

What you expected to happen
Either no error for brew uninstall py2cairo, or A) py2cairo listed in output of brew deps --1 pygobject3 & B) pygobject3 listed in output of brew uses --include-build --include-test --include-optional py2cairo
Step-by-step reproduction instructions (by running brew commands)
See Command output above.

brew config

HOMEBREW_VERSION: 2.1.16
ORIGIN: https://github.com/Homebrew/brew.git
HEAD: 3aa7624284c43180a3f3a71aeaa9263092868e12
Last commit: 2 weeks ago
Core tap ORIGIN: https://github.com/Homebrew/homebrew-core
Core tap HEAD: 2a369a82c7f5b3b2ab2704ff0796635514aae955
Core tap last commit: 4 hours ago
HOMEBREW_PREFIX: /usr/local
CPU: quad-core 64-bit haswell
Homebrew Ruby: 2.6.3 => /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/bin/ruby
Clang: 11.0 build 1100
Git: 2.24.0 => /usr/local/bin/git
Curl: 7.64.1 => /usr/bin/curl
macOS: 10.15.1-x86_64
CLT: 1<IP_ADDRESS>
Xcode: 11.2.1
XQuartz: 2.7.11 => /opt/X11

brew doctor

Your system is ready to brew.

The output can contradict because one is based on the formula specification and the other based on the actual linkage from the installation. The uninstall messaging is correct here.

Isn’t this ability for contradiction a problem?
Shouldn’t this remain open as an issue to fix?
Maybe formula specification should be verified against linkage, and bad formula specs should be rejected.
There should at least be a brew command that reports these discrepancies. Maybe it should be run by the commands that could have discrepancies, and output to stderr when discrepancies found for formulas relevant to the normal output.
Closing this is just sweeping a real problem under the rug.

Isn’t this ability for contradiction a problem?

No. The formula and on-disk installation always have the potential to deviate. It's practically impossible to avoid.

Shouldn’t this remain open as an issue to fix?

No. There's no action item here.

Maybe formula specification should be verified against linkage, and bad formula specs should be rejected.

It's not as simple as that because the behaviour is non-deterministic and depends on the other state on the system.

There should at least be a brew command that reports these discrepancies, so a user can easily run it to find these problems

These are not problems and there's nothing actionable for the user.

Closing this is just sweeping a real problem under the rug.

You are welcome to run your open source projects how you choose and we will do the same, thanks. Please bear in mind that we're all volunteers here working in our free time to help you. Additionally, I've been working on this package manager for 10 years and have a better insights on what is and isn't a "real" problem for us to address.


pull request for e2e test at 11/29/2016 02:56:04

:white_check_mark: Validation status: passed
For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Add support for C#

We want to add C# to TESTed, since this makes supporting this programming language easier.
This would eventually replace the dedicated C# judge as our recommended solution for using C# in Dodona.

Fixed in #313


ListView reversed Return to top header tap

Use case
I'm building a chat like interface and I'm using ListView with reversed setted to true to make UI look "chat like"
The issue I'm experiencing is that return to top behaviour is also reversed.
In this case is scrolls the chat down to index 0 item. As expected by design.
But I would like to have an ability to hook into this behaviour or any way to modify it's behaviour.
What I need is to modify return to top behaviour to make it scroll to the last item in reversed ListView.
I inspected several public packages which implement "chat like" UI and they have the same issues as described here.
I googled for several hours and didn't find any easy or suitable solution for my issue.
Proposal
Some way to hook into return to top or any way to modify it's behaviour.

@vasilich6107 You can provide _scrollController to the ListView and then use something like this:
 _scrollController.animateTo(
            0.0,
            curve: Curves.easeOut,
            duration: const Duration(milliseconds: 300),
          );

Change 0.0 to any value that you wish to reach.

@AbhishekDoshi26 I'm not sure that your solution fits my needs
I need to alter scrollcontroller behavior on "header tap" in iOs

Yes, so you can setState the above solution onTap of your header
@vasilich6107

But I'm requesting an easier way to hook into Scaffold header tap)

The possible workaround is:

wrap your Scaffold in Stack with

GestureDetector(
          behavior: HitTestBehavior.opaque,
          child: SizedBox(
            width: double.infinity,
            height: MediaQuery.of(context).padding.top,
          ),
          onTap: () {
            print('to home');
          },
        )

pass into context your custom ChatScrollController(the same way as PrimaryScrollController does)
get your scroll controller via ChatScrollController.of(context) and this is it


Not Python3 compatible

This module use plenty of libraries and few syntax that are deprecated on Python3. Is there anyone working on an update?
If not, I did some fixes on it and ended up with a new fork that runs on both Python2.x and Python3.x. Should I make a pull request?

Hi vmenezes, yes, pull requests are welcome!

Thanks for your contributions, Victor!


Defining dataProviderClass in a subclass

I'm not sure if this is even possible, but I've got a few test cases where I can run the same tests for two implementations of a class, however they require different input data. So I've created a shared superclass for both tests, and set the tests with @Test(dataProvider = "myProvider"). Then, in the actual test classes, I set @Test(dataProviderClass = Provider.class). Provider has a method annotated as a @DataProvider and named myProvider
TestNG Version
6.14.2
Expected behavior
TestNG should pick up the dataProviderClass set in the subclasses
Actual behavior
TestNG fails with an error (stacktrace is attached in the gist below), complaining about a missing dataprovider.
Things work fine if I move the methods from Provider into the test classes as well, it just doesn't seem to work when I separate the providers into a separate class.
Is the issue reproductible on runner?

[ ] Shell
[x] Maven
[ ] Gradle
[ ] Ant
[ ] Eclipse
[x] IntelliJ
[ ] NetBeans

Test case sample
https://gist.github.com/sonOfRa/dd337372e75b8a86fa68aeac6d0094ef

@sonOfRa - No that's not possible the way in which you are trying to do. If you make use of @Test(dataProvider = "externalHashes") then it will cause TestNG to ONLY look for a data provider named externalHashes in the current class and TestNG won't club its value with the @Test annotation that you provided at the class level, at least not afaik. But you can make use of something like this to get past your issue.
First define a custom annotation that lets you express the data provider class and name.
import java.lang.annotation.Retention;
import java.lang.annotation.Target;

import static java.lang.annotation.ElementType.METHOD;

@Retention(java.lang.annotation.RetentionPolicy.RUNTIME)
@Target({METHOD})
public @interface DataProviderInformation {
    String name();

    Class<?> dataProviderClass();
}

You now build a generic data provider adaptor, which will have the ability to patch through the call to an actual underlying data provider. It would look like below
import org.testng.annotations.DataProvider;
import org.testng.internal.reflect.ReflectionHelper;

import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
import java.util.stream.Stream;

public class DataProviderAdapter {

    @DataProvider(name = "getData")
    public static Object[][] getData(Method method) throws InvocationTargetException, IllegalAccessException {
        DataProviderInformation info = method.getAnnotation(DataProviderInformation.class);
        if (info == null) {
            return new Object[][]{
                    {"Jack"},
                    {"Daniels"}
            };
        }

        Class<?> clazz = info.dataProviderClass();
        String dpName = info.name();
        Method[] methods = ReflectionHelper.excludingMain(clazz);
        Method found = Stream.of(methods).filter(method1 -> {
                    DataProvider dp = method1.getAnnotation(DataProvider.class);
                    return dp != null &&
                            (dp.name().equalsIgnoreCase(dpName) || method1.getName().equalsIgnoreCase(dpName));

                }
        )
                .findFirst().orElseThrow(IllegalArgumentException::new);
        return (Object[][]) found.invoke(new Object[] {});
    }
}

And now here's a few data provider implementations that give different types of data.
import org.testng.annotations.DataProvider;

public class BooleanProvider {

    @DataProvider(name = "getData")
    public static Object[][] getData() {
        return new Object[][]{
                {true},
                {false}
        };
    }
}

import org.testng.annotations.DataProvider;

public class NumbersProvider {
    @DataProvider(name = "getData")
    public static Object[][] getData() {
        return new Object[][]{
                {1},
                {2},
                {3}
        };
    }
}

finally here's the test case
import org.testng.annotations.Test;

public class TestClass {

    //Ask for a boolean data provider
    @DataProviderInformation(dataProviderClass = BooleanProvider.class, name = "getData")
    @Test(dataProvider = "getData", dataProviderClass = DataProviderAdapter.class)
    public void consumesBoolean(boolean flag) {
        System.err.println("Got the boolean " + flag);
    }

    //Ask for a number data provider
    @DataProviderInformation(dataProviderClass = NumbersProvider.class, name = "getData")
    @Test(dataProvider = "getData", dataProviderClass = DataProviderAdapter.class)
    public void consumesNumbers(int number) {
        System.err.println("Got the number " + number);
    }

    //fall back to using the default data provider data
    @Test(dataProvider = "getData", dataProviderClass = DataProviderAdapter.class)
    public void consumesString(String txt) {
        System.err.println("Got the text " + txt);
    }

}

You should be able to extend this example to your use case and apply it there as well.
Please let me know if this would work for you and if we can close off this issue.

@krmahadevan Do you think it is something we can do? I don't see any functional issue if the data provider definition is in a child class and its usage in a parent class.

@juherr - I did ponder over it. But since TestNG always overrides the values of @Test set at the class level, with the values of @Test set at the method level, I think its going to be a bit tricky because, if a user sets the data provider information at the class level and then expects it to be cascaded over to the method level, it wont happen (That is what the user's use case is, in this case)

What is the problem here? The dataProviderClass value is lost between the class level and the method level?

I've ended up just using my first workaround, that is, simply having the dataProvider methods in the subclasses, which works. Something that I've used successfully in Tests without inheritance is this:
@Test(dataProviderClass = MyProvider.class)
public class MyTest {
    @Test(dataProvider = "one")
    public void testOne(String foo, String bar) {
        //...
    }

    @Test(dataProvider = "two")
    public void testTwo(String bar) {
        //...
    }
}

public class MyProvider {
    @DataProvider
    public Object[][] one { return new Object[][] { {"foo", "bar" }, {"baz", "quux"}; }
    @DataProvider
    public Object[][] two { return new Object[][] { {"foo"} };
}

This setup works, it just doesn't seem to work if inheritance comes into play.

@sonOfRa it should work in test-data-supplier. Check it please. Note that IntelliJ plugin will be updated in several days to support such syntax.

Finally supported on IDEA level:


Comments: Add button / icon to open the original post in a new tab

Currently the only way to comment on the podcasts in the podcast index is to copy the link of the post and use it to find it in the instance where the user has and account.
The only way to get the original post link, currently, is to copy it from the timestamp. Having a link to the post/comment is a comment UX practice, but it is kind of a hidden feature, as it is not that intuitive.
I suggest that we add a more clear indication on how to open the original post or copy the post link.
A common icon for opening a link in another domain is like the one shown in the screenshot below:

Related issues

#233

Links and References

Matodon thread - https://social.oberhauser.space/@obale/109961887303322180

New mockup from @nathangathright : https://xoxo.zone/@nathan/109973226991064790
live: https://nathangathright.github.io/comment-thread-mockup/

Should make sure this works good on mobile. Popup dialogs like this tend to be a pain to use on mobile devices.

I was looking into the code today.
Since dialog requires the javascript method showModal is used to show the dialog, I'm assuming it does not work well with React. The fact that there are react components for modal stuff is likely an indication that this is complicated.
I'm tempted to use a simple prompt instead.
Also, I'll have to include an option to remove/update the saved home instance, otherwise it would be a "write once" scenario.
Aside from that, I think I understood the stuff.

The dialog element and showModal method are newer elements, but they’re available in all major browsers. I’m unclear why you think this will be an issue with React.
I actually did make a version with prompt first, but it had a major drawback: it was blocked by the browser’s popup blocker. Since I couldn’t set an EventListener on the submit button of the prompt, trying to open a new window after a prompt didn't appear to be in response to a user event, and it was blocked.
I think a way to clear the localStorage would be nice, but was unclear where we’d like to expose controls for that. Maybe we could just store it as a cookie with a short expiration date. Otherwise, asking the user to clear it manually isn’t that complicated:

Hi @nathangathright ,

I think a way to clear the localStorage would be nice, but was unclear where we’d like to expose controls for that. Maybe we could just store it as a cookie with a short expiration date. Otherwise, asking the user to clear it manually isn’t that complicated:

I thought about adding an extra item in the menu, like "forget my account home instance" or something like that.
Contextually it is not an action that belongs to any individual post, but in the other hand, it would easily educate the user on how to do it, so I think it is an ok approximation.

I’m unclear why you think this will be an issue with React.

React is state based and more descriptive and reactive (as per its name 😄) then imperative.
You typically don't give commands like showModal or show, but you change the state to with a property like isShowing and adapt your rendering method to deal with that. So I'll need to research a bit what is the best way do this in react.
Thanks for clearing out the drawback on using prompt.

Regarding the remote interact (i.e. follow, reply, etc...), the patterns https://${instance.hostname}/authorize_interaction?acct=${username}
and https://${instance.hostname}/authorize_interaction?uri=${url} are no a standard, they work for Mastodon and may work for some other instance "types". I consider it an ok first implementation, but moving forward it would be good to have something based on standard protocols.
To my best knowledge, the state of the art is to use WebFinger to find out the OStatus subscribe URL for the Actor (I'm not sure which one, the interactor or the "interactee"). My understanding is that this is intended only for subscriptions (i.e follow), but that many instances "types" (tested with Mastodon and Pleroma) also can use it for redirecting to a post, as represented in their instance, for further interaction (e.g. boosting, favoriting, bookmarking, liking, replying, etc...).
Here are some references:

https://socialhub.activitypub.rocks/t/represent-endpoint-for-remote-interaction/480
https://socialhub.activitypub.rocks/t/what-is-the-current-spec-for-remote-follow/2020
https://socialhub.activitypub.rocks/t/cross-instance-interactions-determining-the-kind-of-action-user-wants-to-perform-to-a-remote-object/734
https://www.hughrundle.net/how-to-implement-remote-following-for-your-activitypub-project/
WebFinger Spec - https://www.rfc-editor.org/rfc/rfc7033
https://en.wikipedia.org/wiki/OStatus

@nathangathright , if you have any good references for this, please share.

I did some more tests with the WebFinger protocol to get the remote interact URL pattern.
To do the WebFinger request I need to pass the account of an existing user in the instance where the interaction will happen.
As far as I can tell, the remote interact URL pattern does not change from user to user, yet we will need to pass a user to get it.
We'll have to prompt for the account of the user initiating the interaction then, not only the instance host.
Example
I want to
interact (e.g. comment) with the post https://podcastindex.social/@dave/110237990624503755 from my account<EMAIL_ADDRESS>I need to send the request<EMAIL_ADDRESS>it will return:
{
    "subject"<EMAIL_ADDRESS>    "aliases": [
        "https://fosstodon.org/@dellagustin",
        "https://fosstodon.org/users/dellagustin"
    ],
    "links": [
        {
            "rel": "http://webfinger.net/rel/profile-page",
            "type": "text/html",
            "href": "https://fosstodon.org/@dellagustin"
        },
        {
            "rel": "self",
            "type": "application/activity+json",
            "href": "https://fosstodon.org/users/dellagustin"
        },
        {
            "rel": "http://ostatus.org/schema/1.0/subscribe",
            "template": "https://fosstodon.org/authorize_interaction?uri={uri}"
        }
    ]
}

I'll get the template from the link with rel equal to http://ostatus.org/schema/1.0/subscribe, then replace {uri} with https://podcastindex.social/@dave/110237990624503755, and open the resulting url on the browser. This should open the post in my instance so that I can interact with it there. A login flow takes place if I am not logged in yet.

Some more test results of the URLs resulting of the approach above:

https://fosstodon.org - Mastodon - v4.1.2

👍interact with post - https://fosstodon.org/authorize_interaction?uri=https://podcastindex.social/@js/110238757531058833
👍interact with user - https://fosstodon.org/authorize_interaction?uri=<EMAIL_ADDRESS>👍interact with user -<EMAIL_ADDRESS>👍interact with user - https://fosstodon.org/authorize_interaction?uri=https://podcastindex.social/@js

https://blob.cat - Akkoma - 3.3.1-0-gbba467b39-blob (a fork of Pleroma)

👍interact with post - https://blob.cat/ostatus_subscribe?acct=https://podcastindex.social/@js/110238757531058833
👎 interact with user - https://blob.cat/ostatus_subscribe?acct=<EMAIL_ADDRESS>
"Error fetching user"

👍interact with user -<EMAIL_ADDRESS>👎interact with user - https://blob.cat/ostatus_subscribe?acct=https://podcastindex.social/@js

HTTP ERROR 500

Implemented with https://github.com/Podcastindex-org/web-ui/pull/253.


Issue with Az policy (DINE) Configure diagnostic settings for Table Services to Log Analytics workspace

Community Note

Please vote on this issue by adding a 👍 reaction to the original issue to help the community and maintainers prioritize this request
Please do not leave "+1" or "me too" comments, they generate extra noise for issue followers and do not help prioritize the request
If you are interested in working on this issue or have submitted a pull request, please leave a comment

Versions

terraform: N/A
azure provider: N/A
module: Azure/terraform-azurerm-caf-enterprise-scale (v3.1.2)
Description
Issue with Az policy (DINE) Configure diagnostic settings for Table Services to Log Analytics workspace
Describe the bug
This policy seems to be also triggered for Storage accounts that do not have Table Services enabled. So this policy renders incompliant for non-existing resources.
See the screenshot below with the remediation results for a set of incompliant tableservices;

Please note that the first is remediated with success as this Storage Account has Table Services enabled. The others however do not.
When looking into the related events the following error is available:
Error Code : RemediatedResourceNotFound
Reason : The resource being remediated '/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourcegroups/xxxxx/providers/microsoft.storage/storageaccounts/xxxxxxxxxxx/tableservices/default' could not be retrieved.
When actually clicking on the resourse from the policy remediation blade the following is shown, demonstrating there is no actual resource propertiesfound;

This also seems to appear if other Storage Account services, like Queue, Blob or File are not enabled within the Storage account
Steps to Reproduce
Remediation fails again and again
Screenshots
See above
Additional context
N/A

ADO AB#26066

@MarcelHeek we have repro'd the issue and are working with engineering to address. Thanks for raising!
In the mean time you could exclude these resources by copying the definition and editing the policyRule to:
{
  "policyRule": {
    "if": {
      "allOf": [
        {
          "field": "type",
          "equals": "Microsoft.Storage/storageAccounts/tableServices"
        },
        {
          "field": "name",
          "notEquals": "default"
        }
      ]
    }
  }
}

Please read #1203 for more analysis on this issue and info on the workarounds proposed here

any news on how to fix this?

We are seeing this at scale at clients due to usage of the storage account kind 'BlobService', causing policy compliance reports to have false-negatives.
Are there any updates on expected resolution for this built in policy versus storage account diagnostic settings support?
Do you have an update that you are able to share @jtracey93 ?
We are considering making policy exemptions where this occurs, but that is non-trivial due to the randomness of how this pops up depending on landing zone resource usage.

We are currently planning a change to the diagnostic settings policies and moving towards some new built-in's based on category groups.
@Springstone is this one we have tested to see if it resolved in the new policies?

Hi Team, Any update?

Closing this as we've deprecated all our diagnostic settings policies and shifted to the PG owned initiative to do the same. Please review https://aka.ms/alz/whatsnew for details.


add step 3 into workshop doc

Issue #, if available:
Description of changes:
preview
Checklist:

[ ] Have you successfully deployed to an AWS account with your changes?
[ ] Have you successfully deployed to an AWS China account with your changes?
[ ] Have you written new tests for your core changes, as applicable?
[ ] Have you successfully tested with your changes locally?
[ ] If new dependencies have been added, have they been pinned to specific versions?
[ ] Is this change also required on the AWS Solution version?
[ ] Have you updated openapi.yaml if you made updates to API definition (including add, delete or update parameter and request data schema)?
[ ] If you had to run manual tests, have you considered automating those tests by adding them to end-to-end tests?
[ ] If you are updating the changelog and vending out a new release, have you updated versionNumber and versionDate in .defaults.yml

AS review ticket id:
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Codecov Report

Merging #104 (2324afa) into develop (8c954bc) will decrease coverage by 14.37%.
The diff coverage is n/a.

:exclamation: Current head 2324afa differs from pull request most recent head 24b9bc1. Consider uploading reports for the commit 24b9bc1 to get more accurate results

@@             Coverage Diff              @@
##           develop     #104       +/-   ##
============================================
- Coverage    51.71%   37.33%   -14.38%
============================================
  Files          302       33      -269
  Lines        17219     1457    -15762
  Branches      2660      276     -2384
============================================
- Hits          8905      544     -8361
+ Misses        7317      761     -6556
+ Partials       997      152      -845

Impacted Files
Coverage Δ

src/models/users/User.js
12.90% <0.00%> (-38.06%)
:arrow_down:

src/models/users/UsersStore.js
38.66% <0.00%> (-5.98%)
:arrow_down:

src/models/forms/AddUserForm.js
100.00% <0.00%> (ø)

lib/utils/error-with-suggestions.js

lib/workflow/helpers/supported-override.js

...roviders/authentication-provider-config-service.js

...arts/environments-builtin/EnvironmentDetailPage.js

lib/user/user-authz-service.js

src/parts/dashboard/Dashboard.js

lib/helpers/iam/study-policy.js

... and 263 more

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 8c954bc...24b9bc1. Read the comment docs.