Make main scripts executable

Minor usability improvement. The shebang feels lonely otherwise :)
Feel free to close the PR, if it's deemed unnecessary.

No problem, I appreciate the contribution! :D good catch, it's merged :)


Add Language: Avisynth

Language name
"Avisynth"
http://avisynth.nl/index.php/Main_Page
URL of example repository
https://github.com/Dogway/Avisynth-Scripts/blob/74dfdbf53574f5b58f3672b2c3c0f8f8b1c686ea/EX mods/SimilarityMetrics.avsi
URL of syntax highlighting grammar
http://avisynth.nl/index.php/Syntax_Highlighting
All extensions
.avsi
.avs
More informations
Probably more than 99% of the scripts have first argument clip in a function, for example:
function Example( clip ...

I may just be stumbling around in the dark, but I believe there are files you edit to actually submit this language. If I’m wrong though, then makes sense. (I don’t actually manage linguist.)


Improve the thumbnail service to support compression

Fixes

Fixes #531 by @zackkrida
Description

This PR replaces willnorris/imageproxy with h2non/imaginary, a faster, more feature-rich and more highly-rated library for image manipulations over HTTP. This library allows us to compress thumbnails and reduce bytes.
Now, we can control the dimensions of the thumbnail and the amount of compression using env vars (while also allowing the URL query params full_size and compressed override the defaults if needed).
To spark joy, this PR adds API documentation for the thumbnail endpoints (both audio and video) with all query params documented.
Testing Instructions

Check out the PR and fetch thumbnails for some audio/image files. They should load normally.
Play with the full_size and compressed query params.

With full_size set to 'true', the image should be larger.
With full_size set to 'false', the image will be smaller.
Compression is by default set to the opposite of full_size, but can be overridden with the compressed param.

Stats
Here are some randomly sampled cases.

Full-size no-compression
Full-size compression
Thumbnail no-compression
Thumbnail compression

307 kB
84.1 kB
223 kB
30.6 kB

385 kB
96.1 kB
279 kB
39.9 kB

387 kB
108 kB
278 kB
42.9 kB

Checklist

[x] My pull request has a descriptive title (not a vague title like Update index.md).
[x] My pull request targets the default branch of the repository (main) or a parent feature branch.
[x] My commit messages follow best practices.
[x] My code follows the established code style of the repository.
[x] I added or updated tests for the changes I made (if applicable).
[x] I added or updated documentation (if applicable).
[x] I tried running the project locally and verified that there are no visible errors.

Developer Certificate of Origin

Developer Certificate of Origin
Developer Certificate of Origin
Version 1.1

Copyright (C) 2004, 2006 The Linux Foundation and its contributors.
1 Letterman Drive
Suite D4700
San Francisco, CA, 94129

Everyone is permitted to copy and distribute verbatim copies of this
license document, but changing it is not allowed.

Developer's Certificate of Origin 1.1

By making a contribution to this project, I certify that:

(a) The contribution was created in whole or in part by me and I
    have the right to submit it under the open source license
    indicated in the file; or

(b) The contribution is based upon previous work that, to the best
    of my knowledge, is covered under an appropriate open source
    license and I have the right under that license to submit that
    work with modifications, whether created in whole or in part
    by me, under the same open source license (unless I am
    permitted to submit under a different license), as indicated
    in the file; or

(c) The contribution was provided directly to me by some other
    person who certified (a), (b) or (c) and I have not modified
    it.

(d) I understand and agree that this project and the contribution
    are public and that a record of the contribution (including all
    personal information I submit with it, including my sign-off) is
    maintained indefinitely and may be redistributed consistent with
    this project or the open source license(s) involved.

This is such a great find Dhruv! I'm excited to review this tomorrow :slightly_smiling_face:

Looking forward to your reviews!

I'll test this soon, just want to note that we make sure to manually visually diff a few thumbnails against their current, production counterparts, to check for noteworthy quality differences or any other issues.
The new library looks great! It would be an excellent enhancement to figure out how to serve webp images in the future.

@zackkrida the h2non/imaginary service is capable of converting images sent to it to webp as well, if we send a type param in the request. I'll run some tests with that and see if that can further cut down the size.

Some more stats:

Thumnail compressed
Thumbnail compressed WEBP

30.5 kB
19.2 kB

29.0 kB
16.9 kB

36.4 kB
22.6 kB

With compression and WEBP, we can reduce the size even more than the already compressed thumbnails.

When I try to access http://localhost:8000/v1/images/2f3f8563-a52c-473e-ae0b-aac8c9d81c05/thumb/?is_full_size=True locally I always get the 600px width result. I tried is_full_size=true, is_full_size and full_size (and variations). Am I misunderstanding how this is meant to work?

Just noting that the process of building and hosting a custom image is being worked out in a separate PR, #641.


Add httplab repository logo

Add logo proposal for httplab (svg and png format)

Mind to update README.md with the logo?

@gchaincl Do the PR first, then I'll link the image in the repository to the README.
Or do you want to host it somewhere else?


Include headers in export

This change will include headers in the export.

Thanks, @subdavis
Have you seen my issues #174 and #175?
What would you think of making future changes to the DataHarmonizer main.js here now: https://github.com/microbiomedata/sheets_and_friends/blob/main/artifacts/for_data_harmonizer_scripts/main.js
The Makefile copies that into the docs/ directory, which GH pages monitors. I just haven't been able to turn on GH pages in microbiomedata/sheets_and_friends because I don't have sufficient privileges yet. See https://nmdc-group.slack.com/archives/C033XSEAEMP/p1645111555572449
If that's OK with you. I would just close this PR.

I'd like to keep the DataHarmonizer/ submodule clean/in sync with https://github.com/cidgoh/DataHarmonizer, but I suppose we could copy artifacts/for_data_harmonizer_scripts/main.js into DataHarmonizer/script/main.js from time to time and do a PR back to cidgoh/DataHarmonizer
What do you think?

@subdavis PS are you already aware of the mechanism that DH provides for exports? Probably!  I think it can support arbitrary transformations, but I have just used it to give the exported file column headers that are based on the LinkML names (env_broad_scale), as opposed to the LinkML titles (broad-scale environmental context ) that appear in the DH interface at the portal.
Damion gets most of the credit for the export.js I've been using.

Reopened on https://github.com/microbiomedata/sheets_and_friends/pull/62


Obsidian MD Icon

These guys just enabled 2fa, would be cool to get their icon going. Page is obsidian.md

Added.


9084 not found in up west , east and delhi

this operator is missed.
Please add
9084 | Telenor | Uttar Pradesh (West)

Thank you for your contribution to the database. Please, do share the source of this information if you plan to contribute more prefixes to this project. Also, kindly attach a Truecaller screenshot of the phone numbers with the prefixes you want me to add. Make sure to hide the last 5 digits of the phone number by editing the screenshot before posting it here.

Thank you for your contribution to the database. Could you please share the source of this information? Was it from a U.P (W) phone number with this prefix? Please let me know if you find more prefixes like this. Also, kindly attach a Truecaller screenshot of the phone numbers with the prefixes you want me to add. Make sure to hide the last 5 digits of the phone number by editing the screenshot before sending it here.


Tried to install but getting tons of errors when trying to run project

here is my package.json before adding vuetify-tiptap (yes I'm using a different tiptap which has less functionality than this atm, but I'd like to use this one instead).
When I add your to my project. Everything explodes and nothing will build. If I uninstall it, everything is okay again.
What am I missing?
{
"name": "myproject",
"version": "1.2.1",
"private": true,
"scripts": {
"serve": "vue-cli-service serve",
"build": "vue-cli-service build && npm run post:build",
"post:build": "node build/post-build.js",
"lint": "vue-cli-service lint"
},
"dependencies": {
"axios": "^0.21.1",
"core-js": "^2.6.5",
"es6-iterator": "^2.0.3",
"qrcode": "^1.4.4",
"register-service-worker": "^1.6.2",
"tiptap-vuetify": "^2.24.0",
"v-qrcode": "^1.0.3",
"vue": "^2.6.12",
"vue-cookies": "^1.7.4",
"vue-loader": "^17.0.1",
"vue-password-strength-meter": "^1.7.2",
"vue-router": "^3.1.0",
"vue-youtube-embed": "^2.2.2",
"vue2-dropzone": "^3.6.0",
"vuetify": "^2.3.10",
"vuetify-audio": "^0.3.3",
"vuetify-datetime-picker": "^2.1.1",
"vuetify-toast-snackbar-ng": "^0.7.3",
"vuex": "^3.0.1",
"zxcvbn": "^4.4.2"
},
"devDependencies": {
"@vue/cli-plugin-babel": "^3.12.1",
"@vue/cli-plugin-eslint": "^3.12.1",
"@vue/cli-plugin-pwa": "^3.12.1",
"@vue/cli-service": "^4.5.11",
"babel-eslint": "^10.1.0",
"eslint": "^5.16.0",
"eslint-plugin-vue": "^5.2.3",
"postcss-loader": "^3.0.0",
"sass": "^1.26.11",
"sass-loader": "^7.3.1",
"strip-ansi": "^5.2.0",
"stylus": "^0.54.8",
"stylus-loader": "^3.0.1",
"vue-cli-plugin-vuetify": "^0.5.0",
"vue-template-compiler": "^2.6.12",
"vuedraggable": "^2.24.3",
"vuetify-loader": "^1.9.2",
"webpack-bundle-analyzer": "^3.6.0"
}
}

solution:
update tons of packages accordingly to vuetify-tiptap... my core-js was too old, and vuetify versions too old etc.


Remove dom node in error messages in cypress environment

Resolves #156 and also resolves https://github.com/kentcdodds/cypress-testing-library/pull/25

What: This PR removes the dom nodes being printed from the error message shown in cypress when a test fails to locate the specified dom node.

Why: Showing the whole dom in cypress clutters up the error log.

How: There was already a condition present to prevent printing out dom node in cypress but it is not valid in latest version of cypress which is why I added another condition to make this work.

Checklist:

[ ] Documentation
[ ] Tests
[x] Ready to be merged
[x] Added myself to contributors table

Also, thanks!

@kentcdodds added the typeof check

:tada: This PR is included in version 3.12.4 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Project settings page moderate refactoring

The current project settings page has usability issues and has become rather cluttered. The solution is to introduce tabs to the page to sort the content, as well as to address some problematic tool tip, introduce some improved explainer text (or at least provide a location for that), and move some items to other pages (publish to publishing page, and other items to app settings page (re: Gabo)).
New UX is rough, but can be cleaned up quickly once the issue is prioritized.

Closed by #6592


causal mask when cross-attn

Hi, thanks for having this great repo. I just wonder if the causal mask should be used in the second forward pass when cross-attn is used. Or do I miss something here? Thank you

It has been a while and I don't remember the architecture proposed in this paper
however, it seems I always apply the causal mask here https://github.com/lucidrains/MaMMUT-pytorch/blob/main/mammut_pytorch/mammut_pytorch.py#L214

Sorry, I missed that. So it seems like the causal mask is used by default. Then in the first forward pass of embed_text, we should not use a causal mask because it is for contrastive purposes. I saw the attn_mask is initialized in the embed_text function but it seems like for preventing the cls token from attending to padding. Therefore, should we ignore the causal mask when calling embed_text?

you can actually use a causally masked text encoder for contrastive purposes if you pick out the eos token. Openai clip does this. In the case here, I'm doing a cls token with specialized masking

there are also rumors that causal attention networks yield better embeddings than non-causal. you hear this if you listen to a lot of Ilya's recent talks online

Got it. Yeah, it makes sense. Thanks again for your quick response :)


Feature parenthesis node

I found there are many operator of adding parentheses in ast/print.go
for example:
https://github.com/expr-lang/expr/blob/7772ea0fee5c9b153439a0ad5ee2e2b1a764f453/ast/print.go#L54-L56
https://github.com/expr-lang/expr/blob/7772ea0fee5c9b153439a0ad5ee2e2b1a764f453/ast/print.go#L91-L101
why not add a specific type ast node for following benefits:
1、make printing string more like the expr inputted by user, i.e. resolve issue: https://github.com/expr-lang/expr/issues/613.
2、Make the node's responsibilities more single.

