Does anyone have idea about my issue?

When I train my model with 8-GPU,1080Ti, I have this trouble. As shown in the following image. Does anyone have idea about my issue? Thanks!

@boycebai As you can see your total loss is increasing continuously, maybe this led to an explode in your weights and thus an overflow / out of memory occurred during prediction.Not sure though !!!

I also had this problem during training phase. What is your version of tensorflow ?

@Jiakui I m using version 1.1.0 of tensorflow.


Add Support on RTL

@daroldso
I added support on RTL, the default still LTR
Maybe I will add more option for RTL support
And I clean unused imports and fixed icons and links for npm package and license in README file

@daroldso ?


wkb.loads raises excepiton on ARM

Description

On execute:

from shapely import wkb
wkb.loads("0103000020E6100000010000001100000054AF9B18A49706403014A0E38DFE44405BB54B435875064019E390F25CFE4440CC52821E1B770640005B34D932FD4440AF1C8BB42E6806404FF6A13A5BFB4440B997BFC6778006402E67CD44D4FA4440EC3614D9F987064090BEC5AFA8F94440F840E4CAD08D064058FEE1C8F0F84440B9B3662202A60640BE20E4910AFA444091C9243D6FB70640B3A4E7CD28FB4440F941AC7C19C70640D56D9ADE55FC4440D0724941C8C406402D8374A0EEFC44406E1C19885CB8064093A4AEB7CFFF4440E4F685939FA906408F2F2AD04A004540F6B148EB42A00640D388798837004540385EC504769C064068B714BDF2FE44401640552FF18A0640ECBA502BA1FE444054AF9B18A49706403014A0E38DFE4440",hex=True)

On an ARM machine I get the follwing error:
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/xevi/.virtualenvs/osmand/lib/python3.6/site-packages/shapely/wkb.py", line 14, in loads
    return reader.read_hex(data)
  File "/home/xevi/.virtualenvs/osmand/lib/python3.6/site-packages/shapely/geos.py", line 409, in read_hex
    "Could not create geometry because of errors "
shapely.errors.WKBReadingError: Could not create geometry because of errors while reading input.

If I run the same code on my laptop it works
Expected behavior and actual behavior.
Return a shapely.geometry.polygon.Polygon
Steps to reproduce the problem.
from shapely import wkb
wkb.loads("0103000020E6100000010000001100000054AF9B18A49706403014A0E38DFE44405BB54B435875064019E390F25CFE4440CC52821E1B770640005B34D932FD4440AF1C8BB42E6806404FF6A13A5BFB4440B997BFC6778006402E67CD44D4FA4440EC3614D9F987064090BEC5AFA8F94440F840E4CAD08D064058FEE1C8F0F84440B9B3662202A60640BE20E4910AFA444091C9243D6FB70640B3A4E7CD28FB4440F941AC7C19C70640D56D9ADE55FC4440D0724941C8C406402D8374A0EEFC44406E1C19885CB8064093A4AEB7CFFF4440E4F685939FA906408F2F2AD04A004540F6B148EB42A00640D388798837004540385EC504769C064068B714BDF2FE44401640552FF18A0640ECBA502BA1FE444054AF9B18A49706403014A0E38DFE4440",hex=True)

Operating system
Linux  4.9.93-mainline-rev1 #1 SMP Tue Apr 10 09:42:40 UTC 2018 armv7l armv7l armv7l GNU/Linux

Shapely version and provenance
Shapely==1.6.4.post2 installed from pip

Which distro are you using?
What version of GEOS and how was it installed?

Theddistro is:
Distributor ID: Ubuntu
Description:    Ubuntu 18.04.2 LTS

I supose the geos version is this:
# dpkg -l|grep geos
ii  libgeos-3.6.2:armhf               3.6.2-1build2                      armhf        Geometry engine for Geographic Information Systems - C++ Library
ii  libgeos-c1v5:armhf                3.6.2-1build2                      armhf        Geometry engine for Geographic Information Systems - C Library

The linux wheels on PyPI don't support ARM (see https://github.com/pypa/manylinux/issues/84 for some background, we're using the manylinux1 docker image to build wheels). I thought that pip would prohibit you from installing them. What version of pip do you have on the ARM machine?
Since you were able to install GEOS on the ARM machine, you can uninstall shapely and reinstall using the --no-binary shapely option like this: python -m pip install --no-binary shapely shapely.

I thought that pip would prohibit you from installing them. What version of pip do you have on the ARM machine?

I suppose pip already installed from source? (indeed I would think pip would not download the wheel, at least that should be the purpose of manylinux I think)
There is some effort in conda-forge to provide arm packages (see eg https://github.com/conda-forge/conda-smithy/pull/1069, https://github.com/conda-forge/pandas-feedstock/pull/62), which could be interesting (although they didn't build the geo stack yet)


Force Buildpack

I just tried to deploy a php application to flynn, with a composer file.
But there is also a package.json, which leads flynn to think it's a nodejs app, and uses the nodejs buildpack.
Is there a way to force a buildpack, like heroku has, as described in the following link?
Described here: http://tomatohater.com/2013/08/29/want-heroku-apache-php-but-getting-nodejs-stack/

@temp you can use an explicit buildpack by setting the BUILDPACK_URL environment variable:
flynn env set BUILDPACK_URL=https://github.com/heroku/heroku-buildpack-php.git


feat: add Integration tests for dedupe

Currently, there are no integration tests to verify if the deduplication feature is working correctly. We need to add tests that confirm the dedupe logic is functioning as intended.

/bounty $100

Take design inspiration to implement this using https://github.com/tailcallhq/tailcall/pull/3014/files


Network module - show numbers after decimal point

I use polybar network module to monitor my network activity (ethernet). I have 30MBit/s internet connection and polybar shows the speed in MB/s (or KB/s) which may bother me, but not the greatest issue. The actual issue for me is that above 1000 KB/s it just rounds up to closest number in MB, which isn't very informative.
The solution would be simple: just  make it the same as in RAM module. It shows numbers after decimal point just fine.
Here's a screenshot of how it looks like when I'm downlaoding something:

This has already been implemented in #2054 (but not yet released)


Calls to uuid.NewV4().String() do not result in unique results

Recently uuid.NewV4().String() has started generating non-unique results.  (In fact it is generating an exact pattern of results over and over.)  Perhaps I am using the library wrong?  Do I need to seed the V4 generator in some way?

User error.  Sorry.


good idea but bad execution

Please make this Setting to an USER Policy. A Admin needs for example all Pages in the Settings App. A normal User only a few.  	Currently is this scenario not possible. Thx

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

ID: eed80fd0-c052-b4d6-0282-4414c64791a4
Version Independent ID: d055667c-9365-45a8-2a1e-8491d0067303
Content: Manage the Settings app with Group Policy (Windows 10)
Content Source: windows/client-management/manage-settings-app-with-group-policy.md
Service: unspecified
Product: w10
GitHub Login: @brianlic-msft
Microsoft Alias: dongill

Hi there,
Is it possible to apply this settings via GPO?
I'm searching everywhere on the web and it seems it is not available on the GPMC even after importing the ADMX files from 1607 1703 1709.

Where is the problem? Since 1703 you have a new GPO. More Information here: https://docs.microsoft.com/en-us/windows/client-management/manage-settings-app-with-group-policy
That's all well and good, but it is only a Computer GPO and not a User. Either all Settings on or all off as well as Administrator.

The problem is that I don’t have the option on the GPMC on my domain controllers to apply this policy globally it is available though on local group policy editor. I have already imported the ADMX files from 1703. :/

You import the ControlPanel.admx (Filedate 2017-04-11 for 1703) and of course the ADML Files to your central store \FQDN\SysVol\FQDN\Policies\PolicyDefinitions? Important: Don't set this regkey to 1 https://support.microsoft.com/en-us/help/2917033/an-update-is-available-to-enable-the-use-of-local-admx-files-for-group.

It worked. I was not replacing the old ADMX files with the new ones I was just pasting the new files instead.
Thanks a lot

@andreabichsel \  @shortpatti - please close. Thanks! :)


Use MemoryKVStore on nodejs environment (on build)

We can't access window on nodejs environment because there is no window global object on nodejs.
It makes "window is not defined" error on execution.
To avoid this problem, we should avoid the access to window by checking the typeof window.
Ex)
if (typeof window === "undefined") {
  // In server-side (nodejs), use memory kv store (volatile kv store).
  return new MemoryKVStore(prefix);
}
return new LocalKVStore(prefix);

After<EMAIL_ADDRESS>getKeplrFromWindow() function checks the window object before access like above way, and it returns undefined if typeof window === "undefined"
On osmosis frontend, we should avoid the more usage of window access, and the main points are usages of kv stores. IndexedDBKVStore and LocalKVStore requires the browser environment and it accesses window. To avoid this, use the MemoryKVStore on nodejs environment on build time. MemoryKVStore is volatile kv store and the main aim of that store is testing. However, we doesn't support the server-side rendering and it should be enough to generate pre-rendered build output.

@jonator keplr-wallet libraries are built for the extensions, thus ssr has not been taken into account. Also, I do not have plans as of right now to implement ssr.
However, if it were to be implemented, I would pass on the server side response as props to the client in the create root store stage and create a logic where they are initialized in the observable query class. I haven’t tried this myself so there’s no guarantee that this approach would work

@Thunnini
So perhaps we could create methods (from a SSR interface) on the non-user-data stores to trigger an axios load and return the result? Then we pass those as props to the page components which can init the stores with the SSR-fetched data, thus saving them an axios request on browser load.. I'll create an issue.


ng new error 'Tree type is not supported

Bug Report or Feature Request (mark with an x)
- [X] bug report -> please search issues before submitting
- [ ] feature request

This may be a duplicate of #11683, but I'm unable to ng new due to some global config problem and the error isn't helpful in helping me resolve it.
Command (mark with an x)
- [X] new

Versions
Node: 8.10.0
OS: linux x64
Angular:
...

Package                      Version
------------------------------------------------------
@angular-devkit/architect    <error>
@angular-devkit/core         <error>
@angular-devkit/schematics   0.7.1
@schematics/angular          <error>
@schematics/update           <error>
rxjs                         <error>

Repro steps
Not sure, happens every time I try to ng new on my machine. I have removed all globally installed yarn packages and deleting my global node_modules folder (verified by failing to run ng at all), then reinstalling them without success.
The log given by the failure

$ ng new my-app
Tree type is not supported.
Desired functionality
Scaffold me out an Angular app

Blew away my /home/stephen/.config/yarn/ folder and reinstalled @angular/cli globally and things seem to have cleared up.

This happened again while giving an Angular demo. Not sure why. Completely different computer, and this time with ng generate module <x>. Was broken temporarily and I don't know why. Happy to share more information, but we probably need to make the error message more descriptive.

I have this issue too.  ng new  doesn't work for me.  Everything's brand new.  Just installed (node, npm, angular) on my Windows 10 dev box.  Tried it both from git bash & windows command prompt.

Same issue on Yarn 1.9.4 and NPM 6.2.0. There is no way to create a project using the CLI. Also, some packages throws error.

I am also having the same issue!

as @StephenFluin note. I reinstall @angular/cli from global and project itself. it solved the issue.

Awesome!  It worked!
Sent from my iPhone X

