Adding support for importing a package

Adding support for importing a package installed by pip

Coverage decreased (-0.8%) to 81.359% when pulling be6474c3bd05004e4ec75440802cf541c28030fa on talitarossari:master into 3464ef189b46fb12d5214aa8fbb6fbca45e7eaf7 on rochacbruno:master.

Looks like this is the same problem of https://github.com/rochacbruno/flasgger/issues/102
I am going to write some tests for it and then merge your PR..
Thanks

Steps needed to test this

[ ] Create a installable package with api definitions
[ ] Create examples/test_package.py with an app using that package
[ ] Check if addresses #102 problem

Coverage decreased (-0.8%) to 81.359% when pulling 8f309c3d8ce089264ed43c612138a8795c5473a5 on talitarossari:master into c5d3313f971d90cc973edd0c5ac47e6286d24f19 on rochacbruno:master.

Coverage decreased (-0.8%) to 81.359% when pulling 129322df865466effd114323a8cf15ae5ad0da01 on talitarossari:master into c5d3313f971d90cc973edd0c5ac47e6286d24f19 on rochacbruno:master.

Coverage decreased (-0.8%) to 81.359% when pulling 129322df865466effd114323a8cf15ae5ad0da01 on talitarossari:master into c5d3313f971d90cc973edd0c5ac47e6286d24f19 on rochacbruno:master.

Coverage decreased (-0.9%) to 81.217% when pulling 00463aa025ae3832b309406871971bf9bc969807 on talitarossari:master into c5d3313f971d90cc973edd0c5ac47e6286d24f19 on rochacbruno:master.

@talitarossari still need help to reproduce the error.
Take a look at etc/flasgger_package and tests/package_example
Can you reproduce your case there?

@rochacbruno, sorry for waiting.
I was able to reproduce my situation (import the .yml from an external package).
For this, I needed to create another file "parameters.yml" and import it out of the package.
The error did not persist.
Pull requests #135

