Update Incidents.json and AutomationRules.json

ARM (Control Plane) API Specification Update Pull Request

[!TIP]
Overwhelmed by all this guidance? See the Getting help section at the bottom of this PR description.

[!NOTE]
As of January 2024 there is no PR assignee. This is expected. See https://aka.ms/azsdk/pr-arm-review.

PR review workflow diagram
Please understand this diagram before proceeding. It explains how to get your PR approved & merged.

 Click here to see the details of Step 1
Breaking changes review (Diagram Step 1)
If the automation determines you have breaking changes, i.e. Step 1 from the diagram applies to you,
you must follow the breaking changes process.
IMPORTANT This applies even if:

The tool fails while it shouldn't, e.g. due to runtime exception, or incorrect detection of breaking changes.
You believe there is no need for you to request breaking change approval, for any reason.
Such claims must be reviewed, and the process is the same.

 Click here to see the details of Step 2
ARM API changes review (Diagram Step 2)

For help with Step 2 / "ARM review", see https://aka.ms/azsdk/pr-arm-review.

 Click here to see the diagram footnotes
Diagram footnotes
[1] See ARM review queue (for PR merge queues, see [2]).
[2] public repo merge queue, private repo merge queue (for ARM review queue, [1])
The ARM reviewer on-call engineer visits the merge queue twice a day, so the approximate ETA for merges is 12 - 24 hours.

Purpose of this PR
What's the purpose of this PR? Check the specific option that applies. This is mandatory!

[ ] New resource provider.
[x] New API version for an existing resource provider. (If API spec is not defined in TypeSpec, the PR should have been generated using OpenAPI Hub).
[ ] Update existing version for a new feature. (This is applicable only when you are revising a private preview API version.)
[ ] Update existing version to fix OpenAPI spec quality issues in S360.
[ ] Other, please clarify:

edit this with your clarification

Due diligence checklist
To merge this PR, you must go through the following checklist and confirm you understood
and followed the instructions by checking all the boxes:

[x] I confirm this PR is modifying Azure Resource Manager (ARM) related specifications, and not data plane related specifications.
[x] I have reviewed following Resource Provider guidelines, including
ARM resource provider contract and
REST guidelines (estimated time: 4 hours).
I understand this is required before I can proceed to the diagram Step 2, "ARM API changes review", for this PR.

Additional information

 Viewing API changes
For convenient view of the API changes made by this PR, refer to the URLs provided in the table
in the Generated ApiView comment added to this PR. You can use ApiView to show API versions diff.

Suppressing failures
If one or multiple validation error/warning suppression(s) is detected in your PR, please follow the
suppressions guide to get approval.

Getting help

First, please carefully read through this PR description, from top to bottom. Please fill out the Purpose of this PR and Due diligence checklist.
To understand what you must do next to merge this PR, see the Next Steps to Merge comment. It will appear within few minutes of submitting this PR and will continue to be up-to-date with current PR state.
For guidance on fixing this PR CI check failures, see the hyperlinks provided in given failure
and https://aka.ms/ci-fix.
For help with PR workflow diagram Step 2 (ARM review), see https://aka.ms/azsdk/pr-arm-review.
If the PR CI checks appear to be stuck in queued state, please add a comment with contents /azp run.
This should result in a new comment denoting a PR validation pipeline has started and the checks should be updated after few minutes.
If the help provided by the previous points is not enough, post to https://aka.ms/azsdk/support/specreview-channel and link to this PR.

For the reviewers - I saw the Go SDK failed due to a possible breaking change, but I checked the build log and none of the changes mentioned there are related to my changes as far as I can tell.
IncidentOwner (in the first and last items in the changes list) is the only model from Incidents.json, but that model itself was unchanged in this PR

        "description": "Related Analytic rule resource id",

"format": "arm-id"?

Refers to: specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2024-03-01/Incidents.json:1442 in 2ee9d85. [](commit_id = 2ee9d85d914184131577613706f05795d333ad96, deletion_comment = False)


How can I monitor the InstrumentedQueuedThreadPool ("dw")

As described, I would like to have access to the threadpool which is used to handle the incoming requests for the application endpoint.
This is needed as I would like to use Prometheus QueuedThreadPoolStatisticsCollector.
Is there any non-intrusive way of capturing the metrics from this thread pool, without having access to it ?

Yes (you must wait until the server starts up before having access to the threadpool)
public void run(Configuration config, Environment env) throws Exception {
    env.lifecycle().manage(new Managed() {
        @Override
        public void start() throws Exception {
            env.getApplicationContext().getServer().getThreadPool();
        }

        @Override
        public void stop() throws Exception {

        }
    });
}

Thanks @nickbabcock - that makes sense, as I was trying to access it too soon and it turned out to be not created (yet).
Cheers!


update references from logging exporter to debug exporter

The logging exporter is being deprecated in favour of the debug exporter. This changes references to the logging exporter to use the new debug exporter instead.
Note: this will remain in draft until v0.86.0 is released which will be the first release to include the debug exporter.

