The import com.google cannot be resolved

After installing the newest version (6.0.1) for Android i got the error "The import com.google cannot be resolved" in BarcodeScanner.java (In this line: "import com.google.zxing.client.android.Intents;").
Does anybody know how to solve this problem?
I checked several other issue threads but none of them helped me.
I am using cordova 6.2.0.
Any help is highly appreciated, thanks!

Also having this problem

@daserge
You don't have any clue, do you?
Thanks in advance,
pixxio

Where do you see this error?

In eclipse.
For example when tell eclipse to build a .apk file.
Am 04.08.2016 um 01:14 schrieb jcesarmobile <notifications<EMAIL_ADDRESS>Where do you see this error?

You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://github.com/phonegap/phonegap-plugin-barcodescanner/issues/286#issuecomment-237403909, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AMBwbw977-WPD9WnGCkYzDIX8IeQOwWjks5qcSDGgaJpZM4JPqph.

The plugin is no longer compatible with Eclipse.
With Cordova you shouldn't use any IDE, just the CLI, but in case you wan't to use one, it should be Android Studio as Google deprecated Eclipse long time ago.
The reason for your error is the plugin now uses a .aar instead of a .jar for zxing (the library used to read bar codes)
https://github.com/phonegap/phonegap-plugin-barcodescanner/blob/master/plugin.xml#L95

@jcesarmobile so what's the fix? I know the reason but I'm not able to use .aar file even though I have added it in my libs folder. I tried to add the classes.jar in libs folder and it found all zxings imports but the problem is when I try to open the barcode scanner I get following error:
E/AndroidRuntime: FATAL EXCEPTION: main
                                                                 Process: com.test.app, PID: 26675
                                                                 java.lang.NoClassDefFoundError: Failed resolution of: Lbarcodescanner/xservices/nl/barcodescanner/R$layout;
                                                                     at com.google.zxing.client.android.CaptureActivity.onCreate(CaptureActivity.java:150)
                                                                     at android.app.Activity.performCreate(Activity.java:5977)
                                                                     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1105)
                                                                     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2258)
                                                                     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2365)
                                                                     at android.app.ActivityThread.access$800(ActivityThread.java:148)
                                                                     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1283)
                                                                     at android.os.Handler.dispatchMessage(Handler.java:102)
                                                                     at android.os.Looper.loop(Looper.java:135)
                                                                     at android.app.ActivityThread.main(ActivityThread.java:5272)
                                                                     at java.lang.reflect.Method.invoke(Native Method)
                                                                     at java.lang.reflect.Method.invoke(Method.java:372)
                                                                     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:909)
                                                                     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:704)
                                                                  Caused by: java.lang.ClassNotFoundException: Didn't find class "barcodescanner.xservices.nl.barcodescanner.R$layout" on path: DexPathList[[zip file "/data/app/com.test.app-1/base.apk"],nativeLibraryDirectories=[/vendor/lib, /system/lib]]
                                                                     at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
                                                                     at java.lang.ClassLoader.loadClass(ClassLoader.java:511)
                                                                     at java.lang.ClassLoader.loadClass(ClassLoader.java:469)
                                                                     at com.google.zxing.client.android.CaptureActivity.onCreate(CaptureActivity.java:150)
                                                                     at android.app.Activity.performCreate(Activity.java:5977)
                                                                     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1105)
                                                                     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2258)
                                                                     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2365)
                                                                     at android.app.ActivityThread.access$800(ActivityThread.java:148)
                                                                     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1283)
                                                                     at android.os.Handler.dispatchMessage(Handler.java:102)
                                                                     at android.os.Looper.loop(Looper.java:135)
                                                                     at android.app.ActivityThread.main(ActivityThread.java:5272)
                                                                     at java.lang.reflect.Method.invoke(Native Method)
                                                                     at java.lang.reflect.Method.invoke(Method.java:372)
                                                                     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:909)
                                                                     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:704)
                                                                 	Suppressed: java.lang.ClassNotFoundException: barcodescanner.xservices.nl.barcodescanner.R$layout
                                                                     at java.lang.Class.classForName(Native Method)
                                                                     at java.lang.BootClassLoader.findClass(ClassLoader.java:781)
                                                                     at java.lang.BootClassLoader.loadClass(ClassLoader.java:841)
                                                                     at java.lang.ClassLoader.loadClass(ClassLoader.java:504)
                                                                     		... 15 more
                                                                  Caused by: java.lang.NoClassDefFoundError: Class not found using the boot class loader; no stack available

The problem here is obvious, class not found. But does anybody knows the solution for this?

There is no fix, you have to use Cordova CLI or Android Studio to run the app. The plugin now uses an AAR file instead of the old jar, and AAR files are not compatible with Eclipse.
If you are using Cordova CLI or Android Studio you shouldn't see this error. If you are using them and still see the error message create a new issue providing all the information possible as Cordova CLI version, cordova-android platform version, etc.

@jcesarmobile I know it is not compatible, you have stated that before and I would not have asked about this issue if I would not have used Android Studio. So to make this clear, I use Android Studio and the project won't compile because it can't find zxings classes from that .aar file.
But I will make a new issue, even though it is the same problem of this issue. I have Ionic project and I use Cordova CLI to run cordova commands, etc.

It seems the same problem but it isn't, the other problem was because he was using Eclipse and you are using Android Studio, so you have to create a new issue for that.
On a totally new Cordova app, just adding Android platform and the phonegap-plugin-barcodescanner I can run the project and it compiles on both the CLI with cordova run android --device or the run button from Android Studio.
You said that you added the .aar in your lib folder, you don't have to do it, it's done on plugin install.
That's why you have to open a new issue, because you have to provide all the possible information, what you did, how you did it, CLI and platform versions you are using, etc.

Finally resolved it. I had to do many things for my project. Here are some of the things that I had to change in my project:

Configure Gradle to use 2.14.0
Import .aar file as new module (File -> New -> New Module -> Import .JAR/.AAR file) and add this module as dependency to my project
Change compileSdkVersion and buildToolsVersion to version 19 and '21.1.2'
Clean / Rebuild the project
Run

