Adding check for minimum go version

Signed-off-by: Mohammed Zeeshan Ahmed<EMAIL_ADDRESS>What type of PR is this?
/kind feature
What does does this PR do / why we need it:
Instead of seeing random messages due to lower version mismatch, you will know exactly what the problem is when building
How to test changes / Special notes to the reviewer:
❯ make bin
go run scripts/check-go-version.go
Golang version 1.13.9 checked successfully to be match constraint >= 1.13
go build -ldflags="-w -X github.com/openshift/odo/pkg/version.GITCOMMIT=d4d7571ba" cmd/odo/odo.go

If version is incorrect, the script will exit 1 with message Golang version 1.12.9 does not match the constraint >= 1.13, please install correct version

Is there an issue where this was discussed before opening a PR? It's a feature so I'm guessing a user-story or some discussion must have happened. Can you please link it to the PR?

I would definitely prefer to have this in the docs instead of pulling a library to run a script  , so can we have an issue for this where the team discusses the possibilities and finalise @mohammedzee1000 ?
/hold

/close


update has "upsert" functionality

Is your feature request related to a problem? Please describe.
The update method has actually upsert functionality, where it will create the item if it not exists. This took me a while to realise since it's not documented.
Describe the solution you'd like
Docs be updated with the actual behaviour.

closing this in favour of #374 holding relevant topics to be updated in the docs, serving as a knowledge base for now and also describing the strategy of the technical solution of the documentation part, envision it to be closer to the source code of the project


Over-Quantity Base Translation

There is no tag for Over-Quantity trenslation in base app. I'm working with version 16.3.

What tag, what object, what field are you talking about? Please provide all details.

New feature in v16 recieve more items than ordered (https://docs.microsoft.com/en-us/dynamics365-release-plan/2020wave1/dynamics365-business-central/receive-more-items-than-ordered).
Translation for that feature is missing from base app translation. Purchase line is one table that shuld have Over-Receipt Quantity field to translate. I cannot find it in translatio file.

Thank you for reaching out. Your request could be reporting a product bug not related to the AL extensibility. Please reach out to the relevant support channels as specified in Product Support
On premises - https://support.microsoft.com/en-us/supportforbusiness/productselection?sapId=93d37907-ad94-d591-22e9-593cfa09dd3f
On line – read more here https://docs.microsoft.com/en-ca/dynamics365/business-central/dev-itpro/administration/manage-technical-support or contact your partner
If you are a partner open a support incident through Partner Center - https://partner.microsoft.com/en-us/pcv/dashboard/overview


Cheap knockoff Tuya-based PIR sensor failed flashing - Device did not appear with the intermediate firmware

This is my very first Tuya-based device.  So I did try using the Tuya app to activate the device first and it did work.  Maybe I shouldn't have done that?
Anyway here are the details - first the session itself:
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
pi@raspberrypi:~/tuya-convert $ ./start_flash.sh
tuya-convert v2.4.4
Checking for network interface wlan0... Found.
Checking UDP port 53... Available.
Checking UDP port 67... Available.
Checking TCP port 80... Available.
Checking TCP port 443... Available.
Checking UDP port 6666... Available.
Checking UDP port 6667... Available.
Checking TCP port 1883... Available.
Checking TCP port 8886... Available.
Starting AP in a screen......
Starting web server in a screen
Starting Mosquitto in a screen
Starting PSK frontend in a screen
Starting Tuya Discovery in a screen
======================================================
IMPORTANT

Connect any other device (a smartphone or something) to the WIFI vtrust-flash
This step is IMPORTANT otherwise the smartconfig may not work!
Put your IoT device in autoconfig/smartconfig/pairing mode (LED will blink fast). This is usually done by pressing and holding the primary button of the device
Make sure nothing else is plugged into your IoT device while attempting to flash.
Press ENTER to continue

======================================================
Starting smart config pairing procedure
Waiting for the device to install the intermediate firmware
Put device in EZ config mode (blinking fast)
Sending SSID                  vtrust-flash
Sending wifiPassword
Sending token                 00000000
Sending secret                0101
................
SmartConfig complete.
Auto retry in 1s. ...............................................................................................................
Device did not appear with the intermediate firmware
Check the *.log files in the scripts folder
Do you want to try flashing another device? [y/N] N
Cleaning up...
Closing AP
Exiting...
pi@raspberrypi:~/tuya-convert $
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
And now the log files:
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
smarthack-mqtt.log
smarthack-psk.log
smarthack-udp.log
smarthack-web.log
smarthack-wifi.log
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
Thank you so much !  Hopefully even if nothing can be done due to incompatibility, this info will help make adjustments to a newer version of tuya-convert.  Cheers.

See #135


Np 10940/model ipgeolocationinfo

Any reason not to place GeolocationSupport under net/ip?  It's all related.

no, i can move it

Any reason not to place GeolocationSupport under net/ip? It's all related.


[Accessibility]A11y_VSCode_ViewExtensions_Keyboard:Tooltip is not provided for the button(Besides to content written under treeview)

Environment Details:
VSCode Version : 1.24.1
OS Version : WIN10
Additional Details:
Keyboard,MAS1.1.1
Repro Steps:

Launch VS Code.
Navigate to View(Alt+V) menu option and select "Extensions" from dropdown.
Navigate to setting  button under treeview.
Check whether Tooltip provided.

Actual:
Tooltip is not provided to setting button.
Expected:
Tooltip should be provided to button.
Recommendations:
Refer below link which is repository of bug fixes code snippets:
https://microsoft.sharepoint.com/teams/msenable/mas/pages/browse-fixes.aspx
User Impact:
Keyboard user unable to know more  information about the button.
MAS Reference:
https://microsoft.sharepoint.com/:w:/r/teams/msenable/_layouts/15/WopiFrame.aspx?sourcedoc={8492c4eb-c179-40ae-8777-cd044ed725a2}
Does this issue occur when all extensions are disabled?: Yes
Attachment For Reference
[Accessibility]A11y_VSCode_ViewExtension_Keyboard3.pptx

This is a simple adding of a .title on a div in the extensions view.
Assigning to July, @sandy081 let me know if you need help


Add new test case: install helm chart with git repo

Test locally:
2021-01-12T00:47:03.144+0800	INFO	handler/testcase.go:49	Start running release-004
2021-01-12T00:47:03.960+0800	INFO	handler/stage.go:148	pezhang - URL link: https://raw.githubusercontent.com/open-cluster-management/multicloud-operators-subscription-release/release-004/examples/test-guestbook-git.yaml
2021-01-12T00:47:03.960+0800	INFO	handler/stage.go:150	applyed helmrelease with git install test: guestbook deploy of test case release-004 on cluster hub
2021-01-12T00:47:08.960+0800	INFO	handler/expectation.go:11	running test id release-004
2021-01-12T00:47:08.960+0800	DEBUG	handler/expectation.go:27	running test id release-004, expectation should have a helmrelease on hub
2021-01-12T00:47:08.960+0800	DEBUG	handler/expectation.go:42	pezhang-pezhang byname
2021-01-12T00:47:08.962+0800	INFO	pkg/matcher.go:46	found helmrelease-git-test/guestbook of kind HelmRelease
2021-01-12T00:47:08.962+0800	INFO	pkg/matcher.go:47	pezhang: found helmrelease-git-test/guestbook of kind HelmRelease
2021-01-12T00:47:08.962+0800	DEBUG	handler/expectation.go:27	running test id release-004, expectation should have a deployment on hub
2021-01-12T00:47:08.962+0800	DEBUG	handler/expectation.go:42	pezhang-pezhang byname
2021-01-12T00:47:08.963+0800	INFO	pkg/matcher.go:46	found helmrelease-git-test/nginx-deployment of kind deployment
2021-01-12T00:47:08.963+0800	INFO	pkg/matcher.go:47	pezhang: found helmrelease-git-test/nginx-deployment of kind deployment
2021-01-12T00:47:08.963+0800	INFO	handler/testcase.go:117	Done running release-004
2021-01-12T00:47:19.833+0800	INFO	handler/stage.go:187	successfully deleted resource helmrelease with git install test: guestbook deploy on cluster hub

Test locally:
2021-01-12T00:47:03.144+0800	INFO	handler/testcase.go:49	Start running release-004
2021-01-12T00:47:03.960+0800	INFO	handler/stage.go:148	pezhang - URL link: https://raw.githubusercontent.com/open-cluster-management/multicloud-operators-subscription-release/release-004/examples/test-guestbook-git.yaml
2021-01-12T00:47:03.960+0800	INFO	handler/stage.go:150	applyed helmrelease with git install test: guestbook deploy of test case release-004 on cluster hub
2021-01-12T00:47:08.960+0800	INFO	handler/expectation.go:11	running test id release-004
2021-01-12T00:47:08.960+0800	DEBUG	handler/expectation.go:27	running test id release-004, expectation should have a helmrelease on hub
2021-01-12T00:47:08.960+0800	DEBUG	handler/expectation.go:42	pezhang-pezhang byname
2021-01-12T00:47:08.962+0800	INFO	pkg/matcher.go:46	found helmrelease-git-test/guestbook of kind HelmRelease
2021-01-12T00:47:08.962+0800	INFO	pkg/matcher.go:47	pezhang: found helmrelease-git-test/guestbook of kind HelmRelease
2021-01-12T00:47:08.962+0800	DEBUG	handler/expectation.go:27	running test id release-004, expectation should have a deployment on hub
2021-01-12T00:47:08.962+0800	DEBUG	handler/expectation.go:42	pezhang-pezhang byname
2021-01-12T00:47:08.963+0800	INFO	pkg/matcher.go:46	found helmrelease-git-test/nginx-deployment of kind deployment
2021-01-12T00:47:08.963+0800	INFO	pkg/matcher.go:47	pezhang: found helmrelease-git-test/nginx-deployment of kind deployment
2021-01-12T00:47:08.963+0800	INFO	handler/testcase.go:117	Done running release-004
2021-01-12T00:47:19.833+0800	INFO	handler/stage.go:187	successfully deleted resource helmrelease with git install test: guestbook deploy on cluster hub

Close this one as I used the branch "release-xxxx". Will send the patch in another PR with different branch.

Close this one as I used the branch "release-xxxx". Will send the patch in another PR with different branch.


Unable to disable framework

Dear team,
I couldn't seem to find a function to disable the framework once Apptentive.register(with:) is called.
My assumption is if I pass in an invalid “configuration” parameter when calling “Apptentive.register(with:)”, it’ll probably disable the SDK?
Would be helpful if you could provide some insight?
Thanks!

Hi @sima-11. Great question. Let me see if I can help track down an answer.
Stay tuned.

Hi @sima-11 . I spoke with my team to be sure, and by design, after the Apptentive.register(with:) method has been called, the SDK cannot be disabled. It will continue to run until the app fully exits.
Can you tell me a bit more about why you're trying to disable the SDK? Though we don't support doing that, I may be able to offer help solving whatever problem you're trying to solve.

Thanks @CaseyApptentive. It's basically required by TCF 2.0, and we need to enable/disable the SDK at runtime, ideally without force quitting our app.

Thanks for the clarification @sima-11. Are you or your team also discussing this with Pat from Apptentive's Customer Success team? I work closely with him and want to be sure we're not crossing wires.
If it's okay with you and you are working with him, let's use that thread moving forward so everyone is on the same page.

Hi @CaseyApptentive, yes, I've also had some conversation with Pat, and he mentioned he'll have discussion with the team. 👍

Thanks, @sima-11. I'm going to close this issue for now to help keep discussion streamlined.


Write a Java program to print numbers from 1 to n without using a loop

Description
Write a Java program to print numbers from 1 to n without using a loop
Input  : 5
Output : 1 2 3 4 5

How to contribute

Save the solution in PrintNumbersFrom1ToNWithoutUsingALoop.java file
Add PrintNumbersFrom1ToNWithoutUsingALoop.java file in program/print-numbers-from-1-to-n-without-using-a-loop folder

!assign

Hey @dineshlalam15, this issue is already assigned to @mail2poonam89 !!!
Please choose another issue.
Thanks for your interest in contributing to this project.


How to build a new rankprofile in yql

I noticed that by using pyvespa its easy to build a new rankprofile when building yql like that:

But if we are using c++ to send the yql to vespa, is it possible to send a new rankprofile to vespa in yql?
Thanks for your reply

I think I misunderstood the usage of the pyvespa method and We must deploy after creating a new rankprofile

Yes, ranking expressions are compiled in various ways and it would in general be too slow to send them with the query.


Stamina can raise when running.

Hello !
Thank you for your work on Cogito, I am loving it <3.
I played a bit around with this wonderful groundwork and I guess I found a bug.

Install cogito.
Run the COGITO_01_Demo.tscn
Run around to drain your stamina.
3.1) Stand still to wait for your stamina to increase.
3.2) When the stamina starts to increse, start running again.
3.3) Watch stamina raising while running.
3.4) Stamina starts draining again after it reaches its "full state"