This is a interesting approach, unfortunately it makes other things more complex. Instead we should just feap thenary nodes in parenthesis if inside binary.


Bug: Issue When Installing

When I try to install this project:
go install github.com/bom-squad/sbom-convert@latest

I get this error:
go: downloading github.com/bom-squad/sbom-convert v0.0.2
go: github.com/bom-squad/sbom-convert@latest: <EMAIL_ADDRESS>parsing go.mod:
        module declares its path as: github.com/bom-squad/go-cli
                but was required as: github.com/bom-squad/sbom-convert

Am I doing something wrong? Is this a bug?

The go.mod file was broken when I released 0.0.1 / 0.0.2 since the repo name had changed.
I can confirm this needs fixing :)
In the meanwhile, try the manual install:
curl -sfL https://raw.githubusercontent.com/bom-squad/sbom-convert/main/scripts/install.sh | sudo sh -s -- -b /usr/local/bin

Thank you!

@jspeed-meyers issue resolved by latest release.


Not detecting infinite for(let=0;;) loop

@remy Is there any updated library that I am missing?

+1


Adding hebrew text to an ItemList when theme uses a non-hebrew font causes a crash

Godot version
v4.0.stable.flathub [92bee43ad]
System information
Fedora Linux 37 (Workstation Edition)
Issue description
Adding Hebrew text to an ItemList seems to cause it to crash, unless a Hebrew font (such as Noto Sans Hebrew) is applied to the node.
Steps to reproduce

Create a new scene with a control node as the root
Add an ItemList node as a child of the root
Add a script to the ItemList node with the following content:

func _ready():
    add_item("עברית")

Try to run the scene and have it crash.

Minimal reproduction project
N/A

Can't reproduce, most likely it's related to the specific system font used to substitute missing symbols.

It would be great to get some stacktrace. There is a bug causing a crash in ItemList that can be triggered by some system-specific conditions affecting the size of the node. In which case using a specific font can be a contributor. See https://github.com/godotengine/godot/issues/73372.
With the stacktrace it should be easy to tell if it's the same issue. But it may be impossible to reproduce on a different machine than the OP's.

I also experience that issue. How can I capture a stack trace?

I also experience that issue. How can I capture a stack trace?

You would need to build the engine with debug symbols, using the dev_build=yes argument. Then simply running it from the terminal should let you capture the trace when it crashes. Make sure to start directly into your project, not into the project manager (use -e and --path /your/godot/project when launching).
If you can't build the engine yourself, you can wait for me to make a PR for the other report and use build artifacts to check if your issue is also resolved.

Here's the stacktrace of this issue:
ERROR: FATAL: Index p_index = 1 is out of bounds (size() = 1).
   at: get (./core/templates/cowdata.h:155)

================================================================
handle_crash: Program crashed with signal 4
Engine version: Godot Engine v4.1.dev.custom_build (9b9bb418cb1137e69b5131ec9fa7b41c0396db28)
Dumping the backtrace. Please include this when reporting the bug to the project developer.
[1] /lib64/libc.so.6(+0x3cb20) [0x7fb2999c2b20] (??:0)
[2] CowData<ItemList::Item>::get(int) const (/home/kozova1/src/godot/./core/templates/cowdata.h:155 (discriminator 7))
[3] Vector<ItemList::Item>::operator[](int) const (/home/kozova1/src/godot/./core/templates/vector.h:93)
[4] ItemList::_notification(int) (/home/kozova1/src/godot/scene/gui/item_list.cpp:1211 (discriminator 3))
[5] ItemList::_notificationv(int, bool) (/home/kozova1/src/godot/scene/gui/item_list.h:39 (discriminator 14))
[6] Object::notification(int, bool) (/home/kozova1/src/godot/core/object/object.cpp:792)
[7] CanvasItem::_redraw_callback() (/home/kozova1/src/godot/scene/main/canvas_item.cpp:136)
[8] void call_with_variant_args_helper<CanvasItem>(CanvasItem*, void (CanvasItem::*)(), Variant const**, Callable::CallError&, IndexSequence<>) (/home/kozova1/src/godot/./core/variant/binder_common.h:298 (discriminator 4))
[9] void call_with_variant_args<CanvasItem>(CanvasItem*, void (CanvasItem::*)(), Variant const**, int, Callable::CallError&) (/home/kozova1/src/godot/./core/variant/binder_common.h:408)
[10] CallableCustomMethodPointer<CanvasItem>::call(Variant const**, int, Variant&, Callable::CallError&) const (/home/kozova1/src/godot/./core/object/callable_method_pointer.h:105)
[11] Callable::callp(Variant const**, int, Variant&, Callable::CallError&) const (/home/kozova1/src/godot/core/variant/callable.cpp:64)
[12] MessageQueue::_call_function(Callable const&, Variant const*, int, bool) (/home/kozova1/src/godot/core/object/message_queue.cpp:230)
[13] MessageQueue::flush() (/home/kozova1/src/godot/core/object/message_queue.cpp:277)
[14] SceneTree::physics_process(double) (/home/kozova1/src/godot/scene/main/scene_tree.cpp:432)
[15] Main::iteration() (/home/kozova1/src/godot/main/main.cpp:3123)
[16] OS_LinuxBSD::run() (/home/kozova1/src/godot/platform/linuxbsd/os_linuxbsd.cpp:880)
[17] /home/kozova1/src/godot/bin/godot.linuxbsd.editor.dev.x86_64(main+0x15a) [0x26eca00] (/home/kozova1/src/godot/platform/linuxbsd/godot_linuxbsd.cpp:75)
[18] /lib64/libc.so.6(+0x27510) [0x7fb2999ad510] (??:0)
[19] /lib64/libc.so.6(__libc_start_main+0x89) [0x7fb2999ad5c9] (??:0)
[20] /home/kozova1/src/godot/bin/godot.linuxbsd.editor.dev.x86_64(_start+0x25) [0x26ec7e5] (??:?)
-- END OF BACKTRACE --
================================================================

Thanks! Seems to be exactly the same problem. We can keep both issues up for clarity, but the same PR will close both of them.


Mat-Select outline rendered incorrectly when dir="rtl"

Bug, feature request, or proposal:
Bug
What is the expected behavior?
When displaying a MatFormField in RTL (right-to-left) mode, by setting dir="rtl" on a parent element, the outline "gap" for the label should be move right together with the label itself.
What is the current behavior?
The label is correctly moved right, but the gap in the outline is left aligned just as in LTR mode.
What are the steps to reproduce?
In the basic select example on https://material.angular.io, set dir="rtl"in the outermost div tag in index.html and add appearance="outline" to the mat-form-field in select-overview-example.html.
Or see https://stackblitz.com/edit/angular-b66kfk
What is the use-case or motivation for changing an existing behavior?
Angular Material should support RTL for all relevant components in order to support Arabic languages.
Which versions of Angular, Material, OS, TypeScript, browsers are affected?
Angular: ^8.2.9
Material: ~8.2.2
TypeScript: ~3.5.3
Chome:  78.0.3904.108
Is there anything else we should know?

Should be resolved in the next release by https://github.com/angular/components/pull/17395.


Can't launch TruckersMP Because Of Wine Discord Ipc Bridge

Hello,
I am running debian and just downloaded the truckersmp-cli and ran ./truckersmp-cli -eups and after it downloaded the game and tried to start it is giving me this error in the CMD which opens: Pipe Server: Main thread awaiting client connection on \\.\pipe\discord-ipc-0.
When trying the --without-wine-discord-ipc-bridge command it won't even open a cmd it just crashes after a few seconds. (Empty log with -l log.txt)
Hopefully there is a simple solution/fix
Greetings,
Roy

Whoops already fixed it.
I manually installed it and thats what i did wrong xD. Ran the python installation command with sudo and now its working without any problems.

Duplicate of #92


chore: use @bpmn-io/feel-lint

To align FEEL errors with the errors tab

reworded commit message with f3a1b47


fix mask packet comparison

pkt_match was strictly comparing the length of the packet argument with the size of the mask. It is desirable to compare only the prefix given by the mask.size. Also fixed the printing of masks to match how we print packet output using hexdump -- it captures the print output in a buffer that is then returned.
Replace the direct check of not config['key'] with not config.has_key('key') to avoid throwing an exception when importing packet directly.
And finally, bump the version to 0.9.1

@antoninbas can you please take another look?


Better structure of CapH docs

This issue indicates a better structure of the CapH docs in terms of indexing. The following ideas can be seen below:

A rough idea of the structure:

Preparation doc should be in the Quickstart section
After preparation, the getting started doc should be there.
The ClusterAPI quickstart link shouldn't be in the quickstart section as a separate entity but be in somewhere in the getting started doc and that too in the prerequisite area.

@janiskemper Do you think this will be better?

sounds good!

Reference links - https://cluster-api.sigs.k8s.io/reference/api_reference
https://doc.crds.dev/github.com/syself/cluster-api-provider-hetzner
https://cluster-api.sigs.k8s.io/developer/guide

Introduction
Preparation
Quickstart
Personas (This section looks good on the CAPI docs but not sure whether will be a right fit for the CAPH docs)

In the CSO repository, we have some docs about baremetal. For example, the Provisioning Phases are documented there. I think docs about the phases should be in caph, too.

I think this is implemented now: https://syself.com/docs/caph/getting-started/introduction


lib: introduce forEachAttr = flip mapAttrs