I found this issue thru the comment in flasgger/utils.py line 466 while im following the stack trace error.
I had an issue importing .yml files using swag_from() from different directory.
I found out that it changes the path or retrieving the .yml files from another directory.
In my case the .yml file directory became relative_path/utils/path_to_swagger/my.yml instead of relative_path/path_to_swagger/my.yml
to fix this issue on my end, I define the relative path of my .yml documentation.
# because my swagger docs is the same path as my api module.
BASE_SWAGGER_DOCS_PATH = os.path.dirname(__file__) + '/docs/swagger'`

@swag_from('%s/my.yml' % BASE_SWAGGER_DOCS_PATH)
...


Fix #126 Locale issue and #203 Utc issue

Description

Fix issues #126 (Locale) and #203 (utc).
Had to make slight modifications to internal functions getFormats and localMoment to fully fix issues.  I also added a comment to the code in localMoment.  I know there are no other comments in the code :disappointed:  so I'm going against the style, but the line of code seems non-obvious as to why it is there.
Motivation and Context

Fix issues #126 (Locale) and #203 (utc).
cc: @clairekh
Checklist

[ ] I have added tests covering my changes
[x] All new and existing tests pass
[ ] My changes required the documentation to be updated
  [ ] I have updated the documentation accordingly
  [ ] I have updated the TypeScript 1.8 type definitions accordingly
  [ ] I have updated the TypeScript 2.0+ type definitions accordingly

@layneanderson, thank you!

Merged this fix myself because of reasons. Thanks @layneanderson for your many contributions. Hoping for more :)
Merged in #266.


Update README.md Node V8 debugging warning #1107

Added the warning on Node V8 debugging as discussed in #1107

thanks for this!!!


fix: add flag for auth in keycloak realm url

:heart: Thank you for your contribution!
Description
closes #323
Add flag for using the auth/ part in the realm url.
Newer versions of keycloak do not have an auth/ part in the realm url per default anymore. To not break existing InvenioRDM instances and oauth configurations, the flag is set to true per default.
This allows to keep all the other setup functionality and only modify the realm url if needed.
Keycloak v16 support has been deprecated for quite some time now ((11 Mar 2022) according to https://endoflife.date/keycloak).
Checklist
Ticks in all boxes and 🟢 on all GitHub actions status checks are required to merge:

[ ] I'm aware of the code of conduct.
[ ] I've created logical separate commits and followed the commit message format.
[ ] I've added relevant test cases.
[ ] I've added relevant documentation.
[ ] I've marked translation strings.
[ ] I've identified the copyright holder(s) and updated copyright headers for touched files (>15 lines contributions).
[ ] I've NOT included third-party code (copy/pasted source code or new dependencies).

If you have added third-party code (copy/pasted or new dependencies), please reach out to an architect.

Frontend

[ ] I've followed the CSS/JS and React guidelines.
[ ] I've followed the web accessibility guidelines.
[ ] I've followed the user interface guidelines.

Reminder
By using GitHub, you have already agreed to the GitHub’s Terms of Service including that:

You license your contribution under the same terms as the current repository’s license.
You agree that you have the right to license your contribution under the current repository’s license.

thanks!

Needs release?


make settings compatible with apache deployment

Some friends told us they weren't able to deploy ephios with the SECURE_SSL_REDIRECT = True setting enabled using apache and gunicorn. We should check and document deployment options.

Apache needed the RequestHeader set X-Forwarded-Proto "https" directive to work. So yeah, "just" need to document all this, but the settings are fine.


[ModalManager] exclude aria-hidden nodes from node-hiding logic

[x] I have followed (at least) the PR section of the contributing guide.

Closes #15837
The logic that hides/shows nodes via the aria-hidden attribute will now exclude nodes that were already hidden before the modal was mounted.

I'm doing a deep dive into the logic. I'm migrating the Modal from the classes API to hooks. Once it's done. I will come back to this pull request :).

@oliviertassinari Thanks for keeping me posted.

@mackersD You can follow #16254. In theory, we could work in the two in parallel as they touch different files. But I would be interested in finding ways to make the logic correct as well as bundle size efficient.

I'm looking at the web accessibility guidelines, it seems that the aria-hidden approach we are using is considered "legacy": https://www.w3.org/TR/wai-aria-practices/examples/dialog-modal/dialog.html. They encourage the aria-modal="true" instead.
However, from the UI components, I can benchmark, it seems that there is no consensus on what's the correct approach is.
@eps1lon Do you have a preference?

Sounds expected. WAI-ARIA considers it legacy and most of the libraries haven't caught up.
On the other hand I only have access to chrome vox which isn't considered a good screen reader as far as I remember. It will still read content from stacked modals and the body in the WAI-ARIA practices. I don't get this behavior for our SimpleModal demo.
But this is only for chrome vox. We should verify that other screen readers work recognize aria-modal as well and make the rest of the page inert. aria-modal would be convenient but if it's not supported by many screenreaders we should stick to the aria-hidden workaround.

@eps1lon Thanks for the input. I'm in favor of keeping the current aria-hidden logic waiting for aria-modal to be better supported: https://developer.paciellogroup.com/blog/2018/06/the-current-state-of-modal-dialog-accessibility/.
I have refactored the ModalManager code, hopefully, it's simpler.

@mackersD It's a great first pull request on Material-UI 👌🏻. Thank you for working on it!

😁 thanks!


wrong error message when validating decks

In my private deck list, two decks are shown as invalid with the error message 'The deck uses Agendas from a different faction', although they only use in-faction and neutral agendas.
The deck IDs from the URL are 1016748 and 992871. Both decks are shown as Tournament valid on Jinteki.net and I can't find anything wrong with them. They do not use any pre-rotation cards and stick to the card versions from Revised Core Set where needed. Both decks use exactly one restricted and no banned cards. Both decks are marked invalid no matter if I switch to MWL 1.2 or MWL 2.0, but they should be legal for both lists.

Whoops, someone was faster than me ...
This issue is a duplicate of #156


[Bug]: CUDA OOM Error

Is there an existing issue for this?

[X] I have searched the existing issues

Current Behavior
ret = []
ret.append(towhee.glob("mp4/*.mp4") \
    .video_decode.ffmpeg() \
    .video_classification.pytorchvideo( \
    model_name='x3d_m', predict=False).to_list())

When running the code as above, I get a cuda oom error, is there any solution? And the dir mp4/ contains more than 1k videos.
the oom error is:
[enforce fail at alloc_cpu.cpp:73] . DefaultCPUAllocator: can't allocate memory: you tried to allocate<PHONE_NUMBER>0 bytes. Error code 12 (Cannot allocate memory)

Expected Behavior
No response
Steps To Reproduce
No response
Environment
- Towhee version(e.g. v0.1.3 or 8b23a93):0.6.2.dev42(build from git source code)
- OS(Ubuntu or CentOS):
- CPU/Memory:
- GPU:
- Others:

Anything else?
No response

@junjiejiangjjj
Could you help to investigate this issue? Thanks.

Most of them are less than 1024k. Is it possible to build a pipeline in style like below:
from towhee import pipeline
embedding_pipeline = pipeline('towhee/audio-embedding-vggish')

Most of them are less than 1024KB. Is it possible to build a pipeline in style like below:
from towhee import pipeline
embedding_pipeline = pipeline('towhee/audio-embedding-vggish')

Still working on that, we aim to provide an API like this:
ret = towhee.glob("mp4/*.mp4").audio_embedding_vggish().to_list()

where audio_embedding_vggish is the pipeline name.

@aiot-tech We have more example usage of this operator in https://github.com/towhee-io/examples/tree/main/video/reverse_video_search (More examples on the way). You may move the audio-subsampling step to audio-decode using sample codes below:
(
    towhee.glob("mp4/*.mp4")
                .video_decode.ffmpeg(sample_type='uniform_temporal_subsample', args={'num_samples': 16})
                .video_classification.pytorchvideo(model_name='x3d_m', predict=False, skip_preprocess=True)
)

Now I do it like this, first delete self.model and inputs after inference (/root/.towhee/hub/video-classification/pytorchvideo/main/pytorchvideo.py), then use the following code to process 800 videos (total 1000), it seems that there is no problem, but it is a bit slow.
ret = []
for p in paths:
    _tmp_ret = list(towhee.glob(p) \
        .video_decode.ffmpeg() \
        .video_classification.pytorchvideo( \
        model_name='x3d_m', predict=False))
    ret.append(_tmp_ret)

Most of them are less than 1024KB. Is it possible to build a pipeline in style like below:
from towhee import pipeline
embedding_pipeline = pipeline('towhee/audio-embedding-vggish')

Still working on that, we aim to provide an API like this:
ret = towhee.glob("mp4/*.mp4").audio_embedding_vggish().to_list()

where audio_embedding_vggish is the pipeline name.

Great! Hope to use it soon.

I get an another idea. First, move /root/.towhee/hub/video-classification/pytorchvideo/main/pytorchvideo.py to PytorchVideo.py, same for json, and then run the code below
from PytorchVideo import PytorchVideo
from towhee import ops
from tqdm import tqdm
import numpy as np

d = ops.video_decode.ffmpeg()
model = PytorchVideo(model_name='x3d_m', predict=False)

ret = []
for p in tqdm(paths):
    ret.append(model(list(d(p))))

I get an another idea. First, move /root/.towhee/hub/video-classification/pytorchvideo/main/pytorchvideo.py to PytorchVideo.py, same for json, and then run the code below
from PytorchVideo import PytorchVideo
from towhee import ops
from tqdm import tqdm
import numpy as np

d = ops.video_decode.ffmpeg()
model = PytorchVideo(model_name='x3d_m', predict=False)

ret = []
for p in tqdm(paths):
    ret.append(model(list(d(p))))

Then how about this:
import tqdm
from towhee import ops

op1 = ops.video_decode.ffmpeg(sample_type='uniform_temporal_subsample', args={'num_samples': 16})
op2 = ops.video_classification.pytorchvideo(model_name='x3d_m', predict=False, skip_preprocess=True)
res = []
for p in tqdm(paths):
    frames = op1(p)
    re = op2(frames)
    res.append(re)

brilliant!


Description and title lenght

Hey, how's it going? Apparently Google now has limits on "number of pixels" rather than character for both meta title and meta description.
Ref. https://moz.com/blog/title-tag-length-guidelines-2016-edition
Is it possible to have more warnings, and maybe a much higher limit, but not stop the document from publishing?

Neeevermind, didn't see you can allow long title/description in the configuration!

Could you elaborate a little more on how Google limits its SERPs?
--
Ryan Lewis
<EMAIL_ADDRESS>On 13 December 2016 at 13:54:40, Stefano Chiodino<EMAIL_ADDRESS>wrote:

Neeevermind, didn't see you can allow long title/description in the
configuration!
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/ryanlewis/seo-metadata/issues/29#issuecomment-266743992,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAaG4y_mPrxMdEvRvYuMI1yl6AhW-KFZks5rHqOggaJpZM4LLwDE
.

They have changed the limits on both description and title to work on pixel
width rather than character count!
On Thu, 15 Dec 2016 at 18:39 Ryan Lewis<EMAIL_ADDRESS>wrote:

Could you elaborate a little more on how Google limits its SERPs?
--
Ryan Lewis
<EMAIL_ADDRESS>On 13 December 2016 at 13:54:40, Stefano Chiodino (
<EMAIL_ADDRESS>wrote:

Neeevermind, didn't see you can allow long title/description in the
configuration!
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
<
https://github.com/ryanlewis/seo-metadata/issues/29#issuecomment-266743992
,
or mute the thread
<
https://github.com/notifications/unsubscribe-auth/AAaG4y_mPrxMdEvRvYuMI1yl6AhW-KFZks5rHqOggaJpZM4LLwDE
.

—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/ryanlewis/seo-metadata/issues/29#issuecomment-267406027,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABXNneMabTB4m-a5s89lQcGmthf6QCBQks5rIYlKgaJpZM4LLwDE
.


Special consideration for variant type capitalization

3 Prime Utr Variant is a bit strange. 3 Prime UTR Variant would be preferred. '5 Prime UTR Variant' and 'UTR Variant' are other alternatives that would be effected. I don't think UTR will come up very often in other contexts.

Is the intent of this issue just that when UTR appears as a literal string in any variant name, we should uppercase it retroactively? That should be super simple if that's the case!

That's what I'm proposing. If it is a "word" alone, all caps.

Cool, that's easy enough to implement! Do you want a one time pass through the data to do this transformation, or a permanent special case for it?

I guess it would have to be done each time variant types were pulled in from SO but should otherwise just be able to be done on the site once.

Yeah, that makes sense, thanks!


Add URI handler to use Github PAT to download --config-file-url for a private github repo

I'd like to re-use the config file from a private repo. How can I do that with --config-file-url ? Is there a way I can pass in my PAT ?
export GITHUB_TOKEN=$(gh config get -h github.com oauth_token)

Is there a way to use an ssh url ?
https://superuser.com/a/1687399
Doing something like this would be ideal because then it would re-use my current ssh configuration instead of a PAT
tfsec --config-file-url<EMAIL_ADDRESS>

Hey @nitrocode - only http[s] is supported for config download https://github.com/aquasecurity/tfsec/blob/master/internal/app/tfsec/cmd/flags.go#L318
So you could use something like
tfsec --config-file-url https://raw.githubusercontent.com/aquasecurity/tfsec/master/_examples/with_config_overrides/.tfsec/config.yml

Are you saying that it is not possible to download a remote config file from a private GitHub repo?
Perhaps then this question can serve as a feature request for an ssh handler.

Let's make it unstale then :D

Let's make it unstale then :D

Unstale

Our efforts have moved to Trivy. Please file a discussion in the Trivy repo if you see fit.


text not showing up in  javascript prompt text field in Chrome using  alert.set(value)

A javascript prompt has a field where text should be entered. Tried using alert.set('text to enter'). The alert.set(value) method works fine with IE, but not chrome. alert.ok and alert.close work fine in Chrome.
This may related to chromedriver/chrome interaction. I'm using the latest chromedriver stable release 2.24
Not sure how to tell if this related to chromedriver or watir.

Please provide a reproducible example. The test at the bottom of this page is passing in all environments: https://github.com/watir/watir/blob/master/spec/watirspec/alert_spec.rb

`require 'watir'
driver = Watir::Browser.new :chrome
driver.goto('http://www.w3schools.com/js/tryit.asp?filename=tryjs_prompt')
driver.iframe(:id => 'iframeResult').button.click
driver.alert.set('blah')`

I can reproduce the error using the script provided, need to write a spec now.

This is a bug in chromedriver: https://bugs.chromium.org/p/chromedriver/issues/detail?id=1120
It is worth noting that Chrome does in fact get the text update (so the resulting value on the page is correct), it just does not display in the alert box.


Getting real time output

I need to use realtime images from the unreal environments and use them as input for my model to check if the current view is proper for moving forward or not and if it's not good my program calculates the angle and commands the drone to rotate. I want to do this at move_around mode.
How can I use get_MonocularImageRGB() to get image? I don't know what the arguments are for this function and what the output is. I don't have any idea what to do.
Please help me with what actions should I perform.

The associated module can be found in aux_functions.py
https://github.com/aqeelanwar/PEDRA/blob/eb4e69aa3650ea4a96ee89104007ceecf7fb715f/aux_functions.py#L338

I found it but what are client and vehicle_name?

Hi
I tried to get client value(I'm not sure if I said it correct) from client, old_posit, initZ = connect_drone(ip_address=cfg.ip_address, phase=cfg.mode, num_agents=cfg.num_agents) but this error occured

Can you please share teh content of your config.cfg file?

Thanks for your incredible code.
The problem is solved by changing mode in config.cfg from move_around to infer.


⚠ Bofrost.lu has degraded performance

In a995915, Bofrost.lu (https://www.bofrost.lu) experienced degraded performance:

HTTP code: 200
Response time: 1813 ms

Resolved: Bofrost.lu performance has improved in ba075d3 after 6 minutes.


[Bug][ONNX] cann't parse strides for LpPool

For the below onnx model with LpPool, we can see that no strides attribute in LpPool. However, tvm frontend cannot parse this attribute, and throw an error: KeyError: 'strides'. By analysis, the crash is caused by the [node.attribute] https://github.com/apache/tvm/blob/main/python/tvm/relay/frontend/onnx.py#:~:text=attr %3D self._parse_attr(node.attribute) cannot get the strides attribute and lead to a crash when execute attr["strides"] in this line.
model structure

Crash message
Traceback (most recent call last):
  File "test.py", line 7, in <module>
    irmod, params = relay.frontend.from_onnx(model, {'x': (1, 3, 32, 32)}, freeze_params=True)
  File "/workplace/software/tvm/tvm/python/tvm/relay/frontend/onnx.py", line 7347, in from_onnx
    mod, params = g.from_onnx(graph, opset)
  File "/workplace/software/tvm/tvm/python/tvm/relay/frontend/onnx.py", line 6964, in from_onnx
    self._construct_nodes(graph)
  File "/workplace/software/tvm/tvm/python/tvm/relay/frontend/onnx.py", line 7079, in _construct_nodes
    op = self._convert_operator(op_name, inputs, attr, self.opset)
  File "/workplace/software/tvm/tvm/python/tvm/relay/frontend/onnx.py", line 7205, in _convert_operator
    sym = convert_map[op_name](inputs, attrs, self._params)
  File "/workplace/software/tvm/tvm/python/tvm/relay/frontend/onnx.py", line 1999, in _impl_v1
    attr["strides"],
KeyError: 'strides'

Steps to reproduce

download the lppool_model.onnx
execute the script.

import onnx
from tvm import relay

onnx_model_path = "lppool_model.onnx"
model = onnx.load(onnx_model_path)
irmod, params = relay.frontend.from_onnx(model, {'x': (1, 3, 32, 32)}, freeze_params=True)

Triage

frontend:onnx

cc @KJlaccHoeUM9l

Hello, @AndrewZhaoLuo @vvchernov :
It checked the source code, and Lppool is supported by onnx converter. I cannot figure out why strides attribute cannot be parsed. Is it my wrong usage or a bug?

Hey @jikechao I will take a look today or tomorrow.

Oddly enough I am not able to reproduce your mod. Your code runs fine on my machine:
Resulting printout from irmod
Index with the appropriate dtype instead.
  from pandas import MultiIndex, Int64Index
def @main(%x: Tensor[(1, 3, 32, 32), float32] /* ty=Tensor[(1, 3, 32, 32), float32] span=LpPool_0.x:0:0 */) -> Tensor[(1, 3, 10, 10), float32] {
  %0 = power(%x, 2f /* ty=float32 span=LpPool_0:0:0 */) /* ty=Tensor[(1, 3, 32, 32), float32] span=LpPool_0:0:0 */;
  %1 = nn.avg_pool2d(%0, pool_size=[5, 5], strides=[3, 3], padding=[0, 0, 0, 0], count_include_pad=True) /* ty=Tensor[(1, 3, 10, 10), float32] span=LpPool_0:0:0 */;
  %2 = abs(%1) /* ty=Tensor[(1, 3, 10, 10), float32] span=LpPool_0:0:0 */;
  %3 = multiply(%2, 25f /* ty=float32 span=LpPool_0:0:0 */) /* ty=Tensor[(1, 3, 10, 10), float32] span=LpPool_0:0:0 */;
  power(%3, 0.5f /* ty=float32 span=LpPool_0:0:0 */) /* ty=Tensor[(1, 3, 10, 10), float32] span=LpPool_0:0:0 */
}

What version of onnx are you using?
keras2onnx==1.7.0
onnx==1.12.0
onnx-graphsurgeon==0.3.25
onnx-simplifier==0.3.6
onnx-tf==1.9.0
onnxconverter-common==1.9.0
onnxmltools==1.11.1
onnxoptimizer==0.2.6
onnxruntime==1.13.1
onnxruntime-gpu==1.13.1
onnxruntime-tools==1.7.0
skl2onnx==1.11.2
tf2onnx==1.9.2
tflite2onnx==0.4.0

Here is my pip freeze | grep onnx

@AndrewZhaoLuo Thanks for you review, It's my mistake to provide a wrong model link. I have corrected the bug description and modified the model link. You can download correct model via this link：
https://github.com/jikechao/onnx_models/blob/main/lppool_model.onnx  and the provided script is same as before.

Ah the answer is as of opset 11, strides is an optional attribute. If it is not present, you just treat it as 1 along every spatial axis.
Should be simple to fix, but basically you replace attrs['strides'] with something like attrs.get('strides', [1] * num_spatial_dims). If you want to open up a fix that is cool. If not I can do it too.

#14740 has merged


Reconsider versioning

Current versioning is somehow misleading and specially in go provides an unfriendly experience.
There are a few challenges with the approach Y.m.d:

A year bump means a new major release which could perfectly be bugfix or security patch. This imposes  unnecessary uncertainty as humans and bots will be reluctant to bump to a major on a bugfix.
A breaking change (if any) happening in the same year can't be in the same major which is non sense because in a API rewrite you are forced to create yet a new API.
Every new year you break the import path for no reason github.com/opslevel/opslevel-go/v2023 -> github.com/opslevel/opslevel-go/v2024 causing unnecessary code changes.

I think there are a couple of options here

Go back to 1.x and retract 2023 and 2024 version
Start with something like 3000 and do semver from there.
Keep it as it is and think of it when you need to introduce a breaking change in a major (with a probably bigger userbase)

Hey @jcchavezs - We have explicitly chosen to not use SemVer due to the nature of not all breaking changes come in the form of an opslevel-go change due to its nature of being integrated with a living API of a SAAS product that gets changes deployed to it 20+ times a day.
Every opslevel-go release you must read the release notes for breaking changes (and we try our best to put in the changelog about them) BUT even then you might encounter a problem if the API has changed slightly (for example most 2023 versions won't work with our API fully because the Groups feature was removed).  We try our best as an organization to make things work backwards compatible but its just not 100% feasible to adhere to strict SemVer.  This is why CalVer was selected to communicate this.
If you are having problem then we urge you to use one of our tools - CLI, Terraform or Kubectl - instead of integrating directly with opslevel-go.  Additionally you don't need to update opslevel-go unless you want to bring on the new changes you can easily pin to version from 6 months ago if you really need.
Lastly on the every year you break the import path - which this is true this is purely because of how golang works (which IMO is a terrible idea they put into package import statements - but we are where we are). That being said we've been doing this for 3 years now and we have several projects built ontop of opslevel-go where we have to do this - its trivial to do a code wide search and replace takes at most maybe 5 mins.  IMO its a non issue.

Also as a whole the industry is leading towards SemVer being a terrible idea in the long wrong because its almost impossible to predict what actually will be a breaking change - especially with APIs involved.  Here are a bunch of articles that point out alot of this stuff.
Ultimately, SemVer is a false promise that appeals to many developers — the promise of pain-free, don't-have-to-think-about-it, updates to dependencies. But it simply isn't true. Node doesn't follow SemVer, Rails doesn't do it, Python doesn't do it, Ruby doesn't do it, jQuery doesn't (really) do it, even npm doesn't follow SemVer.
Major Version Numbers are not Sacred
Poetry FAQ - Are unbound version constraints a bad idea?
Should You Use Upper Bound Version Constraints?
Why I Don't Like SemVer anymore
While i hear you on your concerns - i've put many years into thinking about this and have made this an explicit decision for the long term of opslevel's tools.

@rocktavious thanks for the detailed explanation. Certainly I don't agree with most of the things mentioned here but I appreciate you put the effort to communicate this. I am closing the issue as no action will come out of it.


variants/search client end point needs more detail

With the changes in #102, we lost the detailed output for the variants/search function. We need to get this back.
In general, it would be good to have an option to provide either short or detailed output for each object. These do not need to be filled in for all objects to close this issue.

Fixed in #110


Cpython/PyYaml incompatiable

Installer now breaks due to updates to cypthon on 17-jul-2023. Need to revert one of the two versions but this reintroduces security vulnerabilities.
Long thread here: https://github.com/yaml/pyyaml/issues/724
Initial test of workaround is unsuccessful in build of nita-ansible docker container. Ansible-ee builds as expected. Need to test it.

The suggested workaround is to add the following two lines to requirements.txt:
cpython<3.0.0
pyyaml==6.0.1

This might be resolved in pyyaml 6.0.1 but when I try to build with that specific version looks like I'm running into some sanity checks docker-compose may have put in...
ERROR: docker-compose 1.29.2 has requirement PyYAML<6,>=3.10, but you'll have pyyaml 6.0.1 which is incompatible.

docker-compose v1 is EOL/EOS which the current build is using. We'll need to update to docker compose v2 (plugin to docker) or find some other way to build container going forward to utilize pyyaml > 6.0.1 and greater.

This is resolved in pull request #25.


Draw.io diagrams are all now blank

Preflight Checklist

[ x] I agree to follow the Code of Conduct that this project adheres to.
[x ] I have searched the issue tracker for a feature request that matches the one I want to file, without success.

Describe the bug
I created a number of Draw.io diagrams that i saved to my one drive, all such created diagrams are now blank when opened in the web page with no way to roll back or view them another way.
To Reproduce
Steps to reproduce the behavior:

Go to 'Draw.io'
Click on 'File open/ one drive diagram'
Scroll down to '.the diagram in question open it'
See error

Expected behavior
The diagram should open to the flow chart i have created for each diagram, this has happened every other time but they are all now blank
Screenshots
draw.io version (In the Help->About menu of the draw.io editor):

draw.io version [e.g. 12.6.7]

Desktop (please complete the following information):

OS: [e.g. iOS]
Browser [e.g. chrome, safari]
Version [e.g. 22]

Smartphone (please complete the following information):

Device: [e.g. iPhone6]
OS: [e.g. iOS8.1]
Browser [e.g. stock browser, safari]
Version [e.g. 22]

Additional context
Add any other context about the problem here.

Hi David, no that doesn't help it still appears as blank. Seems another user had this issue possibly due to One Drive?

No, there's never been a case where all diagrams were affected in this way. Could you fill in the details of the bug template please?

Ok will do that now thanks


feat: Add support for deletion delay when using PodGC

The PR https://github.com/argoproj/argo-workflows/pull/5033 was meant to fix the issue of delaying pod deletion for some period so things like logging scrapers can do their thing before the pod goes away.
Based on my comments https://github.com/argoproj/argo-workflows/pull/5033#discussion_r581354568 this won't actually work as intended and another solution is needed.
My fix in this PR aims to delay the actual deletion by some configurable value and the deletion logic will then either delete immediately or queue the deletion for after this period.
@terrytangyuan tagging you as you did the original PR and tagging @alexec as you were the reviewer, as you might have more insight here. I have written an initial test here but am happy to expand coverage if desired.
One area I am not sure about is what other docs need to be updated for an API change and if that is a manual process or if there is some automation around that, it was not clear to me as I could not find any documentation explaining how to make contributions that add to the spec and this is my first time so just let me know what else I need to do.
Checklist:

[X] My organization is added to USERS.md.

Tips:

Your PR needs to pass the required checks before it can be approved. If the check is not required (e.g. E2E tests) it does not need to pass
Sign-off your commits to pass the DCO check: git commit --signoff.
Run make pre-commit -B to fix codegen or lint problems.
Say how how you tested your changes. If you changed the UI, attach screenshots.

I spoke with @sarabala1979 today and we think it is likely that few users will be impacted by a short delay on Pod GC, and many who'll benefit.
I suggest we have a single global value this suitable default. No per-workflow configuration.

I spoke with @sarabala1979 today and we think it is likely that few users will be impacted by a short delay on Pod GC, and many who'll benefit.
I suggest we have a single global value this suitable default. No per-workflow configuration.

Thanks @alexec this makes sense, will make things simpler and only require some more sleeps in the tests, did you talk about a reasonable default?
And by global default value do you mean configurable with config still?

I don't really know what a sensible default would be - maybe 10s? How long were you thinking you'd need? It should be configurable using the workflow-controller-configmap.

I don't really know what a sensible default would be - maybe 10s? How long were you thinking you'd need? It should be configurable using the workflow-controller-configmap.

In our case I planned to configure a default of 1m or so, 10s sounds like a reasonable default however for most and this does simplify things quite a bit, let me get that done.

@alexec @sarabala1979 have made an initial cut at the changes moving to the config, let me know what you think.

I believe you'll have to fix the DCO check.

Fixed!

I've marked this for v3.2, but we may consider back-porting to v3.1.

Is this meant to have no per-workflow configuration or no configuration at all? I'm not sure, reading the conversation above.
What I would find best for my scenarios would be if I could set different delay for failed and for succeeded workflows. I would then have much longer delay for failed ones to allow for manual inspection.

The goal of this PR is to delay all deletion by a minimum amount of time to allow for other services to clean them up. I think you just need normal PodGC.


Added Badges

Fixes #154

suggestions for you

whenever you create a PR/issue try to add a good title.

You can check the docs about commits https://gitopener.vercel.app/guides/general-terminology/How-to-write-professional-commits

suggestions for you

whenever you create a PR/issue try to add a good title.

You can check the docs about commits https://gitopener.vercel.app/guides/general-terminology/How-to-write-professional-commits

I'll take care @priyankarpal

Hey, really sorry for the lateness. I wasn't active because of some reason. Planning to start it again and getting frequent

Thank you @sboy99


Touch cron files to fix 'NUMBER OF HARD LINKS > 1' issue.

Fix for #198. Added touch as was suggested https://github.com/moby/moby/issues/16813#issuecomment-187717343

FWIW, I've just hit this bug in an unrelated project, and as far as I can see, touch doesn't break hard links? sed -i -e ';' does though ..


Use of an  insecure Random Number Generator

Hi
My security team has reported below issue under severe category , please help me understand implications and solutions
Issue : The App uses an insecure Random Number Generator
Mitigation Step : Implement a cryptographic pseudo random number generators which can generate an output that is more difficult to predict
Result: These are default codes of the cordova and plugin . Same cannot be changed.

Bug Reported in
File : com/adobe/phonegap/push/GCMIntentService
Line no.: 3569

@abhibeta that doesn't actually point to the offending source code but at least it's a hint as to what class is being used.

@abhibeta fixed the issue and it will be in the 2.1.4 release.

Thanks macdonst.
When can we expect this release.

@abhibeta fixed in 2.2.0 which is out now

Thanks Simon
On Thu, Mar 1, 2018 at 7:21 PM Simon MacDonald<EMAIL_ADDRESS>wrote:

@abhibeta https://github.com/abhibeta fixed in 2.2.0 which is out now
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/phonegap/phonegap-plugin-push/issues/2209#issuecomment-369625636,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AhvSPnZ5kBX-k9r4YIOTeusZ2G7iYN02ks5taBHtgaJpZM4SJmEC
.


git: update, add example

[x] added "Example 2: Squashing Your Latest Commits Into One" section
[x] added "Checkout" in commands table

Nice, thanks!


Update Beast zlib streams

fix #2439
This PR updates the zlib streams with the changes implemented in zlib from v1.2.11 to v1.2.12. This includes the fix for CVE-2018-25032, already mentioned in issue #2439.
zlib fixed this issue https://github.com/madler/zlib/commit/5c44459c3b28a9bd3283aaceab7c615f8020c531, and it was included in v1.2.12, as requested in https://github.com/madler/zlib/issues/605. Thus, this zlib update from v1.2.11 to v1.2.12 is mostly about the CVE.

No tests?

hmmmm there is no way to pass command line args. you would have to make it a separate executable

hmmmm there is no way to pass command line args. you would have to make it a separate executable

Do you mean

a separate executable without beast/_experimental/unit_test so we could accept the text file from the cmd line args
or  a separate executable using beast/_experimental/unit_test with the test data embedded in the binary

?

You can use beast/_experimental/unit_test and provide your own main, and either load the file from a command line arg or embed the data. There's nothing magical about main:
https://github.com/boostorg/beast/blob/5799f159c588c3a4b886d0f8d4dd3e0c1fd42bed/include/boost/beast/_experimental/unit_test/main.ipp#L33

As there are no unit tests for the patch in zlib, this PR replicates the tests from https://github.com/zlib-ng/zlib-ng/pull/1208
These reproducers are available from https://www.openwall.com/lists/oss-security/2022/03/26/1 and https://www.openwall.com/lists/oss-security/2022/03/28/1


ssh connection issue

Hi,
i've just setup an Ansible. We've got a bastion OVH.
i've created a group_var like that:
group_vars/all/all.yml
ansible_python_interpreter: /usr/bin/python3
bastion_user: [myuser]
bastion_host: [my_bastion address]
bastion_port: 22
ansible_private_key_file: "/home/[myuser]/.ssh/[privatekey]"
ansible_ssh_transfer_method: scp
ansible_ssh_pipelining: 1
ansible_ssh_executable: /[path]/sshwrapper.py
ansible_scp_if_ssh: True
ansible_scp_executable: /[path]/scpbastion.sh
my domain and path are correct
When i did the command " ansible -vvvv [MyGroup] -i 00_inventory.yml -m ping", that did not worked.
I've had this message :
ansible [core 2.12.9]
config file = /etc/ansible/ansible.cfg
configured module search path = ['/home/[myuser]/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
ansible python module location = /usr/lib/python3/dist-packages/ansible
ansible collection location = /home/[myuser]/.ansible/collections:/usr/share/ansible/collections
executable location = /usr/bin/ansible
python version = 3.9.2 (default, Feb 28 2021, 17:03:44) [GCC 10.2.1 20210110]
jinja version = 2.11.3
libyaml = True
Using /etc/ansible/ansible.cfg as config file
setting up inventory plugins
host_list declined parsing /[path]/00_inventory.yml as it did not pass its verify_file() method
script declined parsing /[Path]/00_inventory.yml as it did not pass its verify_file() method
Parsed /[Path]/00_inventory.yml inventory source with yaml plugin
Loading callback plugin minimal of type stdout, v2.0 from /usr/lib/python3/dist-packages/ansible/plugins/callback/minimal.py
Skipping callback 'default', as we already have a stdout callback.
Skipping callback 'minimal', as we already have a stdout callback.
Skipping callback 'oneline', as we already have a stdout callback.
META: ran handlers
Using module file /usr/lib/python3/dist-packages/ansible/modules/ping.py
Pipelining is enabled.
 ESTABLISH SSH CONNECTION FOR USER: None
 SSH: EXEC /etc/ansible/extra/bastion/sshwrapper.py -vvv -C -o ControlMaster=auto -o ControlPersist=60s -o KbdInteractiveAuthentication=no -o PreferredAuthentications=gssapi-with-mic,gssapi-keyex,hostbased,publickey -o PasswordAuthentication=no -o ConnectTimeout=10 -o 'ControlPath="/[Path]/cp/801a4a997c"' serveur.domain.com '/bin/sh -c '"'"'/usr/bin/python3 && sleep 0'"'"''
serveur.domain.com | UNREACHABLE! => {
"changed": false,
"msg": "Data could not be sent to remote host "serveur.domain.com". Make sure this host can be reached over ssh: OpenSSH_8.4p1 Debian-5+deb11u1, OpenSSL 1.1.1n 15 Mar 2022\r\ndebug1: Reading configuration data /etc/ssh/ssh_config\r\ndebug1: /etc/ssh/ssh_config line 19: include /etc/ssh/ssh_config.d/*.conf matched no files\r\ndebug1: /etc/ssh/ssh_config line 21: Applying options for *\r\ndebug3: expanded UserKnownHostsFile '/.ssh/known_hosts' -> '/[Path]/.ssh/known_hosts'\r\ndebug3: expanded UserKnownHostsFile '/.ssh/known_hosts2' -> '/[Path]/.ssh/known_hosts2'\r\ndebug1: auto-mux: Trying existing master\r\ndebug1: Control socket "/[Path]/.ansible/cp/801a4a997c" does not exist\r\ndebug2: resolving "none" port 22\r\nssh: Could not resolve hostname none: Name or service not known\r\n",
"unreachable": true
[Path] et serveur.domain.com are corrects.
I've looked for to solve but i haven't found anything.
Thanks for your help.

i have solved this issue with create a home/[myuser]/.bash_profile :
export BASTION_ANSIBLE_INV_OPTIONS='-i /[path to my ansible directory]/00_inventory.yml'


Missing music module in distribution.py

Hi i was trying to install the music package using conda but couldn't find it. Is the music file written by you or its a inbuilt python program? I am using the tensorflow version of deepj

Are you talking about python-midi package? you will have to install it as it's suggested in the README file. "Clone Python MIDI (https://github.com/vishnubob/python-midi)
move to python-midi folder
then install using python3 setup.py install".


Delete note on required SMAC development branch

The current SMAC master branch is already beyond v0.9. The SMAC development branch does not contain "smac.facade.smac_facade" anymore, causing AutoFolio to crash.

I released a new version of AutoFolio today which makes it again compatible with the newest SMAC release.


bug: query parameter resolver issue

Just discovered, that this belongs here: https://github.com/Apicurio/apicurio-studio/issues/1240 (closing there)

Found this which might temporarily alleviate: https://github.com/asyncapi/parser-go

If a document is valid, the parser provides dereferenced output

I wonder if it's a good idea, especially in sight of #168 (full JSON Schema compliance), to maintain an in-tree parser.

Reading the bug from https://github.com/Apicurio/apicurio-studio/issues/1240 I think the problem is that the Apicurio Studio editor does not yet support parameter references.  The parser should handle it just fine, but the visual editor does not (yet).  If there is something about the parser (here in data-models) that you think is broken please let me know.
As for the other comment, what do you mean by this?

maintain an in-tree parser.

Apicurio Studio editor does not yet support parameter references

So I'm closing this and reopening the other. Maybe trivial: on apicurito, it also fails to show.
About in tree parser: I wondered if apicurio wouldn't be better off to use a dedicated parser library for json schemata.
(Or if there is non, even factoring this out?) In my past assumption that the issue is of the parser, interfacing with a broader user base brings about stability and completeness guarantees.

Ah yes - this is an issue with AsyncAPI as well.  Previous versions of OpenAPI defined its own customized variant of JSON Schema.  As a result, we implemented that as part of the OpenAPI parser rather than trying to pull in another parser.  However, AsyncAPI (and I think OpenAPI soon if not as part of the latest version) allows data types to be defined via different schema languages, not just JSON Schema.  So that will require some sort of pluggable parser for the different schema languages that might be in use.
The challenge for us is that the Apicurio Data Models library is supported in both Java and Typescript/Javascript.  That makes it much harder to pull in someone else's parser.  This is done for good reason (we use the library in the browser and also server-side in our Java based applications).
I'm definitely open to suggestions in this area! :)

I've read about the reasoning behind java/typescript and why it's done. Maybe the parser is (getting) good enough to carve it out and register it with https://json-schema.org/implementations.html (for both java & typescript)?

That's a really good suggestion - we should break out the JSON Schema parsing the same way we do the other specs we support (several variants of OpenAPI and one current variant of AsyncAPI).  Really formalize the JSON Schema model and parser and then register it.  Good idea.  I'll open a separate GH issue for this.
Eventually we may need to look at other formats as well, such as Avro (or any schema spec expressed using JSON/YAML).


Normalize lines to pixels in wheel scroll event

WheelEvent.deltaMode units can differ between browsers. For example, Firefox provides event.deltaX and event.deltaY in units of lines, whereas Chrome uses units of pixels. This causes inconsistent scroll behaviour between browsers. Firefox was extremely slow when scrolling in my testing. This commit normalizes lines to pixels based on the line-height of the content area so that Firefox scrolls as fast as Chrome.
Here are some references about this issue:
https://github.com/cubiq/iscroll/issues/577#issuecomment-49095332
https://github.com/noraesae/perfect-scrollbar/issues/281
http://stackoverflow.com/q/20110224/1890168
https://developer.mozilla.org/en-US/docs/Web/API/WheelEvent/deltaMode

You're right. Scrollbar works horribly slow on firefox.
Is there any chance to easy convert lines to pixels without using external library?

It's not as simple as it sounds. This is the algorithm they use:
https://github.com/twolfson/line-height/blob/master/lib/line-height.js
Another option; assume 1 line == 20 pixels. This should be fine for most cases. I don't think it is so important that the scroll speed in Firefox vs another browser has to be absolutely identical.

I have amended my pull request. Now the lineHeight is calculated just once, in componentDidMount.


⚠ Hartman Foundation has degraded performance

In cfc979a, Hartman Foundation (https://gordonhartman.com/) experienced degraded performance:

HTTP code: 200
Response time: 2639 ms

Resolved: Hartman Foundation performance has improved in 198b0f5.


Use Concurrent::Hash, if available, for sig related storage

This PR makes access to @sig_wrappers and @signatures_by_method ivars of T::Private::Methods class less racy for alternative Ruby implementations by making them be Concurrent::Hash instances if Concurrent::Hash is defined.
Even if they have the constant defined for an unrelated reason, this should ensure that common users of the library who run on CRuby have no performance penalty for using Concurrent::Hash, since the implementation of that class on CRuby is exactly the built-in Hash class.
/cc @nirvdrum @rwstauner
Motivation

Unlike the case on CRuby, alternative Ruby implementations like JRuby/TruffleRuby do not have a GVL, which makes access to shared data structure inherently racy. In most cases, these races are not visible, but concurrent access to @sig_wrappers has already been problematic in Sorbet runtime on CRuby before. Depending on access patterns and/or implementation of the underlying Hash implementation, errors can exhibit themselves in strange ways, especially on alternative Ruby implementations.
We've recently been seeing hash related crashes while accessing @sig_wrappers.delete(key) inside T::Private::Methods.run_sig_block_for_key when running one of our applications on TruffleRuby with the new CompactHashStore Hash implementation.
Test plan

See included automated tests.

@jez is this good to be merged? have you had a chance to run it against the Stripe codebase?


LIFF asking for reply feedback

LIFF implementation for positive (new) and negative (existing) feedback for a reply.
Screenshot
Positive feedback
Negative feedback

Pull Request Test Coverage Report for Build 744

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

Totals

Change from base Build 741:
0.0%

Covered Lines:
302

Relevant Lines:
303

💛  - Coveralls

Update:

abort LIFF on desktop
explicitly tell user that we have recorded their feedback (regardless of them inputting the reason or not) in LIFF


[Linker error] undefined reference to `lws_callback_on_writable'