Should we add a note somewhere that this change is happening with 0.86, so ppl using collectors before that need logging and afterwards debug? We could have it similar to the docker-compose vs docker compose note that we have a centralised footnote (see https://github.com/open-telemetry/opentelemetry.io/blob/main/hugo.yaml#L170) and then add it at the places where the change is applied. After a certain period (3 months, 6 months, 12 months, etc.) we remove it once again

Should we add a note somewhere that this change is happening with 0.86, so ppl using collectors before that need logging and afterwards debug?

The collector logs a warning message for any users that continue using the logging exporter. The plan is to keep that component in a deprecated state for at least one year to give users time to adjust. I don't know if an additional message in the documentation is necessary.

Should we add a note somewhere that this change is happening with 0.86, so ppl using collectors before that need logging

I think it's important to add something like this. Quite a few users do attempt to use new instructions with older versions of the collector for a reason or another. Having it explicit in the docs that the debug exporter exists starting from 0.86.0 will be a good starting point for users who have problems using it with older versions.

Should we add a note somewhere that this change is happening with 0.86, so ppl using collectors before that need logging

I think it's important to add something like this. Quite a few users do attempt to use new instructions with older versions of the collector for a reason or another. Having it explicit in the docs that the debug exporter exists starting from 0.86.0 will be a good starting point for users who have problems using it with older versions.

Apologies, I didn't think about the other way round, you are completely right! Let's raise an issue for that


[ESP-MESH] esp_wifi_scan_start always return -1 on MESH_EVENT_NO_PARENT_FOUND (IDFGH-8548)

Answers checklist.

[X] I have read the documentation ESP-IDF Programming Guide and the issue is not addressed there.
[X] I have updated my IDF branch (master or release) to the latest version and checked that the issue is present there.
[X] I have searched the issue tracker for a similar issue and not found a similar issue.

IDF version.
v4.4.2-381-gc97755c9ae5
Operating System used.
Windows
How did you build your project?
VS Code IDE
If you are using Windows, please specify command line type.
PowerShell
Development Kit.
ESP32S3-WROOM N8R2
Power Supply used.
USB
What is the expected behavior?
Issue that can be reproduced with the same code as
https://github.com/espressif/esp-idf/issues/9955
If the mesh fails to find a parent node i expect it to be able to scan for WIFI, especially if not on self-organizing network.
What is the actual behavior?
W (209874) mesh_main: Checking wifi connectivity (disconnect 1)
I (209874) mesh: <MESH_NWK_PARENT_DISCONNECTED>already disconnected, ignore it
W (209874) wifi:I (209874) mesh: [wifi]disconnected reason:106(scan fail), continuous:5/max:12, root, vote(,stopped)<><>
sta_scan: STA is connecting, scan are not allowed!
W (209894) mesh_main: esp_wifi_scan_start -1

Steps to reproduce.
Code from
https://github.com/KonssnoK/esp-idf/tree/bug/mesh_wifi
on ESP32S3-DevKitC

Keep hotspot off
Wait until MESH_EVENT_NO_PARENT_FOUND

Debug Logs.
I (178064) mesh: <MESH_NWK_LOOK_FOR_NETWORK>need_scan:0x3, need_scan_router:0x1, look_for_nwk_count:60
I (179764) mesh: [FIND][ch:0]AP:0, otherID:0, MAP:0, idle:0, candidate:0, root:0[00:00:00:00:00:00]<scan router>
I (179764) mesh: [FIND:60]fail to find a network, channel:0, cfg<channel:0, router:KI, 00:00:00:00:00:00>

I (179774) mesh: <MESH_NWK_LOOK_FOR_NETWORK>need_scan:0x3, need_scan_router:0x0, look_for_nwk_count:61
I (179784) mesh: <MESH_NWK_LOOK_FOR_NETWORK>no parent found, set ROOTLESS, scan times:60, heap:248756
I (179794) mesh: <MESH_NWK_LOOK_FOR_NETWORK>router<cfg:00:00:00:00:00:00> is allowed to switch, find routers with SSID:KI
I (179794) mesh_main: <MESH_EVENT_NO_PARENT_FOUND>scan times:60
I (179804) mesh: <MESH_NWK_PARENT_DISCONNECTED>non-root, need_reselect:1
W (179814) mesh_main: Perform BOOT FIXED ROOT handover
I (179814) mesh: <MESH_NWK_LOOK_FOR_NETWORK>channel<cfg:0> is allowed to switch, do a full channel scan
W (179824) mesh_main: Triggering FIXED ROOT handover
I (179834) mesh: [IO]disable self-organizing<stop reconnect>
I (179844) wifi:mode : sta (7c:df:a1:e0:74:40) + softAP (7c:df:a1:e0:74:41)
W (179854) wifi:<MESH AP>adjust channel:1, secondary channel offset:1(40U)
I (179854) wifi:Total power save buffer number: 16
I (179874) mesh: [IO]disable self-organizing<reconnect>
I (179874) mesh: [CONFIG]connect to router:KI, 00:00:00:00:00:00
W (179874) mesh_main: Modem start
I (179874) mesh: <MESH_NWK_PARENT_DISCONNECTED>already disconnected, ignore it
I (179874) mesh: <WIFI_EVENT_SCAN_DONE>status:fail, num:0, id:188
I (182534) mesh: [wifi]disconnected reason:201(), continuous:1/max:12, root, vote(,stopped)<><>
I (182534) mesh_main: <MESH_EVENT_PARENT_DISCONNECTED>reason:201
I (185194) mesh: [wifi]disconnected reason:201(), continuous:2/max:12, root, vote(,stopped)<><>
I (185194) mesh_main: <MESH_EVENT_PARENT_DISCONNECTED>reason:201
I (187854) mesh_main: <MESH_EVENT_PARENT_DISCONNECTED>reason:201
I (187854) mesh: [wifi]disconnected reason:201(), continuous:3/max:12, root, vote(,stopped)<><>
I (190514) mesh: [wifi]disconnected reason:201(), continuous:4/max:12, root, vote(,stopped)<><>
I (190514) mesh_main: <MESH_EVENT_PARENT_DISCONNECTED>reason:201
I (193184) mesh: [wifi]disconnected reason:201(), continuous:5/max:12, root, vote(,stopped)<><>
I (193184) mesh_main: <MESH_EVENT_PARENT_DISCONNECTED>reason:201
I (195844) mesh: [wifi]disconnected reason:201(), continuous:6/max:12, root, vote(,stopped)<><>
I (195844) mesh_main: <MESH_EVENT_PARENT_DISCONNECTED>reason:201
I (198504) mesh: [wifi]disconnected reason:201(), continuous:0/max:12, root, vote(,stopped)<><>
I (198504) mesh_main: <MESH_EVENT_PARENT_DISCONNECTED>reason:201
I (201174) mesh: [wifi]disconnected reason:201(), continuous:1/max:12, root, vote(,stopped)<><>
I (201174) mesh_main: <MESH_EVENT_PARENT_DISCONNECTED>reason:201
I (203834) mesh: [wifi]disconnected reason:201(), continuous:2/max:12, root, vote(,stopped)<><>
I (203834) mesh_main: <MESH_EVENT_PARENT_DISCONNECTED>reason:201
I (206494) mesh: [wifi]disconnected reason:201(), continuous:3/max:12, root, vote(,stopped)<><>
I (206494) mesh_main: <MESH_EVENT_PARENT_DISCONNECTED>reason:201
I (209154) mesh: [wifi]disconnected reason:201(), continuous:4/max:12, root, vote(,stopped)<><>
I (209154) mesh_main: <MESH_EVENT_PARENT_DISCONNECTED>reason:201
W (209874) mesh_main: Checking wifi connectivity (disconnect 1)
I (209874) mesh: <MESH_NWK_PARENT_DISCONNECTED>already disconnected, ignore it
W (209874) wifi:I (209874) mesh: [wifi]disconnected reason:106(scan fail), continuous:5/max:12, root, vote(,stopped)<><>
sta_scan: STA is connecting, scan are not allowed!

W (239894) mesh_main: esp_wifi_scan_start -1

More Information.
@shenjun7 might be related to the issue already under investigation

rebased
https://github.com/KonssnoK/esp-idf/tree/bug/mesh_wifi
on top of latest
755ce1077df771ee872871ea03f5ce747ff99bfa
to include latest wifi library

This seems duplicate https://github.com/espressif/esp-idf/issues/9955, let us close this and track there, thanks.

Hi @Alvin1Zhang
it is related to the #9955 but the reported issue is different.
in 9955 the focus is on the system stopping to work correctly,
in this the focus is on the wifi scanning permanently failing when NO_PARENT_FOUND is triggered!
Please let me know if you have addressed this issue.
Thanks!

This comment has solved your problem.
In your original code, the API is called in the following order：

esp_mesh_set_self_organized(false,false);
esp_mesh_set_type(MESH_ROOT/IDLE)

This will lead the internal reconnection parameter to be RECONNECT_ENABLE, and the mesh node will reconnect to the same AP, when you call scan in the application layer, the scan will be canceled due to connecting. Thus W (239894) mesh_main: esp_wifi_scan_start -1
after changing the code, the internal reconnection parameter can be set to RECONNECT_DISABLE correctly, then the application layer scan can work.

ah ok, makes sense! thanks @zhangyanjiaoesp, as soon as i have back my hw i will restart my mesh tests!
Thanks again!


Request: filter by party member name

Seems that /kcf player {CHARACTER_NAME} only applies to the user's characters, is that intended? It would be nice to be able to do something like /kcf member {CHARACTER_NAME} to quickly print out data for a character you previously ran a M+ dungeon with.
E.g.,
The command /kcf player Swiftmend outputs nothing.

... but if I search using the UI (Player lookup), data is displayed.

Yes, this behaviour is intended. I'll write a quick implementation somewhere this week that allows you to get the success stats (first tab in player lookup view) in your chat

Added in latest release

I appreciate you adding the summary feature, but I was hoping the data would mimic what /kcf player {CHARACTER_NAME} does. Is the output configurable?

There is no settings screen at the moment so I changed /kcp to include dungeon runs, and added /kcs for the previous functionality in the latest release

Very cool, much appreciated!


[Question]: Knowledge Graph Vs RAG

Question Validation

[X] I have searched both the documentation and discord for an answer.

Question
Hi guys I am new to llama index and llm. I am working on an use case for document question answering and I am confused on which path to take. I am lot of excel files that contain test case details like component, test case id, test case name, test case steps, expected results. I want to create a QA system such that it should be able to answer following questions:

Is this bug covered by any test case?
Is there any similar test case related to this?
List me all test case that need to be tested for a component.
Give me list of minimum test cases that need to be tested when change x happens?

Here first 2 questions can be done with simple vector store. But last two cannot be achieved by vector store due to limitations of vector store RAG where chunks are save. Let say I said give me test case for y component. The pipeline will retrieve 5 best matched chunk. But I may have 20 such test cases. And for last question the model might need to go to multiple chunks to get the accurate results. In my case for each test case component, test case id, test case name, test case steps, expected results is a chunk so itself will be having a good amount of size.
That when I thought of Knowledge Graph and looked into llama index framework. I am using local llama 2 quantized model for security reasons of data. I have checked out following sections.

General Knowledge Graph. Here I saw the graph is not getting generated with all the information in text. It skips of texts and really confusing how the graph is generated. Following is an example taken from llama index doc itself:

I have tried to add triplets manually as in docs
node_0_tups = [
("author", "worked on", "writing"),
("author", "worked on", "programming"),
]
for tup in node_0_tups:
index.upsert_triplet_and_node(tup, nodes[0])

But this the graph its generating, I am really confused by how the relation ship became like this.

I also tried with local model for extracting triplets from text like REBEL but still all information are not extracted properly.

I was hoping KG could help with with all the use case I have listed above. Can some one help me with this. I am stuck. Am I doing anything wrong? Is this not the correct approach?

@vishnu9000 hmm, I think it's just a bug with drawing the graph tbh, especially since we have unit tests for upserting triplets like that.

@logan-markewich ohh..so is this a bug with llama index? Any way to rectify it? If this is the case then for other KG options in llama index same bug will be there right?

@vishnu9000 could you give it a try on NebulaGraph first?
that's the main graph store I kept changing/iterating/optimizing towards.
Will spend some time polishing the SimpleStore and the mutation of the kg_index later.

@wey-gu  Thanks for the info I will check it out. This might be a dumb question but how to create graph from text for nebulagraph? Should it be done manually? or use an llm for extracting entity, wouldn't that take too much time? I have 100 excels with test case id, component, test case name, steps , results how to create a graph entity from this?


Running tests together on github-actions.

Description
Running unit and integration tests together for speedup.
Fixes #4099

I guess this duplicates the coverage job but we can look at this further here itself, could you please fix the conflicts first before I leave another review?

Using the exclude block would have resulted in integration tests also getting excluded. Can we also run coverage test together with this?

Using the exclude block would have resulted in integration tests also getting excluded. Can we also run coverage test together with this?

You can do something like
      - name: Run unit/coverage and integration tests
        run: |
          if [ ${{ matrix.python-version }} == "3.12" && ${{ matrix.os }} == "ubuntu-latest" ]; then
            python -m nox -s coverage
          else
            python -m nox -s unit
          fi
          python -m nox -s integration

you might need to either add shell: bash to the step or adjust the syntax for pwsh on Windows (former is better)

Using the exclude block would have resulted in integration tests also getting excluded. Can we also run coverage test together with this?

You can do something like
      - name: Run unit/coverage and integration tests
        run: |
          if [ ${{ matrix.python-version }} == "3.12" && ${{ matrix.os }} == "ubuntu-latest" ]; then
            python -m nox -s coverage
          else
            python -m nox -s unit
          fi
          python -m nox -s integration

and then include the excluded Linux 3.12 job. You might need to either add shell: bash to the step or adjust the syntax for pwsh on Windows (former is better)

Wouldn't the above if else condition already do the job? Do we still need to add "exclude block" after this?

Wouldn't the above if else condition already do the job? Do we still need to add "exclude block" after this?

We're referring to the same thing, yes – "include the excluded block" would be the same as not excluding it. We can then move the coverage upload step to this job and run it with an if: condition.

If I also upload the coverage results in this same step here can we completely remove check_coverage?


Allow sync usage

It would be great if async usage would be optional
So far forceful usage of async in SVGO causes a lot of pain in libraries, which can't handle natively async calls. For example, some templates language doesn't play well with it at all.
Any chances for optional sync implementation?

I see that some efforts have been made here https://github.com/svg/svgo/issues/580, though, they didn't succeed.

I'm afraid the only option use it sync is to wait for execution in command prompt.

<irony>10 out of 10 solution</irony>

It's maybe a bit ugly but here is a hack using deasync
import SVGO from "svgo";
import deasync from "deasync";

function svgoOptimizeSync(svgo, content) {
  let res;
  svgo.optimize(content, result => res = result);
  deasync.loopWhile(() => !res);
  return res;
}

@yvele Thanks for additional solution. Unfortunately, it implies additional dependency or a hack, which we'd like to avoid.
I think the real issue here is that SVGO does not use promises and instead relies on callback. Otherwise it would be very easy to do with async function. But as right of now, we're forced to use deascyn-like hacks, or use some means to promisify SVGO, which, I'd say, isn't ok on 2017.
Though, I don't want to insult developers. SVGO is great library and it saved us like a ton of kbs and time.

SVGO has appeared when there was no promises.

Yeap, I know.

SVGO.optimize() now returns Promise in v1.0.0.


Massive topic (3519 content items)

There's a topic in the Hsoub Academy that contains 3519 content items:
https://studio.learningequality.org/en/channels/b431ba9f16a3588b89700f3eb8281af0/#/1ba6a6151c9b429892dfe9460b3f6c77
(don't bother clicking that, it just hangs as Studio tries to load the list of content items from the backend)
The source_id for the offending topic is https://academy.hsoub.com/questions/c3-programming/. The source_id of its parent is 'أسئلة وأجوبة'. It looks as if it's a list of programming Q&A entries, each one with a separate HTML5 app in this topic. I don't see tags or other logical ways to divide up the list, but maybe someone should think about how it would be used pedagogically, within Kolibri, first -- without fulltext search, not sure how useful a bunch of uncategorized Q&A nodes would be.

I also note that in addition to an infinite spinner on Studio, this also crashes the browser for 0.13 (which is the version still used on the Arabic demo site): http://kolibridemo-ar.learningequality.org/en/learn/#/topics/t/1a3906dedc6d5df1bdd31922df4326ed
(but I've been told should maybe be fine with newer versions of Kolibri with infinite scroll pagination)


Auto load nvm node version when .nvmrc is exist in directory

Hi, this is a version to load Node.js when .nvmrc exists and the version is different.
Is there a PR #5782 by @drGrove with this implementation, but does not check if the user is interested in using this feature, as I include a conditional in .zshrc to check this feature for the version of the nvm load node automatically.
I added a README.md to explain how to add a nvm plugin in .zshrc
Thanks.

Closed this PR because merged a solution, thanks!


An example here would be very helpful

The resultant file can be used in Word as a custom XML part.
The topic shows how to create the WordPart xml file. It would be really helpful if there was then sample code or instructions about how to actually incorporate the xm into a Word document custom xml file.

Please add information about the topic that this issue is filed for. Thanks.

Closing this as more detail is needed.


2.0 Release Checklist

Add items as required

[x] Major enhancements:

[x]  BLE Split Link Layer: #12681
[x]  Support for PPP protocol: #14034
[x]  Initial support for ARM Cortex-R: #9316
[x]  Initial support for TEE for ARC: #9341
[x]  A new DTS/binding parser: #17660
[x]  External modules into standalone repositories: #16454
[x]  Make newlib libc the default c library: #3102 (Pushed to 2.1.0)

[x] Pre RC1 Steps

[x] Verify that all external components and external dependencies are up to date, for example

mbedTLS
tinycrypt
FatFS

[x] Check known vulnerabilities, and fix exploitable vulnerabilities or verify them as un-exploitable.

See https://github.com/zephyrproject-rtos/zephyr/wiki/Release-procedure for tagging details

[x] Release Notes WIP

[x] Create draft doc/release-notes-2.0.rst with feature summary from https://www.zephyrproject.org/developers/#releases-overview
[x] Update doc/release-notes-2.0.rst detailed sections (relative to 1.14.0 release) as important issues are addressed (subsystem owners)

[x] Release data

[x] Update version in VERSION
[x] Run sanitycheck with --all --release and checking resulting file scripts/sanity_chk/sanity_last_release.csv

[ ] Finalize Release Notes

[x] Add list of GitHub issues (spell check issue list and fix in GitHub as needed)
[x] Review doc/release-notes/release-notes-2.0.rst overview summary and details sections (see Sign-off below)
[x] Update doc/release-notes/index.rst (add reference to 2.0 notes)
[x] Update doc/index.rst (add reference to doc/2.0.0)
[x] Update doc/conf.py (add version to pick list)
[x] Update doc/LICENSING.rst for new components that do not have a license
[x] Create release and add notes on https://github.com/zephyrproject-rtos/zephyr/releases
[x] Final tagged release as zephyr-v2.0.0 (with release notes)
[x] Update https://www.zephyrproject.org/developers/#releases-overview
[x] Update https://www.zephyrproject.org/developers/#downloads (and git checkout version example)
[ ] Update doc generation (in future should be automatic based on tag) ping @nashif
[x] Email<EMAIL_ADDRESS>&<EMAIL_ADDRESS>lists about release

[x]  Final Release Notes Sign-off

Subsystems

[x] Networking - @jukkar
[x] Bluetooth - @jhedberg , @carlescufi

Architectures

[x] ARC - @ruuddw
[x] ARM - @galak, @MaureenHelm
[x] X86 - @nashif, @andrewboie
[x] Xtensa, RISCV32, NIOS-II - @nashif, @andrewboie

[x] Security - @d3zd3z

[ ] After Release

[x] Update patchlevel in Makefile (PATCHLEVEL = 99)
[ ] Marketing Blog for announcing release (https://www.zephyrproject.org/blog)
[ ] Create branch for 2.0.x releases, update github protections for branch
[ ] Create checklist issue for next release
[ ] Add a comment to this issue linking to the next release checklist issue
[x] Update https://www.zephyrproject.org with latest stats from Github [@dbkinder]
[x] Move all PRs/Issues in the 2.0 milestone to the next milestone
[ ] Close v2.0.0 milestone
[x] Create v2.0.1 milestone

@MaureenHelm @nashif @galak @carlescufi I am trying to resolve this pre-RC1 task:

Verify that all external components and external dependencies are up to date, for example mbedtls.

However, now such external components are outside the main repository, so I am wondering, if we can skip this checking now. That would make sense, since these components can be updated independently of the main repo (that is, regardless of feature freeze).
Or: does this, now, mean that we need to tag all repositories together with the main zephyr repo?

@ioannisg, 2 comments fro me:

There is still a few ext/ in tree (e.g. tinycrypt, which is up to date)
I would say that them being in a separate repo does not change things here. As you said, you are tagging zephyr with a west manifest which lists the "known to work with" version of those other repos. So those should be up to date

@ioannisg, 2 comments from me:
* There is still a few ext/ in tree (e.g. tinycrypt, which is up to date)

@aescolar thanks, for your help here :)
Sure, I am aware of the components in the tree; tinucrypt is indeed up-to-date

* I would say that them being in a separate repo does not change things here. As you said, you are tagging zephyr with a west manifest which lists the "known to work with" version of those other repos. So those should be up to date

I agree they need to be up-to-date, in general; but does it mean "latest release" or we are ok with "latest major release"?
Second: updating external components (in the standalone repos) and west revisions (in zephyr) will require some testing, righti? if I should do this now, I can't tag -rc1 until this testing is completed. So what level of testing would we need? I suppose green CI should suffice, or?

@nashif @dbkinder there is one box left to tick in the Final Release Notes, could you check if this has been actually done?

V2.0.0 docs are published (thanks @nashif ) completing the last item in the “Finalize release notes” section, so I checked that off.

2.1 Release checklist: https://github.com/zephyrproject-rtos/zephyr/issues/19053


[Existing API Name] : Random User Generator API

Brief Description 🤓
The RandomUser API is a free online service that generates random user data for various purposes such as testing, prototyping, and demonstration. It provides a wide range of user information, including gender, name, email, address, and more. The API allows developers to fetch this data programmatically via HTTP requests.
Provide reference!
Reference: RandomUser API
Select the open source program you are contributing to
Other
Code of Conduct

[X] I follow CONTRIBUTING GUIDELINES of this project.

Greetings @pankaj-bind🎀 ! , We are excited to have you dive into another issue with us!🚀
Your involvement in our project has been invaluable, and we're confident that your skills and insights will help us conquer this challenge😇.  Use command /gssoc24 to self assign the issue.  This issue represents an exciting opportunity for us to improve and enhance our project, and we are thrilled to have you on board.
We request you to follow CONTRIBUTING GUIDELINES.
Looking for your PR soon!
In case of any issues, you can contact us on Discord.❣

/gssoc24

Please merge this PR

Hey @pankaj-bind ! I wanted to inform you that we have closed issue.Thank you for your understanding, and we look forward to your continued engagement with our repository🤗.
In case of any issues, you can contact us on Discord.
Thank you! ❣
Happy Coding! ✨
Will See you soon❣


Whitespace fixes in pretty-printer

Addresses the issues in https://github.com/leanprover/lean4/pull/1872#issuecomment-1331546401
This PR makes .align always print whitespace, and fixes the issue with the where.
It turns out that the where issue is unrelated to the .align change (as far as I can tell).  It was probably just made worse by decreasing the line width from 120 to 100.
The actual reason was that a " where" token prints an actual hard space before the where.  (Which is very much what we want in most cases, like with " + ".)  It is good to remember that leading spaces have a completely different semantics than trailing spaces here!  I've just changed the leading space to a ppIndent ppSpace.

OMG this is so amazing!  The tests segfault!  ❤

Same function prologue with -fstack-clash-protection:
0000000002915ca0 <l_Lean_Expr_withAppAux___at_Lean_instantiateMVarsCore___spec__38___rarg>:
 2915ca0:       55                      push   %rbp
 2915ca1:       48 89 e5                mov    %rsp,%rbp
 2915ca4:       48 81 ec 00 10 00 00    sub    $0x1000,%rsp
 2915cab:       48 c7 04 24 00 00 00    movq   $0x0,(%rsp)  --!!!
 2915cb2:       00
 2915cb3:       48 81 ec 40 02 00 00    sub    $0x240,%rsp
...


ci: Pin Python Version

Pin the CPython version in Python-oriented GitHub Actions to a micro/patch version.
I have been waffling on this issue for a couple hours now, trying to exactly pinpoint what broke in the upgrade to CPython 3.7.8:

Click for recent Python-lint GitHub Action run error output.

Run pip install pylint==2.2.3 PyYAML==5.1.2 requests==2.22.0
  pip install pylint==2.2.3 PyYAML==5.1.2 requests==2.22.0
  shell: /bin/bash -e {0}
  env:
    pythonLocation: /opt/hostedtoolcache/Python/3.7.8/x64
Collecting pylint==2.2.3
  Downloading pylint-2.2.3-py3-none-any.whl (750 kB)
Collecting PyYAML==5.1.2
  Downloading PyYAML-5.1.2.tar.gz (265 kB)
Collecting requests==2.22.0
  Downloading requests-2.22.0-py2.py3-none-any.whl (57 kB)
Collecting astroid<2.2.0,>=2.0
  Downloading astroid-2.1.0-py3-none-any.whl (176 kB)
Collecting mccabe
  Downloading mccabe-0.6.1-py2.py3-none-any.whl (8.6 kB)
Collecting isort>=4.2.5
  Downloading isort-5.0.4-py3-none-any.whl (153 kB)
Collecting idna<2.9,>=2.5
  Downloading idna-2.8-py2.py3-none-any.whl (58 kB)
Requirement already satisfied: urllib3!=1.25.0,!=1.25.1,<1.26,>=1.21.1 in /opt/hostedtoolcache/Python/3.7.8/x64/lib/python3.7/site-packages/urllib3-1.25.9-py3.7.egg (from requests==2.22.0) (1.25.9)
Requirement already satisfied: chardet<3.1.0,>=3.0.2 in /opt/hostedtoolcache/Python/3.7.8/x64/lib/python3.7/site-packages/chardet-3.0.4-py3.7.egg (from requests==2.22.0) (3.0.4)
Requirement already satisfied: certifi>=2017.4.17 in /opt/hostedtoolcache/Python/3.7.8/x64/lib/python3.7/site-packages/certifi-2020.6.20-py3.7.egg (from requests==2.22.0) (2020.6.20)
Collecting wrapt
  Downloading wrapt-1.12.1.tar.gz (27 kB)
Collecting lazy-object-proxy
  Downloading lazy_object_proxy-1.5.0-cp37-cp37m-manylinux1_x86_64.whl (57 kB)
Requirement already satisfied: six in /opt/hostedtoolcache/Python/3.7.8/x64/lib/python3.7/site-packages/six-1.15.0-py3.7.egg (from astroid<2.2.0,>=2.0->pylint==2.2.3) (1.15.0)
Building wheels for collected packages: PyYAML, wrapt
  Building wheel for PyYAML (setup.py): started
  Building wheel for PyYAML (setup.py): finished with status 'done'
  Created wheel for PyYAML: filename=PyYAML-5.1.2-cp37-cp37m-linux_x86_64.whl size=44104 sha256=ada23ec8ea389863aa4b5f9b886c93d3d01099392a0d5056b08235ae39b4d961
  Stored in directory: /home/runner/.cache/pip/wheels/23/b9/73/57aaccb6957d94ed63f474b51a9f7f992c5eff4635052c0557
  Building wheel for wrapt (setup.py): started
  Building wheel for wrapt (setup.py): finished with status 'done'
  Created wheel for wrapt: filename=wrapt-1.12.1-cp37-cp37m-linux_x86_64.whl size=71068 sha256=3f43a05b73e73190d1b4d32faced1f696b52f7b072f6d1fb6e7410059d0ad5c4
  Stored in directory: /home/runner/.cache/pip/wheels/62/76/4c/aa25851149f3f6d9785f6c869387ad82b3fd37582fa8147ac6
Successfully built PyYAML wrapt
ERROR: aws-sam-cli 0.53.0 has requirement requests==2.23.0, but you'll have requests 2.22.0 which is incompatible.
Installing collected packages: wrapt, lazy-object-proxy, astroid, mccabe, isort, pylint, PyYAML, idna, requests
  Attempting uninstall: PyYAML
    Found existing installation: PyYAML 5.3.1
    Uninstalling PyYAML-5.3.1:
      Successfully uninstalled PyYAML-5.3.1
  Attempting uninstall: idna
    Found existing installation: idna 2.10
    Uninstalling idna-2.10:
      Successfully uninstalled idna-2.10
  Attempting uninstall: requests
    Found existing installation: requests 2.23.0
    Uninstalling requests-2.23.0:
      Successfully uninstalled requests-2.23.0
Successfully installed PyYAML-5.1.2 astroid-2.1.0 idna-2.8 isort-5.0.4 lazy-object-proxy-1.5.0 mccabe-0.6.1 pylint-2.2.3 requests-2.22.0 wrapt-1.12.1
Traceback (most recent call last):
  File "/opt/hostedtoolcache/Python/3.7.8/x64/bin/pip", line 8, in <module>
    sys.exit(main())
  File "/opt/hostedtoolcache/Python/3.7.8/x64/lib/python3.7/site-packages/pip/_internal/cli/main.py", line 75, in main
    return command.main(cmd_args)
  File "/opt/hostedtoolcache/Python/3.7.8/x64/lib/python3.7/site-packages/pip/_internal/cli/base_command.py", line 114, in main
    return self._main(args)
  File "/opt/hostedtoolcache/Python/3.7.8/x64/lib/python3.7/site-packages/pip/_internal/cli/base_command.py", line 226, in _main
    self.handle_pip_version_check(options)
  File "/opt/hostedtoolcache/Python/3.7.8/x64/lib/python3.7/site-packages/pip/_internal/cli/req_command.py", line 155, in handle_pip_version_check
    timeout=min(5, options.timeout)
  File "/opt/hostedtoolcache/Python/3.7.8/x64/lib/python3.7/site-packages/pip/_internal/cli/req_command.py", line 100, in _build_session
    index_urls=self._get_index_urls(options),
  File "/opt/hostedtoolcache/Python/3.7.8/x64/lib/python3.7/site-packages/pip/_internal/network/session.py", line 249, in __init__
    self.headers["User-Agent"] = user_agent()
  File "/opt/hostedtoolcache/Python/3.7.8/x64/lib/python3.7/site-packages/pip/_internal/network/session.py", line 159, in user_agent
    setuptools_version = get_installed_version("setuptools")
  File "/opt/hostedtoolcache/Python/3.7.8/x64/lib/python3.7/site-packages/pip/_internal/utils/misc.py", line 634, in get_installed_version
    working_set = pkg_resources.WorkingSet()
  File "/opt/hostedtoolcache/Python/3.7.8/x64/lib/python3.7/site-packages/pip/_vendor/pkg_resources/__init__.py", line 567, in __init__
    self.add_entry(entry)
  File "/opt/hostedtoolcache/Python/3.7.8/x64/lib/python3.7/site-packages/pip/_vendor/pkg_resources/__init__.py", line 623, in add_entry
    for dist in find_distributions(entry, True):
  File "/opt/hostedtoolcache/Python/3.7.8/x64/lib/python3.7/site-packages/pip/_vendor/pkg_resources/__init__.py", line 1983, in find_eggs_in_zip
    if metadata.has_metadata('PKG-INFO'):
  File "/opt/hostedtoolcache/Python/3.7.8/x64/lib/python3.7/site-packages/pip/_vendor/pkg_resources/__init__.py", line 1414, in has_metadata
    return self._has(path)
  File "/opt/hostedtoolcache/Python/3.7.8/x64/lib/python3.7/site-packages/pip/_vendor/pkg_resources/__init__.py", line 1854, in _has
    return zip_path in self.zipinfo or zip_path in self._index()
  File "/opt/hostedtoolcache/Python/3.7.8/x64/lib/python3.7/site-packages/pip/_vendor/pkg_resources/__init__.py", line 1731, in zipinfo
    return self._zip_manifests.load(self.loader.archive)
  File "/opt/hostedtoolcache/Python/3.7.8/x64/lib/python3.7/site-packages/pip/_vendor/pkg_resources/__init__.py", line 1688, in load
    mtime = os.stat(path).st_mtime
FileNotFoundError: [Errno 2] No such file or directory: '/opt/hostedtoolcache/Python/3.7.8/x64/lib/python3.7/site-packages/PyYAML-5.3.1-py3.7-linux-x86_64.egg'
##[error]Process completed with exit code 1.

As it turns out, re-running CPython 3.7.7 builds works, but I didn't absolutely love this as a solution since we're already pinned at the minor release (informed readers may already know this is the ending to the story, but don't let that discourage you from reading the tales below!), I felt as though patches should be natural and hopefully non-breaking (or breaking, but in a good way). Additionally, up-pinning our PyYAML version also works, which I considered to be a better approach at the time. Digging into why it works though is pretty bad.
There's a pretty curious error message that gets output:
ERROR: aws-sam-cli 0.53.0 has requirement requests==2.23.0, but you'll have requests 2.22.0 which is incompatible.

And I had spent a good amount of time wondering where this had come from, and what one of our three dependencies and their chain might be installing this; turns out, I installed pipdeptree locally and none of them are installing this.
So, I shelved that, and I went to go look at why two days ago (previous working runs) this hadn't been an issue. The setup-python GitHub Action doesn't look at the upstream PyPi for its resolution, but instead at python-versions, which still didn't tell me why two days ago this worked, since the latest release was older than that. From there, I looked into what's installed on the GitHub Action runners and found that it's installing the AWS SDK.
This is basically a long-winded way of saying that the AWS SDK is installing PyYAML at 5.3.1, which means that up-pinning PyYAML does work, but for all the wrong reasons (basically it says we already have that dependency and skips it, 🎉 ).
There's a lot more red-herrings in here around some other things like setuptools not working explicitly for pyyaml, but that doesn't seem correct either since we should be using an older version (47.1.0) as per the CPython release notes/changelog (verified), and upgrading to the fixed version in the linked issue doesn't fix the problem.
There are alternative answers here as well, such as up-pinning PyYAML (I may warm up to this idea, but it sounds fundamentally bad), or adding --ignore-installed to the pip command, but all in all I'd prefer this command to be something you'd expect someone to invoke locally as well. I think this is (probably) a non-issue for most people, since I think I'm one of the few unix users of cactbot, and more specifically one of the few people that even runs Ubuntu, and this still doesn't affect me since I don't have weird conflicting issues with PyYAML locally.
This is all to say that I don't have an answer, this is acceptable, and it "solves" broken things for the time being. Future me will probably shake his future head at past/current me, but until then I think this is "good enough" for now. Thanks for coming to my TED talk.

Hmm, why would up-pinning pyyaml cause it to say we already have that dependency and then skip? Why wouldn't it use a more recent version? (Also why does black's install line ask for pyyaml anyway? If it's a dependency, shouldn't that be automatic?)

PyYAML 5.3.1 (the latest version) is used by the AWS SDK; technically they pin to 5.X. It's installed on the system by the time we get there.
PyYAML is our dependency, so that's why it's listed (and subsequently why I pinned it).

Ah right I forgot about the fishing script.
I guess I don't quite understand why uppinning pyyaml is a no-op.  Wouldn't that also fit the criteria you said earlier, in that somebody could run this install command locally and it would work?

Ah right I forgot about the fishing script.

First off: how dare you?

I guess I don't quite understand why uppinning pyyaml is a no-op. Wouldn't that also fit the criteria you said earlier, in that somebody could run this install command locally and it would work?

I'm taking no-op here to mean "something I'm avoiding doing," which, you'd be right, this would make me very warm and fuzzy in that someone could come through and run that command and they'd be running pylint/black against the cactbot repository and everything would be happy (including me, possibly). The issue is that the AWS SDK isn't pinning to a version, so if PyYAML came out with a new version we'd be in this mess again, since 5.4.0 or 5.3.2 would cause this to no longer say "I'm happy because that thing you wanted is right here, silly!" and break again. However, that's also in undefined future times (if ever) and we'll probably be on 3.7.9+ of CPython and none of this will be an issue.
It's not really a software issue, more of a "I don't like this because of ehh" issue, so if you (or people!) have opinions, mine is not so steadfast that it can't be changed.
There's also the opinion that we should probably just install with --user and set up the PATH environment to use the runner's cache directory as a place that can run binaries, but that's current/future me arguing with past me, and I can attempt to make that change (I'm assuming without verifying; that's never gone wrong) if we feel that's vaguely "better". I was mainly looking to unblock as of last night, since I feel pretty awful that the CI systems aren't completely transparent to contributors.

Ah, I see.  That is not the way I use the word "no-op".
Hmm.  Is not specifying a pyyaml version on our end an option? Or do you feel equally bad about that?

That's an option as well; technically none of our version dependencies need to be pinned (although we did run into that pylint error that one time on Travis 😉 (and that one time even more recently with isort)), but it feels nice to "guarantee" it works with a certain manifest of tool installs, but it's also kind of unnecessary in the sense that someone should be able to install whatever version of PyYAML (or requests) and it should just work with some reasonable amount of success. Things like black or pylint are a little more stringent since we directly depend on their exit codes, but really PyYAML (and requests) only has to be installed to avoid import errors, and for 100% of the current CI use-cases the versioning is irrelevant.

After talking with @quisquous offline, I think I'm going to abandon this pull request; it doesn't sound like it's the correct solution in any sense. I opened it knowing that it wasn't going to be the permanent fix going forward, but now that it's simmered a bit it feels ultimately like a very poor solution.
We're well beyond technical solutions at this point, and I think now we're discussing what this should look like going forward. I think there are two potential solutions here with differing main goals; in no order:

Unpin dependency versions for dependencies that we don't rely on their exit code for. At the moment, that would be requests and PyYAML. For black and pylint, we directly depend on their exit codes and it makes sense to move those dependencies up when we're comfortable with that and not have them randomly bark on a PR where someone's making a minor change and was unlucky enough to get the proverbial hot potato.

Pros: Intuitive and easy to grok
Cons: Breaks if the GitHub Action runners ever begin to use pylint or black with pinned dependencies that don't match ours

Install dependencies with pip's --user flag. This will "permanently" isolate the build's dependencies from the system, but requires updating PATH variables and might be overkill for the casual developer looking to run the CI commands locally.

Pros: Should "never" break again
Cons: Difficult to grok, might make users looking to replicate CI commands confused

Going to cc @JLGarber here since he's pretty much the main consumer of the Python CI stuff beyond @quisquous and myself. I'm pretty indifferent to the options presented; I have a desire for the CI system to "just work" and stop being intrusive to the developer, but at the same time I don't want to add anything that makes the CI systems scarier than they need to be for anyone looking to contribute in that corner of the repository.
If anyone feels super strongly in either direction, I think I'm okay with taking either approach at this point.

I think it's fair to say that my level of care is mostly at "does it run when I submit a pull request?" and "how often will I get inscrutable errors when I run tests locally?" Solely on that basis I (think I) would prefer the first option, but of course that's mostly just kicking the can until (if?) the action runners pin different dependencies.
Maybe another way of looking at it is, how often woud you anticipate the action runners changing their pins, and how long would it be likely to take you to research and resolve this if/when that happens? If it's just a few minutes once every 3-5 months, I think that's a reasonable tradeoff. If it's an hour every 3-5 months, that's less reasonable.

I think it seems quite unlikely that the action runners would start installing pylint or black if they weren't already.  It's not just changing the pin, but it'd be installing it at all.  So it's less kicking the can in the sense that the dependency exists and will eventually be updated and more instead taking a gamble that the dependency will ever be added directly or indirectly in the future to the action itself.
I think on the chance that happened, we could switch to the --user option, and it'd be pretty obvious from the error messages what was going on, especially after all this investigation.

Keep in mind that it's not only the what the runners themselves install, but what the software that they install also installs; that being said, why would you add a linter as a dependency to your package? I think the risk is pretty minimal, and the fix is (and hopefully remains) easy.

Closing in favor of #1548.


Screenshots on fail are cropped and --window-width params are ignored with chrome:headless

What is your Test Scenario?

Taking screenshots on failed tests with chrome:headless --no-sandbox --window-size=1980,1080.
What is the Current behavior?

Screenshots are cropped as if --window-size params are ignored. Works as expected with chrome --headless --no-sandbox --window-size=1980,1080.
What is the Expected behavior?

Taken screenshots match the size specified with --window-size
What is your web application and your TestCafe test code?

Repro https://github.com/infctr/repro-testcafe-screenshot-error-reporting
And as a side note in what way does starting chrome --headless differs from chrome:headless in TestCafe? As they seem to work differently on my CI setup

I've checked the issue with this command "chrome --headless --window-size='100,500'" and it works as expected. The headless browser makes a screenshot with width=100 and height=500.
However, I was not able to resize the browser using the command you mentioned chrome:headless --no-sandbox --window-size=1980,1080
I need some additional time to research this issue.
 >And as a side note in what way does starting chrome --headless differs from chrome:headless in TestCafe?
There is a difference because chrome:headless is our syntax and it adds extra flags to Chrome, while chrome --headless does not do that.
For now, I recommend you use the following syntax: "chrome:headless:emulation:width=100;height=100". It solves the problem and works well.

@AlexKamaev thanks for the tip, that works!


Add ssh-token service

lagoon-core:

Add the ssh-token service (disabled by default).
Allow disabling the ssh and auth-server services via ssh.enabled.
Update ssh-portal-api to match ssh-token version.

lagoon-remote:

Update ssh-portal version to match the other ssh services.

lagoon-test:

Add ssh-token environment variables to test container.

This PR doesn't enable ssh-token or disable ssh, but testing with ssh-token instead of ssh does pass the Lagoon test suite.

If the ssh-token service is enabled, and ssh.enabled is set. You will have two services that can generate tokens, is this correct?

If the ssh-token service is enabled, and ssh.enabled is set. You will have two services that can generate tokens, is this correct?

Yes, correct.

This PR is tested in https://github.com/uselagoon/lagoon/pull/3355 and now passes all tests in Jenkins except the rsh tests.

This PR now passes the entire Lagoon test suite. See https://github.com/uselagoon/lagoon/pull/3355/


Codex message.proto doesn't match IPFS BITSWAP.md

We incorrectly assigned code 2 to the payload field instead of code 3:
Our code: https://github.com/status-im/nim-codex/blob/8c5939252607f74b60a49fee4570734ffa06b11c/codex/blockexchange/protobuf/message.proto#L50-L52
While original code: https://github.com/ipfs/go-bitswap/blob/0fa397581ca6197c6c4ca17842719370f6596e95/message/pb/message.proto#L43-L45
And documentation.

Could you please do a PR to fix it, seems like a straightforward change that shouldn't touch anything else...

of course, just made check that the change wasn't intentional

of course, just made check that the change wasn't intentional

Nope, it's just a typo - tho perhaps the change actually happened in the original bitswap? Nevertheless, no reason not to make it match the original definition.

BitSwap 1.0 used value 2 for the field that is no more used in BitSwap 1.1:
https://github.com/ipfs/go-bitswap/blob/0fa397581ca6197c6c4ca17842719370f6596e95/message/pb/message.proto#L42-L43
And when we copied this message format, we just assigned sequential values to fields that remained in BitSwap 1.1. I.e. it's a pretty usual mistake for inattention. I caught it only because I was curious whether we use only a similar message format or target 100% message compatibility.

Member

weird, I know it was a straight up copy paste, but I guess even then it's possible to screw things up :)

But going deeper - if we target BitSwap compatibility, I recommend using higher values for our new fields. The reason is that if BitSwap will add new fields, they probably will reuse the same values that we are already using. F.e. we can assign our field numbers starting from 100.

But going deeper - if we target BitSwap compatibility, I recommend using higher values for our new fields. The reason is that if BitSwap will add new fields, they probably will reuse the same values that we are already using. F.e. we can assign our field numbers starting from 100.

We aren't trying to be byte level compatible, in fact we'll probably deviate from it some more once we start adding bandwidth incentives. But we can definitely use higher field numbers just to make the transition easier. So, I agree.

I checked protobuf docs - field numbers >=16 will use 1 more byte for encoding. Is it OK for us?
We can also start with 15 and go down.


Invalid link to /en/testnets/cardano/overview/

Where does the issue occur?
Broken link from https://cardano.org/stake-pool-operation/
Describe the issue
The "How do I set up a stake pool section" of https://cardano.org/stake-pool-operation/ has a gray button labeled "Learn How". It looks like that button is supposed to link to  /en/testnets/cardano/overview/ but instead links to /en/cardano/overview/ which results in Page Not Found.
Expected changes
Fix the link

Thanks for your feedback! The webpage you indicate is maintained by CF rather than by IOG. The mentioned link has been also fixed now.


Fix text wrapping.

Closes #397.

Coverage remained the same at 100.0% when pulling 269b589add23efc9021f74f8f4bba853c1946b6b on text_wrapping into d8897d3496bc626c6df1c080e0b6757043a016d8 on master.


 is not supported

If we have an example.cpp like:
#import <algorithm>

int main() {
	printf("hello world");
	return 0;
}

Using regular compilation works:
clang -Os -s -o a.out example.cpp

Where as targeting wasm and pointing to the right sysroot doesn't:
clang --target=wasm32-unknown-wasi --sysroot /tmp/wasi-libc -Os -s -o a.wasm example.cpp

Output:
hey.cpp:1:9: fatal error: 'algorithm' file not found
#import <algorithm>
        ^~~~~~~~~~~
1 error generated.

Is there something I'm missing? I'm relatively new to cross-compilation so it might be an oversight on my part. Thank you!

Are you using the wasi-sdk sysroot?

@sunfishcode yes!

I looks like are you passing wasi-libc as the --sysroot.  wasi-libc is just the source code for the C library.   You probably want wasi-sdk instead which includes a compiled and installed version of wasi-libc (among other things): https://github.com/CraneStation/wasi-sdk/releases.

@sbc100 I tried pointing sysroot at ~/Code/wasi-sdk (downloaded from the link you sent me, but still the same error. Are you able to reproduce it on your machine?

The sysroot path is under share/wasi-sysroot withing the SDK.

Thank you, it worked!


file names, paths should not be lower-cased in a comparison

ToLower() assumes windows platform. For a case-sensitive file system, the semantics of ToLower() is not appropriate

We should go over the code to check this.

Done.


Address suggestions to mock publishers

The mock publishers PR needs a few suggestions to be addressed. Please revisit https://github.com/iRobotEducation/create3_sim/pull/96 and apply unresolved comments.

mock params yaml update
compostable nodes
cliffs for kidnap, move to their own files
lambda

FYI, this a bit harder @Ednip7


[HELP] Looking For Contributors

I'm looking for contributors for this project so if anyone wants to get involved message me here!

@james-aiwip I would like to help!

@m1guelpf  I'll add you as a contributor :)


Test

Hello Team,
We are using this code to do some customizations.
I am trying to repackage this code but run into the following test errors:
Is this under development? And is the code maintained to the managed package?
Please advise.
Kind regards,
Mario

Apex Test Failures |   |
-- | -- | --
  |   |
Method Name |   |
Message |   |
Stack Trace |   |
sdgDesignerTest.GetNewFieldOrderTest | System.AssertException: Assertion Failed: Expecting new field order:   Expected: 3, Actual: 1 | Class.sdgDesignerTest.GetNewFieldOrderTest: line 33, column 1
sdgQueryEngineTest.TestAllRows | System.AssertException: Assertion Failed: Expected rowcount=2 from load:   Expected: 2, Actual: null | Class.sdgQueryEngineTest.TestAllRows: line 621, column 1
sdgQueryEngineTest.TestBooleanFilter | System.AssertException: Assertion Failed: TestBooleanFilter: Expected   rowcount=2 from load: Expected: 2, Actual: null | Class.sdgQueryEngineTest.TestBooleanFilter: line 35, column 1
sdgQueryEngineTest.TestDateFilter | System.AssertException: Assertion Failed: Expected rowcount=2 from load:   Expected: 2, Actual: null | Class.sdgQueryEngineTest.TestDateFilter: line 162, column 1
sdgQueryEngineTest.TestDateTimeFilter | System.AssertException: Assertion Failed: Expected rowcount=2 from load:   Expected: 2, Actual: null | Class.sdgQueryEngineTest.TestDateTimeFilter: line 284, column 1
sdgQueryEngineTest.TestDefaultFilter | System.AssertException: Assertion Failed: expected two rows in results:   Expected: 2, Actual: null | Class.sdgQueryEngineTest.TestDefaultFilter: line 377, column 1
sdgQueryEngineTest.TestFilterCacheing | System.AssertException: Assertion Failed: Expected rowcount=2 from load:   Expected: 2, Actual: null | Class.sdgQueryEngineTest.TestFilterCacheing: line 415, column 1
sdgQueryEngineTest.TestNumberFilter | System.AssertException: Assertion Failed: Expected rowcount=2 from load:   Expected: 2, Actual: null | Class.sdgQueryEngineTest.TestNumberFilter: line 667, column 1
sdgQueryEngineTest.TestPicklistFilter | System.AssertException: Assertion Failed: TestPicklistFilter: Expected   rowcount=2 from load: Expected: 2, Actual: null | Class.sdgQueryEngineTest.TestPicklistFilter: line 104, column 1
sdgQueryEngineTest.TestStringFilter | System.AssertException: Assertion Failed: Load with no filter: Expected:   2, Actual: null | Class.sdgQueryEngineTest.TestStringFilter: line 470, column 1
sdgSecurityTest.CanQuery | System.AssertException: Assertion Failed: Admin should be able to query   sdg__c: Expected: true, Actual: false | Class.sdgSecurityTest.CanQuery: line 27, column 1

I removed some classes but still end up with the following:
Upload Failed
Average test coverage across all Apex Classes and Triggers is 73%, at least 75% test coverage is required.
Is there a "good" unmanaged package we can use?
Kind regards,
Mario


Add ability to add reoccurring payments

Is there any way to implement a feature in which a user could set up reoccurring (specifically monthly/yearly expenses or deposits)? This could be a useful way of managing subscription payments or to define a fixed salary that automatically deposits money into an account.
If you really want to go the extra mile, you could add more granular controls over reoccurring payments, similar to the repeat function in many calendar apps. You could set payments to occur only during certain days of the week, or have payments continue on a schedule only until a specified date.
Thanks again for your work on this app!

Hi! Thanks for the suggestion, will try to add this in the soon.


This plugin is not using lazy property

In our project, we have encrypted database password as property. Only certain developer has access to encryption key. But since it is not lazy property, when automated process is trying to build our project, it fails as it tries to load mybatisProperties
https://github.com/kimichen13/mybatis-generator-plugin/blob/9905950d427af3f8873e635589abc548f0d8a5c6/src/main/groovy/com/thinkimi/gradle/MybatisGeneratorExtension.groovy#L15
Can we make the mybatisProperties as MapProperty<String, String) so that it gets loaded when developer needs to call this task?

I have created pr https://github.com/kimichen13/mybatis-generator-plugin/pull/19 to address this. Please let me know if this can be merged. Unit test and integration test passed. Please let me know if there is other manual testing I should do.

Thank you for your feedback, but this plugin should be used in the development phase to generate the related classes based on the table structure. Although lazy property can be used, it just feels very wired.

@kimichen13 I am using in development phase only but I have kept in main build.gradle. Since some gradle tasks gets used in CI process, its getting loaded because this not being lazy property. Do you see any harm in merging this pr?

@kimichen13 gentle reminder to reconsider. Please decline the pr if you don't want to merge this pr. I will try to fork and make this change in my forked branch if this change does not belong this repo.

Thanks to reach out to me again. I will give you response later after few
days, since I’m in Chinese new year holiday now.
On Tue, Jan 24, 2023 at 05:25 rajpra8 @.***> wrote:

@kimichen13 https://github.com/kimichen13 gentle reminder to
reconsider. Please decline the pr if you don't want to merge this pr. I
will try to fork and make this change in my forked branch if this change
does not belong this repo.
—
Reply to this email directly, view it on GitHub
https://github.com/kimichen13/mybatis-generator-plugin/issues/18#issuecomment-1401002611,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ADBDCTLDK7NZYSZQQBJP4G3WT3ZNJANCNFSM6AAAAAAQRSMSPM
.
You are receiving this because you were mentioned.Message ID:
@.***>


Do not send empty queries

Problem
When a query is empty, and we send a request to the metrics database, we get a 400 error.
Possible solution
I took the point of view that we don't want to send empty queries to the metrics database. Ways to look at it:

An empty query indicates that a user hasn't yet input a query. They haven't told us the query that they want to run.
The server is telling us that this is a client-side error, and we shouldn't send this kind of request.
Why ping the server when we don't need to?

The approach I took was to change the react-query queryEnabled field when the query is empty.
However, when a query is disabled, useQuery returns that query is loading (isLoading == true). Since I didn't want to show the loading state, I also added checks for empty queries in each panel, and show an empty state if the queries are empty. I'm not in love with this approach, because the logic in these two places could get out of sync.
There is also the isFetching value from react-query, I could potentially use that too. It might be true that isLoading && !isFetching means that the query is disabled, and we could use that check for all disabled queries.
Anywayyyy... feedback is welcome.
Different problem
I also looked into the fact that the panel gets stuck if the backend returns an error. I'm still not sure what to do about this one.
What seems to be going on:

When the backend returns an error (like a 400 for a bad request), react-query does not catch the error like I would expect... instead it throws the error and the ErrorBoundary for a panel has to catch it.
Even when I removed useErrorBoundary: true from the useQuery options, it still does not catch the error. It is confounding my expectations!
When the ErrorBoundary kicks in, the panel cannot be reset without saving a good query and refreshing the whole page. This is because the logic to run the query, as well as the logic to render a panel, has errored.

Ideally, I think we want react-query to catch the error for us, so that the panel doesn't error out.
We could also add a try-catch, but that feels like it's defeating the purpose of using react-query.

It's hard for the framework to tell when a query is empty/not set since the spec is a generic interface.

Actually this comment is not entirely true, we do know that its a TimeSeriesQueryDefinition but we can't assume the semantics of what query: "" means

It's hard for the framework to tell when a query is empty/not set since the spec is a generic interface.

Actually this comment is not entirely true, we do know that its a TimeSeriesQueryDefinition but we can't assume the semantics of what query: "" means

Yeah that makes a ton of sense

So I actually think we don't want to handle this in the framework visualizations but push this down to the TimeSeriesQuery plugin (in this case PrometheusTimeSeriesQuery). It's hard for the framework to tell when a query is empty/not set since the spec is a generic interface. For example, when we add a logging datasource, it's perfectly fine that a query config is query: "" (meaning give me all the logs)
Instead, a simple solution might be to return empty results or an error here (before hitting the query backend):
export const getTimeSeriesData: TimeSeriesQueryPlugin<PrometheusTimeSeriesQuerySpec>['getTimeSeriesData'] = async (
  spec,
  context
) => {

if(spec.query === null || spec.query === '') {
   // Option 1: return empty time series result, the graph will show no time series
   return { series: [] }

   // Option 2: or throw an error saying you need to define a query and skip the request
   throw new Error("Invalid a query")
}

//...rest of the normal logic flow

Our panel and visualizations can handle showing error messages to the user.

When the backend returns an error (like a 400 for a bad request), react-query does not catch the error like I would expect... instead it throws the error and the ErrorBoundary for a panel has to catch it.

As far as error recovery goes, we probably need to fix this so it doesn't throw but handles gracefully and displays the message to the user without an ErrorBoundary

Woo thank you for these thoughts

OK, found out what's going on... there's another place where we throw an error (after running the query), and that's what causes the errors to be thrown.
WOO

Yep! We can still use the ErrorBoundary to display the Error message if we want but need to reset it. I made that fix here:
https://github.com/perses/perses/pull/771


new search designs

this PR implements the designs for the new search experience. it has some dummy data until the functionality is implemented
testing

run demo site
try search in light and dark mode
resize to smaller screen sizes, the search should shrink as you go
at all screen sizes, the search should look like the designs

The "view more" button isn't hooked up to anything, are we waiting to do that on the docs site? Was just looking at the ticket AC

We probably want to lose the keyboard buttons on mobile

Let's make the keyboard shortcuts hide on mobile

ah good catch, these are definitely supposed to be hidden on mobile

The "view more" button isn't hooked up to anything, are we waiting to do that on the docs site?

i've got that in the next PR 😄


[DO NOT MERGE] Add extra disk to Data Warehouse db

This is to help with the data syncs completing.

 (2) Fix data syncing to staging and integration


[#1432] Implement  pipeline stage

Description
Closes #{1432}.

Implemented $unset aggregation pipeline. Currently this works with:

[] single field
[] multiple fields (array);
[] dot notation support for both.

Readiness checklist

[ ] I added/updated unit tests.
[ ] I added/updated integration/compatibility tests.
[ ] I added/updated comments and checked rendering.
[ ] I made spot refactorings.
[ ] I updated user documentation.
[ ] I ran task all, and it passed.
[ ] I ensured that PR title is good enough for the changelog.
[ ] (for maintainers only) I set Reviewers (@FerretDB/core), Labels, Project and project's Sprint fields.
[ ] I marked all done items in this checklist.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

@shibasisp Any news? Anything we could help with?

Apologies for the delay. @AlekSi I will be addressing the comments by this weekend.


[UMA 2.10] Addressables and asmdef

When enabling the addressables support in Unity 2019.3 AND using asmdef files, I am required to add a Unity.Addressables.Editor reference to UMA_Core.asmdef due to UMAAssetIndexer.cs. This should be fixed.
Also I cannot get the UMA_Examples.asmdef to compile, even though I added Unity.ResourceManager and Unity.Addressables references to the asmdef.

No overload for method 'DownloadDependenciesAsync' takes 3 arguments (Preloader.cs)
'IResourceLocator' does not contain a definition for 'LocatorId' and no accessible extension method 'LocatorId' accepting a first argument of type 'IResourceLocator' could be found (are you missing a using directive or an assembly reference?) (SampleCode.cs)

You must use the latest version of Addressables (1.8.4 as I write this).  It's available in the package manager, even though Unity makes it hard to find on 2019.3.
Asmdef is fixed in the current pull request waiting for merging.


feat: add logging to file and cli command

addresses the logging to file part of #217

looking back at https://github.com/pymmcore-plus/pymmcore-plus/issues/108 does it also make sense to support/override the mmcore function setPrimaryLogFile?

Will look into it

ok, I added a call to setPrimaryLogFile in the init method now, so all logs go to the log file.  There's a new cli helper mmcore logs to view, stream, or reveal, or clear the logs.  and a configure_logging method to customize it.
Docs added as well.


Inconsistent naming between Google Fonts and Noto website

The subset that Google Fonts calls Noto Sans JP is not the same sunset that the Noto website calls Noto Sans JP. See https://github.com/garris/BackstopJS/issues/981#issuecomment-464238119

Do you have any solution proposals? :)

The best solution would of course be if the names were consistent across Google Fonts and the Noto documentation. But I guess it's a little late to change the name of Noto Sans JP on Google Fonts since it's already published, so I guess there is no perfect solution.
At least mentioning that the Google Font names are not consistent with the Noto documentation would be helpful.
An appropriate place to mention is would be under the bullet point "For use in web content" on https://www.google.com/get/noto/help/guidelines/, since this already references Google Fonts.
Another second place could be the examples section, it seems to me that you'll actually want to use the name "Noto Sans JP" when loading Noto Sans CJK JP from Google Fonts.

Another solution would be to change to example to a font that does not have the same naming inconsistencies, and add a separate section about Noto Sans CJK JP and any other fonts that might be differently named on Google Fonts.


Boosting Current Version of Manual

When I search for Haxe content the top results is often from old.haxe.org.  This is occasionally useful as some content hasn't been ported over yet, however, the new stuff is usually better.
I would like to add direct links on the old wiki to the new one, both to help out users and improve the search rankings.  I can login but I don't see any UI indicating that I can edit the old wiki.
Can I get access to the old wiki?  If that's too much hassle, would anyone with access be interested in inserting those links?

I don't think we should mess about in the old wiki. The better approach is to just port the missing content to the new manual.
And no we can't do that automatically. The old wiki has a lot of useful information but it also has a lot of (outdated) nonsense.

The better approach is to just port the missing content to the new manual.

But there are times when the new stuff does exist but the old stuff still rises above it.

@Merelleya: Can we "help" google with that somehow?

Usually it takes time, especially if the old content was very good/detailed. We could either tell google not to crawl old.haxe.org anymore or we could also try putting canonical tags on the old pages, although, seeing as the content is similar but not exactly the same, google could still ignore that.

We can help google, by putting all content from old.haxe into the manual and close it forever. But that takes time :stuck_out_tongue_winking_eye:
I believe there is already some forwarding, this is done here: https://github.com/HaxeFoundation/haxe.org/blob/master/www/website-content/oldwiki.csv

Can we "help" google with that somehow?

That's why I suggested linking to the new pages : )

I think this will sort itself out over time, especially once all still relevant content has been ported.


SSL certificate verification failure when running in cluster with private Certificate Authority

Describe the bug
In a K8s cluster that is running with a private CA certificate, Ambassador is hitting errors while connecting to the API server.
urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='<IP_ADDRESS>', port=443): Max retries exceeded with url: /api/v1/namespaces/kasten (Caused by SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get issuer certificate (_ssl.c:1123)')))
I created a ConfigMap that contains the private CA certificate and mounted it at /etc/ssl/certs/custom-ca-bundle.pem with the hope that maybe Ambassador would load the new certificate if it was present in a standard path such as /etc/ssl/certs . But that did not help.
Traceback (most recent call last):

  File "/ambassador/kubewatch.py", line 376, in <module>

    main()

  File "/usr/lib/python3.8/site-packages/click/core.py", line 829, in __call__

    return self.main(*args, **kwargs)

  File "/usr/lib/python3.8/site-packages/click/core.py", line 782, in main

    rv = self.invoke(ctx)

  File "/usr/lib/python3.8/site-packages/click/core.py", line 1066, in invoke

    return ctx.invoke(self.callback, **ctx.params)

  File "/usr/lib/python3.8/site-packages/click/core.py", line 610, in invoke

    return callback(*args, **kwargs)

  File "/ambassador/kubewatch.py", line 236, in main

    ret = v1.read_namespace(wanted)

  File "/usr/lib/python3.8/site-packages/kubernetes/client/apis/core_v1_api.py", line 17572, in read_namespace

    (data) = self.read_namespace_with_http_info(name, **kwargs)

  File "/usr/lib/python3.8/site-packages/kubernetes/client/apis/core_v1_api.py", line 17644, in read_namespace_with_http_info

    return self.api_client.call_api('/api/v1/namespaces/{name}', 'GET',

  File "/usr/lib/python3.8/site-packages/kubernetes/client/api_client.py", line 317, in call_api

    return self.__call_api(resource_path, method,

  File "/usr/lib/python3.8/site-packages/kubernetes/client/api_client.py", line 150, in __call_api

    response_data = self.request(method, url,

  File "/usr/lib/python3.8/site-packages/kubernetes/client/api_client.py", line 338, in request

    return self.rest_client.GET(url,

  File "/usr/lib/python3.8/site-packages/kubernetes/client/rest.py", line 227, in GET

    return self.request("GET", url,

  File "/usr/lib/python3.8/site-packages/kubernetes/client/rest.py", line 201, in request

    r = self.pool_manager.request(method, url,

  File "/usr/lib/python3.8/site-packages/urllib3/request.py", line 66, in request

    return self.request_encode_url(method, url, fields=fields,

  File "/usr/lib/python3.8/site-packages/urllib3/request.py", line 89, in request_encode_url

    return self.urlopen(method, url, **extra_kw)

  File "/usr/lib/python3.8/site-packages/urllib3/poolmanager.py", line 324, in urlopen

    response = conn.urlopen(method, u.request_uri, **kw)

  File "/usr/lib/python3.8/site-packages/urllib3/connectionpool.py", line 663, in urlopen

    return self.urlopen(method, url, body, headers, retries,

  File "/usr/lib/python3.8/site-packages/urllib3/connectionpool.py", line 663, in urlopen

    return self.urlopen(method, url, body, headers, retries,

  File "/usr/lib/python3.8/site-packages/urllib3/connectionpool.py", line 663, in urlopen

    return self.urlopen(method, url, body, headers, retries,

  File "/usr/lib/python3.8/site-packages/urllib3/connectionpool.py", line 637, in urlopen

    retries = retries.increment(method, url, error=e, _pool=self,

  File "/usr/lib/python3.8/site-packages/urllib3/util/retry.py", line 399, in increment

    raise MaxRetryError(_pool, url, error or ResponseError(cause))

urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='<IP_ADDRESS>', port=443): Max retries exceeded with url: /api/v1/namespaces/kasten (Caused by SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get issuer certificate (_ssl.c:1123)')))

To Reproduce
Steps to reproduce the behavior:

Deploy a Kubernetes cluster with a private CA (Certificate Authority) certificate.
Start Ambassador.
The logs will show SSL verification errors when Ambassador connects to the Kubernetes API server.

Expected behavior
Ambassador should load the certificates at /etc/ssl/certs so that SSL verification succeeds while connecting to the K8s API server.
Versions (please complete the following information):

Ambassador: 1.9.1
Kubernetes environment [e.g. Minikube, bare metal, Google Kubernetes Engine]
Version [e.g. 1.8.1]

Additional context
I did try the AMBASSADOR_SSL_VERIFY_FALSE environment variable described here - https://github.com/datawire/ambassador/pull/808 . This works, but it is an insecure option.

Emissary doesn't detect changes when the cert is stored in a file path, so it is recommended to use a Kubernetes secret instead.


[Feature] Change the resume slug

Is there an existing issue for this feature?

[X] Yes, I have searched the existing issues and it doesn't exist.

Feature Description
I would like to change the slug of an existing resume.
P.S. RxResume is pretty freakin' awesome!

Right now, duplicating the resume would allow you to pick a new name and slug while maintaining the same resume data and styling. Would that approach work?


Your external account credential expired or you did not allow us access to your account. Try logging in again.

Hi,
I'm getting this error when trying to login..
Can you add login link to the error message?

Can you try logging in again from nuget.org?

Yes, as I figured out I had to go to https://login.live.com and login with my MS account. Would be great if you add this link to error message.


fix(sendStream): add support for file streaming

🔗 Linked issue

Closes #623
❓ Type of change

[ ] 📖 Documentation (updates to the documentation, readme, or JSdoc annotations)
[x] 🐞 Bug fix (a non-breaking change that fixes an issue)
[ ] 👌 Enhancement (improving an existing functionality like performance)
[ ] ✨ New feature (a non-breaking change that adds functionality)
[ ] 🧹 Chore (updates to the build process or auxiliary tools and libraries)
[ ] ⚠ Breaking change (fix or feature that would cause existing functionality to change)

📚 Description

This PR adds support for file streaming when used with unstorage by converting the buffer to a readable.
📝 Checklist

[x] I have linked an issue or discussion.
[ ] I have updated the documentation accordingly.

Thanks for PR. I don't think we should wrap buffer into another stream but instead send it normally by return or send()


Add some sort of playground to examples

This is only an idea, but it would be great if I could try out the examples on codepen.io or something similar (play around with the arguments, etc.)

Working on it,


Ctrl-K is not being passed to internal terminal

Version: 1.43.0
Commit: 78a4c91400152c0f27ba4d363eb56d2835f9903a
Date: 2020-03-09T19:44:52.965Z
Electron: 7.1.11
Chrome: 78.0.3904.130
Node.js: 12.8.1
V8: 7.8.279.23-electron.0
OS: Linux x64 5.5.8-200.fc31.x86_64
I have tested this with and without extensions.
Steps to reproduce

Open a terminal
Type some stuff in, then press Ctrl-A to go to the start of the line.
Press Ctrl-K

Expected
Ctrl-K is passed to the terminal and the line is killed.
Actual
Ctrl-K is intercepted by Visual Studio Code and waits for another modifier key to be pressed.
Notes
Ctrl-K is a standard and incredibly common readline keybind, and is used by bash and zsh in a default configuration (or at the very least in a standard configuration).

This behavior is controlled by "terminal.integrated.allowChords" you can set it to false.
An as said in description - chords like Ctrl+KS won't work if terminal is in focus.

Ah, I wondered what the setting was, if there was one.
Honestly I"m not sure that the default behaviour is desirable.  Seems like use of readline keys would be common enough that the editor commandeering one of them is potentially problematic.  I'm not sure what the right play is here - though the fact that there's a setting for it is nice and adequately solves my immediate need.
Thanks for your help. :+1:

I believe the default behaviour changed within these last few days and the previous behaviour was quite acceptable.
Before it was at least possible to repeat the combination to pass it to terminal (i.e., Ctrl+K Ctrl+K to cut the text inside terminal) but now, even though Ctrl+K Ctrl+K is still not defined it doesn't pass it to the terminal.
This makes using git commands inside vscode terminal quite problematic.

Yes this default behavior changed and it also wasn't the easiest decision. The thinking being that those that expect chords to work everywhere I would expect to out weight users of the terminal who use ctrl+k inside the terminal. Defining the defaults within the terminal is tricky as terminal users expect it to act like a full blown terminal application, however it's hosted inside an editor which is also expected to work. That's why the terminal.integrated.commandsToSkipShell setting exists but that isn't good enough for chords.
Since I think this is the right way to go for the product as a whole and because this has been the only report of this problem since 1.43 went out I'm going to keep it as is. For anyone else hitting this issue just add this to your settings:
"terminal.integrated.allowChords": false

Also FYI there is another similar setting coming that is turned off by default (initially?) that will disabled all alt keybindings such that the menu bar mnemonics work. See terminal.integrated.allowMnemonics in Insiders.


Support PSR-18

This will drop PHP5 and force us to release a new major version.

We already require PHP 7 here.

Great. I was just copy pasting multiple issues.
I've started a project (https://github.com/orgs/php-http/projects/1) and I've also started to migrate Guzzle6 adapter. Lets see how that goes, then I'll start with all other adapters/clients.


[WIP] Allow null shader resources in resource sets

(This builds on #33, so that should be merged before this one. And it should not be merged as-is, because I've only implemented this change for D3D11, and only for a subset of resource types. I wanted to get your feedback on the change before I go ahead with the other resource types and backends.)
This is different from #29 - that was about vertex buffers, and this is about shader resources (textures, structured buffers).
As far as I can tell, it is necessary to be able to unbind shader resources. Here's a simplified version of my use-case. I have two shaders, with these resource layouts:
Shader 1:
0: Texture2D
1: Texture2D

Shader 2:
0: Texture2D
1: StructuredBuffer (optional)

I first draw objects using Shader 1, then draw objects using Shader 2, in the same command list.
In Shader 2, the StructuredBuffer at slot 1 might not be present. The shader queries a value in a uniform buffer to see whether it should read from the structured buffer.
But because Veldrid doesn't allow bindable resources in a ResourceSet to be null, I can't "unbind" the Texture2D from Shader 1 slot 1, which causes the D3D11 debug layer to show a warning that a resource with the incorrect dimension (Texture2D) is bound at a slot where it expected a StructuredBuffer.
Do you agree with this change? If so I'll finish the implementation.

I should mention: I know D3D11 allows null resources to be bound to the pipeline, but I don't know about the other backends. I assume they are similar.

My main concern here is Vulkan. My understanding of the spec (and I just re-read it a few times), is that any resources "statically used" by a pipeline MUST be bound with valid resources of the correct type. "Static use" just means there is some instruction in the shader's call tree that accesses the resource. So even if you have some dynamic branching which would result in the resources being unused, it still needs a valid binding in place.
That said, there is apparently some use for descriptor sets (Vulkan's ResourceSets, essentially) to contain empty bindings, or "uninitialized descriptors". But those are only permitted when the pipeline in question NEVER uses the resource declared in that slot. My understanding is that it's only allowed to encourage you to share / re-use descriptor sets among similar, but not identical, pipelines that need mostly the same resources. So perhaps it should be possible to allow a null resource, but it wouldn't help your scenario here where the resource really is accessed sometimes.
The alternative here is to just use a "static", empty buffer that you can bind instead of a null buffer.

Interesting - I don't know much about Vulkan, so that's new to me.
I know D3D12 has the concept of null descriptors, which boils down to calling CreateShaderResourceView with the resource parameter set to null. It sounds like Vulkan doesn't have that concept.
I've now read some of the Vulkan spec and threads about this, and I think you're right - Vulkan requires a valid resource to be bound if the shader references that descriptor at all, even in a code path that isn't hit because of dynamic branching.
It sounds like the "right" answer is to create non-zero-length dummy resources (textures, structured buffers, etc) instead of trying to use null. (Non-zero-length because D3D11 at least doesn't allow creation of zero-length buffers.)
So, sounds like nothing needs to change in Veldrid here.


Fix Issue #51: Empty Lists with Applied NumberFormat Throw ArgumentOutOfRangeException

Sorry, I meant to pull this and check it out by now. Weekend turned out much busier than I expected. I'll check it tomorrow and get back to you.

No problem.  I've got some other fixes on my fork.  The only thing that's
not a bugfix is some slightly hacky DateTimeOffset support that I flexed in
when OData didn't support DateTime (
https://github.com/OData/WebApi/issues/136).
On Sun, Jan 31, 2016 at 9:20 PM, Jordan Gray<EMAIL_ADDRESS>wrote:

Sorry, I meant to pull this and check it out by now. Weekend turned out
much busier than I expected. I'll check it tomorrow and get back to you.
—
Reply to this email directly or view it on GitHub
https://github.com/WebApiContrib/WebApiContrib.Formatting.Xlsx/pull/52#issuecomment-177713684
.

--
Pax tecum,
Anthony Frazier

Cool beans! Let me know when/if you would like to merge in some of the other fixes. :)


RenderSliverGrid lies about having visual overflow

There's a comment saying // Conservative to avoid complexity.
I'd like to make this more accurate, since having visual overflow here will trigger additional clipping that may not be necessary and will make some debug checking I'm interested in adding for https://github.com/flutter/flutter/issues/103068 harder.
/cc @Piinks @goderbauer fyi

Looks like RenderSliverScrollingPersistentHeader does the same with the same comment.

I checked the git history on this, it's from 2017. 😄
While the comment in RenderSliverGrid does not provide much explanation, I did find similar patterns elsewhere that were a bit more informative:
From RenderSliverFixedExtentBoxAdaptor
 // Conservative to avoid flickering away the clip during scroll.
https://github.com/flutter/flutter/blob/1ecb52e2f8978b1de65f0300a6f6ae90fa28bc6b/packages/flutter/lib/src/rendering/sliver_fixed_extent_list.dart#L306
From RenderSliverList
// Conservative to avoid flickering away the clip during scroll.
https://github.com/flutter/flutter/blob/6eb65b376d822b7aa87372b7a001d839836eeb23/packages/flutter/lib/src/rendering/sliver_list.dart#L331
I wasn't able to find a test related to these classes covering overflow or flickering, but we should make sure we aren't introducing a flicker in the RenderSliverGrid change.


fiddly bits of python unit tests

Update: As section on fixtures is already quite long, update the scope to be about fixtures only. Switch to a series of pytest blogs to cover all suggested topics:

Temporary Files & Directories
Parametrized Tests
Marks
Mocking


mamba dependency changes mamba behavior

As advised previously, I only have mamba installed in the base environment, because otherwise mamba starts to behave differently from conda.
The best example is updating a different env from the current one:
conda activate py38
mamba update -n base --all

Only when the only available mamba is in the base env, this behaves as expected.
If there's a mamba installed in the env  py38, then, with that activated, above command updates that env, and not base, despite the -n option used.
Now, for package development using mambabuild one requires boa and therefore mamba be installed in the env used for development.
Questions:

Does this mean, there is no way to update other envs?
Could boa not use/lookup mamba from the base env, to not break mamba's correct functionality?

FYI, here's my setup:
╰─ conda config --show-sources                                                            ─╯
==> /home/maye/miniconda3/.condarc <==
channels:
  - conda-forge

==> /home/maye/.condarc <==
channel_priority: strict
report_errors: True

==> /home/maye/miniconda3/envs/py38/.condarc <==
pinned_packages:
  - jupyter_client=6
  - nbconvert=5
channels:
  - conda-forge

─ mamba --version                                                                        ─╯
mamba 0.17.0
conda 4.10.3

Hi Michael,
thanks for the issue.
Maybe in the future we can remove the dependency on mamba and depend on libmambapy instead -- we've just started this split in mamba and the latest commits on boa are related to that (moving to this new intermediate library).
libmambapy does not come with the mamba executable, and therefore these problems should "go away".
Regardless, I think conda, conda-build, mamba, and boa are "best installed" in the base environment. At least that's how I do it :)
The place of the (default) build outputs also corresponds to the "base" prefix (e.g. ~/miniforge3/conda-bld etc.)

Unfortunately some build tools like fastai's fastrelease rely on having mambabuild available in the current environment, at least in their default setup.
In the case of not using fastrelease, is it possible to build for different python versions using only the one set of tools in the base env?

when you run boa / mambabuild / conda-build it is completely isolated from the "build" and "host" env of the build execution. You can use boa with python 3.7 to create a python 3.10 package of somethign else. If that is what you mean

and then I'd use --convert to build the other versions, like shown here? https://docs.conda.io/projects/conda-build/en/latest/user-guide/tutorials/build-pkgs.html#converting-a-package-for-use-on-all-platforms
sorry for the noob-builder questions, only recently started to seriously into conda package building...

i think there's no CLI option to do the first build at a different than current environment, right?

you just need to place a conda_build_config.yaml file next to your recipe, or include it using -m.
This defines the build matrix, e.g.: https://github.com/conda-forge/mamba-feedstock/blob/9f9bece91d8f8c3c3c11db1326685ab4d715369f/.ci_support/linux_64_.yaml#L31-L36


forge create Artifact not found with cached project

Component
Forge
Have you ensured that all of these are up to date?

[ ] Foundry
[ ] Foundryup

What version of Foundry are you on?
No response
What command(s) is the bug in?
No response
Operating System
No response
Describe the bug
As reported here

I still can't get forge create to work. This is with a basic template, with a blank contract "contract Contract { }"

forge create --rpc-url http://localhost:8545 --private-key ac.....80 src/Contract.sol:Contract
[⠆] Compiling...
No files changed, compilation skipped
Error:
could not find artifact: Contract

https://t.me/foundry_support/21310
this likely has something to do with cached artifacts

I got it to work, can close this.


Add aliasing for vagrant binary including CA trust for internal transparent proxy

SSL_CERT_FILE=/etc/ssl/certs/ca-certificates.crt CURL_CA_BUNDLE=/etc/ssl/certs/ca-certificates.crt vagrant

@fredrikhgrelland, are you actually working on this? Asking because you said you were going to work on #20

No. Sorry. Not working on that

You mean something that runs vagrant up with the prefixes if you are behind a transparent proxy, correct?

I thought it might be possible to add an alias to bashrc when running make install. It could wrap vagrant with those environment variables. See first comment.

I thought it might be possible to add an alias to bashrc when running make install. It could wrap vagrant with those environment variables. See first comment.

Can we assume everybody has the same path to the certificate-file? If not, they would have to go in and edit the source-code to make it work with their system if it's different. In that case only having the doc for transparent proxy is better IMO.


update readme to bold/include REST API

done
--
Wayne McDilda
Senior Test/QA Engineer/Architect
Cisco Systems- Global CX Center
Standard Business Hours: 9-6 CDT
wamcdild<EMAIL_ADDRESS>Office: +1-512-378-6035
Cisco Contact Number: 1-800-553-2447
Security QA: “Testing parachutes, not backpacks”
From: Kyle Winters<EMAIL_ADDRESS>Reply-To: CiscoDevNet/stealthwatch-sample-scripts<EMAIL_ADDRESS>Date: Friday, May 24, 2019 at 11:11 AM
To: CiscoDevNet/stealthwatch-sample-scripts<EMAIL_ADDRESS>Cc: "Wayne McDilda (wamcdild)"<EMAIL_ADDRESS>Author<EMAIL_ADDRESS>Subject: Re: [CiscoDevNet/stealthwatch-sample-scripts] update readme to bold/include REST API (#1)
@kywinter requested changes on this pull request.
This also includes SOAP API example
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://github.com/CiscoDevNet/stealthwatch-sample-scripts/pull/1?email_source=notifications&email_token=ABYNT55YT52FIYSB5XFY7MDPXAHOXA5CNFSM4HPQ3HO2YY3PNVWWK3TUL52HS4DFWFIHK3DMKJSXC5LFON2FEZLWNFSXPKTDN5WW2ZLOORPWSZGOBZVADPA#pullrequestreview-241828284, or mute the threadhttps://github.com/notifications/unsubscribe-auth/ABYNT53LZN6XAYAUJZHGOMTPXAHOXANCNFSM4HPQ3HOQ.

Changing to specify just "API"