Merge contributors

((sorry for the long text. see this pull request in action))
Wow! All substantial contributors I was able to find (@fubhy, @shaimo, @Apkawa) contributed their changes and agreed to the MIT-Licenses. I collected all their agreements like reported here. Now we have two options;
Option A
We try to bring our contributions in the future upstream to @fubhy and help to keep the project growing together.
Option B
We all try to maintain our own repos and pull from the different sources and hope it's not falling too much apart.
Since @fubhy started the project he's also the maintainer. But maybe he has not time/passion to spend for the project and don't wanna merge the pull requests. Thats absolutely fine and I guess we are all thankful for the work he already did.
This pull request
This pull requests collects the contributions of the three people plus adds some infos in the readme. I see that this is an absolute breaking change for @fubhy. His case is not longer covered. He mad a SQL-Like-Query-Builder (?) and now it's more like a generalized Query-Datamodel.
Bummer for @fubhy but I think on top of that data-model he could easily add his export again like @Apkawa did for his problem in /modules/utils/queryBuilderFormat.js. I think thats also the reason why we should build on top of these changes. It can help a lot of people. I'm going to build a queryBuilder for my use-case to pass the filter to mongodb's db.collection.find(). I'm also going to contribute that back.
I noticed that we have now bootstrap in the code. That might be not all peoples wish, but for now I think it would be great to bring all together and then try to find a way so all our individual problems are solved.
Breaking change
@fubhy output was for example:
(name:*a* AND color:orange)
and now we have something like
{
  "id": "01234567-89ab-4cde-b012-3456789abcde",
  "type": "group",
  "children1": {
    "f0123456-789a-4bcd-af01-23456789abcd": {
      "id": "f0123456-789a-4bcd-af01-23456789abcd",
      "properties": {
        "type": "string",
        "operator": "less",
        "field": "name",
        "widget": "text",
        "value": ["test name"]
      },
      "type": "rule"
    },
    "ef012345-6789-4abc-9ef0-123456789abc": {
      "id": "ef012345-6789-4abc-9ef0-123456789abc",
      "type": "group",
      "children1": {
        "def01234-5678-49ab-8def-0123456789ab": {
          "id": "def01234-5678-49ab-8def-0123456789ab",
          "properties": {
            "type": "date",
            "operator": "equal",
            "field": "date",
            "widget": "date",
            "value": ["2012-01-12"]
          },
          "type": "rule"
        },
        "cdef0123-4567-489a-bcde-f0123456789a": {
          "id": "cdef0123-4567-489a-bcde-f0123456789a",
          "properties": {
            "type": "string",
            "operator": "equal",
            "field": "date",
            "widget": "text",
            "value": ["2016-04-08"],
            "operatorOptions": {},
            "valueOptions": []
          },
          "type": "rule"
        }
      },
      "properties": {
        "conjunction": "OR",
        "id": "bcdef012-3456-4789-abcd-ef0123456789"
      }
    }
  },
  "properties": {
    "conjunction": "AND",
    "id": "abcdef01-2345-4678-9abc-def012345678"
  }
}

After that I will not keep spamming you guys the next couple days. First I'm going to build my own code.

This pull request
This pull requests collects the contributions of the three people plus adds some infos in the readme. I see that this is an absolute breaking change for @fubhy. His case is not longer covered. He mad a SQL-Like-Query-Builder (?) and now it's more like a generalized Query-Datamodel.
Bummer for @fubhy but I think on top of that data-model he could easily add his export again like @Apkawa did for his problem in /modules/utils/queryBuilderFormat.js. I think thats also the reason why we should build on top of these changes. It can help a lot of people. I'm going to build a queryBuilder for my use-case to pass the filter to mongodb's db.collection.find(). I'm also going to contribute that back.
I noticed that we have now bootstrap in the code. That might be not all peoples wish, but for now I think it would be great to bring all together and then try to find a way so all our individual problems are solved.
Breaking change
@fubhy output was for example:
(name:a AND color:orange)
and now we have something like

I don't think that that's true? The string output is something that is configured based to your needs. The tree structure also doesn't look like it changed too much? So I am not sure if anything actually really changed there. The syntax you are talking about is btw. not SQL but Solr (which I built this for originally but I made it generic from the start so wether your query builder is for SQL, Solr, whatever, is absolutely up to you!)

Regarding the PR: In order for it to be merged I'd like to first clean it up properly. The first step for that would be to re-submit this PR without all the build assets so we can more easily review it. Then we should add linting rules to the repository so we don't end up with three different syntax interpretations. I also don't want to add Bootstrap because that causes exactly the opposite of what you are trying to achieve I think (makes it less accessible and reusable because most people really don't like Bootstrap, me included :P).

@fubhy thank you for your quick respond. You're right and I didn't wanna give someone else credits for work you did, I judged too much on the output then the code. I just started today to review the code. I also noticed that we are already having different coding styles and my linter already goes crazy... But I hope it's a starting point. When I saw the bootstrap I was also not happy about that. I don't like to have it in there at all.


Restore string-specific measure to SSTs

Restores the Str case to TypeStat in order to collect min/max values in addition to lengths for strings.
[ch2352]

Reflecting on how meaningful min/max values for string are. If the string values are all numeric (or all temporal), say, then both the min and max will be numeric (or temporal), which would confirm that all values sampled are numeric (or temporal).


fatal error: opencv2/highgui.hpp: No such file or directory

rastertriangle_so.cpp:2:10: fatal error: opencv2/highgui.hpp: No such file or directory
2 | #include <opencv2/highgui.hpp>
|          ^~~~~~~~~~~~~~~~~~~~~
compilation terminated.
I'm having this error; do you know how to solve it?

hey，I had this problem too,Could you help me  how to fix it?Thx a lot.


Content type not set correctly due to no-cors

