Plans for providing transform feedback / stream output-like functionality in Vulkan?

Are there are any plans to add stream output-like functionality to Vulkan?
Developers of translation layers that implement D3D11 and D3D12 through Vulkan (dxvk and vkd3d) have hard time implementing this kind of functionality with current Vulkan options.

Looks like a transform feedback-like functionality.
Simply use general-purpose storage buffer to stream out the vertex processing output?

We can't really comment on WG plans. And while we can't promise that the WG will take action on any particular issue, we can certainly help bring feedback on missing features into the WG.
@shmerl can you add more detail on why using a buffer to emit the same output is not feasible?
Would also be good to get feedback from other applications that might benefit from this. Probably worth leaving this issue open for a bit to gather more data.

I talked about this to other people already, but since @shmerl insists on me commenting here:
The main issue with mapping Stream Output to SSBO writes is satisfying the ordering guarantees for the output data - to loosely quote the OpenGL spec, writing out the transformed vertices in the same order they were received.
If the number of vertices emitted by a geometry shader is the same across all invocations, we could simply use a multiple of PrimitiveId as an index into the stream output buffers, but this won't work in case a geometry shader conditionally emits data to a stream. Atomics cannot be used in this case because the output order would become undefined.
In some cases this could be worked around by simply ignoring the ordering if the application is known not to rely on it, but for a generic API wrapper like DXVK, this is not an option.

Indeed, true StreamOut cannot be emulated by trivially writing to SSBOs with atomics because of ordering guarantees.

I've raised this internally in Khronos.

Question for @doitsujin . The GS stage has a statically declared maximum number of output vertices - could you do something like allocate a region for the GS instance based on primitive ID, and also record the number of vertices written? Then, if gaps are detected (possibly by static analysis detecting branching) run a compaction/defrag step? This isn't performant, but my understanding is that outputting dynamic numbers of vertices from the GS is generally not expected to be performant.. could issue some kind of performance warning in this case.

Or compute the final positions beforehand.
I wonder if there is some HW under this feature, or something like above is done in the driver anyway on modern unified shader architecture.

@null77 Yes, that should be possible. I'm aware that this workaround exists, but I don't like it very much due to the overhead involved.
@krOoze how would you compute the indices in advance?

@doitsujin By replacing all EmitVertex with ++counter, you can get a buffer of counts. From which you can then compute indices for each first emitted vertex (partial sum). (At least that is how it works in my head...).

Hm, I guess that would work, although with the same drawbacks as the contraction pass mentioned above.

We discussed this in our weekly ecosystem call again today. It would be very useful to get more detailed feedback on how shipping applications are using stream output in DX. Transform feedback is a pretty big topic and it would be good to try to get a sense of what it might be used for, to help inform priorities on the various bits of functionality involved.
@doitsujin, do you guys have insights on this from your work in dxvk?

