gRPC CMake Build Fails On Windows For Visual Studio 2022

What version of gRPC and what language are you using?
Latest/current live version
What operating system (Linux, Windows,...) and version?
Windows 11
What runtime / compiler are you using (e.g. python version or version of gcc)
Visual Studio 2022 MSVC
What did you do?
I cloned the current gRPC repo, ran CMake to generate Visual Studio projects, and build the project. The build fails. Note that it appears to fail due to an issue with the protobuf library, and I have submitted an issue on that repository as well:
https://github.com/protocolbuffers/protobuf/issues/14861
I am reporting it here in case there may be other issues as well (see the last build error). A video of all steps are shown below. The Visual Studio output is also shown below.
What did you expect to see?
Expect to see the project build successfully.
https://github.com/grpc/grpc/assets/13501663/7c68d4b2-ce91-4aa4-87e7-db52399ff718
Visual Studio Build Errors:
Severity	Code	Description	Project	File	Line	Suppression State	Details
Error	MSB8066	Custom build for 'C:\gRPC\grpc.build\CMakeFiles\69c347180b22e8361817a4d70df3786a\reflection.grpc.pb.cc.rule;C:\gRPC\grpc.build\CMakeFiles\02f178ed1671806d0ea8d311f7cb5987\reflection.grpc.pb.cc.rule;C:\gRPC\grpc\CMakeLists.txt' exited with code 9009.	grpc++_reflection	C:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Microsoft\VC\v170\Microsoft.CppCommon.targets	254
Error	LNK2005	"void __cdecl absl::lts_20230802::base_internal::SetCurrentThreadIdentity(struct absl::lts_20230802::base_internal::ThreadIdentity ,void (__cdecl)(void *))" (?SetCurrentThreadIdentity@base_internal@lts_20230802@absl@@YAXPEAUThreadIdentity@123@P6AXPEAX@Z@Z) already defined in abseil_dll.lib(abseil_dll.dll)	protoc	C:\gRPC\grpc.build\third_party\protobuf\absl_base.lib(thread_identity.obj)	1
Error	LNK2005	"void __cdecl absl::lts_20230802::base_internal::ClearCurrentThreadIdentity(void)" (?ClearCurrentThreadIdentity@base_internal@lts_20230802@absl@@YAXXZ) already defined in abseil_dll.lib(abseil_dll.dll)	protoc	C:\gRPC\grpc.build\third_party\protobuf\absl_base.lib(thread_identity.obj)	1
Error	LNK1169	one or more multiply defined symbols found	protoc	C:\gRPC\grpc.build\third_party\protobuf\Debug\protoc.exe	1

Please open a bug against ABSL

The absl build appears to work fine for Visual Studio on Windows:
https://github.com/grpc/grpc/assets/13501663/338b1c0a-20c0-4870-a22f-aaec7a2833ac
Do you mean protobuf? I have also submitted a related ticket to protobuf here. I believe it is being worked on. It seemed like there were also other issues with the gRPC build error.

Hello @eugeneo,
Just checking on this, were you able to reproduce my issue?
Thanks!

Have you tried building from command prompt? It worked for me. I followed the guide found here, except I used VS 2022 generator - cmake .. -G "Visual Studio 17 2022"

I opened the solution CMake generated (grpc.sln) and ran a release build from VS2022. It did an incremental build that was successful:
========== Build: 127 succeeded, 0 failed, 26 up-to-date, 8 skipped ==========
========== Build started at 5:07 PM and took 06.905 seconds ==========

I confirmed that random change causes a recompilation that VS does without any issues:
Build started...
1>------ Build started: Project: grpc, Configuration: Release x64 ------
1>xds_override_host.cc
1>C:\Users\eostr\GitHub\grpc\src/core/lib/gprpp/time.h(326,30): warning C4146: unary minus operator applied to unsigned type, result still unsigned
1>C:\Users\eostr\GitHub\grpc\src/core/lib/channel/channel_args.h(329,19): warning C4312: 'reinterpret_cast': conversion from 'int' to 'void *' of greater size
1>C:\Users\eostr\GitHub\grpc\third_party\upb\upb/message/internal/array.h(123,3): warning C4334: '<<': result of 32-bit shift implicitly converted to 64 bits (was 64-bit shift intended?)
1>grpc.vcxproj -> C:\Users\eostr\GitHub\grpc\.build\Release\grpc.lib
1>Done building project "grpc.vcxproj".
========== Build: 1 succeeded, 0 failed, 73 up-to-date, 0 skipped ==========
========== Build started at 5:11 PM and took 10.143 seconds ==========

Hi @eugeneo ,
I just tried again and it failed again. Will provide video below. My steps to reproduce:

With current working directory of C:\gRPC_test:
git clone https://github.com/grpc/grpc
cd grpc
git submodule update --init
md .build
cd .build
cmake .. -G "Visual Studio 17 2022"
After that runs, I opened the solution at "C:\gRPC_test\grpc.build\grpc.sln" and tried building in both Debug mode and Release mode.  I will provide the error output in a separate comment.

err.txt

Sorry, I can only try Windows at home on my personal workstation - so it'll take some time till I get there and remember to try...
What I suspect is the problem is that I did a build from a command line - cmake --build . --config Release after running cmake .. -G "Visual Studio 17 2022" . I agree this is really suboptimal if this is a case but fixing such a build issue would be low priority since there's a workaround.


backend: add PyScript for Python.

Completed:
added PyScript (Web assembly) based compilation system for Python.
Snippet takes a  python source file and compiles it and prints the output on the webpage.


Support more browsers

Currently, only Chromium-based browsers are supported, since OffscreenCanvas is used to render the game. It would be nice to have an alternate renderer in order to make it possible to run Rask in non-Chromium browsers (e.g. Firefox).

Are we other browsers yet?

:x: :question: firefox: See https://bugzilla.mozilla.org/show_bug.cgi?id=1390089 for the (?) tracking issue for firefox.

[Supported] Roughly 2020H2.

:heavy_check_mark: chromium, edge, opera and Samsung Internet: supported, see https://developer.mozilla.org/en-US/docs/Web/API/OffscreenCanvas (not tested by me).
:x: Trash Browsers

Path towards offscreen canvas fallback implementation:
Add the required Content Security Policy (CSP) headers required to work under firefox: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/SharedArrayBuffer/Planned_changes
(this can for testing purposes be disabled by setting a flag in about:config)
Fetch the worker.js to make it accessible from the main thread
execute the script directly from the main thread in case of the offscreen canvas not working


Documentation update

@alkidbaci could you also modify the example script (see #261) and include you in the documentation update request ?

@Demirrr I think the person that raised the issue must be using an older version or smth because it the current develop branch concept_learning_with_ocel.py works correctly ( and the line model.set_max_runtime(600) is not even there).


More condensing of GO

iIn the current pombase, GO data is one one row unless there are mulitiple publications or extensions in which case  there is a new row.
Compare:

I think this makes it quite a bit more condensed. It might only be possible with abbreviated GO evidence codes (full code mouse over)

It's much better now.

It is!


Re-formatting the code and adding docstrings to the functions

-Re-formatting the code based on flake8.
-Adding docstrings to describe the different functions.

@maky-hnou thanks for your contribution!


waitFor - multiple events

Hi,
I'm trying to do as the following:
I want my workflow to have multiple paths.
for example, I want to wait for 2 events. 1 named "manager" and the other named "client"
if the manager event happened then continue in 1 path and if the "client" event happened then continue in the second path.
But I need the workflow not to wait until both events happen.
I need it to continue and complete when the first (of 2) event happens
This is my example code:
export class HelloWorldWorkflow implements WorkflowBase<any> {
  public id: string = 'hello-world';
  public version: number = 1;

  public build(builder: WorkflowBuilder<any>) {
    builder
      .startWith(HelloWorld)
      .parallel()
      .do(branch1 => branch1
        .startWith(HelloWorld1)
        .waitFor('manager', data => '0')
        .output((step, data) => step.eventData && console.log(`Event manager`))

        .then(HelloWorld2),
      )
      .do(branch2 => branch2
        .startWith(HelloWorld3)
        .waitFor('client', data => '0')
        .output((step, data) => step.eventData && console.log(`Event client`))
        .then(HelloWorld4),
      )
      .join()
      .then(GoodbyeWorld);
  }
}

But in my example, the workflow will end only after both events happen.

Thanks

What if you modeled it as 1 event with that carries different data depending on the origin (manager, etc...)?


DISTRO_PACKAGE: fix incorrect vendored tar archive URL

Given there's a vendored tarball as part of releases, does this mean this is preferred over vendoring at build time cargo update && cargo vendor before building?
Signed-off-by: Danish Prakash<EMAIL_ADDRESS>

Given there's a vendored tarball as part of releases, does this mean this is preferred over vendoring at build time cargo update && cargo vendor before building?

I don't think it matters much, the result should be more or less the same. The only thing to consider is that if you change the dependencies versions we obviously did not tests that and you could run into problems.


More sensors!

Is your feature request related to a problem? Please describe.
I'd like to be able to automate and configure UI based on the value of

Electric heater (if its enabled/disabled)
Target temperature on Normal/Cooling/Economy mode

Describe the solution you'd like
Create 4 new sensors that display the state of the above mentioned data
(or make the heater a switch if possible, that is "unavailable" unless maintenance PW is provided)
Describe alternatives you've considered
I've manually set temperatures for the different modes in UI elements, which
requires manual syncing with the settings in my LOKE-01
Additional context
Add any other context or screenshots about the feature request here.

Services for target temperature are implemented i v4 release
I've been a bit reluctant to add expose stuff from maintenance page until now, the potential for user to f**k up and potentially destroy the house with mould by overpressure. Disabling the electric heater may cause the system to shut down if supply air temperature alarm triggers. The initial scope of the integration was not to alter the system settings. I'll consider it though.

I've been a bit reluctant to expose stuff from maintenance page until now, the potential for user to f**k up and potentially destroy the house with mould by overpressure.

In regards to this I understand you if we are talking control-ability, but purely for sensor use then it's no issue right? :)

I've been a bit reluctant to expose stuff from maintenance page until now, the potential for user to f**k up and potentially destroy the house with mould by overpressure.

In regards to this I understand you if we are talking control-ability, but purely for sensor use then it's no issue right? :)

Correct! The websocket connection streams all values including installer/maintenance configuration every few seconds to the client, the integration is just listening in on the data and exposing the values as sensors in HA.
I believe changing stuff like vent mode etc is not persisted on the device and (hopefully) shouldn’t cause any storage wear.
Installer settings on the other hand, are persisted to flash. From the specs of ESP32 (if this is the case) the device should be good for around 10k-100k writes to flash.

Id love to reopen this if possible
I still want 3 new sensors:

1 representing the setting for "normal temperature"
1 representing the setting for "economy temperature"
1 representing the setting for "cooling temperature"


New doc: Pipelines

Moved from https://github.com/aspnet/Docs/issues/5521
See https://github.com/aspnet/KestrelHttpServer/issues/1980 and Bedrock update
Document the lower layers.
The transports
@KPixel wrote
The outline/TOC could be as in the tutorial:

Link to learn about the primitives Span and Memory
Introduction to the Pipe class
Simple Pipe sample
The Receive() loop
Pipes in ASP.NET Core 2.1
Introducing IDuplexPipe
Creating a pair of DuplexPipes
Duplex Connection

Considering how advanced certains sections can get, I don't know if we should split this into many articles (now), or leave it as-is (and refactor later as the extra advanced topics get covered).
More fundamentally, I think this doc belongs in the .NET doc. Probably next to the doc for Span/Memory
Here is the issue tracking the doc for Span: https://github.com/dotnet/docs/issues/4400

Pipelines article on the official .NET blog:
https://blogs.msdn.microsoft.com/dotnet/2018/07/09/system-io-pipelines-high-performance-io-in-net/
The original specs from the lab:
https://github.com/dotnet/corefxlab/blob/master/docs/specs/pipelines.md
https://github.com/dotnet/corefxlab/blob/master/docs/specs/pipelines-io.md
Another in-depth article:
https://blog.marcgravell.com/2018/07/pipe-dreams-part-1.html
https://blog.marcgravell.com/2018/07/pipe-dreams-part-2.html
These articles all have different ways to approach Pipelines, so they may be useful.

Awesome @KPixel. Open a PR once you're ready to get reviews started.

@Rick-Anderson @mairaw I've opened the PR here #11347


test-branch/execute-job/wrong-commit-sha-on-pr/5423721a-7db1-4bbc-9158-f86db7b3429a

PR for testing 38f9410396f5b1fe3fbb8bb32289c47fe487de5c

/canonical/self-hosted-runners/run-workflows 931ad21dd9ace68aaa0a7d341e94de96ad93fa6b


Scaffold needs a README.

A description, getting started guide, and contributing doc would be great here, too. The new template README is nice, but our scaffold project README is a bit sparse. ;)

