count missed ptr size for string

Missed 8 bytes earlier!

Might want to add a test for the size calculation, so it breaks if we try to refactor later and forget something.

@jzila PTAL; Is this kind of tests you had in mind?


Use of pango_font_face_is_synthesized (was: 'Minimum Pango version)

Tesseract training tool text2image uses these two functions:
pango_glyph_item_iter_init_start
pango_glyph_item_iter_next_cluster
That means it requires Pango >=1.22.0:
https://developer.gnome.org/pango/stable/api-index-1-22.html
https://developer.gnome.org/pango/stable/pango-Glyph-Storage.html#pango-glyph-item-iter-init-start
https://developer.gnome.org/pango/stable/pango-Glyph-Storage.html#pango-glyph-item-iter-next-cluster
However, the comments and code in the method bool FontUtils::IsAvailableFont() in /training/pango_font_info.cpp refer to older Pango versions:

// The generated list of font families and faces includes "synthesized" font
// faces that are not truly loadable. Pango versions >=1.18 have a
// pango_font_face_is_synthesized method that can be used to prune the list.
// Until then, we are restricted to using a hack...

if (PANGO_VERSION <= 12005) {
12005 means 1.20.5
https://github.com/GNOME/pango/blob/1147da131ad13/pango/pango-utils.h#L136

I am facing issues in window installation. And probably due to Pango / Cairo. Any help please?
c:\work\tesseract\build>cmake .. -DSTATIC=1
-- Downloading latest ICU binaries
-- Checking for module 'pango'
CMake Error at C:/Program Files/CMake/share/cmake-3.7/Modules/FindPkgConfig.cmak
e:415 (message):
A required package was not found
Call Stack (most recent call first):
  C:/Program Files/CMake/share/cmake-3.7/Modules/FindPkgConfig.cmake:588 (_pkg_c
heck_modules_internal)
  training/CMakeLists.txt:190 (pkg_check_modules)

-- Configuring incomplete, errors occurred!
See also "C:/work/tesseract/build/CMakeFiles/CMakeOutput.log".
See also "C:/work/tesseract/build/CMakeFiles/CMakeError.log".

http://www.pango.org/Download

404 error https://www.gtk.org/download/win64.php
Tried this  but no help

@amitdo Can this be closed?

No, although a PR I sent did something to improve it, there are still a place to further improvement.

@Shreeshrii : PANGO_VERSION <= 12005 condition(1.20.5) is used only in unittest/pango_font_info_test.cc. Because required version for build 1.22.0, that part of code is useless.

@amitdo : my test shows that FontUtils::IsAvailableFont eliminates more that synthesized fonts (they are not very common, but they were installed by default in my linux distribution). I have no time to make deeper investigation about this, but it seems like pango_font_face_is_synthesized is not sufficient for testing font usability for text rendering. So please send PR or please be more specific what should be changed or how pango_font_face_is_synthesized should be used. Otherwise please close the issue.

Fixed in #1486 #1487 and commit 1ec34378d9.


[Docs] r-apt or r-rig or miniforge?

I think there needs to be documentation to show users the criteria for selection.
memo
In the following case, that installing R and rmarkdown and jupyterlab on ubuntu:jammy, there is a twofold gap in build time on GitHub. (49.6s v.s. 97.7s)
https://github.com/rocker-org/devcontainer-features/actions/runs/3258663254/jobs/5350921787
"features": {
    "ghcr.io/rocker-org/devcontainer-features/r-apt:0": {
        "installRMarkdown": true,
        "installJupyterlab": true
    }
}

I installed r-cran-dplyr on Debian 11 bullseye today and ran into a bug in dplyr 1.0.4 and ended up having to source install dplyr from CRAN......

It seems worth trying to install from testing.

Closed by rocker-org/website#84


Monster Family View

Hello. I have been maintaining a spreadsheet that is valuable in organizing my unit collection.

It has rows for each family and columns for each element. Black means that I don't have the unit in question (awakened or locked). Green means the unit is awakened or locked and fully skilled (ie. done). The numbers are the number of skill ups that I still need for each unit. Another column for skill ups in possession would be great (unlocked and unawaked units in family).
This is useful for people trying to prepare for new 2a's and for those of us who want to develop a full collection of units.
I would like to contribute to your project and will create a pull request to work on this. I'm a web developer with no Django / Python experience, however, I'll give it shot. I started on my own app to produce this from the swex json file, but it really belongs in swarfarm, if you would have it.
Thanks for the great work all this time. Without you and Xzandro, this game would be unplayable.

I think this would definitely be handy. It would fit in well as another view mode on the monster inventory section. There is an optimization I wanted to make regarding monsters and their families by creating a Family model which monsters can point at with a foreign key. This would vastly simplify organizing the monsters into families with weird situations like Varis or the Street Fighter monsters that have no unawakened version. It would also help out developing your suggested feature.
I probably won't be able to get to that Family model for a little bit but if you want to take a stab at it too that's fine.

I can't find anything in Game Data, which would tell us that monsters are from the same core (Street fighters & C2U counterparts, Fran & Fairies, Vampire Lord & Vampires). It makes things a little bit harder. I know some special cases are hard-coded, like Vampire Lord and probably it's the only possible solution.
Except we make some Family model, as @PeteAndersen suggested and we'll add special cases there during data parsing.
Family Model doesn't need much, probably only id and name fields with some helpful methods.
Family model would take some time to restructurize it on live site tho. Maybe it's better to use existing skillups special cases handling in this view.

For me, the fairy queen and vampire lord would be cool, but unnecessary to
start with.
The real thing that people in my situation are trying to determine is when
we summon 50 3*'s, which ones should we be keeping? And having an interface
that could give some insight into our progress with each family and their
skill ups would be super.
Thanks!
On Wed, Nov 11, 2020 at 11:51 AM QuatZo<EMAIL_ADDRESS>wrote:

I can't find anything in Game Data, which would tell us that monsters are
from the same core (Street fighters & C2U counterparts, Fran & Fairies,
Vampire Lord & Vampires). It makes things a little bit harder. I know some
special cases are hard-coded, like Vampire Lord and probably it's the only
possible solution.
Except we make some Family model, as @PeteAndersen
https://github.com/PeteAndersen suggested and we'll add special cases
there during data parsing.
Family Model doesn't need much, probably only id and name fields with
some helpful methods.
Family model would take some time to restructurize it on live site tho.
Maybe it's better to use existing skillups special cases handling in this
view.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/PeteAndersen/swarfarm/issues/147#issuecomment-725534680,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAJAJHKBXYLLWFR2C2Y7LF3SPK6HLANCNFSM4RO2TEUA
.

--
Passports, Inc.
800 332 7277
<EMAIL_ADDRESS>www.passports.com

Yep, having a cheatsheet for dupes would be great. I have some few questions tho:

Do we only include 3* and greater or all monsters?
Do we need any interactivity here or single data show is enough?
What if we merge Street Fighters with Com2Us versions? Should it be visible as one unit and we only choose better one (with more skillups) or are there any other requirements?
What about Fran and Vampire Lord? These are not like Street Fighters. Fran is not a Neal, Vamp Lord is not a Cadiz. With them, I would probably stick with separate columns, but calculate skillups the same as in Monster View.
Family model, what fields do we need?

id
com2us_id (may be also an id, if we set this as a primary key, then it should be easier to migrate from old family_id field to FK)
name

@QuatZo Family is generally determined by the group id column of the monsters table. Same value = same family, with random exceptions like fairy queen and vampire lord. Somewhat recently Com2US added a skill group id so we'll have to look and see what the difference is. Possibly how they handle monsters w/ identical variants like SFV mons.

@PeteAndersen you are right, skill group id is the same for monsters that can be skilled up by using other family members, which includes Fran, Eirgar and whole Street Fighter family.
As for now, I did this:

Black - not owned awakened version
Green - owned awakened version & fully skilled up
Also, skillup part will be fixed together with issue #176
If you feel like there should be other conditions, it would be great if you could point them out. It'll be easier for me to look at.

Graphic design is my Achilles Heel, so it would be great if someone could come up with better design for wide screens (for mobile it looks good).
Pseudo-Design
Pseudo-Design Mobile, Legend at the bottom
Family (skill group) is filtered by Monster name and Natural stars fields from Filters

Anubis 4*
Anubis (All, incl. 5*)

I think it looks great. I wouldn't change anything.
On Thu, Nov 12, 2020 at 9:15 AM QuatZo<EMAIL_ADDRESS>wrote:

Graphic design is my Achilles Heel, so it would be great if someone could
come up with better design for wide screens (for mobile it looks good).
Pseudo-Design
https://user-images.githubusercontent.com/48104274/98950169-f375b900-24f8-11eb-804a-c7b3cbf2eaf0.png
Pseudo-Design Mobile, Legend at the bottom
https://user-images.githubusercontent.com/48104274/98950785-bc53d780-24f9-11eb-855f-2bd7187c3acd.png
Family (skill group) is filtered by Monster name and Natural stars fields
from Filters

Anubis 4*
https://user-images.githubusercontent.com/48104274/98950313-228c2a80-24f9-11eb-8777-edbda8918731.png
Anubis (All, incl. 5*)
https://user-images.githubusercontent.com/48104274/98950387-3899eb00-24f9-11eb-86e8-69e11e208785.png

—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/PeteAndersen/swarfarm/issues/147#issuecomment-726104136,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAJAJHLAN5M6Q76L5BUAJ73SPPUYBANCNFSM4RO2TEUA
.

--
Passports, Inc.
800 332 7277
<EMAIL_ADDRESS>www.passports.com


when trying to change the template to use nodejs20.x the build is failed

I am trying to create resource provider using Typescipt. I saw that the template is using node 14 - which is very old.
i have tried to use node 20. however cfn submit fail with error
command '['npm install --include=optional && sam build --debug --build-dir /Users/liraz/work/skywalker/server/netapp-cfn/export-policy/build --use-container TypeFunction']' returned non-zero exit status 1.
when running the npm install explicitly i am getting an error
Error: NodejsNpmBuilder:NpmPack - NPM Failed: npm notice npm notice New patch version of npm available! 10.2.3 -> 10.2.5 npm notice Changelog: <https://github.com/npm/cli/releases/tag/v10.2.5> npm notice Run npm install -g<EMAIL_ADDRESS>update! npm notice npm ERR! code 2 npm ERR! path /tmp/samcli/source npm ERR! command failed npm ERR! command sh -c npm run build npm ERR! ><EMAIL_ADDRESS>build npm ERR! > npx tsc npm ERR! npm ERR! error TS5033: Could not write file '/tmp/samcli/source/dist/handlers.js': EROFS: read-only file system, open '/tmp/samcli/source/dist/handlers.js'. npm ERR! error TS5033: Could not write file '/tmp/samcli/source/dist/models.js': EROFS: read-only file system, open '/tmp/samcli/source/dist/models.js'. npm ERR! npm WARN config optional Use--omit=optionalto exclude optional dependencies, or npm ERR! npm WARN config--include=optionalto include them. npm ERR! npm WARN config npm ERR! npm WARN config     Default value does install optional deps unless otherwise omitted. npm ERR! npm WARN config optional Use--omit=optionalto exclude optional dependencies, or npm ERR! npm WARN config--include=optional` to include them.
npm ERR! npm WARN config
npm ERR! npm WARN config     Default value does install optional deps unless otherwise omitted.
npm ERR! A complete log of this run can be found in: /root/.npm/_logs/2023-12-07T21_50_45_696Z-debug-0.log
➜  cfnrp npm install --include=optional && sam build --debug --build-dir /Users/liraz/work/cfnrp/build --use-container TypeFunction
npm WARN config optional Use --omit=optional to exclude optional dependencies, or
npm WARN config --include=optional to include them.
npm WARN config
npm WARN config     Default value does install optional deps unless otherwise omitted.
`
moving back to node14 and all is fine

This does not work in > node 14 right now when using docker to run the builds.
https://github.com/aws-cloudformation/cloudformation-cli-typescript-plugin/issues/123
You have to update your rpdk-config to disable the use of docker (setting use-docker to false and no-docker to true etc)

I haven't been able to replicate this failure on nodejs 18 and 20.  Can you also let me know what version of sam you are using?

Hey not sure how helpful this is but my coworker and I are also looking into the issue. Right now it looks like the model data is available on the request up until the toModeled function is called https://github.com/aws-cloudformation/cloudformation-cli-typescript-plugin/blob/98fd8522d1f8a91bd51d7e64fb701a747fd51d6f/src/resource.ts#L375
action: 'CREATE',
  request: {
    clientRequestToken: 'blah-blah-blah-uuid-uuid',
    desiredResourceState: {
      AccountId: 'example-account',
      Description: 'Example API Key',
      Key: 'example-key',
      Id: 123,
      UserId: 'user-id-123',
      UserResourceId: 'user-resource-id-123',
      ApiKeySecretId: 'arn:aws:secretsmanager:us-east-1:123456789012:secret:example-secret-123',
      DestinationSecretArn: 'arn:aws:secretsmanager:us-east-1:123456789012:secret:destination-secret-123',
      TargetResource: { Id: 'resource-id-123', Type: 'kafka' }
    },
    previousResourceState: {},
    logicalResourceIdentifier: null
  },
  callbackContext: null

@HeatherFlux that looks way beyond the original error I saw above  error TS5033: Could not write file '/tmp/samcli/source/dist/models.js': EROFS: read-only file system, open '/tmp/samcli/source/dist/models.js'
I have some options on how to get around this part that I just got working.  Little early for a PR but I was able to get cfn submit --dry-run working with nodejs20.x

Okay, I'm working on a PR to fix the docker portion of the issue.  I haven't gotten to your issue as of yet.

Ok here is what I'm getting
MissingRequiredParameter: Missing required key 'SecretId' in params

This gets sent via a call to Secrets Manager using the variable request.desiredResourceState.apiKeySecretId
Now what's wild is the variable I am looking for is on the event data getting logged however that log is in the testEntryPoint method in the resource.ts code.
https://github.com/aws-cloudformation/cloudformation-cli-typescript-plugin/blob/98fd8522d1f8a91bd51d7e64fb701a747fd51d6f/src/resource.ts#L391
EVENT DATA
 {
  awsAccountId: 'Blah',
  bearerToken: '<REDACTED>',
  region: 'us-east-1',
  responseEndpoint: null,
  action: 'CREATE',
  nextToken: null,
  resourceType: 'Blah::Blah::Blah',
  resourceTypeVersion: "blah"
  requestData: {
    logicalResourceId: "blah"
    resourceProperties: {
      DisplayName: "blah"
      ApiKeySecretId: "blah"
    },
    previousResourceProperties: null,
    typeConfiguration: null,
    callerCredentials: {
      accessKeyId: '<REDACTED>',
      secretAccessKey: '<REDACTED>',
      sessionToken: '<REDACTED>'
    },
    providerCredentials: {
      accessKeyId: '<REDACTED>',
      secretAccessKey: '<REDACTED>',
      sessionToken: '<REDACTED>'
    },
    providerLogGroupName:"blah"
    systemTags: {
      "blah": "blah"
    },
    previousSystemTags: null,
    stackTags: null,
    previousStackTags: null
  },
  stackId: "blah"
  callbackContext: null,
  snapshotRequested: null,
  rollback: null,
  driftable: null,
  features: {
    preventIdempotentResourceAdoption: true,
    optimisticStabilizationUluruResourcesV2: true
  },
  updatePolicy: null,
  creationPolicy: null,
  serviceModelKey: null
}

We just noticed the break when updating to node >=16
I also noticed that your tsconfig in the repo is pointed towards node14.

@kddejong any update by chance on @HeatherFlux message above?


attacks seem to cut out too quickly. player drops back into the idle or run state

If the player presses an attack button very briefly, the attack animation will flash, but then quickly return to the idle state.
Some kind of stray input detection in _physics_process or _Input, or perhaps a bug in the StateMachine transitions is causing the attack to end too early.

It was a stray timer firing without one_shot == true


"bad time"error from Telegram X client

I have been trying to set up a mtproxy server using mtg, and encountered this problem:
After mtg started running, I tried to connect to it using a Telegram X android client, it was successful, however after a few minutes, the client was unable to connect. At the same time, server log gave this warning:
{"level":"warn","ts":1595240548.4428384,"logger":"proxy","msg":"Cannot perform client handshake","connection_id":"dc174eaae139afab","error":"failed tls handshake: bad time"}
Client gave an error 400 response hash mismatch
I saw https://github.com/9seconds/mtg/issues/132, so I have been experimenting a little bit. First of all, since you mentioned it was a bug introduced in a commit in Feb, I tried a Telegram X version from Jan, and it produced the same error.
Then I tried to use the official mtproxy code to build a binary, that works flawlessly.
Then I tried mtg with the latest Telegram android client (non-X version), and it works flawlessly too.
I also tried the python version (https://github.com/alexbers/mtprotoproxy)
And it works just fine.
In summary:
Telegram + mtg =fine
Telegram X + original mtproxy = fine
Telegram X + python mtproxy = fine
Telegram X (old or new verison) + mtg = bad time error
P.S. This problem only occurs when using faketls mode.
Also, successfully connecting to telegram server via other functioning proxy or VPN would somehow reset the situation, making this proxy usable again (for a couple of minutes, until same situation happens again).

I just saw https://github.com/alexbers/mtprotoproxy/issues/223
So I tried to disable anti-replay function by adding --anti-replay-max-size 0
And the problem persists.

I do not have TelegramX installed but I can try to check what is happening later

Much appreciated!
Just a side note, I tried this guy's (https://github.com/9seconds/mtg/issues/147) mtg server, it produced the same error, so it's not anything related with my server setup.

I've checked with faketls and latest version of Telegram X (<IP_ADDRESS>10). Works fine. Cannot reproduce that issue. Could you please try to update and check again?

Thank you for checking on it!
I have tried 1.0.6 version, same error pops up.
I am using Telegram X <IP_ADDRESS>1. I have tried 3 different devices, with Android 8, 9, and 10 respectively.  (Carbon ROM, Pixel Experience, and Oxygen OS)
I have tried different servers as well.
I am quite surprised that you cannot reproduce it....It only took me less than 5 minutes before the errors start to pop up.

Can it be an issue with a time on your mtg host? Could you please check logs if there any messages about time drift etc?

Here is the complete logs of a newly established host, when "error":"failed tls handshake: bad time" starts to flush the screen, problem emerges.

I am not sure if it means anything:
On client side, it shows first part of response to hello is invalid now (1.0.5 and 1.0.6), it used to be error 400 response hash mismatch

Can you please try using Telegram X for longer period of time with mtg? For example 30 minutes.
If you still cannot reproduce this problem, then feel free to close this issue.
Thank you for your time!

I'm trying it now. Can you please use a build from this PR/branch: https://github.com/9seconds/mtg/pull/157? If necessary, I can build binaries for you. This build adds verbosity to that 'bad time' message.

The thing is that after decoding TLS payload we've verified that magic bytes are fine so this should purely be a time skew problem. This error can be triggered in 2 cases:

If your OS does not give a correct unix time to application so only "time from boot" is available
If time difference is more than 5 seconds.

1st is really rare nowadays. I expect that some clock is skewed. In order to do that we need to find where time is incorrect. Could you please repeat an experiment with a branch above and check a time when it happened? It could be that server clocks are skewed, it could be that client clocks are skewed.

Yes, I am building right now, will report to you.

Just ran test with new build, this is the result:

I think it's client's time that is skewed. Just did another test:

In the end I got the server's time stamp with date +%s, and confirmed with a timestamp webpage:

I'm guessing that extracted timestamp comes from client?
Server time was<PHONE_NUMBER> in the log,<PHONE_NUMBER> from date +%s, webpage shows<PHONE_NUMBER>.
Client timestamp was<PHONE_NUMBER>
However since I tried it on 3 devices, with different Android versions and different rom as mentioned above (Android 8, 9, and 10 respectively. Carbon ROM, Pixel Experience, and Oxygen OS), it is unlikely it's a system issue. It still is related to Telegram X.
But weird part is that Telegram X works fine with original mtproxy with faketls, and works fine with python version as well. (Just tested today)

IIRC, original proxies allow bigger skewness. I'm also do not remember if they verify timestamps or not at all.
To be honest, I no longer know how to help here :/

At least we tried...Thanks!

Update:
I reported to Telegram X's developer, and they said it was a known issue, but they did not know it also affect faketls mtproxy.
Sorry for wasting your time, I thought it was mtg's issue because original and python works for me...

Oh, good to know. Thank you a lot!


INTPYTHON-424 Support passing URLs via django_mongodb.parse

Supersedes #194

This is working for me with an Atlas URI

Via @timgraham we may look to https://github.com/jazzband/dj-database-url/blob/master/tests/test_dj_database_url.py for some testing inspiration.

@Jibola @timgraham I think this is ready except for:

What specific kwargs to accept in parse()
What additional tests should be added
What have I missed if anything

Tests for this are running in Actions.

LGTM, pending a few more tests. @timgraham for the final ✅

OK added a couple more localhost tests.

Looks like there's still some linting issues.

Thanks for the feedback, @Jibola and @timgraham ! Updates:

Rename func
Removed engine kwarg
Added docs


async-exec-cmd: need tests

basic tests can find in the hybrid repo/pkg (exec-cmd)

current test cases


Add environmentFiles parameter

AWS announced that ECS supports environment files for the EC2 launch type:
https://aws.amazon.com/about-aws/whats-new/2020/05/amazon-elastic-container-service-supports-environment-files-ec2-launch-type/
This PR adds the new environmentFiles parameter to the container definition.
I've included a basic example of how this is used in examples/env_vars_files.

/codefresh run test


🎉 add barcode and qrcode support

trying to better under the use case - is it a widget in a case view, a field level component (like the signature capture) - is it for self-service on a mobile device? Also we have already a QRCode component in core - should we use it instead?


Significant updates and refactor: See DDC Conference Lab

As part of the DDC: Cloud Native Security (Digital Developer Conference, http://ibm.biz/devcon-security) a significant refactor was done on Networking. A port for OpenShift 4 will be added, as well as more networking details.

Make sure to make a branch of the original lab before merging.


What are the requirements for LiteCoin LN?

I've just discovered thuis topic, and saw somewhere that you need a 1TB SSD for bitcoin LN, since the blockchain is big and will grow.
But i have some questions:

But what are the HD/SSD spaces needed for litecoin LN as a routing node?
and a SSD is that essential, or can i use a hard drive?, or a usb stick? or even the SD card itself?
i plan to use my raspberrypi 4 only as a routing Node, does it change the requirements somehow?
can a raspbeery pi zero W take the job too?

@jgabriel98 Were your questions answered?
Closing this for now, if you got more questions, please re-open the issue / make a new one. :)


Custom action to add to refresh explorer to take PATH

Custom action to add to refresh explorer to take PATH changes into effect. This tool basically sends a WM_STATE_CHANGED message through a custom C++ routine so that the explorer knows there is a change in the PATH variable.

Closing this PR to re-target this to release.


Markdown: reference-style links broken across newline

What version of Hugo are you using (hugo version)?

$ hugo version
hugo v0.87.0-B0C541E4+extended linux/amd64 BuildDate=2021-08-03T10:57:28Z VendorInfo=gohugoio

Does this issue reproduce with the latest release?
Yes (this is the latest release).
Issue
Reference-style links broken across a newline are incorrectly rendered.  For example, this text:
This is a [test][foo
bar] 1...2..3...

[foo bar]: /

Produces this output:

CommonMark says it should render correctly: https://spec.commonmark.org/dingus/?text=This is a [test][foo
bar] 1...2..3...

[foo bar]%3A %2F
Relevant config file:
[markup]
  [markup.goldmark]
    [markup.goldmark.extensions]
      definitionList = true
      footnote = true
      linkify = true
      strikethrough = true
      table = true
      taskList = true
      typographer = true
    [markup.goldmark.parser]
      autoHeadingID = true
      autoHeadingIDType = "github"
      [markup.goldmark.parser.attribute]
        block = false
        title = true
    [markup.goldmark.renderer]
      hardWraps = false
      unsafe = true
      xhtml = false

(Thanks for all your work!)

Yes, your example should work per https://spec.commonmark.org/0.30/#example-540.
Please log an issue upstream (https://github.com/yuin/goldmark/issues) and link back to this issue. Thanks.

goldmark author here, I've fixed the issue and released a new version.


project not found. automatically signs out

Describe the bug
instant log out on trying to open a recent project. on some browsers, all chats are missing completely.
Link to the Bolt URL that caused the error
https://bolt.new/~/sb1-vx3ydb
Steps to reproduce
sign in. click on previous chats. hit any chat. says
"I'm importing your StackBlitz project into Bolt. This may take a moment as I set everything up. Once it's ready, you'll be able to explore and interact with your code.
Importing Stackblitz Project
sb1-vx3ydb
Project not found
An unknown error occured while running an action."
or logs you out.
Expected behavior
works. lol
Screen Recording / Screenshot
No response
Platform
Browser name = Chrome
Full version = <IP_ADDRESS>
Major version = 130
navigator.appName = Netscape
navigator.userAgent = Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/<IP_ADDRESS> Safari/537.36
performance.memory = {
  "totalJSHeapSize": 79129331,
  "usedJSHeapSize": 65384223,
  "jsHeapSizeLimit":<PHONE_NUMBER>
}
Username = TR808T
Chat ID = 6b7b8dda0b42

Additional context
No response

Appreciate the feedback! We are aware of this issue with chat persistence. Temporary workarounds and updates can be found here: #39. (Go to stackblitz.com, login (same credentials as Bolt), click Collections on the left-hand side, click Bolt Collection). Appreciate your patience as improvements continue to be made.


Maintenance

Coverage remained the same at 100.0% when pulling bff5d0d5c93b101f0bbe5178f4c3ef1e27426cc2 on maintenance into 185d5cd7f3006e26c894de3cf0a7a5cffbedb309 on master.


[Meta] Enable working with the API aggregator

This issue is to enable operating the catalog behind the k8s API aggregator.  Depends on #457.
Details to figure out:

[ ] Delegated authn/authz back to the core API server (https://github.com/kubernetes-incubator/service-catalog/issues/457)
[ ] SSL from the aggregator to the API server (https://github.com/kubernetes-incubator/service-catalog/issues/389)

Ref https://github.com/kubernetes-incubator/service-catalog/issues/389, since we may have to figure out how to enable the aggregator to talk to our API server via SSL

see #615

(also, feel free to assign this to me)

Moved to milestone 1.0.0, as that's when we plan to have full support for the aggregator. Please see the roadmap

Ack

@MHBauer can this be closed now?

I believe that this can be closed now, we have this working with the 1.7 aggregator.  If there are further issues that need to be solved, someone should open a new issue.


Output URL to migration-log

We've noticed not nearly enough customers know to go look at the migration log in the issue in the target repo. This often contains valuable information, especially in the case of a failure where it may contain more detailed messages about the cause of the failure.
One thing we could do to make it more likely customers know to look there, is after a migration completes the CLI can output the URL of the migration log issue to direct the user to go look at it.
We should add this extra output message to migrate-repo when run in the mode where it waits for the migration to finish (note: we have another issue open to change the default mode for migrate-repo to wait), and also add the message to wait-for-migration command.

Should probably do this for both migrate-repo ... --wait and wait-for-migration command

I added a comment in the PR about whether we need to spit out the migration log url or we can just mention that they can download the migration log using the download-logs command! or maybe it's better to do both. What do you think @dylan-smith and @timrogers ?


Change mime negotiation

I've extended Mime with a subset operation, which describes being/accepting a subset of another Mime. This solves the problem described in #371.

I like it.


Display tweaks II (Pictoralist)

For Pilot Display only 6 months of data in pictoralist for both bar graphs and line chart

change background color to match blue of email template (test this - maybe change to a different color, or we may determine that charts need to have a white background)
Change chart size to 500 x 250 or slightly larger, and adjust font sizes accordingly
Change font color to white for performance data appearing within bars of bar chart
Improve the contrast of the goal line for bar charts, when compared to the chart background and bar colors
add dots/points to lines of line graphs, so that missing data are more clearly missing
consider removing dashed line in line graphs if the addition of points makes missing data more easily understood and looks OK
Propose a solution for handling missing data in the first month of a line chart, as there will be no point to connect a dashed line to. Does the addition of points satisfy this?

@zachll Mark wanted the background color as transparent.

Minor changes:

[ ] Background transparency
[ ] Chart final resolution
[ ] Font color changes
[ ] Goal line coloration

Intermediate changes:

[ ] Remove ghost_frame code for dashed line plotting, revert to plotting gaps with data points

Major changes:

[ ] Using datetime to determine current month and plot gap data point in most recent month if no data exists
Better solution probably to stop candidate selection entirely if measure lacks data for the month the feedback is being generated about

Need specific hexadecimal colors if the ones from the prototype slides are not correct, current colors are sampled from that slide deck

Bar chart with gaps and latest tweaks

Line chart with gaps and latest tweaks

Goal lines now chart in black, and only are drawn when the comparator_type is not goal, that way there isn't redundancies (thus why no goal lines are plotted above)

Seeing the new dimensions, I'm suspecting that 500x250 is for the entire widget (text + chart), so we should confirm that asap, I will email now

Based on these examples we are really close. I think the remaining issues from #132

[ ] limit precision of recipient performance in bar and line charts to zero decimal points (i.e. 89% instead of 89.0%)
[ ] add case count values for numerator and denominator to recipient performance in bar and line charts (all months of recipient bars, but only last three months of line chart) - looks like this is done for bar chart but not line chart
[ ] remove chart labels above bar chart and line chart
[ ] remove axis labels "Performance Level" and "Time" from charts
[ ] Rotate month labels on x axis to be horizontal
[ ] change legend to display items in one row, horizontally, rather than a column or chart inset
[ ] remove border around legend
[ ] increase font sizes by 3 to 5 points or so

[ ] display of the goal line should be limited only to bar charts, not the line chart


Fixed case in the readme's require reference.

After trying to get this wired up with a basic Browserify setup I wanted to correct this in order to potentially save others some time.
I thought that the module might require all lowercase, but for the longest time simply relied on the readme and didn't test. Eventually I tested.
Thanks for the great looking package!

This is a hard one because requirejs needs the capitals. I made this before browserify and bower were big. If I had to do it again I would have named the file scrollmonitor.js without the camel case. However, I'm not going to make a major version change to do that.
I honestly don't know what the best thing to do here is. If people +1 it I'll merge.

I changed it on the readme. It's 2018, the change was long overdue.


Migration: Unmigrated dependencies should be included in graph analysis

Currently, if the user tries to run the migration tool on a package that has unmigrated dependencies, types in those unmigrated dependencies are considered non-nullable.  This is a holdover from early development of the migration tool, when we didn't have a migrated SDK available to migrate against, and is not the behavior we want in the long term.
The behavior we want in the long term is that the "node builder" and "edge builder" phases of migration should analyze all unmigrated libraries in the import graph, even those that don't belong to the package being migrated.  Then, the "fix bulider" phase should be run just on the code being migrated.  This will ensure that nulls are propagated through the unmigrated dependencies; consequently the migrator should do a beter job of guessing how to migrate the user's package.
We should also ensure that the preview tool is able to properly link to reasons for nullability decisions, even if those reasons are in unmigrated dependencies.

As of 1c7fe7196dd7a542f7f91cd6ea2ac81e1a13146c, the null safety migration tool has been removed from active development and retired. No further work on the tool is planned.
If you still need help, or you believe this issue has been closed in error, please feel free to reopen.


Old (deleted) projects still show up at Recent Projects tab

Most of the projects listed in my Recent Projects tab were deleted already.

This should be fixed now (or in a few minutes after deploy).
After deleting a project, refresh the page.

thanks!


Escaping Error in code blocks: Single Backslash Duplicated in Output

Bug Report
Installation Method
Docker (docker compose)
Environment

Open WebUI Version: v0.3.12

Ollama (if applicable): 0.3.4

Operating System:  Ubuntu 22.04

Browser (if applicable): Firefox

Confirmation:

[ x] I have read and followed all the instructions provided in the README.md.
[ x] I am on the latest version of both Open WebUI and Ollama.
[ ] I have included the browser console logs.
[ ] I have included the Docker container logs.
[ x] I have provided the exact steps to reproduce the bug in the "Steps to Reproduce" section below.

Expected Behavior:
Single backslashes are not escaped in code blocks.
Actual Behavior:
Single backslashes are printed with double backslash in code blocks.
Description
Bug Summary:
Anytime a model responds with a single backslash in a code block it is displayed with a double backslash.
Reproduction Details
Steps to Reproduce:
Use a prompt on any model that would output a code block with a backslash, such as

"How do you display a literal backslash in Markdown?"

The output in Open WebUI contains double backslashes in code blocks.
Logs and Screenshots
Screenshots/Screen Recordings (if applicable):

Additional Information
Running the same prompt via ollama run on any model does not duplicate the backslashes
Note
If the bug report is incomplete or does not follow the provided instructions, it may not be addressed. Please ensure that you have followed the steps outlined in the README.md and troubleshooting.md documents, and provide all necessary information for us to reproduce and address the issue. Thank you!

Single slash becomes double slash causing error

Fixed in dev.


🪲 Bug Report - Recommendation "Deploy VMs across Availability Zones" provides false positive for resources in Azure region where AZ is not supported.

Describe the bug
ARG query for Recommendation "Deploy VMs across Availability Zones" returns VM's which are present in Azure regions where AZ is not supported, resulting in a false positive.
To Reproduce
Steps to reproduce the behaviour:

Run the Below ARG query against any subscription which as resources in Azure regions where AZ is not supported (example: WestUS)

Expected behaviour
The ARG query results should exclude results from regions where AZ is not supported or available.
Screenshots 📷
NA
Additional context
NA

Thanks for opening this @maheshbenke. The current approach of identifying VMs as non-compliant in regions that do not have AZs is intentional. Ultimately, region selection is a design decision that has downstream implications for the workload. Considering evaluation of zonal redundancy is mandatory for reliability assessments, it makes sense to highlight non-compliant resources regardless of the region where they are deployed. Let's discuss further if you disagree.

@maheshbenke the ARG query now validates the region where the resources are deployed supports AZs.


SPM Alamofire NetworkReachabilityManager

A small PR that removes NetworkReachabilityManager source from project directory, introduces Alamofire as a SPM dependency and updates AppReachability to use the latest NetworkReachabilityManager API.

https://github.com/Esri/data-collection-ios/pull/234#pullrequestreview-419682824
Confirmed, it does increase the app archive size:
v.next -> 781.5 MB
eli/alamofire-spm -> 790.3 MB

I've run a quick analysis to determine the impact on export app sizes with thinning, averaged. The results indicate the app sizes are increased:
(values in MB)

v.next
eli/alamofire-spm
delta

compressed
42.6
43.0
+0.4

uncompressed
102.1
103.2
+1.1

I like the fact that integration is very easy with SPM, but if we're just using one class then I agree with @philium that it does seem like a lot of overhead.

I agree, it does feel like a lot of overhead since most of the framework isn't used.

Is there chance we'll use more of it in the future?

Because Runtime handles network requests it's unlikely, though I suppose it's not impossible. A viable candidate for using Alamofire in the future would under any circumstance that would normally leverage URLSession.

Is the example of how to incorporate a Swift Package part of the appeal?

I would say there is a little appeal in leveraging Swift Packages in Xcode 11. More than that, however, this Alamofire network utility can now treated like a first class dependency.

I suppose the question we're trying to answer here is choosing between a substantial improvement to dependency management vs. a moderate size increase of app archives and a negligible size increase of app exports.


Using Git Oneline lesson

This is an extra comment

Hi @Ex0dus19. Did you intend to open 2 pull requests? Were you having any issues? Gimme a shot if you need a hand.

Hi!
No I didn't. Not too sure why I put in two. Sorry about that.
Thanks,
John Minney III
On Mon, May 25, 2020, 2:17 AM sämmi<EMAIL_ADDRESS>wrote:

Hi @Ex0dus19 https://github.com/Ex0dus19. Did you intend to open 2 pull
requests? Were you having any issues? Gimme a shot if you need a hand.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/raywenderlich/rwTODOs/pull/130#issuecomment-633444618,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ALMWX3FYJBX23TKXTUN446TRTISSZANCNFSM4NJEAQHA
.


Icon request: OnlyFans

URL for the brand / site / app
https://onlyfans.com/
Logo resources for the icon
https://onlyfans.com/brand
Anything else?
No response

I made a mistake and proposed the icon even though it was already there.
I am sorry.


Need vaccination data from publish date 2021-04-14 until 2021-04-10

Need vaccination data from publish date 2021-04-14 until 2021-04-10

Wont fix


ARROW-5583: [Java] When the isSet of a NullableValueHolder is 0, the buffer field should not be used

For each variable-width vector, like the VarCharVector, it has a set method that uses a NullableValueHolder as the input parameter. When the isSet field is set to 0, it means the value to set is null, so the buffer field of the NullableValueHolder is invalid, and should not be used.
For example, the user may set a null value in the VarCharVector with the following code snippet:
NullableVarCharHolder holder = new NullableVarCharHolder();
holder.isSet = 0;
...
varCharVector.set(i, holder);
Please note that in the code above, the holder.buffer is not set, so it is null. According to the VarCharVector#set method, it will set the bytes using holder.buffer even if holder.isSet equals 0. This will lead to an exception.

Codecov Report

Merging #4543 into master will increase coverage by 0.97%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master    #4543      +/-   ##
==========================================
+ Coverage   88.55%   89.53%   +0.97%
==========================================
  Files         796      646     -150
  Lines      103239    91405   -11834
  Branches     1253        0    -1253
==========================================
- Hits        91425    81835    -9590
+ Misses      11569     9570    -1999
+ Partials      245        0     -245

Impacted Files
Coverage Δ

cpp/src/arrow/util/thread-pool-test.cc
97.66% <0%> (-0.94%)
:arrow_down:

go/arrow/ipc/writer.go

go/arrow/math/uint64_amd64.go

go/arrow/memory/memory_avx2_amd64.go

go/arrow/ipc/file_reader.go

js/src/enum.ts

go/arrow/array/builder.go

js/src/Arrow.node.ts

js/src/schema.ts

go/arrow/type_traits_boolean.go

... and 142 more

Continue to review full report at Codecov.

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

I'm not sure this is fixing the right thing, can you explain this some more?

Sorry, I should have made this clearer.
In our scenario, we often set a null value with the following code snippet:
NullableVarCharHolder holder = new NullableVarCharHolder();
holder.isSet = 0;
...
varCharVector.set(i, holder);
Please note that in the code above, the holder.buffer is not set, so it is null. According to the VarCharVector#set method, it will set the bytes using holder.buffer even if holder.isSet equals 0. This will lead to an exception.

This change looks OK to me but I'm not sure if there might be performance concerns with introducing a branch here? @pravindra?

This change looks OK to me but I'm not sure if there might be performance concerns with introducing a branch here? @pravindra?

@emkornfield , thanks for the consideration.
I think anyway, there will be performance penalty here. To remove the branch, the user needs to set NullableVarCharHolder#buffer to a valid ArrowBuf, even if the value is null. I do not think this makes much sense to the user.
If the user is sure that the value is not null, to avoid the performance penalty, he/she should use the set method with VarCharHolder as the parameter. There is no branch in that set method.
@pravindra, would you please give some comments?

The change lgtm.
I see the additional branch but I think it's useful if  the holder.buffer in the null or if it has a non-zero length. @liyafan82 - isn't the same change required in setSafe() too ?

The change lgtm.
I see the additional branch but I think it's useful if the holder.buffer in the null or if it has a non-zero length. @liyafan82 - isn't the same change required in setSafe() too ?

@pravindra thanks a lot for your kind reminder.
I have revised the code for setSafe accordingly.

+1, LGTM


Added mapping description to multi series page on website

Thanks @WPFerg. As this is a documentation fix, I won't be releasing a new version.


retry_cluster_exceptions return real last exception

Short description:
retry_cluster_exceptions will raise last exception from TimeoutSamler if any, otherwise TimeoutExpiredError will be raised
Which issue(s) this PR fixes:
https://github.com/RedHatQE/openshift-python-wrapper/issues/1678

Report bugs in Issues
The following are automatically added:

Add reviewers from OWNER file (in the root of the repository) under reviewers section.
Set PR size label.
New issue is created for the PR. (Closed when PR is merged/closed)
Run pre-commit if .pre-commit-config.yaml exists in the repo.

Available user actions:

To mark PR as WIP comment /wip to the PR, To remove it from the PR comment /wip cancel to the PR.
To block merging of PR comment /hold, To un-block merging of PR comment /hold cancel.
To mark PR as verified comment /verified to the PR, to un-verify comment /verified cancel to the PR.
verified label removed on each new commit push.
To cherry pick a merged PR comment /cherry-pick <target branch to cherry-pick to> in the PR.

Multiple target branches can be cherry-picked, separated by spaces. (/cherry-pick branch1 branch2)
Cherry-pick will be started when PR is merged

To build and push container image command /build-and-push-container in the PR (tag will be the PR number).
To add a label by comment use /<label name>, to remove, use /<label name> cancel
To assign reviewers based on OWNERS file use /assign-reviewers
To check if PR can be merged use /check-can-merge

Supported /retest check runs

/retest tox: Retest tox
/retest python-module-install: Retest python-module-install

Supported labels

hold
verified
wip
lgtm

depends on: https://github.com/RedHatQE/timeout-sampler/pull/34

/verified

/cherry-pick v4.15

Cherry-picked PR retry_cluster_exceptions return real last exception into v4.15


Merge 2xx responses with the same type and handle them in one block

merge 2xx responses with the same type and handle them in one if (status... || block

If 204 (No content) is in the possible answers, just make the result nullable.
The point is : 2xx status codes should not throw in the client, because they semantically indicate success.
What would be the behavior if two different types are declared, e.g. for 200 and 201 ?

Will code generation for C# crash, since typescript can handle that?
Will that automatically create a wrapper?

My team was caught off guard to see a 2xx response, in our case a 204, throw an exception, especially with a message in the exception of "Success", which is kind of a bizarre thing by itself. I would consider this more of a bug than an enhancement (how it's currently tagged).
We are totally fine with different blocks for each status code even with the same response type. Merging the code blocks is an optimization that I wouldn't hitch to a solution for this, especially with the complexity it would add.
Is anyone working on this?

Is anyone working on this?

Problaby not

I'll see if I can help out!

Just hit this by inspecting the generated code. Why is the default behaviour to throw if not 200 or 204. Seems a very odd decision.  I would personally prefer if there was an option such as ThrowExceptions that hides this default feature. As a client I don't think I should be expecting an exception, it should be my responsibility to check the status code and process that how I want.

The fact that this is tagged enhancement is really bizarre to me. 202 Accepted is super common in rest patterns for long running requests.
See https://github.com/microsoft/api-guidelines/blob/vNext/Guidelines.md#132-stepwise-long-running-operations
To me this is a bug with the library. I understand it'd cause backward compatibility issues, but a code generation flag, as was suggested earlier seems like a very reasonable solution. The fact that we need to handle this "normally" with a try/catch is very frustrating to me.

As a client I don't think I should be expecting an exception, it should be my responsibility to check the status code and process that how I want.

The idea is to hide HTTP specific stuff (avoid leaky abstractions).
But i agree that 2xx should not throw but either return a result (200) or null (2xx) - if they dont have another model.. ie merge if possible. Would this be ok?

Hi @RicoSuter any ideas implementation of this feature? When will this be available?

Hi,
Anything new related to this issue?

Can we expect the pr from @Trentm95 to get merged anywhere in the near future?

@RicoSuter, what is the current state of this issue? Do you need help with merging, or is there some other issue I'm not seeing?

I probably broke the PR by refactoring the status code handling. We need to rewrite it with the new status code handling

Related to #2995 because both should be fixed at the same time : if a 204 is declared (or any empty response), the generated response type should be changed to T? (adds nullability to the response type), unless it is already void.

Reposting here, as it is more current than #1602, would be great to cater for the scenario below.
I have a similar issue where my .net core API returns:
NoContent() to a Task<IActionResult> controller method response when the search provides no results.
Ok(result) when there are search results.
Which has the following attribute:
[ProducesResponseType(StatusCodes.Status204NoContent)]
[ProducesResponseType(typeof(IEnumerable<SearchResponse>), StatusCodes.Status200OK)]
And produces an exception on receiving a 204, which is very unexpected behaviour. Note the explicit 204 exception block.
if (status === 500) {
	return response.text().then((_responseText) => {
	return throwException("Server Error", status, _responseText, _headers);
	});
} else if (status === 204) {
	return response.text().then((_responseText) => {
	return throwException("Success", status, _responseText, _headers);
	});
} else if (status === 200) {
	return response.text().then((_responseText) => {
	let result200: any = null;
	let resultData200 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
	if (Array.isArray(resultData200)) {
		result200 = [] as any;
		for (let item of resultData200)
			result200!.push(SearchResponse.fromJS(item));
	}
	return result200;
	});
} else if (status !== 200 && status !== 204) {
	return response.text().then((_responseText) => {
	return throwException("An unexpected server error occurred.", status, _responseText, _headers);
	});
}

@nealsu :please don't cross-post. issues are already linked and they will be fixed all at once

I talked on gitter this evening with @RicoSuter and here is what we decided:
We need to merge the success (2xx) responses properly, to be able to fix issues like #1602 . But we need to be careful, because it will likely break things. Here is what was defined for the result merging:

Only applicable if WrapResponse is not used (no need for a merge in that case)
Can merge one or more success responses if they have the same response type
If one of the declared success responses has no type, it can merge with the result, but that makes the result nullable
If one of the declared success responses has a different type than the others, an exception is thrown in the C# generator (still discussing, see below)
Consequently, all the success cases are handled under the same if, the only one that has a return
It is worth a major version bump, to signal it's a breaking change.

If several different types are declared as success, we need to resolve the conflict. It doesn't seem to me that the conflict will occur in the typescript generator, because of the language's flexibility. What follows only applies to the C# client generator.

Either we throw if such conflict is encountered, crashing the generation. The message would suggest to use WrapResponse to be able to return different types and that would allow to accomodate funny specs.
Or we decide to generate a valid code anyway. Some success responses would be treated as returns, and others would throw a SwaggerException. Then question arises like "How do we decide which result is a return?" "Is that logical?" "Why does my 201 throws? You didn't fix anything!" etc...

I'm in favor of the first option.
Any opinion welcome.

A major version bump would be i.m.h.o. a necessary action. Breaking changes should not hold you back from improvements (because by-design stuff).
I don't fully understand the first option... I'm not using WrapResponse.
In my situation I don't explicitly specify Success responses but do return a nullable reference type. In cases it's returning null I get a 204 code otherwise it's 200.
Maybe it's an idea to only/at least merge 2xx explicitly declared response codes with the same response type - I think it's option 2?
Maybe for the 4th option it's possible to pass a generic type argument so the client consumer is responsible for a correct implementation - it can lead to confusing situations.

How woukd you deserialize generics with Newtonsoft.Json in a generated code (which is meant to be generic, and not specific to your implementation), without having knowledge about what is going to be deserialized. This is really tricky.
In the restful way of thinking, being able to return both 200 and 204 sounds like a bad API design : if it's not found (null), you should return 404 instead

I agree it sounds like a bad API design in restful way of thinking with respect to collections/item. But I have an Operation that can return a value or not; how about those situations?

If the method does some processing but does not create a new resource, the method can return HTTP status code 200
and include the result of the operation in the response body. Alternatively, if there is no result to return, the method can
return HTTP status code 204 (No Content) with no response body
https://azure.microsoft.com/mediahandler/files/resourcefiles/api-design/Azure_API-Design_Guide_eBook.pdf

I understand your quote as:
"If you're doing an API that process things (like with the POST method), you can choose whether it can return something, and thus return 200, or cannot return anything, and return 204"
I don't think they are talking about POST apis that sometimes return something and sometimes not (what would be the use case), and pretty sure they're not talking about GET requests.
Remember: when you're calling a GET method, you're not supposed to do some processing, but returning a document. Either that document exist ("200, here's the document you're asking for") or doesn't ("404, not found")
What's your use case?

My use case is like how you understand it.
I have a POST operation that does not create a new resource but determines based on the incoming parameters what it needs to do. If all is OK it will return a string that contains an URL. In the other case there won't be an URL; hence the string? return type.
I have a collection Tickets. These can be paid; using a Payment Service Provider (external party -> URL redirect).
On my Tickets (= collection) Controller I have a method Pay bound to the route [Route("{transactionId}/Pay")] - so, in restful terms I want to initiate an operation on an item of a collection, right? According to specs this should be done via POST.

Referencing related comment regarding 204 on issue closed as duplicate: https://github.com/RicoSuter/NSwag/issues/2499#issuecomment-773140926

How would you deserialize generics with Newtonsoft.Json in a generated code (which is meant to be generic, and not specific to your implementation), without having knowledge about what is going to be deserialized ? This is really tricky.
In the restful way of thinking, being able to return both 200 and 204 sounds like a bad API design : if it's not found (null), you should return 404 instead

204 doesn't mean "not found". It means request was successful but there is nothing to return.
Returning a 204 without content is useful when you're using an API for ingesting data that are put in a queue and then processed in the background. For instance an e-commerce system where the API acts as a front to just accept the order. As a calling client I might just want to know that it was received properly. The same goes for when adding things in a batch.
What should we return otherwise than 204 if the data is not changed? Returning the same data as the client sent doesn't add value.

My point wasn't about the usefulness of the 204 by itself, it's about the API being able to return both 200 and 204.
I understand there is value in adding the feature, but I gave up trying to figure out how to implement that in NSwag, so this is up for grab.

Whether to return 204 or 404 depends on the use case.
Both return no data, 404 implies that this is an error, while with 204 it is a successful operation.
I don't get why it is so difficult to return a nullable in the client, when the server returns one. The api falls behind basic c# functionality here. I don't care about the 204 status itself, if nullable data types would work, like they do in c#.

The OpenAPI spec contains two response types, one for 200 (with the return type), one with 204 (without body).
Currently, NSwag loops through all the return codes it finds , and prints if/else there.
Handling 200/204 would not be easily doable in the template, so it would need to be handled before, in the generator, and a new propery must be added to handle the 200/204 separately.
By doing so, you're breaking the whole code base where it assumes there is a list of return types and probably other case I didn't see. The NSwag code base has been built incrementally, and now it's hard to make any change to it without refactoring everything, but feel free to try and make a PR.

Also encountered an unexpected exception for an 204 status code. Would appreciate a solution or work around for this.

@vindberg your comment comes across as rude and ignorant. Microsoft should not cannibalize oss projects: https://aaronstannard.com/new-rules-dotnet-oss/

This is still a problem. Anybody fixing it soon?

Yep, still a problem. Can't find a workaround and have to redesign an endpoint so it would return some wrapper object instead of null. Feels like a crutch

Please remove label enhancement and add label Bug, its not enhancement, it's a bug and it's 4 years old. 201 is a valid response type but got error.

@asevos I proxy the generated client then put a try catch around like below - then I can catch the status code and return null:
`
public class ProxyXyz : IXyz {
 public override  async Task<Abc> GetAssetMasterSupportedAssetAsync(int assetMasterId,  CancellationToken cancellationToken = default(CancellationToken))
{
    try
    {
        // Call base method (but in try catch)
        return await base.GetSomethingThatAlsoReturnsNoContentAsync(assetMasterId, cancellationToken);
    }
    catch (AbcApiException ex)
    {
        // Here we want null NOT an error
        if (ex.StatusCode == (int)HttpStatusCode.NoContent)
            return null;

        // Continue to propagate the initial error
        else throw ex;
    }
}

}
`

@asevos I proxy the generated client then put a try catch around like below - then I can catch the status code and return null:
`
public class ProxyXyz : IXyz {
 public override  async Task<Abc> GetAssetMasterSupportedAssetAsync(int assetMasterId,  CancellationToken cancellationToken = default(CancellationToken))
{
    try
    {
        // Call base method (but in try catch)
        return await base.GetSomethingThatAlsoReturnsNoContentAsync(assetMasterId, cancellationToken);
    }
    catch (AbcApiException ex)
    {
        // Here we want null NOT an error
        if (ex.StatusCode == (int)HttpStatusCode.NoContent)
            return null;

        // Continue to propagate the initial error
        else throw ex;
    }
}

}
`

@asevos I proxy the generated client then put a try catch around like below - then I can catch the status code and return null:
`public class ProxyXyz : IXyz {
 public override  async Task<Abc> GetSomethingThatAlsoReturnsNoContentAsync(int assetMasterId,  CancellationToken cancellationToken = default(CancellationToken))
{
    try
    {
        // Call base method (but in try catch)
        return await base.GetSomethingThatAlsoReturnsNoContentAsync(assetMasterId, cancellationToken);
    }
    catch (AbcApiException ex)
    {
        // Here we want null NOT an error
        if (ex.StatusCode == (int)HttpStatusCode.NoContent)
            return null;

        // Continue to propagate the initial error
        else throw ex;
    }
}

}`

I like the idea of this suggestion given out-of-box defaults currently break with APIs that return null that expect clients to deserialize the response to a null value (we had one converted from the older Web API platform before .NET Core). Given ASP.NET Core has a HttpNoContentOutputFormatter which is enabled by default, might it be appropriate to look for that on nullable return types when generating the Open API Specification document to determine if a 204 should be expected for null responses?
Currently we're removing that formatter to return a 200 with a serialized null in the response body, which is how things worked before, but in many cases it makes sense that it could be treated as a 204 (or a 404) that isn't considered an exception by the client. I think more control of this client-side functionality will help APIs and their associated clients be more pure in their RESTfulness so +1 from me.

The fact that this is still a problem in 2023, half a decade after it was first raised, blows my mind. This is incredibly basic functionality that should've been the team's absolute highest priority to be implemented.
The fact that such fundamentals remain missing is why our team is strongly looking at writing our own HTTP client generator, and likely why Microsoft is doing the same.

Great, @IanKemp , please don't forget to open source your implementation.

Great, @IanKemp , please don't forget to open source your implementation.

If your response to someone pointing out that not addressing an open issue in half a decade is a problem, is to attack that person, you need to reconsider your life choices.

But who should address an open issue such like this? The person needing the feature or someone from the OSS project that tries to balance their free time?
I could imagine that if somebody considering how to use their free time, they might not share the same priorities like someone ordering features. Their highest priority might be health (mental or physical), their family or maybe some other hobby.
I'm quite sure that like many other OSS projects there might be possibility to get a refund if you're not getting your money's worth.

RicoSuter added the help wanted label on Sep 7, 2018

If your response to someone pointing out that not addressing an open issue in half a decade is a problem, is to attack that person, you need to reconsider your life choices.

I think that the one that is complaining in such a manner about  the issue in OS project should definitely reconsider HIS attitude and life choices.

Five years without solution, must be real rocket science to fix...
How about introducing new optional .nswag configuration option, something like 'SuccessStatusCodes' containing comma-separated list of allowed success status codes. By default it contains just '200'. If the option is not defined in .nswag file the client generation engine also treats it as '200'. If someone wants to extend it with other status codes (eg 204), he just adds it to the values list - '200,204'.
In this way no breaking changes would be introduced.

When will your PR be ready to review?

I could fix code generation issue for 204 response with the following operation filter:
public class NullableResponseOperationFilter : IOperationFilter
{
    /// <inheritdoc />
    public void Apply(OpenApiOperation operation, OperationFilterContext context)
    {
        foreach (var response in operation.Responses.Where(response => response.Key == "204"))
        {
            foreach (var content in response.Value.Content)
            {
                content.Value.Schema.Nullable = true;
            }
        }
    }
}

The action looks like this:
[HttpPost("{id:long}/action/{orderAction:orderAction}")]
[Produces(Constants.MimeTypes.Pdf, Type = typeof(FileStreamResult))]
[ProducesResponseType(typeof(FileStreamResult), StatusCodes.Status204NoContent)]
[ProducesResponseType(typeof(FileStreamResult), StatusCodes.Status200OK)]
public async Task<IActionResult> ExecuteActionAsync(int id, Models.Orders.Action orderAction)
{
    ...
}

The operation filter is used this way:
builder.Services.AddSwaggerGen(options =>
{
    options.OperationFilter<SwaggerDefaultValuesSessionIdParameter>();
});

I also noticed just by adding this annotation to my Controller endpoint method, the issue is resolve in the generated ts & cs files.
[SwaggerResponse(HttpStatusCode.NoContent, typeof(void))]

In .net core 8.0 I added [ProducesResponseType(statusCode: (int)HttpStatusCode.NoContent)] on my put controller, and now the generated code is handling 204 as if it was a valid response and no longer throws an exception.

This is all fine as long as the spec provides all necessary information and you are in control of the spec.
If the foreign API is not correctly documented, the generator will rightfully throw an error because the response is unexpected.
To work around this issue I opted for an extension method which wraps the possible exceptions, re-evaluates them and passes down the exception if desired.
IMHO blaming the generator for acting wrong on incomplete specifications is nonsensical. I wish, though, the generator would allow for a "ignore-all-except-success" parameter.
In any case, although a little bit tacky or hacky, this is the "band aid" I use now together with "Wrap success responses":

    public static bool IsHttpSuccessCode(this int statusCode) => statusCode is >= 200 and <= 299;

    /// <summary>
    /// Retrieves the typed result from the API response without throwing exceptions on success codes.
    /// This method is necessary because the API client will throw an exception if the API responds with other success status codes than 200 because the API spec does not include all possible return status codes.
    /// </summary>
    /// <typeparam name="T">The type of the result.</typeparam>
    /// <param name="responseTask">The API response.</param>
    /// <returns>The typed result.</returns>
    /// <exception cref="ApiException">Emits exceptions when the response status code indicates no success</exception>
    public static async Task<T> GetTypedResult<T>(this Task<ApiResponse<T>> responseTask)
    {
        try
        {
            var response = await responseTask;
            if (response.StatusCode.IsHttpSuccessCode())
            {
                return response.Result;
            }

            throw new ApiException("API call was not successful", response.StatusCode, null, response.Headers, null);
        }
        catch (ApiException e) when (e.StatusCode.IsHttpSuccessCode())
        {
            return default;
        }
        catch (ApiException e)
        {
            throw new ApiException("API call was not successful", e.StatusCode, e.Response, e.Headers,
                e.InnerException);
        }
    }

Still, sensical error handling is mandatory when performing calls.

I'm wondering how people say, that adding the 204 as response code will make it magically work.
We create a js client from the generated swagger file
nswag openapi2tsclient /input:swagger.json /output:src/lib/client.ts /TypeScriptVersion:5 /Template:Angular /HttpClass:HttpClient /UseSingletonProvider:true /RxJsVersion:7.8 /NullValue:Null /InjectionTokenType:InjectionToken
and it does not work.
The swagger file contains a 201, 204 and 404. The 204 has no content, as expected.
When can we expect this bug to be fixed?

Any news on this topic? I'm affected as well.

Any news on this topic? I'm affected as well. Is there any workaround? Can we somehow modify the way the 204 implementation looks like by modifying some template file?

Afaik no. We made a fork and editet the file src/NSwag.CodeGeneration/Models/ResponseModelBase.cs and removed the condition in IsSuccess for type checking. So, we only delegate to the HttpUtilities.
This works for us

@markusahrweileramcon Hey, thank you very much. Any idea how to replace the NSwag that is used by the Visual Studio code generator?

@AnReZa sorry, no. We only use the npm package which is also the only package i can confirm works, but I would guess, that any other package would use the same code.
If you're lucky, VSC uses maybe an installed package for that, so you "only" have to host a nuget package somewhere

@markusahrweileramcon It seems like it. I can update the NuGet package and it updates the version numbers in the generated code.

6 years of waiting :(


Icons index gen

src/svg-icons/index-generator.js is a naive implementation to generate an index.js file for SVG icons that uses synchronous calls to fs (nodejs API).
index-generator.js can be run with node using node index-generator.js to generate the index.js file (good idea to delete old index.js first).

@oliviertassinari @hai-cea take a look. Related to #1909, #1945 and #1475. It's simple but it does the job.
Removing
Icons: {
    NavigationMenu: require('./svg-icons/navigation/menu'),
    NavigationChevronLeft: require('./svg-icons/navigation/chevron-left'),
    NavigationChevronRight: require('./svg-icons/navigation/chevron-right'),
  },

from the main index.js will be a breaking change so we can let that stay around till the next release (v0.14.0) and encourage using SvgIcon.<IconName> now.

I'm impressed, there is more that 800 icons!

Updated with the changes you suggested @oliviertassinari. Feel free to merge if everything looks okay.

hello, i'm new to material ui and was wondering if someone can help me with a quick way to require the necessary components. Assuming I want to use AppBar, IconButton and NavigationClose say. Can I pass the array [AppBar, IconButton, NavigationClose] in to index-generator and it will generate a file containing require statements for the 3 elements so that I can cut and paste those in to main.js? Is that how index-generator works? Or do I require index.js from main.js once index.js is generated? thanks for the help.

@ee7klt index-generator is totally different from what you're looking for.
Use a require statement for each component as indicated on the component's doc page:

AppBar
IconButton
..


html content intercepted with WriteFile hook is not through mojo but written to a cache file

I was just trying the method explained here and hooked WriteFile to intercept and edit html pages. I could edit headers successfully and the edited ones were shown in network tab in the developer tools. but the html was never edited even the logged html to disk was edited successfully ! I used GetFileInformationByHandleEx to retrieve the filename WriteFile is writing to and logged it with the buffer and I saw that mojo intercepted data contained mostly unreadable bytes and the headers between them but the html content was coming from writing to chrome cache files ! I was doing all tests with Accept-Encoding header cleared with an extension and ensured there was no compression at all.

Ah that's a really interesting find, well done. Though it does make me wonder how the html content is actually being sent to the render.

this article https://developers.google.com/web/updates/2018/09/inside-browser-part2 says that data is sent from the browser process (network service ?) to the render through ipc, so I think it is shared memory because mojo also supports this or it can be passed through legacy ipc ?

it is for sure shared memory !
from https://github.com/chromium/chromium/blob/master/services/network/url_loader.cc the response body is being transferred with mojo data pipes mojo::CreateDataPipe which is based on shared memory as stated by mojo documentation. Mojo places a lock object in the shared buffer to synchronize write and read but notifications to start read and when read is complete seems to be sent via the ordinary pipe channel.
when searching for a method  to sniff mojo shared memory I got into this project https://github.com/tomer8007/chromium-ipc-sniffer (mentioned in your blog) and found that it says :
"
However, this project won't see anything that doesn't go over pipes, which is mostly shared memory IPC:
Mojo data pipe contents (raw networking buffers, audio, etc.) <---
Sandbox IPC
Possibly more things
"
so the answer was here from the beginning !

notification of shared memory writable and readable is based on mojo::SimpleWatcher
once the response if being received from network the renderer will receiver a handle to the shared memory to consume the html which will be written directly from the network stack into the shared memory buffer using OnStartLoadingResponseBody the decompression is handled by the network service and the renderer will be fed ready html content


PLC serial output don't contain the free memory value

The last 4 characters, that correspond to the hex representation of the free RAM, are always at zero.
Need to inspect the int to hex function.

Fixed in the commit: ce81771


Fantastic software! How do I get it to work with fasthttp?

given this example
https://github.com/valyala/fasthttp/blob/master/examples/helloworldserver/helloworldserver.go
how do i use the bandwidth throttling on it?
possible to give an example per domain name bandwidth throtlling?
this will be extremely useful for everyone!

How do you add iothrottler here?
import (
"github.com/valyala/fasthttp"
)
var proxyClient = &fasthttp.HostClient{
Addr: "upstream.host:port",
// set other options here if required - most notably timeouts.
}
func ReverseProxyHandler(ctx *fasthttp.RequestCtx) {
req := &ctx.Request
resp := &ctx.Response
prepareRequest(req)
if err := proxyClient.Do(req, resp); err != nil {
ctx.Logger().Printf("error when proxying the request: %s", err)
}
postprocessResponse(resp)
}
func prepareRequest(req *fasthttp.Request) {
// do not proxy "Connection" header.
req.Header.Del("Connection")
// strip other unneeded headers.
// alter other request params before sending them to upstream host

}
func postprocessResponse(resp *fasthttp.Response) {
// do not proxy "Connection" header
resp.Header.Del("Connection")
// strip other unneeded headers

// alter other response data if needed

}
func main() {
if err := fasthttp.ListenAndServe(":8080", reverseProxyHandler); err != nil {
log.Fatalf("error in fasthttp server: %s", err)
}
}

I'm not sure. It does appear that fasthttp.HostClient has a Dial member that returns a net.Conn. You could perhaps override that with your own Dial function that wraps the returned net.Conn with the IOThrottlerPool.AddConn.


persistence for data entry

The paginated data editor right now is a UI only component, it does not persist changes to the database.
Current best idea of how to approach this is similar to the model editor - wrap a DataRecord in an EventSourcedDataRecord, event source the changes in the UI, apply them to the database on save.
Attempt to keep the saving method abstracted away, because while the core of cozemble is saving to the associated postgres, we need to keep the door open to other saving strategics, like Airtable, Google Sheets, Rest APIs and who knows what else.
It will be tricky, possibly, to neatly map the mutation events to coherent GQL or SQL, so lets see.

[ ]  Refactor existing code to use EventSourcedDataRecord

The model editor can have its own persistence strategy.  Let's say its hasura or plain postgres fronted by express - Iwhatever,  can save models.
The policy around customer schemas and backend tech should be a user choice.
One use might elect to have hasura at endpoint 1, another might elect to have supabase at endpoint 2.
The model editor, when saving, will apply the user's chosen policy.
In the case of hasura, that means it will be configured with Hasura URL and creds, and postgres URL and creds.  It will migrate the database and track the changes.
I don't know enough about supabase right now to venture a guess as to what might be required.
Back to hasura.  This has the downside of one transaction to save model edits, another transaction to migrate the database, and then some http calls to hasura to track tables.  A lot of scope for things to go wrong.

I trialled Gql client using graphql-request.  Binning it though, because if the Gql server returns an error response, graphql-request converts that into a thrown error, and I lose the context in the json object that was returned from the server.
Case in point:  Hasura returned this:
{
  "errors": [
    {
      "extensions": {
        "code": "constraint-violation",
        "path": "$.selectionSet.insert_invoice.args.objects[0].customer.data"
      },
      "message": "Not-NULL violation. null value in column \"email\" violates not-null constraint"
    }
  ]
}

But graphql-request throw an error with this message:
Not-NULL violation. null value in column "email" violates not-null constraint: {"response":{"errors":[{"extensions":{"code":"constraint-violation","path":"$.selectionSet.insert_invoice.args.objects[0].customer.data"},"message":"Not-NULL violation. null value in column \"email\" violates not-null constraint"}],"status":200,"headers":{"map":{"content-type":"application/json; charset=utf-8"}}},"request":{"query":"mutation MyMutation {\n  insert_invoice(\n    objects: {invoice_id: \"1\", customer: {data: {first_name: \"1\", address: {data: {line_1: \"1\", post_code: \"1\"}}}}}\n  ) {\n    returning {\n      invoice_id\n      customer {\n        first_name\n        last_name\n        phone\n        email\n        address {\n          line_1\n          line_2\n          post_code\n        }\n      }\n    }\n  }\n}","variables":{}}}

This makes it much harder to get back the precise context of the error json object.
So going to try an axios based gql client implementation

Done sufficiently well to insert_ and update_ against a local Hasura instance


[dashboard] make tab titles unique

Screenshot

Description
Currently it's possible to create many tabs with overlapping names. The ideal solution would be to increment a number when creating new tabs, e.g. "Tab title", "Tab title (1)", "Tab title (2)", also making it impossible to save tabs with duplicate names.
Design input
[describe any input/collaboration you'd like from designers, and
tag accordingly. For design review, add the
label design:review. If this includes a design proposal,
include the label design:suggest]

@villebro this is still an issue, but it's an old and quiet one... wanna keep it open?

Closing this as stale since it's been silent for so long, and we're trying to steer toward a more actionable Issues backlog. If people are still encountering this in current versions (currently 3.x) please re-open this issue, open a new Issue with updated context, or raise a PR to address the problem. Thanks!


feat(MetadataService): add metadata_override

The OpenID providers describes configuration exactly as is. But sometimes it is requires to be override. From #1068 customisation of providers options is no more available. This solution is save #1068 behaviour and adds ability to override metadata of OpenID configuration.
So if token_endpoint need to be overrided it is may be done like this:
  const userManager = new UserManager({
    authority: issuer,
    ...
    //metadata,
    metadataOverride: {
      token_endpoint: tokenUrl,
    },
  })

Can you give an example why you need to override the metadata?

That is implementation of confidential client type (RFC 6749 - 2.1). The code snippet above overrides token endpoint to receive token via client as demonstrated in authorization code grant scheme RFC 6749 - 4.1:

That is implementation of confidential client type (RFC 6749 - 2.1). The code snippet above overrides token endpoint to receive token via client as demonstrated in authorization code grant scheme RFC 6749 - 4.1:

I don't follow your comment, and the parts that I can understand don't seem to explain the code in this PR.

It is mostly about client_secret also known as client password or google call it client key. Judging by the name, this thing should be specially protected. Moreover the github interface does not allow even the owner to see it again. It show it only once during creation only:

So I do not want to embed client_secret to web page so everybody can get it just run something like this:
% curl site.com | grep 'client_secret'

From this It is clear client_secret will be only in the client app on a server (not in the web app).
Docs of this module does not mention client_secret as required (same as another modules).
But the token endpoint at auth servers declares client_secret as required.
What is actually the answer from token endpoints of auth servers without client_secret:
Google requires it:

Github does not suppose access from browser at all:

So to access token endpoint we need to do request with client_secret (which is available only to the client app) - requests must be done from client app. Client App is a square with word Client on the schema above. The module oidc-client is in the square with words "User-Agent".
The user-agent (actualy oidc-client module) must not access for token to Authorization Server (see schema) but to the Client App. And already on server the client app adds the client_secret to request and pass it to Authorization Server.
To receive access token must be used our Client App responsible url (instead of Auth Server url) as demonstrated in schema above. That is the reason why token_endpoint must be overrided.

Docs of this module does not mention client_secret as required (same as another modules).

This library is not meant to be used server-side. From the About:

OpenID Connect (OIDC) and OAuth2 protocol support for browser-based JavaScript applications

Docs of this module does not mention client_secret as required (same as another modules).

This library is not meant to be used server-side. From the About:
There is no mentions or requirements above to run this library on server side (for server side is openid-client if need).

OpenID Connect (OIDC) and OAuth2 protocol support for browser-based JavaScript applications
There is no contradictions here.

Docs of this module does not mention client_secret as required (same as another modules).

This library is not meant to be used server-side. From the About:

There is no mentions or requirements above to run this library on server side (for server side is openid-client if need).

OpenID Connect (OIDC) and OAuth2 protocol support for browser-based JavaScript applications

There is no contradictions here.

I guess I still don't follow. If you have a STS that requires a client secret, even for a public client, then it's not really a secret and there's no concern with just setting it in the config (which is supported). And I don't see how that affects the discovery document. So I'm missing why those two concepts are conflated in this PR.

why do you find you need to change the discovery document from the STS your client app trusts?

It depends on how library is considering the object returned by userManager._settings.metadata::getMetadata()
If that object is an exact mirror of the discovery document just for to be immutable then additional logic or additional function that return overrided metadata or special endpoint getters must be added. And all the library must be rewritten to use that. (Why to keep copy and to have additional logic when all the library works with modified settings?)
Actually the location of mentioned object is _settings. The library uses it as API description. The API for browser point is different from discovery document, because as mentioned before at the token endpoint (and the other client_secret dependent endpoints) requests must be done through our trusted client server that has client_secret.

As of now currently we switched from using this library (found in some example nearest to required cases) to fully server side solution. User only interact with provider auth page. May be it helps for some one. I noticed some one asks same questions. So for now this pr no more required this time but it is not clear about future. Is it required to work such way? I hope some one will add his experience here.

As of now currently, we have moved from using this library (found in some examples closest to the required cases) to a fully server-side solution. The user interacts only with the provider's authorization page. Maybe it will help someone. I noticed that someone is asking the same questions. So at the moment this PR is no longer required, but it is unclear what the future is. Is it necessary to work like this? I hope someone shares their experience here.

As of now currently, we have moved from using this library (found in some examples closest to the required cases) to a fully server-side solution. The user interacts only with the provider's authorization page. Maybe it will help someone. I noticed that someone is asking the same questions. So at the moment this PR is no longer required, but it is unclear will this need it in the future. Is it necessary to work like this? I hope someone shares their experience here.

I still don't understand the need to change the STS' discovery doc... and since you've found a server-side library, then I think it's safe to close this unless I get more requests (and rationale). Thanks.


ZXing.Net.Mobile.Forms.Android generates Resources String.Hello mapping in Designer and breaks build.

I have added <IP_ADDRESS> (Mobile & Mobile.Forms) to an existing Xamarin project (Forms v<IP_ADDRESS>26) and started getting this in my Droid project on each clean build:
C:\XXXProject\XXXProject.Mobile\XXXProject.Mobile.Droid\Resources\Resource.Designer.cs(805,113,805,118): error CS0117: 'Resource.String' does not contain a definition for 'Hello'
global::ZXing.Net.Mobile.Forms.Android.Resource.String.Hello = global::XXXXProject.Mobile.Droid.Resource.String.Hello;
I can delete the reference and the project compiles cleanly. Have checked all Android XML files and am unable to find any reference to 'hello'.

Looks to be related to this issue on SO. Work around fixes for me, but frustrating none-the-less.
http://stackoverflow.com/questions/34042690/xamarin-forms-error-droid-resource-does-not-contain-a-definition-for-string

This should be fixed in 2.1.0-beta1 and higher.


Fix typo in dnf module README

I must have been thinking of cheese. Thanks.
It's also in the yum module.

@sorin-ionescu ping? Would it be possible to merge this?

@sorin-ionescu hi, would it be possible to get this merged? It's a pretty small fix.

@ryansb project seems to have been near-abandoned by @sorin-ionescu.

@Eriner It's not abandoned.

Tell that to this 5 month-old 2-line PR.

Neglected, not abandoned. I use Prezto. I can't abandon that which I use.

Looks abandoned to me. No commits to master in five months?

@msoucy if you want a repo with many of the valid PRs merged, I've been merging them in my fork.

@Eriner Open PR requests. I'll start merging again next week.

@sorin-ionescu I've made a fair few, but I need to head to bed. I will PR the debug module I made after things start being pulled. Thanks :+1:

Uh....ok.

For anyone else curious why this was closed, it was because it was actually pulled in via this commit: https://github.com/sorin-ionescu/prezto/commit/02b3d329acdef10c145a1068e9f2a419d8104444 and GitHub's UI isn't smart enough to figure that out.


Replace PageView with PageTabViewStyle

iOS 14.5 seems to have fixed the issues with PageTabViewStyle, so PageView can be replaced with that. I don't know if there's any specific benefit to it, but it could be done. Low priority issue.

This would make #75 more difficult. We likely don't need this anymore as laggy swiping has been resolved in f7711aa2aa063f74c441e3e0f0b2abf5dc9fed00 and keeping our own paging system gives more flexibility for stuff like #75.

Current plan is to replace with implementation from vertical-scroll (#79).


Move Iterable and RawTemplate objects to same file in lang.object

Purpose
$subject
Fixes #33414
Approach
I moved the RawTemplate object from raw_template.bal to object.bal, then deleted the raw_template.bal file.
Check List

[x] Read the Contributing Guide
[ ] Updated Change Log
[ ] Checked Tooling Support (#)
[ ] Added necessary tests

[ ] Unit Tests
[ ] Spec Conformance Tests
[ ] Integration Tests
[ ] Ballerina By Example Tests

[ ] Increased Test Coverage
[ ] Added necessary documentation

[ ] API documentation
[ ] Module documentation in Module.md files
[ ] Ballerina By Examples

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


Review flaky grandpa tests

---- tests::finalize_3_voters_no_observers stdout ----
thread 'tests::finalize_3_voters_no_observers' panicked at 'assertion failed: `(left == right)`
  left: `0`,
 right: `20`: Peer #1 failed to sync', core/finality-grandpa/src/tests.rs:481:3

I think this is related to the refactoring of sync code to use channels, which also refactored the testnet.

https://gitlab.parity.io/parity/substrate/-/jobs/133841

Ok, I'll take a look

Ok so the actual test failure was because net.sync() returned before the peers had actually finished syncing, which made this assertion failed.
net.sync() essentially keeps running for as long as messages are being routed between peers, which indeed also includes a potential source of flakiness in terms of determining when peers have indeed finished syncing, which is implemented in the form of https://github.com/paritytech/substrate/blob/c767d102545b8507ced4331df89bf5c2640bfb1e/core/network/src/test/mod.rs#L714
So for example if I reduce the value necessary for the syncing to be "done", I get some flakiness with tests failing, and they fail at different points in the syncing process. For example the below is from two different test runs with a low done value:
thread 'tests::finalize_3_voters_no_observers' panicked at 'assertion failed: `(left == right)`
  left: `5`,
 right: `20`: Peer #2 failed to sync', core/finality-grandpa/src/tests.rs:481:3

---- tests::finalize_3_voters_no_observers stdout ----
thread 'tests::finalize_3_voters_no_observers' panicked at 'assertion failed: `(left == right)`
  left: `1`,
 right: `20`: Peer #2 failed to sync', core/finality-grandpa/src/tests.rs:481:3
note: Run with `RUST_BACKTRACE=1` environment variable to display a backtrace.

So indeed, the net.sync() is potentially flaky, and you can certainly make it very flaky by setting the done value to 0. However, in practice, we set it to 3 and the results seem pretty good.
What's interesting in the failure at https://gitlab.parity.io/parity/substrate/-/jobs/133841 is that 5 tests all failed with left: 0, and Peer #1 failed to sync, which indicates that the peers didn't sync at all, as opposed to net.sync() being flaky and returning while syncing isn't finished.
To reproduce the left: 0, and Peer #1 failed to sync type of errors reliably on every test-run, one has to break the sync process entirely, for example by removing the call to self.import_queue.import_blocks(origin, new_blocks); in ChainSync.on_block_data, or by making net.sync() return immediately without routing any messages.
So I haven't found the reason for those failures, and I am inclined to rule-out the flakiness of net.sync() as a reason, because I think that would require the test to fail with different values for left: 0, and since all 5 tests failed on peer 1 and with 0 blocks synced, I suspect the failure related to a problem inside sync itself, to be determined.
Any ideas?


RLS: 0.17.5

The 0.23 pandas release caused a few issues, so I'd like to release 0.17.5 today. Master has some changes that may need to wait a while, so I'd like to branch 0.17.5 off the 0.17.4 tag and include the changes from https://github.com/dask/dask/pull/3499.
Is there anything else we want to backport?

Sounds good.
Would suggest grabbing commit ( https://github.com/dask/dask/commit/4756b59050ab3478b5dd197093d0d28e7b8a33fd ) and ( https://github.com/dask/dask/commit/5826ae0a108deedfca24e4d31db5f28a9e196026 ).
Might also grab commit ( https://github.com/dask/dask/commit/7c419580037f552befc2650cb13967dd6bdef86a ), but leave that up to you.

Good to close?

Yep, thanks!


[AMD-AIE] Support implicit source/target addressing in amdaie.npu.dma_cpy_nd

-- This commit adds a fix for supporting implicit source/target addressing in amdaie.npu.dma_cpy_nd ops as part of --iree-amdaie-lower-to-aie pass.
Signed-off-by: Abhishek Varma<EMAIL_ADDRESS>

Hi @jtuyls - I've addressed your changes.
Note: For the size/stride check only one lit test would suffice because staticSize/staticStride size is same - so we only need to check on shapeArr.size() being greater than that at the beginning of static metadata formation.

Hi @jtuyls - I've addressed your changes.
Note: For the size/stride check only one lit test would suffice because staticSize/staticStride size is same - so we only need to check on shapeArr.size() being greater than that at the beginning of static metadata formation.

That's not really guaranteed from the function's perspective right? Someone could change the sizes of the size and stride vectors so they're not the same anymore?

Hi @jtuyls - I've addressed your changes.
Note: For the size/stride check only one lit test would suffice because staticSize/staticStride size is same - so we only need to check on shapeArr.size() being greater than that at the beginning of static metadata formation.

That's not really guaranteed from the function's perspective right? Someone could change the sizes of the size and stride vectors so they're not the same anymore? You could add an assert to ensure the sizes are the same.

Sure. I've added an assert now within the function.


feat: Use parcel for dev watch

Before merging let's ensure that it works on your own local environment. Tested on mine and it seemed to be working well.


$crate is not a valid identifier inside paste::item!

demo reproduction here https://github.com/dtolnay/paste/pull/2/files
I found that Im not able to refer to a crate local macro inside a paste::item! block, that is the ability to express $crate::foo! which is required to enable rust 2018 style imports ( aka ditching #[macro_use].
The specific context is here where I'm using paste to generate idents which are inputs for another crate local macro

This looks like a rustc bug because I can reproduce it without any libraries.
repro/src/lib.rs
extern crate proc_macro;
use self::proc_macro::TokenStream;

#[proc_macro]
pub fn repro(input: TokenStream) -> TokenStream {
    input.into_iter().next();
    unimplemented!()
}

testing/src/lib.rs
macro_rules! m {
    () => {
        repro::repro!($crate);
    };
}

m!();

error: proc macro panicked
 --> src/main.rs:3:9
  |
3 |         repro::repro!($crate);
  |         ^^^^^^^^^^^^^^^^^^^^^^
...
7 | m!();
  | ----- in this macro invocation
  |
  = help: message: `"$crate"` is not a valid identifier

Moved upstream: https://github.com/rust-lang/rust/issues/55640.

Thanks @dtolnay


💡 [REQUEST] - SignUp feature

[x] I am from GSSoC'23.
[x] I would like to be assigned this task.

Signup option should be there along with login.
Code of Conduct
By submitting this issue, you agree to follow our Code of Conduct.

[x] I follow the Contributing Guidelines of this project.
[x] I have checked the current issues for duplicate problems.
[x] I have read the readme of this repository.

I am from GSSoC'23.
I would like to be assigned this task.

I am from GSSoC'23.
I would like to be assigned this task.