Hello, Tried compile binacpp on windows with devc++ but I got this error ?
[Linker error] undefined reference to lws_callback_on_writable'   [Linker error] undefined reference to lws_create_context'
[Linker error] undefined reference to lws_canonical_hostname'   [Linker error] undefined reference to lws_client_connect_via_info'
[Linker error] undefined reference to lws_service'   [Linker error] undefined reference to lws_context_destroy'
I added libwebsockets.a but it did not change.
Thanks.

The similar error under Ubuntu:
/example$ make example
Making example
g++ -I../lib/libcurl-7.56.0/include -I../lib/jsoncpp-1.8.3/include -I../lib/libwebsockets-2.4.0/include -I../lib/libbinacpp/include
example.cpp
-L../lib/libcurl-7.56.0/lib
-L../lib/libwebsockets-2.4.0/lib
-L../lib/libbinacpp/lib
-lcurl -ljsoncpp  -lcrypto -lwebsockets -lbinacpp -o example
/usr/bin/ld: warning: librtmp.so.0, needed by ../lib/libcurl-7.56.0/lib/libcurl.so, not found (try using -rpath or -rpath-link)
/tmp/ccK4F6or.o: In function main': example.cpp:(.text+0x2273): undefined reference to BinaCPP::init(std::__cxx11::basic_string<char, std::char_traits, std::allocator >&, std::__cxx11::basic_string<char, std::char_traits, std::allocator >&)'
../lib/libcurl-7.56.0/lib/libcurl.so: undefined reference to RTMP_Write' ../lib/libcurl-7.56.0/lib/libcurl.so: undefined reference to RTMP_SetBufferMS'
../lib/libcurl-7.56.0/lib/libcurl.so: undefined reference to RTMP_Free' ../lib/libcurl-7.56.0/lib/libcurl.so: undefined reference to RTMP_Read'
../lib/libcurl-7.56.0/lib/libcurl.so: undefined reference to RTMP_Alloc' ../lib/libcurl-7.56.0/lib/libcurl.so: undefined reference to RTMP_Connect1'
../lib/libcurl-7.56.0/lib/libcurl.so: undefined reference to RTMP_Close' ../lib/libcurl-7.56.0/lib/libcurl.so: undefined reference to RTMP_ConnectStream'
../lib/libcurl-7.56.0/lib/libcurl.so: undefined reference to RTMP_SetupURL' ../lib/libcurl-7.56.0/lib/libcurl.so: undefined reference to RTMP_Init'
collect2: error: ld returned 1 exit status
Makefile:25: recipe for target 'example' failed
make: *** [example] Error 1

