Introduce release branches

With version 1.16.0 we also need to release 1.15.2. At the moment our development process is only based on trunk development, which will still be our priority and main way of developing.
However, we need to start managing multiple branches, one per minor release, according to the https://github.com/cloudnative-pg/cloudnative-pg/blob/main/docs/src/supported_releases.md document:

Minor release: Support provided until 1 month after the N+2 minor release (ex. 1.15 supported until 1 month after 1.17.0 is released)

A minor release branch has the following naming: release-MAJOR.MINOR. For example: release-1.15.
Ideally, every time a bug fix is introduced in main, we should backport that on all supported releases.
As a result, we need to change the release script to consider such branches, as well as tests (release branches should be considered similar to main in respect to merging - and protect them).
Further analysis required.

We have created a protected branch rule for release-* branches. The idea is that only administrators will be able to write there by cherry-picking from main the patches that are backported.

Created the 1.15 branch: https://github.com/cloudnative-pg/cloudnative-pg/tree/release-1.15

I integrated the patch with some documentation and comments.


NuGet packages updated for MongoDB Driver and Log4Net

NuGet packages updated for MongoDB Driver and Log4Net, SharedAssemblyInfo removed, MongoClient used instead of the old MongoServer.

Hi, thanks for the PR.
Some time ago I evaluate the use of MongoClient but didn't make the switch because it carries a change in the default WriteConcern.
More info in the Log4Mongo Readme.
Please note that these consideration can be outdated now, just let me know if things are changed.

You can easily use the "old writeconcern" adding w=0 in the conenctionstrings.

Done, please check if everything is ok.

The problem is backward compatibility. By using MongoClient i will invert the default and potentially break anyone that update the package without taking care of changing the connectionstring. You will take care of updating your connstr, but what about everyone else that just blindly update the NuGet package to the latest version? Keep in mind that writeconcern setting can potentially be disastrous on a MongoDB under load.
I'm not saying that MongoClient will never be used, just that this will require a major version.

The last PR seems OK.
Is writeconcern the only change between MongoClient and the old MongoServer?

I took a deeper look at the MongoClient implementation and, for the 1.10.0 version referenced in you PR; this class is still a simple wrapper around the MongoServer class that log4mongo currently uses, so I don't see value in updating the code right now. See here for the relevant source code.
This is going to change in the upcoming 2.x version that is currently in development, take a look at the MongoClient class on master.
My proposal is to leave the code as is for the current version of log4mongo, and switch to MongoClient with the 2.x version of the driver, marking the change with a bump of the major version number.


Improve Markdown inline code styling

Once https://issuetracker.google.com/issues/329052205 is available, we should improve the appearance of inline code spans in Markdown to match expectations.

@rock3r even without considering this issue, the current styling seems to be using the wrong fontsize/style:

The font size is currently set to defaultTextStyle.size * .85, matching GitHub's CSS:

Not sure what the other parts of the style you think are wrong. Could you elaborate?

I think it's supposed to be italized, and the background seems to need more padding and rounded corners. But even with that, I still feel that it it is really hard to tell it apart from regular text, and AFAIK I don't suffer from any kind of vision/contrast impairment. (although it also doesn't help that the Jewel Markdown example uses a background that makes it even harder to see the inlined code background in light theme)
Jewel

IJ Dark

IJ Light

Gitghub markdown:
hello world.
Personally I find this style the easiest to read, but I understand that Jewel is really trying to stick to  IJ's style.

I suspect the italicisation is a bug in IJ, because it didn't use to be italicised, and it should not be rendered as such (it should only if it's inside of an Emphasis node)

We definitely can iterate on the colours to make it stand out more, though. The font difference alone is pretty visible to me, but we can do better. We need to decide which direction to go in: more GitHub (pink code) or more IJ (grey code)?

Lastly, for testing markdown I'd strongly recommend the Markdown section in the standalone sample, as the bit you look at in the IDE sample is only there to ensure Markdown works in the IDE, but it's by no means complete or meant to be


Goodbye Atom. Hello VS Code.

VS Code has more powerful features and extensions, let's move on.

I don't contribute or anything to this project, but these posts are just ridiculous.
Can someone close this issue please?

VS Spy Code.
  I have both vscode and atom on my localmachine but hardly like HArDLY do I use vscode.  He likes to Upset people to accept his useless products. Atom also works better on Linux and Vscode works better on windows.
I dont LIKE vscode
I want atom and will COntinue to USE ATOM
Please Atom Community, Fork Atom and acquire all the resources,
The Atom project is too good to be Neglected , Microsoft wants to enforce Vscode and We all SAY NO
We all have choices and Editor Preferences , So WHY force anyone...

I mean other choices exist and I'd recommend vscodium if you want a version without all the bloat. It'd be nice if they'd let the community take over atom since atom just feels a bit different than vs....its just not the same.

Your point is very candid and commendable,. Atom since github was abandoned by microsoft siince they needed to market vscode,
It is the community of developer out of free time and effort that contribute
Now atom started coming to life again , gaining popularity especially with 1.60 release,
they noticed this Since VSCode TRACKS YOU BRO and they felt well... Its about time, They should force everyone to use useless VScode . .... so you get it now

I mean other choices exist and I'd recommend vscodium if you want a version without all the bloat. It'd be nice if they'd let the community take over atom since atom just feels a bit different than vs....its just not the same.

Why not just to disable it in settings ?
https://code.visualstudio.com/docs/getstarted/telemetry#_disable-telemetry-reporting

I am sincerely proud of everyone who worked on this amazing project.
No one said stop using atom, it just didn't get enough support.
It was a pleasure accompanying everyone along the way.
PS: and if vscode you can disable the telemetry in a simple click

Your point is very candid and commendable,. Atom since github was abandoned by microsoft siince they needed to market vscode,
It is the community of developer out of free time and effort that contribute
Now atom started coming to life again , gaining popularity especially with 1.60 release,
they noticed this Since VSCode TRACKS YOU BRO and they felt well... Its about time, They should force everyone to use useless VScode . .... so you get it now

It's sure that the Microsoft version of VS Code is not fully open-sourced, they provided a button to disable trackers, but we don't know it will make sense or not.
But you can build a own VS Code with no Microsoft things, however it will cost lots of time and is it worth?
the core of Atom is open-source, and Election build for "Atom" at first. It is a successful project which makes thousands of Apps based on Election now.
But it has some profermence problem, and needs more RAM to open a big file that other editer such as VS Code and Sublime Text. (Yes the last one is not open-sourced)

Oh I just saw a new editor developed by the Atom group called Zed, hope it can make something amazing after Atom.
It seems to build with Rust, native Application... It will reduce the resource requirements that Election Apps? Maybe, and we can choose one when the public beta version is out.

VS Code has more powerful features and extensions, let's move on.

 I have both vscode and atom on my localmachine but hardly like HArDLY do I use vscode.  He likes to Upset people to accept his useless products. Atom also works better on Linux and Vscode works better on windows. I dont LIKE vscode I want atom and will COntinue to USE ATOM Please Atom Community, Fork Atom and acquire all the resources, The Atom project is too good to be Neglected , Microsoft wants to enforce Vscode and We all SAY NO We all have choices and Editor Preferences , So WHY force anyone...

Blame Satya, Bill left M$.

It's sure that the Microsoft version of VS Code is not fully open-sourced, they provided a button to disable trackers, but we don't know it will make sense or not.

This is incorrect. Microsoft builds the open source VSCode binary, then ships it with a custom product.json with microsoft telemetry and connections to their marketplace. Zed is closed source proprietary software. It is fundamentally not the same as Atom.
VSCodium is a telemetry free VSCode binary with an open source extension repo. Check it out if you'd like to get started with the closest up-to-date alternative to Atom that you're gonna get.
Perhaps some day, the atom-community fork will come together and begin releasing updated/improved new versions of Atom. Until then, if you just need to get back to work soon and need something close, Codium is great.
To anyone here who just wants to express anger about Atom's sunsetting, Microsoft suffocating it, or whatever else, all I have to say is: Go somewhere else.

@flashtechstudios Use vscode and be happy with it

Perhaps some day, the atom-community fork will come together and begin releasing updated/improved new versions of Atom. Until then, if you just need to get back to work soon and need something close, Codium is great.