Maybe see the video attached:
https://github.com/Phazorknight/Cogito/assets/87974401/0cad7c3f-0738-400f-88f3-63be2f510513

Hm, I remember this bug but I thought I fixed it.
Could you confirm with version of COGITO you are running?

Hi, this was on Version 202401.13 (from the assetlib) but on version BETA 202402.00 from github, it behaves as it should :)
Thank you !


build Corda 3.x compatible version of obligation-j, as well as a 4.x compatible one.

See https://r3-cev.atlassian.net/browse/ENT-3664 for rationale.

https://docs.corda.net/app-upgrade-notes.html#cordapp-upgrade-finality-flow-ref
The previous FinalityFlow API is insecure. It doesn’t have a receive flow, so requires counterparty nodes to accept any and all signed transactions that are sent to it, without checks. It is highly recommended that existing CorDapps migrate away to the new API, as otherwise things like business network membership checks won’t be reliably enforced.


v2.4.0 of DoctrineExtensions released

+1

@stof can you please review, merge and tag 1.2.0?

+1, i think this needs to be done soon

@guilhermeblanco It may be preferable to put a less restrictive constraint: ~2.3.1,<2.5 and tagger the bundle to v1.1.1.
@stof Is it possible to make this change? Because there is a fix in the 2.4 version for Doctrine 2.5.0.

+1

:+1:

+1

:+1:

:+1:

+1

@stof any chance to have this PR merged? :) We are all anxious to update ;)

@stof could you update?

+1

+1

+1

+1

:+1:

:+1: The bug fix on Slug unique_base for relation is waiting : )

@stof Are you waiting for other PRs to be merged prior to this one?
Any sign of life would be appreciated...


[bug] the nz-select border color style problem via mouse hover when control invalid

I'm submitting a...

[x] Bug report

Current behavior

gif:

a demo page.

sorry, my mistake.


Acrolinx quality improvements: cprofile.md

Learn Build status updates of commit 27680f2:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

WindowsServerDocs/administration/windows-commands/cprofile.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the learn.microsoft.com contributor guidesPost your question in the Learn support channel

#assign: @robinharwood, @Xelu86
Can you review the proposed changes? IMPORTANT: When the changes are ready for publication, add a #sign-off comment to signal that the PR is ready for the review team to merge.
#label:"aq-pr-triaged"
@MicrosoftDocs/public-repo-pr-review-team

As mentioned, I'm closing this PR down.


Rubocop and Ruby style improvements

This PR encompasses a bunch of commits that fix Ruby style issues as found by Rubocop. I've also added a rubocop check to travis-ci.
I tried to keep these as one commit per file to make the changes easier to read and revert if need be.
These changes have all been tested in Vagrant on Debian, Ubuntu, CentOS, and Windows agents.

Looks good and tests pass for me


Feature request: conversion of TypeScript type declarations into Ceylon dynamic interface type declaration

Type declarations have been compiled for a large number of Javascript interfaces here:
https://github.com/borisyankov/DefinitelyTyped
It would be really useful for Ceylon to support the TypeScript type definition syntax, either for conversion into a dynamic interface definition, or (better) so that this type information can be used directly without conversion.

There was an earlier feature request for this some time ago: https://github.com/ceylon/ceylon-js/issues/217 but seemingly it was closed because other features made it unnecessary for the person who opened it.
But we still want some kind of TypeScript support, so it's good to again have an issue tracking that intention.

TSD has been deprecated in favor of Typings:
https://github.com/DefinitelyTyped/tsd/issues/269
https://github.com/typings/typings


How to add a new field in textfield data tab formio Angular?

After drag textfield component this is how it appears, is it possible to add extra field in data tab? And assign a calculated value to textfield.

We're currently addressing a backlog of GitHub issues, and as part of this effort, some inactive issues may be marked as closed. This isn't a dismissal, but a step toward more efficient tracking.
If you feel the issue is still relevant, please re-open and we'll ensure it gets the attention it deserves. Your understanding is appreciated as we work to enhance our open-source responsiveness.


More flexible read format, works for MadGraph with LesHouchesEventsv3

also fix for colors in ttH

Please check decaying POWHEG BOX V1 and V2 LHE files before merging this commit.
Thanks,
Ulascan

I tested for POWHEG v1 and v2, JHUGen pre- and post-4.8 (when the format changed), and several madgraph versions.  It works for all of them.


Data Explorer section enhancement

Use generic term for database and collection instead of example name that's not referenced anywhere else. Updated terms used for graphs and collection to reflect actual UI changes on portal. Added additional filter example and note.

@vitoc,
Thanks for your contribution as a Microsoft full-time employee or intern. You do not need to sign a CLA.
Thanks,
Microsoft Pull Request Bot

@vitoc : Thanks for your contribution to the Azure documentation! The author, @dennyglee, has been notified to review your proposed change.

Is your screenshot showing a Cosmos DB account/instance that's created with SQL (DocumentDB) as an API option? The suggested change in this PR is for the documentation that relates to the Gremlin (graph) option. If you create a new Cosmos DB account/instance with this graph option, you will find that the pane shows "GRAPHS" as per the attached screenshot.

Oh sorry, I had been looking at an old deployment vs current one.  thanks for clarifying. LGTM

@dennyglee - To resolve this pull request, please add an appropriate comment so that automation can take appropriate action. Thanks.

#sign-off


Update deprecated references

validators.Required() is marked as deprecated in favor of validators.DataRequired() and will be remove in WTForms 3.

:+1:

I have no idea how wtforms works but I guess @ThiefMaster knows what this is about. Thanks @gaetan-petit!

There's DataRequired (non-falsy value after processed by the field, so it would not work for an integer field where 0 is allowed) and InputRequired (any value submitted, i.e. 'foo' in request.form)


auto_optimize now properly chooses GPUAuto expansion for reduce nodes

This PR adds very little code to auto_optimize.py. The added code ensures that the GPUAutoExpansion gets used for reduce nodes, when auto_optimize is used to optimize the produced SDFG.
Before, it would always choose CUDA (device) even though the GPUAuto expansion is higher in the implementation_prio.

@hodelcl any update?

I think I spotted the bug, but I am unsure about how to resolve it. It is in this line where we set the size of the grid:
https://github.com/spcl/dace/blob/262b8c1b2c3f447bda33ebaac7b6b65055e1726d/dace/libraries/standard/reduction_planner.py#L269
If shape[contiguous_dimension] is an integer, this works fine, even if it is for example 4. Then this will generate dim3(1, 1, 1) for the grid size in the CUDA code. However, if shape[contiguous_dimension] is a symbol (e.g. M), this will generate this grid size: dim3(int_ceil((M / 32), 1), 1, 1). And if M is again 4, then this will be dim3(0, 1, 1), which does not work.

I think I spotted the bug, but I am unsure about how to resolve it. It is in this line where we set the size of the grid:
https://github.com/spcl/dace/blob/262b8c1b2c3f447bda33ebaac7b6b65055e1726d/dace/libraries/standard/reduction_planner.py#L269
If shape[contiguous_dimension] is an integer, this works fine, even if it is for example 4. Then this will generate dim3(1, 1, 1) for the grid size in the CUDA code. However, if shape[contiguous_dimension] is a symbol (e.g. M), this will generate this grid size: dim3(int_ceil((M / 32), 1), 1, 1). And if M is again 4, then this will be dim3(0, 1, 1), which does not work.

Clearly then it should use ‘symbolic.int_ceil(…, 32)’ in the Python code. If it’s numeric it will evaluate and if not it will at least stay 1

Thanks for the suggestion, it works now!

@tbennun The PR is now ready for a review.


Short link return localhost not domain.

Hi,
I use this container behind apache proxy in domain e.g. godbolt.example.com.
Short link option generate link: "http://localhost:10240/z/caM764"
How fix this?

Hi @kolos666
thanks for opening a ticket. It looks like a specific proxy configuration issue.
By looking at the original source code, the share Link functionality uses the windows.location.origin, which in your case might be wrong, in case you don't set the specific header.
Without knowing your proxy setup / configuration, I would suggest to set the "hostname" value in the docker-compose.yml file and define it as
hostname: godboldt.example.com
and set as proxy pass the correct headers.
I hope it helps.


Markdown parser and generic AST model #442

commonmark-java is used as the basis for the solution.
resolves #442
Signed-off-by: aserkes<EMAIL_ADDRESS>

Can you create a new dedicated module for this. This should be standalone and usable outside of the archetype engine.
Also, please try to follow the Helidon coding style  as much as possible (e.g. getter/setter)

Done.


use ~~~ rather than ```

This keeps this page in line with other pages. Also it was causing issues in a downstream project.

@Graeme-Miller Can you change the other places where ``` is used also

