OSRM profiles removed

Hi guys!
Thanks for the amazing library. I was wondering for the reasons of OSRM profiles being removed from the library by #64.
According to OSRM api docs there is a concept of "profile" and in fact our team was using routing-py with multi profile OSRM. This is usually achieved by using a proxy, which maps different OSRM instances by url. Using profiles in routing-py router was extremely convenient for us.
Is it possible to revert #64 and restore previous API, while setting default version of profile to driving?

I guess you then have somehow named your osrm base url according to the previous osrm "profiles" routing-py was referencing? honestly, I have no idea how that ever worked before #64 . I realized finally that osrm doesn't have any notion of a profile for its endpoints. the endpoint urls for osrm are always postfixed with e.g. /table/v1/driving, no matter the "profile". if you'd want to offer multiple profiles, you'd have to host multiple instances of osrm and route the traffic according to a profile with your webserver, similar to what the public instances at FOSSGIS are doing, e.g. https://routing.openstreetmap.de/routed-foot, but note that it still needs /table/v1/driving?. before that pr, the url would be /table/v1/{profile} and that wouldn't work with those public servers. to be honest , apparently I was must've been using the osrm routing-py provider the first time just before that pr, because that's when I realized that it didn't work (our tests are unfortunately a little self-fulfilling, we'd have to change to live requests, especially now that all routing engines have one public instance, valhalla was missing for a long time).
so I'm curious how it could've worked for you before #64 and doesn't work now? can you share an example URL?

ah, I'm just seeing in the api docs what you mean.. for parameter profile:
Mode of transportation, is determined statically by the Lua profile that is used to prepare the data using osrm-extract . Typically car , bike or foot if using one of the supplied profiles.

that's weird though.. the osrm-routed instance one requests is loading a single .osrm dataset which is derived from a single lua file, which is osrm's way of describing a profile. or wait.. is that somehow related with osrm-datastore? I saw recently in the osrm repo some post mentioning that one can put multiple datasets into osrm-datastore. is that how you look up profiles?
just seeing that I was wrong: it doesn't have to be /table/v1/driving, of course it can also be /table/v1/walking: https://github.com/Project-OSRM/osrm-backend/wiki/Running-OSRM#running-multiple-profiles-on-one-machine. somehow I was imaging that osrm-routed adds the /v1/driving..
so maybe you're right, I could revert that pr. and when I use routing-py with the public servers, in my code I can just use driving as a profile.
I get it now, thanks for the pointer!

So the way we are using it is that we have several OSRM instances running, each has it's own profile (according to lua preprocessing script). Then we use nginx to route the requests by simple url matching. For example /table/v1/walking goes to instance one instance and /table/v1/driving to another one. It's a bit hacky, but does the job.
I think each OSRM instance just discards the {profile} part of url, so requesting /table/v1 would result in a valid response. Have changed your test OSRM instance somehow?
Here is an example from public OSRM instance.
https://routing.openstreetmap.de/routed-bike/route/v1/driving/8.316650390625,49.930008124606886;8.664093017578125,50.00597379753065
And this URL produces the same response
https://routing.openstreetmap.de/routed-bike/route/v1/test/8.316650390625,49.930008124606886;8.664093017578125,50.00597379753065
The main benefit of profiles was that we only needed one instance of OSRM router from routingpy, that would make requests according to vehicle type. The previous version did the job, so I don't think full url customization is needed.

yeah right, thanks, don't know why I didn't try myself :sweat_smile: I find that whole URL architecture super strange..
but alright then, I'm convinced to revert the PR. and put some more comments in the docstrings so people aren't confused that profile=bike for the public instance is not automatically a bike response.


How to install mods that don't have exe?

What is your question?
How to install mods that don't have exe?
for example:
https://gamebanana.com/mods/367798
it said:

PUT THIS IN YOUR LATEST PSYCH ENGINE BUILD

I follow that guide above, but I can't find the songs in the menu page.

How to install mods that doesn't have a .exe:

Unzip the mod and put it in the mods folder of your Psych Engine folder.
Open up the game then go to the mods menu and check if your mod is ON.
Exit the menu and you should be good to go!

Bruh


Allow specifying padding around a gene in the zoomToGene API

Description

What was changed in this pull request?

Currently, the zoomToGene API shows the exact genomic interval of a given gene. This PR adds a parameter to specify the padding around the given gene:
hg.current.api.zoomToGene(
   "view-1",
   "MYC",
   10000 , // show +- 10,000 bp regions
   0, // transition duration (default: 0bp)
);

Why is it necessary?

Sometimes, it is useful to show padding around the given gene.
Fixes #1023
Checklist

