luci.mk: allow more customization (for external feeds/packages)

Split the current luci.mk file into two files, "luci-common.mk" with definitions that might be relevant for other feeds too and "luci.mk" to be included by our packages.
EDIT: After the NACK of my 1st version in https://github.com/openwrt/luci/pull/2637#issuecomment-753945049 I did a complete rework, which only adds / changes some macros.
This new Version will not split the current luci.mk but allows nearly all defaults to be overwritten externally. This allows including the luci.mk in external Makefiles and allowing strong customization.
After the move of the freifunk-packages to it's own feed (https://github.com/openwrt/luci/commit/55cd0c4c6b572f5b35244927a738c46b7dd711b8) such "luci-common.mk" will make the freifunk-packages build again without recreating the Makefile or copying the common code over to this feed.
The luci-apps of the openwrt-routing feed might also  benefit from the common definition of the LuCI-menu and the srcdiet feature.
I send this PR in 2 individual commits for easy reviewing but finally all can be squashed into one single commit.
Further down @feckert suggested to just link to luci.mk from 3rd-party repos to benefit from the features of luci.mk, which I also did before creating this PR. Linking had several drawbacks:

inclusion of unneeded definitions e.g. LuciTranslation, luci-base (V1 removed this unneeded code for external repos; V2 keeps itas it'S just conditional code that is not causing problems)
some hardcoded defaults, that can't be changed, e.g. CATEGORY:=LuCI can't be changed (This has been made customizable in patch v2)
no way to define the URL or MAINTAINER variable of a Package, which is not required for LuCI, but might be for 3rd-party (This has been made customizable in patch v2)

hat is preventing other packages from using luci.mk directly?

One fact of suggesting this is making the Makefile more readable. When working on fixing the freifunk-packages, recently split off the luci-feed, it was really handy to get not distracted by these luci-only definitions like:

ifeq ($(PKG_NAME),luci-base)
define LuciTranslation
Having this separate luci-common.mk might help also others to reuse this definitions in other feeds.

@jow- using the unmodified luci.mk causes a lot of warnings:

make[2]: Entering directory '/mnt/hosts/build/src/openwrt/packages_sven/freifunk/modules/luci-mod-freifunk'
../../freifunk.mk:48: warning: overriding recipe for target '/mnt/hosts/build/src/openwrt/freifunk/lede/openwrt/staging_dir/target-arm_cortex-a9+vfpv3_musl_eabi/pkginfo/luci-mod-freifunk.default.install.luci-mod-freifunk'

I guess this is caused by calling the "Buildpackage" macro by the feeds Makefile and a 2nd time by luci.mk

I have also luci packages in my own feed.
To use luci.mk from my own feed directly I added a symlink to the main luci.mk file in the luci feed
An ls in your own feed in the toplevel directory would show luci.mk -> ../luci/luci.mk.
With this I could call luci.mk in my makefiles.

@SvenRoederer Does my last message solve your issue with luci.mk?

@feckert  linking / including the original luci.mk was also done by me. But as this file defines many things that are not needed in other feeds (e.g. LuciTranslation, package luci-base) I liked the idea of splitting this file. This also improves the readability when using in other feeds, as of less uninteresting definitions and receipts.

@feckert by just linking / including the original luci.mk I found no way to make a package appear outside of the LuCI-menu of menuconfig (caused by hardcoded CATEGORY:=LuCI of Package/$(PKG_NAME) section).
For our freifunk-firmware, we like to keep most of our packages in a separate menu-section.

From my side, the explanation sounds conclusive.
:+1:
But the last word has @jow-

in our freifunk-firmware we use the following code to locate and include the luci-common.mk file
LUCIMKFILE:=$(wildcard $(TOPDIR)/feeds/*/luci-generic.mk)

# verify that there is only one single file returned
ifneq (1,$(words $(LUCIMKFILE)))
ifeq (0,$(words $(LUCIMKFILE)))
$(error did not find luci.mk in any feed)
else
$(error found multiple luci.mk files in the feeds)
endif
else
#$(info found luci.mk at $(LUCIMKFILE))
endif

...
# place Makefile here
...

include $(LUCIMKFILE)

PR https://github.com/openwrt/luci/pull/3986 just takes the 1 commit ("reordering") of this PR into a separate one.

@jow- @feckert just found the time to push a non-conflicting and rebased version.
Can you comment on this and probably it can be considered to be included to OpenWrt-20.x .

@jow- Can you have a look on this PR?

@jow- What do you think on this? Can this be merged?

@jow- Do you also follow my idea as feckert in comment https://github.com/openwrt/luci/pull/2637#issuecomment-569507199 ?

@jow- Just rebased to reapply onto master. What about merging, to ease using LuCI-features in other feeds.

@jow- pinging again, after another month has passed by...
Just had a short search on github and found the some repos (excluding obvious forks), that would benefit from this change:

https://github.com/freifunk/openwrt-packages
https://github.com/Freifunk-Spalter/packages
https://github.com/kooiot/packages_ex
https://github.com/freifunk-berlin/firmware-packages
https://github.com/Freifunk-Potsdam/firmware-packages

based on @aparcar recent suggestion of moving "findrev" (http://lists.openwrt.org/pipermail/openwrt-devel/2021-January/033037.html) I pointed out this PR on the openwrt-devel ML (http://lists.openwrt.org/pipermail/openwrt-devel/2021-January/033040.html)

based on @aparcar recent suggestion of moving "findrev" (http://lists.openwrt.org/pipermail/openwrt-devel/2021-January/033037.html) I pointed out this PR on the openwrt-devel ML (http://lists.openwrt.org/pipermail/openwrt-devel/2021-January/033040.html)

I would like to keep one file only to simplify maintenance. The readability argument is not convincing enough for me.
As for the warnings / menu placement etc. I am fine with changing the macros as needed to avoid redefinitions and to allow overrides where needed.

I would like to keep one file only to simplify maintenance. The readability argument is not convincing enough for me.
As for the warnings / menu placement etc. I am fine with changing the macros as needed to avoid redefinitions and to allow overrides where needed.

@jow- can you review again? just pushed a way only based on some changed macros.
On the external repo some additional changes are required, to archive the same result as in my previous version, but that's not relevant here.

@jow- Can you comment

I haven't tested it. But at the first glance that looks ok to me.
The only thing that looks confusing to me is line 127 where you apparently introduce an external variable LUCI_MENU although we already have a bunch of LUCI_MENU.xxx variables.
LUCI_SUBMENU=$(if $(LUCI_MENU),$(LUCI_MENU),$(LUCI_SUBMENU_DEFAULT))
It would clarify things if you rename that LUCI_MENU to something like LUCI_NONSTANDARD_MENU or LUCI_EXTERNAL_MENU or LUCI_PRIVATE_MENU or something that makes it more obvious that this is external to OpenWrt and LuCI.

According to @hnyman renamed the variable to LUCI_SUBMENU_FORCED and added some comments.

@jow- any feedback would be appreciated as at least 2 feeds hoping to use this reworked luci.mk or having to look for alternatives.

Hi, I am Iranian. I have a problem with the M3 confing.
Sent from Yahoo Mail on Android
On چهارشنبه, می ۵, ۲۰۲۱ at ۲:۵۱, Sven @.***> wrote:
@jow- any feedback would be appreciated as at least 2 feeds hoping to use this reworked luci.mk or having to look for alternatives.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or unsubscribe.

@behzaddana What do you mean by "M3 config"?

@jow- did you have time to review?

@feckert can you verify this change with your own feed? I'm currently using this change in my personal builds of our firmware for the Freifunk- and Freifunk-Berlin feeds (only)

@Freifunk-Potsdam  @Freifunk-Spalter as you are also using my old "LuCI-include" code, you might also benefit from the improvements of this PR (esp. placing the packages outside of the LuCI menu, embedding your own Repo-URL).

@jow- just seen that OpenWrt-21.02-rc2 has been tagged. How are the chances to get this merged to master and backported to 21.02 before official release?

Looks pretty good to me, i don't see why this should be merged.

Looks pretty good to me, i don't see why this should be merged.

@aparcar I'm confused now ... "looks pretty good" as luci.mk is now, that this change should not be needed?

Oh snap I meant to say "shouldn't be merged"

Thanks for your patience, i hope we didn't discourage your from further contributions!

@aparcar indeed took some time, but it's volunteer work for all of us.
AS it's a non-breaking change, can this be cherry-picked into openwrt-21.02 too?

To github.com:openwrt/luci.git
74e04dde74..51da4d1561  openwrt-21.02 -> openwrt-21.02


sideMenu doesn't work after modal segue to a previous VC

New Issue Checklist

I have read the guidelines for contributing and I understand:

[x] My issue is happening in the latest version of SideMenu.
[x] My issue was not solved in the README.
[x] My issue can not be answered on stackoverflow.com.
[x] My issue is not a request for new functionality that I am unwilling to build and contribute with a pull request.
[] My issue is reproducible in the demo project.

Issue Description

initially the side menu works perfectly. However, if I perform a modal segue to a previous view controller and come back to the View controller with the side menu and press side menu again,

it doesn't show up as a side menu anymore.
this issue is reported on Xcode10-beta, for iphone 7 and 8.
By the way, regardless, thank you for this application

@seongminchoob does this happen in the Example Project? If so, please reopen, otherwise there is something odd about your implementation.


[VULNERABILITY] Regular Expression Denial of Service (Moment)

Summary
Versions of Moment <2.19.3 are vulnerable to a low severity regular expression denial of service vulnerability.
Possible Solution

Currently Chart.js installs<EMAIL_ADDRESS>Update Moment dependency to latest patched version (>=2.19.3).
Context

This will throw a warning when using nodesecurity (nsp check). I am currently using this in my CI pipeline.
Details: https://nodesecurity.io/advisories/532

Duplicate of https://github.com/chartjs/Chart.js/issues/5130


Add support for omitempty

This is for following issue,
https://github.com/jmoiron/sqlx/issues/279

@jmoiron ^

Is this going to be merged anytime?

Is there any plan to support "omitempty" for sqlx?

Hello, @ardan-bkennedy, and I recently stepped in to help maintain this project.
We are sorting the opened issues and pull requests and would like to know if you still NEED this merged.
If yes, then can you please rebase it?
Thank you for your contribution.


Keep narrow display from side scrolling comments

Remove "width: 100%" from the message_content class so it can reflow within the container will keep narrow displays from side scrolling on long URLs.

no worries this is perfect - I can dig in... the right way to do this is
probably via js (jquery).
On Thu, Feb 10, 2022 at 12:03 PM Omer Trajman @.***>
wrote:

I'm stymied. The chrome inspector links to zulip.css:1489 which includes
the following snippet (the width is set in the @meda
https://github.com/meda condition). That's not the raw source thought,
so I'm not sure where in the compile process it gets introduced. It may be
a boostrap flag, which I'm not familiar with.
.message_content {
line-height: 1.214;
min-height: 50px;
margin-left: 46px;
display: block;
position: relative;
overflow: hidden;
@media https://github.com/media (width < $sm_min) {
width: 100%;
}
@media https://github.com/media (width >= $sm_min) {
width: 105%;
}
—
Reply to this email directly, view it on GitHub
https://github.com/asah/zulip/issues/6#issuecomment-1035172089, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AABCFYQNLTRJWLQOBMRAVFDU2PVXXANCNFSM5OBJI56Q
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
You are receiving this because you commented.Message ID:
@.***>

and I see the same inspector width: 100% you do, and removing it seems to fix the problem for me as well:

confirmed fixed on my phone... how's it look for you?


[lit-ssr] Plan high-level APIs for SSR

Description
With the low-level building blocks for SSR in place, this task is to explore high-level APIs to expose. Ideas include:

Sandboxed rendering (user-specified modules loaded in VM sandbox with DOM shim):

renderTemplate(module: URL, templateFn: () => any, args: any[]): Iterator<string>
renderElement(module: URL, tagName: string, properties: {}, attributes: {}): {html: Iterator<string>, attributes: Iterator<string>}

Global rendering (DOM shim mixed into node global)

renderTemplate(module: URL, templateFn: () => any, args: any[]): Iterator<string>
renderElement(module: URL, tagName: string, properties: {}, attributes: {}): {html: Iterator<string>, attributes: Iterator<string>}
renderTemplateSync(...): string
renderElementSync(...): {html: string, attributes: {}}

Server middleware/plugins:

Render static HTML file
Render lit-html template from JS module
For servers:

koa / express
11ty
rollup plugin?
Web Dev Server?

Framework integrations:

React: createElement wrapper or Component factory
Angular: TBD
Vue: TBD

ElementRenderers

LitElementRenderer (done)
GenericElementRenderer - use jsdom or happy-dom?

Service Worker-Side Rendering: see https://github.com/lit/lit/issues/1983

Acceptance criteria and must have scope

Proof-of-concepts advanced for each possibility and/or API ruled out
Documented plan for APIs

Hi Al,
can we focus on this epic of work this sprint? would be good to see what we can focus on and make impact to triage out work to finish?

Closing as too broad. Tracking specific actions in more granular issues.


[SC-1341] Feature/fee collector

Codecov Report
Attention: Patch coverage is 65.21739% with 8 lines in your changes missing coverage. Please review.

Project coverage is 32.85%. Comparing base (b0e5a36) to head (2849d1a).
Report is 43 commits behind head on master.

Files with missing lines
Patch %
Lines

contracts/FeeCollector.sol
46.66%
8 Missing :warning:

Additional details and impacted files
@@            Coverage Diff             @@
##           master      #44      +/-   ##
==========================================
- Coverage   35.58%   32.85%   -2.73%
==========================================
  Files          12       16       +4
  Lines         267      350      +83
  Branches       42       58      +16
==========================================
+ Hits           95      115      +20
- Misses        172      235      +63

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Netflix button not working

HI ,
I have been trying to make this work for a couple of days ,i itried different syntax at no success
Here are my inputs i only have a problem with Netflix though( I have already tried two ways)the one listed below and this com.webos.app.netflix.None of them seems to work
"inputs": [
{
"appId": "com.webos.app.livetv",
"name": "Live TV"
},
{
"appId": "com.webos.app.hdmi1",
"name": "AppleTV"
},
{
"appId": "youtube.leanback.v4",
"name": "YouTube"
},
{
"appId": "com.webos.app.photovideo",
"name": "Photo Video"
},
{
"appId": "Netflix",
"name": "Netflix"
}
],

You need to find out the correct appId, and i am pretty sure that the appId is case sensitive...

Hi again,
Thanks for the help btw
This is what i get  from logs in homebridge when i run netflix  from the actual remote control
[3/22/2020, 11:08:47 AM] [Bedroom TV] webOS - app launched, current appId: netflix
Now i updated my code to be like this
{
"appId": "netflix",
"name": "Netflix"
}
but still it wont work?
It wont switch to netflix although  the restof the apps are fine(Youtube,appletv,livetv)

Seems like everything is fine. I am not using netflix so i have no idea what else might be wrong.


Ds 3447 orcid v2 integration

Addressing https://jira.duraspace.org/browse/DS-3447
Changes to the non-ORCID specific DSpace classes are minimal to support the new API
The ORCID specific classes have been replaced with the v2 API variant
The configuration has been updated to use the v2 API variant

Hi @benbosman : It looks like Travis CI is saying that Unit Tests are failing cause of a configuration related error:
java.lang.RuntimeException: Failed to startup the DSpace Service Manager: failure starting up spring service manager: Invalid bean definition with name 'OrcidSource' defined in file [/home/travis/build/DSpace/DSpace/dspace-api/target/testing/dspace/config/spring/api/orcid-authority-services.xml]: Could not resolve placeholder 'orcid.api.url' in string value "${orcid.api.url}"; nested exception is java.lang.IllegalArgumentException: Could not resolve placeholder 'orcid.api.url' in string value "${orcid.api.url}"

It sounds to me like Spring it trying to load the new ORCID classes, and failing cause of a missing orcid.api.url configuration -- but, that's just an initial guess, I'll have to look closer at the code to be certain.
Here's where the error first appears in the Travis CI output: https://travis-ci.org/DSpace/DSpace/builds/369203824#L3572

Closing in favor of #2039 (which cherry-picks from this PR, but is updated to use https://github.com/DSpace/orcid-jaxb-api/pull/1).  PR#2039 now seems to be minimally working.  That said, some more testing/feedback would be welcome to ensure we didn't miss any functionality!


fix: escape revision range

The shell command to query the tags accepts user input since version "1.3.0" but It doesn't escaped it; e.g. getList({rev: ‘HEAD; rm -rf /’}) would query the tags from the current branch and then try to remove everything.
Tagged Version now spawns a git child process instead of executing a shell command, and let child-process-promise escape all arguments.

Coverage remained the same at 100.0% when pulling 6249816b647b0ae8ef10616d3c2470ee689b8128 on dinoboff:fix/escape-rev into 13db0b95928daac282a050abc8929fa0e8e4a78e on ikhemissi:master.

Coverage remained the same at 100.0% when pulling 6249816b647b0ae8ef10616d3c2470ee689b8128 on dinoboff:fix/escape-rev into 13db0b95928daac282a050abc8929fa0e8e4a78e on ikhemissi:master.

Coverage remained the same at 100.0% when pulling 13df94ee7d103ed141c5765ff8e3e851457ec3eb on dinoboff:fix/escape-rev into 13db0b95928daac282a050abc8929fa0e8e4a78e on ikhemissi:master.

Coverage remained the same at 100.0% when pulling 0505aeddcc727b670d408f1ebfa71825d67ea96d on dinoboff:fix/escape-rev into 13db0b95928daac282a050abc8929fa0e8e4a78e on ikhemissi:master.

Fixed a regression, 1.3.0 support rev like "rev1 ^rev2"; it would be breaking change to pass "rev1 ^rev2" as one argument
@ikhemissi it need to be rebase before merging (the two commits need to be merged.

Coverage remained the same at 100.0% when pulling 1de66e02a2fe5661f2b422796ff40565913d7ede on dinoboff:fix/escape-rev into 13db0b95928daac282a050abc8929fa0e8e4a78e on ikhemissi:master.

ps: rebased.


OSError

I have this problem when I run the code(cnn/train_search.py). If you could help me solve this, I appreciate. It usually apears after some epochs(28 for me)
Traceback (most recent call last):
File "/home/tie.xu/anaconda3/envs/sgas/lib/python3.6/multiprocessing/util.py", line 262, in _run_finalizers
finalizer()
File "/home/tie.xu/anaconda3/envs/sgas/lib/python3.6/multiprocessing/util.py", line 186, in call
res = self._callback(*self._args, **self._kwargs)
File "/home/tie.xu/anaconda3/envs/sgas/lib/python3.6/shutil.py", line 486, in rmtree
_rmtree_safe_fd(fd, path, onerror)
File "/home/tie.xu/anaconda3/envs/sgas/lib/python3.6/shutil.py", line 444, in _rmtree_safe_fd
onerror(os.unlink, fullname, sys.exc_info())
File "/home/tie.xu/anaconda3/envs/sgas/lib/python3.6/shutil.py", line 442, in _rmtree_safe_fd
os.unlink(name, dir_fd=topfd)
OSError: [Errno 16] Device or resource busy: '.nfs000000001835000600002bd7'
The info appears many times when I run the code!

Hi @Sigmafye. I think the error occurs when you are trying to delete opened files. A similar issue is found here: https://github.com/tensorpack/tensorpack/issues/644.

Hi @lightaime , thinks for your excellent job and instant reply, I've solved that problem. But new problem appears, it confused me a lot when I run the gcn_graph/train_search.py
File "train_search.py", line 313, in
main()
File "train_search.py", line 177, in main
train_dataset = GeoData.PPI(os.path.join(args.data, 'ppi'), split='train')
File "/home/tie.xu/anaconda3/envs/sgas/lib/python3.6/site-packages/torch_geometric/datasets/ppi.py", line 55, in init
self.data, self.slices = torch.load(self.processed_paths[0])
File "/home/tie.xu/anaconda3/envs/sgas/lib/python3.6/site-packages/torch/serialization.py", line 529, in load
return _legacy_load(opened_file, map_location, pickle_module, **pickle_load_args)
File "/home/tie.xu/anaconda3/envs/sgas/lib/python3.6/site-packages/torch/serialization.py", line 702, in _legacy_load
result = unpickler.load()
ModuleNotFoundError: No module named 'torch_geometric.data.storage'
Thinks!


Text just appears black

When i try to put a Lab Renderer material onto UI Text, it just turns black no matter what color the material is.  Does anyone have a working example they could share?
Thanks!

This may be a bug:  Valve lights do not illuminate UI text that is placed on objects in world.  Is this an incompatibility with the way Canvas are rendered?


No module named 'gymnasium.envs.box2d'

Hello! I'm trying to use Nuitka with Gymnasium: https://gymnasium.farama.org/
Environment:

Python: 3.10.11 (tags/v3.10.11:7d4cc5a, Apr  5 2023, 00:38:17) [MSC v.1929 64 bit (AMD64)]
Python: 3.11.0 (main, Oct 24 2022, 18:26:48) [MSC v.1933 64 bit (AMD64)]
Flavor: CPython Official
OS: Windows
Arch: x86_64
WindowsRelease: 10
Nuitka: 1.6rc8
Nuitka: 1.5.7

Installation:
pip, venv
Dependencies:
box2d-py==2.3.5
cloudpickle==2.2.1
Farama-Notifications==0.0.4
gymnasium==0.28.1
jax-jumpy==1.0.0
Nuitka==1.5.7
numpy==1.24.3
ordered-set==4.1.0
pygame==2.1.3
pypiwin32==223
pywin32==306
swig==4.1.1
typing_extensions==4.5.0
zstandard==0.21.0

Sample:
import gymnasium as gym

env = gym.make("LunarLander-v2", render_mode="human")
observation, info = env.reset(seed=42)
for _ in range(1000):
    action = env.action_space.sample()  # this is where you would insert your policy
    observation, reward, terminated, truncated, info = env.step(action)

    if terminated or truncated:
        observation, info = env.reset()
env.close()

Command:
nuitka --follow-imports test.py
Error:
Traceback (most recent call last):
  File "test.py", line 3, in <module>
    env = gym.make("LunarLander-v2", render_mode="human")
  File "venv\lib\site-packages\gymnasium\envs\registration.py", line 755, in make
    env_creator = load_env_creator(env_spec.entry_point)
  File "venv\lib\site-packages\gymnasium\envs\registration.py", line 553, in load_env_creator
    mod = importlib.import_module(mod_name)
  File "Python310\lib\importlib\__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1050, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1027, in _find_and_load
  File "<frozen importlib._bootstrap>", line 992, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
  File "<frozen importlib._bootstrap>", line 1050, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1027, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1004, in _find_and_load_unlocked
ModuleNotFoundError: No module named 'gymnasium.envs.box2d'

Log:
Nuitka-Plugins:INFO: pkg-resources: Injecting post-module load code for module 'pkg_resources':
Nuitka-Plugins:INFO: pkg-resources:     Registering Nuitka loader with "pkg_resources".
Nuitka-Plugins:INFO: multiprocessing: Injecting pre-module load code for module 'multiprocessing':
Nuitka-Plugins:INFO: multiprocessing:     Monkey patching "multiprocessing" load environment.
Nuitka-Plugins:INFO: multiprocessing: Injecting post-module load code for module 'multiprocessing':
Nuitka-Plugins:INFO: multiprocessing:     Monkey patching "multiprocessing" for compiled methods.
Nuitka:INFO: Completed Python level compilation and optimization.
Nuitka:INFO: Generating source code for C backend compiler.
Nuitka:INFO: Running data composer tool for optimal constant value handling.
Nuitka:INFO: Running C compilation via Scons.
Nuitka-Scons:INFO: Backend C compiler: cl (cl 14.2).
Nuitka-Scons:INFO: Backend linking program with 195 files (no progress information available).
Nuitka-Scons:INFO: Compiled 195 C files using clcache with 124 cache hits and 71 cache misses.
Nuitka:INFO: Keeping build directory 'test.build'.
Nuitka:INFO: Successfully created 'test.exe'.
Nuitka:INFO: Execute it by launching 'test.cmd', the batch file needs to set environment.

It seems like gymnasium.envs.box2d was dynamically imported.
nuitka --follow-imports --include-module=gymnasium.envs.box2d test.py did the trick! Thank you!

All it ever would have taken is to use --include-module but since backends are taken from the models used, doing it statically would have been a bad idea. So I added a non-deployment mode hook that makes it tell you to do that on whatever backend module is being attempted to be used and not found. This should make it easier to use for noobs.

Part of the 1.9.2 hotfix release I just made.


MaxListenersExceededWarning

Heya!
The warnings from #1 are still present.

Bump, this is still an issue

I am fixing this problem
https://github.com/mysticatea/vue-eslint-parser/pull/44

I am still seeing this problem in v0.0.31

@charliethomason
It is because eslint-plugin-vue used by vue-eslint-parser is old.
I am also creating a PR for this.
https://github.com/vuejs/eslint-plugin-vue/pull/895


Fix cmd buffer/pool leak in vkcubepp

Fixes #795

CI Vulkan-Tools build queued with queue ID 7041.

CI Vulkan-Tools build queued with queue ID 7041.

CI Vulkan-Tools build # 1011 running.

CI Vulkan-Tools build # 1011 passed.


[Code coverage] Unable to open files in codecov

Problem:
https://codecov.freshdesk.com/support/solutions/articles/43000593943-files-not-showing-in-codecov-fixing-paths-

The above suggestion related to relative path is unrelated. Tested in https://github.com/google/ground-android/pull/1025
Needs more investigation

@shobhitagarwal1612 Is this still relevant?

Yes. This is still valid

@shobhitagarwal1612 Could you PTAL or close?

Ok. I'll take another pass at this one.


Removed references to CosmosDB memory connector

CosmosDB connector for Memory Store has been removed and the current docs include broken links and stale information.
PR on SK repo

@dluc @glahaye
Hi both, is it possible for a review on this, the current docs are a little misleading.

@JimPaine Thanks for this. Yes, the documentation had not been updated as it should have.


[WIP] Add connect-to flag

Background
This implement the feature requested in https://github.com/tsenart/vegeta/issues/575
Checklist

[X] Git commit messages conform to community standards.
[X] Each Git commit represents meaningful milestones or atomic units of work.
[X] Changed or added code is covered by appropriate tests.

this would be pretty handy

There is quite a difference in performance due to DNS cache. I need this feature too!

Thanks for the contribution. I think I'd rather add the capability of Vegeta caching DNS responses for a configurable duration instead of this. It's my understand that would also solve your problem of overloading your corporate DNS server.

I still need this; curl doesn't make us set up a special dns server, vegeta shouldn't, either, IMHO.


Add debug flag to arm deployment command

There are some ARM deployment errors that do not surface adequate messages for debugging in the default error output. For example issues related to template validation (that can be a result of account quotas, invalid names, etc.):
WARNING: Attempt 1 failed: Exception calling "Invoke" with "0" argument(s): "The running command stopped because the preference variable "ErrorActionPreference" or common parameter is set to Stop:
07:13:02 - Error: Code=InvalidTemplateDeployment; Message=The template deployment 'benbp-foobar' is not valid according to the validation procedure. The tracking id is '182f1217-fa54-4fa8-bff3-ef74605e2fe9'. See inner errors for details.

By updating the $DebugPreference for the New-AzResourceGroupDeployment command, we print the inner error messages without having to plug correlation IDs into the ARM internal kusto to get the actual error.
DEBUG: ============================ HTTP RESPONSE ============================

Status Code:
BadRequest

Headers:
Cache-Control                 : no-cache
Pragma                        : no-cache
x-ms-failure-cause            : gateway
x-ms-ratelimit-remaining-subscription-writes: 1199
x-ms-request-id               : 11a8a92c-21ba-43dc-b504-84b92524c71b
x-ms-correlation-request-id   : 11a8a92c-21ba-43dc-b504-84b92524c71b
x-ms-routing-request-id       : EASTUS:20201110T225406Z:11a8a92c-21ba-43dc-b504-84b92524c71b
Strict-Transport-Security     : max-age=31536000; includeSubDomains
X-Content-Type-Options        : nosniff
Date                          : Tue, 10 Nov 2020 22:54:06 GMT

Body:
{
  "error": {
    "code": "InvalidTemplateDeployment",
    "message": "The template deployment 'benbp-foobar' is not valid according to the validation procedure. The tracking id is '11a8a92c-21ba-43dc-b504-84b92524c71b'. See inner errors for details.",
    "details": [
      {
        "code": "PreflightValidationCheckFailed",
        "message": "Preflight validation failed. Please refer to the details for the specific errors.",
        "details": [
          {
            "code": "AccountNameInvalid",
            "target": "benbp-basenameprim",
            "message": "benbp-basenameprim is not a valid storage account name. Storage account name must be between 3 and 24 characters in length and use numbers and lower-case letters only."
          },

An example full log with failures can be found here: https://dev.azure.com/azure-sdk/internal/_build/results?buildId=614171&view=logs&j=011e1ec8-6569-5e69-4f06-baf193d1351e&t=5431112d-2b61-5a5f-7042-ef698f761043

I could also have used Test-AzResourceGroupDeployment, but I like that this prints out the whole ARM template too for debugging (with secret values removed).

The following pipelines have been queued for testing:java - templatejs - templatenet - templatepython - template You can sign off on the approval gate to test the release stage of each pipeline. See eng/common workflow

The following pipelines have been queued for testing:java - templatejs - templatenet - templatepython - template You can sign off on the approval gate to test the release stage of each pipeline. See eng/common workflow

The following pipelines have been queued for testing:java - templatejs - templatenet - templatepython - template You can sign off on the approval gate to test the release stage of each pipeline. See eng/common workflow

This is definitely an improvement does it also make sense to provide a link to the portal where we can see this deployment failure? Or is all that failure information included in the error message?

This is definitely an improvement does it also make sense to provide a link to the portal where we can see this deployment failure? Or is all that failure information included in the error message?

All the failure information is included in the error, based on comparing what gets dumped out vs. what shows up in properties in the ARM kusto log. The portal activity log actually DOESN'T provide this level of information, frustratingly enough. While activity logs are queryable via a command, I couldn't find a way to parameterize the kusto queries by URL, but we could pass a link to some of the wiki debugging steps I added at https://dev.azure.com/azure-sdk/internal/_wiki/wikis/internal.wiki/51/Testing-Guidelines?anchor=debugging-live-tests ?

Yeah maybe that link to more info would be good. However we should set up an aka.ms link if we do that.

Yeah maybe that link to more info would be good. However we should set up an aka.ms link if we do that.

@weshaggard https://github.com/Azure/azure-sdk-tools/pull/1202


feat: add Privacy settings to Token model

Description

Add privacy settings to Token model for Classification, Impact Level and Restriction Policy
Remove explicit decrypt endpoints
Remove request parameters for bool Decrypt and List<string> DecryptTypes
Remove Mask property from Token

Testing required outside of automated testing?

[X] Not Applicable

Screenshots (if appropriate):

[X] Not Applicable

Rollback / Rollforward Procedure

[X] Roll Forward
[ ] Roll Back

Reviewer Checklist

[ ] Description of Change
[ ] Description of outside testing if applicable.
[ ] Description of Roll Forward / Backward Procedure
[ ] Documentation updated for Change

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

v1.19.0
GitHub release

Your semantic-release bot :package::rocket:


Unknown error: local variable 'tasks_config' referenced before assignment

i don khow why author do like that/// last commit where break deletion

I still have this error and TASKs part of bot doesn't work
Any solutions please?

I still have this error and TASKs part of bot doesn't work Any solutions please? Unknown error: cannot access local variable 'tasks_config' where it is not associated with a value

Found that is assigned in PROMO function! When disabling promo function causes TASKs to fail.
Solution:
add this to tapper.py line 470:
tasks_config = version_config['tasks']


flutter screen added to make rt connection with web socket

Purpose

This flutter screen is designed to help the users to make real time connection through web socket available in original repo.

Does this introduce a breaking change?

[x] Yes
[ ] No

Pull Request Type
What kind of change does this Pull Request introduce?

[ ] Bugfix
[x] Feature
[ ] Code style update (formatting, local variables)
[ ] Refactoring (no functional changes, no api changes)
[ ] Documentation content changes
[ ] Other... Please describe:

How to Test

Get the code

git clone [repo-address](https://github.com/Huzaifa1910/flutter-aoai-realtime-connection.git)
cd "flutter-aoai-realtime-connection"
git checkout main
flutter pub get
flutter run

Test the code

What to Check
Verify that the following are valid

Screen will look like this

Verify that in android/app/src/main/AndroidManifest.xml you can see the following permissions

Other Information

if your start recording button does not work or show any error, go to settings --> apps --> application, give permissions.

@microsoft-github-policy-service agree [company="Microsoft Learn Student Ambassadors"]

@microsoft-github-policy-service agree


Security Contact

Hi, could you please create a new draft security advisory and
invite me to it?
Any other private communication channel would also be fine.
I've found a security problem and also have a fix ready for it.

@carlosthe19916 friendly ping?

@project-openubl ping.


Add Check Functionality

Was asked by some people, implemented it :)

👍

The function was remodeled for clarity purposes. Please check it again and tell me if everything's OK.

Thank you for your contribution, added in the rewrite branch


Chain Sync Client: rate limiting

The Chain Sync client can be exposed to adversarial behaviour:

An upstream node is rapidly switching forks, e.g., producing multiple blocks
for the same slot. A reliable upstream node never produces more than one
block per slot.

Multiple upstream nodes are collaborating in adversarial behaviour by each
producing a block for the same slot, where each block has a different hot
key (with different certificate numbers), but all hot keys are signed by the
same (compromised) cold key.
When this happens with two upstream nodes, there is no outright adversarial
behaviour, as the block signed with the hot key with the higher certificate
number "wins". This can happen when the hot key (with the lower certificate
number) was compromised and is now used by some attacker (the node sending
the first block). The reliable node then produced a new hot key with an
incremented certificate number and sent the second block.
However, when a third block is produced for the same slot with a different
hot key signed by the same cold key, there is adversarial behaviour, as no
reliable node would produce multiple new hot keys and sign blocks in the
same slot.

The Chain Sync client must perform some form of rate limiting, e.g., by
delaying the interaction with an adversarial node or by disconnecting from it
(by throwing a specific exception). There will need to be some state per
upstream node to detect this, but also some state shared among all upstream
nodes.
We should not reject these blocks based on the order in which we happen to
receive them, as this could destroy consensus. It might be possible to rule
out this adversarial behaviour at the consensus level (only one replacement
block allowed, all further blocks must be regarded as invalid) but this should
be properly discussed at the level of the consensus protocol with the
researchers.

While item 2 is Shelley-specific, item 1 also applies to Byron. So I'm moving this to Byron.

Some thoughts:

Generating new keys is relevant, because in order for an upstream node to keep convincing our node to switch to a new chain, that chain would either have to be longer and longer (and so the malicious node would have to be able to produce lots of blocks), but if the malicious node is simply creating new keys all the time, he can cause lots of rollbacks even if he only has the right to produce a block in one slot.
Even if we rate limit individual upstream peers, we might still exceed a "global rate" if peers coordinate, though this depends on both (a) how many upstream peers we have at any given time and (b) how quickly the network layer allows switching between peers.
We have to be very careful: if we do impose a global rate limit, then malicious nodes could intentionally cause us to hit that limit, and thereby stop us from adopting a genuine fork. Conclusion: a global rate limit is not a good idea, it's exploitable by itself.

Conjecture: the number of upstream peers that we connect to at any one point is small; moreover, the rate of change of upstream peers is low. This means that rate limiting individual peers suffices.
If we rate limit each peer to one switch per second, the number of blocks any upstream peer can add to the volatile database is
  # blocks upstream peer can create
* # seconds for k blocks [roughly: indirect effect, tip of vol DB makes it to imm DB, triggering GC in vol DB]

For Praos, worst case, k/f  seconds, i.e. 43,200 seconds. If 1 MB per block, that's 43 GB...
An exponential back-off might be better. Question: is it true that for normal peers, the probability of having to do a switch to a fork is exponentially decreasing with the number of consecutive switches?

Idea: only rate limit switches to forks of equal length.
Must maintain a bit of state: remember the time of the rollback; if more blocks get applied after the rollback than the length of the rollback, scrap that time. If not, on the next rollback, we check the time to see if sufficient time has passed (or just delay until it has).

Edsko and I agree that "only rate-limit rollbacks at the same BlockNo" sounds right. If only to minimize how much behavior we're changing. We still need to confirm that, though, which means we need to do the due diligence to dig up some of the only-loosely remembered motivations for the rate-limit. Searching Issues, commit messages, Consensus Report etc. Once we've located those, we can confirm that only limiting switches between equal-length forks is indeed sufficient.


📝 Update includes for docs/tutorial/connect/create-connected-rows.md

📝 Update includes for docs/tutorial/connect/create-connected-rows.md

Thanks for the effort! This was covered in another PR, so I'll close this one now. :coffee: :cake:


Expected performance

Hello!
Thanks for this awesome work! I can't wait to try your SPADE experiments myself. I wonder did you use vanilla PyTorch to implement this loss or you used any specific library? Does it have significant impact on training performance?

Hi @s1ddok, thanks a lot for your interest in our work! We will release our code and all the experiment implementations very soon when the time is suitable. ;-)
Thanks for your patience and understanding!~

The code is now released. Thanks. :-)


Release 0.1.1

Hello @celanthe,
I created an initial release, which makes bpmn-driven-testing available for early adopters.
Best regards,
Gabor

Hi @gclaussn! I've gone ahead and released the artifact to Maven Central! It should be available in a few hours! :)


Face detection

Face detection and extraction works 😎
App builds without crashing -- 125MB file 👌  not too big.
Currently built app doesn't seem extract photos because the weights folder needs to be moved elsewhere within the installed directory (e.g. Program Files/Video Hub App 2/...
I'll update the branch later today once I fix that up.
Will close #341
🚀 Will release version 2.2.0 once this feature is done 🚀

I played around with this and I think I've decided that a face filmstrip is still a good idea.
I'm not sure who would use it, but I suspect there may be people who would want to see a filmstrip of just faces.
The way the app is set up, it can consume a filmstrip very easily, so very little code will need to be changed.
I am uneasy about extracting each face as its own file, because rather than 1 strip per file, we may have as many as 100 image files (imagine a long video with many screens extracted and many faces per screen).
The upshot is very little code will need to change:

Create 2 (two!) new folders: faces and facestrip (think film-strip / photo booth strip)

The faces folder will have the first face screenshot (for faster loading when browsing)
the facestrip folder will have all faces in a row (for easy scrolling through them)

New mode that can be toggled is "face mode" which will turn every view into a face view!

the faced mode will make the thumbnail and detail view half-width.
text and clip views will be unaffected

I'm pretty sure this will work out well -- I'll try to get a rough draft by end of Sunday 🤞

Thinking forward to potential(!) face recognition functionality:
⚠ first off -- facial recognition will be tricky both, in coding and in getting a good user interface. It might not happen, happen in stages, or only partially ⚠
I imagine the primary goal is to be able to ask the question "find all videos that have this person" (even if you have never manually entered the person's name anywhere).
The library I'm using does facial recognition by generating a vector with 128 values:
https://github.com/justadudewhohacks/face-api.js/#face-recognition-model
So (as far as I can tell) the app would manually have to have a database of vectors to compare against (maybe support file inside vha- folder). It would also have to cluster very-similar faces into "same person". We may want to somehow let users assign names to these found faces. It would be excellent if in the case where filenames contain a person's name, it was easy to confirm that the face matches (no need to manually type in the name).
The process might be something like this:

Generate vectors for every found face (store an array of vectors for each video)
Cluster faces per video (now each video has a small set of face vectors, each representing a unique person who may appear more than once in the video).

possibly make every face representation vector have a weight (of how many vectors were averaged together to form it -- so that when we average another instance, it updates the average proportionally)

Each video's "facestrip" will have a corresponding list matching face vector to person

e.g. [1, 1, 1, 2, 1, 2, 3] for a facestrip with 7 faces found (3 unique people).

Cluster faces across all videos, generating objects that contain the average vector for a person, and the list of all the videos they are found in.

At this point, we can drop any face (even a photo from the computer) and the app will find the face(s) that are most-likely matches to it (we manually find the closest match(es) to the picked photo).
All this is tricky, and we'll have to think through all the cross-linking, so we can update things in the future (add new people, merge people and have all the references update automatically, without bugs).
Lots to think through!
The important part (decision at this point) is whether having a facestrip will make things harder than if we have individual photos; I think it will not.

It would be a great bonus if the resulting set of identified people (map from vector to name) can be stored separately / exported. This way, there will not be a need to re-label the same individuals in another hub!
The user interface for tagging people, merging faces that are of the same person, and telling the app that some faces don't belong is going to be very challenging 😓

I am hoping the face recognition process may avoid having to do clustering of any kind. The comment above previous one might not be describing the process we'll end up using.
This routine works only if it's sensible to (experimentally find and) use some sort of a rough cutoff for what face is "close-enough" that the app considers the photo to be of the same person as found before.
Perhaps, we will simply go through each video, one-at-a-time, following some version of this routine:

Within each facestrip, go through each face and compare to all face-vectors found in this filmstrip; either

create a new "person" with their own vector representation (add to this temporary list of face-vectors), or
average the new found face with the closest vector

After every facestrip has been thus processed, compare the resulting persons with the global list of persons. Either:

add this person to the new global list (if no face there is close-enough)

create a screenshot with the person's id as the file-name in the persons folder

remember which person from the global list was in this video

Update the clip with the new information (e.g. "persons": [5, 27, 40] indicating which people from the global list are in this video

At this point we'll have a new folder persons with a growing number of images, all named corresponding to persons in the global list (e.g. 5.jpg).
Eventually the user will be able to add names to each 'person' and merge people (by naming them the same name perhaps). When merging, we will just go through the ImageElement list and update the "persons" array with new number (e.g. 40 -> 5).
The global person list will perhaps have a shape like this:
interface Person: {
  vector: number[]; // 128 number representation of the face
  weight: number; // number of faces merged into this person, so new merges adjust vector proportionally
  videos: string[]; // array of hashes pointing to videos
  id: number; // the unique id given upon creation, corresponds to the .jpg file name
}

This way it would be easy to find all videos with a particular person -- just show all the videos in the 'videos' array.

I feel like this is getting a little over complicated - we should keep it as simple as possible. 😄
I strongly suggest we do one of these rather than storing a filmstrip .jpg file (note this is about file storage, not the face-filmstrip feature - I rather like this feature):

Store each face found as it's own seperate jpg file.

I have two reasons for this:

This allows the greatest flexibility for the future - we're really going to hurt ourselves if we add more face related features (eg. recognition) if we tie faces to the videos their from. (Imagine loading in 20-screenshots-sized files to grab just one face, 100+ times).
The resulting file sizes will be smaller - with a filmstrip, you upscale faces so they're all uniform size, which is wasted space. Storing small faces (which they usually are) at their small size, just with the correct ratio will save on space considerably.

And lastly, along with either of the options above, I suggest we store all facial recognition data to disk, with the corresponding face (database, files or otherwise).
I know it might seem wasteful, but I am 100% for thinking ahead for the future, and this way, any new features will already have the facial data computed from the first extraction. There's no point filtering the data now, if we don't know exactly what we'll want in the future. And 128 numbers isn't exactly a lot of data these days... 🤣
Imagine we implement facial recognition using algorithm X, but then realise that algoritm Y is vastly superior in results and runtime. If we have stored all the data we extracted the first time, it's just a simple reprocessing of this data (which would take seconds), rather than needing to increment a major version number and remove backwards compatibility.
I know it's more difficult to do, but implementing your feature by stitching together X face jpgs will be much better in the long run, rather than deciding a format now that is restrictive, and either hacking solutions later, or risking losing compatibility.
Hope that makes sense! 😄 👍

Actually, now that I think about it some more, why don't we just store the face coordinates for each for each filmstrip, and the recognition data? 🤔
For now, you could just have a class which stores:
class Face {
    videoHash: string;
    faceOrds: (x,y,w,h);
    faceData: number[128];
}

Then it should be easy to implement your feature, and we don't have to store any new images! 💡
Just for each filmstrip in "face mode" - when you scroll across the frame, just use CSS-magic to zoom into each face, like we do along the X axis to view each screenshot?
And to find the faces for each filmstrip, just filter the above class by video hash, and order the resulting faces by X value, followed Y value! 😄

Thank you for your thoughts 🤝
Thank you for clarifying which features we are discussing. The facestrip idea is easy to release because I already have most of the the code done. What you were correctly pointing out is we don't want to get into a dead-end and have to undo things for the face recognition feature.
What I describe above (in the last comment) is an attempt to spell out the details of how the code would run. I'm currently unsure how face recognition would work (seems like the library we use only gives us vectors per face, and we need to compare the Euclidean distance to check if the face is similar to anything in our database). So we'll need some 'database'.
Face coordinates (face vectors) need to be extracted only once, and once we know which person is in the video, we can just store the person's id in the ImageElement -- else we'll have a ton of duplicated information, and the .vha2 file will balloon up with a lot of data. I'm pretty sure we don't want vectors inside the .vha file 🤔
I feel like once a person exists (we have face coordinates for the person), when in an appropriate view (perhaps Details View?) each video will have a headshot of all people found in the video.
Different videos will have the same headshot shown (so each person will have a single .jpg assigned to them). So we don't need to have a .jpg for every face found -- only one per person.
I'm unsure (will run experiments today) how quickly we can compare a face against, say, 1,000 'persons' ... this may change how I think about the problem.
I'll write more later (having lunch now), I know I've not responded to everything you said yet 👍

Important note: looks like if we just do face detection, many faces get detected, but if we run the same script but ask the face-api.js library to also generated the 128-number face vector, it detects fewer faces (probably because they are not aligned well-enough or something).
This may mean that we might want to do two passes -- one for just detecting faces for a good filmstrip, and a second pass for just facial recognition.
I have the code now that will extract the largest image for the single-face preview for each video file too: https://github.com/whyboris/extract-faces-node/pull/2
I'm still experimenting to see how well simple vector comparison works (speed etc -- may need to change my approach to the whole feature depending on how things go).
I'll keep everyone posted here 🙆♂

There's a chance that face recognition doesn't work as well as hoped ... I'll put in more work to see if I just implemented it poorly ... but so far my experiment generating face vectors failed: I get vectors of the same person from several screenshots, but the Euclidean distance between the vectors is about the same as distance between these and different people 😖
I'll work with it more this week and report back: https://github.com/whyboris/extract-faces-node/pull/2

Very relevant reading: https://medium.com/@gjovanov/realtime-face-recognition-de1ee3076878
Article is about face recognition with face-api.js and code lives here: https://github.com/gjovanov/facer

I have some experience with face recognition so I'm sharing my thoughts hoping they will be of use.

This routine works only if it's sensible to (experimentally find and) use some sort of a rough cutoff for what face is "close-enough" that the app considers the photo to be of the same person as found before.

In my experiments this is possible. I normally use a threshold of 0.6 for Euclidean distance (so distance < 0.6 means the face matches). This is also the default in the well known Python face_detection package (https://face-recognition.readthedocs.io/en/latest/_modules/face_recognition/api.html#compare_faces) which I think uses the exact same model for generating the embeddings.

Perhaps, we will simply go through each video, one-at-a-time, following some version of this routine:

Within each facestrip, go through each face and compare to all face-vectors found in this filmstrip; either

create a new "person" with their own vector representation (add to this temporary list of face-vectors), or
average the new found face with the closest vector

I think averaging the embeddings might be a bad idea. Since a face can have many different instances due to lighting, position, rotation, wearing glasses vs not wearing glasses, etc, it's possible for the same face to have widely different embeddings. I would therefore recommend saving all the embeddings separately so it's easier to find matches. A downside is the additional processing required when matching, but calculating Euclidean distance is not that costly.
In my face recognition applications I save every embedding and when a new image is processed I compare the extracted embeddings with every embedding in the database (no performance issues for ~2000 embeddings, but YMMV). For videos the amount of embeddings is of course a lot bigger so maybe in the end you have to cluster the embeddings somehow for performance reasons. Still, I would then refrain from clustering to a single embedding per person, but instead save multiple.
Looking forward to seeing more progress on this! Would be amazing to filter videos by person!

Thank you Steven!
I came across the 0.6 threshold an an article by the author of face-api.js - it's good to know it's a good default number to use.
I wish averaging embedding was a good idea -- in my short experiment, I made pairwise comparisons of 5 photos of the same person from a video frames I extracted (10 total comparisons) and only 3 were below 0.6 threshold. When I averaged two of the embeddings that were below 0.6 threshold and compared the average to all the other images -- they were all below 0.6 😅
I compared the average of one person's face to an average of another person's face, they were different.
I'll experiment with this some more when I have time to see how much mileage I'll get out of it, even against your warning 😅
In case of 'averaging' photos, when you do that with different people, you'll get an 'average person' , but I'm hoping that averaging vectors does something different 🤞 especially that I'm aiming to average across the same person 🤷♂
All feedback/comments/advice is very welcome 🙇
My current experiment continues here: https://github.com/whyboris/extract-faces-node/pull/2

I've not forgotten about this feature -- I just want to finish releasing version 3.0.0 -- see here #456 🎉

May as well note here: the vectorizations of faces will be stored in a separate JSON -- not inside what is currently the.vha2 file (containing all the metadata about videos). This will be most convenient to release as VHA v4.0.0 and update the file to .vha4 - making it a .zip format (but renamed extension) which will contain two files: the usual metadata (same as .vha2 but with references to faces as extra field) and the new JSON with all the vectors 👍

🤞 Hoping to resume this feature in 2024 🤞


Provide a demo app

I am asking for help & more user-friendly guide 😄
I am new to single-spa. I followed this guide here created a app.js:
//app1.js
let domEl;
export function bootstrap(props) {
    return Promise
        .resolve()
        .then(() => {
            domEl = document.createElement('div');
            domEl.id = 'app1';
            document.body.appendChild(domEl);
        });
}
export function mount(props) {
    return Promise
        .resolve()
        .then(() => {
            // This is where you would normally use a framework to mount some ui to the dom. See https://single-spa.js.org/docs/ecosystem.html.
            domEl.textContent = 'App 1 is mounted!'
        });
}
export function unmount(props) {
    return Promise
        .resolve()
        .then(() => {
            // This is normally where you would tell the framework to unmount the ui from the dom. See https://single-spa.js.org/docs/ecosystem.html
            domEl.textContent = '';
        })
}

Then I found this playground, I thought the code above would works, so I served it from http://localhost:8080/app1.js:

When I click the start button, it failed at step 2:

SyntaxError: Unexpected token 'export'

I know this question may seems silly, but I think someone else who are new to single-spa and excited about it willing to have a try might have the same question as I do. And I found in order to play around with this playground, we need to:

Manually create  a js file
Serves it using a http server
Add CORS Support ( The browser will block the request to http://localhost:8080

It would be nice if you can provide some sample code, so that we can start enjoy the power of single-spa asap !
Thanks.

Hi @liaochangjiang - here are some good examples. https://single-spa.js.org/docs/examples. I don't have time right now to look at this issue in more depth, but will look at it later.

You could also use create-single-spa to generate a starter application.

Closing this due to inactivity. Feel free to reopen or comment further.


Add OAuth functionality (currently iOS only).

This diff enables OAuth based authentication with the Zulip server. A one time pad is generated and sent to the server. The server processes the OAuth request inside of an embedded browser view and returns control to the app via a custom URI scheme (zulip://). The response contains the authenticated API key XORed with the one time pad in order to prevent URI hijacking.

@borisyankov mind approving this PR if it looks good to you at a high level?


isc: improve help msg of demo utility

Incorporated at https://github.com/Seagate/cortx-motr-apps/pull/30.


Better conddims

supersedes #548

Codecov Report

Merging #551 into master will increase coverage by <.01%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master     #551      +/-   ##
==========================================
+ Coverage   86.92%   86.92%   +<.01%
==========================================
  Files          74       74
  Lines        6812     6815       +3
  Branches     1399     1400       +1
==========================================
+ Hits         5921     5924       +3
  Misses        705      705
  Partials      186      186

Impacted Files
Coverage Δ

devito/ir/support/utils.py
97.66% <100%> (+0.01%)
:arrow_up:

devito/ir/equations/equation.py
88.54% <100%> (+0.24%)
:arrow_up:

devito/ir/support/stencil.py
71.87% <100%> (ø)
:arrow_up:

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 23c747a...6f01517. Read the comment docs.

I'd like to have #541 go in first though, but as you want.

sure, I just merged it. Updating this one, and then merging as soon as Travis cheers agains

Merged.


Windows access service with minimal perms

When performing actions on a service in a windows host, use the minimal required permissions to allow non admin users to control the service

Looks good, rebase? (sorry for the delay)


Javelin RBXScriptSignal Wrapper

Allows the ability to emit RBXScriptSignal (Roblox events) for Javelin.

Thanks for helping, an Wrapper function is a great addition.

I'll make sure to test it with TestEZ.


Better separation of privileges for system updates

Currently, there is one permission for system updates. This grants the user access to the screen for system updates, including the tab where they can change which server the updates are pulled from. If you can control what packages are being installed as root, any such user is basically root. There is no point doing updates with an account other than root.
The feature request is to add a permission that allows only pressing the update button and not changing which packages are installed, where they are pulled from, etc.

Let’s discuss this for a moment: you trust this user to do a potentially problematic upgrade, but not enough to let it see all options? Why not use a cron job instead and cut out the middle man?

An adversary running an upgrade is only slightly worse than a cronjob running it: they might be aware of a vulnerability in the new version and immediately upgrade my system to make sure I suffer from it, but in such a case, odds are that I would fall for the same update myself. It's definitely an advantage for an adversary to have an account on our system, and it's also definitely an advantage to have privileges assigned, and they can time upgrades for the worst possible moment where a reboot would break the video stream of a product demo or something... but that's all much better than being able to configure their own server as being the update server and pulling any package which then runs as root.
As for a cronjob, how do I get a notification if something fails? How do I get a message if a reboot is required?

I don't understand. How is an adversary by definition someone who could have an account, even with privileges? You seem to ask for an alternate GUI for the firmware updates and we do not intend to provide one.
The whole point about the cron job is that you don't have to do anything.
In this particular use case you describe you can use the API and a token to build a custom application to update:
https://docs.opnsense.org/development/api.html
https://docs.opnsense.org/development/api/core/firmware.html
https://docs.opnsense.org/development/how-tos/api.html

you can use the API and a token to build a custom application to update.

Are you seriously saying "just build an application to do updates for you"? Because besides that sounding like overkill, that statement can apply to every single component of opnsense: everything can be done using custom software, but that's the whole point of using opnsense: all the necessary features are available without having to rebuild the equivalent of opnsense.
Does it not make sense that updates should be run with a low privileged account (heck, I'd almost be fine with it being an unauthenticated GET from the LAN side) so that the admin account only needs to be taken out of the vault for changes that would be advantageous to an attacker?

No, I tend to disagree and I've offered you solutions which you ignore for unknown reasons and still push your agenda. I don't have any more free time to give to your cause, sorry.


Problem fetching pulumi assets

Hi,
thank you for an amazing tool!
I've got issue fetching assets from one GitHub project...
Project with incorrect version
Pulumi
Tested and not working: v3.108.0, v3.107.0, v3.106.0, v3.105.0
To Reproduce
lastversion --filter . --assets https://github.com/pulumi/pulumi/ --download
lastversion --filter . --assets https://github.com/pulumi/pulumi/ --download --only 3.107.0
etc.
Source code download with lastversion --filter . --assets https://github.com/pulumi/pulumi/ --download --source -su works though.
Expected behavior
Fetch all 22 assets (source files omitted)
Program output
Traceback (most recent call last):
  File "/usr/bin/lastversion", line 33, in <module>
    sys.exit(load_entry_point('lastversion==3.5.0', 'console_scripts', 'lastversion')())
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.12/site-packages/lastversion/lastversion.py", line 889, in main
    download_file(url, download_name)
  File "/usr/lib/python3.12/site-packages/lastversion/utils.py", line 286, in download_file
    response.raise_for_status()
  File "/usr/lib/python3.12/site-packages/requests/models.py", line 1021, in raise_for_status
    raise HTTPError(http_error_msg, response=self)
requests.exceptions.HTTPError: 404 Client Error: Not Found for url: https://codeload.github.com/pulumi/pulumi/tar.gz/pkg/v3.108.0/pulumi-pkg/v3.108.0

Current scope and support
Thank you for submitting this issue/request! 🌟
Currently, my focus is on maintaining and enhancing features critical to GitHub releases.
Fetching a release version from other sources is not a priority at the moment, neither supplementary feature like
zipball/tarball download, etc.
If your particular issue/feature/enhancement falls outside those priorities, and you believe this feature is important and would like to see it developed sooner, there are a few ways to help:

Contribute: We welcome pull requests!
Donate: If you're not able to contribute code but still want to support the addition of this feature, consider making a donation. Donations help prioritize and fund development efforts on features outside my current scope. Donate here.

Your support is greatly appreciated, and any contribution, be it code or donation, helps make lastversion better for everyone. 🚀

@xmstspider fixed in v3.5.1


#16 - december blog post

Added December release notes.

@olegmoz take a look, please

@olenagerasimova release 0.14 has been created, here is link to Docker image: https://hub.docker.com/layers/artipie/artipie/0.14/images/sha256-73cca13487bd1bb72cf0f515b698cd4078f07b6be3062c02cbe39bca335e4ae9?context=explore

@olegmoz thanks, I've made corrections

@olenagerasimova thanks, published


fix: Automatically recover expired sessions.

What kind of change does this PR introduce?
Fixes #27

Automatically recover expired sessions on page load using the refresh token

Woo! Thanks Thor

That's a good idea - it must be possible since swr does something similar: https://swr.vercel.app/
Perhaps we can discuss in a new issue?

#70 made a new issue

Thanks @10000multiplier 🙏


Flask service for vis

Still a WIP, needs to be cleaned up, but functionality is there.

we really need to figure out how to not have the generated code merged in... besides the fact that generated code shouldn't be merged into git in general, it also makes reviewing code difficult


Question for the plugin devs: How to contribute?

Hello, I'm a c# coder (In my free time) and I play FFXIV in Linux. I've been using this plugin for a while, and I love it. It helps a lot.
I wanted to ask if you were looking for collaborators, and if so, how I would go about helping. I've been browsing the code for the repo a little bit, but I don't know if you use special tools to "capture" a fight, or if you simply need testers. I'd be happy to help.

Re. capturing - the pipeline is really simple - dump a log (config -> General -> Dump world state events), then run UIDev standalone executable, open it there and analyze. Typically I just enable that every time before entering instance, and store single log per lockout.
That's one of the process I'd like to improve:
Create dedicated window (hidden by default) with start/stop recording actions.
Move the whole replay framework from UIDev to main project, allowing using it in-game (and add some UI to e.g. open any log, open last written log, open cooldown planner with last pull, and so on).
Allow adding custom messages with timestamp to the replays (e.g. to mark last pull as interesting for later analysis).
Reduce log size (instead of writing text lines, use some binary format + compression), since now I have tens of gigs of logs already...
As for contributions - just make a PR if you wanna improve something (if it's a larger thing, might be worth discussing first).

I just run from VS directly (set as startup project and hit F5). I always do that in debug mode, it needs some slight tweaking to make it run in Release. Game doesn't have to be open.
See whether there are any messages in VS console.

Hello, I really like this and as such would like to contribute. However, I'm not good at anything else than recording the battle with a log and then posting it somewhere here for someone knowledgable to do the graph and timeline
I mostly like it for Foray content like Eureka's Baldesion Arsenal (maybe outdoor NM ?) and Bozja
There are some CE and DRS
How would I go about recording CE (for those that aren't in the list) and DRn, Castrum and Dalriada
Can I make a dump file for each encounter individually ? and where would they be stored ?

How might one contribute towards autorotations?

How might one contribute towards autorotations?

this is something i would also like to know

Outdated. Not an issue.


CallCharacterAsync returns "Authentication credentials were not provided."

for some reason it returns that, I've tried putting my character ai token

but doing so gets me another error Failed to fetch below is the stack trace

@AlizerUncaged I completely rewrote the whole thing. Check out https://github.com/drizzle-mizzle/CharacterAI-NET-API-Wrapper/wiki/Getting-started and https://github.com/drizzle-mizzle/CharacterAI-NET-API-Wrapper/wiki/How-to-use


putTotalPages is not working with custom fonts

Are you using the latest version of jsPDF?
yes 1.4.1
Have you tried using jspdf.debug.js?
I am using jspdf with webpack so no
Steps to reproduce
it works fine with default fonts but if I add my own font, it doesn't work
try to take a look here https://codepen.io/anon/pen/BOqaNe

It kind of saddens me to see such a piece of junk code and seriously get asked why this code is not working.
Probably somebody else is willing to give you full support.I will keep this Issue open for 2 weeks and then I close it.

 I didn't know that I need to explain an example code just because someone is lazy and impulsive. BTW there was an emphasise on Custom Fonts. Here is an explanation,
 let doc = new jsPDF('p', 'mm');

  // doc.addFileToVFS('arial-regular.ttf', BASE64_STR);
  // doc.addFont('arial-regular.ttf', 'arial', 'normal');
  // doc.setFont('arial');

  const totalPagesExp = '{total_pages_count_string}';
  const pageContent = function(data) {
    doc.setFontSize(20);
    doc.setTextColor(200, 0, 255);
    doc.setFontStyle('normal');
    doc.text('Report', data.settings.margin.left + 35, 10);

    let str = 'Page ' + (data.doc.internal.pages.length - 1);
    // Total page number plugin only available in jspdf v1.0+
    if (typeof doc.putTotalPages === 'function') {
      str = str + ' von ' + totalPagesExp;
    }
    doc.text(str, data.settings.margin.left, doc.internal.pageSize.height - 30);
  };

  doc.autoTableSetDefaults({
    headerStyles: {fillColor: [255, 255, 255], textColor: [0,0,0], fontStyle: 'bold'},
    addPageContent: pageContent,
    theme: 'plain',
    margin: {bottom: 30, left: 10, right: 10}
  })

//  Content

if (typeof doc.putTotalPages === 'function') {
   doc.putTotalPages(totalPagesExp);
}

doc.save('tabled.pdf');

So above code works totally fine, but when I uncomment these lines which mean I am trying to add Custom Font
   doc.addFileToVFS('arial-regular.ttf', BASE64_STR);
   doc.addFont('arial-regular.ttf', 'arial', 'normal');
   doc.setFont('arial');

the putTotalPages method doesn't work. Let me know if you need more explanation

First of all, in your example  https://codepen.io/anon/pen/BOqaNe you dont even call putTotalPages.  So what do you call it? Should I take time to fix your example?
Probably { and } are replaced by utf-8 equivalent

I copied the above code from Codepen example I provided. Well I tried removing { and } but still doesn't work.

This is possibly related to #1960 - incorrect lengths encoded for TTF fonts.

I think i know what happens... with custom fonts the content of the text gets Base64 encoded.

Fixed with #1998

sorry i'm late but if you replace totalPagesExp;
data.pageNumber
data.pageCount
you have two options in my case i'm using data.pageCount;

solution : setFont("verdana"), footer add before page number
note : JSPDF has Verdana
var str = 'Page ' + doc.internal.getNumberOfPages()
// Total page number plugin only available in jspdf v1.0+
if (typeof doc.putTotalPages === 'function') {
str = str + ' of ' + totalPagesExp
}
var pageSize = doc.internal.pageSize
doc.setFont("verdana");
doc.text(str, data.settings.margin.left, pageHeight - 4);


[Needs Grooming] validate decrypt works with attribute data

there are some auth issues? maybe? needs investigation, grooming --
@dmihalcik-virtru can you validate whether or not we can decrypt with attribute data? we can close this ticket if this functionality works - otherwise if there is a bug we can groom this ticket to track the issue

Duplicate of https://github.com/opentdf/client-web/issues/276


Cache failed for pointer array

// cache failed
games := make([]*Game, 0) // pointer array
session.Find(&games)

// cache hit
games := make([]Game, 0) // struct array
session.Find(&games)

reason:
if bean == nil || reflect.ValueOf(bean).Elem().Type() != ckt {
    // ...
}

I am not sure this pattern is designed to workaround the cache or just an issue. When we need to workaround the cache, we may write our code as shown upside. Anyway, PR #895 is provided.


[staging-next] onnxruntime: fix building with new re2 version

Description of changes

#249560
#250778
https://hydra.nixos.org/build/232632969

error log:
Call Stack (most recent call first):
  /nix/store/mn0hmdazgdpwlzqbh6x039cg94dg0sz8-abseil-cpp-20210324.2/lib/cmake/absl/abslConfig.cmake:32 (include)
  /nix/store/201j99lxv8i53s946rdgjir9m8npqp44-cmake-3.26.4/share/cmake-3.26/Modules/CMakeFindDependencyMacro.cmake:76 (find_package)
  /nix/store/0vacg8f7n1jz9y03bphp991lvljw24jn-re2-2023-08-01-dev/lib/cmake/re2/re2Config.cmake:40 (find_dependency)
  external/helper_functions.cmake:120 (find_package)
  external/onnxruntime_external_deps.cmake:306 (onnxruntime_fetchcontent_makeavailable)
  CMakeLists.txt:510 (include)

Things done

Built on platform(s)

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

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[x] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
23.11 Release Notes (or backporting 23.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.

Builds and passes tests on x86_64-linux. Let's merge and see what happens.


change image size and/or format for performance

resize website photos or change them to next-gen image formats like WebP and AVIF to allow faster page loading

See suggestions from: https://pagespeed.web.dev/analysis/https-micahkepe-github-io/sbzzfxceww?form_factor=mobile under "Opportunities"


fix: reverting app-level orange alerts to intended color

• During the SASS variable cleanup, I made updates to the orange color palette that broke the a11y contrast of app-level alerts
• This change fixes that regression
Tested in:
✔ Chrome
✔ Firefox
Fixes #3604
Signed-off-by: Scott Mathis<EMAIL_ADDRESS>

@Jinnie
Digging back through the changes, it appears the change of the orange app-alert happened as a result of aligning our orange color palette with the orange color palette on our website. I recall a discussion where we highlighted that the new orange was good because it was more distinct from the red app-alert. But clearly that change needs more thought.
In summary, yes. We agree. 😊 But it requires more design and we want to solve for an a11y issue with this PR.


_count is ignored on _history

(and maybe on search too?)

I do consider this to be a bug, since for _history (and for search as well) the spec states:
"The server is not bound to return the number requested, but cannot return more"


Quaternion.toString() and toStringAsYawPitchRoll() are moved to QuaternionReadOnly

maybe also getX, Y, Z, and S

toString() cannot be added to QuaternionReadOnly (can't add toString() to an interface), but it is actually available without explicitly adding it.
toStringAsYawPitchRoll() is moved up to the read-only interface, I also added it for axis-angle and rotation matrix.
QuaternionReadOnly already has the getters for the individual components through Tuple4DReadOnly.


[Snyk] Upgrade @babel/runtime from 7.17.2 to 7.19.0

This PR was automatically created by Snyk using the credentials of a real user.Snyk has created this PR to upgrade @babel/runtime from 7.17.2 to 7.19.0.

:information_source: Keep your dependencies up-to-date. This makes it easier to fix existing vulnerabilities and to more quickly identify and fix newly disclosed vulnerabilities when they affect your project.

The recommended version is 9 versions ahead of your current version.
The recommended version was released a month ago, on 2022-09-05.

Note: You are seeing this because you or someone else with access to this repository has authorized Snyk to open upgrade PRs.
For more information:
🧐 View latest project report
🛠 Adjust upgrade PR settings
🔕 Ignore this dependency or unsubscribe from future upgrade PRs

Codecov Report
Base: 94.02% // Head: 94.02% // No change to project coverage :thumbsup:

Coverage data is based on head (59ec601) compared to base (7db429a).
Patch has no changes to coverable lines.

Additional details and impacted files
@@            Coverage Diff            @@
##               main     #228   +/-   ##
=========================================
  Coverage     94.02%   94.02%
  Complexity      475      475
=========================================
  Files            96       96
  Lines          1607     1607
  Branches        122      122
=========================================
  Hits           1511     1511
  Misses           56       56
  Partials         40       40

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


Images aligning in columns on outlook

Hello all,
When I send out a e-mail I get a problem with the aligning of 3 images in 3 columns in one section on outlook. They seem to be aligned to the left when they should be aligned in the center.
The code that is being used for the section is as followed:
    <mj-section background-url="http://scnem.com/art_resource.php?sid=bjvj5.27dr730">
      <mj-column align="center" width="33.33333333333333%">
        <mj-image align="center" href="http://www.doyzip.com" src="http://scnem.com/art_resource.php?sid=bjvru.hcaj7"></mj-image>
      </mj-column>
      <mj-column align="center" width="33.33333333333333%">
        <mj-image align="center" href="http://scnem.com/art_resource.php?sid=bje2e.2bfi0n8" src="http://scnem.com/art_resource.php?sid=bjvrt.2h1bgdq"></mj-image>
      </mj-column>
      <mj-column align="center" width="33.33333333333333%">
        <mj-image align="center" href="http://solutions4value.com" src="http://scnem.com/art_resource.php?sid=bj5uw.qocmkd"></mj-image>
      </mj-column>
    </mj-section>

In Apple Mail for example the section is displayed correctly as followed:

In Outlook e-mail client the section is displayed as followed:

Is there any way that I can get them to align in the middle as in my Apple Mail?
I have given the images the exact same dimensions.
Thank you in advance!
Kind regards,
Max

Hi @ketschi-max
This is a known issue with padding <> vml background <> having multiple nested table in Outlook engine. We didn't find any workaround on that as you can read here :https://github.com/mjmlio/mjml/issues/128#issuecomment-312688536 . We have no control on this behavior. What you can do is removing the padding on every element inside your column and it should behave almost as expected.
I'm closing the issue (like #128) because it's a bug in Word Engine and not in MJML's HTML


Capture Form Data

Requirements

Create a form to add tasks
Add error handling

This was integrated under commit a8eee7c9f286068a7f0faca98a9b3ee370736c88 .


ner_crf output is always lowercase

Rasa NLU version: 0.13.8
Operating system: Linux (Ubuntu 16.04)
Content of model configuration file:
pipeline:
- name: "nlp_spacy"
  model: "en_core_web_lg"
- name: "tokenizer_spacy"
- name: "ner_spacy"
- name: "intent_entity_featurizer_regex"
- name: "intent_featurizer_spacy"
- name: "ner_crf"
- name: "intent_classifier_sklearn"

Issue:
Hi.
I have successfully trained NLU using ner_crf to extract some custom entities (for example vehicles).
It works great at extracting vehicles entities, regardless if I entered the vehicle's name all lowercase or with first letter capital (works like I want it to).
The issue is that the result from ner_crf is always lowercase. I would like it to be returned just as the user entered it.
For example, if I send the following request:
http://localhost:5000/parse?q=Find me a Subaru Impreza&project=mybot&model=nlu
This is what ner_crf returns (compared to spacy):
"entities": [
    {
      "entity": "ORG",
      "value": "Subaru",
      "start": 10,
      "confidence": null,
      "end": 16,
      "extractor": "ner_spacy"
    },
    {
      "entity": "PRODUCT",
      "value": "Impreza",
      "start": 17,
      "confidence": null,
      "end": 24,
      "extractor": "ner_spacy"
    },
    {
      "start": 10,
      "end": 16,
      "value": "subaru",
      "entity": "vehicle-make",
      "confidence": 0.9548908938009781,
      "extractor": "ner_crf"
    },
    {
      "start": 17,
      "end": 24,
      "value": "impreza",
      "entity": "vehicle-model",
      "confidence": 0.9113687018573872,
      "extractor": "ner_crf"
    }
  ],

As you can see, ner_crf entities are always lowercase, while ner_spacy returns them correctly.
The reason I want to use ner_crf is because while spacy does a good job most of the time recognizing the vehicle make as ORG and the vehicle model as PRODUCT, its far from perfect.
Using ner_crf with some lookup tables has given better results so far...
Is there any way to configure ner_crf to return the entities in the original case (as they were entered) ?

Thanks for raising this issue, @wochinge  will get back to you about it soon.

@amitga-rnd Can you please try this pipeline
pipeline:
- name: "nlp_spacy"
  model: "en_core_web_lg"
  case_sensitive: true
- name: "tokenizer_spacy"
- name: "ner_spacy"
- name: "intent_entity_featurizer_regex"
- name: "intent_featurizer_spacy"
- name: "ner_crf"
- name: "intent_classifier_sklearn"

Yes, it works !
I thought that this parameter would affect the results, meaning that if I searched for subaru, it wouldn't find it, because I didn't train for lowercase entities.
But after your suggestion, I tried it and it still returned the expected entities, but in the same case as I entered them (which is what I wanted, at least for ner_crf)
Could you please elaborate what this parameter actually affects?
Thanks

case_sensitive: false will convert each message to be lower case. ner_crf will be trained on the lower case version of each word anyway, and then returns the word itself (if the word was converted to lower case at the beginning of the training, it will be lower case).

Great, thanks for the help and explanation.

@wochinge I am having a similar problem where ner_crf converts the alphanumeric entity by the name serial number(e.g. A400236A99B251E) into lowercase when extracted. But I want to retain the case as is typed.
My config file and NLU output are as follows:
`pipeline:

name: "nlp_spacy"
name: "tokenizer_spacy"
name: "intent_entity_featurizer_regex"
name: "intent_featurizer_spacy"
name: "ner_crf"
name: "intent_classifier_sklearn"
path:
name:"./models/nlu"
data:
name:"./data/data.json"`

{'intent': {'name': 'fetch_logs', 'confidence': 0.9770715477523312}, 'entities': [{'start': 20, 'end': 35, 'value': 'a400236a99b251e', 'entity': 'serial_number', 'confidence': 0.4942528369565178, 'extractor': 'ner_crf'}, {'start': 53, 'end': 89, 'value': '0040351a-74af-4b2c - a374-e0a474e44e28', 'entity': 'customer_id', 'confidence': 0.5301671026447399, 'extractor': 'ner_crf'}], 'intent_ranking': [{'name': 'fetch_logs', 'confidence': 0.9770715477523312}, {'name': 'goodbye', 'confidence': 0.013246573614091562}, {'name': 'greet', 'confidence': 0.009681878633577412}], 'text': 'Give me logs for AP A400236A99B251E with customer id 0040351a-74af-4b2c-a374-e0a474e44e28'}
Could you tell me how it can be achieved?

@Nisag Can you please try with case_sensitive: true as described here: https://github.com/RasaHQ/rasa_nlu/issues/1676#issuecomment-459713832 ?

That solution did not work for me when I used it in my pipeline as below. The serial_number entity is not extracted at all.
pipeline:

name: "nlp_spacy"
case_sensitive: true
name: "tokenizer_spacy"
name: "intent_entity_featurizer_regex"
name: "intent_featurizer_spacy"
name: "ner_crf"
name: "intent_classifier_sklearn"
name: "ner_duckling_http"
url: "http://<IP_ADDRESS>:8000"
dimensions: ["time"]
locale: "en_IN"
timezone: "Asia/Bangalore"
path:
name:"./models/nlu"
data:
name:"./data/data.json"

{'intent': {'name': 'fetch_logs', 'confidence': 0.9802921196153628}, 'entities': [{'start': 53, 'end': 89, 'value': '0040351a-74af-4b2c - a374-e0a474e44e28', 'entity': 'customer_id', 'confidence': 0.545112275700203, 'extractor': 'ner_crf'}], 'intent_ranking': [{'name': 'fetch_logs', 'confidence': 0.9802921196153628}, {'name': 'goodbye', 'confidence': 0.012288519495664223}, {'name': 'greet', 'confidence': 0.007419360888973045}], 'text': 'Give me logs for AP A400236A99B251E with customer id 0040351a-74af-4b2c-a374-e0a474e44e28'}

@wochinge Do you know why it isn't working and is there something I did wrong?

@Nisag maybe you could give an example of your CRF intent ?
Did you try to use regex or lookup tables in training data?

@Nisag If the entity was not extracted at all, then you probably have to add more training data. Might make sense to use regular expression to support the entity recognition since it is a serial number and probably follows a specific pattern.

@ wochinge I added more training data and now the serial number is shown as it is typed when I use case-sensitive: true in my pipeline. Thanks for the help.


need correctness testing

Apparently a multi-tiered cache system with a custom doubly linked list implementation has some difficulties.

sll https://github.com/jamiealquiza/bicache/commit/37230cd82a0c8c3d1a01d4e20bb15d76138edd6b


Help Wanted! Questions about these files during reproduction.

I have questions about the README.md file description when reproducing on the bird dataset. The format of the bird dataset is as follows.

Which one is the real test.json, which one is the real test_tables.json, and which dev.json is needed for the few_shot folder?
What files are needed for the evaluation of the bird-dev set? thank you.

BTW.
The dev.json in the repository is very strange, as it is exactly the same as the dev.json in the bird-dev dataset.  In theory, if placed under the few_shot folder, it should have a few-shot Prompt? It seems that the significance of introducing the original dev.json file here is not well understood.
What's even stranger is that in the construct_QA.py, I found a repetitive and incomprehensible logic where the file is repeatedly read and assigned to the same field.

I hope you can answer my question.

Oh no, I'm very sorry. It was my negligence that caused you to have such a question.
This is the readme.md file that I submitted to the BIRD official for testing, so files such as text.json will appear, as well as the operation of extracting few-shot examples from dev.json.
I once again expressed my apology and immediately revised my documentation.

Okay, I figured as much. Thank you for your response.


Adjust Expiry

Adjusts how we format expiry on card element to account for foreign keyboards.

Created new branch as this one got CRAZY!


Develop remove cross account patterns remove dynamo role fix

Thanks for your good work and caution with these changes! :D They look good to me. Please merge into your branch whenever you like.


cliqz.com

Hi.
What would be the reason that cliqz.com is blocked?
Thank you
Cheers

cc @mitchellkrogza I think this should be removed/whitelisted ...

@mitchellkrogza, bump ^
data\Badd-Boyz-Hosts\hosts:<IP_ADDRESS> cliqz.com
data\Badd-Boyz-Hosts\hosts:<IP_ADDRESS> hpn-collector.cliqz.com

Thanks for the update @ScriptTiger I was going to make some research about it before whitelisting it (I have the write access to that repository).
@crssi unless @mitchellkrogza decide something else, this is not going to be whitelisted.

Thanks @funilrys and @ScriptTiger addressed in latest build (in progress)

@funilrys @ScriptTiger sorry now I am confused ... whitelist this or not ???

@mitchellkrogza this should not be whitelisted ...
@ScriptTiger said:

And if you read the Wikipedia link above, it seems even their "privacy-oriented" browser is just a marketing ploy to collect data for advertisers.

👍 my bad will stop current build and remove them from whitelisting

Thank you, everyone.
Closing.


fix issue #31: removed debug printing

Fixed issue #31 when the library always print debugging to console.

Guys what part of printDuration dont you understand. It is meant to print. If you just want to convet use prettyDuration. Also read the docs.


Customizable liveness/readiness probes

This addresses #339 but instead of customizing which of the named ports is used for the probes, the entire probes are exposed. While this is not as elegant, it looks to me like this is the standard way of doing this - albeit my experience here is surely limited.

Looks like the other approach was implemented simultaneously over in #353 :D
Either way works for me. Right now I'm stuck with kubectl apply 😅

Hey 👋
First of, Im sorry for the late reaction. Last days were pretty busy.
I would look to go with #353 first as its simpler and might already solve the need. If we figure out, its not enough we can still iterate and potentially work on that here.
Ill close that PR here for that reason. Please let me know if you think, that is not suitable enough.

Yeah, works for me!


[BUG/ISSUE] Lower version advertised as update

Before submitting the issue

[x] I have checked that the bug is not a duplicate or, if it is, it needs to be reopened
[x] I have checked that I am running the latest version of WingetUI
[x] I have tried resetting and reinstalling WingetUI and the issue persisted or happened again
[x] I have checked the FAQ section for solutions
[x] I have read the contributing guidelines and I agree with the Code of Conduct

Describe the bug
I have installed the product Stardock Fences 4. WinGetUI is showing an update for the product, even though the version number is lower.

To Reproduce
Steps to reproduce the behaviour:

Install Stardock.Fences (Current Version <IP_ADDRESS>) from their website
Search for updates
Find update to version (4.07.02) which is lower

Expected behaviour
Only show newer version as updates
The Log
Neighter stardock nor fences is mentioned in the logs. I can provide you the logs, but I don't see how that'll be helpfull

what is the result of running winget upgrade on Command Prompt?

@ppvnf

yes, it seems like that specific Winget package has a problem. Stardock.Fences's manifest (https://github.com/microsoft/winget-pkgs/blob/master/manifests/s/Stardock/Fences/4.07.02/Stardock.Fences.installer.yaml) seems out of date. You could either fix it yourself or open an issue in that repo

Yes, this is an issue related to winget-cli.


https://ngxpagespeed.com/install is NOT fixed.

It redirects to https://www.modpagespeed.com/examples/install and gives a 404.

I can’t repro, could it be a caching issue?

Could have been as the issue now seems to be gone.


make successful run more appealing

e.g. add a animation or something - also for failed runs

added a sparkle animation


Errors setting up environment for Python API

Problem
Currently trying to setup the dev environment for python api, following the steps provided in the README,
but after running make develop I run into an error
Error
error[E0658]: arbitrary expressions in key-value attributes are unstable tokio-util, zstd-sys(build), clap, brotli, openssl-sys(build), serde, time, ring, pyo3-macros, futures-ex...
 --> /home/smurphy00/.cargo/registry/src/github.com-1ecc6299db9ec823/clap-3.0.0-beta.4/src/lib.rs:8:10
  |
8 | #![doc = include_str!("../README.md")]
  |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  |
  = note: see issue #78835 <https://github.com/rust-lang/rust/issues/78835> for more information

   Compiling tokio-stream v0.1.7
   Compiling sct v0.6.1
   Compiling webpki v0.21.4
   Compiling futures v0.3.16
   Compiling h2 v0.3.3
   Compiling ct-logs v0.8.0
error: aborting due to previous error  ] 283/341: tokio, lz4-sys(build), zstd-sys(build), clap, brotli, openssl-sys(build), serde, webpki, ring, h2, ct-logs

For more information about this error, try `rustc --explain E0658`.

error: could not compile `clap`

To learn more, run the command again with --verbose.
warning: build failed, waiting for other jobs to finish...
error: build failed
💥 maturin failed
  Caused by: Failed to build a native library through cargo
  Caused by: Failed to build a native library through cargo
  Caused by: Cargo build finished with "exit status: 101": `cargo rustc --message-format json --manifest-path Cargo.toml --lib --`
make: *** [Makefile:19: develop] Error 1

@Smurphy000 could you try updating your rust toolchain to the latest stable version?

Update rust from 1.53 -> 1.54 and command finished successfully now


[QUESTION] Struggling to replace customNamespace with static

Is there an existing issue for this?

[X] I have searched the existing issues

YACE version
0.51.0
Config file
  static:
    - namespace: CWAgent
      name: cloudwatch_disk
      dimensions:
        - name: fstype
          value: xfs
      regions:
        - eu-west-2
        - ap-northeast-1
      roles:
        - roleArn: "arn:aws:iam::123456789012:role/MonitoringService"
        - roleArn: "arn:aws:iam::123456789012:role/MonitoringService"
      metrics:
        - name: disk_used_percent
          statistics:
            - Average
          period: 60
          length: 60
  customNamespace:
    - name: cw_disk
      namespace: CWAgent
      regions:
        - eu-west-2
        - ap-northeast-1
      roles:
        - roleArn: "arn:aws:iam::123456789012:role/MonitoringService"
        - roleArn: "arn:aws:iam::123456789012:role/MonitoringService"
      metrics:
        - name: disk_used_percent
          statistics:
            - Average
          period: 60
          length: 60
          nilToZero: true

Current Behavior
I can only see metrics with the name "cw_disk", although I think that the static configuration should be equivalent.
I have run with debug logs and do not see anything useful in the output. I have tried with and without specifying dimensions in the static config.
Expected Behavior
No response
Steps To Reproduce
No response
Anything else?
No response

@mjrlee are you running the CloudWatch Agent and pushing metrics to CWAgent namespace?

@mjrlee I've added support for CWAgent namespace in https://github.com/nerdswords/yet-another-cloudwatch-exporter/pull/918
The metrics should be accessible via a discovery job now. Can you give it a try?

I won’t be able to look at this for the next week or so, I’ll update you once I’ve had a chance.
On Fri, 28 Apr 2023, at 19:23, Cristian Greco wrote:

@mjrlee https://github.com/mjrlee I've added support for CWAgent namespace in #918 https://github.com/nerdswords/yet-another-cloudwatch-exporter/pull/918
The metrics should be accessible via a discovery job now. Can you give it a try?
—
Reply to this email directly, view it on GitHub https://github.com/nerdswords/yet-another-cloudwatch-exporter/issues/916#issuecomment-1527933786, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAE2WREEISSBEALFV2LPDYTXDQDK5ANCNFSM6AAAAAAXPCMVBY.
You are receiving this because you were mentioned.Message ID: @.***>

I've been able to prove that this works! Thank you very much.

Thanks @mjrlee, I'll merge that PR then!


Review and clean up the Makefile

Prerequisites

[X] I checked the documentation and made sure this feature does not already exist.
[X] I checked the existing issues to make sure this feature has not already been requested.
[X] I have read the code of conduct before creating this issue.

Problem
No response
Feature / Solution
There has been some major development related updates in the repo, including a switch to poetry for dependency management. Consider reviewing the Makefile to ensure it is up-to-date.
Alternatives
No response
Additional Context
No response

This is now merged. PR #278