Motivation for this change
This PR introduces forEachAttr that is the flipped version of mapAttrs, similar to forEach vs map. The same reason forEach was introduced also apply here: Oftentimes an anonymous function is used while the looped value usually comes from a variable. For these cases, I believe forEach and forEachAttr makes the expression more readable.
Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
21.11 Release Notes (or backporting 21.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

I'm undecided.

It's either this or a pipe operator { a = true; b = false; } | mapAttrs (k: v: f k (!v))
Most attrset functions end in Attrs, plural, despite the passed function operating on one attr at a time. filterAttrs, etc.
Haskell has for instead of forEach. forAttrs { } (k: v: foo). This satisfies the previous item and is still grammatically sensible.
flip mapAttrs { } f was always an option, but apparently not appealing enough
In open source we all work forEachAttr (compulsory dad joke)


DRM Explicit fencing

Another one of these new shiny graphics-related features I eventually want to get around to.
Basically, the purpose is to stop slow clients from stalling the graphics pipeline by controlling synchronization ourselves. It may also help with multi-GPU.
I'm not sure what impact this is going to have on the codebase, and how it may apply to non-DRM backends, if at all.
The zwp_linux_explicit_synchronization_v1 protocol is used for this, although has not been merged at the time of writing.
EGL_ANDROID_native_fence_sync is related.
It's also related to Vulkan Fences/Semaphores.
Extra links:
https://www.collabora.com/news-and-blog/blog/2016/09/13/mainline-explicit-fencing-part-1/
https://www.collabora.com/news-and-blog/blog/2016/10/18/mainline-explicit-fencing-part-2/
https://www.collabora.com/news-and-blog/blog/2017/01/26/mainline-explicit-fencing-part-3/

Here's the protocol proposal: https://patchwork.freedesktop.org/patch/177866/

After a lot more investigation to how this would be implemented, it turns out the nature of this problem is a lot different than I thought it was.
The way this would ideally be implemented, it's far less of a renderer issue and more of a state tracking issue.
Just so everyone is on the same page, a dma-fence is a kernel object which can signal the completion of asynchronous GPU operations. They are exposed to userspace using "sync files" which can be made up of multiple fences. Fortunately some kernel documentation for this exists:
https://github.com/torvalds/linux/blob/master/Documentation/sync_file.txt
Userspace API header:
https://github.com/torvalds/linux/blob/master/include/uapi/linux/sync_file.h
An important thing to note is that these can be used will poll(2)-like APIs.
Now when it comes to implementing zwp_linux_explicit_synchronisation, there are two parts to the issue.
Passing a fence to the client
This part isn't that tricky, but you still need to be a little careful.
When using atomic DRM, there is a property called OUT_FENCE_PTR, which will return a sync-file for us to indicate when the pageflip is complete. This just needs to be sent to the client.
However, you need to be careful if you're using the client's buffer multiple times (e.g. spanning 2 outputs) or if you're going to hold onto the client's buffer longer than one frame. sync-files can be merged together, so it's not really that hard to do.
Also note: You don't actually have to implement this to conform to the protocol. You can just use the immediate_release event, and it'll act like a wl_buffer.release. As of writing, Weston only uses immediate releases, and an initial implementation of this protocol could be done this way.
Receiving a fence from the client
Now this is where things get complicated.
There are two main ways I can think this can be implemented.
The simple way

We get the fence from the client
We import the fence with EGL and use eglWaitSyncKHR on it (or whatever the Vulkan equivalent is).
Done; everything else works as normal.

This is how Weston currently implements it, and would be considered the bare minimum for supporting explicit-sync.
This adds some advantage for tracing, but doesn't really provide the real advantages of explicit-sync. A slow client is still capable of slowing the compositor's drawing down, and potentially missing vblank.
The good, but complicated way
This is where we actually make rendering decisions based of the status of the fence.
For example, at drawing time, if a fence has not been signalled, we instead choose to use the client's old buffer. We shouldn't ever be blocked on the client completing and can guarantee a more stable framerate.
However, this violates one of our fundamental assumptions:
A client may not be ready to render at the time they call wl_surface.commit
So instead of any wl_surface state simply being "pending" and "committed", it would now be "pending", "committed", and "ready".
Consider this situation:

It's time for the compositor to draw.
The client's fence has not been signalled
We look at the previous commit state
That also contains a fence which has not been signalled
We now have no valid buffer

To solve this, instead of the current design of pending and current in wlr_surface, it actually needs to be implemented as a queue, where we make sure to keep at least one good commit state with a ready buffer.
We also need to store ALL state tied to the surface commit, not just the buffer. Many protocol extensions affect rendering, so they need to be tied to the queue too. I don't particularly want to manage a queue of states inside of every single wl_surface-related protocol we implement, so that's why I proposed #1546, where we create a central place where state can be managed properly.
I believe my proposal should work for this, but there is still one pretty large nightmare protocol that still needs to be sorted: wl_subsurface.
I haven't finalized a design which I know will work for this yet, but I'm trying some implementations.
Anyway, that's my brain-dump about this protocol and hopefully justifies the changes I want to make in #1546.
As it turns out, if we implement it the "good" way, we don't even need to change the renderer. We'll just poll the sync-files and they'll be guaranteed to be ready by the time the renderer receives it.
I asked a question about this is wayland-devel. so you can see the thread for some more info: https://lists.freedesktop.org/archives/wayland-devel/2019-February/040066.html
I also had an off-list discussion with Daniel, where he confirms the necessity for a commit/buffer queue.

Here's a test target for a client blocking the whole pipeline: https://gitlab.collabora.com/daniels/texture-atlas-test/blob/master/obnoxious-fbo-load.c#L92
(Warning: don't try it at home)

As a side note, explicit synchronization should also help with e.g. buggy Vulkan programs that mess up synchronization and submit jobs that never complete. Here's an example: https://gitlab.freedesktop.org/drm/amd/-/issues/702#note_650470


Tests are failing with modified reflection API (reflect -> goccy/go-reflect ), on Aarch64

So,
while I was able to build

$ ./gradlew goBuild

Configure project :
Found go 1.16.2 in /usr/local/go/bin/go, use it.

Task :goPrepare
Use project GOPATH: /home/oceanfish81/openwhisk-wskdeploy/.gogradle/project_gopath

Deprecated Gradle features were used in this build, making it incompatible with Gradle 7.0.
Use '--warning-mode all' to show the individual deprecation warnings.
See https://docs.gradle.org/6.8.3/userguide/command_line_interface.html#sec:command_line_warnings
BUILD SUCCESSFUL in 2s
3 actionable tasks: 3 executed

with such an applied patch:
https://gist.github.com/advancedwebdeveloper/9ee1d333d0101b06823735cf871055b1
.
Now, test are failing:

$ ./gradlew goTest --info
Initialized native services in: /home/oceanfish81/.gradle/native
The client will now receive all logging from the daemon (pid: 11214). The daemon log file: /home/oceanfish81/.gradle/daemon/6.8.3/daemon-11214.out.log
Starting 20th build in daemon [uptime: 1 hrs 5 mins 32.638 secs, performance: 100%, non-heap usage: 34% of 256 MiB]
Using 32 worker leases.
Watching the file system is disabled
Starting Build
Settings evaluated using settings file '/home/oceanfish81/openwhisk-wskdeploy/settings.gradle'.
Projects loaded. Root project using build file '/home/oceanfish81/openwhisk-wskdeploy/build.gradle'.
Included projects: [root project 'openwhisk-wskdeploy']

Configure project :
Evaluating root project 'openwhisk-wskdeploy' using build file '/home/oceanfish81/openwhisk-wskdeploy/build.gradle'.
Found go 1.16.2 in /usr/local/go/bin/go, use it.
Ignore packages globally: appengine,a,gen,shared,common,thrifttest,appengine_internal,thrift,tutorial
All projects evaluated.
Selected primary task 'goTest' from project :
Tasks to be executed: [task ':goPrepare', task ':resolveBuildDependencies', task ':resolveTestDependencies', task ':installDependencies', task ':goVendor', task ':goTest']
Tasks that were excluded: []
:goPrepare (Thread[Execution worker for ':',5,main]) started.

Task :goPrepare
Caching disabled for task ':goPrepare' because:
Build cache is disabled
Task ':goPrepare' is not up-to-date because:
Task has not declared any outputs despite executing actions.
Use project GOPATH: /home/oceanfish81/openwhisk-wskdeploy/.gogradle/project_gopath
:goPrepare (Thread[Execution worker for ':',5,main]) completed. Took 0.011 secs.
:resolveBuildDependencies (Thread[Execution worker for ':',5,main]) started.

Task :resolveBuildDependencies SKIPPED
Skipping task ':resolveBuildDependencies' as task onlyIf is false.
:resolveBuildDependencies (Thread[Execution worker for ':',5,main]) completed. Took 0.0 secs.
:resolveTestDependencies (Thread[Execution worker for ':',5,main]) started.

Task :resolveTestDependencies SKIPPED
Skipping task ':resolveTestDependencies' as task onlyIf is false.
:resolveTestDependencies (Thread[Execution worker for ':',5,main]) completed. Took 0.0 secs.
:installDependencies (Thread[Execution worker for ':',5,main]) started.

Task :installDependencies SKIPPED
Skipping task ':installDependencies' as task onlyIf is false.
:installDependencies (Thread[Execution worker for ':',5,main]) completed. Took 0.0 secs.
:goVendor (Thread[Execution worker for ':',5,main]) started.

Task :goVendor UP-TO-DATE
Skipping task ':goVendor' as it has no actions.
:goVendor (Thread[Execution worker for ':',5,main]) completed. Took 0.0 secs.
:goTest (Thread[Execution worker for ':',5,main]) started.

Task :goTest
Caching disabled for task ':goTest' because:
Build cache is disabled
Task ':goTest' is not up-to-date because:
Task has failed previously.
Result of package github.com/apache/openwhisk-wskdeploy/runtimes:

{"Time":"2021-03-18T20:46:49.520916666Z","Action":"run","Package":"github.com/apache/openwhisk-wskdeploy/runtimes","Test":"TestParseOpenWhisk"}
{"Time":"2021-03-18T20:46:49.522145903Z","Action":"output","Package":"github.com/apache/openwhisk-wskdeploy/runtimes","Test":"TestParseOpenWhisk","Output":"=== RUN   TestParseOpenWhisk\n"}
{"Time":"2021-03-18T20:46:50.220227735Z","Action":"output","Package":"github.com/apache/openwhisk-wskdeploy/runtimes","Test":"TestParseOpenWhisk","Output":"0x40002bb3b0\n"}
{"Time":"2021-03-18T20:46:50.220397709Z","Action":"output","Package":"github.com/apache/openwhisk-wskdeploy/runtimes","Test":"TestParseOpenWhisk","Output":"Testing runtime kind support for: [go java nodejs php python ruby swift]\n"}
{"Time":"2021-03-18T20:46:50.220559732Z","Action":"output","Package":"github.com/apache/openwhisk-wskdeploy/runtimes","Test":"TestParseOpenWhisk","Output":"Testing runtime kind: [go]...\n"}
{"Time":"2021-03-18T20:46:50.220644131Z","Action":"output","Package":"github.com/apache/openwhisk-wskdeploy/runtimes","Test":"TestParseOpenWhisk","Output":"Testing runtime kind: [java]...\n"}
{"Time":"2021-03-18T20:46:50.220712355Z","Action":"output","Package":"github.com/apache/openwhisk-wskdeploy/runtimes","Test":"TestParseOpenWhisk","Output":"Testing runtime kind: [nodejs]...\n"}
{"Time":"2021-03-18T20:46:50.220832954Z","Action":"output","Package":"github.com/apache/openwhisk-wskdeploy/runtimes","Test":"TestParseOpenWhisk","Output":"Testing runtime kind: [php]...\n"}
{"Time":"2021-03-18T20:46:50.220940028Z","Action":"output","Package":"github.com/apache/openwhisk-wskdeploy/runtimes","Test":"TestParseOpenWhisk","Output":"Testing runtime kind: [python]...\n"}
{"Time":"2021-03-18T20:46:50.221012152Z","Action":"output","Package":"github.com/apache/openwhisk-wskdeploy/runtimes","Test":"TestParseOpenWhisk","Output":"Testing runtime kind: [ruby]...\n"}
{"Time":"2021-03-18T20:46:50.221076126Z","Action":"output","Package":"github.com/apache/openwhisk-wskdeploy/runtimes","Test":"TestParseOpenWhisk","Output":"Testing runtime kind: [swift]...\n"}
{"Time":"2021-03-18T20:46:50.221234975Z","Action":"output","Package":"github.com/apache/openwhisk-wskdeploy/runtimes","Test":"TestParseOpenWhisk","Output":"--- PASS: TestParseOpenWhisk (0.70s)\n"}
{"Time":"2021-03-18T20:46:50.221311499Z","Action":"pass","Package":"github.com/apache/openwhisk-wskdeploy/runtimes","Test":"TestParseOpenWhisk","Elapsed":0.7}
{"Time":"2021-03-18T20:46:50.221393523Z","Action":"output","Package":"github.com/apache/openwhisk-wskdeploy/runtimes","Output":"PASS\n"}
{"Time":"2021-03-18T20:46:50.224921635Z","Action":"output","Package":"github.com/apache/openwhisk-wskdeploy/runtimes","Output":"coverage: 25.2% of statements\n"}
{"Time":"2021-03-18T20:46:50.231602638Z","Action":"output","Package":"github.com/apache/openwhisk-wskdeploy/runtimes","Output":"ok  \tgithub.com/apache/openwhisk-wskdeploy/runtimes\t0.749s\tcoverage: 25.2% of statements\n"}
{"Time":"2021-03-18T20:46:50.231762736Z","Action":"pass","Package":"github.com/apache/openwhisk-wskdeploy/runtimes","Elapsed":0.75}

Task :goTest
Test for github.com/apache/openwhisk-wskdeploy/runtimes finished, 1 completed, 0 failed.
Result of package github.com/apache/openwhisk-wskdeploy/tests/src/integration/dependency:

{"Time":"2021-03-18T20:46:51.553428853Z","Action":"output","Package":"github.com/apache/openwhisk-wskdeploy/tests/src/integration/dependency","Output":"testing: warning: no tests to run\n"}
{"Time":"2021-03-18T20:46:51.554452542Z","Action":"output","Package":"github.com/apache/openwhisk-wskdeploy/tests/src/integration/dependency","Output":"PASS\n"}
{"Time":"2021-03-18T20:46:51.554592015Z","Action":"output","Package":"github.com/apache/openwhisk-wskdeploy/tests/src/integration/dependency","Output":"coverage: [no statements]\n"}
{"Time":"2021-03-18T20:46:51.558874119Z","Action":"output","Package":"github.com/apache/openwhisk-wskdeploy/tests/src/integration/dependency","Output":"ok  \tgithub.com/apache/openwhisk-wskdeploy/tests/src/integration/dependency\t0.074s\tcoverage: [no statements] [no tests to run]\n"}
{"Time":"2021-03-18T20:46:51.559050867Z","Action":"pass","Package":"github.com/apache/openwhisk-wskdeploy/tests/src/integration/dependency","Elapsed":0.075}
{"Time":"2021-03-18T20:46:52.441006919Z","Action":"output","Package":"github.com/apache/openwhisk-wskdeploy/parsers","Output":"?   \tgithub.com/apache/openwhisk-wskdeploy/parsers\t[no test files]\n"}
{"Time":"2021-03-18T20:46:52.441887285Z","Action":"skip","Package":"github.com/apache/openwhisk-wskdeploy/parsers","Elapsed":0.001}
package github.com/apache/openwhisk-wskdeploy/tests/src/integration/helloworld: build constraints exclude all Go files in /home/oceanfish81/openwhisk-wskdeploy/tests/src/integration/helloworld

Task :goTest
Test for github.com/apache/openwhisk-wskdeploy/tests/src/integration/dependency finished, 0 completed, 0 failed.
Result of package github.com/apache/openwhisk-wskdeploy/parsers:
Test for github.com/apache/openwhisk-wskdeploy/parsers finished, 0 completed, 0 failed.
Result of package github.com/apache/openwhisk-wskdeploy/tests/src/integration/helloworld:
Test for github.com/apache/openwhisk-wskdeploy/tests/src/integration/helloworld finished, 1 completed, 1 failed.
Result of package github.com/apache/openwhisk-wskdeploy/tests/src/integration/jaraction:

package github.com/apache/openwhisk-wskdeploy/tests/src/integration/jaraction: build constraints exclude all Go files in /home/oceanfish81/openwhisk-wskdeploy/tests/src/integration/jaraction
{"Time":"2021-03-18T20:46:54.474642068Z","Action":"run","Package":"github.com/apache/openwhisk-wskdeploy/utils","Test":"TestConvertInterfaceValue_String"}
{"Time":"2021-03-18T20:46:54.475595308Z","Action":"output","Package":"github.com/apache/openwhisk-wskdeploy/utils","Test":"TestConvertInterfaceValue_String","Output":"=== RUN   TestConvertInterfaceValue_String\n"}
{"Time":"2021-03-18T20:46:54.475744031Z","Action":"output","Package":"github.com/apache/openwhisk-wskdeploy/utils","Test":"TestConvertInterfaceValue_String","Output":"--- PASS: TestConvertInterfaceValue_String (0.00s)\n"}
{"Time":"2021-03-18T20:46:54.47582443Z","Action":"pass","Package":"github.com/apache/openwhisk-wskdeploy/utils","Test":"TestConvertInterfaceValue_String","Elapsed":0}
{"Time":"2021-03-18T20:46:54.47589218Z","Action":"run","Package":"github.com/apache/openwhisk-wskdeploy/utils","Test":"TestConvertInterfaceValue_Bool"}
{"Time":"2021-03-18T20:46:54.475947004Z","Action":"output","Package":"github.com/apache/openwhisk-wskdeploy/utils","Test":"TestConvertInterfaceValue_Bool","Output":"=== RUN   TestConvertInterfaceValue_Bool\n"}
{"Time":"2021-03-18T20:46:54.476015303Z","Action":"output","Package":"github.com/apache/openwhisk-wskdeploy/utils","Test":"TestConvertInterfaceValue_Bool","Output":"--- PASS: TestConvertInterfaceValue_Bool (0.00s)\n"}
{"Time":"2021-03-18T20:46:54.476079078Z","Action":"pass","Package":"github.com/apache/openwhisk-wskdeploy/utils","Test":"TestConvertInterfaceValue_Bool","Elapsed":0}
{"Time":"2021-03-18T20:46:54.476133177Z","Action":"run","Package":"github.com/apache/openwhisk-wskdeploy/utils","Test":"TestConvertInterfaceValue_Int"}
{"Time":"2021-03-18T20:46:54.476184327Z","Action":"output","Package":"github.com/apache/openwhisk-wskdeploy/utils","Test":"TestConvertInterfaceValue_Int","Output":"=== RUN   TestConvertInterfaceValue_Int\n"}
{"Time":"2021-03-18T20:46:54.476266376Z","Action":"output","Package":"github.com/apache/openwhisk-wskdeploy/utils","Test":"TestConvertInterfaceValue_Int","Output":"--- PASS: TestConvertInterfaceValue_Int (0.00s)\n"}
{"Time":"2021-03-18T20:46:54.47633125Z","Action":"pass","Package":"github.com/apache/openwhisk-wskdeploy/utils","Test":"TestConvertInterfaceValue_Int","Elapsed":0}
{"Time":"2021-03-18T20:46:54.476389299Z","Action":"run","Package":"github.com/apache/openwhisk-wskdeploy/utils","Test":"TestConvertInterfaceValue_List"}
{"Time":"2021-03-18T20:46:54.476439999Z","Action":"output","Package":"github.com/apache/openwhisk-wskdeploy/utils","Test":"TestConvertInterfaceValue_List","Output":"=== RUN   TestConvertInterfaceValue_List\n"}
{"Time":"2021-03-18T20:46:54.476502423Z","Action":"output","Package":"github.com/apache/openwhisk-wskdeploy/utils","Test":"TestConvertInterfaceValue_List","Output":"--- PASS: TestConvertInterfaceValue_List (0.00s)\n"}
{"Time":"2021-03-18T20:46:54.476561223Z","Action":"pass","Package":"github.com/apache/openwhisk-wskdeploy/utils","Test":"TestConvertInterfaceValue_List","Elapsed":0}
{"Time":"2021-03-18T20:46:54.476612847Z","Action":"run","Package":"github.com/apache/openwhisk-wskdeploy/utils","Test":"TestConvertInterfaceValue_Map"}
{"Time":"2021-03-18T20:46:54.476662446Z","Action":"output","Package":"github.com/apache/openwhisk-wskdeploy/utils","Test":"TestConvertInterfaceValue_Map","Output":"=== RUN   TestConvertInterfaceValue_Map\n"}
{"Time":"2021-03-18T20:46:54.476724271Z","Action":"output","Package":"github.com/apache/openwhisk-wskdeploy/utils","Test":"TestConvertInterfaceValue_Map","Output":"--- PASS: TestConvertInterfaceValue_Map (0.00s)\n"}
{"Time":"2021-03-18T20:46:54.47678202Z","Action":"pass","Package":"github.com/apache/openwhisk-wskdeploy/utils","Test":"TestConvertInterfaceValue_Map","Elapsed":0}
{"Time":"2021-03-18T20:46:54.47683367Z","Action":"run","Package":"github.com/apache/openwhisk-wskdeploy/utils","Test":"TestLicenseLocalValidation"}
{"Time":"2021-03-18T20:46:54.476882719Z","Action":"output","Package":"github.com/apache/openwhisk-wskdeploy/utils","Test":"TestLicenseLocalValidation","Output":"=== RUN   TestLicenseLocalValidation\n"}
{"Time":"2021-03-18T20:46:54.476943768Z","Action":"output","Package":"github.com/apache/openwhisk-wskdeploy/utils","Test":"TestLicenseLocalValidation","Output":"--- PASS: TestLicenseLocalValidation (0.00s)\n"}
{"Time":"2021-03-18T20:46:54.477001368Z","Action":"pass","Package":"github.com/apache/openwhisk-wskdeploy/utils","Test":"TestLicenseLocalValidation","Elapsed":0}
{"Time":"2021-03-18T20:46:54.477053067Z","Action":"run","Package":"github.com/apache/openwhisk-wskdeploy/utils","Test":"TestLicenseRemoteValidation"}
{"Time":"2021-03-18T20:46:54.477102892Z","Action":"output","Package":"github.com/apache/openwhisk-wskdeploy/utils","Test":"TestLicenseRemoteValidation","Output":"=== RUN   TestLicenseRemoteValidation\n"}

Task :goTest
Test for github.com/apache/openwhisk-wskdeploy/tests/src/integration/jaraction finished, 1 completed, 1 failed.
Result of package github.com/apache/openwhisk-wskdeploy/utils:

{"Time":"2021-03-18T20:46:55.021704377Z","Action":"output","Package":"github.com/apache/openwhisk-wskdeploy/utils","Test":"TestLicenseRemoteValidation","Output":"--- PASS: TestLicenseRemoteValidation (0.55s)\n"}
{"Time":"2021-03-18T20:46:55.021912074Z","Action":"pass","Package":"github.com/apache/openwhisk-wskdeploy/utils","Test":"TestLicenseRemoteValidation","Elapsed":0.55}
{"Time":"2021-03-18T20:46:55.021985749Z","Action":"run","Package":"github.com/apache/openwhisk-wskdeploy/utils","Test":"TestCheckLicense"}
{"Time":"2021-03-18T20:46:55.022040623Z","Action":"output","Package":"github.com/apache/openwhisk-wskdeploy/utils","Test":"TestCheckLicense","Output":"=== RUN   TestCheckLicense\n"}
{"Time":"2021-03-18T20:46:55.022137897Z","Action":"output","Package":"github.com/apache/openwhisk-wskdeploy/utils","Test":"TestCheckLicense","Output":"--- PASS: TestCheckLicense (0.00s)\n"}
{"Time":"2021-03-18T20:46:55.022196396Z","Action":"pass","Package":"github.com/apache/openwhisk-wskdeploy/utils","Test":"TestCheckLicense","Elapsed":0}
{"Time":"2021-03-18T20:46:55.022255496Z","Action":"output","Package":"github.com/apache/openwhisk-wskdeploy/utils","Output":"PASS\n"}
{"Time":"2021-03-18T20:46:55.023834004Z","Action":"output","Package":"github.com/apache/openwhisk-wskdeploy/utils","Output":"coverage: 9.2% of statements\n"}
{"Time":"2021-03-18T20:46:55.027047219Z","Action":"output","Package":"github.com/apache/openwhisk-wskdeploy/utils","Output":"ok  \tgithub.com/apache/openwhisk-wskdeploy/utils\t0.592s\tcoverage: 9.2% of statements\n"}
{"Time":"2021-03-18T20:46:55.027175293Z","Action":"pass","Package":"github.com/apache/openwhisk-wskdeploy/utils","Elapsed":0.593}
package github.com/apache/openwhisk-wskdeploy/tests/src/integration/websequence: build constraints exclude all Go files in /home/oceanfish81/openwhisk-wskdeploy/tests/src/integration/websequence
{"Time":"2021-03-18T20:46:56.788593124Z","Action":"output","Package":"github.com/apache/openwhisk-wskdeploy/dependencies","Output":"?   \tgithub.com/apache/openwhisk-wskdeploy/dependencies\t[no test files]\n"}
{"Time":"2021-03-18T20:46:56.789534113Z","Action":"skip","Package":"github.com/apache/openwhisk-wskdeploy/dependencies","Elapsed":0.001}

Task :goTest
Test for github.com/apache/openwhisk-wskdeploy/utils finished, 8 completed, 0 failed.
Result of package github.com/apache/openwhisk-wskdeploy/tests/src/integration/websequence:
Test for github.com/apache/openwhisk-wskdeploy/tests/src/integration/websequence finished, 1 completed, 1 failed.
Result of package github.com/apache/openwhisk-wskdeploy/dependencies:
Test for github.com/apache/openwhisk-wskdeploy/dependencies finished, 0 completed, 0 failed.

Result of package github.com/apache/openwhisk-wskdeploy/tests/src/integration/validate-project:
Test for github.com/apache/openwhisk-wskdeploy/tests/src/integration/validate-project finished, 1 completed, 1 failed.
Result of package github.com/apache/openwhisk-wskdeploy/tests/src/integration/validate-manifest-deployment-file-extensions:
Test for github.com/apache/openwhisk-wskdeploy/tests/src/integration/validate-manifest-deployment-file-extensions finished, 1 completed, 1 failed.
Result of package github.com/apache/openwhisk-wskdeploy/tests/apps/owbp-cloudant-trigger:
Test for github.com/apache/openwhisk-wskdeploy/tests/apps/owbp-cloudant-trigger finished, 1 completed, 1 failed.
Result of package github.com/apache/openwhisk-wskdeploy/tests/src/integration/validateSequencesCreation:
Test for github.com/apache/openwhisk-wskdeploy/tests/src/integration/validateSequencesCreation finished, 0 completed, 0 failed.
Result of package github.com/apache/openwhisk-wskdeploy/tests/src/integration/cloudant:
Test for github.com/apache/openwhisk-wskdeploy/tests/src/integration/cloudant finished, 1 completed, 1 failed.

Result of package github.com/apache/openwhisk-wskdeploy/tests/src/integration/flagstests:
Test for github.com/apache/openwhisk-wskdeploy/tests/src/integration/flagstests finished, 1 completed, 1 failed.
Result of package github.com/apache/openwhisk-wskdeploy/tests/src/integration/validate-action-annotations:
Test for github.com/apache/openwhisk-wskdeploy/tests/src/integration/validate-action-annotations finished, 1 completed, 1 failed.
Result of package github.com/apache/openwhisk-wskdeploy/tests/src/integration/export:
Test for github.com/apache/openwhisk-wskdeploy/tests/src/integration/export finished, 1 completed, 1 failed.
Result of package github.com/apache/openwhisk-wskdeploy/tests/src/integration/validate-binding-inputs-annotations:
Test for github.com/apache/openwhisk-wskdeploy/tests/src/integration/validate-binding-inputs-annotations finished, 1 completed, 1 failed.
Result of package github.com/apache/openwhisk-wskdeploy/tests/src/integration/alarmtrigger:
Test for github.com/apache/openwhisk-wskdeploy/tests/src/integration/alarmtrigger finished, 1 completed, 1 failed.
Result of package github.com/apache/openwhisk-wskdeploy/wski18n:
Test for github.com/apache/openwhisk-wskdeploy/wski18n finished, 0 completed, 0 failed.
Result of package github.com/apache/openwhisk-wskdeploy/tests/src/integration/zipactionwithinclude:
Test for github.com/apache/openwhisk-wskdeploy/tests/src/integration/zipactionwithinclude finished, 1 completed, 1 failed.
Result of package github.com/apache/openwhisk-wskdeploy/tests/src/integration/webaction:
Test for github.com/apache/openwhisk-wskdeploy/tests/src/integration/webaction finished, 1 completed, 1 failed.
Result of package github.com/apache/openwhisk-wskdeploy/deployers:

{"Time":"2021-03-18T20:47:01.957743881Z","Action":"output","Package":"github.com/apache/openwhisk-wskdeploy/deployers","Output":"?   \tgithub.com/apache/openwhisk-wskdeploy/deployers\t[no test files]\n"}
{"Time":"2021-03-18T20:47:01.957978953Z","Action":"skip","Package":"github.com/apache/openwhisk-wskdeploy/deployers","Elapsed":0}
package github.com/apache/openwhisk-wskdeploy/tests/src/integration/runtimetests: build constraints exclude all Go files in /home/oceanfish81/openwhisk-wskdeploy/tests/src/integration/runtimetests
package github.com/apache/openwhisk-wskdeploy/tests/src/integration/zipactionwithexclude: build constraints exclude all Go files in /home/oceanfish81/openwhisk-wskdeploy/tests/src/integration/zipactionwithexclude
package github.com/apache/openwhisk-wskdeploy/tests/src/integration/docker: build constraints exclude all Go files in /home/oceanfish81/openwhisk-wskdeploy/tests/src/integration/docker
package github.com/apache/openwhisk-wskdeploy/tests/src/integration/defaultpackage: build constraints exclude all Go files in /home/oceanfish81/openwhisk-wskdeploy/tests/src/integration/defaultpackage
package github.com/apache/openwhisk-wskdeploy/tests/src/integration/validatePackagesInDeployment: build constraints exclude all Go files in /home/oceanfish81/openwhisk-wskdeploy/tests/src/integration/validatePackagesInDeployment

Task :goTest
Test for github.com/apache/openwhisk-wskdeploy/deployers finished, 0 completed, 0 failed.
Result of package github.com/apache/openwhisk-wskdeploy/tests/src/integration/runtimetests:
Test for github.com/apache/openwhisk-wskdeploy/tests/src/integration/runtimetests finished, 1 completed, 1 failed.
Result of package github.com/apache/openwhisk-wskdeploy/tests/src/integration/zipactionwithexclude:
Test for github.com/apache/openwhisk-wskdeploy/tests/src/integration/zipactionwithexclude finished, 1 completed, 1 failed.
Result of package github.com/apache/openwhisk-wskdeploy/tests/src/integration/docker:
Test for github.com/apache/openwhisk-wskdeploy/tests/src/integration/docker finished, 1 completed, 1 failed.
Result of package github.com/apache/openwhisk-wskdeploy/tests/src/integration/defaultpackage:
Test for github.com/apache/openwhisk-wskdeploy/tests/src/integration/defaultpackage finished, 1 completed, 1 failed.
Result of package github.com/apache/openwhisk-wskdeploy/tests/src/integration/validatePackagesInDeployment:
Test for github.com/apache/openwhisk-wskdeploy/tests/src/integration/validatePackagesInDeployment finished, 1 completed, 1 failed.
Result of package github.com/apache/openwhisk-wskdeploy/conductor:

{"Time":"2021-03-18T20:47:03.985519668Z","Action":"output","Package":"github.com/apache/openwhisk-wskdeploy/conductor","Output":"?   \tgithub.com/apache/openwhisk-wskdeploy/conductor\t[no test files]\n"}
{"Time":"2021-03-18T20:47:03.98677838Z","Action":"skip","Package":"github.com/apache/openwhisk-wskdeploy/conductor","Elapsed":0.001}

Task :goTest
Test for github.com/apache/openwhisk-wskdeploy/conductor finished, 0 completed, 0 failed.
Result of package github.com/apache/openwhisk-wskdeploy/cmd:

{"Time":"2021-03-18T20:47:05.320819288Z","Action":"output","Package":"github.com/apache/openwhisk-wskdeploy/cmd","Output":"?   \tgithub.com/apache/openwhisk-wskdeploy/cmd\t[no test files]\n"}
{"Time":"2021-03-18T20:47:05.321206584Z","Action":"skip","Package":"github.com/apache/openwhisk-wskdeploy/cmd","Elapsed":0}
package github.com/apache/openwhisk-wskdeploy/tests/src/integration/validate-packages-in-manifest: build constraints exclude all Go files in /home/oceanfish81/openwhisk-wskdeploy/tests/src/integration/validate-packages-in-manifest
{"Time":"2021-03-18T20:47:06.202062373Z","Action":"output","Package":"github.com/apache/openwhisk-wskdeploy/tests/src/integration/managed-deployment","Output":"testing: warning: no tests to run\n"}
{"Time":"2021-03-18T20:47:06.203084812Z","Action":"output","Package":"github.com/apache/openwhisk-wskdeploy/tests/src/integration/managed-deployment","Output":"PASS\n"}
{"Time":"2021-03-18T20:47:06.203189661Z","Action":"output","Package":"github.com/apache/openwhisk-wskdeploy/tests/src/integration/managed-deployment","Output":"coverage: [no statements]\n"}
{"Time":"2021-03-18T20:47:06.204952642Z","Action":"output","Package":"github.com/apache/openwhisk-wskdeploy/tests/src/integration/managed-deployment","Output":"ok  \tgithub.com/apache/openwhisk-wskdeploy/tests/src/integration/managed-deployment\t0.012s\tcoverage: [no statements] [no tests to run]\n"}
{"Time":"2021-03-18T20:47:06.20511029Z","Action":"pass","Package":"github.com/apache/openwhisk-wskdeploy/tests/src/integration/managed-deployment","Elapsed":0.013}
package github.com/apache/openwhisk-wskdeploy/tests/src/integration/apigateway: build constraints exclude all Go files in /home/oceanfish81/openwhisk-wskdeploy/tests/src/integration/apigateway

Task :goTest
Test for github.com/apache/openwhisk-wskdeploy/cmd finished, 0 completed, 0 failed.
Result of package github.com/apache/openwhisk-wskdeploy/tests/src/integration/validate-packages-in-manifest:
Test for github.com/apache/openwhisk-wskdeploy/tests/src/integration/validate-packages-in-manifest finished, 1 completed, 1 failed.
Result of package github.com/apache/openwhisk-wskdeploy/tests/src/integration/managed-deployment:
Test for github.com/apache/openwhisk-wskdeploy/tests/src/integration/managed-deployment finished, 0 completed, 0 failed.
Result of package github.com/apache/openwhisk-wskdeploy/tests/src/integration/apigateway:
Test for github.com/apache/openwhisk-wskdeploy/tests/src/integration/apigateway finished, 1 completed, 1 failed.
Result of package github.com/apache/openwhisk-wskdeploy/wskderrors:

{"Time":"2021-03-18T20:47:08.855722645Z","Action":"output","Package":"github.com/apache/openwhisk-wskdeploy/wskderrors","Output":"?   \tgithub.com/apache/openwhisk-wskdeploy/wskderrors\t[no test files]\n"}
{"Time":"2021-03-18T20:47:08.856560236Z","Action":"skip","Package":"github.com/apache/openwhisk-wskdeploy/wskderrors","Elapsed":0.001}
package github.com/apache/openwhisk-wskdeploy/tests/src/integration/conductor: build constraints exclude all Go files in /home/oceanfish81/openwhisk-wskdeploy/tests/src/integration/conductor
package github.com/apache/openwhisk-wskdeploy/tests/src/integration/zipaction: build constraints exclude all Go files in /home/oceanfish81/openwhisk-wskdeploy/tests/src/integration/zipaction

Task :goTest
Test for github.com/apache/openwhisk-wskdeploy/wskderrors finished, 0 completed, 0 failed.
Result of package github.com/apache/openwhisk-wskdeploy/tests/src/integration/conductor:
Test for github.com/apache/openwhisk-wskdeploy/tests/src/integration/conductor finished, 1 completed, 1 failed.
Result of package github.com/apache/openwhisk-wskdeploy/tests/src/integration/zipaction:
Test for github.com/apache/openwhisk-wskdeploy/tests/src/integration/zipaction finished, 1 completed, 1 failed.
Result of package github.com/apache/openwhisk-wskdeploy/wskenv:

{"Time":"2021-03-18T20:47:10.885744109Z","Action":"run","Package":"github.com/apache/openwhisk-wskdeploy/wskenv","Test":"TestInterpolateStringWithEnvVar"}
{"Time":"2021-03-18T20:47:10.886005081Z","Action":"output","Package":"github.com/apache/openwhisk-wskdeploy/wskenv","Test":"TestInterpolateStringWithEnvVar","Output":"=== RUN   TestInterpolateStringWithEnvVar\n"}
{"Time":"2021-03-18T20:47:10.886027506Z","Action":"output","Package":"github.com/apache/openwhisk-wskdeploy/wskenv","Test":"TestInterpolateStringWithEnvVar","Output":"NoDollar\n"}
{"Time":"2021-03-18T20:47:10.886039306Z","Action":"output","Package":"github.com/apache/openwhisk-wskdeploy/wskenv","Test":"TestInterpolateStringWithEnvVar","Output":"oh, dollars!\n"}
{"Time":"2021-03-18T20:47:10.886047605Z","Action":"output","Package":"github.com/apache/openwhisk-wskdeploy/wskenv","Test":"TestInterpolateStringWithEnvVar","Output":"5000\n"}
{"Time":"2021-03-18T20:47:10.88606163Z","Action":"output","Package":"github.com/apache/openwhisk-wskdeploy/wskenv","Test":"TestInterpolateStringWithEnvVar","Output":"--- PASS: TestInterpolateStringWithEnvVar (0.00s)\n"}
{"Time":"2021-03-18T20:47:10.886070205Z","Action":"pass","Package":"github.com/apache/openwhisk-wskdeploy/wskenv","Test":"TestInterpolateStringWithEnvVar","Elapsed":0}
{"Time":"2021-03-18T20:47:10.88608053Z","Action":"output","Package":"github.com/apache/openwhisk-wskdeploy/wskenv","Output":"PASS\n"}
{"Time":"2021-03-18T20:47:10.886088905Z","Action":"output","Package":"github.com/apache/openwhisk-wskdeploy/wskenv","Output":"coverage: 62.9% of statements\n"}
{"Time":"2021-03-18T20:47:10.886963471Z","Action":"output","Package":"github.com/apache/openwhisk-wskdeploy/wskenv","Output":"ok  \tgithub.com/apache/openwhisk-wskdeploy/wskenv\t0.007s\tcoverage: 62.9% of statements\n"}
{"Time":"2021-03-18T20:47:10.887006295Z","Action":"pass","Package":"github.com/apache/openwhisk-wskdeploy/wskenv","Elapsed":0.007}

Task :goTest FAILED
Test for github.com/apache/openwhisk-wskdeploy/wskenv finished, 1 completed, 0 failed.
Generating HTML test report...
Finished generating test html results (0.055 secs) into: /home/oceanfish81/openwhisk-wskdeploy/.gogradle/reports/test
:goTest (Thread[Execution worker for ':',5,main]) completed. Took 24.457 secs.

FAILURE: Build failed with an exception.

What went wrong:
Execution failed for task ':goTest'.

There are 25 failed tests. Please see /home/oceanfish81/openwhisk-wskdeploy/.gogradle/reports/test/index.html for more details.

Try:
Run with --stacktrace option to get the stack trace. Run with --debug option to get more log output. Run with --scan to get full insights.

Get more help at https://help.gradle.org

Deprecated Gradle features were used in this build, making it incompatible with Gradle 7.0.
Use '--warning-mode all' to show the individual deprecation warnings.
See https://docs.gradle.org/6.8.3/userguide/command_line_interface.html#sec:command_line_warnings
BUILD FAILED in 26s
2 actionable tasks: 2 executed

test_report.zip

This on behalf of https://groups.google.com/g/golang-nuts/c/S2gBW3BV4QU/m/I4gWtrPxBwAJ
Also consider investigating https://github.com/json-iterator/go/issues/501

@advancedwebdeveloper
Thank you for the contribution.
How about opening a PR with your change and describe your intention more here?

@advancedwebdeveloper  Running the "goTest" (gradle command) has never been valid in local configurations (especially for integration tests).  As the README states, you should run only "unit" tests locally with "go test" (actual go command); "go test" integration tests will only work in Travis as the needed credentials are provided in that environment.
FWIW, The direction of the client tools (wskdeploy and CLI) is one where gogradle (which has not been updated since 2017 and is hardcoded to the deprecated govendor) is replaced with a newer plugin or removed altogether.

@advancedwebdeveloper Running the "goTest" (gradle command) has never been valid in local configurations (especially for integration tests which requires a full OpenWhisk backend plus all providers installed and working with backing services). As the README states, you should run only "unit" tests locally with "go test" (actual go command);

OK, understood.

"go test" integration tests will only work in Travis as the needed credentials are provided in that environment.

And how would I run Travis in my local environment?
Or you want me to fork on Github - and your bot would push a job to Travis, automatically?

FWIW, The direction of the client tools (wskdeploy and CLI) is one where gogradle (which has not been updated since 2017 and is hardcoded to the deprecated govendor) is replaced with a newer plugin or removed altogether.

OK, I am just following the current instructions.

And how would I run Travis in my local environment?
Or you want me to fork on Github - and your bot would push a job to Travis, automatically?

Travis is not run locally, but in the Travis CI servers that are paid for by the Apache Software Foundation.  If you submit a pull request, a Travis PR job will be run, and our Travis scripts will automate the install of OpenWhisk and its services and run all unit and integration tests.  Of course, you can change the build.gradle to attempt to build for a new architecture (if it is supported on the compiler) by adding the architecure's acronym to the build matrix.  However, If it is your intent to run the resultant binary (executable) on a new architecture that would likely be a manual process (at the moment) by taking the matching binary and actually running it on a machine of that architecture (unit tests only unless you want to figure out how to install a full production OW platform locally).  There may be possibilities that 3rd party services might support Travis jobs/testing that could be enabled within Travis to test on specific platforms (e.g., we have tried for Windows, but it was very involved to enable this with Apache infra. team).  TBH, I have knowledge if these 3rd party exist (especially for a new architecture) and am doubtful they may for your specific case.
One question though... it was my belief that AARCH64 and ARM64 were the same (merged) and not sure why supporting this architecture is important?  i.e., https://www.phoronix.com/scan.php?page=news_item&px=MTY5ODk

and indeed this is also true for Golang... compiles... https://gist.github.com/conoro/4fca191fad018b6e47922a21fab499ca

and a recent blog post confirms our linux-arm64 would work on aarch64 servers… https://opensource.com/article/21/1/go-cross-compiling

and reading this (although they neglect to say they removed support for Darwin 32-bit in Go 1.15) indicates 1.16 beta will support new M1 chips (better?) https://blog.golang.org/ports (is this why I see a PR for 1.16.2? https://github.com/apache/openwhisk-wskdeploy/pull/1132)


Feature/cached repository

Closes #31

Codecov Report

Merging #33 (5796ad9) into master (5a4bd16) will increase coverage by 0.43%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##           master      #33      +/-   ##
==========================================
+ Coverage   82.25%   82.68%   +0.43%
==========================================
  Files          84       85       +1
  Lines        1358     1392      +34
  Branches      113      115       +2
==========================================
+ Hits         1117     1151      +34
  Misses        234      234
  Partials        7        7

Impacted Files
Coverage Δ

....Blog.Infrastructure/Persistence/Sql/Repository.cs
100.00% <ø> (ø)

...log.Infrastructure/Persistence/CachedRepository.cs
100.00% <100.00%> (ø)

...egistrationExtensions/StorageProviderExtensions.cs
100.00% <100.00%> (ø)

Continue to review full report at Codecov.

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


Secure connection

This adds ssl/tls to connections. Endpoint gets a secure property (optional, defaults to true only if port is 443). Test runs on latest haxe git for neko, java and node (could not get cpp to compile, but that seems unrelated). I'll have a look at server side ssl termination as well, but it'll probably take me more time.

Awesome! :)


ImageEditor Component

As someone new to component libraries, I am interested in contributing to the project by adding a basic ImageEditor component if it's feasible and allowed, I am eager to contribute to the library by implementing it and I believe this addition would enhance the functionality of the library.

Hello @detronetdip!
Thank you for considering contributing to Rewind-UI.
Could you show me an example of an Image editor component?

@NickDunas Sure, below is the video how the final outcome will look like though we can customize and modify certain things.
https://github.com/rewindui/rewindui/assets/64276906/771a54b9-5a9c-4f08-ae9f-9773cb352f94

@detronetdip this looks really nice, but I think it is out of the scope of a ui component library.
I would suggest you to just try to publish a separate library just for this component :)