I'd recommend checking out the discussions over there and joining in on the discord. Which is now linked in the readme since I got that update approved earlier. Not to mention they have builds published on azure linked in there as well. I'm also attempting to archive and get a good starting point for documentation going forward in my own repos. (the ac-website one which may eventually become official once I get it in working order. That too is open for any suggestions. I know right now quite a few people over there in the discussions and on discord have been trying to rebuild and migrate the apm repository code from scratch and update the apis it relies on as well. I think one person there has electron pushed to 13 and is working on getting it more current as we speak.

Perhaps some day, the atom-community fork will come together and begin releasing updated/improved new versions of Atom. Until then, if you just need to get back to work soon and need something close, Codium is great.

I'd recommend checking out the discussions over there and joining in on the discord. Which is now linked in the readme since I got that update approved earlier. Not to mention they have builds published on azure linked in there as well. I'm also attempting to archive and get a good starting point for documentation going forward in my own repos. (the ac-website one which may eventually become official once I get it in working order. That too is open for any suggestions. I know right now quite a few people over there in the discussions and on discord have been trying to rebuild and migrate the apm repository code from scratch and update the apis it relies on as well. I think one person there has electron pushed to 13 and is working on getting it more current as we speak.

I'm already there.

I can't say much, but I have to say, using Atom isn't the easiest thing to do. VS Code is so much more intuitive and beginner friendly. Sorry Atom lovers, but it's time we move on to VS code!

Lmao no cough AtomCommunity/Atom cough especially since we're going to rebrand and fix things better than atom did for the past few years since they were diverted elsewhere by M$

Haha yes!

VS Code has more powerful features and extensions, let's move on.

Move on your own with VScode, Bill gates deserves to be dragged to court. We all have choices and Preferences. I dont WanT vscode

Bill Gates has left, Satya

VS Code has more powerful features and extensions, let's move on.

Move on your own with VScode, Bill gates deserves to be dragged to court. We all have choices and Preferences. I dont WanT vscode

Bill Gates has left, Satya

If you really do a comparison of vscode to atom, you will find out that atom esp at 1.60 is very good
in terms of extensions,  for some languages like you have greater support , vscode has a marketplace of extensions no doubt , but most extensions do simple tasks as tracking your code, providing snippets and autocomplete. these extensions themselves can also slow down vscode if too much
Atom is more hackable than vscode, the layout  is better, I still have sound autocomplete and good extensions enough to put me on a go
Atom may be in an unsupported state but in no way is it less of a good developer tool in 2022

Whatever Atom may contain, VS code is just so much better!

Whatever Atom may contain, VS code is just so much better!

Nice but give me top 15 stats , Where VScode is so much better than Atom?
I am listening....

It has Github support, which is seamless and easy to navigate, and Direct access to Github Codespaces, Github Copilot, and all Github Features
It supports thousands of themes (extensions)
Not to forget the built-in docker and Heroku support
Built-in terminal which is awesome
Syncing is possible, so you can always sync your VS code account to another computer, never losing the settings you set previously
So many IntelliSense features, for almost every language out there
Not to forget the built-in support for Jupyter Notebooks
A very friendly UI and easy to navigate through
There is this extension I use to practice Leetcode questions without leaving VS Code. Reading the problem, coding the problem, and submitting the code
it has extensions to help you view excel, CSV, pictures, and music files from your codebase, without ever leaving it.
Very frequent updates, like sometimes thrice a week, or at least once a week, and one major update in a month
Built-in browser feature, so you can render your HTML directly in VS code
Live Share so multiple people (teams) can code in together in one codebase
Live Server, which automatically refreshes your browser when dealing with HTML (Web  Dev stuff)
Auto-save feature!

Now you tell me why Atom is anyway better than VS code?

I said "so much better" than atom
Of all you said above , mostly integrations were your highlists:

Live Server
GitHub all the features > this is really reflected to be true because Microsoft owns both Github and Vscode so .....
Extensions , Presently Vscode has more support and is backed by microsoft so definitely yes

If you used vscode, it depends on what you want and some stuff you said above is already in atom too
Github personal tool is vscode , used to be atom before microsoft bought it
Do a side by side research on atom and find out was it is called the most hackable editor

I know, Atom is called the most hackable editor but it still doesn't make it any better than Atom. Github owns ATOM, and Github is owned by Microsoft. So it could be made much more like VS code but didn't.
Of course, I'm biased!

Then again imagine if every project just dies simply because some new product started to make temporary waves,
U probably might not about Sublime, Vim, Emacs,
Funny enough some hackers still prefer vim and emacs to vscode
Atom is more opensource too than vscode , since vscode tracks you with telemetry
Atom has a integration with github and gitlab , though that is not working well as expected now
Atom has a better Navigation UI than vs code
Atom may not need a terminal if you using linux , but definitely you can do have git commit supports and branching etc , without codespaces since it is a pure microsoft product and ofcourse microsoft does not share... until it bites them hard
Atom intelllisense is still very much good
Atom has docker support and you docker is quite old since it is good but has a slow maintenance , so to make up cloud host companies have a way of giving you virtual contaiiners , but definitely is still good
Atom has a smaller community, Microsoft initiated that since it felt like github -> atom, but since microsoft bought github. It is more of github -< vscode
Atom supports any language, the core of atom is so good that is starts up gracefully with power and cpu stressing issues after how many years,  vscode started to catchup in this areas recently
Atom does not have it all at the moment but as it continues to gain more community recognition , it will come back bigger

Agreed! But I even prefer Sublime over Atom. Sublime and VS Code are my personal favourite

Every editor has their pros and cons

Agreed!


Track recording: closing markerMyPosition doesn't seem to stop geolocation.

It does not cause a split of the plotted route like the geolocation start/stop button does.

Done.


Import leftover features from wigglemaps into GeoJS

[ ] Import brushing functionality (specifically over point datasets)
[ ] Import polygon highlight feature
[ ] Import ascii grid reader feature

Ref: https://github.com/OpenGeoscience/geojs/issues/10

Brushing was added in #213.  Currently, it is handled for both points and lines.  Other features just need to implement the boxSearch method to enable it.


Add esa-cci-lc colormap

Description
Adds a new entry ("esa-cci-lc") to the lulc_colormaps dictionary in lulc.py. The new colormap supports the "esa-cci-lc" collection.
Type of change
Please delete options that are not relevant.

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] This change requires a documentation update

How Has This Been Tested?
The new colormap was converted to a url string and used in the render config for the esa-cci-lc collection in PC Test. It renders correctly.

Checklist:
Please delete options that are not relevant.

[x] I have performed a self-review
[ ] Changelog has been updated
[ ] Unit tests pass locally (./scripts/test)
[x] Code is linted and styled (./scripts/format)

Thanks!


node: reset flaming fir testnet

Reset the flaming fir testnet with the latest runtime.

@ddorgan Note that I have changed the chain spec id to flamingfir6 so you'll need to move the keystores accordingly.


Support customizable formatters for resource diffs

A number of issues boil down to the desire to implement customizations around how the resource diff is presented. Linked are some issues below, which we're folding into this one master issue to track:

#60
#70
#72
#74
#87

It's important that we not insert any of the logic in the default code path, as there are some situations where certain formatting functionality may not be desired. It would be ideal to have this be customizable on a per-resource type basis.
This would likely mean the introduction of a configuration file of some sort, and an ability to import custom formatters without needing to contribute to this project directly.
This ticket is open for anyone to take, just wanted to consolidate open issues into one trackable place.

We'd be happy to look into this for you.
Kindly file a support ticket here
https://forms.gle/xABEcR5MwDBJAm1c6

I need help to login into my coinbase I don't have access to number but I have my Gmail

We'd be happy to look into this for you
Kindly file a support ticket below
https://forms.gle/VcaSaDQysAwZBQp77

I no longer am employed at Coinbase (for many years). Closing since this was created by me but I have no intention of implementing.


CLTK 2.0 fastText inclusion proposal

fastText is a new library to create vector models of words, it has been developed and released by Facebook AI team.
https://github.com/facebookresearch/fastText
https://fasttext.cc/docs/en/aligned-vectors.html
fastText representations come in two forms, the standard text vector file format (akin to Glove), and a large binary model format which must be interacted with through the fastText API.
The text vector file of embeddings behaves just like all others (word2vec, glove, etc).
The binary models of fastText provide the ability to produce embeddings for out-of-vocabulary words; they can do this because they track sub-word level tokens. This is a game-changing feature which would be very desirable for CLTK, since many Classical texts have hapax legomenon, which wreak havoc on modeling because of dropout. The values of the projected embeddings are dependent on the neighboring subwords, but generally they provide an important hint to hapax's implicit meaning.
Costs we should consider:

the models are very large!
the fastText native API is C++ (with Python wrappers)
The native code require (g++-4.7.2 or newer) or (clang-3.3 or newer) and pybind11, and although it is excellent and will probably be well supported, it could be a concern in the future.

Facebook has released pre-trained word vectors and models in 157 Languages, trained on Common Crawl and Wikipedia : https://fasttext.cc/docs/en/crawl-vectors.html
e.g. for Latin, there is a binary model:
cc.la.300.bin.gz 3.2GB compressed (4.7 GB uncompressed)
cc.la.300.vec.gz  (616 MB compressed), (2.3 GB uncompressed)
CLTK base models would want to train their own fastText representations--I have, and it's not too hard, but it does require quite a bit of memory and swap.
I think this is a game changing feature that we should consider adopting into the CLTK 2.0 paradigm.
Thoughts? Comments? Questions?

The binary models of fastText provide the ability to produce embeddings for out-of-vocabulary words; they can do this because they track sub-word level tokens. This is a game-changing feature which would be very desirable for CLTK, since many Classical texts have hapax legomenon, which wreak havoc on modeling because of dropout. The values of the projected embeddings are dependent on the neighboring subwords, but generally they provide an important hint to hapax's implicit meaning.

This makes tons of sense, thanks for the explanation. Like word2vec, are can with skip-grams instead of n-grams? This might help with non-fixed word order languages.
Making note of in-scope languages, from a quick skim of available models:

Latin
Sanskrit

@todd-cook sounds like you have a plan to train more of our own, right? An idea of roughly how many words are required for a tractable model?

I think this is a game changing feature that we should consider adopting into the CLTK 2.0 paradigm.
Thoughts? Comments? Questions?

I am all for this. For some reason, from your recent post, I was thinking that fasttext would be an alternative to stanfordnlp (cc @free-variation ) however these can stand independently and not interfere with one another, right? I think this would be wise, as we continue to feel out how to implement them.

the fastText native API is C++ (with Python wrappers)
The native code require (g++-4.7.2 or newer) or (clang-3.3 or newer) and pybind11, and although it is excellent and will probably be well supported, it could be a concern in the future.

My biggest concern is that we make installation as easy on our users as possible. It isn't that long ago -- I can still remember my own project-killing installation woes faced as a semi-literate programmer. Also, of course, we should have non-breaking fallbacks for users who do not have, and do not want, the fasttext dependencies.
I'm all ears, tell me if you want more inputs, otherwise I will await your first code draft. Also, if you think it would help communication, merge my PR #8 and build off that.

Hefty +1 from Brooklyn on this one :)  I had to induce my own word2vec vectors when training the POS/morpho tagger for OE using stanfordnlp.  I did so by hand, rather than use gensim, because I wanted to get it done quickly using a GPU.  It worked, but the hapax/OOV problem bugs me.
(An interesting observation: the most recent Keras-based POS tagger I have doesn't use vectors, just subword features, yet it performs very near stanfordnlp.  Something to reflect on.)
@kylepjohnson yes, stanfordnlp and FastText are complementary.  In fact, when one downloads the full set of vectors for stanfordnlp, their download script pulls the vectors from Facebook for many of the languages for which there are models.

@free-variation you want at this one?
What would be most appropriate with the current Doc and Word dataclasses? Would you add a new attribute to Doc, say Doc.embeddings and add a list of lists there, that is indexed to the word tokens? Or do a Word.embedding, with an embedding tied to the word?
Of course, it'd be ideal to have one general use interface for users to get any available word embedding from any "vendor". But if we do not currently foresee using any other embedding vendor, then let's tie to fasttext.
I'd like to use this as an opportunity to see if another can make use of the Process type, too. You can find patterns to start with at cltkv1/tokenizers/word.py.

Closed, for now, with #39 . Will open some others to include auto DL of .bin files and allow non-FastText embeddings.


how could I train my own dataset use your repo?

compare with e2e_faster_rcnn_R-50-FPN_1x.yaml,your init.yaml adding [PROPOSAL_FILES],so,if I train my own dataset,it could be error,and it could train well when I train coco2014 dataset,so how could I train my own dataset?
I0928 10:56:50.334882 20043 context_gpu.cu:306] Total: 306 MB
INFO train.py: 192: Loading dataset: ('bdd100k_train_detection',)
Traceback (most recent call last):
File "tools/train_net.py", line 132, in
main()
File "tools/train_net.py", line 114, in main
checkpoints = detectron.utils.train.train_model()
File "/home/test/code/softer-NMS/detectron/utils/train.py", line 58, in train_model
setup_model_for_training(model, weights_file, output_dir)
File "/home/test/code/softer-NMS/detectron/utils/train.py", line 170, in setup_model_for_training
add_model_training_inputs(model)
File "/home/test/code/softer-NMS/detectron/utils/train.py", line 194, in add_model_training_inputs
cfg.TRAIN.DATASETS, cfg.TRAIN.PROPOSAL_FILES
File "/home/test/code/softer-NMS/detectron/datasets/roidb.py", line 60, in combined_roidb_for_training
assert len(dataset_names) == len(proposal_files)
AssertionError

I think the other issue answers your question. #2

If you want to integrate softer-NMS into your own code, you can find all modifications to detectron/ at lines with flags: XYXY, PRED_STD, STD_NMS.

我看报错信息主要就是RPN Proposal的模型仅仅对于coco数据集进行了适配，而没有对于我自己的数据集进行适配，这种情况如何解决呢？

你如果用end2end，就按照我的config改一个end2end的config就行了。我train的是fast rcnn
需要proposal。

ok,谢谢了，试试看，有问题再请教，我用的确实是end2end

this repo is deprecated. Please use our new repo which also improved performance: https://github.com/yihui-he/KL-Loss