👍🏼 +1

A bit better, but we could flesh this out more with descriptions of each script, etc...


overrideNamespace - no "missing namespace" error in diff, but in deploy

Operating system
WSL2 with Ubuntu 20.04.5 LTS
Kluctl Version
2.14.1
Kubernetes Version
v1.23
kubectl Version
v1.25
Bug description
Hey there,
tiny, but tricky thing that came up today :-)
We have a folder with some services to deploy in it and a deployment.yml for all subfolders with an overrideNamespace.
So the namespace is not defined in the resources for each service.
When diffing this to an environment, there is no error and everything looks fine.
But when deploying, the error about missing namespace comes up.

root
service1

kustomization.yml
deploy.yml

service2

kustomization.yml
deploy.yml
ingress.yml

deployment.yml <-- here we have the overrideNamespace declared.

When defining a namespace in the ingress.yml for example, the diff throws an error messages about the missing namespace. So its only the case when overrideNamespace is defined.
Steps to reproduce
No response
Relevant log output
No response

Thanks for reporting this! :)
I managed to reproduce and fix this. Will be released in the next release.


Fix and improve tests. Configure linter

I configured eslint and fixed all errors. Some tests were not running because of typos.
The test script in package.json is also much cleaner now.

@duaraghav8 can you setup Travis CI or another build system to run all tests for each pull request?

Hi @duaraghav8, anything blocking this patch?

@federicobond sorry for delaying the merge, but I'm keeping track of it. I first have to remove a couple of rules and their tests since me and cgewecke are working on shifting to solidity-parser (have a look here https://github.com/duaraghav8/solparse/issues/15).
Then I'll be re-visiting your PR to make sure nothing breaks and I'll merge.

Great! This is good step forward for code quality. Would you mind configuring Travis so we can run the tests and these checks on each pull request?
If you are too busy I can configure it for you.


"ms-vscode.cmake-tools" C/CPP configuration provider unable to find headers from nuget package

Brief Issue Summary
The CMake VS_PACKAGE_REFERENCES target property can be used to make C++ nuget packages (such as C++/WinRT, WIL, and the Windows App SDK) available to CMake projects.
This works fine if I use Visual Studio to open the CMake-produced vcxproj and friends, but VS Code is unable to locate these headers, and in turn, this makes intellisense not usable for files including headers from nuget packages.
CMake Tools Diagnostics
{
  "os": "win32",
  "vscodeVersion": "1.74.3",
  "cmtVersion": "1.13.43",
  "configurations": [
    {
      "folder": "c:\\Users\\Fred\\code\\openkneeboard",
      "cmakeVersion": "3.25.1",
      "configured": true,
      "generator": "Visual Studio 17 2022",
      "usesPresets": false,
      "compilers": {}
    }
  ],
  "cpptoolsIntegration": {
    "isReady": true,
    "hasCodeModel": true,
    "activeBuildType": "Debug",
    "buildTypesSeen": [
      "Debug",
      "Release",
      "MinSizeRel",
      "RelWithDebInfo"
    ],
    "requests": [
      "file:///c%3A/Users/Fred/code/openkneeboard/src/app/app-winui3/MainWindow.xaml.cpp"
    ],
    "responses": [
      {
        "uri": "file:///c%3A/Users/Fred/code/openkneeboard/src/app/app-winui3/MainWindow.xaml.cpp",
        "configuration": {
          "includePath": [
            "c:/users/fred/code/openkneeboard/src/app/app-winui3",
            "c:/users/fred/code/openkneeboard/build/third-party/cppwinrtnuget-prefix/src/cppwinrtnuget-build/include",
            "c:/users/fred/code/openkneeboard/src/app/app-common/gameslist/include",
            "c:/users/fred/code/openkneeboard/src/app/app-common/pagesource/include",
            "c:/users/fred/code/openkneeboard/src/app/app-common/tab/include",
            "c:/users/fred/code/openkneeboard/src/app/app-common/tabslist/include",
            "c:/users/fred/code/openkneeboard/src/app/app-common/toolbaritems/include",
            "c:/users/fred/code/openkneeboard/src/app/app-common/uilayers/include",
            "c:/users/fred/code/openkneeboard/src/app/app-common/userinput/include",
            "c:/users/fred/code/openkneeboard/src/app/app-common/include",
            "c:/users/fred/code/openkneeboard/build/third-party/jsonfetch-prefix/include",
            "c:/users/fred/code/openkneeboard/src/lib/include",
            "c:/users/fred/code/openkneeboard/build/src/lib/include",
            "c:/users/fred/code/openkneeboard/src/games/include",
            "c:/users/fred/code/openkneeboard/third-party/out_ptr/include",
            "c:/users/fred/code/openkneeboard/build/third-party/semverbuild-prefix/src/semverbuild/include"
          ],
          "defines": [
            "BUILD_CONFIG=\"Debug\"",
            "DEBUG",
            "DIRECTINPUT_VERSION=0x0800",
            "DISABLE_XAML_GENERATED_MAIN=1",
            "NOMINMAX=1",
            "OPENKNEEBOARD_BREAK=__debugbreak()",
            "OPENKNEEBOARD_JSON_SERIALIZE=1",
            "OPENKNEEBOARD_UNREACHABLE=__assume(false)",
            "UNICODE=1",
            "WIN32_LEAN_AND_MEAN=1",
            "_UNICODE=1"
          ],
          "compilerPath": "c:/program files/microsoft visual studio/2022/community/vc/tools/msvc/14.34.31933/bin/hostx64/x64/cl.exe",
          "compilerArgs": [],
          "compilerFragments": [
            "/DWIN32 /D_WINDOWS /EHsc /Zi /Ob0 /Od /RTC1 -MTd",
            "/EHsc",
            "/await:strict",
            "/FS",
            "/diagnostics:caret",
            "/Zc:__cplusplus",
            "/utf-8",
            "/WX",
            "/wd4996",
            "/wd4250",
            "/wd4297",
            "/FIC:/Users/Fred/code/openkneeboard/build/src/app/app-winui3/CMakeFiles/OpenKneeboard-App-WinUI3.dir/Debug/cmake_pch.hxx",
            "-std:c++20",
            "/YuC:/Users/Fred/code/openkneeboard/build/src/app/app-winui3/CMakeFiles/OpenKneeboard-App-WinUI3.dir/Debug/cmake_pch.hxx /FpC:/Users/Fred/code/openkneeboard/build/src/app/app-winui3/OpenKneeboard-App-WinUI3.dir/Debug/cmake_pch.pch /FIC:/Users/Fred/code/openkneeboard/build/src/app/app-winui3/CMakeFiles/OpenKneeboard-App-WinUI3.dir/Debug/cmake_pch.hxx"
          ]
        }
      }
    ],
    "partialMatches": [],
    "targetCount": 126,
    "executablesCount": 25,
    "librariesCount": 49,
    "targets": []
  },
  "settings": [
    {
      "communicationMode": "automatic",
      "useCMakePresets": "auto",
      "configureOnOpen": true
    }
  ]
}

Debug Log
No response
Additional Information
Example projects:

https://github.com/fredemmott/cmake-cpp-winrt-winui3 - toy example
https://github.com/OpenKneeboard/OpenKneeboard - real-world example. Most files work fine, but the .xaml.cpp files in src/app/app-winui3 in particular have this problem, e.g. src/app/app-winui3/MainWindow.xaml.cpp. One symptom of this is to type this-> then press ctrl+space. This works fine in Visual Studio, but with CMake Tools as the intellisense configuration provider, finds no results.

This wouldn't be technically correct, but a band-aid for most Microsoft-published packages would be to add ${HOME}/.nuget/packages/PACKAGE/VERSION/include/

Thank you for reporting this issue.


Add ScapeGPT plugin to plugin hub

A simple ChatGPT-esque plugin that lets users ask any OSRS-related question and receive an answer that leverages OpenAI's chat models augmented on data from all 27k+ articles on the OSRS wiki.

You need to fix these issues
net.runelite.pluginhub.packager.PluginBuildException: scapegpt: plugin uses terminally deprecated APIs:
Do not create fresh Gson instances, always @Inject the client's Gson.
You can customize it by calling .newBuilder() on it
Do not create fresh OkHttpClients - always @Inject the client's OkHttpClient
at net.runelite.pluginhub.packager.PluginBuildException.of(PluginBuildException.java:54)
at net.runelite.pluginhub.packager.Plugin.assembleManifest(Plugin.java:720)
at net.runelite.pluginhub.packager.Packager.buildPlugin(Packager.java:183)
at net.runelite.pluginhub.packager.Packager.lambda$buildPlugins$0(Packager.java:122)
at java.base/java.lang.Thread.run(Thread.java:829)

Ugh sorry I'm bad at dependency injection lol gimme a bit I'll figure it out

Don't use https://github.com/polyphilz/scapegpt/blob/66e124be600c998c0eca78d33a309fced2cf7c8f/src/main/java/com/rohanbansal/ScapeGptPlugin.java#L51