Hi. Cool idea.
I was trying to get this working with Home Assistant incoming webhook (https://www.home-assistant.io/docs/automation/trigger/#webhook-trigger) and noticed that the webhook being sent is not actually of Content-Type: application/json (event though it is set that way): https://github.com/jpoehnelt/chrome-meet-webhook-extension/blob/master/src/webhook.ts#L37-L39. My POST requests are sent as text/html and Home Assistant doesn't use the body so my data is empty.
Upon closer debugging I found the fetch() API documentation calling out the headers limitation at https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API/Using_Fetch:

Note that mode: "no-cors" only allows a limited set of headers in the request:
Accept
Accept-Language
Content-Language
Content-Type with a value of application/x-www-form-urlencoded, multipart/form-data, or text/plain

It looks like  POSTing JSON is at odds with the no-cors option. Are you actually using this in Chrome and successfully POSTing as JSON?

I have only been using the template pattern in the url and ignoring the body. Do you know if the server is open to CORS? If it is we could enable the preflight options check.

I have only been using the template pattern in the url and ignoring the body. Do you know if the server is open to CORS? If it is we could enable the preflight options check.

I do not know. But i'll play with it. I actually hacked it to send the body as URL encoded (which works).

I do not know. But i'll play with it. I actually hacked it to send the body as URL encoded (which works).

Should probably default to that instead. Opened #69 .

Should probably default to that instead. Opened #69 .


feat: [FTL-8013] - Add missing tests

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

Visual Studio Marketplace
GitHub release

Your semantic-release bot :package::rocket:


Upload paradox/scala+java docs into nightlies folder

As discussed in https://the-asf.slack.com/archives/C0491A12EP2/p1675850262146849, at least initially there is a preliminary decision to upload generated paradox/scala+java docs into the apache nightlies (i.e. https://nightlies.apache.org/). The idea is the main website (which is separate and hosted at http://pekko.apache.org/) would point to the docs uploaded to nightlies. The reasons why to do this are

Nightlies will automatically host any content that happens to have an index.html in a root folder. This makes it really trivial to host generated docs (see https://nightlies.apache.org/flink/flink-ml-docs-master/ as an example)
Uploading to nightlies is very easy and almost all of the work has already been done, see https://github.com/apache/incubator-pekko/blob/main/.github/actions/sync-nightlies/action.yml. The only changes we would need to do is to run sbt unidoc paradox and change the LOCAL_PATH and REMOTE_PATH)

Each pekko module would have its own folder (i.e. pekko core would sit in /pekko folder, pekko-http would sit in /pekko-http)

Under that module folder there would be another one which would designate the version, i.e. 1.0.0 would sit under /pekko/1.0.0. Same deal with snapshots but they would have an expiry.
There will also be a /pekko/current/<content> folder which will always point to the latest release

The core website at http://pekko.apache.org/ will then link to these docs

The Flink TLP project uses this method (go to https://flink.apache.org/ and on the left menu navigate to Documentation), so there is prior art for this and we can also ask them any questions. The reason why I am advocating for this solution is that its by far the simplest and easiest to get going, its quite similar to what other Scala/OS projects do (especially Scala projects that use Paradox), in fact Lightbend used almost exactly the same method with Akka (thats why Akka/Pekko contains https://github.com/lightbend/sbt-publish-rsync). Its more principled in design especially when taking into account the fact that docs generated from a release (i.e. paradox/scala+java doc) have a different life/update cycle compared to the main website at https://github.com/apache/incubator-pekko-site. The main site would be updated on the https://github.com/apache/incubator-pekko-site  git repo where as the doc updating would be handed by a github action/release manager within sbt.
The potential drawbacks are the size of the generated docs (~510 megabytes) although there isn't much we can do about this (scala/javadocs take up almost all of the size and its just how they are generated) and whether putting release documentation in Apache nightlies is problematic (considering that Flink does this I don't think its a concern 🤷 ). Irregardless we should also look into this.

Alternatively, here's a script draft to upload generated docs and apidocs to https://github.com/apache/incubator-pekko-site:
#!/bin/sh

set -ex

# Expects generated docs in these folders
# target/javaunidoc
# target/scala-2.13/unidoc
# docs/target/paradox

TARGET_REPO="https://github.com/apache/incubator-pekko-site"
REPO="https://github.com/jrudolph/incubator-pekko-site"
TMPDOCS="/tmp/docstmp"
BRANCH="new-docs"
TARGET_BRANCH="asf-staging"
GITOPTS="--git-dir $TMPDOCS/.git --work-tree $TMPDOCS"

mkdir $TMPDOCS

git clone --depth 1 -b $TARGET_BRANCH $TARGET_REPO $TMPDOCS
git $GITOPTS remote add my $REPO
git $GITOPTS checkout -b $BRANCH
git $GITOPTS rm -r content/api content/japi content/docs

cp -r target/javaunidoc $TMPDOCS/content/japi
cp -r target/scala-2.13/unidoc $TMPDOCS/content/api
cp -r docs/target/paradox $TMPDOCS/content/docs
git $GITOPTS add -A content
git $GITOPTS commit -m "publish docs"
git $GITOPTS push my $BRANCH

echo "Now open $REPO/pull/new/$BRANCH to open PR"

Thanks! Since it makes sense to upload docs for snapshots to nightly (along with an expiry due to their size) I will go ahead and do this anyways. Since the flow is the same we can then also put docs for releases into nightlies and point to that, if there is an issue then we can look into using this script.
I also think that the script is not enough, we would also have to either have to document or automate changing the relevant paradox/unidoc settings in sbt to update the absolute link host (since its going to be in a different location), this is one advantage that using nightlies has is that we can just (for now) hardcode the URI in the sbt settings

One consideration regarding regular site vs. nightlies is also how these domains are served and how CDNs get involved.


Fix errata and grammatical mistakes

I fixed grammatical mistakes and made some expressions look better.
Please check this!
It's related to #59

Looks valid. :)


Update Balsamic Mockups 3.app to v3.1.7

3.1.6 fails because Balsamic deletes non-current CDN hosted files.

Thank you for the contribution. It was merged directly as 108055f6e6cbfbf81eca3eafb6a440c2eccb396f to keep commit history cleaner. Your contribution is still credited to you.


Need to reduce latency in co-op messages

The host sending/client receiving is instant.
The client sending/host receiving is very delayed.

Fixed the client -> host transmission meaning the client actions are instantly seen on the host.
TODO: Host actions are being transmitted to the client very slowly. Suspect delay with the udphost:sendto(data,ip,port) on line 155.

Worked it out.
arrClientNodes is forever growing for some reason. Need to work out why.


fit witness

Modify:

Skip the witnesses when gen region cache unless the witness is the leader
Retry on IsWitness error

ref tikv/tikv#12876
Signed-off-by: Wenbo Zhang<EMAIL_ADDRESS>

@Connor1996 PTAL, thanks!

Need to cover it in test

Added, thanks!

CI failed as need to update TiDB's go mod

@sticnarf PTAL, thanks!


Small formatting issue on /identifications/username in Chrome

From
Using Chrome or Brave, got to https://www.inaturalist.org/identifications/tiwane You'll see the obs photo is above the obs taxon:

It should be to the right of the obs taxon (screenshot from Firefox):

Same thing for notifications drop-down, when mousing over a notification:

The problem is caused by float: inline-end;, which is supported only by firefox and last safari TP.


run static analyser to identify py2->py3 issues

Run an analyser to see where our existing code base will run into issues with Python3.

Here is a diff of the changes that are suggested/required to upgrade from python 2 to python 3: https://gist.github.com/mcescalante/220ecd4e3afb91aed7d6add5cf9686b6
The same changes are also pushed as a single commit to a branch in my fork located here and this is the diff link (going to be the same as the link above, but likely more readable): https://github.com/mcescalante/open-humans/commit/6595be6c6a5d9c09d6438598d4740645e702b073

Okay, I just updated the links above with a different branch, py3-fix, in which I fixed the extra parenthesis being added to print() statements (that are already python 3 safe). I also added a note about how this tool may not catch third party library upgrade related changes, since some libraries (if we must update any older versions to get Python 3 compatibility) may have made some deprecations or changes depending on what version we're using and how outdated it may be.

Closing as the python3 migration is complete.


Deprecation notices for rules

🔧 Changes
Rules is a deprecated feature that is soon to be removed from the Management API (more info). To prepare for this, we're adding notices in the documentation and printing warnings in the console to advise people about the eventual rules EOL.
📚 References

Migrate from rules to actions
Rules and Hooks EOL - Auth0

🔬 Testing
N/A.
📝 Checklist

[x] All new/changed/fixed functionality is covered by tests (or N/A)
[x] I have added documentation for all new/changed functionality (or N/A)

Codecov Report
Patch coverage: 100.00% and project coverage change: +0.01% :tada:

Comparison is base (1b1f2f8) 72.05% compared to head (0539aa9) 72.07%.

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #800      +/-   ##
==========================================
+ Coverage   72.05%   72.07%   +0.01%
==========================================
  Files          91       91
  Lines       11455    11462       +7
==========================================
+ Hits         8254     8261       +7
  Misses       2696     2696
  Partials      505      505

Files Changed
Coverage Δ

internal/cli/rules.go
67.17% <100.00%> (+0.59%)
:arrow_up:

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


Line number

How can I see line number, in the editor. I tried all menu options, and I didn't find it. Thanks for the help, and sorry for the incovenience.

edit the default behaviors and change the line that contains "hide-line-numbers" to "line-numbers"

You don't want to modify default behaviors as that will get overwritten.
From the command pane type "user behaviors" and add this line to the file:
 [:editor :lt.objs.editor/line-numbers]

On Mon Feb 09 2015 at 11:02:10 AM Dave Bennett<EMAIL_ADDRESS>wrote:

edit the default behaviors and change the line that contains
"hide-line-numbers" to "line-numbers"
—
Reply to this email directly or view it on GitHub
https://github.com/LightTable/LightTable/issues/1854#issuecomment-73568147
.

Closing as this has been answered


scala2.12  found  illegal cyclic reference involving class Object

Describe the bug
use spark 3.00 , scala2.12.10 , but spark-engine start error:
s:0;    Last connection made:Thu Jan 01 00:00:00 UTC 1970;      First connection made: Thu Jan 01 00:00:00 UTC 1970;    Active Connections:0;   total failure count in last (1000) msecs:0;     average resp time:0.0;       90 percentile resp time:0.0;    95 percentile resp time:0.0;    min resp time:0.0;      max resp time:0.0;      stddev resp time:0.0]
44487: ]}ServerList:org.springframework.cloud.netflix.ribbon.eureka.DomainExtractingServerList@4c51fc9a
44487: 20/11/11 11:48:24 INFO PyUdfEngineHook: start loading UDFs
44487: 20/11/11 11:48:24 INFO ScalaUdfEngineHook: start loading UDFs
44487: 20/11/11 11:48:24 INFO PyFunctionEngineHook: start loading UDFs
44487: 20/11/11 11:48:24 INFO ScalaFunctionEngineHook: start loading UDFs
44487: 20/11/11 11:48:24 INFO SparkEngineExecutorFactory: Ready to create a Spark EngineExecutor
44487: 20/11/11 11:48:24 INFO SparkEngineExecutorFactory: ------ Create new SparkContext {yarn} -------
44487: 20/11/11 11:48:24 INFO SparkEngineExecutorFactory: outputDir====> /mnt/tmp/repl-9b2ebdb1-7d87-45ef-9810-278fe426d499
44487: 20/11/11 11:48:24 INFO SparkScalaExecutor: outputDir====> /mnt/tmp/repl-9b2ebdb1-7d87-45ef-9810-278fe426d499
44487: 20/11/11 11:48:24 INFO ChainedDynamicProperty: Flipping property: sparkEngineManager.ribbon.ActiveConnectionsLimit to use NEXT property: niws.loadbalancer.availabilityFilteringRule.activeConnectionsLimit =<PHONE_NUMBER>
44487:
44487: scala> 20/11/11 11:48:25 INFO ChainedDynamicProperty: Flipping property: cloud-publicservice.ribbon.ActiveConnectionsLimit to use NEXT property: niws.loadbalancer.availabilityFilteringRule.activeConnectionsLimit =<PHONE_NUMBER>
44487: 20/11/11 11:48:25 ERROR EngineReceiver: init engine failed!
44487: scala.reflect.internal.Symbols$CyclicReference: illegal cyclic reference involving class Object
To Reproduce
Steps to reproduce the behavior:

run sample sql:
select * from xxx limit 10, error.
found the spark-engine-manager linkis.out found error :

This is a bug introduced by scala 2.12 and will be fixed in version 0.11.0

how to fix it?

@RustRw 请问是如何解决spark3的问题的？

Hello, in linkis 0.X version, if scala 2.12 needs to comment this line,
Utils.waitUntil(() => scalaExecutor.sparkILoopInited == true && scalaExecutor.sparkILoop.intp != null, new TimeType("120s").toDuration)
//Thread.currentThread().setContextClassLoader(scalaExecutor.sparkILoop.intp.classLoader)

the circular reference problem caused by classLoader
SparkEngineExecutorFactory

with HDP3.4.1 as base environment, I've can use spark3.1.1 with linkis 0.11.0 , we should not use spark3's json4s version to compile linkis, but use the default 3.5.3 version . after install linkis replace linkis-ujes-spark-enginemanager/lib/json4s-ast_2.12-3.5.3.jar with spark3's same name jar, then will be fine.


Can't resolve '@monaco-editor/react'

I'm running a react app with docker-compose and I keep getting this error:
Can't resolve '@monaco-editor/react'
Here is my docker-compose:
  web:
    container_name: web
    build:
      context: ./web
      dockerfile: Dockerfile.dev
    volumes:
      - ./web/app:/app
      - /app/node_modules
    ports:
      - '8080:3000'
    environment:
      - CHOKIDAR_USEPOLLING=true
      - API_HOST=api
      - API_PORT=3000
      - COMPOSE_HTTP_TIMEOUT=200
    command: npm start

Here is my Dockerfile:
FROM node:alpine

RUN apk update
RUN apk upgrade
RUN command apk add bash

WORKDIR /app

# add `/app/node_modules/.bin` to $PATH
ENV PATH /app/node_modules/.bin:$PATH

#COPY ./app .

# install and cache app dependencies
COPY ./app/package.json /app/package.json
RUN npm install --silent
RUN npm install react-scripts -g --silent

# start app
CMD ["npm", "start"]

I verified that folder "@monaco-editor" is present in node_modules folder.
Any idea about what's wrong?

Hello @mean2me.
It's only about '@monaco-editor/react'? I mean, can other packages be resolved?

Thanks a lot @SurenAt93 , after investigating my problem was solved after rebuilding the docker-compose service.
For some reason, the mounted volume "/app/node_modules" didn't match with my local folder. Forcing a rebuild with --no-cache solved the problem and now it's working very good.

@mean2me glad to hear that and thank you for your support!


🤩 Add Data Structures Code in C++

Description:
We invite contributions of data structures implemented in C++. Popular data structures like Heaps, Hash Maps, Graphs, and more are welcome in this language.
Requirements:

Use C++ Standard Template Library (STL) wherever possible for clean and efficient code.
Provide detailed comments and documentation for better clarity.
Share examples of how the data structure can be used with a sample main function.

Contributing to this will help others understand C++ implementations of essential data structures!

@sudo-parnab pls assign this to me

open a new issue according to your code


Reformat the code of ujson.