Good catch, kramdown uses ~ instead of `
LGTM

@tbouron @Graeme-Miller https://kramdown.gettalong.org/parser/gfm.html

@m4rkmckenna updated


jsDeliver CDN - old release of semantic ui

On the recipes page of the documentation http://semantic-ui.com/introduction/advanced-usage.html under the CDN Releases section you will see a link pointing to the 2.2.7 release of the semantic ui but the latest one on the jsDeliver CDN is 2.2.6.

jsDelivr has a bot which automatically fetches the latest releases.
I've filed a separate issue there to report this error.
https://github.com/jsdelivr/jsdelivr/issues/15731

Seems it's fixed 😉


Don't show warn message for wildcard dns resolution in case of vsock mode

In case of vsock mode we add the router controller which add the route entry to /etc/hosts as soon as there is any route created. As part of our default/legacy mode we have a check which verify if dns settings are as expected to resolve wildcard dns entry using foo.apps-crc.testing . Either we change it to something known like canary-openshift-ingress-canary.apps-crc.testing which we put in /etc/hosts before hand or just add another check which will make sure in case of vsock this is not executed.

The goal of the check is to make sure DNS resolution is set up as expected with default networking. I would just skip it when the routes controller is in use. If knowing if the routes controller is in use is not possible, then we can skip it when vsock is used.


Update UG

Codecov Report

Merging #40 (e95d443) into master (ada5e82) will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master      #40   +/-   ##
=========================================
  Coverage     73.31%   73.31%
  Complexity      433      433
=========================================
  Files            74       74
  Lines          1334     1334
  Branches        140      140
=========================================
  Hits            978      978
  Misses          317      317
  Partials         39       39

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 ada5e82...e95d443. Read the comment docs.


Research does not exists

I tried to get some researches using /tc research but whatever I write it says Research does not exists. can I get any list of all researches with working names?

In a test world...
do /tc research @p all
then do /tc research @p list

That will give you a list of researches that you can do and you can use all of them.

thx but I found those names in TC files


Provide us with your github repository

Dear participant.
Please provide us with the link to the github repository that you will be using during the hackfest.
Thanks !
Bruce

Hello - could you respond with your ORCID please ?

https://github.com/damilare88/gwas_usecases

Ok, thanks


add Not Contains

As a developer I would like if NotContains were a ConditionOperator so that I can create exclusion queries.

I'll look into it.

I have the code ready to go.  Can I open a Pull Request?

Getting 403 attempting to push new branch to this repo.

You could, but I have an idea that you might like and alot might too, what about h aving some kind of negate option, that regardless of the ConditionalOperator, you can just negate it.
So the condition operator would be Contains with the negate option to true?

This is sufficient for my use case:
            else if (conditionOperator == ConditionOperators.NotContains)
            {
                if (member.Type == stringType && stringComparision.HasValue)
                    ret = Expression.GreaterThan(Expression.Not(Expression.Call(member, Constants.IndexOfMethod, constant, Expression.Constant(stringComparision.Value))), Expression.Constant(-1));
                else
                    ret = Expression.Not(Expression.Call(member, Constants.ContainsMethod, constant));
            }

Have tests also.

You could, but I have an idea that you might like and alot might too, what about h aving some kind of negate option, that regardless of the ConditionalOperator, you can just negate it.
So the condition operator would be Contains with the negate option to true?
This means you could do StartsWith with a negate, == !StartsWith

This proposal may be a breaking change for others .. as there is a NotEqualTo which would then become obsolete, etc....

(Would suggest to keep the cleaner naming.  That's one of the things I like about this repo.)

I guess, for now I was trying to keep the condition operators based on the expression library, I like the idea of negating as well, I can probably add both. It shouldn't take too long to run unit testing on it either, I'll see what I can do, maybe check again in 1-2 hours?

OK.  Again I have the code and Unit Tests but completely understand if you are not open to Pull Requests at this time.
Will check back later.  Thanks for all your hard work on this project!

diff --git a/PoweredSoft.DynamicLinq.Test/ShortcutTests.cs b/PoweredSoft.DynamicLinq.Test/ShortcutTests.cs
index 9025dda..63156b2 100644
--- a/PoweredSoft.DynamicLinq.Test/ShortcutTests.cs
+++ b/PoweredSoft.DynamicLinq.Test/ShortcutTests.cs
@@ -170,5 +170,29 @@ namespace PoweredSoft.DynamicLinq.Test
var q3b = Persons.AsQueryable().Where(t => t.LastName.Contains("ee") || t.LastName.Contains("ar"));
QueryableAssert.AreEqual(q3, q3b);
}
+

   [TestMethod]

   public void NotContains()

   {

       var q1 = Persons.AsQueryable().Query(t => t.NotContains("LastName", "ee"));

       var q1b = Persons.AsQueryable().Where(t => !t.LastName.Contains("ee"));

       QueryableAssert.AreEqual(q1, q1b);

       var q2 = Persons.AsQueryable().Query(t => t.NotContains("LastName", "ee").AndNotContains("FirstName", "vid"));

       var q2b = Persons.AsQueryable().Where(t => !t.LastName.Contains("ee") && !t.FirstName.Contains("vid"));

       QueryableAssert.AreEqual(q2, q2b);

       var q3 = Persons.AsQueryable().Query(t => t.NotContains("LastName", "ee").OrNotContains("LastName", "ar"));

       var q3b = Persons.AsQueryable().Where(t => !t.LastName.Contains("ee") || !t.LastName.Contains("ar"));

       QueryableAssert.AreEqual(q3, q3b);

   }

   [TestMethod]

   public void ContainsAndNotContains()

   {

       var q1 = Persons.AsQueryable().Query(t => t.Contains("LastName", "s").AndNotContains("LastName", "r"));

       var q1b = Persons.AsQueryable().Where(t => t.LastName.Contains("s") && !t.LastName.Contains("r"));

       QueryableAssert.AreEqual(q1, q1b);

   }

}
}
diff --git a/PoweredSoft.DynamicLinq.Test/StringComparision.cs b/PoweredSoft.DynamicLinq.Test/StringComparision.cs
index a6163a1..431d054 100644
--- a/PoweredSoft.DynamicLinq.Test/StringComparision.cs
+++ b/PoweredSoft.DynamicLinq.Test/StringComparision.cs
@@ -60,6 +60,22 @@ namespace PoweredSoft.DynamicLinq.Test
QueryableAssert.AreEqual(a, b, "CaseInsensitive");
}

   [TestMethod]

   public void NotContains()

   {

       IQueryable<MockPersonObject> a, b;

       // case sensitive.

       a = Persons.AsQueryable().Query(t => t.NotContains("FirstName", "vi", stringComparision: null));

       b = Persons.AsQueryable().Where(t => !t.FirstName.Contains("vi"));

       QueryableAssert.AreEqual(a, b, "CaseSensitive");

       // not case sensitive

       a = Persons.AsQueryable().Query(t => t.NotContains("FirstName", "VI", stringComparision: StringComparison.OrdinalIgnoreCase));

       b = Persons.AsQueryable().Where(t => t.FirstName.IndexOf("VI", StringComparison.OrdinalIgnoreCase) == -1);

       QueryableAssert.AreEqual(a, b, "CaseInsensitive");

   }

   [TestMethod]
   public void StartsWith()
   {

diff --git a/PoweredSoft.DynamicLinq/Constants.cs b/PoweredSoft.DynamicLinq/Constants.cs
index 8e5c05e..f2f23ca 100644
--- a/PoweredSoft.DynamicLinq/Constants.cs
+++ b/PoweredSoft.DynamicLinq/Constants.cs
@@ -16,6 +16,7 @@ namespace PoweredSoft.DynamicLinq
LessThan,
LessThanOrEqual,
Contains,

   NotContains,
   StartsWith,
   EndsWith,
   In,

diff --git a/PoweredSoft.DynamicLinq/Fluent/Where/WhereBuilder.shortcuts.cs b/PoweredSoft.DynamicLinq/Fluent/Where/WhereBuilder.shortcuts.cs
index 658f42b..88c80b0 100644
--- a/PoweredSoft.DynamicLinq/Fluent/Where/WhereBuilder.shortcuts.cs
+++ b/PoweredSoft.DynamicLinq/Fluent/Where/WhereBuilder.shortcuts.cs
@@ -97,6 +97,17 @@ namespace PoweredSoft.DynamicLinq.Fluent
=> Or(path, ConditionOperators.Contains, value, convertStrategy: convertStrategy, collectionHandling: collectionHandling, stringComparision: stringComparision);
#endregion

   #region not contains

   public WhereBuilder NotContains(string path, object value, QueryConvertStrategy convertStrategy = QueryConvertStrategy.ConvertConstantToComparedPropertyOrField, QueryCollectionHandling collectionHandling = QueryCollectionHandling.Any, StringComparison? stringComparision = null)

       => And(path, ConditionOperators.NotContains, value, convertStrategy: convertStrategy, collectionHandling: collectionHandling, stringComparision: stringComparision);

   public WhereBuilder AndNotContains(string path, object value, QueryConvertStrategy convertStrategy = QueryConvertStrategy.ConvertConstantToComparedPropertyOrField, QueryCollectionHandling collectionHandling = QueryCollectionHandling.Any, StringComparison? stringComparision = null)

       => And(path, ConditionOperators.NotContains, value, convertStrategy: convertStrategy, collectionHandling: collectionHandling, stringComparision: stringComparision);

   public WhereBuilder OrNotContains(string path, object value, QueryConvertStrategy convertStrategy = QueryConvertStrategy.ConvertConstantToComparedPropertyOrField, QueryCollectionHandling collectionHandling = QueryCollectionHandling.Any, StringComparison? stringComparision = null)

       => Or(path, ConditionOperators.NotContains, value, convertStrategy: convertStrategy, collectionHandling: collectionHandling, stringComparision: stringComparision);

   #endregion

   #region starts with
   public WhereBuilder StartsWith(string path, object value, QueryConvertStrategy convertStrategy = QueryConvertStrategy.ConvertConstantToComparedPropertyOrField, QueryCollectionHandling collectionHandling = QueryCollectionHandling.Any, StringComparison? stringComparision = null)
       => And(path, ConditionOperators.StartsWith, value, convertStrategy: convertStrategy, collectionHandling: collectionHandling, stringComparision: stringComparision);

diff --git a/PoweredSoft.DynamicLinq/Helpers/QueryableHelpers.cs b/PoweredSoft.DynamicLinq/Helpers/QueryableHelpers.cs
index d9985a6..d4d3f04 100644
--- a/PoweredSoft.DynamicLinq/Helpers/QueryableHelpers.cs
+++ b/PoweredSoft.DynamicLinq/Helpers/QueryableHelpers.cs
@@ -61,6 +61,13 @@ namespace PoweredSoft.DynamicLinq.Helpers
else
ret = Expression.Call(member, Constants.ContainsMethod, constant);
}

       else if (conditionOperator == ConditionOperators.NotContains)

       {

           if (member.Type == stringType && stringComparision.HasValue)

               ret = Expression.GreaterThan(Expression.Not(Expression.Call(member, Constants.IndexOfMethod, constant, Expression.Constant(stringComparision.Value))), Expression.Constant(-1));

           else

               ret = Expression.Not(Expression.Call(member, Constants.ContainsMethod, constant));

       }
       else if (conditionOperator == ConditionOperators.StartsWith)
       {
           if (member.Type == stringType && stringComparision.HasValue)

diff --git a/PoweredSoft.DynamicLinq.Test/ShortcutTests.cs b/PoweredSoft.DynamicLinq.Test/ShortcutTests.cs
index 9025dda..63156b2 100644
--- a/PoweredSoft.DynamicLinq.Test/ShortcutTests.cs
+++ b/PoweredSoft.DynamicLinq.Test/ShortcutTests.cs
@@ -170,5 +170,29 @@ namespace PoweredSoft.DynamicLinq.Test
             var q3b = Persons.AsQueryable().Where(t => t.LastName.Contains("ee") || t.LastName.Contains("ar"));
             QueryableAssert.AreEqual(q3, q3b);
         }
+
+        [TestMethod]
+        public void NotContains()
+        {
+            var q1 = Persons.AsQueryable().Query(t => t.NotContains("LastName", "ee"));
+            var q1b = Persons.AsQueryable().Where(t => !t.LastName.Contains("ee"));
+            QueryableAssert.AreEqual(q1, q1b);
+
+            var q2 = Persons.AsQueryable().Query(t => t.NotContains("LastName", "ee").AndNotContains("FirstName", "vid"));
+            var q2b = Persons.AsQueryable().Where(t => !t.LastName.Contains("ee") && !t.FirstName.Contains("vid"));
+            QueryableAssert.AreEqual(q2, q2b);
+
+            var q3 = Persons.AsQueryable().Query(t => t.NotContains("LastName", "ee").OrNotContains("LastName", "ar"));
+            var q3b = Persons.AsQueryable().Where(t => !t.LastName.Contains("ee") || !t.LastName.Contains("ar"));
+            QueryableAssert.AreEqual(q3, q3b);
+        }
+
+        [TestMethod]
+        public void ContainsAndNotContains()
+        {
+            var q1 = Persons.AsQueryable().Query(t => t.Contains("LastName", "s").AndNotContains("LastName", "r"));
+            var q1b = Persons.AsQueryable().Where(t => t.LastName.Contains("s") && !t.LastName.Contains("r"));
+            QueryableAssert.AreEqual(q1, q1b);
+        }
     }
 }
diff --git a/PoweredSoft.DynamicLinq.Test/StringComparision.cs b/PoweredSoft.DynamicLinq.Test/StringComparision.cs
index a6163a1..431d054 100644
--- a/PoweredSoft.DynamicLinq.Test/StringComparision.cs
+++ b/PoweredSoft.DynamicLinq.Test/StringComparision.cs
@@ -60,6 +60,22 @@ namespace PoweredSoft.DynamicLinq.Test
             QueryableAssert.AreEqual(a, b, "CaseInsensitive");
         }

+        [TestMethod]
+        public void NotContains()
+        {
+            IQueryable<MockPersonObject> a, b;
+
+            // case sensitive.
+            a = Persons.AsQueryable().Query(t => t.NotContains("FirstName", "vi", stringComparision: null));
+            b = Persons.AsQueryable().Where(t => !t.FirstName.Contains("vi"));
+            QueryableAssert.AreEqual(a, b, "CaseSensitive");
+
+            // not case sensitive
+            a = Persons.AsQueryable().Query(t => t.NotContains("FirstName", "VI", stringComparision: StringComparison.OrdinalIgnoreCase));
+            b = Persons.AsQueryable().Where(t => t.FirstName.IndexOf("VI", StringComparison.OrdinalIgnoreCase) == -1);
+            QueryableAssert.AreEqual(a, b, "CaseInsensitive");
+        }
+
         [TestMethod]
         public void StartsWith()
         {
diff --git a/PoweredSoft.DynamicLinq/Constants.cs b/PoweredSoft.DynamicLinq/Constants.cs
index 8e5c05e..f2f23ca 100644
--- a/PoweredSoft.DynamicLinq/Constants.cs
+++ b/PoweredSoft.DynamicLinq/Constants.cs
@@ -16,6 +16,7 @@ namespace PoweredSoft.DynamicLinq
         LessThan,
         LessThanOrEqual,
         Contains,
+        NotContains,
         StartsWith,
         EndsWith,
         In,
diff --git a/PoweredSoft.DynamicLinq/Fluent/Where/WhereBuilder.shortcuts.cs b/PoweredSoft.DynamicLinq/Fluent/Where/WhereBuilder.shortcuts.cs
index 658f42b..88c80b0 100644
--- a/PoweredSoft.DynamicLinq/Fluent/Where/WhereBuilder.shortcuts.cs
+++ b/PoweredSoft.DynamicLinq/Fluent/Where/WhereBuilder.shortcuts.cs
@@ -97,6 +97,17 @@ namespace PoweredSoft.DynamicLinq.Fluent
             => Or(path, ConditionOperators.Contains, value, convertStrategy: convertStrategy, collectionHandling: collectionHandling, stringComparision: stringComparision);
         #endregion

+        #region not contains
+        public WhereBuilder NotContains(string path, object value, QueryConvertStrategy convertStrategy = QueryConvertStrategy.ConvertConstantToComparedPropertyOrField, QueryCollectionHandling collectionHandling = QueryCollectionHandling.Any, StringComparison? stringComparision = null)
+            => And(path, ConditionOperators.NotContains, value, convertStrategy: convertStrategy, collectionHandling: collectionHandling, stringComparision: stringComparision);
+
+        public WhereBuilder AndNotContains(string path, object value, QueryConvertStrategy convertStrategy = QueryConvertStrategy.ConvertConstantToComparedPropertyOrField, QueryCollectionHandling collectionHandling = QueryCollectionHandling.Any, StringComparison? stringComparision = null)
+            => And(path, ConditionOperators.NotContains, value, convertStrategy: convertStrategy, collectionHandling: collectionHandling, stringComparision: stringComparision);
+
+        public WhereBuilder OrNotContains(string path, object value, QueryConvertStrategy convertStrategy = QueryConvertStrategy.ConvertConstantToComparedPropertyOrField, QueryCollectionHandling collectionHandling = QueryCollectionHandling.Any, StringComparison? stringComparision = null)
+            => Or(path, ConditionOperators.NotContains, value, convertStrategy: convertStrategy, collectionHandling: collectionHandling, stringComparision: stringComparision);
+        #endregion
+
         #region starts with
         public WhereBuilder StartsWith(string path, object value, QueryConvertStrategy convertStrategy = QueryConvertStrategy.ConvertConstantToComparedPropertyOrField, QueryCollectionHandling collectionHandling = QueryCollectionHandling.Any, StringComparison? stringComparision = null)
             => And(path, ConditionOperators.StartsWith, value, convertStrategy: convertStrategy, collectionHandling: collectionHandling, stringComparision: stringComparision);
diff --git a/PoweredSoft.DynamicLinq/Helpers/QueryableHelpers.cs b/PoweredSoft.DynamicLinq/Helpers/QueryableHelpers.cs
index d9985a6..d4d3f04 100644
--- a/PoweredSoft.DynamicLinq/Helpers/QueryableHelpers.cs
+++ b/PoweredSoft.DynamicLinq/Helpers/QueryableHelpers.cs
@@ -61,6 +61,13 @@ namespace PoweredSoft.DynamicLinq.Helpers
                 else
                     ret = Expression.Call(member, Constants.ContainsMethod, constant);
             }
+            else if (conditionOperator == ConditionOperators.NotContains)
+            {
+                if (member.Type == stringType && stringComparision.HasValue)
+                    ret = Expression.GreaterThan(Expression.Not(Expression.Call(member, Constants.IndexOfMethod, constant, Expression.Constant(stringComparision.Value))), Expression.Constant(-1));
+                else
+                    ret = Expression.Not(Expression.Call(member, Constants.ContainsMethod, constant));
+            }
             else if (conditionOperator == ConditionOperators.StartsWith)
             {
                 if (member.Type == stringType && stringComparision.HasValue)

If you already did the hard work I don't see why not, are you saying the repository doe snot allow for pull requests?

Correct.  It seems to not allow creation of new branch.  I get 403 / Unauthorized after submitting my Git-hub creds.  /shrug

If you use the Pull Request menu does it work?

That led me in the right direction.  Thanks!  Had to fork.

I am still thinking of supporting both after merging with your code, what you think of this as well?
[TestMethod]
public void NotContains()
{
var q1 = Persons.AsQueryable().Query(t => t.Contains("LastName", "ee", negate: true));
var q1b = Persons.AsQueryable().Where(t => !t.LastName.Contains("ee"));
QueryableAssert.AreEqual(q1, q1b);
}

Yeah!  I think it would be very-appropriate to support both.

Both seems to pass all unit testing, i'll complete some last checks, and push up a version on nuget.

@Jon-Galloway the nuget is getting updated, once you confirm all is good, I will close the issue.

Looks good!  Got 1.1.8.  Thanks again.


⚠ Jenkins Plugins Artifactory has degraded performance

In 9e60fdd, Jenkins Plugins Artifactory (https://get.jenkins.io/plugins/artifactory/) experienced degraded performance:

HTTP code: 200
Response time: 1420 ms

Resolved: Jenkins Plugins Artifactory performance has improved in 2f216d9 after 47 minutes.


Github Community Health Files Support

Feature Request
Is your feature request related to a problem? Please describe.
I have a org where i already have around 10+ repo and i its hard to maintain config.yml all the repo in a org.
Describe the solution you'd like
A Better idea is to support Github Community Health Files Support where i can create a config.yml inside .github repo in my org and make it work for all repose inside my org

That is supported via https://github.com/probot/probot-config, see the WIP for a usage example: https://github.com/wip/app/blob/f7482eda54e31e03a72f398335ac389235347d54/lib/pro/get-config.js#L3-L9
Does that work for you?

@gr2m thanks for the information. i did checked Porbot-Config Before opening this issue but i it din't work out for me. and i am confused on how to use it its not clear

@gr2m also some probot wants its own file instead of config.yml in that case how i can use probot-config would you mind providing an example ?

The WIP apps uses .github/wip.yml, see the example linked above
const probotConfig = require('probot-config')
let config = await probotConfig(context, 'wip.yml')

Replace wip.yml with whatever you like, it has to be located in the .github folder, even if you have a .github repository

@gr2m i am not creating a bot instead i am using a bot which requires configs inside .github folder in each repo and i am asking if its possible to put in a common place and use it.

Only the maintainer of the app can add support for that. The "Github Community Health Files Support" are limited to a pre-defined set of files by GitHub, we do not have control over that. I would suggest to contact the app maintainer, there is nothing we can do I’m afraid


Suggested fix for issue #67

Compatible Node version(s) should be stated in pre-requisites

Thanks for the suggestion @rohancragg! We recently went through and updated all the apps to include the same engine settings:
  "engines": {
    "npm": ">=8.0.0 <9.0.0",
    "node": ">=16.0.0 <17.0.0"
  }

Will close this PR since changes are already in place, but please open a new issue or PR as you find items. Thanks!


Update to latest maven-ant-plugin

jffi uses some deprecated config options for the maven-antrun-plugin
These options are now removed in the latest version of antrun-plugin, so this change removes such usages. This allows jffi to move to the latest version of the antrun-plugin.
See the advice for moving to antrun-plugin 3.0.0 here: https://maven.apache.org/plugins/maven-antrun-plugin/

Cool, thanks!


[auth] Allow to construct CredentialsFile from plain &str

Hi there! :)
Context
I would be super nice to be able to construct CredentialsFile from plain &str instead of having to pass a file path (eventually have to create a file) or set an environment variable.
Let's say you have the credentials json content already, it's not very handy to put its content to a file or to set an environment variable in order to construct CredentialsFile.
Proposal
Having a new function in CredentialsFile taking a plain &str (meant to be credentials json content) and returning a CredentialsFile:
pub async fn new_from_str(str: &str) -> Result<Self, Error> {
    Ok(serde_json::from_str(str)?)
}

One can then use the API this way:
const CREDENTIALS_FILE_CONTENT: &str = "<CREDENTIALS_FILE_CONTENT_GOES_HERE>";

let credentials_file = CredentialsFile::new_from_str(CREDENTIALS_FILE_CONTENT).await;

Thanks a lot :)

Merged ! https://github.com/yoshidan/google-cloud-rust/pull/201


simply pytorch install by using pytorch-nightly instead of source

simply pytorch install by using pytorch-nightly instead of source

Patching and trying instructions again (or did you already try?).

I haven't tried.

if you are using cuda9, it is: conda install pytorch-nightly cuda90 -c pytorch

You can also try seeing if
conda uninstall -y caffe2 caffe2-cuda8.0-cudnn7
conda install -y -c caffe2 caffe2-cuda8.0-cudnn7

before trying to install ONNX helps

@theweiho, same issue.

@jmp84 where's the segfault?
pytorch-nightly does not include Caffe2
It is safe to clone Pytorch and only build Caffe2 from it and get the Pytorch installation from conda; this will save all the time needed to build Pytorch. You can't do this with the Caffe2 conda packages because they are not built with Aten. The pytorch-caffe2_cuda8.0_cudnn7 builds in the caffe2 conda channel are built with Aten, and also include Pytorch, but the Pytorch included from these builds will be slightly different than the one from pytorch-nightly (though these differences should not affect you)

@anderspapitto @bddppq - James Cross mentioned y'all helped him debug the ONNX compatibility/segfault issue - and that it may have been due to differences in gcc compiler versions or something?

we got something to work, but there wasn't full clarity into exactly what the issue had been.
If you're able to make changes and things work, then you're probably fine - the crashes we were running into were very upfront

Fixed in https://github.com/pytorch/translate/commit/7ba9dfcb877c645e8f8f91bfca6ab6ab77dc8ca3 by @theweiho


Unknown public key version: 3?

Thanks for your hard work!
It's truly great!
I ran into an issue with a new onboarding as their key is not supported. I get an error stating "Unknown public key version: 3".
The public key the partner has provided has the version text of "version: PGP 6.5.8" in the header.
Any clues?

Hmm, I guess this is an obscure PGP option that the Go OpenPGP libraries doesn't support.  Can you give more context, when and where did this happen?


[Feature]

Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
Describe the solution you'd like great to see
A clear and concise description of what you want to happen.
Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
Additional context
Add any other context or screenshots about the feature request here.

This seems to have been opened accidentally, I am going to close it now :yellow_heart:

Sure, go ahead and close it


[relates #439] Simplify CXF path exposure

Refer to this link for build results (access rights to CI server needed):
https://fabric8-ci.fusesource.com/job/wildfly-camel-pullreq/321/
Test PASSed.


Automatic changelog

Started using semantic-release for automatic changelog generation

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Lara can pickup items hidden by Raising Block 1

In this case Lara can pickup item that is hidden by Raising Block 1 while standing on top of it. She will do the pedestal pickup animation also.

Compiled level here:
https://github.com/MontyTRC89/TombEngine/files/10249672/Tower.zip

Original issue.


Not spammy when using ESP32-WROOM-32

I've tested this on several iOS 16 devices (one is using iOS 16.2 and the others are using the latest iOS 16.6.1) using an ESP32-WROOM-32 and it does not produce the same spamming effect seen in your demo video. I've reviewed the datasheets of the ESP32-WROOM-32 and the ESP32-C3 and it turns out the former only supports up to BLE 4.2 whereas the latter can support up to BLE 5 (and a bunch more features like simultaneous advertising and scanning and advertising extensions). It's very likely that the ESP32-WROOM-32 is encountering hardware limitations and that's why I can't spam the test devices.
So yeah, if anyone is going to use this tool, make sure to either use the same ESP32-C3 used by the developer or at least any microcontroller with BLE 5 support.
ESP32-WROOM-32 Bluetooth Specs:

ESP32-C3 Bluetooth Specs:

Yeah it's able to set the TxAdd parameter to random

That's odd, if it is the same BLE packet I would imagine it doesn't matter what the source device is. What iPhone / iOS are you testing it with?
Unfortunately I only have ESP32-C3s from AirM2M with me, but I can try and target the same iOS device and see the results.

The only iPhone I have on-hand right now is an iPhone X running iOS 14.8. I'm pretty sure this is way more stubborn compared to iOS 16 devices because the only notification I keep seeing from this is the spoofed "password autofill" for Apple TV (that is index 6 in the short devices array). Sometimes it pops up other Apple TV notifs like Apple TV setup and color balance but it's rare. It never pops up notifs related to audio devices.
As for the iOS 16 devices,
I don't know what iPhone my friend was using exactly (most likely iPhone 13 or 14 because it had three lenses) but it was surely running iOS 16.2. His phone got the popup notifs way more frequently but still I wouldn't consider it "spammy". There were times when the notifs just stopped popping up. The iOS 16.6.1 devices I tested were literally iPhones displayed in a store and they just brought up the popups for the first couple of seconds but then stopped getting them. Still not the spammy effect.

Hmm, let me try in an Apple store as well and get back to you.

I use Arduino IDE to program ESP32-WROOM-32 and it can be used normally

@h0e4a0r1t are you observing the "spammy" popups on an iPhone with the ESP32-WROOM-32? If so, could you share the iPhone version / iOS version as well

Yes, I can get "spam" popping up on my iPhone. My phone model is iPhone 13/iOS version is 16.6.1

Testing with ESP32-WROOM-32 and iPhone 13 / iOS 16.6. Unfortunately not "spammy" enough.

Yes, I can get "spam" popping up on my iPhone. My phone model is iPhone 13/iOS version is 16.6.1

Could you show us a video, how "spammy" it is?
I tried with RPi + BT Dongle and ESP32-WROOM-32. Both versions didn't get any spam effect on my iPhone 13 mini.
After closing one or two popups nothing happend.

Which ESP32 is it? If it has a BLE radio it could work, but I've not tested it.

Module Wifi BLE ESP32 Node MCU LuaNode32 CP2102

Looking at some of the boards w/ a generic google search, seems it is a ESP32-WROOM-32. From what others have mentioned in the thread, it may not work as well as an ESP32-C3.
If you live in Asia, and have some kind of Taobao forwarding service available, ESP32C3 on their is only like 13RMB, would recommend it. (And if you get multiple, the effect is even better).

ESP32C3 is only 9.9RMB now in China

u should rename it into esp32-c3 cause esp32 is something different

u should rename it into esp32-c3 cause esp32 is something different

Technically it should work on any ESP32 with a BLE stack. I've only tested on the C3 because that's all I have.

however i think it not "spammy" enough

Which iPhone / iOS? And what distance?

however i think it not "spammy" enough

Which iPhone / iOS? And what distance?

13pro17.0.2 and ipadpro m2 ios16.6.1

Spammy enough with my wemos_d1_mini32 (which uses an ESP32-WROOM-32) when within one foot of the iPhone. Works less often from 2 feet away. So I suspect it is just a power output issue.

Same here, iPhone 12 Pro iOS 17.0.3 with ESP32-WROOM-32, spammy when literally touching the phone, but if it's like 20-30 cm away I am only getting the Autofill notification.

Same here, iPhone 12 Pro iOS 17.0.3 with ESP32-WROOM-32, spammy when literally touching the phone, but if it's like 20-30 cm away I am only getting the Autofill notification.

This behavior might be attributed to adjustments by Apple. I remember reading somewhere that they were altering the required RX power detected in order to present these notifications - it would make sense that the Apple TV one is exempt as it is unlikely to be used in close proximity to the device whereas new headphones / other devices would generally be first used right next to device. I have no evidence to support this but am doing some of my own testing with ESP-WROOM-32.

It would make sense that the Apple TV one is exempt as it is unlikely to be used in close proximity to the device whereas new headphones / other devices would generally be first used right next to device.

Very interesting hypothesis. In my random testing at apple stores, I've also observed that the Apple tv popup is the most "easily spread", i.e. over distances or 4-5+ metres, all iphones pop it up pretty quickly.
I will try this out as well and see if it gives better results "at a distance".

I’ve met the same question, the board is Esp32c3 brought from LUATOS TaoBao store.
I tested 3 devices ipad9, iphone14pm, iphone13, all of them running ios 17.1.
At the first time flashing and running, everything works fine and spammy as expected.
But after reconnect the wire on the esp32, the iphone seems only show apple tv related messages and the ipad only shows the earphone related.
Change distance does not help, and the apple tv messages have a longer distance to be received, but obviously lower frequency than the earphone messages.
I tried re-flashing or reset the board but still the same perform.
Just feel weird cause the first running was normal, and the advertising behavior of the board seems normal as well.
I guess may be iphone and ipad can selectivity ignore some of these messages.

> But after reconnect the wire on the esp32
You mean just take off power and turn it back on?
Anecdotally, in Apple Store I have seen most success with Apple TV messages. Maybe I can add an option to prioritize this guy.

yep, just take it off and replug the usbc, then couldn't function spamming the iphone devices except apple tv related.
I've tried some steps to reset or reflash but still only the first time seems useful.

I’ve met the same question, the board is Esp32c3 brought from LUATOS TaoBao store. I tested 3 devices ipad9, iphone14pm, iphone13, all of them running ios 17.1. At the first time flashing and running, everything works fine and spammy as expected. But after reconnect the wire on the esp32, the iphone seems only show apple tv related messages and the ipad only shows the earphone related. Change distance does not help, and the apple tv messages have a longer distance to be received, but obviously lower frequency than the earphone messages. I tried re-flashing or reset the board but still the same perform. Just feel weird cause the first running was normal, and the advertising behavior of the board seems normal as well. I guess may be iphone and ipad can selectivity ignore some of these messages.

Me too, my board model is ESP-WROOM-32. I have tested it on multiple Apple devices, but every time it only pops up the Apple TV notification, and only once.  It only reappears after locking and unlocking the screen again.

I tried it with my esp32-wroom on  some devices (iPhone and iPad),and it would only get Apple TV related popups,even the distance is closed enough . When it's far enough like 30cm or so,it won't show anything .

It works on my ESP-WROOM-32 but it's far from being spammy. Only AirPods trigger notifications, and only once.I didn't even see Apple TV notifications.

It works on my ESP-WROOM-32 but it's far from being spammy. Only AirPods trigger notifications, and only once.I didn't even see Apple TV notifications.

Correction: It only triggers when the screen is on or off, and only with AirPods.

This also occurred when I previously tried using the Android app "nRF Connect." The same issue was present.

I've just tried my existing ESP32-C3's, and on one iPhone w/ iOS 17.0.3 it is only popping up Apple TV / Migrate Phone number etc. notifications, and just once for each.
A lock+unlock of the screen will allow them to come up again.
Did not see any for Airpods / Beats. I will test a few more iPhones tonight, but seems Apple may have patched it a bit (at least reduced the frequency).

FYI: A user confirmed it working on iPhone 14 Pro Max (running iOS 17.2 b3)
See: #19

I've just tried my existing ESP32-C3's, and on one iPhone w/ iOS 17.0.3 it is only popping up Apple TV / Migrate Phone number etc. notifications, and just once for each.
A lock+unlock of the screen will allow them to come up again.
Did not see any for Airpods / Beats. I will test a few more iPhones tonight, but seems Apple may have patched it a bit (at least reduced the frequency).

Was working on ESP cores & stumbled across your project here.  In terms of "real world" application, I believe you all are looking 4-this.....  ESP32-C3-WROOM-02U Dev board.  Find it, closely read the datasheet 4-this Dev board.  The C6 series is better but the optimal configuration isn't offered in  NA yet.

I'm using iPhone 11 with iOS 16.5 alongside the ESP-WROOM-32, and I'm experiencing a less aggressive spamming of advertisements compared to what was demonstrated in the video. It raises the question of whether this discrepancy could be attributed to the specific ESP32 board I'm using, as previously mentioned. Interestingly, Apple TV windows briefly appeared a few times, but there were no subsequent interactions, not even with Airpods. I'm curious if this is solely a board-related issue or if there are other potential factors contributing to this behavior.

I'm using iPhone 15 Pro Max with IOS 17.2.1. My dev board is also ESP32-WROOM-32, I can use Arduino IDE to upload to the dev board. It can successfully run on my phone.


Is there any reason why I can't map the (useless!) "§/±" onto the (useful!) "`/~" key?

