Changing extension to make use of dependency injection instead of hard-coding

Now first of, this is just provided as an example of what I've found out to work, and could definitely be improved quite alot.
This example is being provided as I believe it could be useful, especially in cases when/if unit testing is to be implemented.
If you have any questions about the changes, please let me know. I did try to explain a little in the commit message (hence the many different commits)
/cc @gep13
EDIT: As this is an example, I didn't bother to create an issue.

This looks very cool!  I haven't played at all with dependency injection in TS yet, but I am definitely going to dig into this some more!

Absolutely.  I have made use of it extensively in .Net applications, but hadn't checked to see what existed in TS/JavaScript.  This looks like it has everything that is needed though.  Thanks again for creating this PR!

Indeed, I believe it have more or less everything needed.
I know there are other DI frameworks for TS though, but inversify was the only one I found a blog post on how to implement it (which is pretty much were most of the code here comes from)
Blog Post: https://rpeshkov.net/blog/vscode-extension-di/

Oh I see, I've missed something. I've forgotten to import 'reflect-metadata' which is actually required (don't know why, and can't understand why it worked without it).
Let me change that

@AdmiringWorm thank you for the link to that blog post!

Relates to #5

@AdmiringWorm your changes have been merged, thanks for your contribution 👍


Updated flutter_tools test running instructions.

/cc @tvolkert @Hixie

Great point @tvolkert.  As I recall this push is gated by some other issues.
https://github.com/flutter/flutter/issues/13539 opened to remind us to clean up.


Batch Viewer : Why Sequence Length 2049?