On Aug 6, 2018, at 3:12 PM, Nisim Joseph<EMAIL_ADDRESS>wrote:
as @StephenFluin note. I reinstall @angular/cli from global and project itself. it solved the issue.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or mute the thread.

Agree that we at least need to improve the error message as a first step, so that the next report is more actionable.

for me, ng g c works but ng g action does not work. Returns Tree type is not supported. error.
Trying to reinstall, global, local @angular/cli , but no luck. Any quick solution for this? All ngrx commands are not working.

Yes.  That would really help.  Thank you.
On Wednesday, August 8, 2018, Alex Eagle<EMAIL_ADDRESS>wrote:

Reopened #11707 https://github.com/angular/angular-cli/issues/11707.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/angular/angular-cli/issues/11707#event-1778358313,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AA9_GiE39dLYudYt01e9FOrnH5f7JAoeks5uOyHCgaJpZM4VmczR
.

Issue again while generating new project. Can not find solution yet. Any solution?

I am using npm, I've uninstalled and reinstalled the cli but I still get
Tree type is not supported.

Same issue when calling generate applicate after creating new project.

I have also encountered this problem - am able to create components but not schematics.
$ schematics @schematics/schematics:schematic --name hello
Error: Tree type is not supported.

package.json:
    "@angular-devkit/architect": "^0.7.3",
    "@angular-devkit/build-angular": "^0.7.3",
    "@angular-devkit/core": "^0.7.3",
    "@angular-devkit/schematics": "^0.7.3",
    "@angular-devkit/schematics-cli": "^0.7.3",
    "@angular/cli": "^6.1.3",
    "@angular/common": "^6.1.3",
    "@angular/compiler": "^6.1.3",
    "@angular/compiler-cli": "^6.1.3",
    "@angular/core": "^6.1.3",
    "@angular/forms": "^6.1.3",
    "@angular/http": "^6.1.3",
    "@angular/platform-browser": "^6.1.3",
    "@angular/platform-browser-dynamic": "^6.1.3",
    "@angular/router": "^6.1.3",
    "@angular/upgrade": "^6.1.3",
    "@schematics/angular": "^0.7.3",
    "@schematics/update": "^0.7.3",

Since 6.1, it really feels like all the commands are not working correctly... I can't create a component in a specific module anymore via cli, the ng update does not work with PWA, schematics do not work anymore.... Everything is f***ed up, and it's been 3 weeks.

Why is this and the other related issue closed? This is STILL a problem! Trying to demo Angular for a team of devs and getting errors this early is not impressive.

I deleted my package-lock.json and node_modules, ran ng g m {name} and installed it afterwards. Stupid, but it worked. Hope they fix it soon.

Remove node_modules folder and reinstall angular cli again. It will resolve the issue

Upgrading npm to 6.4.1 solved issue for me
sudo npm update -g


Obsure error during publishing in CI

Some oddity is causing the publishing step to report an error that is not found during compile or test.
https://github.com/ValdemarGr/gql/actions/runs/7080815090/job/19269283239
wrong number of arguments at <no phase> for (

I can reproduce locally with ++3.3.0 relationalSkunk / Compile / doc

It seems upgrading from skunk-core 0.6.0 to 0.6.1 causes the issue, I'll leave the issue open until I find the root cause.


Remove dependency on once_cell and work around windows-gnu LTO issue

Replace once_cell with our own OnceLock that based on unstable std::sync::OnceLock due to MSRV issue[^1].
This also fixes #856 due to windows-gnu LTO issue.
[^1]: The current readme says crossbeam support at least 6 months old compilers, but that is a minimum guarantee and is actually more conservative.

bors r+


Filtering Declaration Options for Constants

Add various filtering declaration options for constant values, including a specific helper for true/false booleans.

@ipointer-netrise just curious ... is this still a work-in-progress? Seems generally useful.


Update README

test

test

test

foobar

sdfsdfsdf

recheck

I don't plan to work on this. Closing.


useCallback: transform incorrect when using arrow function with single params

input: useCallback(event => {})
current output: useCallback(event: any => {})
expect output: useCallback((event: any) => {})
It should add a brackets in this condition

This codemod relies on jscodeshift and Babel for code generation. Though it's not clear if it's a configuration mistake on our side or a bug in 3rd party dependencies. But definitely worth checking out.


EOF reached whilst reading during streaming

Description
Using the chatCompletions API I observed the following exception:
com.aallam.openai.api.exception.OpenAIHttpException: chunked transfer encoding, state: READING_LENGTH
    at com.aallam.openai.client.internal.http.HttpTransport.handleException(HttpTransport.kt:46)
    at com.aallam.openai.client.internal.http.HttpTransport.perform(HttpTransport.kt:36)
    at com.aallam.openai.client.internal.http.HttpTransport$perform$2.invokeSuspend(HttpTransport.kt)
    at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
    at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)
    at kotlinx.coroutines.EventLoopImplBase.processNextEvent(EventLoop.common.kt:284)
    at kotlinx.coroutines.BlockingCoroutine.joinBlocking(Builders.kt:85)
    at kotlinx.coroutines.BuildersKt__BuildersKt.runBlocking(Builders.kt:59)
    at kotlinx.coroutines.BuildersKt.runBlocking(Unknown Source)
    at kotlinx.coroutines.BuildersKt__BuildersKt.runBlocking$default(Builders.kt:38)
    at kotlinx.coroutines.BuildersKt.runBlocking$default(Unknown Source)
    at hydraulic.rendai.OpenAI.next(OpenAI.kt:60)
    at hydraulic.rendai.RendaiEngine.fixFiles(RendaiEngine.kt:29)
    at hydraulic.rendai.Rendai.go(Rendai.kt:69)
    at java.base/java.lang.reflect.Method.invoke(Method.java:568)
    at picocli.CommandLine.executeUserObject(CommandLine.java:2056)
    at picocli.CommandLine$RunLast.executeUserObjectOfLastSubcommandWithSameParent(CommandLine.java:2451)
    at picocli.CommandLine$RunLast.handle(CommandLine.java:2443)
    at picocli.CommandLine$RunLast.handle(CommandLine.java:2405)
    at picocli.CommandLine$AbstractParseResultHandler.execute(CommandLine.java:2263)
    at picocli.CommandLine$RunLast.execute(CommandLine.java:2407)
    at hydraulic.app.impl.AppFrameworkInstance.execute(AppFrameworkInstance.kt:111)
    at picocli.CommandLine.execute(CommandLine.java:2160)
    at hydraulic.app.impl.AppFrameworkRuntime.init(AppFrameworkRuntime.kt:60)
    at hydraulic.rendai.RendaiApplication.main(RendaiApplication.java:50)
  Caused by: java.io.IOException: chunked transfer encoding, state: READING_LENGTH
    at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
    at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
    at java.base/java.lang.Thread.run(Thread.java:833)
  Caused by: java.io.EOFException: EOF reached while reading
    ... 3 more

I guess it's possible the other side just hung up, but I figure I'd put it here in case there's some deeper problem being revealed.

Hi @mikehearn, yes it most likely that the connection dropped, could you share which HTTP client did you use ? thanks!

ktor-client-java-jvm

Did you ever find out what was causing this? Im currently looking into an EOF exception similar to this (although not using streaming); although using CIO (also tested with java engine).

It didn't seem to reoccur.

Maybe this can help someone else in the future save hours/days of debugging. My issue was related to using a different ktor version than what the library is using.


Give XP amount to a single party member

Actually you can only give XP to the whole party, it would be nice to be able to give XP to a single party member!

You can sort of do this now by using level up and set xp on a party member.


[Unexpected Behavior] 2 active players allows Double, a 1-player mode

What you're using
SoundWaves theme, both player slots enter to play. Mode selection screen. Single and Solo are grayed out as intended.
Expected behavior
Double should be grayed out like Single and Solo, as it is a 1-player mode.

This seems to be a side effect of imitating DDR behaviour. For reference, traditionally in DDR one credit would activate Single, while two credits (pressing Start on both sides) would activate Double or Versus/Couple; there would be operator settings called "Joint Premium" or "Double Premium" that would allow the player to play Double/Versus/Couple with one credit. I can't verify right now exactly what happens when you press Start on both pads when this is set in DDR, but this is definitely how DDR behaves on normal settings.

I can remember that, in A and A20, the cursor locks onto Double and goes immediately to the "select payment" screen.

I should clarify that when I said "traditionally" I was thinking of DDR Extreme and earlier in particular (bearing in mind that Stepmania was developed while these games were current). I don't really know what later games do in this case, and I do agree that there should probably be an option or something to make this clearer.


fixed the widget name for usd ltc

Hi @jaymedavis
Well done for spotting that. Happy to merge!
Thank you for contributing; If you are okay with it I would like to add you to a contributors list in the repo.

It would be an honor, thanks. :)
This is a fantastic project - well done!


Move "owner" from StorageClass yaml to PVC yaml

StorageClass yaml should involves cluster-specific information of ChubaoFS, while PVC yaml focuses on volume-specific information of ChubaoFS.
So the "owner" field in current StorageClass should be moved to PVC.

Kubernetes do not support to set the "owner" in PVC

If "owner" can not be set in PVC, how does PVC support multi-tenancy?
The only way to support multi-tenancy through CSI is using static PV,  is that correct?


Update README.md

When I try to compile your code did did not work.
I had to commit using the folder above. I am new in go so maybe I just did not have it right; I am just sharing in case other people have similar issue than me.

/lgtm


[Bug] Recursive shell nesting

TheFuck seems to recurse its prompt for the event where a shell is launched, directly or indirectly, from TheFuck's prompt.

 I discovered this because I use Ranger, a file manager where I often drop into a sub-shell. When I used TheFuck to launch Ranger, and then launch a sub-shell from Ranger, I encountered TheFuck's prompt again.
Testing was done on git-master, with TheFuck installed into a clean VirtualEnv.

Thanks for reporting, @FlyingWombat!
Can you please confirm de2e1d6 fixes the issue? 921-alias is the branch name. Thanks.

Yes, the issue is fixed on 921-alias


Add worker to publish specialist documents in background

publishing_api:publish_documents_as_placeholders rake task queries mongoDB and returns over 14k editions. For each edition, it was synchronously sending the edition payload to publishing-api. The connection to MongoDB was timing out after around 3000 editions causing the rake task to fail;
To solve this, the request to publishing-api was extracted into an asynchronous background sidekiq worker;
Trello Card

Can you please add a bit more context about the issues with the MongoDB connection? Under what circumstances does that happen? Is it a common problem?

could you please rebase this branch again against master? I don't think that 501cef8 and d30402c should be there.
as @boffbowsh already alluded to, adding a bit more context (ie that before this change, the process was synchronous, making it slow and fragile) to the commit message would be useful

As discussed offline, don't merge this yet. This rake task is about pushing new drafts to the Publishing API. What we're actually trying to do is to republish specialist documents, so we'll have to make different Publishing API calls...

@mathildathompson, apologies for giving you bad steer, but it looks like this rake task isn't what we want to be running. There's already a script in bin called bin/republish_documents which is the one that we should be using, not this rake task. Having tested it on Integration, it looks like the republish script is also single-threaded and will likely need changes similar to the ones in this PR. The rake tasks in lib/tasks/publishing_api.rake look like they were used for the initial data export to Publishing API and feel redundant now.
I'm going to close this PR and open another one which deletes lib/tasks/publishing_api.rake because I don't think we need it and it only creates confusion.