Don't use https://github.com/polyphilz/scapegpt/blob/66e124be600c998c0eca78d33a309fced2cf7c8f/src/main/java/com/rohanbansal/ScapeGptPlugin.java#L51

Removed sending of any RL auth specifics outright to server; don't need them, this was leftover from a previous experiment.


freemarker download is failing

What are you trying to do? Run a build, which invokes https://github.com/adoptium/temurin-build/blame/784af5c903f067fec94195597856b3ef9c70ba5f/sbin/prepareWorkspace.sh#L391 to download https://downloads.apache.org/freemarker/engine/2.3.31/binaries/apache-freemarker-2.3.31-bin.tar.gz
Expected behaviour: File is downloaded as it was in builds from the 13th January
Observed behaviour: 404 Not found in the next build from the 29th
Any other comments: Since this is the first time we have fully disabled the builds during the pipeline and it lasted for two weeks it is not clear when this started occurring.

FYI @AdamBrousseau is this affecting you?

Freemarker is only needed for UMA builds; OpenJ9 has been using CMake builds for some time: Maybe it's time to stop fetching freemarker?

We've actually hacked out the freemarker download some time ago on our end. I think probably when it started failing last time. Never followed up on proper solution probably due to lack of priority.
https://github.com/ibmruntimes/temurin-build/commit/5546579e8910f8edf97851405331379bb45c2b6b
https://github.com/ibmruntimes/ci-jenkins-pipelines/pull/28
https://github.com/ibmruntimes/temurin-build/pull/3/

@keithc-ca Since I haven't been keeping up with OpenJ9 developments can you clarify something for me: if freemarker is a compile time build dependency why does it make any difference whether it's a CMake or UMA build? Is freemarker always skipped on a CMake build?

Of course, we will need to stop using the configure option --with-freemarker-jar as that expects that the named file exists.

Do you build without that option in the openj9 CI? In which case we should definitely follow that in ours.

It's not uncommon for Apache to move all but the current release to archive.apache.org, and FreeMarker is now at v2.3.32.

Do you build without that option in the openj9 CI? In which case we should definitely follow that in ours.

No, most builds don't use that option; (e.g. the latest jdk11_x86-64_linux build):
20:00:39  + bash configure --with-boot-jdk=/home/jenkins/bootjdks/jdk11 --enable-cuda --with-cuda=/usr/local/cuda-9.0 --with-openssl=fetched --enable-jitserver

https://github.com/eclipse-openj9/openj9/pull/16759 will eliminate the other (unnecessary) uses.


Appstudio update test-component-pac-dxlw

Pipelines as Code configuration proposal

Pipelines as Code CI/test-component-pac-dxlw-on-pull-request has successfully validated your commit.

StatusDurationName

✅ Succeeded
7 seconds
init

✅ Succeeded
18 seconds
clone-repository

✅ Succeeded
42 seconds
build-container

✅ Succeeded
19 seconds
deprecated-base-image-check

✅ Succeeded
18 seconds
sanity-inspect-image

✅ Succeeded
3 minutes
clair-scan

✅ Succeeded
46 seconds
clamav-scan

✅ Succeeded
16 seconds
sbom-json-check

✅ Succeeded
16 seconds
sanity-label-check

✅ Succeeded
16 seconds
sanity-optional-label-check

✅ Succeeded
5 seconds
show-summary

Pipelines as Code CI/test-component-pac-dxlw-on-pull-request has successfully validated your commit.

StatusDurationName

✅ Succeeded
6 seconds
init

✅ Succeeded
11 seconds
clone-repository

✅ Succeeded
28 seconds
build-container

✅ Succeeded
10 seconds
sanity-inspect-image

✅ Succeeded
8 seconds
deprecated-base-image-check

✅ Succeeded
8 seconds
clair-scan

✅ Succeeded
36 seconds
clamav-scan

✅ Succeeded
8 seconds
sbom-json-check

✅ Succeeded
22 seconds
sanity-optional-label-check

✅ Succeeded
20 seconds
sanity-label-check

✅ Succeeded
6 seconds
show-summary

Pipelines as Code CI/test-component-pac-dxlw-on-pull-request has successfully validated your commit.

StatusDurationName

✅ Succeeded
6 seconds
init

✅ Succeeded
11 seconds
clone-repository

✅ Succeeded
28 seconds
build-container

✅ Succeeded
10 seconds
sanity-inspect-image

✅ Succeeded
8 seconds
deprecated-base-image-check

✅ Succeeded
8 seconds
clair-scan

✅ Succeeded
36 seconds
clamav-scan

✅ Succeeded
8 seconds
sbom-json-check

✅ Succeeded
20 seconds
sanity-label-check

✅ Succeeded
22 seconds
sanity-optional-label-check

✅ Succeeded
6 seconds
show-summary


fix "performance has no method now" error

You edited the build file. You should have had edited  src/createLogger.js.
Also it's bad practice to assume that the window global exists. This would break isomorphic server-side rendering in node. Proper fix would be to test for both the performance object and now method on it:
var timer = typeof performance !== 'undefined' && typeof performance.now === 'function'  ? performance : Date;

As I broke this initially I pushed a proper fix to #30 :)

Closed in favor of #30 (because it also check options).
And thanks for report!


Support Thunderstorm and Next-Week Properties in French

In the near future, the API will begin generating the following new properties:

possible-thunderstorm
thunderstorm
next-sunday
next-monday
next-tuesday
next-wednesday
next-thursday
next-friday
next-saturday

Add support for these properties to French. (Information is available in the README, and examples are visible in /lib/lang/en.js and /test_cases/en.js.)

Tagging @ltressens. Please take a look if you get a chance!

Sure. I'll take a look and revert to you


Add tilde and relative path support for local repo scan

Description:
Currently only absolute paths work with local repo scan using --repopath and  --ownerpath.
gitleaks --repo-path=/home/doe/TEST/iNaturalist-Observations/
INFO[2020-09-06T23:33:44+05:30] No leaks detected. 3 commits scanned in 9 milliseconds 892 microseconds

gitleaks --owner-path=/home/doe/per/TEST/
WARN[2020-09-06T23:34:14+05:30] abc is not a git repo, skipping
WARN[2020-09-06T23:34:14+05:30] def is not a git repo, skipping
INFO[2020-09-06T23:34:14+05:30] No leaks detected. 3 commits scanned in 7 milliseconds 224 microseconds

gitleaks --repo-path=~/per/TEST/iNaturalist-Observations/
ERRO[2020-09-06T23:33:57+05:30] repository does not exist

gitleaks --owner-path=~/per/TEST/
ERRO[2020-09-06T23:34:05+05:30] open ~/per/TEST/: no such file or directory

This patch enables support for tilde and relative path.

relative paths work in v7


CesiumJS 1.57, the HelloWorld is blank, why?

Hello everyone!
I downloaded the CesiumJS 1.57 source code, extracted,  and run the following commands on windows 10(1903):
$ npm install
$ node server.js
Then, I tried the http://localhost:8080/Apps/HelloWorld.html
But it was blank！
Then I tried the 1.40 version as the same way.
But it worked very well!
:exclamation:  I don't know why 1.57 didn't work but 1.40 worked well  :exclamation:
I tried this on Chrome 74.0.3729.169. The latest version! And the Node.js was v10.15.3.
I wish someone can help me! Thanks very much.

@Hiwen were you getting any errors in the console?

Hello World requires the built version of Cesium.  You need to run npm run minifyRelease in order for it to work (or to reflect any changes made to the code).

See The build guide for other information about building Cesium: https://github.com/AnalyticalGraphicsInc/cesium/tree/master/Documentation/Contributors/BuildGuide


Multiplexing Support

Does the library support multiplexing multiple services on a single Thrift server today?

Does the library support multiplexing multiple services on a single Thrift server today?