Hi,
I am using utils/batch_viewer.py to iterate through Pythia's training data and calculate some batch-level statistics.
Firstly, there are some gaps between the actual code in batch_viewer.py and the expected code according to the README (For example, it doesn't take any 'config file' as input, the 'load file' name needs to be supplied separately, etc.). But these differences were obvious enough that I could fix them on my end and run the code.
However, it's the final step of saving the data after loading the buffer that I'm a bit confused about. I have two questions,

Given that each 'sequence' in the dataset is of a different length, can someone confirm that the training is performed by simply concatenating the whole dataset as a single sequence of tokens, and then dividing it into sentences and batches? This would mean that some 'sequences' are broken into different sentences or batches, and even one 'sentence' of 2048 tokens might contain multiple actual dataset sequences. I believe this is how most LLMs are trained, but I couldn't find the exact details in the paper.
The MMapDataset function attempts to reshape the final concatenated sequence into (-1, 2049). I don't understand why 2049. Isn't the sentence length supposed to be 2048? I'm new to the specifics of how LLMs are trained so I may be missing some trivial detail here, but I don't understand why 2048 became 2049.

Hi, thanks for your interest!
As a sanity check of the new batch_viewer.py, you can also use the older version here: https://github.com/EleutherAI/pythia/commit/899add0f1c71cb27dbf5a7594202584416c0b424 @uSaiPrashanth will be bringing the documentation in the README in line with this updated version.

Yes, this is correct! We tokenize all documents, shuffle them, and concatenate all documents, separating them by a single EOD token . Thus each sample or batch may not start or end with an EOD token, and sample boundaries do not respect document boundaries, nor do we avoid cross-attending to different documents in a context window. This is standard for many public LLM training codebases. For the ground truth on this, v1.0 of the neox repository is a good reference. https://github.com/EleutherAI/gpt-neox/tree/v1.0

The reason for a sequence length of 2049 is because target tokens consist of the input tokens, but left-shifted by one position (so tokens [0 1 2 3] are seen and used to predict token 4 as target, and so on.) So the first 2048 tokens (only excluding token 2049) of the 2049-token window in a sample are used as inputs to the model, and the last 2048 tokens (only excluding the first token) are used as targets for calculating loss. Thus we calculate loss on 2048 tokens per sample.

I have the same questions as @prakharg24. Specifically:

There are two version of the deduped, pre-shuffled datasets mentioned in the README:

EleutherAI/pythia_deduped_pile_idxmaps contains tokenized documents without any EOD tokens. I've looked at the data and this seems to be the case.
EleutherAI/pile-deduped-pythia-preshuffled contains tokenized documents with EOD tokens.

If the data is divided into 2049-sized sequences naively, then the first token of each sequence will not be seen (as a label) by the model. Is this intended?

Can someone please help with this? @haileyschoelkopf

I have similar doubts regarding the nature of data as @itsnamgyu @prakharg24 ...
Any input is appreciated. cc @haileyschoelkopf @crowsonkb @joshlk

Hi @itsnamgyu @prakharg24 hopefully I can answer some of your dataset questions here:

If the data is divided into 2049-sized sequences naively, then the first token of each sequence will not be seen (as a label) by the model. Is this intended?

This is correct. Because we do not train using any BOS tokens, there is no way to see the first token of a sequence as a label by the model. This is because one cannot feed in the empty string to a model (unless it was trained with a BOS token that can act as such. You could attempt to simulate this by passing EOD into the Pythia models, but I am unsure of the behavior that would result.)

If I want to only use a subset (say arXiv only) to train a pythia model, how do I download only those pretokenized data (including EOD tokens)?

@sujantkumarkv unfortunately, when tokenizing the Pile dataset, metadata about subsets are not retained. We don't currently have an easy way to train only on say the arXiv subset, and would recommend retokenizing that dataset alone separately using GPT-NeoX's prepare_data.py .
Regarding how to replicate training order:
If using EleutherAI/pile-deduped-pythia-preshuffled, then once you've downloaded and combined the shards in this, this should provide, when loaded using MMapIndexedDataset via the script at https://github.com/EleutherAI/pythia/blob/dc24af59cff8c8159a1d4b106393b39c39a1ef2e/utils/batch_viewer.py , will provide a dataset where dataset[i] is a length-2049 sequence of tokens, that will contain EOD tokens separating the end of one document from the beginning of the next.
To access the j-th batch item at step k of training, you can access dataset[(k * 1024) + j] which should give the context window seen at that item in training.

The EleutherAI/pythia_deduped_pile_idxmaps contains binidx files that can be used with the script at https://github.com/EleutherAI/pythia/blob/899add0f1c71cb27dbf5a7594202584416c0b424/utils/batch_viewer.py .
These binidx files contain the tokenized documents, prior to chopping them into the context windows seen during training.
Here, these binidx files must be loaded using megatron.data.gpt2_dataset.GPT2Dataset with the appropriate arguments, in order to perform shuffling via megatron's dataset code (as was done during training) and chop the documents appropriately into context windows.

We've updated the readme to hopefully make more clear how to use the preshuffled binidx files!
If you're looking to reproduce the Pythia training order, for

viewing the training data contents: we recommend using the preshuffled binidx files and using the most up-to-date README and batch_viewer.py . This lets you dump the context windows seen by Pythia directly to disk and is significantly faster than the old batch_viewer.py .

if you want to re-train Pythia, we recommend doing so in the GPT-NeoX library v1.0 and taking care to use the exact same config file as we provide for the Pythia models.

I hope that this is helpful!

Thanks so much for the detailed answer!
Just to clarify, EleutherAI/pythia_deduped_pile_idxmaps does not have any EOD tokens?

Further to @itsnamgyu comment, I confirm that pile-deduped-pythia-preshuffled does not have any EOD tokens  (I checked a 100k sample, let me know if I missed anything).

@pietrolesci Actually according to the comment above, pile-deduped-pythia-preshuffled should have EOD tokens while EleutherAI/pythia_deduped_pile_idxmaps does not, so that is contradicting. Are you should you are referring to pile-deduped-pythia-preshuffled?

If using EleutherAI/pile-deduped-pythia-preshuffled, then once you've downloaded and combined the shards in this, this should provide, when loaded using MMapIndexedDataset via the script at https://github.com/EleutherAI/pythia/blob/dc24af59cff8c8159a1d4b106393b39c39a1ef2e/utils/batch_viewer.py , will provide a dataset where dataset[i] is a length-2049 sequence of tokens, that will contain EOD tokens separating the end of one document from the beginning of the next.

Note, batch_viewer.py does not have any code to add EOD tokens.

@haileyschoelkopf sorry for the trouble, but is EleutherAI/pythia_deduped_pile_idxmaps also pre-shuffled?
You mentioned your comment,

Here, these binidx files must be loaded using megatron.data.gpt2_dataset.GPT2Dataset with the appropriate arguments, in order to perform shuffling via megatron's dataset code (as was done during training) and chop the documents appropriately into context windows.

whereas https://github.com/EleutherAI/pythia#reproducing-training says about EleutherAI/pythia_deduped_pile_idxmaps

We recommend downloading this rather than retokenizing the Pile from scratch in order to guarantee preservation of the data order seen by the Pythia models

I'm training on EleutherAI/pythia_deduped_pile_idxmaps (while manually injecting EOD) and (1) some manual inspection and (2) the training loss suggests that it is in fact pre-shuffled.

@pietrolesci Actually according to the comment above, pile-deduped-pythia-preshuffled should have EOD tokens while EleutherAI/pythia_deduped_pile_idxmaps does not, so that is contradicting. Are you should you are referring to pile-deduped-pythia-preshuffled?

Hi @itsnamgyu, I confirm that I meant that -- contrarily to what is expected and described in the README -- the pile-deduped-pythia-preshuffled does NOT have an EOD token

I also ran into the absence of EOD tokens just now 👀
will ping @haileyschoelkopf

I have checked the preshuffled dataset. And find that the authentic seq_length is 2050 which is not equal to 2049 as described.

Any updates on missing EOD tokens in the past months? Are the https://huggingface.co/datasets/EleutherAI/pile-deduped-pythia-preshuffled files save to use for pretraining?

@pietrolesci Did you make any progress on the EOD tokens or have advice to share for successful pile training?

Hi @markschoene,
Thanks for pinging me. I think that for the Pythia runs it is confirmed that no EOD token was added.
Looking at the Pythias, you can have a successful training run with the current pre-tokenised Pile: they are not the best LMs out there, but they work--they underperform models of similar sizes but (I think) it's because they are undertrained, especially the big ones; not because of the EOD issue.
Depending on your budget, nowadays, I would train a Llama-based LM (GQA, rotary pos, etc) on the fineweb dataset. If your budget is small, consider the minipile or samples (10BT) from the fineweb-edu dataset. In both cases, you can process the dataset from scratch so you have full control. If you really want the Pile and an EOD token, I think your only option is to tokenise it from scratch.
I hope this helps!


Harmonize nomenclature of script names (using common and meaningful subcommand prefixes)

Originaly requested at:
https://github.com/googlefonts/fontbakery/issues/1501
@davelab6 said:
Felipe wrote:

Font Bakery 0.3.0 has jsut been released with a modular re-design. The tests all have UUIDs and are neatly organized. And we have a growing set of self-tests as well.
In comparison, the fixer scripts and other auxiliary stand-alone scripts provided by Font Bakery still look pretty much a mess in the project root-dir. Maybe something similar could be achieved with the helper scripts as well.

I wrote:
Observed behavior
I see
$ fontbakery -h
...
Run fontbakery subcomands:
    build-font2ttf
    build-fontmetadata
    check-description
    check-ttf
    check-upstream
    fix-ascii-fontmetadata
    fix-familymetadata
    fix-gasp
    fix-glyph-private-encoding
    fix-nameids
    fix-nonhinting
    fix-ttfautohint
    list-panose
    list-weightclass
    list-widthclass
    metadata-vs-api
    update-families
...

Expected behaviour
What I expect is that the commands' shared stems are actually subcommands... like this
$ fontbakery -h
...
Run fontbakery subcomands:
    build font2ttf
    build fontmetadata
    check description
    check ttf
    check upstream
    fix ascii-fontmetadata
    fix familymetadata
    fix gasp
    fix glyph-private-encoding
    fix nameids
    fix nonhinting
    fix ttfautohint
    list panose
    list weightclass
    list widthclass
    metadata-vs-api
    update families
...

To be done after merging #10

#24 is a more up-to-date issue that is a duplicate of this one


Mention signed git tags

If a project is using git or another revision control system that supports the equivalent of signed Git tags, it should require the release manager to sign tags.
I'd send a PR, but it seems like this could fit into different places - e.g. it could just be mentioned in the MitM section, but it might also be split off into its own section, etc. Let's discuss.

I like the idea, and I thought it was already there, but it wasn't.  Thanks!  I'll add it to the list of possibilities for a future higher-level badge.
That said, I don't plan to add it to the criteria for this current (lowest) badge level.  There are two problems:

Relatively few projects cryptographically sign tags or releases.  For this first level we've been preferring practices that are already widespread.
Even fewer recipients (users) CHECK those cryptographic signatures (in part because it's nontrivial to verify that you have the right key for signing). Signatures don't help much unless recipients actually check the signature.

Instead of pressing for signatures, the draft criteria permit simply releasing using HTTPS.  HTTPS doesn't help if the distribution website is broken into, but it does counter man-in-the-middle attacks (including diversion to a different site).  What's more, people's browsers automatically check HTTPS certificates, so while it's imperfect, it actually gets used. A perfect system that isn't used doesn't help.
That said, I think this is a great criterion to add for that "next level".  I may start collecting those separately, so that it's a little clearer.

Yep!
Thanks for adding this. The work here is really awesome.


How to clear sectionList data and show new data which is reload from backend?

Is this a bug report?
I think so
Have you read the Contributing Guidelines?
yes
Environment
OS:  Android 4.1.2
Node:  8.1.4
npm:  5.0.3
Android Studio:  3.0.1

Packages: (wanted => installed)
react-native: 0.50.3 => 0.50.3
react: 16.0.0 => 16.0.0

Target Platform: Android (25.0.3)
Steps to Reproduce
The rend items get's displayed even if the sections prop (of the SectionList) is an empty Array or a new Array and the previous rend items the sections prop (of the SectionList)  always get's displayed.
I pass down an empty array as a prop (holidays) and start async fetching the data in a parent component. Once the data is fetched I update the parent component's state and thereby the props to the child that contains the SectionList
The rander items do not refreshed, new array data just concat. I pass down an empty array is not clear the rander items data, it still be listed
Expected Behavior
if  I pass down an empty array as a prop (sections),  the SectionList should clear previous rend items and display nothing
Actual Behavior
the SectionList  still display previous rend items
Reproducible Demo
sample code
    render() {
        return (
          <SectionList
            style={styles.container}
            sections={this.props.holidays}
            renderItem={this.renderItem.bind(this)}
          />
     ) }

Hi guys,
I got the same issue now. What can I do now? is there any trick to skip this?

I'm facing the same problem...


Test for #23879

Test for https://github.com/go-gitea/gitea/pull/23879
This PR is for comparing the ci result.

Lol, I also did something similar. At that time, I deleted all other CI steps / only run the specified test to make the CI run faster.

I’m not sure, but maybe this test is not necessary, as Team.Authorize is no longer be used now? (I have been confused with this)

IIRC @lunny did the last refactoring for this pakcage. Maybe he could help to answer?


H2

IS it easily possible to integrate an additional heading, ie H3, so that it sits under H2 in each box?
Manythanks

Ahh, resolved, well in a hacky sort of way.
" Contracts Manager   First Second' " in the name field for the "testdata array" does the trick as long as i give the boxes enough room.
I would like to dynamically set the box dimension based on how much text are in them.
is this possible?


feat: Smart contracts event decoding

Description
resolves #669
please test both emmiting event from AE Studio and emmiting on contract detail through Write action.
In the second case, it should refresh the tab, so after Query -> see Events -> should be up to date
Demo
https://github.com/aeternity/aescan/assets/15363559/0afc3a9f-9c11-4793-9819-303d7b7c26ef
Checklist:

[x] I have read and followed the Contributing Guide
[x] add ability to show decoded events

@janmichek I have checked and deployed all contracts on ae studio but was not able to see field with event emitter. What I'm doing wrong?

Here is the sourece code, but also feel free to test on another examples, please
contract EventEmitter =
datatype event =
    FirstEvent(int)
    | SecondEvent(address)
    | AnotherEvent(indexed address, string)

stateful entrypoint emitEvents(value: int, msg: string) =
    Chain.event(FirstEvent(value))
    Chain.event(SecondEvent(Call.caller))
    Chain.event(AnotherEvent(Call.caller, msg))

@janmichek I have checked and deployed all contracts on ae studio but was not able to see field with event emitter. What I'm doing wrong?

I think you can also use mine previously deployed.

I tried it again, but it's not working for me. Probably I'm doing something wrong. But it seems that AE studio isn't working correctly, I even can't create a new empty field to put your code there. Have to delete existent one.

I can't paste an example of code into AE studio:

https://github.com/user-attachments/assets/9e8e78a1-6c56-4ccd-9046-782854b0ba3f

Also I was searching for events to do some tx with them, but not working for me.

I tried it again, but it's not working for me. Probably I'm doing something wrong. But it seems that AE studio isn't working correctly, I even can't create a new empty field to put your code there. Have to delete existent one.
1. I can't paste an example of code into AE studio:
   ![cry](https://private-user-images.githubusercontent.com/69896204/364761804-6429e361-fae7-45b8-9ef0-94ea8ab41681.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjU1MzgxNjYsIm5iZiI6MTcyNTUzNzg2NiwicGF0aCI6Ii82OTg5NjIwNC8zNjQ3NjE4MDQtNjQyOWUzNjEtZmFlNy00NWI4LTllZjAtOTRlYThhYjQxNjgxLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA5MDUlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwOTA1VDEyMDQyNlomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTlmNDc5MmVhMWY1ZDRlMDRkN2NiNzlkZjAxMDQwYjcxNzdkYzc1NTk3Y2E5YzJkNzYzOTI2NmU1YmQ2YWJlYmMmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.aO9WLcEMc-yfUtO4-ywXXoFPtsm3paM6yIXB-Pp2nEw)

2024-09-<IP_ADDRESS>.mov
2. Also I was searching for events to do some tx with them, but not working for me.

Try different browser

From your video looks completely fine.
Try open it in private window.


Reduced eng_us_phonemic.phones to eng branch

Reduced phonemic inventory in eng_us_phonemic.phones

This rather scary looking PR just brings the branch up to date and adds the new more restrictive eng_us_phonemic.phones. Approving.

This rather scary looking PR just brings the branch up to date and adds the new more restrictive eng_us_phonemic.phones. Approving.


How can I pipe stream between tasks

I have two tasks, task one pipe to task two.
gulp.task('one', function(){
  gulp.src('js/**/*.js')
    .pipe(someplugin())
    .pipe(gulp.tasks['two']);
});

gulp.task('two', ['one'], function() {
  gulp.tasks['one']
    .pipe(gulp.dest('dist/js'));
});

What about the following scenario:
gulp.task('bundle', function () {
    gulp.src(src)
        .pipe(babel())
        .pipe(uglify())
        .pipe(rename(filename))
        .pipe(gulp.dest('dist'))
});

gulp.task('upload', function () {
        publisher.publish()
        .pipe(awspublish.reporter())
});

gulp.task('dev', ['bundle', 'watch']);

gulp.task('deploy', ['bundle', 'upload']);

I want to pipe the bundle task output into the upload task, because I'm reusing the bundle task in the dev task.
If I can't do that, I need to re-read the file I want to upload in the upload task and it seems wasteful:
gulp.task('upload', function () {
    gulp.src(dist)
        .pipe(publisher.publish())
        .pipe(awspublish.reporter())
});

@thewizarodofoz this thread is 5 years old... don't randomly comment on it.


Double render for HTML/text versions

Hi!
Email rendered twice for HTML and text versions. It can be an issue when you using eg Faker for test emails data.
I see why it's happens though. What you think about using iframe srcdoc or data URL instead of serving html version on it's own URL?

Hey @ssbb! Sorry for taking a year to reply 🙈 😂
I don't have the time to tackle this right now, but PR are welcome 🙏🏽

Hi! I ended up with in-house solution for previews because of many other things so feel free to close this 🙂


Closes #91 | Implement GlotStoryBook Dataloader

Closes #91.
Checkbox

[x] Confirm that this PR is linked to the dataset issue.
[x] Create the dataloader script seacrowd/sea_datasets/my_dataset/my_dataset.py (please use only lowercase and underscore for dataset naming).
[x] Provide values for the _CITATION, _DATASETNAME, _DESCRIPTION, _HOMEPAGE, _LICENSE, _URLs, _SUPPORTED_TASKS, _SOURCE_VERSION, and _SEACROWD_VERSION variables.
[x] Implement _info(), _split_generators() and _generate_examples() in dataloader script.
[x] Make sure that the BUILDER_CONFIGS class attribute is a list with at least one SEACrowdConfig for the source schema and one for a seacrowd schema.
[x] Confirm dataloader script works with datasets.load_dataset function.
[x] Confirm that your dataloader script passes the test suite run with python -m tests.test_seacrowd seacrowd/sea_datasets/<my_dataset>/<my_dataset>.py.
[ ] If my dataset is local, I have provided an output of the unit-tests in the PR (please copy paste). This is OPTIONAL for public datasets, as we can test these without access to the data files.

Dataset is okay and tested, also w/ formatting. After the license qn has been addressed and reflected in data loader, I'll approve and merge it


Error while finding module specification for 'cog.server.http' (ModuleNotFoundError: No module named 'cog')

Error:  Error while finding module specification for 'cog.server.http' (ModuleNotFoundError: No module named 'cog')
Not able to use run command inside build section in cog.yaml
Below is my cog yaml.
build:
  gpu: false
  python_packages:
  - "pandas==1.4.3"
  - "scikit-learn==1.3.0"
  - "numpy==1.23.2"
  - "nltk==3.7"
  - "gensim==4.2.0"
  - "sentence-transformers==2.5.1"
  - "joblib==1.2.0"
  - "Flask==3.0.2"
  - "torch==1.12.1"
  python_version: "3.10.6"
  run:
    - command: "python -m pip install nltk && python -m nltk.downloader all"
predict: "predict.py:Predictor"

instead of
run:
    - command: "python -m pip install nltk && python -m nltk.downloader all"

tried
build:
  run:
    - "python -m nltk.downloader stopwords && \
      python -m nltk.downloader punkt && \
      python -m nltk.downloader wordnet && \
      python -m nltk.downloader omw-1.4"

If I try to run only cog build -t tagname
Error:
Validating model schema...
/usr/local/bin/python: Error while finding module specification for 'cog.command.openapi_schema' (ModuleNotFoundError: No module named 'cog')
Is RUN command not supported? If so how I can install below commands in cog.yaml
  python -m nltk.downloader stopwords
  python -m nltk.downloader punkt
  python -m nltk.downloader wordnet
  python -m nltk.downloader omw-1.4

@bfirsh @anotherjesse  Any update here?

same issue

Hi @Aparna29T. It looks like the python command run in the GenerateOpenAPISchema function doesn't have a the Cog Python package installed. Can you please try running the following command and trying again?
/usr/local/bin/python -m pip install cog

Hi, @Aparna29T.
Based on the error message you shared, it looks like the python command run in the GenerateOpenAPISchema function doesn't have a the Cog Python package installed.
Can you please try running the following command and trying again?
/usr/local/bin/python -m pip install cog

Hi @mattt is there a fix we can add to the GenerateOpenAPISchema function?
This should be automated I guess. I can work on it, if that makes sense.


Couldn't Achive the app purpose

after I Tried the following, Couldn't find the created point/points on the map or even the layer
Stage 1:
(user: ev, pass:123456)
Selected map: Map x
Selected Layer: animal_abuse_lacity
Form Customization: Default state
selected loge,
App Title: Testing Collection new points
abstract:At vero eos et accusamus et iusto odio dignissimos ducimus qui blanditiis praesentium
accesss: em, vo
keywords: keyword1
navigation tools: default state,
App instance create successfullt,
Stage 2:
chosen the following:

Clicked next and Successfully: Your Data Saved Successfully
please Notice that I tried to do extra check up and launched cartoview feature list and found the points in the list of feature but not rendered on the map

fixed in the latest version


changed arm64 in commands to amd64, following Debian 12 x86-64 architecture

…ectiure

Okay Okay. Thank you for pointing that out.

This merge request can be closed…


Android 6 Compability

I don't know if it supported in Android 6, it uses QUIC (http3) for fetching data, and CronetEngine don't work well for Android before 10. But I'll try in emulator btw (no promise it wil runs).

For now it's not possible. I already test it:

CronetEngine for HTTP3/QUIC not working in Android 6
WebView in Android 6 don't support latest Javascript used in aniwave website (needed for fetching data in aniwave)

For now I think this should be closed, because it's too far to support v6 when <10 also have a decent problem.


Grant-CsTeamsMeetingPolicy fails on disabled user

Get-csonlineuser for disabled user works just fine.
Grant-CsTeamsMeetingPolicy for same user fails with 'Management object not found' error.
This creates a situation where a disabled user (which I can't delete because of company policy)  prevents me from removing assigned Teams policies, which means I can no longer delete those policies.  It's a minor use case, but still very annoying.

I am getting a similar thing with Set-csuser

@dariomws

Hi @eblingus and @gcouper, thank you for your feedback.
Are you talking about disabled accounts synchronized via Azure AD Connect or inactive mailboxes?

@dariomws Thank you very much for the contribution and digging deep into it.  @eblingus We appreciate any feedback that improves the content in the Microsoft docs but we haven't had any response from you so we are going to close this issue.
Please feel free to re-open this issue if you see an improvement is required in the specific area of this documentation. We will certainly update this documentation with that valuable information. Thanks again, for taking out some time to open the issue. Appreciate and encourage you to do the same in future also.


Allow using NSURLs for images instead of UIImage's

For any video that is worth encoding, lower-end devices may crash if we're trying to do everything in memory.
I needed this for my project, and thought it would be useful.

@arunv Sorry it's taken me so long to look at this!

@cameronehrlich done. Sorry for the delay!


Form and Post data support along with DefaultValue support

Hi,
I have made a couple improvements to the form data and post data changes, taking into consideration recent updates to master.
With this change the following methods work:
Objects
    public static class Input {
        public String value;

        public Input(String value) {
            this.value = value;
        }

        public Input() {
        }
    }

    @POST
    @Path("test/test1")
    @Produces(MediaType.APPLICATION_JSON)
    @Consumes(MediaType.APPLICATION_JSON)
    public Response test1(Input value) {

        logger.debug("Request got");
        return Response.status(201)
                .entity(value)
                .build();
    }

Request text
{ "value": "asdfasdf" }

Query:
++ curl -X POST -d @testfiles/object.txt https://xxxx.execute-api.eu-west-1.amazonaws.com/production/test/test1 --header 'Content-Type: APPLICATION/JSON'
+ echo '{"value":"asdfasdf"}'

Json text
    @POST
    @Path("test/test2")
    @Produces(MediaType.APPLICATION_JSON)
    @Consumes(MediaType.APPLICATION_JSON)
    public Response test2(String value) {

        logger.debug("Request got");
        return Response.status(201)
                .entity(value)
                .build();
    }

Request text:
"asdfasdf"

Query:
++ curl -X POST -d @testfiles/jsonstring.txt https://xxx.execute-api.eu-west-1.amazonaws.com/production/test/test2 --header 'Content-Type: APPLICATION/JSON'
+ echo '"asdfasdf"'
"asdfasdf"

Form param
    @POST
    @Path("test/test3")
    @Produces(MediaType.APPLICATION_JSON)
    @Consumes(MediaType.APPLICATION_JSON)
    public Response test3(@FormParam("value") String value) {

        logger.debug("Request got");
        return Response.status(201)
                .entity(value)
                .build();
    }

This can be used multiple ways:
Way 1
"value=asdfasdf"

Query
++ curl -X POST -d @testfiles/jsonformenc.txt https://xxxx.execute-api.eu-west-1.amazonaws.com/production/test/test3 --header 'Content-Type: APPLICATION/JSON'
+ echo '"asdfasdf"'
"asdfasdf"

Way 2
value=asdfasdf

Query
++ curl -X POST -d @testfiles/formenc.txt https://xxx.execute-api.eu-west-1.amazonaws.com/production/test/test3 --header 'Content-Type: APPLICATION/JSON'
+ echo '"asdfasdf"'
"asdfasdf"

Multiple values
    @POST
    @Path("test/test4")
    @Produces(MediaType.APPLICATION_JSON)
    @Consumes(MediaType.APPLICATION_JSON)
    public Response test4(@FormParam("value") List<String> value) {

        logger.debug("Request got");
        return Response.status(201)
                .entity(value)
                .build();
    }

Request text:
value=asdfasdf&value=12312312

Query
++ curl -X POST -d @testfiles/arrayformenc.txt https://xxxx.execute-api.eu-west-1.amazonaws.com/production/test/test4 --header 'Content-Type: APPLICATION/JSON'
+ echo '["asdfasdf","12312312"]'
["asdfasdf","12312312"]

Note
Please note: I don't do anything with @Produces, other @Consumes could be supported easily with some Api Gateway changes.
Please let me know if you need me to change anything.

I'll be looking into it as soon as possible, thanks

Thanks

Updated code in PR with latest from master. (And tested.)

TravisCI is no longer depending on AWS credentials. So for pull requests tests should pass also. Can you check? There is one failing tests now.

Why jackson-databind is not provided dependency? That package is already included in Lambda runtime, there is no need to add it again to our JAR. (Lambda functions has a maximum size of 50 MB and every byte saved in dependencies is more space for user code.)

Tests now working, it was a type cast issue. I also included a log4j file which will be included only for test and modified the test class path to the default maven one so it didn't have to be explicitly mentioned. Happy to revert if there was a reason for it. (I couldn't see.)
I reverted it back to being a provided dependency, sorry I didn't know why it was provided.

Ping.


Feature Request

Hey, everything is working perfectly fine, I was just wondering if you'd be open to or able to develop something at request for the game, I'm not certain whether they are server sided or not.
A few champions have specific effects like Diana or Presto or Strongheart that stack and increase with date since release. Collecting event currency, Collecting Electrum Chests, and collecting Mordron Components. Each of these are rather valuable, and I was wondering if any method would allow you either A) Increase their cap or B) set our current amount to 0 so it keeps increasing (either resets it per run or permanently, not sure if that would matter, but figured server calls might reset it between runs) C) increase their cap by altering the release date of the champion/current date (if not server sided, idk how this stuff works that well).