This hasn't been touched since 15 Apr 2016 so I'm deleting the branch.


fix: implement timeout for keepalive requests

Hi,
As with the issue raised in the original node-emberplus library, in this library keepalive requests are sent, but no timeout is implemented to act if no response was received within a certain timeframe.
This is a suggested fix.

Thanks for the PR!

Thanks for accepting it! :~)


Error Prone + Maven not writing patch file(s)

Description of the problem / feature request:
I am using Error Prone in combination with Maven in a multi-module project with the following configuration of the maven-compiler-plugin:
<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <configuration>
        <compilerArgs>
            <arg>-XDcompilePolicy=simple</arg>
            <arg>-Xplugin:ErrorProne -XepPatchChecks:MissingOverride,DefaultCharset,DeadException -XepPatchLocation:${project.build.sourceDirectory}</arg>
        </compilerArgs>
        <annotationProcessorPaths>
            <path>
                <groupId>com.google.errorprone</groupId>
                <artifactId>error_prone_core</artifactId>
                <version>2.4.0</version>
            </path>
        </annotationProcessorPaths>
    </configuration>
</plugin>

My expectation was that this would create multiple patch files that could be subsequently applied to sources files as needed. However, even though files are being reported as written in the console, they definitely aren't.
Example message from the console:
Changes were written to /Users/XXX/<path-to-project>/<module-name>/src/main/java/error-prone.patch. Please inspect the file and apply with: patch -p0 -u -i error-prone.patch

I don't know if this is relevant but I am on macOS Catalina 10.15.7
Bugs: what's the simplest, easiest way to reproduce this bug? Please provide a minimal example if possible.

Setup a maven project with a parent POM and at least 1 submodule and edit the maven-compiler-plugin configuration to match the above.
Add a source file containing code that fails at least one of the specified checks.
Compile the project with maven.
Observe that no files are written.

What version of Error Prone are you using?
2.4.0
Have you found anything relevant by searching the web?
I've search through closed issues here and went over a couple of StackOverflow posts but didn't find anything relevant to my issue.

Setup a maven project with a parent POM and at least 1 submodule and edit the maven-compiler-plugin configuration to match the above.
Add a source file containing code that fails at least one of the specified checks.
Compile the project with maven.
Observe that no files are written.