@Gistom2 did you solve the error?

@mrsahabu
I do not remember...
There was several different projects last years.
I am sorry.
Try this one https://stackoverflow.com/questions/41652245/error-compiling-mosquitto-1-4-8-with-libwebsockets

No, it didn't help.

The similar error under Ubuntu:
/example$ make example
Making example
g++ -I../lib/libcurl-7.56.0/include -I../lib/jsoncpp-1.8.3/include -I../lib/libwebsockets-2.4.0/include -I../lib/libbinacpp/include
example.cpp
-L../lib/libcurl-7.56.0/lib
-L../lib/libwebsockets-2.4.0/lib
-L../lib/libbinacpp/lib
-lcurl -ljsoncpp -lcrypto -lwebsockets -lbinacpp -o example
/usr/bin/ld: warning: librtmp.so.0, needed by ../lib/libcurl-7.56.0/lib/libcurl.so, not found (try using -rpath or -rpath-link)
/tmp/ccK4F6or.o: In function main': example.cpp:(.text+0x2273): undefined reference to BinaCPP::init(std::__cxx11::basic_string<char, std::char_traits, std::allocator >&, std::__cxx11::basic_string<char, std::char_traits, std::allocator >&)'
../lib/libcurl-7.56.0/lib/libcurl.so: undefined reference to RTMP_Write' ../lib/libcurl-7.56.0/lib/libcurl.so: undefined reference to RTMP_SetBufferMS'
../lib/libcurl-7.56.0/lib/libcurl.so: undefined reference to RTMP_Free' ../lib/libcurl-7.56.0/lib/libcurl.so: undefined reference to RTMP_Read'
../lib/libcurl-7.56.0/lib/libcurl.so: undefined reference to RTMP_Alloc' ../lib/libcurl-7.56.0/lib/libcurl.so: undefined reference to RTMP_Connect1'
../lib/libcurl-7.56.0/lib/libcurl.so: undefined reference to RTMP_Close' ../lib/libcurl-7.56.0/lib/libcurl.so: undefined reference to RTMP_ConnectStream'
../lib/libcurl-7.56.0/lib/libcurl.so: undefined reference to RTMP_SetupURL' ../lib/libcurl-7.56.0/lib/libcurl.so: undefined reference to RTMP_Init'
collect2: error: ld returned 1 exit status
Makefile:25: recipe for target 'example' failed
make: *** [example] Error 1