I will add these to my list of things to look into. Just off the top of my head, electrum chests aren't likely. Event currency may be possible. Modron components most likely possible. Already had another thing planned for components, but haven't worked on that specific mod yet.
I appreciate the ideas and suggestions. No guarantee that I can work on them.

First of all, thanks for all the work you are doing
I want to add a suggestion: Dungeon Master always choose Spurt for "Special Guest Star"
Just an idea

Added to my list to look into.

I want to add a suggestion: Dungeon Master always choose Spurt for "Special Guest Star"

Added.


Where is the instruction for SLES?

Where is the instruction for SLES?

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

ID: 0e03790a-1bf9-146d-704b-6816d475064b
Version Independent ID: ad5f6be7-e089-161f-306c-39d10e7ab0a0
Content: Azure N-series GPU driver setup for Linux - Azure Virtual Machines
Content Source: articles/virtual-machines/linux/n-series-driver-setup.md
Service: virtual-machines
Sub-service: sizes
GitHub Login: @vikancha-MSFT
Microsoft Alias: vikancha

@pcheecho
Thanks for your feedback! We will investigate and update as appropriate.

@pcheecho Here the document link i came across kindly take a look at this, let me know if it is helpful or not.
https://learn.microsoft.com/en-us/azure/virtual-machines/linux/suse-create-upload-vhd

