possibility to handle text sensors ?

I was looking to implement displays in my setup, here it would be cool to have test-sensors defined to submit data to the display.
the component itself is recognized by the module:
text_sensor:
  - platform: template
    name: "Template Text Sensor"

Bu i see no possibility to send data to the ESP, the basic switchCommandService does not seem to work

discussed on Discord with ESPHome experts, impossible to implement should be handled by the HomeAssistent service api function
https://github.com/Nafaya/esphome-native-api/issues/17


Make OpenSearch Compliant Names

Feature or Bugfix

Feature Enhancement

Detail

Ensure the names passed for OpenSearch Domain and OpenSearch Serverless Collection, Access Policy, Security Policy, and VPC Endpoint all follow naming conventions required by the service, meaning

The name must start with a lowercase letter
Must be between 3 and 28 characters
Valid characters are a-z (lowercase only), 0-9, and - (hyphen).

Relates

#540

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Closing as duplicate of PR #750


Fedora: Incorrect checksums for netstandard-targeting-pack RPM breaks package install/update

The netstandard-targeting-pack-2.1.0-x64.rpm from the https://packages.microsoft.com/fedora/30/prod/ repo has the incorrect checksum causing DNF to bail out, blocking system updates.
The calculated checksum of the package (when directly downloading the rpm) is 45e199caf1151a750d11d9c5c7669d6e23d8dbb33da54d1d90bde55745996480 which fails against the official F30 yum repo.
Full output below:
Downloading Packages:
[MIRROR] netstandard-targeting-pack-2.1.0-x64.rpm: Downloading successful, but checksum doesn't match. Calculated: 45e199caf1151a750d11d9c5c7669d6e23d8dbb33da54d1d90bde55745996480(sha256)  Expected: fa194a8c12913dcec85c8d24bfc91686a7b93128b4c05346df16e2c641e2ba41(sha256)
[FAILED] netstandard-targeting-pack-2.1.0-x64.rpm: No more mirrors to try - All mirrors were already tried without success

Error: Error downloading packages:
  Cannot download netstandard-targeting-pack-2.1.0-x64.rpm: All mirrors were tried

This can be replicated using the following Dockerfile (or run commands on a live F30 install)
FROM fedora:30
RUN curl https://packages.microsoft.com/config/fedora/30/prod.repo | tee /etc/yum.repos.d/microsoft-prod.repo
RUN dnf install -y netstandard-targeting-pack-2.1

@dagood I think this is a dupe of #3853 just different RHEL-like flavours giving slightly different messages.

That's probably true, I'm going to leave this one open as well until we know for sure though, and it might also be a useful signpost for anyone looking through issues who might skip over an issue with CentOS in the title when they're using a different RPM-using distro.