generalization of the soil layers

I still haven't figured out the good way to deal with those three soil states (smc,slc,stc) in the IC/RESTART and in the model. They use the same variables name but with the different vertical dimension. I tried to use soil_moisture_vol_ic, soil_liquid_vol_ic, and temperature_soil_ic for IC. But it didn't work. So my plan is to keep the original name for IC and use other names for the model, like temperature_soil_mp.

The variable name should be the same for reading/writing restart files. So probably I should work for coldstart case only.


Added oracle linux detection and spec for it

Hi @mizzy,
I am not sure how are you thinking about adding oracle linux detection in detect_os/redhat, so let me know your opinion about this change. And there was no spec for redhat detection, added it as well. Thanks.

Specinfra::Command::Oracle does not exist in your code,  so specinfra doesn't work when it detects oracle. Have you tried your code with Oracle Linux ?


[Feature]unique processdefinition name in the same project

branch
dev
Is your feature request related to a problem? Please describe.
if the same name in one project ,im hard to recognize any one . And its usually caused by mistake
Describe the solution you'd like
unique processDifinition name in one project
Additional context
name suffix is also good

I don't test dev branch for now,
as I know, version 1.2.0 1.2.1 not exists this situation,  when save Process Definition, it will check the name aleady exists or not
@xingchun-chen please verify this issue