No :(


pass in the client id

pass the --client-id cli param into the analysis server

@lukechurch

lgtm - merging


can customize CORRECTNESS_INSTRUCTIONS and CORRECTNESS_PROMPT when evaluate answer_correctnes

[ ] I checked the documentation and related resources and couldn't find an answer to my question.
Your Question
can customize CORRECTNESS_INSTRUCTIONS and CORRECTNESS_PROMPT when evaluate answer_correctnes
Code Examples
I found some statements inaccuracy. can custom CORRECTNESS_INSTRUCTIONS and CORRECTNESS_PROMPT?

@dosu What does the complete code example look like?


Is there a way to return a custom HTTP response code using the grpc_json_transcoder filter?

I'm implementing an API using the grpc_json_transcoder filter and working well. I know the HTTP response code is mapped to grpc-status according to the code.proto  definition. But, I have a doubt if it would be possible to customize the HTTP return code, like answering HTTP 201 (Created) or HTTP 202 (Accepted) in a successful response without using the Lua script to intercept the upstream. Do we have more information about it? Thanks in advance.

cc @lizan @qiwzhang

your desired http_status code will be based on what?  a field from response_body?   or grpc status code in the response headers?  But for a successfully grpc response, there will not be grpc_status code in the response header.

@qiwzhang Reading the code.proto  I understood that isn't possible to use grpc-status because doesn't have this mapping. Is there another native way in Envoy to do that?
To make this feasible, I implemented a Lua script to change the HTTP response based on a custom header returned by the application, more and less like that:
local function isempty(s)
  return s == nil or s == ''
end

function envoy_on_response(response_handle)
  local headers = response_handle:headers()
  local custom_response_code = headers:get("x-http-response-code")
  response_handle:logInfo("Custom Response Code: " .. custom_response_code)
  if response_handle:headers():get(":status") == "200" and (not isempty(custom_response_code)) then
    response_handle:headers():replace(":status", custom_response_code)
  end
end

But, I'd like to understand if exists a better way to do that.

So you are requesting a feature that allowing gRPC server to set the HTTP status code after transcode the response to HTTP/json,  is that correct?   Current envoy grpc_transcoder doesn't support anything like this.  For your idea of using a response header,  it is not supported by grpc_transcoder either.
But it should be easy to add it.

In fact, my goal is to understand if the transcoder can customize HTTP codes that don't have mapped in code.proto.
As the transcoding specs talk about "... RESTful JSON API client to send requests to a gRPC service ...", I'd like to design my APIs returning HTTP codes more connected with this paradigm (REST). As I implementing a RESTful async API, I believe the better HTTP code to return would be 202 for this case (at least, according to https://www.rfc-editor.org/rfc/rfc7231#section-6.3.3).

Sorry,  grpc transcoder could not customize http code from grpc status-code. I also feel it is not the right approach, in grpc world, only 0 means success,  non-zero codes mean errors. I guess your requirement doesn't fit into grpc world.

Thanks,  @qiwzhang  for your time to talk about a little of this topic. Feel free to close this comment or let me know if can do that.

@qiwzhang

But it should be easy to add it.

So the feature is not do map grpc codes to http codes, but to use response metadata like x-http-code (custom header) to inform the grpc_transcoder the desired HTTP response status code.
On the gRPC server, we'll need to write something like this to define a custom http response:
_ = grpc.SetHeader(ctx, metadata.Pairs("x-http-code", "201"))

Do you consider adding this as a new feature to the grpc_transcoder?
The flow can be: We define a custom http header (metadata) that the grpc_transcorder knows, and if present on the grpc server response, it uses the value of the header as the response code to the client.
ref 1: [Setting custom response metadata in a go grpc server)(https://github.com/grpc/grpc-go/blob/master/Documentation/grpc-metadata.md#sending-metadata-1).
ref 2: Similar implementation on gRPC-Gateway

Just chiming in as another party that would be interested in the ability to "cleanly" set the HTTP code corresponding to a transcoded gRPC call.


[WIP] Add subscribers.

Adds the ability for users to subscribe to latest incidents.

Merging this today.


[Bug]: Opens empty pane with diff when note is already on sidebar

Describe the bug
It'd be nice to have the file side by side with the diff, even if it's already in view in the sidebar. However at least not having the empty pane stay would be nice.
Relevant errors (if available)
No response
Steps to reproduce
Have a note in the sidebar with changes. Open the source control view and double click on the file.
Expected Behavior
No response
Addition context
No response
Operating system
Windows
Plugin version
1.22.0

I reworked the whole concept. It should be much easier now. Simply use the new button and hold CTRL to open the file in a new pane. Or click on the title and hold CTRL to open the diff in a new pane.


allow users to reorder layers

both in tokenview and projectview

See https://github.com/neurodata/ndviz/commit/525bc8e671b0d3247e86a3078d920033be31a843
Needs to be cleaned up and finished for timeseries.


Improve CI with static code analysis and unit tests

Describe the Enhancement
Using platformio remote development feature, run our unit tests on actual hardware. The soil power sensor will be connected to an external computer, most likely raspi, through a debugger.
Benefits

Ability to check simple code changes without having someone else flash a device.
Static code analysis will prevent common errors (ie. array index out of range)
Improve code quality
Outside developers can check their code. For example, PR #56 , is from a perspective GSOC student that doesn't have access to hardware. This could help with contributions.
All developers using the same tools. Could fix @stevegtaylor debugging problems and future people with windows

Possible Drawbacks

Vulnerability from running untrusted code on devices.
Issues with CubeMX generated code not conforming to static code analysis standards.
Complexity in setup

Additional Context
Platformio remote development guide: https://docs.platformio.org/en/latest/plus/pio-remote.html
Platformio remote test command: https://docs.platformio.org/en/latest/core/userguide/remote/cmd_test.html
Setup of unit tests with CI: https://docs.platformio.org/en/latest/integration/ci/github-actions.html
I didn't see a way that remote development integrates with the github actions. More information is needed for that.
@jmadden173 can complete github actions part. Would be helpful if someone can setup raspi remote dev env.
TODO

[ ] Configure linting for platformio with cppcheck.py
[ ] Configure linting for python
[ ] Configure unit tests for python
[ ] Setup remote unit tests with platformio

Look at fixing SDI-12 unit tests blocking when no sensor is connection.

For python, we should be able to copy the configs from the Dirtviz repo.

Still need to add unit tests


Allow database access without initially authenticating against admin database when providing password.

Hi,
Currently, according to @pablo in Slack, once the admin database password is set with the MONGODB_PASS environment variable, to then connect to another database, you first need to authenticate against the admin database.
Would it be possible to change this so that if the database password is set, it is not required to authenticate against the admin database? This would make it easier to just 'plug and play' with the tutum/mongodb image, and make it easier to allow multiple applications to use multiple databases on a container.
Thanks.

+1

I don't get it. Setting "AUTH=yes" and a MONGODB_PASS creates a Mongo Database with an admin user with the MONGODB_PASS and authentication enabled. Then the mongo instance will not allow changes to databases or anything without authenticating first. This is mongo, not this container. There is no bypassing this. You can however create more users (from the mongo shell) and allow actions for these on database levels or even collection levels.

I've got the same issue.
When I setup the MONGODB_PASS & MONGODB_DATABASE I assume I want the admin user having full permission from this database. but that is not the current behavior. It is creating the database but I don't have full permission on its database.

I think it is creating a user with role "root". See here: https://docs.mongodb.com/manual/core/security-built-in-roles/#superuser-roles
As I said: You have to then use that user, do add users that have access to databases and so forth. This is how MongoDB is configured.
FWIW this image is deprecated. You should use the official mongo image from here https://hub.docker.com/_/mongo/


Implement app layout & facebook oauth

Commit 1: Basic App Layout

Commit 2: Facebook OAuth

Super nice work! Thanks for setting up the project and I love the layout pattern!
I haven't run the code in this PR so I am not sure what's happening in Server side rendering. From the screenshots I feel like everything is working fine? If it is not, maybe you can look at some of the guesses I have on how to make it work. I also feel like we might want to add the client-side logic for removing the server side-generated CSS before the line 76 in client.js if we want to follow the MUI doc.

Let me take a look

Super nice work! Thanks for setting up the project and I love the layout pattern!
I haven't run the code in this PR so I am not sure what's happening in Server side rendering. From the screenshots I feel like everything is working fine? If it is not, maybe you can look at some of the guesses I have on how to make it work. I also feel like we might want to add the client-side logic for removing the server side-generated CSS before the line 76 in client.js if we want to follow the MUI doc.

I've added code to clean up css on the client side


Modify github-training-camp/lesson-1/lets-start.md

Header issue of the document: Data—>Date
https://github.com/JieDing/github-training-camp/blob/main/lesson-1/lets-start.md

Pls assign this to me. Thanks a lot.

Pls assign this to me. Thanks a lot.

Thx so much for pointing it out. Plz help me to fix this typo.


delete CodeReview in Windows

after so many times of trying to install CodeReview in Windows(python 3.6 3.7 3.8, msvc 14.0 14.1 14.2 and mingw), I think that it is not suitable to put CodeReview under the Windows list.

Hey @tasty0tomato, I understand your frustration, but I believe this may be a case of an application just needing to improve the installation process (by providing a packaged executable maybe?).
I see that you have raised  https://github.com/FabriceSalvaire/CodeReview/issues/49, let's wait and see. I could find other users complaining of the installation process as well (e.g. https://github.com/FabriceSalvaire/CodeReview/issues/45)
but let's be fair, the author did his best to create a useful tool :) he may lack the time to improve it further. we can embrace the OSS spirit by offering help to improve his project.
I'm going to close this issue if you find the project is completly abandoned/unmaintained, we can re-open it and remove the project from the list

Hey @tasty0tomato, I understand your frustration, but I believe this may be a case of an application just needing to improve the installation process (by providing a packaged executable maybe?).
I see that you have raised FabriceSalvaire/CodeReview#49, let's wait and see. I could find other users complaining of the installation process as well (e.g. FabriceSalvaire/CodeReview#45)
but let's be fair, the author did his best to create a useful tool :) he may lack the time to improve it further. we can embrace the OSS spirit by offering help to improve his project.
I'm going to close this issue if you find the project is completly abandoned/unmaintained, we can re-open it and remove the project from the list

I understand it, but I really think that this gui is not for Windows, I tried it in Ubuntu and it succeeded, but never once in Windows.

I kind of want to reopen this issue. I still cannot build it in Windows with the new commit.

sure. Feel free to create a PR to remove the windows availability  (it seems the original repo was deleted so we cannot re-open)

@pedrorijo91 your answer is the right one
CodeReview is up to now a personal project, and I only use it on Linux.
I never received any PR and I don't know who is using it etc.

thanks for finding some time too look at the issue @FabriceSalvaire . we all know how hard it can be to maintain an OSS project (specially when it's used across different environment, some of them where we don't even work on regularly).
maybe you can add some hints on how to improve this known issue on #1614 / https://github.com/FabriceSalvaire/CodeReview/issues/49 , so that affected users can try some workarounds and hopefully add the findings to the project README/FAQ or even submit an improving PR? :)  everyone understands if you lack some time, but at least is a good signal that people are trying to use CodeReview <3 (another solution could be just to invite someone to be a maintainer as well. or just keep it as it is - after all, you are in charge of the project 🙂)


Host user profile not set

Good Morning,
May I ask what should we do to resolved this issue?
(No output on stdout) stderr: Host user profile not set
The error appears after I backup Nagios.host.java.config.ser because it is 0 byte.
Thanks

This one works! Thanks @williamlea1


Unify operators into one binary.

Proposed Changes
At this point, there is very little reason to spawn both operators into their own pods. We can unify them into one binary and run them off of the same caches to reduce overhead by quite a bit.
Release Note

Unified the operator binaries into one.

/ok-to-test

/lgtm

@markusthoemmes Generally it looks good to me, except a naming issue.
Since we use one operator deployment instead of two operator deployments, I am wondering how we can smoothly upgrade it.
When users install 0.14.x, two operator deployments exists in their kube. When they install 0.15.0, what is the automation we can give them to remove the old deployments?
We need to make our prow job for upgrade able to check that.
This is what I care regarding this change.

When users install 0.14.x, two operator deployments exists in their kube. When they install 0.15.0, what is the automation we can give them to remove the old deployments?

Good point. We can easily have the operator delete the old deployments when it starts up, similar to how the deleteObsoleteResources works.

Sorry, I had to heavily rebase against the version changes. Squashed in that process to ease reviewing again.

Oh  nice... a case of "works on my machine" 😂. Gonna look at getting log output from our tests.

@markusthoemmes go-coverage asks for unit test coverage of new added files. I am not sure how difficult/easy it can be added to upgrade.go to remove the deployments and service accounts.

Should be straightforward, I got that on my todo list.

/assign @houshengbo


Fix #2161 and Sway#5294

Add a check for surface != NULL inside xdg_pointer_grab_enter()

I think this fix will work, but there's an underlying architectural issue that it doesn't address. Here's what's happened, as far as I can tell:
Prior to #183, compositors used two functions to tell wlroots about pointer movement between surfaces:

wlr_seat_pointer_enter(), called when the pointer moved over a new surface, caused wlroots to mark that surface as focused, notify it that the pointer had entered it, and notify the previously-focused surface (queried from internal state) that the pointer had left it.
wlr_seat_pointer_clear_focus(), called when the pointer left a surface but did not immediately enter a new one, caused wlroots to do an abridged version of the above: it notified the previously-focused surface that the pointer had left it and unmarked that surface as focused, but it did not send any entry notifications (since no surface had been entered).

wlr_seat_pointer_clear_focus() was, and still is, internally implemented by calling wlr_seat_pointer_enter() with a NULL surface argument. However, this seems intended to have been purely an implementation detail: wlr_seat_pointer_enter()'s documentation did not specify that you can pass a NULL surface, no external clients did, and the very existence of wlr_seat_pointer_clear_focus() indicates that wlr_seat_pointer_enter() was not intended to be used for clearing focus.
Eventually, #183 came along with commit 17b134e1783a ("wlr-seat: pointer grab interface"). In order for wlroots to support pointer grabs (used for xdg_shell popups and, since #262, drag-and-drop), this commit added an extra layer of indirection. Now, instead of calling wlr_seat_pointer_enter() directly, clients were supposed to call a new function wlr_seat_pointer_notify_enter(), which calls different enter() functions depending on the type of grab that's active. If no grab is active, it just delegates back to wlr_seat_pointer_enter(). Clients switched to the new function, and things seemed good.
However, there was an oversight: #183 added indirected versions of wlr_seat_pointer_enter() and several other functions, but wlr_seat_pointer_clear_focus() was not among them. Clients continued to call that function directly to clear focus regardless of whether a grab was active. What this meant was that grabs were not notified when the pointer left a surface and did not immediately enter a new one (or when focus was cleared due to special circumstances).
This brings us, finally, to the commit that @Xyene identified as the cause of swaywm/sway#5294. In swaywm/sway#5220, @nickdiego noticed weird behavior of drag-and-drop grabs caused by—surprise!—missing events when the pointer left a surface. In order to fix this, they wrote swaywm/sway#5222, adding a call to wlr_seat_pointer_notify_enter() with a NULL surface argument. This was the first time (at least in sway) the function was called that way, and although both wlr_seat_pointer_enter() (as discussed previously) and the drag-and-drop enter hook (drag_handle_pointer_enter()) can gracefully handle a NULL surface, the xdg_shell popup enter hook (xdg_pointer_grab_enter()) cannot and segfaults.
So, how should we fix it? One approach is the one taken by this commit, which is to ensure that all grab enter hooks can treat a NULL surface as a focus clear. I think this is a fine approach, but there are several other things I'd also want to see if we choose it:

The fact that wlr_seat_pointer_enter() can take a NULL surface should be explicitly documented in wlr_seat.h.
All wlr_seat_pointer_clear_focus() calls in clients should be replaced with wlr_seat_pointer_notify_enter(wlr_seat, NULL, 0, 0) calls. Note that swaywm/sway#5222 didn't do this: it added the latter but did not remove the former. This is wrong, IMO, since a grab may wish to fully override the default behavior.
For consistency, wlr_seat_pointer_clear_focus() should perhaps be deprecated entirely in favor of wlr_seat_pointer_enter(wlr_seat, NULL, 0, 0).

The other approach we could take is to explicitly prohibit passing a NULL surface to wlr_seat_pointer_notify_enter() and add a new indirected function, wlr_seat_pointer_notify_clear_focus(). If we take this path, we'd need to

Plumb up wlr_seat_pointer_notify_clear_focus() like all the other indirected functions, and add implementations of it to existing grabs (i.e. xdg_shell popup and drag-and-drop).
Replace all calls to wlr_seat_pointer_clear_focus() in clients with calls to wlr_seat_pointer_notify_clear_focus(),
Add an assert(surface) call to wlr_seat_pointer_notify_enter() to catch misbehaving clients early.

I personally like the second approach a bit better, and I'll probably attempt to write a PR implementing it this weekend barring any objections. As a stopgap, I think we should revert swaywm/sway#5222, since a rare drag-and-drop bug is preferable to a segfault every time your cursor leaves a surface while a popup is up.

I agree with @tchebb. I also slightly prefer the second approach because the x/y parameters don't make sense for leave events. Since we're going to break the API, it would be nice to rename clear_focus to leave to align the wording with the Wayland protocol.

Also see https://github.com/swaywm/wlroots/issues/1506

tchebb, I agree absolutely with you, Indeed I just try to fix it as sway is my daily driver and any issue that can crash it makes me feeling bad, but I don't know any clue about the architecture. I already known that was a ugly workaround, but any is better to segfault and loss the daily work. Thanks for your advice and hope you can figure out the best way to tackle this. Cheers!

Wow! thanks for the in-depth analysis and sorry for not being able to look into this regression introduced by my change. Quite busy week here :/ TBH, I hesitated a bit before sending that patch without any kind of automated test / CI to "ensure" it was regressions-free.

The other approach we could take is to explicitly prohibit passing a NULL surface to wlr_seat_pointer_notify_enter() and add a new indirected function, wlr_seat_pointer_notify_clear_focus().

IMHO, this sounds better, had even asked about such a function to @emersion as I was a bit surprised it didn't exist yet :P
Thanks for looking into it. I still have several DND issues on the pipeline to report / try to fix :( hope to have some time for it in the coming weeks

I've posted #2217 and swaywm/sway#5368 to implement the second solution I proposed above.

Superseded by https://github.com/swaywm/wlroots/pull/2217


feat(tutorial): complete step 5

complete step 5
http://carbon-tutorial-drhill999.mybluemix.net/#/

Looks good.  I've marked your step 5 as complete.  You can now stop the application on the IBM cloud dashboard if you want.
Our records show you have completed all 5 of the tutorials.


add a new line before the Projects list for the six certifications in…

This PR addresses issue #17491

Pre-Submission Checklist

[ ] Your pull request targets the staging branch of freeCodeCamp.
[ ] Branch starts with either fix/, feature/, or translate/ (e.g. fix/signin-issue)
[ ] You have only one commit (if not, squash them into one commit).
[ ] All new and existing tests pass the command npm test. Use git commit --amend to amend any fixes.

Type of Change

[ ] Small bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds new functionality)
[ ] Breaking change (fix or feature that would change existing functionality)
[ ] Add new translation (feature adding new translations)

Checklist:

[ ] Tested changes locally.
[ ] Addressed currently open issue (replace XXXXX with an issue no in next line)

Closes #17491
Description

Got it!  I'll remove and resubmit.  Thanks!

I will absolutely test my work next time.  Thanks for the feedback.  I have added the Closes #17491 in the description of your PR

@raisedadead no, I was curious as to why that file was there.

@raisedadead @erictleung That was my bad.  It was supposed to be a PR to a different issue.  I reverted it.  Sorry about that.  Does that clear it up?

Hi @mmhuntsberry
That's completely alright. For now you would have to some changes that you would normally will not have to do. The best way to avoid such issues is following the Guidelines for Contributing
Anyways follow these steps and you should be good for now (This is one time, next time just use the steps from the contributing guide)
On you local machine, within your freeCodeCamp dirctory:
git remote -v

# Output

origin	git@github.com:mmhuntsberry/freeCodeCamp.git (fetch)
origin	git@github.com:mmhuntsberry/freeCodeCamp.git (push)
upstream https://github.com/freeCodeCamp/freecodecamp.git (fetch)
upstream https://github.com/freeCodeCamp/freecodecamp.git (push)

If you do not have a out put like above, then follow the contributing guide to setup you local copy.

Open a new one from your freshly created branch.

Remember this is just one time and in future just follow the steps on the Contributing Guide. Thanks a lot for the pull request and taking the time to work on it.

You can always reachout to Contributors Chat room for quick assistance


Prompt Injection/similar datasets for LLM evals/guardrails

Datasets like https://huggingface.co/datasets/deepset/prompt-injections could make these models usable for evaluating LLM inputs/outputs as well as providing guardrails, would be cool usecase.

Interesting, it might include it in the next iteration


allow custom stop word lists

fixes jbesomi/texthero#7

@jbesomi updated.
pytest is just a lot more modern and user friendly. There are several resources to see the differences (example)
black is similar to yapf but is psf backed and likely what the community will standardize on. Lots of big projects use it: https://github.com/psf/black#used-by.


Implement Docker

This is to ensure the project works on all platforms. The dependancies will be relevant to the container the project will be installed in.

TBH, I don't think this is necessary...I'm going to close this


can't alias sql results without magic command

Now that we have the new kernel picker in the bottom right, when you attempt to alias the results of a sql query without the magic command prefix, the results are not saved. Would be nice to find a mechanism that would allow us to save results of SQL queries without the #!sql command requirement
This is currently required to work:

This does not work:

The kernel won't understand any text outside of magic commands, so the second syntax example wouldn't work. (It also happens to be a SQL comment.)
I wonder if there's an approach we could take here that would be more in line with what the variable explorer's share button does, where there's some GUI assistance to make the feature more discoverable, and we generate code so the notebook will still work in UIs like Jupyter Lab, etc.


There is a blind xxe vulnerability

wechat_return function in application\home\controller\Index.php passes user's input directly into simplexml_ load_ String function, and external entities are not prohibited here, causing the xxe vulnerability

Here, you need to query the pay_info whose pay_mark field is wechat from the pay_api_config table of the database. After deserializing the pay_info, judge whether the appid is empty or whether the input XML contains '[appid]'

The operation of inserting the pay_api_config table was found in the wechatpayconfig function of the application\admin\controller\PayApi.php file

Administrator permission is required to configure wechat payment interface
Log in to the background and configure wechat payment in basic information - > interface configuration

Remember the 'pay_info[appid]'

Then you can verify the blind xxe in the foreground. The payload needs to contain '[appid]', here is '[3]'

dnslog received request

已修复


Project Flow

@prhana and @didaralam can we recently touch base tomorrow at some point to check in on overall progress and establish a date that can be proposed for the mid project review?

Correction: I was trying to write "can we briefly check in" not "recently"… And my phone client does not allow me to edit the issue!

Haha, Yes, we can check in around 6pm if that works for you.

Done!

This has been done.


Temperature changes are propagated to good portions of batches

It looks to me like a single compression_ratio or avg_logprob which fails a threshold check causes the entire batch to have temperature incremented and be re-run with the higher temperature.
As batch_size increases I believe this makes it more likely that a single segment result with a parameter out of bounds will cause the entire batch to be reevaluated with higher temperature. With large enough batch sizes this may create a kind of toggling where temperature rapidly rises to 1.0 (or max) since the higher temperatures may create worse compression_ratio or avg_logprob in another segment in the batch?
I wonder if there's an efficient way to retain the good segments and only re-run the failed segments? The entire inference is re-run against the batch currently so it should be maximally inefficient right now - is there any reason in principle the re-run couldn't be with the smaller batch_size of eg just 1?

We should be able to track which DecodingResults failed and which ones succeeded and re-run only the failed segments. We could either re-run only the failed segments within transcribe_with_fallback, which would still block further pipeline execution for the rest of the batch, or we could track fallback and temperature on a per-audio basis external of tanscribe_with_fallback. The latter one seems like it could be faster, but the first one could be an easy enough first step.


[ENH] Better use proper parsing of the scikit-learn version numbers.

Better tools for compatibility with scikit-learn. The current GaussianProcessRegressor uses string comparisons to figure out the version of scikit-learn, and acts on that. It is better to use a proper version string parser, and this pull request uses the packaging.version module for that. This is a third-party module, but it is used by setuptools, so should be ubiquitous.
Features of PR:

Another fix for Issue #1061
General and simple solution, that doesn't involve manual string parsing.

Missing:

I have not run any tests. If this PR is appreciated, perhaps someone can do that?
Is it ok to depend on packaging?

Hello @tomlof! Thanks for opening this PR. We checked the lines you've touched for PEP 8 issues, and found:

In the file skopt/learning/gaussian_process/gpr.py:

Line 231:80: E501 line too long (80 > 79 characters)


Add Delta and Delta Live Tables keywords

This patch adds keywords for Delta and Delta Live Tables.

I think this may be better kept in your own codebase—I haven't heard of Delta SQL before, and I'm hesitant to maintain support for things I don't know anything about.

@marijnh thanks for your time reviewing this PR!
Delta is an open source project that is commonly used to extend Spark SQL to support transactions and DDL like UPDATE/DELETE/MERGE. There are already a few Delta specific keywords in the Spark SQL dialect (i.e. OPTIMIZE), and we just wanted to expand that to keep pace with the project.
I think the though here was that it would be cleaner to create a separate dialect as we add these, but I think it would also be okay to just add them to Spark SQL.  However, @sandra-sandeep, if we do that it should be a superset of Spark SQL, not it own separate dialect. And I would call this Delta not Databricks SQL if we do.
We can also just do this in our own codebase, but we thought this might be something the community would appreciate.

I think—since this is a two-liner (plus some definition of set)—it's reasonable for you to keep it in your own codebase.


[Request] Update Node Modules

Thank you for the hard work on this project.
Can you please update the node module dependencies of this project? I tried forking and doing it on my own but am running into troubles.

Just published a release candidate with updated dependencies (that still support node 6 for now). Would be great if you could give it a try!
Please use npm install aemfed@next to install the latest release candidate (or npm install<EMAIL_ADDRESS>when you want to be explicit).


Save time.Time type data(local time) with pg timestamp(without timezone) type，fetched data is not correct(force marked as UTC)

Your Question
when insert time.Time（with client timezone） data into pg timestamp(without timezone) column，then fetch it，get wrong data with UTC timezone
The document you expected this should be explained
I'm using  gorm v2 with postgresql
go.mod
gorm.io/driver/postgres v1.1.2
gorm.io/gorm v1.21.16

and in application, I use timestamp (without timezone) to store data, like created_at,updated_at ...
the problme is: when fetch records from table, timestamp columns data force UTC.
example:
a 'users' table, insert a record in '2021-11-01 15:04:05'(client timezone Aisa/Shanghai), then fetch record, it become "2021-11-01 15:04:05 +0000 UTC"
same question like this https://github.com/jackc/pgx/issues/924
env:
client:timezone Asia/Shanghai
dsn: "host=xxxx user=xxx password=xxx dbname=xxx search_path=xxxx port=xxx sslmode=disable TimeZone=Asia/Shanghai"
db:
SELECT current_setting('TIMEZONE')
------
Asia/Shanghai

type User struct {
	ID        int       `json:"id" gorm:"primarykey"`
	Name      string    `json:"name" gorm:"column:name"`
	CreatedAt time.Time `json:"created_at" gorm:"column:created_at"`
	UpdatedAt time.Time `json:"updaed_at" gorm:"column:updated_at"`
}
...
db.First(&user)
...
fmt.Println(user.CreatedAt)

actual: 2021-11-01 15:04:05 +0000 UTC
expect: 2021-11-01 15:04:05 +0800 CST (Asia/Shanghai)

Expected answer
how to deal with this situation，any best practise？

Can you try if providing NowFunc helps?
db, err := gorm.Open(connection, &gorm.Config{
	Logger: logger.Default.LogMode(logger.Info),
	NowFunc: func() time.Time {
		ti, _ := time.LoadLocation("Asia/Shanghai")
		return time.Now().In(ti)
	},
})

I used it in some other case and it helped me at least in tests.

@longlihale Why did you close this issue?

@jackwootton  :astonished: sorry,because I saw that there was an answer and no reply, so  I thought this issue had been resolved :relieved:.  open it～

@mkyc thx, very good solution :thumbsup:. I'll try in my next project ☺

I know this topic is already closed but... I really had a hard time figuring out how this was all working and finding a nice solution.
Finally, looking at the GORM documentation I saw that it had this link where we can pass the loc parameter in the connection string to set its default timezone.
Anyway, I hope this can still be useful to someone.

postgres

Hi @rhuanpk! The issue was opened with a question about postgres timezone and the solution in your commented links is about a MySQL solution. :)

Hi @bernardolm!
Ok that was a pretty embarrassing mistake, sorry. LOL!
But as I already said, I hope this helped someone, even if it was just an idea of how to proceed. :)