CheckFailedError sets WaitingStatus class with NoVersionsListed instead of string

In a situation where istio-pilot fails to publish the _supported_version information in time to mlflow-server, mlflow charm will throw an error: NoVersionsListed and try to create a WaitingStatus of it.
However, due to:
    def _get_interfaces(self):
        try:
            interfaces = get_interfaces(self)
        except NoVersionsListed as err:
            raise CheckFailedError(err, WaitingStatus)

....

class CheckFailedError(Exception):
    """Raise this exception if one of the checks in main fails."""

    def __init__(self, msg, status_type=None):
        super().__init__()

        self.msg = str(msg)
        self.status_type = status_type
        self.status = status_type(msg) ## <<<------ missing a str conversion

That ends up causing the following failure when updating the status: https://pastebin.canonical.com/p/PRYBkxJcxk/

Hi @phvalguima , thanks for reporting this.
That piece of code in your description was modified recently by this commit, which added, among other things, the missing string casting. I tried reproducing the issue using the latest version of this charm and seems like the issue is not present anymore.
I'm closing this issue, but feel free to re-open it if you run into the error again.


feat(receiver-mock): add OTLP support for logs

Proof of concept of how supporting OTLP for logs would look like.

Closing, was superseded by #285


lyxal: Watch brending.org

lyxal requests the watch of the watch_keyword brending\.org. See the MS search here and the Stack Exchange search in text, in URLs, and in code.

Approved by Jeff Schaller in Charcoal HQ

brending\.org has been seen in 1 true positive, 0 false positives, and 0 NAAs.


API

Hello! Do you have an API ? I want to write a script to create SS keys. I will be grateful for the answer !

Yes. See https://github.com/Jigsaw-Code/outline-server/tree/master/src/shadowbox#access-keys-management-api

You may be interested in this: https://www.reddit.com/r/outlinevpn/comments/nwu1se/the_outline_distribution_system_is_here_to_help/

Also: https://github.com/database64128/shadowsocks-uri-generator#telegram-bot


Cut down on some memory allocations

I'm not saying this is the best way to do it, but it's one way to do it. Feel free to do it another way.

This is part of #590


Keep the launchd daemon alive

Working with multiple lima clusters in the recent weeks I found that socket_vmnet is not running for unknown reason. The typical flow is trying to start the clusters, and lima hostagent fails with connection refused with /var/run/socket_vmnet. This happens to me one or more times in the same day. Trying to run a stress test creating and destroying the lima clusters 50 times fails after several runs and from the point of the failure, all runs failed.
The issue seems to be that socket_vmnet is stopped by launched because it seems to be idle and it is never started again. Adding the keep alive option eliminated this issue.
With this change the daemon is kept running and it should restart after failures.

socket_vmnet is not running for unknown reason

launchd will clean up idle jobs when the system comes under load.

socket_vmnet is not running for unknown reason

launchd will clean up idle jobs when the system comes under load.

This makes sense, but I don't see how it can be idle when I'm running 3 clusters with many components communicating between the clusters (e.g. rbd mirroring, submariner tunnels, etc).
And worse terminating socket_vmnet breaks the lima vms network - after termination the hostagent is in a kind of busy loop logging errors about using a closed connection.

Thanks, but I don't think this launchd file is used by Lima?

It is not used when you are using "managed" networks. In that case Lima is starting/stopping the daemon as-needed.
But Lima can also connect to an "unmanaged" network, where you just specify the socket address. I assumed that is what @nirs was doing, and in that case you would use the launchd.plist files to control the daemon.

Thanks, but I don't think this launchd file is used by Lima?

It is not used when you are using "managed" networks. In that case Lima is starting/stopping the daemon as-needed.
But Lima can also connect to an "unmanaged" network, where you just specify the socket address. I assumed that is what @nirs was doing, and in that case you would use the launchd.plist files to control the daemon.

Right, this is how I use it. I feel safer when limactl does not have special permissions, and ensuring that running socket_vmnet from brew is safe require changing ownership on brew directories which is messy and breaks brew upgrades. Using sudo make install.bin install.launchd is easy enough for developers.

socket_vmnet is not running for unknown reason

launchd will clean up idle jobs when the system comes under load.

I think the issue was wrong handling of SIGPIPE #48.
You can see in the log from #43:
Accepted a connection (fd 7)
Closing a connection (fd 5)

Received signal 13
Closing a connection (fd 7)
Closing a connection (fd 6)
Initializing vmnet.framework (mode 1001)
* vmnet_subnet_mask: <IP_ADDRESS>
* vmnet_mtu: 1500
* vmnet_end_address: <IP_ADDRESS>
* vmnet_start_address: <IP_ADDRESS>
* vmnet_interface_id: 36D40E7D-1C36-4B0F-9C63-12D7EDB81215
* vmnet_max_packet_size: 1514
* vmnet_nat66_prefix: fd9b:5a14:ba57:e3d3::
* vmnet_mac_address: 66:c1:18:9f:80:62
Accepted a connection (fd 5)
Accepted a connection (fd 6)
Accepted a connection (fd 7)
Closing a connection (fd 5)
Closing a connection (fd 7)
Closing a connection (fd 6)
Accepted a connection (fd 5)
Accepted a connection (fd 6)
Accepted a connection (fd 7)
Closing a connection (fd 7)
Closing a connection (fd 5)
Closing a connection (fd 6)
Accepted a connection (fd 5)
Accepted a connection (fd 6)
Accepted a connection (fd 7)
Closing a connection (fd 7)
Closing a connection (fd 6)
Closing a connection (fd 5)
Accepted a connection (fd 5)
Accepted a connection (fd 6)
Accepted a connection (fd 7)
Closing a connection (fd 5)
Closing a connection (fd 6)

Received signal 13
Closing a connection (fd 7)

I think the issue is:

When we close a socket (probably when client disconnects) there may be another thread trying to write to the socket, since the current locking does not ensure that socket cannot be used during removal of the socket.
Writing to closed socket trigger a SIGPIPE
We handle the SIGPIPE as fatal error and exit
With keep alive, launchd does not start socket_vmnet

The SIGPIPE issue is fixed in #49, but there may be other reasons for fatal failure.


Migration tool loses focus when adding a hint

When working in the migration tool UI, the central pane shows a view of the source, and the bottom right hand pane shows information about nullability choices along with buttons for adding nullability hints.  The common work flow is to work through the list of nullable types added, using hints to override choices that aren't the desired outcome.  However, when a hint is added, the central source pane loses the current focus, resetting to the beginning.  This is surprisingly disruptive, since in a large file with a number of changes, it can be hard to find the last working position again.
The location of the last edit reviewed remains available in the bottom right hand pane, but clicking on it surprisingly just resets the state rather than returning to the last position.

cc @srawlins @stereotype441


Client Allocation Request for: Koda Inc.

Client Allocation Questions
Core Information

Name: Koda Inc.
Website / Social Media: @KodaRobotDog on the Filecoin Slack
Region: North America
DataCap Requested: 10TiB
Addresses to be Notarized: f3qlm7ohpyzcn5224symagscymxzmj5ysgpfc24ilofy74sqfn3giarcgkxkqsi2hvqyql42vpbmb5ktwval2a
Notary Requested: andrewxhill

@KodaRobotDog Please subscribe to notifications for this Issue to be aware of updates. Notaries may request additional information on the Issue.

Hi @KodaRobotDog ,
As part of the onboarding process, would you mind answering the following:

Can you introduce yourself? Where can I find you online? Examples include Github, Twitter, LinkedIn, WeChat, etc., and more than one is encouraged.
If you represent an organization, what is the name, nature, registration country, time since inception, and named officers of your organization?
In which region(s) do you intend to use the DataCap?
What is your use case for the DataCap being requested?
How many miners do you plan on allocating the DataCap? Please specify if you have a specific miner(s) you would like to allocate the DataCap.
Do you agree on providing transparency of DataCap allocation decisions & execution details in public to prevent excessive/unfair self-dealing? If so, how will you plan to report it?
Will your organization be responsible for allocating the full DataCap? Examples where this might not be the case, include app builders where the application end-users may have access to storage backed by the DataCap. Please read our full proposal for details on this approach. Unfortunately, our proposed multisig enabled DataCap provider is not ready today, but when it is, we will provider further documentation.

Thanks!

Hi,@andrewxhill
1.Can you introduce yourself? Where can I find you online? Examples include Github, Twitter, LinkedIn, WeChat, etc., and more than one is encouraged.
My name is Emma Russell, and I am the CEO  of Koda Inc.
I've been actively involved in the Filecoin community for more than one year.
I am the manager for  Koda twitter @KodaRobotDog
My Github name:  KodaRobotDog
My Slack handle:   KodaRobotDog
2.If you represent an organization, what is the name, nature, registration country, time since inception, and named officers of your organization?
Organization Name: Koda Inc.
Nature:  private company
Registration Country: Delaware, US
Established:May, 2020
Koda is the world’s first decentralized Robot dog on Filecoin. As an IPFS (Filecoin) user case, Koda team presented on Filecoin monthly meetup in August 2020. Koda tweets had active interaction with IPFS core teams such as Juan, Collin, Molly.  Koda Robot Dog had great exposures on main stream media and most of those articles also talked about Koda owners have the option to store on Filecoin. Basically, we brought many viewers from AI and robots community to Filecoin community.
Koda Inc. was founded in May 2020 and has been established for nearly one year. Koda twitter has 60K followers. All of them are our potential storage clients.
Koda Robot Dog has a decentralized storage market, Koda Drive.
We called on young people all over the world to use Koda Drive to  promote the storage market based on Filecoin Network.
We launched a social program to help small woman creators who do not have a company to be involved in the filecoin plus clients program.
https://kodarobotdog.medium.com/100-woman-creators-3551e5325e55
3.In which region(s) do you intend to use the DataCap?
We plan to store the data in North American with a redundancy of about three copies.
4.What is your use case for the DataCap being requested?
Big Data , such as Pictures, Videos, documents.
5.How many miners do you plan on allocating the DataCap? Please specify if you have a specific miner(s) you would like to allocate the DataCap.
We will probably choose 2-3 miners with the proportion of about 30% to 70% per miner. When selecting miners, we intend to choose miners with high industry reputation.
6.Do you agree on providing transparency of DataCap allocation decisions & execution details in public to prevent excessive/unfair self-dealing? If so, how will you plan to report it?
All allocation decisions will be conducted in the Github repository.
7.Will your organization be responsible for allocating the full DataCap? Examples where this might not be the case, include app builders where the application end-users may have access to storage backed by the DataCap. Please read our full proposal for details on this approach. Unfortunately, our proposed multisig enabled DataCap provider is not ready today, but when it is, we will provider further documentation.
Yes, we'll be responsible for allocating the full DataCap.