I had to change my IDE for one sake of one file (.aar) :(, because IntelliJ IDEA couldn't for some reason import .aar file as module even though it would allow so.
Hopefully those steps helps others.


Licensing

Hello.  Can you provide a common open source license with this repo, such as MIT, Apache, etc?  Your widget looks great but I can't use it w/o a license. Similar to:
MIT License
Copyright (c) 2019 DevName
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
 IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

Hello, sorry for the delay
I just added an MIT license file

Thank you!!


Aliases for subcommands

Hi, is there a way to alias subcommands, perhaps even with preset configuration?
I'm thinking of something as simple as making tool list equivalent to tool ls,
but also something like tool csv meaning tool list --tabular --separator ";" --colors off.
This would allow turning certain configurations of a subcommand into their own subcommand.

Right now there isn't. If you're on Linux or OSX, shell aliases do exactly that though.

I know, I thought of something internal though, so you could use one subcommand as a preconfigured shortcut to another. Thor does something similar, there you can invoke another :subcommand with a list of set parameters like this: invoke :list, [], csv:true, all:true, sort:"index", filter:{"event/date"=>options[:year].to_s}# where is this documented`

I can put this on the issue tracker, but there are a few issues in priority over it so it could be a while. I'll have to play with some implementations to see how it works out.
I'm not super familiar with Thor so I'll into that too. Thanks!

Perhaps it's just a documentation thing, it would only by nice to be able to manually construct ArgMatches nicer, but this is not so super important, as it can be abstracted around. Thank you for your consideration though :clap:

If the alias is known beforehand, you can just route calls for the alias subcommand to the same handler as the other command with arguments. Then also use the AppSettings::Hidden to hide the alias subcommand from the --help message. Just some thoughts.

I've been putting some thought into this, and finally decided on a route to take.
I'll add an App::alias and App::aliases which function as hidden additional subcommands but dispatch to the aliased subcommand. Therefore you only check existence of the aliased command and not all variants.

Once #502 merges I'll put out v2.5.0 on crates.io which contains this feature.


AS3.26 failed installation on 12.1.x

Environment

Application Services Version: AS3.26 Build 5
BIG-IP Version: BIG-IP <IP_ADDRESS> Build 0.0.10 Point Release 2

Summary
AS3.26 fails to install on BIG-IP running <IP_ADDRESS>
Error claims MD5 sum mismatch
Same issue seen with AS3.27 (not supported on 12.1.x)
Steps To Reproduce
Steps to reproduce the behavior:
Install AS3.26-5 on BIG-IP <IP_ADDRESS>

Observe the following error response:

Expected Behavior
AS3.26 should install and run on 12.1.x.
Actual Behavior
AS3.26 fails to load on 12.1.x

Confirmed and added to the internal product backlog as AUTOTOOL-2454. This will require a 3.26.1 release to resolve.


cast string as datetime results in loss of precision

Bug Report
Please answer these questions before submitting your issue. Thanks!
related to https://github.com/pingcap/tidb/issues/49555
1. Minimal reproduce step (Required)
use test;
drop table if exists t;
create table t(a varchar(50));
alter table test.t set tiflash replica 1;
insert into t values ('2020-01-01 12:00:00.123456 +0600 PST');
insert into t values ('2020-01-01 12:00:00.123456 -0600 PST');
set tidb_allow_mpp=1;set tidb_enforce_mpp=1; set tidb_isolation_read_engines='tiflash';
select cast(a as datetime(3)) from t;

2. What did you expect to see? (Required)
+-------------------------+
| cast(a as datetime(3))  |
+-------------------------+
| 2020-01-01 12:00:00.123 |
| 2020-01-01 12:00:00.123 |
+-------------------------+

3. What did you see instead (Required)
+-------------------------+
| cast(a as datetime(3))  |
+-------------------------+
| 2020-01-01 12:00:00.000 |
| 2020-01-01 12:00:00.000 |
+-------------------------+

4. What is your TiFlash version? (Required)
v8.0.0-alpha-126-gc0476a0

related to https://github.com/pingcap/tidb/pull/37820


Incorrect link on cert-manager ArtifactHub

The helm chart entry for v1.3.1 (from https://charts.jetstack.io/index.yaml) correctly points at https://charts.jetstack.io/charts/cert-manager-v1.3.1.tgz:
{
  "apiVersion": "v1",
  "appVersion": "v1.3.1",
  "created": "2021-04-14T10:49:05.704Z",
  "description": "A Helm chart for cert-manager",
  "digest": "be37253cfbf3d44f40099e7a573646f8e0a5ed6f8f28afd44ff5f1cf129402bf",
  "home": "https://github.com/jetstack/cert-manager",
  "icon": "https://raw.githubusercontent.com/jetstack/cert-manager/master/logo/logo.png",
  "keywords": [...],
  "maintainers": [...],
  "name": "cert-manager",
  "sources": [...],
  "urls": [
    "charts/cert-manager-v1.3.1.tgz"
  ],
  "version": "v1.3.1"
}

but if I go to https://artifacthub.io/packages/helm/cert-manager/cert-manager/1.3.1 and click "install":

It says: "You can also download this package's content directly using this link"
but "this link" points to the wrong location https://charts.jetstack.io/cert-manager-v1.3.1.tgz i.e. missing charts/ in the middle
/kind bug

Hi 👋
This is Sergio, from Artifact Hub 🙂
I think the problem is that when version 1.3.1 was indexed by Artifact Hub, the package was available at that location (without charts/). Packages versions already indexed are only revisited again when their digest changes. This is an interesting case as I understand the package digest hasn't really changed as the content is the same, it's just that the tgz file has been moved to a different location. This problem seems to apply to previous versions too, as well as all versions of the cert-manager-istio-csr package.
I'm happy to update the url for all of them if you'd like. Otherwise, if you prefer fixing it on your side, the digest of all affected packages should be updated so that they are reindexed.

Hi Sergio :wave:
Thanks for looking into this, it saves me a bunch of time!

I'm happy to update the url for all of them if you'd like.

If you could do that it'd be fantastic, thanks! We're pretty reticent to change the digests if we can help it.

Done, it should be fixed now 👍

looks like it, yeah :+1: amazing, thanks very much @tegioz


kermit: use postPatch instead of patchPhase

This is necessary to regain the ability to add patches via overrides.
This is a follow-up from #107658 and addresses a review comment by @SuperSandro2000.

Motivation for this change
Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

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

1 package built:

kermit


[dask] remove testing dependency on dask-ml

Summary
See https://github.com/microsoft/LightGBM/pull/3708#discussion_r558573080. LightGBM's tests currently rely on installing dask-ml, but only for a few lightweight metrics functions.
dask-ml should be factored out of the tests and CI scripts.
Motivation
This would reduce the risk of dependency conflicts in CI setup and speed up builds a bit.
References
@ffineis originally did this in https://github.com/microsoft/LightGBM/pull/3708#discussion_r558573080, but I asked him to pull it out into a separate future PR.

@ffineis I'm gonna take this one today

@ffineis I'm gonna take this one today

On Fri, Jan 22, 2021 at 8:47 AM James Lamb<EMAIL_ADDRESS>wrote:

@ffineis https://github.com/ffineis I'm gonna take this one today
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/microsoft/LightGBM/issues/3796#issuecomment-765453157,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ACZIXCJ724J6PCZYIRV4MYLS3GFZDANCNFSM4WKGOIWA
.

On Fri, Jan 22, 2021 at 8:47 AM James Lamb<EMAIL_ADDRESS>wrote:

@ffineis https://github.com/ffineis I'm gonna take this one today
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/microsoft/LightGBM/issues/3796#issuecomment-765453157,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ACZIXCJ724J6PCZYIRV4MYLS3GFZDANCNFSM4WKGOIWA
.


询问

请问你的数据是在哪里下载的啊？格式是什么，有点困惑

Hey, which data are you talking about? and I kept this code as a backup so it needs refinement.
is it the training data you are talking about?

Yes, I want to run the process to test the result, so can you share me the complete train data? Thank you very much, my email is<EMAIL_ADDRESS>

Hey, you can get the data from OpenSARShip website. It is publicly available at
http://opensar.sjtu.edu.cn/ all thanks to the contributors at SJTU. Google it and read their paper I suggest, to understand the dataset.


package bundle controller: requeue quickly if webhook offline

Upon cluster startup, the package bundle controller finds itself without a
bundle. So it reaches out the registry, and tries to create and activate the
newest bundle the registry has. If the package bundle validating webhook has
not yet come online (indicated by a connection refused error), then this code
will requeue a reconcile request for just a short time, so things aren't held
up for hours.
Issue #, if available:
Description of changes:
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

/hold
I need to do a final test or two.

/unhold


added ntdsutil module

Added a module to dump the NTDS remotely with the ntdsutil.exe binary, download it and remove traces

Hello, thanks for the PR but I don't understand why someone would use such technique when all he has to do is --ntds

Hey, yeah you are right, i just found it cool to have the ability to dump with ntdsutil. Neverming, closing this


Store.php breaks when using session.driver 'array'

Breaks when using session.driver 'array' in some occasions, it returns:
ErrorException in Store.php line 287:
Undefined index: _sf2_meta

I've seen this error before in my logs without the array driver, but this doesn't look like the right fix to me.

This solved my problem, but I am new to Laravel so I can't see the bigger picture, of course.
Can you propose something more adequate?

This solved my problem

Well, it didn't. It just hid the problem. The issue is still happening, if you see what I mean.

Why are you using the array driver anyway?

That's intended for testing only. If you don't want sessions, remove the session middleware.

Intended - yes, but not exclusive as I can see in documentation...
I know there is lot of ways to do something in Laravel... just pointing out the error that is here for a while (as far as I can see on some online discussions).
This was easier for me to store some variables within the request. I don't want to kill the session at this point. And I don't want session to persist.
Can we please stick to the functionality problem here, not to my way of using this framework?

Can we please stick to the functionality problem here, not to my way of using this framework?

Actually, no. What we've identified here is the framework works fine, but you're using it wrong.

No, framework is not working fine in this situation. I throws an exception, and it shouldn't.
I hope that someone more serious will handle this in future releases.


Update machineaction.md

Updated values for Type and status.
Additionally, the following fields are  documented
lastUpdateDateTimeUtc
title
cancellationRequestor
cancellationComment
cancellationDateTimeUtc
requestSource
I do not have the exact description for the below ones. But we still need to add them, could you please help?
commands
troubleshootInfo
errorHResult
externalId

@JohanFreelancer9 Please copy review

Issue#https://github.com/MicrosoftDocs/microsoft-365-docs/issues/5896

@JohanFreelancer9

@msbemba
for now, exclude:
troubleshootInfo
errorHResult
externalID:
type: String
Description: Is Id the customer can submit in the request for custom correlation
commands:
relevant only for action https://docs.microsoft.com/en-us/microsoft-365/security/defender-endpoint/run-live-response?view=o365-worldwide.
Those are the commands the customer wants to run using this action. (I guess you can just point to there)

Thank you @mjcaparas. I have updated the two fields.


𝑛-d array proposal.

This PR represents an initial version of a proposal for #39.

@cgranade Capturing a couple of points that came up in our conversation here (disregard if you have already captured them - I'll take a look at the proposal shortly):

We should think about what operators we would potentially want to introduce for multidimensional arrays. Tensor product and matrix multiplication come to mind.
That naturally also bring us to matrix addition (itemwise addition); do we want to support that? What does + mean for multidimensional arrays, given that it is used for concatenation in the 1D case?
Should we allow concatenation of multidimensional arrays? If so, what does that mean?
Can we treat the 1D case merely as a special case for n-D arrays?

And something to consider regarding the array literal syntax: If we ever have another collection data type similar to an array, do we have a good option for defining a literal syntax in that case as well?

@cgranade One question: How can the dimensions of a multidimensional array be accessed?

@cgranade One question: How can the dimensions of a multidimensional array be accessed?

My thought was that this is the role of Shape2<'T> : 'T[,] -> (Int, Int), Shape3<'T> : 'T[,,] -> (Int, Int, Int), and so forth functions.

As per discussions offline, I'll go on and take the action items to:

[ ] Update this proposal to include five internal intrinsic functions that can allow for implementing functions and operations over multidimensional arrays as pure Q# code.
[ ] Split new library content included in this proposal to a new API design proposal on QuantumLibraries.

Copy-pasting some notes from exploring a syntax alternative for literals:
What should opening and closing delimiters be for inner levels of nesting?

[| and |] allow distinguishing opening and closing delimiters.
Can't reuse [| and |], but that's ok since we don't need another basic sequence type.

Are spaces allowed between [ and |?

No, treat [| as a two-character token to disambiguate from ?...| and |||.
:: is precedent for having two-character tokens be distinct from single-character.

Do we use [|| for higher than 2D or nested [|?

No, implied by nesting, so [|| is unneeded.

What should be checked at compile time?

Siblings of [| all have same length. E.g.: [ [| 1, 2 |], [| 3, 4, 5 |] ] is bad, since 2 ≠ 3.
Cousins at the same depth have all have same length. E.g.: [ [| [| 1, 2 |], [| 3, 4 |] |], [| [| 5, 6, 7 |], [| 8, 9, 10 |] |] ] fails.
Both rules are checked going up until the next [] without bars (that is, [ ] break chains, and are self-contained, while [| |] are not independent expressions).

Further discussions on [| and |] vs simply | for inner items:

The | alone conflicts with ?|. Consider the example of [ | PauliZ |, | M(q) == One ? PauliI | PauliX | ].
In 3+ dimensions it might be helpful to have a clear distinction of opening vs closing delimiter.
A counter argument is that for literals for 3+ dimensions should be separated into multiple lines with proper indentation, which makes the open vs close distinction less relevant.
The difference between [[1,2], [3,4]] and [|1,2|, |3,4|] is harder to spot.
On the other hand [| can feel more clunky opposed to helpful, and makes it harder to spot where the whole array starts and ends, thinking also about what if we have array comprehension as well.

I'm not following this closely, so I'll just drop a raw idea here that you may have already considered (based on many other languages implementations).

Allow arrays of arrays as usual, by nesting [ .. , .. ] constructs. Example:
[ [1, 2, 3], [3, 4, 5] ]
Have a Matrix<T> type that takes, in its constructor, the dimensions of the matrix. Example:
let myMatrix = new Matrix<int>(2,3); // creates a 2x3 integer matrix
The constructor of this Matrix type requires at least the size of the first dimension, but allows the user to pass an extra arbitrary number of dimensions. Example:
public Matrix(int dim1size, int[] extraDimSizes = null)
This Matrix type implements an interface to load data. This method is responsible to check that the input parameter dimensions matches the matrix's dimension. Example:
myMatrix.Load([ [1, 2, 3], [3, 4, 5] ]);  // succeeds
myMatrix.Load([ [1, 2, 3], [3, 4] ]);  // throws exception
Add a syntactic sugar in the compiler to call the Load method together with the constructor:
let myMatrix = new Matrix<int>(2,3)[ [1,2,3], [4,5,6] ];
does the same as
let myMatrix = new Matrix<int>(2,3);
myMatrix.Load([ [1, 2, 3], [3, 4, 5] ]);
If the compiler can resolve all the symbols at compilation time as constants, the compiler calls the Load method at compile-time, potentially letting the user know that they are trying to do something invalid. Otherwise leave it become a runtime error.

Can't reuse [| and |], but that's ok since we don't need another basic sequence type. [Edit BH: I wouldn't be so sure about that.]

I think [| is probably not practical as a separate sequence delimiter even if we use | for multidimensional arrays, because of confusion like this:
// 2D array
[ |1, 2, 3| ]

// 2D array or new sequence literal?
[|1, 2, 3|]

So if we expect another type of sequence literal, I think we should plan for that to use delimiters other than [| |], or use neither [| nor | for multidimensional arrays.

Copy-pasting the conclusions from our discussions today here:

literals: [|2,3|,|3,4|] as literals
types: [|Int|], with keeping both Int[] and [Int] valid for the 1D case
allow to omit () in item access; both arr[0, 1] is valid.
require () for index expression in copy-and-update as well as update-and-reassign
require [|0, size=(2, 3)|] for new array expressions.
modify library proposal to use "size" instead of "shape"


Pull LIF related code into its own subdirectory, to prepare for other models

Do we want this, or is putting all neuron code in one directory enough?


Enable library to query Storefront API

WHY are these changes introduced?
We're considering adding support for the Storefront API to the GraphQL client. This is a prototype of what that might look like.
WHAT is this pull request doing?
Rearranging the constructor params for the GraphQL client so that it allows an optional apiType setting (which defaults to Admin), and changing the client to change the request endpoint accordingly. For consistency, the REST client was also updated so its constructor params work in the same way, even though there is no REST Storefront API.
The constructors were updated in a way that doesn't break existing apps, and we can easily change them when we release a major version (or when we need to add a mandatory param to the client).
An app's code might look like this to make Storefront requests:
        const client = new Shopify.Clients.Rest({
          domain: myShop,
          accessToken: myToken,
        });
        const sfTokenResponse = await client.post({
          path: 'storefront_access_tokens',
          type: DataType.JSON,
          data: {
            "storefront_access_token": {
              "title": "Test"
            }
          },
        });

        const sfClient = new Shopify.Clients.Graphql({
          apiType: ApiClientType.Storefront,
          domain: myShop,
          accessToken: sfTokenResponse.body['storefront_access_token']['access_token'],
        });
        const sfGqlResponse = await sfClient.query({
          data: `{
            shop {
              name
              primaryDomain {
                url
                host
              }
            }
          }`,
        });

Type of change

[ ] Patch: Bug (non-breaking change which fixes an issue)
[X] Minor: New feature (non-breaking change which adds functionality)
[ ] Major: Breaking change (fix or feature that would cause existing functionality to not work as expected)

Checklist

[X] I have added a changelog entry, prefixed by the type of change noted above
[X] I have added/updated tests for this change
[ ] I have documented new APIs/updated the documentation for modified APIs (for public APIs)

This is really interesting. It seems (like you mentioned in the PHP tech doc) like an easy win to add this feature to the library. It's doesn't add much complexity and would be useful to partners. It also seems like there's probably an opportunity to add a convenience/util method that takes care of the REST request for the SF token? Just a thought 🤔

Not sure how feasible this is, but should users need to specify the apiType? Could it be determined programatically based on the request?

Thanks for the great points everyone raised, they make a lot of sense. Since Storefront doesn't even allow REST, I figured it would actually be better to just extend the GraphQL client and abstract a few of its parts.
The code to use this would now look like

      const client = new Shopify.Clients.Rest({
        domain: session.shop,
        accessToken: session.accessToken,
      });
      const sfTokenResponse = await client.post({
        path: 'storefront_access_tokens',
        type: DataType.JSON,
        data: {
          "storefront_access_token": {
            "title": "Test"
          }
        },
      });

      const sfClient = new Shopify.Clients.Storefront({
        domain: session.shop,
        accessToken: sfTokenResponse.body['storefront_access_token']['access_token'],
      });
      const sfGqlResponse = await sfClient.query({
        data: `...`,
      });

I'm on board with this as it stands. Do we want to add documentation updates so it can all be released at the same time? Also wondering if we need to do anything in terms of announcing that SF API support will be/is available. 🤔

Yes, I've updated the docs now, thanks for the reminder. I've also changed mentions of Shopify Admin API Library to Shopify API Library.

This continues to LGTM 👍

Sorry, I accidentally the review button for you 😬


Alternative?

What other options are there now that this project is no longer maintained?
At the moment it seems there's only this: https://github.com/react-financial/react-financial-charts

this is react not vue ...

https://nightvision.dev/


Fixed issue 260

@patw0929 @nutboltu

Added new proptype formatFull

will be adding tests too...
putting DNM for now.
Please have a look at the logic

Thanks for the PR!
Is this prop using for displaying the value as formatted number with country code?
Even if I use nationalMode (true is default), right?
Wait a minute, I found there is an issue with this code:
        <IntlTelInput
          onPhoneNumberChange={this.changePhone3}
          onPhoneNumberBlur={this.blurHandler3}
          onSelectFlag={this.selectFlagHandler3}
          defaultCountry="auto"
          value={this.state.phoneNumber3}
          geoIpLookup={lookup}
          css={['intl-tel-input', 'form-control']}
        />

And please help to update index.html for this new prop. :)

When I typing, the text index incorrect, it move to center text.
How to fix it?


[web]: SelectableText/EditableText with nested TextSpans cannot select on web

I have this widget:
SelectableText.rich(
TextSpan(children: [
TextSpan(text: 'foo bar ', style: TextStyle(color: Colors.black)),
TextSpan(text: 'baz qux', style: TextStyle(color: Colors.green)),
]),
textAlign: TextAlign.center,
toolbarOptions: ToolbarOptions(cut: true),
showCursor: true,
)
Expected: selection works
Actual: on web, selection fails with the output below.
There is no error when there is only a single (un-nested) TextSpan as the SelectableText.rich parameter.
Note that when the TextSpan does not have a style (TextSpan style param in constructor is null), there is no problem.
Below, when _cutAndPastedTextStyle/_cutTextStyle/_pastedTextStyle/_defaultTextStyle are null, then selection works. Once they are set to a TextStyle value, selection breaks.
TextSpan _generateTextSpan() {
assert(_words != null);
assert(_words.isNotEmpty);
TextStyle styleForWord(_TranscriptEditorWord word) {
  if (word.isCut && word.isPasted) {
    return _cutAndPastedTextStyle;
  } else if (word.isCut) {
    return _cutTextStyle;
  } else if (word.isPasted) {
    return _pastedTextStyle;
  } else {
    return _defaultTextStyle;
  }
}

final childSpans = _words
    .map((transcriptEditingWord) => TextSpan(
        text: '${transcriptEditingWord.assetTranscriptWord.word}' +
            // Add trailing space after each word, except for the last word.
            (transcriptEditingWord == _words.last ? '' : ' '),
        style: styleForWord(transcriptEditingWord)))
    .toList();

return TextSpan(children: childSpans);

}

We have a new text measurement implementation that works well for plain multi-line text at the moment. It's behind an environment flag as explained in https://github.com/flutter/flutter/issues/33523. Rich text is still not supported by the new implementation, so it'll always fallback to the old implementation.
@mdebbar :" But I would expect selection to fail silently. That is, the selection would be wrong, but no error is thrown. I think I found what's causing the error and I'll fix it."

Code Sample
import 'package:flutter/material.dart';

void main() => runApp(MyApp());

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Material App',
      home: Scaffold(
        appBar: AppBar(
          title: Text('Material App Bar'),
        ),
        body: Center(
          child: SelectableText.rich(
            TextSpan(children: [
              TextSpan(text: 'foo bar ', style: TextStyle(color: Colors.black)),
              TextSpan(text: 'baz qux', style: TextStyle(color: Colors.green)),
            ]),
            textAlign: TextAlign.center,
            toolbarOptions: ToolbarOptions(cut: true),
            showCursor: true,
          ),
        ),
      ),
    );
  }
}

flutter doctor -v
[✓] Flutter (Channel master, 1.21.0-6.0.pre.17, on Mac OS X 10.15.6 19G73,
    locale en-GB)
    • Flutter version 1.21.0-6.0.pre.17 at /Users/tahatesser/Code/flutter_master
    • Framework revision e64fe11542 (11 hours ago), 2020-07-23 18:11:17 -0700
    • Engine revision 626244a72c
    • Dart version 2.9.0 (build 2.9.0-21.0.dev a3815b6590)

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.1)
    • Android SDK at /Users/tahatesser/Code/sdk
    • Platform android-30, build-tools 30.0.1
    • ANDROID_HOME = /Users/tahatesser/Code/sdk
    • Java binary at: /Applications/Android
      Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6222593)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 11.6)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 11.6, Build version 11E708
    • CocoaPods version 1.9.3

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 4.0)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin version 47.1.2
    • Dart plugin version 193.7361
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6222593)

[✓] VS Code (version 1.47.2)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.12.2

[✓] Connected device (5 available)
    • SM M305F (mobile)      • 32003c30dc19668f          • android-arm64  •
      Android 10 (API 29)
    • Taha’s iPhone (mobile) • 00008020-001059882212002E • ios            • iOS
      13.6
    • macOS (desktop)        • macos                     • darwin-x64     • Mac
      OS X 10.15.6 19G73
    • Web Server (web)       • web-server                • web-javascript •
      Flutter Tools
    • Chrome (web)           • chrome                    • web-javascript •
      Google Chrome 84.0.4147.89

• No issues found!


numeral("0.07%") doesnt work as expected

It does a weird 0.000700000001
I expect it to return 0.0007

This may not be numeral's fault but generic behavior of JavaScript (https://stackoverflow.com/questions/1458633/how-to-deal-with-floating-point-number-precision-in-javascript) and in general any floating (not decimal!) point format. I don't know if numeral uses BigDecimal internally, but for percent types it does the correction by 100 (division or multiply based on which direction).


Feature request: Delete a post

It seems most clients don't implement how to delete a post. I am not sure why.
The current relay network is not very stable. I made many duplicated posts when I want to simply post one message.
Thus, deleting the duplicated posts is important to me.
Thanks a lot.

I think the same, the feature is on the roadmap and I really want to do it but we always postpone it, do we have updated mockups for this @FrontendCrypto the implementation is super simple maybe it time to do it!😄

Hi! No it isn't. But I'll do it later today. I think that delete option should be on note contextual menu in user profile feed. What do you think?


Re-order TargetFrameworks so default run/test target is latest e.g. net5.0

The first TFM in <TargetFrameworks> for test projects is what gets used when running tests from the text editor using the little test chevron. If configured for F5 debugging, it also is the one used by default unless you explicitly set the TFM in some scenarios. "net461" was selected as the first because the last one, IIRC, is what gets used for code coverage, and the thought it we'll have more coverage on newer platforms/targets because we support light-up code in some places like Azure.Core and Azure.Security.KeyVault.Keys.
The first TFM also gets used for preproc conditionals, which then get limited (almost none) help from VS:

Instead, we should see if we can use an explicit target for code coverage (warning: when I tried this during the initial code coverage effort, some projects that don't support net461 generate an error and fail a build) so that we can list TFMs from newest to oldest.
/cc @pakrym

This is getting done with #31768.


failing build according to the readme badge

https://github.com/projectivemotion/wizzair-scraper#wizzair-scraper

Try building the latest version.


New & improved ban service proposal

This proposal is an attempt to currently improve the current ban service so that it may be extended further.

The current service assumes that there is only one ban per one game profile, what if I want to add multiple bans to a single game profile, this could be an example of where a moderator decides to ban a player for hacking, and later on this guy is using offensive language on the forums, I then want to add another ban on top of the previous one in order to extend his ban time. (Why not just change the time from the other ban? well I may want to keep the details for this ban, as well as append some meta data to that ban or whatever)
The current service assumes that there are only two types of bans (ip and profile), it would be better if types could be added and manipulated by other plugins, for example a ban should be considered a punishment for committing an offence, well what if there were other types of punishments? a terrible example in this case would be a mute
The source/commandsource for banning a player is to specific, currently it assumes it was either the "server" or the "player" that issued the ban, what if I have some form of custom ai/anti-cheat that also triggers bans, and I would really like to know what type of cheat triggered this automatic ban etc... My suggestion for this would be to have a BanSource that sources like an anti-cheat can implement so that plugins can check against, or even use as search parameters for looking up previous bans or whatever.
The "reason" provided within bans is not a descriptive enough element for server operators. In my opinion, it would be nice for the ban service to allow server operators to provide "notes" so that the moderator may add notes onto a ban, so that when the punishment is disputed, other server operators could read the notes and make better educated decisions in regards to pardons

I do think this may be a bit too much as this kind of service was designed to think about small as well as larger servers. I do however feel that there may be a few things that you could possibly take from my proposal.

Bans are only designed to be used for the server itself. However, it is possible to make a ban service using an external service that stores bans for more than just the server.
IP bans and player bans are not so much different types of bans as different types of targets. One ban applies to an account, the other applies to the IP address they log in from. Both ban types behave exactly the same otherwise. Generic punishments, on the other hand, would be different behavior.
The ban service is already flexible enough to use any Text as the ban source. You can just set it to something indicating your AI banned them. A CommandSource is not required.
How would notes be different from the ban reason?

@JBYoshi I know all of this already, I was asked to propose this by @me4502

My thoughts on this were to basically extend the bans service to technically support multiple bans per profile, but have the default implementation just understand a single ban per profile.
This would involve adding new methods that are aware of multiple bans per profile. Behaviour of the single ban methods would either get all bans, remove all bans, etc, based on what the method does.

@me4502 I think that's exactly what should be done 😂


patternLinear remains when switching to another file

Description
I was working on a gear rack that uses a patternLinear function. I went back to the main file menu, selected my bracket.kcl file, and the patternLinear rendering remained in the stream. It was there before the bracket even rendered.
Version
v0.15.5 - Tauri App
Repeatable?
For this session, yes. I can open up any file right now and the patternLinear is still there.
Screenshots
So this is what I was working on first

KCL
// 100mm Gear Rack
// a flat bar or rail that is engraved with teeth along its length. These teeth are designed to mesh with the teeth of a gear, known as a pinion. When the pinion, a small cylindrical gear, rotates, its teeth engage with the teeth on the rack, causing the rack to move linearly. Conversely, linear motion applied to the rack will cause the pinion to rotate.

// Define constants
const length = 100
const pitch_height = 11.5
const width = 5
const height = 12
const min_height = 10.875

// Create the body of the rack
const rackBody = startSketchOn('XY')
  |> startProfileAt([-length / 2, 0], %)
  |> line([length, 0], %)
  |> line([0, min_height], %)
  |> line([-length, 0], %)
  |> close(%)
  |> extrude(width, %)

// Create a function for sketch of a single tooth
fn tooth = () => {
  const toothSketch = startSketchOn('XY')
  |> startProfileAt([-length / 2 + 0.567672, min_height], %)
  |> tangentialArc([0.157636, 0.110378], %)
  |> line([0.329118, 0.904244], %)
  |> tangentialArc([0.157636, 0.110378], %)
  |> line([0.186505, 0], %)
  |> tangentialArc([0.157636, -0.110378], %)
  |> line([0.329118, -0.904244], %)
  |> tangentialArc([0.157636, -0.110378], %)
  |> close(%)
  |> extrude(width, %)
  return toothSketch
}

// Pattern the single tooth over the length of the rack body
const teeth = tooth()
  |> patternLinear({
       axis: [10, 0],
       distance: 1.570796,
       repetitions: 62
     }, %)

// Sketch and extrude the first end cap. This is a partial tooth
const endCapTooth = startSketchOn('XY')
  |> startProfileAt([-length / 2, 11.849525], %)
  |> line([0.314524, -0.864147], %)
  |> tangentialArc([0.157636, -0.110378], %)
  |> lineTo([-length / 2, min_height], %)
  |> close(%)
  |> extrude(width, %)

//Sketch and extrude the second end cap. This is a partial tooth
const endCapTooth2 = startSketchOn('XY')
  |> startProfileAt([length / 2, 11.849525], %)
  |> line([-0.314524, -0.864147], %)
  |> tangentialArc([-0.157636, -0.110378], %)
  |> lineTo([length / 2, min_height], %)
  |> close(%)
  |> extrude(width, %)

Then, I went back to the main menu, selected Bracket, and it rendered this

KCL
// Bracket
// This is a bracket that holds a shelf. It is made of aluminum and is designed to hold a force of 150 lbs. The bracket is 6 inches wide and the force is applied 6 inches from the wall. The bracket has a factor of safety of 20. The legs of the bracket are 5 inches and 8 inches long. The bracket is 1/4 inch thick. What is the minimum thickness of the bracket?

// define constants
const sigmaAllow = 15000 // psi
const width = 6 // inch
const p = 150 // Force on shelf - lbs
const distance = 6 // inches
const FOS = 20
const leg1 = 5 // inches
const leg2 = 8 // inches

// calculate required thickness of bracket
const thickness = sqrt(distance * p * FOS * 6 / (sigmaAllow * width))
const bracket = startSketchAt([0, 0])
  |> line([0, leg1], %)
  |> line([leg2, 0], %)
  |> line([0, -thickness], %)
  |> line([-1 * leg2 + thickness, 0], %)
  |> line([0, -1 * leg1 + thickness], %)
  |> close(%)
  |> extrude(width, %)

Shows up in any file

Sorry @Irev-Dev I tend to assign you first if I don't know who the issue belongs to, so please reassign if needed. @gserena01 I brought you in just in case this is specific to patternLinear

This is definitely a me problem, I've removed @gserena01.
This is most likely a clean up problem, I just checked and it does successfully clean up on re-execute, but obviously, it's different code-path for changing files. (I'll try and unify it when I fix this).
for context, I have to loop through everything we've added to scene and remove it before starting with the next execution. And I have to make sure to delete only certain types of files (other wise the engine returns errors), we really need a "nuke all" endpoint, because this is a source of bugs.

actually the nuke all endpoint seeem great for @gserena01 to implement I've had it on my list for a while but i havent gotten to it!

Yeah cool!

Engine clear all endpoint will make this much easier to fix
https://github.com/KittyCAD/engine/pull/1864


[WIP] More Koopman approximations

This pull request adds

Companion Matrix DMD
Hankel DMD

I plan to clean up the api a little bit, meaning rename the ExactDMD type to Koopman and just define the output to be this struct ( this is just a naming change ).
Additionally I would like to go into the direction of
Koopman(Data, :Method, args... , kwargs...)

where Method specifies the algorithm wanted ( or deserved, based on shape of the data and maybe some characteristics ).

Initialized via #5

What we did so far was approximating A with Y*pinv(X). The svd transforms this onto another space ( POD ), hence everything needs to be adjusted.
Either we rewrite the dynamics to use the adjusted operator or we adjust the svd output. Need to think about that.


Adds more Intl.ResolvedDateTimeFormatOptions, and hooks up Intl for ES2021

Looks like if you were on target: es2021 the file es2021.intl wasn't added to your globals, so some of #45647 wasn't applied
I added the properties raised in #45420

fixes #45420

https://github.com/vercel/ms just got updated to typescript which is what is causing the reds


[Common] Default CUDA_HOME to /usr/local/cuda when dynamically loading cuDNN and NVRTC

Description
This PR ensures that we always look for cuDNN and NVRTC under /usr/local/cuda when importing Transformer Engine without requiring CUDA_HOME or CUDA_PATH to be set to the default CUDA installation path. The user should only need to set these variables if CUDA is installed in a non-standard/custom path.
Type of change

[ ] Documentation change (change only to the documentation, either a fix or a new content)
[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[x] Infra/Build change
[ ] Code refractor

Changes

Dynamically loading cuDNN and NVRTC now always falls back on checking /usr/local/cuda when CUDA_HOME or CUDA_PATH variables are not set.

Checklist:

[x] I have read and followed the contributing guidelines
[x] The functionality is complete
[x] I have commented my code, particularly in hard-to-understand areas
[x] I have made corresponding changes to the documentation
[x] My changes generate no new warnings
[x] I have added tests that prove my fix is effective or that my feature works
[x] New and existing unit tests pass locally with my changes

/te-ci pytorch


Modify models according to requirements (finally)

@garvit-gupta  Shall we wait for the other reviewers or should I merge it already?


Cannot find module 'resolve'

Hello,
I am trying to install on aws server. First i installed npm to the server and then followed instructions;

git clone https://github.com/Freeboard/freeboard.git
cd freeboard
npm install

And then i installed grunt with:

sudo apt install node-grunt-cli
Then i run following command;
grunt

That gives me the following error;

internal/modules/cjs/loader.js:582
throw err;
^
Error: Cannot find module 'resolve'
at Function.Module._resolveFilename (internal/modules/cjs/loader.js:580:15)
at Function.Module._load (internal/modules/cjs/loader.js:506:25)
at Module.require (internal/modules/cjs/loader.js:636:17)
at require (internal/modules/cjs/helpers.js:20:18)
at Object. (/usr/lib/nodejs/grunt-cli/bin/grunt:9:15)
at Module._compile (internal/modules/cjs/loader.js:688:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:699:10)
at Module.load (internal/modules/cjs/loader.js:598:32)
at tryModuleLoad (internal/modules/cjs/loader.js:537:12)
at Function.Module._load (internal/modules/cjs/loader.js:529:3)

What is the solution?  What am i missing?
Best regards

I'm having the same problem here, did you managed to resolver this?

I'm having the same problem here, did you managed to resolve this?

A simple npm install fixed it

I'm having the same problem here, did you managed to resolve this?

A simple npm install fixed it

get


Fix: Ardunio Mega2560 pins and build type

The pins were mapped to the atMega2560 IC pins,
instead of the arduino/wiring pinout.

Note the change in ci build:
This seems more in-line with the nano build?
https://docs.platformio.org/en/latest/boards/atmelavr/megaatmega2560.html
https://docs.platformio.org/en/latest/boards/atmelavr/ATmega2560.html


Core: Exclude some keyboard keys to prevent revalidate the field

Avoid revalidate the field when pressing one of the following keys in onkeyup method:
	Shift           => 16
	Alt             => 18
	Caps lock       => 20
	End             => 35
	Home            => 36
	Left arrow      => 37
	Up arrow        => 38
	Right arrow     => 39
	Down arrow      => 40
	Insert          => 45
	Num lock        => 144
	AltGr key       => 225

Whats the reasoning behind this change?

These keys are used just to navigate, change character's case ...
This change is just a small enhancement to gain in performance and avoiding calling the
this.element( element ) method every time these keys are pressed.

Sounds good to me. To land it requires a unit test which tests at least one of those "special-characters".
@jzaefferer are you ok with this change?

@staabm
which file I have to edit in order to add a test suite for this change ?

This looks reasonable, should help especially with the remote method.
Since Ctrl by itself doesn't change the input value, it seems good to exclude (add to the list) as well.
As for unit tests: There are two tests in test/test.js that set the onkeyup option and trigger keyup events. Here you'd also need to set the keyCode property, like this:
var e = jQuery.Event( "keyup", { keyCode: 16 } );

@jzaefferer
Done.

Nice! Squashed and merged, with a small update of the commit message.


Unpin constraint on packaging

This was constrained in https://github.com/pypi/warehouse/pull/12664/ due to https://github.com/googleapis/python-bigquery/issues/1435 which is now resolved:
https://github.com/pypi/warehouse/blob/186180c600da5a99a7bdc0da548f852351d91e84/requirements/deploy.in#L4
We attempted to unconstrain it in https://github.com/pypi/warehouse/pull/12871, however due to https://github.com/pypa/packaging/pull/407, we can't migrate to the latest version until https://github.com/pypa/packaging/pull/669 is resolved.

This now needs a release of packaging which includes https://github.com/pypa/packaging/pull/669, a release of https://github.com/di/packaging_legacy, and an update here to use that dependency.

Thank you ❤🙏


Add iMXRT ESP32 programmer app

Refactor build system to allow building useful applications such as erase_firmware, self-update, esp32programmer. Although they are not considered as part of bootloader, they are useful for production/recovery purpose. Put it in this repo allow to use the current board_api abstraction easily. These should not be used for complicated application though.
Separate NO_TINYUF2_BUILD into BUILD_APPLICATION and  BUILD_NO_TINYUSB` (some app may still use tinyusb)
Add esp32programmer app for imxrt specifically (may generalize it later on if needed), baudrate changed based on terminal is also supported
Simple tests look good.

@ladyada Can you test the attached uf2 to see if it works on the metro m7. esp32programmer-metro_m7_1011.zip
I have trouble putting the esp32 into DFU mode, since I dont have an esp32 breakout and have to use one of the dev board (with cp2104). However, once put into the DFU mode manually. It can flash with 115200 and 921600 as follow.
$ esptool.py --port /dev/ttyACM1 --before no_reset --baud 115200 write_flash 0 NINA_W102-1.7.1.bin
esptool.py v3.0
Serial port /dev/ttyACM1
Connecting.....
Detecting chip type... ESP32
Chip is ESP32-D0WDQ6 (revision 0)
Features: WiFi, BT, Dual Core, Coding Scheme None
Crystal is 40MHz
MAC: 18:fe:34:6a:93:2c
Uploading stub...
Running stub...
Stub running...
Configuring flash size...
Compressed 1159168 bytes to 633525...
Wrote 1159168 bytes (633525 compressed) at 0x00000000 in 55.8 seconds (effective 166.1 kbit/s)...
Hash of data verified.

$ esptool.py --port /dev/ttyACM1 --before no_reset --baud 921600 write_flash 0 NINA_W102-1.7.1.bin
esptool.py v3.0
Serial port /dev/ttyACM1
Connecting....
Detecting chip type... ESP32
Chip is ESP32-D0WDQ6 (revision 0)
Features: WiFi, BT, Dual Core, Coding Scheme None
Crystal is 40MHz
MAC: 18:fe:34:6a:93:2c
Uploading stub...
Running stub...
Stub running...
Changing baud rate to 921600
Changed.
Configuring flash size...
Compressed 1159168 bytes to 633525...
Wrote 1159168 bytes (633525 compressed) at 0x00000000 in 10.6 seconds (effective 877.9 kbit/s)...
Hash of data verified.

We can have some DTR, RTS manipulation to enter DFU mode as well https://github.com/adafruit/tinyuf2/blob/imxrt-usb2uart/ports/mimxrt10xx/apps/esp32programmer/main.c#L161 . Though the above issue get into testing.

side note for myself regarding epstool using dtr, rts to put esp32 into bootloader

https://github.com/espressif/esptool/blob/master/esptool.py#L516
https://forum.micropython.org/viewtopic.php?f=18&t=4607

i tested, this is great!


Input Methods API research

This is what we need to support on macOS. Most of those are implemented by OS and will come automatically if we did things right. But the main idea of it is that text input is not a “char typed” anymore, it’s more like two-way protocol that can also decorate and edit already entered text by chunks.
Normal typing + unicode + keyboard layouts:

“Composing regions”. An umlaut is entered first and waiting for the second char before being combined together into a singel glyph. Partially-entered regions are normally decorated with underline (this case) or bg color:

On-screen keyboard. No physical keys were pressed

Touchbar/on-screen keyboard suggestions. Change already typed word, works by tracking what is currently word under cursor. Displayed with on-screen keyboard, but touchbar works the same:

System-wide text replacement. Can be customized (\shrug is a custom one I made):

Emoji picker. Again, no physical keys were pressed (except for calling out emoji picker):

Smart quotes, graphical completion, word capitalization, auto-correction. All system-wide settings, all change text and can be “undone” if you are not happy with those changes:

In X11, there's no dedicated event for character processing. You should treat KeyPress event as a key press event and a keyboard character input event.

UPDATE: On *nix, there's IBus, an input framework that can serve complex languages like Chinese, Japanese, etc. It comes with GNOME 3.

in terms of API we could start from looking on AWT implementation/realisation, they have interface https://docs.oracle.com/javase/7/docs/api/java/awt/im/InputMethodRequests.html with bunch of method that client code should implement to describe to OS where is text input and which text is processed now

In WinAPI, we have Input Method Manager (IMM). The IME allows computer users to enter complex characters and symbols, such as Japanese kanji characters, by using a standard keyboard.
Seems, like it is what we are looking for?
LinksIMM
About IMM

https://firefox-source-docs.mozilla.org/editor/IMEHandlingGuide.html

https://github.com/openjdk/jfx/blob/86b854dc367fb32743810716da5583f7d59208f8/modules/javafx.graphics/src/main/native-glass/mac/GlassView3D.m#L729

https://github.com/mozilla/gecko-dev/blob/master/widget/cocoa/TextInputHandler.mm

https://github.com/JetBrains/skiko/blob/fda59e1f8b96142c20fbf8bed015b3a4978cea70/skiko/src/jvmMain/objectiveC/macos/InputMethod.mm

https://tedyin.com/posts/a-brief-intro-to-linux-input-method-framework/

Wayland seems to be left out
https://github.com/HumbleUI/HumbleUI/issues/86
https://wayland.app/protocols/input-method-unstable-v1


z-index is wrong within angular-toastr.min.css on version 2.0.0 when installed via bower.json

When i used your module my toastr was always behind another container, which was placed absolute.
In the end i found out, that there seems to be a mistake within your minified CSS file.
I'm using an Ionic/PhoneGap Project.
In my angular-toastr.min.css i have the following line:
#toast-container{position:fixed;z-index:1}
When i look at your repository, i can not find this mistake...
https://github.com/Foxandxss/angular-toastr/blob/master/dist/angular-toastr.min.css
...all seems right here.
To install angular-toastr i have added the following line to my bower.json:
"angular-toastr": "2.0.0"
I even double-checked my installation by removing all bower components and reinstalled them.
At the time of installation i had bower version 1.7.2 installed.
An upgrade to the current bower version 1.7.9 had no effect.

Yes, known issue and is fixed. I need to make a release but lately I am swamped. Will release this week.

Wow thanks for the fast answer...i'll go with the unminified version until the next release


Better handling of cancelling ODBC connection parameters dialog

I've recently noticed that cancelling the dialog shown by ODBC when the username and/or password is not specified resulted in a weird bad_alloc being thrown. Turns out we were using an unitialized variable, which can't be a good thing -- clarity of the error message notwithstanding.

LGTM


Add day support

Fix #8

Hey @UbadahJ , Congratulations on getting the first PR merged, we would like to give you a shoutout on our twitter account twitter.com/ieeevitvellore. Can you please provide us with your twitter handle?

This is bit awkward; I don't use twitter and will need to find my credentials. Give me a day to see if I have saved it somewhere

@UbadahJ ok, we’ll wait for a day! Do remember to update here. Thanks!


Math Symbol Wrapping

(Math editor) Wrapping an expression with symbols from the math category section of the keyboard such as sigma or brackets causes the inner expression to be slightly displaced from the correct position. This causes the algorithm to incorrectly recognizes the overall expression.
For example try wrapping sigma around x_i from the desktop. You can check the current values at any step by checking the mathjax preview.

type x
arrow key down
type i
highlight the entire thing
click the sigma from the math category

closely related issue to #288


Add action for deactivating selected users to User admin panel

I think it is handy to have default action for disabling users from the list view.

I created a followup therad on django forum: https://forum.djangoproject.com/t/proposal-add-more-default-actions-to-default-user-admin-page/21584


Bump version, upgrade excelize, and add command to run test in makefile

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 85.95%. Comparing base (0ec038f) to head (d9ecf51).

:exclamation:  There is a different number of reports uploaded between BASE (0ec038f) and HEAD (d9ecf51). Click for more details.
HEAD has 5 uploads less than BASE

Flag
BASE (0ec038f)
HEAD (d9ecf51)

6
1

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #170      +/-   ##
==========================================
- Coverage   95.43%   85.95%   -9.48%
==========================================
  Files          27        7      -20
  Lines        3108      997    -2111
==========================================
- Hits         2966      857    -2109
+ Misses        108      106       -2
  Partials       34       34

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

🚨 Try these New Features:

Flaky Tests Detection - Detect and resolve failed and flaky tests


remat with scan part 2

This is a followup to #1907.
The code from #1907 does work now with the fix, but I am still getting the NotImplemented error I referred. The minimal example (below) is more complicated, but I hope it's not too bad. Please let me know if I can be helpful with debugging.
Thanks in advance!
!pip install --upgrade -q https://storage.googleapis.com/jax-releases/cuda$(echo $CUDA_VERSION | sed -e 's/\.//' -e 's/\..*//')/jaxlib-$(pip search jaxlib | grep -oP '[0-9\.]+' | head -n 1)-cp36-none-linux_x86_64.whl
!pip install --upgrade -q jax

import numpy as onp

import jax.numpy as np
from jax import random, jit, grad, vmap, lax, remat
from functools import partial

#######################################
#Error only when all of these are True#
#######################################
function_test = True
test_remat = True
test_scan = True

def pot(dr, D0=5.0, **kwargs):
  U = dr**2
  if(function_test):
    U = D0 * U
  else:
    U = U - D0
  return np.array(U, dtype=dr.dtype)

def sys_energy(metric, D0=5.0):
  def fn_mapped(R, **dynamic_kwargs):
    _metric = vmap(vmap(partial(metric, **dynamic_kwargs), (0, None), 0), (None, 0), 0)
    dr = _metric(R, R)
    return np.sum(
        pot(dr, D0=D0),
        axis=None,
        keepdims=False)
  return fn_mapped

def create_simulation(params):
  D0 = params
  def displacement(Ra, Rb, **unused_kwargs):
    return Ra - Rb
  def shift(R, dR, **unused_kwargs):
    return R + 0.001*dR

  energy_fn = sys_energy(displacement, D0=D0)

  def get_dynamics_functions(energy_fn, shift):
    force_fn = grad(lambda R, *args, **kwargs: -energy_fn(R, *args, **kwargs))
    def init_fn(R):
      return R
    def apply_fn(state, **kwargs):
      R = state
      F = force_fn(R, **kwargs)
      R = shift(R, F)
      return R
    return init_fn, apply_fn

  return get_dynamics_functions(energy_fn, shift)

def run(params):
  key2, split = random.split(key,2)
  init_fn, apply_fn = create_simulation(params)

  R = random.uniform(
    split, (N, dimension), minval=0.0, maxval=8.0, dtype=np.float32)

  state = init_fn(R)

  n_steps_inner = 3
  n_steps_outer = 2

  def run_partial(state, i):
    def loop_fn(s, i):
      return apply_fn(s), np.array([0.])
    if(test_scan):
      steps = np.arange(0,n_steps_inner)
      return lax.scan(loop_fn, state, steps)
    else:
      return loop_fn(loop_fn(loop_fn(state,0)[0],0)[0],0)

  if(test_remat):
    run_partial = remat(run_partial)

  run_partial = jit(run_partial)

  #Surprisingly, this scan doesn't seem to affect things one way or another...
  state, temp = lax.scan(run_partial, state, np.arange(n_steps_outer))
  #state, temp = run_partial(run_partial(state,0)[0],0)

  return np.mean(state)

key = random.PRNGKey(0)
N = 10
dimension = 3

grad(run)(20.0)

Sorry for being slow on this.
Here's a crazy-sounding fix: just delete the lines that raise the exception, i.e. these lines in lax_control_flow.py.
In JAX we model reverse-mode autodiff, like grad, as three steps: linearization (forward-mode autodiff), partial evaluation, and transposition (which turns forward into reverse). The exception being raised here is saying that the transpose rule can't be sure, based on the information we handed it, that the linearized-and-partial-evaluated scan we gave it is truly linear / transposable.
But anything produced by the first two steps will be transposable! We just haven't yet set it up in a way that the transpose rule can check that fact.
If you delete the exception, the transpose rule just proceeds assuming that the transposition is going to work. And it does! (If it didn't, we'd get an error. And you can always use check_grads from jax.test_util to check things numerically.) It'll always succeed for jaxprs produced by linearize-and-partial-eval. The only time it'd fail if, hypothetically, a user wanted to directly transpose their own jaxpr involving a scan which wasn't actually linear.
I think our intent with the NotImplementedError is that we wanted to add more explicit information to certify that the jaxpr to be transposed is really transposable. That still seems like a noble goal...
I want to check this thinking tomorrow, if I get a chance to work on this.

It appears that this comes up in even the simplest examples of calling scan inside remat:
def scan_bug(x0):
  f = lambda x, _: (x + 1, None)

  def scanned_f(x, _):
    return lax.scan(f, x, xs=None, length=1)[0], None

  # The first three versions work. The last one crashes.
  # x, _ = f(x0, None)
  # x, _ = remat(f)(x0, None)
  # x, _ = scanned_f(x0, None)
  x, _ = remat(scanned_f)(x0, None)
  return x

jax.grad(scan_bug)(1.0)  # NotImplementedError


firebase emulator is not running by lint-staged

Description
Hi folks.
I am facing issues to run firebase emulator command via lint-staged. I can run firebase emulator command without any issues using plain npm scripts. But it is failing to run either npm run command or scripts directly.
I cannot get any error logs even with -v and -d flags so I cannot troubleshoot anymore.
So If I'd generalized this issue, my question would be How can I get error logs of failed tasks in verbose?.
Thanks.
Steps to reproduce
I redact and just share necessary snippets here.

package.json file

{
  "scripts": {
    "test:rules": "firebase emulators:exec --only firestore 'jest --forceExit'"
  }
}

.lintstagedrc.json file

{
  "firestore.rules": ["npm run test:rules"]
}

npm run test:rules works correctly.
npx lint-staged -v -d is failing.

Debug Logs

expand to view
$ npx lint-staged -v -d

  lint-staged:bin Running<EMAIL_ADDRESS>on Node.js v20.12.0 (linux) +0ms
  lint-staged:bin Options parsed from command-line: {
  allowEmpty: false,
  concurrent: true,
  configPath: undefined,
  cwd: undefined,
  debug: true,
  diff: undefined,
  diffFilter: undefined,
  maxArgLength: undefined,
  quiet: false,
  relative: false,
  shell: false,
  stash: true,
  hidePartiallyStaged: true,
  verbose: true
} +2ms
  lint-staged:validateOptions Validating options... +0ms
  lint-staged:validateOptions Validated options! +0ms
  lint-staged Unset GIT_LITERAL_PATHSPECS (was `undefined`) +0ms
  lint-staged:runAll Running all linter scripts... +0ms
  lint-staged:runAll Using working directory `/home/test-website` +0ms
  lint-staged:resolveGitRepo Resolving git repo from `/home/test-website` +0ms
  lint-staged:resolveGitRepo Unset GIT_DIR (was `undefined`) +0ms
  lint-staged:resolveGitRepo Unset GIT_WORK_TREE (was `undefined`) +0ms
  lint-staged:execGit Running git command [ 'rev-parse', '--show-prefix' ] +0ms
  lint-staged:resolveGitRepo Resolved git directory to be `/home/test-website` +40ms
  lint-staged:resolveGitRepo Resolved git config directory to be `/home/test-website/.git` +0ms
  lint-staged:execGit Running git command [ 'log', '-1' ] +40ms
  lint-staged:execGit Running git command [ 'diff', '--name-only', '-z', '--diff-filter=ACMR', '--staged' ] +19ms
  lint-staged:runAll Loaded list of staged files in git:
  lint-staged:runAll [ '/home/test-website/firestore.rules' ] +82ms
  lint-staged:searchConfigs Searching for configuration files... +0ms
  lint-staged:execGit Running git command [ 'ls-files', '-z', '--full-name', '-t' ] +24ms
  lint-staged:execGit Running git command [
  'ls-files',
  '-z',
  '--full-name',
  '-t',
  '--others',
  '--exclude-standard'
] +10ms
  lint-staged:searchConfigs Found possible config files: [
  '/home/test-website/functions/package.json',
  '/home/test-website/.lintstagedrc.json',
  '/home/test-website/package.json'
] +33ms
  lint-staged:loadConfig Loading configuration from `/home/test-website/functions/package.json`... +0ms
  lint-staged:loadConfig Loading configuration from `/home/test-website/.lintstagedrc.json`... +1ms
  lint-staged:loadConfig Loading configuration from `/home/test-website/package.json`... +0ms
  lint-staged:loadConfig Successfully loaded config from `/home/test-website/functions/package.json`:
  lint-staged:loadConfig null +2ms
  lint-staged:loadConfig Successfully loaded config from `/home/test-website/.lintstagedrc.json`:
  lint-staged:loadConfig { 'firestore.rules': [ 'npm run test:rules' ] } +0ms
  lint-staged:validateConfig Validating config from `/home/test-website/.lintstagedrc.json`... +0ms
  lint-staged:validateConfig Validated config from `/home/test-website/.lintstagedrc.json`: +1ms
  lint-staged:validateConfig {
  lint-staged:validateConfig   'firestore.rules': [
  lint-staged:validateConfig     'npm run test:rules'
  lint-staged:validateConfig   ]
  lint-staged:validateConfig } +0ms
  lint-staged:loadConfig Successfully loaded config from `/home/test-website/package.json`:
  lint-staged:loadConfig null +4ms
  lint-staged:searchConfigs Found 1 config files +8ms
  lint-staged:groupFilesByConfig Grouping 1 files by 1 configurations +0ms
  lint-staged:chunkFiles Resolved an argument string length of 46 characters from 1 files +0ms
  lint-staged:chunkFiles Creating 1 chunks for maxArgLength of 65536 +0ms
  lint-staged:generateTasks Generating linter tasks +0ms
  lint-staged:generateTasks Generated task:
  lint-staged:generateTasks {
  lint-staged:generateTasks   pattern: 'firestore.rules',
  lint-staged:generateTasks   commands: [ 'npm run test:rules' ],
  lint-staged:generateTasks   fileList: [ '/home/test-website/firestore.rules' ]
  lint-staged:generateTasks } +6ms
  lint-staged:makeCmdTasks Creating listr tasks for commands [ 'npm run test:rules' ] +0ms
  lint-staged:resolveTaskFn cmd: npm +0ms
  lint-staged:resolveTaskFn args: [ 'run', 'test:rules' ] +1ms
  lint-staged:resolveTaskFn execaOptions: {
  cwd: '/home/test-website',
  preferLocal: true,
  reject: false,
  shell: false,
  stdin: 'ignore'
} +0ms
  lint-staged:chunkFiles Resolved an argument string length of 46 characters from 1 files +12ms
  lint-staged:chunkFiles Creating 1 chunks for maxArgLength of 65536 +0ms
[STARTED] Preparing lint-staged...
  lint-staged:GitWorkflow Backing up original state... +0ms
  lint-staged:GitWorkflow Getting partially staged files... +0ms
  lint-staged:execGit Running git command [ 'status', '-z' ] +55ms
  lint-staged:GitWorkflow Found partially staged files: [] +36ms
  lint-staged:GitWorkflow Backing up merge state... +1ms
  lint-staged:file Reading file `/home/test-website/.git/MERGE_HEAD` +0ms
  lint-staged:file Reading file `/home/test-website/.git/MERGE_MODE` +0ms
  lint-staged:file Reading file `/home/test-website/.git/MERGE_MSG` +0ms
  lint-staged:file File `/home/test-website/.git/MERGE_HEAD` doesn't exist, ignoring... +1ms
  lint-staged:file File `/home/test-website/.git/MERGE_MODE` doesn't exist, ignoring... +0ms
  lint-staged:file File `/home/test-website/.git/MERGE_MSG` doesn't exist, ignoring... +0ms
  lint-staged:GitWorkflow Done backing up merge state! +1ms
  lint-staged:GitWorkflow Getting deleted files... +1ms
  lint-staged:execGit Running git command [ 'ls-files', '--deleted' ] +39ms
  lint-staged:GitWorkflow Found deleted files: [] +19ms
  lint-staged:execGit Running git command [ 'stash', 'create' ] +19ms
  lint-staged:execGit Running git command [
  'stash',
  'store',
  '--quiet',
  '--message',
  'lint-staged automatic backup',
  '86ee66d44e33437305c3227de0fd3e2d97d3c43d'
] +40ms
  lint-staged:GitWorkflow Done backing up original state! +57ms
[COMPLETED] Preparing lint-staged...
[STARTED] Running tasks for staged files...
[STARTED] .lintstagedrc.json — 1 file
[STARTED] firestore.rules — 1 file
[STARTED] npm run test:rules
[FAILED] npm run test:rules [FAILED]
[FAILED] npm run test:rules [FAILED]
[COMPLETED] Running tasks for staged files...
[STARTED] Applying modifications from tasks...
[SKIPPED] Skipped because of errors from tasks.
[STARTED] Reverting to original state because of errors...
  lint-staged:GitWorkflow Restoring original state... +5s
  lint-staged:execGit Running git command [ 'reset', '--hard', 'HEAD' ] +5s
  lint-staged:execGit Running git command [ 'stash', 'list' ] +46ms
  lint-staged:execGit Running git command [ 'stash', 'apply', '--quiet', '--index', '0' ] +31ms
  lint-staged:GitWorkflow Restoring merge state... +174ms
  lint-staged:GitWorkflow Done restoring merge state! +1ms
  lint-staged:file Removing file `/home/test-website/.git/lint-staged_unstaged.patch` +5s
  lint-staged:file File `/home/test-website/.git/lint-staged_unstaged.patch` doesn't exist, ignoring... +0ms
  lint-staged:GitWorkflow Done restoring original state! +1ms
[COMPLETED] Reverting to original state because of errors...
[STARTED] Cleaning up temporary files...
  lint-staged:GitWorkflow Dropping backup stash... +0ms
  lint-staged:execGit Running git command [ 'stash', 'list' ] +100ms
  lint-staged:execGit Running git command [ 'stash', 'drop', '--quiet', '0' ] +26ms
  lint-staged:GitWorkflow Done dropping backup stash! +59ms
[COMPLETED] Cleaning up temporary files...

✖ npm run test:rules:

> Test<EMAIL_ADDRESS>test:rules
> firebase emulators:exec --only firestore 'jest --forceExit' 2>&1 /home/test-website/firestore.rules

Environment

OS: Ubuntu 22.04 LTS
Node.js: v20.12.0
lint-staged: v15.2.2

Hello,
errors from commands should be visible even without any additional flags. I'm not really sure how to help you because there's no output. Does the exact same command work normally if you append staged filenames to the end?
my-command staged_file_1 staged_file_2

As you can see the debug log i shared in the issue desc, lint-staged executes npm run test:rules.

@iiroj ok so when i change .lintstagedrc.json file as following and run npx lint-staged -v, i can get the content of firestore.rules file.
{
  "firestore.rules": ["cat"]
}

Now i can understand what you said my-command staged_file_1 staged_file_2.
I want to run a static command instead of appending staged_file names at the end of the command. Is it impossible?

You can try the function config format, since it allows you to customize how filenames are passed:
// .lintstagedrc.js
export default {
  "firestore.rules": (filenames) => "npm run test:rules"
}

You can try the function config format, since it allows you to customize how filenames are passed:
// .lintstagedrc.js
export default {
  "firestore.rules": (filenames) => "npm run test:rules"
}

@iiroj it works now, thanks 👍
Now even i define the .lintstagedrc.json as following, other file changes except firestore.rules are not detected by lint-staged.
{
  "firestore.rules": ["npm run test:rules"],
  "*.js": [
    "npm run lint",
    "npm run format"
  ]
}

I think the current .lintstagedrc.js overrides for all files. Is it possible to customize for only firestore.rules file?

You need to move all your config into the JSON config, but it should be compatible:
// .lintstagedrc.js
export default {
  "firestore.rules": (filenames) => "npm run test:rules",
  "*.js": [
    "npm run lint",
    "npm run format"
  ]
}

Thanks @iiroj


Disable persistent sessions in MQTT

Currently, the MQTT broker allows persistent clients (clients with clean sessions disabled), e.g. they rely on the broker to restore the session with subscriptions. This is not safe as the MQTT broker always needs to remain state of the clients and subscriptions, and also share this state among brokers when we scale it horizontally. When the MQTT broker is unable to restore the session, the MQTT protocol does not provide a way to inform the client. Disconnecting the client is not an option, because of auto reconnect, the client will keep connecting automatically.

[ ] Do not allow clients with clean session disabled on the MQTT broker **
[ ] The MQTT broker should not send PUBACK or SUBACK when QoS 2 is requested **
[ ] Update the default MQTT client to enable clean sessions (as part of #199)
[ ] Update the SDKs and examples to enable clean sessions

Note: this breaks QoS 1 and 2 for offline clients. QoS 1 is still supported when the client is online.
** this may require forking Mosquitto. We may need to consider building our own MQTT broker, which becomes way easier if we don't need to support persistent sessions.

I think that we will loose too much if we throw all this overboard.
Where is the point of having a queue when it is not queuing anything? (At least this is how I understand this issue).
Being able to have persitent session and "work" in the eye of failing clients and connections is one of the major benefits of the async model.
I don't get what the problem with mosquitto is but perhaps you want to look at emqttd?
I ran a public broker for a while and persistent session were not a problem as the broker has a high-water mark for the number of messages and duration how long it would retain messages for a single persistent client, preventing it from overflowing.

Although the Q in MQTT stands for Queuing, it's just a feature (and an old name). MQTT is primarily a publish/subscribe protocol, and that is what we need.
The problem is not so much in the broker, but more in the behavior of the clients when they are persistent.
When clients are persistent, they require the broker to restore the session on reconnect, so they subscribe once on start-up (which may be months ago). That is by design of MQTT. Now, if the broker is unable to restore the session, because of expiration or losing state, it has no way to inform the clients, so they are connected but they are not subscribed, let alone that they will get their lost messages.
If queuing is really necessary, then we might need to use AMQP for that. MQTT is just not the way to go here in this scenario.

it has no way to inform the clients, so they are connected but they are not subscribed, let alone that they will get their lost messages.

In MQTT 3.1.1 this is solved via the "Session Present" flag, isn't it?

It is, yes, but it is not widely supported by client libraries. If you can point me to one that reads the flag in the first place, please, and then it has to handle it correctly too, like subscribing on reconnect if the session is not there.
On paper it works. In practice, we're gonna lose session state, it's gonna be hard to replicate between brokers if we scale and users will subscribe once after connect, as in almost all code samples, so their smart MQTT client would have to restore it. That's my concern.

For now we are not disabling persistent sessions in MQTT. With the AMQP interface being added to the Handler, most issues can be easily solved by using that.


Add TaskRun to v1alpha2 🎋

Changes
This modify how TaskRunSpec looks from v1alpha1:

params is now directly under spec
no more inputs and outputs, get replaced by resources
resource has input and output resource declaration fields, similar
to how it is used in Pipeline

The next step are :

Add more types (Pipeline, PipelineRun, Condition)
Refactor v1alpha1 to embedded v1alpha2 (for storage purpose)
Auto-conversion from v1alpha1

The spec will look like this (only thing that changed from v1alpha1).
spec:
  params:
     # params here
  resources:
    inputs:
      # inputs resources here
    outputs:
      # outputs resource here

One important thing to note here though, is as we are keeping the current PipelineResource as alpha, I can't have embedded ResourceSpec in TaskRun if we keep PipelineResource in the same api group... :sweat_smile: :sweat:. (That said, we may be able to do something hacky to bypass that problem :see_no_evil: )
This should more or less fix #1185
Depends on #1706  and #1720 :sweat_smile:
/hold
Signed-off-by: Vincent Demeester<EMAIL_ADDRESS>Submitter Checklist
These are the criteria that every PR should meet, please check them off as you
review them:

[x] Includes tests (if functionality changed/added)
[ ] Includes docs (if user facing)
[x] Commit messages follow commit message best practices

See the contribution guide for more details.
Double check this list of stuff that's easy to miss:

If you are adding a new binary/image to the cmd dir, please update
the release Task to build and release this image.

Reviewer Notes
If API changes are included, additive changes must be approved by at least two OWNERS and backwards incompatible changes must be approved by more than 50% of the OWNERS, and they must first be added in a backwards compatible way.

One important thing to note here though, is as we are keeping the current PipelineResource as alpha, I can't have embedded ResourceSpec in TaskRun if we keep PipelineResource in the same api group... :sweat_smile: sweat. (That said, we may be able to do something hacky to bypass that problem :see_no_evil: )

I think we should try to do something hacky and bypass it so that we can embed ResourceSpecs in TaskRuns even though they are alpha.

I think we should try to do something hacky and bypass it so that we can embed ResourceSpecs in TaskRuns even though they are alpha.

Ok, will look into that :speak_no_evil:

resource has input and output resource declaration fields, similar to how it is used in Pipeline

I think I'm doing a bad job of looking and/or dont know what im looking for: @vdemeester where can I find the logic that will automatically convert v1alpha1 TaskRuns that use the old syntax to the new v1alpha2 syntax?

I think I'm doing a bad job of looking and/or dont know what im looking for: @vdemeester where can I find the logic that will automatically convert v1alpha1 TaskRuns that use the old syntax to the new v1alpha2 syntax?

well, nowhere :
The next step are :

    Add more types (Pipeline, PipelineRun, Condition)
    Refactor v1alpha1 to embedded v1alpha2 (for storage purpose)
    Auto-conversion from v1alpha1

In a follow-up :bowing_man:

Rebased but depends on #1773 if we want to support PipelineResource embedded in v1alpha2.

/hold cancel

/test pull-tekton-pipeline-integration-tests

/hold
This depends on #1841 too now :angel: :stuck_out_tongue_closed_eyes:

/hold cancel


BUG: read_raw_brainvision fails for Brain Vision Data Exchange Header File Version 1.0

/opt/anaconda3/lib/python3.4/site-packages/mne/io/brainvision/brainvision.py in _get_vhdr_info(vhdr_fname, eog, misc, scale, montage)
    350         unit = unit.replace(u'\xc2', u'')  # Remove unwanted control characters
    351         cals[n] = float(resolution)
--> 352         ranges[n] = _unit_dict.get(unit, unit) * scale
    353
    354     # create montage

TypeError: can't multiply sequence by non-int of type 'float'

Digging into it:
ipdb> unit
'uV'
ipdb> scale
1.0
ipdb> _unit_dict
{'V': 1.0, 'µV': 1e-06}

So it looks like 'uV' is not defined in the unit dictionary.
I can make a PR if this is a bug and not a problem of my files. I've got several of them.

Make a PR I'd say.
Are your BV files created by BV recorder?

Don’t really know where this files came from.
I’ve got the vhdr, vmrk and eeg files.

On 05 Feb 2016, at 10:55, jona-sassenhagen<EMAIL_ADDRESS>wrote:
Make a PR I'd say.
Are your BV files created by BV recorder?
—
Reply to this email directly or view it on GitHub https://github.com/mne-tools/mne-python/issues/2850#issuecomment-180278314.


Option to start the week on Mondays on Oceanic

Hi, first of all amazing project!
I was tweaking yesterday in a fork I've made of the project and I managed to do exactly what the title says as I cannot see the option to change it on the main branch. I've seen an old issue when this was supposedly solved but I'm not seeing that KalendarKonfig class anymore.
Another aspect I added but haven't test it is the option to change the styling of the BorderStroke for the current day, as it was a bit weird with the default black on a dark background.
Thanks so much, you can take a look on my fork KalendarLocale if you want. Ignore the commits where I try to upload it to Jitpack without success, as I was trying to use this component with the changes for a different project.

The thing is upon seeing the code more in depth. I think what it does is to set the starting day of the week on the current day insttead on Sunday or Monday. I hope there is a solution to change this...


Fix error removing proof req entries by timestamp

Signed-off-by: Ian Costanzo<EMAIL_ADDRESS>Addresses issue https://github.com/hyperledger/aries-cloudagent-python/issues/1455

Codecov Report

Merging #1465 (d4ad9a9) into main (d628b40) will decrease coverage by 0.00%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##             main    #1465      +/-   ##
==========================================
- Coverage   95.82%   95.81%   -0.01%
==========================================
  Files         489      489
  Lines       30018    30018
==========================================
- Hits        28764    28762       -2
- Misses       1254     1256       +2


Add base-weight to System::Extrinsic* events

Closes https://github.com/paritytech/substrate/issues/12252:

Adds the base-weight of the respective dispatch class into the event by modifying note_applied_extrinsic.
Update tests and give the mocked Operational class a distinct base weight, to improve testing.

PolkadotJs now also shows the correct weight of a Remark: 87_298_000 = 86_298_000 (base) + 1_000_000 (remark).
This is identical to the result of System::blockWeight(block_hash) in that case.

cc @notlesh

@ggwpez now you just need to fix the tests.

bot merge


fix: encode uri components before calling platform

This fixes places where the platform URL components were only concatenated and not encoded. I separated out the encoded variables in order to maintain readability of the interpolated string

My only request is to add one or more tests for this change. 🙂

My only request is to add one or more tests for this change. 🙂

on it.


fix issue 446: tensordot vjps not handling axes specification correctly

The tensordot vjps did not handle axis specification correctly. This should be fixed here, including a test that failed in before the fix.

Awesome, thanks!


Special characters in password

When special characters are being used in the password, freerdp fails to connect.
xfreerdp /cert-ignore +clipboard /bpp:16 /size:1280x960 /g:gateway.domain.com /gd:DOMAIN /gu:username /gp:pa$$word /v:vts.DOMAIN.com:3389 /d:DOMAIN /p:pa$$word /u:username
[15:21:49:284] [7121:00081000] [INFO][com.freerdp.client.common.cmdline] - loading channel cliprdr
[15:21:49:305] [7121:00081000] [INFO][com.freerdp.client.x11] - Property 296 does not exist
[15:21:49:597] [7121:00081000] [ERROR][com.freerdp.core.gateway.tsg] - tsg_check failure
[15:21:49:597] [7121:00081000] [ERROR][com.freerdp.core.nego] - Protocol Security Negotiation Failure
[15:21:49:597] [7121:00081000] [ERROR][com.freerdp.core] - freerdp_set_last_error ERRCONNECT_SECURITY_NEGO_CONNECT_FAILED [0x2000C]
[15:21:49:597] [7121:00081000] [ERROR][com.freerdp.core.connection] - Error: protocol security negotiation or connection failure
[15:21:49:597] [7121:00081000] [ERROR][com.freerdp.client.x11] - Freerdp connect error exit status 1
xfreerdp /cert-ignore +clipboard /bpp:16 /size:1280x960 /g:gateway.DOMAIN.com /gd:DOMAIN /gu:username /gp:'pa$$word' /v:vts.DOMAIN.com:3389 /d:DOMAIN /p:'pa$$word' /u:step9170
[15:07:56:673] [6821:00081000] [INFO][com.freerdp.client.common.cmdline] - loading channel cliprdr
[15:07:56:686] [6821:00081000] [INFO][com.freerdp.client.x11] - Property 296 does not exist
[15:08:00:968] [6821:00081000] [INFO][com.freerdp.core.gateway.tsg] - TS Gateway Connection Success
[15:08:03:599] [6821:00081000] [INFO][com.freerdp.core.gateway.tsg] - TS Gateway Connection Success

I guess this is not a FreeRDP bug since you have to quote most of the special characters especially "$" which is used for variable names in linux distributions..

Unfortunately, when you remove the /gp: or /p: from the commandline and let FreeRDP prompt for it, the connection then hangs with the process spinning at 100% on a CPU and no output (nothing graphical either) when using the Balabis SCB device as a gateway. Running a strace() on it doesn't provide anything too useful, hard to tell exactly what's wrong. As such we manually prompt for the password then attempt to pass it to xfreerdp as a workaround.
For reasons I cannot yet determine, attempts to pass the $ character in a password from a bash script to xfreerdp fails no matter what, even when you hard code single quotes around it, prefix it with an escape character, use array words instead of single variables, and every other hack and trick I personally have tried. They look good when you trace it and pass the code over (bash -x e.g.), but something in the subprocess is eating that $ character which befuddles my attempts to get working.

@troyengel did you try to escape the whole parameter like
'/p:pa$$word'

That way your shell shouldn't interpret the $$ and FreeRDS doesn't get any additional quotes (which would probably be included in your example from above).
There is also a PR from @akallabeth (#2570) that tries to handle quoted arguments as well. If the quoting like described above doesn't work give that branch (https://github.com/akallabeth/FreeRDP/tree/cmdline_escaped_argument_support) a try.

I see the commit in his tree and it looks like something that might help - yeah so far I've tried a ton of things like:
'/p:pa$$word'
/p:'pa$$word'
/p:pa'$$'word
/p:pa\$\$word

...etc. I really do think it has something to do specifically with bash passing the options when launching it, even when I use an array like so (fake various examples):
declare -a XFLAGS
XFLAGS+=(/p:pa'$$'word /'gp:pa$$word')
xfreerdp "${XFLAGS[@]}"

When run under bash -x, it looks like it's preserving all the quoting and stuff, but it fails. If you simply type on the commandline the exact same things it works -- I feel it's something very unique to passing the data as variables to the process in a script, just can't figure out how to get it working right.
(side note: due to a very similar issue with the space character, using arrays to send the parameters as word objects is required - another discovery we made)

@troyengel
Using Master from May 27th works perfectly well on my setup (Ubuntu Trusty and bash):
xfreerdp /v:server /u:user '/p:$$ test' /sec:nla
I really do thins it has something to do with your in-band gateway (a Balabit SCB right?)
Can you test directly (without the gateway)?

If you run it like you mentioned directly on the commandline, it works -- if you write a simple bash script like this:
MYPASS='/p:$$ test'
xfreerdp ... ${MYPASS}

...does that still work? It has to do specifically with passing it from a bash wrapper as a variable, not using it directly. (sadly, I do not have the option of not using the Balabit SCB - I agree this appliance might be part of the problem)

@troyengel
Yes it works in a script.
You have to use this instead:
MYPASS='/p:$$ test'
xfreerdp ... "${MYPASS}"

yeah I get the " need, I was just typing quickly - that wasn't meant verbatim. Unfortunately this is what we can't get working (and many variants of it), and it has to be an array for the space issue - it's possible this is limited to the old default version of bash on Mac OS X (3.2) but the testers have tried brew bash (v4) with no better results. We'll keep banging on it - if you escape the $ ($) there is a high ability to segfault xfreerdp depending on which exact code is in use.
This project needs to start tagging official releases, it's a gamble which piece of code any one workstation is on because they're all compiling at that time with brew from HEAD from github. Even the main Linux distros (Ubuntu, Arch, Fedora) are all over the map as to which exact FreeRDP code is in use, it's a real PITA to develop working solutions like this...

Assuming this is not a FreeRDP issue, closing.
Feel free to reopen if you think this is.