Everything else seems to work fine except mapping the most useless key on a UK keyboard "§/±" onto something much more useful "`/~".
Elements seem to think that the "§" maps onto the first item underneath the "Japanese" section in the "From key" list (sorry, my Japanese is non-existent, so I have no idea what the characters are saying).

Any idea if this is something I am doing wrong, of it's a known problem? Thanks in advance.

Same question here. Tried to remap today, ended up exactly where the author of this topic.

This worked for me:

However, you must keep the "Virtual Keyboard" setting to Ansi. Swapping it to ISO breaks the mapping for me (Must be a bug)

@kenlim this worked for me! thank you very much!

Awesome! This worked for me as well. Thanks!


Add support for multiple firewalls

As mentioned in #13, I've extended this bundle to record the firewall's name and fully qualified class name of the User object when adding log entries.
This was necessary for us as we use separate firewalls for public and admin users, and we wanted DoctrineAuditBundle to be able to audit changes to entities made by both 'types' of user.
This pull request adds these fields to the audit log entries and makes them visible in the Twig views.
If you'd prefer to turn this functionality on and off with some sort of configuration, I could look at doing that, but it has no adverse side effects if only one firewall is being used.

I'm not sure what versions of symfony/security-bundle this project currently relies upon (should add this as a dependency in , but this pull request will only work on Symfony 3.2+ due to the need for accessing the firewall's FirewallConfig.

