Parameter Info panel: improve contrast of current argument

Is there an existing issue outlining your improvement?

[X] I have searched the existing issues and my improvement has not been raised yet.

What would you like to see added and/or changed?
It is hard to see which argument is bold. A current argument can be colored and the others are greyed, which can fix this issue.
My Theme: Catppuccin Mocha

Hi :wave:
Can you let me know how you're viewing this panel in the IDE? I'm only able to get the following type of parameter info panels while typing out the arguments:

Hi,
This is how I can see that panel.

It might be due to a difference in Intellij version, I'm running v2024.1.1 with the New UI enabled.
Regarding the colours, I'm pretty sure that I don't have any control over the highlighting of the parameters in that panel, I'm not seeing any highlights that I can modify :/

Oh, I'm using Rider btw 2024.1.2 new UI enabled. Sorry, I forgot to mention.

No worries, I think I'll leave this issue open in case others are able to figure it out but I don't think this can be changed. Sorry!

No problem. Thanks.


When debugging (F5) everything is ok. If i run the app (STRG+F5) no translation...

When debugging (F5) everything is ok. If i run the app (STRG+F5) no translation...
i have tried with old an new version of WPFLocalizationExtension.
This problem appeard since i have a lot of keys in resource files. About 550 keys.
Erlier with less keys i din't notice this problem.
I am  not sure if this is a WPFLocalizationExtension problem.
I have created the files with ResXManager but sommetimes i made changes to these
resources manually, directly in the files.

Sorry... It was my mistake! Everything is ok!

Would you tell us the story? Maybe we can learn something?


[CWS] improve exec exec rebase algorithm CPU usage

What does this PR do?
This PR improves the CPU usage of the exec exec rebase algorithm by:

improving the allocation patterns
creating a simple, alloc-free, fast path
implementing cycle detection (to protect ourselves against a potential bug)
moving from a queue to a stack when visiting children

Motivation

Additional Notes

Possible Drawbacks / Trade-offs

Describe how to test/QA your changes

Reviewer's Checklist

[ ] If known, an appropriate milestone has been selected; otherwise the Triage milestone is set.
[ ] Use the major_change label if your change either has a major impact on the code base, is impacting multiple teams or is changing important well-established internals of the Agent. This label will be use during QA to make sure each team pay extra attention to the changed behavior. For any customer facing change use a releasenote.
[ ] A release note has been added or the changelog/no-changelog label has been applied.
[ ] Changed code has automated tests for its functionality.
[ ] Adequate QA/testing plan information is provided if the qa/skip-qa label is not applied.
[ ] At least one team/.. label has been applied, indicating the team(s) that should QA this change.
[ ] If applicable, docs team has been notified or an issue has been opened on the documentation repo.
[ ] If applicable, the need-change/operator and need-change/helm labels have been applied.
[ ] If applicable, the k8s/<min-version> label, indicating the lowest Kubernetes version compatible with this feature.
[ ] If applicable, the config template has been updated.

did you do some benchmarking on the before and after? would be cool to see


Need someone to open up Prototek for OKC# - August 1 2016

Could someone open up Prototek for us today around 11:00-11:15?

See comment in #115


Contributed Environments normalized + base environment class docs expanded

This commit expands on the environment class and clarifies what is returned.

Thanks for the cleanup and docu!


Implement the GETAI operation

We implement the GETAI (aka. get address info) operation. Most of the glibc applications will rely on this operation to perform the hostname -> addrs resolutions.
We add some unit tests checking that we're correctly serializing the address info header and its payload. The expected data used in these tests has been extracted from various Nscd socket dumps. We also add an integration test checking that getaddrinfo is able to resolve localhost.
The Nix crate we rely on for the glibc FFI bindings does not wrap getaddrinfo yet. We had to pull the dns-lookup package to get those bindings.
Part of #37.
Note: on top of the automated tests, this PR has also been manually tested via a test VM.

@NinjaTrappeur can you describe your manual test? I wonder if that's something we can get working in Actions.

can you describe your manual test? I wonder if that's something we can get working in Actions.

We use a NixOS VM test, using a custom version of getent. This test makes use of the fact that external glibc modules only work via nscd protocol on NixOS, and uses the nss-systemd module too. I'm not sure this will be something trivial to port to a container.
We could add the VM test code to this repository, and tweak it so that it uses the nsncd code from here, but running it in GH actions might not work (nested virt).
See https://github.com/flokli/nixpkgs/blob/e26519527879774b6a2551b1704598039cdbcb6e/nixos/tests/nscd.nix for the test code.