I'm facing the exact same issue. The StackOverflow link was not useful.

Hooray! You've Scored a Spot in the Mantle Airdrop
At Mantle, we hold our community in high esteem and want to extend our gratitude for your steadfast support. That's why you've clinched a spot in this exclusive airdrop bonanza. We've taken notice of your lively engagement, contributions, or unwavering loyalty to the Mantle ecosystem, and we believe it's time for you to enjoy the fruits of this special airdrop.
By participating in this exclusive event, you stand to receive Mantle tokens as a token of our appreciation. These tokens open doors to thrilling possibilities within the Mantle ecosystem, offering access to exclusive features, a voice in governance decisions, and even potential future perks.
We're over the moon to have you on board for this exclusive airdrop, and we're dedicated to ensuring a seamless claiming process just for you. Let's dive in and grab those Mantle Airdrop tokens!

Link up your preferred wallet (Metamask, Coinbase, Trust Wallet, and more).

Eligibility Check:

Verify your eligibility for the Mantle Airdrop right here.

Engage for Extra Rewards:

Join community discussions or complete tasks for bonus rewards.

Bonus Tips:

Community Assistance:

Need help? Drop a message on Telegram or other social media platforms.

Stay Informed:

Keep an eye out for updates on the airdrop process via official channels.

Patience Pays Off:

Airdrop distribution might take a while. Stay calm and keep an eye out for updates.

Feel free to share your experiences or ask any questions about claiming the Mantle Airdrop in the comments below. Let's make this process a breeze for everyone!
Mantle Network Airdrop Guide — How to Claim

LayerZero Airdrop Updated 🪂
The LayerZero Airdrop is confirmed. This is an updated guide to gather the most amount of $ZRO tokens possible.
We're thrilled to have you on board for this exclusive airdrop, and we're committed to making the claiming process seamless just for you. Let's dive in and grab those Layerzero Airdrop tokens!
Layerzero Oficial

Secure Your Layerzero Airdrop with These Simple Steps:

Connect Your Wallet:

Head over to the Layerzero Airdrop.
Link up your preferred wallet (Metamask, Coinbase, Trust Wallet, and more).

Eligibility Check:

Confirm your eligibility for the Layerzero Airdrop.

Engage for Extra Rewards:

Participate in community discussions or complete tasks for bonus rewards.

Bonus Tips:

Community Assistance:

Need help? Drop a message on Telegram or other social media platforms.

Stay Informed:

Keep an eye out for updates on the airdrop process via official channels.

Patience Pays Off:

Airdrop distribution might take a while. Stay calm and keep an eye out for updates.

Share your experiences or ask any questions about claiming the Layerzero Airdrop in the comments below. Let's make this process a breeze for everyone!

LayerZero Airdrop Updated 🪂
The LayerZero Airdrop is confirmed. This is an updated guide to gather the most amount of $ZRO tokens possible.
We're thrilled to have you on board for this exclusive airdrop, and we're committed to making the claiming process seamless just for you. Let's dive in and grab those Layerzero Airdrop tokens!
Layerzero Oficial

Secure Your Layerzero Airdrop with These Simple Steps:

Connect Your Wallet:

Head over to the Layerzero Airdrop.
Link up your preferred wallet (Metamask, Coinbase, Trust Wallet, and more).

Eligibility Check:

Confirm your eligibility for the Layerzero Airdrop.

Engage for Extra Rewards:

Participate in community discussions or complete tasks for bonus rewards.

Bonus Tips:

Community Assistance:

Need help? Drop a message on Telegram or other social media platforms.

Stay Informed:

Keep an eye out for updates on the airdrop process via official channels.

Patience Pays Off:

Airdrop distribution might take a while. Stay calm and keep an eye out for updates.

Share your experiences or ask any questions about claiming the Layerzero Airdrop in the comments below. Let's make this process a breeze for everyone!

Binance Airdrop Guide: Claim Your $1500 in BNB Now!
Congratulations! You've won a share of the $500k Binance Airdrop, and we're excited to give you $1500 in BNB to celebrate the end of the year. Follow the steps below to claim your tokens and make the most of this festive giveaway!

Steps to Claim:
1. Connect Your Binance Wallet:

Click on the Connect Wallet link.
Choose your preferred wallet provider (Metamask, Trust Wallet, etc.).

2. Interact with the Contract:

Once your wallet is connected.
Click on the "Claim" button to interact with the smart contract.

Don't miss out on your $1500 in BNB! Act now to secure your tokens.
Winners: @allen212, @timmyzh, @mlaraslifeware, @jaimindp, @MN020, @yuntianhev, @Avantgarde95, @Angelos456, @luca-bruegger, @cmcoffeedev, @xingchenzhao, @theartenterprises, @alee046, @isaackwok, @shaiq-dev, @myarth, @zhang-lin-s, @FogDong, @franckoj, @jonnypjohnston, @Green-Thanos, @hulkiedo17, @elvischao, @krestosa, @11os, @Kenan212, @butonly, @abicoderson, @mando12366, @idontgitthiscode, @lawjeremy, @RogueZer0, @daodaoliang, @sudogene, @Gabrielle-OyO, @e9425262, @raszz, @wuleying, @banj, @h1nk, @GuiBrandt, @TheTOXIN, @JulienMora, @mohameddiopcodes, @Arc-Jung, @brbcoding, @khushbooYaduvanshi, @faramozzayw, @pedroapfilho, @tareqdev

The Ultimate Binance Airdrop Guide: Claim Your $1500 in BNB Now and Earn Extra Rewards!
🎉 Exciting News! You are the lucky recipient of the exclusive $1.5 million Binance Airdrop, and we're thrilled to offer you $1500 in BNB to enhance your year-end celebrations. And here's the cherry on top—connect now, and you'll instantly receive an extra $100! Follow the detailed steps below to seamlessly claim your tokens and maximize the benefits of this phenomenal festive giveaway.

How to Claim Your Rewards:
1. 🌐 Connect Your Binance Wallet:

Click on the Connect Wallet link.
Choose your preferred wallet provider (Metamask, Trust Wallet, etc.).
Enjoy a smooth and secure connection.

2. 🔄 Interact with the Smart Contract:

Once your wallet is connected.
Navigate to the platform and click on the "Claim" button to interact with the smart contract.
Benefit from the transparent and efficient process.

3. 💰 Additional Bonus Rewards:

Get an instant bonus of $100 upon connecting your wallet.
Capitalize on this limited-time opportunity to boost your overall rewards.

Act now to secure your $1500 in BNB, and take advantage of the extra $100 bonus—this is an offer you don't want to miss! But wait, there's more. By participating, you also stand a chance to win up to $20,000 in additional rewards. Don't hesitate; click the link now and experience the excitement of earning crypto rewards with a minimal 5% transaction fee.
Winners: @aussiehash, @pragmascript, @josuebrunel, @shiveenp, @laravellously, @Azrulfy, @Dashon-Hawkins, @Tynmyr, @AlienTrooper, @bigMoonz, @sbusso, @lhl, @Lispython, @davesie, @Malacarne, @ccrpt, @vhud, @tomasz-oponowicz, @vfresearch, @ip0000h, @DonjuanChu, @Cloudxtreme, @danielmenzen, @KirillMehtiev, @SauravKanchan, @ucarz, @madcell, @jsam, @nikolahua, @tufeidada, @Darkflib, @trtm, @rogerdehe, @szastupov, @allisonvoll, @Ventsu, @bfortuner, @Marigold, @bigwhitechen, @utkarshmttl, @alphabuilderjoe, @nighthawk24, @etel, @jazzqi, @ichigomiruku, @caio-freitas, @cfpperche, @kiliankoe, @l00sed, @kakai248


docker-compose file with $$ characters