I finally decided to rename https://github.com/dotnet/core/issues/3853 to reference each distro and include the more specific error messages for each distro. So, I'm closing this issue as a duplicate now.
(Sorry for the indecisiveness, I was hoping this would be resolved sooner so it wouldn't be as important to organize these.)


feat: Add background events

Summary of Changes

Add a background events feature similar to https://fullcalendar.io/docs/background-events

Notes

This is based on https://github.com/intljusticemission/react-big-calendar/pull/1085#issuecomment-436610463

Screenshots

Nice! I think this is a good start, in terms of API and internal separation from the "real" events. I think it may be helpful before continuing on an implementation to do some work speccing out a few things:

What use-cases should feature enable?
In what specific ways are bg events different from plain events (this helps us determine the api, and solve questions like "should drag and drop work on them")

at that point i think we can DRY up places where there is a lot of overlap and separate more the points in which they differ.
how's that sound?

Sounds good! Thanks for the feedback!
I'll spec out here first for feedback the use cases that the bg events feature enables and then specify how the bg events are different from plain events.
After that, I'll proceed with:

DRY up the code
Separate the points in which they differ
Continue with other changes to the API like "Drag and drop" feature on the bg events, etc.

Hi @jquense. Let me know your thoughts about this when you're free. Thanks!
In which use-cases should we enable this feature?

As a user, I want to only be able to schedule an event within certain time slots
As a user, I want to emphasize or highlight certain time slots on the calendar view
As a user, I want to emphasize certain days in the calendar month view
As a user, I want to show which slots are available to book an event with
As a user, I want to add labels to certain days or timeslots

In what specific ways are bg events different from plain events?

Background events are read only "events" as these are only used to highlight or add labels to time slots.
Background events can have some kind of constraint that allows us to only create or drop events inside these background events (See: https://github.com/fullcalendar/fullcalendar/blob/master/demos/background-events.html#L33)

I am also waiting for this pull request. Any update on this?

Hi @rohit-sourcefuse
Sorry wasn't able to continue on this. Will try to finish it within the following week.

Hi @jquense
When you're free, can I have a quick feedback on my progress here?
Thanks!

@jquense anything I can do to help you out here?  I'm creating a fork to use these changes, but would love to help merge into the official repo.

This is a good PR and should be merged. Can we get an update on this @jquense

Oops sorry this got lost in time. GH is bad at this and I'm not a good maintainer. If anyone wants to pick this and get it updated I'll merge it

@jquense
After doing some work/research I was able to achieve the desired result with the latest version of react-big-calendar. I essentially just provided a custom dayLayoutAlgorithm giving the background events their own styled events.
import nooverlap from 'react-big-calendar/lib/utils/layout-algorithms/no-overlap';

export default ({ events, minimumStartDifference, slotMetrics, accessors }) => [
	...nooverlap({
		events: events.filter((e) => e.type === 'background'),
		minimumStartDifference,
		slotMetrics,
		accessors
	}),
	...nooverlap({
		events: events.filter((e) => e.type !== 'background'),
		minimumStartDifference,
		slotMetrics,
		accessors
	})
];

By using the eventPropGetter I am able to apply styles to the background events and most importantly set pointer-events: none so they don't receive click events.
You can end up with something like this

How does this implementation handles overlapping background events?

I've picked this up in PR #1727


[CT-924] dbt init works in click

Per BLG on 1/17/23 we should consider this for a refactor since we're using click as our main cli in 1.5+


Fix undefined volumes in customizable viewport overlay

Context
Fixing undefined volumes in _getViewportInstance function

Changes & Results

Testing

Checklist
PR

[x] My Pull Request title is descriptive, accurate and follows the
semantic-release format and guidelines.

Code

[x] My code has been well-documented (function documentation, inline comments,
etc.)

Public Documentation Updates

[x] The documentation page has been updated as necessary for any public API
additions or removals.

Tested Environment

[x] OS:
[x] Node version:
[x] Browser:

I guess this one is for @sedghi, a simple fix for overlay that has a key error to retrieve data to display


This page is not up to date

This page is not up to date. Interfaces and screenshots are not what I have, and I cannot find a way to match what is now the interface with the instructions of this page.

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

ID: b3530b55-59c8-6eec-b257-b7a5f2ed046b
Version Independent ID: 022f7eff-f6c2-9a73-afa9-74e887b761e1
Content: Prepare your Microsoft 365 tenant - Teams
Content Source: msteams-platform/concepts/build-and-test/prepare-your-o365-tenant.md
Product: msteams
GitHub Login: @surbhigupta
Microsoft Alias: lajanuar

We are closing this issue for now, Please feel free to reopen it, if required.


Update @typescript-eslint/restrict-plus-operands config

Public-Facing Changes
Remove checkCompoundAssignments from @typescript-eslint/restrict-plus-operands.
This is now the default and our current configuration causes an error.

Derp looks like @jtbandes was already onto this: https://github.com/foxglove/eslint-plugin/pull/48


How to it this with tailwind ?

How to it this with tailwind ?

Bootstrap is better, Bootstrap is king 👑

Bootstrap is better, Bootstrap is king 👑
While I respect your perspective, it seems we might have veered off-topic here.
My inquiry was specifically about Tailwind CSS, and I'm eager to explore solutions within that framework. If you have insights on how to achieve my goal using Tailwind, I'm all ears! Comparing frameworks is a kid's game – both have their strengths, The crown doesn't fit everyone's head, and different projects may demand different frameworks.

1

pp

It's available as a Tailwind plugin here: https://github.com/MartijnCuppens/tailwind-fluid.

It's available as a Tailwind plugin here: https://github.com/MartijnCuppens/tailwind-fluid.
thanks, i found out that I can use it with postcss and Tailwind it's just a postcss plugin so they work Harmoniously

It's available as a Tailwind plugin here: https://github.com/MartijnCuppens/tailwind-fluid.
thanks, i found out that I can use it with postcss and Tailwind its just a postcss plugin so they work Harmoniously


Vrf v2

Do not merge, WIP.

Codecov Report

Merging #270 (9939487) into main (f9a8112) will decrease coverage by 0.30%.
The diff coverage is 0.00%.

@@            Coverage Diff             @@
##             main     #270      +/-   ##
==========================================
- Coverage   24.12%   23.82%   -0.31%
==========================================
  Files          17       17
  Lines        2263     2292      +29
==========================================
  Hits          546      546
- Misses       1670     1699      +29
  Partials       47       47

Impacted Files
Coverage Δ

client/chainlink_models.go
0.00% <0.00%> (ø)

Continue to review full report at Codecov.

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


Update weekly-contributions.ts

Bump to 100 for now - some day we'll need to paginate like grown-ups.

related to https://github.com/KittyCAD/notes/issues/42


When the remote peer hangs up, a stash of errors are reported (on the error level in the log)

We are running Dream for https://builds.robur.coop on a FreeBSD 12.2 machine. This works smoothly, and the footprint looks much smaller than our previous opium-based server.
One downside of dream (we're using the latest release - see https://builds.robur.coop/job/builder-web-freebsd/build/4b2a96cd-c922-4ee9-a786-475f49878562/f/opam-switch for the full set of opam packages we're using) is that client connection errors are reported in the log:
Jul  8 13:07:46 <daemon.notice> <IP_ADDRESS> daemon[42523]: 08.07.21 13:07:46.179      dream.http ERROR HTTP (<IP_ADDRESS>:39544): Unix.Unix_error(Unix.ECONNRESET, "read", "")
Jul  8 13:07:46 <daemon.notice> <IP_ADDRESS> daemon[42523]: 08.07.21 13:07:46.179      dream.http ERROR Raised by primitive operation at Lwt_unix.shutdown in file "src/unix/lwt_unix.cppo.ml", line 1677, characters 2-38
Jul  8 13:07:46 <daemon.notice> <IP_ADDRESS> daemon[42523]: 08.07.21 13:07:46.179      dream.http ERROR Called from Gluten_lwt_unix.Io.close.(fun) in file "src/vendor/gluten/lwt-unix/gluten_lwt_unix.ml", line 49, characters 10-47
Jul  8 13:07:46 <daemon.notice> <IP_ADDRESS> daemon[42523]: 08.07.21 13:07:46.179      dream.http ERROR Called from Lwt.Sequential_composition.catch in file "src/core/lwt.ml", line 2023, characters 16-20
Jul  8 13:07:46 <daemon.notice> <IP_ADDRESS> daemon[42523]: 08.07.21 13:07:46.180      dream.http ERROR Error handler raised: Failure("cannot write to closed writer")
Jul  8 13:07:46 <daemon.notice> <IP_ADDRESS> daemon[42523]: 08.07.21 13:07:46.180      dream.http ERROR Raised at Stdlib.failwith in file "stdlib.ml", line 29, characters 17-33
Jul  8 13:07:46 <daemon.notice> <IP_ADDRESS> daemon[42523]: 08.07.21 13:07:46.180      dream.http ERROR Called from Faraday.writable_exn in file "lib/faraday.ml" (inlined), line 191, characters 4-44
Jul  8 13:07:46 <daemon.notice> <IP_ADDRESS> daemon[42523]: 08.07.21 13:07:46.180      dream.http ERROR Called from Faraday.write_gen in file "lib/faraday.ml", line 234, characters 2-16
Jul  8 13:07:46 <daemon.notice> <IP_ADDRESS> daemon[42523]: 08.07.21 13:07:46.180      dream.http ERROR Called from Httpaf__Serialize.write_response in file "src/vendor/httpaf/lib/serialize.ml", line 65, characters 2-25
Jul  8 13:07:46 <daemon.notice> <IP_ADDRESS> daemon[42523]: 08.07.21 13:07:46.180      dream.http ERROR Called from Httpaf__Serialize.Writer.write_response in file "src/vendor/httpaf/lib/serialize.ml" (inlined), line 121, characters 4-37
Jul  8 13:07:46 <daemon.notice> <IP_ADDRESS> daemon[42523]: 08.07.21 13:07:46.180      dream.http ERROR Called from Httpaf__Server_connection.set_error_and_handle.(fun) in file "src/vendor/httpaf/lib/server_connection.ml", line 191, characters 10-47
Jul  8 13:07:46 <daemon.notice> <IP_ADDRESS> daemon[42523]: 08.07.21 13:07:46.180      dream.http ERROR Called from Dream__http__Error_handler.httpaf.(fun) in file "src/http/error_handler.ml", line 374, characters 17-39
Jul  8 13:07:46 <daemon.notice> <IP_ADDRESS> daemon[42523]: 08.07.21 13:07:46.180      dream.http ERROR Called from Lwt.Sequential_composition.catch in file "src/core/lwt.ml", line 2023, characters 16-20

This are logs reported via syslog to a syslog sink, that's why there are multiple headers.
Curious whether this only happens on FreeBSD, or on other systems as well when the client resets the connection before the HTTP request-response is done? It would be great to have an informational message about the connection reset, and keep the errors for actual server errors (at the moment, it is hard to derive anything from the number or errors reported via Logs, since a single connection reset (e.g. a port scanner or a TCP connection that is immediately reset) leads to 13 error message.
(On FreeBSD, you can use telnet/socat and tcpdrop to provoke a connection reset -- on Linux you may use tcpkill to reset the connection.)

I haven't had a chance to look into this, whether it occurs on other systems, etc. However, it is indeed the Dream convention that, by default, client-side errors are reported as warnings, while server-side errors are reported as errors. This might need special-casing on top of that, but for sure these shouldn't be ERRORs, at least.

It looks like an unhandled ECONNRESET exception is being treated as a server-side error, which in a way, it is (an error within Dream itself, for not handling the exception more intelligently). I expect this occurs on all platforms.

Hi @aantron - I took a stab at a simple fix for this. https://github.com/aantron/dream/pull/165
One other thing to note, I had to add https://github.com/dinosaure/paf-le-chien/pull/41/files to the paf submodule to let this compile successfully.

A similar observation is Unix.Unix_error(Unix.ETIMEDOUT, "read", "") with a similar stack (Lwt_unix.shutdown & Gluten_lwt_unix.Io.close(fun)).

I am able to reproduce this on macOS Monterrey 12.0.1, by running an HTTP load testing tool against dream, e.g.
# From https://github.com/wg/wrk
wrk -c 10 -d 10s -t 4 http://localhost:8080

Error:
08.12.21 22:45:54.007      dream.http ERROR HTTP (::1:54719): Unix.Unix_error(Unix.ECONNRESET, "read", "")

This is on OCaml 4.13.1.
On 4.12.0+domains, dream is exiting with Bus error: 10 after a few requests.


Solved what is conflict with mysql-devel

https://github.com/hazelcast/hazelcast-cpp-client/issues/518

Can one of the admins verify this patch?

I fixed something that it rises conflict with other libraries such as Runnable in Poco
I just make satisfied when compiling with other libraries by adding namespace hint.

verify

@ihsandemir yes, please. thank you.  I glad to I have been contributing :)

Linux test PASSed.

Windows test PASSed.

@ihsandemir Excuse me, Could you tell me for how I merge my source?

@skyend i think you maynot merge. i will merge it. did you send the signed form?

@ihsandemir I didn't know that i have to merge it,
this is the first time for me contribute to Opensource Project.
thank you for merge instead of me.
and.. yes, I sent to<EMAIL_ADDRESS>😄

@ihsandemir I didn't know that i have to merge it,
this is the first time for me contribute to Opensource Project.
thank you for merge instead of me.
and.. yes, I sent to<EMAIL_ADDRESS>😄

@skyend Are you sure that you sent the email to correct address, because we could not see it in the inbox? Can you double check and resend it if not sent and can you cc to my email<EMAIL_ADDRESS>so that I can follow up.

verify

Linux test PASSed.

Windows test PASSed.

@skyend I merged the PR. Thanks for the contribution.

@ihsandemir Thank you 😃


Use FFT in cupyx.scipy.ndimage.convolve1d

Rel. https://github.com/cupy/cupy/pull/3184, https://github.com/cupy/cupy/issues/3526#issuecomment-655021858.
cupyx.scipy.ndimage.convolve1d should use FFT for large float inputs for the performance.

Duplicated: #3378


导入quartz源码到eclipse中遇到的问题

quartz-terracotta-system-tests
Description Resource    Path    Location    Type
Project build error: Non-resolvable parent POM for org.quartz-scheduler.internal:quartz-terracotta-system-tests:2.2.4-SNAPSHOT: Failure to find org.terracotta:system-tests-parent:pom:4.3.2-SNAPSHOT in http://www.terracotta.org/download/reflector/snapshots was cached in the local repository, resolution will not be reattempted until the update interval of terracotta-snapshots has elapsed or updates are forced and 'parent.relativePath' points at no local POM pom.xml /quartz-terracotta-system-tests line 11 Maven pom Loading Problem

Can you please clarify your issue in English?

Close as invalid

Do I need to run unit tests in the quartz-terracotta-system-tests module to adapt my database product


Question: Autostart-Scripts not used (dwm)

Hey Phenax,
First: Thanks for sharing your configuration, this has helped me a ton to transition from arch to nixos!
I can't seem to get dwmblocks to run at startup, and have traced it down to my autostart.sh not being executed.
How is the packages/dwm/autostart.sh triggered? I don't understand when it is moved/executed in this configuration.

Hey! That part is a bit of mess that I quickly hacked around to make it work. The autostart.sh is called from inside my dwm fork here. But it should be fine to call it from your xinit as well. Hope that helps.

Thanks for your reply! Yes I figured that I should probably do it through my xprofile/xinitrc.
After some tinkering around your proposed "proper" solution works just fine. Thanks a bunch for your help!


Add double quote to prevent parsing as object literal

Description
Add double quote to docs to prevent parsing as object literal when copying from docs
 Mesh - Supergraph Failed to generate the schema TypeError: str.match is not a function     at Interpolator.parseRules
Checklist:

[x] I have made corresponding changes to the documentation

Thank you very much!


Planning: const vs immutable

Const references don't require the referenced value to be immutable.
Once immutable, always immutable.
A const reference can be constructed from any object whether immutable or not.

https://www.reddit.com/r/cpp/comments/5ipddb/more_const_fewer_bugs/dba2l89/
Perhaps allow moving values by removing them from scope.


Why are you calling the function twice?

https://github.com/psaia/fast-observer/blob/807583a3cb7ca64513672f0132155e1281cd2bc0/src/observer.ts#L56
You call fn twice in publishFast

Thank you - fixed in 1.0.3.


Prepare draft workflow for reporting

Based off the work that Nan and Zoey are doing for registration, let's try to create workflows on the basis of the cleaned up user story map to identify the workflow of registration from the get go
Draft = version that gives us a high level vision, but doesn't have all the tiny details due to unknowns
Acceptance criteria

[x] sync with the work Nan & Zoey did to understand what fields affect reporting from registration
[x] create basic workflow on the basis of the cleaned up user story map
[x] add in edge cases to consider (Reporting-only, New Entrants, EIOs, etc)
[x] consult with SMEs & POs & Devs once draft is completed
[x] refine draft
[ ] consider identifying unhappy paths (optional)
[ ] Create backlog tickets

Blocking #167

@patriciarussellCAS following today's session, I think this ticket can be closed. As for creating 'backlog tickets' in the AC, since that work is being covered in the user story mapping work, we can ignore it here. As for the 'unhappy paths' discussion (marked here as optional), I think that should be a separate amount of work once meant for designer-dev collab, and it may be a bit too early for it. I'm not sure yet if we need a ticket for that or if that will be what we end up doing any way as part of data fields work.
Having said that all that, this ticket can be closed!

New ticket being created for unhappy paths. this is closed.


Fix coding style of cython files

Do you have an idea to keep cython code clean?

I have no idea...

If so, it is difficult to keep the code clean, isn't it? I can't confirm if your fix is enough.

I found method to check cython code.
find cupy/ \( -name \*.px\* -or -name \*.pyx \) -exec flake8 {} --ignore E901 \;

@unnonouno I fixed. Please review this.

I'll merge this PR. It causes many conflicts in some PRs containing fixes in cython codes.


Intent and Entity names

The RecognizerResult changes intent and entity names like "HomeAutomation.TurnOn", "HomeAutomation.Room", "Calendar.Add" to "HomeAutomation_TurnOn", "HomeAutomation_Room", "Calendar_Add".
Is it possible to keep the periods as they are?

All of the prebuilt domain models have periods in the names.

Behavior is inconsistent with Node.js

Changing them to underscores in the results makes it harder to do this common pattern:

var luisResult = context.Services.Get<RecognizerResult>(LuisRecognizerMiddleware.LuisRecognizerResultKey);
var (intent, score) = luisResult.GetTopScoringIntent();
// won't work if the intent name contains a "." Example: Calendar.Add
await dialogContext.Begin(intent, luisResult);

Just talked to @chrimc62 - this is by design.


feature: added github badge and solved (#55) number issue

I added new feature Github Badge. Solved the issue https://github.com/Idered/chalk.ist/issues/55.
Options to handle the badge:

toggle badge
user can give name for the badge
user can give userName of his github
user can give custom image instead of the github logo

in iframe preview:

sidebar options:

Hey, thanks for PR! This motivated me to make something more versatile. It's live now


Add sleep between VM stop and start for restart command

https://msazure.visualstudio.com/One/_workitems/edit/30026680

/azp run


description added to package.json

Description bug fix #432

Thank you for your contribution! Write me your postal address on Gitter and you will get Electron.NET sticker :)

Did you also test whether it takes over the description at runtime?

I had a similar issue, in release version it is fine. However after the last update it got fixed both in dev as well as release

Did you also test whether it takes over the description at runtime?

I have checked that the Setup file description changed as well as Comment of the lnk file after installation. But an .exe file of the program has the same File description as Product name. I also saw the same behavior in the "pure" Electron.


Mockito can't generate stubs for functions returning Either

Mockito can't generate stubs for functions returning Either in version 1.1.0.
Mockito was generating _FakeEither implementing with Either, which can't do after version 1.1.0 because Either is market as sealed now.
class _FakeEither_0<L, R> extends _i1.SmartFake implements _i2.Either<L, R> {   _FakeEither_0(     Object parent,     Invocation parentInvocation,   ) : super(           parent,           parentInvocation,         ); }

Hi @bekaIva
This may be related to #123

Same here, does Either have to be sealed for sure? This makes them really hard to test.


Dynamic Aggregate Template

This is an enchancement.
At our company, we have a large set of numerical data.  When we group the data in a grid, we like to show aggregates at each level.  In addition, we like our grids to be able to easily add or remove columns dynamically.
It would be nice if the aggregateTemplate was actually a function that could return a dynamic html template.  Doesn't that sound awesome?
That way we could code a function for each aggregate to look at it's own rows, and generate html for itself that contains aggregates for itself.

can you give any example for this as i am getting the same issue.
many thanks.

Sorry, I don't have any example for you right now.  I opened this issue a year ago and don't have code for it anymore.


feat(core): add https_sni to upstream entities

Summary
Hi everyone,
When connecting to an upstream service via https, two things happen: First, the Server Name field of the SNI handshake is filled. And after the certificate has been exchanged and the encrypted connection is established, the "host" http header is filled, usually with the same hostname.
When configuring an upstream object in Kong with a target using an IP, no SNI name or host name is specified by default. host_header can be configured for an upstream object, but this sets both the SNI field and the host header. Our customer wants to be able to explicitly set the SNI, so this PR adds the option https_sni to only set the SNI field value without touching the host http header that follows after the encryption. Note that the option name https_sni is also used in upstream healthcheck configuration.
Discussion about this is welcome.
This is my first time working on the Kong codebase and I am currently trying to write an integration test for this change. Any hint as to where to add it, or how exactly to test it is much appreciated.
Checklist

[X] The Pull Request has unit tests
[ ] The Pull Request has integration tests
[ ] There's an entry in the CHANGELOG
[ ] There is a user-facing docs PR against https://github.com/Kong/docs.konghq.com - PUT DOCS PR HERE

Issue reference
Fix #9785
See also discussion #9247

Sorry, Kong use upstream_host var as kong upstream sni name in the balancer execute, you can not change this in the proxy_ssl_name  command, this is not Okay for kong.

Sorry, Kong use upstream_host var as kong upstream sni name in the balancer execute, you can not change this in the proxy_ssl_name command, this is not Okay for kong.

@attenuation I'm with you on being careful about the naming. This definitely needs a thorough review and test cases to be certain there are no backwards-incompatible things hidden in here, but in my opinion it is something that Kong should support.
The need to send differing values for SNI and Host header is a really frustrating use case, but it is a legitimate one; I have encountered this in the wild several times myself. There are many scenarios where users have no control over the upstream server themselves, so not supporting this use case in fact a dead end for some.

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

Closing this due to lack of activity. Please re-open if needed.


any visualize/swaggerUI implementation for  API list

first off , thanks for this great woks on rest of django-cms.
and wondering  any visualize/swaggerUI implementation for   those restful API list ?
if could be we will be greatly appreciated.

@yangboz I agree, just have not come around to it. Any support would be appreciated. Did you take a look at https://www.django-rest-framework.org/topics/documenting-your-api/ ?

@yangboz I agree, just have not come around to it. Any support would be appreciated. Did you take a look at https://www.django-rest-framework.org/topics/documenting-your-api/ ?

yes, openAPI used fastAPI , I mean  how about django-cms-rest  replicate flask restful, restful-plus alike? any plan on it ?


License missing from gemspec

RubyGems.org doesn't report a license for your gem.  This is because it is not specified in the gemspec of your last release.
via e.g.
  spec.license = 'MIT'
  # or
  spec.licenses = ['MIT', 'GPL-2']

Including a license in your gemspec is an easy way for rubygems.org and other tools to check how your gem is licensed.  As you can imagine, scanning your repository for a LICENSE file or parsing the README, and then attempting to identify the license or licenses is much more difficult and more error prone. So, even for projects that already specify a license, including a license in your gemspec is a good practice. See, for example, how rubygems.org uses the gemspec to  display the rails gem license.
There is even a License Finder gem to help companies/individuals ensure all gems they use meet their licensing needs. This tool depends on license information being available in the gemspec.  This is an important enough issue that even Bundler now generates gems with a default 'MIT' license.
I hope you'll consider specifying a license in your gemspec. If not, please just close the issue with a nice message. In either case, I'll follow up. Thanks for your time!
Appendix:
If you need help choosing a license (sorry, I haven't checked your readme or looked for a license file), GitHub has created a license picker tool.  Code without a license specified defaults to 'All rights reserved'-- denying others all rights to use of the code.
Here's a list of the license names I've found and their frequencies
p.s. In case you're wondering how I found you and why I made this issue, it's because I'm collecting stats on gems (I was originally looking for download data) and decided to collect license metadata,too, and make issues for gemspecs not specifying a license as a public service :). See the previous link or my blog post about this project for more information.

Licence still missing on https://rubygems.org/gems/simple-spreadsheet-extractor
According to https://github.com/myGrid/simple-spreadsheet-extractor-gem/blob/master/LICENSE this looks like the BSD 3-clause licence.

i.e. please update simple-spreadsheet-extractor.gemspec to add the line:
      s.license = "BSD-3-Clause"

At this point you could have made a PR.. :)

Editing the file and making a Pull request would be easy, but testing it with almost zero Ruby knowledge - not so easy.

Thanks for your help, and sorry for the delay responding. I missed all notifications concerning this and haven't recently worked on this code

I will build a new gem and push in the very near future

Thanks!


Anchors with Stickyroll Hook?

Hello,
I am using the stickyroll hooks API to build a custom scroll progress bar/pager. Is it possible to use anchors similar to how it is done in the regular stickyroll API <Stickyroll pages={headlines} anchors=""/>?
If stickyroll hooks doesn't have anchors implemented yet, can you explain how I could add them into my stickyroll page component and how can I make the stickyroll jump to a particular part on the page?
Thanks!

Thank you for reporting this issue.
Adding anchors with hooks is currently a manual process. I will consider this as a feature or add it to the documentation.
You can see a very simple implementation here: https://codesandbox.io/s/stickyroll-hooks-anchors-1u4wq

Hi,
Thanks for the example, its exactly what I need to add anchors with hooks! You should add it to the documentation. I am sure others might need it as well.

thx for the tip. I am working on a new documentation since the library I used is unmaintained. It will take a while though.


addition of Pressable to apis

PR to add the pressable component to the API's section of the doc site.
There are some callouts:
@TheSavior - Props list was pulled from this merge into React Native master, please help me ensure they are correct and the "required" field is filled out correctly.

e.g. I know onPress is required for button, but it doesn't seem to be for Pressable?

@rachelnabors Snack example does not currently exist, because as previously discussed, Expo is not on the latest version yet. So static example will have to do for now, please help me ensure this looks sufficient.

@rachelnabors pinging this! Let me know if you can merge 😅

Hey Kiki!
Just got back from organizing Women of React Conf. Great job on ferrying Pressable forward, and thank you for your patience!
I have just a few things:
— Suggest it as an alternative to the Touchables by linking to it from each the Touchable components pages

What is "RectOrSize"?
I think it's worth light paragraph at the top describing some of the Pressable can do: the onPressIn -> onPress -> onPressOut cycle, that can delay that, and what hitSlop and pressReactOffset are—and why you might use them. This will be brand new to some folks out there, and they'll be super pumped to understand the appeal of this exciting new component!

Hey Kiki!
Just got back from organizing Women of React Conf. Great job on ferrying Pressable forward, and thank you for your patience!
I have just a few things:

Suggest it as an alternative to the Touchables by linking to it from each the Touchable components pages
What is "RectOrSize"?
I think it's worth light paragraph at the top describing some of the Pressable can do: the onPressIn -> onPress -> onPressOut cycle, that can delay that, and what hitSlop and pressReactOffset are—and why you might use them. This will be brand new to some folks out there, and they'll be super pumped to understand the appeal of this exciting new component!

Sure! Sorry for the delay, I can make bullet 1 happen.
@TheSavior could you help explain to me some of the stuff Rachel is asking for in bullet 3?

@kikisaints for hitSlop and pressRect, check out this ascii art documentation in the code:
https://github.com/facebook/react-native/blob/16ea9ba8133a5340ed6751ec7d49bf03a0d4c5ea/Libraries/Pressability/Pressability.js#L326-L345
All of the touchables have always had these too, but they may not have been documented well either.

I'm curious how @rachelnabors feels about including that ascii art in the docs. The words on that ascii art in code are intended for developers working on Pressability. I don't think we should be mentioning Pressability in the docs as it isn't exposed and is purely an implementation detail.
I do think this particular example is the epitome of "a picture is worth 1000 words" though. I defer to Rachel on the execution of how to share the understanding of those props to docs readers.

I'm curious how @rachelnabors feels about including that ascii art in the docs. The words on that ascii art in code are intended for developers working on Pressability. I don't think we should be mentioning Pressability in the docs as it isn't exposed and is purely an implementation detail.
I do think this particular example is the epitome of "a picture is worth 1000 words" though. I defer to Rachel on the execution of how to share the understanding of those props to docs readers.

I agree it's a little weird, but honestly feels like it illustrates the point clearer than I could with just words. I'm up for adding in a graph instead, but that will delay this PR since I won't have the time to dedicate to a graph until late in the week.

I am happy to illustrate the hitSlop/Rect areas myself and doubt that the illustration needs to be quite so in depth as the ASCII art.
As for RectOrSize, it takes a numeric or an object like so:
{
  bottom: ?number,
  left: ?number,
  right: ?number,
  top: ?number,
}

We need to explain this format on the page, but the docs as a reference are not normalized for displaying complex objects yet. @simek and I have been working on it, though, so we can probably figure out a good way forward together.

I added some illustrations and updated the text that didn't make sense in light of the source code—please correct me if I'm wrong!

How can I see the live demo of your change? I don't see a link with your commit. Hmm

@TheSavior Link for the preview deploy is the same as earlier, site is updated with each commit:

https://deploy-preview-1862--react-native.netlify.app/docs/next/pressable

True story, ended up with a weird conflict of IDE, hub tool, and remotes and accidentally merged this PR. Let me see if I can unmake this mess :)


EndPoint

I have created a button on the welcome page, which when pressed navigates to the /first page, which is an end point. For which I have created a controller and it returns a string that is displayed on the screen.

Also when executing it in intellij idea, I have added the following line to the application.property file, to suppress minor errors that appeared: logging.level.org.springframework.boot.autoconfigure = ERROR

I have had a problem with the previous commits, as they were not the correct version. The last one is. In the latter, the created controller shows the content of a file that I have created in html, called page1.html. All this after pressing the button on the welcome page.

PR accepted.

Localizado commit. Resolviendo problema.


Create a README that describes how to use the commands

Description
The README should have a section that describes how to use the CLI for donkey.

Done in #9


Improved knnQueryBatch performance

The changes are twofold:

Improved single-threaded batch-performance. The original method did not condition on single-threaded situations, introducing approximately 20ms overhead in thread initialisation.
Converted knnQueryBatch to use a tuple of NumPy arrays instead of a list of NumPy arrays. This makes intuitive sense as vector operations over the arrays are faster than working on lists and splitting the tuples, and then reconstructing NumPy arrays from them.

Great, would it be hard to resubmit the request to the develop branch?
Thanks!

PS: ohh, also, there's something broken, python bindings tests fail.

@searchivarius oops, I didn't run the tests before submitting although compile works fine. I've altered the return value of knnQueryBatch such that it returns a tuple(array(ids), array(distances)) instead of a list(tuple(array(ids), array(distances)), ..., tuple(...)) which has shown tangible improvements in performance due to using a more contiguous memory layout.
Should I alter the test suite, or have a bool parameter e.g. 'use_numpy_array=False' to select the return type?

Hi @GreenSlime96 I am all about improving ParallelFor, but I am less convinced about changing Python API. I now looked a bit more careful at this: I think it could actually be problematic. You assume that we always nicely return k results, but this is actually not guaranteed yet :-( So, do you get noticeable performance gains by storing  results as an array instead of a list?


from Andrew tag antibody addition to participant detection

1-In Participant identification method
Children of western blot are Monoclonal and polyclonal
antibody. I suggest to add anti-tag antibody
2-In Participant identification method
Immunostaining doesn’t allow to specify what kind of
antibody has been used. I suggest to add in the
ontology monoclonal, polyclonal and anti-tag antibody
Reported by: luisa_montecchi

thanks www.movied.org


Low Resolution Map Tiles

HI @AlbughdadiM  Thanks for your great work. I was just curious about more zoomed tiles. Zooming it more is not load tile details. Is there any option I can upload my on-tiff imagery? I also have my wms link. I edit in the config file but it isn't loading any tiles.
Any help for this? Thanks

Hi @sharoseali. On my side I can zoom in/out without any troubles. If tiles are not loading, it can be related to connection problems.
Of course you can use the WMS layer of your choice. In a similar project, I used a very high resolution WMS layer and a SAR WMS layer.
It is also possible to upload a GeoTiff image. I have done this in another project. I will try to update this repository with the option of uploading a GeoTiff when I have sometime. If you are interested in the pieces of code that allow you to upload your GeoTiff, I can share that with you, with indications where to place them in the code. But unfortunately I will not have time to do end-to-end test on this project for the next month.

hi @AlbughdadiM  Thanks for answering.  On my side wms link written inside the code isn't loading so many deep detailed tiles. I think the connection is fine. I will check one time more. However, I have my own link as well. I have also opened the link in QGIS as well. But I am not sure how to pick the correct information of layers from QGIS and paste here in the code here:

wms_layer = dl.WMSTileLayer(
    url="https://tiles.maps.eox.at/wms",
    layers="s2cloudless-2020_3857",
    format="image/jpeg",
    transparent=True,
    tileSize=512,  # Try a higher tile size for better resolution
    minZoom=0,
    maxZoom=25,  # Increase max zoom level for deeper zoom
    attribution="Sentinel-2 cloudless layer for 2020 by EOX",
)

Also, of course, you can share the code for opening the GeoTIFF tile. I will try it on my side. I will be so glad.
thanks again for your nice work and response.

@sharoseali I want to also mention that some providers limit the tile size and max zoom to avoid downloading large and detailed areas from WMS tiles. You can test yourself with the original WMS layer and a large ROI that the image download won't work.

Regarding the upload option:

Place this in the layout of the app.py

upload_data_card = dbc.Card(
    [
        dbc.CardHeader(html.H2("Data upload")),
        dbc.CardBody(
            [
                dcc.Upload(
                    id="upload-tif",
                    children=html.Div(["Drag and Drop or ", html.A("Select Files")]),
                    style={
                        "width": "100%",
                        "height": "60px",
                        "lineHeight": "60px",
                        "borderWidth": "1px",
                        "borderStyle": "dashed",
                        "borderRadius": "5px",
                        "textAlign": "center",
                        "margin": "10px",
                    },
                    multiple=False,  # Set to True if multiple file upload is needed
                ),
                dcc.Store(id="output-data-upload", data=None),
            ]
        ),
    ]
)

You will also need a callback to save the uploaded image in a temp file in the container and overlay it on the map

@app.callback(
    [
        Output("output-data-upload", "data"),
        Output("map-card", "children", allow_duplicate=True),
    ],
    [
        Input("upload-tif", "contents"),
        Input("upload-tif", "filename"),
    ],
    prevent_initial_call="initial_duplicate",
)
def update_output_upload(contents, filename):
    logging.info(filename)
    if contents is None and filename is None:
        raise PreventUpdate
    _, content_string = contents.split(",")
    process_id = id_generator()
    process_path = os.path.join(WORK_DIR, process_id)  # type: ignore
    os.makedirs(process_path)
    decoded = base64.b64decode(content_string)
    file_path = os.path.join(process_path, filename)
    with open(file_path, "wb") as f:
        f.write(decoded)
    reproj_file_path = os.path.join(
        process_path, filename.split(".")[0] + "_reproj.tif"
    )
    reproj_bounds, img_byte_arr, png_path = reproject_to_epsg4326(
        file_path, reproj_file_path
    )
    leaflet_bounds = [
        [reproj_bounds[1], reproj_bounds[0]],
        [reproj_bounds[3], reproj_bounds[2]],
    ]

    map_center = [
        (leaflet_bounds[0][0] + leaflet_bounds[1][0]) / 2,
        (leaflet_bounds[0][1] + leaflet_bounds[1][1]) / 2,
    ]
    encoded_img = base64.b64encode(img_byte_arr).decode("ascii")
    encoded_img = "{}{}".format("data:image/png;base64, ", encoded_img)
    print("also here")
    list_children = dl.Map(
        [
            dl.LayersControl(
                [
                    dl.Overlay(dl.TileLayer(), name="OSM", checked=True),
                    dl.Overlay(wms_layer, name="Sentinel-2", checked=True),
                    dl.Overlay(esri_tile_layer, name="ESRI", checked=True),
                ],
                id="layers-control",
                collapsed=True,
            ),
            dl.ImageOverlay(opacity=1, url=encoded_img, bounds=leaflet_bounds),
            dl.FeatureGroup(
                [
                    dl.LocateControl(
                        options={"locateOptions": {"enableHighAccuracy": True}}
                    ),
                    dl.MeasureControl(
                        position="topleft",
                        primaryLengthUnit="kilometers",
                        primaryAreaUnit="sqmeters",
                        id="measure_control",
                    ),
                    dl.EditControl(
                        id="edit_control",
                        draw={
                            "polyline": False,
                            "polygon": False,
                            "circle": False,
                            "circlemarker": False,
                        },
                    ),
                ]
            ),
        ],
        id="map",
        style={
            "width": "100%",
            "height": "80vh",
            "margin": "auto",
            "display": "block",
        },
        center=map_center,
        zoom=12,
        bounds=leaflet_bounds,
    )
    return [[reproj_file_path, png_path, leaflet_bounds]], list_children

Update callback that does image download/or use the uploaded image and do the segmentation and shows result on the map

@app.callback(
    [
        Output("downloaded_image_path", "data"),
        Output("segment-button", "disabled"),
        Output("map-card", "children", allow_duplicate=True),
        Output("download-button", "disabled"),
    ],
    [
        Input("annotations-table", "data"),
        Input("segment-button", "n_clicks"),
        Input("sam-model", "value"),
        Input("pred-iou-thresh", "value"),
        Input("stability-score-thresh", "value"),
        Input("output-data-upload", "data"),
    ],
    prevent_initial_call="initial_duplicate",
)
def run_segmentation(
    table_data,
    n_clicks,
    sam_model,
    pred_iou_thresh,
    stability_score_thresh,
    input_data,
):
    if n_clicks == 0 or table_data is None:
        raise PreventUpdate
    if n_clicks == 1 and table_data is not None:
        roi = [row for row in table_data if row["type"] == "ROI BBox"][0]
        if input_data:
            image_bounds = input_data[0][2]
            print(input_data)
            tmp_img_path = input_data[0][0]
            roi_bbox = [
                float(image_bounds[0][1]),  # x_min (longitude of SW)
                float(image_bounds[0][0]),  # y_min (latitude of SW)
                float(image_bounds[1][1]),  # x_max (longitude of NE)
                float(image_bounds[1][0]),  # y_max (latitude of NE)
            ]
            map_center = [
                (image_bounds[0][0] + image_bounds[1][0]) / 2,
                (image_bounds[0][1] + image_bounds[1][1]) / 2,
            ]
        else:
            roi_bbox = [
                float(roi["x_min"]),
                float(roi["y_min"]),
                float(roi["x_max"]),
                float(roi["y_max"]),
            ]
            image_bounds = [[roi_bbox[1], roi_bbox[0]], [roi_bbox[3], roi_bbox[2]]]
            map_center = [
                (float(roi["y_min"]) + float(roi["y_max"])) / 2.0,
                (float(roi["x_min"]) + float(roi["x_max"])) / 2.0,
            ]
            tmp_img_path = download_from_wms(
                WMS_URL, roi_bbox, LAYER, IMAGE_FORMAT, WORK_DIR, RESOLUTION  # type: ignore
            )
        types = [row["type"] for row in table_data]
        unique_types = list(set(types))
        if len(table_data) == 2 and unique_types == ["ROI BBox"]:
            segmetnation_path, png_path = generate_automatic_mask(
                tmp_img_path, sam_model, pred_iou_thresh, stability_score_thresh
            )

        else:
            bboxes_geo, foreground_points, background_points, stacked_points, labels = (
                None,
                None,
                None,
                None,
                None,
            )
            geom_df = pd.DataFrame(table_data)
            unique_types = list(set(unique_types) - set("ROI BBox"))
            for u_t in unique_types:
                tmp_df = geom_df.loc[geom_df["type"] == u_t]
                if u_t == "Object BBox":
                    bboxes_geo = tmp_df[columns[2:]].astype(float).values
                if u_t == "Foreground Point":
                    foreground_points = tmp_df[columns[2:4]].astype(float).values
                if u_t == "Background Point":
                    background_points = tmp_df[columns[2:4]].astype(float).values
            if foreground_points is None and background_points is not None:
                stacked_points = np.copy(background_points)
                labels = np.zeros((stacked_points.shape[0]), dtype=np.uint8)
            elif background_points is None and foreground_points is not None:
                stacked_points = np.copy(foreground_points)
                labels = np.ones((stacked_points.shape[0]), dtype=np.uint8)
            elif background_points is not None and foreground_points is not None:
                stacked_points = np.vstack((background_points, foreground_points))
                labels = np.zeros((stacked_points.shape[0]), dtype=np.uint8)
                labels[background_points.shape[0] :] = 1

            segmetnation_path, png_path = sam_prompt_bbox(
                tmp_img_path, bboxes_geo, stacked_points, labels, sam_model, roi_bbox
            )
        encoded_img = base64.b64encode(open(png_path, "rb").read()).decode("ascii")
        encoded_img = "{}{}".format("data:image/png;base64, ", encoded_img)
        list_children_items = [
            dl.LayersControl(
                [
                    dl.Overlay(dl.TileLayer(), name="OSM", checked=True),
                    dl.Overlay(wms_layer, name="Sentinel-2", checked=True),
                    dl.Overlay(esri_tile_layer, name="ESRI", checked=True),
                ],
                id="layers-control",
                collapsed=True,
            ),
            dl.ImageOverlay(opacity=0.5, url=encoded_img, bounds=image_bounds),
            dl.FeatureGroup(
                [
                    dl.LocateControl(
                        options={"locateOptions": {"enableHighAccuracy": True}}
                    ),
                    dl.MeasureControl(
                        position="topleft",
                        primaryLengthUnit="kilometers",
                        primaryAreaUnit="sqmeters",
                        id="measure_control",
                    ),
                    dl.EditControl(
                        id="edit_control",
                        draw={
                            "polyline": False,
                            "polygon": False,
                            "circle": False,
                            "circlemarker": False,
                        },
                    ),
                ]
            ),
        ]
        if input_data:
            encoded_img = base64.b64encode(open(input_data[0][1], "rb").read()).decode(
                "ascii"
            )
            encoded_img = "{}{}".format("data:image/png;base64, ", encoded_img)
            list_children_items.insert(
                0, dl.ImageOverlay(opacity=0.5, url=encoded_img, bounds=image_bounds)
            )

        list_children = dl.Map(
            list_children_items,
            id="map",
            style={
                "width": "100%",
                "height": "80vh",
                "margin": "auto",
                "display": "block",
            },
            center=map_center,
            zoom=15,
            bounds=image_bounds,
        )
        return [tmp_img_path, segmetnation_path, png_path], True, list_children, False

There might be slight changes in variables or new ones but this is the general logic and it shouldn't take a lot of changes to make it work.
Don't forget to use dash==2.18.2 to use prevent_initial_callback and use allow_duplicate=True, which allows multiple callbacks to update the same output. Please let me know if this works for you or in case you have other questions.

you would also need this
def reproject_to_epsg4326(input_path, output_path):
    with rasterio.open(input_path) as src:
        dst_crs = "EPSG:4326"
        transform, width, height = calculate_default_transform(
            src.crs, dst_crs, src.width, src.height, *src.bounds
        )
        dst_meta = src.meta.copy()
        dst_meta.update(
            {"crs": dst_crs, "transform": transform, "width": width, "height": height}
        )
        reprojected_bounds = transform_bounds(src.crs, dst_crs, *src.bounds)
        with rasterio.open(output_path, "w", **dst_meta) as dst:
            for i in range(1, src.count + 1):
                reproject(
                    source=rasterio.band(src, i),
                    destination=rasterio.band(dst, i),
                    src_transform=src.transform,
                    src_crs=src.crs,
                    dst_transform=transform,
                    dst_crs=dst_crs,
                    resampling=Resampling.nearest,
                )

        reprojected_image = tiff.imread(output_path)
        # reprojected_image = (
        #     (reprojected_image - reprojected_image.min())
        #     / (reprojected_image.max() - reprojected_image.min())
        #     * 255
        # )
        reprojected_image = reprojected_image.astype(np.uint8)

        # Create a PIL image from the array
        png_image = Image.fromarray(reprojected_image)
        img_byte_arr = io.BytesIO()
        png_image.save(img_byte_arr, format="PNG")
        img_byte_arr.seek(0)  # Go to the start
        png_file_path = output_path.split(".")[0] + ".png"
        with open(png_file_path, "wb") as f:
            f.write(img_byte_arr.getbuffer())
    return reprojected_bounds, img_byte_arr.getvalue(), png_file_path

Hi @AlbughdadiM, in your provided code for uploading  TIFF images, will esri_tile_layer will  be fine? As it's not
 # ESRI base map options
    esri_tile_layer = dl.TileLayer(
    url="https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}",
    attribution="© Esri — Esri, DeLorme, NAVTEQ",)

and what is process_id here  id_generator() function is  missing. Is it some random ID generator like UUID ?
 def update_output_upload(contents, filename):
    logging.info(filename)
    if contents is None and filename is None:
        raise PreventUpdate
    _, content_string = contents.split(",")
    process_id = id_generator()

Esri layer is another wms I am using but it is not necessary. It he ID generator generates a unique ID for each task to avoid confusion of data in case of multiple requests with same image name at the same time.

This is the ESRI WMS layer
esri_tile_layer = dl.TileLayer(
    url="https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}",
    attribution="Esri",
)

and the ID generator
import uuid
def id_generator():
    return str(uuid.uuid4())

And some undefined things are also there:

Will be easy if you provide correct imports and missing definitions

import io
import os
from io import BytesIO
from typing import Tuple
import uuid
import tifffile as tiff
from owslib.wms import WebMapService
from pyproj import Transformer, CRS
import rasterio
from rasterio.warp import (
    calculate_default_transform,
    reproject,
    Resampling,
    transform_bounds,
)
import numpy as np
from PIL import Image

This should cover the missing imports, and extra imports I am using in my code

Thanks for providing all the details. Once it starts running, I will share the whole working code here with the uploading files feature.
Meanwhile, I think we have to update something else as well. I am getting some errors on the interface relating to ID :

Regarding the upload option:

Place this in the layout of the app.py

upload_data_card = dbc.Card(
    [
        dbc.CardHeader(html.H2("Data upload")),
        dbc.CardBody(
            [
                dcc.Upload(
                    id="upload-tif",
                    children=html.Div(["Drag and Drop or ", html.A("Select Files")]),
                    style={
                        "width": "100%",
                        "height": "60px",
                        "lineHeight": "60px",
                        "borderWidth": "1px",
                        "borderStyle": "dashed",
                        "borderRadius": "5px",
                        "textAlign": "center",
                        "margin": "10px",
                    },
                    multiple=False,  # Set to True if multiple file upload is needed
                ),
                dcc.Store(id="output-data-upload", data=None),
            ]
        ),
    ]
)

You will also need a callback to save the uploaded image in a temp file in the container and overlay it on the map

@app.callback(
    [
        Output("output-data-upload", "data"),
        Output("map-card", "children", allow_duplicate=True),
    ],
    [
        Input("upload-tif", "contents"),
        Input("upload-tif", "filename"),
    ],
    prevent_initial_call="initial_duplicate",
)
def update_output_upload(contents, filename):
    logging.info(filename)
    if contents is None and filename is None:
        raise PreventUpdate
    _, content_string = contents.split(",")
    process_id = id_generator()
    process_path = os.path.join(WORK_DIR, process_id)  # type: ignore
    os.makedirs(process_path)
    decoded = base64.b64decode(content_string)
    file_path = os.path.join(process_path, filename)
    with open(file_path, "wb") as f:
        f.write(decoded)
    reproj_file_path = os.path.join(
        process_path, filename.split(".")[0] + "_reproj.tif"
    )
    reproj_bounds, img_byte_arr, png_path = reproject_to_epsg4326(
        file_path, reproj_file_path
    )
    leaflet_bounds = [
        [reproj_bounds[1], reproj_bounds[0]],
        [reproj_bounds[3], reproj_bounds[2]],
    ]

    map_center = [
        (leaflet_bounds[0][0] + leaflet_bounds[1][0]) / 2,
        (leaflet_bounds[0][1] + leaflet_bounds[1][1]) / 2,
    ]
    encoded_img = base64.b64encode(img_byte_arr).decode("ascii")
    encoded_img = "{}{}".format("data:image/png;base64, ", encoded_img)
    print("also here")
    list_children = dl.Map(
        [
            dl.LayersControl(
                [
                    dl.Overlay(dl.TileLayer(), name="OSM", checked=True),
                    dl.Overlay(wms_layer, name="Sentinel-2", checked=True),
                    dl.Overlay(esri_tile_layer, name="ESRI", checked=True),
                ],
                id="layers-control",
                collapsed=True,
            ),
            dl.ImageOverlay(opacity=1, url=encoded_img, bounds=leaflet_bounds),
            dl.FeatureGroup(
                [
                    dl.LocateControl(
                        options={"locateOptions": {"enableHighAccuracy": True}}
                    ),
                    dl.MeasureControl(
                        position="topleft",
                        primaryLengthUnit="kilometers",
                        primaryAreaUnit="sqmeters",
                        id="measure_control",
                    ),
                    dl.EditControl(
                        id="edit_control",
                        draw={
                            "polyline": False,
                            "polygon": False,
                            "circle": False,
                            "circlemarker": False,
                        },
                    ),
                ]
            ),
        ],
        id="map",
        style={
            "width": "100%",
            "height": "80vh",
            "margin": "auto",
            "display": "block",
        },
        center=map_center,
        zoom=12,
        bounds=leaflet_bounds,
    )
    return [[reproj_file_path, png_path, leaflet_bounds]], list_children

Update callback that does image download/or use the uploaded image and do the segmentation and shows result on the map

@app.callback(
    [
        Output("downloaded_image_path", "data"),
        Output("segment-button", "disabled"),
        Output("map-card", "children", allow_duplicate=True),
        Output("download-button", "disabled"),
    ],
    [
        Input("annotations-table", "data"),
        Input("segment-button", "n_clicks"),
        Input("sam-model", "value"),
        Input("pred-iou-thresh", "value"),
        Input("stability-score-thresh", "value"),
        Input("output-data-upload", "data"),
    ],
    prevent_initial_call="initial_duplicate",
)
def run_segmentation(
    table_data,
    n_clicks,
    sam_model,
    pred_iou_thresh,
    stability_score_thresh,
    input_data,
):
    if n_clicks == 0 or table_data is None:
        raise PreventUpdate
    if n_clicks == 1 and table_data is not None:
        roi = [row for row in table_data if row["type"] == "ROI BBox"][0]
        if input_data:
            image_bounds = input_data[0][2]
            print(input_data)
            tmp_img_path = input_data[0][0]
            roi_bbox = [
                float(image_bounds[0][1]),  # x_min (longitude of SW)
                float(image_bounds[0][0]),  # y_min (latitude of SW)
                float(image_bounds[1][1]),  # x_max (longitude of NE)
                float(image_bounds[1][0]),  # y_max (latitude of NE)
            ]
            map_center = [
                (image_bounds[0][0] + image_bounds[1][0]) / 2,
                (image_bounds[0][1] + image_bounds[1][1]) / 2,
            ]
        else:
            roi_bbox = [
                float(roi["x_min"]),
                float(roi["y_min"]),
                float(roi["x_max"]),
                float(roi["y_max"]),
            ]
            image_bounds = [[roi_bbox[1], roi_bbox[0]], [roi_bbox[3], roi_bbox[2]]]
            map_center = [
                (float(roi["y_min"]) + float(roi["y_max"])) / 2.0,
                (float(roi["x_min"]) + float(roi["x_max"])) / 2.0,
            ]
            tmp_img_path = download_from_wms(
                WMS_URL, roi_bbox, LAYER, IMAGE_FORMAT, WORK_DIR, RESOLUTION  # type: ignore
            )
        types = [row["type"] for row in table_data]
        unique_types = list(set(types))
        if len(table_data) == 2 and unique_types == ["ROI BBox"]:
            segmetnation_path, png_path = generate_automatic_mask(
                tmp_img_path, sam_model, pred_iou_thresh, stability_score_thresh
            )

        else:
            bboxes_geo, foreground_points, background_points, stacked_points, labels = (
                None,
                None,
                None,
                None,
                None,
            )
            geom_df = pd.DataFrame(table_data)
            unique_types = list(set(unique_types) - set("ROI BBox"))
            for u_t in unique_types:
                tmp_df = geom_df.loc[geom_df["type"] == u_t]
                if u_t == "Object BBox":
                    bboxes_geo = tmp_df[columns[2:]].astype(float).values
                if u_t == "Foreground Point":
                    foreground_points = tmp_df[columns[2:4]].astype(float).values
                if u_t == "Background Point":
                    background_points = tmp_df[columns[2:4]].astype(float).values
            if foreground_points is None and background_points is not None:
                stacked_points = np.copy(background_points)
                labels = np.zeros((stacked_points.shape[0]), dtype=np.uint8)
            elif background_points is None and foreground_points is not None:
                stacked_points = np.copy(foreground_points)
                labels = np.ones((stacked_points.shape[0]), dtype=np.uint8)
            elif background_points is not None and foreground_points is not None:
                stacked_points = np.vstack((background_points, foreground_points))
                labels = np.zeros((stacked_points.shape[0]), dtype=np.uint8)
                labels[background_points.shape[0] :] = 1

            segmetnation_path, png_path = sam_prompt_bbox(
                tmp_img_path, bboxes_geo, stacked_points, labels, sam_model, roi_bbox
            )
        encoded_img = base64.b64encode(open(png_path, "rb").read()).decode("ascii")
        encoded_img = "{}{}".format("data:image/png;base64, ", encoded_img)
        list_children_items = [
            dl.LayersControl(
                [
                    dl.Overlay(dl.TileLayer(), name="OSM", checked=True),
                    dl.Overlay(wms_layer, name="Sentinel-2", checked=True),
                    dl.Overlay(esri_tile_layer, name="ESRI", checked=True),
                ],
                id="layers-control",
                collapsed=True,
            ),
            dl.ImageOverlay(opacity=0.5, url=encoded_img, bounds=image_bounds),
            dl.FeatureGroup(
                [
                    dl.LocateControl(
                        options={"locateOptions": {"enableHighAccuracy": True}}
                    ),
                    dl.MeasureControl(
                        position="topleft",
                        primaryLengthUnit="kilometers",
                        primaryAreaUnit="sqmeters",
                        id="measure_control",
                    ),
                    dl.EditControl(
                        id="edit_control",
                        draw={
                            "polyline": False,
                            "polygon": False,
                            "circle": False,
                            "circlemarker": False,
                        },
                    ),
                ]
            ),
        ]
        if input_data:
            encoded_img = base64.b64encode(open(input_data[0][1], "rb").read()).decode(
                "ascii"
            )
            encoded_img = "{}{}".format("data:image/png;base64, ", encoded_img)
            list_children_items.insert(
                0, dl.ImageOverlay(opacity=0.5, url=encoded_img, bounds=image_bounds)
            )

        list_children = dl.Map(
            list_children_items,
            id="map",
            style={
                "width": "100%",
                "height": "80vh",
                "margin": "auto",
                "display": "block",
            },
            center=map_center,
            zoom=15,
            bounds=image_bounds,
        )
        return [tmp_img_path, segmetnation_path, png_path], True, list_children, False

There might be slight changes in variables or new ones but this is the general logic and it shouldn't take a lot of changes to make it work. Don't forget to use dash==2.18.2 to use prevent_initial_callback and use allow_duplicate=True, which allows multiple callbacks to update the same output. Please let me know if this works for you or in case you have other questions.

The first piece of code contains the layout updates that should be implemented to make the upload component work

you finally add these components after declaring them to the layout in here
app.layout = html.Div(
    [
        dbc.Spinner(
            id="loading-1",
            type="grow",
            color="success",
            children=[
                dcc.Store(id="downloaded_image_path"),
                dcc.Store(id="prev-table-data"),
                navbar,
                dbc.Container(
                    [
                        dbc.Row(
                            [
                                dbc.Col(
                                    image_annotation_card,
                                    md=7,
                                ),
                                dbc.Col(
                                    dbc.Stack([upload_data_card,annotated_data_card, model_card]), # This where upload_data_card is added to the layout
                                    md=5,
                                ),
                            ],
                        ),
                    ],
                    fluid=True,
                ),
            ],
        )
    ]
)

Yeah, @AlbughdadiM  I have already written layout updates and e upload component work. However, the app layout wasn't updated. But as soon as the page uploads it gives an exception of an invalid path. Seems it started to process image running even without uploading file-path from user.
This is the CopyPaste-friendlyy version of the traceback.
Traceback (most recent call last):
  File "/home/test/projects/segment-geospatial/TKDM/satellite-sam-dashboard/src/app.py", line 414, in reproject_to_epsg4326
    with rasterio.open(input_path) as src:
  File "/home/test/anaconda3/envs/geo/lib/python3.9/site-packages/rasterio/env.py", line 451, in wrapper
    return f(*args, **kwds)
  File "/home/test/anaconda3/envs/geo/lib/python3.9/site-packages/rasterio/__init__.py", line 216, in open
    raise TypeError("invalid path or file: {0!r}".format(fp))
TypeError: invalid path or file: None

Here is the new app.py. Will be so helpful If you review this to make it work . Thanks again for your continuous suppport
app.py

Yeah, @AlbughdadiM I have already written layout updates and e upload component work. However, the app layout wasn't updated. But as soon as the page uploads it gives an exception of an invalid path. Seems it started to process image running even without uploading file-path from user.
This is the CopyPaste-friendlyy version of the traceback.
Traceback (most recent call last):
  File "/home/test/projects/segment-geospatial/TKDM/satellite-sam-dashboard/src/app.py", line 414, in reproject_to_epsg4326
    with rasterio.open(input_path) as src:
  File "/home/test/anaconda3/envs/geo/lib/python3.9/site-packages/rasterio/env.py", line 451, in wrapper
    return f(*args, **kwds)
  File "/home/test/anaconda3/envs/geo/lib/python3.9/site-packages/rasterio/__init__.py", line 216, in open
    raise TypeError("invalid path or file: {0!r}".format(fp))
TypeError: invalid path or file: None

Here is the new app.py. Will be so helpful If you review this to make it work . Thanks again for your continuous suppport
app.py

I think you changed the callback function to upload data, you used the auxiliary function reproject_to_espog4326 instead. The reprojection function should be a normal function that can be placed in utils.py call it from the callback function i mentioned above and I will put also here for convince
@app.callback(
    [
        Output("output-data-upload", "data"),
        Output("map-card", "children", allow_duplicate=True),
    ],
    [
        Input("upload-tif", "contents"),
        Input("upload-tif", "filename"),
    ],
    prevent_initial_call="initial_duplicate",
)
def update_output_upload(contents, filename):
    logging.info(filename)
    if contents is None and filename is None:
        raise PreventUpdate
    _, content_string = contents.split(",")
    process_id = id_generator()
    process_path = os.path.join(WORK_DIR, process_id)  # type: ignore
    os.makedirs(process_path)
    decoded = base64.b64decode(content_string)
    file_path = os.path.join(process_path, filename)
    with open(file_path, "wb") as f:
        f.write(decoded)
    reproj_file_path = os.path.join(
        process_path, filename.split(".")[0] + "_reproj.tif"
    )
    reproj_bounds, img_byte_arr, png_path = reproject_to_epsg4326(
        file_path, reproj_file_path
    )
    leaflet_bounds = [
        [reproj_bounds[1], reproj_bounds[0]],
        [reproj_bounds[3], reproj_bounds[2]],
    ]

    map_center = [
        (leaflet_bounds[0][0] + leaflet_bounds[1][0]) / 2,
        (leaflet_bounds[0][1] + leaflet_bounds[1][1]) / 2,
    ]
    encoded_img = base64.b64encode(img_byte_arr).decode("ascii")
    encoded_img = "{}{}".format("data:image/png;base64, ", encoded_img)
    print("also here")
    list_children = dl.Map(
        [
            dl.LayersControl(
                [
                    dl.Overlay(dl.TileLayer(), name="OSM", checked=True),
                    dl.Overlay(wms_layer, name="Sentinel-2", checked=True),
                    dl.Overlay(esri_tile_layer, name="ESRI", checked=True),
                ],
                id="layers-control",
                collapsed=True,
            ),
            dl.ImageOverlay(opacity=1, url=encoded_img, bounds=leaflet_bounds),
            dl.FeatureGroup(
                [
                    dl.LocateControl(
                        options={"locateOptions": {"enableHighAccuracy": True}}
                    ),
                    dl.MeasureControl(
                        position="topleft",
                        primaryLengthUnit="kilometers",
                        primaryAreaUnit="sqmeters",
                        id="measure_control",
                    ),
                    dl.EditControl(
                        id="edit_control",
                        draw={
                            "polyline": False,
                            "polygon": False,
                            "circle": False,
                            "circlemarker": False,
                        },
                    ),
                ]
            ),
        ],
        id="map",
        style={
            "width": "100%",
            "height": "80vh",
            "margin": "auto",
            "display": "block",
        },
        center=map_center,
        zoom=12,
        bounds=leaflet_bounds,
    )
    return [[reproj_file_path, png_path, leaflet_bounds]], list_children


Hono adapter

Whilst creating the Bun adapter @blaine-arcjet suggested in https://github.com/arcjet/arcjet-js/pull/757#discussion_r1602078204 creating a Hono adapter as well so that we can auto-detect the correct runtime.

Include Hono + Cloudflare when https://github.com/arcjet/arcjet-js/issues/759 is done.

Prior art for how others are using Hono: https://www.unkey.com/docs/libraries/ts/hono

Looks like accessing env-vars outside of the handler will be in the next release.


How can I merge the sx props?

I want to merge the sx props like this.
import React from "react";
import ReactDOM from "react-dom";
import Box from "@material-ui/core/Box";

function App() {
  return (
    <div>
      <CustomBox
        sx={{
          bgcolor: "cyan"
        }}
      >
        Hello World
      </CustomBox>
    </div>
  );
}

function CustomBox({ children, ...rest }) {
  return (
    <Box sx={{ border: "10px solid tomato" }} {...rest}>
      {children}
    </Box>
  );
}

ReactDOM.render(<App />, document.querySelector("#app"));

https://codesandbox.io/s/react-mui-forked-vyw168?file=/index.js
Upper code Box's border wouldn't appear because spread operator overrwirte the sx props.
Is there any workaround?
Use Style to prevent this behavior?

@MonstraG
Really thanks... Close the issue!

The docs already have it...
See the docs who came for search the merge using theme.
https://mui.com/system/getting-started/the-sx-prop/#passing-the-sx-prop


Big tower on tiger's head

[Enter feedback here]

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

ID: b5f09e53-cf96-6ffd-e1a9-ff52535c8309
Version Independent ID: a8b5d4af-fd35-28ab-73a4-5144a6fd6ef2
Content: What is Vision Studio? - Azure AI services
Content Source: articles/ai-services/computer-vision/overview-vision-studio.md
Service: azure-ai-vision
GitHub Login: @PatrickFarley
Microsoft Alias: pafarley

@rasel234545
Could you please elaborate the query for better understanding. So, we can assist you further.

@rasel234545
Since we have not heard back from you, we will now proceed to close this thread.
If there are further questions regarding this matter, please tag me in your reply. We will gladly continue the discussion and we will reopen the issue.


[main] KafkaChannel to init offsets before dispatcher

Manual cherry pick of the same fix in 0.24: https://github.com/knative-sandbox/eventing-kafka/pull/886

Release Note

- 🐛  Fixed a bug that was causing Kafka Channel dispatcher to miss some events in case the offset for the consumer group was not initialized

Docs

/hold
let's use :cherries:-pick of the "merge sha" ...

let's use 🍒-pick of the "merge sha" ...

If it works yes, that's nicer.

Let's see this one passes the tests then I will cherry pick the changes and do the dance from 0.24 -> ... -> main

/test pull-knative-sandbox-eventing-kafka-upgrade-tests

Ok, let's see what happens to the 0.26 backport: https://github.com/knative-sandbox/eventing-kafka/pull/928

/hold
Some renaming to be done here on this PR

/test pull-knative-sandbox-eventing-kafka-integration-test-channel-distributed
Unable to connect to the server: net/http: TLS handshake timeout


Error propagated from child-route to parent

Describe the bug
I have 2 routes:

/$slug which displays the detail of an entity
/$slug/report which displays the report for the entity

Bot have loader and errorComponent on the routes as they have to load some data to display and handle errors. If an exception is thrown on /$slug/report route it displays the error from errorComponent which is to be expected. But if I navigate (via Link) to the detail /$slug it also shows the errorComponent with the same error as was thrown in the report route.
Your Example Website or App
https://stackblitz.com/edit/github-3mpcwb?file=src%2Fmain.tsx
Steps to Reproduce the Bug or Issue

Click on "Report"
See error thrown on Report route
Click on "Detail"
See error thrown on Detail route

Expected behavior
I would expect the "Detail" route to not thrown an error as none was thrown in it.
Screenshots or Videos
https://github.com/user-attachments/assets/acf445a9-cd93-4c04-9686-d5d0498f727e
Platform

OS: macOS
Browser: Chrome
Version: 127.0.6533.72

Additional context
Hopefully I didn't miss some obvious

regression of 1.45.3
works in 1.45.2: https://stackblitz.com/edit/github-3mpcwb-ohnkkb?file=package.json

reproducer is in #2044


Recaptcha validation duration UX

When enabling recaptcha, if you register, click on recaptcha and validate the form BEFORE the recatcha has finished the processing, it raises an error, which is sensible but bad UX.
What about enabling a timeout or waiting a for a callback from recaptcha (if availbale)?

Not the best ever solution but simply ignoring the submit event in case recaptcha validation is not complete should provide a better UX.


Code with # ... seems to be identified as a TOC entry

Seems to be identified as TOC
# ...

This is https://github.com/gettalong/kramdown/issues/536.


Update kOS-Astrogator dep min version for Astrogator

See HebaruSan/Astrogator#32. Version v1.0.0 is now required.

ckan compat add 1.11 1.12

Thanks for this, completely slipped my mind it would be needed for NetKAN. I've done the version bump in the mod to Astrogator, but not here.

In practice, it probably won't matter (since CKAN prefers the latest version anyway), but as long as we know there's a specific version requirement, we might as well have it in the metadata.


Problem with the preconfigured environment variable RUN_BULLMQ_WORKERS

FYI @Tomas2D
Problem
I had a problem when I started the API. I get the following problem.
Error: Unknown items runs:cleanup,vectorStores:cleanup,vectorStores:fileProcessor,files:extraction:node,files:extraction:python,threads:cleanup,files:cleanup in RUN_BULLMQ_WORKERS
    at getStringArray (/Users/thomassuedbroecker/Documents/tsuedbro/dev/bee-api/src/config.ts:50:35)
    at <anonymous> (/Users/thomassuedbroecker/Documents/tsuedbro/dev/bee-api/src/config.ts:172:35)
    at ModuleJob.run (node:internal/modules/esm/module_job:234:25)
    at async ModuleLoader.import (node:internal/modules/esm/loader:473:24)

Verification
I verified what is expected in src/config.ts
INFO current values:
runs,runs:cleanup,vectorStores:cleanup,vectorStores:fileProcessor,files:extraction:node,files:extraction:python,threads:cleanup,files:cleanup
INFO allowed values:
runs,runs-cleanup,threads-cleanup,vectorStores-cleanup,vectorStores-fileProcessor,files-extraction-node,files-extraction-python,files-cleanup

I noticed that the RUN_BULLMQ_WORKERS variable need to be changed in the .env file.
# Queue workers
RUN_BULLMQ_WORKERS=runs,runs:cleanup,vectorStores:cleanup,vectorStores:fileProcessor,files:extraction:node,files:extraction:python,threads:cleanup,files:cleanup

Solution
After I changed the entry in the .env, it worked again.
# Queue workers
RUN_BULLMQ_WORKERS=runs,runs-cleanup,threads-cleanup,vectorStores-cleanup,vectorStores-fileProcessor,files-extraction-node,files-extraction-python,files-cleanup

Yes, this is breaking change, worker names must be changed. See env.example: https://github.com/i-am-bee/bee-api/blob/main/.env.example#L42

Thanks, strange, I did an update of my fork in synchronized it but the example environment file was not updated.


Support VPN type IPSec

Hi Kris,
It's been some time since you pushed this project. Here's a small update for the IPSec option that might be useful to anyone that comes across it in need for an example with the Cisco IPSec settings instead of L2TP, as was for me this weekend. :-)
Patrick de Kleijn

It's cool. Thanks. But, I must to use "Group" for connect. How I can add this parameter? Thanks

For some reason I just saw this.  Thank you @patrickdekleijn !!


PHP 8.2 Compatibility DateTime::getLastErrors

DateTime::getLastErrors() is documented as returning array|false https://www.php.net/manual/en/datetime.getlasterrors.php
As discussed here https://github.com/symfony/symfony/pull/47428#issuecomment-1231483492
@derickr quoted as saying
"This is a bug fix as the new 8.2 behaviour is how it has been documented for over a decade."

I don't see how this can work, because the foreach() loop will attempt to access an undefined index when there are no errors.

You are correct - this PR sucks, was obviously high on caffeine or something - will redo it in the morning. The concept is sound though, that when DateTime::getLastErrors() returns false, then the loop will attempt to access an undefined index which is the bug to fix.
This PR doesn't fix that because... well I have no idea why I submitted this crap, sorry. Will redo it.


Context not working in 0.60.0-rc.2

React Native version:
0.60.0-rc.2
Steps To Reproduce
react-native init rncrash --version 0.60.0-rc.2
yarn add react-navigation react-navigation-gesture-handler
react-native link

Describe what you expected to happen:
I used react-navigation's withNavigation which utilises context.
This worked before, now it throws at this exact location:
https://github.com/react-navigation/core/blob/master/src/views/withNavigation.js#L22
Snack, code example, or link to a repository:
https://github.com/JonnyBurger/rn-60-rc2-crash
App.js:
/**
 * Sample React Native App
 * https://github.com/facebook/react-native
 *
 * Generated with the TypeScript template
 * https://github.com/emin93/react-native-template-typescript
 *
 * @format
 */

import React, { Component, useEffect } from "react";
import { Platform, StyleSheet, Text, View } from "react-native";
import { createAppContainer, withNavigation } from "react-navigation";

const instructions = Platform.select({
  ios: "Press Cmd+R to reload,\n" + "Cmd+D or shake for dev menu",
  android:
    "Double tap R on your keyboard to reload,\n" +
    "Shake or press menu button for dev menu",
});

const Inside = () => {
  return <View />;
};

const InsideWithNavigation = withNavigation(Inside);

const Root = () => {
  return (
    <View style={styles.container}>
      <InsideWithNavigation />
    </View>
  );
};

const RootWrapped = createAppContainer(Root);

interface Props {}
export default function App() {
  useEffect(() => {}, []);
  return (
    <View style={styles.container}>
      <Root />
    </View>
  );
}

const styles = StyleSheet.create({
  container: {
    flex: 1,
    justifyContent: "center",
    alignItems: "center",
    backgroundColor: "#F5FCFF",
  },
  welcome: {
    fontSize: 20,
    textAlign: "center",
    margin: 10,
  },
  instructions: {
    textAlign: "center",
    color: "#333333",
    marginBottom: 5,
  },
});

Hmm weird. The error message seems reasonable though? There's no navigator in your example.

Fair enough.
Just tried to make another reproducible example for the last 2 hours but failed, although this problem still exists in my project (it is inside a navigator and worked in RN59).
Because I have not much time over the next few 7-10 days to debug this I'm gonna close this. Sorry 😕
Could just be that I did not cleanly upgrade RN, for example I did not switch to Cocoapods.

Aaand the problem was as simple that react was not up to date.
Sorry everyone for wasting their time and it is not a bug.


fix: 🐞 randJSON: prevent key overwritten when looping

Object key replaced with uuid()
Reduce replaced with For loop for better performance

✅ Closes: #180
PR Checklist
Please check if your PR fulfills the following requirements:

[x] The commit message follows our guidelines: https://github.com/ngneat/falso/blob/master/CONTRIBUTING.md#commit
[x] Tests for the changes have been added (for bug fixes / features)
[x] Docs have been added / updated (for bug fixes / features)

PR Type
What kind of change does this PR introduce?

[x] Bugfix
[ ] Feature
[ ] Code style update (formatting, local variables)
[x] Refactoring (no functional changes, no api changes)
[ ] Build related changes
[ ] CI related changes
[ ] Documentation content changes
[ ] Other... Please describe:

Issue Number: #180

On every other function we use the length option to determine if a single mock, or an array of mocks is returned. I know this function has already been approved previously, but it might be better if to replace length with something like totalKeys. That way we can use length in the same way we do else where.
I've also noticed that we are using <caption>s in the comments but this doesn't work correctly in the docs.

My suggested changeof length would be a breaking change, so what are your thoughts @NetanelBasal & @shaharkazaz ?

@theryansmee When I was first creating this I though exactly the same about the length property, but end up leaving the idea of creating a new property out with afraid of it being quite out of the remaining patter. But I will need to agree that will probably make more sense on keeping length as a property that returns an array, and a new one as keysLength or totalKeys with the amount of keys of the object.
@NetanelBasal @shaharkazaz let us know what you think

I'm thinking we should just go with the breaking change. It makes everything a little more alike 😊

@rodrigofeijao any updates here?

Sorry, have been incredibly busy with some things this week and didn't have the time to look at this, will try to push it during the weekend. Sorry the delay.

I'm thinking we should just go with the breaking change. It makes everything a little more alike 😊

@theryansmee as in leaving as it is?

I'm thinking we should just go with the breaking change. It makes everything a little more alike 😊

@theryansmee as in leaving as it is?

No, sorry I meant to change it so that length works as it does else where (creating an array of items)

Will update the code and the tests, and then push it up for you guys to review it

Awesome, cheers 😊


Create a plugin registry for multiple accessors

We need a generic plugin registry that can load up multiple accessors easily, and provide an interface that's flexible and easy enough to customize.

Should the plugins just be other ArResolvers that are delegated to by the master ArResolver?

If you want the most flexible option, then yes. However, I think we could do equally good by only exposing parts of the interface and limit the scope of each accessor. For example, I would like to generate the temporary file location on the disk using the URIResolver and making sure they are removed once the URIResolver is out of scope, so accessor don't have to worry about such problems. Same goes for encryption of passwords for database based accessors.


Add header cache file

Issue
Resolves #66
What was done
How to test
FOR DEVS
Feature URL: See feature branch
FOR APPROVAL
Approval URL: See Approval branch

Closing because we went a different route.


fix: In e2e test, fedcorev1a1.PropagationPolicySpec.Placements should be a DesiredPlacement type, not ClusterReference type

In e2e test, fedcorev1a1.PropagationPolicySpec.Placements should be a DesiredPlacement type, not ClusterReference type
WHAT HAPPEND
When I run make e2e to test official given testcase, the following problem arises：
➜  kubeadmiral git:(main) ✗ make e2e
ginkgo run -race -tags=e2e  test/e2e -- --kubeconfig=/Users/fangxiaolong/.kube/kubeadmiral/kubeadmiral.config
Failed to compile e2e:

# github.com/kubewharf/kubeadmiral/test/e2e/framework/policies
framework/policies/propagationpolicy.go:41:20: cannot use []fedcorev1a1.ClusterReference{} (value of type []"github.com/kubewharf/kubeadmiral/pkg/apis/core/v1alpha1".ClusterReference) as []"github.com/kubewharf/kubeadmiral/pkg/apis/core/v1alpha1".DesiredPlacement value in struct literal
framework/policies/propagationpolicy.go:46:59: cannot use fedcorev1a1.ClusterReference{…} (value of type "github.com/kubewharf/kubeadmiral/pkg/apis/core/v1alpha1".ClusterReference) as "github.com/kubewharf/kubeadmiral/pkg/apis/core/v1alpha1".DesiredPlacement value in argument to append

Ginkgo ran 1 suite in 36.335954166s

Test Suite Failed
make: *** [e2e] Error 1

This is obviously a type mismatch problem，it may be fixed by this PR.
In my env, this PR could fix the problem and work:
➜  kubeadmiral git:(main) ✗ EXTRA_GINKGO_FLAGS='' EXTRA_E2E_FLAGS='--cluster-provider kind' make e2e
ginkgo run -race -tags=e2e  test/e2e -- --kubeconfig=/Users/fangxiaolong/.kube/kubeadmiral/kubeadmiral.config --cluster-provider kind
Running Suite: KubeAdmiral E2E Tests - /Users/fangxiaolong/develop/kubeadmiral/test/e2e
=======================================================================================
Random Seed:<PHONE_NUMBER>

Will run 3 of 3 specs
•••

Ran 3 of 3 Specs in 124.685 seconds
SUCCESS! -- 3 Passed | 0 Failed | 0 Pending | 0 Skipped
PASS

Ginkgo ran 1 suite in 2m13.69917775s
Test Suite Passed

@xiaoloongfang Thanks for your commit. Could you please rebase your code as we have merged new codes?

@xiaoloongfang Thanks for your commit. Could you please rebase your code as we have merged new codes?

Sure and done~

I am a beginner in k8s and I had a similar problem. I would like to ask where you get the configuration file(--kubeconfig=/Users/fangxiaolong/.kube/kubeadmiral/kubeadmiral.config) from. Could you give me a reference?

I am a beginner in k8s and I had a similar problem. I would like to ask where you get the configuration file(--kubeconfig=/Users/fangxiaolong/.kube/kubeadmiral/kubeadmiral.config) from. Could you give me a reference?

@Bright-Hsu I use the local-up script to set up my local env. In this case, I can find the config file path here https://github.com/kubewharf/kubeadmiral/blob/7a9636a6532588a7597f5627609920c373dcdf8a/hack/make-rules/local-up.sh#L27


[Task]: Explore and research on vscode level improvements for the GraphQL client generation tool

Description:

We need to explore and research on vscode level improvements for the GraphQL client generation tool.

Different solutions were researched discussed to improve the user experience of the GraphQL client generation tool as summarized here.
Based on the research and discussions held with higher level managers it was,

Agreed to add a new template tag graphql-client for the new Ballerina project creation command to generate prototypes necessary for the GraphQL client generation tool.

    bal new <package_name> -t graphql-client

Agreed to provide the 3rd party GraphQL Foundation VS Code plugin as an extension recommendation in the .vscode file of the project. Users will be recommended with a pop up to install the GraphQL plugin as a prerequisite for GraphQL query validation and execution in VS Code.
Suggested to provide the configurable options for GraphQL client generation tool as comments in the generated prototypes, so that the user can enable them based on their usage. Suggested to add proper references.
Suggested to implement a compile time validator as a future improvement to validate the changes in the GraphQL queries and the generated client code.
Discussed about the necessity to improve the Ballerina project creation command with additional template tags to support configuration of GraphQL API URL etc. The support for these options will be considered during future improvements of the command.