I cannot reproduce, following those steps in the following example results in a patch file being written. Can you provide a complete example that demonstrates the problem?
If you use a different path instead of ${project.build.sourceDirectory for -XepPatchLocation: (e.g. a temporary directory outside of the source root), does that make a difference?
for f in $(find . -type f); do echo "=== $f"; cat $f; done
=== ./lib/src/main/java/com/foo/Foo.java
package com.foo;

final class Foo {
  void f() {
    new Exception();
  }
}
=== ./lib/pom.xml
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>

<artifactId>lib</artifactId>

<parent>
  <groupId>org.test</groupId>
  <artifactId>super-pom</artifactId>
  <version>1.0.0-SNAPSHOT</version>
</parent>

</project>
=== ./pom.xml
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>

<groupId>org.test</groupId>
<artifactId>super-pom</artifactId>
<packaging>pom</packaging>
<version>1.0.0-SNAPSHOT</version>

<modules>
  <module>lib</module>
</modules>

<build>
  <plugins>
    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-compiler-plugin</artifactId>
      <version>3.8.0</version>
      <configuration>
        <source>8</source>
        <target>8</target>
        <compilerArgs>
          <arg>-XDcompilePolicy=simple</arg>
          <arg>-Xplugin:ErrorProne -XepPatchChecks:MissingOverride,DefaultCharset,DeadException -XepPatchLocation:${project.build.sourceDirectory}</arg>
        </compilerArgs>
        <annotationProcessorPaths>
          <path>
            <groupId>com.google.errorprone</groupId>
            <artifactId>error_prone_core</artifactId>
            <version>2.4.0</version>
          </path>
        </annotationProcessorPaths>
      </configuration>
    </plugin>
  </plugins>
</build>
</project>

$ mvn clean package
...
Changes were written to ./lib/src/main/java/error-prone.patch. Please inspect the file and apply with: patch -p0 -u -i error-prone.patch

$ cat lib/src/main/java/error-prone.patch
--- com/foo/Foo.java
+++ com/foo/Foo.java
@@ -3,5 +3,5 @@
 final class Foo {
   void f() {
-    new Exception();
+    throw new Exception();
   }
 }

Setup a maven project with a parent POM and at least 1 submodule and edit the maven-compiler-plugin configuration to match the above.
Add a source file containing code that fails at least one of the specified checks.
Compile the project with maven.
Observe that no files are written.

I cannot reproduce, following those steps in the following example results in a patch file being written. Can you provide a complete example that demonstrates the problem?
If you use a different path instead of ${project.build.sourceDirectory for -XepPatchLocation: (e.g. a temporary directory outside of the source root), does that make a difference?
for f in $(find . -type f); do echo "=== $f"; cat $f; done
=== ./lib/src/main/java/com/foo/Foo.java
package com.foo;

final class Foo {
  void f() {
    new Exception();
  }
}
=== ./lib/pom.xml
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>

<artifactId>lib</artifactId>

<parent>
  <groupId>org.test</groupId>
  <artifactId>super-pom</artifactId>
  <version>1.0.0-SNAPSHOT</version>
</parent>

</project>
=== ./pom.xml
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>

<groupId>org.test</groupId>
<artifactId>super-pom</artifactId>
<packaging>pom</packaging>
<version>1.0.0-SNAPSHOT</version>

<modules>
  <module>lib</module>
</modules>

<build>
  <plugins>
    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-compiler-plugin</artifactId>
      <version>3.8.0</version>
      <configuration>
        <source>8</source>
        <target>8</target>
        <compilerArgs>
          <arg>-XDcompilePolicy=simple</arg>
          <arg>-Xplugin:ErrorProne -XepPatchChecks:MissingOverride,DefaultCharset,DeadException -XepPatchLocation:${project.build.sourceDirectory}</arg>
        </compilerArgs>
        <annotationProcessorPaths>
          <path>
            <groupId>com.google.errorprone</groupId>
            <artifactId>error_prone_core</artifactId>
            <version>2.4.0</version>
          </path>
        </annotationProcessorPaths>
      </configuration>
    </plugin>
  </plugins>
</build>
</project>

$ mvn clean package
...
Changes were written to ./lib/src/main/java/error-prone.patch. Please inspect the file and apply with: patch -p0 -u -i error-prone.patch

$ cat lib/src/main/java/error-prone.patch
--- com/foo/Foo.java
+++ com/foo/Foo.java
@@ -3,5 +3,5 @@
 final class Foo {
   void f() {
-    new Exception();
+    throw new Exception();
   }
 }

hey @cushon thanks for taking the time to provide me with a working example. I've tried it on my side and it worked perfectly.
I then went back to my original project to compare the configurations, and they were the same. I re-ran mvn and it worked this time, so I'm not sure what I did wrong when I first opened this issue...
Anyways, thank you again ! I will close the issue and re-open another one if need be.

hey @cushon thanks for taking the time to provide me with a working example. I've tried it on my side and it worked perfectly.
I then went back to my original project to compare the configurations, and they were the same. I re-ran mvn and it worked this time, so I'm not sure what I did wrong when I first opened this issue...
Anyways, thank you again ! I will close the issue and re-open another one if need be.


String incorrectly interpreted as record in Schemafull table

I have a scemafull with a field defined as string and if I set it to a string which is in the form of a record (e.g. test:string) then it throws an exception. There is a workaround in surrealql, but I don't know how to do that in this SDK.
Minimal replication example:
using SurrealDb.Net;
using SurrealDb.Net.Models.Auth;

public class Test {
    public required string Name { get; set; }
}

var db = new SurrealDbClient("ws://<IP_ADDRESS>:8000/rpc");
await db.SignIn(new RootAuth { Username = "root", Password = "root" });
await db.Use("test", "test");

const string tableName = "test";

await db.RawQuery(@$"DEFINE TABLE {tableName} SCHEMAFULL;
DEFINE FIELD name ON TABLE {tableName} TYPE string;");

await db.Create<Test>(tableName, new Test(){Name = "Test normal data"});
await db.Create<Test>(tableName, new Test(){Name = "Test normal data2"});
await db.Create<Test>(tableName, new Test(){Name = "Test normal data3"});
await db.Create<Test>(tableName, new Test(){Name = "example:string"});

Where it throws Error: SurrealDb.Net.Exceptions.SurrealDbException: There was a problem with the database: Found example:string for field `name`, with record `test:djqxpvplqi7eorq6pp9t`, but expected a string
As a workaround, I can set the type to be any, but that is no longer representative of the data I am putting in it.

Hello Josh,
Unfortunately, the only solution for this to work would be to write the Query by hand. This bug will be fixed in the future.

Hello Josh,
Unfortunately, the only solution for this to work is to write the Query by hand. This bug will be fixed in the future.

Thanks for the quick reply.
I am just planning on using any for now, since it works with my existing code and I think I can change it later if I need to.


OpenEncryptedWithPass() cannot take ModeFlags.WriteRead

I found a bug, that revolves around encrypting a file and calling OpenEncryptedWithPass() function (SaveAccess.cs:90):
FileAccess.OpenEncryptedWithPass(filePath, FileAccess.ModeFlags.WriteRead, pass);

Changing from FileAccess.ModeFlags.WriteRead to FileAccess.ModeFlags.Write will allow the file to be written and saved correctly.
EDIT:
The same goes for OpenEncrypted() function.

Thanks for finding this! Turns out that WriteRead isn't supported by OpenEncrypedWithPass. I'll commit the fix and get the next version uploaded. Not completely sure why I was using WriteRead anyway, as I was only writing with it.


Article needs to be streamlined and checked for content

I am testing CSPs and going through this article.
The style guides are off, and the content is jumbled.. look to:
Update/IgnoreMOUpdateDownloadLimit
To validate, the text appears to be broken up in two places??
Some state Data type, like Integer, etc.. some do not.. A Style guide for each CSP is ideal.

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

ID: 91ca58bd-f279-7739-0140-c4bd56784768
Version Independent ID: 1d2ecc90-58a3-6bcd-84ae-ef04d7a3b7b4
Content: Policy CSP - Update
Content Source: windows/client-management/mdm/policy-csp-update.md
Product: w10
GitHub Login: @MariciaAlforque
Microsoft Alias: maricia

@Heidilohr / @jdeckerms, it looks like that there are too many quotes or the quotes are not in the correct order in the command.

@officedocsbot assign @jvsam

Hi @Tdiwestyguy, thank you for your feedback. Since you've opened three issues related to the Policy CSP - Update article, I am combining #1774, #1775 and #1750 to the request that I will forward to the Windows writing team. Our main goal here is to ensure users have the best Windows 10 experience by providing useful, accurate and up-to-date documentations.

Forwarding this along to @Dansimp so he can get you in touch with the writer currently responsible for CSP articles.

@jvsam Issues #1774 and #1775 are now resolved. The Update/PauseFeatureUpdatesStartTime
and Update/PauseQualityUpdatesStartTime policy descriptions now include syntax and examples.
For issue #1750, I am already in touch with the product team to get it resolved.

Hi @ManikaDhiman that's great! Thank you and we appreciate the assistance as well @Heidilohr.
@Tdiwestyguy several updates were made on the Policy CSP - Update documentation. Kindly review when you have the chance. We'll update this when issues with regard to Update/IgnoreMOUpdateDownloadLimit policy are resolved.
NOTE: Updated the statuses of issues #1174 and #1175.

Hi @ManikaDhiman, have you heard from the product team? Are the updates applied on the Policy CSP doc includes Update/IgnoreMOUpdateDownloadLimit CSP? I am unable to track the commits and PRs since they are not linked. Please confirm. Thank you.

Hi @jvsam, thanks for the follow up! The updates for Update/IgnoreMOUpdateDownloadLimit policy are still under discussion with the product team. I will update the doc and the status here as soon as it gets resolved.

Got it, thanks @ManikaDhiman !

Hi @ManikaDhiman similar to my inquiry here #1894, can you please provide an update? Much appreciated! Thanks.

Hi jvsam, thanks for the follow up. I am still awaiting response from the product team on  Update/IgnoreMOUpdateDownloadLimit. I will update the docs as soon as I get any updates. Thanks!

Thank you for staying on top of this @ManikaDhiman!

Hi @ManikaDhiman I hope all is well. Do you have any update from the product team regarding this issue and #1894? Thanks and regards.

Hi @jvsam, based on product team's feedback, I have created a PR to update the content of "Update/IgnoreMOAppDownloadLimit" and "Update/IgnoreMOUpdateDownloadLimit" policies. The updates will be available soon. Hope this helps in resolving the issue. Thanks!

Great to hear that @ManikaDhiman! Thank you. Looking forward to the updates and then we can finally resolve and close this issue. As always, we appreciate all the help!

Hello @Tdiwestyguy, I just checked the docs and the updates on the "Update/IgnoreMOAppDownloadLimit" and "Update/IgnoreMOUpdateDownloadLimit" policies made by @ManikaDhiman are displayed here at docs.microsoft.com. Like what was mentioned on #1894, it may take a while to get all the information for all the policies listed in the Policy CSP - Update documentation. I am sure as new information comes in, the doc will be updated as well. We will now close this issue. Feel free to re-open or create another issue through the doc's feedback feature, if you have other suggestions or ideas to improve the quality of this documentation.
Thank you for your feedback and for being part of the Microsoft Docs community!

@officedocsbot close


Update to newer MLIR

This PR will address #162.

Let's merge this thing!

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Warning: This coverage report may be inaccurate.
This pull request's base commit is no longer the HEAD commit of its target branch. This means it includes changes from outside the original pull request, including, potentially, unrelated coverage changes.

For more information on this, see Tracking coverage changes with pull request builds.
To avoid this issue with future PRs, see these Recommended CI Configurations.
For a quick fix, rebase this PR at GitHub. Your next report should be accurate.

Details

150 of 153 (98.04%)  changed or added relevant lines in 4 files are covered.
49 unchanged lines in 2 files lost coverage.
Overall coverage decreased (-0.8%) to 82.607%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

mlir_graphblas/tests/test_algorithms.py
0
1
0.0%

mlir_graphblas/tests/test_verify.py
146
148
98.65%

Files with Coverage Reduction
New Missed Lines
%

mlir_graphblas/engine.py
1
75.57%

mlir_graphblas/tests/test_mlir_builder.py
48
85.63%

Totals

Change from base Build<PHONE_NUMBER>:
-0.8%

Covered Lines:
2845

Relevant Lines:
3444

💛  - Coveralls


Rejection sampling for SerializingChallenger64

Quick followup of #264 + unused import warnings

Forgot to add that, thank you!


More Sessions API Standardization

Document APIs
support endpoints with and without file extensions
change some of the tests to use the new endpoints
add download names to download raw files and download pcap in session detail

seems good, i might want to go back to the previous /csv and /pcap and allow [./]csv etc, but we can do that later


Linking to Augment's SchemaNode fails when the resolution order is "wrong"

Following files are involved:
https://github.com/theia-ide/yang-lsp/blob/master/yang-lsp/io.typefox.yang.ide/src/test/resources/good/augment-super.yang
https://github.com/theia-ide/yang-lsp/blob/master/yang-lsp/io.typefox.yang.ide/src/test/resources/good/augment-sub1.yang
https://github.com/theia-ide/yang-lsp/blob/master/yang-lsp/io.typefox.yang.ide/src/test/resources/good/augment-sub0.yang
If the order of loading/resolving is as above everything works fine. But if the order is augment-sub0.yang, augment-super.yang, augment-sub1.yang a linking error is reported Couldn't resolve reference to SchemaNode 'interfaces'.
interfaces  is a container inside the augment-sub0 file.
I suppose this is because:
When inside augment-sub0 first the belongs-to: augment-super is resolving, inside  augment-super we have two includes to augment-sub0 and augment-sub1. augment-sub1 belongs to augment-super and includes augment-sub0
That complex constellation seem to be a valid case (I suppose it is because inside a test) and should work independent of resolution/loading order

Fixed


Mobile browser support?

From @phocks on July 20, 2015 11:23
For some reason this wasn't scrolling to the top for me when I tested on Chrome and Safari on iOS 8. I would click on a link that was down the page a bit and it would load half scrolled down. Seemed to work perfectly on Desktop.
I managed to achieve similar functionality with:
Router.onBeforeAction(function() {
  $(window).scrollTop(0);
  this.next();
});

Of course this doesn't have the animation scroll, but I don't really need that.
Has anyone else got this package working on Mobile browsers?
Copied from original issue: okgrow/iron-router-autoscroll#15

From @pauldowman on July 21, 2015 20:0
Thanks for reporting it, we'll check this out. In the meantime you might want to double-check that it's not #9.

From @phocks on July 25, 2015 6:30
Thanks, no I have tried refreshing manually. I should be able to look in to the code more when I have a bit more time next week.

@phocks - I went through our entire test suite on a mobile Safari on iOS, and did not detect this. To do this yourself, spin up the apps in the examples/ folder of this repo, connect, and navigate around.


[DataProtection] Wrong argument name in example generation

This should be a polymorphism simple scenario.
check out this branch to repro https://github.com/Azure/azure-rest-api-specs/tree/cli-config-for-dataprotection

merged


Client Allocation Request for: qikanlogo.com

Client Allocation Questions
Core Information

Name: qikanlogo.com
Website / Social Media: http://qikanlogo.com
Region: Asia (excl. Greater China)
DataCap Requested: 1TiB
Addresses to be Notarized: f1ujyknzb77k5jwbmmfsqyjm5y62z6asbhnvpzr7y
Notary Requested: swatchliu

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

Thank you for your request. But the categories and the 'Inquiry Trial' button on your website do not seem to be accessible properly.


alg:SigningMethod and alg:DigestMethod from peer's metadata should be used when signing an AuthnRequest

In the code creating signed AuthnRequest messages (and other request messages) we should consider the peer's metadata entry and honor the <alg:SigningMethod> and <alg:DigestMethod> elements (if any).
Today the signature algorithm is statically configured.

Fixed in PR https://github.com/litsec/opensaml-ext/pull/60.


added support for T-SQL left and right joins (= and =)

Added support for 2 new operators supported:
*= (LEFT OUTER JOIN)
=* (RIGHT OUTER JOIN)
This is Transact-SQL syntax.
I thought it would be good to have that in addition to the Oracle (+)
Please note I don't handle misplaced usage of that operator

@nbauma109
Are you working on this issue?
Or has this PR been abended?
I have client code that needs to be parsed that are using the old style '*=' of outer join

No. Sorry. Must have overlooked it. The changes look good so far. Please remove the conflicts and I will merge it.

@wumpz I didn't create the PR, the author is @nbauma109... So I can't fix the conflicts...

Thank you for your contribution!
I have merged it into latest master and resolved any conflicts.


What's the relationship between the project and the foundation?

Does one control the other?

The Foundation is set up to support and complement the existing Rust teams. It doesn’t have a role in accepting RFCs, for example, nor does it control the membership of the Rust teams. A good mental model is to think of the Foundation as a resource that teams can use to address their needs. See #9 for some examples of the kinds of things we have in mind. The project also has representation on the Foundation board. You can read more about that here. We expect to be posting more on this topic, perhaps in a blog post or other document, but hopefully this gives you a good sense for the plan. Feel free to post follow-up questions in new issues. =)


Reorganize Effection Documentation

I was reading through the effection v3 docs and had some ideas on better organizing its content:

Getting Started
This section should be reserved for content that prepares the readers for learning Effection. We want our users to be able to read top down without without having to jump back and forth forward and back so it would make more sense to put Typescript lower as it discusses Operations before it's been introduced, and the same goes for the current fetchWeekDay tutorial in the Tutorial page.
This is also where we can add the new FAQ page (#811).
Learn Effection
In the Learn Effection section, I'm proposing the following changes:

Add an Overview page - this will be our "How to navigate these docs" page and provide a high level overview of the different components of Effection
Group guides together by adding dividers - I think the dividers could help give readers a breathing spot in their journey of learning Effection
Create a single page for race(), sleep(), all(), call(), ensure(), and whatever else

I chose Utilities as a placeholder but we can call it something else

Scope
Other than the Overview page, each page should introduce a new API for consistency so I'm still trying to figure out where the best place would be for Scope. We could first introduce the Three Outcomes section of Scope in Operations and sprinkle the rest in as we introduce more APIs. This way users can learn more about scopes incrementally.
TL;DR
I think it would also be very helpful if each page started with a TL;DR that explains when a user needs to use {x}. If we decide to create an Overview page, we could take the short descriptions we write for the high level overview and just paste it into the TL;DR sections.
Tutorials
And in this section, we can put all the How-Tos. I think this place would be the logical place to put Typescript and Error Handling as neither of these pages introduces any new Effection APIs and by the time the readers get to the tutorial section, they will have already read up on main/run, spawn, suspend, and know what an Operation is.
We may want to create a separate section for Examples down the road but I think we can just put everything into Tutorials for now.

I love this type of hi-level thinking!
It might help to use this as a consultation for something that has though about how to present documentation https://documentation.divio.com

👍 from me for this proposal.
Regarding Scope: there 3 three aspects to it.

Operation scope, lexical scope, and the relationship between the two
Context - API for consuming operation dependencies from the tree of operation scope rather than lexical scope.
useScope is a lower-level utility helpful for bridging the non-structurally concurrent worlds to the structurally concurrent.

@cowboyd it occurred to me while looking at this list that we need a place to talk about Delimited Continuations. Maybe if we have an Advanced Section, we should put it there. We need to explain how operations work for any Effection core contributor, we need to have that information available for people who haven't yet engaged with us. It might be easy enough to record a screen-sharing session where you explain DC.

Another option would be to just include Delimited Continuation or a link to it from the GitHub README if it's something that's more relevant to contributors of Effection.

We could create CONTRIBUTING.md file and add a link there to a document on Deliminited Continuation. Alternatively, we could just link to the continuations repository and add the information there.

Yeah, I think the idea that "Advanced" usage would not include delimited continuations. Neither writing, nor understanding, so in that sense it's not really a use-case. It's more of an architecture. I do think that a section on "internals" might be appropriate where we can talk about:

delimited continuations
frames
context chain

These are all helpful things to know if you are working on Effection itself, but never if you are using it.

@cowboyd what do you think about putting this information into the repository rather than the docs site?

Yeah, that would be ok with me. Whichever medium works best


File/Folder Checking

Handle errors when trying to load a file/folder that isn't appropriate without crashing

Can now cancel uipickfiles without crashing

uipickfiles will now filter only folders and .hdr files.


[SPARK-35688][SQL]Subexpressions should be lazy evaluation in GeneratePredicate

What changes were proposed in this pull request?

Currently the subexpression elimination in GeneraterPredicate is eager execution, add lazy evaluation mode for subexpression elimination. Fix error when the subexression elimination is inside a condition branch and the subexression depends on the other conditions.
For instance:
-- c1 as type of array
-- +-------------------------------+
-- |c1                             |
-- +-------------------------------+
-- |[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]|
-- |[1, 2, 3, 4, 5]                |
-- +-------------------------------+
set spark.sql.ansi.enabled = true;
set spark.sql.codegen.wholeStage = false;

select * from table_name where size(c1) > 5 and (element_at(c1, 7) = 8 or element_at(c1, 7) = 7);

In this case, element_at depends on condition size(c1) > 5, before this pr, an exception will throw when we disable codegen.
As the lazy evaluation is expensive (we need to extract a variable and check the subexpr is initialized or not before we use the subexpr), we keep subexpression eager execution in GenerateUnsafeProjection/GenerateMutableProjection
Why are the changes needed?

Fix bug when subexpression elimination enabled.
Does this PR introduce any user-facing change?

No.
How was this patch tested?

Exsiting test and new test.

Can one of the admins verify this patch?

cc @viirya @cloud-fan @maropu

"select * from table_name where size(c1) > 5 and (element_at(c1, 7) = 8 or element_at(c1, 7) = 7);

The example is based on the order of predicates. But I remember the order is not guaranteed. Spark can internally reorder the predicates. That's said we should not assume element_at(c1, 7)  must be evaluated after size(c1) > 5. If you need conditional relation, you should use conditional expression, e.g. if (size(c1) > 5, element_at(c1, 7) = 8 or element_at(c1, 7) = 7, false).

"select * from table_name where size(c1) > 5 and (element_at(c1, 7) = 8 or element_at(c1, 7) = 7);

The example is based on the order of predicates. But I remember the order is not guaranteed. Spark can internally reorder the predicates. That's said we should not assume element_at(c1, 7)  must be evaluated after size(c1) > 5. If you need conditional relation, you should use conditional expression, e.g. if (size(c1) > 5, element_at(c1, 7) = 8 or element_at(c1, 7) = 7, false).

It also throws an exception if we use IF syntax, due to subexpression eager execution. A more generic case is the lateral view show in the Jira description.

It also throws an exception if we use IF syntax

Then it's definitely a bug we need to fix, as IF should guarantee the execution order. When did we introduce this bug?

BTW, the optimization rule is SimplifyConditionalsInPredicate. It does If(cond, trueValue, FalseLiteral) => And(cond, trueValue).

The exception happens not only in the If expression but also in other conditional expressions(CaseWhen/Coalesce).
For instance:
CaseWhen
spark.read.load("/tmp/parquet/t1")
  .filter(
    """
      |case
      |    when element_at(c1, 1) = 1 then 1
      |    when element_at(c1, 7) = 7 then 7
      |    when element_at(c1, 7) = 8 then 8
      |    else 10
      |end = 7
      |or
      |case
      |    when element_at(c1, 1) = 1 then 1
      |    when element_at(c1, 7) = 7 then 7
      |    when element_at(c1, 7) = 8 then 8
      |    else 10
      |end = 8
      |""".stripMargin)

Coalesce
spark.read.load("/tmp/parquet/t1")
  .filter(
    """
      |coalesce(element_at(c1, 1) > 0, element_at(c1, 7) > 0, element_at(c1, 7) + 1 > 0) == true
      |or
      |coalesce(element_at(c1, 1) > 1, element_at(c1, 7) > 1, element_at(c1, 7) + 1 > 1) == true
      |""".stripMargin
  )

In both tow case, element_at(c1, 7) will be extracted and be eagerly executed.
I'm not sure, whether spark should guarantee the order of predicates for conditional expression(If/CaseWhen/Coalesce).

This is generate code.
Source code
spark.read.load("/tmp/parquet/t1")
  .filter(
    """
      |case
      |    when element_at(c1, 1) = 1 then 1
      |    when element_at(c1, 7) = 7 then 7
      |    when element_at(c1, 7) = 8 then 8
      |    else 10
      |end = 7
      |or
      |case
      |    when element_at(c1, 1) = 1 then 1
      |    when element_at(c1, 7) = 7 then 7
      |    when element_at(c1, 7) = 8 then 8
      |    else 10
      |end = 8
      |""".stripMargin)

Generated predicate '(CASE WHEN (element_at(input[0, array<int>, true], 1, true) = 1) THEN false WHEN (element_at(input[0, array<int>, true], 7, true) = 7) THEN true WHEN (element_at(input[0, array<int>, true], 7, true) = 8) THEN false ELSE false END OR CASE WHEN (element_at(input[0, array<int>, true], 1, true) = 1) THEN false WHEN (element_at(input[0, array<int>, true], 7, true) = 7) THEN false WHEN (element_at(input[0, array<int>, true], 7, true) = 8) THEN true ELSE false END)':
/* 001 */ public SpecificPredicate generate(Object[] references) {
/* 002 */   return new SpecificPredicate(references);
/* 003 */ }
/* 004 */
/* 005 */ class SpecificPredicate extends org.apache.spark.sql.catalyst.expressions.BasePredicate {
/* 006 */   private final Object[] references;
/* 007 */   private boolean subExprIsNull_0;
/* 008 */   private int subExprValue_0;
/* 009 */   private boolean subExprIsNull_1;
/* 010 */   private boolean subExprValue_1;
/* 011 */   private boolean globalIsNull_0;
/* 012 */   private boolean value_10_0;
/* 013 */   private boolean globalIsNull_1;
/* 014 */   private boolean value_20_0;
/* 015 */   private boolean globalIsNull_2;
/* 016 */
/* 017 */   public SpecificPredicate(Object[] references) {
/* 018 */     this.references = references;
/* 019 */
/* 020 */
/* 021 */   }
/* 022 */
/* 023 */   public void initialize(int partitionIndex) {
/* 024 */
/* 025 */   }
/* 026 */
/* 027 */   public boolean eval(InternalRow i) {
/* 028 */     subExpr_0(i);subExpr_1(i);
/* 029 */     boolean value_19 = CaseWhen_0(i);
/* 030 */     boolean value_9 = true;
/* 031 */
/* 032 */     if (!value_19) {
/* 033 */       boolean value_29 = CaseWhen_1(i);
/* 034 */       value_9 = value_29;
/* 035 */     }
/* 036 */     return !false && value_9;
/* 037 */   }
/* 038 */
/* 039 */
/* 040 */   private boolean CaseWhen_0(InternalRow i) {
/* 041 */     byte caseWhenResultState_0 = -1;
/* 042 */     do {
/* 043 */
/* 044 */
/* 045 */       if (!subExprIsNull_1 && subExprValue_1) {
/* 046 */
/* 047 */         caseWhenResultState_0 = (byte)(false ? 1 : 0);
/* 048 */         value_10_0 = false;
/* 049 */         continue;
/* 050 */       }
/* 051 */
/* 052 */       boolean isNull_11 = true;
/* 053 */       boolean value_12 = false;
/* 054 */
/* 055 */       if (!subExprIsNull_0) {
/* 056 */
/* 057 */
/* 058 */         isNull_11 = false; // resultCode could change nullability.
/* 059 */         value_12 = subExprValue_0 == 7;
/* 060 */
/* 061 */       }
/* 062 */       if (!isNull_11 && value_12) {
/* 063 */
/* 064 */         caseWhenResultState_0 = (byte)(false ? 1 : 0);
/* 065 */         value_10_0 = true;
/* 066 */         continue;
/* 067 */       }
/* 068 */
/* 069 */       boolean isNull_14 = true;
/* 070 */       boolean value_15 = false;
/* 071 */
/* 072 */       if (!subExprIsNull_0) {
/* 073 */
/* 074 */
/* 075 */         isNull_14 = false; // resultCode could change nullability.
/* 076 */         value_15 = subExprValue_0 == 8;
/* 077 */
/* 078 */       }
/* 079 */       if (!isNull_14 && value_15) {
/* 080 */
/* 081 */         caseWhenResultState_0 = (byte)(false ? 1 : 0);
/* 082 */         value_10_0 = false;
/* 083 */         continue;
/* 084 */       }
/* 085 */
/* 086 */
/* 087 */       caseWhenResultState_0 = (byte)(false ? 1 : 0);
/* 088 */       value_10_0 = false;
/* 089 */
/* 090 */     } while (false);
/* 091 */     // TRUE if any condition is met and the result is null, or no any condition is met.
/* 092 */     final boolean isNull_9 = (caseWhenResultState_0 != 0);
/* 093 */     globalIsNull_1 = isNull_9;
/* 094 */     return value_10_0;
/* 095 */   }
/* 096 */
/* 097 */
/* 098 */   private void subExpr_1(InternalRow i) {
/* 099 */     boolean value_8 = EqualTo_0(i);
/* 100 */     subExprIsNull_1 = globalIsNull_0;
/* 101 */     subExprValue_1 = value_8;
/* 102 */   }
/* 103 */
/* 104 */
/* 105 */   private void subExpr_0(InternalRow i) {
/* 106 */     boolean isNull_0 = true;
/* 107 */     int value_0 = -1;
/* 108 */     boolean isNull_1 = i.isNullAt(0);
/* 109 */     ArrayData value_1 = isNull_1 ?
/* 110 */     null : (i.getArray(0));
/* 111 */     if (!isNull_1) {
/* 112 */
/* 113 */
/* 114 */       isNull_0 = false; // resultCode could change nullability.
/* 115 */
/* 116 */       int elementAtIndex_0 = (int) 7;
/* 117 */       if (value_1.numElements() < Math.abs(elementAtIndex_0)) {
/* 118 */         throw QueryExecutionErrors.invalidArrayIndexError(elementAtIndex_0, value_1.numElements());
/* 119 */       } else {
/* 120 */         if (elementAtIndex_0 == 0) {
/* 121 */           throw QueryExecutionErrors.sqlArrayIndexNotStartAtOneError();
/* 122 */         } else if (elementAtIndex_0 > 0) {
/* 123 */           elementAtIndex_0--;
/* 124 */         } else {
/* 125 */           elementAtIndex_0 += value_1.numElements();
/* 126 */         }
/* 127 */
/* 128 */         if (value_1.isNullAt(elementAtIndex_0)) {
/* 129 */           isNull_0 = true;
/* 130 */         } else
/* 131 */
/* 132 */         {
/* 133 */           value_0 = value_1.getInt(elementAtIndex_0);
/* 134 */         }
/* 135 */       }
/* 136 */
/* 137 */
/* 138 */     }
/* 139 */     subExprIsNull_0 = isNull_0;
/* 140 */     subExprValue_0 = value_0;
/* 141 */   }
/* 142 */
/* 143 */
/* 144 */   private boolean EqualTo_0(InternalRow i) {
/* 145 */     boolean isNull_3 = true;
/* 146 */     boolean value_3 = false;
/* 147 */     boolean isNull_4 = true;
/* 148 */     int value_4 = -1;
/* 149 */     boolean isNull_5 = i.isNullAt(0);
/* 150 */     ArrayData value_5 = isNull_5 ?
/* 151 */     null : (i.getArray(0));
/* 152 */     if (!isNull_5) {
/* 153 */
/* 154 */
/* 155 */       isNull_4 = false; // resultCode could change nullability.
/* 156 */
/* 157 */       int elementAtIndex_1 = (int) 1;
/* 158 */       if (value_5.numElements() < Math.abs(elementAtIndex_1)) {
/* 159 */         throw QueryExecutionErrors.invalidArrayIndexError(elementAtIndex_1, value_5.numElements());
/* 160 */       } else {
/* 161 */         if (elementAtIndex_1 == 0) {
/* 162 */           throw QueryExecutionErrors.sqlArrayIndexNotStartAtOneError();
/* 163 */         } else if (elementAtIndex_1 > 0) {
/* 164 */           elementAtIndex_1--;
/* 165 */         } else {
/* 166 */           elementAtIndex_1 += value_5.numElements();
/* 167 */         }
/* 168 */
/* 169 */         if (value_5.isNullAt(elementAtIndex_1)) {
/* 170 */           isNull_4 = true;
/* 171 */         } else
/* 172 */
/* 173 */         {
/* 174 */           value_4 = value_5.getInt(elementAtIndex_1);
/* 175 */         }
/* 176 */       }
/* 177 */
/* 178 */
/* 179 */     }
/* 180 */     if (!isNull_4) {
/* 181 */
/* 182 */
/* 183 */       isNull_3 = false; // resultCode could change nullability.
/* 184 */       value_3 = value_4 == 1;
/* 185 */
/* 186 */     }
/* 187 */     globalIsNull_0 = isNull_3;
/* 188 */     return value_3;
/* 189 */   }
/* 190 */
/* 191 */
/* 192 */   private boolean CaseWhen_1(InternalRow i) {
/* 193 */     byte caseWhenResultState_1 = -1;
/* 194 */     do {
/* 195 */
/* 196 */
/* 197 */       if (!subExprIsNull_1 && subExprValue_1) {
/* 198 */
/* 199 */         caseWhenResultState_1 = (byte)(false ? 1 : 0);
/* 200 */         value_20_0 = false;
/* 201 */         continue;
/* 202 */       }
/* 203 */
/* 204 */       boolean isNull_20 = true;
/* 205 */       boolean value_22 = false;
/* 206 */
/* 207 */       if (!subExprIsNull_0) {
/* 208 */
/* 209 */
/* 210 */         isNull_20 = false; // resultCode could change nullability.
/* 211 */         value_22 = subExprValue_0 == 7;
/* 212 */
/* 213 */       }
/* 214 */       if (!isNull_20 && value_22) {
/* 215 */
/* 216 */         caseWhenResultState_1 = (byte)(false ? 1 : 0);
/* 217 */         value_20_0 = false;
/* 218 */         continue;
/* 219 */       }
/* 220 */
/* 221 */       boolean isNull_23 = true;
/* 222 */       boolean value_25 = false;
/* 223 */
/* 224 */       if (!subExprIsNull_0) {
/* 225 */
/* 226 */
/* 227 */         isNull_23 = false; // resultCode could change nullability.
/* 228 */         value_25 = subExprValue_0 == 8;
/* 229 */
/* 230 */       }
/* 231 */       if (!isNull_23 && value_25) {
/* 232 */
/* 233 */         caseWhenResultState_1 = (byte)(false ? 1 : 0);
/* 234 */         value_20_0 = true;
/* 235 */         continue;
/* 236 */       }
/* 237 */
/* 238 */
/* 239 */       caseWhenResultState_1 = (byte)(false ? 1 : 0);
/* 240 */       value_20_0 = false;
/* 241 */
/* 242 */     } while (false);
/* 243 */     // TRUE if any condition is met and the result is null, or no any condition is met.
/* 244 */     final boolean isNull_18 = (caseWhenResultState_1 != 0);
/* 245 */     globalIsNull_2 = isNull_18;
/* 246 */     return value_20_0;
/* 247 */   }
/* 248 */
/* 249 */ }

line 028 eager call function subExpr_0(i)
line 116-135 (in function subExpr_0(i)) the generate code for element_at(c1, 7)

Hmm, I tried with CaseWhen but it doesn't fail. Do you run on current master?

Hmm, I tried with CaseWhen but it doesn't fail. Do you run on current master?

Yes, you need set properties.
sql("set spark.sql.ansi.enabled = true")
sql("set spark.sql.codegen.wholeStage = false")

Oh, I see. Don't repeat the following as it will be considered a subexpression too.
case
    when element_at(c1, 1) = 1 then 1
    when element_at(c1, 7) = 7 then 7
    when element_at(c1, 7) = 8 then 8
    else 10
end = 7

If changing the second case when to the following, it will fail.
case
    when element_at(c1, 1) = 1 then 1
    when element_at(c1, 7) = 7 then 7
    when element_at(c1, 7) = 8 then 8
    else 11
end = 7

But does the predicate makes sense?
case
    when element_at(c1, 1) = 1 then 1
    when element_at(c1, 7) = 7 then 7
    when element_at(c1, 7) = 8 then 8
    else 10
end = 7

Technically, element_at(c1, 7) could be evaluated and fail the query if element_at(c1, 1) = 1 is false.

Just an example to illustrate that the subexpression may throw an exception due to eagerly execute in a conditional predicate, especially the subexpression that contains UDFs. It's fine for me to keep the current implementation (except If case) if the case is not be considered as a bug.

The exception happens not only in the If expression but also in other conditional expressions(CaseWhen/Coalesce).
For instance:
CaseWhen
spark.read.load("/tmp/parquet/t1")
  .filter(
    """
      |case
      |    when element_at(c1, 1) = 1 then 1
      |    when element_at(c1, 7) = 7 then 7
      |    when element_at(c1, 7) = 8 then 8
      |    else 10
      |end = 7
      |or
      |case
      |    when element_at(c1, 1) = 1 then 1
      |    when element_at(c1, 7) = 7 then 7
      |    when element_at(c1, 7) = 8 then 8
      |    else 10
      |end = 8
      |""".stripMargin)

Coalesce
spark.read.load("/tmp/parquet/t1")
  .filter(
    """
      |coalesce(element_at(c1, 1) > 0, element_at(c1, 7) > 0, element_at(c1, 7) + 1 > 0) == true
      |or
      |coalesce(element_at(c1, 1) > 1, element_at(c1, 7) > 1, element_at(c1, 7) + 1 > 1) == true
      |""".stripMargin
  )

In both tow case, element_at(c1, 7) will be extracted and be eagerly executed.
I'm not sure, whether spark should guarantee the order of predicates for conditional expression(If/CaseWhen/Coalesce).

FWIW this is a super edge-case'y bug with subexpression elimination that I attempt to fix as part of https://github.com/apache/spark/pull/32987 to properly handle conditional expressions. In general subexpressions should only be created for expressions that 100% will be evaluated, so the eager execution doesn't matter. If that's not the case, then that could be a bug. For the If though that sounds like a bug in the optimizer?

FWIW this is a super edge-case'y bug with subexpression elimination that I attempt to fix as part of #32987 to properly handle conditional expressions. In general subexpressions should only be created for expressions that 100% will be evaluated, so the eager execution doesn't matter. If that's not the case, then that could be a bug. For the If though that sounds like a bug in the optimizer?

Based on what proposed in #32987, isn't it to consider a expression conditionally run twice as subexpression? Why it it a fix for this? Don't you think 100% will be evaluated conflict with conditionally evaluated twice?
Besides If issue which seems to be a improper optimization, I'm not sure with case when case as a bug here. Is there a guarantee on the evaluation order of case conditions? cc @cloud-fan do you have some idea about it?

Based on what proposed in #32987, isn't it to consider a expression conditionally run twice as subexpression? Why it it a fix for this? Don't you think 100% will be evaluated conflict with conditionally evaluated twice?

It's not to consider an expression conditionally run twice as a subexpression, it's to consider an expression definitely run once and conditionally run once as a subexpression, so still will only run if it will always run at least once

So you are saying element_at(c1, 7) will not be considered as subexpression in the above case, right? For many use-cases, it is more common than you proposed one. If case when doesn't guarantee evaluation order, it means we will lose many optimization chance.

IIUC, SQL definition does not guarantee the evaluation order of case-when. In practice SQL system may apply short-circuit evaluation so there will be an evaluation order.

So you are saying element_at(c1, 7) will not be considered as subexpression in the above case, right? For many use-cases, it is more common than you proposed one. If case when doesn't guarantee evaluation order, it means we will lose many optimization chance.

I'm saying element_at(c1, 7) being considered a subexpression is a bug, are you saying that's not the case? If it's not a bug, then people will keep hitting weird edge case errors like this PR is trying to address. Main question is between If, CaseWhen, and Coalesce, which if any guarantee evaluation order (which is required for certain checks like checking the size of an array before accessing an element)

I'm saying element_at(c1, 7) being considered a subexpression is a bug, are you saying that's not the case? If it's not a bug, then people will keep hitting weird edge case errors like this PR is trying to address. Main question is between If, CaseWhen, and Coalesce, which if any guarantee evaluation order (which is required for certain checks like checking the size of an array before accessing an element)

Well, I think it depends on how we evaluate case-when. Personally I prefer not to rely on short-circuit evaluation to guard an expression. Let's wait for more other voices. If there is consensus that we should follow the short-circuit evaluation, then we should remove the subexpression.

IIUC, SQL definition does not guarantee the evaluation order of case-when. In practice SQL system may apply short-circuit evaluation so there will be an evaluation order.

I can totally agree with you. but in another way, lazy evaluation may improve performance when element_at is a very expensive UDF, but it also makes subexpression code generate more complex. Maybe we can add lazy evaluation mode and make it configurable? I'm waiting for more advice.

I'm saying element_at(c1, 7) being considered a subexpression is a bug, are you saying that's not the case? If it's not a bug, then people will keep hitting weird edge case errors like this PR is trying to address. Main question is between If, CaseWhen, and Coalesce, which if any guarantee evaluation order (which is required for certain checks like checking the size of an array before accessing an element)

Well, I think it depends on how we evaluate case-when. Personally I prefer not to rely on short-circuit evaluation to guard an expression. If it is not defined in SQL definition, it is not reliable. For example, if we are going to evaluate all conditions in parallel?
Let's wait for more other voices. If there is consensus that we should follow the short-circuit evaluation, then we should remove the subexpression.

kindly ping @cloud-fan @maropu

is this still an issue?


@font-face descriptors to override font metrics

ascent-override, descent-override and line-gap-override descriptors for @font-face.
Implementation Status

Chrome: 86+ flagged, 87+ by default

References

Chrome Status
https://github.com/w3c/csswg-drafts/issues/4792

It would be great if these properties could get added.
The spec: https://www.w3.org/TR/css-fonts-4/#font-metrics-override-desc

so what's the status of it? :eyes:

@ZerdoX-x See https://tobireif.com/posts/ensuring_the_correct_vertical_position_of_large_text/ -> "Browser support".
Also
https://caniuse.com/mdn-css_at-rules_font-face_ascent-override
https://caniuse.com/mdn-css_at-rules_font-face_descent-override
https://caniuse.com/mdn-css_at-rules_font-face_line-gap-override

@tobireif Thank you. So why this issue isn't closed yet?


Add documentation

I believe it is easier to understand the library through a documentation, also extends the possibility of providing more information.

@gsi-kevincarrera yes, this is something I've been wanting for a long time now and I even made a start about two years ago. It would also be a great bridge between using the Accessible Astro Starter theme in collaboration with the Accessible Astro Components package. But because of time constraints I never got to finishing it and this continues to be the situation.
For now the README.md should suffice and maybe somewhere in the future I can pick up https://github.com/markteekman/accessible-astro-docs and maybe update it using the new Starfield theme (https://starlight.astro.build/), granted it is fully accessible of course 🙂

Im open to contribute on this project, with documentation or even testing. I really like it :)

@gsi-kevincarrera that's really great to hear! And it's very much appreciated 😄 I've set up a Netlify deploy for the repository so your good to go: https://accessible-astro-docs.netlify.app/ (failed deploy for now but that should be fixed by updating the project)! We could break it down into a couple of steps:

[ ] Clean-up repository and (de)install dependencies
[ ] Setup the https://starlight.astro.build/ theme
[ ] Setup sections (Getting started / Accessibility tips / Themes / Components / Contributions)
[ ] Write content for each section, using the README.md for the components
[ ] Audit the Starlight theme and check for potential accessibility issues

What are your thoughts on it? 🙂


KAFKA-13565: add consumer exponential backoff for KIP-580

Follow up https://github.com/apache/kafka/pull/8846, to complete the Implementation of KIP-580: add consumer exponential backoff
Updated classes:

Fetcher
Metadata
AbstractCoordinator
ConsumerCoordinator
SubscriptionState

Co-Authored-By: Cheng Tan<EMAIL_ADDRESS>Committer Checklist (excluded from commit message)

[ ] Verify design and implementation
[ ] Verify test coverage and CI build status
[ ] Verify documentation (including upgrade notes)

@skaundinya15 @abbccdda @guozhangwang , please help review when available. Thank you.

Thanks @showuon , I've made a quick pass and it looks promising to me. I'm pinging @dajac and @kirktrue who would be the best reviewers for this.

@dajac @kirktrue,  please help review. Thanks.

This looks pretty straightforward to me, though I'm still learning the consumer client piece.

@dajac , please take a look when available. Thanks.

@showuon I'd like to get KIP-580 finished off. What do you think the best course of action is? I'm happy to put some time into finishing it off and encouraging the reviews.

@AndrewJSchofield , welcome to take it over. Thanks.


Adds request timing flag, enabling logs for request's elapsed time

Closes #53

@vmesel wouldn't adding the timestamp to the log solve the problem?
we're not counting the processing time automatically (I don't think we should, it's unnecessary complexity)
2023-11-24 09:03:22,728 [uvicorn.error] INFO:     Started server process [21824]
2023-11-24 09:03:22,729 [uvicorn.error] INFO:     Waiting for application startup.
2023-11-24 09:03:22,729 [uvicorn.error] INFO:     Application startup complete.
2023-11-24 09:03:22,729 [uvicorn.error] INFO:     Uvicorn running on http://<IP_ADDRESS>:8000 (Press CTRL+C to quit)
2023-11-24 09:03:26,359 [uvicorn.access] INFO:     <IP_ADDRESS>:51932 - "POST /session HTTP/1.1" 200 OK

if you want to know the "response" time, take a look at the log and count it up:
2023-11-24 09:03:22,729 - 2023-11-24 09:03:26,359

if you want to know the "response" time, take a look at the log and count it up:
2023-11-24 09:03:22,729 - 2023-11-24 09:03:26,359

@avelino What happens if the server is up for 24h and we receive a request on the 25th h? Will it be a 25h-long request?

What happens if the server is up for 24h and we receive a request on the 25th h? Will it be a 25h-long request?

@vmesel Is it a "real" problem or speculation? No speculation!
where will this resource be used, dev or production?
If we want to measure the response time of a prompt, this information needs to be in the log (stdout), so it's easy to count, which is why I proposed putting timestamp
I don't think it's a real response time of 25h, that would timeout the http server.

i will leave my comments if you guys want measure request time on fastapi, it is a simple way.
import time

from fastapi import FastAPI, Request

app = FastAPI()

@app.middleware("http")
async def add_process_time_header(request: Request, call_next):
    start_time = time.time()
    response = await call_next(request)
    process_time = time.time() - start_time
    response.headers["X-Process-Time"] = str(process_time)
    return response

maybe this idea would be more simple for now?
https://github.com/talkdai/dialog/pull/62

I like the solution proposed by @lgabs in pr #62
cc @vmesel

Closing this in favor of #62


[FormRecognizer] Final documentation updates before 4.0.0

Changes included in this PR:

Public API change: moved DocumentAnalysisClient-related extension methods defined in FormRecognizerClientBuilderExtensions to a separate DocumentAnalysisClientBuilderExtensions class. This was a last-minute change requested by architects before approval, but impact is minimal.
Updated documentation to refer to the SDK version as 4.0.0 instead of 4.0.0-beta.x.
Updated documentation to refer to the service version as 2022-08-31.
Added a section about changes in long-running operation service methods design to the migration guide.
Added a paragraph about build modes to the migration guide.
Removed any remaining mention to "entities" since this feature is not supported anymore.
Updated "Get and List operations" sample description to explain about the hierarchy in OperationDetails and its subtypes.
Update terminology used for the "prebuilt general document" model to align with the term used by the service.
Other minor changes.

Fixes #30476
Fixes #26782
Fixes #24488

API change check
APIView has identified API level changes in this PR and created following API reviews.
Azure.AI.FormRecognizer


"stopOnEntry: false" not working as expected when set in the settings.json launch option (with no workspace)

From @deltaz0 on October 31, 2017 1:49
Environment data
VS Code version:  1.17.2
Python Extension version:  0.7.0
Python Version:   2.7.13
OS and version:   Win10 64 10.0.15063
I have a single python file open in VSCode with no open folder/workspace, with "stopOnEntry": false under the "launch: {} option in settings.json.
Actual behavior
I press F5 on the python file, and the debugger stops on the first line.
Expected  behavior
I press F5 and the debugger should not stop on the first line.
Steps to reproduce:
Python file open in the VScode with no open folder/workspace.
My settings.json contains the following:
"launch": {
      "version": "0.2.0",
      "configurations": [
          {
              "name": "Python",
              "type": "python",
              "request": "launch",
              "stopOnEntry": false,
              "pythonPath": "${config:python.pythonPath}",
              "program": "${file}",
              "cwd": "${workspaceRoot}",
              "env": {},
              "envFile": "${workspaceRoot}/.env",
              "debugOptions": [
                  "WaitOnAbnormalExit",
                  "WaitOnNormalExit",
                  "RedirectOutput"
              ]
          }
        ]
    },

I'll note that if I do open the file's containing folder into VSCode as a workspace, and then go into the launch.json file and change stopOnEntry to false in the corresponding configuration, it behaves as expected and will not stop on the first line when the debugger is started.
What I would like to do is disable the stop-on-first-line behavior for all python files when a workspace is not open. I figured the launch: {} option available in settings.json referenced here would allow me to do this, but it is not working. I'm not sure if this is a bug or expected behavior. If it is expected behavior, is there another way to accomplish this? Thanks.
Copied from original issue: DonJayamanne/pythonVSCode#1358

We support adding a "launch" object inside your user settings. This "launch" configuration will then be shared across your workspaces. For example:

According to the documentation, the global launch configuration is only shared by workspaces, meaning you need to open a workspace.
Closing in favor of https://github.com/Microsoft/vscode-python/issues/188


Speed up the application

Because the application is loading through the website it is very slow. We need to speed it up.
We could try web scraping instead of redirecting to the website.

Maybe use something from https://developer.samsung.com/smarttv/develop/guides/application-performance-improvement/launch-time-optimization.html


[#FLAT-453] Change wording: Cross Site Scripting -> Cross-site Scripting

https://sourceclear.atlassian.net/browse/FLAT-453

:+1:


Comments in logs

Prerequisites
affected version: 2.x
make sure to check this before filing an issue:

[x] I checked the documentation and found no answer
[x] I checked to make sure that this issue has not already been filed

Describe what you would like to have
Would be great to have a way to leave comments in logs and export fragment of logs with comments.
Possible workflow:

the user selects some fragment in logs (main view)
the user calls context-menu and select "Comment"
in the sidebar, the user can see the input for comment.
the user writes a comment and setup color or type of comment (like, "it's very important", "it's weird" and so on)
the user can leave multiple comments
a commented fragment of logs somehow should be highlighted in view. Also should be some markers on the scrollbar to show "map of comments" in file
in the sidebar should be present all comments for the current session, by click on comment main view should be redirected to commented fragment
user should have a way to export logs into a file, including comments. If such file will be opened all comments should be present as well

duplicate of #332
I include the comments in this issue also


Spurious error messages with large dataset

When processing the large dataset from Issue #126 , several spurious error messages like this appeared in the log:
tornado.application - ERROR - Uncaught exception PUT /api/jobs/80a452db-7d47-4a0e-8a29-677e5e907d54/ (::1)
HTTPServerRequest(protocol='http', host='localhost:9000', method='PUT', uri='/api/jobs/80a452db-7d47-4a0e-8a29-677e5e907d54/', version='HTTP/1.1', remote_ip='::1')
Traceback (most recent call last):
  File "/home/uellue/libertem-venv/lib/python3.6/site-packages/tornado/web.py", line 1592, in _execute
    result = yield result
  File "/home/uellue/libertem-venv/lib/python3.6/site-packages/tornado/gen.py", line 1133, in run
    value = future.result()
  File "/home/uellue/LiberTEM/LiberTEM/src/libertem/web/server.py", line 334, in put
    await job_runner.asend(results)
  File "/home/uellue/LiberTEM/LiberTEM/src/libertem/web/server.py", line 228, in run_job
    for result in results
  File "/home/uellue/LiberTEM/LiberTEM/src/libertem/web/server.py", line 122, in finish_job
    "details": self.data.serialize_job(job_id),
  File "/home/uellue/LiberTEM/LiberTEM/src/libertem/web/server.py", line 627, in serialize_job
    job = self.jobs[job_id]
KeyError: '80a452db-7d47-4a0e-8a29-677e5e907d54'

This doesn't happen with smaller data sets, at least I didn't observe it. Is it related to the problems that I experienced with processing this data set?

This is a symptom of #126, closing.


Fix code coverage

Changes Unknown when pulling<PHONE_NUMBER>6ccf4e9e2260b7839f2af2b534e620 on ci into ** on master**.

Changes Unknown when pulling 04c925c583aacf477cb89a472e4a726cadff66ee on ci into ** on master**.


Identify sender even if self if there's a user assertion, add tests for SignedBy option

There is a short-circuit for the identify call if the sender is self.  This makes sure that there isn't a user assertion before short-circuiting.  Fixes CORE-2451.
Also added tests for SignedBy option for self verify and non-self.
@maxtaco

:+1:


Create a test 'harness' or environment for creating packet captures reliably

It would be useful to be able to make new packet captures for testing purposes quickly and easily.  Ideally allowing for a range of them to be re-created to spot if new details are added to new versions of MySQL for example.
We could create a docker-compose environment that allows for the spinning up of MySQL, and tcpdump and then connecting some sorts of client to generate traffic.
One really easy way to run the tcpdump is within a container and also on the same interface as the mysql/client, although there are probably more ways to do that.
I wonder if clients from different languages would be worth while to achieve that.
This would require the following parts:

mysql container
tcpdump container
client container (e.g. a test program that emits various mysql queries.  This could actual be a Go test library or something like that).
docker-compose environment for running it.
documentation on how to use it and expand it.

This environment has been started and documented in the DEVELOPING.md file.  This ought to allow expansion to create new capture files to add to tests, or to grab snippets of data from for tests.
It's development already demonstrated one omission that was fixed.


[Bug] Player clients trying to update GM tokens after combat

Foundry: 9.255
DnD5e: 1.5.7
DnD5e Helpers: 4.0.0
When ending a combat players receive an error message, e.g "Error: User Alex lacks permission to update Token [L0FAc8SE9WPJbauL] in parent Scene [fs02Kuyzx4xScGbi]".
The token is a dead hostile NPC owned by the GM (player permissions: none).
Debugging, I found the cause of this message: a websocket request from dnd5e-helpers to update this token.
"4397[
{
  "userId":"tlu0qAChAoAIvEDF",
  "request":{
    "action":"update",
    "type":"Token",
    "parentType":"Scene",
    "parentId":"fs02Kuyzx4xScGbi",
    "updates":[
      {
        "flags":{
          "dnd5e-helpers":{
            "-=ActionManagement":null
          }
        },
        "_id":"L0FAc8SE9WPJbauL"
      }
    ],
    "options":{
      "diff":true,
      "render":true
    },
    "pack":null
  },
  "error":{
    "class":"ServerError",
    "message":"User Alex lacks permission to update Token [L0FAc8SE9WPJbauL] in parent Scene [fs02Kuyzx4xScGbi]",
    "stack":"Error: User Alex lacks permission to update Token [L0FAc8SE9WPJbauL] in parent Scene [fs02Kuyzx4xScGbi]\n    at ServerDatabaseBackend._updateEmbeddedDocuments (file:///<foundryDir>/resources/app/dist/database/backend/server-backend.mjs:1:3611)\n    at async Semaphore._try (file:///<foundryDir>/resources/app/common/utils/semaphore.mjs:99:17)"
  }
}
]"

Some more hints. The last call is Deleted Combat with id [AlI2mVkX0BnVY0JD].
Looking into the code in the _deleteCombat hook it seems to me each client might iterate over every combatant and execute _deleteCombatant which in turn does token.removeActionFlag() (which looks at a first glance like the message that is sent to the server).
Is it necessary that each useres requests this or is it enough if the owner of a token does this cleanup?

The primary owner (player for characters, GM for NPCs) should be handling this logic rather than everyone trying to do it for all combatants.


Agnosticd role ocp4_workload_devspaces missing option ocp4_workload_devspaces_catalogsource_name

Agnosticd role ocp4_workload_devspaces missing option ocp4_workload_devspaces_catalogsource_name

It's already fixed, checked today with an development deployment


#529: Special characters should be parsed correctly from file

Fixes: #529
Also made sure that a saved and loaded default FMModel are equal.
Correctly reading the special characters were the first part, and the second part was the reading/writing of empty comments.

@tim-vd-aardweg I updated the test utils and also some of the parser/serializer, except the DIMR serializer.
This was a bit tricky, because in the xml file the encoding is also written because of the following:
xml = to_string.toprettyxml(indent="  ", encoding="utf-8")

Changing this will cause a failing test.


Issue #243 closed, though not fixed, please take a look, thanks!

I suggest to look at Gatling using phiSgr's library, or k6 Grafana, for gRPC testing.
This plug-in has a lot of issues and the owner reply to our PR as a bot.

This issue is stale because it has been open for 30 days with no activity.

This issue was closed because it has been inactive for 14 days since being marked as stale.


fix typo 'exiting' > 'existing'

THX to @wfeldt for his comment

Deploy preview for openbuildservice ready!
Built with commit 8760c42955fdecc41c9e31107d74ede57c986ca9
https://deploy-preview-159--openbuildservice.netlify.com


git init

Does this issue occur when all extensions are disabled?: Yes/No

VS Code Version:
OS Version:

Steps to Reproduce:

@sakethmurari, could you please provide the details of the problem that you are facing? Thank you!


why input artifacts volume only mount in main container

argo-workflows version: release-3.3
code loacation: argo-workflows/workflow/controller/workflowpod.go
// addInputArtifactVolumes sets up the artifacts volume to the pod to support input artifacts to containers.
// In order support input artifacts, the init container shares a emptydir volume with the main container.
// It is the responsibility of the init container to load all artifacts to the mounted emptydir location.
// (e.g. /inputs/artifacts/CODE). The shared emptydir is mapped to the user's desired location in the main
// container.
//
// It is possible that a user specifies overlapping paths of an artifact path with a volume mount,
// (e.g. user wants an external volume mounted at /src, while simultaneously wanting an input artifact
// placed at /src/some/subdirectory). When this occurs, we need to prevent the duplicate bind mounting of
// overlapping volumes, since the outer volume will not see the changes made in the artifact emptydir.
//
// To prevent overlapping bind mounts, both the controller and executor will recognize the overlap between
// the explicit volume mount and the artifact emptydir and prevent all uses of the emptydir for purposes of
// loading data. The controller will omit mounting the emptydir to the artifact path, and the executor
// will load the artifact in the in user's volume (as opposed to the emptydir)
func (woc *wfOperationCtx) addInputArtifactsVolumes(pod *apiv1.Pod, tmpl *wfv1.Template) error {
	if len(tmpl.Inputs.Artifacts) == 0 {
		return nil
	}
	artVol := apiv1.Volume{
		Name: "input-artifacts",
		VolumeSource: apiv1.VolumeSource{
			EmptyDir: &apiv1.EmptyDirVolumeSource{},
		},
	}
	pod.Spec.Volumes = append(pod.Spec.Volumes, artVol)

	for i, initCtr := range pod.Spec.InitContainers {
		if initCtr.Name == common.InitContainerName {
			volMount := apiv1.VolumeMount{
				Name:      artVol.Name,
				MountPath: common.ExecutorArtifactBaseDir,
			}
			initCtr.VolumeMounts = append(initCtr.VolumeMounts, volMount)

			// We also add the user supplied mount paths to the init container,
			// in case the executor needs to load artifacts to this volume
			// instead of the artifacts volume
			for _, mnt := range tmpl.GetVolumeMounts() {
				if util.IsWindowsUNCPath(mnt.MountPath, tmpl) {
					continue
				}
				mnt.MountPath = filepath.Join(common.ExecutorMainFilesystemDir, mnt.MountPath)
				initCtr.VolumeMounts = append(initCtr.VolumeMounts, mnt)
			}

			pod.Spec.InitContainers[i] = initCtr
			break
		}
	}

	for i, c := range pod.Spec.Containers {
		if c.Name != common.MainContainerName {
			continue
		}
		for _, art := range tmpl.Inputs.Artifacts {
			err := art.CleanPath()
			if err != nil {
				return errors.Errorf(errors.CodeBadRequest, "error in inputs.artifacts.%s: %s", art.Name, err.Error())
			}
			if !art.HasLocationOrKey() && art.Optional {
				woc.log.Infof("skip volume mount of %s (%s): optional artifact was not provided",
					art.Name, art.Path)
				continue
			}
			overlap := common.FindOverlappingVolume(tmpl, art.Path)
			if overlap != nil {
				// artifact path overlaps with a mounted volume. do not mount the
				// artifacts emptydir to the main container. init would have copied
				// the artifact to the user's volume instead
				woc.log.Debugf("skip volume mount of %s (%s): overlaps with mount %s at %s",
					art.Name, art.Path, overlap.Name, overlap.MountPath)
				continue
			}
			volMount := apiv1.VolumeMount{
				Name:      artVol.Name,
				MountPath: art.Path,
				SubPath:   art.Name,
			}
			c.VolumeMounts = append(c.VolumeMounts, volMount)
		}
		pod.Spec.Containers[i] = c
	}
	return nil
}

if c.Name != common.MainContainerName {
	continue
}

I am confused why the input of the input artifact cannot be mounted on a container other than the main container, is this because the main container is the beginning of the DAG? Should the input of all subsequent containers originate from the output of the main container in a sense rather than shared read input artifacts? IMHO, my idea is that if you can share artifacts, you can improve the input read performance in a sense (no need to read from other data sources, network IO is more expensive than disk) In addition, I observed that templates can be defined under Volume implements this function, so why don't we consider mounting artifacts to all containers uniformly?

This is correct. In a container-set template, input and output artifacts can only be mounted on them main container. This is mainly historical limitation.
You can work around by using a shared volume and having that mounted on all your containers, something like
containerSet:
  volume:
     emptyDir: {}

This is correct. In a container-set template, input and output artifacts can only be mounted on them main container. This is mainly historical limitation.
You can work around by using a shared volume and having that mounted on all your containers, something like
containerSet:
  volume:
     emptyDir: {}

Thank you for your answer.


Parsing error with date default

Hi team,
Please find the attached yml file contents. The Swagger editor validates this yml file to indicate no errors; however, I get the following error when I use the parser to parse this file's contents. Failed. Reason: [attribute paths.'/test/{id}'(get).parameters.[id].schemas.default=2012-12-11T18:30:00.000+0000 is not of type date]
openapi: 3.0.1
info:
  title: hello
  version: "1.0"
servers:
- url: http://abc.com
paths:
  /test/{id}:
    get:
      operationId: get
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
            format: date
            default: "2012-12-12"
      responses:
        200:
          description: OK

I have tried this with swagger-parser-v3-2.0.24. Please let me know if it has already been fixed.
Thanks,
Sree

You might want to try using format: date-time, looking at the value in the error message.
In general though, please raise tooling-related issues on the relevant repository. This repository is for the OpenAPI specification itself. You may also receive more answers on a general support forum such as StackOverflow. Thanks.

Thanks, Mike. Will raise this to the swagger parser repository. Btw, even the format:date-time ends up with an error.


[4.0]FixCode: Add a new line between switch label and the code placeholder. rdar://32121847

@swift-ci please test


src/tokens/solana.tokenlist.json:139919:1 - error TS1185: Merge conflict marker encountered.

I'm submitting a ...
[ ] bug report
[ ] feature request
[ ] question about the decisions made in the repository
[ ] question about how to use this project

Found 3 errors.
error Command failed with exit code 2.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
ERROR: "build:main" exited with 2.
error Command failed with exit code 1.
info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.
Error: Process completed with exit code 1.
what should i do?

when trying to build it'll tell you why it's failing. look up the reason on the FAQ on the readme in the repository.


Fix broken links to Google Code

Google Code is no more. Updated the links to the resources on GitHub.

Thanks!