Improve performance

Adde fonts locally to prevent freeze on bad network.

This change is

Reviewed 17 of 17 files at r1.
Review status: all files reviewed at latest revision, all discussions resolved.

Comments from the review on Reviewable.io


Audio codec?

I have the same model machine as you & am using your OC to boot but I have no audio. What codec came with your machine? I've got an Intel SST controller which either works or doesn't work with AppleALC depending on who you ask.

I don't know about Intel SST controller, so I can't help you with that. My laptop use Realtek alc256 codec, and for MacOS I'm using AppleALC kext with audio layout set to 13.

Ok thanks I guess ASUS changed the codec. Everything else works flawlessly though so thanks for your work. Hopefully VoodooHDA will work for me.


Add feature to filter the results

Motivation
I want to ignore warnings for ld_warnings. Some warnings can't be resolved.

Description
I introduced the new parameter ignored_errors.
This value is set, then warnings/errors are filtered by this block.
xcode_summary.ignored_results do |result|
  result.message.start_with? 'ld'
end

How about this feature?

Maybe it'd be better to have a block passing the Result? Then people could just ignore one particular warning instead of a whole category.
xcode_summary.ignored_warnings = { |warning|
  results.message.include? 'ld'
}

I agree with @marcelofabri, better to be more flexible.