Apologies @KodaRobotDog, I just noticed you already received a previous datacap (https://github.com/filecoin-project/filecoin-plus-client-onboarding/issues/495), so I have a few other questions:
Usage

What portion of the originally granted datacap have you used to date?
If less than 100% could you provide a short justification for why the early application?
If less than 100% and using a new target address, do you still plan on utilizing the original datacap too?

Deployment

Can you provide any information on the deals you've created and miners you've used with your previously allocated datacap? (thanks for this already, above)
Are there any significant changes to your original application in terms of use-case, data inputs, or miner allocation?

thanks!

Yes, we have applied for 5TIB in #495.
We'll apply again after using up.
Thank you very much.


EventPool filters and Event Context

This PR aims to add the ability to only subscribe to events related to entities you are interested in,.
For instance, if you want an EventPool which only wants events relating to a specific world, or player.
Current implementation
Currently this is achieved by filtering out events you are NOT interested in, the syntax looks something like this:
val altWorld: World // a world created, or obtained from elsewhere
val eventPool = EventPool.withFilter { it.context.contains(altWorld) || it.context.isGlobalEvent } // returns true when the event context contains alt world or is a global event
eventPool.on<PlayerBlockBreakEvent> { it.cancelled = true }

This will then only cancel the PlayerBlockBreakEvent in the altWorld, whenever the withFilter lamba returns true.
Each event now requires a context field, which is a list of all objects related to this event.
class PlayerChatMessageEvent(var message: String, val player: Player): CancellableEvent() {
    override val context = Event.Context(players = setOf(player))
}

Event.Context is a class which contains lists of players, entities, worlds, locations and other objects, used by filters to determine what the event relates to.
it also includes an optional isGlobalEvent boolean, which when set to true which can be used to potentially bypass filters (depending on filter implementation)
EventSystem & EventPool trees
I've moved Event listeners to a tree-like system, where each event pool is a "node" on the tree, and events are dispatched down the tree.
Essentially, the main Events object, and EventPools now extend EventSystem
events can now be dispatched into EventSystems and can be registered as children on any other EventSystem
When an event is dispatched, it is dispatched to that EventSystems registered listens, and all of it's children, traveling down the tree.
For example, lets take an event tree that looks like this
Events // (the main Events object)
  - eventpool-1
  - eventpool-2
    - eventpool-2.1
    - eventpool-2.2

if an event is dispatched into Events ALL event pools below will receive the event, so 1, 2, 2.1 and 2.2 will ALL get the event.
if an event is dispatched into eventpool-2, only eventpool-2 and it's children will get the event, so 2, 2.1 and 2.2
Where do filters play into this?
Filters are all on EventPools, and are simply run once when the event is dispatched into the pool, and will not travel to that pools children, meaning filters are inherited throughout the tree
But why?

It saves from the filter being run for EVERY SINGLE event listener, and is simply run once when the event reaches the pool, saving on precious CPU cycles
It also means filters don't need to be re-registered against every single event pool which wants them

in EmberSeeker for example, you can have one EventPool for the dungeon run, which filters out to that dungeons world and we could register & unregister EventPools as children (for example when certain cards are active) without having to repeat the filter EVERYWHERE

It allows you to not have to dispatch custom events to every single EventListener

again using EmberSeeker as an example, if we had a CardPlayedEvent, that could simply be dispatched to that dungeon run's EventPool, and won't ever SEE any other event listener outside of that dungeon run

FUTURE EXPANSION!!! if we ever DO wanna do a Minestom like system, this would make it quite easy!

Issues with this implementation
it still kinda sucks, the Event.Context class is messy, event classes are messy with describing whats in the event, and it's best suited toward very broad filters, and filters are quite annoying to write, though i do plan to add filter building utilities to make that stuff easier and less repetitive
Potential solutions could be:

moving to a system like bukkit has with inheritance, but that can be really annoying to implement, and makes filters quite complicated to write too

This is one way to do it but I'd prefer to have standalone EventContext object which has following objects:

player (always present in an event. Most events happen on packet handle which is in context of Player network manager which is tied to a player so unless it's something like ServerTickEvent or EntityDoSomethingEvent you will always know the player)
world (again unless it's something like ServerTickEvent you will always know the world it happened in)
location (if you know world you can also know location)
entity (will in most cases be same as player but useful for entity based events)

can't think of more rn but if you can feel free to add

this is exactly what i was thinking

A few changes...
Event Context changes
event.context is now it's own class holding a bunch of lists (see "Current implementation" in the main message for details)
EventSystem & EventPool trees
I've moved Event listeners to a tree-like system, where each event pool is a "node" on the tree, and events are dispatched down the tree.
Essentially, the main Events object, and EventPools now extend EventSystem
events can now be dispatched into EventSystems and can be registered as children on any other EventSystem
When an event is dispatched, it is dispatched to that EventSystems registered listens, and all of it's children, traveling down the tree.
For example, lets take an event tree that looks like this
Events // (the main Events object)
  - eventpool-1
  - eventpool-2
    - eventpool-2.1
    - eventpool-2.2

if an event is dispatched into Events ALL event pools below will receive the event, so 1, 2, 2.1 and 2.2 will ALL get the event.
if an event is dispatched into eventpool-2, only eventpool-2 and it's children will get the event, so 2, 2.1 and 2.2
Where do filters play into this?
Filters are all on EventPools, and are simply run once when the event is dispatched into the pool, and will not travel to that pools children, meaning filters are inherited throughout the tree
But why?

It saves from the filter being run for EVERY SINGLE event listener, and is simply run once when the event reaches the pool, saving on precious CPU cycles
It also means filters don't need to be re-registered against every single event pool which wants them

in EmberSeeker for example, you can have one EventPool for the dungeon run, which filters out to that dungeons world and we could register & unregister EventPools as children (for example when certain cards are active) without having to repeat the filter EVERYWHERE

It allows you to not have to dispatch custom events to every single EventListener

again using EmberSeeker as an example, if we had a CardPlayedEvent, that could simply be dispatched to that dungeon run's EventPool, and won't ever SEE any other event listener outside of that dungeon run

this PR is basically done, and ready for a proper full review & testing
please do test this one pretty well because the Events System is a pretty core system and i don't wanna break it !
ty :D

Not exactly sure how to test it well - maybe write some quick unit tests if you want/have time? Thats something I need to start doing anyway

gonna be honest, i don't think i'm qualified to do unit tests cuz i have no idea how a lot of the internals of dockyard works
i've tested the events stuff, i know that all works (see MainKt for my shitty testing stuff there) but i more meant, make sure that the events stuff didn't break anything else

oh also, unit tests should have their own framework and stuff which shouldn't all be in this PR

alrighty :D

then...
lgtm 👍🏻


Feature/validation

Implements emulator validation tools (see here for an overview of the implemented methodologies). Some additional linear algebra and prediction methods are also required to correctly perform validation, which are included in this PR. Addresses #142, #212, and #223.
New in this PR:

Predictions can be made with the full covariance (needed to handle the correlations between validation points).
New method to solve only the factorized triangular matrix included in the cholesky classes.
Generic validation pattern which requires a class to implement the error computation.
Specific included errors to match some validation patterns include standard errors and pivoted (correlated) errors.
Mahalanobis distance validation metric
Convenience function to automatically compute the appropriate Fisher-Snedecor distribution expected for the Mahalanobis distance given the valdiation data and the underlying GP.
Use of a validation routine in the included tutorial.
New documentation page.

It looks like Travis hasn't resolved the Github security issue and the CI checks don't run. Is it worth switching this to Github Actions?


Add table_aws_eks_node_group. Closes #132

@khushboo9024 Can you please re-review when you get a chance? Thanks!


Set up /get-featured-blog route

Implement a /get-featured-blog route to return a set number of featured or specially selected blogs from the database.
Reference:

Dynamic Routing in Express

@dead8309 can you assign me

@dead8309 you can assign this to me as well

Sorry @Utkarsh-2005, @NawinKumarSharma asked first


Ensure setId is integer

node.client.setID(...) must be an integer. At the moment, the parameter comes from obj.id, which might be a string.
So this PR forces obj.id to be a number.

Cf. https://github.com/yaacov/node-modbus-serial/pull/360

Seems ok


Support pandas categorical datatype

Looking for feedback to possibly create a PR.
Problem:
LightGBM expects inference requests to set columns to category if the model was trained with categorical column(s).  As is, mlserver will return an error for a categorical LightGBM model, ValueError: train and valid dataset categorical_feature do not match, since the call mlserver.codecs.pandas.PandasCodec.decode_request will simply treat the value as an object/float64/int64 dtype.
I've opened an issue with LightGBM (https://github.com/microsoft/LightGBM/issues/5244) as I believe that LightGBM has enough information in its saved model file to do this conversion itself, but so far the discussion seem to push this towards being the responsibility of the caller of LightGBM.
Opportunity
However, I think mlserver's Content Type support possibly could allow me to work around this by explicitly setting the content_type / datatype to "category" the same way I can set it to str or FP32.  E.g. if the mlserver.codecs.pandas.PandasCodec.to_series would use pd.Series(payload, dtype="category") it would pass categorical data into LightGBM.
Options
Looking for feedback, I see several options

Adjust to_series / to_dtype to handle CATEGORY datatype (though would this violate the v2 spec?)
Set as a content_type more similar to the input-level StringCodec? So the request would have a "content_type": "pd"  with one or more inputs as "content_type": "category".
Adjust the lightgbm runtime to read the saved model file and use DataFrame.astype() to convert any trained categorical column to category in the request dataframe. Personally, this feels like a hacky workaround for what LightGBM should be doing internally, and I double such a solution should end up in mlserver. A proof-of-concept in kserver's lgbserver: https://github.com/kserve/kserve/pull/2208

I believe that I could package options 1/2 in a custom image, but it feels like it may be valuable to add to mlserver?
Any suggestions or ideas are welcome. I'd be open to coding a PR for route 2.  I'm probably going to try this approach in a custom image as a short-term workaround anyway, but open to contributing upstream.

Here is code for option 3: https://github.com/johnpaulett/MLServer/commit/f9e4f72a552bd43a613386a214e929cceb7e0a13.  I suspect this is undesirable to merge into the MLServer's lightgbm runtime, since it requires far too much internal knowledge about the LightGBM .bst file
I started exploring option 2, but am concerned about what to do with a category of str (a Category InputCodec could need to wrap both StringCodec and the PandasCodec's _to_series):
data = {
  "parameters": {
    "content_type": "pd"
  },
  "inputs": [
    {
      "name": "procedureId",
      "data": ["New York", "London", "New York"],
      "datatype": "BYTES",
      "parameters": {
        "content_type": "category"
      },
      "shape": [1],
    },
   ...

Hey @johnpaulett ,
Now that #630 has been merged, should we close this one?

Hey @johnpaulett ,
Sorry for the delay getting back to you.
I see what you mean now, and I totally agree that option 2. looks like the clear winner here. The Pandas Codec could then pick up that info from the input's content_type.
Thinking out loud, is there any extra info that Pandas needs for categorical features? E.g. like the full set of valid categories?

is there any extra info that Pandas needs for categorical features? E.g. like the full set of valid categories?

Not for my LightGBM use case -- that library will "realign" the categories to match the trained categories, but it just needs that input DataFrame to have the same columns marked as dtype category.  In my limited experience with the pandas Categorical, I think it mostly refers to the categories in the given dataframe, so I don't think having a wider list of categories would be needed, but I'm not 100% sure.
The one item that I am a little concerned about with this approach is I will probably assume that any "datatype": "BYTES" is a UTF8 str (e.g. use the StringCodec) when content_type: 'pd'.  Practically, I suspect it unlikely that many of BYTES use cases (e.g. image data) would be sent in a categorical content_type.

Thinking out loud, is there any extra info that Pandas needs for categorical features? E.g. like the full set of valid categories?

This is a good point, I can imagine a scenario where request-to-request some categories are missing, but the series encoding, without any additional information, might result this in incompatible ways from request-to-request (need to check...).


[Bug] [API] The task instance log may be lost while fetching through api when the task is executed multiple times on different workers

Search before asking

[X] I had searched in the issues and found no similar issues.

What happened
The task instance log may be lost while fetching through api when the task is executed multiple times on different workers.
What you expected to happen
Works fine.
How to reproduce
aboved.
Anything else
No response
Version
dev
Are you willing to submit PR?

[X] Yes I am willing to submit a PR!

Code of Conduct

[X] I agree to follow this project's Code of Conduct

Each times, we execute a task, will generate a new task instance, so the log will not lost, unless sub workflow task pause/recover.


Once again, add 3 mypy-checked projects from CPython

This is a redo of #97, which was reverted because it seemed to be causing CI in typeshed and mypy to hang. I'm still not sure exactly what was causing primer to hang in CI, but I can't reproduce it locally. I also can't reproduce it in CI anymore: I tested out this patch using my typeshed fork here, and it seems to be working fine:

https://github.com/AlexWaygood/typeshed/pull/20

(Ignore all the failing CI on ^that demo PR -- I cancelled most of the non-primer jobs as there didn't seem to be any point wasting the CI minutes when I was only interested in mypy_primer.)

Hmm, still a little worrying. Maybe we should try harder to repro the hang, e.g. run with fewer shards and fewer non-CPython projects

FWIW, the command I ran locally to test was
mypy_primer --custom-typeshed-repo ../typeshed --new-typeshed a4f08bd --old-typeshed 4ae6d38 --new v1.5.1 --old v1.5.1 -o full --debug -k CPython

I think it's possible the issue may have been something to do with the fact that these project names have whitespace in them. It's possible that that could have been fixed by e.g. https://github.com/hauntsaninja/mypy_primer/commit/d3a8fb26c0bbcbab07e58d90e0aa62142c27bd42#diff-98ad6c102b483c2dd09ca46d76ecab89be0699a334f207fd9f8790b16f2c0266R98-R99

I think the issue may have been something to do with the fact that these project names have whitespace in them. It's possible that that could have been fixed by e.g. d3a8fb2#diff-98ad6c102b483c2dd09ca46d76ecab89be0699a334f207fd9f8790b16f2c0266R98-R99
Let me see...

I think this is the correct diagnosis.
In https://github.com/AlexWaygood/typeshed/pull/20, I'm now reproducing the hang by switching the branch of AlexWaygood/mypy_primer I'm using in CI to https://github.com/AlexWaygood/mypy_primer/tree/cpython-again-test. That branch is identical to this one except for https://github.com/AlexWaygood/mypy_primer/commit/2d1fe5e59d3be117cee2f0d376c8005f85ea670a (which is a revert of https://github.com/hauntsaninja/mypy_primer/commit/d3a8fb26c0bbcbab07e58d90e0aa62142c27bd42#diff-98ad6c102b483c2dd09ca46d76ecab89be0699a334f207fd9f8790b16f2c0266R98-R99). It appears that the primer shard that's doing the CPython projects has started hanging almost immediately after printing
/tmp/mypy_primer/projects/_CPython (peg_generator)_venv/bin/pip install types-setuptools types-psutil	 in /tmp/mypy_primer/projects/CPython (peg_generator)

Pleasure! :D


Test trend v1

Codecov Report

Merging #95 (8010ad5) into main (87206fd) will increase coverage by 0.74%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##             main      #95      +/-   ##
==========================================
+ Coverage   65.42%   66.16%   +0.74%
==========================================
  Files         239      239
  Lines        5911     5911
==========================================
+ Hits         3867     3911      +44
+ Misses       2044     2000      -44

Impacted Files
Coverage Δ

Sources/TwitterAPIKit/APIv1/TwitterLocations.swift
42.10% <0.00%> (+21.05%)
:arrow_up:

...APIv1/Trend/Requests/GetTrendsPlaceRequestV1.swift
100.00% <0.00%> (+100.00%)
:arrow_up:

...Iv1/Trend/Requests/GetTrendsClosestRequestV1.swift
100.00% <0.00%> (+100.00%)
:arrow_up:

...1/Trend/Requests/GetTrendsAvailableRequestV1.swift
100.00% <0.00%> (+100.00%)
:arrow_up:

Continue to review full report at Codecov.

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


Release version 2.8.0

This is a component issue for 2.8.0.
Coming from opensearch-build#3434. Please follow the following checklist.
Please refer to the DATES in that post.
How to use this issue

This Component Release Issue
This issue captures the state of the OpenSearch release, on component/plugin level; its assignee is responsible for driving the release. Please contact them or @mention them on this issue for help.
Any release related work can be linked to this issue or added as comments to create visiblity into the release status.
Release Steps
There are several steps to the release process; these steps are completed as the whole component release and components that are behind present risk to the release. The component owner resolves the tasks in this issue and communicate with the overall release owner to make sure each component are moving along as expected.
Steps have completion dates for coordinating efforts between the components of a release; components can start as soon as they are ready far in advance of a future release. The most current set of dates is on the overall release issue linked at the top of this issue.
The Overall Release Issue
Linked at the top of this issue, the overall release issue captures the state of the entire OpenSearch release including references to this issue, the release owner which is the assignee is responsible for communicating the release status broadly.  Please contact them or @mention them on that issue for help.
What should I do if my plugin isn't making any changes?
If including changes in this release, increment the version on __2.x__ branch to __2.8.0__ for Min/Core, and __<IP_ADDRESS>__ for components. Otherwise, keep the version number unchanged for both.

Preparation

[x] Assign this issue to a release owner.
[x] Finalize scope and feature set and update the Public Roadmap.
[x] All the tasks in this issue have been reviewed by the release owner.
[x] Create, update, triage and label all features and issues targeted for this release with v2.8.0.

CI/CD

[x] All code changes for 2.8.0 are complete.
[x] Ensure working and passing CI.
[x] Check that this repo is included in the distribution manifest.

Pre-Release

[x] Update to the 2.8 release branch in the distribution manifest.
[x] Increment the version on the parent branch to the next development iteration.
[x] Gather, review and publish release notes following the rules and back port it to the release branch.git-release-notes may be used to generate release notes from your commit history.
[x] Confirm that all changes for 2.8.0 have been merged.
[x] Add this repo to the manifest for the next developer iteration.

Release Testing

[x] Find/fix bugs using latest tarball and docker image provided in parent release issue and update the release notes if necessary.
[x] Code Complete: Test within the distribution, ensuring integration, backwards compatibility, and performance tests pass.
[x] Sanity Testing: Sanity testing and fixing of critical issues found.
[x] File issues for all intermittent test failures.

Release

[x] Complete documentation.
[x] Verify all issued labeled for this release are closed or labelled for the next release.
[x] Verify the release date mentioned in release notes is correct and matches actual release date.

Post Release

[ ] Prepare for an eventual security fix development iteration by incrementing the version on the release branch to the next eventual patch version.
[ ] Add this repo to the manifest of the next eventual security patch version.
[ ] Suggest improvements to this template.
[ ] Conduct a retrospective, and publish its results.

Performance Test Results 2.7
Data sets

Dataset
Train size
Dimensions
Distance
Format

sift
1.000.000
128
L2
hdf5

Total Queries: 10,000
Cluster Configuration

Leader Nodes
3

Leader Node Type
c5.xlarge

Leader Node Disk Space
20

Data Nodes
3

Data Node Type
r5.4xlarge

Data Node Disk Space
500

Primary Shard Count
24

Replica Count
1

nmslib-hnsw
{
  "metadata": {
    "test_name": "index-workflow",
    "test_id": "Index workflow",
    "date": "06/07/2023 22:18:33",
    "python_version": "3.9.12 (main, Apr  5 2022, 06:56:58) \n[GCC 7.5.0]",
    "os_version": "Linux-5.4.242-163.349.amzn2int.x86_64-x86_64-with-glibc2.26",
    "processor": "x86_64, 16 cores",
    "memory": "1345286144 (used) /<PHONE_NUMBER>0 (available) /<PHONE_NUMBER>4 (total)"
  },
  "results": {
    "test_took":<PHONE_NUMBER>7635844,
    "delete_index_took_total":<PHONE_NUMBER>94585,
    "create_index_took_total":<PHONE_NUMBER>003419,
    "ingest_took_total":<PHONE_NUMBER>367795,
    "refresh_index_store_kb_total": 2947901.15625,
    "refresh_index_took_total": 43209.03323368402,
    "query_took_total": 73509.8,
    "query_took_p50": 7.2,
    "query_took_p90": 8.3,
    "query_took_p99": 8.9,
    "query_took_p99.9": 20.8,
    "query_took_p100": 114.0,
    "query_memory_kb_total": 1305933.6,
    "query_recall@K_total": 0.9998662000000001,
    "query_recall@1_total": 1.0
  }
}

faiss-ivf
{
 "metadata": {
 "test_name": "index-workflow",
 "test_id": "index workflow",
 "date": "04/21/2023 18:21:51",
 "python_version": "3.7.10 (default, Jun 3 2021, 00:02:01) \n[GCC 7.3.1 20180712 (Red Hat 7.3.1-13)]",
 "os_version": "Linux-5.10.102-99.473.amzn2.x86_64-x86_64-with-glibc2.2.5",
 "processor": "x86_64, 36 cores",
 "memory": "501846016 (used) /<PHONE_NUMBER>0 (available) /<PHONE_NUMBER>2 (total)"
 },
 "results": {
 "test_took":<PHONE_NUMBER>7509888,
 "delete_model_took_total": 81.86012000078335,
 "delete_index_took_total":<PHONE_NUMBER>010924,
 "train_model_took_total": 1508.091684099054,
 "create_index_took_total":<PHONE_NUMBER>981004,
 "ingest_took_total": 67851.[14249120234](tel:14249120234),
 "refresh_index_store_kb_total": 2407135.5791015625,
 "refresh_index_took_total":<PHONE_NUMBER>9749795,
 "query_took_total": 87657.2,
 "query_took_p50": 9.0,
 "query_took_p90": 9.0,
 "query_took_p99": 10.1,
 "query_took_p99.9": 22.5,
 "query_took_p100": 65.4,
 "query_memory_kb_total": 1075099.1,
 "query_recall@K_total": 0.9471392999999999,
 "query_recall@1_total": 1.0
 }
}

faiss-ivfpq
{
  "metadata": {
    "test_name": "index-workflow",
    "test_id": "index workflow",
    "date": "06/08/2023 04:46:15",
    "python_version": "3.9.12 (main, Apr  5 2022, 06:56:58) \n[GCC 7.5.0]",
    "os_version": "Linux-5.4.242-163.349.amzn2int.x86_64-x86_64-with-glibc2.26",
    "processor": "x86_64, 16 cores",
    "memory": "1338359808 (used) /<PHONE_NUMBER>6 (available) /<PHONE_NUMBER>4 (total)"
  },
  "results": {
    "test_took":<PHONE_NUMBER>167636,
    "delete_model_took_total":<PHONE_NUMBER>783029,
    "delete_index_took_total":<PHONE_NUMBER>892628,
    "train_model_took_total":<PHONE_NUMBER>5260674,
    "create_index_took_total":<PHONE_NUMBER>8718085,
    "ingest_took_total":<PHONE_NUMBER>82383,
    "refresh_index_store_kb_total": 1617393.7224609375,
    "refresh_index_took_total": 3592.3656293191016,
    "query_took_total": 75560.7,
    "query_took_p50": 7.4,
    "query_took_p90": 8.3,
    "query_took_p99": 9.0,
    "query_took_p99.9": 17.2,
    "query_took_p100": 254.7,
    "query_memory_kb_total": 117688.0,
    "query_recall@K_total": 0.6144359999999999,
    "query_recall@1_total": 0.9934
  }
}

lucene-hnsw
{
  "metadata": {
    "test_name": "index-workflow",
    "test_id": "Index workflow",
    "date": "06/08/2023 18:28:32",
    "python_version": "3.9.12 (main, Apr  5 2022, 06:56:58) \n[GCC 7.5.0]",
    "os_version": "Linux-5.4.242-163.349.amzn2int.x86_64-x86_64-with-glibc2.26",
    "processor": "x86_64, 16 cores",
    "memory": "1295859712 (used) /<PHONE_NUMBER>4 (available) /<PHONE_NUMBER>4 (total)"
  },
  "results": {
    "test_took":<PHONE_NUMBER>683392,
    "delete_index_took_total":<PHONE_NUMBER>165414,
    "create_index_took_total":<PHONE_NUMBER>028341,
    "ingest_took_total":<PHONE_NUMBER>6572126,
    "refresh_index_store_kb_total": 2031542.2541992187,
    "refresh_index_took_total":<PHONE_NUMBER>985767,
    "query_took_total": 83458.7,
    "query_took_p50": 8.2,
    "query_took_p90": 9.2,
    "query_took_p99": 10.0,
    "query_took_p99.9": 17.9,
    "query_took_p100": 129.3,
    "query_memory_kb_total": 0.0,
    "query_recall@K_total": 0.9994171,
    "query_recall@1_total": 1.0
  }
}

lucene-hnsw restrictive-filter
{
  "metadata": {
    "test_name": "index-workflow",
    "test_id": "Index workflow",
    "date": "06/08/2023 22:11:44",
    "python_version": "3.9.12 (main, Apr  5 2022, 06:56:58) \n[GCC 7.5.0]",
    "os_version": "Linux-5.4.242-163.349.amzn2int.x86_64-x86_64-with-glibc2.26",
    "processor": "x86_64, 16 cores",
    "memory": "1387540480 (used) /<PHONE_NUMBER>8 (available) /<PHONE_NUMBER>4 (total)"
  },
  "results": {
    "test_took":<PHONE_NUMBER>5555644,
    "delete_index_took_total":<PHONE_NUMBER>977475,
    "create_index_took_total":<PHONE_NUMBER>951289,
    "ingest_multi_field_took_total":<PHONE_NUMBER>579681,
    "refresh_index_store_kb_total": 2246991.3372070314,
    "refresh_index_took_total":<PHONE_NUMBER>954921,
    "query_with_filter_took_total": 75519.6,
    "query_with_filter_took_p50": 7.5,
    "query_with_filter_took_p90": 8.0,
    "query_with_filter_took_p99": 8.9,
    "query_with_filter_took_p99.9": 20.8,
    "query_with_filter_took_p100": 127.0,
    "query_with_filter_memory_kb_total": 0.0,
    "query_with_filter_recall@K_total": 1.0,
    "query_with_filter_recall@1_total": 1.0
  }
}

lucene-hnsw relaxed-filter
{
  "metadata": {
    "test_name": "index-workflow",
    "test_id": "Index workflow",
    "date": "06/09/2023 01:37:26",
    "python_version": "3.9.12 (main, Apr  5 2022, 06:56:58) \n[GCC 7.5.0]",
    "os_version": "Linux-5.4.242-163.349.amzn2int.x86_64-x86_64-with-glibc2.26",
    "processor": "x86_64, 16 cores",
    "memory": "1357041664 (used) /<PHONE_NUMBER>8 (available) /<PHONE_NUMBER>4 (total)"
  },
  "results": {
    "test_took":<PHONE_NUMBER>6079274,
    "delete_index_took_total":<PHONE_NUMBER>8043604,
    "create_index_took_total":<PHONE_NUMBER>237826,
    "ingest_multi_field_took_total":<PHONE_NUMBER>824769,
    "refresh_index_store_kb_total": 2045532.786328125,
    "refresh_index_took_total":<PHONE_NUMBER>116064,
    "query_with_filter_took_total": 113040.9,
    "query_with_filter_took_p50": 11.3,
    "query_with_filter_took_p90": 12.5,
    "query_with_filter_took_p99": 13.8,
    "query_with_filter_took_p99.9": 22.3,
    "query_with_filter_took_p100": 72.6,
    "query_with_filter_memory_kb_total": 0.0,
    "query_with_filter_recall@K_total": 0.9409443476689063,
    "query_with_filter_recall@1_total": 1.0
  }
}

Perf Results Comparison Between 2.6 and 2.7

Perf Result Comparison Between  faiss-ivf, faiss-ivfpq, lucene-hnsw, nmslib-hnsw for 2.8

Perf Result Comparison Between  lucene-hnsw, lucene-hnsw-relaxed-filter, lucene-hnsw-restrictive-filter for 2.8

Difference in performance tests ("+" means higher latency):
faiss-ivf
p50: +2.2%, p99: +6.9%
faiss-ivfpq
p50: -17.2%, p99: -23.5%
lucene-hnsw
p50: +5.8%, p99: +8.7%
nmslib-hnsw
p50: -28.6%, p99: -22.2%


IBM Spectrum Scale CSI Support

Creating pull request for feedback on readme.

hi @sergio1-ibm Please add log image logo/ess.svg. I have approved the PR. Thanks

Added missing logo path and file:  logo/ess.svg

@prgavali Could you approve the PR?

Looks good now , Have you tested config creation and assignment to some cluster ?
If that works fine , we can merge thisd PR

Yes, Verified it worked with the latest changes.

@prgavali Pls approve


Merge develop into master for new release.

:tada: This PR is included in version 5.7.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Update Poetry to 1.7.1 version to align with that of Dependabot

Note that once merged this PR, all developers will have to update their local Poetry version.
Fix #2405.

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint. The docs are available until 30 days after the last update.

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

Comparison is base (c22f563) 91.32% compared to head (fe38f77) 90.27%.
Report is 3 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #2411      +/-   ##
==========================================
- Coverage   91.32%   90.27%   -1.06%
==========================================
  Files         256      223      -33
  Lines       15579    11318    -4261
==========================================
- Hits        14228    10217    -4011
+ Misses       1351     1101     -250

Flag
Coverage Δ

jobs_cache_maintenance
94.40% <ø> (ø)

jobs_mongodb_migration
86.43% <ø> (+0.31%)
:arrow_up:

libs_libapi
87.10% <ø> (?)

libs_libcommon
?

services_admin
87.60% <ø> (ø)

services_api
85.99% <ø> (-0.02%)
:arrow_down:

services_rows
82.95% <ø> (ø)

services_search
80.95% <ø> (ø)

services_sse-api
94.19% <ø> (ø)

services_worker
92.79% <ø> (+0.03%)
:arrow_up:

Flags with carried forward coverage won't be shown. Click here to find out more.

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


influxd logs as influxd-systemd-start.sh (systemd) v1.8.7

Logging broken as of v1.8.7
Steps to reproduce:
List the minimal actions needed to reproduce the behavior.

systemctl start influxd

Expected behavior:
influxd logs as influxd
Actual behavior:
influxd logs as influxd-systemd-start.sh
Environment info:

System info: Debian 10 buster
InfluxDB version: v1.8.7

Steps to fix:
Add this to the systemd service section
SyslogIdentifier=influxd

This issue is also in v1.8.9.
Logs from journalctl -u influxdb are now from influxd-systemd-start.sh and no more from influxd:
Previous behaviour:
Aug 18 14:10:39 my_great_server_influxdb influxd[1251]: ts=2021-08-18T12:10:39.595965Z lvl=info msg="Cache snapshot (start)" log_id=0Tta5e5G000 engine=tsm1

Now we have the shell script name:
Aug 20 10:10:07 my_great_server_influxdb influxd-systemd-start.sh[41219]: ts=2021-08-20T08:10:07.418031Z lvl=info msg="Cache snapshot (start)" log_id=0W4eL4PW000 engine=tsm1 trace_id=0W4ebGjW000 op_name=tsm1_cache_snapshot op_event=start

The proposed fix SyslogIdentifier=influxd is a clean way to fix this:
# If you modify this, please also make sure to edit init.sh

[Unit]
Description=InfluxDB is an open-source, distributed, time series database
Documentation=https://docs.influxdata.com/influxdb/
After=network-online.target

[Service]
User=influxdb
Group=influxdb
LimitNOFILE=65536
EnvironmentFile=-/etc/default/influxdb
ExecStart=/usr/lib/influxdb/scripts/influxd-systemd-start.sh
KillMode=control-group
Restart=on-failure
Type=forking
SyslogIdentifier=influxd
PIDFile=/var/lib/influxdb/influxd.pid

[Install]
WantedBy=multi-user.target
Alias=influxd.service


Suggestion

This page should provide a link to https://docs.microsoft.com/en-us/windows-hardware/drivers/wdf/building-a-wdf-driver-for-multiple-versions-of-windows

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

ID: 2e18cc5f-4209-29f7-5b11-64bb9d32f09b
Version Independent ID: 873e0c27-e96b-24a2-06e5-52f0c833ed0b
Content: Framework Library Versioning - Windows drivers
Content Source: windows-driver-docs-pr/wdf/framework-library-versioning.md
Product: windows-hardware
Technology: windows-devices
GitHub Login: @tedhudek
Microsoft Alias: tedhudek

Added to https://docs.microsoft.com/en-us/windows-hardware/drivers/wdf/framework-library-versioning, thanks for the suggestion


组合式Composition API风格

[ ] I'm sure this does not appear in the issue list of the repository

Basic Info
What are the similar cases of this feature
是否考虑新增组合式Composition API风格示例
What problem does this feature solve?
是否考虑新增组合式Composition API风格示例

应该会考虑增加支持


Docker image

Any dockerfile ? or any official docker image ?

+1

Mistral created a Dockerfile here:
https://github.com/mistralai/mistral-src/blob/main/deploy/Dockerfile

CUDA-based image is too fat and useless, just use slim python image.
I'm using this Dockerfile to run Mistral on 2 GPUs:
`FROM python:3.11-slim
ENV DEBIAN_FRONTEND=noninteractive
RUN pip install --upgrade pip &&
pip install --upgrade ray &&
pip install --upgrade pyarrow &&
pip install pandas fschat==0.2.23 &&
pip install --upgrade vllm
RUN apt-get update && apt-get install git -y
RUN pip install git+https://github.com/huggingface/transformers.git
EXPOSE 8080 6379
CMD echo "Y" | ray start --head && sleep 5 && ray status && python -m vllm.entrypoints.openai.api_server
--served-model $MODEL_ID
--model $MODEL_ID
--tensor-parallel-size 2
--worker-use-ray
--host <IP_ADDRESS>
--port 8080
--gpu-memory-utilization 0.45
--max-num-batched-tokens 32768`
docker run -d --gpus all -it --ipc=host --shm-size 10g -e MODEL_ID=$model -p 8080:8080 -p 6379:6379 -v $volume:/root/.cache/huggingface/hub/ morgulio/vllm:0.2.0
Before start specify vars model and volume as you need.

What are your GPUs?
On Sun, Oct 8, 2023 at 8:46 AM Alexey Rogov @.***>
wrote:

CUDA-based image is too fat and useless, just use slim python image.
I'm using this Dockerfile to run Mistral on 2 GPUs:
`FROM python:3.11-slim
ENV DEBIAN_FRONTEND=noninteractive
RUN pip install --upgrade pip &&
pip install --upgrade ray &&
pip install --upgrade pyarrow &&
pip install pandas fschat==0.2.23 &&
pip install --upgrade vllm
RUN apt-get update && apt-get install git -y
RUN pip install git+https://github.com/huggingface/transformers.git
EXPOSE 8080 6379
CMD echo "Y" | ray start --head && sleep 5 && ray status && python -m
vllm.entrypoints.openai.api_server
--served-model $MODEL_ID
--model $MODEL_ID
--tensor-parallel-size 2
--worker-use-ray
--host <IP_ADDRESS>
--port 8080
--gpu-memory-utilization 0.45
--max-num-batched-tokens 32768`
docker run -d --gpus all -it --ipc=host --shm-size 10g -e MODEL_ID=$model
-p 8080:8080 -p 6379:6379 -v $volume:/root/.cache/huggingface/hub/
morgulio/vllm:0.2.0
Before start specify vars model and volume as you need.
—
Reply to this email directly, view it on GitHub
https://github.com/vllm-project/vllm/issues/1293#issuecomment-1752019569,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AHVJPWZUMUQHZIH734SQOADX6KOAPAVCNFSM6AAAAAA5XM6RNWVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTONJSGAYTSNJWHE
.
You are receiving this because you authored the thread.Message ID:
@.***>

Is there a Dockerfile anywhere that is successful in building vLLM?

@sureshbhusare RTX 3090 FE

**agrogov ** commented Oct 8, 2023 •

This does not work. Nvidia Driver error.

@sureshbhusare do you have CUDA & Nvidia Docker Toolkit installed on the host?
It's mandatory condition.

I had a working Dockerfile but it's now broken, a recent commit is causing a CUDA mismatch, this image uses a CUDA 1.8 base.
The detected CUDA version (11.8) mismatches the version that was used to compile
PyTorch (12.1). Please make sure to use the same CUDA versions._
So something is causing pytorch compiled against 121.1 to be installed
FROM runpod/pytorch:2.0.1-py3.10-cuda11.8.0-devel
RUN git clone https://github.com/vllm-project/vllm.git && cd vllm && pip install .
Dockerfile is only two lines, vLLM is supposed to require CUDA 11.8 as per the docs, has this changed?

@olihough86 Just built your Dockerfile and it works for me :)

My site prefers Nvidia's conda channel for CUDA over the NVCR images - our vLLM Dockerfile is available @ https://github.com/ucsd-ets/traip-vllm if anybody's interested in that approach.

My site prefers Nvidia's conda channel for CUDA over the NVCR images - our vLLM Dockerfile is available @ https://github.com/ucsd-ets/traip-vllm if anybody's interested in that approach.

Can this dockerFIle be built on any pc(i am on a macbook) and push to registry? @agt having issue building locally, the idea is the push to ECR and then run it via kubernetes deployment but getting this error

300.3 terminate called after throwing an instance of 'std::length_error'
300.3   what():  basic_string::_M_create
300.4 Aborted
------
Dockerfile:32
--------------------
  31 |
  32 | >>> RUN . /opt/conda/bin/activate && \
  33 | >>>     mamba env create -p /opt/vllm -f /root/vllm-environment.yml
  34 |
--------------------
ERROR: failed to solve: process "/bin/sh -c . /opt/conda/bin/activate &&     mamba env create -p /opt/vllm -f /root/vllm-environment.yml" did not complete successfully: exit code: 134


Mis configured fgwp 121 device

Is your problem within Home Assistant (Core or Z-Wave JS Integration)?
NO, my problem is NOT within Home Assistant or the ZWave JS integration
Is your problem within Z-Wave JS UI (formerly ZwaveJS2MQTT)?
NO, my problem is NOT within Z-Wave JS UI
Checklist

[X] I have checked the troubleshooting section and my problem is not described there.

[X] I have read the changelog and my problem was not mentioned there.

Describe the bug
Parameter 10 is missing, parameters 12 and 13 are wrong. See Document at
https://manuals.fibaro.com/document/fgwp-advanced-parameters/
Result is device does not send periodic reports.
This is for fw version 4,2
Device information
Manufacturer:
Model name:
Node ID in your network:
Fibaro fgwp 121, uk version
Node 38
How are you using node-zwave-js?

[X] zwave-js-ui (formerly zwavejs2mqtt) Docker image (latest)
[ ] zwave-js-ui (formerly zwavejs2mqtt) Docker image (dev)
[ ] zwave-js-ui (formerly zwavejs2mqtt) Docker manually built (please specify branches)
[ ] ioBroker.zwave2 adapter (please specify version)
[ ] HomeAssistant zwave_js integration  (please specify version)
[ ] pkg
[ ] node-red-contrib-zwave-js (please specify version, double click node to find out)
[ ] Manually built from GitHub (please specify branch)
[ ] Other (please describe)

Which branches or versions?
version:
node-zwave-js branch:
zwave-js-ui branch:
Did you change anything?
yes (please describe)
If yes, what did you change?
No response
Did this work before?
Don't know, this is a new device
If yes, where did it work?
No response
Attach Driver Logfile
Log file not relevant, just check the manufacturer docs.

Don't know if this is still an issue.  There are several of Fibaro "FGWP xxx" devices in the config DB all with different parameters.  If still an issue, what is the type/ID (something like (0x0602:0x4003) of your device. Also do you have a manual for your specific device?

The type Id reported bty zwave2mqtt is  271-4096-5377 (0x010f-0x1501-0x1000), but no I don't have a manual on paper, I believe it is online. Maybe at
https://manuals.fibaro.com/content/manuals/en/FGWPG-121/FGWPG-121-EN-T-v1.0.pdf
Rgds, Dave Storey
On 28 Sep 2023, 20:21, at 20:21, Robert Eckhoff @.***> wrote:

Don't know if this is still an issue.  There are several of Fibaro
"FGWP xxx" devices in the config DB all with different parameters.  If
still an issue, what is the type/ID (something like (0x0602:0x4003) of
your device. Also do you have a manual for your specific device?
--
Reply to this email directly or view it on GitHub:
https://github.com/zwave-js/node-zwave-js/issues/5358#issuecomment-1739879708
You are receiving this because you were mentioned.
Message ID: @.***>

One thing to consider, a lot of fibaro devices have different revisions that only differ by firmware version but have completely different parameters.
Their support website is pretty good though and contains all this information.

The zwave-js-ui parameters for devices with (0x010f-0x1501-0x1000) match the manual above.  The parameters referenced in the first post are for different devices.  Those parameters apply to device IDs (all 0x010f-0x0602); 0x1001, 0x1003, 0x1004, 0x4001 & 0x4003.  IMHO there is not a problem here, but that's not my call.

I haven't double-checked the IDs, so you may be right.
The information is a bit messy though. The link above lists the differences between FW <= 2.5 and FW >= 3.2, which are quite severe. And this config is indeed missing parameters 10 and 50, which are not found in the PDF, but on that page. 🤪

Which is why I stated the fw version, and referenced the advanced manual in the original post..
https://manuals.fibaro.com/document/fgwp-advanced-parameters/
Which definitely does not match what zwave2mqtt was showing me, and using. Maybe the zwave config files have changed since then, so those parameters work, but i have not reloaded the system since then. The attached screenshot is what I see, which does not match the advanced paramaters listed in that document.
Rgds, Dave Storey
On 28 Sep 2023, 22:07, at 22:07, AlCalzone @.***> wrote:

One thing to consider, a lot of fibaro devices have different revisions
that only differ by firmware version but have completely different
parameters.
Their support website is pretty good though and contains all this
information.
--
Reply to this email directly or view it on GitHub:
https://github.com/zwave-js/node-zwave-js/issues/5358#issuecomment-1740005300
You are receiving this because you were mentioned.
Message ID: @.***>

I'm a newcomer to zwave-js-ui, but from past experience Fibaro is a PITA because they use the same ID numbers for different versions.  This can be handled, but complicates things. The other problem is that the manuals do not identify the IDs of the devices the manual applies to. There are two JSON files in the config folder related to this discussion.  The first is for the link in the opening post.  It provides different parameters for the different versions, but does not have the ID of your device.
fgwp102.json.txt
The other is for the manual a few posts above here.
fgwpg-121.json.txt That does have the ID of your device. It could be you have a later version with different parameters. However, changing the existing JSON will disrupt everyone that does have the device and version that manual applies to.  I think there is some zwave-js-ui way to manually add a parameter and then you could see if anything changes regarding reporting

IMO we should just ship 2 different files with all the IDs that are linked to FGWPG-121 (not 102!), separated by firmware versions.
Offering users on the 1.0 firmware two non-existent parameters is okay IMO and if someone does report them not working, we can still add a condition to hide them.

Coming from Openhab I thought I could help out on some of the config-help wanted in the Zwave-js issue list by using the OpenSmartHouse DB to resolve some open issues like this one.  I don't want to be difficult, but I believe there is no version separation for the FGWP-121, only the FGWP-102. This screen shows my dilemma here.
.
I have compared the parameters of each device in the OpenSmartHouse DB with the parameters in the ZJS config folders and they match.
One comment in the first post was about reporting. Periodic reports are param13 for 121 version 4.6 and param 14 for 102 version 3.2+.  Maybe I just need to let this rest for a bit.

My device is actually fgwpg, not b, but i guess that is just physical pin out. The config seems to have separate reporting intervals for power, and energy, on params 13 and 14 .. But neither are generating a report. Metering is definitely there, if I poll the device, so i am not sure why the description does not say metered, like the 102.
Rgds, Dave Storey
On 29 Sep 2023, 22:23, at 22:23, Robert Eckhoff @.***> wrote:

Coming from Openhab I thought I could help out on some of the
config-help wanted in the Zwave-js issue list by using the
OpenSmartHouse DB to resolve some open issues like this one.  I don't
want to be difficult, but I believe there is no version separation for
the FGWP-121, only the FGWP-102. This screen shows my dilemma here.
.
I have compared the parameters of each device in the OpenSmartHouse DB
with the parameters in the ZJS config folders and they match.
One comment in the first post was about reporting. Periodic reports are
param13 for 121 version 4.6 and param 14 for 102 version 3.2+.  Maybe I
just need to let this rest for a bit.
--
Reply to this email directly or view it on GitHub:
https://github.com/zwave-js/node-zwave-js/issues/5358#issuecomment-1741504176
You are receiving this because you were mentioned.
Message ID: @.***>

My device is actually fgwpg, not b There is a slight difference in how Openhab and ZJS handle versions.  The parameters numbers are the same between "g" and "b", but the default values (params 3, 21, 22 & 40) are different (30000 vs 18000 reflecting either 240 (13A max) or 120v (15A max). ZJS has separate config files for "g" and "b".  FYI the rest of the model is FG= Fibaro Group; WP= Wall Plug.  Also for Fibaro, Power = watts. Energy = KWH
If you're game, let's see if we can find the reporting issue. I apologize in advance, but my questions are going to start from the beginning as I don't know your complete setup or what you have done previously. Plug a running light or fan into the plug. Just using ZUI, drill down into configuration CC and verify 11, 12, 13 and 14 are at the defaults 15, 10, 3600 and 3600. The critical parameter is 14 because in all versions of FGWP devices this means reports. Use the arrow to update if not. Jump to the Meter CC are there any values? Hit the refresh, any change?  If no values, can you get a screen shot of the expanded meter CC.  I don't understand what you mean by metering? Is it the same as reporting?


Plugin "eating" some parts of the code of Laravel Blade with leading spaces.

The code without leading spaces:

The code with leading spaces:

Is this a bug or is my mistake?

I can't see Vim Indent Guides being used in either screenshot, are you sure it's what causing your problem? Does disabling the plugin fix your issue?

Man... I think i make this issue in the wrong plugin repository!
I'm sorry!

@nathanaelkane Is it possible to add leading spaces with vim indent guides? This can be achieved via  indentLine plugin.

@iamrahulroy I'm not sure what you mean by "add leading spaces"? Can you please elaborate.

@nathanaelkane I liked screenshot above and I'm linking it again https://camo.githubusercontent.com/73a4b5e80ee0364c8f5e7e2b8f1af309c79ce739/687474703a2f2f692e696d6775722e636f6d2f744c596b6237392e706e67
By leading spaces, I mean soft tabs to be represented by dots. Is it possible to do this with vim-indent-guides? If not I'll go ahead and install indentLine plugin.

@iamrahulroy Thanks for clarifying. To answer your question, no that is not a feature of this plugin. This plugin is for simply for displaying indent guide lines.
I use set list (with listchars configured appropriately) when I want to see leading spaces. See http://vimcasts.org/episodes/show-invisibles/ for more details.
I'm going to lock this conversation because we've hijacked a different issue.


Mongoid::Errors::DocumentNotFound if I have the same value slugs in different locales for different documents

for example:
article1._slugs_t = { "ru" => ["test-1"], "uk" => ["test"] }
article2._slugs_t = { "ru" => ["test"], "uk" => ["test-1"] }
I18n.locale = :uk
Article.find('test-1') # => Mongoid::Errors::DocumentNotFound

@nazarok Bump, is this an issue that was fixed in mongoid? Something else?

this bug is reproduced in mongoid-4.0.2
this error is absent in mongoid-5.0.0


#133 fix checkout btn text

I changed checkout btn text to white and hover text to black using tailwindCSS classes.
issue page: https://github.com/julkascript/cardflow/issues/133

LGTM!


target x86_64-unknown-none dependancy conflict

when I run : "cargo build --target x86_64-unknown-none"
I get the error :
error: target is not supported, for more information see: https://docs.rs/getrandom/#unsupported-targets
--> ......cargo\registry\src\index.crates.io-6f17d22bba15001f\getrandom-0.2.8\src\lib.rs:268:9
|
268 | /         compile_error!("target is not supported, for more information see:
269 | |                         https://docs.rs/getrandom/#unsupported-targets");
| |________________________________________________________________________^
error[E0433]: failed to resolve: use of undeclared crate or module imp
--> ......cargo\registry\src\index.crates.io-6f17d22bba15001f\getrandom-0.2.8\src\lib.rs:290:5
|
290 |     imp::getrandom_inner(dest)
|     ^^^ use of undeclared crate or module imp
For more information about this error, try rustc --explain E0433.
error: could not compile getrandom (lib) due to 2 previous errors
warning: build failed, waiting for other jobs to finish...

Do you have your full code online somewhere so that I can take a look? It's difficult to understand the problem with just the error output.
My guess is that you're trying to compile the bootloader crate for the x86_64-unknown-none target, which is not how it should be used. Instead, your kernel should depend on the bootloader_api crate (which can be compiled for x86_64-unknown-none) and the bootloader crate should be built for your host system (without any --target argument).

In which directory are you running that command? It looks like you are running it in the directory of a crate that depends on getrandom, which indeed doesn't support the absence of an OS.

I was trying to run a very basic kernel in qemu to just get started.
so in I've created a new Rust project and I added this code to main.rs:
#![no_std]
#![no_main]

fn kernel_main(boot_info: &'static mut bootloader_api::BootInfo) -> ! {
    loop {}
}

bootloader_api::entry_point!(kernel_main);

and then in Cargo.toml:
[package]
name = "something"
version = "0.1.0"
edition = "2021"

[dependencies]
bootloader = "0.11.2"
bootloader_api = "0.11.2"

and then "cargo build --target x86_64-unknown-none" from the same folder. no subfolders , nothing else.
now I've noticed that its not how it should be.
Do you think it is a good idea to provide a very basic example in a folder called examples in this repo to help people like me to get started ?
note: the common folder is too much to get started as a lot of useful stuff are there that may confuse starters.
by the way the tutorial by Philipp Oppermann "https://os.phil-opp.com/" is extremely useful, thank you @phil-opp and all contributors involved to make this happen!.

Ah yes, you should only include the bootloader_api dependency for your kernel, not the bootloader crate itself. Also, you need to use the entry_point macro to make your kernel bootable.

Do you think it is a good idea to provide a very basic example in a folder called examples in this repo to help people like me to get started ?

Yes, we should definitely do that.

by the way the tutorial by Philipp Oppermann "https://os.phil-opp.com/" is extremely useful, thank you @phil-opp and all contributors involved to make this happen!.

Great to hear, thanks a lot :). I'll try my best to update it to the new bootloader version as soon as possible.

In my kernel crate, I'm only loading bootloader_api, however it still happens to me. Here is my repo https://github.com/yavko/yavkOS/tree/update-bootloader

It looks like something enables the std feature of futures-core.

It looks like something enables the std feature of futures-core.

That should be the case though, since futures-core is only required in the top level crate not kernel crate, in kernel crate these dependencies don't exist.

Thanks a lot for reporting! I checked out your code and it looked all fine, but I could reproduce your error. It took me quite a bit of trial and error until I minimized your code enough to find the issue. It turns out that you're not specifying an edition or resolver in your top-level Cargo.toml, which causes cargo to use the old feature resolver. As a results, it unifies dependencies across targets, which turns the std-dependent features on for your kernel dependencies as well. See https://blog.rust-lang.org/2021/03/25/Rust-1.51.0.html#cargos-new-feature-resolver for more information.
I opened a PR on your repo to fix this by setting the edition to 2021, where the new resolver is the default: https://github.com/yavko/yavkOS/pull/1

Thanks a lot for reporting! I checked out your code and it looked all fine, but I could reproduce your error. It took me quite a bit of trial and error until I minimized your code enough to find the issue. It turns out that you're not specifying an edition or resolver in your top-level Cargo.toml, which causes cargo to use the old feature resolver. As a results, it unifies dependencies across targets, which turns the std-dependent features on for your kernel dependencies as well. See blog.rust-lang.org/2021/03/25/Rust-1.51.0.html#cargos-new-feature-resolver for more information.
I opened a PR on your repo to fix this by setting the edition to 2021, where the new resolver is the default: yavko/yavkOS#1

Thank you so much for finding this!


Example sketch for fsbrowser.ino

Hi,
Could you please provide example like fsbrowser.ino https://github.com/esp8266/Arduino/blob/master/libraries/ESP8266WebServer/examples/FSBrowser/FSBrowser.ino
I try to upload/update html file on spiffs using web browser.
I have custom route for upload
 server->on("/upload", HTTPMethod::HTTP_POST, [server](){
        server->send(200);
        handleFileUpload(server);
    });

void handleFileUpload(WebServer *server){ // upload a new file to the SPIFFS
  HTTPUpload& upload = server->upload();
  if(upload.status == UPLOAD_FILE_START){
    String filename = upload.filename;
    if(!filename.startsWith("/")) filename = "/"+filename;
    Serial.print("handleFileUpload Name: "); Serial.println(filename);
    fsUploadFile = SPIFFS.open(filename, "w");            // Open the file for writing in SPIFFS (create if it doesn't exist)
    filename = String();
  } else if(upload.status == UPLOAD_FILE_WRITE){
    if(fsUploadFile)
      fsUploadFile.write(upload.buf, upload.currentSize); // Write the received bytes to the file
  } else if(upload.status == UPLOAD_FILE_END){
    if(fsUploadFile) {                                    // If the file was successfully created
      fsUploadFile.close();                               // Close the file again
      Serial.print("handleFileUpload Size: "); Serial.println(upload.totalSize);
      server->sendHeader("Location","/success.html");      // Redirect the client to the success page
      server->send(303);
    } else {
      server->send(500, "text/plain", "500: couldn't create file");
    }
  }
}

I copied handleFileUpload for example and pass server to the function and change server.xxx to server->xxx. It did compiled just fine but it doesn't response at all, just blank page after server->send(200).
I think I have no idea how to refer to server instance.
Thank you,
sam

Hi,
You can get access to the server object through the API callback.
Past that you will need to seek help in the ESP8266 Arduino forums. This is not the right place to find general help on ESP8266 development.


--random-seed

Not a lot of people know about MALLET's --random-seed option. Would this be something simple to add?

Thanks!
Keeping the UI from getting too forbidding is definitely a challenge. Off the top of my head, I'd suggest one possibility would be to add split Optional settings.... Into Settings and Advanced buttons, or something like that. You could move tokenisation, segmentation, and threading functions (as well as random-seed) to the advanced section. That, of course, is just my intuition of what is "advanced", but some user feedback would confirm what the majority users find most intuitive.

It's certainly possible, and Claude you're convincing me that I should just do it. For now I'll just add it to the optional settings menu alongside a couple of other arcane settings that I've needed to use.

Done! Alas the native windows build is not yet complete, but the Mac build and basic jar file are both up-to-date with this change.


Did you meet the situation...like the dirty data?

Hello Buddy,
Thanks for your repo, let me learn a lot.
But when you got pixels from the image, did you ever met the situation? like getting a lot of wrong pixels. Please see the following picture.
The right converted picture should be:

But sometimes, I got the picture with dirty data:

Any idea?
Thank you again.

But I tried this library, I always got the right result.

But I tried this library, I always got the right result.

I also copy the ImageProcessor class from the SpookCam-Pixel to my project and make a bridge file to make it work. The odd thing is the Object-C version always prints the right value but the Swift version sometimes prints the right value, sometimes prints the wrong value.  Crying...

Hello,
I just asked the question on stackoverflow, and some kind person has answered the question. Please see here

Sorry, it is my first time to write "Pull Request", I reopen it by mistake.


GSK-302 Add id information on the model, dataset and inspection pages.

Finished

@thomasabou01 , a tooltip's default width isn't enough. Could you increase it?