I've added a show_user_firewall config option that's disabled by default, which affects whether the firewall name/user class is shown in the template.
Have also added a note in the docs. Feel free to amend anything.

I've been thinking about just how "optional" this feature can be with regards to users who already have the database tables set up and are using this bundle.
The display of the columns in the Twig templates is easily made optional, as I've done, but actually making the entire feature optional is harder. The creation of the 2 new columns will require a schema diff to be generated and migrated by users once they've updated the bundle.
The alternative to this would be to read the config parameter in all cases, and only store this information if it's explicitly turned on by the user (README would explain that enabling this option requires a database migration). I'm not aware of a way to enable/disable properties of an entity depending on configuration, however - there is perhaps a way to do this that I don't know about, or it may be an antipattern.

I'm also concerned about users already having audit tables set up.
As you figured out, running a doctrine:schema:update --force right after upgrading the bundle does the trick. Generating a new migration thanks to doctrine:migrations:diff then doctrine:migrations:migrate also does the trick.
First I thought we could trigger this with a composer post-upgrade-cmd but I'm not sure it will fit every deployment scenario / be flexible enough. So, I think it may be better to let the end-user choose how to proceed but this way, we must have a documentation section/warning describing the upgrade path. What do you think?

@danabrey I close this PR as master branch now supports multiple firewalls. Please feel free to try out master branch and provide feedback.
Do not forget to run bin/console audit:schema:update command to upgrade your audit tables right after updating the bundle.