[ ] Set proper GitHub labels (e.g. v1.6+, ignore if you don't know)
[x] Unit tests added or updated
[x] Documentation added or updated
[ ] Example(s) added or updated
[ ] Update schema.json if there are changes to the viewconf JSON structure format
[x] Screenshot for visual changes (e.g. new tracks or UI changes)
[x] Updated CHANGELOG.md

Looks good 👍  Would you mind adding the zoomToGene function to the API docs here: https://github.com/higlass/higlass/blob/develop/docs/javascript_api.rst


Google oauth2

google oauth2 not providing access tokens for newly created id's only providing id_token
here is the link https://developers.google.com/identity/sign-in/web/backend-auth
Please update the package...

Hi @PrasanthPerumalsamy
I was facing same issue and fixed that with a custom Backend that inherits from GooglePlusAuth.
from social_core.backends.google import GooglePlusAuth

class GoogleIdentityBackend(GooglePlusAuth):
    name = "google-identity"

    def user_data(self, access_token, *args, **kwargs):
        """Don't care about the `id_token`"""
        response = self.get_json(
            # https://oauth2.googleapis.com/tokeninfo
            "https://www.googleapis.com/oauth2/v3/tokeninfo",
            params={"id_token": access_token},
        )
        self.process_error(response)
        return response

I believe this issue is more related to python-social-core

I got the same issue. google provide only id_token and no longuer accesstoken  Any help please

@MehdiDRISSIB Have you tried customize the GooglePlusAuth? The customization I'd posted works for me.

@SukiCZ Many thanks for your feedback. As I use Facebook login also in my app, I would like keep the same api for both.
If it's not fixed in the package, yes I would have to go through another way and probably try your view. I will give a feedback if I try your solution

Hi guys. I didn't understand the problem per se. I will close this issue and you can create another based on a template that makes it easier to understand.
Thanks.


Is IAM authentication supported MySQL?

Question
I have been trying to get IAM authentication to work against a Cloud MySQL 5.7 DB, with some success. However it only works with versions prior to 1.28.1. The README says Postgres only, why is this?
Additional Context
Prior to this commit, https://github.com/GoogleCloudPlatform/cloud-sql-proxy/commit/e1386118ad239e6c1ff16df6f2be1351a6432bb3 I was able to get the IAM authentication working, but once this temporary trimming was remove it no longer works. I am not sure why this temporary fix was removed? It relates to this issue, but I can't see how it was permanently  fixed (https://github.com/GoogleCloudPlatform/cloudsql-proxy/issues/852).
This all relates to Postgres, but I guess there is a similar issue with MySQL
My setup is a remote server using cloud-sql-proxy to connect to a Cloud SQL server. I am using a dockerised version of sql-proxy started like this:
docker run -d --rm --name cloud_proxy -v ./credential.json:/config.json -p <IP_ADDRESS>:3306:3306 gcr.io/cloudsql-docker/gce-proxy:1.28.0 /cloud_sql_proxy -instances=[:INSTANCE:]=tcp:<IP_ADDRESS>:3306 -enable_iam_login -credential_file=/config.json
This above works. Change it to 1.28.1 it doesn't.

@thgrw How are you logging in to your MySQL instance?
In short, MySQL does support manual IAM authentication where you provide an OAuth2 token with your IAM DB user. MySQL does not yet support automatic IAM authentication where you provide your IAM DB user and the proxy (with the enable_iam_login flag) will retrieve a token and insert it into the log in request for you and also refresh that token for future login requests.

Prior to this commit, https://github.com/GoogleCloudPlatform/cloud-sql-proxy/commit/e1386118ad239e6c1ff16df6f2be1351a6432bb3 I was able to get the IAM authentication working, but once this temporary trimming was remove it no longer works. I am not sure why this temporary fix was removed? It relates to this issue, but I can't see how it was permanently fixed (https://github.com/GoogleCloudPlatform/cloud-sql-proxy/issues/852).

When the Postgres feature rolled out, the server-side proxy didn't have support for longer OAuth2 tokens which can be up to 2048 bytes long. We added a temporary patch until the server side proxy added support for longer tokens. When that happens, the client side patch was unnecessary.

In short, MySQL does support manual IAM authentication where you provide an OAuth2 token with your IAM DB user. MySQL does not yet support automatic IAM authentication where you provide your IAM DB user and the proxy (with the enable_iam_login flag) will retrieve a token and insert it into the login request for you and also refresh that token for future login requests.

From the README and other resources, this is the behaviour I was expecting. However a colleague said he had managed to get the automatic login to work (with the enable_iam_login) and this seems true before 1.28.1. From my testing I was able to get the proxy to add the OAuth2 token and hence login to the database without any mysql password. Do you think this can be relied on, or is it more good luck and will only work under certain conditions?
Docker command used as above.
Mysql login:
mysql -u iam_user -h <IP_ADDRESS>
Note the user needs to be the database user without the host part, just the name on its own.
In versions 1.28.1 and above you get error messages like:
`[Note] CloudSQL Instance's IAM access denied for user<EMAIL_ADDRESS>Error code :UNAUTHENTICATED Error Message :Request is missing required authentication credential. Expected OAuth 2 access token, login cookie or other valid authentication credential. See https://developers.google.com/identity/sign-in/web/devconsole-project.
[Note] Access denied for user<EMAIL_ADDRESS>(using password: YES)
`
Change the proxy to be 1.28.0 no error and you connect just fine.

That's an interesting discovery ;-)
For now, MySQL Auto IAM AuthN isn't officially supported, so I'd recommend against using it for production workloads. As soon as the feature is available, I will update the README.


Feat/cleaup interface

Blocked by https://github.com/open-rpc/generator-client/issues/169

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Why v1.3.0 is not returning whole tuple as a response. It returns only last string value in the tuple array. .

Description
Describe your issue here.
What type of issue is this? (place an x in one of the [ ])

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

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

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

Bug Report
Filling out the following details about bugs will help us solve your issue sooner.
Reproducible in:
slackclient version:
python version:
OS version(s):
Steps to reproduce:

Expected result:
What you expected to happen
Actual result:
What actually happened
Attachments:
Logs, screenshots, screencast, sample project, funny gif, etc.

V1.0.9 works like a charm.... @aoberoi

Can you please add some details, or example code here? I'm not sure which method you are referring to, or what you expect that isn't working.

@aoberoi
response = "answer1","answer2"
slack_client.api_call("chat.postMessage", channel=channel, text=response)
But I am seeing the BOT is giving output as "answer2" instead of "answer1","answer2"

Any help here?

@rodney uruqhart can you help here?

@rkbala Hi, we're sorry for our slow response here. The first line of your code seems to generate a tuple but the library doesn't expect to receive tuples as arguments.
>>> response = "answer1","answer2"
>>> response
('answer1', 'answer2')

Creating a concrete str value for the text argument should work for you.

As I've already provided an answer to the question, let me close this issue. Please feel free to write in if you have something further to discuss or ask.


Make ci work

This is to integrate CircleCI. This PR is built on top of an existing dummy config.yaml to kick off the CircleCI builds.
Adding the CI testing here will eliminate the requirement of opening a Test PR on the repository we are adding/modifying the tests.

Adds 3 builds for:

Kubernetes
k8s-deployment
Other external plugins

Modifies tests to pass in the CircleCI env

This doesn't (yet) delete the unused files from the previous webhook method.

/cc @chrisohaver

Looks good so far.  I'm assuming this a work in progress (I see hard coded paths to your forks in a few places).

Yes, I need to substitute them with an env variable and I should be done.


[Snyk] Security upgrade node from current-alpine3.18 to 21.2-alpine3.18

This PR was automatically created by Snyk using the credentials of a real user.Keeping your Docker base image up-to-date means you’ll benefit from security fixes in the latest version of your chosen image.
Changes included in this PR

Dockerfile

We recommend upgrading to node:21.2-alpine3.18, as this image has only 0 known vulnerabilities. To do this, merge this pull request, then verify your application still works as expected.
Some of the most important vulnerabilities in your base image include:

Severity
Priority Score / 1000
Issue
Exploit Maturity

614
CVE-2023-5363 SNYK-ALPINE318-OPENSSL-6032386
No Known Exploit

614
CVE-2023-5363 SNYK-ALPINE318-OPENSSL-6032386
No Known Exploit

586
Improper Check for Unusual or Exceptional Conditions SNYK-ALPINE318-OPENSSL-6055795
No Known Exploit

586
Improper Check for Unusual or Exceptional Conditions SNYK-ALPINE318-OPENSSL-6055795
No Known Exploit

Note: You are seeing this because you or someone else with access to this repository has authorized Snyk to open fix PRs.
For more information:
🧐 View latest project report
🛠 Adjust project settings

Learn how to fix vulnerabilities with free interactive lessons:
🦉 Learn about vulnerability in an interactive lesson of Snyk Learn.

Check out a preview of your pull request here: https://app-servicecanadalabs-dev-pr-preview-1.azurewebsites.net


evolution: 3.44.1 -> 3.44.2

Automatic update generated by nixpkgs-update tools. This update was made based on information from passthru.updateScript.
meta.description for evolution is: "Personal information management application that provides integrated mail, calendaring and address book functionality"
meta.homepage for evolution is: "https://wiki.gnome.org/Apps/Evolution"
meta.changelog for evolution is: ""
Updates performed

Ran passthru.UpdateScript

To inspect upstream changes
https://gitlab.gnome.org/GNOME/evolution/-/compare/3.44.1...3.44.2
Bug Fixes:

I#1871 - WebKitEditor: Convert to plain text incorrect on reply/forward open
I#1886 - itip-formatter: Use whole URL value as a link href
I#1891 - Fails to build with libgweather 3.36
I#1895 - Misc: Handle numpad Enter similarly as the Enter key
I#1896 - Composer: Ensure URL entry is focused in Link Properties
I#1898 - Better handle Dark Style GNOME 42 setting
I#1900 - iTIP formatter shows twice "Attendee status updated"
I#1902 - Tasks: Overdue calculation sometimes incorrect
I#1904 - CompEditor: Move whole component between calendars
I#1905 - DUE-today color in Tasks window not always applied
I#1913 - Calendar: iTip message not sent to a Room address
ews-I#159 - EMFolderTreeModel: Prefer Inbox over other folder types

Miscellaneous:

EShell: Auto-close ESource connection alerts on idle
EContactEditor: Use a GWeakRef on the editor when opening target client
EWebDAVConfigLookup: Set also authentication method
EWebKitEditor: Mode change not propagated into the Editor widget
Tasks: Ensure ICalTime::zone is set for current time
itip-view: Ignore empty text/plain subpart in meeting invitation mail

Impact

Checks done (click to expand)

built on NixOS
The tests defined in passthru.tests, if any, passed
found 3.44.2 with grep in /nix/store/0frgq3c3r2km9h2ny08m3lb5vavkpc7b-evolution-3.44.2
found 3.44.2 in filename of file in /nix/store/0frgq3c3r2km9h2ny08m3lb5vavkpc7b-evolution-3.44.2

Rebuild report (if merged into master) (click to expand)

5 total rebuild path(s)

4 package rebuild(s)

4 x86_64-linux rebuild(s)
1 x86_64-darwin rebuild(s)

First fifty rebuilds by attrpath
almanah
evolution
evolution-ews
evolutionWithPlugins

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/0frgq3c3r2km9h2ny08m3lb5vavkpc7b-evolution-3.44.2 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A evolution https://github.com/r-ryantm/nixpkgs/archive/32022909005fbc0a5b3c57eef98fcec404b915d0.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/0frgq3c3r2km9h2ny08m3lb5vavkpc7b-evolution-3.44.2
ls -la /nix/store/0frgq3c3r2km9h2ny08m3lb5vavkpc7b-evolution-3.44.2/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

4 packages built:

almanah
evolution
evolution-ews
evolutionWithPlugins

Maintainer pings
cc @bobby285271 @hedning @jtojnar @dasj19 @maxeaubrey for testing.

https://gitlab.gnome.org/GNOME/evolution/-/compare/3.44.1...3.44.2
Evolution 3.44.2 2022-05-27
---------------------------
Bug Fixes:
	I#1871 - WebKitEditor: Convert to plain text incorrect on reply/forward open
	I#1886 - itip-formatter: Use whole URL value as a link href
	I#1891 - Fails to build with libgweather 3.36
	I#1895 - Misc: Handle numpad Enter similarly as the Enter key
	I#1896 - Composer: Ensure URL entry is focused in Link Properties
	I#1898 - Better handle Dark Style GNOME 42 setting
	I#1900 - iTIP formatter shows twice "Attendee status updated"
	I#1902 - Tasks: Overdue calculation sometimes incorrect
	I#1904 - CompEditor: Move whole component between calendars
	I#1905 - DUE-today color in Tasks window not always applied
	I#1913 - Calendar: iTip message not sent to a Room address
	ews-I#159 - EMFolderTreeModel: Prefer Inbox over other folder types
Miscellaneous:
	EShell: Auto-close ESource connection alerts on idle
	EContactEditor: Use a GWeakRef on the editor when opening target client
	EWebDAVConfigLookup: Set also authentication method
	EWebKitEditor: Mode change not propagated into the Editor widget
	Tasks: Ensure ICalTime::zone is set for current time
	itip-view: Ignore empty text/plain subpart in meeting invitation mail

Looks fine to me.


Split up a long running test into two parts

This test can take 10 minutes as is. It seems to be two independent parts that can be two tests.

@ticoann please merge


Allow explicit disconnect

I've been prototyping a bot in first Javascript, then Go, then Rust with Discord.rs and now Serenity and all prior libraries I used allowed me to cleanly, explicitly shutdown/disconnect the connection(s), which I did for example when the application received a SIGINT or whenever else I felt it to be useful.
As far as I know this library doesn't currently have the ability to do this, which means that when I terminate the application I still see the bot in my server for a while until it times out.

Well, this is already implemented with 4d4e9dcf. Which, if you're wondering, is indeed a hack. But couldn't think of any other solution, as once the client boots the shards up, it passes them onto (monitor/handle)_shard, removing the direct access. Still, should be prominent enough.

Thanks! Should work fine enough.


linux sendfile?

Hi,
Do you plan to have sendfile enabled in the protocol? In order to.. send files faster.
Otherwise, where is a good place to start to implement it?
I am a c++ dev, not rust, so I am not really sure about the best move here.. thanks

(not in the protocol itself, but its implementation, of course)

It's out of scope - sendfile() is using TCP.

Oups my bad thanks


能否出一个可设置每个标签夹层级细分程度的功能？

也就是可以分别设置每个标签夹的expand limit
举个例子(for example)：
before
-A
--B
---C
----D
如果我把这个文件夹设置为3层细分，after
-A
--B
---C
---C标签下的笔记
如果我把这个文件夹设置为2层细分，after
-A
--B
--B标签下的笔记

Sorry for being late,
I'm trying to understand your issue using the translation app and guessing kanjis{Hanzi?)
Now we record information into pininfo.md, we can do this.
But it looks like your idea is aimed to set the limits for the child by parent tag.
Does not it realised by limiting the child directly, like Keep closed, Do not expand or Mark as the bottom?`

forgive my bad English.
what I mean is that when I turn on a tag folder,
there will be show:
-A folder
--a folder
---1 folder
----01note
----02note
---2 folder
----03note
----04note
--b folder
if I can set a number to limit A tag folder show,
such as only show two levels of nesting，there will be show：
-A folder
--a folder
----01note
----02note
----03note
----04note
--b folder
when only show one levels of nesting，there will be show：
-A folder
----01note
----02note
----03note
----04note
how many levels of nesting means how many tagfolder been shown.
others，the button of expand limit confuses me，it seems not to control the levels of nesting very well.


fix: Logo resizing on page load

SUMMARY
This PR fixes a glitch with the logo resizing during page load.
BEFORE
https://user-images.githubusercontent.com/60598000/159518847-21fac568-e2d1-47e0-97e9-c8423a859e8e.mp4
AFTER
https://user-images.githubusercontent.com/60598000/159518931-cf928408-52a9-44b6-b65f-cdafe91ef50e.mp4
TESTING INSTRUCTIONS

Force reload the page.
The logo should not resize on page load

ADDITIONAL INFORMATION

[ ] Has associated issue:
[ ] Required feature flags:
[ ] Changes UI
[ ] Includes DB Migration (follow approval process in SIP-59)

[ ] Migration is atomic, supports rollback & is backwards-compatible
[ ] Confirm DB migration upgrade and downgrade tested
[ ] Runtime estimates and downtime expectations provided

[ ] Introduces new feature or API
[ ] Removes existing feature or API

This is a follow-up to https://github.com/apache/superset/pull/19307 to avoid some layout quirks. I'll give it the 2.0 tag treatment as well, since it's so closely related.

Is there a fix to this, because I'm having this same problem?


Code not compile after deleting a class

Hello!!
I m using Jenny server .
On code generation after deleting a component class or any class which has context attribute should also delete its generated code..?
if yes then its not happening in my case.
if not then I have to  delete it manually ?

Hi, yes, deleting a component should result in deleting the generated code, too.
If you don't use the roslyn code generator (comes with the asset store version) and you use the default generator in Unity, the code is not deleted automatically, because the default code generator only works when there are no compiler errors.

and how to refactor? For example rename the component...

I have the component Named NeedSpawn, then I rename this to TrySpawn and have a many problems with fields as below:
entity.isNeedSpawn; is not compiled
i need rename all entries to entity.isTrySpawn;

@kkohno I ran into this problem too. I fixed it by finding the occurrences of my component, NeedSpawn in your case inside the Generated folder. There were a few files (e.g. GameNeedSpawn.cs if using Game context); these can just be deleted (or renamed if refactoring) and 3 references in the generated GameComponentsLookup.cs file. The lines referencing the component inside GameComponentsLookup.cs can be renamed or deleted. Do note that if you're deleting a component, you will need to decrement the indices for all subsequent indices (e.g. public int NeedSpawn = 8) such that they are monotonically increasing.
You can probably also just delete all the contents of the Generated directory. The only gotcha I've found there is that you need to make sure you have enumerated all of your contexts inside the Entitas menu.
Sounds like updating to the $90 asset store version might also fix things. I'm still testing out Entitas before buying, but it's nice to know that the code generation will get out of the way more with the Roslyn version.

@fahall a lot of steps for a simple renaming. By the way, simply deleting the Generate folder will have compilation errors with attributes in your code


Better token creation support

This PR moves the the interaction with tokens into the JSONWebTokenBackend object and removes the utils module.
I needed the ability to control what goes in to the payload for a token. I contemplated creating a new object that would house all of the token interaction, but decided against that since so many of the methods are needed alongside the full authentication backend.

All of the tests pass with the new code paths, but I still consider this a WIP. There are probably some areas in the backend that could be refactored further to allow users to override smaller pieces of the backend without having to duplicate big chunks. Would love to hear your thoughts on this before I put too much more effort into it though.


Swow driver

Is it possible to add swow driver?

Is it possible to add swow driver?

swow does not provide APIs related to the event loop, and it is hooked directly into stream_select so there is no need to create a separate driver for it to work.

Swow actually does provide a stream_select_unlimited() function, with the same signature than stream_select. This function is directly compatible with the underlying event loop, i.e. Swow will process events for its own code at the same time than it processes stream_select_unlimited events.
So, at least technically it should be possible to add a Swow driver. The code would need to be able to handle calls from Swow callbacks into the Revolt event loop, i.e. basically, if the revolt Swow event loop driver is currently processing a stream_select_unlimited, it would need to pick up new events.


feat request: provide helper methods for controller via trait

Would like to request this package to provide a simple trait wrapping around the facade, so we can call it
directly from the controller rather than importing the facade.
<?php
/* app/Http/Controllers*/

<?php

namespace App\Http\Controllers;
use Jiannei\Response\Laravel\Support\Traits\ControllerTrait;

abstract class Controller
{
    use ControllerTrait;
}

/* then, in our controllers */

return $this->respondSuccess($data);
return $this->respondError($error);
return $this->respondCreated();
return $this->respondOk();

Just like this other package https://github.com/f9webltd/laravel-api-response-helpers
Of course, I can implement the wrapper myself, it is simply a trait wrapper. But would be better if the package provides it.

I can make a PR if you agree

Maybe you can try using the JsonResponseTrait to see if it meets your requirements.

I was not aware of that.
That is perfect!


scrollEnabled={false} does not work for IOS

scrollEnabled={false}

does not work on IOS 12.x.x.
Versions:
"react": "16.8.1",
"react-native": "0.61.3",
"@react-native-community/viewpager": "2.0.1",

Codes:
<ViewPager
style={{flex: 1}}
initialPage={0}
keyboardDismissMode="on-drag"
scrollEnabled={false}>
 <View key="1">
   <Text>First page</Text>
 </View>
 <View key="2">
   <Text>Second page</Text>
 </View>
</ViewPager>

Same here for me. Works on android and not on IOS. On IOS you are still able to scroll. Please assist.

same problem . only works on iOS.

I will take a look on it

Hey,
I have tested above code and it seems to work. I provide you a reproduce repo https://github.com/troZee/viewPagerExample
Please open, when you provide reproducible example.  (You can fork my repo)

it works on iOS 13 only

I have seen the issue. For each view in the view pager you have to add key="0",key="1",key="2".... so on... For example

<View key="0" >
</View>
<View key="1" >
</View>
<View key="2" >
</View>

it works on iOS 13 only

I reopen this issue due reproducible case

I had the same issue and get it solved by removing paddingTop from parent of ViewPager. It was working fine in Android and iOS-13 but not in below versions of iOS.
Here is what which solved issue for me.
 < View style={{                 ...otherStyle, //paddingTop: 20, have to remove it from here and put it in child view of viewpager.             }} >                 <ViewPager                     scrollEnabled={false}                       initialPage={0}>                      <View                         key="1"                         style={{                             flex: 1,                             paddingTop: 20//used padding here and its working.                         }} > </ViewPager> </View>
If anybody can shower light on its reason, it would be great.

Still doesn't work. Any solutions?


Expose 8080 port for hot module replacement

The problem
When user run hot module replacement (HMR) with laravel-mix (sail npm run hot), an error "Failed to load resource: net::ERR_CONNECTION_REFUSED" is returned because the port is not forwarded.
The solution
Add 8080 port forwarding.
Ref
https://laravel-mix.com/docs/6.0/hot-module-replacement

@ryoluo I'm curious to know whether this is working for you as I've run into an issue with it.
By publishing Mix's port 8080 on the host, Docker will bind to it regardless of whether Mix is running inside the container. This means that npm run hot will fail outside of the container because the port is already in use by Docker. The only way to get Mix to run outside of the container is to either configure Mix to run on a different port, or to remove/change the 8080 publishing.
Additionally, if you run Mix inside the container with sail npm run hot, by default Mix only listens on <IP_ADDRESS>, so even with port 8080 being published, the traffic can't actually be forwarded. The only way I can see to get Mix to run inside the container is by adding the following to webpack.mix.js:
mix.options({
    hmrOptions: {
        host: '<IP_ADDRESS>', // This is the important part
        port: 8080, // This must be defined when customising hmrOptions
    },
})


Tool reports a false positive on javax.mail-1.6.2.jar

[
Is this a request for help?:
Is this a BUG REPORT or a FEATURE REQUEST? (choose one):
BUG REPORT

Version of Anchore Engine and Anchore CLI if applicable: anchore-cli, version 0.8.2
Name: anchore-engine
Version: 0.8.2
What happened:
Tool reported a CVE-2017-15806 on com.sun.mail.javax.mail-1.6.2.jar
False detection in the com.sun.mail.javax.mail-1.6.2.jar. It is adding CVE - https://nvd.nist.gov/vuln/detail/CVE-2017-15806. Inspite of manifest and vuln.json capturing the cpe as below, the analyzer reports a vulnerability related to Zeta Components Mail
"package_cpe": "cpe:a:sun:mail:1.6.2::",
"package_cpe23": "cpe:2.3:a:sun:mail:1.6.2::-:-:-:-:-:",
As per NVD, the affected component is:  cpe:2.3:a:zetacomponents:mail::::::::
Snippet from manifest file:

Snippet from Anchor's vuln report.json:

What did you expect to happen:
The tool analyser should not have matched the package cpe with the vulnerable, and since no match, should have passed the scan.

Any relevant log output from /var/log/anchore:
Shared the snippet, as no error in Anchore working
What docker images are you using:
openjdk:8u282-jre-slim-buster
How to reproduce the issue:
Create and scan simple Java project using which is using latest com.sun.mail.javax.mail-1.6.2.jar
Anything else we need to know:
No

@zhill - Kindly look into the issue

@swetan27 I see that you are using Version: 0.8.2 of engine. Since that version we have introduced a number of changes/enhancements to how engine analyzes images. As of v0.9.0 we use syft to analyze images and we have introduced a number of patch releases that address issues specific to java packages.  Does running the image in question again the most recent version of engine (v0.10) produce the same false positive?

Stepping to anchore 0.10.0 removed this vulnerability

Good to hear! With false positive no longer being reported, Im goin to go ahead and close the issue. Let me know if you have any additional questions


Dockerize the application

Description
Your app use many version of package and nodejs and some other computer who clone your repo they have different version of all thing then they face difficulty in running your app so that many people use docker due to which with one command anyone can run your app locally without any difficulty

Is anyone working on this this issue, if not then please assign it to me. I'll complete it within one to two days.


Fixes to build suggestions

Docs Build status updates of commit b45375e:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

cordovadocs/2015/access-device-capabilities/manage-plugins.md
:bulb:Suggestion

Details

cordovadocs/2015/adding-javascript-packages/interoperability.md
:bulb:Suggestion

Details

cordovadocs/2015/debug-test/appium-setup.md
:bulb:Suggestion

Details

cordovadocs/2015/debug-test/appium-ui-sequences.md
:bulb:Suggestion

Details

cordovadocs/2015/debug-test/designing-ui-tests.md
:bulb:Suggestion

Details

cordovadocs/2015/debug-test/ui-testing-prerequisites.md
:bulb:Suggestion

Details

cordovadocs/2015/known-issues/known-issues-cordova5.md
:bulb:Suggestion

Details

cordovadocs/2015/known-issues/known-issues-ios.md
:bulb:Suggestion

Details

cordovadocs/2015/known-issues/known-issues-vs2013.md
:bulb:Suggestion

Details

cordovadocs/2015/tips-workarounds/configuration-tips.md
:bulb:Suggestion

Details

cordovadocs/2015/tips-workarounds/run-windows-in-mac-vm.md
:bulb:Suggestion

Details

cordovadocs/2017/debug-test/appium-setup.md
:white_check_mark:Succeeded

cordovadocs/2017/debug-test/appium-ui-sequences.md
:white_check_mark:Succeeded

cordovadocs/2017/debug-test/designing-ui-tests.md
:white_check_mark:Succeeded

cordovadocs/2017/tips-workarounds/configuration-tips.md
:white_check_mark:Succeeded

cordovadocs/2017/tips-workarounds/host-a-mac-in-the-cloud.md
:white_check_mark:Succeeded

cordovadocs/2017/tips-workarounds/run-windows-in-mac-vm.md
:white_check_mark:Succeeded

cordovadocs/2015/access-device-capabilities/manage-plugins.md

Line 2, Column 1: [Suggestion-description-missing] Missing required attribute: 'description'.

cordovadocs/2015/adding-javascript-packages/interoperability.md

Line 2, Column 1: [Suggestion-description-missing] Missing required attribute: 'description'.

cordovadocs/2015/debug-test/appium-setup.md

Line 2, Column 1: [Suggestion-description-missing] Missing required attribute: 'description'.

cordovadocs/2015/debug-test/appium-ui-sequences.md

Line 2, Column 1: [Suggestion-description-missing] Missing required attribute: 'description'.

cordovadocs/2015/debug-test/designing-ui-tests.md

Line 2, Column 1: [Suggestion-description-missing] Missing required attribute: 'description'.

cordovadocs/2015/debug-test/ui-testing-prerequisites.md

Line 2, Column 1: [Suggestion-description-missing] Missing required attribute: 'description'.
Line 80, Column 156: [Suggestion-preserve-view-not-set] Did you mean to link to a specific version? If so, add &preserve-view=true to the URL: https://docs.microsoft.com/visualstudio/cross-platform/tools-for-cordova/first-steps/build-your-first-app?view=toolsforcordova-2017
Line 90, Column 209: [Suggestion-link-text-missing] Missing link text for link 'https://docs.microsoft.com/visualstudio/cross-platform/tools-for-cordova/?view=toolsforcordova-2017'. Add appropriate text.
Line 90, Column 209: [Suggestion-preserve-view-not-set] Did you mean to link to a specific version? If so, add &preserve-view=true to the URL: https://docs.microsoft.com/visualstudio/cross-platform/tools-for-cordova/?view=toolsforcordova-2017

cordovadocs/2015/known-issues/known-issues-cordova5.md

Line 2, Column 1: [Suggestion-description-missing] Missing required attribute: 'description'.

cordovadocs/2015/known-issues/known-issues-ios.md

Line 2, Column 1: [Suggestion-description-missing] Missing required attribute: 'description'.

cordovadocs/2015/known-issues/known-issues-vs2013.md

Line 2, Column 1: [Suggestion-description-missing] Missing required attribute: 'description'.

cordovadocs/2015/tips-workarounds/configuration-tips.md

Line 2, Column 1: [Suggestion-description-missing] Missing required attribute: 'description'.

cordovadocs/2015/tips-workarounds/run-windows-in-mac-vm.md

Line 2, Column 1: [Suggestion-description-missing] Missing required attribute: 'description'.

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel


Update Count of feeding paws

Change value from 190 to 3669 in following lines
line 1
line 2

Hi @himanshu007-creator , I will like to contribute to it

Hi @AlkaDas991 , please submit a PR by tomorrow

I have linked the PR, that fixes this issue, please review it once @himanshu007-creator

I have linked the PR, that fixes this issue, please review it once @himanshu007-creator

Too late, already merged🎉🟩🤞


Inverse Trignometry Calculator

Calculator for finding Inverse T-Ratios of different angles.

I want to work on this under JWOC.


Fix built-in parsers and formatters

ref 93e699829f7b4a2fe152370eccdf9b2712f4329f #1329
I'd like to use grape-msgpack without tricky hacking. Currently, our implementation does not support inheritable interface, so I fixed a few points.
Thoughts?

I see how a require fixes this, but we now load formatters we don't use. Why doesn't autoload work with grape-msgpack?

Nope, I removed autoloads to declare FORMATTERS and PARSERS constants.

Sorry, I am a little slow, and clearly I am missing some Ruby-fu understanding :)
Why doesn't it work with grape-msgpack?

At first, grape-msgpack didn't consider the commit.
However, something like this line has broke inheritance interface.
Our provided options cannot be inherited, so if we want to implement customized grape formatter, we must require the tricky code.
I think we should be able to provide more developer-friendly interface.
If this PR is merged, maybe grape-msgpack can resolve by a little bit changes.

What if we just added a global interface to register formatters, instead of inheriting anything? Like so:
Grape.configure do |config|
   config.formatters.add
end

Or
class MyFormatter << Grape::Formatter
end

Grape::Formatter.register MyFormatter, ...

Yeah, it's so cool and developer-friendly. :)
Btw, should we contain the configuration feature in 0.16.0?
Also, can this PR be used as a 0.15-backported patch?
2016年3月17日木曜日、Daniel Doubrovkine (dB.) @dblockdotorg<
<EMAIL_ADDRESS>
What if we just added a global interface to register formatters, instead
of inheriting anything? Like so:
Grape.configure do |config|
config.formatters.addend
—
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub
https://github.com/ruby-grape/grape/pull/1330#issuecomment-197909953

Hmm, right. It's reasonable.
2016年3月17日木曜日、Daniel Doubrovkine (dB.) @dblockdotorg<
<EMAIL_ADDRESS><javascript:_e(%7B%7D,'cvml','notifications@github.com');>>さんは書きました:

Or
class MyFormatter << Grape::Formatterend
Grape::Formatter.register MyFormatter, ...
—
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub
https://github.com/ruby-grape/grape/pull/1330#issuecomment-197915336

I don't think we should backport anything and just move forward. If you want to give one of the above a short, go for it! I'd rather not remove autoload. I prefer the second version btw, not the global configuration one because that always bites us.

I am planning to write micro service using ruby-grape, So I am thinking 0.15.0 is stable version to use. Plz lemme know your suggestions.

I've tried to implement register keyword on those by using the second feature as base approach.
@dblock Could you confirm the changes?

I'll merge this as is, feel free to make further changes later. Also I think we don't need to document this publicly for now.

Add a similar spec for parsers.


Do something about name length limits

While working on ros2/rclcpp#233, it was discovered that connext can throw an error like this when trying to create a parameter service client:
PRESContentFilteredTopic_createFilterProperty:!copy content filtered property "filter expression" field: reached maximum length for content filter property (current length: 262, max. length: 256). Please consider increasing contentfilter_property_max_length parameter under participant's resource limits.
PRESContentFilteredTopic_associateReader:!copy sequence for content filtered property data
DDS_Subscriber_create_datareader_disabledI:ERROR: Failed to associate reader and content filtered topic
DDSDataReader_impl::create_disabledI:!create reader
DDSDataReader_impl::createI:!create reader
DDSDomainParticipant_impl::create_datareader:ERROR: Failed to create datareader
initialize:!create DataReader
connext::details::EntityUntypedImpl::initialize:!failed (see previous errors)

In this case, the node name was test_parameters_local_synchronous_repeated and the error above was produced when trying to create the test_parameters_local_synchronous_repeated__get_parameter_types client during the construction of a SyncParametersClient, which in turn constructs an AsyncParametersClient, which creates various clients. The service name is only 63 characters long, so presumably there's something else going on that's creating a filter expression that's 262 characters long.
For now, I'm working around the problem in the test by shortening the node name (to test_parameters_local_synch_repeated).
I don't know much about the name handling in DDS generally or connext specifically, so I'm starting by flagging this as an issue. It could be that the fix is in system configuration, not code.

This is not an issue anymore

Linux
Linux-aarch64
macOS
Windows


[Improvement] Remove unused utilities code & resources

Description

Optimize imports
Remove unused utilities classes or functions, unused resources
Move all code like only-for-sample to sample modules

Ticket URL

https://uizaio.atlassian.net/browse/EBC-690

close as #180


Replace tflite model in mediapipe.

Issue Type
Support
OS
Ubuntu
OS architecture
x86_64
Programming Language
C++
Framework
Other
Model name and Weights/Checkpoints URL
https://github.com/PINTO0309/PINTO_model_zoo/tree/main/053_BlazePose/10_lite_full_heavy_version_May6_2021
Description
hi @PINTO0309 , when I saw this repo, I seemed to have found a treasure. Thank you very much for your contributions and share them.
I want to use
PINTO_model_zoo/053_BlazePose/10_lite_full_heavy_version_May6_2021/saved_model_lite/model_float32.tflite
to replace pose_landmarks_lite.tflite in mediapipe, but the issue was encountered:
I20220902 01:44:00.938908 71426 thread_pool_executor.cc:93] Terminating thread pool. E20220902 01:44:00.942251 71426 demo_run_graph_main.cc:162] Failed to run the graph: CalculatorGraph::Run() failed in Run:  Calculator::Process() for node "poselandmarkcpu__poselandmarkbyroicpu__tensorstoposelandmarksandsegmentation__TensorsToFloatsCalculator" failed: ; RET_CHECK failure (mediapipe/calculators/tensor/tensors_to_floats_calculator.cc:98) (num_values)==(1)
Can you give me some advice ? Thank you again for sharing !
Relevant Log Output
I20220902 01:44:00.938908 71426 thread_pool_executor.cc:93] Terminating thread pool.
E20220902 01:44:00.942251 71426 demo_run_graph_main.cc:162] Failed to run the graph: CalculatorGraph::Run() failed in Run:
Calculator::Process() for node "poselandmarkcpu__poselandmarkbyroicpu__tensorstoposelandmarksandsegmentation__TensorsToFloatsCalculator" failed: ; RET_CHECK failure (mediapipe/calculators/tensor/tensors_to_floats_calculator.cc:98) (num_values)==(1)

URL or source code for simple inference testing code
https://github.com/google/mediapipe

All models committed to my repository have been changed to the standard specification, replacing MediaPipe's custom OP.
Therefore, instead of using MediaPipe, inference should be done using regular TensorFlow Lite. If you want to infer using MediaPipe, you should use the tflite files published by MediaPipe as is.

hi @PINTO0309 , i am glad to receive your reply.
If I want to replace the model in mediapipe with my own model instead of directly using the model in mediapipe, do you have any experience in this field? Or can you give me some suggestions and ideas?

That question is a topic unrelated to this repository; please inquire in a MediaPipe issue.
I only converted the model because I did not want to use MediaPipe.

Hi @mch0dmin , were you able to solve this issue? I have similar requirements.


periodic sync upstream KF to midstream ODH

content:

adapt https://github.com/kubeflow/model-registry/pull/41
with https://github.com/opendatahub-io/model-registry/commit/0ebf88d1db5dc2b57b2e5c49fecf7e8ebcce21a2
keep https://github.com/kubeflow/model-registry/pull/39
adapt https://github.com/kubeflow/model-registry/pull/43
with https://github.com/opendatahub-io/model-registry/commit/0ebf88d1db5dc2b57b2e5c49fecf7e8ebcce21a2
keep https://github.com/kubeflow/model-registry/pull/49
keep https://github.com/kubeflow/model-registry/pull/47

Codecov Report
Attention: Patch coverage is 67.10526% with 25 lines in your changes are missing coverage. Please review.

Project coverage is 79.34%. Comparing base (bb0a432) to head (0ebf88d).

Files
Patch %
Lines

clients/python/src/model_registry/_utils.py
53.19%
20 Missing and 2 partials :warning:

clients/python/src/model_registry/utils.py
89.28%
0 Missing and 3 partials :warning:

Additional details and impacted files
@@            Coverage Diff             @@
##             main      #32      +/-   ##
==========================================
+ Coverage   76.43%   79.34%   +2.90%
==========================================
  Files          17       14       -3
  Lines        2054      673    -1381
  Branches       74       93      +19
==========================================
- Hits         1570      534    -1036
+ Misses        299      111     -188
+ Partials      185       28     -157

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


Explicit parallel test run

Let's see if this speeds things up.
Proposed Changes

Explicit parallel test run

/hold

No evident benefits :disappointed:


Getting a error when runner_registration_token contains an underscore.

When the aws_ssm_parameter.runner_registration_token contains an underscore I'm getting the error:
Error creating machine: Invalid hostname specified. Allowed hostname chars are: 0-9a-zA-Z . -.
I solved it by recreating a runner to get a token without underscore. But maybe it makes sense to substitute underscore with a dash?

Good catch, feel free to propose a change via a PR


DocsArchive-<IP_ADDRESS>Auto archive content

Auto archive content from https://github.com/OPS-E2E-PPE/docs-archive-test

Docs Build status updates of commit b0d2e3b:
:x: Validation status: errors
Please follow instructions here which may help to resolve issue.

File
Status
Preview URL
Details

:x:Error

Details

[Error]

Cannot sync git repo to specified commit because branch Archive_master_2019-09-25-10-49-07 has been deleted or has been force pushed: fatal: Couldn't find remote ref Archive_master_2019-09-25-10-49-07

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


fix: improved vscode-neovim.escape's when condition

When the find widget or notification center is visible, pressing Esc should close them instead.

You can press Shift-Escape.

@trkoch If you try notifications.showList while in normal mode, shift+escape won't close it.

I don't see any risk here. vscode-neovim isn't active in findWidgetVisible || notificationCenterVisible. So let's merge this.


cater for more than two lines in the status block

Would it be possible to improve the alignment of the counts between boxes?

Have actioned:


Coding_Assistant_in_VSCode fixes needed

recipes/Coding_Assistant_in_VSCode/Coding_Assistant_in_VSCode.ipynb needs a few fixes.

It should install 8b as well as 20b.
In the cell Configure Continue to connect to a model on Replicate, the example JSON mixes 8b and 20b logic.
Add the correct logic for the latest versions for both 8b and 20b.

I'll take this issue. Should it be in the PM project?

Add the correct logic for the latest versions for both 8b and 20b.

The latest versions are hosted under the same identifiers as the previous versions:
https://ollama.com/library/granite-code

PR here.

Fixed.


Add support for custom RateLimit headers.

@brookemckim 👋 Perhaps we can get to green if you rebase on top of main?

@brookemckim Thanks for all your patience, and for improving faraday-retry!


Nonce Parameter Empty When Generating ID Token

When generating an ID token in the OAuth flow, the nonce parameter is found to be empty. This issue occurs during the token generation process where the nonce, expected to be part of the request, is not being captured or passed correctly, resulting in an empty value when it is required for the ID token generation.
This behavior is inconsistent with the expected functionality, where the nonce should be correctly extracted from the request and utilized in the ID token creation. It’s crucial for maintaining the integrity and security of the OpenID Connect implementation.
Steps to Reproduce:
1.	Initiate the OAuth flow with a request that includes the nonce parameter.
2.	Proceed to the point of ID token generation.
3.	Observe that the nonce parameter is empty or not correctly passed.

Expected Behavior:
The nonce parameter should be properly extracted from the request and available during the ID token generation process.
This issue requires investigation and resolution to ensure compliance with OpenID Connect standards and the correct functioning of the OAuth flow.

Hi @vamsii777 , I went through the whole flow with breakpoints and I observed that the nonce parameter is correctly captured.
Therefore, I looked at the code again and – hopefully / maybe – I found the issue:
The Tokens are generated via the handleToken controller.
This controller calls the codeManager
guard let code = try await codeManager.getCode(codeString)
But the codeManager has no knowledge about the nonce parameter. When the code is generated the nonce parameter is not passed as parameter but in the tokenHandler the nonce parameter is taken from the code.
Token Manager:
guard let code = try await codeManager.getCode(codeString), ...

if isOpenIDConnectFlow {
            let (access, refresh, idToken) = try await tokenManager.generateTokens(
                clientID: clientID,
                userID: code.userID,
                scopes: scopes,
                accessTokenExpiryTime: expiryTime,
                idTokenExpiryTime: expiryTime,
                nonce: code.nonce
            )

But this is not possible because the CodeManager has no knowledge about nonce:
   /// Generate Authorization Code
   func generateCode(userID: String, clientID: String, redirectURI: String, scopes: [String]?, codeChallenge: String?, codeChallengeMethod: String?) throws -> String {

If this function is extended to have nonce as optional Parameter as well, then nonce can be stored when the Authorization code is generated and returned in exchange for the code.
I hope this is of some help. As I checked only the Authorization Grant Flow maybe this does not capture all situations.


[SPARK-44239][SQL][FOLLOWUP] Do not disable vector memory optimization when hugeVectorThreshold=0 to align its document

What changes were proposed in this pull request?
Minor fix: Update default hugeVectorThreshold from 0 to -1 in code to match the documentation.
Keep consistent with the documentation
Why are the changes needed?
Keep code and documentation consistent
Does this PR introduce any user-facing change?
No
How was this patch tested?
Exists UT
Was this patch authored or co-authored using generative AI tooling?
No

Also cc @cloud-fan who reviewed and merged #41782 / SPARK-44239

Hi, @dongjoon-hyun

could be a little misleading because the default value means the following. And, this is also a code

When setting spark.sql.inMemoryColumnarStorage.hugeVectorThreshold=0, the code does not work as the doc

Merged to master. Thank you @wankunde and all


Rule file generation with MySql Database.

Konnichiwa (Hello) Mark.
I found another one.
I created entities from the MySqlDatabase with the command  "dotnet ef dbcontext scaffold".
A rule file was generated like below .
{
  "Name": "EfCoreContext",
  "PreserveCasingUsingRegex": false,
  "IncludeUnknownSchemas": true,
  "SplitEntityTypeConfigurations": false,
  "Schemas": [
    {
      "SchemaName": "",
      "IncludeUnknownTables": true,
      "IncludeUnknownViews": true,
      "Namespace": null,
      "Entities": [
        {
          "Name": "tables",
          "EntityName": "Table",
          "IncludeUnknownColumns": true,
          "Properties": [
            {
              "Name": "col1",
              "PropertyName": "Col1"
            }         ]
        }
      ]
    }
  ]
}

I tried the command "dotnet ef dbcontext scaffold" again.
The rule file was modified like below .
{
  "Name": "EfCoreContext",
  "PreserveCasingUsingRegex": false,
  "IncludeUnknownSchemas": true,
  "SplitEntityTypeConfigurations": false,
  "Schemas": [
    {
      "SchemaName": "",
      "IncludeUnknownTables": true,
      "IncludeUnknownViews": true,
      "Namespace": null,
      "Entities": [
        {
          "Name": "tables",
          "EntityName": "Table",
          "IncludeUnknownColumns": true,
          "Properties": [
            {
              "Name": "col1",
              "PropertyName": "Col1"
            }         ]
        }
      ]
    },
    {
      "SchemaName": "",
      "IncludeUnknownTables": true,
      "IncludeUnknownViews": true,
      "Namespace": null
    },
  ]
}

The part of below will be added with the command.
    {
      "SchemaName": "",
      "IncludeUnknownTables": true,
      "IncludeUnknownViews": true,
      "Namespace": null
    }

In the case of MySql, "SchemaName" will be empty.
When that property is empty, I think the section would be added.
Logs and providers are following.
EF Ruler v<IP_ADDRESS> detected Entity Framework v<IP_ADDRESS>
EF Ruler resolved target assembly: EfCoreFirstStep
EF Ruler loaded 1 rule file(s).
Using ServerVersion '5.7.12-mysql'.
DbContext rule file written to EfCoreContext-rules.json
Updated EfCoreContext-rules.json in 16ms

<PackageReference Include="EntityFrameworkRuler.Design" Version="1.2.4">
<PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="7.0.2">
<PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="7.0.2">
<PackageReference Include="Pomelo.EntityFrameworkCore.MySql" Version="7.0.0" />

While I don't have a MySql environment, I made changes to support empty schema names (it definitely was not supported before).
NuGet packages v1.2.5 has been published. Along with a new VSIX.   Let me know if that fixes this specific issue.

Hello Mark. And thank for your action.
I updated the version to v1.2.13 and tried to run the command  "dotnet ef dbcontext scaffold".
After that I got an error.
The stack trace is following.
CoreFirstStepModel.Entities --force --no-onconfiguring
Build started...
Build succeeded.
EF Ruler v<IP_ADDRESS> detected Entity Framework v<IP_ADDRESS>
EF Ruler resolved target assembly: EfCoreFirstStep
EF Ruler loaded 1 rule file(s).
Using ServerVersion '5.7.12-mysql'.
System.ArgumentNullException: Value cannot be null. (Parameter 'key')
   at System.Collections.Generic.Dictionary`2.TryInsert(TKey key, TValue value, InsertionBehavior behavior)
   at System.Collections.Generic.Dictionary`2.Add(TKey key, TValue value)
   at System.Linq.Enumerable.ToDictionary[TSource,TKey,TElement](IEnumerable`1 source, Func`2 keySelector, Func`2 elementSelector, IEqualityComparer`1 comparer)
   at System.Linq.Enumerable.ToDictionary[TSource,TKey,TElement](IEnumerable`1 source, Func`2 keySelector, Func`2 elementSelector)
   at EntityFrameworkRuler.Design.Services.RuledRelationalScaffoldingModelFactory.VisitTables(ModelBuilder modelBuilder, ICollection`1 tables)
   at EntityFrameworkRuler.Design.Services.RuledRelationalScaffoldingModelFactory.Castle.DynamicProxy.IInterceptor.Intercept(IInvocation invocation)
   at Castle.DynamicProxy.AbstractInvocation.Proceed()
   at Castle.Proxies.RelationalScaffoldingModelFactoryProxy.VisitTables(ModelBuilder modelBuilder, ICollection`1 tables)
   at Microsoft.EntityFrameworkCore.Scaffolding.Internal.RelationalScaffoldingModelFactory.VisitDatabaseModel(ModelBuilder modelBuilder, DatabaseModel databaseModel)
   at Castle.Proxies.RelationalScaffoldingModelFactoryProxy.VisitDatabaseModel_callback(ModelBuilder modelBuilder, DatabaseModel
databaseModel)
   at Castle.Proxies.Invocations.RelationalScaffoldingModelFactory_VisitDatabaseModel.InvokeMethodOnTarget()
   at Castle.DynamicProxy.AbstractInvocation.Proceed()
   at EntityFrameworkRuler.Design.Services.RuledRelationalScaffoldingModelFactory.<>c__DisplayClass54_0.<Castle.DynamicProxy.IInterceptor.Intercept>g__BaseCall|2()
   at EntityFrameworkRuler.Design.Services.RuledRelationalScaffoldingModelFactory.VisitDatabaseModel(ModelBuilder modelBuilder, DatabaseModel databaseModel, Func`1 baseCall)
   at EntityFrameworkRuler.Design.Services.RuledRelationalScaffoldingModelFactory.Castle.DynamicProxy.IInterceptor.Intercept(IInvocation invocation)
   at Castle.DynamicProxy.AbstractInvocation.Proceed()
   at Castle.Proxies.RelationalScaffoldingModelFactoryProxy.VisitDatabaseModel(ModelBuilder modelBuilder, DatabaseModel databaseModel)
   at Microsoft.EntityFrameworkCore.Scaffolding.Internal.RelationalScaffoldingModelFactory.Create(DatabaseModel databaseModel, ModelReverseEngineerOptions options)
   at Castle.Proxies.RelationalScaffoldingModelFactoryProxy.Create_callback(DatabaseModel databaseModel, ModelReverseEngineerOptions options)
   at Castle.Proxies.Invocations.RelationalScaffoldingModelFactory_Create.InvokeMethodOnTarget()
   at Castle.DynamicProxy.AbstractInvocation.Proceed()
   at EntityFrameworkRuler.Design.Services.RuledRelationalScaffoldingModelFactory.<>c__DisplayClass54_0.<Castle.DynamicProxy.IInterceptor.Intercept>g__BaseCall|7(DatabaseModel databaseModel, ModelReverseEngineerOptions options2)
   at EntityFrameworkRuler.Design.Services.RuledRelationalScaffoldingModelFactory.Create(DatabaseModel databaseModel, ModelReverseEngineerOptions ops, Func`3 baseCall)
   at EntityFrameworkRuler.Design.Services.RuledRelationalScaffoldingModelFactory.Castle.DynamicProxy.IInterceptor.Intercept(IInvocation invocation)
   at Castle.DynamicProxy.AbstractInvocation.Proceed()
   at Castle.Proxies.RelationalScaffoldingModelFactoryProxy.Create(DatabaseModel databaseModel, ModelReverseEngineerOptions options)
   at EntityFrameworkRuler.Design.Services.RuledRelationalScaffoldingModelFactory.Create(DatabaseModel databaseModel, ModelReverseEngineerOptions ops)
   at Microsoft.EntityFrameworkCore.Scaffolding.Internal.ReverseEngineerScaffolder.ScaffoldModel(String connectionString, DatabaseModelFactoryOptions databaseOptions, ModelReverseEngineerOptions modelOptions, ModelCodeGenerationOptions codeOptions)
   at EntityFrameworkRuler.Design.Services.RuledReverseEngineerScaffolder.ScaffoldModel(String connectionString, DatabaseModelFactoryOptions databaseOptions, ModelReverseEngineerOptions modelOptions, ModelCodeGenerationOptions codeOptions)
   at Microsoft.EntityFrameworkCore.Design.Internal.DatabaseOperations.ScaffoldContext(String provider, String connectionString,
String outputDir, String outputContextDir, String dbContextClassName, IEnumerable`1 schemas, IEnumerable`1 tables, String modelNamespace, String contextNamespace, Boolean useDataAnnotations, Boolean overwriteFiles, Boolean useDatabaseNames, Boolean suppressOnConfiguring, Boolean noPluralize)
   at Microsoft.EntityFrameworkCore.Design.OperationExecutor.ScaffoldContextImpl(String provider, String connectionString, String outputDir, String outputDbContextDir, String dbContextClassName, IEnumerable`1 schemaFilters, IEnumerable`1 tableFilters, String modelNamespace, String contextNamespace, Boolean useDataAnnotations, Boolean overwriteFiles, Boolean useDatabaseNames, Boolean suppressOnConfiguring, Boolean noPluralize)
   at Microsoft.EntityFrameworkCore.Design.OperationExecutor.ScaffoldContext.<>c__DisplayClass0_0.<.ctor>b__0()
   at Microsoft.EntityFrameworkCore.Design.OperationExecutor.OperationBase.<>c__DisplayClass3_0`1.<Execute>b__0()
   at Microsoft.EntityFrameworkCore.Design.OperationExecutor.OperationBase.Execute(Action action)
Value cannot be null. (Parameter 'key')

unfortunately it seems that still not working well...

Sorry for the issue.  Still without a MySql environment so unable to fully test, but I have modified the code again in v1.2.14.  Hopefully it works now.   Let me know.

Hello. I updated the version to 1.2.14.

And I encountered the same error.
Build started...
Build succeeded.
EF Ruler v<IP_ADDRESS> detected Entity Framework v<IP_ADDRESS>
EF Ruler resolved target assembly: EfCoreFirstStep
EF Ruler loaded 1 rule file(s).
Using ServerVersion '5.7.12-mysql'.
System.ArgumentNullException: Value cannot be null. (Parameter 'key')
   at System.Collections.Generic.Dictionary`2.TryInsert(TKey key, TValue value, InsertionBehavior behavior)
   at System.Collections.Generic.Dictionary`2.Add(TKey key, TValue value)
   at System.Linq.Enumerable.ToDictionary[TSource,TKey,TElement](IEnumerable`1 source, Func`2 keySelector, Func`2 elementSelector, IEqualityComparer`1 comparer)
   at System.Linq.Enumerable.ToDictionary[TSource,TKey,TElement](IEnumerable`1 source, Func`2 keySelector, Func`2 elementSelector)
   at EntityFrameworkRuler.Design.Services.Models.ScaffoldedTableTracker.InitializeScope(IEnumerable`1 tables, DbContextRuleNode
dbContextRuleNode)
   at EntityFrameworkRuler.Design.Services.RuledRelationalScaffoldingModelFactory.VisitTables(ModelBuilder modelBuilder, ICollection`1 tables)
   at EntityFrameworkRuler.Design.Services.RuledRelationalScaffoldingModelFactory.Castle.DynamicProxy.IInterceptor.Intercept(IInvocation invocation)
   at Castle.DynamicProxy.AbstractInvocation.Proceed()
   at Castle.Proxies.RelationalScaffoldingModelFactoryProxy.VisitTables(ModelBuilder modelBuilder, ICollection`1 tables)
   at Microsoft.EntityFrameworkCore.Scaffolding.Internal.RelationalScaffoldingModelFactory.VisitDatabaseModel(ModelBuilder modelBuilder, DatabaseModel databaseModel)
   at Castle.Proxies.RelationalScaffoldingModelFactoryProxy.VisitDatabaseModel_callback(ModelBuilder modelBuilder, DatabaseModel
databaseModel)
   at Castle.Proxies.Invocations.RelationalScaffoldingModelFactory_VisitDatabaseModel.InvokeMethodOnTarget()
   at Castle.DynamicProxy.AbstractInvocation.Proceed()
   at EntityFrameworkRuler.Design.Services.RuledRelationalScaffoldingModelFactory.<>c__DisplayClass54_0.<Castle.DynamicProxy.IInterceptor.Intercept>g__BaseCall|2()
   at EntityFrameworkRuler.Design.Services.RuledRelationalScaffoldingModelFactory.VisitDatabaseModel(ModelBuilder modelBuilder, DatabaseModel databaseModel, Func`1 baseCall)
   at EntityFrameworkRuler.Design.Services.RuledRelationalScaffoldingModelFactory.Castle.DynamicProxy.IInterceptor.Intercept(IInvocation invocation)
   at Castle.DynamicProxy.AbstractInvocation.Proceed()
   at Castle.Proxies.RelationalScaffoldingModelFactoryProxy.VisitDatabaseModel(ModelBuilder modelBuilder, DatabaseModel databaseModel)
   at Microsoft.EntityFrameworkCore.Scaffolding.Internal.RelationalScaffoldingModelFactory.Create(DatabaseModel databaseModel, ModelReverseEngineerOptions options)
   at Castle.Proxies.RelationalScaffoldingModelFactoryProxy.Create_callback(DatabaseModel databaseModel, ModelReverseEngineerOptions options)
   at Castle.Proxies.Invocations.RelationalScaffoldingModelFactory_Create.InvokeMethodOnTarget()
   at Castle.DynamicProxy.AbstractInvocation.Proceed()
   at EntityFrameworkRuler.Design.Services.RuledRelationalScaffoldingModelFactory.<>c__DisplayClass54_0.<Castle.DynamicProxy.IInterceptor.Intercept>g__BaseCall|7(DatabaseModel databaseModel, ModelReverseEngineerOptions options2)
   at EntityFrameworkRuler.Design.Services.RuledRelationalScaffoldingModelFactory.Create(DatabaseModel databaseModel, ModelReverseEngineerOptions ops, Func`3 baseCall)
   at EntityFrameworkRuler.Design.Services.RuledRelationalScaffoldingModelFactory.Castle.DynamicProxy.IInterceptor.Intercept(IInvocation invocation)
   at Castle.DynamicProxy.AbstractInvocation.Proceed()
   at Castle.Proxies.RelationalScaffoldingModelFactoryProxy.Create(DatabaseModel databaseModel, ModelReverseEngineerOptions options)
   at EntityFrameworkRuler.Design.Services.RuledRelationalScaffoldingModelFactory.Create(DatabaseModel databaseModel, ModelReverseEngineerOptions ops)
   at Microsoft.EntityFrameworkCore.Scaffolding.Internal.ReverseEngineerScaffolder.ScaffoldModel(String connectionString, DatabaseModelFactoryOptions databaseOptions, ModelReverseEngineerOptions modelOptions, ModelCodeGenerationOptions codeOptions)
   at EntityFrameworkRuler.Design.Services.RuledReverseEngineerScaffolder.ScaffoldModel(String connectionString, DatabaseModelFactoryOptions databaseOptions, ModelReverseEngineerOptions modelOptions, ModelCodeGenerationOptions codeOptions)
   at Microsoft.EntityFrameworkCore.Design.Internal.DatabaseOperations.ScaffoldContext(String provider, String connectionString,
String outputDir, String outputContextDir, String dbContextClassName, IEnumerable`1 schemas, IEnumerable`1 tables, String modelNamespace, String contextNamespace, Boolean useDataAnnotations, Boolean overwriteFiles, Boolean useDatabaseNames, Boolean suppressOnConfiguring, Boolean noPluralize)
   at Microsoft.EntityFrameworkCore.Design.OperationExecutor.ScaffoldContextImpl(String provider, String connectionString, String outputDir, String outputDbContextDir, String dbContextClassName, IEnumerable`1 schemaFilters, IEnumerable`1 tableFilters, String modelNamespace, String contextNamespace, Boolean useDataAnnotations, Boolean overwriteFiles, Boolean useDatabaseNames, Boolean suppressOnConfiguring, Boolean noPluralize)
   at Microsoft.EntityFrameworkCore.Design.OperationExecutor.ScaffoldContext.<>c__DisplayClass0_0.<.ctor>b__0()
   at Microsoft.EntityFrameworkCore.Design.OperationExecutor.OperationBase.<>c__DisplayClass3_0`1.<Execute>b__0()
   at Microsoft.EntityFrameworkCore.Design.OperationExecutor.OperationBase.Execute(Action action)
Value cannot be null. (Parameter 'key')

Found an issue with my string extension method for screening nulls (typo).
v1.2.15 has the fix.
I scaffolded a MySql DB, however, in my case, the schema was not null.  So it wasn't an equivalent scenario.  It did generate/update the json file properly on multiple executions.
Hopefully this fixes it for you.

Hello Mark.
I tried it again on version 1.2.16, and finally it worked fine!
Thank you for your great work.


[T2A6][T01-T1]Li Jiawei

Ready for review. Both T2A4 & T2A5 are in [T2A4][T01-T1]Li Jiawei

@QIGEMINGZIZHENNANA Some comments added. Please close the PR after reading comments.


willTransitionFrom Does not fire on transitions between nested routes

say I have a routes file
<Route name="app" path="/" handler={Application}>
  <Route name="settingsWrapper" path="settings/" handler={SettingsPageWrapper} >

    <Route name="profileSettings" path="profile/" handler={ProfileSettings} />
    <Route name="billingSettings" path="billing/" handler={BillingSettings} />
    <Route name="addCard" path="billing/addCard/" handler={AddCard} />

  </Route>
  <Route name="UserProfile" path="profile/" handler={ProfilePage} />
</Route>

If I add the static willTransitionFrom to either the BillingSettings or the profileSettings component, it does not fire, though if I add the static to the settingsWrapper or the UserProfile component, it will fire.
Is this by design or is there some way to get transitions from these routes to fire?
*edit:
I just noticed that if I add the static to a parent component like SettingsPageWrapper it will fire on some of the children component transitions, but not on others and i'm not sure whats causing it to fire sometimes and not others (maybe fires when there's queries but not when there arent?)
willTransitionTo is still called when transitioning from say billingSettings to addCard i'm assuming since the path lengths are different, but won't be called when moving from profileSettings to billingSettings.