@dailidong  i'd found that checked by ProcessDefinitionController.verifyProcessDefinitionName
and i didn't see the unique constraint on t_ds_process_definition's ddl with the name and project_id column. i think it maybe cause some problem In concurrent mode

1.If the workflow definition is verified to be unique through the normal operation of the dag page, as shown in the following figure
如果通过dag页面正常操作校验了工作流定义名称唯一，如下图所示

2.If you create workflow definitions concurrently through tools, you can create multiple workflow definitions with the same name. Import workflows also have this problem. Same as # 2538
如果通过工具并发创建工作流定义，可以创建多个同名的工作流定义，导入工作流也有该问题同#2538

who can fix it

i will fix it


Misses Includes

It would be great if you could do a recursive word count on all included files.

I haven't used Sublime since about the time I posted this issue. Closing this since it's just been sitting open on my issue list.


Feature/Remote Control - Allow Multiple Modules per Module Type

Adds updates to API according to #2919

@JackLivio All reviews comments have been processed.

@JackLivio All reviews comments have been processed.


Test Results page

Hi,
The Test Results page is not working properly: https://travis-ci.org/jadejs/jade
Best,
Cesar

The link is out of date as we are in the process of transitioning to a new name.  Currently they are at https://travis-ci.org/pugjs/jade  Once the move is complete they will be at https://travis-ci.org/pugjs/pug