Navbar doesn't collapse on mobile

I wanted to take a quick look, and the navbar doesn't seem to collapse back on the documentation page.

Can you try running  in production mode also?  I'm having se dev mode issues
On Tue, 21 Feb 2023, 02:36 Arjun S, @.***> wrote:

I wanted to take a quick look, and the navbar doesn't seem to collapse
back on the documentation page.
—
Reply to this email directly, view it on GitHub
https://github.com/astro-bootstrap/astro-bootstrap/issues/12, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/ARTWGAZH37VUT5HG6SMVSUTWYOFRFANCNFSM6AAAAAAVCAVS5E
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

I realized the problem only exists when on this specific page https://astro-bootstrap.github.io/components/components/navbar/

I had a look and every page seems to break. Looks like the modal js plugin is being called as well. I think its vite js bunding is causing the issue. If you can help, please let me know

@arjunindia  The collapse issue should be fixed could you please test it in your use case for me.
I now have issue with the dropdown - I have it working with the local preview of the built files, but its broken on github pages.
Could you let me know how you go with dropdown on navbar?


fix(pdk) ensure that vault.init is not called multiple times

Summary
@ms2008 pointed on PR #8945 that we may have potential issue in Vault that init method or vault strategy (plugin) may be called multiple times. This commit makes is sure that it should not happen anymore.

+1 granted tests pass

+1 granted tests pass

Thanks, I will make it sure they pass before merging. Thank you!


start implement feature to use @Name annotation as meta-annotation

Thank you for opening a pull request and contributing to AsciidoctorJ!
Please take a bit of time giving some details about your pull request:
Kind of change

[ ] Bug fix
[x] New non-breaking feature
[ ] New breaking feature
[ ] Documentation update
[ ] Build improvement

Description
What is the goal of this pull request?
See #897
How does it achieve that?
Improve method getName in JavaExtensionRegistryImpl, to support recursive search for an @Name annotation.
Are there any alternative ways to implement this?
maybe, we can discuss it.
Are there any implications of this pull request? Anything a user must know?
I only provide currently a new test in the class BlockMacroRegistrationTest, i think we have to add it to the other RegistrationTests also.
Issue
Fixes #897
Release notes
Name annotation can used as a meta-annotation

Hi @uniqueck, thanks for your PR.
I like that idea.
I am just unsure about the best behavior for handling multiple annotations.
Just picking the first one might lead to surprises, I am not aware that there are any guarantees on the order of annotations returned by Class.getAnnotations().
I wonder if it would make more sense to throw an exception in case of multiple names, or register them under all names.

Ok for that i have to investigate for another solution. We collect all Name annotations and then we register this extensions with all names.

@robertpanzer can you review it again, please?

Hi @robertpanzer,
it's done. I used a set and remove unnecessary code.

Awesome! Could you please add an entry to the CHANGELOG.adoc?

I can update the change log as well.
In the next step the other annotations like @Location, @Format, @Contexts, etc should be supported as meta annotations too.

Thanks for the changelog, i forgot that in my daily business. I start implement an feature for the other annotations. I think we can also support an annotation for required libraries. So you can combine a Name annotation and a annotation like RequiredLibrary. With the ability of meta annotation you can create an annotation like that. RequireLibraryAsciidoctorDiagram. What do you think about that?


Disable RooFit banner with __ROOFIT_NOBANNER option

[x] I read the conda-forge documentation and could not find the solution for my problem there.

Issue:
Any use of RooFit will cause it to print the RooFit copyright banner to screen.
$ python -c 'from ROOT import RooFit'  # Get banner

RooFit v3.60 -- Developed by Wouter Verkerke and David Kirkby
                Copyright (C) 2000-2013 NIKHEF, University of California & Stanford University
                All rights reserved, please read http://roofit.sourceforge.net/license.txt

This is generally not desirable. However, the banner can be disabled for a build of ROOT by adding the RooFit compile option __ROOFIT_NOBANNER as input to the CMAKE_CXX_FLAGS CMake option. So for example, this might look like adding
diff --git a/recipe/build.sh b/recipe/build.sh
index 047e3a8..56896f5 100755
--- a/recipe/build.sh
+++ b/recipe/build.sh
@@ -194,6 +194,7 @@ CMAKE_PLATFORM_FLAGS+=("-Dmlp=ON")
 CMAKE_PLATFORM_FLAGS+=("-Dopengl=ON")
 CMAKE_PLATFORM_FLAGS+=("-Dpythia8=ON")
 CMAKE_PLATFORM_FLAGS+=("-Droofit=ON")
+CMAKE_PLATFORM_FLAGS+=("-DCMAKE_CXX_FLAGS=-D__ROOFIT_NOBANNER")
 CMAKE_PLATFORM_FLAGS+=("-Droot7=ON")
 CMAKE_PLATFORM_FLAGS+=("-Dspectrum=ON")
 CMAKE_PLATFORM_FLAGS+=("-Dsqlite=ON")

just after
https://github.com/conda-forge/root-feedstock/blob/d70394c84e874a5f71f98fa62b9b1d3659b0a91f/recipe/build.sh#L196
The resulting build now longer has the banner printed
$ python -c 'from ROOT import RooFit' # No banner now

c.f. https://gitlab.cern.ch/atlas-amglab/atlstats/-/merge_requests/63 for more details.
If this is of interest, I have this already implemented in my fork and can open a PR.

Environment (conda list):

Not relevant as feature request.
$ conda list

Details about  conda and system ( conda info ):

Not relevant as feature request.
$ conda info

I completely agree with you that this banner is unreasonably verbose.
Have you tried proposing upstream to change the default? (or maybe even remove it entirely)

I completely agree with you that this banner is unreasonably verbose.

:rocket:

Have you tried proposing upstream to change the default? (or maybe even remove it entirely)

Yeah, I'm going to attempt to do this, but I figured that will for sure not be fast and to get approved and in. So while I work on that (and trying to write up a bit of an argument for it beyond "this isn't necessary anymore") I thought I'd see if you all wanted it.

@chrisburr ROOT Issue 9954 is open now. :slightly_smiling_face:

Closing as this was added to the build of 6.26.0


python311Packages.awscrt: 0.19.1 -> 0.19.2

Changelog: https://github.com/awslabs/aws-crt-python/releases/tag/v0.19.2
Description of changes

Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
23.11 Release Notes (or backporting 23.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 260652 run on x86_64-linux 1

7 packages built:

awscli2
awscli2.dist
liquidsoap
python310Packages.awscrt
python310Packages.awscrt.dist
python311Packages.awscrt
python311Packages.awscrt.dist


ie8 compatibility bug

.sys-msg {
    border: 1px solid #cccccc\0;
}

After I using cleancss -c 'ie8' test.css , this is the result.
.sys-msg{border:1px solid}

It's a bug indeed.

Will be released as part of 3.2 in the coming days.


change logo from svg to png

The logo has been adjusted such that all white sections are now transparent


Declare specific variables as "unused"

Declaring specific variables as "unused" instead of turning off the hinting of any unused variable altogether (unused: false) would be useful. Similar to how "global" works.
E.g., if I have a function argument that should be there in the interface, but (maybe temporarily) in the particular implementation that argument has no effect and is not used, it gets marked as a potential error.

You have a couple options for achieving this result in JSHint today. For an
unused binding named foo, you can silence warnings by:

declaring the variable as exported (e.g. /* exported foo */)
applying the void operator to the binding (e.g. void foo;)

The first option will only work for top-level unused bindings, so it may not be
applicable in all cases (besides also being semantically inaccurate). I
personally prefer using the second option because it is a more explicit signal.
The void statement tells the reader, "yes, we recognize that this binding is
unused," without requiring additional knowledge of JSHint's features
(potentially hidden away in some separate .jshintrc file).
That said, neither approach causes JSHint to enforce that the binding go
unused. That doesn't sound like a requirement from your use case, though, so
this is probably fine. Does that work for you?

Sorry for not replying!
I'm not sure what the particular case was when I wrote the post, but here is an example I can think of right now:
/* global jQuery, console */
jQuery.each([52, 97], function (index, value)
{
	console.log(index);
});

JSHint gives me: tet.js: line 2, col 40, 'value' is defined but never used.
How should I include void there? Tried in code, in comments in a couple of ways, but that didn't help.

Oh, I got it. I have to write void value as the first thing in the function body. It worked, thanks!
I'm not that familiar with what is void's (original?) meaning, but if this seems like a natural use of void to you, then probably it's a good solution.
Thank you!

Sure thing! I'd like to point out that the behavior of jQuery's each method
is not dependent on the number of formal parameters in the provided predicate
function. So for the example you've provided here, you could also simply omit
the second parameter altogether.
Of course, there are other libraries that do respond to function length.
Hopefully they do so in a way where the "extra" parameter(s) are strictly
necessary, but if they don't, void is a good choice for this (although a
patch to the library in question might be a good idea, too!)