@marcelofabri @diogot I implemented ignored_results option to pass the block to filter.

Thank you! 😄
Could you release this patch for 0.3.0? 🙏

Sorry for the delay, I was ✈

Done


Speeds up CompressedSourceTest

This test doesn't need a TestPipeline. This makes the test at least 10x faster and less flaky.
R: @lukecwik

Luke is on vacation, so R: @tgroh


[MNT] reduce redundancy in package dependency configurations

We currently have multiple places in which package dependencies are specified and need to be updated:

setup.py
.appveyor.yml
build_tools/requirements.txt
build_tools/hard_dependencies.txt
.binder/prelim_requirements.txt
.binder/requirements.txt

surely there must be a better way to replicate one and the same set of package requirements?
Related: #1281, notebook tests using same requirements as binder.

FYI, @aiwalter, @freddyaboulton, @mloning

Would it be interesting to try pyproject.toml to consolidate the dependency specification and then (possibly) generate requirements.txt in the context it might be needed?
Alternatively requirements.txt are composable so it's possible to create a base set of requirements and include those in more env specific situations. I don't know your build pipeline that well yet but I'll have a closer look.

It seems that a suggestion for trying out pyproject.toml was also mentioned in #1150

Thanks for investigating this, @lmmentel!

I've spent some time looking at the CI/CD pipelines and I I think it might be a little too complex for what it does.
Here is what I learned:
github actions

.github/workflows/assign-contributor.yml
.github/workflows/build-and-test.yml

code-quality linting, style, format
test-examples run all the example notebooks
build build wheels for macos-10.15 and python 3.6, 3.7, 3.8, 3.9 and run test on the wheels

.github/workflows/upload-to-pypi.yml

deploy build wheels for macos-10.15 and python 3.6, 3.7, 3.8, 3.9, run test on the wheels and publish to PyPI

azure pipelines

build_tools/azure/build_manylinux_wheels.yml build linux wheels
build_tools/azure/publish.yml upload wheels to azure

appveyor

build_tools/appveyor/run_with_env.cmd build wheels for win?

What I would like to propose is to simplify the pipelines

try to run all on github actions since it support the main os hosts
use cibuildwheel to build wheels across the matrix of win, linux, mac and python 3.6, 3.7, 3.8, 3.9
publish to PyPI

I'll be working on a draft in #1620
If there any reason o information that I'm missing  that it would not work?

FYI @mloning, @freddyaboulton.
@lmmentel, this sounds excellent!
We wanted to move to GitHub actions eventually.
FYI, @mloning had already started here
https://github.com/alan-turing-institute/sktime/pull/1321
but hasn't finished this, I think it's on hold - don't know the reason, perhaps simply lack of time.
@mloning, do you want to comment what happened?

Thanks for bringing up #1321 @fkiraly. I went through it and it seems we're moving in a similar direction. Would be great to connect with @mloning to align on how to push it over the finish line.
I already have a working pyproject.toml that could be the single source of truth for dependencies and project metadata. I also refactored the CI steps to reflect how and what dependencies are installed for particular steps.
@fkiraly would it be possible to enable CI runs on #1620 so we test run the refactored workflows?
How about we continue the discussion over at #1620 so that we can follow the design decisions?


ValidationError: 1 validation error for TupleForm while running reverse video search at Evaluation Section

I am using
towhee==1.1.1
Pydantic. == 1.10.11

ValidationError                           Traceback (most recent call last)
Cell In[10], line 31
19         aps.append(sum(precisions) / len(precisions))
21     return sum(aps) / len(aps)
23 eval_pipe = (
24     pipe.input('path')
25         .flat_map('path', 'path', lambda x: glob.glob(x))
26         .map('path', 'frames', ops.video_decode.ffmpeg(sample_type='uniform_temporal_subsample', args={'num_samples': 16}))
27         .map('frames', ('labels', 'scores', 'features'), ops.action_classification.pytorchvideo(model_name='x3d_m', skip_preprocess=True))
28         .map('features', 'result', ops.ann_search.milvus_client(host='<IP_ADDRESS>', port='19530', collection_name='x3d_m', limit=10))
29         .map('result', 'predict', lambda x: [i[0] for i in x])
30         .map('path', 'ground_truth', ground_truth)
---> 31         .window_all(('ground_truth', 'predict'), 'mHR', mean_hit_ratio)
32         .window_all(('ground_truth', 'predict'), 'mAP', mean_average_precision)
33         .output('mHR', 'mAP')
34 )
36 res = DataCollection(eval_pipe('./test//.mp4'))
37 res.show()
File ~/Documents/milvus/.milvusenv/lib/python3.11/site-packages/towhee/runtime/pipeline.py:348, in Pipeline.window_all(self, input_schema, output_schema, fn, config)
326 def window_all(self, input_schema, output_schema, fn, config=None) -> 'Pipeline':
327     """
328     Read all rows as single window and perform action.
329
(...)
346         [10, 14]
347     """
--> 348     output_schema = self._check_schema(output_schema)
349     input_schema = self._check_schema(input_schema)
351     uid = uuid.uuid4().hex
File ~/Documents/milvus/.milvusenv/lib/python3.11/site-packages/towhee/runtime/pipeline.py:517, in Pipeline._check_schema(schema)
515 @staticmethod
516 def _check_schema(schema):
--> 517     return TupleForm(schema_data=schema).schema_data
File ~/Documents/milvus/.milvusenv/lib/python3.11/site-packages/pydantic/main.py:341, in pydantic.main.BaseModel.init()
ValidationError: 1 validation error for TupleForm
schema_data -> 0
string does not match regex "^[a-z][a-z0-9_]$" (type=value_error.str.regex; pattern=^[a-z][a-z0-9_]$)