Thanks!


Prettify/neatify README

Some small grammatical corrections to improve the professional presentation of the document to english readers.

other parts good to me , Thanks !


History not updated for generating VC

Describe the bug
History is not added for generating VID
To Reproduce
Steps to reproduce the behavior:

Add VID
Note on history that the generation has not been recorded in the history screen

Expected behavior
History should be displayed
Reproduced on
0.3.0 RC1
Additional context
Reported by MOSIP as MID-16

Verified on test build. Works as expected.

Verified on 0.3.0rc2 <IP_ADDRESS>. Works as expected.


Add more PTP features, port-channel support and bugfix

Change Summary

This will add more features on interface level to PTP. Additionally we have added support for port-channel configuraitons.
Also fixed a bug with ptp dscp missing default at the end.
Types of changes

[x] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)
[ ] Code style update (formatting, renaming)
[ ] Refactoring (no functional changes)
[ ] Documentation content changes
[ ] Other (please describe):

Related Issue(s)

Fixes #538
Component(s) name
eos_cli_config_gen
ethernet-interfaces.j2
port-channel-interfaces.j2
ptp.j2
readme
Molecule test case
Proposed changes

Interface level documentation has to be fixed later, I have opened issue #631 to track.
How to test

Molecule tests positive.
Checklist:

[x] My code has been rebased from devel before I start
[x] I have read the CONTRIBUTING document.
[x] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[x] I have updated molecule CI testing accordingly
[x] All new and existing tests passed (pre-commit, make linting and make sanity-lint).

Added PTP domain as well, run the molecule test and added documentation for PTP domain. Let me know if any changes are needed.

Added PTP domain as well, run the molecule test and added documentation for PTP domain. Let me know if any changes are needed.


Accessing data through functions passed from parent causes list siblings to re-compute

Version
2.5.17
Reproduction link
https://jsfiddle.net/t0h73urf/
Steps to reproduce
Click the button.
What is expected?
computed.value is only recalculated for the changed list element (look at the console logs). See this slightly modified fiddle for expected behavior (not using the accessor): https://jsfiddle.net/twnmoLsh/2/
What is actually happening?
All 3 computed.value elements are recalculated.