On the actions front - you can reproduce the issue with Nix (nixpkgs) on a non-NixOS OS (in fact that's our use case). There is a host-wide libc, but Nix-built software doesn't use it. So I don't think we need NixOS specifically; we can just install Nix inside the actions VM running Ubuntu (or whatever) and make sure a getent call from nixpkgs.glibc works. That's probably worth doing anyway, since that's a more end-to-end test than our current one (e.g., it will catch if the NSCD protocol changes in some unfortunate way). I can give that a shot.

Both this and #40 seem reasonable.
Note that they both have to be merged in the same release because glibc's NSCD client disables lookups for the whole hosts family of operations if one operation comes back unimplemented (see also #26, where it disabled lookups for the whole groups family of operations), but that shouldn't be hard to do. I don't see any other host operations I think.
I'd like to add an end-to-end test and we should sort out the CLA stuff (#44) but I'm actually curious to run this internally on my dev box (i.e. without yet writing config to let you disable this)  and see how it holds up. I also want to stare a little bit harder at some of the _nss_gethostbyname4 stuff that isn't super well-documented to make sure we're indeed calling the right NSS functions, but I think this code does (We can test that in the end-to-end test.)
Thank you for the contributions!


Fix send_by_ref by modelling it like get_by_ref.

coverage on master

Summary of changes
Send_by_ref was working as expected for static arrays and arrays of higher rank.
Rationale for changes
Make send_by_ref to work for static arrays and arrays of higher rank. This fixes #654.
Additional info and certifications
This pull request (PR) is a:

[x] Bug fix
[ ] Feature addition
[ ] Other, Please describe:

I certify that

[x] I certify that:

I have reviewed and followed the contributing guidelines
I will wait at least 24 hours before self-approving the PR to give another
OpenCoarrays developer a chance to review my proposed code
I have not introduced errant white space (no trailing white space or white space errors may
be introduced)
I have added an explanation of what these changes do and why they should be included
I have checked to ensure there aren't other open Pull Requests for the same change
I have you written new tests for these changes
I have successfully tested these changes locally
I have commented any non-trivial, non-obvious code changes
The commits are logically atomic, self consistent and coherent
The commit messages follow best practices
Test coverage is maintained or increased after this is merged

Code coverage data

This fix also fixes the last open testsuite failure get_static_array.f90. It was tested with mpich 4.1.2, openmpi 4.1.5 and intel mpi 2021.13.


Use TryFrom to map protobuf data structures to our domain types

We currently have custom rolled domain types for the ConnectionEnd, ChannelEnd, etc. We also have the generated protobuf types. We should follows the convention adopted in the tendermint-rs repo that uses the protobuf types as an intermediary for deserializing from the wire into our domain types. We can do this by implementing TryFrom on our domain types to populate them from the protobuf types. Then with some serde magic, the deserialization can automatically flow through the protobuf types into our types.
See for instance the CommitSig and RawCommitSig in Tendermint:
https://github.com/informalsystems/tendermint-rs/blob/aefb3e062bb9026d765db509a676a9492b3c23f2/tendermint/src/block/commit_sig.rs#L11-L13
https://github.com/informalsystems/tendermint-rs/blob/aefb3e062bb9026d765db509a676a9492b3c23f2/tendermint/src/serializers/raw_commit_sig.rs#L22-L37

#152 fixes that with the same pattern but slightly different tools (because prost doesn't support serde).
CommitSig uses serde annotation in the domain type to identify the raw serde-decoded type and the TryFrom trait to validate the data from the raw type into the domain type.
ConnectionEnd (and others in ibc-rc) uses a "TryFromRaw" custom trait that does both: it works similarly to TryFrom as in it has a try_from(raw) method but it also introduces an associated type to store what exactly that raw type is. (Which in the previous case came from the serde annotation.)


fix(slider): constraints value between min and max

Should fix #1557

cc @mmalerba

LGTM, thanks!

@feloy Looks like this just needs another rebase

Is my rebase ok? I'm not sure if I have to do something about cla:no?

@feloy something seems to have gone amiss with the rebase; PR is showing 31 commits

@jelbourn Yes I think I missed my rebase. I can close this PR and create a new one. ok?

@feloy Fine by me, whatever is easiest for you

Replaced by #1617


using go 1.22, related #800

Closes #810

Reviewer checklist

Read PR description: a summary about the changes is required
Changelog updated
Documentation: docs/{Reference, Cli, ...}, Docker and cli help/usage
Pulled branch, manually tested
Verified requirements are met
Reviewed the code
Reviewed the related tests

How are the removals in kin-openapi related to the go update?

How are the removals in kin-openapi related to the go update?

go mod tidy


IdentityServer in a non-web scenario?

Is IdentityServer feasible for a non-web centric use case?
I have a TCP based service which clients connect to and this service may call an arbitrary number of internal microservices (using a service bus).
To have an unified identity/authentication platform between all service I tough IdentityServer might be a good choice except that every sample I found is somehow web specific.
Will IdentityServer do the job under this environment?

Idsrv is an implementation of OpenID Connect and OAuth 2 - which are both HTTP based.
That said - how you transfer access tokens between the client and the API is up to you. This can be done over arbitrary transports.


Added docker subnet to avoid relay access denied

Thank you @dy0nysos!

You're welcome

@dy0nysos I get some warning: non-null host address bits in "<IP_ADDRESS>/16", perhaps you should use "<IP_ADDRESS>/16" instead and don't receive mail anymore. Do you experience the same behaviour?

Yeah, changing the range to <IP_ADDRESS>/16 fixes the problem. I'm gonna push it soon.

Let me know if it still fits your needs.

I encountered the problem only when I pulled the new image.
I tried changing with  <IP_ADDRESS>/16 and it works so it's okay for me

The new image is building. I'll let you know when everything is ok.

Image pulled.
Seems to be okay

Same here.

I'd like to add unit / integration testing to this image but I don't know really how... I'll open an issue as a reminder.

Greetings @tomav I have been building to using build tests on my docker images and thought I would share this with you. At the bottom of a mail service readme you will see Shippable and CircleCI
This might be something I can help you improve on your docker build so functions can be tested with ease after each contributed commit.

Thank you @gegere, I'll have a look to shunit2.

Added tests using assert.sh in #29 to fix #28


Outline & Go To definition not working

Not sure if it's a good idea to put both in one issue, but I guess both functionalities need info from the AST

VsCode on linux
Preview version of plugin
Build seems to works fine
No errors in the logs

Outline shows
No symbol definitions found in document for every source I checked so far, tried classes and procedures

Popup => Go to defintion
does nothing,
tried on class references and include file references

LANGUAGE SERVER STATUS
[2024-07-26T13:14:00.423+0200] [INFO] ******** LANGUAGE SERVER STATUS ********
[2024-07-26T13:14:00.423+0200] [INFO] Number of OE installs: 2
[2024-07-26T13:14:00.423+0200] [INFO] Install 12.2 : /usr/oe122
[2024-07-26T13:14:00.423+0200] [INFO] Install 12.8 : /usr/oe128
[2024-07-26T13:14:00.423+0200] [INFO] License: Claerhout Computer Engineering nv -- COMMERCIAL
[2024-07-26T13:14:00.423+0200] [INFO] Uppercase keywords: false
[2024-07-26T13:14:00.423+0200] [INFO] Build mode: FULL_BUILD
[2024-07-26T13:14:00.423+0200] [INFO] Show include files in outline: true
[2024-07-26T13:14:00.423+0200] [INFO] Show content of include files in outline: true
[2024-07-26T13:14:00.423+0200] [INFO] Text files in memory: 1 -- Parse units: 0
[2024-07-26T13:14:00.423+0200] [INFO] Number of projects: 1
[2024-07-26T13:14:00.424+0200] [INFO] Project develop 1.0 -- Status
[2024-07-26T13:14:00.424+0200] [INFO]  -> Root directory<EMAIL_ADDRESS>[2024-07-26T13:14:00.424+0200] [INFO]  -> Number of threads: 1 -- Active ABL sessions: 1 -- LS Workers: 1
[2024-07-26T13:14:00.424+0200] [INFO]  -> SourceCode queue size: 0
[2024-07-26T13:14:00.424+0200] [INFO]  -> RCode queue size: 0
[2024-07-26T13:14:00.424+0200] [INFO]  -> Deployment queue size: 0

Reproduced issue on TypeNameNode when it's in a USING statement. It's a Proparse issue that will be fixed.
Regarding include file, are you sure the file can be found in the propath ? The fact that you don't see the outline makes me think that the project config is not correct, and proparse can't be executed correctly. Can you enable Language Server debug output ("abl.langServerDebug": true in settings.json) ?

propath should be correct as all code compiles.
log looks fine, as far as I can tell, except maybe for

the project null
the @ in paths which I'm not really fond of

I'll mail you the full unmodified log
[2024-07-30T07:58:37.605+0200] [INFO] Project found
[2024-07-30T07:58:37.632+0200] [INFO] [develop] Start OE client process #0
[2024-07-30T07:58:37.634+0200] [DEBUG] [develop] OE client process #0 command line: /usr/oe128/bin/_progres -inp 40000 -tok 4000 -rereadnolock -s 500 -D 3500 -NL -mmax 65534 -h 20 -zn -b -p<EMAIL_ADDRESS>-param<EMAIL_ADDRESS>-cpinternal utf-8 -cpcoll Basic -cpcase Basic -cplog utf-8 -cpstream UTF-8 -T<EMAIL_ADDRESS>-clientlog<EMAIL_ADDRESS>[2024-07-30T07:58:37.635+0200] [DEBUG] ChangeConfiguration: {"abl":{"buildMode":1,"outline":{"showIncludeFiles":true,"showContentInIncludeFiles":true},"completion":{"upperCase":false},"useProcedureEditorKeyBindings":true,"langServerDebug":true,"defaultProject":"","langServerTrace":false,"langServerExtraJavaArgs":"","debugAdapterExtraJavaArgs":"","debugAdapterDebug":false,"debugAdapterTrace":false,"cablLicense":"**************************************","langServerJavaExecutable":"","configuration":{"maxThreads":-1,"hideAvmWindow":false,"defaultRuntime":"12.8","runtimes":[{"name":"12.2","path":"/usr/oe122"},{"name":"12.8","path":"/usr/oe128","default":true}]},"sonarlint":{"rules":[]}}}
[2024-07-30T07:58:37.636+0200] [INFO] Looking for ABL documentation cache in<EMAIL_ADDRESS>[2024-07-30T07:58:37.638+0200] [DEBUG] DidOpen file:///home/user%40CCE.local/workspaces/develop/git/ccesmarttools/CceFramework/src/ccetools/string-l.p - Project null
[2024-07-30T07:58:37.639+0200] [DEBUG] DocumentSymbol for file:///home/user%40CCE.local/workspaces/develop/git/ccesmarttools/CceFramework/src/ccetools/string-l.p
[2024-07-30T07:58:37.641+0200] [DEBUG] Executing [/usr/oe128/bin/_progres, -inp, 40000, -tok, 4000, -rereadnolock, -s, 500, -D, 3500, -NL, -mmax, 65534, -h, 20, -zn, -b, -p<EMAIL_ADDRESS>-param<EMAIL_ADDRESS>-cpinternal, utf-8, -cpcoll, Basic, -cpcase, Basic, -cplog, utf-8, -cpstream, UTF-8, -T<EMAIL_ADDRESS>-clientlog<EMAIL_ADDRESS>in<EMAIL_ADDRESS>with environment {DLC=/usr/oe128}.

I suspect the @ in paths could be the problem (given that they are escaped as %40). Is it easily possible for you to test in a directory which doesn't contain @ ?

removing @ fixed the outline.
go to definitions does not seem to do anything, but maybe my expectations are wrong here .

removing @ fixed the outline.

Good. I'll check why VS Code escapes some characters, and if the LS should send escaped path back to the VS Code.

go to definitions does not seem to do anything, but maybe my expectations are wrong here .

Can you close the file, reopen and select go to definition ? There's a long-standing issue with VS Code which doesn't send the didOpen notification to the LS when VSCode is opened with existing buffers (or maybe the notification is not handled correctly, I can't remember).

I would not mind if characters such as @ in pathnames are not working.
I'm actually glad I had a use-case to have this path fixed
A warning or error in a log would be nice though.
Go to definition on include works after closing and re-opening.
I found a minor issue with go to definition on a class if the class name is selected

selecting go to definition without first selecting the class name works

Go to definition is now working in a lot of situations, but I found some that don't yet work.

local function defintion
attribute of class

static class reference

include in an include


Implement the piece enums from Pieces.java to the board and the bots instead of byte array

might aswell go Piece  object instead of enum,   Piece can hold the enum so refactor can be reduced

Merged to half with piece classes instead


[#2201, #2550, #2551] Uncap XP tracking & add epic boon calculation

Removes the cap for maximum XP. When the player's level is maximum it will calculate the number of "boons earned", which means the number of 30,000 chunks of XP they character has earned above the maximum XP. This will be displayed on the sheet instead of the XP threshold for the next level.

The XP required to earn an epic boon can be set using CONFIG.DND5E.epicBoonInterval.
Closes #2201
Closes #2550
Closes #2551

I think it would be good to adjust the XP setting as well to be a selection between "XP", "No XP" (as is current) but also "XP + Boons".


SSLError

I got all my Spotify playlists into a nice CSV and was trying to loop through them and import them into Play Music.  I get the following error:
Reading playlist... done. 5 lines loaded.
Logging into google music...
<EMAIL_ADDRESS>password:
Traceback (most recent call last):
File "/Users//Downloads/gmusic-playlist-master/ImportList.py", line 193, in
api = open_api()
File "/Users//Downloads/gmusic-playlist-master/common.py", line 162, in open_api
if not api.login(username, password, Mobileclient.FROM_MAC_ADDRESS):
File "/usr/local/anaconda/lib/python2.7/site-packages/gmusicapi/clients/mobileclient.py", line 64, in login
if not self.session.login(email, password, android_id):
File "/usr/local/anaconda/lib/python2.7/site-packages/gmusicapi/session.py", line 170, in login
res = gpsoauth.perform_master_login(email, password, android_id)
File "/usr/local/anaconda/lib/python2.7/site-packages/gpsoauth/init.py", line 66, in perform_master_login
return _perform_auth_request(data)
File "/usr/local/anaconda/lib/python2.7/site-packages/gpsoauth/init.py", line 22, in _perform_auth_request
headers={'User-Agent': useragent})
File "/usr/local/anaconda/lib/python2.7/site-packages/requests/api.py", line 107, in post
return request('post', url, data=data, json=json, **kwargs)
File "/usr/local/anaconda/lib/python2.7/site-packages/requests/api.py", line 53, in request
return session.request(method=method, url=url, **kwargs)
File "/usr/local/anaconda/lib/python2.7/site-packages/requests/sessions.py", line 468, in request
resp = self.send(prep, **send_kwargs)
File "/usr/local/anaconda/lib/python2.7/site-packages/requests/sessions.py", line 576, in send
r = adapter.send(request, **kwargs)
File "/usr/local/anaconda/lib/python2.7/site-packages/requests/adapters.py", line 447, in send
raise SSLError(e, request=request)
requests.exceptions.SSLError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:590)
Any ideas why my SSL library isn't working?  I updated pyOpenSSL...

The issue you are seeing may be related to https://github.com/simon-weber/gmusicapi/issues/350.  I'm guessing that the root certificates in your python install are either not being found or are out of date.  The certificates are usually a separate package.

Thanks for your help.  Not quite sure still how to fix the problem.  Is it stemming from my having installed Anaconda?  I've put the anaconda dir early in my PATH, so a simple 'python' call gets that one, and my pip installer installs in the anaconda directory as well.
I also ran into a problem installing setuptools.  I worked around it after some googling by using the --ignore-installed option.  Is that causing problems?
Generally, I'm not sure how to proceed given the comments in the issue you noted above.  I have an up to date installation of certifi (that I installed yesterday in trying to get this package to work), and that pip installer installed with anaconda.  Any pointers?
Thanks!

Well I don't understand exactly what the issue was with what I had installed before, but I just set up a simple virtualenv, reinstalled gmusicapi with pip, and then reran the ImportList.py file with the song list files I'd pulled down from Spotify, and things are working fine!
Thanks for providing this code!

I'm glad you got it working and found it helpful.  Python can be tricky to get setup, it's one of the reasons I wrote a JavaScript version.


Question: Enable for only certain perms.

I would like to require my staff to authenticate with this plugin, and disable all use of their commands until they are authenticated. Members without the staff permission should not be required to authenticate.
I already tried to setup the config this way but it was requiring everyone to authenticate and kicking them if they didnt, even with the bypass.authentication permission. Also it was blocking commands for the bypass.authentication as well.
Configuration file: https://pastebin.com/yM0uGwYz

Fixed in https://github.com/games647/FlexibleLogin/issues/55


An error pops up after attaching one ADLS Gen2 folder which name contains spaces

Storage Explorer Version: 1.17.0
Build Number: 20210116.6
Platform/OS: Windows 10/ CentOS 7.6.1810 (Core)/ MacOS Catalina
Architecture: ia32/x64
Regression From:  Not a regression
Steps to Reproduce

Expand one ADLS Gen2 storage account -> Blob Containers.
Create a new blob container -> Create a new folder named 'New Folder'.
Right click the folder -> Click 'Get Shared Access Signature...' -> Create and copy the 'URI' in the Shared Access Signature dialog.
Attach it via SAS -> Check there is no error.

Expected Experience
No error pops up and the folder name shows well.
Actual Experience
An error pops up.

Please make sure this still works for Azure AD scenario as well.

Please make sure this still works for Azure AD scenario as well.

Verified on build 20210209.6. This issue has been fixed. So we close it.


fix: invalid method call in interactions walkthrough

Description of changes
— fixed reference to invalid method name from prompter.prompt to prompter.input
Issue #12093
Description of how you validated changes
— manual test
Checklist

[x] PR description included
[x] yarn test passes

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

Codecov Report

Merging #12108 (32ecbdb) into dev (984c0f8) will decrease coverage by 2.39%.
The diff coverage is 53.20%.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
@@            Coverage Diff             @@
##              dev   #12108      +/-   ##
==========================================
- Coverage   49.45%   47.06%   -2.39%
==========================================
  Files         692      836     +144
  Lines       33424    38033    +4609
  Branches     6840     7712     +872
==========================================
+ Hits        16529    17901    +1372
- Misses      15370    18488    +3118
- Partials     1525     1644     +119

Impacted Files
Coverage Δ

...mplify-appsync-simulator/src/resolvers/function.ts
15.38% <ø> (ø)

...s/amplify-appsync-simulator/src/type-definition.ts
100.00% <ø> (ø)

...sync-simulator/src/velocity/util/dynamodb-utils.ts
6.55% <0.00%> (ø)

...y-appsync-simulator/src/velocity/util/map-utils.ts
10.00% <ø> (ø)

...tor/src/velocity/util/transform/dynamodb-filter.ts
4.93% <0.00%> (ø)

...ync-simulator/src/velocity/util/transform/index.ts
21.05% <0.00%> (ø)

...appsync-simulator/src/velocity/value-mapper/map.ts
86.88% <ø> (ø)

...ackages/amplify-category-auth/src/commands/auth.ts
0.00% <0.00%> (ø)

...es/amplify-category-auth/src/commands/auth/help.ts
0.00% <0.00%> (ø)

.../amplify-category-auth/src/commands/auth/import.ts
0.00% <0.00%> (ø)

... and 582 more

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


MonadThrow instance

Hello, would it be possible to add a MonadThrow instance to shake ?
thanks for considering
Frederic

Unfortunately that requires an additional dependency, and given the role in bootstrapping GHC, that's a bad thing.

In that case do you know how to use a MonadThrow within shake ?

Shake has a LiftIO instance for Action and Rules, so liftIO $ throwM ... should be sufficient where you need it.

In fact I have a method with this signature
parseAbsDir :: MonadThrow m -> FilePath -> m (Path Abs Dir)
but it seems that I cannot use in inside a rules.

something like this
                                    -- (Rule 1) job done
                                    uploaded %> \_ -> do
                                      need [archive, ruche]
                                      _ <- parseRelFile archive
                                      command [] "touch" [uploaded]

here the error message
src/Thumbnail.hs:174:44-63: error:
    • Could not deduce (MonadThrow
                          shake-0.16.4:Development.Shake.Internal.Core.Types.Action)
        arising from a use of ‘parseRelFile’
      from the context: (MonadIO m, MonadReader Beamline m, MonadThrow m)
        bound by the type signature for:
                   thumbnail' :: forall (m :: * -> *).
                                 (MonadIO m, MonadReader Beamline m, MonadThrow m) =>
                                 ThumbnailInput -> m ()
        at src/Thumbnail.hs:114:1-89
    • In a stmt of a 'do' block: _ <- parseRelFile archive
      In the expression:

sorry, my bad, with liftIO it works.
sometimes, I forget to use my brain...

Given you are already using Path, it might be that https://gitlab.com/shake-plus/shake-plus is a good fit for you - and asking for MonadThrow there sounds like an entirely reasonable idea - it seems to fit well with their other enhancements.

Request raised at https://gitlab.com/shake-plus/shake-plus/-/issues/1

Closing this on the basis that MonadThrow introduces an additional dependency for minor benefit giving liftIO, so not worth the trade-off.


Algorithme de ACPM - Kruskal(?)

Primm will be implemented
Maybe Kruskal for complexity comparaison

https://github.com/Solution-Factory-IT-2324/metro-efrei-dodo/commit/d5fa64d12a005db974c09814de8b1b17672a8181 First shot of Prim, could be unstable.
Execution time : ~40,24s

With commit https://github.com/Solution-Factory-IT-2324/metro-efrei-dodo/commit/4b72b158aee1e4848f5b369586abecc3f7cae353, taking in count multiple stations for one station.
Execution time : ~18,46s
Appearing to be acyclic and connected, need verification with algorithms

With cache it's 6.84 ahahahah cries in disk storage

With commit https://github.com/Solution-Factory-IT-2324/metro-efrei-dodo/commit/007deca6812fbf1ece807b43165c64402fb24dba here's the result

Kruskal : 0.002s
Prim : 0,17s


Added Spanish translation for documentation about scheme and crud operations

I'll try to add further spanish translations during the week.

Thanks 🙏


How to specify boolean values in R?

@courtwrightj01 is trying to make the following call:
NAMCr::save("createProject",projectName="Intermittent stream",description="Jennifers work with Chuck to develop OE and MMI for intermittent streams")

How should she specify the boolean isPrivate argument? She is getting “expected type Boolean, found FALSE".

Boolean API parameters accept R boolean values (i.e. TRUE or FALSE) as well as 1 and 0.
NAMCr::save("createProject", projectName="testProject2", isPrivate=TRUE, description="testing R API code")
I think I just found an issue though for false boolean values where they might not be formatted properly. I will include a fix for this tonight.


File field of Reader is Not Exposed

In testing out the library, I notice that the file field of the Reader is not publicly accessible. I could be wrong, but I think this makes the library unusable as is? If that is intentional please disregard this observation. If not, I can submit a pull request to expose it.
https://github.com/jjafuller/go-ach/commit/f5e5510ec62a168493e9a3fb8bbf6ef224b73dfb

please submit a pull request. I have yet to use it outside of my own projects.


[Feature] Order: Payment System

https://vercel.com/guides/getting-started-with-nextjs-typescript-stripe
https://abc.trelyt.store/api/v1/docs/#/

Fixes #45


investigate containerd cpu consumption (and perhaps added latency) in a stable system

When fn system is stable (no new containers are spawned nor killed) running hot functions, containerd is observed to take some CPU. In this case, say for 200 containers working on a steady 20 req/sec load, we observe 200 shim processes, 1 containerd process (but with many threads).
Seems like containerd is on the data processing path.
why is containerd taking cpu? due to logs? stats? IO?
If we moved to port/network model instead of stdin/out/err, would this take containerd out of the data flow?

we have since removed logs from containerd's responsibility list (https://github.com/fnproject/fn/pull/768), I've seen cpu usage of dockerd/containerd drop substantially since then.
stats are still likely responsible for some cpu usage, we should debug it; the way we have things set up, polling stats every 1s won't be very useful for e.g. a function that takes 10ms to run, only 1/100 calls has docker metrics on it. if we grabbed stats more frequently (100/100 times), it would only increase cpu usage. seems weird that reading proc files takes so much cpu, anyway (looked around docker and nothing stuck out here). api to get container stats / logs seems weird, too, but could be useful, maybe we just allow hooking up to our metrics system?
some notes for debugging dockerd cpu usage, have had success doing the following to get pprof logs, they aren't perfectly detailed but the gaps aren't so hard to fill in:

run dockerd with -D for debug mode
$ socat -d -d TCP-LISTEN:8000,fork,bind=<IP_ADDRESS> UNIX:/var/run/docker.sock
run rigorous tests and concurrently do next step:
$ go tool pprof -raw http://<IP_ADDRESS>:8000/debug/pprof/profile
after ^ - $ go tool pprof -http <IP_ADDRESS>:5000 /usr/bin/dockerd /home/reed/pprof/pprof.dockerd.samples.cpu.003.pb.gz
browse to :5000 and view. Flame graphs also an option with profile file in hand (https://github.com/uber/go-torch)


feat: iterating through scenarios to get icgm special control metrics

Finishing code Ed started to iterate through scenario files and save icgm special controls analysis values.

This pull request was for code to check which sensors are meeting special controls. This should no longer be needed so I think it is fine to just leave this branch.


Replace all 'for(..in..)' on lodash alternative

How to configure houndci for node.js? In .jshintrc node = true, but 'require' is not defined.

Ping


"Drăgănești-Vlașca", "Comoara" and "Văceni" are listed in the drop-down menu

Description:
"Drăgănești-Vlașca", "Comoara" and "Văceni" are listed in the drop-down menu alongside its corresponding county and commune, according to the law
Precondition:
The website is up an running.

Step 1
Type "Drăgănești-Vlașca" in the search bar.

Expected results
The location is listed in the drop-down menu as "Sat Drăgănești-Vlașca, TELEORMAN (Drăgănești-Vlașca)" and "Comuna Drăgănești-Vlașca, TELEORMAN".

Step 2
Press "x" button.

Expected results
The location was deleted from the search bar.

Step 3
Type "Comoara" in the search bar.

Expected results
The location is listed in the drop-down menu as "Sat Comoara, TELEORMAN (Drăgănești-Vlașca)".

Step 4
Press "x" button.

Expected results
The location was deleted from the search bar.

Step 5
Type "Văceni" in the search bar.

Expected results
The location is listed in the drop-down menu as "Sat Văceni, TELEORMAN (Drăgănești-Vlașca)".


Service Bindings for Python

In other languages such as C#, you can get an instance of the client through the binding, allowing you to do more queries or updates in code than you can do in the functions.json document.  This is especially helpful when you need to query and update a record.  Is this on the roadmap or even possible in Python Functions?

Renaming to reflect the feature name - "Service Bindings". This is currently not available for any of the out-of-process languages in Functions 2.0 (Node, Java, PowerShell). Currently unplanned, will put it on the backlog to gauge traction. Any info you can share about the specific scenarios you're hoping to enable would help us prioritize better.

I see it break down into 3 things that I've done in C# to make the code easier/more efficient that are hard to do in just a straight function.json binding currently available in Python.

Reading data by doing multiple queries against the data set made visible from the binding.
Updating entries, such as in a storage table.
More control over the objects created, such as manipulating things that will be put in a queue (time to live, time to visible).
Having it limited to what is in function.json means I would have to do multiple bindings to get the different data, which can make the code less clean.
Or I can have it return all records and sort it in the function, but that's not very efficient from a functional resource and time to run point of view.
Or I can import all the libraries and not use the bindings, which means you loose a lot of the ease of use that Functions have to offer.

This function.json is part of our architecture which is designed to supporting multiple language workers. Our Python worker needs to align with NodeJs/Java/PowerShell worker etc.
We decide to keep the azure-functions SDK as simple as possible for the ease of bootstrapping a function project. If a simple trigger needs to gather resources from different services, please consider using the related SDKs (azure-storage-blob, azure-cosmos etc.)


Feature Request:  Move the cancel and save changes to inside the compose  box in the lower right

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Problem:
When composing a new message there is a green "Send" button inside the compose box in the lower right, but when editing an existing message, it is a green "Save" button outside the compose box.
Solution:
Move the Cancel / Save changes buttons inside the compose box and put it in the lower right.
Context/Examples/Screenshots/Notes:
Logs: https://stackoverflow.com/c/expensify/questions/4856
Notes/Photos/Videos:

Expensify/Expensify Issue URL:
Issue reported by: @quinthar
Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1677476774053969
View all open jobs on GitHub

Nice, thanks for the detailed exploration here! I agree with you, I don't think there is an easy way to pull this off. That being said, I think I am down with either option but maybe I lean towards option 2?
But I think you should post these all in Slack and tag David B since this was his original bug report and he might feel strongly. Thanks Carlos!

Margelo is going to take this one on, ideally in the next week. Stay tuned until then.

@Szymon20000 can you comment on this issue so I can assign it to you?

Comment :)

Cool! Assigned you to the issue @Szymon20000

While https://github.com/Expensify/App/pull/16356 is on hold, taking this over.

This issue has not been updated in over 15 days. @Szymon20000, @luacmartins eroding to Monthly issue.
P.S. Is everyone reading this sure this is really a near-term priority? Be brave: if you disagree, go ahead and close it out. If someone disagrees, they'll reopen it, and if they don't: one less thing to do!

Working on this right now.

Triggered auto assignment to @sonialiap (External), see https://stackoverflow.com/c/expensify/questions/8582 for more details.

Triggered auto assignment to Contributor-plus team member for initial proposal review - @fedirjh (External)

Current assignee @luacmartins is eligible for the External assigner, not assigning anyone new.

Added the external label to get C+ to review and test the PR.

@fedirjh offer sent
PR opened April 18, merged May 4 = Merged more than 9 business days after assignment = 50% penalty = so the offer is $500

@luacmartins Looks like @terrysahaidak worked on this one but didn't get assigned to the issue, could you confirm if I should issue payment?

Ah yes, @terrysahaidak did work on it. Assigned them to the issue now. @terrysahaidak is with Margelo and I think we process those payments differently via invoice.

I was corrected, no penalty should have been applied. I amended the offer and paid the full amount ($1000)


Fully Kiosk Browser - Custom element doesn't exist

Using the Android App "Fully Kiosk Browser" to display HA UI on a Amazon Fire Tablet 10.
It will throw a red box with "Custom element doesn't exist: calendar-card."
HA logfile will show:
<my.ip>:8123/customcards/calendar-card.js:74:1541 Uncaught SyntaxError: Unexpected token ...
This error msg will only appear in the Fully Kiosk Browser app. Everything works fine on other browsers on other devices. This also does not seem to be specific to this card - almost no custom card renders successfully on this device.
I am wondering if anyone here might have any clues as to whats causing this, how to solve this or even just a hint about a different way/app to display HA on the tablet.

@abien fire tablets have a very old version of webview, that's the problem. Custom cards would need to be built with babel, probably, to provide the polyfills necessary to render them on older devices as HA core does. Does mini-media-player work for you? I believe it is bundled with babel.

I've thought about adding babel but it would add so much to the code size. I'm surprised home assistant even works on older browsers.

@iantrich Well - no. mini-media-player does not work any better. I guess i bought the wrong kind of tablet sigh.
I know this is OT - but: Any recommendations on the low-budget tablet? Or advise on what i should look out for to ensure it works well with HA?
Also: mini-media-player = Did not know about this card before. Very nice 👍

Fire tablets are so freaking cheap, that's the problem and a 10" fire tablet is perfect for a home interface. How much size does babel add? Maybe we could have different distributions? Or at least provide instructions to people on how they could build a card with babel?

@abien checkout sharethelove.io for a good list of custom cards.
I'm using a x230 as my HA installation and interface :man_shrugging: It's okay, nothing spectacular, but can run full Linux on it so no issues with browsers.

@iantrich Not sure for this card. It's already massive from add localization. I'll look into it sometime this week though. I hope to add the edit card for this soon.

My issue might not be related to anything on the coding side at all.

Tablet's own Amazon Silk Browser renders with no errors
Google Chrome renders with no errors
Fully Kiosk Browser gives errors

(Problem with both working browser is that they don't completely fullscreen and lack some other nice to have functions that Fully Kiosk offers)
I am guessing it's related to the kiosk browser app, it is using an old webview (v 59.x)
Just found their FAQ where it specifically states: "The Android Webview can’t be updated separately, but it seems to be updated with Fire OS and is slightly outdated (version 59 vs. current ver. 70) with Fire OS I tested."
Maybe this is a wontfix/cantfix? :)

I thought fully used the installed webview? Are you saying they are packaging the app with it's own version of webview?

I assume so - but i really should't comment. 48h ago i would have though webview must be a web based team-viewer tool. I did ask Alexey (from Fully-Team) about this and he replied to me:

We still don't know any means to upgrade the Webview separately on Fire OS. It will be upgraded by the next Fire OS upgrade but is always behind the latest Webview.

Not sure how that fits into the whole "But it works in all other browsers" thing - thats above me.

Curious to hear results on this. Will likely do the same for all my cards if it does work

I update the card. cleared the caches etc - no change. The custom element will not be displayed :(

Weird I left babel at default which should compile to es5. Ill look further into it but I don't have a kindle to test

ok try this version and let me know what the error is. The initial error was object spreading but I added support for that https://raw.githubusercontent.com/ljmerza/calendar-card/master/calendar-card.js

I tried two times to make 100% sure i don't render a cached version, hence the ?v=98783 on the second try.
Log output:
2019-04-10 16:13:32 ERROR (MainThread) [frontend.js.es5.201903310] http://<IP_ADDRESS>:8123/customcards/calendar-card.js:489:375 Uncaught SyntaxError: Unexpected token ...

2019-04-10 16:19:46 ERROR (MainThread) [frontend.js.es5.201903310] http://<IP_ADDRESS>:8123/customcards/calendar-card.js?v=98783:489:375 Uncaught SyntaxError: Unexpected token ...
2019-04-10 16:20:17 ERROR (MainThread) [frontend.js.es5.201903310] http://<IP_ADDRESS>:8123/customcards/calendar-card.js?v=98783:489:375 Uncaught SyntaxError: Unexpected token ...

Can you tell me what fire os version you have? I installed android studio so i can emulate a fire tablet to find what the issue is

The part that bugs me about all of this that on the one device, Silk and Chrome work, but Fully doesn't with the same Webview version...

Yeah just tired android 5.1 but i cant even get ha to load at all

i got my hands on my neighbors fire hd 8 (6th gen) running fire os <IP_ADDRESS> (android 5.1.1) and I too am able to bring up custom cards in silk and chrome, but not fully.

I've had this thing for 20 minutes now and officially hate it. I understand why they are so inexpensive...

https://play.google.com/store/apps/details?id=com.thanksmister.iot.wallpanel&rdid=com.thanksmister.iot.wallpanel looks promising

tested wallpanel - does not render custom elements. same as fully kiosk app.

Ok can you both try this one? https://raw.githubusercontent.com/ljmerza/calendar-card/master/calendar-card.js

this version is grinding the vscode add-on to a halt...weird...

Add on?
On Thu, Apr 11, 2019, 8:18 PM Ian Richardson<EMAIL_ADDRESS>wrote:

this version is grinding the vscode add-on to a halt...weird...
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/ljmerza/calendar-card/issues/19#issuecomment-482386844,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AD5YBQAl6VMHNWu3pdqnmhv1jOYqt1sHks5vf9DKgaJpZM4cgWey
.

https://github.com/hassio-addons/addon-vscode/blob/v0.2.0/README.md
New version does not work on FKB for me :( This app is being difficult

ah yeah I saw that the other day. I don't use hass.io but it would be nice to have vscode in the browser

No, it is just a wrapper as well. It has the vscode plugin for HA pre-installed which is perhaps what you're thinking of

Tried just following this https://lit-element.polymer-project.org/guide/publish with no luck on my podcast-card

does the current master version not work at all? it started working no apple phones gain thankfully so one step closer

It works everywhere but FKB, in my testing

well, I have > 0.25%, not dead set as the target which is
{
  "android": "4.4.3",
  "chrome": "49",
  "edge": "17",
  "firefox": "64",
  "ie": "11",
  "ios": "8",
  "opera": "57",
  "safari": "11.1",
  "samsung": "4"
}

Think I saw the lateast FireOS is Android 4.4.1 and it's at  4.4.3 sooo not sure. Anyone can post the console error?

I put the latest master release on and enabled remote debugging but unfortunately there are no errors. Of the 7 custom cards I have on this view, 3 produced errors.
Uncaught SyntaxError: Unexpected token ...
🤷♂

FYI: Something happened, all custom cards (including calendar) no longer show any error and instead display just fine. I assume something in FireOS has been updated but i haven't had time to look into the details yet.

What?!? Lol. I'm out of town this weekend but will check when I get home.

I forgot about this, I made a note to myself to test this tonight

No change here.
Webview version 59
FKB version 1.30
Fire OS <IP_ADDRESS>

@abien can you check your Fire OS version?

FireOS <IP_ADDRESS>
FKB 1.30
Webview 70.0.3538.110

Since the original reason for this is solved for me - i am closing this.

FireOS <IP_ADDRESS>
FKB 1.30
Webview 70.0.3538.110

Are you saying you somehow managed to get Webview 70 onto the Kindle Fire with FKB? I have a much newer kindle version and fkb version and still have webview 59.. How'd you do it?
FireOS: <IP_ADDRESS>
FKB: 1.33-fire
Webview: 59.0.3071.125

I didn't do anything. After some kind of auto-update overnight these were just the versions i have now.

Oh cool, my auto update came in too and now all my custom cards finally work. I guess the solution is just “wait and see” at least with the new 2018 kindles.


I get the error "set_terrain: Condition "terrain_set < 0" is true." upon launching the project eventhough there's no code related to terrains yet. I just have the plugin installed

It just magically went away today. I haven't even changed anything in the project which is very bizarre but yeah. I guess I can close the issue now


Swap arguments of ResourceSaver.save()

Update code examples to match new argument order following https://github.com/godotengine/godot/pull/61647
See also https://github.com/godotengine/godot-docs/pull/6203 for the docs update.

I do agree on this, but you should see if you can make a "special" conversion inside project_converter_3_to_4.cpp, because switching the arguments around in the converter should be relatively trivial and would save people a lot of headaches.

Updating the converter if that hasn't been done already would be appreciated, but isn't necessary for this PR. Everything looks good! And congrats on your first engine PR!


assert failed: twai_handle_tx_buffer_frame twai.c:183 (p_twai_obj->tx_msg_count >= 0) if CONFIG_TWAI_ERRATA_FIX_TX_INTR_LOST=y  (IDFGH-8204)

Answers checklist.

[X] I have read the documentation ESP-IDF Programming Guide and the issue is not addressed there.
[X] I have updated my IDF branch (master or release) to the latest version and checked that the issue is present there.
[X] I have searched the issue tracker for a similar issue and not found a similar issue.

IDF version.
v4.4.2
Operating System used.
Linux
How did you build your project?
Eclipse IDE
If you are using Windows, please specify command line type.
No response
Development Kit.
Atom M5
Power Supply used.
USB
What is the expected behavior?
Not Chrashing
What is the actual behavior?
Instead it crash
assert failed: twai_handle_tx_buffer_frame twai.c:183 (p_twai_obj->tx_msg_count >= 0)
Steps to reproduce.

Clone Repo: https://github.com/diplfranzhoepfinger/canrecovery
let it run a while.
disturb CAN-Bus by eigher shorting CAN-H to GND or CAN-H to CAN-L
it will crash instead of a recovery.

Debug Logs.
I (100100) TWAI Master: Surpassed Error Warning Limit
I (100100) TWAI Master: Entered Error Passive state
I (100100) TWAI Master: Bus Off state
W (100100) TWAI Master: Initiate bus recovery in 50ms
E (100110) main: twai_transmit failed, 259 ESP_ERR_INVALID_STATE
W (100120) TWAI Master: Initiate bus recovery in 40ms
W (100130) TWAI Master: Initiate bus recovery in 30ms
W (100140) TWAI Master: Initiate bus recovery in 20ms
W (100150) TWAI Master: Initiate bus recovery in 10ms
E (100210) main: twai_transmit failed, 259 ESP_ERR_INVALID_STATE
E (100310) main: twai_transmit failed, 259 ESP_ERR_INVALID_STATE
E (100410) main: twai_transmit failed, 259 ESP_ERR_INVALID_STATE
E (100510) main: twai_transmit failed, 259 ESP_ERR_INVALID_STATE
E (100610) main: twai_transmit failed, 259 ESP_ERR_INVALID_STATE
E (100710) main: twai_transmit failed, 259 ESP_ERR_INVALID_STATE
E (100810) main: twai_transmit failed, 259 ESP_ERR_INVALID_STATE
E (100910) main: twai_transmit failed, 259 ESP_ERR_INVALID_STATE
E (101010) main: twai_transmit failed, 259 ESP_ERR_INVALID_STATE
E (101110) main: twai_transmit failed, 259 ESP_ERR_INVALID_STATE
E (101210) main: twai_transmit failed, 259 ESP_ERR_INVALID_STATE
E (101310) main: twai_transmit failed, 259 ESP_ERR_INVALID_STATE
E (101410) main: twai_transmit failed, 259 ESP_ERR_INVALID_STATE
E (101510) main: twai_transmit failed, 259 ESP_ERR_INVALID_STATE
E (101610) main: twai_transmit failed, 259 ESP_ERR_INVALID_STATE
E (101710) main: twai_transmit failed, 259 ESP_ERR_INVALID_STATE
E (101810) main: twai_transmit failed, 259 ESP_ERR_INVALID_STATE
E (101910) main: twai_transmit failed, 259 ESP_ERR_INVALID_STATE
E (102010) main: twai_transmit failed, 259 ESP_ERR_INVALID_STATE
E (102110) main: twai_transmit failed, 259 ESP_ERR_INVALID_STATE
E (102210) main: twai_transmit failed, 259 ESP_ERR_INVALID_STATE
E (102310) main: twai_transmit failed, 259 ESP_ERR_INVALID_STATE
E (102410) main: twai_transmit failed, 259 ESP_ERR_INVALID_STATE
E (102510) main: twai_transmit failed, 259 ESP_ERR_INVALID_STATE
E (102610) main: twai_transmit failed, 259 ESP_ERR_INVALID_STATE
E (102710) main: twai_transmit failed, 259 ESP_ERR_INVALID_STATE
E (102810) main: twai_transmit failed, 259 ESP_ERR_INVALID_STATE
E (102910) main: twai_transmit failed, 259 ESP_ERR_INVALID_STATE
E (103010) main: twai_transmit failed, 259 ESP_ERR_INVALID_STATE
E (103110) main: twai_transmit failed, 259 ESP_ERR_INVALID_STATE
I (103150) TWAI Master: Initiate bus recovery

assert failed: twai_handle_tx_buffer_frame twai.c:183 (p_twai_obj->tx_msg_count >= 0)

Backtrace:0x400818de:0x3ffb0a000x40085841:0x3ffb0a20 0x4008ae2d:0x3ffb0a40 0x4008313d:0x3ffb0b60 0x40082869:0x3ffb0ba0 0x400e8257:0x3ffb62f0 0x400d1c6f:0x3ffb6310 0x40086ea2:0x3ffb6330 0x400883d1:0x3ffb6350
0x400818de: panic_abort at /home/franz/esp-idf-v4.4.2/components/esp_system/panic.c:402

0x40085841: esp_system_abort at /home/franz/esp-idf-v4.4.2/components/esp_system/esp_system.c:128

0x4008ae2d: __assert_func at /home/franz/esp-idf-v4.4.2/components/newlib/assert.c:85

0x4008313d: twai_handle_tx_buffer_frame at /home/franz/esp-idf-v4.4.2/components/driver/twai.c:183
 (inlined by) twai_intr_handler_main at /home/franz/esp-idf-v4.4.2/components/driver/twai.c:226

0x40082869: _xt_lowint1 at /home/franz/esp-idf-v4.4.2/components/freertos/port/xtensa/xtensa_vectors.S:1111

0x400e8257: cpu_ll_waiti at /home/franz/esp-idf-v4.4.2/components/hal/esp32/include/hal/cpu_ll.h:183
 (inlined by) esp_pm_impl_waiti at /home/franz/esp-idf-v4.4.2/components/esp_pm/pm_impl.c:837

0x400d1c6f: esp_vApplicationIdleHook at /home/franz/esp-idf-v4.4.2/components/esp_system/freertos_hooks.c:63

0x40086ea2: prvIdleTask at /home/franz/esp-idf-v4.4.2/components/freertos/tasks.c:3973 (discriminator 1)

0x400883d1: vPortTaskWrapper at /home/franz/esp-idf-v4.4.2/components/freertos/port/xtensa/port.c:131

ELF file SHA256: a42730679ffbb41a

Rebooting...
ets Jul 29 2019 12:21:46

rst:0xc (SW_CPU_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
configsip: 271414342, SPIWP:0xee
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
mode:DIO, clock div:2
load:0x3fff0030,len:6660
load:0x40078000,len:14848
ho 0 tail 12 room 4
load:0x40080400,len:3792
0x40080400: _init at ??:?

entry 0x40080694
I (29) boot: ESP-IDF v4.4.2 2nd stage bootloader

More Information.
No response

if
#
# TWAI configuration
#
# CONFIG_TWAI_ISR_IN_IRAM is not set
# CONFIG_TWAI_ERRATA_FIX_BUS_OFF_REC is not set
# CONFIG_TWAI_ERRATA_FIX_TX_INTR_LOST is not set
# CONFIG_TWAI_ERRATA_FIX_RX_FRAME_INVALID is not set
# CONFIG_TWAI_ERRATA_FIX_RX_FIFO_CORRUPT is not set
# end of TWAI configuration

then it does NOT crash.

It seems
CONFIG_TWAI_ERRATA_FIX_TX_INTR_LOST=y

is the Reason for the Crashing.

Stumbled across the same problem. This did not happen in prior (CAN not TWAI) libs. I do not think there is a solution when using the Arduino environment right?

I am having the same issue. In my case I powered up my device without any power on the other side of the CAN transceiver (ISO1042 Isolated). Is there any update on this issue?

@Dazza0 any news ?

disturb CAN-Bus by eigher shorting CAN-H to GND or CAN-H to CAN-L

@diplfranzhoepfinger @abombay @f-hoepfinger-hr-agrartechnik  By disturbing the CAN/TWAI Bus, you are likely generating errors that trigger the HW errata conditions. The errata fixes have been fixed on master and backported all the way back to ESP-IDF v4.2.x.  However, these errata workarounds are not enabled by default until ESP-IDF v5.0 onwards. If you are using an ESP-IDF version older than v5.0, please enable all of the CONFIG_TWAI_ERRATA_FIX_... options and see if the issue is resolved.
@EmbeddedDevver Arduino should also have these workarounds enabled starting from v2.0.5

I have the same problem. My fix is to not use the twai_initiate_recovery() function, but instead of this uninstall, install and start the TWAI driver back. This fix might help you until the problem is fixed in the TWAI library.

@StehlikPhotoneo Please ensure that the HW errata workarounds are enabled in your build (by enabling the various CONFIG_TWAI_ERRATA_FIX_... configurations. If you are using ESP-IDF, simply enable them via menuconfig. If you are using Arduino, this may require you upgrade to a newer version.

@diplfranzhoepfinger @StehlikPhotoneo @abombay @f-hoepfinger-hr-agrartechnik
I suspect what's happening is the CONFIG_TWAI_ERRATA_FIX_TX_INTR_LOST workaround is triggering a false positive TX done event when a bus off occurs.
In twai_hal_iram.c:twai_hal_decode_interrupt(), if you change...
#ifdef CONFIG_TWAI_ERRATA_FIX_TX_INTR_LOST
    if ((interrupts & TWAI_LL_INTR_TI || hal_ctx->state_flags & TWAI_HAL_STATE_FLAG_TX_BUFF_OCCUPIED) && status & TWAI_LL_STATUS_TBS) {
#else

to
#ifdef CONFIG_TWAI_ERRATA_FIX_TX_INTR_LOST
    if ((interrupts & TWAI_LL_INTR_TI || hal_ctx->state_flags & TWAI_HAL_STATE_FLAG_TX_BUFF_OCCUPIED)
        && status & TWAI_LL_STATUS_TBS
        && !(state_flags & TWAI_HAL_STATE_FLAG_BUS_OFF)) {
#else

does this end up resolving the issue?

i will check !

I am also having this issue.  All of my TWAI_ERRATA fixes are enabled.  I'm using ESPIDF 4.4.4 with a ESP32MINI-01 rev3 device.
I will try Dazza0 code patch right now and let you know.

Unfortunately this doesn't fix it.  I should note that I am using single shot mode with no tx queue.  I handle retries myself.  This is the only function I use to send out CAN messages.
My transmit function is as follows:
IRAM_ATTR esp_err_t tts_twai_send_message(twai_message_t* msg, uint32_t paceTime100us, uint32_t timeoutMS)
{
#define MAX_TX_RETRIES (16)
	uint32_t alerts;
	uint32_t paceTimeTicks;
	esp_err_t err;
	int retryCount = MAX_TX_RETRIES;

	xSemaphoreTake(_semTxLock, portMAX_DELAY);

	msg->flags = TWAI_MSG_FLAG_SS;

	TickType_t tickTimeout = xTaskGetTickCount() + pdMS_TO_TICKS(timeoutMS);
	if (twai_read_alerts(&alerts, 0) == ESP_OK)
	{
#if TWAI_REPORT_AND_HANDLE_ALERTS
		tts_twai_report_alerts(alerts);
#endif
	}

RetryTx:
	err = twai_transmit(msg, pdMS_TO_TICKS(100));
	if (err != ESP_OK)
	{
		ESP_LOGE(EXAMPLE_TAG, "twai_transmit failed! Error=%08X", err);
		alerts = 0;
		twai_read_alerts(&alerts, pdMS_TO_TICKS(100));
#if TWAI_REPORT_AND_HANDLE_ALERTS
		tts_twai_report_alerts(alerts);
#endif
		if (err == ESP_ERR_INVALID_STATE)
		{
			if (twai_initiate_recovery() == ESP_OK)
			{
				ESP_LOGW(EXAMPLE_TAG, "Bus recovery initiated..");
				// wait for bus to recover
				while (xTaskGetTickCount() <= tickTimeout)
				{
					if (twai_read_alerts(&alerts, pdMS_TO_TICKS(100)) == ESP_OK)
					{
#if TWAI_REPORT_AND_HANDLE_ALERTS
						tts_twai_report_alerts(alerts);
#endif
						if (alerts & TWAI_ALERT_BUS_RECOVERED)
						{
							if (--retryCount <= 0)
							{
								ESP_LOGE(EXAMPLE_TAG, "Max TX retry count exceeded!");
								goto Done;
							}

							err = twai_start();
							ESP_LOGW(EXAMPLE_TAG, "Bus Recovered. twai_start err=%i", err);
							vTaskDelay(1);
							goto RetryTx;
						}
					}
				}
				ESP_LOGE(EXAMPLE_TAG, "Timeout waiting for bus recovery");
			}
			else
			{
				ESP_LOGW(EXAMPLE_TAG, "TX failed for unknown reason");
				if (--retryCount <= 0)
				{
					ESP_LOGE(EXAMPLE_TAG, "Max TX retry count exceeded!");
					goto Done;
				}
				vTaskDelay(1);
			}
		}
		else
		{
			ESP_LOGE(EXAMPLE_TAG, "TX failed Error=%08X", err);
			if (--retryCount <= 0)
			{
				ESP_LOGE(EXAMPLE_TAG, "Max TX retry count exceeded!");
				goto Done;
			}
			vTaskDelay(1);
			goto RetryTx;

		}
		// this is caused by the loss of a TX interrupt. (see errata)
		// it should not occur anymore as there is a work-a-round in place deep in the TWAI drvier stack.
		//ESP_LOGE(EXAMPLE_TAG, "tts_twai_send_message1 Error=%08X", err);
		//twai_stop();
		//vTaskDelay(pdMS_TO_TICKS(20));
		//twai_start();
		//vTaskDelay(pdMS_TO_TICKS(20));
		//err = twai_transmit(msg, pdMS_TO_TICKS(100));

	}
	else
	{
		// TX was successful. we should receive either an idle alert or some error promptly

		// clear any alerts
		if (twai_read_alerts(&alerts, pdMS_TO_TICKS(1000)) == ESP_OK)
		{
#if TWAI_REPORT_AND_HANDLE_ALERTS
			tts_twai_report_alerts(alerts);
#endif
			if (alerts & TWAI_ALERT_TX_FAILED)
			{
				if (--retryCount <= 0)
				{
					ESP_LOGE(EXAMPLE_TAG, "Max TX retry count exceeded!");
					err = ESP_ERR_TIMEOUT;
					goto Done;
				}
				vTaskDelay(1);
				goto RetryTx;
			}
		}

		// honor pacetime
		paceTimeTicks = pdMS_TO_TICKS(((TickType_t)paceTime100us + (TickType_t)9) / (TickType_t)10);
		if (paceTimeTicks > 0)
		{
			vTaskDelay(paceTimeTicks);
		}
		else
		{
			uint64_t timeEnd = esp_timer_get_time() + (paceTime100us * 100);
			while (timeEnd > esp_timer_get_time())
			{
				// taskYIELD() is used to request a context switch to another task. However, if there are
				// no other tasks at a higher or equal priority to the task that calls taskYIELD() then
				// the RTOS scheduler will simply select the task that called taskYIELD() to run again.
				taskYIELD();
			}

		}
	}
Done:
	xSemaphoreGive(_semTxLock);
	if (retryCount != MAX_TX_RETRIES)
	{
		//ESP_LOGI(EXAMPLE_TAG, "TX took %d retries", MAX_TX_RETRIES - retryCount);
	}
	return err;
}

If I use this:
#ifdef CONFIG_TWAI_ERRATA_FIX_TX_INTR_LOST
	//
	if ((interrupts & TWAI_LL_INTR_TI || hal_ctx->state_flags & TWAI_HAL_STATE_FLAG_TX_BUFF_OCCUPIED) && status & TWAI_LL_STATUS_TBS && p_twai_obj->tx_msg_count) {
#else

it solves the problem.  This is not a good fix but it works in my case because I'm not using any kind of TX queuing.  It does provide more proof that the problem is with this errata "fix".
FYI, You have to manipulate some code to gain access to p_twai_obj in-order to use this.
Hopefully this will help someone else find a proper fix. :)

I'm running into this after 40 minutes of runtime (more than 120,000 CAN messages sent).
I have CONFIG_TWAI_ERRATA_FIX_TX_INTR_LOST set.
I'm using SDK 5.0 and I don't see any fixes for this posted in later implementations. Have I missed a patch?

@igrr - any comments?

@andrew-elder Have you tried code changes from Dazza0 above https://github.com/espressif/esp-idf/issues/9697#issuecomment-1591011346.
And do you have some custom setting like no_queue ? and your chip version ?

@wanckl I have not yet tired the fix from https://github.com/espressif/esp-idf/issues/9697#issuecomment-1591011346. I will try it.
I am using default setting. ie not using no_queue. Chip version is v3.0
I (31) boot: chip revision: v3.0

@wanckl - the test failed after an hour with
assert failed: twai_handle_tx_buffer_frame twai.c:185 (p_twai_obj->tx_msg_count >= 0)

The suggested change checked bus off, but that isn't expected to happened in my setup. The CAN bus is hardwired to another device that is continuously sending messages to the ESP32.
Thank you for your help so far. Any other suggestions?

@wanckl - the test failed after an hour with
assert failed: twai_handle_tx_buffer_frame twai.c:185 (p_twai_obj->tx_msg_count >= 0)

The suggested change checked bus off, but that isn't expected to happened in my setup. The CAN bus is hardwired to another device that is continuously sending messages to the ESP32.
Thank you for your help so far. Any other suggestions?

Have you tried the fix I posted above?  To use it, you have to disable the TX queue.  It is not a good fix but it does solve the problem.  I have been using it in a production product for a while now.

@travis012 - I have not tried the fix you posted above. I will do so.

@travis012 - an implementation very close to yours works for me. ie, I no longer observe the assert() error. I don't observe that twai_initiate_recovery() ever gets called either. I think I am ok to continue development with what I have. Thank you for your help.
@wanckl - does espressif have plans to release a fix for this?

@travis012 - an implementation very close to yours works for me. ie, I no longer observe the assert() error. I don't observe that twai_initiate_recovery() ever gets called either. I think I am ok to continue development with what I have. Thank you for your help.

Is it better than mine?  Can you use the TX queue? I'd like to improve what I have in our production devices.  Please share your fix.

No, it's not better than yours. I removed the sem for example because I have a single thread sending messages. I have a hardwired CAN connection to another device, so there is never a BUS-OFF condition, so twai_initiate_recovery() always returns ESP_ERR_INVALID_STATE if I force it to trigger.

Any update on this? having the same issue

i have to check.

Hi @willianaraujo , here's an example of how i did it.   Using twai_initiate_recovery() causes crash.
I have tested the code below with short circuit only, and has worked well.
twai_general_config_t g_config = TWAI_GENERAL_CONFIG_DEFAULT(CAN_TX_PIN, CAN_RX_PIN, TWAI_MODE_NORMAL);
twai_timing_config_t t_config;

port_err_t start_driver(int can_speed)
{
	switch (can_speed)
	{
		case 25000:
			t_config = TWAI_TIMING_CONFIG_25KBITS();
			break;
		case 50000:
			t_config = TWAI_TIMING_CONFIG_50KBITS();
			break;
		case 100000:
			t_config = TWAI_TIMING_CONFIG_100KBITS();
			break;
		case 125000:
			t_config = TWAI_TIMING_CONFIG_125KBITS();
			break;
		case 250000:
			t_config = TWAI_TIMING_CONFIG_250KBITS();
			break;
		case 500000:
			t_config = TWAI_TIMING_CONFIG_500KBITS();
			break;
		case 800000:
			t_config = TWAI_TIMING_CONFIG_800KBITS();
			break;
		case 1000000:
			t_config = TWAI_TIMING_CONFIG_1MBITS();
			break;
		default:
			t_config = TWAI_TIMING_CONFIG_500KBITS();
			ESP_LOGE(tagCanDriver, "Default speed is NOT STANDARD!!!, using fallback to 500KBITS");
			break;
	}

	twai_filter_config_t f_config = TWAI_FILTER_CONFIG_ACCEPT_ALL();

	esp_err_t install_result = twai_driver_install(&g_config, &t_config, &f_config);
	if (install_result != ESP_OK)
	{
		ESP_LOGE(tagCanDriver, "twai_driver_install failed: %s", esp_err_to_name(install_result));
		return PORT_FAIL;
	}
	if (twai_start() != ESP_OK)
	{
		ESP_LOGE(tagCanDriver, "twai_start failed");
		return PORT_FAIL;
	}

	ESP_LOGI(tagCanDriver, "Driver started with speed %d", can_speed);
	return PORT_OK;
}

port_err_t stop_driver()
{
	esp_err_t error = twai_stop();
	if (error != ESP_OK && error != ESP_ERR_INVALID_STATE)
	{
		ESP_LOGE(tagCanDriver, "Failed to stop can, error was %s", esp_err_to_name(error));
		return PORT_FAIL;
	}
	else if (error == ESP_ERR_INVALID_STATE)
	{
		ESP_LOGI(tagCanDriver, "Driver was not started");
	}

	error = twai_driver_uninstall();
	if (error != ESP_OK && error != ESP_ERR_INVALID_STATE)
	{
		ESP_LOGE(tagCanDriver, "Failed to uninstall can, error was %s", esp_err_to_name(error));
		return PORT_FAIL;
	}
	else if (error == ESP_ERR_INVALID_STATE)
	{
		ESP_LOGI(tagCanDriver, "Driver was not installed");
	}

	ESP_LOGI(tagCanDriver, "Driver Stopped");
	return PORT_OK;
}
bool handleBusStatus(twai_status_info_t &status_info)
{
	// Print the status info
	ESP_LOGI(tagCanDriver, "State: %d, RX Error Counter: %d, TX Error Counter: %d, RX Queue Length: %d, TX Queue Length: %d",
	         status_info.state, status_info.rx_error_counter, status_info.tx_error_counter, status_info.msgs_to_rx, status_info.msgs_to_tx);

	// Based on state, do something
	if (status_info.state == TWAI_STATE_RUNNING)
	{
		ESP_LOGI(tagCanDriver, "CAN bus is running");
		if (status_info.msgs_to_rx > 0)
		{
			ESP_LOGI(tagCanDriver, "Queued %d packages, ready to process...", status_info.msgs_to_rx);
		}
	}
	else if (status_info.state == TWAI_STATE_STOPPED)
	{
		stop_driver();
		delay(100);
		start_driver(api.sensors.can.serviceSpeed);
		ESP_LOGE(tagCanDriver, "Driver restarted");
	}
	else if (status_info.state == TWAI_STATE_BUS_OFF)
	{
		ESP_LOGE(tagCanDriver, "CAN bus is in bus-off state");
		stop_driver();
		delay(100);
		start_driver(api.sensors.can.serviceSpeed);
		ESP_LOGE(tagCanDriver, "Driver restarted");
	}
	else if (status_info.state == TWAI_STATE_RECOVERING)
	{
		ESP_LOGI(tagCanDriver, "CAN bus is recovering (does not really work)");
		stop_driver();
		delay(100);
		start_driver(api.sensors.can.serviceSpeed);
		ESP_LOGE(tagCanDriver, "Driver restarted");

		ESP_LOGE(tagCanDriver, "twai_stop() and twai_driver_uninstall() called");
	}
	else
	{
		ESP_LOGE(tagCanDriver, "Unknown CAN bus state");
		stop_driver();
		delay(100);
		start_driver(api.sensors.can.serviceSpeed);
		ESP_LOGE(tagCanDriver, "Driver restarted");
	}
	return true;
}

oof! I thought enabling these errata workarounds would improve stability.
For now, I'm turning off CONFIG_TWAI_ERRATA_FIX_TX_INTR_LOST .  That stops the constant crashing when the CAN bus is unplugged from my product.
# CONFIG_TWAI_ERRATA_FIX_TX_INTR_LOST is not set

Could someone pls explain what that errata workaround tried to improve?  The help says:
On the ESP32, when a transmit interrupt occurs, and interrupt register is read on the same APB clock cycle, the transmit interrupt could be lost. Enabling this option will add a workaround that checks the transmit buffer status bit to recover any lost transmit interrupt.

Just curious what could I be missing by not having that errata workaround?  Does it lead to a few missed Tx can frames?


feat(sbb-autocomplete): introduce size s

Preflight Checklist

[x] I have read the Contributing Guidelines for this project.
[x] I agree to follow the Code of Conduct that this project adheres to.
[x] I have searched the pull request tracker for a Pull Request (PR) that matches the one I want to submit, without success.

Issue
This PR Closes #2768
Pull request checklist
Please check if your PR fulfills the following requirements:

[ ] Tests for the changes have been added (for bug fixes / features)
[x] Docs have been reviewed and added / updated if needed (for bug fixes / features)

See Review Guidelines for more information what is checked during review process.
Changes
Changes in this pull request:

introduce examples for sbb-autocomplete in form-field size=s

Browsers
I tested the build on the following browsers:

[ ] Firefox Desktop
[x] Chrome Desktop
[ ] Edge Desktop
[ ] Safari Desktop
[ ] Chrome Mobile
[ ] Safari Mobile

Screen readers
I tested the build on the following browsers:

[ ] JAWS Firefox Desktop
[ ] JAWS Chrome Desktop
[ ] NVDA Firefox Desktop
[ ] NVDA Chrome Desktop
[ ] VoiceOver Safari Desktop
[ ] VoiceOver Chrome Desktop
[ ] VoiceOver Safari Mobile
[ ] Android Accessibility Suite Chrome Mobile

Pull request type

Please check the type of change your PR introduces:

[ ] Bugfix
[x] Feature
[ ] Code style update (formatting, renaming)
[ ] Refactoring (no functional changes, no api changes)
[ ] Build related changes
[ ] Documentation content changes
[ ] Other (please describe):

Does this introduce a breaking change?

[ ] Yes
[x] No

Other information

LGTM. Thanks


Added safety check

This commit makes sure the thread can be joined to avoid std::system_errors being thrown on shutdown

It is difficult to imagine situation, when system_error should occurs on shutdown. If only some thread(s) in pool accidentally crashed.

i'm trying to recreate my conditions - herre is my gdb backtrace for my main app
#0  __cxxabiv1::__cxa_throw (obj=obj@entry=0x555555c20af0,
    tinfo=tinfo@entry=0x7ffff607d220 <typeinfo for std::system_error>,
    dest=dest@entry=0x7ffff5dbb800 <std::system_error::~system_error()>)
    at /build/gcc/src/gcc/libstdc++-v3/libsupc++/eh_throw.cc:75
#1  0x00007ffff5dbbb33 in std::__throw_system_error (__i=22)
    at /build/gcc/src/gcc/libstdc++-v3/src/c++11/system_error.cc:81
#2  0x00007ffff5dbbe4e in std::thread::join (this=0x555555cd6bd0)
    at /build/gcc/src/gcc/libstdc++-v3/src/c++11/thread.cc:139
#3  0x0000555555655173 in ThreadPool::shutdown (this=0x555555c5b660)
    at /home/emersont1/roxanne-engine/thirdparty/thread-pool/include/ThreadPool.h:71
...

which is fixed when i add the if-statment

Ewwwwwwwwww. Never seen this. It can be platform-specific behaviour.

possibly, as I've only tried it with gcc on linux and MinGW on windows, but std::thread::joinable() is standard code

Sorry for the late reply. I've been really busy lately. As Yuri says, this might be platform specific but I do think is a good practice to check if the action can be done before doing it. It makes sense and it may prevent a crash. Good job!


Add link to writing a self-assessment guidance to platform

Background
The guidance to writing a self-assessment has recently been updated and Rob has proposed that we signpost applicants to the new content on the JAC website.
User Story
As JAC, I would like applicants to make use of the new guidance so that they give themselves the best possible chance of being selected.
Feature(s) Description

On the Self-Assessment competencies page, add the following content as shown in the image below:

Before completing your self-assessment, please refer to the helpful guidance on the JAC website.
Private Zenhub Image

Could the text be included in an information box (is there a specific icon that we use?) so that it stands out on the page?

Hey team! Please add your planning poker estimate with Zenhub @drieJAC @HalcyonJAC @tomlovesgithub @warrensearle


Assertion failure with return inside switch

unittest
{
    switch (op)
    {
        return -1; // memory blocks are different
    }
}

core.exception.AssertError@..\..\dfmt\src\dfmt.d(573): }
----------------
0x00484E61 in _d_assert_msg
0x0041DA72 in void dfmt.TokenFormatter!(std.stdio.File.LockingTextWriter).TokenFormatter.format() at F:\documents\Desktop\D\sourcecode\dmdgit\src\..\..\dfmt\src\dfmt.d(162)
0x0041D20B in void dfmt.format!(std.stdio.File.LockingTextWriter).format(immutable(char)[], ubyte[], std.stdio.File.LockingTextWriter, dfmt.FormatterConfig*) at F:\documents\Desktop\D\sourcecode\dmdgit\src\..\..\dfmt\src\dfmt.d(137)
0x00402465 in _Dmain at F:\documents\Desktop\D\sourcecode\dmdgit\src\..\..\dfmt\src\dfmt.d(99)
0x004828AA in D2rt6dmain211_d_run_mainUiPPaPUAAaZiZ6runAllMFZ9__lambda1MFZv
0x0048287F in void rt.dmain2._d_run_main(int, char**, extern (C) int function(char[][])*).runAll()
0x00482797 in _d_run_main
0x0043059C in main
0x004AE4D5 in mainCRTStartup
0x76B6336A in BaseThreadInitThunk
0x77AE9F72 in RtlInitializeExceptionChain
0x77AE9F45 in RtlInitializeExceptionChain
Error executing command run: Program exited with code 1

I almost don't want to fix this one.

I could give you a non-nonsense test case if that would help.

Any chance I could get a pull request as well?

Not super likely.

Thanks, looks like that was the last assertion affecting ddmd.


Bad Python code for Add Application to Pipeline

Under Python Workshop -> Advanced Topics -> CDK Pipelines -> Add Application to Pipeline, the code provided for pipeline_stage.py is referring to a non-existent module pypipworkshop_stack and class PypipworkshopStack:
from aws_cdk import (
    core
)
from pypipworkshop_stack import PypipworkshopStack

class WorkshopPipelineStage(core.Stage):

    def __init__(self, scope: core.Construct, id: str, **kwargs):
        super().__init__(scope, id, **kwargs)

        service = PypipworkshopStack(self, 'WebService')

what I consider as good working code is available here: https://github.com/aws-samples/aws-cdk-intro-workshop/tree/master/code/python/pipelines-workshop


[T4A4][F09-B1] Phua Kian Ming

Applied Interface Segregation Principle by creating a Printable interface to extract printable form of details for each Person.

Ready for review

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


Unable to snap WSLg window like native one

Is your feature request related to a problem? Please describe.
Windows opened in WSLg could not be snapped as Windows native windows - see this post for more information about the native behavior: https://support.microsoft.com/en-us/windows/snap-your-windows-885a9b1e-a983-a3b1-16cd-c531795e6241
Describe the solution you'd like
I'd like to be able to:

maximize the window by "move to the top screen border gesture"
snap the window to the left/right half of the screen by "move to the left/right screen border gesture"
unmaximize window by dragging it

Describe alternatives you've considered
At this time it's possible to resize the window or move it to one side of the screen manually.

@

Same problem with PowerToys - fancyzones  but the window is freeze. For unfreeze maxmize the window.

Thanks for the suggestion, local window move and resize in the RDP client, which allows for more natural and performance window move and resize and enable such scenario such as snap/fanyzones, is high on our priority list of new feature to add in the future.

This particular request is already tracked with #22, resolving as a duplicate.


Varied style names list

Please give varied style name list (32 styles ) with style images

I believe it is the same with the paper appendix (pages 14-24): https://arxiv.org/abs/1610.07629
Roy Lichtenstein, Bicentennial Print (1975).
Ernst Ludwig Kirchner, Boy with Sweets (1918).
Paul Signac, Cassis, Cap Lombard, Opus 196 (1889).
Paul Klee, Colors from a Distance (1932).
Frederic Edwin Church, Cotopaxi (1855).
Jamini Roy, Crucifixion.
Henri de Toulouse-Lautrec, Divan Japonais (1893).
Egon Schiele, Edith with Striped Dress, Sitting (1915).
Georges Rouault, Head of a Clown (ca. 1907-1908).
William Hoare, Henry Hoare, ”The Magnificent”, of Stourhead (about 1750-1760).
Giorgio de Chirico, Horses on the seashore (1927/1928).
Vincent van Gogh, Landscape at Saint-Remy (Enclosed Field with Peasant) ´ (1889).
Nicolas Poussin, Landscape with a Calm (1650-1651).
Bernardino Fungai, Madonna and Child with Two Hermit Saints (early 1480s).
Max Hermann Maxy, Portrait of a Friend (1926).
Juan Gris, Portrait of Pablo Picasso (1912).
Severini Gino, Ritmo plastico del 14 luglio (1913).
Richard Diebenkorn, Seawall (1957).
Alice Bailly, Self-Portrait (1917).
Grayson Perry, The Annunciation of the Virgin Deal (2012).
William Glackens, The Green Boathouse (ca. 1922).
Edvard Munch, The Scream (1910).
Vincent van Gogh, The Starry Night (1889).
Pieter Bruegel the Elder, The Tower of Babel (1563).
Wolfgang Lettl, The Trial (1981).
Douglas Coupland, Thomson No. 5 (Yellow Sunset) (2011).
Claude Monet, Three Fishing Boats (1886).
John Ruskin, Trees in a Lane (1847).
Giuseppe Cades, Tullia about to Ride over the Body of Her Father in Her Chariot (about 1770-1775).
Berthe Morisot, Under the Orange Tree (1889).
Giulio Romano (Giulio Pippi), Victory, Janus, Chronos and Gaea (about 1532-1534).
Wassily Kandinsky, White Zig Zags (1922).

What about style index?
[0]->Roy Lichtenstein, Bicentennial Print (1975).
[1]->Ernst Ludwig Kirchner, Boy with Sweets (1918).
[2]->Paul Signac, Cassis, Cap Lombard, Opus 196 (1889).


Has conda-forge deprecated python 3.4?

I've just noticed that recent packages on conda-forge don't seem to be available for python 3.4, such as sphinx. If conda-forge has stopped building for python 3.4, we need to also disable this.

Most packages have, it really seems to be more package-specific, but I still see a few with Python 3.4 in their travis.yml files. I wonder though how many of those are just "have not made an update to since Python 3.6 was released"

On 05/23/2017 03:47 PM, Levi Naden wrote:

Most packages have, it really seems to be more package-specific, but I still see a few with Python 3.4 in their travis.yml files. I wonder though how many of
those are just "have not made an update to since Python 3.6 was released"
These have probably not rerendered their feedstocks in a long time. I have the impression that automatic rerendering PRs are not super reliable.
For example a new Python release is in the wild and the conda-smithy can handle it, there is is no automatic update for like weeks.
Of course you can always do it manually (as a feedstock maintainer).

Even if the feedstock is re-rendered, if there isn't actually a new release of the software, it will appear as if python 3.4 is still supported because they don't delete old binaries

don't delete old binaries

Right, thats why I was trying to base what I was seeing on the CI files like the .travis.yml by random clicking on a few feedstocks.
I could not find any actual documentation from the conda-forge team as to which versions they officially support anywhere though, which is why this is question is somewhat unanswered

Maybe we can ask them what their policy is and where they state which versions of Python, numpy, etc. they support?

Best I can find is the release announcement for conda 4.3 which says that 4.3 will be the last one with regular Python 3.4 support. But that is for just Anaconda's support, not conda-forge per-se

Can we ask the conda-forge developers where they describe their policy about supported python versions?

Asked

Answer: Python 3.4 is no longer supported. I'll update the CI recipes in a PR and close this issue when its merged


Nextjs webapp with next-i18next build fails

Before opening, please confirm:

[X] I have checked to see if my question is addressed in the FAQ.
[X] I have searched for duplicate or closed issues.
[X] I have read the guide for submitting bug reports.
[X] I have done my best to include a minimal, self-contained set of instructions for consistently reproducing the issue.

App Id
dt0016ajs5y61
Region
us-east-1
Amplify Console feature
No response
Describe the bug
I have a next webapp and I'm using the next-i18next module for internationalization of my app. The build is successful locally, but it fails with amplify.
The error I'm getting is the following:
`Unhandled error during request: Error: Cannot find module '/codebuild/output/src576564262/src/vertra-webapp/next-i18next.config.js'
                              at webpackEmptyContext (/codebuild/output/src576564262/src/vertra-webapp/.next//pages/404.js:175060:10)

                              at /codebuild/output/src576564262/src/vertra-webapp/.next//pages/404.js:8987:73 {

                              code: 'MODULE_NOT_FOUND'

                              }`

The next-i18next.config.js file:
module.exports = {   i18n: {     defaultLocale: 'pt-br',     locales: ['pt-br', 'pt'],   },   lowerCaseLng: true,   react: {     useSuspense: false,   }, };
The next.config.js file:
`const withImages = require('next-images');
const withPWA = require('next-pwa');
const runtimeCaching = require('next-pwa/cache');
const { i18n } = require('./next-i18next.config');
const moduleExports = withImages(
withPWA({
pwa: {
dest: 'public',
skipWaiting: true,
disable: process.env.NODE_ENV === 'development',
runtimeCaching,
},
images: {
domains: [
'prod-vertra-properties-images.s3.amazonaws.com',
'main-vertra-properties-images.s3.amazonaws.com',
],
},
i18n,
})
);`
Expected behavior
The webapp should build successfully.
Reproduction steps

Create nextjs app
Install and config next-i18next
Build app using amplify

Build Settings
version: 0.1
backend:
  phases:
    build:
      commands:
        - '# Execute Amplify CLI with the helper script'
        - amplifyPush --simple
frontend:
  phases:
    preBuild:
      commands:
        - export BUILD_DIR=$PWD/$BUILD_DIR_NAME
        - yarn install
        - cat aws-exports.js
        - yarn lint --fix
        - export NODE_OPTIONS="--max-old-space-size=5120"
    build:
      commands:
        - yarn build
  artifacts:
    baseDirectory: .next
    files:
      - '**/*'
  cache:
    paths:
      - node_modules/**/*

Additional information
No response

Have you seen this related issue? https://github.com/aws-amplify/amplify-console/issues/1872
Also what version of next are you using in your package.json ?

Yes, I have seen this issue @ganipcanot, but even though I'm using webpack4, it's not working.
I'm using the next 10.2.0 version.

Hi,
We are experiencing the same issue with Next.js, Amplify and next-i18next. For us, the error described above occurs when using SSG, while for SSR we experience following error:
Error: next-i18next was unable to find a user config

During research, we found isaachinman/next-i18next#990 and isaachinman/next-i18next#1028 which describe the same error while using the serverless framework instead of Amplify. With the information provided in these issues, it looks like next-i18next depends on the next-18next.config.js file to be present in the projects root directory, even when the production build is put into the .next subdir, which implies the following file structure:
project root
|- .next
|- node_modules
|- next-i18next.config.js
|- package.json

This looks like amplify is missing to copy the additional configuration files to the productive environment (which is understandable, as they are not located in the build directory).
As a work around, instead of relying on the auto-detection, you can override the configuration in every call to appWithTranslation(MyApp, i18next) and serverSideTranslations(locale, [namespace], i18next). With the additional import statements, this is not handy at all, but at least, it is working (for us). Maybe this will help you as well to proceed?
In the end, it looks like an architectural constraint with the next-i18next module to rely on files in the cwd instead of packaging them into the build artefacts. At least for environments with limited customisation options, this simplification option turns out to be a show stopper in the end...
To overcome this limitation, I'd like to configure Amplify to copy some additional files. Is there any way to achieve this?
Thanks and Best Regards,
Janik

Thanks a lot for the tip @j-mastr. I was able to successfully build my app with amplify and next-i18next.
There's only one problem that I'm facing right now: the locale is not being automatically detected and redirected to the right url. For example I have two languages, english and Brazilian-portuguese. The default language is english, but when I access the main URL with Brazilian-portuguese being the main language of my browser, I'm still receiving the app in english. To view the app in portuguese I have to set the URL to /pt-br manually. In my local build I'm automatically redirected.
Other issue I'm facing is that only the sub-path routing is working, domain routing won't work whatsoever. Before this change it was working in my local build, but now it's not working anymore.
Did you also face these issues?

Glad it took you a step further, @mhamendes!
As we are still at the beginning of our project, we have not yet any real translations in place. I've just tested your case by adding some dummy translations to my project, and for me it worked including the language detection and automatic forward. However, I couldn't verify the domain routing as we have no language-specific domains in place.
Just an idea: How is your next.config.js configured? Is the config for next-i18next still imported? Since routing should be a matter of the next.js core and therefore unrelated to next-i18next.
During the test of your issues, however, I stumbled upon another one: On pages with getStaticProps, translations are working, while on pages with getServerSideProps they are missing completely. Are you experiencing a similar behaviour?
Best,
Janik

I was actually trying to configure the domain routing for sub-domains instead of language-specific domains. I tested it on a local build and it worked just fine, but it won't work in production.
So, my next-i18next.config.js is the following:
module.exports = {
  i18n: {
    defaultLocale: 'en',
    locales: ['pt-br', 'en'],
  },
  lowerCaseLng: true,
  react: {
    useSuspense: false,
  },
};

I'm still importing it to next.config.js. This is my next.config.js file:
const withImages = require('next-images');
const withPWA = require('next-pwa');
const runtimeCaching = require('next-pwa/cache');
const { i18n } = require('./next-i18next.config');

module.exports = withImages(
  withPWA({
    pwa: {
      dest: 'public',
      skipWaiting: true,
      disable: process.env.NODE_ENV === 'development',
      runtimeCaching,
    },
    images: {
      domains: [
        'prod-vertra-properties-images.s3.amazonaws.com',
        'vertra-owner-properties-images.s3.amazonaws.com',
      ],
      disableStaticImages: true,
    },
    i18n,
  })
);

I and experiencing the same issue with getServerSideProps. The translation only works with getStaticProps, every time I tried to use it on a page with getServerSideProps they were also missing.

Hi @mhamendes, sorry for my late response, I'm not actively working on the project at the moment as it has low priority.
@all:
My last insight with some more debugging was, that it looks like the missing translations are not copied into the SSR Lambda as well, which brings me back to the initial question:

To overcome this limitation, I'd like to configure Amplify to copy some additional files. Is there any way to achieve this?

Is there anyone from the Amplify team who can tell how Amplify determines the files to copy into the build containers + SSR Lambdas and how to manually add further files to this list, @ganipcanot? Some naming pattern would already be helpful.
I further agree with @mhamendes that this might not be related to the webpack issue @ganipcanot mentioned above, since none of the files affected by our issue are imported using ES6 modules and instead loaded dynamically.
Since I'm neither an amplify nor an next-i18next contributor or expert, unfortunately this is all I can tell you.

Also occurring when specifying "latest" for next.js version.

using
"next": "11.1.2",
"next-i18next": "^8.7.0",

Also struggling with this, currently using Vercel to deploy..

+1

I can able to make it work with Next.js 11 and Webpack 5, Thanks @j-mastr for the tips.
For reference:
https://github.com/SatadruBhattacharjee/nextjs-i18n-country-path-dynamic-routing

I believe this PR will solve this issue: https://github.com/serverless-nextjs/serverless-next.js/pull/1641
we just need AWS to update to this release

Same issue here, i'm getting an error at SSR build time (but build works successfully..)

@j-mastr do we need to move this to another repo to get some attention? Just because its a blocker for anyone looking to deploy next.js with i18n translations

@dylan-westbury I already thought so as well. Do you have any idea where we can address this issue?

I believe this PR will solve this issue: serverless-nextjs/serverless-next.js#1641
we just need AWS to update to this release

@sergioviniciuss I don't know how the setup of the other folks is done. At least I am not using the Serverless framework, but the Next.js and Amplify capabilities right away. Do you know if this fix might find a way into the regular Next.js codebase? Can anyone confirm this solution, maybe @mhamendes?
Best,
Janik

@j-mastr , @mhamendes is correct. Amplify uses it behind the scenes. This is why I wouldn't expect anything from Next.js side. The feature is working fine on Next.js. (it also works if you deploy it on vercel, for example, but on amplify we found out that issue was the problem and a coworker prepared that fix for them. So once they bring the fix to a stable release (which I believe they're done already), we should get it working on amplify as well.

Any Updates on this? Ampliy has not fixed this yet

I have the same problem.
Any news about it?

If your build is failing because of webpack issues or module not found errors, take a read at this issue: https://github.com/aws-amplify/amplify-console/issues/2427. You likely need to build your app with the experimental-serverless-trace target.

Hi.
I got Amplify to build correctly thanks to the https://github.com/aws-amplify/amplify-console/issues/2427 as mentioned by @ferdingler
But, the browser locale (specified by the accept-language) is till not being used to redirect me to the correct translated route.
Any update on this?
Thank you

Hi. I got Amplify to build correctly thanks to the #2427 as mentioned by @ferdingler
But, the browser locale (specified by the accept-language) is still not being used to redirect me to the correct translated route.
Any update on this?
Thank you

Same. Solved  thanks to the #2427. However, Accept-language works on local but not hosting app with aws amplify.

Hi @sergioviniciuss! Do you have any updates on this? Building the project is no issue now but the automatic language detection and redirection are not working on the deployed app. Running it locally works fine tho.
@mhamendes were you able to make it work on your case?

Just update to "next-i18next": "11.0.0"
// In page.js
export const getServerSideProps: GetStaticProps = async ({ locale }: any) => {
  return {
    props: {
      ...(await serverSideTranslations(locale, ['common', 'default', 'swap'], nextI18NextConfig)),
    },
  }
}

// In App.tsx
export default appWithTranslation(MyApp, nextI18NextConfig)

Hi, We are experiencing the same issue with Next.js, Amplify and next-i18next. For us, the error described above occurs when using SSG, while for SSR we experience following error:
Error: next-i18next was unable to find a user config

During research, we found i18next/next-i18next#990 and i18next/next-i18next#1028 which describe the same error while using the serverless framework instead of Amplify. With the information provided in these issues, it looks like next-i18next depends on the next-18next.config.js file to be present in the projects root directory, even when the production build is put into the .next subdir, which implies the following file structure:
project root
|- .next
|- node_modules
|- next-i18next.config.js
|- package.json

This looks like amplify is missing to copy the additional configuration files to the productive environment (which is understandable, as they are not located in the build directory).
As a work around, instead of relying on the auto-detection, you can override the configuration in every call to appWithTranslation(MyApp, i18next) and serverSideTranslations(locale, [namespace], i18next). With the additional import statements, this is not handy at all, but at least, it is working (for us). Maybe this will help you as well to proceed?
In the end, it looks like an architectural constraint with the next-i18next module to rely on files in the cwd instead of packaging them into the build artefacts. At least for environments with limited customisation options, this simplification option turns out to be a show stopper in the end...
To overcome this limitation, I'd like to configure Amplify to copy some additional files. Is there any way to achieve this?
Thanks and Best Regards, Janik

What's this i18next that exists here?
On my NextJS project I solely have next-i18next and the import that I can add is i18n, which TypeScript dislikes with

Argument of type 'i18n | null' is not assignable to parameter of type 'UserConfig | null | undefined'.
Type 'i18n' is not assignable to type 'UserConfig'.
Property 'i18n' is missing in type 'i18n' but required in type '{ i18n: NextJsI18NConfig; localeExtension?: string | undefined; localePath?: string | ((locale: string, namespace: string, missing: boolean) => string) | undefined; localeStructure?: string | undefined; reloadOnPrerender?: boolean | undefined; serializeConfig?: boolean | undefined; use?: any[] | undefined; }'.


Prisma Engine not respecting socket_timeout in connection string

Bug description
We're using the socket_timeout=30 option for PSQL_URL in order to timeout at 30s but we're not actually seeing queries timing out. We have some bad queries lasting over 10minutes.
@nurul3101 recommended on Slack that we set a statement_timeout in Postgres itself, which ultimately gets the job done. However - it's possible it's contributing to this issue https://github.com/prisma/prisma/issues/18207
Usage is PSQL_URL=postgresql://user:pass@some-db:5432/mainnet?schema=public&connection_limit=100&socket_timeout=30
  pid  |  client_addr  | usename  | state  |   query_time
-------+---------------+----------+--------+-----------------
  4358 |               | usename  | active | 00:06:10.927626
 28150 | ...           | usename  | active | 00:06:10.927626 <-- much longer than 30 seconds
  4357 |               | usename  | active | 00:06:10.927626

As a corollary - Prisma is not handling statement_timeouts well from Postgres - we routinely see the following for all processes running on the same app anytime any of the queries times out:
Invalid `prisma.$queryRaw()` invocation:
other side closed

How to reproduce
Set PSQL_URL=postgresql://user:pass@some-db:5432/mainnet?schema=public&connection_limit=100&socket_timeout=30 and run the prisma client at high throughput
Observe on the Postgres side long-running queries well-over 30s
Expected behavior
No response
Prisma information
We're able to log queries that last longer than 30s using
export function createPrismaClient<T extends PrismaClientConstructor>(
  ctor: T,
  url: string,
  slowQueryLogTimeoutMs: number = 30000,
): InstanceType<T> {
  const prismaClient = new ctor({
    datasources: { db: { url } },
    log: [
      {
        emit: 'event',
        level: 'query',
      },
    ],
  });

  prismaClient.$on('query', (e: PrismaQueryEvent) => {
      // Seeing this frequently when Postgres side does not have statement_timeout
      if (e.duration > slowQueryLogTimeoutMs) {
        melogger.warn(
          `Long running Query: ${e.query}, Params: ${e.params}, Duration: ${e.duration} ms, target: ${e.target}`,
        );
      }
  });

  return prismaClient;
}

Environment & setup

OS: Alpine Linux node:16.16-alpine3.16
Database: PostgreSQL 13.7 on aarch64-unknown-linux-gnu, compiled by aarch64-unknown-linux-gnu-gcc (GCC) 7.4.0, 64-bit
Node.js version: v16.14.2
Prisma version 4.10.1

Prisma Version
prisma                  : 4.10.1
@prisma/client          : 4.10.1
Current platform        : darwin-arm64
Query Engine (Node-API) : libquery-engine aead147aa326ccb985dcfed5b065b4fdabd44b19 (at ../../../../../Library/pnpm/store/v3/tmp/dlx-33686/node_modules/.pnpm/@prisma+engines<EMAIL_ADDRESS>Migration Engine        : migration-engine-cli aead147aa326ccb985dcfed5b065b4fdabd44b19 (at ../../../../../Library/pnpm/store/v3/tmp/dlx-33686/node_modules/.pnpm/@prisma+engines@4.10.1/node_modules/@prisma/engines/migration-engine-darwin-arm64)
Format Wasm             : @prisma/prisma-fmt-wasm 4.10.1-1.80b351cc7c06d352abe81be19b8a89e9c6b7c110
Default Engines Hash    : aead147aa326ccb985dcfed5b065b4fdabd44b19
Studio                  : 0.481.0
Preview Features        : metrics

As a corollary - Prisma is not handling statement_timeouts well from Postgres - we routinely see the following for all processes running on the same app anytime any of the queries times out:
Invalid `prisma.$queryRaw()` invocation:
other side closed

I noticed that undici accepts header_timeout & body_timeout to control the connection timeout as a replacement of socket_timeout. However prisma disables them for binaryEngine (link), wonder if there's a specific reason for that?

@solonk8 Prisma uses Undici to talk to the binary Query Engine (which is not used by default by Prisma), which then talks to the actual database. socket_timeout is meant for the conversation with the database, not for the internal communication with the (binary) Query Engine.


Fix DEV mode override

Local .jsbundle use seems to be broken on 0.14.0-stable.
It seems like something in the bundler changed the output of __DEV__ = X in the packager, which made this regex break.
I'm not sure if this is the right fix, or whether to find where in the packager this changed.
Addresses https://github.com/facebook/react-native/issues/3583

@martinbigio @frantic any idea what could have changed how DEV is defined? This fix looks fine as long as people don't try to load dev bundles from old packager instances with new binaries.

@arbesfeld is your bundle minified? I think that ObjC code relies on assumption that minified it will become __DEV__=!1.
Long term, as we look into dead code elimination, this dev override won't work at all.
cc @nicklockwood @tadeuzagallo

Ah--my bundle is not minified. Did this work in the past with non-minified bundles?

When upgrading to 0.14.0-rc today, I started getting this same error.  My bundle is not minified, but should it be when developing?

This is now fixed.


handle pagination

verify that pagination is handled properly

https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/s3.html#S3.Bucket.objects
(will perhaps also speed up things)


Dimension problem

Hi, when I run the code with TSUNAMI dataset. There is  error of upsample.

I also encountered this problem, have you solved it?


Discovery via package.json

Let users upload a package.json and then select packages to give/pledge to.

Moving to a PR in #4507.