you've got two routes with the path profile/ so I don't think you're transitioning from where you think you are.

Anyway this is still an issue

I think with 1.0.0, the routerWillLeave method will resolves this issue.


doc: Update operation timestamp of ADR-008

Description

References

#0000

Closing this pull request.
The input is valid, but the ADR is not the right place for it. An issue (#367) is created as a starting point. The plan is to write an article/wiki entry to keep best practices for working in a distributed system.


parser: Support omitting function return type.

f() {}

is not valid in C99, but it's sometimes seen in the wild. It's the equivalent of
int f() {}

I'd probably have called this EnableImplicitInt() personally, since "implicit int" is both the colloquial and quasi-technical name for this feature (the C++ committee used it as early as 1995; the C committee used it as early as 1997) and most compilers refer to it as such...

@andlabs SGTM, please feel free to rename the option. It was committed just a few hours ago, the risk of breaking someone's code is low (and I don't mind changing one line in mine's :smile:).


Do not require projection extent for x-wrapping tile sources

#3864 causes a regression, because a tile source now requires a projection with specified extent when global is set to true. This change fixes the regression.

This should be considered for the 3.7 release. Should be a very easy review.

LGTM, a test case would be good to have but I won't block you on it (or you can do it after the release, btw I plan for late in day today).

Tests added.

thanks @ahocevar please merge if Travis gives the okay

@ahocevar I'll wait for this one before cutting the release


Support for classifiers in snapshot version check

When nexus contain several jars without and with classifiers, check returns versions combined.
f.e. 0.0.2-20181129.175944-10.0.2-20181129.175944-1
Added classifier check and filters for xmllint to to return correct version

reverted README.md


Add Fathom analytics

This will add Fathom for analytics per this issue.
To test:

set an environment variable called FATHOM_SITE_ID with the appropriate ID from fathom to test. This can be done in a .env.development file if you're running npm start locally, or .env.production if you're running a full build.  (On netlify/github pages/etc it'll have to be set once this is merged)
Start the site, and inspect it - you should see a <script> tag just before </head> pointing to usefathom, with the ID you furnished:

(...once fathom access is set up), verify page views on fathom's dashboard

Any reason to not use gatsby-plugin-fathom?

That's a community plugin, which was the way to go up until a couple weeks ago - fathom just released updated docs for their V3 analytics that are Gatsby specific. I followed Fathom's instructions here

@mbifulco one comment here
Since we're leveraging React Helmet to manage document meta, can we create a new <SEO /> component instead of overriding the html template? This will help to keep things centralized without messing with any of Gatsby's default output. This component will be extended once we add OG data for social media like Twitter and Facebook.
Jason Lengstorf's site employs this technique (although no

@magnificode using an SEO tag is a fantastic idea.  I don't think there's any catches - I'll give it a test this morning.

Okay - took me a few tries, but I got this set up as an <SEO /> component.  This should be good for review.


mb_get_info can return null

Accidentally noticed the test doesn't pass on CI
I looked at the stubs in php-src and mb_get_info really can return null. This should be the case since version 5.4 https://onlinephp.io/c/80664
Before PR #12787, it just wasn't specified.

Fixed in #1601


API change in V1.2.0 breaks compatibility with downstream packages

Hi,
A recent change in the function definition of WeightingOp breaks compatibility with downstream packages.
https://github.com/JuliaImageRecon/LinearOperatorCollection.jl/blob/54bab32d680f1c376e4b6a51cd8df6800e2e8063/src/WeightingOp.jl#L13
Prior to V1.2.0 it was defined as function WeightingOp(::Type{T}; weights::vecT, rep::Int=1) where {T <: Number, vecT<:AbstractVector} but is now missing a ";" in the definition function WeightingOp(weights::vecT, rep::Int=1) where {T <: Number, vecT<:AbstractVector{T}}. This means uses in e.g. MRIReco.jl throw an MethodError:
**ERROR:** LoadError: MethodError: no method matching WeightingOp(::Type{ComplexF32}; weights::Vector{ComplexF32}, rep::Int64)

Closest candidates are:

  WeightingOp(::vecT) where {T<:Number, vecT<:AbstractVector{T}} got unsupported keyword arguments "weights", "rep"

   @ LinearOperatorCollection ~/.julia/packages/LinearOperatorCollection/Ajsac/src/WeightingOp.jl:13

  WeightingOp(::vecT, ::Int64) where {T<:Number, vecT<:AbstractVector{T}} got unsupported keyword arguments "weights", "rep"

   @ LinearOperatorCollection ~/.julia/packages/LinearOperatorCollection/Ajsac/src/WeightingOp.jl:13

Stacktrace:

 [1] **reconstruction_multiCoilMultiEcho_subspace(**acqData::AcquisitionData{Float32, 3}, reconSize::Tuple{Int64, Int64, Int64}, reg::Vector{RegularizedLeastSquares.Regularization}, sparseTrafo::LinearOperator{ComplexF32, Int64, LinearOperatorWaveletExt.var"#3#6"{Tuple{Int64, Int64, Int64}, Wavelets.WT.OrthoFilter{Wavelets.WT.PerBoundary}}, Nothing, LinearOperatorWaveletExt.var"#4#7"{Tuple{Int64, Int64, Int64}, Wavelets.WT.OrthoFilter{Wavelets.WT.PerBoundary}}, Vector{ComplexF32}}, weights::Vector{Vector{ComplexF32}}, solvername::String, senseMaps::Array{ComplexF32, 4}, normalize::Bool, encodingOps::Nothing, params::Dict{Symbol, Any}**)**

   @ MRIReco ~/.julia/packages/MRIReco/rdhha/src/Reconstruction/IterativeReconstruction.jl:341

 [2] **reconstruction(**acqData::AcquisitionData{Float32, 3}, recoParams::Dict{Symbol, Any}**)**

   @ MRIReco ~/.julia/packages/MRIReco/rdhha/src/Reconstruction/Reconstruction.jl:51

Has this been introduced by mistake? Or should the developers of MRIReco.jl update their compatibility?

OK, good to know and thanks for the reply. Then is the issue that MRIReco needs the version of LinearOperatorCollection (or MRIOperators if it's a chained dependency) pinned to v1.1.2 whilst the changes are waiting to be implemented in MRIReco?

We encountered this error trying to replicate one of my article figure : https://github.com/aTrotier/PAPER_subspace_MESE
where I used the following Project.toml files.
name = "Subspace_MESE"
uuid = "03ee4b65-1735-4169-82da-5df6ad43f66c"
authors = ["aTrotier<EMAIL_ADDRESS>and contributors"]
version = "1.0.0"

[deps]
BartIO = "8b90e6a2-6e4d-4906-89ae-b5f72ca4a65b"
EPGsim = "b6a82cc1-40c9-4006-90b7-9176002c0410"
FFTW = "7a1cc6ca-52ef-59f5-83cd-3a7055c09341"
LinearAlgebra = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e"
LsqFit = "2fda8390-95c7-5789-9bda-21331edee243"
MRICoilSensitivities = "c57eb701-aafc-44a2-a53c-128049758959"
MRIFiles = "5a6f062f-bf45-497d-b654-ad17aae2a530"
MRIReco = "bdf86e05-2d2b-5731-a332-f3fe1f9e047f"

[compat]
julia = "1.9"
BartIO = "0.3.1"
EPGsim = "0.1.1"
FFTW = "1.7.2"
LsqFit = "0.15.0"
MRICoilSensitivities = "0.1.3"
MRIFiles = "0.2.0"
MRIReco = "0.8.1"

[extras]
Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40"

[targets]
test = ["Test"]

Before, the 1.2.0 release (when I send my article for review), it was working :)
I'll add a compat entry to 1.1.2 but it might also be an issue for others package like KomaMRI that rely on MRIReco @cncastillo

It seems there is something weird with the compat entry...
Even if I put LinearOperatorCollection = "1.1.2" in my Project.toml, the version 1.2.0 is still used according to the manifest and I have to downgrad manually

Ah okay then I have something to reproduce it with. I'm not 100% sure why it occurs, I though the package management shouldnt include it.
I'll try to take a look next week. Most of our software has versioning with 0.x atm and not X.Y so the compat might not be restrictive enough.
I might look into a fix where I roll back the changes, releae 1.3 and readd the changes and release 2.0. That way packages and scripts that always pull zhr latest 1.X release should work again

To reproduce the error, you can also start from scratch and ]add MRIOperators you will still end with version 1.2.0

Ok found the workaround :
I have to use
LinearOperatorCollection = "=1.1.2"

@aTrotier I believe this is not generating problems in Koma, we are using MRIReco "0.8.1" and the manifest says that we use LinearOperatorCollection "1.2.0". Thanks for letting me know :smile:.
I believe the problem is what @nHackel is saying. In the compat "1.2.1" means "[1.2.1, 2.0)" which is different to "0.2.1" that means "[0.2.1, 0.3)" (Compat docs). I believe the solution is to register LinearOperatorCollection "1.2.1" which roll-backs to "1.1.X", and tag the new breaking release as "2.0".
Forcing package versions with Package = "=version" in the compat is not the best practice. I suggest setting LinearOperatorCollection = "1.1" in the Project.toml waiting for the fix, and downgrading the package manually with add<EMAIL_ADDRESS>in the meantime.

Another fix we could try is adding a function which accepts the type and kwargs and just maps to the new interface.
It is question of what one considers a breaking change for the WeightingOp call. Previously we just constructed an opDiagonal from LinearOperators and didnt create a custom type. So the weights where "lost".
Now we construct a custom type which contains the weights and the opDiagonal. For certain solvers this allows efficient evaluation (for Kaczmarz/ART) because we can directly access the weights and for all other solvers things remain as they were.
So when we consider the concrete instance of the linear operator an implementation detail and just want the matrix-matrix/vector product to be the same we could consider this a non-breaking change and add the compatibility function. This would give us 1.2.1.

[like]  William Clarke reacted to your message:

From: Niklas Hackelberg @.>
Sent: Tuesday, March 19, 2024 3:15:58 PM
To: JuliaImageRecon/LinearOperatorCollection.jl @.>
Cc: William Clarke @.>; Author @.>
Subject: Re: [JuliaImageRecon/LinearOperatorCollection.jl] API change in V1.2.0 breaks compatibility with downstream packages (Issue #7)
Closed #7https://github.com/JuliaImageRecon/LinearOperatorCollection.jl/issues/7 as completed via 97e14dahttps://github.com/JuliaImageRecon/LinearOperatorCollection.jl/commit/97e14da20443842a64c61e0c2ab3f142f478b44c.
—
Reply to this email directly, view it on GitHubhttps://github.com/JuliaImageRecon/LinearOperatorCollection.jl/issues/7#event-12171229625, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AFJJTTTDI7R43TYEW4GSQ6DYZBJC5AVCNFSM6AAAAABER7LJAKVHI2DSMVQWIX3LMV45UABCJFZXG5LFIV3GK3TUJZXXI2LGNFRWC5DJN5XDWMJSGE3TCMRSHE3DENI.
You are receiving this because you authored the thread.Message ID: @.***>


Provider will not hot reload correctly because index.js uses  during module definition.

I'm running into the following error with HMR:
React Hot Loader: Provider in /Users/c10b10/Projects/react/hitch/v1/src/index.js will not hot reload correctly because index.js uses <Provider /> during module definition. For hot reloading to work, move Provider into a separate file and import it from index.js.
I'm using ApolloProvider, and I have moved into a separate App component.
./index.js (without the imports, and instantiations)
render(
  <App />,
  document.getElementById('root')
)

if (module.hot) {
  module.hot.accept('./App', () => {
    var NextApp = require('./App').default;
    render(
      <NextApp />,
      document.getElementById('root')
    )
  })
}

./App.js
const App = () => (
  <ApolloProvider client={apolloClient} store={store}>
    <Router>
      <Container />
    </Router>
  </ApolloProvider>
)

export default App

Any idea why this happens?

Sorry, but this project has no relation to React Hot Loader. Please discuss this in the corresponding repository. Thanks!


segmentation fault:  cargo equip --exclude-atcoder-crates --resolve-cfgs --remove docs --minify

I got segmentation fault error.
Result
❯ cargo equip --exclude-atcoder-crates --resolve-cfgs --remove docs --minify libs --rustfmt --check --bin pastbook2022-g
warning: `--resolve-cfgs` is deprecated. `#[cfg(..)]`s are resolved by default
warning: `--rustfmt` is deprecated. the output is formatted by default
warning: `--check` is deprecated. the output is checked by default
     Running `/Users/xxxx/.cargo/bin/rustup run nightly cargo udeps --output json -p pastbook2022 --bin pastbook2022-g`
    Checking pastbook2022 v0.1.0 (/Users/xxxx/xxxx/xxxxxxxx/pastbook2022)
warning: variable `N` should have a snake case name
 --> src/bin/g.rs:6:9
  |
6 |         N: usize,
  |         ^ help: convert the identifier to snake case: `n`
  |
  = note: `#[warn(non_snake_case)]` on by default

warning: variable `Q` should have a snake case name
 --> src/bin/g.rs:7:9
  |
7 |         Q: usize,
  |         ^ help: convert the identifier to snake case: `q`

warning: variable `A` should have a snake case name
 --> src/bin/g.rs:8:9
  |
8 |         A: [u64; N],
  |         ^ help: convert the identifier to snake case: `a`

warning: variable `TXY` should have a snake case name
 --> src/bin/g.rs:9:9
  |
9 |         TXY: [(usize, usize, u64); Q],
  |         ^^^ help: convert the identifier to snake case: `txy`

warning: `pastbook2022` (bin "pastbook2022-g") generated 4 warnings
    Finished dev [unoptimized + debuginfo] target(s) in 0.55s
info: Loading depinfo from "/Users/xxxx/target/debug/deps/pastbook2022_g-aae5a6c66b940542.d"
    Bundling the code
zsh: segmentation fault  cargo equip --exclude-atcoder-crates --resolve-cfgs --remove docs --minify

Source code

g.rs

use proconio::input;
use ac_library::segtree;

fn main() {
    input!{
        N: usize,
        Q: usize,
        A: [u64; N],
        TXY: [(usize, usize, u64); Q],
    }

    let mut segtree = segtree::Segtree::<segtree::Min<u64>>::new(N);
    for i in 0..A.len() {
        segtree.set(i, A[i]);
    }

    let mut anss = vec!{};
    for (t, x, y) in TXY {
        if t == 1 {
            segtree.set(x, y);
        } else if t == 2 {
            let minval = segtree.prod(x as usize..y as usize);
            anss.push(minval);
        }
    }

    for ans in anss {
        println!("{}", ans);
    }
}

Cargo.toml

[package]
name = "pastbook2022"
version = "0.1.0"
edition = "2018"

[package.metadata.cargo-compete.bin]
pastbook2022-a = { alias = "a", problem = "https://atcoder.jp/contests/pastbook2022/tasks/pastbook2022_a" }
pastbook2022-b = { alias = "b", problem = "https://atcoder.jp/contests/pastbook2022/tasks/pastbook2022_b" }
pastbook2022-c = { alias = "c", problem = "https://atcoder.jp/contests/pastbook2022/tasks/pastbook2022_c" }
pastbook2022-d = { alias = "d", problem = "https://atcoder.jp/contests/pastbook2022/tasks/pastbook2022_d" }
pastbook2022-e = { alias = "e", problem = "https://atcoder.jp/contests/pastbook2022/tasks/pastbook2022_e" }
pastbook2022-f = { alias = "f", problem = "https://atcoder.jp/contests/pastbook2022/tasks/pastbook2022_f" }
pastbook2022-g = { alias = "g", problem = "https://atcoder.jp/contests/pastbook2022/tasks/pastbook2022_g" }
pastbook2022-h = { alias = "h", problem = "https://atcoder.jp/contests/pastbook2022/tasks/pastbook2022_h" }

[[bin]]
name = "pastbook2022-a"
path = "src/bin/a.rs"

[[bin]]
name = "pastbook2022-b"
path = "src/bin/b.rs"

[[bin]]
name = "pastbook2022-c"
path = "src/bin/c.rs"

[[bin]]
name = "pastbook2022-d"
path = "src/bin/d.rs"

[[bin]]
name = "pastbook2022-e"
path = "src/bin/e.rs"

[[bin]]
name = "pastbook2022-f"
path = "src/bin/f.rs"

[[bin]]
name = "pastbook2022-g"
path = "src/bin/g.rs"

[[bin]]
name = "pastbook2022-h"
path = "src/bin/h.rs"

[dependencies]
num = "=0.2.1"
num-bigint = "=0.2.6"
num-complex = "=0.2.4"
num-integer = "=0.1.42"
num-iter = "=0.1.40"
num-rational = "=0.2.4"
num-traits = "=0.2.11"
num-derive = "=0.3.0"
ndarray = "=0.13.0"
nalgebra = "=0.20.0"
alga = "=0.9.3"
libm = "=0.2.1"
rand = { version = "=0.7.3", features = ["small_rng"] }
getrandom = "=0.1.14"
rand_chacha = "=0.2.2"
rand_core = "=0.5.1"
rand_hc = "=0.2.0"
rand_pcg = "=0.2.1"
rand_distr = "=0.2.2"
petgraph = "=0.5.0"
indexmap = "=1.3.2"
regex = "=1.3.6"
lazy_static = "=1.4.0"
ordered-float = "=1.0.2"
ascii = "=1.0.0"
permutohedron = "=0.2.4"
superslice = "=1.0.0"
itertools = "=0.9.0"
itertools-num = "=0.1.3"
maplit = "=1.0.2"
either = "=1.5.3"
im-rc = "=14.3.0"
fixedbitset = "=0.2.0"
bitset-fixed = "=0.1.0"
proconio = { version = "=0.3.6", features = ["derive"] }
text_io = "=0.1.8"
whiteread = "=0.5.0"
rustc-hash = "=1.1.0"
smallvec = "=1.2.0"
ac-library-rs = { git = "https://github.com/rust-lang-ja/ac-library-rs" }

[dev-dependencies]

Environment
❯ rustup show
Default host: aarch64-apple-darwin
rustup home:  /Users/xxxx/.rustup

installed toolchains
--------------------

stable-aarch64-apple-darwin (default)
stable-x86_64-apple-darwin
beta-aarch64-apple-darwin
nightly-aarch64-apple-darwin
1.68.2-aarch64-apple-darwin

active toolchain
----------------

stable-aarch64-apple-darwin (default)
rustc 1.68.2 (9eb3afe9e 2023-03-27)

❯ cargo equip -V
cargo-equip 0.19.0

related: https://github.com/qryxip/cargo-compete/pull/200
https://github.com/qryxip/cargo-equip/blob/57a4bb66eb424d76f61c7f98df16306fceb587fd/Cargo.toml#L28
prettytable-rs 0.8.0 will cause segfault at latest rust.
workaround:
rustup install 1.66.1
cargo +1.66.1 install cargo-compete --locked --force
cargo +1.66.1 install cargo-equip --locked --force

Probably resolved by #193.
I will release next version tomorrow.

Released v0.20.0.


Emoji Parses the 'alt' attribute again and replaces it with second image on render.

Emoji Parses the 'alt' attribute again and replaces it with second image on seond-render. Can we somehow ignore the alt tag while giving a html input to twemoji.parse?

can you please provide a test to validate this bug?

Indeed, the string parsing is not reentrant and invoking it twice will lead to invalid HTML.
var htmlString = 'Some <string>HTMLstring, with an emoji : \u2764';
htmlString = twemoji.parse(htmlString);
< "Some <string>HTMLstring, with an emoji : "

Invoking method a second times breaks the HTML :
htmlString = twemoji.parse(htmlString);
< "Some <string>HTMLstring, with an emoji : <img class="emoji" draggable="false" alt="" src="https://twemoji.maxcdn.com/2/72x72/2764.png">"

Not that I would recommend it, but if you really need a workaround. And provided you don't care about cross browser compatibility, you could use the DOMParser API to implement a reentrant string parsing method :
// Reentrant string parsing,
// Warning : implementation not cross browser, without error handling, may not be secured, and not validated
var twemojiParse = function(htmlString, options) {
  var domParser = new DOMParser();
  var doc = domParser.parseFromString(htmlString, "text/html");
  var parsedBody = twemoji.parse(doc.body, options)
  htmlString = parsedBody.innerHTML;
  return htmlString;
}

Then doing this is perfectly fine :
twemojiParse(twemojiParse(twemojiParse(htmlString)))
MDN suggest a polyfill implementation of this API :
https://developer.mozilla.org/en-US/docs/Web/API/DOMParser

So, this bug is like saying that encoding html twice an & char will produce &amp; which is expected.
Do not parse strings twice or use the DOM parser to be sure images are not touched.
The string parser is fast and simple, nobody had issues in the last 4+ years with it and anyone can slow down multiple parse of the same string through your technique so I don't think we need to add complexity, increase size, and risk compatibility issues, requiring a polyfill, for something that is fundamentally a mistake from the user that should never use twice any string encoder of any kind, including twemoji when it comes to text instead of DOM nodes.
Thanks for the work around though, maybe someone would prefer that way so it's good to have it here.


Missing python dependency, jinja2

Reference Issue to dt-generator: https://github.com/Efinix-Inc/sapphire-soc-dt-generator/issues/7

README.md: fix step to install jinja2 python package https://github.com/Efinix-Inc/br2-efinix/commit/c6add2452c9e7ffa59e4d3873b5dbe691a61a2de


TypeError: Augmentation.should_run() missing 1 required positional argument: 'self'

python3.12
augraphy 8.2.6
from augraphy import *
import cv2
import numpy as np

ink_phase   = [InkShifter]
paper_phase = [VoronoiTessellation(p=1)]
post_phase  = [GlitchEffect]
pipeline    = AugraphyPipeline(ink_phase=ink_phase, paper_phase=paper_phase, post_phase=post_phase)

image = np.full((1200, 1200,3), 250, dtype="uint8")
cv2.putText(
    image,
    "Lorem ipsum dolor sit amet, consectetur adipiscing elit",
    (80, 250),
    cv2.FONT_HERSHEY_SIMPLEX,
    1.2,
    0,
    3,
)

augmented_image = pipeline(image)

cv2.imshow("input image", image)
cv2.imshow("augmented",augmented_image)

augmented_image = pipeline(image)
                      ^^^^^^^^^^^^^^^
  File "D:\anaconda3\envs\py312\Lib\site-packages\augraphy\base\augmentationpipeline.py", line 859, in __call__
    return self.augment(image, return_dict=0)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\anaconda3\envs\py312\Lib\site-packages\augraphy\base\augmentationpipeline.py", line 213, in augment
    data = self.augment_single_image(
           ^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\anaconda3\envs\py312\Lib\site-packages\augraphy\base\augmentationpipeline.py", line 375, in augment_single_image
    self.apply_phase(data, layer="ink", phase=self.ink_phase)
  File "D:\anaconda3\envs\py312\Lib\site-packages\augraphy\base\augmentationpipeline.py", line 737, in apply_phase
    if augmentation.should_run():
       ^^^^^^^^^^^^^^^^^^^^^^^^^
TypeError: Augmentation.should_run() missing 1 required positional argument: 'self'

Hi, you should have a parentheses () after each augmentation because we are creating a class instance. Using it without the parentheses is actually pointing to the class instead of initializing a class instance. You can try:
  ink_phase   = [InkShifter()]
  paper_phase = [VoronoiTessellation(p=1)]
  post_phase  = [GlitchEffect()]

https://augraphy.readthedocs.io/en/latest/doc/source/how_augraphy_works.html
This should be modified to the correct code
Thanks for your help