In your reproduction link(https://jsfiddle.net/t0h73urf/), the computed property value has two dependencies: this.accessorFunc and this.item.
In your modified link(https://jsfiddle.net/twnmoLsh/2/), the computed property value has only one dependency: this.item.
this.accessorFunc is always changed when the component is updated. As a workaround, you can use methods instead of function expressions:
    <list-item
      :accessor-func='fn'>
    </list-item>

methods: {
  fn (item) { return item.value }
}

As you have an inline function, this one is being recreated every time the template renders, therefore, the prop changes and the computed property needs to be re evaluated (and this for every component). As @HcySunYang suggested, a method would make it work. A similar thing happens with plain objects.
Since the function is created inside of the render function (when the template is compiled), we cannot hoist it to prevent this

That makes sense and your solution works. Thanks!


Protobufjs

@panuhorsmalahti Please review this PR. :+1:  or :-1: ?

Looks good :+1: !

@ttowncompiled Thanks mate!
@panuhorsmalahti Thank you for reviewing!


TypeError [ERR_INVALID_CALLBACK]: Callback must be a function

On Node.js v9+ pg-db throws this error:
$ node
> db = require('pg-db')();
...
> db.query('SELECT NOW(), (err, rows) => console.log(err, rows) );
undefined
> TypeError [ERR_INVALID_CALLBACK]: Callback must be a function
    at Object.randomBytes (internal/crypto/random.js:48:11)
    at Object.options.source (.../node_modules/rand-token/index.js:60:25)
    at generate (.../node_modules/rand-token/index.js:95:29)
    at .../node_modules/pg-db/lib/index.js:385:21
    at .../node_modules/pg-db/lib/index.js:428:18
    at bound (domain.js:396:14)
    at runBound (domain.js:409:12)
    at .../node_modules/pg/lib/pool.js:84:11
    at .../node_modules/generic-pool/lib/generic-pool.js:347:9

Looks like this is the bug in node-rand-token which was fixed in recent versions. Can you update the version of node-rand-token in package.json?
Related issues:

https://github.com/nodejs/node/issues/16778
https://github.com/sehrope/node-rand-token/issues/10

Thanks.

Are you on the latest version of this module?
The rand-token dependency was updated a few months ago (https://github.com/sehrope/node-pg-db/commit/48f240160ed17ec735b2c8a89829098b032318a4) and published to NPM as pg-db v2.0.0.

You're right, version 2.0.0 works fine. Sorry for the noise! Thanks!


Fix icons in README by using old version as source

The Windows icon has been removed in a recent version of simple icons, but it can still be obtained from older versions of the library on some of the CDNs.

^- this just makes the project look so abandoned on first sight.

This is a workaround for this: https://github.com/simple-icons/simple-icons/pull/10019

Oh, I didn't realize that feature of simple-icons own CDN was in use here. Hmm, unfortunately, the other CDNs don't seem to support this. Thinking about other workarounds, but cannot seem to find any at the moment. Sorry, don't have a solution for this then, feel free to close...

I've been looking around a bit and found out that there are ways to include html in github markdown and it's even possible to select images based on the dark/light theme: https://docs.github.com/en/get-started/writing-on-github/getting-started-with-writing-and-formatting-on-github/basic-writing-and-formatting-syntax#specifying-the-theme-an-image-is-shown-to
So it's possible to exchange the image based on theme, here's some experimental code: https://github.com/sebkur/KCEF/commit/c4418d9932f7c72f6735e0618689b3981cf1f61f visible at https://github.com/sebkur/KCEF/tree/fix-icons2
In the example for the sake of trying things out, I'm using the windows icon for light mode and the linux icon for dark mode. That works. So if we had a source of each image with white fill, we could swap them out based on the theme. But that's the problem of course, we don't have that...
It's interesting though, the SVG files don actually specify an fill color, so they default to black. It's even possible to use some css in the embedded html, however it does not look like we can manipulate the svg coloring from the embedding html.


LSNBLDR-586 Set indent level and custom css class for items

This adds the ability for users to set an indent level and a custom css class
for individual lessons items. These settings are stored using two new json
attributes.

I've added this code. There were conflicts, so I didn't use the PR


Moving details in file_handle.hpp to .cpp

... also don't build remote_handle.cpp if KvikIO_REMOTE_SUPPORT=OFF, which fixes https://github.com/rapidsai/kvikio/issues/538

/merge


Added zoo-home-page.html

New feature

Home page for the website merged with main branch.

home-page branch deleted.


Identifiers don't seem to be parsed correctly.

Lookee here, the XXX is considered to be part of the ident:
erik@munin:~/my-psc-ide-project $ echo "typeLookupXXX id" | ./psc-ide
Symbol 'XXX id' not found.

This is because spaces consumes zero or more whitespaces. Instead of using (many1 whitespace) it would be cleaner to switch to using a Tokenparser and treating the commands as reserved keywords.
Since we're figuring out a new protocol anyway I don't think it's critical as the API is mainly consumed by editor plugins.

with the new api this is obsolete


code and dataset release

Hello, thanks for your impressive and inspiring work of Monte Carlo denoising! Do you have any plan to release your code and dataset to the community?

That would be very nice! Thanks for your work!

#3
I'm very sorry. Unfortunately, I've been on sick leave for six weeks. I had intended to finish the code release before then, but I got delayed by other matters. I'm getting around to it now.

It's not too late, and remember to take care of yourself buddy. Looking forward to the dataset and code :)

Wish you a speedy recovery.

Would it be possible for the code before SIGGRAPH submission due?

watting for code

Hello, I‘m sorry to bother you. I was just wondering that if it could be possible for the code before 2024 April.

Thank you for the good wishes! I had to have another surgery in February, but thankfully, my recovery was smoother this time. I should be all right health-wise for the foreseeable future.
I just verified that our reimplementation works and reproduced some previous results practically within run-to-run variation. The old code was a mess, so this should be much more helpful. I'm running the final validations on our cluster as I write this, and the rest of the team will review the documentation later in the week. I can finally confirm the release later this week.
We've started a collaboration titled "Perception-Guided Neural Monte Carlo Sampling and Reconstruction". This collaboration will include projects similar to NPPD, with a strong emphasis on open science. The new implementation of NPPD will serve as a starting point, not just for us but anyone who would like to contribute.
We're sharing a framework for using our (and any contributors') datasets, running evaluations, and maintaining benchmarks for easy comparisons. The new NPPD implementation is based on this framework, plus we have some documentation. I'll be more active after the public release this week should any questions or initiatives for collaboration/contribution arise.

All right, everything's online. We also tested the instructions in a couple of environments. All should work, but if you have any problems, feel free to open a new issue.


ICU-668 Added sort=‘status’ to querystring

Summary
Added sort='status' to lookups for Users in Channel for listing first 100 users in a channel
Ticket Link
https://mattermost.atlassian.net/browse/ICU-668
Related PRs
https://github.com/mattermost/mattermost-server/pull/8181
https://github.com/mattermost/mattermost-api-reference/pull/329
https://github.com/mattermost/mattermost-webapp/pull/747

@stephenkiers is this ready for review? I think it still needs the change to the action that calls the Client4.getProfilesInChannel() function if it's going to work with your webapp PR
(Sorry if you still need to make changes and I'm jumping the gun)

I am still waiting for server changes to be complete. I figured the merge order would be server => redux => webapp (after updating redux pkg) => documentation

@jwilander Does this still need any changes or is it ready for review? I assume this has missed 4.8, so it would be nice to get it merged for 4.9 shortly


implement graphical renderer

We need a graphical renderer for (the binary part of) hasherlife.
We first need to consider which crate is best suitable for 2D rendering.

For now we will use the sdl2 crate which provides rust bindings to the sdl2 C library.

We first need to take care of issue #4 before we can move on with the graphical renderer.
This is because we need to shape the renderer around the API of the library crate.
The renderer should live separately in a binary crate.

Since #4 is resolved we can move on.


Getting "Application Error"

Hey love the idea of this and wanted to give it a spin. I followed all the steps and deployed all smooth sailing.
I've installed the script tag to a very simple site (its just a HTML page)  at https://im.chiubaca.com/ and I can see request are being made to my worker at counterscale.chiubaca.workers.dev.
However my dashboard is returning the following error:

see for your self at https://counterscale.chiubaca.workers.dev/dashboard.

First off – wow, thank you for trying this out! You're the first person to share a production deployment and I'm really grateful for that, even if it's erroring (sorry!).
This is definitely failing somewhere in the worker code trying to serve the dashboard – the minified stack trace makes this really hard to determine where.
I could try firing up my own separate deployment and try to recreate the same issue (maybe I left out a step somewhere), or if you're willing, we could communicate over email or even over Google Meet and debug what's going on.

No worries at all, happy to help out!  Email or google meet works for me. Feel free to message  me at<EMAIL_ADDRESS>

I shot you an email.
I did spend 30 minutes spinning up a brand new Cloudflare user account and following the steps in hopes I might trigger the issue. I did find #24, but once it tracked / collected a pageview the Dashboard loaded fine and I couldn't recreate.

I managed to recreate the same error message in a test script. Not sure if this is the same situation, but it occurred when the code tries to query the Analytics Engine API and fails with something like:
{
  result: null,
  success: false,
  errors: [
    {
      code: 7003,
      message: 'Could not route to /client/v4/accounts/fake/analytics_engine/sql, perhaps your object identifier is invalid?'
    }
  ],
  messages: []
}

In my case it's because fake is not a valid account ID / generates a bad URL. But I imagine this could fail a bunch of ways, e.g. if the API token has wrong permissions.

I got it working!
It was a mis-config on my end 😅
I double-checked my envs were correct by going into my counterscale worker > clicking on the Settings tab > Variables . Then I nuked the existing  variables  for CF_ACCOUNT_ID  and  CF_BEARER_TOKEN and input them in again, then voila the dashboard is alive!

Phew – closing as resolved. I think I will add more docs/troubleshooting around this though. And thanks again for opening this ticket; it got me to identify some failure modes, add some new tests, etc.


[Bug]: [Canvas Resize] Canvas resize handle doesn't stick to the edge of the canvas during resize.

Resize handle overlaps with the canvas during resize.
Objective:

Resize handle should stick to the right edge of the canvas during resize.

Check miro board for clarity:
https://miro.com/app/board/uXjVPnDYNkY=/

Resize handle doesn't overlap, working as expected in PR #20836 . Moving to done


Unknown tag @ISO

When I run mrbdoc to generate the yard docs I get an error saying [warn]: Unknown tag @ISO in file mrblib/enum.rb near line 14. Everything still gets generated just fine anyways but I was just wondering why it's there if the tag is supposedly unknown?

My bad,
I added the TAG but forgot to release a new version of the gem.
I'll push a new release tomorrow that should fix the issue.

Thank you!

@Mav7 v0.2.1 is out with support for the @ISO tag :wink:

@sagmor Great thanks man! Works like a charm :) One more thing though I getting a warning saying [warn]: Error loading plugin 'yard-coderay' This probably something I messed up on. Any idea what might be going on there?

Sure,
To support C syntax highlighting on MRuby's examples (like here) I used also yard-coderay because by default YARD only has a highlighter for Ruby.
a simple gem install yard-coderay should be enough.

@sagmor Thanks again man! Also great work on this gem!

No prob! glad it's useful


Get Unauthorized when sending exception

I register an account in exceptionless.com and add client config by using attribute like this:
[assembly: Exceptionless.Configuration.Exceptionless("my_key_placeholder", EnableLogging = true, LogPath = "E:\\exceptionless.log")]

Here is detail report:
ExceptionlessClient: Configuration Values: ApiKey=API_KEY_HERE, EnableSSL=True, Enabled=True, ServerUrl=http://collector.exceptionless.com
ExceptionlessClient: Submitting error: id=8000000006fad724cc4905b5 type=System.ArgumentException
ExceptionlessClient: Checking for duplicate exception: hash=-697800080 type=System.ArgumentException
ExceptionlessClient: Error contents: System.ArgumentException: s
QueueManager: Enqueuing error:<PHONE_NUMBER>fad724cc4905b5
QueueManager: Queue changed
ExceptionlessClient: Setting last error id '8000000006fad724cc4905b5'
LocalConfigurationDictionary: Saving local configuration.
LocalConfigurationDictionary: Done saving local configuration.
ExceptionlessClient: Processing queue...
QueueManager: Cleaning up files older than: 2/5/2015 3:20:40 AM
QueueManager: Getting Manifests
ExceptionlessClient: Begin processing queue batch of 1 items...
ExceptionlessClient: Sending Manifest '8000000006fad724cc4905b5'
QueueManager: Getting error:<PHONE_NUMBER>fad724cc4905b5
ExceptionlessClient: Submitting error<PHONE_NUMBER>fad724cc4905b5...
ExceptionlessClient: Sending error report failed: The remote server returned an error: (401) Unauthorized.
ExceptionlessClient: Unable to authenticate, please check your configuration. The error will not be submitted.
ExceptionlessClient: Suspending processing for: 00:15:00.
QueueManager: Deleting error:<PHONE_NUMBER>fad724cc4905b5
QueueManager: Queue changed

Looks like you have the exceptionless config section in your app/web.config and the apiKey is set to "API_KEY_HERE". You will need to update that to your API key.


Order of collection affects selection ability

Option "A" cannot be selected (left):
  <%= form.combobox(
    :supervisor_idx,
    ["A1", "A", "A2", "A3"]
  ) %>

All options are selectable (right):
  <%= form.combobox(
    :supervisor_idy,
    ["A", "A1", "A2", "A3"]
  ) %>

@aroth great catch! Really appreciate you calling out these edge cases. Should be fixed on v0.1.41 which is out now!


refactor(interactive): Add format check for Flex Interactive code

Implement format and style checks for C++ and Python code in Flex Interactive; Java checks are already in place.
Fix #4270

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

Project coverage is 58.78%. Comparing base (1b4b809) to head (294d494).

Additional details and impacted files

@@           Coverage Diff           @@
##             main    #4272   +/-   ##
=======================================
  Coverage   58.78%   58.78%
=======================================
  Files          12       12
  Lines         592      592
=======================================
  Hits          348      348
  Misses        244      244

Continue to review full report in Codecov by Sentry.

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


Allow suppressing of display info of the OpenGL driver and vendor information.

Hello! Thanks for the great project which is this game framework. It is really easy and simple to use, while having great architectural choices (fixed timestep, and so on).
I have only encountered one issue which i would like to have more control over. For me it would be great to be able to not print the OpenGL vendor information, because i would like to have my own, custom diagnostic information printed at a later time during the application's work.

Thank you for the kind words! If you end up publishing any projects/code, please let me know - can add them to the showcase page on the website :)
I definitely want to add a way of surpressing this output (or perhaps just turn it off by default), especially given that it currently shows up in release mode. It's kind of tied in with the work I've been planning in #87, but it shouldn't be dependent on that.
A related question - do you have a way of accessing this diagnostic information easily in your game, for your own display? Or would it be helpful for Tetra to give you access to it (e.g. through the window module)?

Indeed it would be very helpful if tetra could expose its inner 'components' through the API. I belive that it can provide useful information debugging problems on various platforms.

Going to have a crack at fixing this tonight - general approach will be:

Add a getter/setter for the vsync state and getters for the driver/vendor info to tetra::graphics.
Add an off-by-default setting to the config builder to print the debug info at startup.

This should hopefully serve both our use cases:

If you just need the information quickly to submit a bug report, you can just add .debug_info(true) (or something like that) to the config and then take it out again later.
If you want to surface that info in your game in a custom way, you can use the lower level methods to do so.

This is now available on master via graphics::get_device_info. Still need to handle the vsync side of things.

Done!


Review of fsdf-kg ontology - base classes

FSDF-KG appears to define a basic ontology for FSDF applications, in the namespace https://linked.data.gov.au/def/fsdf/. FSDF-KG relies primarily on GeoSPARQL and DCAT for the key classes (Features and Datasets), and adds specific properties related to custodianship and responsibility.
More specific ontologies and vocabularies may be defined in subsidiary namespaces https://linked.data.gov.au/def/fsdf/xxx/ and https://linked.data.gov.au/def/fsdf/yyy#, such as https://linked.data.gov.au/def/fsdf/common# and https://linked.data.gov.au/def/fsdf/network#.
There are three classes defined in the https://linked.data.gov.au/def/fsdf/ (prefix fsdf:) namespace:

fsdf:Jurisdiction rdfs:subClassOf sdo:Organization . for the Commonwealth, States and Territories

It is unclear if local government jurisdictions are also included

fsdf:Agency rdfs:subClassOf sdo:Organization . for government organizations

It is unclear if departments and portfolios are considered

fsdf:Mandate rdfs:subClassOf prov:Entity , dcat:Resource . for regulations and legislation that bind FSDF resources to an Agency

Two of these classes use schema.org types as their base class, while the other leans on W3C ontologies. I suggest either
(a) use a consistent base ontology (or family), or
(b) move alignments to existing ontologies into separate graphs.
W3C Organization ontology might be a suitable basis - while it has not been widely used, it is designed to support these kind of applications. The alignment to schema.org is useful, but given the intention that FSDF have reasonable strong semantics (there are domain and range axioms) compared to SDO's weak semantics, the SDO alignment is probably best kept in a secondary graph.

I suggest either...  use a consistent base ontology (or family)...

I think we'll pick up this approach. I'll add in ORG alignment while retaining the schema.org alignment.

[or]... move alignments to existing ontologies into separate graphs.

I won't take this approach as we already have a n aweful lot of semantic elements - onts and vocs - to deal with and really need one main ontology for the FSDF dataset tracing platform (the semantic form of LINK) to bring everything together.

re fsdf:Jurisdition
It is unclear if local government jurisdictions are also included

That's not  a modelling issue but a governance one: if ICSM wants local Jurisdiction instances, they can make them.
I'll ensure that the model definitions make this clear.

re fsdf:Agency
It is unclear if departments and portfolios are considered

'Agencyhere in FSDF need not have a consistent govt. structural view with AGOR etc from where portfolios etc come from. SoAgencyhere is whatever makes sense for FSDF. My _guess_ is that it really doesn't include Portfoliios: FSDF Agencies seem to be the org that directly manage/supply data, not parent bodies. But if a AGOR Portfolio supplies data to FSDF, then it's anfsdf:Agency` instances.

I suggest either... use a consistent base ontology (or family)...

I think we'll pick up this approach. I'll add in ORG alignment while retaining the schema.org alignment.

OK, I've taken this approach but used sdo:Legislation as the super class of Mandate,  (Commit https://github.com/surroundaustralia/fsdf-kg/commit/905326d6d2333d451a665dda87615a0d955cf480) so now SDO is used everywhere.

if we can identify a strong OGC benefit

did you mean "if we can identify a strong ORG benefit"?


Switch to the I-beam cursor when hovering over the terminal

This commit makes us use the I-beam cursor when the user hovers over the
terminal, unless mouse mode is enabled. I've also plumbed up a bunch
of events so that:

If mouse mode is toggled while hovering, the cursor will switch to
the arrow if it's on or the I-beam if it's off.
If you hold down shift to suppress mouse mode, the cursor will switch
back to the I-beam.

Fixes #1441.
Detailed Description of the Pull Request / Additional comments
It turns out that we're in violation of the Windows human interface guidelines, so that's good.
It also turns out that you cannot set the cursor type of a control -- you actually have to actively set and reset the cursor when the pointer enters or exits.

my selection color is bright red to differentiate it from vim's mouse mode selection

On a scale of yes to no, could this be made a setting (in a future PR) so I could disable this? Should it be a global or a profile setting?

In a future PR, it could probably be made a setting -- global, though.

If it is implemented, it should work with the new Beam cursor options.

@mdtauk that is not an i-beam mouse cursor. whatever that is works with Terminal as of v0.10 (or v0.11? which is not yet out; it merged recently.)

So, I think this is your setting:

Cheekiness aside, I'm not averse to speccing a global setting that configures how the cursor works -- but it will be a case of users opting for less expressiveness/fewer features, so we should almost certainly measure its use.

This is in selfhost. Give it a feel.

[ ] The cursor remains an I-beam when I mouse over the tabs
[ ] If I open tmux (with mouse mode) in one tab, then hover another tab, the cursor switches back to the I-beam, and stays in an I beam even if I click inside tmux

showerthought: what if we just always turned the cursor back into an arrow, then let the new control change it to whatever they want? Presumably one control's PointerExited is fired before the next control's PointerEntered, right? Or does that cause flickering?
Additionally: Are we planning on putting this is 1.0?

not about about 1.0. My concern with always setting Arrow is that what if they're hovering with a pen? I dunno, I kinda wanna ask AustinL.

Sorry Comrades for what I write in this branch (I haven't figured out yet with GitHub), but I have a bug because of which this program does not allow me to write anything.

@bropines it looks like you are running into #4448

So this is about the mouse pointer (mouse cursor), and not the text insertion cursor. I legit had to read the thread halfway through to realize it.
Don't you guys always confuse these two? I do. Similar names, the word "cursor" overloaded for them, and both possibly being of "I-beam" shape.
My preference is to say "mouse pointer" for, well, that one; without using the word "cursor". Do you guys have a preferred terminology?

@bropines похоже, что вы бежите в #4448

Thank you very much. I wouldn't have guessed it myself

@egmontkob yep, this is about the mouse pointer. I should endeavour to be better about saying "pointer" when I mean the thing the user points with. :smile:
Alas, overloaded terms are pervasive in our industry. They're so hard to escape.

(And yeah, we get them mixed up all the time.)

The conflicts shouldn't be hard to resolve whitelist was renamed to expect -- If you need help, I can help on Sunday.

All the decent Terminals I know have this behavior: when the mouse pointer is over them it changes into a sort of I. This makes selecting text more intuitive and practical...

And you are commenting on this open pull request that does exactly this so as to move it along?

Closing as it's super stale, but not deleting the branch in case someone wants to dig it up again one day.

To add some notes that never made it here a few years back:
I believe there was no good way for us to set the mouse pointer for a single control in XAML. A control could change the cursor in PointerEntered, but IIRC there's a race between PointerEnter's and PointerExits. So when you've got an app that's got all sorts of mixed UI elements, some that want the cursor to be an I-beam and some that want the arrow, well now you're stuck. As you hover over different elements, they'll fight over who's actually setting the cursor to what.


feat: Add toggle for dark theme

Looks good so far! We can adjust the colors of other parts as we go.


[KARAF-6547] Upgrade to Felix Utils 1.11.4

retest this please

retest this please

retest this please

retest this please

retest this please

retest this please

Utils update breaks some tests (due to security change there). I'm checking/updating the test.

Felix Utils 1.11.4 is wrong as the feature deployer now tries to start each bundle twice. I'm checking in Felix Utils.


ungoogled chromium (flatpak) wont save passwords at all

Describe the bug
ungoogled chromium (flatpak) wont save passwords at all.
press save and nothing happens, the list of saved passwords in passwords tab in settings remains empty
To Reproduce
Steps to reproduce the behavior:

go to any website
log in
click save on the password manger pop up
check saved password list in settings

Expected behavior
it should save passwords normally like normal chromium.
Environment (please complete the following information):

OS/Platform and version: pop! os 20.10(gnome 3.38)
ungoogled-chromium version: 88.0.4324.104

Additional context
i tested it on normal flatpak chromium 88.0.4324.96 and it worked flawlessly
2 devices have the issue

I can confirm this for the flatpak version 88.0.4324.182 (Official Build, ungoogled-chromium) (64-bit). Just to make sure, I have double-checked that "Clear cookies and site data when you quit Chromium" is definitely off.

Same issue here.

This now works in Version 89.0.4389.82.

Closing since new version resolves the issue. Let us know if this is not the case.