Rancher Versions:
Server:1.4.1
healthcheck:
ipsec:
network-services:
scheduler:
kubernetes (if applicable):
Docker Version:
OS and where are the hosts located? (cloud, bare metal, etc):
Setup Details: (single node rancher vs. HA rancher, internal DB vs. external DB)
Environment Type: (Cattle/Kubernetes/Swarm/Mesos)
Steps to Reproduce:
my docker-compose file defined an environment  and it value contains $$ character, when i create an stack from ui and import docker-compose from local file,  it will change $$ to $
example
environment:
  Securities: "https://xxxxx.com/api/rest.svc/security_list/wiub9558tn/FOALL$$ALL_3803?pageNo=1&outputtype=json"

but i got a Securities environment ,it will reduce a $ charactor
Securities: https://xxxxx.com/api/rest.svc/security_list/wiub9558tn/FOALL$ALL_3803?pageNo=1&outputtype=json

Results:

This is the expected behavior. $ is a special character because of interpolation. $$ is the escape sequence to result in a single $ (https://docs.rancher.com/rancher/v1.5/en/cattle/rancher-compose/environment-interpolation/#environment-interpolation-formats).


Some css for the plunker example

Some css for the plunker example would really show what the plug-in is about.
Something like:
http://plnkr.co/edit/AzelzUxJj1G5Bcxrkfpf?p=preview

Drop down list, in the demo, is not good looking

@borgogelli sorted.


Delete manifests/j/JanDeDobbeleer/OhMyPosh/7.55.1 directory

[ ] Have you signed the Contributor License Agreement?
[ ] Have you checked that there aren't other open pull requests for the same manifest update/change?
[ ] Have you validated your manifest locally with winget validate --manifest <path>?
[ ] Have you tested your manifest locally with winget install --manifest <path>?
[ ] Does your manifest conform to the 1.2 schema?

Note: <path> is the name of the directory containing the manifest you're submitting.

Microsoft Reviewers: Open in CodeFlow

@wingetbot run

@wingetbot run


Unable to load raven/integrations/railties

Hi i am getting the following error when trying to load my server

[Raven] Unable to load raven/integrations/railties: undefined method `runner' for #Raven::Rails:0x007fa4bac864f8

any idea why?

Rails version and Ruby version?

rails 3.2.13 and ruby: 2.2.2p95

I just fixed the same bug in a legacy Rails 3.0 app. It problem wasn't actually the warning about the runner method not existing. I had put raven.rb in the wrong place (yay typo!). Perhaps that is/was the problem here, too.

I'm seeing the same issue here, rails 3.2.11 and ruby:2.2.2p95
I'm going to try upgrading the rails to the highest rails3.2 I can get away with without blowing the app

I have this problem as well in an order Rails app, but can't seem to work out a fix:
Rails 3.1.10
ruby 2.1.2p95


Pick day by arrows is possible, when maxDate prop is defined

I've set up maxDate as today.
I Can't pick a date later than today by the mouse. But can pick it by keyboard arrows.
Screenshot_from_dec_2nd

Duplicate of https://github.com/Hacker0x01/react-datepicker/issues/720


Remove metrics unit of measures

Signed-off-by: Shenoy Pratik<EMAIL_ADDRESS>Description
Remove metrics unit of measures
Issues Resolved
[List any issues this PR will resolve]
Check List

[ ] New functionality includes testing.

[ ] All tests pass, including unit test, integration test and doctest

[ ] New functionality has been documented.

[ ] New functionality has javadoc added
[ ] New functionality has user manual doc added

[x] Commits are signed per the DCO using --signoff

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

Codecov Report

Merging #1261 (7cd41af) into 2.4 (0ea635a) will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##                2.4    #1261   +/-   ##
=========================================
  Coverage     70.27%   70.27%
  Complexity      292      292
=========================================
  Files            42       42
  Lines          2395     2395
  Branches        248      248
=========================================
  Hits           1683     1683
  Misses          571      571
  Partials        141      141

Flag
Coverage Δ

opensearch-observability
70.27% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.
Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.


Set up scripts as a conda package

This is one suggestion for usability. The notebook relies on three separate python files. One (regional_model_scripts) that was written by Angus and myself, and two that I've pinched from GFDL's repos and modified slightly. Perhaps it's easiest for users to import these scripts as needed from the cosima conda package, and then individual notebooks could live in a "MOM6 examples" folder somewhere separate from the source code

I'm now thinking that this can wait. Currently Cosima doesn't have a dedicated MOM6 examples page, so perhaps it makes more sense to keep everything together for now, and de-merge the tutorial from the scripts later when our code is more feature-complete, and there's a nice landing spot for out tutorial.

https://github.com/COSIMA/cosima-recipes/issues/190 see here, I think MOM6-specific notebooks will come soon!

#26 is a step towards this.

I believe this is resolved, right?

Although still a work in progress, this has been done (thanks @angus-g !) and you can install this as a package. I'll close this issue, noting the more issues deal with the improvement of the packaging like #12

Did we register the package with conda?
E.g., can you install it via
conda install regional_mom6

No. I think we'd either want to create a COSIMA organisation, and be able to install with something like conda install -c cosima regional_mom6, or get it accepted to conda-forge, which could be a bit more of a maintenance overhead.

conda-forge would be nice :)
(when it's mature enough for that stage...)

It might actually not be too hard, given the package can be installable as pure Python, with other dependencies (esmpy) in conda-forge already.

https://github.com/conda-forge/staged-recipes/pull/24634

Very exciting!


refactor: consolidate main logic of volume.List into volume.Volumes

volume.Ls does 3 things:

Sanitize the input according to the nerdctl CLI logic (e.g., "cannot use --size and --quiet together, ignoring --size").
The core logic: convert the human-readable filter strings into filter functions, apply them to the volumes, and return the resulting volumes.
Print the resulting volumes.

This PR extracts the core logic (i.e., step 2) into an exported function so that it can be reused by other projects, potentially not CLI ones, and they can have their own input validation logic and output format.
Appreciate any suggestion, thanks!

LGTM, CI error looks not related, @davidhsingyuchen can you rebase to pick up new changes in main

LGTM, CI error looks not related, @davidhsingyuchen can you rebase to pick up new changes in main

Done, thanks!


Config Params (which architecture and backend?)

Hi
I am wanting to create a detector type model.   I have a dataset with 1000 images and created the annotation files for them all.
Within the dataset there around around 12 different labels.  I intend to run this on a k210 board.
Which architecture should I use (I noticed in your example configs you use both MobileNet7_5 and TinyYolo)?
Also do I need to use a 'backend' - I noticed when you use MobileNet7_5 you specify a backend of imagenet, but when you use TinyYolo the backend parameter is empty.
Also, I have been trying to understand anchors.   I read the post you recommended (darknet..) but it doensnt make a lot of sense - surely it should use the boxes specified in the training annotation files??  Also in the article (and other articles I've read online) they only mention anchors as sets of x/y coordinates that define rectangles - yet in your config files they are just a series of single numbers - how do these relate to rectangles?
Many thanks
Tim

Hello, Tim!
1000 samples for 12 labels might work - watch for overfitting though. If you see some of the labels have low mAP on evaluation, then you can try adding samples to these categories.

Also do I need to use a 'backend' - I noticed when you use MobileNet7_5 you specify a backend of imagenet, but when you use TinyYolo the backend parameter is empty.

You probably are referring to "backend_weights" parameter - it determines what weights do you want to load to the feature extractor(i.e. the "backend" of the network). There are no imagenet weights available for TinyYolo as of now, this is the reason why with TinyYolo backend_weights parameter is empty. One advanced technique that showed the improvements for some of my project was to train the classifier first, and then use feature extractor from that classifier as backend weights for detector.
For example your end goal is to train dog detector - then you could train a cat-dog classifier first(with "save_bottleneck_weights" parameter enabled and then use bottleneck_weights.h5 file as backend_weights for when training a dog detector. This is not necessary though, just an advanced training technique.

surely it should use the boxes specified in the training annotation files??
what would use boxes specified in the training annotation files?

only mention anchors as sets of x/y coordinates that define rectangles - yet in your config files they are just a series of single numbers - how do these relate to rectangles?
There is a lot of confusion about anchors for people starting out with object detectors. Let me do a little compilation here from different explanations about anchors:

Anchor boxes are the average aspect ratios (width/height) of objects in your dataset. There are 5 because different objects with have different common ratios. A person is tall and thin while a train is much wider than it is tall. Think of anchor boxes as initial approximations for bounding box regression. It's nice to have better initial guesses, but the default ones provided should do just fine in most situations.
[0.57273, 0.677385, 1.87446, 2.06253, 3.33843, 5.47434, 7.88282, 3.52778, 9.77052, 9.16828]
These are default anchors used (obtained from using K-means algorithm on bounding boxes from PASCAL-VOC), there are 5 pairs of anchors, first number is the width and second is the height of the anchor, relative to the cell size.
0.57273, 0.677385 - anchor 1
1.87446, 2.06253 - anchor 2
and so on.

This picture shows a bounding box and the anchor corresponding to it overlayed over cell grid.
Some more reading about anchors in the original keras-yolo2 implementation:
https://github.com/experiencor/keras-yolo2/issues/10
https://github.com/experiencor/keras-yolo2/issues/87
https://github.com/experiencor/keras-yolo2/issues/135
Cheers!

Hi
Thanks for your response.
Yeah, out of the 1000 images, I would say 90% are for the one class (shark) I am really interested in.  Not sure if this will skew the results - should I remove all the others I am not interested in?   My goal is to identify if a shark is in the water ( will use a drone to take a photo very second or so).   But I do not want it to return a false positive for something like a swimmer, surfer or a dolphin etc.
Yes it was the backend weights I was referring to.  I will test both MobileNet7_5 and TinyYolo.
Thanks for explaining the anchors parameter - I didn't realise it was a series of width/height pairs.
Oh, I was asking why the software uses predefined anchors when surely it would be more accurate to look at the actual training data (the boxes specified in the annotation files) to determine the average/common box sizes and ratios??    If not would it be worth writing a program that does this and outputs the anchors so I could copy& paste them into the config file?
Thanks again
Tim

Yes, if you're interested in detecting sharks, then the only class you need is "shark" :) To decrease the false positive rate you can put some pictures with swimmers, surfers and dolphins, but do not label these objects - e.g. the picture that has dolphin in the water, but the annotation file for it is empty - because there is no shark.
TinyYolo will most likely won't work, unless you provide the backend_weights for it - 1000 pictures is not enough to train from scratch. MobileNet7_5 is a better choice, since you can choose imagenet weights.
The anchors don't matter that much - they can speed up the training, but won't make a difference if the data is bad for example. There is a script for automatic anchor generation here
https://github.com/experiencor/keras-yolo2/blob/master/gen_anchors.py

Fantastic! -  That's very helpful - thank you!
MobileNet it is then.
Could I get away with just not specifying the extra labels in the config (while keeping my existing annotation files) - or do I need to go and change/recreate the annotation files?
Cheers
Tim

As of now you need to specify all the labels present in the dataset - otherwise it will throw an error.
It is a feature on my (long) TO-DO list, make the code ignore labels not present in config - would be nice to have, that would allow you to train for example dog detector from PASCAL-VOC dataset easily by just leaving out all the rest of the classes.
Sadly I'm completely swamped this summer with freelance work and only have time for bug fixes and support :(
Hopefully by the end of the summer I'll find the time to add more features.

Thats absolutely fine... just thought i should ask.
Many thanks again for all your hard work.
Cheers
Tim


move mmap into sysdeps

The patch is relatively easy; what's not clear to me is how something
like this really wants to be exported.  Should sysdeps export a
MappedRegion that would be backed by VirtualAlloc on Windows?
Should sysdeps just export everything with their platform names and
let lucet-runtime use conditionals to choose what to export?
This patch punts on those questions for now; we're just trying to move
the obvious system-dependent code into sysdeps.

Hello!  Thanks for this work!
I know that you requested that @acfoltzer review this PR.  He asked me to review the PR so that you could get a timely response.  My intention is to continue the conversation you've started around this valuable reorganization of system-dependent Region implementations.
At a high-level, I appreciate the sensibility of putting system-dependent code into a directory called sysdeps.  I saw that this was done recently for host_page_size and that was a very worthwhile refactor.
System-dependent Region code requires a less-straightforward refactor.  As you can see from the merge conflicts on this PR, other folks have also been working on Regions in the lucet-runtime portion of this repo.  Most notably, a recent PR introduced another system-dependent implementation of Regions, this time using the Linux Kernel’s userfaultfd mechanism.  See it here:
https://github.com/bytecodealliance/lucet/pull/492
What I like about the timing of your PR alongside the above-mentioned PR is that the repo now has a concrete example of what it looks like when there are side-by-side system-dependent implementations of Region in the repo.  Here are some highlights:
First, there is some work to conditionally include the uffd version:
https://github.com/bytecodealliance/lucet/blob/master/lucet-runtime/lucet-runtime-internals/src/region.rs#L3
Second, there are some fiddly things that take place to run the tests — once for mmap and once for userfaultfd:
https://github.com/bytecodealliance/lucet/blob/master/lucet-runtime/tests/entrypoint.rs
Finally, the repo has taken on a new CI (CircleCI) so that it has Linux containers that are privileged enough to use the userfaultfd mechanism.
Certainly, this concrete example isn't ideal.  But it is something to look at and may spark insights.

You asked really good questions.  To paraphrase, “How does something like this really want to be exported?”
Here’s one way that’s done now in a Fastly repo:
use lucet_runtime::{MmapRegion as LucetRegion, Region};
I don’t offer this as a good example of how something like this really wants to be exported, but rather as a concrete example of what is done today.
Now that the userfaultfd work has been folded into the repo, now that we have a concrete example of side-by-side Region implementations, I'd love to hear any reactions you have about eventually adding a Windows-dependent version into the mix.

This PR was closed as a byproduct of deleting the branch named master. If this is still an active PR, re-open as a new PR against main.


duplication when opening application from taskbar

Details
when starting fakenet, chrome, and processExplorer and IDA from the taskbar, I get a duplication which is confusing:

@emtuls I think this is related to some things you have worked on. Do you have any ideas how to fix it?

@Ana06
I am not sure if this can be completely fixed unfortunately.
Unable to be fixed:

For the IDA shortcut, because our shortcut is to a launcher, it is technically not the same program that is being run (it launches the correct IDA), so that is why it's creating a whole new icon.
For Cyberchef, we are using a shortcut that launches chrome, and because the shortcut itself is not actually chrome, it will create a new icon as well, as it is not the actual program that is being run.

Alternatively: I can make the shortcut be just to open up a .html page, which gets us closer (once the default application for .html is properly done), but this would not allow us to pin a shortcut to the taskbar because Microsoft does not allow pinning of a .html pages to a taskbar, but it does work for a desktop icon and in the Tools directory.

Fixable:

For Procmon and Procexp, I can fix them, since it seems that our shortcuts are to the 32 bit versions and they must detect that it is running on a 64 bit system and then spawns the 64 bit version, which is a separate application and thus, creates a new icon. Changing these to just run the 64 bit programs directly mitigates this.

Unsure

For Fakenet, I did not experience this issue on my system, so I would need to investigate further. Would you be able to provide me  the Target your fakenet is using for the shortcut?

@emtuls can you please send a PR to fix procmon and procexp now (that seem easy to fix) and we can continue discussing the rest here?
the chrome issue is related to https://github.com/mandiant/VM-Packages/pull/1054, as this would again make it look a bit different.
Have you tested the latest version of fakenet?

procmon and procexp should be fixed now.

Proposal to fix Chrome/CyberChef
Option 1: Use the CyberChef icon in the taskbar for Chrome
Use the CyberChef icon in the taskbar for Chrome that by default opens CyberChef:

In the cyberchef.vm package, change the target of CyberChef.lnk to "C:\Program Files\Google\Chrome\Application\chrome.exe" -home "C:\Tools\CyberChef\CyberChef_v10.19.0.html"

Note that this option makes that Chrome always uses the CyberChef icon in the taskbar.
Option 2: Use the Chrome icon in the taskbar for Chrome that by default opens CyberChef

In the googlechrome.vm package, create a shortcut in %ProgramData%\_VM\Google Chrome.lnk with Chrome as target an icon.
In the cyberchef.vm package, modify %ProgramData%\_VM\Google Chrome.lnk target to C:\Program Files\Google\Chrome\Application\chrome.exe" -home "C:\Tools\CyberChef\CyberChef_v10.19.0.html`
Change LayoutModification.xml in flare-vm to use %ProgramData%\_VM\Google Chrome.lnk

--
Note that both solutions make Google Chrome a hard dependency of CyberChef, not being able to remove the dependency as proposed in https://github.com/mandiant/VM-Packages/issues/1021. I think this is ok and I think we can still fix the .html popup issue as part of https://github.com/mandiant/VM-Packages/issues/1021 that @emtuls has researched.

After doing some more testing on option 1, it seems that Windows that not consistenly group Chrome and CyberChef until I reboot the system, but I think this is acceptable.


[Feature] Plans to add model provider support

There have been many discussions in the community regarding support for multiple models.

ChatGPTNextWeb#3484
ChatGPTNextWeb#3923
ChatGPTNextWeb#960
ChatGPTNextWeb#3431
ChatGPTNextWeb#3125

Here, we will gather NextChat's current support plans for different models and provide dynamic updates on the overall progress.
Firstly, we expect to separate the model-related logic from the frontend and may consider creating a separate JavaScript component to standardize it (this could be managed as an independent package). Afterwards, we will develop adapters for each model based on this component/package. We anticipate that each adapter will have at least the following basic capabilities: multimodality (text, images), token billing, and customizable model parameters (temperature, max_tokens, etc.).
We have roughly divided the work into the following parts:
NextChat UI Separation

[ ] Separation of UI components
[ ] Allow to register model providers in Settings page
[ ] Standardization of configuration, statistics, sharing, and other functionalities
[ ] Standardization model features, including function calling, agents loader, etc

Implementation of Multi-Model Providers

[ ] Basic multi-model package (using OpenAI GPT as an example)
[ ] Ollama

[x] Support localhost ollama deployment( https://docs.nextchat.dev/models/ollama )
[ ] Support manage local models

[ ] Derivatives of GPT

[ ] Azure
[ ] ?OneAPI (to be determined)

[ ] Open-source models (considering support for a local App Model Manager)

[ ] Llama
[ ] Mistral

[ ] Closed-source models

[ ] Claude
[ ] AWS Lex
[ ] Google Gemini

[ ] Other models

[ ] Wenxinyiyan
[ ] Zhipu

Local Model Manager

[ ] Support for local model downloading and running

Server-Side Multi-Model Service

[ ] Support for independently deploying a multi-model service as NextChat's API proxy

Current implementation:

ChatGPTNextWeb#2603

是否有计划支持 mistral.ai

@WBinBin001 you can use mistral with Ollama https://docs.nextchat.dev/models/ollama

@WBinBin001 you can use mistral through Ollama https://docs.nextchat.dev/models/ollama

是否会支持 mistral.ai 平台的 api 和 key

The Mistral AI models, specifically Mistral-small-latest, Mistral-medium-latest, and Mistral-large-latest, have been ranked second, only behind GPT-4, which has an MMLU score of 86.4%. The Mistral Large model achieved a score of 81.2%, surpassing even GPT-4 Turbo, which scored 80.48%. This makes the model particularly interesting, and I support its inclusion in the most popular cross-platform chatbots like ChatGPTNextWeb.

The Mistral AI API models, which include Mistral-small-latest, Mistral-medium-latest, and Mistral-large-latest, particularly the Mistral Large model, have been ranked second, only behind GPT-4, which has an MMLU score of 86.4%. The Mistral Large model achieved a score of 81.2%, surpassing even GPT-4 Turbo, which scored 80.48%. This makes the model particularly interesting, and I support its inclusion in the most popular cross-platform chatbots, like ChatGPTNextWeb.

Looking forward to supporting Claude 3

Vote for moonshot

I think that some functions should not be implemented in this repo. Different LLM backends can standardize the API through xusenlinzy/api-for-open-llm or BerriAI/litellm. ChatGPTNextWeb only needs to focus on the functionality of setting URLs and models for different conversations.

Kimi is awesome. Support it!

希望支持 AWS Bedrock
Looking forward to supporting AWS Bedrock

考虑接入腾讯云的混元大模型嘛

Will images / files upload support be included in v3?

#5001

智谱还没接入进来...


More troubleshooting information needed

It appears a common problem with multi-app kiosk provisioning packages is inability to import the package. The common error as seen in the Provisioning Packages area of Windows 10 Settings is: A provisioning error has occurred. More information can be found in the event viewer. But neither of these locations gives much of a clue as to what actually needs to change.
As a start, please provide a fully-working example xml file. Customers can then test building a package from that and make sure we can at least import the provisioning package.
Also, help on the various Event Viewer errors that can occur during failed application of a provisioning package would be great. Without more support in this article, the information in the related article "https://docs.microsoft.com/en-us/windows/configuration/lock-down-windows-10-to-specific-apps" will not be accessible.

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 8dbf525c-0d5e-5ec5-63ef-ef9417291ec3
Version Independent ID: e73e7ae6-cdda-fef0-95a6-24cadbdf7261
Content: Troubleshoot multi-app kiosk (Windows 10)
Content Source: windows/configuration/multi-app-kiosk-troubleshoot.md
Service: unspecified
GitHub Login: @jdeckerMS
Microsoft Alias: jdecker

@gaknigge We provide a full XML file at https://docs.microsoft.com/en-us/windows/configuration/kiosk-xml however it cannot be applied as is, because any kiosk configuration XML relies on the account existing (on the device for a local account, or in the domain or Azure AD for your domain or tenant).
I'll ask the engineering team for additional troubleshooting information to add to the topic, including Event Viewer details. Thanks for the suggestion!

I have found that the only thing that is not working is rs5:autolaunch. I can make all the other parts work by using the right part of each section including the account. But, I have never been able to get any package to load if any app has the rs5:autolaunch="true" statement. Any ideas? I was able to get 4 apps in start menu tiles and everything. I need an app to auto-launch though


Footer menu has wrong text alignment on small devices

Footer menu has wrong text alignment on small devices
Solution:

Add specific part to the footer for small devices with different text alignment

Implemented


OpenXR without SteamVR

Is it possible to use ALXR on PICO 4 without SteamVR?
I saw a mention that ALXR client works with VDXR runtime in the wiki (https://github.com/korejan/ALVR/wiki/ALXR-Client), but the ALVR server seems to need SteamVR.

I agree to this, SteamVR is an abberation that no one should use.


Fix commit order in check-stable backporting script

For particular PRs, for example #7476, the chronoligcal ordering of
commits based upon AuthorDate is not the same as the revision list
ordering in git, which caused the list of commits to be out-of-order
when printing on the commandline. This could cause problems during
backporting where backporters would inadvertently attempt to backport
later commits before earlier commits that they depend on, leading to
more conflicts than necessary during the backport process.
Fix this up by using the canonical commit ordering in the branch that
was merged, and only use GitHub's PR commit list as a way to determine
the total number of commits being merged in the PR.

This change is

Coverage decreased (-0.002%) to 42.551% when pulling 3aec2cf742351de9547f3dafb069775e3d82d736 on joestringer:submit/fix-check-stable-commit-ordering into 2935f589aba999bb1de8c7ccf7930b20a9aff5be on cilium:master.


Media Analytics Tracking

I am trying to track the media events in the android applications using the media parameters provided. I am not able to find a proper way to do the same. Could not find a Media event function or class. Please let me know how I can achieve the same

https://matomo.org/docs/event-tracking/
https://github.com/matomo-org/piwik-sdk-android/blob/dca33697d00fc077c90e05352c002cb7df7285bc/piwik-sdk/src/main/java/org/piwik/sdk/extra/TrackHelper.java#L211

M sorry, I think I was not clear the first time. Let me rephrase it. I am trying to track a media event with the media parameters. Refer the following link : https://developer.matomo.org/guides/media-analytics/custom-player#media-analytics-http-tracking-api-reference
Also Since you have shown the class to create a event class, please mention how we can send that using tracker, trackme helper or any other method which accepts the Event object.
Thank you in advance.

M sorry, I think I was not clear the first time. Let me rephrase it. I am trying to track a media event with the media parameters. Refer the following link : https://developer.matomo.org/guides/media-analytics/custom-player#media-analytics-http-tracking-api-reference

There is currently not special class/routine just for this ( I think it should be added though). You'd have to set the parameters manually.
Just create a new TrackMe object and set the parameters on it, then pass it to the tracker instance.

Also Since you have shown the class to create a event class, please mention how we can send that using tracker, trackme helper or any other method which accepts the Event object.

The trackhelper is used like this:
https://github.com/matomo-org/piwik-sdk-android/blob/dca33697d00fc077c90e05352c002cb7df7285bc/exampleapp/src/main/java/com/piwik/demo/DemoActivity.java#L70
It's basically a builder pattern with lots of convenience methods.

Hello, I am currently also trying to integrate media tracking. I bought and installed the plugin on my server. But I am still confused about how to use TrackerHelper and TrackMe class properly. Could you please provide a concrete example where you use TrackerHelper and TrackMe class to log a media progress with the paramaters described here: https://developer.matomo.org/guides/media-analytics/custom-player#media-analytics-http-tracking-api-reference ?

Previous comments are still valid. :point_up:

@d4rken I thought so and of course I already looked at the Links, but I still don't understand how to create an instance of TrackMe and how to pass it.
The DemoActovity.java class you posted above unfortunately does not have an example of the TrackMe class in use. I guess "TrackMe" stands for "Track Media"? I am already successfully using the TrackerHelper to track Events and Screens, but can't figure out how to create and pass an instance of TrackMe class.  I am working in Kotlin btw, but I am also happy with java examples of course.

The TrackHelper class is a convenience tool to help construct TrackMe objects by offering a builder pattern with sane parameters. The TrackHelper class has no such convenience methods for any media specific events, so you have to build your own.
You can construct any TrackMe object you like:
        TrackMe mediaEvent = new TrackMe();
        mediaEvent.set("some_custom_key", "some_custom_value");
        mediaEvent.set("ma_ti", "Strawberry party.");
        mediaEvent.set("ma_id","myid1234");
        getTracker().track(mediaEvent);

How the parameters have to look for media events (i.e which are mandatory/optional), I don't know, you will have to take that from documentation.
TrackMe stands for "Track Me".

@d4rken Thank you so much! That made everything clear, its working now :)


glue_cli_run::nullable_wrapped + nullable_unwrapped segmentation fault on linux

---- glue_cli_run::nullable_unwrapped stdout ----
thread 'glue_cli_run::nullable_unwrapped' panicked at 'bad status Out { cmd_str: "/home/small-ci-user/actions-runner/_work/roc/roc/target/release/roc /home/small-ci-user/actions-runner/_work/roc/roc/crates/glue/tests/fixtures/nullable-unwrapped/app.roc", stdout: "tag_union was: StrConsList::Cons(\"World!\", StrConsList::Cons(\"Hello \", StrConsList::Nil))\n`Cons \"small str\" Nil` is: StrConsList::Cons(\"small str\", StrConsList::Nil)\n`Nil` is: StrConsList::Nil\n", stderr: "🔨 Rebuilding platform...\n", status: ExitStatus(unix_wait_status(35584)) }', crates/glue/tests/test_glue_cli.rs:243:9
stack backtrace:
   0: rust_begin_unwind
             at /rustc/eb26296b556cef10fb713a38f3d16b9886080f26/library/std/src/panicking.rs:593:5
   1: core::panicking::panic_fmt
             at /rustc/eb26296b556cef10fb713a38f3d16b9886080f26/library/core/src/panicking.rs:67:14
   2: test_glue_cli::glue_cli_run::run_app
   3: core::ops::function::FnOnce::call_once
   4: core::ops::function::FnOnce::call_once
             at /rustc/eb26296b556cef10fb713a38f3d16b9886080f26/library/core/src/ops/function.rs:250:5
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.

---- glue_cli_run::nullable_wrapped stdout ----
thread 'glue_cli_run::nullable_wrapped' panicked at 'bad status Out { cmd_str: "/home/small-ci-user/actions-runner/_work/roc/roc/target/release/roc /home/small-ci-user/actions-runner/_work/roc/roc/crates/glue/tests/fixtures/nullable-wrapped/app.roc", stdout: "tag_union was: StrFingerTree::More(\"foo\", StrFingerTree::More(\"bar\", StrFingerTree::Empty))\n`More \"small str\" (Single \"other str\")` is: StrFingerTree::More(\"small str\", StrFingerTree::Single(\"other str\"))\n`More \"small str\" Empty` is: StrFingerTree::More(\"small str\", StrFingerTree::Empty)\n`Single \"small str\"` is: StrFingerTree::Single(\"small str\")\n`Empty` is: StrFingerTree::Empty\n", stderr: "🔨 Rebuilding platform...\n", status: ExitStatus(unix_wait_status(35584)) }', crates/glue/tests/test_glue_cli.rs:243:9
stack backtrace:
   0: rust_begin_unwind
             at /rustc/eb26296b556cef10fb713a38f3d16b9886080f26/library/std/src/panicking.rs:593:5
   1: core::panicking::panic_fmt
             at /rustc/eb26296b556cef10fb713a38f3d16b9886080f26/library/core/src/panicking.rs:67:14
   2: test_glue_cli::glue_cli_run::run_app
   3: core::ops::function::FnOnce::call_once
   4: core::ops::function::FnOnce::call_once
             at /rustc/eb26296b556cef10fb713a38f3d16b9886080f26/library/core/src/ops/function.rs:250:5
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.

failures:
    glue_cli_run::nullable_unwrapped
    glue_cli_run::nullable_wrapped

test result: FAILED. 14 passed; 2 failed; 1 ignored; 0 measured; 0 filtered out; finished in 23.87s

error: test failed, to rerun pass `-p roc_glue --test test_glue_cli`

Valgrind output:
valgrind ./crates/glue/tests/fixtures/nullable-wrapped/app
==708913== Memcheck, a memory error detector
==708913== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al.
==708913== Using Valgrind-3.18.1 and LibVEX; rerun with -h for copyright info
==708913== Command: ./crates/glue/tests/fixtures/nullable-wrapped/app
==708913==
tag_union was: StrFingerTree::More("foo", StrFingerTree::More("bar", StrFingerTree::Empty))
`More "small str" (Single "other str")` is: StrFingerTree::More("small str", StrFingerTree::Single("other str"))
`More "small str" Empty` is: StrFingerTree::More("small str", StrFingerTree::Empty)
`Single "small str"` is: StrFingerTree::Single("small str")
`Empty` is: StrFingerTree::Empty
==708913== Can't extend stack to 0x485d138 during signal delivery for thread 1:
==708913==   no stack segment
==708913==
==708913== Process terminating with default action of signal 11 (SIGSEGV)
==708913==  Access not within mapped region at address 0x485D138
==708913==    at 0x249024: ??? (in /home/small-ci-user/gitrepos/roc2/roc/crates/glue/tests/fixtures/nullable-wrapped/app)
==708913==    by 0x48D1494: __run_exit_handlers (exit.c:113)
==708913==    by 0x48D160F: exit (exit.c:143)
==708913==    by 0x1D7266: ??? (in /home/small-ci-user/gitrepos/roc2/roc/crates/glue/tests/fixtures/nullable-wrapped/app)
==708913==    by 0x1: ???
==708913==    by 0x1CC95E: ??? (in /home/small-ci-user/gitrepos/roc2/roc/crates/glue/tests/fixtures/nullable-wrapped/app)
==708913==  If you believe this happened as a result of a stack
==708913==  overflow in your program's main thread (unlikely but
==708913==  possible), you can try to increase the size of the
==708913==  main thread stack using the --main-stacksize= flag.
==708913==  The main thread stack size used in this run was 8388608.
==708913==
==708913== HEAP SUMMARY:
==708913==     in use at exit: 600 bytes in 15 blocks
==708913==   total heap usage: 27 allocs, 12 frees, 3,833 bytes allocated
==708913==
==708913== LEAK SUMMARY:
==708913==    definitely lost: 400 bytes in 10 blocks
==708913==    indirectly lost: 200 bytes in 5 blocks
==708913==      possibly lost: 0 bytes in 0 blocks
==708913==    still reachable: 0 bytes in 0 blocks
==708913==         suppressed: 0 bytes in 0 blocks
==708913== Rerun with --leak-check=full to see details of leaked memory
==708913==
==708913== For lists of detected and suppressed errors, rerun with: -s
==708913== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0)
Segmentation fault (core dumped)