Hi @chandrakalagowda , it is because the schema in pipeline currently only supports lowercase letters, and the 'mAP' and 'mHR' contains uppercase, so you can switch from uppercase to lowercase and try again :)
Also, I'll submit a PR later to support uppercase as well.

Hi @chandrakalagowda , it is because the schema in pipeline currently only supports lowercase letters, and the 'mAP' and 'mHR' contains uppercase, so you can switch from uppercase to lowercase and try again :)
Also, I'll submit a PR later to support uppercase as well.

Hello Thank you for the quick reply. It works.

Is this the line that indicates that? Just for my understanding.

Yes, you are right. If you are interested, you can also submit a PR to Towhee, which would be very welcome to a contributor.
BTW, I think you just need to modify this file.

@shiyu22 I checked the file.  However, I have lot more questions regarding regex. So please may be now you correct it. Thank you for suggesting it though.

@shiyu22 I checked the file. However, I have lot more questions regarding regex. So please may be now you correct it. Thank you for suggesting it though.

Got it, also thanks for you catch this issue.
PR #2634 has been submitted, and it will works in the main branch when merged, you can try it with the source installed towhee.


KVStore: Distinguish different versions of Proxy

What problem does this PR solve?
Issue Number: close #8382
Problem Summary:
What is changed and how it works?
Distinguish different versions of Proxy

Check List
Tests

[ ] Unit test
[ ] Integration test
[ ] Manual test (add detailed scripts or steps below)
[ ] No code

Side effects

[ ] Performance regression: Consumes more CPU
[ ] Performance regression: Consumes more Memory
[ ] Breaking backward compatibility

Documentation

[ ] Affects user behaviors
[ ] Contains syntax changes
[ ] Contains variable changes
[ ] Contains experimental features
[ ] Changes MySQL compatibility

Release note

None

/cc @JaySon-Huang @yongman @JinheLin @Lloyd-Pottiger


Dependabot batch

https://issues.redhat.com/browse/ISPN-15565
https://issues.redhat.com/browse/ISPN-15583
https://issues.redhat.com/browse/ISPN-15581
https://issues.redhat.com/browse/ISPN-15580
https://issues.redhat.com/browse/ISPN-15577
https://issues.redhat.com/browse/ISPN-15576
https://issues.redhat.com/browse/ISPN-15574
https://issues.redhat.com/browse/ISPN-15561

Test failures are all unrelated.

Thanks, @wburns


a few code improvements

follow "goimports"
fix "go vet" issues
using const block

Nice improvements. Thank you, @andrewsmedina!


OnClickListener for each ARPoint

First of all, thanks for this implementation. It is working as expected. By the way, getting gps location one time and making processes according to that fixed location provided me a more stable experience.
My question:
I want to add onclick listener for each ARPoint so a detail page of that point will be opened. Do you have any suggestion or code snippet for this?

You should refactor View into ViewGroup, and the canvas overlay you added
need to change to view. For view, you can implement onClick
2017-05-30 15:56 GMT+07:00 hanilozmen<EMAIL_ADDRESS>
First of all, thanks for this implementation. It is working as expected.
By the way, getting gps location one time and making processes according to
that fixed location provided me a more stable experience.
My question:
I want to add onclick listener for each ARPoint so a detail page of that
point will be opened. DO you have any suggestion or code snippet for this?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/dat-ng/ar-location-based-android/issues/4, or mute
the thread
https://github.com/notifications/unsubscribe-auth/ABOmjEI9C45lLO266jJMGdIJY2oGNXo_ks5r-9mmgaJpZM4NqAKv
.

how to get the position in canvas ??

I changed it , but the views are gone, can you change it in your library

It is possible to do this by storing the x/y position of the Circle drawn as well as it's radius and using onTouchEvent to capture the touched location.
Note this is NOT the best way to do this @dat-ng method is the correct way to do it
However if you're interested (sorry this is in Kotlin not Java)
`override fun onTouchEvent(event: MotionEvent): Boolean {
when (event.action) {
MotionEvent.ACTION_DOWN -> {
val touchX = event.x
val touchY = event.y
            // Calculate the distance from the touch point to the circle's center
            val distance = Math.sqrt(((touchX - circleX).pow(2) + (touchY - circleY).pow(2)).toDouble())

            // Check if the touch is inside the circle
            if (distance <= circleRadius) {
                // Touch is inside the circle
                // Do Something Here
            }
        }
    }
    return true
}`


Metro bundler has encountered an internal error

Actually I am very beginner, and started react-native development just a couple of days ago,
I have been facing 'Metro bundler has encountered an internal error' since morning
here is my complete app.js  code
import React from 'react';
import {StyleSheet,Button,View,Text,Image,TouchableHighlight,Linking,ScrollView, ActivityIndicator} from 'react-native';
import { createStackNavigator, createAppContainer } from 'react-navigation';
class HomeScreen extends React.Component
{
static navigationOptions=
{
title: 'Home Screen',
};
render()
{
return (
<View style={styles.header}>

  <ImageBackground style={styles.cart}
      source={require('C:\Users\Aris\Documents\ReactWork\ARIS\app\img\logo.png')}>
  </ImageBackground>

    <Text style={styles.logo}>ARIS</Text>

    <ScrollView style={styles.container}>

    <Button>
      title = "Next Screen"
      onPress={()=>this.props.navigation.navigate('Related')}
    </Button>

    </ScrollView>
</View>

)

}
}
export default class App extends Component {
render()
{
return
}
}
const RootStack = createStackNavigator(
{
Home: {screen: HomeScreen},
Related :{ screen:RelatedItems},
});
const AppContainer = createAppContainer(RootStack);
const styles = StyleSheet.create({
container:{
flex:1,
backgroundColor:'#fff',
},
header:{
height:80,
marginTop:20,
backgroundColor:'#fff',
flexDirection:'row',
alignItems:'center',
justifyContent:'center',
padding:20,
borderBottomWidth:4,
borderBottomColor:'#ccc'
},
cart:{
width:40,
height:40,
},
logo:{
fontSize:28,
fontFamily:'algerian',
marginLeft:10,
fontStyle:'italic',
color:'#006400',
fontWeight:'bold'
}
});

and here is screenshot of error I am facing, can anyone help me about this problem?

👋 there - it seems that your issue is actually that the bundler can't find the img folder. So maybe you tried to write an import wrongly?
This line seems to be the culprit:
'C:\Users\Aris\Documents\ReactWork\ARIS\app\img\logo.png'
Closing as not really an issue with React Native itself


chore(Data/List/Rotate): check that @[simp] for rotate_replicate compiles

chore(Data/List/Rotate): check that @[simp] for rotate_replicate compiles

As per #7987 check that @[simp] for rotate_replicate compiles.

bors merge

Let's fix description first.
bors r-

bors merge


Small confusion about convolution operator