@pcheecho
We are going to close this thread as resolved but if there are any further questions regarding the documentation, please tag me in your reply and we will be happy to continue the conversation.


Fix setuptools pin

For 2.24.0 and 2.24.1, the setuptools lower bound in the runtime dependencies should be >=59.0.0 instead of >=48.0.0. I don't expect this to surface very much, but I'd like to fix it in my next repodata patch.

Closed by https://github.com/conda-forge/conda-forge-repodata-patches-feedstock/pull/793


net: rpl: Kconfig: Fix 'Network type' choice default

The 'Network type' choice always defaulted to NET_RPL_L2_ANY, because
choices prefer the first default with a satisfied condition (this was
true even when Zephyr still had the prefer-later-defaults patch).
Swap the defaults so that NET_RPL_L2_IEEE802154 becomes the default if
NET_L2_IEEE802154 is enabled, as intended.

Codecov Report

Merging #9424 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master    #9424   +/-   ##
=======================================
  Coverage   52.16%   52.16%
=======================================
  Files         212      212
  Lines       25894    25894
  Branches     5563     5563
=======================================
  Hits        13507    13507
  Misses      10129    10129
  Partials     2258     2258

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 f8a8bdf...a22c2ca. Read the comment docs.

@ulfalizer : So, do you say that default's processed in the order of appearance, and the first "matching" takes effect? I may imagine we have this issue in other places too.