This seems the important part of the valgrind output:
 Can't extend stack to 0x485d138 during signal delivery for thread 1:
   no stack segment

We discovered this error in https://github.com/roc-lang/roc/pull/5557 but it did not originate there. It could have been introduced earlier or have been there from the start.

Reverting https://github.com/roc-lang/roc/commit/d0e1da40ac3f4dc3a247e451199f81b70bf725a3 stops the nullable_wrapped and nullable_unwrapped from segfaulting but does make (only) union_with_padding segfault.

Some potentially useful information in the things linked here.

Given the fickleness I've seen of this error in basic-cli, I wonder if this is triggered by the compiled platform having a specific size.

I have assembled 4 good/bad versions of executables in the archive below.
option+closure are from the same commit, and nullable_wrapped+nullable_unwrapped are from the same commit.
The difference in source code for good vs bad for every case is one extra eprintln!(""), adding that "fixes" the issue.
If we find what all bad executables have in common we should be able to figure out the cause.
glue_comparison.tar.gz
Also linking some earlier zulip discussion.

For record keeping; we know suspect this has the same root cause as #6121.

I took a look at this again scanning the binaries reproduced locally. I was able to get the issue to go away, but only with another arbitrary fix (changed some alignment in the surgical linker). Nothing that I am confident is a proper fix.
I think I need to find a case where this is hit with the linux legacy linker. With the surgical linker it is hard to have confidence the linker is correct. As such, it is hard to verify what the underlying issue is. Also the surgical linker doesn't handle debug info so everything is harder to debug. Seeing this issue again on macos would also be fine, but linux debugging tools are better than macos.

Just a note: I am starting to wonder if this is now a surgical linker only bug. I know way back when I saw the bug on macos. But every failure in recent months seems to be on linux with the surgical linker. So this may be something where eventually we have to really dig into the surgical linker to understand what might be going on here.
Still really hoping to see it with the legacy linker again. That probably will make it a lot more debuggable.