Small confusion about how convolution is applied in
"TensorFlow-Tutorials/02_Convolutional_Neural_Network.ipynb"
Layer 1
28*28(1) -> Convolution (# Filters =16) ->  28*28(16)  -> Max Pooling -> 14*14(16) -> Relu -> 14*14(16)
Layer 2
14*14(16) -> Convolution (# Filters =36) ->  ?  -> Max Pooling -> 7*7(36) -> Relu -> 7*7(36)
As in Layer 1 If we give an i/p of size 28*28 to the convolution (with 16 filters) then we have 16 Output of size 28*28 as each filter is applied on the i/p image.  Now in Layer 2 If we give 16 i/p of size 14*14 to the convolution (with 36 filters) then we should have 16*36=576 Output of size 14*14 as each filter is applied on every i/p image, But according to this final o/p of Layer 2 will be different. Can anybody tell me how conv2d is applied in the second layer.

Thanks for taking the time to write a clear question. However, I think it has been more than a year since I did the video so I honestly can't remember the details of the tutorial. You do ask for anybody to help you, but I think it is unlikely that anyone will answer as it is mostly only me who responds to issues here, so I've closed the issue again. You could try writing this as a comment to the video on YouTube and see if anyone can help you there.
What may also be helpful is to add a lot of print-statements so you can see the shape of the tensors that are being sent through the neural network.
In general I can say that the convolution operator is a bit tricky to understand for multi-channel inputs. Perhaps it may be helpful to watch the video a second time? As I recall, there is a part that discusses the convolution for multi-channel inputs.

I can understand with time It becomes difficult to keep track of minute details. I was just asking for a simple intuitive explanation, not rigor details. By the way, I have posted it on Facebook lets see.


Updating master with release 1.0.0-RC3

Codecov Report

Merging #56 into master will increase coverage by 0.61%.
The diff coverage is 88.88%.

@@             Coverage Diff              @@
##             master      #56      +/-   ##
============================================
+ Coverage      64.3%   64.91%   +0.61%
- Complexity      490      506      +16
============================================
  Files            89       90       +1
  Lines          1395     1431      +36
  Branches        124      126       +2
============================================
+ Hits            897      929      +32
- Misses          428      432       +4
  Partials         70       70

Impacted Files
Coverage Δ
Complexity Δ

...ov/gchq/koryphe/impl/predicate/StringContains.java
88.88% <88.88%> (ø)
16 <16> (?)

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 9fecf5d...6616dff. Read the comment docs.


WiFi firmware hosting

Can the wifi firmware be added to docs? Makes it easier for everyone to access.

We only support OTA update


Changes to  to allow for plugin to provide customisations

While most changes concern updating the UI of the <HawtioLogin/> to support a customised child login form, a necessary change is also included for the JolokiaService. Specifically, the use-case concerns what happens when logging-out occurs.
When the logging-out button is clicked, the app routes back to /login but was stuck on displaying the waiting symbol.
Analysis showed that because <HawtioLogin> is now using the usePlugins hook, the component waits on the pluginsLoaded flag. This was never returning true indicating that the plugins were never completing resolution. Digging in further indicated that despite not being logged-in the JMX plugin was, as a result of its isActive() plugin function, still trying to list nodes from the jolokiaService yet this process was hanging.
This has been resolved by, since the service was already waiting for the userService.isLogin() to return, taking the result of isLogin() and if false then returning a null jolokia url. This causes a dummy tree to be created and the JMX plugin to resolve satisfactorily.

Is a dependency of https://github.com/hawtio/hawtio-online/pull/155

Please fix lint error too.

There are a few issues that need to be addressed in the latest fix. But instead of running another cycle of commit & review, I can take care of them after merging it. Feel free to turn it to "ready for merge" and merge it.


复制粘贴方式上传图片，插入位置不正确

操作过程：
通过 复制、粘贴上传图片，意图使图片插入下图指示的光标处。

目前，会追加到编辑框尾部

no solution yet.
but here are some information.
Firstly, on calling
                $("#body_field").inlineattach({                     uploadUrl: Hifone.Config.uploader_url,                     extraParams: {                         _token: Hifone.Config.token                     },                     onReceivedFile: function(file) {console.log($("#body_field").caret())},                     onUploadedFile: function(e) {}                 })
for debugging:
$("#body_field").caret() is already pulling to the end on or before the callback onReceivedFile
Secondly,
by putting files outside the default list
['image/jpeg', 'image/png', 'image/jpg', 'image/gif']
the file is blocked successfully but the caret keeps in the original position.
This could deduce there are some conflicts from jquery-inlineattachment and the existing bindings.


Getting info of which plotted line clicked on

Let assume i have a multi-plots graph.  Now if I click on the first plotted line (cos(x)), how can I get the detailed of which plotted line it has been clicked on?

the graph doesn't have a click event however you can trigger the mousemove event with the click coordinates and the instance will fire the tip:update event (see the README) whose callback params are x, f(x) (of the function who has the tip) and the index of the datum


Run publish maven snapshots on all branches matching pattern

Description
Updates the branches that publish-maven-snapshots github workflow is run with. It now uses a regex to match any released of unreleased branches. I noticed that the .NET client was using the same patterns: https://github.com/opensearch-project/opensearch-net/blob/main/.github/workflows/test-jobs.yml#L16-L17
Related Issues
Resolves https://github.com/opensearch-project/OpenSearch/issues/7705

Check List

[ ] New functionality includes testing.

[ ] All tests pass

[ ] New functionality has been documented.

[ ] New functionality has javadoc added

[ ] Commits are signed per the DCO using --signoff
[ ] Commit changes are listed out in CHANGELOG.md file (See: Changelog)

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

Does this need a CHANGELOG entry?

Does this need a CHANGELOG entry?

I think no, no code changes

@gaiksaya @reta Is there anything outstanding for this PR? It should be good to go.

@gaiksaya @reta Is there anything outstanding for this PR? It should be good to go.

Not from me, @gaiksaya LGTM?

@gaiksaya Are you saying hard-code that list? That seems alright by me. That list would be true for more than a year.

@gaiksaya Are you saying hard-code that list? That seems alright by me. That list would be true for more than a year.

Yeah it is hard coded but branches like 2.7, 2.8 needs to be updated regularly so was recommending the version increment automation to accommodate this change as well. Looks like the current approach with regex works as well?

Adding above labels to backport to 2.x, 2.8 and 1.3 branches for now.
Thanks!


 not applying padding attribute

I just want to render mjml via react by creating components using mjml-section etc
import React from 'react'
import { convertRGBA } from '../../containers/Mjml'
import Section from 'mjml-section'
import Column from 'mjml-column'
import Text from 'mjml-text'

const Html = ({ options: { html, backgroundColor }, raw }) => (
  <Section padding="30" background-color={convertRGBA(backgroundColor.attributes.value)}>
    <Column>
      <Text font-size={30}>
        { raw || html.attributes.value }
      </Text>
    </Column>
  </Section>
)

export default Html

Why is it ignoring all attributes I add? But attributes on Text working correctly, as you can see the font size is 30

Adding padding-left works, but padding by itself does not

I also can't seem to use react to dynamically update any of the settings, like background-color doesn't update after I change a variable. is this because of postRender being used in Section?

Hi @Geczy
Well MJML component in v1/2/3 are React component but that doesn't mean you can use them inside a React context because of many fixes that are applied in pre/post-render.
Now in MJML4 we've dropped totally react from the stack anyway.


ENV Variable conflict

Describe the bug
When using the terraform artifactory module I set the
TF_VAR_ACCESS_TOKEN=<some_token>  env variable, then use it in my module.
variables.tf
variable "ARTIFACTORY_ACCESS_TOKEN" {
  description = "ARTIFACTORY_ACCESS_TOKEN"
  type        = string
  default     = ""
}

main.tf
provider "artifactory" {
  url                     = "${var.artifactory_url}/artifactory"
  check_license = false
  access_token  = var.ARTIFACTORY_ACCESS_TOKEN
}

My CI/CD job sets a shell env variable ARTIFACTORY_API_KEY (not TF_VAR prefix).
Running terraform plan errors out with:
"api_key": conflicts with access_token

To fix this I have to unset my ARTIFACTORY_API_KEY env variable. I believe the problem is that the code reads the shell env variable, so even when is not set as a terraform variable the module loads it and throws the conflict error.
This is the artifactory module used:
terraform {
  required_providers {
    artifactory = {
      source = "jfrog/artifactory"
      version = "6.25.1"
    }
  }
}

Terraform version
Terraform v1.0.9

Requirements for and issue

[ ] A description of the bug
[ ] A fully functioning terraform snippet that can be copy&pasted (no outside files or ENV vars unless that's part of the issue). If this is not supplied, this issue will likely be closed without any effort expended.
[ ] Your version of artifactory (you can curl it at $host/artifactory/api/system/version
[ ] Your version of terraform
[ ] Your version of terraform provider

Expected behavior
Do not error because when env variables are set without the TF_VAR prefix
Additional context
Here is the line of code that conflicts
Env variable conflicts

Correct, the provider will read ARTIFACTORY_API_KEY env variable and throw a conflict error. TF_VAR_ prefix is used to set Terraform variables, which you can reference in HCL, and the Provider reads env variables without any prefixes.
Unsetting the conflicting variable is correct in this case.

Running into the same issue but it isn't as easy as unset the api key var for me:
│ An upcoming version will support the option to block the usage/creation of
│ API Keys (for admins to set on their platform).
│ In September 2022, the option to block the usage/creation of API Keys will
│ be enabled by default, with the option for admins to change it back to
│ enable API Keys.
│ In January 2023, API Keys will be deprecated all together and the option to
│ use them will no longer be available.
What is the best practice to use the token and not have the api key message show up?
"api_key": conflicts with access_token

@danielmkn open a new issue or piggyback off this one?

Please open a new one and link to this one
On Thu, Feb 23, 2023 at 7:37 PM Jesse Neal @.***> wrote:

@danielmkn https://github.com/danielmkn open a new issue or piggyback
off this one?
—
Reply to this email directly, view it on GitHub
https://github.com/jfrog/terraform-provider-artifactory/issues/640#issuecomment-1442762698,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ANGZZTYMRXAL2BY7AABHT63WZAUH7ANCNFSM6AAAAAAUPKUIBQ
.
You are receiving this because you were mentioned.Message ID:
@.***>

--
Daniel Miakotkin | Software Engineer
Partnership Engineering | JFrog.com http://jfrog.com/
270 E Caribbean Drive | Sunnyvale* |* CA 94086
Email: @.*** Cell: +1.669-224-9986


multiprocess_detect_actions.py

Instructions for updating: Use standard file APIs to check for files with this prefix. frame_q: 255, obj_q: 0, act_q: 0, vis_q: 0 frame_q: 255, obj_q: 0, act_q: 0, vis_q: 0 frame_q: 255, obj_q: 0, act_q: 0, vis_q: 0 frame_q: 255, obj_q: 0, act_q: 0, vis_q: 0 frame_q: 255, obj_q: 0, act_q: 0, vis_q: 0 frame_q: 255, obj_q: 0, act_q: 0, vis_q: 0 frame_q: 255, obj_q: 0, act_q: 0, vis_q: 0 frame_q: 255, obj_q: 0, act_q: 0, vis_q: 0 frame_q: 255, obj_q: 0, act_q: 0, vis_q: 0 frame_q: 255, obj_q: 0, act_q: 0, vis_q: 0 frame_q: 255, obj_q: 0, act_q: 0, vis_q: 0
Hello, the output is caught in such an endless loop. What's wrong with it? In addition, it seems that gpu is not used in this one, because tensorflow in the code is not used at all. Is this true?

unzip object_detection/weights/ssd_mobilenet_v2_coco_2018_03_29.tar.gz

I have unzip it, but it is still caught in such an endless loop


Document should be remained in compiled file.

for example:
class A {
  /**
   *  some document
   */
  prop:number;
  constructor(prop:number) {
  }
}

the document part would be removed unless prop initialized with a value after compiled, i think it should be remained in compiled file.

I'm sorry, do you mean that the comment preceding prop isn't being emitted but should be?

@zzm2q just FYI the following
class A {
  prop:number;
  constructor(prop:number) {
  }
}

is not the same as (perhaps what you want):
class A {
  constructor(public prop:number) {
  }
}

Also note that the field declaration does not have a JavaScript equivalent; do this is a pure typescript construct.

em, i guess i didn't described clearly.

There are tow way to walk around it:
class A {
  /**
   * comment would be emitted with first case.
   */
  prop:number = 0; // 1. initialized with a value
  constructor(prop:number) {
    /**
     * 2. comment here also works.
     */
    this.prop = prop;
  }
}

that's ok but not convenient and not obvious。

Do you want the comment preserved even though the field isn't emitted? The field is not emitted without an initializer (by design) and so neither is its comment.

Yeah, that's what i want, it's not strong demand. I want this since i was using jsduck to generate document of my library from ts files but fail to. And then, i successfully generated from compiled js but lost some that comments of property without an initializer.

the correct fix here is to allow an extensiblity layer in the emitter and allow such customization if/when needed. https://github.com/Microsoft/TypeScript/issues/5595 tracks moving the emitter to a transformation based pipeline, and that should get us most of the way to enabling such scenarios. the OP however is out of scope of the TypeScript project.

I'm trying to get a "//EOL" comment between declarations at the top level of a file to be preserved. When I researched the necessary option for preserving comments, I was surprised to see that the compiler is configured to preserve comments by default, and you have to ask for comments to be removed. So what I see in the documentation is that comments are 100% supposed to be preserved. The option is not defined as "remove the comments we didn't already remove".
The project I'm considering TS for has an "include" file system which adds in additional files. The system has a handful of different implementations depending on whether scripts come from the filesystem (in one of two different layouts) or from a database. The early version of the database was prone to appending small amounts of trash characters, so we arrived at putting "//EOL" in the file at the end. Then we started using that like the "if name == 'main'" idiom of Python to put a unit test in the file. With the "//EOL" in between, the file would work as a main file when the EOL was ignored. So now we have dozens of files like this. If comments were truly preserved, then the activation energy I would need to transition the project to TS would be much lower, because I could do one file this week, 10 files next week, advertise the benefits, continue converting files lazily until budget was approved. If not, I have to speculate about the benefits achieved based on one or two files, which I manually restore the //EOL in, and then basically get approval to convert the whole thing because I need to plan a big-bang conversion of the include file system up front.


🦺[Tech Debt] removed reference to the unused Circle font

Why?
There were references to fonts that are not being used.

This good to merge? @kcw-grunt

This good to merge? @kcw-grunt
Yeah. I wanted our Turkish work done. In general the author of the PR is responsible to merge and delete the branch.