I notice that some codes in ujson project owns the following style:
trait AstTransformer[I] extends Transformer[I] with ujson.Visitor[I, I]{
// there is no whitespace between "Visitor[I, I]" and "{"

So I add a whitespace before {
trait AstTransformer[I] extends Transformer[I] with ujson.Visitor[I, I] {

Probably not worth doing as a one off


Advanced search not working

Need to change from using ? to /

going to close this as advanced search seems to work


IN-D KYC India Connector artifacts

This checklist is used to make sure that common guidelines for a pull request are followed.

[ ] The PR has modified HISTORY.rst describing any customer-facing, functional changes. Note that this does not include changes only to help content. (see Modifying change log).

@gowthamd3 Could you please let us know why you have renamed 260 files in the repo ? Please remove unnecessary changes from the PR.

@gowthamd3 Could you please let us know why you have renamed 260 files in the repo ? Please remove unnecessary changes from the PR.

@sriyen-msft I'm new to github changes have done by mistake can you please tell me how to undo changes ? can i make new pull request by creating new forked repo on github by adding connector artifacts ?


Correction for raw affiliation ENS, CNRS Paris, France; LPSM Sorbonne Université, CNRS Paris, France

Correction needed for raw affiliation ENS, CNRS Paris, France; LPSM Sorbonne Université, CNRS Paris, France
raw_affiliation_name: ENS, CNRS Paris, France; LPSM Sorbonne Université, CNRS Paris, France
new_rors: 05re0sm29;02feahw73;02en5vm52;02vnd0e65
previous_rors: 05re0sm29;02feahw73;02en5vm52
works_examples: W4386501889
contact: aff1edffd1c98c8d9528d98465376b08:1b985cbe646b2b22342322384e @ sorbonne-universite.fr

This issue was accepted and ingested by the OpenAlex team on 2024-11-01. The new affiliations should be visible within the next 7 days.


Fishing Gear (Peacekeeper quest) | Insurance returns SV-98 stashed

General information
Project issue is for:
SPT 3.8.0-BE Server
Expected result:
Insurance should not return the SV-98 back when doing the Peacekeeper's Fishing Gear stash subtask (if I'm not mistaken, it doesn't return on live servers, at least not that I remember from past experience)
Actual result:
I got it back on insurance
How to reproduce

Insurance a SV-98 at the start of the raid;
Complete the subtask (stash it);
Die in raid (brought a grenage with me and threw it on my own feet);
Wait for the insurance (or use the tip below);
Insurance will give you back the sv-98.

PS.:

I fast-forwarded the insurance time editing the profile json using the https://www.epochconverter.com/ as a base for the timestamp;
To reproduce the test I did with a botless raid, but it happened with a normal raid.

Screenshots

Attachments

image.png (343 KiB)
image.png (127 KiB)
image.png (2204 KiB)
image.png (242 KiB)
image.png (49 KiB)
image.png (334 KiB)
server-2024-03-10.log (612 KiB)
2024.03.10_6-44-06_<IP_ADDRESS>.28965 traces.log (41 KiB)
LogOutput.log (10 KiB)

Originally written by nasc

Just wanted to point out that I had this happen on 3.7.6 as well with this quest and Ragman's quest where you leave clothing on the pier on Woods.

Originally written by Reanimate

It's a known issue, albeit it's in the backlog. And, from my experience, you don't have to die in raid for stashed items to return
https://dev.sp-tarkov.com/SPT-AKI/Issues/issues/204

Originally written by 5o2

Just tested and reproduced this. The game client doesn't send any requests to the server when an item is stashed. Since insurance works on a preRaid - postRaid basis, all the game server sees is that you had an insured item and now you do not.
There are a couple ways I can see this being fixed.

Modify the game client to send a request to the server something is stashed. This would include the ID of item placed, which would then be immediately removed from the PMC profile's insurance list.

Check which quest subtasks have been completed at the end of each raid by comparing pre- and post-raid quest lists. If they include any stashing subtasks, make a list of which items the player stashed. Then, check the inventory difference from the raid to see if that item type had gone missing. If it is missing and was insured, remove it from the insurance list and move on to the next completed stash subtask (if one exists) and check for that item.

The second option runs the risk of a player bringing two copies of an insured into the raid, stashing one, dying, and receiving back the one that was stashed instead of the one that was not. A similar thing would happen if the player found an SV-98 (or whatever item) in raid, stashed it, and dropped/died with their insured version of the same item. The insured item would be lost even though it was otherwise a valid insurance claim.

Originally written by Brent

feature added to fix this, should no longer happen in 3.9.0 forward

Originally written by CWX


Error: unknown eBPF opcode 0xc5 (insn #32)

On newer kernel fails with below error. Do you have a fix for this? Attached object file. Thanks.
docker run -v ${PWD}:/tmp scanf/ebpf-disasm -s from-overlay /tmp/bpf_overlay.o
thread 'main' panicked at '[Disassembler] Error: unknown eBPF opcode 0xc5 (insn #32)', /root/.cargo/git/checkouts/rbpf-44f97f5da1828c73/f1e69a8/src/disassembler.rs:286
note: Run with `RUST_BACKTRACE=1` for a backtrace.

bpf_overlay.zip

Pretty sure this has to do with the new (added in August) “lower than” or “lower or equal” conditional jumps added to eBPF (see kernel commit or update of the simplified instruction code list). ebpf-disasm probably does not support them yet?

Ah, but ebpf-disasm relies if fact on rbpf (my own crate), so I'm the one to blame I suppose. I updated the crate a few days ago, @scanf could you try with the GitHub version of rbpf? The one from crates.io is certainly not up-to-date.

Was thinking something had to be applied here and I would then rebase to get latest changes. Was simpler, just reran cargo and it pulled in your recent changes. Works as expected now. Thanks a lot.

Great! You're welcome :)


Add no_warning_propagation flag to Vector.build and Builder.new

Fixes #10046.
Checklist
Please ensure that the following checklist has been satisfied before submitting the PR:

[x] The documentation has been updated, if necessary.
[x] Screenshots/screencasts have been attached, if there are any visual changes. For interactive or animated visual changes, a screencast is preferred.
[x] All code follows the
Scala,
Java,
TypeScript,
and
Rust
style guides. In case you are using a language not listed above, follow the Rust style guide.
[x] Unit tests have been written where possible.

@JaroslavTulach
I'm still seeing a difference in the benchmarks, from a change to fibarr. This branch adds the propagate_warnings flag, and uses it to speed up VectorBenchmarks.averageOverSlice. This branch reverts only that change.
Benchmark results:
wip/gmt/10046-flag:[info] VectorBenchmarks.averageOverSlice  avgt    5  0.001 ±  0.001  ms/op
wip/gmt/10046-flag-reverted:[info] VectorBenchmarks.averageOverSlice  avgt    5  0.006 ± 0.001  ms/op

Since this change is to code that is only used in setup, I wonder why it is affecting the benchmark results.

The difference is in propagate_warnings=False. If it is there, the code runs fast. If it is not, it is eight times slower.

Since this change is to code that is only used in setup, I wonder why it is affecting the benchmark results.

The only explanation is that the setup creates different vector in one case and different one in the other case.

The only explanation is that the setup creates different vector in one case and different one in the other case.

This is what is needed to compute arr.length in the faster case:

Please note that we have long[] wrapped in Long.storage wrapped inside of Generic.storage which is wrapped by ArraySlice.storage which is again wrapped by Generic.storage. It is interesting that even such level of indirection can be fast.

With propagate_warnings=False there is no call to constructor of Array. Without that argument, there are many calls.

#10143

The above PR has a potential to speed the slow case by 30% making it just five times slower than the propagate_warnings=False` case.

The slow case is more complicated. It contains two if statements that divide the code into four branches. I am not sure what is causing that

Debugging (as described at this comment) shows the problem is in Array_Like_Helpers.length. The Builtin_Method "Array_Like_Helpers.length" implementation node LenghtVectorNode isn't split but is shared between the benchmark's avg code and the code that computes warnings that is invoked unless disabled by propagate_warnings=False.
Such a sharing of LenghtVectorNode is unfortunate

#10143

mitigates the problem by using better Vector implementations (so we don't need if statements to switch between many different ones). The benchmark shall be fast. But it the splitting problem isn't solved by the #10143 PR.

Such a sharing of LengthVectorNode is unfortunate.

@Akirathan suggested to @ReportPolymorphism, I tried, but it doesn't seem to have any impact on the splitting:
diff --git engine/runtime/src/main/java/org/enso/interpreter/node/expression/builtin/BuiltinRootNode.java engine/runtime/src/main/java/org/enso/interpreter/node/expression/builtin/BuiltinRootNode.java
index f845b53fef..e3124103ce 100644
--- engine/runtime/src/main/java/org/enso/interpreter/node/expression/builtin/BuiltinRootNode.java
+++ engine/runtime/src/main/java/org/enso/interpreter/node/expression/builtin/BuiltinRootNode.java
@@ -36,6 +36,12 @@ public abstract class BuiltinRootNode extends RootNode {
     this.typeName = typeName;
   }

+  @Override
+  public boolean isCloningAllowed() {
+    System.err.println("isClonning allowed: " + getClass().getName());
+    return true;
+  }
+
   /**
    * Executes this node's logic, returning a pair of return value and the new state.
    *
diff --git engine/runtime/src/main/java/org/enso/interpreter/runtime/data/vector/ArrayLikeAtNode.java engine/runtime/src/main/java/org/enso/interpreter/runtime/data/vector/ArrayLikeAtNode.java
index 5c097d24d4..30924b3650 100644
--- engine/runtime/src/main/java/org/enso/interpreter/runtime/data/vector/ArrayLikeAtNode.java
+++ engine/runtime/src/main/java/org/enso/interpreter/runtime/data/vector/ArrayLikeAtNode.java
@@ -2,6 +2,7 @@ package org.enso.interpreter.runtime.data.vector;

 import com.oracle.truffle.api.dsl.Cached;
 import com.oracle.truffle.api.dsl.NeverDefault;
+import com.oracle.truffle.api.dsl.ReportPolymorphism;
 import com.oracle.truffle.api.dsl.Specialization;
 import com.oracle.truffle.api.exception.AbstractTruffleException;
 import com.oracle.truffle.api.interop.InteropLibrary;
@@ -12,6 +13,7 @@ import com.oracle.truffle.api.nodes.Node;
 import org.enso.interpreter.node.expression.builtin.interop.syntax.HostValueToEnsoNode;
 import org.enso.interpreter.runtime.error.WarningsLibrary;

+@ReportPolymorphism
 public abstract class ArrayLikeAtNode extends Node {
   public abstract Object executeAt(Object arrayLike, long index) throws InvalidArrayIndexException;

diff --git engine/runtime/src/main/java/org/enso/interpreter/runtime/data/vector/ArrayLikeLengthNode.java engine/runtime/src/main/java/org/enso/interpreter/runtime/data/vector/ArrayLikeLengthNode.java
index 38a5ce9daa..3437890e38 100644
--- engine/runtime/src/main/java/org/enso/interpreter/runtime/data/vector/ArrayLikeLengthNode.java
+++ engine/runtime/src/main/java/org/enso/interpreter/runtime/data/vector/ArrayLikeLengthNode.java
@@ -3,12 +3,14 @@ package org.enso.interpreter.runtime.data.vector;
 import com.oracle.truffle.api.dsl.Cached.Exclusive;
 import com.oracle.truffle.api.dsl.Fallback;
 import com.oracle.truffle.api.dsl.NeverDefault;
+import com.oracle.truffle.api.dsl.ReportPolymorphism;
 import com.oracle.truffle.api.dsl.Specialization;
 import com.oracle.truffle.api.interop.InteropLibrary;
 import com.oracle.truffle.api.interop.UnsupportedMessageException;
 import com.oracle.truffle.api.library.CachedLibrary;
 import com.oracle.truffle.api.nodes.Node;

+@ReportPolymorphism
 public abstract class ArrayLikeLengthNode extends Node {
   public abstract long executeLength(Object arrayLike);

Results with @JaroslavTulach 's change.
==> prop-flag-2-out <==
[info] Vector_Builder.Builder_New_Append_Batch_With_Warning_Propagation      avgt   10   28.875 ±  5.325  ms/op
[info] Vector_Builder.Builder_New_Append_Batch_Without_Warning_Propagation   avgt   10   16.300 ±  2.520  ms/op
[info] Vector_Builder.Builder_New_Append_One_With_Warning_Propagation        avgt   10  117.361 ± 51.105  ms/op
[info] Vector_Builder.Builder_New_Append_One_Without_Warning_Propagation     avgt   10  103.525 ± 35.385  ms/op
[info] Vector_Builder.Vector_Build_Append_Batch_With_Warning_Propagation     avgt   10   26.862 ±  5.193  ms/op
[info] Vector_Builder.Vector_Build_Append_Batch_Without_Warning_Propagation  avgt   10   14.910 ±  1.640  ms/op
[info] Vector_Builder.Vector_Build_Append_One_With_Warning_Propagation       avgt   10  194.968 ± 36.746  ms/op
[info] Vector_Builder.Vector_Build_Append_One_Without_Warning_Propagation    avgt   10   92.243 ± 56.763  ms/op
==> prop-flag-out <==
[info] Vector_Builder.Builder_New_Append_Batch_With_Warning_Propagation      avgt   10   25.885 ±  3.141  ms/op
[info] Vector_Builder.Builder_New_Append_Batch_Without_Warning_Propagation   avgt   10   20.868 ±  7.349  ms/op
[info] Vector_Builder.Builder_New_Append_One_With_Warning_Propagation        avgt   10  112.103 ± 39.995  ms/op
[info] Vector_Builder.Builder_New_Append_One_Without_Warning_Propagation     avgt   10  219.262 ± 70.423  ms/op
[info] Vector_Builder.Vector_Build_Append_Batch_With_Warning_Propagation     avgt   10   15.867 ±  1.989  ms/op
[info] Vector_Builder.Vector_Build_Append_Batch_Without_Warning_Propagation  avgt   10   18.376 ±  8.989  ms/op
[info] Vector_Builder.Vector_Build_Append_One_With_Warning_Propagation       avgt   10   90.453 ± 43.618  ms/op
[info] Vector_Builder.Vector_Build_Append_One_Without_Warning_Propagation    avgt   10   89.058 ± 51.438  ms/op


Fix nrf-builder dev-deploy

Added a fix for https://github.com/Nitrokey/nitrokey-3-firmware/issues/447


Stop other players on a site when clicking play

Is it possible to somehow stop the current player on a page when clicking on another play button?
I have four players on a page. So when one Is playing and I click on another player the current player is stoppet and the other one starts.

I guess thats the same issue as: https://github.com/kolber/audiojs/pull/133
How do I implement this "single" functionality? Cant's finding anything in the doc's

It is. All instances are available globally. You can scan you page to find selectors for instances you want to stop and stop them via global reference.

something as simple as this could help you to get instance
getAudiojsInstance = function(element){
 return audiojs.instances[element.attr("id").replace("_wrapper","")];
}

Hmm. I dont get along with js very well.
If I have this markup:

<audio src="{{ asset.url }}" preload="none" /></audio>

<audio src="{{ asset.url }}" preload="none" /></audio>

<audio src="{{ asset.url }}" preload="none" /></audio>

and this js:
$(document).ready(function() {

	audiojs.events.ready(function() {
	  var as = audiojs.createAll();
	});
	getAudiojsInstance = function(element){
	 return audiojs.instances[element.attr("id").replace("_wrapper","")];
	});

});

How would I alter your code in order to work?

Ok, you should start by understanding what happens here, @seppentoni.

When createAll() runs for each for your  tags it will create audiojs instance
Updates dom to populate with audiojs wrapper (by default div with class audiojs)
Each of those audiojs wrappers get unique id (again default is audiojs_wrapper0,audiojs_wrapper1,audiojs_wrapper2 etc).
Notice that each of those numbers map to the names of instances in the instances collection. So replace does a string substitution to move extra "_wrapper" string to pull names of audiojs instances

Lets say you need to stop all instances on the page and you are using jquery. Then you code to pause on the page could look like this:
$('.audiojs').each(function(idx, el){
  var name  = $(el).attr('id').replace("_wrapper", "");
  audiojs.instances[name].pause();
});

Now, everyone situation is different so depending on if you are using a single page application or loading each pages separately there are easier ways of handling it (like simply iteration over each instance and pausing it), however in general if you ever in situation where you need to grab just one instance of the audiojs aforementioned logic applies.

Hmmm. That doesn't work.
There is now a live exmaple: http://beer-music.ch/medien
What would be the selector? The play button? The parent element. I don't get it.
The code here is:
$(document).ready(function() {

  audiojs.events.ready(function() {
    var as = audiojs.createAll();
  });

  $('.play-pause').find('.audiojs').each(function(idx, el){
	  var name  = $(el).attr('id').replace("_wrapper", "");
	  audiojs.instances[name].pause();
	});

});

Ok, two things:

you should not be pausing instances on ready
because of the find your selector must be one of the parents of the audiojs. In your case it is class .audioPlayer.
So the ideal code for you that pauses all other instances except for one clicked is actually easier since it is not a frontend application and not loading audio dynamically. Here it is:

$(document).ready(function() {
  audiojs.events.ready(function() {
    var as = audiojs.createAll();
  });
  $('.play').on('click', function(event){
    for (var prop in audiojs.instances) {
      audiojs.instances[prop].pause();
    }
    return true;
  })
});

Wow. you're fast. This is not working. What am I doing wrong. Is the jquery Version to high?

@seppentoni for the sake of not polluting this project we can take this conversation off this issue  - reach out to me via tjbladez twitter or skype.
Overall I looked at your minified js file, it still has old code (where you use replace "_wrapper").
Once you update to the latest I sent (i just confirmed it works by running it on your site manually):
  $('.play').on('click', function(event){
    for (var prop in audiojs.instances) {
      audiojs.instances[prop].pause();
    }
    return true;
  });

Okay. We figured out the problem. The above code didn't work because the audiojs events werent ready when click is run.
For future reference.
If you have multiple players on your page without any special dynamic fluff
and you need all your instances to stop when you click on another play button:
audiojs.events.ready(function() {
  var as = audiojs.createAll();
  $('.play').on('click', function(event){
    for (var prop in audiojs.instances) {
      audiojs.instances[prop].pause();
    }
    return true;
  });
});


How to read with its absolute JsonPath?

How to read and return with its absolute JsonPath?

I have implemented it myself with kotlin.


compilation fails with clang 16 when enumerated type used in AUX_WRAPPER_INST

using boost 1.79 and clang 16 I get the following compilation errors when trying to define the next/prev types of an enumerated type in the range [0,3]:
In file included from libs/python/src/converter/builtin_converters.cpp:21:
In file included from ./boost/cast.hpp:18:
In file included from ./boost/numeric/conversion/cast.hpp:33:
In file included from ./boost/numeric/conversion/converter.hpp:13:
In file included from ./boost/numeric/conversion/conversion_traits.hpp:13:
In file included from ./boost/numeric/conversion/detail/conversion_traits.hpp:18:
In file included from ./boost/numeric/conversion/detail/int_float_mixture.hpp:19:
In file included from ./boost/mpl/integral_c.hpp:32:
./boost/mpl/aux_/integral_wrapper.hpp:73:31: error: integer value -1 is outside the valid range of values [0, 3] for this enumeration type [-Wenum-constexpr-conversion]
./boost/mpl/aux_/static_cast.hpp:24:47: note: expanded from macro 'BOOST_MPL_AUX_STATIC_CAST'
#   define BOOST_MPL_AUX_STATIC_CAST(T, expr) static_cast<T>(expr)

In file included from libs/python/src/converter/builtin_converters.cpp:21:
In file included from ./boost/cast.hpp:18:
In file included from ./boost/numeric/conversion/cast.hpp:33:
In file included from ./boost/numeric/conversion/converter.hpp:13:
In file included from ./boost/numeric/conversion/conversion_traits.hpp:13:
In file included from ./boost/numeric/conversion/detail/conversion_traits.hpp:18:
In file included from ./boost/numeric/conversion/detail/int_float_mixture.hpp:19:
In file included from ./boost/mpl/integral_c.hpp:32:
./boost/mpl/aux_/integral_wrapper.hpp:72:31: error: integer value 4 is outside the valid range of values [0, 3] for this enumeration type [-Wenum-constexpr-conversion]
    typedef AUX_WRAPPER_INST( BOOST_MPL_AUX_STATIC_CAST(AUX_WRAPPER_VALUE_TYPE, (value + 1)) ) next;
                              ^
./boost/mpl/aux_/static_cast.hpp:24:47: note: expanded from macro 'BOOST_MPL_AUX_STATIC_CAST'
#   define BOOST_MPL_AUX_STATIC_CAST(T, expr) static_cast<T>(expr)
                                              ^

See https://github.com/boostorg/mpl/issues/69 and https://github.com/boostorg/numeric_conversion/issues/24.

@pdimov, thanks!
will close in favor of the other one.

Hi,
Compiling Boost 1.81 with clang 16.0.0, I still see this sort of error:

clang-vxworks.compile.c++ ../bin.v2/libs/numeric/conversion/test/traits_test.test/clang-vxworks-<IP_ADDRESS>/debug/static-only-on/target-os-vxworks/traits_test.o
In file included from ../libs/numeric/conversion/test/traits_test.cpp:19:
In file included from ../boost/numeric/conversion/conversion_traits.hpp:13:
In file included from ../boost/numeric/conversion/detail/conversion_traits.hpp:21:
In file included from ../boost/numeric/conversion/detail/is_subranged.hpp:17:
In file included from ../boost/mpl/multiplies.hpp:17:
In file included from ../boost/mpl/times.hpp:19:
In file included from ../boost/mpl/aux_/arithmetic_op.hpp:17:
In file included from ../boost/mpl/integral_c.hpp:32:
../boost/mpl/aux_/integral_wrapper.hpp:73:31: error: integer value -1 is outside the valid range of values [0, 3] for this enumeration type [-Wenum-constexpr-conversion]
typedef AUX_WRAPPER_INST( BOOST_MPL_AUX_STATIC_CAST(AUX_WRAPPER_VALUE_TYPE, (value - 1)) ) prior;
^
../boost/mpl/aux_/static_cast.hpp:24:47: note: expanded from macro 'BOOST_MPL_AUX_STATIC_CAST'
#   define BOOST_MPL_AUX_STATIC_CAST(T, expr) static_cast(expr)
^

The change https://github.com/boostorg/numeric_conversion/commit/50a1eae942effb0a9b90724323ef8f2a67e7984a
is already present.   Any ideas why it might not be effective in preventing the compile error in my environment?
I am using somewhat uncommon standard C++ libraries (from VxWorks, modified Dinkum libraries), but it looks like most of the issue is inside Boost headers...

Hard to say. I tried it on Compiler Explorer and it worked: https://godbolt.org/z/dhrscKoz1.


Investigate how we would implement CheckWrite and InferValue in mod builtin.

The above two functions are yet to be implemented in #666 . These are also necessary to write exhaustive tests for the builtin.

Closing this as completed via #666


RecurringExchange has deserialized ExchangeWorkflow field

This is related to #181.
The ExchangeWorkflow for a RecurringExchange is exposed as an immutable serialized message on descendant resources, but as a deserialized ExchangeWorkflow message on RecurringExchange itself. This is problematic when it comes to adding new API versions, as it means that new API versions would not be able to read RecurringExchange resources created in older API versions.

It turns out the RecurringExchange resource is not exposed anywhere, so no need to worry about backwards-compatibility.

Closed by #185 and world-federation-of-advertisers/cross-media-measurement#1306


Add reporters

Ideas:

[x] json
[ ] csv
[ ] tsv
[x] table (https://nodejs.org/api/console.html#consoletabletabulardata-properties) - done through json + external tools
[ ] minimal with just total numbers
[ ] aggregated exports + exports in namespace into a single group, same for types (json has this)
...
...

Closing this one. Custom reporters can be implemented. Let's just wait and see what folks come up with.


Feature request. Haskell support

a very popular and advanced language.
info: https://youtu.be/Qa8IfEeBJqk

Haskell is already supported. I'll add LSP, Linter, and Formatter support for Haskell in the next release.


Upgrade of react-router-redux broke the app

Since latest commit, I can't get the app to work correctly, the rooting seems to dysfunction.
I used the Procfile.dev with no change on the repo.
On the client side, ClientApp.js throws: Uncaught TypeError: (0 , _reactRouterRedux.routerMiddleware) is not a function
EDIT: Well, forgot to npm install...

@ridem those react-router-redux updates are crazy :confused:  Hope this is the last one, it's a micro library after all.


Schedule update

merge modified change from @UnlegitCombos

why did you revert the data changes, they had to replay the matches at a later date

why did you revert the data changes, they had to replay the matches at a later date

Because the actual date doesn't matter, but making that change breaks how the 'static' selection works
https://github.com/rocket3989/msi-group-2022/blob/main/script.js#L27


Pass through for non-images?

Can this be set up so that, in the event of a request for a non-image (.pdf for example), it simply grabs it from the bucket without attempting to optimize.  As it stands I have a lot of scattered content in my primary bucket and my entire Wordpress instance, leveraging WP Offload Media, pulls through the same CDN address so when I request .pdf's and the like I get an Internal Server Error.

It depends on how you identify your image or non image files. This can be done by creating CloudFront cache behaviours with different configurations. For example, keep the default cache behaviour as is for image transformations, and create a new cache behaviour catching .pdf extensions with a simple configuration pointing to the bucket containing pdf files.

yes thats an easy solution, let me know if it works

Boom!  Easy peasy.  Seems to work fine.  If .pdf, right to the bucket, everything else routes to Lambda.

awesome


feat(utils): Add strip_prefixes function to remove common question prefix

Description
This utility aids in standardizing question formatting, especially for user-generated data.

Added strip_prefixes function to strip specified prefixes from question items.
Included a default list of common prefixes like "Have you ever", "Do you", etc.,
allowing usage without requiring explicit prefix input each time.
Enhanced flexibility by allowing custom prefixes list as an optional argument.

Fixes #61
Type of change
Please delete options that are not relevant.

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

Testing
Please describe the tests that you ran to verify your changes. Provide instructions so we can reproduce. Please also list any relevant details for your test configuration

No tests were added for this function, as it’s a standalone utility with minimal dependencies.

Test Configuration

Library version: v1.0.0
OS: Linux
Toolchain: 3.11

Checklist

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[x] I have made corresponding changes to the documentation
[x] My changes generate no new warnings
[x] I have added tests that prove my fix is effective or that my feature works
[x] New and existing unit tests pass locally with my changes
[x] Any dependent changes have been merged and published in downstream modules
[x] I have checked my code and corrected any misspellings

Thanks Abdullah!


CLOUDP-108859: Create the OnlineArchive commands under Atlas privateEndpoints

Proposed changes

Jira ticket: CLOUDP-108859

Checklist

[x] I have signed the MongoDB CLA
[x] I have added tests that prove my fix is effective or that my feature works
[x] I have added any necessary documentation (if appropriate)
[x] I have addressed the @mongodb/docs-cloud-team comments (if appropriate)
[x] I have updated e2e/E2E-TESTS.md (if a new command or e2e test has been added)
[x] I have run make fmt and formatted my code

Further comments

LGTM


tf.train.BytesList should accept bytearray as an input type

Please make sure that this is a feature request. As per our GitHub Policy, we only address code/doc bugs, performance issues, feature requests and build/installation issues on GitHub. tag:feature_template
System information

TensorFlow version (you are using): 1.13
Are you willing to contribute it (Yes/No): I don't know how to write a *.proto file, so no

Describe the feature and the current behavior/state.
If something is called a BytesList, then I should be allowed to pass in a bytearray to it
Currently I cannot.
For example:
import tensorflow as tf
img = bytearray([1, 2, 3, 4])
print(img)
feat = tf.train.Feature(bytes_list=tf.train.BytesList(value=[img]))

Will this change the current api? How?
It will make the tf.train.BytesList class more intuitive to use
Who will benefit with this feature?
Everyone trying to do image recognition
Any Other info.

The argument value accepts list of bytes as an argument, not bytearray in tf.train.BytesList.
So here you can implement the above code -
import tensorflow as tf
img = bytes([1,2,3,4])
print(img)
feat = tf.train.Feature(bytes_list=tf.train.BytesList(value=[img]))

@iggy12345 Please let us know whether it was resolved or not? If it was not resolved, please describe the feature with more details and context. Provide a use case where the feature is useful. Thanks!

I could reproduce the issue with TF1.12. and TF1.13.1. Thanks!

@aaron-jencks TensorFlow's tf.train.BytesList expects a list of bytes objects. You could achieve this by converting your bytearray to bytes before using it in the BytesList.

import tensorflow as tf

img = bytearray([1, 2, 3, 4])  # Create a bytearray
img_bytes = bytes(img)  # Convert bytearray to bytes

feat = tf.train.Feature(bytes_list=tf.train.BytesList(value=[img_bytes]))

Please have a look at this gist.
Thank you!


Milestone 0.2.2

Pull Request Test Coverage Report for Build 21

21 of 21 (100.0%) changed or added relevant lines in 4 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 100.0%

Totals

Change from base Build 19:
0.0%

Covered Lines:
26

Relevant Lines:
26

💛  - Coveralls


refactor: rename X, X_ref to condition_pool and reference_conditions

fixes #1

This looks good. Thanks, Ben!

just wanted to clarify re: https://autonomousemp-x117217.slack.com/archives/C053US2PP4H/p1685461097655659?thread_ts=1685455830.154789&channel=C053US2PP4H&message_ts=1685461097.655659


Netherite shields cannot be disabled

Describe the bug
Netherite shields cannot be disabled by an axe, making them extremely overpowered
To Reproduce

Spawn an axe-wielding mob (vindicator or piglin brute.)
Go into a survival and hold out the netherite shield to them.

Expected behavior
For the netherite shield to be disabled.

This may be intended

does it work with a vanilla shield?
i don't think it does cause the off hand isn't targeted from shift clicking

does it work with a vanilla shield?
i don't think it does cause the off hand isn't targeted from shift clicking

Wrong issue


Same values in Dataset

I have a Dataset of logs which is defined like that:
logs = Dataset(dtype={"train_acc": float, "train_loss": float, "val_acc": float, "val_loss": float},
                         shape=(epochs,), url='./logs', mode='w')

I also have some average metrics stored in a dict, i.e.
metrics =  {'val_loss': AverageValue,   'val_acc': AverageValue, 'train_loss': .......}
metrics['val_loss'].avg   # tensor(1.2748, device='cuda:0')
metrics['val_acc'].avg    # tensor(0.5000, device='cuda:0')

To store those metrics in logs, I run:
for key, value in self.meters.items():
    self.logs[key][value.count - 1] = value.avg  #value.count is an index of a value starting from 1

But when I run
logs['val_acc'][0].numpy()
logs['val_loss'][0].numpy()
logs['train_acc'][0].numpy()
logs['train_acc'][0].numpy()

all these values are equal.

The problem was caused by caching into the same tensor at the same root path. I modified the following function by adding a custom path for each tensor and looks like it worked. After @kristinagrig06 merges this into v1.0.x branch, this issue will be solved.
def get_storage_map(fs, path, memcache=2 ** 26):
    store = _get_storage_map(fs, path)
    cache_path = os.path.join("~/.activeloop/cache/", path)
    return Cache(store, memcache, cache_path)


How to resolve error MBEDTLS_ERR_X509_INVALID_FORMAT ?

Refer to https://github.com/Infineon/optiga-trust-m/issues/25
Hi @Darsh-Dev you are welcome
this tool "AWS CertificateConfigurator.html" is required only if you work with the software only security and isn't required for the hardware powered crypto.
You need to follow this guideline
Please feel free to ask questions if something isn't clear here

Hi @ayushev,
Unfortunately, I encountered the same error.
As discussed in the mentioned link I did the steps of Option #2: Onboard Private Key Generation and added keyCLIENT_CERTIFICATE_PEM and keyJITR_DEVICE_CERTIFICATE_AUTHORITY_PEM.
I Encountered "Warning: no persistent storage is available for the JITP certificate. The certificate in aws_clientcredential_keys.h will be used instead" but again vDevModeKeyProvisioning() did work well but while in TLS_Connect had same (MBEDTLS_ERR_X509_INVALID_FORMAT) error due to MBEDTLS_ERR_ASN1_OUT_OF_DATA.
One thing i noted here, while performing vDevModeKeyProvisioning() ...> xProvisionCertificate() it tries to destroy objects (xDestroyProvidedObjects) before creating new if exists, but I had to comment xDestroyProvidedObjects because it seemed stuck(hangs)in i2c repeat condition (?!)(which I found no where mentioned ), and after commenting this I got vDevModeKeyProvisioning() successful call return.  could this be an issue?
Apart from above, I m using LTE-M to communicate and to enable demo with this, in iot_demo_freertos.c file before running demoEntryPoint() I added credentials and interface by my own (cause LTE is not supported yet) as per below
        pNetworkInterface = IOT_NETWORK_INTERFACE_AFR;
        connectionParams.pHostName = clientcredentialMQTT_BROKER_ENDPOINT;
        connectionParams.port = clientcredentialMQTT_BROKER_PORT;

        if( connectionParams.port == 443 )
        {
            credentials.pAlpnProtos = socketsAWS_IOT_ALPN_MQTT;
        }
        else
        {
            credentials.pAlpnProtos = NULL;
        }
        credentials.maxFragmentLength = 0;
        credentials.disableSni = false;
        credentials.pRootCa = keyJITR_DEVICE_CERTIFICATE_AUTHORITY_PEM;
        credentials.rootCaSize = sizeof(keyJITR_DEVICE_CERTIFICATE_AUTHORITY_PEM);
        credentials.pClientCert = keyCLIENT_CERTIFICATE_PEM;
        credentials.clientCertSize = sizeof( keyCLIENT_CERTIFICATE_PEM );
        credentials.pPrivateKey = NULL;
        credentials.privateKeySize = 0;

        /* Run the demo. */
        status = demoEntryPoint( true,
                                 clientcredentialIOT_THING_NAME,
                                 &( connectionParams ),
                                 &( credentials ),
                                 pNetworkInterface );

Above now with rootCA and device certificate.
So is there anything I might have missed.
Thanks

Hi,
One more update from my side.
I wrote a sample test code in same mbedtls version source file as below
void checkTLS( void )
{
	int pkret;
	mbedtls_x509_crt _cacert;
	mbedtls_x509_crt_init(&_cacert);
	pkret = mbedtls_x509_crt_parse(&_cacert, (const unsigned char *) keyCLIENT_CERTIFICATE_PEM,
	                           sizeof (keyCLIENT_CERTIFICATE_PEM));
	if(pkret != 0) {
			printf("\n x509 certificate parsing, error=%d", pkret);
	}
	else if(pkret == 0) {
		printf("\n x509 certificate parsed, pass,\n");
	}
}

This function returns 0 and passes the parsing for the same certificate generated in the above process.
To validate further I intensely put the error-prone certificate and got 0x2180 error.
Thanks.

Please have a look on the updated manual https://github.com/Infineon/amazon-freertos/commit/ce23016da800951ab563b7bcd9217f27891a43d3
You actually shouldn't provision certificate every run, this is only a one-time action.
YOu can also try out the Multi-Account Registration, you sample should be equiped with the default certificate from infineon which can be used for this.

Hi,
This is mentioned in the earlier link you just provided and I did follow that only for once.
Then after I made keyprovisioningFORCE_GENERATE_NEW_KEY_PAIR to 0
But in that one shot itself it is behaving like that and my after error it closes my socket with error and not further work.
Thanks.

If you have empty certificates and keys defined, and no generate_new_key_pair macro, then you can't come to the function ProvisionCertificate for every run.
Sorry, I'm a bit lost.
Can you help me to understand what is right now the problem.
The name of the ticket is a an error of the mbedTLS, the certificate you have generated and attached beforhand can't be used by trust-m for freertos, as it's RSA based certificate. This guidance explains how to genearte an ECC based certificate.
So do you still have the same problem as you described originally, or it is a different one?

Hi,
Below is the sequence I followed,

Followed this link
keyprovisioningFORCE_GENERATE_NEW_KEY_PAIR made 1 and got 6 lines of Device public key
Created root CA and registered with AWS IoT and activated
Added deviceCert.pem and rootCA in in keyCLIENT_CERTIFICATE_PEM and keyJITR_DEVICE_CERTIFICATE_AUTHORITY_PEM respectively
Created thing and attached policy in AWS IoT and added above-generated deviceCert.pem to AWS IoT console while creating a thing.
keyprovisioningFORCE_GENERATE_NEW_KEY_PAIR made 0
Run code into device and it performed vDevModeKeyProvisioning() the first time and got the error afterward in MBEDTLS
Made keyJITR_DEVICE_CERTIFICATE_AUTHORITY_PEM, keyCLIENT_CERTIFICATE_PEM, and keyCLIENT_PRIVATE_KEY_PEM macros in the configuration file for keys are defined to "" (empty string with quote ) in aws_clientcredential_keys.h and keyprovisioningFORCE_GENERATE_NEW_KEY_PAIR 0
Again run the code but this time it vDevModeKeyProvisioning() is passed without doing anything (?!)
Encounterd  in DEMO_RUNNER_RunDemos while hitting mbedtls_x509_crt_parse().

Is there anything I might have missed?
Furthermore, I am no more using the above-mentioned certificate but using the one generated from this link.
Thanks

Thank you for the summary! In general the flow look ok, except for errors, they shouldn't appear.
The step 6. IS it that error of fail to pars a certificate? Can you put here again what is the line you stuck, and what is exatcly the input ti the mbedtls prior recieving the error?

@spalishchuk you recently followed the same flow, didn't you. Is it correct? Did you experience such errors?

@Darsh-Dev may you attach here file aws_clientcredentional_keys.h at step 4.
*notice: every bootup with keyprovisioningFORCE_GENERATE_NEW_KEY_PAIR 1 in firmware will make previous device certificate unactual.
May You enable log for mbedTLS (define MBEDTLS_DEBUG_C) and attach file here. Problem appear when you trying to handshake with server or in vDevModeKeyProvisioning()?
ERROR: Object with label '0xE0E9' not found.
Write certificate...
Warning: no persistent storage is available for the JITP certificate. The certificate in aws_clientcredential_keys.h will be used instead.
I have the same problem, in my case it work properly.

Also, did you register rootCA at AWS?

Hi @spalishchuk  @ayushev,
From the code what I believe vDevModeKeyProvisioning() is just communicates with Trus-m and creates a label, session, and object, TLS will not come in the picture here.
But one it starts DEMO_RUNNER  it will Go to SOCKETS_Create and then SOCKETS_Connect.
Here Socket connects call will call TLS_Connect and in this, it will parse x509 certificate.
After performing steps as per Option #2: Onboard Private Key Generation now I am getting No-Low-Level-Code error after once time provisioning done.
The error I am getting is at "failed to parse custom server certificates" on line number 824, while mbedtls_x509_crt_parse()  with MBEDTLS_ERR_X509_INVALID_FORMAT as explained earlier in TLS Negotiation.
I tried to enable the logs but unfortunately, the logging task is crashing currently.
And yes rootCA is registered with AWS as per step no:3
Thanks.

@Darsh-Dev
Can you please provide what exactly do you feed to the mbedtls_x509_crt_parse function as a certificate. This might shed some light on the problem.

Hi,
While TLC_Connect this is the function sequence I am seeing from iot_tls.c ,

prvInitializeClientCredential()
xFindObjectWithLabelAndClass() // Get the handle of the device private key which is result = ok
C_GetAttributeValue() // Query the device private key type , it selects here "MBEDTLS_PK_ECKEY"
mbedtls_pk_info_from_type() // Map the mbedTLS algorithm to its internal metadata
prvReadCertificateIntoContext() // here we are encountring INVALID_FORMAT error for parsing

     prvReadCertificateIntoContext( pxCtx, pkcs11configLABEL_DEVICE_CERTIFICATE_FOR_TLS,
                                                 CKO_CERTIFICATE,
                                                 &pxCtx->xMbedX509Cli );

Above point 5th function (prvReadCertificateIntoContext) interns call below sequance,

xFindObjectWithLabelAndClass() //Get the handle of the certificate
C_GetAttributeValue() //Query the certificate size an malloc
C_GetAttributeValue() //Export the certificate
mbedtls_x509_crt_parse //Decode the certificate // from here we are getting above 5th call's error.

        xResult = mbedtls_x509_crt_parse( pxCertificateContext,
                                          ( const unsigned char * ) xTemplate.pValue,
                                          xTemplate.ulValueLen );

Here in this configuration

vDevModeKeyProvisioning() is enabled (i.e non commented),
keyprovisioningFORCE_GENERATE_NEW_KEY_PAIR is 0 (i.e not genrating public key from device)

If you have can you tell the expected call flow for iot_tls.c ?
Thanks,

Is your device certificate looks like this

Hi,
Thanks for the replay,

Here I even printed the contents and they are mentioned below in string format which seemed suspectable.
)*+,-./0123456789:;<=>?ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_;
!@"#$%&'()*+,-./0123456789:;<=>?ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_;
!@"#$%&'()*+,-./0123456789:;<=>?ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_;
!@"#$%&'()*+,-./0123456789:;<=>?ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_;
!@"#$%&'()*+,-./0123456789:;<=>?ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_;
!@"#$%&'()*+,-./0123456789:;<=>?ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_;
!@"#$%&'()*+,-./0123456789:;<=>?ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_;
!@"#$%&'()*+,-./0123456789:;<=>?ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_;
!@"#$%&'()*+,-./0123456789:;<=>?ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_;
!@"#$%&'()*+,-./0123456789:;<=>?ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_;

Also currently in my aws_clientcredential_keys.h file currently all certificate macros are assigned as "" (i.e. empty string ) as suggested in the guide after one-time provision using trust-m.
#define keyCLIENT_CERTIFICATE_PEM ""
#define keyCLIENT_PRIVATE_KEY_PEM ""
#define keyJITR_DEVICE_CERTIFICATE_AUTHORITY_PEM  ""
Any suggestions?
Thanks

Hi, bumping in from the other threads that were opened about this.
@Darsh-Dev what version of the code are you running?

After performing steps as per Option #2: Onboard Private Key Generation now I am getting No-Low-Level-Code error after    once time provisioning done.

No-Low-Level-Code is a log from a newer version of A:FR, to me it looks like the Optiga M branches are based on the 202002.00 release of A:FR, which does not have that log message.

@Darsh-Dev length of certificate is strange (1719 bytes). You may check in function in file oit_tls.c prvReadCertificateIntoContext()->

Then in C_GetAttributeValue() look at PKCS11_PAL_GetObjectValue(). In my case xPalHandle = 5, returned ulLength = 738.

If Object read ok, and definition of pkcs11configLABEL_DEVICE_CERTIFICATE_FOR_TLS is not touched, I recomend to do provisioning again (keyCLIENT_CERTIFICATE_PEM and keyJITR_DEVICE_CERTIFICATE_AUTHORITY_PEM ). Do you using ECC keys or RSA?

@Darsh-Dev Do do your using PAL I2C layer from demo or own? Also, your can check writing and reading objects to optiga at label 0xE0E1, 0xE0E8.

optiga-trust-m-fb662c7c208c4f3b321e604b04a55f7796beed13.zip

Hi,
I tried to write and read the 0xE0E1 and got error Failed with return value - 0x8007, after debugging, found that metadata for 0xE0E1 OID was causing issue while running example_optiga_util_protected_update() in optiga self-test.
I did run this test to ensure optiga functionality at the early porting stage and it was passing all the 21 test cases.
To resolve the above issue I overwrite the below sample metadata for 0xE0E1.

static uint8_t metadata [] = {
		0x20, 0x08, // TL metadata TLV-Object
		0xD1, 0x01, 0x00, // TLV Read = ALW
		0xD0, 0x03, 0xE1, 0xFC, 0x07 // TLV Change = LcsO < op
};

After doing the above I can write and read 0xE0E1 without any error and parsing of device certificate got succeeded.
But still, I m facing TLS_HANDSHAKE issue and got below error.
0 210 [Tmr Svc]
Wi-Fi module initialized. Connecting to AP...
.1 7961 [Tmr Svc]
Wi-Fi Connected to AP. Creating tasks that use network...
2 7973 [Tmr Svc]
IP Address acquired <IP_ADDRESS>
3 8203 [iot_thread]
[INFO ][DEMO][8203] ---------STARTING DEMO---------

4 8205 [iot_thread]
[INFO ][INIT][8205] SDK successfully initialized.
.5 13234 [iot_thread]
[INFO ][DEMO][13234] Successfully initialized the demo. Network type for the demo: 1
6 13234 [iot_thread]
[INFO ][MQTT][13234] MQTT library successfully initialized.
7 13234 [iot_thread]
[INFO ][DEMO][13234] MQTT demo client identifier is LTE_Thing (length 9).
.8 16064 [iot_thread]
ERROR: Handshake failed with error code -30592
9 16066 [iot_thread]
[ERROR][NET][16066] Failed to establish a new connection. Socket status: -1002.
10 16066 [iot_thread]
[ERROR][MQTT][16066] Failed to establish new MQTT connection, error NETWORK ERROR.
11 16066 [iot_thread]
[ERROR][DEMO][16066] MQTT CONNECT returned error NETWORK ERROR.
12 16066 [iot_thread]
[INFO ][MQTT][16066] MQTT library cleanup done.
13 16066 [iot_thread]
[ERROR][DEMO][16066] Error running the demo.
14 16075 [iot_thread]
[INFO ][INIT][16075] SDK cleanup done.
15 16075 [iot_thread]
[INFO ][DEMO][16075] -------DEMO FINISHED-------

I tried this demo on XMC4800 IoT Connectivity Kit as mentioned here.
Also please find the attached log of mbedtls failure debug logs
mbedtlsLogs.txt
Any suggestions?
Thanks

Hi, it's good!
At the end of file ssl_cli.c you can find a state machine of handshake process. Also you can try to comment this line in code https://github.com/Infineon/amazon-freertos/blob/ce23016da800951ab563b7bcd9217f27891a43d3/vendors/infineon/secure_elements/pkcs11/iot_pkcs11_trustm.c#L2511

@Darsh-Dev
this is good step forward!
The error you receive is form mbedTLS, it is likly an fatal alert sent by the server. To understand what exactly has been sent eihter a sniffer on the TLS session, or emable logs on your board. I do see your answer some time ago:

I tried to enable the logs but unfortunately, the logging task is crashing currently.

YOu can try to enable less logs by enabling mbedtls logs
and reducing the level of verbosity here  from 4 to 3 or even 2.
Another reason why logging crashes is that you didn't provide enough memory to the logging task

Hi,
So i would suggest to provide a routine or stuff in optiga self test code, which should server as de-init for meta data and undo what it did in initialization or write state stage.
For the first time user perspective self test will be use by everyone in porting's initial stage to validate.
Thank you for the support everyone.
Thanks.

hi @Darsh-Dev
you are welcome and your feedaback is already going to be implemented soon. The example will bring the metadata back in the original state.
Regarding this issue, are you going to provide the logs or did you solve it?

Hi,
I solved it by running optiga self test again but this time i wrote below meta data in example_optiga_util_write_data.c file .
static uint8_t metadata [] = {
		0x20, 0x08, // TL metadata TLV-Object
		0xD1, 0x01, 0x00, // TLV Read = ALW
		0xD0, 0x03, 0xE1, 0xFC, 0x07 // TLV Change = LcsO < op
};

I m not much aware weather the above written metadata is expected or not, but in my case it worked.
Now after writing this meta data if i switched to aws_demo it moved ahead.
Thanks


mm guide

dont work as inteded, just notify stuns, lines, pulls and jumps

Hi. For the complete work of the guide, the support of the packet S_DUNGEON_EVENT_GAGE map is needed.
This map file you can be install from in the https://github.com/PsykoDev/Full-Opcode-Tera-EU-NA near future, I think.
At the moment this map is not yet available.

if you're so trap that you need an immediate solution, or just want to use a mod instead of a map file: https://github.com/ambushing/pls-learn-manglemire

Thanks for you solution. We add this code to the guide. Issue closed.


Addons - Labels, Annotations, Tolerations cleanup

See commit messages for details

Thanks - please don't merge yet, I'll merge when ready.


GraphHopper parsing fails with not encoded points

Here's what I did

I set points_encoded=False to verify that during parsing of points in GraphHopper response are always decoded as polyline even if points_encoded=False
url:
http://localhost:8989/route?vehicle=car&point=50.046531%2C14.514527&point=50.068452%2C14.508087&points_encoded=false&debug=true
Parameters:
{
  "headers": {
    "User-Agent": "routingpy/v0.3.3",
    "Content-Type": "application/json"
  },
  "timeout": 60
}

Here's what I got

Key error from _trans / _decode

Here's what I was expecting
Geometry should be parsed from the JSON LineString

Here's what I think could be improved
Decoding from polyline should not happen if the response contains points_encoded=False

yeah right.. it always tries to decode the points. will fix. thanks for the hint!


clawsMail: 3.12.0 -> 3.13.0

Already running on my machine for a few weeks.
cc @khumba

Merged, thanks!

:+1: thanks.


Check test coverage

Controllers for grants.show and submissions.show do not have unit tests.

On-going work


Does not include other node_modules packages in compiling

Preflight Checklist

[x] I have read the contribution documentation for this project.
[x] I agree to follow the code of conduct that this project follows, as appropriate.
[x] I have searched the issue tracker for a bug that matches the one I want to file, without success.

Issue Details

Electron Packager Version:
*15.4.0
Electron Version:
*16.0.4
Operating System:

Microsoft Windows 10 Pro

Last Known Working Electron Packager version::

None

Expected Behavior
It should be able to include node_modules packages in compiling Including express, discordnitro & other NPM packages.
Actual Behavior
After the compiling, run the compiled EXE file and It should return an error Cannot find module 'discordnitro'
To Reproduce

Open CMD and type this command create-electron-app reproduce, Just an example.
cd to the directory & install discordnitro. npm i discordnitro
Import the discordnitro in the file.
cd to src and build it. cd src && electron-packager ./ reproduce --platform=win32 --arch=x64
Run the compiled EXE file and It should return an error Cannot find module 'discordnitro'.

Additional Information
None

Hi @I2rys,
I got the same or similar problem. After research I found this change https://github.com/electron/electron-packager/pull/819 since then you have to take care of the pruned node_modules by yourself.
See also the readme "usage"

...Be careful not to include node_modules you don't want into your final app. If you put them in the devDependencies section of package.json, by default none of the modules related to those dependencies will be copied in the app bundles. (This behavior can be turned off with the prune: false API option or --no-prune CLI flag.) In addition, folders like .git and node_modules/.bin will be ignored by default. You can use --ignore to ignore files and folders via a regular expression (not a glob pattern). Examples include --ignore=.gitignore or --ignore=".git(ignore|modules)"...

an prune:false worked for me


Updater doesn't suggest Nextcloud 17

Hi,
Nextcloud does not propose the update from 16 to 17 on the stable channel via the web interface. It tells me I'm up-to-date:

On the beta channel, it seems to work:

The last stable should be 17.0.0 according to the website:

In config.php:
latest production is 16: https://github.com/nextcloud/updater_server/blob/master/config/config.php#L108
latest stable is 16: https://github.com/nextcloud/updater_server/blob/master/config/config.php#L323
Thank you!

This is correct, as you can read in the announcement we roll out new releases slowly.

From https://nextcloud.com/blog/nextcloud-17-brings-remote-wipe-collaborative-text-editor-and-next-generation-secure-watermarking/
"note that we roll out new versions incrementally and usually wait a few weeks before we do so. This helps us catch any problems before it impacts too many users! If you wait for the updater to notify you, it can take some weeks. If you don’t want to wait, you can switch to the Beta channel, refresh the page, update to 17, and switch back!"
Thank you for pointing this out, sorry for the noise!

https://github.com/nextcloud/updater_server/pull/270
We've decided to delay until .1

All my servers on production still report that 16.0.7 is the newest? I see in config/config.php that the release of 17.0.1 should have bumped it the rollout to 100% for that version and channel. Am I missing something here?


RLocalCacheMap remove method hangs if called inside transaction

Expected behavior
calling remove should not hang
Actual behavior
calling remove hangs for the transaction timeout duration and then commit will fail
Steps to reproduce or test case

        final LocalCachedMapOptions opts = LocalCachedMapOptions.defaults();
        final Map externalStore = new HashMap<>();
        externalStore.put("hello", "world");
        opts.loader(new MapLoader() {
            @Override
            public String load(String key) {
                return externalStore.get(key);
            }

            @Override
            public Iterable loadAllKeys() {
                return externalStore.keySet();
            }
        });

        RLocalCachedMap lcMap = redissonClient.getLocalCachedMap("lcMap", opts);

        // Uncomment the below line and hang will be avoided
        // lcMap.get("hello");

        RTransaction tx = redissonClient.createTransaction(TransactionOptions.defaults());
        RLocalCachedMap txMap = tx.getLocalCachedMap(lcMap);

        // Below line will hang for tx timeout period
        txMap.fastRemove("hello");

        // Commit will fail because tx has timed out
        tx.commit();

Redis version
7.0.0
Redisson version
3.23.0
Redisson configuration
See above test case

The issue is that BaseTransactionMap#fastRemoveOperationAsync line 470 locks the key that is to be removed using the same thread that called fastRemove.
Then for some reason on line 487 you call getAllAsync, I think you are trying to get the # of keys removed, but it seems like the logic here is repeated above.
Anyways, from there eventually you wind up in RedissonMap#loadAllMapAsync, which is trying to load the keys from redis. Here you are creating a new ForkJoinPool to execute on. This means that when you finally try to acquire the lock on the key again on line 1722 RedissonMap#loadValue you will be executing on a different thread, so that isn't going to work.
I don't understand why you are creating the new ForkJoinPool. Everywhere loadAllMapAsync is called you pass 1 as the argument for parallelism. It seems like we could remove this extra ForkJoinPool and avoid these problems. What do you think?

Hi, any solution for this issue, i'm also facing the same


Parse exponent literal as number

Resolve part of https://github.com/sqlparser-rs/sqlparser-rs/issues/610
Allows parsing of exponent literals as numbers, provided the dialect does not allow an identifier to being with a number (Hive dialect). Will need more thinking on how to handle that specific case.

Thank you @Jefffrey

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

65 of 69 (94.2%)  changed or added relevant lines in 2 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.04%) to 86.373%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

src/tokenizer.rs
43
45
95.56%

tests/sqlparser_common.rs
22
24
91.67%

Totals

Change from base Build<PHONE_NUMBER>:
0.04%

Covered Lines:
12835

Relevant Lines:
14860

💛  - Coveralls


[test] Re-enable test/SourceKit/CodeFormat/indent-implicit-getter.swift

This was disabled a long time ago due to a crash but I cannot reproduce such a crash currently.
rdar://26484736

@swift-ci Please test


[pybind] Changed union set_* to ensure_*, added equality operators, misc improvements

Changes

Adds operator== and operator!= to structs and object API tables
Fixed bool fields appearing as python int type in method arguments instead of bool.
Fixed struct array fields not being writable
Mutating a packed flatbuffer scalar field now throws an error if unsuccessful (i.e. there is no memory backing the field)

In c++, the mutate_<field> method returns false in such a case

Ensure no code generation for vector of union fields -- support for this will be added in a future PR
Changed set_<field> to ensure_<field> for union fields; see below for discussion.

A unit test in project-x tests this behavior; not included in this repo as we don't have any CI setup for it, and there is no standard devcontainer setup to run it locally. I'll send this out in a separate internal PR.
ensure_<field> for unions
Previously, we generated a set_<field_name>(<UnionEnumType>) to internally allocate a union field (as opposed to the regular way of copying a subtype instance through assignment). This method was somewhat cumbersome:

This is the only place in the generated code that uses the union enum values. The user needs to understand which enum values correspond to which message types.
This always resets the field to a default-initialized sub type.

This changes the method to be ensure_<field_name>(subtype). This has a similar purpose as ensure_<field_name>() for non-union optional fields, except the specific subtype must be specified. This has the behavior of:

If the field is unset, allocates a new instance of subtype.
If the field was already set, throws an error if the existing subtype does not match subtype.
Returns the instance.

The python type object is converted to the underlying union enum under the hood; the user does not need to use or know about the union enum values.

a = FooT()
a.b  # type is BarT | BazT | None
b = a.ensure_b(BazT)  # type is always BazT

Caveat: pybind currently doesn't provide the information to type systems that ensure_b(T) constrains the return type to T. Most type checkers will think ensure_b(T) -> BarT | BazT | None, so an additional cast or type assertion may be necessary to appease the type check.
Example generated code looks like:
  monster_t.def(
      "ensure_equipped",
      [](MyGame::Sample::MonsterT &self, py::type union_type) -> std::optional<std::variant<MyGame::Sample::WeaponT*>> {
        MyGame::Sample::Equipment union_enum;
        if (union_type.is(py::type::of<MyGame::Sample::WeaponT>())) {
          union_enum = MyGame::Sample::Equipment_Weapon;
        }
        else {
          throw py::value_error(py::str("{} is not part of union Equipment").format(union_type));
        }
        bool holds_none = self.equipped.type == MyGame::Sample::Equipment_NONE;
        if (!holds_none && self.equipped.type != union_enum) {
          throw py::value_error(py::str("Union field is already set to {}").format(self.equipped.type));
        }
        switch (union_enum) {
          case MyGame::Sample::Equipment_NONE:
            return std::nullopt;
          case MyGame::Sample::Equipment_Weapon:
            if (holds_none) self.equipped.Set(MyGame::Sample::WeaponT());
            return self.equipped.AsWeapon();
          default:
            throw std::runtime_error("Invalid variant type");
        }
      }, py::return_value_policy::reference_internal);

A unit test in project-x tests this behavior; not included in this repo as we don't have any CI setup for it, and there is no standard devcontainer setup to run it locally. I'll send this out in a separate internal PR.

+1 let's keep all of our tests in project-x if we can.


Scheduling GPU resources for deep learning workload based on GPU topology

Expect further GPU support for deep learning training workload. GPU placement is important to deep learning job for better efficiency.
Same example as described in YARN-7481
a 2-GPU job runs on gpu {0,1} could be faster than run on gpu {0, 7}, if GPU 0 and 1 are under the same PCI-E switch while 0 and 7 are not.
We expect kube-arbitrator can also support this kind of fine-grained GPU placement.

/assign

@suleisl2000 , yes, that feature seems interesting but how about the priority to you?

@k82cn TuSimple would like to use kube-arbitrator gang-scheduling in our deep learning hybrid cloud for distributed training, but it doesn’t support GPU topology aware scheduling at present. This feature can benefit to our training workload and it is high priority to us.

@hpejustin Firmament is an interesting project and I knew it about two years ago. It is great if we can work on some interesting things and it is better if we can have a chat offline.

It's need gpu-device-plugin cooperation


Dismissing the modal programmatically

Description
Is there a way to dismiss the modal programmatically? I see that there are panModalWillDismiss and panModalDidDismiss, but how would I go around dismissing it, for example using panModalDismiss()?
What type of issue is this? (place an x in one of the [ ])

[ ] bug
[ ] enhancement (feature request)
[x] question
[ ] documentation related
[ ] testing related
[ ] discussion

Requirements (place an x in each of the [ ])

[x] I've read and understood the Contributing guidelines and have done my best effort to follow them.
[x] I've read and agree to the Code of Conduct.
[x] I've searched for any related issues and avoided creating a duplicate issue.

PanModal version: 1.2.5
iOS version: 13.2.2

I didn't think about accessing presentedViewController
self.presentedViewController?.dismiss(animated: true, completion: nil)

Closing the issue


[BUG] Steve VAI API returns 500 error when filtering secrets by label selectors

Rancher Server Setup

Component
Version / Type

Rancher version
v2.9-vai-temp-5.2.24

Installation option
Helm (high availability)

RKE binary version used
v1.5.7

If Helm Chart k8s cluster
v1.28.7

Cert Details
external tls aws acm

Docker version
20.10.7, build f0df350

Helm version
v2.16.8-rancher2

Downstream cluster type
n/a

Downstream K8s version
n/a

Authentication providers enabled
local

Logged in user role
admin

Browser type
Opera GX

Browser version
LVL5 (core: 109.0.5097.93) (x86_64)

Dashboard
pagination-alpha-dev 96e23ad

Webhook version
rancher/rancher-webhook:v0.5.0-rc8

Describe the bug
Steve API secrets endpoint returning 500 error when filtering by label selectors. SQL logic error suggests issue with database query processing the label selectors. Works correctly on v2.9-head, but broken on current version.

Tested Versions

Rancher version
Bug Present on This Version?

v2.9-vai-temp-5.2.24
YES BUG PRESENT ON THIS VERSION

v2.9-3c48a195381ad55f9fef7e9bf32b1593d43368ca-head
NO BUG IS NOT PRESENT ON THIS VERSION

Bug Frequency
Consistent (10/10)

Frequency
Selected Option

Consistent (10/10) - A consistent bug can be replicated every time the test is executed.
✅

Frequent (7/10)- A frequent bug can be replicated like 7 out of 10 times when a test is replicated

Occasional (5/10) - Occasional bug is more hard to replicate than a frequent bug.

Once thus far, twice thus far - Few bugs cannot be reproduced every time you run the test.

Associated API Calls & Responses

#
Request URL
Request Method
Status Code

1
{rancher-url}/v1/secrets?filter=metadata.labels.key1=value4&filter=metadata.labels.key2=value3
GET
500

More builds (v2.9.0-alpha5 and newer) give a better description of what is actually happening:
% curl --insecure -X GET \
  -H "Authorization: Bearer token-XXX" \
  "https://localhost:8444/v1/secrets?filter=metadata.labels.key1=value4&filter=metadata.labels.key2=value3"

{"type":"error","links":{},"code":"InvalidBodyContent","message":"column is invalid [metadata.labels.key1]: supplied column is invalid","status":422,"type":"error"}

At the moment, Steve does not support filtering by labels - this is expected per the EPIC issue to come to a later version.
Until then filtering is only supported for a subset of attributes, which currently is:

metadata.name, metadata.namespace and metadata.timestamp for any resource kind
a short list of hardcoded attributes for a selection of specific types listed here: https://github.com/rancher/steve/blob/22a06dd14f51e09ebfaa6277ec9424d8c1cc40e9/pkg/stores/sqlproxy/proxy_store.go#L52-L58
the special string metadata.fields[N], with N starting at 0, for all columns displayed by kubectl get $TYPE. For example secrets have "metadata.fields[0]", "metadata.fields[1]" , "metadata.fields[2]", and "metadata.fields[3]" respectively corresponding to "name", "type", "data", and "age"

Any other column name is expected to return 422.


[DO NOT MERGE] Test fixing tests with logging

This sounds stupid but seems to pass

So this is now passing tests, @ChrisRackauckas I have no idea how the behavior can be so weird. Cassette issue?

Seems to be a blow up in compile times due to method invalidations. One of the signature changes is causing more methods to be invalidated at using time to cause more precompilation to happen, triggering failure. I think we should make sure we don't just change tests around that.

I'm merging this since the compile time regressions seem to just be outside of here? and so this fixes master.


Add photostream to front page

This replaces the OPI photo from 3 years ago.

Use flickrit as backend
Pulls 100 most recent photos from flickr account
Removed "about us" page, replaced with contact page
At some point the future, we'll work with the historians about selecting which photos to display

This replaces #62

@epelz This should be ready for review

Seems good; merging now.

It's now live.

:+1:


barrierCoversButton: false property not working

The barrierCoversButton not removes overlaying barrier from the dropDownMenu, so any other widgets can't be tapped while the menu is expanded.
Doctor:
✓] Flutter (Channel stable, 3.22.0, on macOS 13.6.6 22G630 darwin-x64, locale ru-UA)
• Flutter version 3.22.0 on channel stable at /Users/chaos/dev/flutter
• Upstream repository https://github.com/flutter/flutter.git
• Framework revision 5dcb86f68f (3 weeks ago), 2024-05-09 07:39:20 -0500
• Engine revision f6344b75dc
• Dart version 3.4.0
• DevTools version 2.34.3
[✓] Android toolchain - develop for Android devices (Android SDK version 34.0.0)
• Android SDK at /Users/chaos/Library/Android/sdk
• Platform android-34, build-tools 34.0.0
• Java binary at: /Applications/Android Studio.app/Contents/jbr/Contents/Home/bin/java
• Java version OpenJDK Runtime Environment (build 17.0.7+0-17.0.7b1000.6-10550314)
• All Android licenses accepted.
[✓] Xcode - develop for iOS and macOS (Xcode 15.1)
• Xcode at /Applications/Xcode.app/Contents/Developer
• Build 15C65
• CocoaPods version 1.15.2
[✓] Chrome - develop for the web
• Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome
[✓] Android Studio (version 2023.1)
• Android Studio at /Applications/Android Studio.app/Contents
• Flutter plugin can be installed from:
🔨 https://plugins.jetbrains.com/plugin/9212-flutter
• Dart plugin can be installed from:
🔨 https://plugins.jetbrains.com/plugin/6351-dart
• Java version OpenJDK Runtime Environment (build 17.0.7+0-17.0.7b1000.6-10550314)
[✓] IntelliJ IDEA Ultimate Edition (version 2024.1)
• IntelliJ at /Applications/IntelliJ IDEA.app
• Flutter plugin version 79.0.3
• Dart plugin version 241.15845
[✓] VS Code (version 1.89.1)
• VS Code at /Applications/Visual Studio Code.app/Contents
• Flutter extension version 3.88.0
[✓] Connected device (2 available)
• macOS (desktop) • macos  • darwin-x64     • macOS 13.6.6 22G630 darwin-x64
• Chrome (web)    • chrome • web-javascript • Google Chrome 125.0.6422.112
[✓] Network resources
• All expected network resources are available.
• No issues found!
exit code 0
Plugin version: dropdown_button2 3.0.0-beta.16 (from pub.dev)
Code:
class DashboardScreen extends StatelessWidget {
  const DashboardScreen({super.key});

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      backgroundColor: ColorName.white,
      body: Center(
          child: Column(
        children: [
          IconButton(
              onPressed: () {
                print('a');
              },
              icon: Icon(Icons.abc)),
          DropdownButton2(
            barrierDismissible: false,
            barrierCoversButton: false,
            dropdownStyleData: DropdownStyleData(useRootNavigator: false),
            buttonStyleData: ButtonStyleData(),

            items: [
            DropdownItem(
              child: Text('1'),
              value: '1',
            )
          ], onChanged: (v) {})
        ],
      )),
    );
  }
}

Here's the video sample.
https://github.com/AhmedLSayed9/dropdown_button2/assets/55855946/0781cf06-319d-4259-a45b-10938c6d759c

I also encountered the same issue as you.
Hi @AhmedLSayed9, how to i can tap widgets behind the barrier of dropdown menu? Thank you!

You can't tap widgets outside the dropdown menu while it's open.
That's the expected behavior, so I'm closing this.

barrierCoversButton specifies whether the modal barrier should cover the dropdown button or not.
To see the difference, try setting some barrierColor and set barrierCoversButton on/off.


Infinite loop on method occurring_at?

Hello,
Small test to show a loop bug on method occurring_at? (or I am missing something stupid to make it work right)
Schedule definition
Every 60 minutes on Thursdays on the 14th, 15th, and 16th hours of the day on the 0th minute of the hour
The yaml code
---
:start_date: 2011-11-16 11:31:58.441381000 -02:00
:rrules:
- :rule_type: IceCube::MinutelyRule
  :interval: 60
  :until: !!null
  :count: !!null
  :validations:
    :day:
    - 4
    :hour_of_day:
    - 14
    - 15
    - 16
    :minute_of_hour:
    - 0
:exrules: []
:rdates: []
:exdates: []
:duration: 3600
:end_time: !!null

When running:
schedule.occurring_at? Time.new(2011,11,17,15,30)

It never stops... :S
Any ideas?!
Cheers

Yes, putting it hourly might be a better approach. But it still not working unless I setup an end date.

I have a fix for this in the v0.7 branch which isn't quite stable yet, but will be in a few days and then will head into master.  There's also a bunch more speed improvements there - I'll update this ticket when it gets merged in - thanks again for the report

version 0.7.0 just merged in and pushed up.
give it a shot at your earliest convenience and please let me know if you have any issues


NominationPools selection

members count style looks wrong - font size too large
no search button

search button in other PR


Prepare email for inviting people to use the new dashboard

It should be something for the first users we activate the new dashboard.
cc / @vuxita @andrewxhill @brittanymicek

hey!
Just a couple of questions:

Can we see the features or design of the new dashboard?
When will this be activated?

We'd need the list of users that will have it activated imported in Mailchimp.
Thanks!
Eva

hey @vuxita what is your cartodb username? I'll activate it right now

it's vuxita, thanks!

Done, enjoy :_)

hey @brittanymicek - do you have access to the new dashboard? So you can start exploring it and we can work on the email content.

Moved from El Soto to Baeza.

Closing this. This will not be needed I think.


[Suggestion] "name=" selector

I am using Stickit in conjunction with thedersen/backbone-validation, and so I often do something like this with Stickit:
{
  '[name=password]': 'password',
  '[name=password-again]': 'passwordAgain'
}

because Backbone.Validation uses the name attribute.
I am suggesting a =[name] syntax, so the above would become:
{
  '=password': 'password',
  '=password-again': 'passwordAgain'
}

Thoughts? I would be willing to implement this.

I think this would be an excellent addition - I too am using Backbone.Validation and the '[name=attribute]': 'attribute' feels repetitive.
I'm looking into extending the Backbone.Stickit view.bindings = {} object to leverage the familiar Backbone.Marionette @ui.selector syntax to eliminate repeated magic-string selectors:
class MyForm extends Marionette.LayoutView

  ui:
    age:    '[name=age]'
    race:   '[name=race]'
    cancel: '[data-click=cancel]'
    submit: '[data-click=submit]'
    region: '[data-region=form]'

  regions:
    formRegion<EMAIL_ADDRESS>
  triggers:
    'click @ui.cancel': 'cancel:event'

  events:
    'click @ui.submit': 'submitCallback'

  bindings:
<EMAIL_ADDRESS> 'age' # this would be so nice
<EMAIL_ADDRESS>'race'

  onShow: ->
    @ui.race.select2() # https://select2.github.io

The Marionette.normalizeUIKeys(hash,ui) helper method should make this a pretty trivial addition - considering that Marionette already uses it for @regions, @triggers, @events, and Marionette.Behaviors.
However given that the @ui.selector syntax is exclusive to Marionette it's an unlikely candidate for addition to Backbone.Stickit.
In lieu of @ui.selector syntax I would love short-hand like '=attribute': 'attribute'.
:+1:

@aeksco if Stickit added a hook for us to plug this special selector handling in ourselves, that'd solve all our problems.

This gets into a bit of "string programming" territory. I think it's much cleaner if it's obvious the keys fall through to real jQuery / qsa selectors.
What would such a hook look like?

also seems a bit "it's cute right now, but..."

Agreed. You can always pre-process your bindings before passing them to stickit. This isn't something we should be encouraging.


Pinch Scale & Rotate

Feature Description
In preparation for tablets

Do not alter or remove anything below. The following sections will be managed by moderators only.
Acceptance Criteria
QA Instructions

@miina Was this essentially fixed by #7569?

@swissspidy Could it be that this issue is for elements generally since the epic is "Creator can Transform an Element"?
If it's for generally zooming then this issue can be closed and was fixed indeed. It was created quite a long time ago before the redesign so might be safe to close it.

Ah you're right. Especially the rotate would obviously only be element-specific, not for the whole canvas.