@krOoze well it depends.. all the apps that worked OK before this change on Nvidia (and hopefully doesn't changing descriptor usage depending on querying these limits) should use less than old limits so no spilling.. for projects like VKD3D and DXVK allows them don't worrying about D3D limits as these Vulkan driver limits are greater than D3D limits..
I'm afraid to ask Nvidia but perhaps adding some new devince queries "no spilling" variants like maxPerStageDescritporUniformBufferfsNospilling or setting some new flag "give me true no spilling limits" before getting these queries could be useful..

Our hardware doesn't necessarily map 1:1 to the limits exposed by the API. We expect most applications that go above the original limits won't actually suffer any performance loss in practice, so having a separate query wouldn't be very useful either.
I'd prefer if we kept this thread focused on the transform feedback requests. We can discuss implementation limits offline if needed.

@nsubtil:
I asked one of the REDengine developers who worked on TW3 about this, and he said:

AFAIR we used stream out for the decals (blood, etc) on the characters, I can't recall any other use case. That was rather simple implementation.

In other games and projects I recall that streamout was mainly used for skinned geometry either for decals or as an optimization when given geometry was rendered multiple times (cascade shadowmaps, etc). Usually the initial geometry's vertex shader was to expensive to evaluate multiple times (like for more complicated characters or particles) or it was just inconvenient to integrate proper support for animated geometry at the target and stream out allowed to "cheat" and provide a pre-made vertex buffers.

@nsubtil: Do you still need more input to move this forward?

We use stream output for mesh skinning on Android device. On Metal we use compute shader. It seems compute shader is a superset of stream output, so Metal do not provide stream output support.

@alek314 Well, if you need the output from geometry and\or tessellation shader, you would have to implement those in the compute shader. You might lose some performance doing so.

It would be great to have a solution for this since this issue is the biggest blocker for many games to reach ~gold status on Wine + DXVK (The Witcher 3 being a prominent one among them).
Unless this is resolved, DXVK cannot fix / implement Stream Output related issues and many otherwise great-performing games remain subpar on this stack.

@doitsujin: Do you have any specific preference for how it should be implemented in Vulkan? I think projects like dxvk and vkd3d would be the primary users of it, so your input would be valuable.

cc @jozefkucia.

@krOoze:

I wonder if there is some HW under this feature, or something like above hack is done in the driver anyway on modern unified shader architecture.

Yes, there is HW, at least on some architectures: AMD_Evergreen-Family_Instruction_Set_Architecture.pdf, 2.1.3 describes the data flow in case geometry shader is used:

The VS program ends by writing vertices out to the VS ring buffer.
The GS program reads multiple vertices from the VS ring buffer, executes its geometry functions, and outputs one or more vertices per input vertex to the GS ring buffer. The VS program can only write a single vertex per single input; the GS program can write a large number of vertices per single input. Every time a GS program outputs a vertex, it indicates to the vertex VGT that a new vertex has been output (using EMIT_* instructions). The VGT counts the total number of vertices created by each GS program. The GS program divides primitive strips by issuing CUT_VERTEX instructions.
The GS program ends when all vertices have been output. No position or parameters is exported.
The DC program reads the vertex data from the GS ring buffer and transfers this data to the parameter cache and position buffer using one of the MEM* memory export instructions.

So it seems that real transform feedback is needed in Vulkan to take advantage of that.

@michalsrb It describes parameter cache and position buffer, not stream output.
Also instructions is miles away from HW. GLSL is translated to instructions. The question is if they are something that cannot be expressed in GLSL explicitly.

@krOoze You are right, this does not describe how it really works internally and I admit I don't know. My comment is only based on reading the documentation and the open source drivers.
The stream out functionality seems to be configured by setting VGT_STRMOUT_* registers. My guess is that either the hardware or the "DC program" writes the vertices to the buffers in addition to the parameter cache and position buffer. If it could be used for more than the OpenGL style transform feedback is good question.

@nsubtil: Is there any rough ETA on how long this can be worked on (spec wise)?

Some members of the Vulkan working group are developing a multi-vendor EXT extension for transform feedback with the primary goal of satisfying the needs of the DXVK, vkd3d and ANGLE translation layers. The Vulkan working group does not plan to promote this functionality as a KHR extension or as core functionality because it believes there are better, more forward-looking ways of processing and capturing vertex data with the GPU. The multi-vendor EXT extension should be available soon and is likely to be implemented on those platforms where DXVK, vkd3d and ANGLE translation is required.

What great news! Thank you!

Awesome!

Don't know what it means, but sounds awesome.

It means they are adding an extension to Vulkan so this issue can be resolved, but the extension will not become part of the mandatory standard ones.

I would like to mention that the majority of virtual reality games are broken on SteamOS. That is unlikely to change until this extension becomes available.

The multi-vendor EXT extension should be available soon

Do you expect it within weeks or months?

but the extension will not become part of the mandatory standard ones.

KHR extensions are not mandatory. And all published extensions are standard (except perhaps the provisional ones).

We’re aiming for weeks not months. There has been a lot of progress since my last comment.

Is there a draft that you could make available so others outside the working group could provide input? In particular, it might be beneficial to run a draft by the DXVK, VKD3D and ANGLE developers because they would be the primary (only?) consumers of the extension.

I believe that because of Vulkan being implemented lower level, this can theoretically be implemented fairly efficiently in the shader handling code.
However, this is likely still a sub-optimal way to handle it as it would create locks/holds and other latency sources that would not occur in fully hardware accelerated setup.

The VK_EXT_transform_feedback extension specification has now been published as part of the Vulkan 1.1.88 release here
https://www.khronos.org/registry/vulkan/specs/1.1-extensions/html/vkspec.html#VK_EXT_transform_feedback.
It looks like DXVK has already added support along with NVIDIA and RADV drivers. More support will follow including Vulkan CTS coverage.

Congrats and kudos to everyone involved!
For the technical background on this effort, see a very good write up by Jason Ekstrand.


Add python2 and python3 packages for FreeBSD

The FreeBSD AMIs have python36 installed already, but that only gives
us /usr/local/bin/python3.6, while we also need the python3 link.
We need python2 as well in some places.
Signed-off-by: Ryan Moeller<EMAIL_ADDRESS>

I have a hunch this is the problem, since the configure output doesn't seem to be finding python3 or python2 either.


Needed possibility to configure dialog size and even dialog itself.

Currently there is a property: menuConstraints, but it is ignored in case of dialogBox = true
As result on large screens dialog takes almost all available space, which looks bad.
Please add property dialogConstraints to be able to limit dialog size.
Also it would be absolutely perfect if option for overriding showDialog() call is added, like:
OnShowDialog onShowDialog;

typedef OnShowDialog  = Future Function(BuildContext context, Widget menuWidget);

That way it will be possible to configure showDialog() exactly the way it is needed for my application, even replacing standard dialog to custom one.

Hello @slavap ,
Is this an improvement proposal to add dialogConstraints or to add onShowDialog? Or does one solve the other?

@lcuis better to add onShowDialog, it will be more powerful customization. But nothing wrong with adding both, for simple cases dialogConstraints could be easier to use.

Sorry for the late reply.
I hope version 2.0.2 solves this issue as well as #23 with the possibility to control the layout of the dropdown dialog through buildDropDownDialog function as shown in example app.
If it doesn't solve, please reopen this issue.


TypeError: translate is not a function

Installed the lastest version, stored my text in msg.payload  and tried to translate from English to German. Got the following error in the debug window.
1/9/2023, 8:31:51 AM[node: To German](https://example.com/nodered/#)
msg : error
"TypeError: translate is not a function"

same here


Implement transfer function for SMask

(https://bugzilla.mozilla.org/show_bug.cgi?id=960462)
https://issues.apache.org/jira/secure/attachment/12546323/missing_image.pdf
SMask (dict) [id: 94, gen: 0]
    BC (array) [id: 80, gen: 0]
    G (stream) [id: 59, gen: 0]
    S = /Luminosity
    TR (stream) [id: 60, gen: 0]
        Domain (array)
        Filter = /FlateDecode
        FunctionType = 4
        Length = 27
        Range (array)
        <view contents> download
        {1.000000 exch sub }

Closing as fixed by PR #6723.


virtual-scroll: use detectChanges rather than markForCheck in CdkVirtualScrollViewport

So theoretically this should be a little better for performance, I think.. markForCheck checks from the root and detectChanges just checks the component you call it on. All of the examples I have in the demo app still seem to work fine after this change

@naveedahmed1 You are right, it looks like this broke it for parents that are using OnPush strategy. I will create a fix


Can't use custom registry with SYSTEM user in windows

I'm having difficulty setting up a project using vcpkg with a custom registry and a custom port under Jenkins. Cmake configure for this project works without problems if run as a standard user but fails if run by Jenkins (SYSTEM user in windows). I receive the following output:
D:\jenkins\workspace\DL_Analyser\build>cmake .. -DBUILD_TORCH_BACKEND=ON -G"Visual Studio 16 2019" -DCMAKE_SYSTEM_VERSION=10 -DCMAKE_TOOLCHAIN_FILE=D:\repos\vcpkg\scripts\buildsystems\vcpkg.cmake
-- Running vcpkg install
Fetching registry information from git@XXX:testing/vcpkg-registry.git...
Error: Couldn't find the versions database file: C:\WINDOWS\system32\config\systemprofile\AppData\Local\vcpkg\registries\git-trees\9bc4c64404ae775c236f306e89bd5f481d1190e9\s-\sen-csl.json
Note: Updating vcpkg by rerunning bootstrap-vcpkg may resolve this failure.
-- Running vcpkg install - failed
CMake Error at D:/repos/vcpkg/scripts/buildsystems/vcpkg.cmake:898 (message):
  vcpkg install failed.  See logs for more information:
  D:\jenkins\workspace\DL_Analyser\build\vcpkg-manifest-install.log
Call Stack (most recent call first):
  C:/Program Files/CMake/share/cmake-3.20/Modules/CMakeDetermineSystem.cmake:123 (include)
  CMakeLists.txt:2 (project)

-- Configuring incomplete, errors occurred!

This is what the output looks like under a standard user
d:\jenkins\workspace\DL_Analyser\build>cmake .. -DBUILD_TORCH_BACKEND=ON -G"Visual Studio 16 2019" -DCMAKE_SYSTEM_VERSION=10 -DCMAKE_TOOLCHAIN_FILE=D:\repos\vcpkg\scripts\buildsystems\vcpkg.cmake
-- Running vcpkg install
Fetching registry information from git@XXX:testing/vcpkg-registry.git...
Detecting compiler hash for triplet x64-windows...
The following packages will be built and installed:
    gtest[core]:x64-windows -> 2021-05-07
    sen-csl[core]:x64-windows -> 2019.5.281 -- C:\Users\jaka.katrasnik\AppData\Local\vcpkg\registries\git-trees\214e3862a055ce6bcfee1425f86e46d99464b6b7
    openssl[core]:x64-windows -> 1.1.1k#1
Using cached binary package: C:\Users\jaka.katrasnik\AppData\Local\vcpkg\archives\a8\a8d77695bbab59f8ef28c3a7e10d1055f4d1555c.zip
Using cached binary package: C:\Users\jaka.katrasnik\AppData\Local\vcpkg\archives\84\8473b7f76ecbae7c52b171a4476170dd49c54f84.zip
Using cached binary package: C:\Users\jaka.katrasnik\AppData\Local\vcpkg\archives\0a\0aaf12dc36f65f1923a1bebf551bd62048066169.zip
Starting package 1/3: gtest:x64-windows
Building package gtest[core]:x64-windows...
Building package gtest[core]:x64-windows... done
Installing package gtest[core]:x64-windows...
Installing package gtest[core]:x64-windows... done
Elapsed time for package gtest:x64-windows: 1.226 s
Starting package 2/3: sen-csl:x64-windows

Environment

OS: Windows 10
Compiler: VS 2019 version 16.8.1
Cmake: 3.20.2

Config files
vcpkg.json
{
    "name": "dl-analyzer",
    "version-string": "0.0.1",
    "dependencies": [
        "gtest", "openssl", "sen-csl"
    ]
}

vcpkg-configuration.json
{
  "registries": [
    {
      "kind": "git",
      "repository": "git@XXX:testing/vcpkg-registry.git",
      "baseline": "183b3d18bed339b7c85b8c7ca247879f99545e15",
      "packages": [ "sen-csl" ]
    }
  ]
}

The issue is no longer present in the latest version of vcpkg-tool (eea14d0feb2b26d36031405af42e1e48199e4168)


Handbook: clarify different declaration merging scenarios

doesn't work
declare module M {
   interface I {
     fn: {
          (value: number): string;
     }
   }
}

declare module M {
   interface I {
     fn: {
         (value: Date): boolean;
     }
   }
}

works
declare module M {
   interface I {
     fn(value: number): string;
   }
}

declare module M {
   interface I {
     fn(value: Date): boolean;
   }
}

Am  I missing something?

Overloads don't combine across anonymous types, the same way these wouldn't combine if the fn declarations were fn: { x: number } and fn: { y: number }
It's a tricky balance because we don't want to just always merge types -- detecting conflicts is a key value in static typing -- but sometimes you do want to merge. The syntactic form of fn in this case tells us you really mean for fn to be a function rather than some object type, and that's our cue to let the merging continue.

wouldn't combine if the fn declarations were fn: { x: number } and fn: { y: number }

(out of curiosity, why wouldn't you?)
Anyway I think what you just said should be in the handbook.

@aleksey-bykov is the information in https://github.com/Microsoft/TypeScript-Handbook/blob/master/pages/Declaration Merging.md sufficient to address this issue?

It wouldn't be, that page hasn't been amended with this information since this issue was filed. I've filed https://github.com/Microsoft/TypeScript-Handbook/issues/129.
Though I'll let @aleksey-bykov speak for himself. :smile:

thanks @DanielRosenwasser. closing this in favor of Microsoft/TypeScript-Handbook#129.

thanks guys, your are the bestest, ryan's anwer was good enough for me, i believe it can be copied/pasted to the handbook

:heart:


continuousValidation doesn't take effect  for sign-in page

It works fine for sign-up page, but it doesn't take effect for sign-in page.

That's by purpose. See #350 for the latest debate and some workaround...

thanks~


Support concave corner in round rectangle

Please do not update the README or Change Log, we will do this when we merge your PR.
This PR (delete as applicable)

Adds a new feature

Describe the changes below:
If corner radius (tl, tr, bl, br) is positive value, draw convex arc at corner,
Else (corner radius is negative), draw concave arc at corner.
Test code
this.add.graphics()
    .lineStyle(4, 0xffffff)
    .fillStyle(0x555555)
    .strokeRoundedRect(200, 150, 100, 100, { tl: -20, tr: -20, bl: 20, br: 20 })
    .fillRoundedRect(200, 150, 100, 100, { tl: -20, tr: -20, bl: 20, br: 20 })

Result

Lovely 👍


Add support for CIBW_ENVIRONMENT

I need something like this to build wheel for Python 3.12 for packages with C stuff that needs unreleased numpy 1.26b. Unfortunately, I don't know if it is possible from your workflow here. Please help. Thanks!
https://github.com/scipy/scipy/blob/34366e000b3f37732c4254476e0d6df1857f1f70/.github/workflows/wheels.yml#L136C11-L136C27
Related PRs:

https://github.com/liberfa/pyerfa/pull/111
https://github.com/astropy/astropy/pull/14784 or https://github.com/astropy/astropy/pull/15202

I think this should already be possible with the env option. Please let me know if that works

Indeed, env works. Thanks!

So while this works, it also un-discriminatorily pulls down numpy 1.26b for everything, not just the cp312 stuff. This also breaks all the win32 jobs because I guess this new numpy does not ship win32 wheels no more.
      env: |
        CIBW_ENVIRONMENT: PIP_PRE=1

What is the best way to tell the workflow to only do it for certain Python version here? Or do I need a totally separate workflow just for cp312.

You could try:
env: |
    CIBW_ENVIRONMENT: 'PIP_PRE=$( if [ "${CIBW_BUILD:0:5}" = "cp312" ]; then echo 1; else echo 0; fi )'

A neater solution might be to configure CIBW_BEFORE_ALL, either as an env var or in pyproject.yaml. It could call a script that sets env vars.

Alas, something isn't quite right in the if-else syntax you provided. The "else" seems to work but "then" failed to assign 1 to the variable. I get this:
e476a803-2995-460c-b317-5d3068b425a5.sh: 3: Bad substitution
{
  "CIBW_ENVIRONMENT": "PIP_PRE="
}
...
CIBW_ENVIRONMENT: PIP_PRE=
CIBW_BUILD: cp312-manylinux_x86_64


Long string literals are cut off when using autocomplete

Type: Bug
Behaviour
Expected vs. Actual
When using autocomplete on an argument which has a string literal as a type hint, the value which you end up with is truncated.
Actual: "An even longer argument!! Wow! It's so long it wil…"
Expected: "An even longer argument!! Wow! It's so long it will just keep going... Will it ever stop?... Yes"
Steps to reproduce:
from typing import Literal

class MyClass():
    def __init__(
        self,
        some_arg: Literal[
            "This is a really long argument... I'm going to stop typing now...",
            "An even longer argument!! Wow! It's so long it will just keep going... Will it ever stop?... Yes"
        ]
    ):
        self.some_arg = some_arg

If you now enter c = MyClass(", the autocomplete will pop up with the two options. Pressing tab on one (say, the second) will result in the line
c = MyClass("An even longer argument!! Wow! It's so long it wil…")

Diagnostic data

Python version (& distribution if applicable, e.g. Anaconda): 3.9.7
Type of virtual environment used (e.g. conda, venv, virtualenv, etc.): Global
Value of the python.languageServer setting: Default

Output for Python in the Output panel (View→Output, change the drop-down the upper-right of the Output panel to Python)

2023-11-14 09:21:19.487 [info] Experiment 'pythonPromptNewFormatterExt' is active
2023-11-14 09:21:19.487 [info] Experiment 'pythonPromptNewToolsExt' is active
2023-11-14 09:21:19.487 [info] Experiment 'pythonRecommendTensorboardExt' is active
2023-11-14 09:21:19.488 [info] Experiment 'pythonREPLSmartSend' is active
2023-11-14 09:21:19.488 [info] Experiment 'pythonSurveyNotificationcf' is active
2023-11-14 09:21:19.488 [info] Experiment 'pythonTerminalEnvVarActivation' is active
2023-11-14 09:21:19.488 [info] Experiment 'pythonTestAdapter' is active
2023-11-14 09:21:19.564 [info] Default formatter is set to null for workspace c:\Users\monkeyman192\Documents\GitHub\NMS data
2023-11-14 09:21:19.583 [info] Test server listening.
2023-11-14 09:21:19.584 [info] Python interpreter path: ~\AppData\Local\Programs\Python\Python39\python.exe
2023-11-14 09:21:22.132 [info] Starting Pylance language server.
2023-11-14 09:24:26.399 [info] Discover tests for workspace name: NMS data - uri: c:\Users\monkeyman192\Documents\GitHub\NMS data\test.py

User Settings

languageServer: "Pylance"

Extension version: 2023.21.13141007
VS Code version: Code 1.84.2 (1a5daa3a0231a0fbba4f14db7ec463cf99d7768e, 2023-11-09T10:51:52.184Z)
OS version: Windows_NT x64 10.0.19045
Modes:

System Info

Item
Value

CPUs
11th Gen Intel(R) Core(TM) i5-1135G7 @ 2.40GHz (8 x 2419)

GPU Status
2d_canvas: enabledcanvas_oop_rasterization: enabled_ondirect_rendering_display_compositor: disabled_off_okgpu_compositing: enabledmultiple_raster_threads: enabled_onopengl: enabled_onrasterization: enabledraw_draw: disabled_off_okvideo_decode: enabledvideo_encode: enabledvulkan: disabled_offwebgl: enabledwebgl2: enabledwebgpu: enabled

Load (avg)
undefined

Memory (System)
7.70GB (0.93GB free)

Process Argv
--crash-reporter-id 5e74cbc0-92bf-4dd1-949d-032a9996ea40

Screen Reader
no

VM
0%

A/B Experiments
vsliv368:30146709
vsreu685:30147344
python383:30185418
vspor879:30202332
vspor708:30202333
vspor363:30204092
vslsvsres303:30308271
vserr242:30382549
pythontb:30283811
vsjup518:30340749
pythonptprofiler:30281270
vshan820:30294714
vstes263:30335439
vscorecescf:30445987
vscod805:30301674
binariesv615:30325510
bridge0708:30335490
bridge0723:30353136
vsaa593cf:30376535
pythonvs932:30410667
py29gd2263cf:30880073
ch094911:30880123
vscaat:30438848
vsclangdc:30486549
c4g48928:30535728
dsvsc012cf:30540253
pynewext54:30695312
azure-dev_surveyone:30548225
3biah626:30602489
f6dab269:30613381
2i9eh265:30646982
showlangstatbar:30737416
pythonfmttext:30731395
fixshowwlkth:30771522
showindicator:30805244
pythongtdpath:30769146
i26e3531:30792625
welcomedialog:30887143
pythonnosmt12:30797651
pythonidxpt:30866567
pythonnoceb:30805159
dsvsc013:30795093
dsvsc014:30804076
dsvsc015:30845448
pythontestfixtcf:30871695
pythonregdiag2:30871582
pyreplss2:30886141
pythonmypyd1:30879173
pythoncet0:30885854
h48ei257:30885898
pythontbext0:30879054
dsvsc016cf:30886111
dsvsc017:30886112
dsvsc018:30886114
aa_t_chat:30882232

The current behavior is intentional. There must be some limit placed on literal string lengths. This cutoff is somewhat arbitrary, but it is quite long and accommodates the vast majority of use cases.

Is there a way to configure it? I get not wanting to show the whole thing in the popup, but it doesn't seem right that when you'd auto-complete the value of the string it would not insert the full string...

No, there's no way to configure it. Adding configuration knobs for something so esoteric is probably not the right answer.

Yeah, that is fair enough. I still don't really understand why the value inserted into the code isn't the complete value. I can't see a use case for it being truncated when anyone wanting to use the auto-complete functionality would surely want the whole string irrespective of it's length?

These same strings are used for hover text, type checker error messages, etc. We've seen cases where string literals are tens of thousands of characters in length. It wouldn't make sense to present the full string in these cases, so we need to cut it off at some length.

Yeah, I understand for popups and messages and such, it definitely makes sense to have them truncated. However if you need the actual value in your code, I can't understand why the value that gets inserted isn't the full value. For every other case I agree, it should get truncated, just not this one.

How about we dont suggest the autocomplete then when the string is too long?

I don't see how that really helps? The point is that I want the autocomplete.. Just not truncated...

Thank you for bringing up this issue. As mentioned earlier, the current behavior is by design, and at the moment, we don't have plans to alter it in the near future. For more insights into how we organize and prioritize issues, please refer to this link. Thanks for your understanding!


Add kubernetes deployment for postgres, redis, rabbit and mongodb. Deployment should support CoreDNS and service discovery mechanism with main platform.

Helm package installation should be enough for basic scenarios.


A simple blog post with minimal steps to install React Native Vector Icons

Is your feature request related to a problem? Please describe.
The documentation seems a bit incomplete.
Describe the solution you'd like
I have written a blog post to help others who stumble upon issues that I have faced while using this library.
https://levelup.gitconnected.com/integrating-react-native-vector-icon-with-react-native-0-60-and-above-4cad9b9c61c5

We’ve just released a major new version with significant changes and improvements. If you’re still experiencing this issue after upgrading, please open a new issue with updated details. We're closing all the very old issues to get on top of things. Thanks for your patience!


I want to move default section on own panel

I want to move default section on own panel
like
site title and tagline
static front page
these to section on General panel
Background Image section on
Background Images panel
color section on
style panel
please help me

Hey there!
You will first have to remove these sections, and then re-add them to your own panel.
to remove a section for example you'd do something like this:
$wp_customize->remove_control( 'blogdescription' );
$wp_customize->remove_section( 'nav' );
$wp_customize->remove_section( 'static_front_page' );

Hi there,
How can I re-add a predefined control or section (e.g. nav section) to a new panel?!

Great question. I will sit by and watch for the answer as well. I have been wondering the same thing just yesterday. Genesis has a default to have the site name and tag line in Customizer, and wanting to pretty much do the same thing asked above to add to the custom panel of Kirki.

I didn't ask how to remove i asked how to sift it to my own custom panel
Sent from my iPhone

On 19 Apr 2015, at 12:57 pm, Ciaran Whelan<EMAIL_ADDRESS>wrote:
Great question. I will sit by and watch for the answer as well. I have been wondering the same thing just yesterday. Genesis has a default to have the site name and tag line in Customizer, and wanting to pretty much do the same thing asked above to add to the custom panel of Kirki.
—
Reply to this email directly or view it on GitHub.

@aijazsiddique please see my previous reply.
First you will have to remove it, then you will have to add it to your own panel.
The above code will help you remove it.
This will help you add it again where you want it: https://make.wordpress.org/core/2014/07/08/customizer-improvements-in-4-0/#customizer-panels

thankyou so much @aristath


Remove Layer suffix from LayerType variants

Done to improve readability:
// Previously
match &layer.layer_type() {
    LayerType::TileLayer(l) => do_thing(),
    LayerType::ObjectLayer(l) => do_thing_2(),
    _ => ()
}
// Now
match &layer.layer_type() {
    LayerType::Tile(l) => do_thing(),
    LayerType::Object(l) => do_thing_2(),
    _ => ()
}

Since we're renaming anyway, would it make sense to use Tiles and Objects, since there layers contain multiples, whereas an Image layer does not, and Group already indicates multiple?


bugfix: restoreDevonfwIde doesn't end

The devonfw IDE Installation script with restoreDevonfwIde on Katacoda won't end.
Running the last step of the restoreDevonfwIde:
bash setup /root/devonfw-settings/settings.git
will ask the user for an input. Since it was called in the background, we won't see it.
The bug can be recreated, here:
https://www.katacoda.community/git-repository-structure.html#scenarios
In addition our build should fail due to this bug.

I think this behaviour is due to this new feature https://github.com/devonfw/ide/pull/544/files.
It seems that the setup script can now be run in batch mode https://github.com/devonfw/ide/pull/544/files#diff-326af379565962b2c1194e362b69bb5ee4b017be23f24c6884e9d61f0a70c0e6R37. Another solution would be to delete the file .m2/settings.xml in the setup script if we do not need this function.


replicate better-sqlite3 in mujs

https://github.com/JoshuaWise/better-sqlite3

Let's do this wrapper first.  It will significantly improve the development productivity for features that need db.

The test works well.   Can you make a repo just for this wrapper?  The wrapper will be used for other applications.
We use the same method as cee-util to download  mujs  for this repo.
I want to see code coverage for the test.

Sure, will we be downloading mujs from orca?

I think we can name this repo as  mujs-sqlite3

- mujs // will be downloaded like cee-utils
js_sqlite3.h
js_sqlite3.c
- test // the folder to host test code

BTW, please also wrap transaction.  we can just wrap
sqlite3_exec(db, "BEGIN TRANSACTION;", NULL, NULL, NULL);   ->    db.begin_transaction();
sqlite3_exec(db, "END TRANSACTION;", NULL, NULL, NULL);  --> db.end_transaction();

Ok got it!


New package: PlazmaBurst2.PlazmaBurst2 version 0.1.0

Pull request has been created with komac v2.2.1 :rocket:
Resolves: https://github.com/microsoft/winget-pkgs/issues/155330
Microsoft Reviewers: Open in CodeFlow

@wingetbot run

Verify:


error: orig_iat field is required

I getting this error orig_iat field is required while I try to refresh the token. Checking the code the error comes from the serializer orig_iat.
Decoding the payload I noticed the this field is not in the dictionary. The only fields in the dictionary are username, user_id, email and exp. The JWT_ALLOW_REFRESH is set to True.

Ooops, I didn't notice that this was added recently and is only in the master. The version 1.6.0 does not support this option yet.

Hey @carlware I am also getting the same error while posting the token refresh request. Could you please help me with how to resolve that error? I have installed the rest-framework-jwt using pip.

In my case, I was using the version 1.6.0 which does not include the orig_iat v1.6.0. After update to the most recent version with the command pip install -U djangorestframework-jwt, this version include in the token the orig_iat. Also notice that you have to allow refresh by default is false.
My settings looks like:
JWT_AUTH = {
    'JWT_EXPIRATION_DELTA': datetime.timedelta(hours=1),
    'JWT_ALLOW_REFRESH': True,
}

I hope, this can help you.

Thanks a lot @carlware
It worked after setting JWT_ALLOW_REFRESH to True.


No favicon

There is no favicon. At least in Chrome.  Please fix it.

Yes, I temporarily disabled the favicon generation plugin because I was switching to webpack 4-and this module broke down. Thanks - I'll fix it.

All done!


[Snyk] Security upgrade express from 4.18.2 to 4.19.2

This PR was automatically created by Snyk using the credentials of a real user.Snyk has created this PR to fix one or more vulnerable packages in the `npm` dependencies of this project.
Changes included in this PR

Changes to the following files to upgrade the vulnerable dependencies to a fixed version:

packages/pwa-kit-runtime/package.json

Vulnerabilities that will be fixed
With an upgrade:

Severity
Priority Score (*)
Issue
Breaking Change
Exploit Maturity

591/1000  Why? Recently disclosed, Has a fix available, CVSS 6.1
Open Redirect SNYK-JS-EXPRESS-6474509
No
No Known Exploit

(*) Note that the real score may have changed since the PR was raised.

Commit messages

Package name: express
    The new version differs by 59 commits.

b28db2c 4.19.2
0b74695 Improved fix for open redirect allow list bypass
4f0f6cc 4.19.1
a003cfa Allow passing non-strings to res.location with new encoding handling checks fixes #5554 #5555
a1fa90f fixed un-edited version in history.md for 4.19.0
11f2b1d build: fix build due to inconsistent supertest behavior in older versions
084e365 4.19.0
0867302 Prevent open redirect allow list bypass due to encodeurl
567c9c6 Add note on how to update docs for new release (#5541)
69a4cf2 deps<EMAIL_ADDRESS>4ee853e docs: loosen TC activity rules
414854b docs: nominating @ wesleytodd to be project captian
06c6b88 docs: update release date
1b51eda 4.18.3
b625132 build: pin Node 21.x to minor
e3eca80 build: pin Node 21.x to minor
23b44b3 build: support Node.js 21.6.2
b9fea12 build: support Node.js 21.x in appveyor
c259c34 build: support Node.js 21.x
fdeb1d3 build: support Node.js 20.x in appveyor
734b281 build: support Node.js 20.x
0e3ab6e examples: improve view count in cookie-sessions
59af63a build<EMAIL_ADDRESS>e720c5a docs: add documentation for benchmarks

See the full diff

Check the changes in this PR to ensure they won't cause issues with your project.

Note: You are seeing this because you or someone else with access to this repository has authorized Snyk to open fix PRs.
For more information:
🧐 View latest project report
🛠 Adjust project settings
📚 Read more about Snyk's upgrade and patch logic

Learn how to fix vulnerabilities with free interactive lessons:
🦉 Open Redirect

closed via https://github.com/SalesforceCommerceCloud/pwa-kit/pull/1719

dup


5532 markdown presentation

Description
closes : #5532
The attribute annotations are now supported by the Service Inventory table.
When an attribute has the correct type of annotation, it will be rendered as a link button in the attributeTreeTable and upon being clicked on, it will open the matching tab containing the documentation.
Mermaid has been blocked from major updates and locked onto version 9.
The structuredClone method is not yet supported by JsDom and Jest. Adding the needed mocks would be a lot of work and counter productive. Version 9 of mermaid will still have all the needed security updates for now.
https://github.com/inmanta/web-console/assets/44098050/e639d996-9bd0-4fb7-b4c5-86404ef6b55d
https://github.com/inmanta/web-console/assets/44098050/5fe70936-7707-47f4-a314-71934c6f36af

Processing this pull request

Merged into branches master, iso7 in<PHONE_NUMBER>93ee6dfe59f479f4704b0f279bd131


HTTPS support with WebSockets/AJAX

When attempting to access Server Control options (turning the server on/off, accessing the server console, etc.) over HTTPS, PufferPanel attempts a WebSockets/AJAX connection over standard HTTP and is blocked by the browser.
Representative output from the Google Chrome console:
[blocked] The page at 'https://example.com/node/index.php' was loaded over HTTPS, but ran insecure content from 'http://node.ip:8003/gameservers/0/off': this content should also be loaded over HTTPS.
[blocked] The page at 'https://example.com/node/index.php' was loaded over HTTPS, but ran insecure content from 'http://node.ip:8031/socket.io/?token=...&EIO=2&transport=polling&t=...': this content should also be loaded over HTTPS.

Reference #415.

Reference https://github.com/PufferPanel/gsd/commit/03ba42344cd4de1f65b8a801d6012f260e472d9f
GSD now requires HTTPS connections, so it should work correctly over HTTP or HTTPS connections from the panel. PufferPanel still needs to update everything to send over HTTPS, so this will be closed when that happens.

Closed in https://github.com/PufferPanel/PufferPanel/commit/d48ebbf9057bfe562d4df3c807eac6fae7620712
If anyone has ideas for a cleaner implementation, please let me know.


Add matchers to Klock

Klock is an MPP Kotlin Library to handle Date and Time in a MPP fashion.
We should add some matchers to their types, similar to the ones we have for java.time

I would like to work on this. So for starters, we would need to create a separate module kotest-assertions-kclock, right?

Closed as per #1214


added go.mod

Which problem is this PR solving?

https://github.com/jaegertracing/jaeger/issues/5850

Description of the changes

added go.mod for docker/debug

How was this change tested?

Checklist

[ ] I have read https://github.com/jaegertracing/jaeger/blob/master/CONTRIBUTING_GUIDELINES.md
[ ] I have signed all commits
[ ] I have added unit tests for the new functionality
[ ] I have run lint and test steps successfully

for jaeger: make lint test
for jaeger-ui: yarn lint and yarn test

please write proper PR title


Fabric Bot Configuration

The focus of these changes is to add the Fabric Bot rules into the repository.

@jsquire
Would you let us know what the bot for? Any other repo having the bot and may I see their action?

This PR is stuck in validation for reasons unrelated to the current change -- https://dev.azure.com/azure-sdk/internal/_build/results?buildId=1378259&view=logs&j=ca395085-040a-526b-2ce8-bdc85f692774&t=cb33ee24-f492-54d2-727a-ae0a7bb84b2c
How can we get this merged?

@danieljurek
No need to worry about CI. It is indeed not related, and fixed in latest main.
@srnagar Let me know if you are OK with it.
I see the same PR on azure-sdk-for-java is already merged https://github.com/Azure/azure-sdk-for-java/pull/27204

@weidongxu-microsoft -- Fabric bot documentation: https://eng.ms/docs/initiatives/open-source-at-microsoft/tools/fabricbot
The rules that are in this PR are already being used on the repository by Fabric Bot and stored in a configuration in the Fabric Bot service. However, the Fabric Bot service is changing to require that the configuration be stored in the repository and this PR is to migrate storage of the Fabric Bot configuration from the Fabric Bot service to this repository.

The build failure is due to a mismatch in javadocs of the generated files caused by this PR which updated the swagger files to add more detailed doc comments.


docs: Add visualization tool usage in readme

Description
Visualization tool usage documentation
Changes Made

Update the readme file to mention the visualization tool
Add a usage file to describe how to use the tool

Could you try to see if you can make the animations .webp files instead of .gif to improve both file size and image quality?

OK, I will try to

I found that GitHub can't render webp images
https://docs.github.com/en/repositories/working-with-files/using-files/working-with-non-code-files
Do you suggest to try find some hacks around it or leave it for now?

That list is not exhaustive, see https://github.com/TomasHubelbauer/markdown-webp for a working example (code: https://github.com/TomasHubelbauer/markdown-webp/blob/main/readme.md?plain=1) so it really should work.

It wasn't working on my vscode preview which made me search if it was supported. I tried again and it turns out that I only need to refresh the preview 😅

Really nice work!


Installer gets stuck on "Installing dotnet..."

ℹ Computer information

Windows build number: 18363.959
PowerToys version: 0.20.0
PowerToy module:

📝 Provide detailed reproduction steps (if any)

In Action Center, click the Update button on the new update available notification from v0.19.2 to upgrade to 0.20.0
OR Download release 0.20.0 from GitHub and install directly

✔ Expected result
v0.20.0 is installed
❌ Actual result

Installation gets stuck on "Installing dotnet..."

Detailed actual result

Notification informs me that the previous version (0.19.2) has been uninstalled.
Notification informs me "Installing dotnet..." with a progress percentage.
Progress percentage moves very slowly - after approx. half an hour is was only up to 50%. (I have a 200mbps fibre connection - broadband speed is not the issue). No way to cancel it as there's no installer dialog, just a notification in Action Center. (Terrible UI for an installation.)
Left it over night: next morning it's stuck on 99%.
Killed the update process from Task Manager.
Rebooted PC.
Manually installed .NET Core 3.1 Desktop Runtime from the link in the repo README. (Downloaded and installed in less than a minute.)
Downloaded PowerToysSetup-0.20.0-x64.exe from the Releases page and ran it.
Notification shows "Installing dotnet..." at 50% and progresses very slowly again (approx. 1% per minute)

📷 Screenshots

Seems very similar to #5397

Seems very similar to #5397

It's different to that issue (in my case the installer does start), but a lot of the comments on #5397 are referring to this issue.

@markwhitaker Yeah, it does start for me as well. I didn't notice the notification area initially.

Yes me too... now it's at 99% and stuck.
Click on the notification close it and setup seems to stop.

Same here. Stopped at 99%.
Can't stop it.
Restarting does not not stop it.

Please read this comment as temporary workaround https://github.com/microsoft/PowerToys/issues/5397#issuecomment-667730455

Thank you @enricogior, it worked.

Please read this comment as temporary workaround #5397 (comment)

Thanks @enricogior, that worked. 🥇

If someone is still experiencing the problem, we have a test build for the upcoming fix in 0.20.1
If someone wants to test it please read https://github.com/microsoft/PowerToys/issues/5397#issuecomment-668522920
Thanks.

This should be fixed in 0.20.1
Please reopen if you are still experiencing this problem,

Please reopen the issue: Just installed the 0.20.1 and it failed.
Scenario:

Install MSI: 0.20.1
Choose directory of installation: Default
Detection of .NET runtime 3.x: None
Requirement for downloading acceptance: Yes
Downloading 3.1.6
Download complete
Failure: Could not install 3.1.3. Please install manually.

Internal versions conflict somewhere? (Seems like it was expecting 3.1.3 but got automatically 3.1.6.)

@willemavjc
are you using the .msi or the .exe installer?

MSI

@willemavjc
the .msi is provided for some automated installation scenarios, from now on we only support .exe for end users.
Please try the .exe.

Already installed manually the dependency: .NET Desktop Runtime 3.1.7 and not .NET Core Runtime 3.1.7 for my personal info.

the .msi is provided for some automated installation scenarios, from now on we only support .exe for end users.

But does it really matter in the end? Are you meaning that by command lines, installation would really have worked out?

@willemavjc

But does it really matter in the end?

Yes it does.

Are you meaning that by command lines, installation would really have worked out?

In the command line installation scenario, .NET Core is already installed.

Oh okay. A bit surprised the installer did not check an installed dependency and stopped immediately then...


Get refresh_token results in error

When I try to get the refresh_token, I use the parameter "prompt" and set it to "consent". Unfortunately, I get the following error in the webview window from Google Firebase:
Unable to process request due to missing initial state. This may happen if browser sessionStorage is inaccessible or accidentally cleared.
This is my code:
  GoogleSignInArgs({
    required this.clientId,
    required this.redirectUri,
    this.scope = _defaultSignInScope,
    this.immediate = false,
    this.responseType = 'token id_token code',
    this.accessType = 'offline',
  });

  @override
  Map<String, String> buildQueryParameters() {
    return {
      'client_id': clientId,
      'scope': scope,
      // 'immediate': immediate.toString(),
      'response_type': responseType,
      'redirect_uri': redirectUri,
      'access_type': accessType,
      "nonce": generateNonce(),
      "prompt": "consent"
    };
  }

Does anyone experience this issue too? I've tried several things but nothing seems to work so far.

It's similar problem with me I guess?
https://github.com/invertase/flutter_desktop_webview_auth/issues/50#issuecomment-1705731416
It happened after the consent screen.
I was wondering if it was actually creating another webview for consent.
Because I've read something that WKWebView can share cookies or sessions between webview by using WKProcessPool.

I found two reasons for the problem.

You should check for a match between targetUriFragment and uriString even when the navigationType is formSubmitted.

Even if you do #1, you shouldn't match two URLs with "contains".
You should only check that the targetUriFragment exactly matches the baseURL and path of the url (endpoint?).

I rearranged the order of the code a bit to get the uriString first, then get the exactTargetUri inside if condition "navigationAction.navigationType == .formSubmitted" and compare them and do onComplete.
    public func webView(_ webView: WKWebView, decidePolicyFor navigationAction: WKNavigationAction, decisionHandler: @escaping (WKNavigationActionPolicy) -> Void) {
        guard let url = navigationAction.request.url else {
            decisionHandler(.allow);
            return
        }

        let uriString = url.absoluteString

        if navigationAction.navigationType == .formSubmitted {
            let exactTargetUri = url.scheme! + "://" + url.host! + url.path

            if (exactTargetUri == targetUriFragment!) { // not called
                decisionHandler(.cancel)
                onComplete!(uriString)
                dismiss(self)
                return
            }

            // Call the decisionHandler to allow the navigation to continue
            decisionHandler(.allow)
            return
        }

        if uriString.contains(targetUriFragment!) { // not called
            decisionHandler(.cancel)
            onComplete!(uriString)
            dismiss(self)
        } else { // called on init
            decisionHandler(.allow)
        }
    }

Now it works fine, but I don't know if it's the best code, best way, it would be great to improve it.

And I added the prompt parameter.
See this: https://github.com/jungti1234/flutter_desktop_webview_auth/commit/8941b8ba0fa20a735c7682112a096334bdb5d734

@jungti1234 Awesome! Thank you for your time to solve this issue. Your solution works. Should we create a pull request for this?

@remcova Yes, I don't mind if you create a pull request.
Umm, Actually I fixed it from to the branch you forked, it seems to be out of sync with the main branch of this repository. So I'm not sure if I should just make my updates a pull request only while keeping the other code.

@remcova Yes, I don't mind if you create a pull request. Umm, Actually I fixed it from to the branch you forked, it seems to be out of sync with the main branch of this repository. So I'm not sure if I should just make my updates a pull request only while keeping the other code.

I think it would be nice to include all the changes. Especially the refresh token. While pull requests do get approved here, they are not being merged, unfortunately..


Added UIIP

I'm researcher and postgraduate at the United Institute of Informatics Problems of the National Academy of Sciences of Belarus. Please accept this request for me to use your great JetBrains products :)

@take5v I am sorry, your institute seems to be non-educational organization, it is the institute which has just postgraduate students, and has no undegraduate courses at all. Most of the institute's staff are researchers, not students. This is why we can not grant licenses to anybody with an email from the institute's domain.
Please, ask your teacher or scientific advisor ("научный руководитель") to apply for a classroom license by email to<EMAIL_ADDRESS>(in English or in Russian). Then the teacher will be able to give the licenses to the postgraduate students. It's more effective and reasonable, if you have limited number of posgraduate students in the institute.
Thank you for your understanding!


Refactor all adapters as Go modules

The purpose of this is to allow users to only import the dependencies that they actually need.

Codecov Report

Merging #14 (1d396f8) into master (5337a9a) will increase coverage by 2.03%.
The diff coverage is 97.90%.

@@            Coverage Diff             @@
##           master      #14      +/-   ##
==========================================
+ Coverage   86.34%   88.38%   +2.03%
==========================================
  Files           8        6       -2
  Lines         813     2393    +1580
==========================================
+ Hits          702     2115    +1413
- Misses         71      225     +154
- Partials       40       53      +13

Impacted Files
Coverage Δ

test_adapters.go
94.24% <97.90%> (ø)

mocks.go
0.00% <0.00%> (-100.00%)
:arrow_down:

dialect.go
86.48% <0.00%> (-13.52%)
:arrow_down:

ksql.go
80.87% <0.00%> (-2.19%)
:arrow_down:

adapters/kmysql/sql_adapter.go

adapters/kpgx/pgx_adapter.go

ksqltest/testhelpers.go

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 5337a9a...1d396f8. Read the comment docs.


Fix Formatted* to work with TouchableHighlight, Close #1046

Partly solved #1046, but this fix will not work if the child is a function.

Can you solve it at full or provide escape hatch or whatever, please?

@steida I cannot think of any possible solution for Function-as-Child. Can you?


User defined functions?

Some of my graphics include grids, which can be easily programmed by sets of lines.  However, it would be convenient to have a function called, say, "grid" which I can simply call when needed.  For example, I have the following in the "head" part of my html document:
<script>
  function grid(nr,nc,h,w) {
  for (var i=0; i<= nr; i++ ) {
      stage.path().moveTo(0,i*h).lineTo(nc*w,i*h);
  }
  for (var i=0; i<=nc; i++ ) {
      stage.path().moveTo(i*w,0).lineTo(i*w,nr*h);
  }
  }
</script>

This  creates a grid with a corner at (0,0), and with parameters as given.   This is all very well, but what happens if I want to draw a grid elsewhere, or rotate a grid?  I shouldn't have to include too many parameters in the function itself, and I'd hope that something like:
var g  = grid(2,4,100,50);
g.translate(200,100);

should work - but it doesn't.  I also can't change the style of the grid lines using "stroke".  Clearly I'm missing something.
How can I write a small function for a particular graphics element, which itself can be altered by chaining with standard graphics.js functions?   Many thanks!
[I should say that I am moving some mathematics notes from LaTeX/PDF to html, using MathJax for the mathematics.  And I think that graphics.js would be perfect for my diagrams - once I understand it better!]

@amca01
The GraphicsJS JS is an engine for drawing. It doesn't provide too many high-level functions and wrappers.
So, complex interactivity or high-level functions you should implement yourself.
For chaining, you should return an instance of which API you want to call futher.


Clarify array syntax of externals

I changed the description of the array syntax for externals and added an example. I just spent 1 hour digging through the source code to find out what exactly this does. The result being that a) this doesn't do what I thought when I read "parent child construct" and b) I actually have no clue at all what this would be useful for. It seems to me to be a leftover from commonjs days? If someone could give me an example how this is useful, maybe adding another sentence here would be nice.
As an aside, what I first thought this would allow me to do is that when I have
a.js
– c.js
b.js
– c.js

that I could specify that c.js shall be bundled only when imported by a.js, but not in b.js, like {'c.js': ['a.js', 'c.js']} (parent a, child c)

Thanks!


[FEA] Support arrays with nulls in the input of GpuRowBasedUDF for Spark 3.1.1+

This is a follow on issue for #3897.
When the input of GpuRowBasedUDF contains arrays with nulls, the UDF will run into the below error for Spark 3.1.1+.
  org.apache.spark.SparkException: Job aborted due to stage failure: Task 0 in stage 27.0 failed 1 times, most recent failure: Lost task 0.0 in stage 27.0 (TID 27) (liangcail-ubuntu18 executor driver): java.lang.AssertionError:  value at 6 is null
	at ai.rapids.cudf.HostColumnVectorCore.assertsForGet(HostColumnVectorCore.java:228)
	at ai.rapids.cudf.HostColumnVectorCore.getInt(HostColumnVectorCore.java:254)
	at com.nvidia.spark.rapids.RapidsHostColumnVectorCore.getInt(RapidsHostColumnVectorCore.java:107)
	at org.apache.spark.sql.vectorized.ColumnarArray.getInt(ColumnarArray.java:128)
	at org.apache.spark.sql.catalyst.expressions.GeneratedClass$SpecificSafeProjection.MapObjects_0$(Unknown Source)
	at org.apache.spark.sql.catalyst.expressions.GeneratedClass$SpecificSafeProjection.apply(Unknown Source)
	at org.apache.spark.sql.catalyst.encoders.ExpressionEncoder$Deserializer.apply(ExpressionEncoder.scala:182)
	at org.apache.spark.sql.rapids.GpuRowBasedScalaUDF.$anonfun$scalaConverter$2(GpuScalaUDF.scala:123)
	at org.apache.spark.sql.rapids.GpuRowBasedScalaUDF.$anonfun$childAccessors$2(GpuScalaUDF.scala:156)

So in the PR #3897, we let it fall back to CPU for this case for now.
However, we need to eventually support this case for Spark 3.1.1+, since we already do for Spark3.0.x.

The null error mentioned in description is probably a bug of code generation in Spark .
The below code is generated from the 3 lines 1095-1097 for this test case here.
/* 076 */       while (loopIndex_0 < dataLength_0) {
/* 077 */         value_MapObject_lambda_variable_1 = (int) (value_4.getInt(loopIndex_0));
/* 078 */         isNull_MapObject_lambda_variable_1 = value_4.isNullAt(loopIndex_0);

value_4 is an ArrayData, and you can see here getInt is called before isNullAt.
/* 061 */     boolean isNull_4 = i.isNullAt(0);
/* 062 */     ArrayData value_4 = isNull_4 ?
/* 063 */     null : (i.getArray(0));

And the log I added for debugging in RapidsHostColumnVectorCore also proved this calling order.
Array of Int
====> lilc getArray: row at 0 is not null
====> lilc getInt: row at 0 is not null
====> lilc isNullAt: row at 0 is not null
====> lilc getInt: row at 1 is not null
====> lilc isNullAt: row at 1 is not null
====> lilc getArray: row at 1 is not null
...

So we can choose to use Catalyst converter for arrays with nulls until this was fixed in Spark.

On the other hand, seems it was not always reasonale to throw exception when trying to get a null value.
For this case here, even the getInt  is called first, but the value will be not used. So we can return any value when readin nulls instead of throwing an exception.


Windows CI: Turning off pkg\symlink unit testing

Signed-off-by: John Howard<EMAIL_ADDRESS>This turns off unit tests on Windows for pkg\symlink so that we can get closer to turning off the flag which ignores unit test failures on Windows. This particular file needs a lot of work to port to Windows.

LGTM 🐱

o! let me LGTM too

@jhowardmsft please fix failures in test :)

ah @tiborvass you're righ. @jhowardmsft I think it should be _unix_test.go instead of _test_unix.go, otherwise golint see it as actual code, not test (and go tools too).

@vdemeester You're right. Sorry. Updated.

All green apart from gccgo stuck in its perpetual scheduling state. This doesn't affect gccgo.

Ooooh. gccgo passed. Yay, all green.

@jhowardmsft let's merge then :wink:


[CDSToolkit] - Server error for product retrieval request

Description:
Server error for product retrieval request.

AM server log

Suggested Labels:
Suggested Assignees:
Affected Product Version:
OS, DB, other environment details and versions:
Steps to reproduce:

Send product retrieval request and verify the response

Related Issues:

Issue resolved after adding the missing config


tests: run test against actual schema files, not snapshots

Current implementation of java tests run against a snapshot of the schema files, shipped with org.cyclinedx java package.
This is undesired and error-prone, as changes to the schema files in this repo are not checked against the schema example files.
Therefore, most java checks in pull requests are just bogus results without any meaning.
This must change ASAP.
Use cases:

a PullRequest is opened, that modifies a schema file. tests must run based on these changes, not some snapshots.
a PullRequest is opened, that modify some test-resources. tests must run based on these changes.

acceptance criteria

all test run against the actual schema files in this repo, not against any other snapshots
optional, but preferred: tests run offline, do not load any data from external sources
all currently running tests still pass

scope

test resources: https://github.com/CycloneDX/specification/tree/master/tools/src/test/resources

tests for JSON files
tests for XML files
valid-*.{json,xml} should pass schema validation
invalid-*.{json,xml} should fail schema validation

schema files: https://github.com/CycloneDX/specification/tree/master/schema

XSD for XML
JSON schema for JSON

targets

[ ] java tests -- open, uses remote snapshot which is about to be changed

see https://github.com/CycloneDX/specification/blob/d37a107d78315675ce2969c10c3ea0b6d92f39a6/tools/src/test/java/org/cyclonedx/schema/JsonSchemaVerificationTest.java#L60-L61
see https://github.com/CycloneDX/specification/blob/d37a107d78315675ce2969c10c3ea0b6d92f39a6/tools/src/test/java/org/cyclonedx/schema/XmlSchemaVerificationTest.java#L64-L65

[x] php tests -- done, uses local versions

see https://github.com/CycloneDX/specification/blob/d37a107d78315675ce2969c10c3ea0b6d92f39a6/tools/src/test/php/json-schema-functional-tests.php#L15-L16
see https://github.com/CycloneDX/specification/blob/d37a107d78315675ce2969c10c3ea0b6d92f39a6/tools/src/test/php/json-schema-lint-tests.php#L5-L6
https://github.com/CycloneDX/specification/blob/d37a107d78315675ce2969c10c3ea0b6d92f39a6/tools/src/test/php/json-schema-lint-tests.php#L16
see https://github.com/CycloneDX/specification/blob/d37a107d78315675ce2969c10c3ea0b6d92f39a6/tools/src/test/php/xml-schema-functional-tests.php#L15-L16

[x] js tests -- done, uses local versions

see https://github.com/CycloneDX/specification/blob/200355550bd40316e9c898a7902cfb61b5b89017/tools/src/test/js/json-schema-functional-tests.js#L24-L25
see https://github.com/CycloneDX/specification/blob/200355550bd40316e9c898a7902cfb61b5b89017/tools/src/test/js/json-schema-lint-tests.js#L16

caused by #255
related: https://cyclonedx.slack.com/archives/G01PMU9ERJA/p1687363757137109

@CycloneDX/core-team FYI
@CycloneDX/java-maintainers can you help out and fix the tests?

The latest schema from the 1.5-dev branch has been incorporated into the latest Core Java 7.4.0-SNAPSHOT

re: https://github.com/CycloneDX/specification/issues/256#issuecomment-1601843289
this does not solve the following purpose: a PR modifies the schema files, tests should run on these changes, not some snapshot.

@mr-zepol mentioned he might be able to help out here.


Make items in navigation tree stand out more in dark

The items in the explorer are barely visible. Color is fine but it's way too dark. Can brightness be increased somehow?
Compare the grey text from terminal:

to the grey text in explorer:

@teabyii this is especially an issue in ayu dark. Text cant be seen at all

@Astrantia that was the intention behind the dark theme — focused coding (contrast editor) during deep night with all lights off. Mirage is better suited for comfortable work with lights on.
However, I would really appreciate if you could describe your workflow and what aspects of the dark theme are the most appealing to you so we could improve it and overall experience.

There is a big difference between avoiding distraction and making things illegible. I’d very much like this color scheme to feature a significantly increased contrast for all UI parts that are not an editor.

@dempfi As this is the scope of this issue, I’m talking about the dark theme in particular. Also, the low contrast is most obvious in the dark theme. The other variants have slightly better contrast because they’re lighter in general.

@kleinfreund I see, in what environment do you use the dark theme? Daylight/dim lights/no lights?

@dempfi I just installed the theme so I don’t have much experience with this particular theme in my common environments.
Usually, I work during the day in a regulalry-lit room. If it’s dark outside, I have lights on. Considering what you stated earlier about the intention of the dark theme, I’m very much not the target audience.
So increasing the contrast for the dark theme might not be in the interest of some of its users. A higher contrast variant of the theme would work, but that would also be quite tedious to maintain, especially considering that Ayu already has quite a few variants.

Use this https://marketplace.visualstudio.com/items?itemName=allmeta.ayu-dark-meta

this theme would be perfect only if this items are a bit brighter, even more so cause i dim my screen while i'm coding in dark

@rilex037   head over to settings .json > add the "blow" in the file
"workbench.colorCustomizations": {
#This is where you change the few aspects of the theme you don't like. Otherwise, I doubt it would be possible to make the theme to every user's liking. happy coding mate 😃
}

Guys, I did quite a lot of contrast related changes for dark theme in the recent release. What's you opinion on those?
@rilex037, I don't have that context menu (I see native OS menu) to test it. I'll see what I can do to repro. For now, @asiimwedismas advice is a good place to start.

@asiimwedismas thanks, I did some customization and it looks my better, just couldn't find the values for selected items, whenever i select something, it looks same as disabled.

sorry, found it
      "list.activeSelectionForeground": "#ffcc66",
      "list.hoverForeground": "#fff",

I've applied a bunch of updates to these in v1. Give it a shot 😉


security/acme-client: automation > upload of renewed cert to synology failed

Important notices
Before you add a new report, we ask you kindly to acknowledge the following:

[X] I have read the contributing guide lines at https://github.com/opnsense/plugins/blob/master/CONTRIBUTING.md
[X] I have searched the existing issues, open and closed, and I'm convinced that mine is new.
[x] The title contains the plugin to which this issue belongs

Describe the bug
An acme cert which was requested a couple of days ago was renewed in opnsense.
After the renew the automation "upload to synology" failes.
TOTP in the Synology is disabled.
Relevant log files
2022-03-10T11:24:00 | acme.sh | [Thu Mar 10 11:24:00 CET 2022] Error deploy for domain:local.domain
2022-03-10T11:24:00 | acme.sh | [Thu Mar 10 11:24:00 CET 2022] If two-factor authentication is enabled for the user, set SYNO_TOTP_SECRET.
2022-03-10T11:24:00 | acme.sh | [Thu Mar 10 11:24:00 CET 2022] Check your username and password.
2022-03-10T11:24:00 | acme.sh | [Thu Mar 10 11:24:00 CET 2022] Unable to authenticate to syno.local.domain:5001 using https.
2022-03-10T11:24:00 | acme.sh | [Thu Mar 10 11:24:00 CET 2022] Please refer to https://curl.haxx.se/libcurl/c/libcurl-errors.html for error code: 60
2022-03-10T11:24:00 | acme.sh | [Thu Mar 10 11:24:00 CET 2022] Logging into syno.local.domain:5001
2022-03-10T11:24:00 | acme.sh | [Thu Mar 10 11:24:00 CET 2022] Please refer to https://curl.haxx.se/libcurl/c/libcurl-errors.html for error code: 60

Additional context
It seems that only certificate was uploaded at first sync.
I think the intermediate cert is missing inside.
If I try to connect via cli from opnsense to the syno I get this error.
curl -v https://syno.local.domain:5001
*   Trying <IP_ADDRESS>:5001...
* Connected to syno.local.domain (<IP_ADDRESS>) port 5001 (#0)
* ALPN, offering h2
* ALPN, offering http/1.1
*  CAfile: /usr/local/etc/ssl/cert.pem
*  CApath: none
* TLSv1.3 (OUT), TLS handshake, Client hello (1):
* TLSv1.3 (IN), TLS handshake, Server hello (2):
* TLSv1.3 (IN), TLS handshake, Encrypted Extensions (8):
* TLSv1.3 (IN), TLS handshake, Certificate (11):
* TLSv1.3 (OUT), TLS alert, unknown CA (560):
* SSL certificate problem: unable to get local issuer certificate
* Closing connection 0
curl: (60) SSL certificate problem: unable to get local issuer certificate
More details here: https://curl.se/docs/sslcerts.html

curl failed to verify the legitimacy of the server and therefore could not
establish a secure connection to it. To learn more about this situation and
how to fix it, please visit the web page mentioned above.

Environment
OPNsense 22.1.2_1 (amd64, OpenSSL).

Unable to authenticate to syno.local.domain:5001 using https

Have you tried setting Scheme to http (not https) in automations?

Hei hei.
Yeah that worked for me.
Thx.

Bear in mind: Using http instead of https is the wrong way, it would be better to make sure, that the certificate can be verified by the router. Because it's simply not secure with http.


Create velocity job for unstable test tracking

https://jenkins.mesosphere.com/service/jenkins/view/Marathon/job/public-marathon-unstable/


Bootstrap 4 support

With bootstrap 4 is coming do you plan to provide an SCSS version?

sure. will discuss that with @acrobat in a few days

Awesome :+1:

Yes that's something we definitely want to support, but I think we have to move to a 2.0 version then. That way we can drop BS2.0 support (possibly but that's not a must) but we have to refactor the styling of the datepicker that we can implement themes. So we can support multiple frontend frameworks (and different versions) but also different custom styles.
I will add it to the 2.0 milestone, but we have to still discuss how we are going approach the 2.0 release (which features, full refactor, code cleanup, etc)

mail will follow tonight or tomorrow night @acrobat

@hebbet
I can assist with the bootstrap4 scss files if needed, especially try to reduce the length of the current css selectors, which are overlong.

Is the latest version working with bootstrap4?

Looks like the styling is ok with v4-alpha2 http://jsfiddle.net/zcvq0yhh/31/. But this is a bit of an issue with the font-size it seems. But that something that you could fix in your code when using the datepicker with twbs4 alpha (2)
Official support in the datepicker should come when bootstrap v4 is stable

i follow the development of BS v4 on github. there are lots of changes in the current alpha and i don't think it using BSv4 alpha for any project yet.
they are also discussing various changes at the moment, some of them might be "breaking changes" to the current alpha.

Ok! Thanks a lot

+1

Yeah, Bootstrap 4 is moving slowly and is kind of breaking things up every update so there is no rush for us to add support.
That being said, 2.0 will brings an ease to support any theme/html-css library, so any one will be welcome to create a support for it.
For me at least, and the guys on the core team think the same I think, I won't add support until a stable release, but we'll make things easy for anyone to add it. Promise.

+1 here, waiting eagerly for the bootstrap v4 SCSS version.

so, this happens if you can't wait, I just translated and adjusted the whole thing to the current V4 bootstrap. pasting it here, do what you will with it, compiles with node-sass (I'm using it):
// @import "node_modules/bootstrap-datepicker/dist/css/bootstrap-datepicker.standalone";

$datepicker-color: $btn-info-color;
$datepicker-bg: $btn-info-bg;
$datepicker-border: $btn-info-border;

.datepicker {
  padding: 4px;

  @include border-radius($input-border-radius);

  &-inline {
    width: 220px;
  }

  direction: ltr;

  &-rtl {
    direction: rtl;

    table tr td span {
      float: right;
    }
  }

  &-dropdown {
    top: 0;
    left: 0;

    &:before {
      content: '';
      display: inline-block;
      border-left: 7px solid transparent;
      border-right: 7px solid transparent;
      border-bottom: 7px solid $gray-light;
      border-top: 0;
      border-bottom-color: rgba(0, 0, 0, 0.2);
      position: absolute;
    }

    &:after {
      content: '';
      display: inline-block;
      border-left: 6px solid transparent;
      border-right: 6px solid transparent;
      border-bottom: 6px solid $white;
      border-top: 0;
      position: absolute;
    }

    &.datepicker-orient-left:before {
      left: 6px;
    }

    &.datepicker-orient-left:after {
      left: 7px;
    }

    &.datepicker-orient-right:before {
      right: 6px;
    }

    &.datepicker-orient-right:after {
      right: 7px;
    }

    &.datepicker-orient-bottom:before {
      top: -7px;
    }

    &.datepicker-orient-bottom:after {
      top: -6px;
    }

    &.datepicker-orient-top:before {
      bottom: -7px;
      border-bottom: 0;
      border-top: 7px solid $gray-light;
    }

    &.datepicker-orient-top:after {
      bottom: -6px;
      border-bottom: 0;
      border-top: 6px solid $white;
    }
  }

  table {
    margin: 0;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
  }

  td, th {
    text-align: center;
    width: 2.5rem;
    height: 2.5rem;

    @include border-radius($input-border-radius);

    border: none;
  }

  // Inline display inside a table presents some problems with
  // border and background colors.
  .table-striped & table tr {
    td, th {
      background-color: transparent;
    }
  }

  table tr td {
    &.day:hover,
    &.day.focused {
      background: $gray-lighter;
      cursor: pointer;
    }

    &.old,
    &.new {
      color: $gray-light;
    }

    &.disabled,
    &.disabled:hover {
      background: none;
      color: $gray-light;
      cursor: default;
    }

    &.highlighted {
      background: $btn-info-bg;
      border-radius: 0;
    }

    &.today,
    &.today:hover,
    &.today.disabled,
    &.today.disabled:hover {
      $datepicker-today-bg: lighten($orange, 30%);

      @include button-variant($btn-warning-color, $datepicker-today-bg, $btn-warning-border);

      color: #000;
    }

    &.today:hover:hover {
      // Thank bootstrap 2.0 for this selector...
      // TODO: Bump min BS to 2.1, use @textColor in buttonBackground above
      color: #000;
    }

    &.today.active:hover {
      color: #fff;
    }

    &.range,
    &.range:hover,
    &.range.disabled,
    &.range.disabled:hover {
      background: $gray-lighter;

      @include border-radius($input-border-radius);
    }

    &.range.today,
    &.range.today:hover,
    &.range.today.disabled,
    &.range.today.disabled:hover {
      $datepicker-range-today-bg: mix($orange, $gray-lighter, 50%);

      @include button-variant($btn-warning-color, $datepicker-range-today-bg, $btn-warning-border);
      @include border-radius($input-border-radius);
    }

    &.selected,
    &.selected:hover,
    &.selected.disabled,
    &.selected.disabled:hover {
      @include button-variant(lighten($gray-light, 10), darken($gray-light, 10), darken($gray-light, 20));

      color: #fff;
      text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
    }

    &.active,
    &.active:hover,
    &.active.disabled,
    &.active.disabled:hover {
      @include button-variant($datepicker-color, $datepicker-bg, $datepicker-border);

      color: #fff;
      text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
    }

    span {
      display: block;
      width: 23%;
      height: 54px;
      line-height: 54px;
      float: left;
      margin: 1%;
      cursor: pointer;

      @include border-radius($input-border-radius);

      &:hover,
      &.focused {
        background: $gray-lighter;
      }

      &.disabled,
      &.disabled:hover {
        background: none;
        color: $gray-light;
        cursor: default;
      }

      &.active,
      &.active:hover,
      &.active.disabled,
      &.active.disabled:hover {
        @include button-variant($datepicker-color, $datepicker-bg, $datepicker-border);

        color: #fff;
        text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
      }

      &.old,
      &.new {
        color: $gray-light;
      }
    }
  }

  .datepicker-switch {
    width: 145px;
  }

  .datepicker-switch,
  .prev,
  .next,
  tfoot tr th {
    cursor: pointer;

    &:hover {
      background: $gray-lighter;
    }
  }

  // Basic styling for calendar-week cells
  .cw {
    font-size: 10px;
    width: 12px;
    padding: 0 2px 0 5px;
    vertical-align: middle;
  }
}

.input-append,
.input-prepend {
  &.date .add-on {
    cursor: pointer;

    i {
      margin-top: 3px;
    }
  }
}

.input-daterange {
  input {
    text-align: center;
  }

  input:first-child {
    @include border-left-radius($input-border-radius);
  }

  input:last-child {
    @include border-right-radius($input-border-radius);
  }

  .add-on {
    display: inline-block;
    width: auto;
    min-width: 16px;
    height: $line-height-base;
    padding: 4px 5px;
    font-weight: normal;
    line-height: $line-height-base;
    text-align: center;
    text-shadow: 0 1px 0 $white;
    vertical-align: middle;
    background-color: $gray-lighter;
    border: 1px solid #ccc;
    margin-left: -5px;
    margin-right: -5px;
  }
}

it would be nice to completely remove the pixel (px values) as bootstrap's approach is to size everything to rem , which is relative to the current font size, and is more responsive.


div III feedback

Passes install_github: ✅
Documentation builds: ✅
Passes R CMD check: ✅
0 errors ✔ | 0 warnings ✔ | 0 notes ✔
Results of devtools::test(): ✅
[ FAIL 0 | WARN 0 | SKIP 0 | PASS 6 ]

@beanumber

The name of your vignette is "pokemon_vignette". Can you come up with a more descriptive name?

Please see #3 for suggested fixes.


Example fix for grep failures causing early exit

Hey Ben!
I've encountered an error when building an image derived from the published Neo4j image.
Specifically, my attempt to replace config files seems to interfere with the files which are expected to exist. This, in turn, causes grep to fail (file not found) when the setting function is called and aborts the execution of docker-entrypoint.sh.
I've changed one of the docker-entrypoint.sh scripts. If you think this is a reasonable approach (one possible improvement might be put an explicit check for file existence) I will be happy to change the other scripts as well.
Thank you!
Matt

Hello Matt. I have either misunderstood the problem you're seeing or the fix you are proposing.
The failure of the grep invocation should never cause an exit, irrespective of whether -e is set, because the if swallows the error and triggers the else branch.
There is a minor problem here, though, which may have put you onto the wrong path: when the file is missing there will be a message printed to stderr. I would definitely like to fix that by redirecting grep's stderr to /dev/null.

Morning Ben!
Of course it's now been a couple weeks and I can no longer reproduce what I was seeing repeatedly.
It's possible I had something else going wrong. Let me poke at it a bit more and get back to you.
Matt

Ok, I found it.
My use of set -e does fix things, but it's not the grep which is failing, it's the echo command which fails:
$ grep -v '^#' Dockerfile
FROM neo4j:2.3
WORKDIR /conf
COPY neo4j* ./

$ docker build .
Sending build context to Docker daemon 24.58 kB
Step 1 : FROM neo4j:2.3
 ---> 01913b7bb5ba
Step 2 : WORKDIR /conf
 ---> Using cache
 ---> 3c7bb41d5678
Step 3 : COPY neo4j* ./
 ---> Using cache
 ---> cdd5c75b4555
Step 4 : CMD neo4j
 ---> Running in c93a6e636a38
 ---> 853e5d07964b
Removing intermediate container c93a6e636a38
Successfully built 853e5d07964b

$ docker run 853e5d07964b
grep: conf/neo4j.properties: No such file or directory
/docker-entrypoint.sh: line 12: conf/neo4j.properties: No such file or directory

$ docker run --entrypoint=/bin/bash -ti 853e5d07964b

root@03f82e8e5094:/# head -12 /docker-entrypoint.sh | tail -1
            echo "${setting}=${value}" >>conf/"${file}"

However, it's the use of a relative path which causes the failure. If I alter my Dockerfile and add WORKDIR /var/lib/neo4j at the end: it works.
$ grep -v '^#' Dockerfile
FROM neo4j:2.3
WORKDIR /conf
COPY neo4j* ./
WORKDIR /var/lib/neo4j

$ docker build --no-cache .
Sending build context to Docker daemon 24.58 kB
Step 1 : FROM neo4j:2.3
 ---> 01913b7bb5ba
Step 2 : WORKDIR /conf
 ---> Running in 8ec4e2482eb8
 ---> 920792a54af7
Removing intermediate container 8ec4e2482eb8
Step 3 : COPY neo4j* ./
 ---> 7215d9fd81ab
Removing intermediate container 8efb4e859441
Step 4 : WORKDIR /var/lib/neo4j
 ---> Running in 5b64f36e3de6
 ---> d0d0029a2c82
Removing intermediate container 5b64f36e3de6
Successfully built d0d0029a2c82

$ docker run d0d0029a2c82
Starting Neo4j Server console-mode...
2017-01-04 18:13:31.040+0000 INFO  No SSL certificate found, generating a self-signed certificate..
2017-01-04 18:13:35.124+0000 INFO  Successfully started database
2017-01-04 18:13:35.152+0000 INFO  Starting HTTP on port 7474 (16 threads available)
2017-01-04 18:13:35.355+0000 INFO  Enabling HTTPS on port 7473
2017-01-04 18:13:35.402+0000 WARN  Acceptors should be <= availableProcessors: ServerConnector@670672a9{HTTP/1.1}{<IP_ADDRESS>:0}
2017-01-04 18:13:35.427+0000 WARN  Acceptors should be <= availableProcessors: ServerConnector@3ef59e0e{SSL-HTTP/1.1}{<IP_ADDRESS>:0}
2017-01-04 18:13:35.460+0000 INFO  Mounting static content at /webadmin
2017-01-04 18:13:35.528+0000 INFO  Mounting static content at /browser
2017-01-04 18:13:37.054+0000 INFO  Remote interface ready and available at http://<IP_ADDRESS>:7474/

I'm not sure this is a bug per se, but it seems a bit odd that the entry script lives at / but needs to be executed from within /var/lib/neo4j to work.
I can work around by altering my Dockerfile. I'm open to discussing other solutions too.
Thank you,
Matt


Adding a few links to some pattern articles.

A couple of my more popular articles on using Sagas to handle various use-cases.

Thanks, those are great !


Problem with torrents

Describe the bug
when i hover over a torrent file something strange happens (s screenshots)
this happens regardless of the extension, it depends on the contents of the file
also it doesn't depend on whether the preview is enabled or not (I don't understand go, but as I understand it, regardless of this it checks whether it is possible to display the preview, and something unpredictable happens)
To Reproduce
Steps to reproduce the behavior:

Open spf
Navigate to torrent file
See error

Expected behavior
unsupported format  inscription in preview pannel
Screenshots
directory contents

problem without preview

problem with preview

problem with copy of torrent without extension

System information (please complete the following information):

OS: Fedora Linux (Workstation Edition)
Version 39
Superfile Version 1.1.4

ok thanks for your report!

@Neburalis https://github.com/yorukot/superfile/issues/393#issuecomment-2370131178


Feature 1

Hey!
Sharing another useful feature for us. With this, when attempting to add a TypeScript file to deploy.xml, this will look for the matching, compiled JavaScript file in the FileCabinet/SuiteScripts folder and add that to deploy.xml instead. Also added a setting for this in the extension settings so it can be either enabled or disabled, in case you actually want to deploy your TypeScript files to NS.

Just wanted to do a few more tests, but I'm thinking it should be good to go now.

Hello! I will merge these changes. Thanks for your contributions.


Doubled "x files changed" item in Search&Compare

GitLens Version: 11.0.5

As shown in the image, the item 3 files changed appears as child of Ahead and again as item in the root.
As far as I can tell both entries are identical - is there a reason it needs to be duplicated?

Closed due to stupidity.
It's only duplicate because Behind is empty. Otherwise the ones under Ahead/Behind show the differences to the common root commit.


570 prepare release of v221

Closes #570

@deemp Thanks for the contribution! You've earned +4 points for this: +4 as a basis; -16 for the lack of code review; -16 for absolutely no comments posted by reviewers; -8 for too few (16) hits-of-code; +40 to give you at least something. Please, keep them coming. Your running balance is +28.


Move more of the MTRAttributeValueWaiter logic into the waiter.

This logic should not live in MTRDevice.

Fast-tracking platform-specific fix with platform owner review.


Fixes paths to product logos.

This should fix the logos.

I created https://github.com/rancher/docs/pull/4321 as an alternative fix to consider.

It looks like the line with "rancher-logo" was missed.


Get host and remote release_path in local task

I want to do a basic task that looks like this:
task('theme:deploy', function() {
    $host = (string) Context::get()->getHost();
    $path = (string) Context::get()->getConfig()->get('release_path');
    run('gulp build');
    run("scp -r files/themes/*/dist $host:$path");
})->local();

i.e., theme resources should be locally built and then simply copied to the host (since the built resources aren't part of the Git repository).
However, this does not work, as apparently Deployer creates a custom localhost context for local tasks, thus the information from the host of the deployed stage will be lost within the context of the local task.
Is there no way to run a local task and have information about the target stage?

runLocally('gulp build');

Ah, thank you :)


S3DownloadStrategy disappeared

Please note that we will close your issue without comment if you delete, do not read or do not fill out the issue checklist below and provide ALL the requested information. If you repeatedly fail to use the issue template, we will block you from ever submitting issues to Homebrew again.

[x] are reporting a bug others will be able to reproduce and not asking a question. If you're not sure or want to ask a question do so on our Discourse: https://discourse.brew.sh
[x] ran a brew command and reproduced the problem with multiple formulae? If it's a problem with a single, official formula (not cask) please file this issue at Homebrew/homebrew-core: https://github.com/Homebrew/homebrew-core/issues/new/choose. If it's a brew cask problem please file this issue at https://github.com/Homebrew/homebrew-cask/issues/new/choose. If it's a tap (e.g. Homebrew/homebrew-php) problem please file this issue at the tap.
[x] ran brew update and can still reproduce the problem?
[x] ran brew doctor, fixed all issues and can still reproduce the problem?
[x] ran brew config and brew doctor and included their output with your issue?

`brew config` output

HOMEBREW_VERSION: 2.0.3-20-ga00570b
ORIGIN: https://github.com/Homebrew/brew
HEAD: a00570be77da7b5a32208d645013a8bb353af941
Last commit: 17 hours ago
Core tap ORIGIN: https://github.com/Homebrew/homebrew-core
Core tap HEAD: 7be50eb2d1dbe7aa885ce349279f71baadca87c6
Core tap last commit: 16 hours ago
HOMEBREW_PREFIX: /usr/local
HOMEBREW_DEV_CMD_RUN: 1
HOMEBREW_LOGS: /Users/agr/Library/Logs/Homebrew
CPU: octa-core 64-bit kabylake
Homebrew Ruby: 2.3.7 => /System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/bin/ruby
Clang: 10.0 build 1000
Git: 2.19.0 => /usr/local/bin/git
Curl: 7.54.0 => /usr/bin/curl
Java: 1.8.0_181
macOS: 10.14-x86_64
CLT: <IP_ADDRESS>.1.1539992718
Xcode: 10.1

`brew doctor` output

Please note that these warnings are just used to help the Homebrew maintainers
with debugging if you file an issue. If everything you use Homebrew for is
working fine: please don't worry or file an issue; just ignore this. Thanks!
Warning: The following directories do not exist:
/usr/local/sbin
You should create these directories and change their ownership to your account.
sudo mkdir -p /usr/local/sbin
sudo chown -R $(whoami) /usr/local/sbin
Warning: "config" scripts exist outside your system or Homebrew directories.
./configure scripts often look for *-config scripts to determine if
software packages are installed, and what additional flags to use when
compiling and linking.
Having additional scripts in your path can confuse software installed via
Homebrew if the config script overrides a system or Homebrew provided
script of the same name. We found the following "config" scripts:
/Applications/Postgres.app/Contents/Versions/11/bin/gdal-config
Warning: Unbrewed dylibs were found in /usr/local/lib.
If you didn't put them there on purpose they could cause problems when
building Homebrew formulae, and may need to be deleted.
Unexpected dylibs:
/usr/local/lib/libnnz11.dylib
/usr/local/lib/libociei.dylib
/usr/local/lib/libocijdbc11.dylib
Warning: You have unlinked kegs in your Cellar
Leaving kegs unlinked can lead to build-trouble and cause brews that depend on
those kegs to fail to run properly once built. Run brew link on these:
bash-completion

What you were trying to do (and why)
Download a formula from a tap hosted in a private S3 bucket.  Tried with :using => :s3 and :using => S3DownloadStrategy as documented here and here.
However, the S3DownloadStrategy seems to have been removed in 599ecc9.
What happened (include command output)
Therefore, unsurprisingly, the formula does not install correctly with either approach.

Command output

Error: Unknown download strategy s3 was requested.

What you expected to happen
The formula should install correctly.
Step-by-step reproduction instructions (by running brew commands)
brew install my-s3-hosted-tap/my-formula

I can obviously submit a PR to make the docs consistent, but is this intended, and if so what is the correct way to host formulae on S3, if supported at all?

as documented here and here.

rubydoc is sufficiently outdated that unfortunately we should remove it from the docs entirely and perhaps just point to e.g. the source instead or use GitHub Actions to build our own version. The other reference should be removed though; a PR for that would be great, thanks!

if so what is the correct way to host formulae on S3, if supported at all?

It's not supported but: copying the existing download strategy into your formulae.


example: add CrossChainPingPong

#146  👈
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @jakim929 and the rest of your teammates on  Graphite


feat: add better CLI support for user and workspace management

Is your feature request related to a problem? Please describe.
Currently, we provide the bare minimum support for these operation.
Describe the solution you'd like
workspace creation / deletion
user update / deletion
dataset config and deletion
Describe alternatives you've considered
N.A.
Additional context
since 1.7.0, we can user python -m argilla with typer

Closed in favor of https://github.com/argilla-io/argilla/issues/3579


Trivial fixes

Make TraceLoggingEventId to implement IDisposable.
Optimize some codes in TraceLoggingEventId for perf.
Fix typos.

@northtyphoon Just making sure you saw my question on the use of [MethodImpl] above. :smile:

LGTM


Rich text field and @contentful/rich-text-react-renderer

Hi,
I have a quick question. I have a Rich text type field in my content model. The cf-content-types-generator-app is spitting out the type for this field as CFRichTextTypes.Block | CFRichTextTypes.Inline, but documentToReactComponents from @contentful/rich-text-react-renderer is expecting CFRichTextTypes.Document. It works when I change it manually, but I don't want to be manually fixing it every time I get the types when my content model changes. Am I missing something here?
Many thanks in advance,
Peter.

@petercherm,
the latest version is now correctly typing as Document