@pfalcon
Yep, because whoever added the prefer-later-defaults-patch (which was removed by https://github.com/zephyrproject-rtos/zephyr/pull/9189) forgot to do the same for defaults on choices (as well as for ranges), so it used to be inconsistent.
I think all choices should be fixed now. I found that one by going through all choices with more than one default, and the other ones looked fine.
I fixed some ranges earlier as well, but I only verified that no ranges follow a range with no condition (which acts like ... if y). I suspect that might've covered all errors though.


fix: error on pow block in forkchoiceUpdated

Previously the terminal PoW block conditions were not validated in engine_forkchoiceUpdated. The spec requires these conditions, so they are now validated.
A comment referencing the engine API spec is added, to describe the reason for the check.
A test is added which ensures that the correct error and latestValidHash are returned when terminal PoW block conditions are not met for the forkchoiceState.headBlockHash.
Fixes #1675

Codecov Report

Merging #1692 (9994ed2) into main (279ad34) will decrease coverage by 29.35%.
The diff coverage is 0.00%.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
@@             Coverage Diff             @@
##             main    #1692       +/-   ##
===========================================
- Coverage   75.02%   45.67%   -29.35%
===========================================
  Files         378      385        +7
  Lines       45463    46230      +767
===========================================
- Hits        34107    21117    -12990
- Misses      11356    25113    +13757

Flag
Coverage Δ

integration-tests
21.21% <0.00%> (-0.34%)
:arrow_down:

unit-tests
35.89% <0.00%> (-33.06%)
:arrow_down:

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

Impacted Files
Coverage Δ

crates/rpc/rpc-engine-api/src/engine_api.rs
31.28% <0.00%> (-61.47%)
:arrow_down:

... and 195 files with indirect coverage changes
Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

love the comment


Add version() system function

We could get version information of each node by select * from system.runtime.nodes. Even though that we might need to have simpler way to get the version info as MySQL does.

This works only if all nodes run the same version. This is a requirement today, but may not be in the future.

I don't think we should add this function. As Martin says, we might have mixed versions in the future. It works for MySQL because it's not distributed.
We already have this available easily, as Martin noted. You could select it using the "arbitrary" aggregation. It also doesn't seem so common that it needs a convenience function.
Can you explain more about the use case / motivation?

As a managed service of Presto, customer doesn't have right to access Presto UI and they often ask what version of Presto is used at the service. They're very interest in new functions as Presto goes version up. We just want to reduce such a question by offering a simple sql function like mysql.


Merge dem_estimation?

I also have this other repository: https://github.com/MarcSerraPeralta/dem_estimation
This current repository and the dem_estimation one should be quite similar (they are functionalities when working with DEMs).
So, I am just wondering if it would be better to merge dem_estimation into dem-utils.

I don't think it is a good idea because the two repos have different purposes (even though they are related).
The purpose of this repo is to provide a wrapper to run decoders that require the parity-check matrix instead of the stim.DetectorErrorModel.
However, the purpose of dem_estimation is to estimate the weights of the edges based on the experimental defect correlations.


stop using zoom in markdown files

zoom プロパティは非標準なので， width/height で指定するのが良いです。
もしくは， transform プロパティを使う手もありますが，ちょっと大げさな気がします。
Originally posted by @shundroid in https://github.com/ensan-hcl/CustardKit/pull/1#discussion_r599179996

This is due to the default behavior of my markdown editor typora. I considered about this but there are no ways to avoid this as far as I know. What do you think @shundroid ?

Ok. It cannot be helped.


Unbound local-zone or local-data doesn't work if the domain starts with number

Unbound local-zone & local-data doesn't work if the domain starts with number
While I was in the process of setting up a blocklist on Unbound, I encountered an error. It seems that Unbound disregards the configuration once it encounters a local-zone starting with two numbers. Here is an example:
To reproduce
Steps to reproduce the behavior:

Add following lines to the Unbound conf

    local-zone: "adserver1.example.com" always_nxdomain   # works
    local-zone: "adserver2.example.com" always_nxdomain  # works
    local-zone: "adserver3.example.com" always_nxdomain  # works
    local-zone: "1-23a.com" always_nxdomain  # works
    local-zone: "1-23b.com" always_nxdomain  # works
    local-zone: "1f23b.com" always_nxdomain  # works
    local-zone: "1g23.com" always_nxdomain  # works
    local-zone: "1234.com" always_nxdomain  # doesn't works
    local-zone: "123a.com" always_nxdomain  # doesn't works
    local-zone: "12322.com" always_nxdomain  # doesn't works
    local-zone: "12g3.com" always_nxdomain  # doesn't work

drill gets the ip address for 12345.com 123a.com 12322.com & 12g3.com
if there is any other domain that starts with a letter i.e.
local-zone: "yahoo.com" always_nxdomain after the non working domain list. It would be ignored
drill result on above

$> drill g041353e6dd.com
;; ->>HEADER<<- opcode: QUERY, rcode: NXDOMAIN, id: 27937
;; flags: qr rd ra ; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 0
;; QUESTION SECTION:
;; g041353e6dd.com.    IN    A

;; ANSWER SECTION:

;; AUTHORITY SECTION:
com.    900    IN    SOA    a.gtld-servers.net. nstld.verisign-grs.com.<PHONE_NUMBER> 1800 900<PHONE_NUMBER>0

$> drill 041f1df40782e9ab9f0488a1d503a7a2.nitospax.pl
;; ->>HEADER<<- opcode: QUERY, rcode: NOERROR, id: 5108
;; flags: qr rd ra ; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;; 041f1df40782e9ab9f0488a1d503a7a2.nitospax.pl.    IN    A

;; ANSWER SECTION:
041f1df40782e9ab9f0488a1d503a7a2.nitospax.pl.    300    IN    A    <IP_ADDRESS>
041f1df40782e9ab9f0488a1d503a7a2.nitospax.pl.    300    IN    A    <IP_ADDRESS>

Expected behavior
Should return NX_DOMAIN on all the domains that user wish to block that starts with number.
System:

Unbound version: Version 1.18.0
OS: Freebsd
unbound -V output:

Version 1.18.0

Configure line: --with-libexpat=/usr/local --with-ssl=/usr --enable-dnscrypt --disable-dnstap --with-libnghttp2 --with-dynlibmodule --enable-ecdsa --disable-event-api --enable-gost --with-libevent --disable-subnet --disable-tfo-client --disable-tfo-server --with-pthreads --prefix=/usr/local --localstatedir=/var --mandir=/usr/local/man --infodir=/usr/local/share/info/ --build=aarch64-portbld-freebsd13.2
Linked libs: libevent 2.1.12-stable (it uses kqueue), OpenSSL 1.1.1t-freebsd  7 Feb 2023
Linked modules: dns64 dynlib respip validator iterator
DNSCrypt feature available

BSD licensed, see LICENSE in source package for details.
Report bugs to<EMAIL_ADDRESS>or https://github.com/NLnetLabs/unbound/issues

Additional information
I have tried adding the local-zone and local-data to external conf & tried to import it same result.

I could not reproduce this. I also don't see a reason for that behavior in the code either.
Are you sure that you are editing a configuration file that is read by the running Unbound?
If so, maybe you have conflicting configuration later on in the file?

Here is my unbound.conf
`root@BoosterGold:/usr/local/etc/unbound # cat unbound.conf
server:
interface: <IP_ADDRESS>
access-control: <IP_ADDRESS>/24 allow
access-control: <IP_ADDRESS> allow
access-control: ::1 allow
access-control: <IP_ADDRESS>/0 deny
access-control: ::/0 deny

pidfile: "/var/run/unbound.pid"
use-syslog: yes
verbosity: 1
log-queries: yes
log-replies: yes

local-zone: "adserver.example.com" always_nxdomain
local-zone: "adserver1.example.com" always_nxdomain
local-zone: "adserver2.example.com" always_nxdomain
local-zone: "adserver3.example.com" always_nxdomain
local-zone: "1-23a.com" always_nxdomain
local-zone: "1-23b.com" always_nxdomain
local-zone: "1f23b.com" always_nxdomain
local-zone: "12g3.com" always_nxdomain
local-zone: "1g23.com" always_nxdomain
local-zone: "1234.com" always_nxdomain
local-zone: "123a.com" always_nxdomain
local-zone: "12322.com" always_nxdomain

`
@gthess

I still can't reproduce it. I get NXDOMAIN on all those local zones.
Could you try unbound-control list_local_zones on a running Unbound instance and see if you get all your zones (and some more from default configuration) back?
You would need:
remote-control:
    control-enable: yes

in your configuration. If you get an error that remote control is not setup you could run unbound-control-setup to generate the appropriate default keys.


Retain Generic Font BInaries

It's easy to not store Google Font binary files as Google themselves host the files for us. Unfortunately, for all non-Google fonts we host, we have no place to store them except in Git which goes against the aim of #456. I think it is an acceptable tradeoff since non-Google fonts are rarely updated and also very low in count, which should only increase the repository size to an acceptable degree.

[x] Move packages to new fonts directory with subdirectories google, league, icons, other
[x] Refactor all code to use new font paths
[x] Refactor package json templates
[x] Refactor website links to new packages
[x] Fix tests
[x] Add check for Google fonts overwriting generic fonts (we now have to manually delete duplicates)
[x] Update gitignore to allow binaries in generic
[x] Add binary files for generic

Google Fonts hosts font files, but note they do not provide any access to old versions after they are updated (which is also why they never update old fonts with major versions, they force upstreams to rename the font). Just commenting in case that is being overlooked.

Google Fonts hosts font files, but note they do not provide any access to old versions after they are updated (which is also why they never update old fonts with major versions, they force upstreams to rename the font). Just commenting in case that is being overlooked.

That's totally okay. When it comes to keeping a history, CDNs such as JSDelivr maintain a history of all our packages, if it is ever necessary to track an old font file. We don't rely on any older binaries anyways.


How to build?

Running premake-mingw.bat generates .make files, but it's not possible to import them. Running make shows an error: unable to find raudio.c. Including raw rlImGui.h shows a lot of errors when compiling. How to build static library and include file (like include/raylib.h, lib/raylib.a)?

Also premake-mingw.bat can't find raylib, when I have already compiled static library, include file, and raylib installed using installer.

It sounds like you are using a version of mingw that is too old (like version 6.3). raylib does not build with that old of a mingw.
The premake system is not designed to use an existing install of raylib.
You do not have to use the premake system to use this library, simply add the files to your existing build system. The premake setup is just to help build the examples standalone. It is not required in any way.


Async embedded

Feature Description
Currently facing an issue where running duckscript via duckscript::runner::run_script doesn't leave me a with a way to exit/abort from unfinished script execution. The invoked script will simply continue executing in the background (running in a task::spawn_blocking). I've tried a few different work arounds, and was able to kill my readers/writers attached to the Env, but not the actual script execution.
Describe The Solution You'd Like
r = range 1 5
for x in ${r}
    echo "Iteration ${x}"
    sleep 1000
end

Would output:
Iteration 1
Iteration 2
Iteration 3 # <- I want to be able to terminate the script execution here from Rust
Iteration 4
Iteration 5
# <- It currently terminates here

I think adding some type of method that I could call from the main thread to terminate the execution without exiting the entire program would be great (im running a ui on top of the interpreter).

you can always add a goto :exit anywhere you want,  where exit is a label at the end of your file.
can you try to see if it solves it?

you can always add a goto :exit anywhere you want,  where exit is a label at the end of your file.
can you try to see if it solves it?

Maybe I didn't explain my issue well enough. I mean within the rust embedding of the run_script function, not the duck script itself.
I need to kill the script early, as if the user has just hit control-c on a script execution.

An example use case that might make more sense.
Imagine you are writing and running some duckscript in a virtual IDE/terminal on a webpage, like replit. You just clicked "RUN" with the below entered into the input:
r = range 1 99999999
for x in ${r}
    echo "Iteration ${x}"
    sleep 1000
end

Realizing this is going to take forever to complete, you want to cancel it by leaving the page. After leaving the page, the script will still be running in the background, consuming resources and doing potentially unintended things.


Reverse documented example in cluster_settings

Description
The cluster_settings input description states "For example, this can be used to enable CloudWatch Container Insights for a cluster". This suggests to me that if I do not provide a value for cluster_settings, CloudWatch Container Insights will not be enabled. That is not the case, since its default value is to enable CloudWatch Container Insights.
The documentation's wording should be changed to "For example, this can be used to disable CloudWatch Container Insights for a cluster".

[x] ✋ I have searched the open/closed issues and my issue is not listed.

Versions

Module version [Required]: 4.0.1

Terraform version:1.3.4

Provider version(s): Irrelevant

Reproduction Code [Required]
N/A
Expected behavior
If cluster_settings is not passed, CloudWatch Container Insights is disabled.
Actual behavior
If cluster_settings is not passed, CloudWatch Container Insights is enabled.
Terminal Output Screenshot(s)
N/A

This comes from the provider docs https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/ecs_cluster#setting - please feel free to issue a PR there and we can update to match

@bryantbiggs The wording does come from the provider docs, but the resource itself doesn't have the same issue, because the resource defaults to not enabling Container Insights. This module """changes""" the default of that setting but doesn't change the description, which is where the confusion arises.

I guess I don't follow. The default settings are provided right next to the description, both in the variable code and the generated docs. What about this is confusing?

That's totally fair, all the information is available for someone to know what the default behavior is. The confusing part to me is that the wording of the description and the default value seem to conflict with each other. Logically of course the default value is a better source of truth, but I could easily see someone reading the description and failing to read the default value. Wouldn't you agree that "this can be used to do X" is misleading if X will always happen when "this" is not used? I could make a weak argument that it's incorrect grammar, but really I'm just looking to save future readers a few seconds of processing time and unintentional configuration.

Un-stale


Concept: Dynamic collection of metrics

As user of the checkMK Grafana datasource I want to create graphs that select the available metrics dynamically.
Acceptance:

We have a concept for graphs with a dynamic number of metrics
This concept allows use cases like this:

Show a summarized metric of the CPU load of all hosts with the label os:linux
Show all Disk IO read / write metrics of all hosts matching the regex ".*prod$" as lines

Scope:

Only support limited set of filters in the GUI, example: List of labels, AND combined

Next steps:

@LarsMichelsen: Provide sample API call

done in git


Multiple aggregate columns not showing on Pinot Data Explorer.

I just built quickstart from latest commit from origin/HEAD: 83cc88d76298edafbd0ca72a7d2fbde8e13dabf0
Do some queries on baseballStats table:
select teamID, COUNT(*), MAX(numberOfGames) from baseballStats group by teamID

But the table view doesn't show the max number of games column (image 1). But, the JSON view returns (image 2).
Images are attached:
Image 1:

Image 2:

Yes. The table in the query console is buggy and needs some work. Feel free to contribute.

I see. Thanks for the quick reply.


Error while implementing AzureChatOpenAI() using the documented code provided. Missing all values of Answer relevancy and some values of other metrics

[ ] I have checked the documentation and related resources and couldn't resolve my bug.
Describe the bug
Exception raised in Job[49]: TimeoutError() this is one sort of error I am getting
Exception raised in Job[29]: BadRequestError(Unsupported data type) this is the other
The exceptions are around 20 in total each of this format
All the values of answer of Answer relevancy are missing. Some values from the rest metrics are missing
Ragas version:0.1.19
Python version:3.11
OpenAI Version:1.33.0
Code to Reproduce
from langchain_openai.chat_models import AzureChatOpenAI
from langchain_openai.embeddings import AzureOpenAIEmbeddings
from ragas import evaluate
azure_model = AzureChatOpenAI(
openai_api_version="2024-02-15-preview",
azure_endpoint=base_url,
azure_deployment="",
model="gpt-4o",
validate_base_url=False,
api_key="",
)
azure_embeddings = AzureOpenAIEmbeddings(
openai_api_version="2024-02-15-preview",
azure_endpoint=base_url,
azure_deployment="",
model="textembeddingada002",
api_key="",
)
from ragas.metrics import (
context_precision,
answer_relevancy,
faithfulness,
context_recall,
)
metrics = [
faithfulness,
answer_relevancy,
context_recall,
context_precision,
]
from datasets import load_dataset
amnesty_qa = load_dataset("explodinggradients/amnesty_qa", "english_v2")
print(amnesty_qa)
from datasets import load_dataset
from ragas import RunConfig
run_config = RunConfig(timeout=300, log_tenacity=True)
amnesty_qa = load_dataset("explodinggradients/amnesty_qa", "english_v2")
amnesty_qa
result = evaluate(
amnesty_qa["eval"], metrics=metrics, llm=azure_model, embeddings=azure_embeddings,run_config=run_config,
)
Error trace
Expected behavior
I am expecting to run fully as this is the code provided by the team to test, I want to test with new data but with the provide sample code ragas isn't working for me
Additional context
Add any other context about the problem here.

I have checked by the keys and the names by making a test run using azure_model.invoke() and the api was returning correct answer. But what you need to understand is i am trying to run the code provided by the RAGAS team itself. Help me with this issue

Serializing the data might help


LEAN-3623

This PR removes the selected-suggestion-ui plugin; using transactions for this has several problems:

Transactions are quite expensive, especially when the goal is to update styles.
We need to be extermely careful when writing node views, since the plugin decorations trigger node re-rendering even with a simple click.
The logic to set a suggestion is distributed across several places including node views and components.

This PR contains mostly the removal of anything related to selecting suggestions, which will move to article-editor.

Transactions are quite expensive, especially when the goal is to update styles.

your issue is with this transaction: view.state.tr.setMeta(CLEAR_SUGGESTION_ID, true) in the selecting plugin?

We need to be extermely careful when writing node views, since the plugin decorations trigger node re-rendering even with a simple click.

that should not happen, do you have an example we can check

your issue is with this transaction: view.state.tr.setMeta(CLEAR_SUGGESTION_ID, true) in the selecting plugin?
It's all transactions that set or clear a suggestion.

that should not happen, do you have an example we can check
You can check the bibliography_element view. If an item has been changed, clicking anywhere in the editor will trigger a re-render, and a hack had to be implemented to support the context menu.

You can check the bibliography_element view. If a bibliography item has been changed, clicking anywhere in the editor will trigger a re-render, and a hack had to be implemented to support the context menu.

hmm I can't see that https://www.loom.com/share/d8d1989e76dc407286be7ffcab30af6e?sid=24107430-2a60-4687-927b-7960c028e41c
so our goal is to not render bib element at all for selected suggestions?

You can check the bibliography_element view. If a bibliography item has been changed, clicking anywhere in the editor will trigger a re-render, and a hack had to be implemented to support the context menu.

hmm I can't see that https://www.loom.com/share/d8d1989e76dc407286be7ffcab30af6e?sid=24107430-2a60-4687-927b-7960c028e41c
so our goal is to not render bib element at all for selected suggestions?

yes it would be best if we don't re-render the bib element just to update the selected suggestion. The rendering itself is relatively expensive so we should avoid it if possible.

Based on the feedback, I've updated the code to use a plugin again, but the communication between body and article editor happens exclusively through selections. The bib element and contributors views had to be updated for this, but I'm ok with it since it only uses plain selections.
Please let me know what you think.

One more thing I want to note, selecting a composite change will not show it active in the inspector, I don't know if that is ok for now. like the keyword if we delete it it's going to select text not the node and in the inspector we show just the first level of changes

I think the article-editor will only receive that update when a transaction was executed over the document and it is at this point only when this code in the article editor will be triggered:

But I think that's ok to piggy back on other transactions in that case.


Allow for multiple spaces and/or tabs on inline comments

It'd be nice if you could use more than 1 space and/or tabs before comments inline so that comments could be aligned in a long config file
Reported to https://github.com/josegonzalez/php-dotenv/issues/42 accidentally.

Can look into but pretty busy with work atm, feel free to do a pull request though :smile:

Fixed with https://github.com/m1/Env/pull/12


M3-5190: React Query for Object Storage

Description
React Query for Object Storage

[x] Clusters
[x] Buckets (may need to rework to use old per-cluster logic)
[x] Bucket - Create
[x] Bucket - Delete
[x] Bucket Contents (will need to refactor to be a functional component)
[x] Search Buckets

How to test

Test all Object Storage Functionality
Use the MSW to see how /object-storage/buckets handles a cluster being offline

@HanaXu Would you be ok with holding off on those UI changes to keep the scope of this PR focused?


Integration with Slicer application

Pages associated with the frontend (ultimately available at https://extensions.slicer.org) can be loaded from:

(1) a regular web browser
(2) a web browser embedded in the Slicer application

For now, I suggest we focus on (2)
To help assess how to best implement the integration, I will first describe how the current frontend is integrated with Slicer application.
Midas based frontend
"Download" button states
   if(!window.extensions_manager_model) {
        midas.slicerappstore.setExtensionButtonState(extensionName, 'Download');
    } else {
        [...]
    }

from a regular web browser, a "Download" button is displayed

from the application web browser, an "Install"  button is displayed. Depending on the state of the extension in the application running the embedded browser, text and color of the button may be different.

State of the button is updated using midas.slicerappstore.updateExtensionButtonState
Implementation is found in public/js/common/common.js
States:

Button color and text based on state:

State: Not installed:

State: Installed:

State: ScheduledForUninstall:

Functions allowing to retrieve current state:
window.extensions_manager_model.isExtensionScheduledForUninstall(extensionName, callback)
window.extensions_manager_model.isExtensionInstalled(extensionName, callback)

where returnValue is a function like function(returnValue) {}
Related reading: https://doc.qt.io/qt-5/qtwebchannel-javascript.html#interacting-with-qobjects
Functions associated with window.extensions_manager_model that are called to transitioned from one state to the other:

Transition
extensions_manager_model function

Not installed -> Installed
downloadAndInstallExtension(extensionId)

Installed -> ScheduledForUninstall
scheduleExtensionForUninstall(extensionName)

ScheduledForUninstall -> Installed
cancelExtensionScheduledForUninstall(extensionName)

extensionId should correspond to the item_id and will be used by the application to download the extension by:

retrieving the extension metadata (see here)
and downloading the extension (see here)

Notes:

C++ code referenced above only to provide some context.
TODO (@jcfr):

[ ] Update C++ implementation to support retrieving metadata from girder based backend
[ ] Update C++ implementation to support downloading from girder based backend

Layout type
In the Midas based frontend, the page can be rendered with/without midas interface.
In the vue.js based frontend (this project), there is no concept of layout.

layout=layout: example

layout=empty: example

Transition
extensions_manager_model function

Not installed -> Installed
downloadAndInstallExtension(extensionId)

Installed -> ScheduledForUninstall
scheduleExtensionForUninstall(extensionName)

ScheduledForUninstall -> Installed
cancelExtensionScheduledForUninstall(extensionName)

Are these functions async?  What should the app do to indicate that an install is running vs done?

Are these functions async?

Yes, hence the need to pass a callback function

What should the app do to indicate that an install is running vs done?

Within the web-app ... we could have a the text "Installing" with a spinning icon.
Withing the pop-up displaying the web page ... we have progress bar updated based on the download progress.

Yes, hence the need to pass a callback function

The mutation functions in my question don't accept callbacks.  Do they return promises?  Their use in the old app doesn't have callbacks or promises.  I assume the code was written before Promises were invented.
https://github.com/midasplatform/slicerappstore/blob/5e2274460842b66b655070edb527268c97028325/public/js/common/common.js#L8-L20

Withing the pop-up displaying the web page ... we have progress bar updated based on the download progress. This is already implement and managed at the Slicer Qt level.

So it seems like within the context of slicer, for those functions, there's no callback or promise and the installing progress indicator is shown outside the browser window in Qt.

Their use in the old app doesn't have callbacks

From a web application perspective, functions like downloadAndInstallExtension are similar to function like isExtensionInstalled. While on is declared as a slot and the other one as a Q_INVOKABLE, they both async when invoked from javascript and the returns value may  be checked in the callback.
Approach to use is similar to this:
    // Invoke a method:
    foo.myMethod(arg1, arg2, function(returnValue) {
        // This callback will be invoked when myMethod has a return value. Keep in mind that
        // the communication is asynchronous, hence the need for this callback.
        console.log(returnValue);
    });

Source: https://doc.qt.io/qt-5/qtwebchannel-javascript.html#interacting-with-qobjects

I assume the code was written before Promises were invented.

When we are using Qt4+Webkit or Qt5+Webkit, calling Qt functions from javascript as synchronous. After transitioning to Qt5+WebEngine, it was async and the minimum amount of work was done to have a working integration.
Handling return value of functions like downloadAndInstallExtension wasn't strictly required  from within the web app.
Features supported by QtWebEngine are documented at https://doc.qt.io/qt-5/qtwebengine-features.html
Later this afternoon, I will try to run the code at https://stackoverflow.com/questions/22516959/how-to-determine-if-a-promise-is-supported-by-the-browser and report back


ReplicateBlob, if this node is the source node, do nothing.

ReplicateBlob, if this node is the source node, do nothing.

BlobIdTransformer, when transfer the deleted message, keep the isDeleted in the MessageInfo

Codecov Report
Base: 66.46% // Head: 14.93% // Decreases project coverage by -51.53% :warning:

Coverage data is based on head (dcec969) compared to base (6ea5c34).
Patch coverage: 0.00% of modified lines in pull request are covered.

Additional details and impacted files
@@              Coverage Diff              @@
##             master    #2286       +/-   ##
=============================================
- Coverage     66.46%   14.93%   -51.54%
+ Complexity     9309     2377     -6932
=============================================
  Files           755      755
  Lines         57941    57950        +9
  Branches       7131     7133        +2
=============================================
- Hits          38510     8654    -29856
- Misses        17034    48780    +31746
+ Partials       2397      516     -1881

Impacted Files
Coverage Δ

.../java/com/github/ambry/protocol/AmbryRequests.java
0.00% <0.00%> (-79.32%)
:arrow_down:

...om/github/ambry/replication/BlobIdTransformer.java
0.00% <0.00%> (-90.00%)
:arrow_down:

...om/github/ambry/router/SimpleOperationTracker.java
0.00% <ø> (-94.02%)
:arrow_down:

.../src/main/java/com/github/ambry/router/Router.java
0.00% <0.00%> (-100.00%)
:arrow_down:

.../src/main/java/com/github/ambry/store/Message.java
0.00% <0.00%> (-100.00%)
:arrow_down:

...rc/main/java/com/github/ambry/named/PutResult.java
0.00% <0.00%> (-100.00%)
:arrow_down:

...rc/main/java/com/github/ambry/quota/QuotaMode.java
0.00% <0.00%> (-100.00%)
:arrow_down:

...rc/main/java/com/github/ambry/quota/QuotaName.java
0.00% <0.00%> (-100.00%)
:arrow_down:

...rc/main/java/com/github/ambry/rest/RestMethod.java
0.00% <0.00%> (-100.00%)
:arrow_down:

...c/main/java/com/github/ambry/config/KMSConfig.java
0.00% <0.00%> (-100.00%)
:arrow_down:

... and 624 more

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

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


Thumbnail not available

Expected
I expect that the thumbnails are automatically refreshed
Actual
after editing dls files, the diagrams thumbnails are not available
Steps to reproduce
editing, diagrams does now update the thumbnails.
Version/build information
I start using this command
#!/usr/bin/bash
sudo docker run -it --rm -p 8080:8080 -v ~/projects/arch-poc-structurizr:/usr/local/structurizr structurizr/lite
current build:

build: 2024.06.18 (2024-06-18T10:11:32Z)

Severity
Major
Priority
I have no budget and there's no rush, please fix this for free
More information
tried different approaches, to delete the hidden .structurizr folder in order to regenerate does not worked

Thumbnails are only regenerated when you view/edit a diagram (https://docs.structurizr.com/ui/faq#why-arent-my-diagram-thumbnails-appearing) ... so I think this is working as expected.

structurizr Thumbnails - replication .docx
In the current instance, after editing a diagram, thumbnails are not regenerated .
Attached is the replication document with screenshots and two approaches we tested (edit diagram and rename .structurizr hidden folder), still not found the solution on how to regenerate them.
Could you please suggest other solutions?

Steps to reproduce
editing, diagrams does now update the thumbnails.

I think you may have a typo in the steps to reproduce ("now" -> "not") ... this is what caused me to say it seems to be working as expected.
In either case, perhaps take a look at the JavaScript/developer console in your web browser, particularly the XHR requests that save thumbnails to see if they are being blocked, or returning something other than HTTP 200.
Thumbnail generation works for me, so perhaps there's something in your workspace.dsl file that is causing an issue. Does thumbnail generation work with a simpler workspace?

Yes, for a simpler workspace, thumbnail generation works fine.
Now it became interesting, what could be the issues in the dsl file? Is there any option to review the model and have a debug on it?

SOLUTION:
After commenting the branding/ logo lines in the  views / theme section, the thumbnails are automatically refreshed and works fine.
/*    branding {
logo "https://....-logo.jpg"
}
*/

I imagine you're running into an issue with CORS; see the following for more details:

https://docs.structurizr.com/ui/diagrams/branding
https://docs.structurizr.com/ui/diagrams/notation#icons


Fix js test failure due to wrong app_javascript value

Summary
This value is now set to be included in the source_path entry in shakapacker config file (which is app/javascript)
Pull Request checklist

[x] ~Add/update test to cover these changes~ (doesn't need)
[x] ~Update documentation~ (doesn't need)
[x] ~Update CHANGELOG file~ (doesn't need)

Other Information
This is already fixed in other PRs for version 7, but we need this here since we may have some other PRs for some releases on version 6.

I am closing this PR for now.


Caddyfile detecting "}" as duplicate global options

System Information

Operating System: Ubuntu 22.04
Extension Version: 0.2.0
VSCode Version: 1.70
caddy Version: 2.5.2

Describe the bug
Caddyfile detects the "}" as a duplicate.
Steps to Reproduce
Steps to reproduce the behavior:
Create two global options that use "{" and "}" on different lines.
Expected Behavior
No error should appear.
Screenshots

Additional Context
Add any other context about the problem here.

Works fine for me. I think the problem is that ne you have in there, which makes the { token immediately before it not match as a valid opening brace token.

hmm I added a newline to the top and that removed the error
I removed ne (that wasn't supposed to be there anyway)
This is what I have now
{
	servers {
		log_credentials
		protocol {
			strict_sni_host on
		}
	}
	log {
		output file /home/bot/web/caddy/logs/caddy.log
		format json {
			time_format unix_milli_float
			duration_format seconds
		}
		level INFO
		include http.log.access
	}
}

This should be resolved by https://github.com/matthewpi/vscode-caddyfile-support/commit/ee91c9af970d6fea298cfd4bcf877413656f1714


fix cli to work with celery4 and python3

Dear Airflow Maintainers,
Please accept this PR that addresses the following issues:

(replace with a link to AIRFLOW-X)

Per Apache guidelines you need to create a Jira issue.
Testing Done:

Unittests are required, if you do not include new unit tests please
specify why you think this is not required. We like to improve our
coverage so a non existing test is even a better reason to include one.

Reminders for contributors (REQUIRED!):

Your PR's title must reference an issue on
Airflow's JIRA.
For example, a PR called "[AIRFLOW-1] My Amazing PR" would close JIRA
issue #1. Please open a new issue if required!

For all PRs with UI changes, you must provide screenshots. If the UI changes are not obvious, either annotate the images or provide before/after screenshots.

Please squash your commits when possible and follow the How to write a good git commit message.
Summarized as follows:

Separate subject from body with a blank line
Limit the subject line to 50 characters
Do not end the subject line with a period
Use the imperative mood in the subject line (add, not adding)
Wrap the body at 72 characters
Use the body to explain what and why vs. how

loglevel  is required
[2016-12-01 16:35:07,414: CRITICAL/MainProcess] Unrecoverable error: TypeError('unorderable types: NoneType() <= int()',)
Traceback (most recent call last):
File "/Users/roberto/.virtualenvs/stairflow/lib/python3.5/site-packages/celery/worker/worker.py", line 203, in start
self.blueprint.start(self)
File "/Users/roberto/.virtualenvs/stairflow/lib/python3.5/site-packages/celery/bootsteps.py", line 115, in start
self.on_start()
File "/Users/roberto/.virtualenvs/stairflow/lib/python3.5/site-packages/celery/apps/worker.py", line 143, in on_start
self.emit_banner()
File "/Users/roberto/.virtualenvs/stairflow/lib/python3.5/site-packages/celery/apps/worker.py", line 159, in emit_banner
string(self.colored.reset(self.extra_info() or '')),
File "/Users/roberto/.virtualenvs/stairflow/lib/python3.5/site-packages/celery/apps/worker.py", line 188, in extra_info
if self.loglevel <= logging.INFO:
TypeError: unorderable types: NoneType() <= int()

@robertobarreda please create a JIRA issue as described in the instructions

@robertobarreda ping

Resolved in celery>=4.0.1 (4.0.0 fails)


Arg counts, types not checked on custom commands

What is the current behavior?
When using a <> in a .yarn file, calling a custom command with the incorrect number or types on command arguments are not indicated as errors on in the Issues tab.
Functions behave correctly.
Please provide the steps to reproduce, and if possible a minimal demo of the problem:

Implement a basic custom command that takes one int as an argument, e.g.,

runner.AddCommandHandler<int>("Log", (num) => Debug.Log(num));

Call it in .yarn with no args
Call it in a .yarn with two args
Call it in a .yarn, but pass a string

e.g.,
<<Log>>
<<Log 1 2 3>>
<<Log spam>>

What is the expected behavior?
The above examples should show an issue in the "Issues" tab in vscode.
Number "4" might be trickier, since it's probably ok to pass numbers as unquoted strings for a command that accepts strings.
Please tell us about your environment:

Yarn Spinner Version:  2.2
Extension Version: 2.2.15
Unity Version: 2021.1.18f1

Other information

Also repros on vscode extension v2.2.40


Interactive training not separating forms and actions

Rasa Core version: 0.12.2
Python version: 3.6.6
Operating system (windows, osx, ...): CentOS 7
Issue:
When I finish interactive learning and try to export the stories, nlu data, and domain file, I get the following:
Traceback (most recent call last):
  File "/home/cdkofah/anaconda3/envs/rasa_environment_2/lib/python3.6/threading.py", line 916, in _bootstrap_inner
    self.run()
  File "/home/cdkofah/anaconda3/envs/rasa_environment_2/lib/python3.6/threading.py", line 864, in run
    self._target(*self._args, **self._kwargs)
  File "/home/cdkofah/anaconda3/envs/rasa_environment_2/lib/python3.6/site-packages/rasa_core/training/interactive.py", line 1260, in record_messages
    _enter_user_message(sender_id, endpoint)
  File "/home/cdkofah/anaconda3/envs/rasa_environment_2/lib/python3.6/site-packages/rasa_core/training/interactive.py", line 1108, in _enter_user_message
    lambda a: not a["message"])
  File "/home/cdkofah/anaconda3/envs/rasa_environment_2/lib/python3.6/site-packages/rasa_core/training/interactive.py", line 292, in _ask_questions
    should_retry = _ask_if_quit(sender_id, endpoint)
  File "/home/cdkofah/anaconda3/envs/rasa_environment_2/lib/python3.6/site-packages/rasa_core/training/interactive.py", line 599, in _ask_if_quit
    _write_domain_to_file(domain_path, evts, endpoint)
  File "/home/cdkofah/anaconda3/envs/rasa_environment_2/lib/python3.6/site-packages/rasa_core/training/interactive.py", line 816, in _write_domain_to_file
    old_domain.merge(new_domain).persist_clean(domain_path)
  File "/home/cdkofah/anaconda3/envs/rasa_environment_2/lib/python3.6/site-packages/rasa_core/domain.py", line 156, in merge
    return self.__class__.from_dict(combined)
  File "/home/cdkofah/anaconda3/envs/rasa_environment_2/lib/python3.6/site-packages/rasa_core/domain.py", line 112, in from_dict
    **additional_arguments
  File "/home/cdkofah/anaconda3/envs/rasa_environment_2/lib/python3.6/site-packages/rasa_core/domain.py", line 250, in __init__
    action.ensure_action_name_uniqueness(self.action_names)
  File "/home/cdkofah/anaconda3/envs/rasa_environment_2/lib/python3.6/site-packages/rasa_core/actions/action.py", line 71, in ensure_action_name_uniqueness
    " '{}'. Either rename or remove one of them.".format(a))
ValueError: Action names are not unique! Found two actions with name 'search_form'. Either rename or remove one of them.

After debugging, I traced the problem to _write_domain_to_file in interactive.py
In this function, actions is a list created from _collect_actions(evts). Then domain_dict['forms'] is left empty. This means that all actions are considered actions and not forms. So, later on when the program combines the actions and forms from the loaded domain file with these new actions, we end up with 'search_form' in both the actions list and forms list. This is what's causing my error. I fixed it temporarily in my local copy, but something should be done so this isn't what happens when saving form actions in a domain file.
Content of story file (if used & relevant):
## greet
* greet
    - utter_greet

## goodbye
* goodbye
    - utter_goodbye

## happy
* thankyou
    - utter_youarewelcome

## Find_policy 01
* find_policy
    - search_form
    - form{"name": "search_form"}
    - form{"name": null}
* thankyou
    - utter_youarewelcome

## Generated Story<PHONE_NUMBER>917862934
* greet
    - utter_greet
* find_policy
    - search_form
    - form{"name": "search_form"}
    - slot{"requested_slot": "policy_topic"}
* form: inform{"policy_topic": "Physical security"}
    - slot{"policy_topic": "Physical security"}
    - form: search_form
    - slot{"policy_topic": "Physical security"}
    - slot{"policy_topic": null}
    - form{"name": null}
    - slot{"requested_slot": null}

Content of domain file (if used & relevant):
forms:
- search_form

actions:
- utter_default
- utter_youarewelcome
- utter_confused
- utter_greet
- utter_ask_policy_topic
- utter_ask_policy_name
- utter_goodbye

config:
  store_entities_as_slots: true

entities:
- policy_topic

intents:
- thankyou
- find_policy
- greet
- goodbye
- inform

slots:
  policy_topic:
    auto_fill: true
    type: rasa_core.slots.TextSlot
  requested_slot:
    auto_fill: true
    type: rasa_core.slots.UnfeaturizedSlot

templates:
  utter_ask_policy_name:
  - text: What is the name of the policy?
  utter_ask_policy_topic:
  - text: What is the topic of the policy/document you are looking for?
  - text: What kind of information are you looking for?
  - text: What information would you like to search for?
  utter_confused:
  - text: I'm not sure I understood your last message. Could you please try again?
  utter_default:
  - text: Welcome to the most awesomest chatbot ever!
  utter_goodbye:
  - text: Goodbye.
  - text: Farewell.
  - text: So long.
  - text: You will be missed.
  - text: See you later.
  utter_greet:
  - text: Hey there!
  - text: Greetings!
  - text: Hello.
  - text: Howdy
  - text: Hey!
  - text: Hello from the Other Side!
  utter_youarewelcome:
  - text: You're very welcome. What else can I help you with today?

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

Thank you for raising the issue, it is the bug in the new interactive learning. We're working on fixing it right now

created PR to fix it: https://github.com/RasaHQ/rasa_core/pull/1375


Rename linux-install.sh to ubuntu-install.sh

To clarify that the script is meant for Ubuntu Linux. https://github.com/gibiansky/IHaskell/issues/458

Thanks! Also just updated the docs for this in the README.


added setting stat ip in env and fixed changin stat port

Please can you fix @giuseppeM99 comment? We aren't merging because we are waiting that fix

I do not like it at all

Why?


CVE-2024-46503 severity question

Hey all, similar to https://github.com/cisagov/vulnrichment/issues/97 I'm curious to know how you arrived at a high severity for
https://nvd.nist.gov/vuln/detail/CVE-2024-46503
The poc's listed read as
// Vuln: path-traversal
let pkg = require("simple-spellchecker");

const filename = "/etc/passwd";

let fileLines = pkg._readFileSync(filename).wordlist;

console.log(fileLines.join("\n"))

https://gist.github.com/guilherme-goncalves793/9c3125c6c8e33e0d9216847118137c63
and
// Vuln: path-traversal

let pkg = require("simple-spellchecker");

const filename = "/etc/passwd";

pkg._readFile(filename,function(err,result){
    // the package returns a dictionary in which the contents are in the wordlist array
    let fileLines = result.wordlist;

    // The package uses split.('\n') to create the array. Reconstruct it back
    console.log(fileLines.join("\n"))
});

https://gist.github.com/guilherme-goncalves793/30d62c12fffd18d4058f4aebe188f462
Inspecting the source for the project on npm or on github we can see the functions in question
    _readFile: function(file_path, callback) {
        fs.readFile(file_path, 'utf8', function(err, text) {
            // Check for errors.
            if (!err) {
                // Create dictionary and return it.
                var dictionary = new Dictionary(text.split('\n'));
                callback(null, dictionary);
            } else {
                // Return an error.
                callback("The dictionary file could not be read: " + err, null);
            }
        });
    },

and _readFileSync
    _readFileSync: function(file_path) {
        try {
            var text = fs.readFileSync(file_path, 'utf8')
            // Create dictionary and return it.
            var dictionary = new Dictionary(text.split('\n'));
            return dictionary;
        } catch(err) {
            // Return an error.
            throw new Error("The dictionary file could not be read: " + file_path + ". Error: " + err);
        }
    },

Do indeed read a file based on a path passed to it. This seems like intended usage to me so could you elaborate on how you arrived at a high severity rating?

@darakian Thank you for the question. I've sent this out to our analysts and they will review.

@jwoytek-cisa I'm not seeing any changes on https://nvd.nist.gov/vuln/detail/CVE-2024-46503#VulnChangeHistorySection
Can you share what decision the analysts came to? Also, I'm really more interested in understanding methodology rather than getting a one off change. Would it be possible to reopen this issue for a discussion of methodology?

FYI, the lag issue has been fixed, and this update is now visible in the repository here.

Hi @darakian, as @jwoytek-cisa mentioned, nothing happening here in vulnrichment implies changes logged to the NVD entry. The methodology (see also here and here) is roughly:

consider a new CVE record
if CNA did not provide CVSS, then score CVSS 3.1

CVSS scoring is mostly a manual process, we follow the CVSS documentation, talk amongst ourselves, use some heuristics based on SSVC (e.g., C:H/A:H ~= Technical Impact: Total).

Looking at CVE-2024-46503 specifically, libraries are tricky. For local CLI/app use, I'm not sure there even is a vulnerability, unless Simple Spellchecker grants access the user doesn't already have. Same for inclusion in a local Electron app. If used remotely in a web app, and the remote user should be restricted to the web app interfaces, then there is a security boundary violation.
So in any local context (AV:L), no vulnerability at all? Remotely (AV:N), would depend on the privileges of the web app/server, C:L probably. Maybe requesting /dev/random means A:L too?
One could maybe argue that Simple Spellchecker should only read from a specific location.

Apologies for referencing the NVD page. Just a force of habit for me when I'm looking for a history of changes on a CVE.

Looking at CVE-2024-46503 specifically, libraries are tricky. For local CLI/app use, I'm not sure there even is a vulnerability, unless Simple Spellchecker grants access the user doesn't already have. Same for inclusion in a local Electron app. If used remotely in a web app, and the remote user should be restricted to the web app interfaces, then there is a security boundary violation.

Libraries are indeed tricky and I think abstracting to a hypothetical use of the library is problematic. Any misuse of the library would (imo) be a vuln in the application using the library rather than the library itself. For clarity, I consider this case to be a misuse of the library.

So in any local context (AV:L), no vulnerability at all?

Agreed.

Remotely (AV:N), would depend on the privileges of the web app/server, C:L probably. Maybe requesting /dev/random means A:L too?

Regardless, remote access is not shown nor discussed in the primary source material.

One could maybe argue that Simple Spellchecker should only read from a specific location.

Perhaps, but a quick look at the project's readme indicates that there is a feature for users to load in their own dictionaries
https://github.com/jfmdev/simple-spellchecker?tab=readme-ov-file#module
Seems like a reasonable feature to me, but that's a side conversation.
So, stepping back a bit. If cisa has scored this CVE with a severity does that imply that cisa sees this as a valid vulnerability?

And just FYI, this CVE is now rejected, citing your contribution here. Thanks!
https://www.cve.org/CVERecord?id=CVE-2024-46503


When I add a style by code in a window, this give an error

hello, I created a language manager for avalonia, when I did it, I used this code window.Styles.Add(x.Style);, in avalonia 0.9.12 it works perfectly, but with the 0.10.0preview4, it works bad, that gives me this error in runtime System.InvalidOperationException: 'The Styles already has a owner.', really, I don't now what's happen.

Are you sure, that style hasn't any parent before you add it to the window?

Are you sure, that style hasn't any parent before you add it to the window?

mmm, that already has a parent, but it worked the same, but now don't

@PieroCastillo that's because styles could previously be added to many parents, but now they can't ;) It was changed for performance reasons.
We can add multi-parenting back in but I'd like to understand why you need to be able to have a style added to multiple controls?

We can add multi-parenting back in but I'd like to understand why you need to be able to have a style added to multiple controls?

mmm, now I want to add styles for an ThemeManager, in fact, I was making that with Avalonia 0.9, but with Avalonia 0.10, this   throw an error "The Styles already has an owner", this occurs with SomeControl.Styles.Add(someStyle) or  SomeControl.Styles.AddRange(someStyles)


Documentation

This branch/PR compiles the efforts to enhance the documentation of the uni2ts library.

Are we good to merge this? We can create a new one when we have more documentation?

Hello, I'm sorry to bother you. When reading the code, I think the following parts may be relatively difficult to understand, and it is possible to add some comments in the code or additional documentation to further enhance the understanding of the project.

Regarding Data Formats:

The definitions for wide, long, and long-wide data formats appear unclear, leaving uncertainty about their distinct characteristics in https://github.com/SalesforceAIResearch/uni2ts/tree/main/src/uni2ts/data/builder/simple.py .

'offset' and 'date_offset' Clarification:

It would be helpful to have a brief explanation for the terms 'offset' and 'date_offset' within the function definitions in the same file.

Understanding Column Types and getitem Methods:

It would be helpful to state the distinction between 'seqs' and 'non-seqs' columns, along with a detailed explanation of the methods '_getitem_int', '_getitem_iterable', and '_getitem_slice' in https://github.com/SalesforceAIResearch/uni2ts/tree/main/src/uni2ts/data/indexer/hf_dataset_indexer.py .

MultiSampleTimeSeriesDataset Functionality:

Clarification on the purpose of 'MultiSampleTimeSeriesDataset' and how it differs from 'TimeSeriesDataset' in https://github.com/SalesforceAIResearch/uni2ts/tree/main/src/uni2ts/data/dataset.py would enhance the understanding of dataset handling in the project.

Sequence Packing Explanation:

It would be better if documentation for the 'PackCollate' function as well as how Sequence Packing works in https://github.com/SalesforceAIResearch/uni2ts/tree/main/src/uni2ts/data/loader.py can be provided, particularly how it uses queues to pack data and the process of forming batches, seems not that clear.

DistrParamProj and DistributionOutput Classes:

The definition and operationals of the DistrParamProj class, along with the DistributionOutput class, which involve nested functions and lambdas, are not clearly outlined. An explanation of their roles within the model definition context would be better. (https://github.com/SalesforceAIResearch/uni2ts/tree/main/src/uni2ts/distribution/_base.py and https://github.com/SalesforceAIResearch/uni2ts/tree/main/src/uni2ts/model/moirai/module.py)

Explanation of PackedLoss Functions, etc:

It would be helpful to provide a comprehensive explanation of the computation and application of 'PackedLoss', 'PackedPointLoss', and 'PackedDistributionLoss' defined in https://github.com/SalesforceAIResearch/uni2ts/tree/main/src/uni2ts/loss/packed/_base.py .

Explanation of train_transform_map in Model Definition:

A brief explanation of specific transformations applied within 'train_transform_map' in https://github.com/SalesforceAIResearch/uni2ts/tree/main/src/uni2ts/model/moirai/pretrain.py would be invaluable, which can help understand how each transform contributes to the processing of training data in the 'MoiraiPretrain` model.

Thank you again for your great work, and hope that you can find these suggestions/information useful!

@gorold could you add clarification for load_dataset and _get_transform from lotsa_v1/_base.py? the returned value from _get_transform has not been used.

better to add code comment about batch, packed_batch, merged_batch in line 109-116 from loader.py, and show their format, shape, etc.

better to add code comment about batch, packed_batch, merged_batch in line 109-116 from loader.py, and show their format, shape, the label of padding used for bin_package etc.

You can see the typehints for format and shape of arrays and tensors, but yeah, I'll add the docstrings for loader.py

Hi @gorold and @chenghaoliu89,
Are we good to merge this? I think maybe we can merge the updates we have so far, and then open a new one if needed?


Could you please give me some data or just a few lines of data format?

@lili1234567890, it basically receives str as an input. Can you give a more clear explanation of what you want?