align with grpc base/balancer to trigger reconnect in Idle state (when we move to gRPC 1.41+)

When a k8s rolling restart occurs (e.g.  kubectl rollout restart deployment gazette) we see the broker's IP addresses change and the consumers need to be restarted to re-establish their GRPC connections. Without a restart of the consumers they have their default service SubConns waiting forever in the connectivity Idle state on their open Read GRPCs.
This change adds extra Idle state handling to the dispatcher's UpdateSubConnState method to align with the GRPC base balancer's implementation (https://github.com/grpc/grpc-go/blob/master/balancer/base/balancer.go#L180) where it tries to connect if in the Idle state.
The end result of this change is that connectivity is re-established from the consumers to the brokers (after the brokers have restarted) but these new connections often go via the default service SubConn and so do not honor the intra-zone routing preferences (as the Pick method is called without a Route) as outlined below. The changes do not appear to affect the existing setting up of SubConns and improve the robustness under restarts (though not perfect from a zone perspective).
Prior to the change:
After initial system bringup or restarting of the consumers the GRPC connections are following the expected intra-zone routing (in the case below the consumer is in zone: us-central1-b):
2023/03/16 04:25:08.256374	111.300601	/protocol.Journal/Read
04:25:08.256376	 .     2	... RPC: to <IP_ADDRESS>:8080 deadline:none
04:25:08.256382	 .     6	... Pick(Route: members:<zone:"us-central1-a" suffix:"gazette-756b95d7d4-jbr4k" > members:<zone:"us-central1-b" suffix:"gazette-756b95d7d4-hbzqx" > members:<zone:"us-central1-c" suffix:"gazette-756b95d7d4-htr8b" > primary:2 endpoints:"http://<IP_ADDRESS>:8080" endpoints:"http://<IP_ADDRESS>:8080" endpoints:"http://<IP_ADDRESS>:8080" , ID: ) => zone:"us-central1-b" suffix:"gazette-756b95d7d4-hbzqx" (READY)
04:25:08.256405	 .    23	... sent: journal:"arize-edge/records/part=000" offset:6687 block:true do_not_proxy:true

Perform a kubectl rollout restart deployment gazette and the open Read GRPCs remain in the Idle state. Sometimes a few (~25% in my case) of the SubConns do successfully navigate the transition. Those that do were found to have received a NOT_JOURNAL_BROKER response in their broker/client/reader.go Read method which made them pass in a full Route to the Pick routine (not shown below as this case all Read GRPCs went Idle). This non-empty Route often is composed of new and old broker information though similar to https://github.com/gazette/core/issues/215 but potentially that was a temporary situation that was happening when the Pick was triggered.
2023/03/16 04:30:36.264197	300.525850	/protocol.Journal/Read
04:30:36.264201	 .     4	... RPC: to <nil> deadline:none
04:30:36.264208	 .     7	... Pick(Route: primary:-1 , ID: ) => (IDLE)
2023/03/16 04:30:36.246371	300.543793	/protocol.Journal/Read
04:30:36.246375	 .     4	... RPC: to <nil> deadline:none
04:30:36.246383	 .     8	... Pick(Route: primary:-1 , ID: ) => (IDLE)

After the change:
(ignore that extra DJD traces that dump the dispatcher structures)
Again at initial system bringup or restarting of the consumers the GRPC connections are following the expected intra-zone routing (in the case below the consumer is in zone: us-central1-c):
2023/03/16 03:27:01.396172	517.010541	/protocol.Journal/Read
03:27:01.396176	 .     4	... RPC: to <IP_ADDRESS>:8080 deadline:none
03:27:01.396181	 .     4	... DJD Pick idConn: map[{Zone: Suffix:}:{subConn:0xc00b9c9608 mark:3}], connID: map[0xc00b9c9608:{Zone: Suffix:}], connState: map[0xc00b9c9608:READY], zone: us-central1-c
03:27:01.396188	 .     8	... DJD1 id: {Zone:us-central1-c Suffix:gazette-756b95d7d4-4f2hk}
03:27:01.396191	 .     3	... Pick(Route: members:<zone:"us-central1-a" suffix:"gazette-756b95d7d4-mq8kf" > members:<zone:"us-central1-b" suffix:"gazette-756b95d7d4-lkvkk" > members:<zone:"us-central1-c" suffix:"gazette-756b95d7d4-4f2hk" > primary:2 endpoints:"http://<IP_ADDRESS>:8080" endpoints:"http://<IP_ADDRESS>:8080" endpoints:"http://<IP_ADDRESS>:8080" , ID: ) => zone:"us-central1-c" suffix:"gazette-756b95d7d4-4f2hk" (READY)
03:27:01.396192	 .      	... DJD11
03:27:01.396228	 .    37	... sent: journal:"arize-edge/records/part=000" offset:5201 block:true do_not_proxy:true
03:28:47.935838	106.539610	... recv: offset:4458 write_head:5201 fragment:<journal:"arize-edge/records/part=000" begin:4458 end:520
03:28:47.935888	 .    50	... recv: offset:4458 write_head:5201 fragment:<journal:"arize-edge/records/part=000" begin:4458 end:520

Perform a kubectl rollout restart deployment gazette and the open Read GRPCs reattach to the brokers.
A few of them that went through the NOT_JOURNAL_BROKER handling were given a non-empty route and reattach directly to a broker pod. Note in the case below the first Pick route entry (gazette-756b95d7d4-mq8kf)  is actually in the process of being replaced but is not chosen due its zone. I think a GRPC can cross zones if the new broker for that zone is not present in the list at the time of the Pick call.
2023/03/16 03:38:00.196490	6.145368	/protocol.Journal/Read
03:38:00.196494	 .     5	... RPC: to <IP_ADDRESS>:8080 deadline:none
03:38:00.196501	 .     7	... DJD Pick idConn: map[{Zone: Suffix:}:{subConn:0xc00b9c9608 mark:25} {Zone:us-central1-c Suffix:gazette-574d6db9d6-mnwrs}:{subConn:0xc00b490648 mark:24}], connID: map[0xc00b490648:{Zone:us-central1-c Suffix:gazette-574d6db9d6-mnwrs} 0xc00b9c9608:{Zone: Suffix:}], connState: map[0xc00b490648:READY 0xc00b9c9608:READY], zone: us-central1-c
03:38:00.196509	 .     8	... DJD1 id: {Zone:us-central1-c Suffix:gazette-574d6db9d6-mnwrs}
03:38:00.196510	 .     1	... DJD2
03:38:00.196919	 .    44	... (7 events discarded)
03:38:00.197589	 .   670	... DJD Pick idConn: map[{Zone: Suffix:}:{subConn:0xc00b9c9608 mark:25} {Zone:us-central1-c Suffix:gazette-574d6db9d6-mnwrs}:{subConn:0xc00b490648 mark:24}], connID: map[0xc00b490648:{Zone:us-central1-c Suffix:gazette-574d6db9d6-mnwrs} 0xc00b9c9608:{Zone: Suffix:}], connState: map[0xc00b490648:READY 0xc00b9c9608:READY], zone: us-central1-c
03:38:00.197593	 .     4	... DJD1 id: {Zone:us-central1-c Suffix:gazette-574d6db9d6-mnwrs}
03:38:00.197594	 .     1	... Pick(Route: members:<zone:"us-central1-a" suffix:"gazette-756b95d7d4-mq8kf" > members:<zone:"us-central1-b" suffix:"gazette-574d6db9d6-8j575" > members:<zone:"us-central1-c" suffix:"gazette-574d6db9d6-mnwrs" > endpoints:"http://<IP_ADDRESS>:8080" endpoints:"http://<IP_ADDRESS>:8080" endpoints:"http://<IP_ADDRESS>:8080" , ID: ) => zone:"us-central1-c" suffix:"gazette-574d6db9d6-mnwrs" (READY)
03:38:00.197594	 .      	... DJD11
03:38:00.197645	 .    51	... sent: journal:"arize-edge/pre-production-records/part=000" block:true do_not_proxy:true

Most of the open Read GRPCs actually have the Pick method called with no route and connect via the default service SubConn (10.44.x.x address) which does not trigger any intra-zone rule handling to occur.
2023/03/16 03:38:00.835925	5.504142	/protocol.Journal/Read
03:38:00.835928	 .     2	... RPC: to <IP_ADDRESS>:8080 deadline:none
03:38:00.835931	 .     3	... DJD Pick idConn: map[{Zone: Suffix:}:{subConn:0xc00b9c9608 mark:25} {Zone:us-central1-c Suffix:gazette-574d6db9d6-mnwrs}:{subConn:0xc00b490648 mark:24}], connID: map[0xc00b490648:{Zone:us-central1-c Suffix:gazette-574d6db9d6-mnwrs} 0xc00b9c9608:{Zone: Suffix:}], connState: map[0xc00b490648:READY 0xc00b9c9608:READY], zone: us-central1-c
03:38:00.835933	 .     3	... DJD1 id: {Zone: Suffix:}
03:38:00.835935	 .     2	... Pick(Route: primary:-1 , ID: ) => (READY)
03:38:00.835936	 .      	... DJD11
03:38:00.835959	 .    23	... sent: journal:"arize-edge/pre-production-records/part=003" block:true do_not_proxy:true

This change is

Just an FYI. Only the dispatcher.go changes relate to this PR. We somewhat polluted this PR by merging in open PR #331 (go.mod, go.sum) into our fork (as we required it also in our product). It should have been done on a new branch on our fork.

Thanks, sorry for the long delay here. We've got a further PR that builds upon this PR to update gRPC to 1.59, that we've been testing. We're planning to land both this and that PR on Monday.


Merge release into main to resolve conflicts

Bumps vendor/postgres I reverted update to vendor/postgres because some tests have failed

To resolve conflicts in #2113 (there are a few commits in release that were not cherry-picked back in main):
Conflicting files
.circleci/config.yml
.github/workflows/testing.yml
vendor/postgres

Why does resolving conflicts in that PR require changes in 'main'?

It seems that I triggered CircleCI jobs accidentally and cannot merge this PR anymore. Can someone pick it up or resolve conflicts in some other way?

It seems that I triggered CircleCI jobs accidentally and cannot merge this PR anymore

Just checked the branch protection rules and I don't see that any Circle are now required for merging, only GH Actions

Superseded by https://github.com/neondatabase/neon/pull/2115


bug: superjson not transforming Dates for trpc mutations

Provide environment information
System:
OS: macOS 14.5
CPU: (8) arm64 Apple M2
Memory: 72.06 MB / 16.00 GB
Shell: 5.9 - /bin/zsh
Binaries:
Node: 20.14.0 - ~/.nvm/versions/node/v20.14.0/bin/node
npm: 10.7.0 - ~/.nvm/versions/node/v20.14.0/bin/npm
pnpm: 9.5.0 - ~/.nvm/versions/node/v20.14.0/bin/pnpm
bun: 1.1.12 - ~/.bun/bin/bun
Watchman: 2<IP_ADDRESS> - /opt/homebrew/bin/watchman
Describe the bug
when performing a trpc mutation, the superjson transformer on the server/api side does not appear to transform serialized dates back into date objects, even though network logs show it is serializing it properly on the client side. It just stays as a string. This results in a zod error if the mutation has a zod input validator that specifies "z.date()" (as well as any other error you might expect down the line from having the wrong type).
When using a trpc query with the same data (just an object with a date in it), superjson serializes and parses it without issue on both client and server.
I expanded the transformer initialization in /packages/api/src/trpc.ts to explicitly log the input values superjson recieves and returns in the transformer chain and it does appear that, given the same input from the client, in both queries and mutations trpc is providing the exact same data into the transformer argument, but for a reason I can't understand superjson seems to selectively transform only the queries and leaves the mutations unchanged.
Link to reproduction
https://github.com/McCulloughRT/date-example
To reproduce
See the linked repo, taking note of apps/nextjs/src/app/dateTest and packages/api/src/router/dateTest
Loading the page will issue a query that takes a date object as a param, validated in the router by zod to be a date successfully. Clicking the button will issue a mutation that takes a date object as a param, failing validation in the router to be a date.
Additional information
It's unclear to me if superjson is the issue, or trpc, or something I haven't thought of. I'm not sure how superjson could tell the difference between a query and a mutation if all the transformer is passing in is identical objects from trpc.

did you try repro this in a minimal trpc setting?
just trying to narrow down the search before digging in

Here's a minimal version that does not experience this issue using the trpc "getting started" as a guide, but with superjson and the package versions currently specified in the t3-turbo package.json:
https://github.com/McCulloughRT/trpc-test
So it's something about the way they're coming together in t3-turbo?

Building on this, here is a minimal example, working fine, using create-next-app and version matching trpc and superjson and tanstack/react-query to t3-turbo:
https://github.com/McCulloughRT/next-trpc

@McCulloughRT I stumbled upon this issue because I was experiencing the same thing locally (I haven't yet tried anything actually deployed).
What fixes it (as a short term solution) for me is to switch to the non-edge environment by commenting out  export const runtime = "edge"; in route.ts. It looks like you could have the same problem, since you have that line in your repro repo but not in the working one. Is it the same for you?
@juliusmarminge I tried digging a little deeper but without much success, it sounds very similar to https://github.com/flightcontrolhq/superjson/issues/242 that has been fixed a while ago.
System:
OS: macOS 14.5
CPU: (8) arm64 Apple M1 Pro
Memory: 87.97 MB / 32.00 GB
Shell: 5.9 - /bin/zsh
Binaries:
Node: 20.16.0 - ~/.nvm/versions/node/v20.16.0/bin/node
npm: 10.8.1 - ~/.nvm/versions/node/v20.16.0/bin/npm
pnpm: 9.6.0 - ~/.nvm/versions/node/v20.16.0/bin/pnpm
Watchman: 2<IP_ADDRESS> - /opt/homebrew/bin/watchman
"@trpc/client": "11.0.0-rc.364",
"@trpc/react-query": "11.0.0-rc.364",
"@trpc/server": "11.0.0-rc.364",
"next": "^14.2.3",
"superjson": "2.2.1",
"zod": "^3.23.6"

@juliusmarminge I've encountered the same issue and disabling edge runtime like @aldebout suggested does indeed work. Do you have any ideas how to properly fix this?

Same issue here. After some investigation, I noticed this only happens in mutations, so when the superjson handles it from the request body. Queries work well (though I've noticed that the value passed to transformer.deserialize contains Date instances already).
For now I'll swap to devalue as stated in this comment https://github.com/trpc/trpc/issues/4515#issuecomment-1604630092
I would propose to that the API package exports the transformer from a module (ex: @acme/api/transformer) so it can be used in all places (api, nextjs and expo). This way swapping transformers would be as easy as change it in that file. I'll create a PR.


remove older versions of elemental

remove older versions of elemental
@jordojordo , will this sync automatically? meaning, will it remove these versions and generate the chart again?

@aalves08 This will not remove the versions that have already been synced. But I'm curious why you would want to remove the older versions?

It was a request from the backend developer I've talked with. Apparently it creates more havoc because they have to support multiple versions of the images for the OS iso build. They used to be stored in other places and now everything should be centralised like version 1.2.0.
FYI @nwmac

Makes sense, in that case you will need to remove all of the chart assets for those versions in assets, charts, and extensions - In addition the entries within for those versions will need to be removed from the index.yaml.
This will not remove the versions from the releases or the ui-plugin-catalog image unfortunately, but we can release a patch version after this is merged which will not contain those versions.

@jordojordo can you re-review this? I've removed all of the assets needed to do a proper cleanup.


Way to distinguish which feed emitted the new item

Hi,
When I supply an array of feeds and the emitter returns the new item, I cannot know which feed generated that new item (and have to use hacks to manage). A better way will be if you support custom event names for each feed, and for a new item in a feed, it's the corresponding event will be called. For feeds with no event name provided, the default can be item:new.
If you want, I can do a PR.
Thanks in advance.

Sounds like a good idea, a PR is appreciated!

Added in #3


MacOSX: Support building of a Python.framework

This PR enables the basic building of a Python.framework.  So far it only fits my needs as it is used with a custom Python build, where a large chunk of extensions is disabled but with some feedback it may become useful for this project.
Feedback of course is welcome.

@jcfr Could it be merged and tested in CI?


The registry index generator tool requires an extraDevfilesEntry file

Describe the bug
When the index generator tool is ran against a devfile registry without an extraDevfilesEntry.yaml file, the index generation fails with the following error:
failed to generate index struct: failed to read ooo/extraDevfileEntries.yaml: open ooo/extraDevfileEntries.yaml: no such file or directorySuccessfully built the devfile registry index

Since extraDevfilesEntry.yaml is an optional file for devfile registries, it shouldn't be required and the index generator shouldn't fail when it doesn't exist

I will fix that.


Functions returning NoneType

I'm getting the following error.
Ill note that I'm not using an 'official' rpi screen. if that matters. I'm using a 7" touch via hdmi
pi@raspberrypi:~ $ sudo python3
Python 3.5.3 (default, Jan 19 2017, 14:11:04)
[GCC 6.3.0 20170124] on linux
Type "help", "copyright", "credits" or "license" for more information.`
>>> import rpi_backlight as bl
>>> bl.set_brightness(255)
Traceback (most recent call last):
File "", line 1, in
File "/usr/local/lib/python3.5/dist-packages/rpi_backlight-1.8.1-py3.5.egg/rpi_backlight.py", line 83, in set_brightness
File "/usr/local/lib/python3.5/dist-packages/rpi_backlight-1.8.1-py3.5.egg/rpi_backlight.py", line 62, in get_max_brightness
TypeError: int() argument must be a string, a bytes-like object or a number, not 'NoneType'

Ill note that I'm not using an 'official' rpi screen. if that matters. I'm using a 7" touch via hdmi

Well of course that matters! Quoting the README, emphasis mine:

A Python module for controlling power and brightness of the official Raspberry Pi 7" touch display

This module depends on the driver for the display creating certain files in the sysfs, find details in the source code.
You cannot use this for any arbitrary 7" display and expect things to work. Look at the documentation of yours to find a way of controlling the brightness, if any. I believe it's not possible, because it's HDMI. But that's up to you.


Default route in groups?

So as it stands right now I can have:
<?php
$app->get('/user', function($request, $response, $args) {
    /* code */
}):
?>

Which can then correctly resolve to domain.com/user. My problem is when I want to logically group the routes. If I define it like this:
<?php
$app->group('/user', function() use ($app) {
    $app->get('/', function($request, $response, $args) {
        /* code */
    });
});
?>

Then it forces a match to domain.com/user/ (note the trailing slash). Is there a way to set up a group route with a "default" so it doesn't require that trailing slash?

See #1597

Given this set up:
$ mkdir slimtest && cd slimtest/
$ composer require slim/slim ^3.0@RC
$ touch index.php

with this index.php:
<?php
require 'vendor/autoload.php';
$settings = [
    'settings' => [
        'displayErrorDetails' => true,
    ],
];
$app = new \Slim\App($settings);

$app->group('/user', function () use ($app) {
    $app->get('/', function ($request, $response, $args) {
        return $response->write("/user/\n");
    });
    $app->get('', function ($request, $response, $args) {
        return $response->write("/user\n");
    });
});
$app->run();

Then running: php -S <IP_ADDRESS>:8888, I get this when I curl:
$ curl http://localhost:8888/user
/user
$ curl http://localhost:8888/user/
/user/

i.e. it works as you would expect.

Note that with #1626, the URI path is very much what-you-see-is-what-you-get. In this case, nothing changes and so to route to /user when your group is /user, you need an empty path in your map:
$app->group('/user', function() use ($app) {
    $app->get('', function($request, $response, $args) {
        // URL to get here is: /user
    });
});


Support for Wired Ethernet on Apple TV and USB Network Adapters on iOS

Describe the Feature
The Apple TV has WiFi and a Wired Ethernet jack and iOS supports USB network adapters. Netinfo should include a wired connection type.
Possible Implementations
Add a wired connection type
Related Issues
https://github.com/react-native-community/react-native-device-info/issues/635

👋 Thanks for the request. I'm adding some note here for future implementation.

Android: Already implemented
iOS: Possible implementation. Seems a little tacky as it assumes that the purposes of en0 and en1 and constant, which doesn't seem to be documented.

Fixed in #229 and released in 4.4.0

Hi again and thanks for accepting my PR!
There are a couple of problems with the current code though:

The IP address and subnet are not added to the details field when the device is connected to ethernet.
The Typescript types doesn't reflect all the available information when the device is connected to WiFi, Ethernet and Cellular

I've created PR #233 for this


Rebase wrap metawrap wrapper

Merging this so I can test it with a large dataset.
The tests pass locally, it's just not completing on CI because it takes a long time to run.


[Postman Support]: Content-Type is fixed application/json

Idaithalam defines fix the expected content-type as application/json.
Result is that you get a 406 from the server if the content type is anything else but application/json.
That must be taken from either Postman collection, left null (which is what Postman is usually doing, it does not put that into the request) or it must be configurable in the yaml configuration file.
My proposal is to set default to null, means it is not send in the request.
If to be defined in the yaml file, it has to be separated by each URL request.

Fixed in my PR for version 1.6.2.


KV Status expose size in bytes of the bucket.

Overview
See ADR 8 KV Status interface changes
Status now exposes:
 // Bytes returns the size in bytes of the bucket
 Bytes() uint64

Clients and Tools

[x] CLI @ripienaar
[ ] Go @piotrpio
[ ] Java @scottf
[ ] JavaScript @aricart
[ ] .Net @scottf
[ ] C @kozlovic
[ ] Python @wallyqs
[ ] Ruby @wallyqs
[ ] Rust @Jarema @caspervonb

Other Tasks

[ ] docs.nats.io updated @jnmoyne
[ ] Update ADR to Implemented
[ ] Update client features spreadsheet

Client authors please update with your progress. If you open issues in your own repositories as a result of this request, please link them to this one by pasting the issue URL in a comment or main issue description.

(note that this is not aligned with the same functionality in ObjectStore where this is called size)


Pin DPC++ compiler to 2023.2 for dpnp coverage report

[ ] Have you provided a meaningful PR description?
[ ] Have you added a test, reproducer or referred to an issue with a reproducer?
[ ] Have you tested your changes locally for CPU and GPU devices?
[ ] Have you made sure that new changes do not introduce compiler warnings?
[ ] Have you checked performance impact of proposed changes?
[ ] If this PR is a work in progress, are you opening the PR as a draft?

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 85.998%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
9365

Relevant Lines:
10855

💛  - Coveralls