Add new algorithms supported in firmware 5.7.x

This commit supports the new algorithms supported on YubiKeys with a 5.7.x firmware. It adds support for RSA-3072, RSA-4096, Ed25519, and X25519.
Generating X25519 keys is only supported with Go 1.20+, which adds support for the crypto/ecdh package.
Note that this commit removes the support for Ed25519 on SoloKeys if the algorithm identifier is set to 0x22.
Fixes #143

Instead of adding a new exported type X25519PrivateKey, I propose the following:

Define the following interface (which is also satisfied by *ecdh.PrivateKey):

type ECDHer interface {
    ECDH(*ecdh.PublicKey) ([]byte, error)
}

Rename SharedKey to ECDH.
Add an ECDH function to ECDSAPrivateKey that satisfies this interface.
Deprecate ECDSAPrivateKey.SharedKey
Update the documentation for YubiKey.PrivateKey to say "The returned key implements crypto.Signer, crypto.Decrypter, and/or ECDHer" depending on the key type.

*ecdh.PrivateKeys and hardware-backed ECDH keys would implement the same interface, providing the same flexibility that signing and decrypting keys offer via crypto.Signer and crypto.Decrypter.

@ericchiang what do you think about @AGWA proposal? My initial implementation was like that, but I noticed that ECDSA was using SharedKey, so I changed it.
@AGWA I'm open to renaming SharedKey to ECDH if @ericchiang is ok with it. But it isn't necessary to add the interface here. The software using this package can create its own.

I agree that we shouldn't create new interfaces here. At the point where you use the interface, you have to be aware of piv-go anyway. If this is going to be a common definition, it probably belongs in https://pkg.go.dev/crypto, similar to crypto.Signer.
I'd prefer keeping "SharedKey" to be consistent within this package with ECDSAPrivateKey. Not thrilled with deprecating things for deprecation sake

I agree that the interface doesn't need to be defined here, but I'm still hoping we can call the function ECDH for consistency with ecdh.PrivateKey.
I suggested deprecating ECDSAPrivateKey.SharedKey because doing ECDH with crypto/elliptic and crypto/ecdsa has been deprecated in the standard library in favor of crypto/ecdh. The new ECDSAPrivateKey.ECDH method would take a *ecdh.PublicKey instead of a *ecdsa.PublicKey.  I've submitted a PR #158 for discussion.  I'm not trying to create pointless churn here; I'm working on a project where I would like to use hardware and software ECDH keys interchangeably and having a common, modern interface for ECDH would be extremely convenient compared to ecdh.PrivateKey, ECDSAPrivateKey and X25519PrivateKey all having a different interface.

Thanks https://github.com/go-piv/piv-go/pull/158 is helpful! I didn't realize the proposal is to change the signature, not just the name. I'm fine with supporting the newer crypto/ecdh package keys through a "ECDH" method.
The parts of crypto/elliptic that were deprecated were those used to do ecdh, getting math/big out of the crypto paths for the standard library. piv-go doesn't use it this way (DH is done on the hardware). I don't see the need to deprecate the SharedKey method.
I'll merge #158. @maraino sorry for the flip flop, but the name "ECDH" does seem reasonable if we're accepting  *ecdh.PublicKey

Thanks everyone for the feedback here! I've gone ahead and tagged v2.2.0 including these changes https://github.com/go-piv/piv-go/releases/tag/v2.2.0


feat: Support LOCALTIME and LOCALTIMESTAMP time functions

This PR adds support for parsing LOCALTIME and LOCALTIMESTAMP without parentheses as a time function with no arguments (see https://www.postgresql.org/docs/8.1/functions-datetime.html#FUNCTIONS-DATETIME-CURRENT). It also adds related tests.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

18 of 23 (78.26%)  changed or added relevant lines in 2 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-0.007%) to 85.459%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

src/parser.rs
0
5
0.0%

Totals

Change from base Build<PHONE_NUMBER>:
-0.007%

Covered Lines:
9627

Relevant Lines:
11265

💛  - Coveralls


buff atmos firesuits, nerf atmos hardsuits

About the PR

Buffs atmos firesuits to be more heat resistant than the hardsuit. Hardsuit meta is bad I think and they already give you space resistance. Having the player be able to choose between heat resistance and space resistance would be a cool dynamic probably.
Media

[X] I have added screenshots/videos to this PR showcasing its changes ingame, or this PR does not require an ingame showcase

Changelog

:cl:

tweak: Nanotrasen realized they could stuff even more asbestos into the Atmospherics firesuits, and have promptly done so.
tweak: Due to a recent reallocation in asbestos supply, the Atmospherics hardsuits are less heat resistant.

is firesuit not space resistant

they haven't been since last year iirc

Atmos firesuit is space resistant by the way

When dealing with the results of a plasma fire, the hardsuit protected me from the pressure while the firesuit did not, which is what inspired this change.
Unless I'm getting something terribly wrong, right now atmos' armor choices are:
Firesuit: Less effective against heat, less effective against pressure
Hardsuit: More effective against heat, more effective against pressure.
I think it makes more sense for the firesuit to be more resistant to heat regardless considering it's a firesuit. If you get set on fire, a space protection suit shouldn't be a better option than a fire suit.

sure

these changes don't really affect pressure damage though right, since pressure damage is brute not heat?
Or am i wrong?

the only things that changed were the heat damage values on the firesuit and hardsuit

Wasn't the issue that a lot of heat innately leads to high pressure, which you'd need the hardsuit for?

the issue was that the firesuit sucked relatively and there was never any reason to use it. atmos were rewarded in pretty much every situation for wearing their hardsuits and only their hardsuits.
now, if there's a rampant pyro-anomaly, a rogue chemist with a flamethrower, or an area that's hot but not high-pressure, the atmos firesuit is a better pick now.

I mean, honestly, I still don't really see the firesuit being used. I don't know about plasma fires, but I know for certain that pyro-anomalies left alone lead to very high pressure in rooms, and "a rogue chemist with a flamethrower" isn't something that atmos should be responding to anyways. I think a better solution would be leaning into the firesuit being a "hardsuit lite", and changing the speed debuff from 20% to 15 or 10 (compared to the hardsuit's 35).

tmperature Heat damage dones't really affect the firesuit or the hardsuit, since they got insane temperature resistance, by the time you take any heat damage from temperature with any of the suits you're already dead to pressure damage, the only thing this changes is firesuits just making you a firefighter against lasers and flamethrowers

This looks funny, considering both suits are space-usable and firesuit has always been the better one, since it has lower move speed penalty.

dawg i just be merging any balance PRs since they take like 5 seconds and are easy to test in game, if you guys want to make changes just make them

should i make atmos fire suits only protect from high pressure, then?

Maybe you should just give the hardsuits pressure protection? No need to break something that already works.


community: Overhaul Databricks components documentation

Description: Documentation at integrations/llms/databricks is not up-to-date and includes examples about chat model and embeddings, which should be located in the different corresponding subdirectories. This PR split the page into correct scope and overhaul the contents.
Note: This PR might be hard to review on the diffs view, please use the following preview links for the changed pages.

ChatDatabricks: https://langchain-git-fork-b-step62-chat-databricks-doc-langchain.vercel.app/v0.2/docs/integrations/chat/databricks/

Databricks: https://langchain-git-fork-b-step62-chat-databricks-doc-langchain.vercel.app/v0.2/docs/integrations/llms/databricks/

DatabricksEmbeddings: https://langchain-git-fork-b-step62-chat-databricks-doc-langchain.vercel.app/v0.2/docs/integrations/text_embedding/databricks/

[x] Lint and test: Run make format, make lint and make test from the root of the package(s) you've modified. See contribution guidelines for more: https://python.langchain.com/docs/contributing/

@baskaryan read through and makes sense to me, lmk what you think of splitting theses docs

@baskaryan Would you mind taking a look at this PR? Thank you so much!


Allow for container logs to continue to stay on screen after pod is terminated

What would you like to be added:
When you're viewing logs currently for a container, when the pod terminates the logs suddenly disappear and the error displays
Failed to load logs: Pod xxxx missing
Reason: undefined (undefined)

It would be VERY useful when attempting to debug these pods to allow us to continue viewing these logs as they are on screen after the pod has terminated.
Why is this needed:
Because if you want to debug a terminating pod and you know it contains logs within that will help you understand the cause, you can view them. Yes, these logs should ideally be sent to logging tool (e.g. elastic) however it would be far more elegant for Lens to not fail viewing these existing logs when a pod is terminated.
Environment you are Lens application on:

Kubernetes distribution: [EKS, AKS, GKE, Rancher, ...]: AKS and EKS
Desktop OS: Windows 11

I want to upvote this issue. It would be very useful for me as well if the logs were retained for a little while longer.


fix(css/modules): aggregate class names when composes is chained.

Description:
aggregate class names when composes is chained.

BREAKING CHANGE:

Related issue (if exists):
Closes #7737
https://github.com/web-infra-dev/rspack/issues/3875

Don't worry about CI, I'll fix them with another PR.

Force-merging to unblock


Additional Rules in pre commit

I added my rules and it is in my local path, so in pre commit config.yaml file i added my local path to include the rules. Suppose If i have my own rules in my repo (github) , can we replace my local path to github path in the config.yaml file ?

We don't have that capability builtin today but I really like this idea

IMO, updating cfn-lint to support remote rule locations will add bloat and complexity to this package. Implementing something like this will require appropriate handling of protocols, URIs, credentials, and caching.
Given that #1216 is merged, an acceptable alternative would be to package, distribute, and install custom rules via pip, which supports various git URIs. Then update your .pre-commit-config.yaml to use the rules (python) package name instead of a local path.

IMO, updating cfn-lint to support remote rule locations will add bloat and complexity to this package. Implementing something like this will require appropriate handling of protocols, URIs, credentials, and caching.

Agree with this. Leaning on the side of Unix philosophy where other tools solve fetching remote files better, especially if handling credentials, and I'd recommend retrieving remote files locally first and then referencing their local copies
similar issues: https://github.com/aws-cloudformation/cfn-python-lint/issues/1192, https://github.com/aws-cloudformation/cloudformation-guard/issues/24


Added default constructor

Resolves: #611
Added default constructor to EmbeddingResponse.java for correctly unmarshal response.

Thanks for the contribution, but as I explain here, this is not correct.


alfaview: 8.47.0 -> 8.49.1

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://repology.org/metapackage/alfaview/versions.
meta.description for alfaview is: "Video-conferencing application, specialized in virtual online meetings, seminars, training sessions and conferences"
meta.homepage for alfaview is: "https://alfaview.com"
meta.changelog for alfaview is: ""
Updates performed

Version update

To inspect upstream changes
Impact

Checks done (click to expand)

built on NixOS
The tests defined in passthru.tests, if any, passed
found 8.49.1 with grep in /nix/store/gb7w22nqdamk7r5bwi1gydb27pq13650-alfaview-8.49.1
found 8.49.1 in filename of file in /nix/store/gb7w22nqdamk7r5bwi1gydb27pq13650-alfaview-8.49.1

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

1 total rebuild path(s)

1 package rebuild(s)

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

First fifty rebuilds by attrpath
alfaview

Instructions to test this update (click to expand)

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

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

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

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

1 package built:

alfaview

Maintainer pings
cc @WolfangAukang @hexchen for testing.

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

1 package built:

alfaview


Ard metadata only

Something has gone wrong in your code update. You've got two modules:

eodatasets
eodatasets3


Fix bug 8046

Aborted rule "ServiceImpl_EditStreamPropertyValue" & "ServiceImpl_DeleteStreamPropertyValue"

Reviewed.

Add a description for the bug, for now it is shown as "No description provided."  Thanks.

Aborted rule "ServiceImpl_EditStreamPropertyValue" & "ServiceImpl_DeleteStreamPropertyValue"

Fix the typo from "eTypeElement" to "en". In which eTypeElement is the container var to contain the selected en.


Unit test, pytest, pylint and documentation done.

I have created the pull request please merge it soon.

Did your unit test pass??
I can check it for you if it didn't pass


Rake Task to Ingest Archival METS

Should be much more straightforward then PUDL, though little to none of that code is likely to be usable (yay METS!)
Sample: http://findingaids.princeton.edu/folders/AC044/c0003.mets
Once finished this work should prioritized the collections RBD1 and C0108 (both of which need revision, before ingest, but are need for DH projects by the end of Feb.

Some additional notes about this:

Descriptive metadata will come from the PULFA application. There is this stub in the pul_metadata_services gem. No tests, looks like it might be broken, and generally not sure if that still makes sense. Alternative is to go to the XML directly.
The METS have no structure, and though there is rights metadata that was meant to control campus-only vs. world access, they never leveraged that feature--everything is open and it can be ignored. You should literally be able to just plow through the fileSec in order, and ingnore the structMap almost (if not completely) entirely.
The JP2s are good. If we wanted to move them over rather than make new derivatives, it might be worth considering.
The first thing in the fileSec is (always?) a PDF. These should probably  be saved as they're the PDF that Mudd initially created, and in the early days of this project, a few born-digital PDFs may have slipped through the cracks. If we can find a way to check that, maybe we wouldn't need to save the originals, which is definitely what I'd prefer.


Crypto materials for Raft network

I have added the crypto material for the raft consensus. Please review.
I will integrate it with the integration tests in future PRs.

@yeasy Hi, could you help to review this one, I am not sure how many extra crypto materials we need for using raft consensus.


Bug spacing

Hello Wouter. I seem to be having a bug when the dataset is being generated. I did a simulation with a 2x1 field and asked the GHEtool to calculate the necessary depth. When the boreholes are 8,9m apart, the precalculated databases is used and the depth is as expected (about 130m for a family home). When I then ask the software to put the boreholes at 10m apart, the dataset is being genereated, but the calulated depth is aproximately half of this 130m. I might be doing something wrong, but the onlyt thing I did was copy the first scenario and change the distance between the boreholes. The first scenario (with the precalculated data) als fits with what Smartgeotherm calculates, so that looks fine. Might it be that with the newley generated dataset, the calculated length per well is afterwards divided by the total number of boreholes? Kind regard, and thanks for making this software
Originally posted by @blcools in https://github.com/wouterpeere/GHEtool/issues/12#issuecomment-1262913070

Hi @blcools. Thanks for reporting this bug. I have a couple of questions:

Are you using the graphical user interface? It is possible that the bug is related to that, we are working on a new one (see #17)
Is it possible to screenshot your heating/cooling load and ground/borehole/fluid parameters so I can try to recreate the bug. You can post the screenshots in this issue.

Thanks in advance!

Hi Wouter.
I am using the graphical interface as you suspected. I also have the most
recent Anaconda installed on my PC, which uses Python 3.9 instead of 3.8. I
don't know if this might cause the problem.
I have made some screenshots. I have put them in attachment of this e-mail.
Kind regards.
Op vr 7 okt. 2022 om 14:25 schreef Wouter Peere @.***>:

Hi @blcools https://github.com/blcools. Thanks for reporting this bug.
I have a couple of questions:

Are you using the graphical user interface? It is possible that the
bug is related to that, we are working on a new one (see #17
https://github.com/wouterpeere/GHEtool/issues/17)
Is it possible to screenshot your heating/cooling load and
ground/borehole/fluid parameters so I can try to recreate the bug. You can
post the screenshots in this issue.

Thanks in advance!
—
Reply to this email directly, view it on GitHub
https://github.com/wouterpeere/GHEtool/issues/29#issuecomment-1271523613,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/A3LEBQ3DSW3ZQTRQIYG4ODDWCAJCLANCNFSM6AAAAAAQ7RIYPA
.
You are receiving this because you were mentioned.Message ID:
@.***>

Hi @blcools
I think this is one of the bugs in the current beta-version of the GUI. When I run it in the codebase, switching from a 9m spacing to 9.5m spacing, decreases the required depth, but only slightly (as one would expect). (GHEtool is compatible with python 3.8, 3.9 and 3.10, so your python version cannot cause any issue)
We are currently working on the new GUI, so this problem should be solved in the new version of the software.
If you have further questions, feel free to contact me by email (wouter.peere@kuleuven.be). I will couple this issue to the issue related to the new GUI.

Thanks for the update!
Op ma 10 okt. 2022 12:39 schreef Wouter Peere @.***>:

Hi @blcools https://github.com/blcools
I think this is one of the bugs in the current beta-version of the GUI.
When I run it in the codebase, switching from a 9m spacing to 9.5m spacing,
decreases the required depth, but only slightly (as one would expect).
(GHEtool is compatible with python 3.8, 3.9 and 3.10, so your python
version cannot cause any issue)
We are currently working on the new GUI, so this problem should be solved
in the new version of the software.
If you have further questions, feel free to contact me by email (
@.***). I will couple this issue to the issue related
to the new GUI.
—
Reply to this email directly, view it on GitHub
https://github.com/wouterpeere/GHEtool/issues/29#issuecomment-1273119095,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/A3LEBQ7QGBU6SVULRO5XAZLWCPW7TANCNFSM6AAAAAAQ7RIYPA
.
You are receiving this because you were mentioned.Message ID:
@.***>


Allow to implement IKeyboardNavigationLabelProvider on view elements instead of model elements

I have pushed https://github.com/Microsoft/vscode/commit/2d71824f804a31317bbdd57d991bc434507a450f to support type to navigate in the peek references tree. However, since my tree is partially async I cannot provide a good label for the individual references. IMO it would prefer to work with my rendered item instead of my model item

I see.
Can I convince you to fetch the file's contents on the getChildren call instead of at render time?

Can I convince you to fetch the file's contents on the getChildren call instead of at render time?

Ops - I actually do... Feel free to close.


test:fix vm live test failures in the latest round

Cause:

14.04 ubuntu image is removed from the alias doc, so the test must adjust
Remove verification on the masterProfile.count. It is changing and not the test wants to verify anyway
Remove the testing on using custom images. It is being covered at #2417

Codecov Report

Merging #2452 into master will decrease coverage by 0.12%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master    #2452      +/-   ##
==========================================
- Coverage   72.34%   72.21%   -0.13%
==========================================
  Files         343      343
  Lines       18887    18887
  Branches     2796     2796
==========================================
- Hits        13664    13640      -24
- Misses       4349     4365      +16
- Partials      874      882       +8

Impacted Files
Coverage Δ

...cli-vm/azure/cli/command_modules/vm/_validators.py
69.24% <0%> (-4.19%)
:x:

.../azure/cli/command_modules/vm/_template_builder.py
80.95% <0%> (-2.39%)
:x:

src/azure-cli-core/azure/cli/core/_util.py
66.66% <0%> (ø)
:white_check_mark:

...ure-cli-vm/azure/cli/command_modules/vm/_params.py
96.01% <0%> (ø)
:white_check_mark:

...dback/azure/cli/command_modules/feedback/custom.py
34.69% <0%> (ø)
:white_check_mark:

Continue to review full report at Codecov.

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


Instant Delivery not working

Hi, I have a Pixel 4a 5G and the instant delivery doesn't work. The persistent notification is there showing it's running, but still requires me to pull down to reload to get the new notification.

@12nick12 If you're willing to join the Discord or Matrix chat, I can troubleshoot with you.
https://discord.com/invite/cT7ECsZj9w
https://matrix.to/#/#ntfy:matrix.org
I don't have a good way to get logs yet, I'm working on making that easy.

All good, I'm dumb. I used a NGiNX config from another thing that didn't have websockets. Sorry about that.

@12nick12 I'm glad you fixed it. It doesn't use websockets (yet) though. :-D Must have been something else then.

I was also having issues with instant delivery and it turned out to be an issue with my NGINX config. I had to turn off proxy buffering.

@ericsong The example in https://ntfy.sh/docs/config/#nginxapache2caddy includes proxy_buffering off. You should probably make sure that you've also got the other settings in there. Especially make sure that stuff works with WebSockets too, otherwise the next or the following release of the Android app may not work anymore for you.
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "upgrade";

You can test your settings in the app by enabling WebSockets: Settings -> Experimental -> Connection protocol -> WebSocket

Ah, missed that during my setup. Thanks!
Great work by the way.


A cleaner version of dev-integrate

This is how this branch was created:
$ git checkout dev-msft
$ git rebase --onto main 87878de1

The filesystem is identical to dev-integrate and dev-msft, but the history is MUCH cleaner. I suggest that we force-push this dev-msft and dev-goog, then merge into dev-integrate and main.
$ git checkout kor-integrate
$ git diff dev-integrate
$ git diff 6900b1c8dfaa304debbaf19ae8322b16d2b8af99
$

As you can see, dev-integrate's current history is a mess. There are duplicate copies of Howard's commits with different commit ids, and some other weirdness that required some conflict resolution shenanigans.
$ git log --graph --decorate --oneline dev-integrate
*   6900b1c8 (chips/dev-integrate, dev-integrate) Merge branch 'dev-msft' into dev-integrate
|\
| * 3119af0f (chips/dev-msft, dev-msft) Sync from MSFT Internal repo w/ TRNG, HMAC SCA, PCR Hash/sign, Env Var rename (#21)
* |   47a26871 Merge branch 'main' into dev-integrate
|\ \
| * | 01fcfd15 (chips/main, main, kor-fix) Initial Pre0p8 release from dev-msft (#9)
* | |   4ffddd34 Merge pull request #26 from chipsalliance/dev-goog
|\ \ \
| |_|/
|/| |
| * | 5320c28c Checking in a copy of the opentitan repository taken at (#22)
| * | 145afbb3 Adding verilator CI smoke test (#19)
| * | 2504db8d Add Register docs links to README.md (#13)
* | | 484f68d4 Checking in a copy of the opentitan repository taken at (#22)
* | | e3aafc32 Adding verilator CI smoke test (#19)
* | | 3e2ee939 Add Register docs links to README.md (#13)
|/ /
* | 87878de1 Dev msft 03022023 (#2)
* | 1e9936a4 Delete VERSION.txt
* | 11e8be07 Remove Coming_soon.txt
* | 93d2a735 Remove MSFT copyright
* | f5830a2f Doc file updates, no source code/scripts yet
|/
* 827cd1dd Update README.md
* 366f62f0 Initial commit

From this branch:
$ git log --graph --decorate --oneline kor-integrate
* f47d19df (HEAD -> kor-integrate, chips/kor-integrate, chips/kor-dev-msft, kor-dev-msft) Sync from MSFT Internal repo w/ TRNG, HMAC SCA, PCR Hash/sign, Env Var rename (#21)
* e5c1b48c Checking in a copy of the opentitan repository taken at (#22)
* 36785537 Adding verilator CI smoke test (#19)
* b19f4ffb Add Register docs links to README.md (#13)
* 01fcfd15 (chips/main, main, kor-fix) Initial Pre0p8 release from dev-msft (#9)
* 827cd1dd Update README.md
* 366f62f0 Initial commit

This looks clean, and I'm on board with the idea.
We still have differing commit hashes for the 3 commits that were brought over from dev-goog - do you have thoughts on rectifying this? At some point the intent is to merge dev-goog forward into dev-integrate/main again, at which point the duplicate commits will be reintroduced.
Simply rebasing dev-goog onto main, starting from d78be78 should do the trick (before we pull any more commits from dev-goog into dev-integrate).
Then I think the POR is to push kor-integrate into main, and we'll be forking that into a MSFT internal mirror to mess around with.

This looks clean, and I'm on board with the idea. We still have differing commit hashes for the 3 commits that were brought over from dev-goog - do you have thoughts on rectifying this? At some point the intent is to merge dev-goog forward into dev-integrate/main again, at which point the duplicate commits will be reintroduced. Simply rebasing dev-goog onto main, starting from d78be78 should do the trick (before we pull any more commits from dev-goog into dev-integrate). Then I think the POR is to push kor-integrate into main, and we'll be forking that into a MSFT internal mirror to mess around with.

Sounds good. We can also rebase dev-goog onto kor-integrate, which will give it the correct commit ids.

Sounds good. We can also rebase dev-goog onto kor-integrate (as a one-time thing), which will give it the same commit ids as goog and dev-msft.

See https://github.com/chipsalliance/caliptra-rtl/pull/37

Yes. At worst, we can rewrite dev-goog at will once dev-msft has been
fixed. If this branch rewrite works for you, onwards!
On Thu, Mar 23, 2023 at 2:44 PM Kor Nielsen @.***>
wrote:

This looks clean, and I'm on board with the idea. We still have differing
commit hashes for the 3 commits that were brought over from dev-goog - do
you have thoughts on rectifying this? At some point the intent is to merge
dev-goog forward into dev-integrate/main again, at which point the
duplicate commits will be reintroduced. Simply rebasing dev-goog onto main,
starting from d78be78
https://github.com/chipsalliance/caliptra-rtl/commit/d78be78e5654d34a32b8dce75c0cd9574efaa133
should do the trick (before we pull any more commits from dev-goog into
dev-integrate). Then I think the POR is to push kor-integrate into main,
and we'll be forking that into a MSFT internal mirror to mess around with.
Sounds good. We can also rebase dev-goog onto kor-integrate, which will
give it the correct commit ids.
—
Reply to this email directly, view it on GitHub
https://github.com/chipsalliance/caliptra-rtl/pull/36#issuecomment-1481953377,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAK5UTZFPRUCJFJXW7ORNDLW5S73LANCNFSM6AAAAAAWFXQ5UI
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

All of this looks good to me. Anjana will be available to look at this tomorrow morning, will you be blocked if we postpone the final merge until then?

I'm ready to make these changes whenever you are.

All of this looks good to me. Anjana will be available to look at this tomorrow morning, will you be blocked if we postpone the final merge until then?

I'm fine with waiting until then. Does she have admin powers?

AFAIK, no. We'll need her to be added or just have Andres do the force-push bit.

All of this looks good to me. Anjana will be available to look at this tomorrow morning, will you be blocked if we postpone the final merge until then?

I'm fine with waiting until then. Does she have admin powers?

AFAIK, no. We'll need her to be added or just have Andres do the force-push bit.

Ok. Do you want to do that bit now?

Apparently dev-goog (and perhaps dev-msft) currently have no branch protection rules. I was able to use my write privileges to force push dev-goog:
git push -f origin kor-goog:dev-goog

force

I'm fairly certain Anjana will be okay with the force-push to dev-msft, but let's wait till she can take a look.

force

I'm fairly certain Anjana will be okay with the force-push to dev-msft, but let's wait till she can take a look, since we'll also have to force-push into dev-integrate and abandon #27

I've looked through this, and it looks clean to me. I am good with the force-push to dev-msft.

This has been force-pushed to dev-msft and dev-integrate.


Parse ul and ols correctly

This adds code to parse DOM with ul and ol correctly. Prior to this, markups with tagName "li" were incorrectly generated sometimes, and it was possible to create a corrupt mobiledoc by pasting in a list.
fixes #183
The parsing is fairly naive, and doesn't handle all types of nested lists. On those that it can't handle it just ignores the parsed sections rather than inserting invalid stuff into the mobiledoc, though.
There is a commented-out test for the type of nested lists that can appear in google docs HTML.
Pasting a list into content-kit can sometimes do nothing when the post to be inserted is a single list section. PostEditor#insertPost will incorrectly interpret that as a single markup section. This doesn't cause errors but it does prevent the list from being pasted. Pasting a list if it is part of a larger body (at least 1 other section) works correctly.

Added #189 and #190 to address the extra work mentioned above.

@bantic drat, needs a rebase


Add star u by star u

Song Name
star u
Artist Name
star u
Source
Youtube
Youtube Link
Cj-KpO6Q1lOHymPO
Direct File Link
No response
Song ID
99999999999
Start Offset [ms]
0
Extra
Created from Auto Nong.
Created for level: 13519

reject
wrong song id and invalid YouTube link


Automator: update proxy@master in istio/istio@master

Generated by Automator - 2022-09-19T13:47:44+00:00

@istio-testing: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

gencheck_istio
653b49ab764a861b0f126204ba2c026a1e81eb70
link
true
/test gencheck

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/test gencheck


sharded view queries sometimes™ miss view result metadata

Given a database that is populated two documents and a ddoc:
#!/bin/sh
curl -su admin:admin 'http://localhost:15984/debug' -X DELETE
sleep 1
curl -su admin:admin 'http://localhost:15984/debug?q=2' -X PUT
sleep 1
curl -su admin:admin 'http://localhost:15984/debug/_design/test' -X PUT --data-binary '{ "views": { "test": { "map": "function (doc) { emit(doc.foo, \"fooValue\") ; emit(doc.foo) ; emit(doc.bar) ; emit(doc.bar, \"crayon!\") ; emit(doc.bar, \"multiple values!\") ; emit(doc.bar, \"crayon!\") }" } } }'
curl -su admin:admin 'http://localhost:15984/debug/doc1' -X PUT --data-binary '{ "foo": "foo", "bar": "bar" }'
curl -su admin:admin 'http://localhost:15984/debug/doc2' -X PUT --data-binary '{ "foo": "foo", "bar": "bar" }'

Querying this view repeatedly returns one of two results.
while (true); do
   curl -su admin:admin 'http://localhost:15984/debug/_design/test/_view/test?startkey="foo"&skip=3&limit=0'
   sleep 1
done

Meta missing:
{"rows":[]}

Meta present:
{"total_rows":12,"offset":11,"rows":[

]}

I’ve tracked this down from fabric_view_map:go():

it successfully creates two workers, one for each shard:

 Workers0: [{shard,<<"shards/00000000-7fffffff/debug.1631717845">>,'node1@<IP_ADDRESS>',<<"debug">>,[0,2147483647],#Ref<0.1831788800.3241148417.184777>,[{props,[]}]},{shard,<<"shards/80000000-ffffffff/debug.1631717845">>,'node1@<IP_ADDRESS>',<<"debug">>,[2147483648,4294967295],#Ref<0.1831788800.3241148417.184778>,[{props,[]}]}]

Those workers successfully call the view handling callback with the correct meta info:
 sending Db: <<"shards/80000000-ffffffff/debug.1631717845">>, Meta back to Callback: {meta,[{total,6},{offset,4}]}
 sending Db: <<"shards/00000000-7fffffff/debug.1631717845">>, Meta back to Callback: {meta,[{total,6},{offset,4}]}

(each doc lives on one of the shards, so the numbers for each shard there are the same)
However!
In the case where the meta data is missing, the fabric_view_map:handle_message({meta, Meta0}) is only called once:
Incoming Meta0: [{total,6},{offset,4}]
Current State Total0: 0
Current State Offset0: 0

Sum(State, Incoming)  Total: 6
Sum(State, Incoming) Offset: 4
any counters true % from `case fabric_dict:any(0, Counters1) of`

Whereas when the meta data is there, we see this invoked twice:
Incoming Meta0: [{total,6},{offset,4}]
Current State Total0: 0
Current State Offset0: 0

Sum(State, Incoming) Total: 6
Sum(State, Incoming) Offset: 4
any counters true % from `case fabric_dict:any(0, Counters1) of`

Incoming Meta0: [{total,6},{offset,4}]
Current State Total0: 6
Current State Offset0: 4
Sum(State, Incoming) Total: 12
Sum(State, Incoming) Offset: 8
any counters false % from `case fabric_dict:any(0, Counters1) of`

After here it calls
        {Go, Acc} = Callback({meta, Meta}, AccIn),

which looks like it places the meta into the result set. This isn’t called in the previous case.
I’m not super firm with the fabric_rpc mechanisms, but it looks like we are losing map_doc response messages somewhere and I’d appreciate a second look.

Update: it does not matter which shard returns the one response that we handle correctly. This probably rules out that this has to do with shards where the ddoc isn’t actually stored.

This also happens with, say, limit=1:
{"total_rows":12,"offset":11,"rows":[
{"id":"doc2","key":"foo","value":null}
]}
{"total_rows":12,"offset":11,"rows":[
{"id":"doc2","key":"foo","value":"fooValue"}
]}

with skip=2&limit=2:
{"total_rows":12,"offset":10,"rows":[
{"id":"doc2","key":"foo","value":"fooValue"},
{"id":"doc2","key":"foo","value":null}
]}
{"total_rows":12,"offset":10,"rows":[
{"id":"doc2","key":"foo","value":null},
{"id":"doc2","key":"foo","value":"fooValue"}
]}

Good catch! I think the bug occurs when one shard sends both the meta message and the followup complete message before meta messages have been received from other shards. fabric_view:maybe_send_row/1 handles this condition correctly, but the limit=0 pattern match in fabric_view_map:handle_message/1 does not. I think the fix is simply to call maybe_send_row there instead -- it looks a bit odd since we obviously don't want to send a row, but it's the DRY approach.

Also, did you really mean that you observe a bug with limit=1 as you noted above? I don't see a bug there, and the one I'm describing can only occur with limit=0

I think this might fix it:
 git diff
diff --git a/src/fabric/src/fabric_view_map.erl b/src/fabric/src/fabric_view_map.erl
index b8d0d392a..eed6af74e 100644
--- a/src/fabric/src/fabric_view_map.erl
+++ b/src/fabric/src/fabric_view_map.erl
@@ -147,9 +147,9 @@ handle_message({meta, Meta0}, {Worker, From}, State) ->
     end;

 handle_message(#view_row{}, {_, _}, #collector{limit=0} = State) ->
-    #collector{callback=Callback} = State,
-    {_, Acc} = Callback(complete, State#collector.user_acc),
-    {stop, State#collector{user_acc=Acc}};
+    % rely on limit=0 special clause in maybe_send_row to wait until all
+    % shard ranges reply
+    fabric_view:maybe_send_row(State);

 handle_message(#view_row{} = Row, {_,From}, #collector{sorted=false} = St) ->
     #collector{callback=Callback, user_acc=AccIn, limit=Limit} = St,

We rely on the logic in https://github.com/apache/couchdb/blob/9f081914fe1fd7f31c2c1c7b3ead89427cf342f3/src/fabric/src/fabric_view.erl#L124-L134 to already wait until we have completed the ring with meta only (we don't bump counters with any rows returned)

This works fine here.

PR https://github.com/apache/couchdb/pull/3751 for limit=0 meta

Also, did you really mean that you observe a bug with limit=1 as you noted above? I don't see a bug there, and the one I'm describing can only occur with limit=0

@kocolosk yes I can see unstable sort results with limit=1 on the same data set. Sometimes I get a "fooValues" and sometimes a null. Same script, just s/limit=0/limit=1

@janl do we have a defined sorting order for multiple distinct values emitted with the same key from the same document? I wasn't aware of one.

fair comment that the apparent inconsistent ordering actually isn't, it's merely undefined.

If we look back at the original introduction of the limit=0 clause in https://github.com/apache/couchdb/commit/4e0c97bf3587e9d0e330494f0d06194c0c4bfa17 I wonder if this isn't the better fix;
diff --git a/src/fabric/src/fabric_view_map.erl b/src/fabric/src/fabric_view_map.erl
index b8d0d392a..ff6aa8b69 100644
--- a/src/fabric/src/fabric_view_map.erl
+++ b/src/fabric/src/fabric_view_map.erl
@@ -146,7 +146,7 @@ handle_message({meta, Meta0}, {Worker, From}, State) ->
         }}
     end;

-handle_message(#view_row{}, {_, _}, #collector{limit=0} = State) ->
+handle_message(#view_row{}, {_, _}, #collector{sorted=false, limit=0} = State) ->
     #collector{callback=Callback} = State,
     {_, Acc} = Callback(complete, State#collector.user_acc),
     {stop, State#collector{user_acc=Acc}};

@janl do we have a defined sorting order for multiple distinct values emitted with the same key from the same document? I wasn't aware of one.

@kocolosk DO’H, of course, I was too in the weeds on this one to see this. ta.

hm, continuing to think about this, I’m still somewhat surprised but this:

I assume those rows are written to the index on a fixed order
we read those indexes row by row
how would, say row 2 with value null overtake row 3 with value "fooValue" on the way out if it comes from the same index shard?

I’m not necessarily arguing that we fix this, I’m just trying to understand :)

I don't have a complete answer for that one. You probably noticed that the values show up in a consistent order with q=1, so it has something to do with the way that rows from different shards are collated in the coordinator. We do that by merging each incoming row into a sorted list of rows from all shards using the standard ejson comparator function here. That merge implementation seems to preserve the "arrival order" when inserting rows that compare equal, but if it did not I think we'd have our culprit. When q=1 we are sending rows out as soon as we get them, but when q>1 the coordinator might end up reordering equal rows from the same shard in that list while waiting for at least one row from all the other shards.
I still think that's probably the spot where this reordering is happening, just can't prove it yet.

Ah! The issue is this short-circuit equality test: https://github.com/apache/couchdb/blob/a36e7308ab4a2cf/src/fabric/src/fabric_view.erl#L301
The normal couch_ejson_compare sorting function preserves the arrival order because it only does the less-than check, but the short-circuit one will reverse them and put the newest-arriving element that compares equal first. Mystery solved.

@kocolosk, you're right, removing the line the rows are returned in the same order:
while (true); do curl -su adm:pass 'http://localhost:15984/debug/_design/test/_view/test?startkey="foo"&limit=6' ; sleep 1 ; done

...
{"total_rows":12,"offset":8,"rows":[
{"id":"doc1","key":"foo","value":null},
{"id":"doc1","key":"foo","value":"fooValue"},
{"id":"doc2","key":"foo","value":null},
{"id":"doc2","key":"foo","value":"fooValue"}
]}
...

I guess the general constraint is that the collation function must be identical to the one used on the shards themselves and if it isn't the lists:merge/3 function won't work as expected?
merge(Fun, List1, List2) -> List3

Returns the sorted list formed by merging List1 and List2. Both List1
and List2 must be sorted according to the ordering function Fun
before evaluating this function. Fun(A, B) is to return true if A
compares less than or equal to B in the ordering, otherwise false.
When two elements compare equal, the element from List1 is picked
before the element from List2.

ah wow this is fascinating, thanks for pulling this out!

nice find.


build: add Dockerfile

Thank you for contributing!
Will better if you add docker-compose.yaml too and use the env from it


Develop

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.5 out of 6 committers have signed the CLA.:white_check_mark: antiheld:white_check_mark: saadmhybris:white_check_mark: jeremytrawls:white_check_mark: HybrisRawls:white_check_mark: like-me1:x: web-flow


Running instructions

After already fixing a couple issues with trying to get the app to run, I got a bit frustrated that the included commands on the README don't work.
I would like to kindly ask someone familiar with the repo/code, to do a fresh clone, and write some running instructions to actually get this running.
I'm certain many people also tried to get this to run, but just gave up and didn't say anything here.
Thanks guys!

After already fixing a couple issues with trying to get the app to run, I got a bit frustrated that the included commands on the README don't work.
I would like to kindly ask someone familiar with the repo/code, to do a fresh clone, and write some running instructions to actually get this running.
I'm certain many people also tried to get this to run, but just gave up and didn't say anything here.
Thanks guys!

Hello, any news about this new fork ?
i think you need firebase to get this running.

@rpmonteiro @mso1985 hi guys, sorry for problems that you've encounter, this repo is not maintain so, if you would like to check wip solution, which authentication please check my second solution https://github.com/cojack/project-backend
This repo was created (also by me) for presentation purpose, I doesn't know that almost ~100 ppl will get interest in.
If you will still have some questions, feel free to ask.
Regards.


Support retrieving entire MosaicJSON entity with DynamoDB and SQLite backends

As a user, I would like support for retrieving the entire MosaicJSON entity in a backend-agnostic way. Currently, read has different behavior for different backends, I assume to improve performance for these backends. This has the effect that read operations from these backends result in different entities, which is confusing to clients.
Currently, both the DynamoDB and SQLite backends erase the tiles property from the MosaicJSON when it is read from the datastore.
In _read:
meta["tiles"] = {}

the mosaic_def field value then has an empty tiles field.
This has the effect of preventing a caller from accessing the entire MosaicJSON. DynamoDB is restricted even further, in that only a single quadkey can be retrieved.
Possibly, there should be another function that will return the entire MosaicJSON entity.

👍 @philvarner The problem is that for DynamoDB it will be quite costly to retrieve each tiles! I understand this is not really user friendly. The way the backend classe is designed I'm not sure what's the best way to do this.
for now a users could do
with DynamoDBBackend(...) as mosaic:
    m = mosaic.mosaic_def()
    tiles = [mosaic._fetch_dynamodb(qk) for qk in mosaic._quadkeys]
    mosaic_def = MosaicJSON(**m.to_dict(exclude_None=True).update({"tiles": tiles}))

Thanks for that suggestion!

The original point of adding the DynamoDB backend was to have a serverless, hosted database with very fast reads for single keys at a time. In order to reconstruct an entire mosaic from DynamoDB, you'd have to read every quadkey individually, as vincent says, or somehow download the entire table using boto3 directly. In any case, it would be very slow and (relatively) quite expensive.
IMO if you require support for retrieving the entire MosaicJSON, you should just prevent usage of the DynamoDB backend (I'm not as familiar with the sqlite backend).

I'm fine with just having this documented, maybe with an Optional type annotation that it doesn't work for all backends. Also putting the code Vincent provided above with how to do this if you really want to.


Unable to run CMake; Package 'libffi' not found

IMPORTANT: Before you create an issue, please take a look at our Issue Reporting Guide.
Briefly summarize your issue:
During installation, running the CMake command results in an error.
What is the expected behavior?
CMake command during installation should succeed.
What behavior are you observing?
Installation errors out with the following message:
Creating the build directory for the AlexaClientSDK with build type: DEBUG
No keyword detector type specified, skipping build of keyword detector.
-- Checking for modules 'gstreamer-1.0>=1.8;gstreamer-app-1.0>=1.8'
--   Package 'libffi', required by 'gobject-2.0', not found
--   Package 'libffi', required by 'gobject-2.0', not found
CMake Error at /usr/local/Cellar/cmake/3.13.4/share/cmake/Modules/FindPkgConfig.cmake:452 (message):
  A required package was not found
Call Stack (most recent call first):
  /usr/local/Cellar/cmake/3.13.4/share/cmake/Modules/FindPkgConfig.cmake:622 (_pkg_check_modules_internal)
  build/cmake/MediaPlayer.cmake:14 (pkg_check_modules)
  build/BuildDefaults.cmake:25 (include)
  CMakeLists.txt:10 (include)

-- Configuring incomplete, errors occurred!
See also "/Users/[user]/my_project/build/CMakeFiles/CMakeOutput.log".

Here's CMakeOutput.log
Provide the steps to reproduce the issue, if applicable:
Follow the installation up through the cd ~/my_project/build step.
Run the following CMake command:
cmake ~/my_project/source/avs-device-sdk \
-DGSTREAMER_MEDIA_PLAYER=ON \
-DCURL_LIBRARY=/usr/local/opt/curl-openssl/lib/libcurl.dylib \
-DCURL_INCLUDE_DIR=/usr/local/opt/curl-openssl/include \
-DPORTAUDIO=ON \
-DPORTAUDIO_LIB_PATH=~/my_project/third-party/portaudio/lib/.libs/libportaudio.a \
-DPORTAUDIO_INCLUDE_DIR=~/my_project/third-party/portaudio/include \
-DCMAKE_BUILD_TYPE=DEBUG

Furthermore, brew info libffi shows that it's installed:
libffi: stable 3.2.1 (bottled), HEAD [keg-only]
Portable Foreign Function Interface library
https://sourceware.org/libffi/
/usr/local/Cellar/libffi/3.2.1 (16 files, 297.0KB)
  Poured from bottle on 2019-03-08 at 11:24:21
From: https://github.com/Homebrew/homebrew-core/blob/master/Formula/libffi.rb
==> Options
--HEAD
	Install HEAD version
==> Caveats
libffi is keg-only, which means it was not symlinked into /usr/local,
because some formulae require a newer version of libffi.

For compilers to find libffi you may need to set:
  export LDFLAGS="-L/usr/local/opt/libffi/lib"

For pkg-config to find libffi you may need to set:
  export PKG_CONFIG_PATH="/usr/local/opt/libffi/lib/pkgconfig"

==> Analytics
install: 120,027 (30 days), 299,714 (90 days), 1,079,228 (365 days)
install_on_request: 3,001 (30 days), 8,679 (90 days), 37,393 (365 days)
build_error: 0 (30 days)

Additionally, I followed directions from this answer: https://apple.stackexchange.com/a/169605/22432
I attempted locate libffi.pc and it produced:
WARNING: The locate database (/var/db/locate.database) does not exist.
To create the database, run the following command:

  sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.locate.plist

Please be aware that the database can take some time to generate; once
the database has been created, this message will no longer appear.

I then followed the directions and ran sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.locate.plist to build the database. After relaunching Terminal, running locate libffi.pc now produces /usr/local/Cellar/libffi/3.2.1/lib/pkgconfig/libffi.pc. Nonetheless, the Device SDK installation still says
--   Package 'libffi', required by 'gobject-2.0', not found
--   Package 'libffi', required by 'gobject-2.0', not found
CMake Error at /usr/local/Cellar/cmake/3.13.4/share/cmake/Modules/FindPkgConfig.cmake:452 (message):
  A required package was not found

Help, I don't know what else to attempt at this point.
Tell us about your environment:
What version of the AVS Device SDK are you using?
v1.12
Tell us what hardware you're using:
MacBook Pro (13-inch, 2017)
Tell us about your OS (Type & version):
High Sierra 10.13.6

Hi @Eptin, could you try to check what's the value for the environment variable PKG_CONFIG_PATH
echo $PKG_CONFIG_PATH

If you haven't add libffi to it, maybe you can try to do this:
export PKG_CONFIG_PATH="usr/local/opt/libffi/lib/pkgconfig:$PKG_CONFIG_PATH"

Hope this helps.  Thanks!

Thanks for the advice; unfortunately, that didn't work. Here's the complete terminal history:
Last login: Fri Mar  8 20:35:06 on ttys001
f01898a40e96:~ micinnes$ export PKG_CONFIG_PATH="usr/local/opt/libffi/lib/pkgconfig:$PKG_CONFIG_PATH"
f01898a40e96:~ micinnes$ echo $PKG_CONFIG_PATH
usr/local/opt/libffi/lib/pkgconfig:
f01898a40e96:~ micinnes$ cd ~/my_project/build
f01898a40e96:build micinnes$ cmake ~/my_project/source/avs-device-sdk \
> -DGSTREAMER_MEDIA_PLAYER=ON \
> -DCURL_LIBRARY=/usr/local/opt/curl-openssl/lib/libcurl.dylib \
> -DCURL_INCLUDE_DIR=/usr/local/opt/curl-openssl/include \
> -DPORTAUDIO=ON \
> -DPORTAUDIO_LIB_PATH=~/my_project/third-party/portaudio/lib/.libs/libportaudio.a \
> -DPORTAUDIO_INCLUDE_DIR=~/my_project/third-party/portaudio/include \
> -DCMAKE_BUILD_TYPE=DEBUG
Creating the build directory for the AlexaClientSDK with build type: DEBUG
No keyword detector type specified, skipping build of keyword detector.
-- Checking for modules 'gstreamer-1.0>=1.8;gstreamer-app-1.0>=1.8'
--   Package 'libffi', required by 'gobject-2.0', not found
--   Package 'libffi', required by 'gobject-2.0', not found
CMake Error at /usr/local/Cellar/cmake/3.13.4/share/cmake/Modules/FindPkgConfig.cmake:452 (message):
  A required package was not found
Call Stack (most recent call first):
  /usr/local/Cellar/cmake/3.13.4/share/cmake/Modules/FindPkgConfig.cmake:622 (_pkg_check_modules_internal)
  build/cmake/MediaPlayer.cmake:14 (pkg_check_modules)
  build/BuildDefaults.cmake:25 (include)
  CMakeLists.txt:10 (include)

-- Configuring incomplete, errors occurred!
See also "/Users/micinnes/my_project/build/CMakeFiles/CMakeOutput.log".
f01898a40e96:build micinnes$

For completeness, I tried export PKG_CONFIG_PATH="usr/local/opt/libffi/lib/pkgconfig" in a new terminal session, but that didn't work either.

Hi @Eptin ,
Can you try the following?
cd ~/my_project/build
export PKG_CONFIG_PATH="/usr/local/opt/libffi/lib/pkgconfig"

and then running cmake as you did?
It looks like a leading slash character was missing on the config path. If this does not work, can you confirm that you can list the path? ls -lah /usr/local/opt/libffi/lib/pkgconfig

That got things a little further. After exporting that new value and running CMake, now I get:
Creating the build directory for the AlexaClientSDK with build type: DEBUG
No keyword detector type specified, skipping build of keyword detector.
-- Checking for modules 'gstreamer-1.0>=1.8;gstreamer-app-1.0>=1.8'
--   Found gstreamer-1.0, version 1.14.4
--   Found gstreamer-app-1.0, version 1.14.4
Bluetooth implementation not supported
CMake Warning (dev) at ThirdParty/googletest-release-1.8.0/CMakeLists.txt:3 (project):
  Policy CMP0048 is not set: project() command manages VERSION variables.
  Run "cmake --help-policy CMP0048" for policy details.  Use the cmake_policy
  command to set the policy and suppress this warning.

  The following variable(s) would be set to empty:

    PROJECT_VERSION
    PROJECT_VERSION_MAJOR
    PROJECT_VERSION_MINOR
    PROJECT_VERSION_PATCH
This warning is for project developers.  Use -Wno-dev to suppress it.

-- The C compiler identification is AppleClang <IP_ADDRESS>01044
-- Check for working C compiler: /Library/Developer/CommandLineTools/usr/bin/cc
-- Check for working C compiler: /Library/Developer/CommandLineTools/usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
CMake Warning (dev) at ThirdParty/googletest-release-1.8.0/googlemock/CMakeLists.txt:40 (project):
  Policy CMP0048 is not set: project() command manages VERSION variables.
  Run "cmake --help-policy CMP0048" for policy details.  Use the cmake_policy
  command to set the policy and suppress this warning.

  The following variable(s) would be set to empty:

    PROJECT_VERSION
    PROJECT_VERSION_MAJOR
    PROJECT_VERSION_MINOR
    PROJECT_VERSION_PATCH
This warning is for project developers.  Use -Wno-dev to suppress it.

CMake Warning (dev) at ThirdParty/googletest-release-1.8.0/googletest/CMakeLists.txt:47 (project):
  Policy CMP0048 is not set: project() command manages VERSION variables.
  Run "cmake --help-policy CMP0048" for policy details.  Use the cmake_policy
  command to set the policy and suppress this warning.

  The following variable(s) would be set to empty:

    PROJECT_VERSION
    PROJECT_VERSION_MAJOR
    PROJECT_VERSION_MINOR
    PROJECT_VERSION_PATCH
This warning is for project developers.  Use -Wno-dev to suppress it.

-- Found PythonInterp: /usr/bin/python (found version "2.7.10")
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Looking for pthread_create
-- Looking for pthread_create - found
-- Found Threads: TRUE
-- Found CURL: /usr/local/opt/curl-openssl/lib/libcurl.dylib (found suitable version "7.64.0", minimum required is "7.43.0")
-- Could NOT find GTest (missing: GTEST_LIBRARY GTEST_INCLUDE_DIR GTEST_MAIN_LIBRARY)
-- Could NOT find GTest (missing: GTEST_LIBRARY GTEST_INCLUDE_DIR GTEST_MAIN_LIBRARY)
Creating the build directory for the ACL with build type: DEBUG
No keyword detector type specified, skipping build of keyword detector.
Bluetooth implementation not supported
-- Could NOT find GTest (missing: GTEST_LIBRARY GTEST_INCLUDE_DIR GTEST_MAIN_LIBRARY)
Creating the build directory for the ADSL with build type: DEBUG
No keyword detector type specified, skipping build of keyword detector.
Bluetooth implementation not supported
-- Could NOT find GTest (missing: GTEST_LIBRARY GTEST_INCLUDE_DIR GTEST_MAIN_LIBRARY)
Creating the build directory for the AFML with build type: DEBUG
No keyword detector type specified, skipping build of keyword detector.
Bluetooth implementation not supported
-- Could NOT find GTest (missing: GTEST_LIBRARY GTEST_INCLUDE_DIR GTEST_MAIN_LIBRARY)
Creating the build directory for the DeviceSettings with build type: DEBUG
No keyword detector type specified, skipping build of keyword detector.
Bluetooth implementation not supported
-- Could NOT find GTest (missing: GTEST_LIBRARY GTEST_INCLUDE_DIR GTEST_MAIN_LIBRARY)
Creating the build directory for the BluetoothImplementations with build type: DEBUG
No keyword detector type specified, skipping build of keyword detector.
Bluetooth implementation not supported
Creating the build directory for the EqualizerImplementations with build type: DEBUG
No keyword detector type specified, skipping build of keyword detector.
Bluetooth implementation not supported
-- Could NOT find GTest (missing: GTEST_LIBRARY GTEST_INCLUDE_DIR GTEST_MAIN_LIBRARY)
Creating the build directory for the CertifiedSender with build type: DEBUG
No keyword detector type specified, skipping build of keyword detector.
Bluetooth implementation not supported
-- Could NOT find GTest (missing: GTEST_LIBRARY GTEST_INCLUDE_DIR GTEST_MAIN_LIBRARY)
Creating the build directory for the ContextManager with build type: DEBUG
No keyword detector type specified, skipping build of keyword detector.
Bluetooth implementation not supported
-- Could NOT find GTest (missing: GTEST_LIBRARY GTEST_INCLUDE_DIR GTEST_MAIN_LIBRARY)
Creating the build directory for the CapabilitiesDelegate with build type: DEBUG
No keyword detector type specified, skipping build of keyword detector.
Bluetooth implementation not supported
-- Could NOT find GTest (missing: GTEST_LIBRARY GTEST_INCLUDE_DIR GTEST_MAIN_LIBRARY)
Creating the build directory for the PlaylistParser with build type: DEBUG
No keyword detector type specified, skipping build of keyword detector.
Bluetooth implementation not supported
-- Checking for module 'libcrypto'
--   No package 'libcrypto' found
CMake Error at /usr/local/Cellar/cmake/3.13.4/share/cmake/Modules/FindPkgConfig.cmake:452 (message):
  A required package was not found
Call Stack (most recent call first):
  /usr/local/Cellar/cmake/3.13.4/share/cmake/Modules/FindPkgConfig.cmake:622 (_pkg_check_modules_internal)
  PlaylistParser/src/CMakeLists.txt:2 (pkg_check_modules)

-- Configuring incomplete, errors occurred!
See also "/Users/micinnes/my_project/build/CMakeFiles/CMakeOutput.log".

I don't have libcrypto installed, as brew info libcrypto produces:
Error: No available formula with the name "libcrypto"
==> Searching for a previously deleted formula (in the last month)...
Warning: homebrew/core is shallow clone. To get complete history run:
  git -C "$(brew --repo homebrew/core)" fetch --unshallow

Error: No previously deleted formula found.

It doesn't appear to be available for installation through Homebrew either.
Also, /usr/local/opt/libcrypto/ does not exist.

Hi, it seems that this back has been removed from brew. So you can try adding these arguments to the CMake command:
-DCURL_LIBRARY=/usr/local/opt/curl-openssl/lib/libcurl.dylib -DCURL_INCLUDE_DIR=/usr/local/opt/curl-openssl/include

I experienced the same thing since  I got a new macbook with Mojave last week. I think it has something to do with 'brew install curl-openssl'. Some components are installed as keg-only (openssl, openldap, curl-openssl):

==> curl-openssl
curl-openssl is keg-only, which means it was not symlinked into /usr/local,
because macOS already provides this software and installing another version in
parallel can cause all kinds of trouble.

If you need to have curl-openssl first in your PATH run:
echo 'export PATH="/usr/local/opt/curl-openssl/bin:$PATH"' >> ~/.bash_profile

For compilers to find curl-openssl you may need to set:
export LDFLAGS="-L/usr/local/opt/curl-openssl/lib"
export CPPFLAGS="-I/usr/local/opt/curl-openssl/include"

For pkg-config to find curl-openssl you may need to set:
export PKG_CONFIG_PATH="/usr/local/opt/curl-openssl/lib/pkgconfig"

I will try to update those environment variables and see if it's resolved.

@aumatsui , unforunately, I've already tried that, as those two arguments were already in my original cmake command. (See https://github.com/alexa/avs-device-sdk/issues/1270#issue-419001891 )

I am sorry. I did not see that.
Can you try exporting this before cmake?
export PKG_CONFIG_PATH="/usr/local/opt/libffi/lib/pkgconfig:/usr/local/Cellar/openssl/1.0.2q/lib/pkgconfig:$PKG_CONFIG_PATH”

it may also be a good idea to use explicit paths instead of ones starting with tilde (~).

That export, along with replacing all instances of ~/ with /Users/username/, worked. Don't know why it needed hardcoded paths, but it seems to have made a difference.
Now, CMake and make SampleApp -j4 both work! Thank you!

I am still facing the error saying that "libcrypto"package cant be found.Please help!
vaishnavi@DESKTOP-HCUNIKM:~/my_project/build$ export PKG_CONFIG_PATH="/usr/local/opt/libffi/lib/pkgconfig:/usr/local/Cellar/openssl/1.0.2q/lib/pkgconfig:$PKG_CONFIG_PATH"
vaishnavi@DESKTOP-HCUNIKM:~/my_project/build$ echo $PKG_CONFIG_PATH
/usr/local/opt/libffi/lib/pkgconfig:/usr/local/Cellar/openssl/1.0.2q/lib/pkgconfig:/usr/local/opt/libffi/lib/pkgconfig:/usr/local/Cellar/openssl/1.0.2q/lib/pkgconfig:/usr/local/opt/libffi/lib/pkgconfig:/usr/local/Cellar/openssl/1.0.2q/lib/pkgconfig:/usr/local/opt/libcrypto/lib/pkgconfig:/usr/local/Cellar/openssl/1.0.2q/lib/pkgconfig:/usr/local/opt/libffi/lib/pkgconfig:/usr/local/Cellar/openssl/1.0.2q/lib/pkgconfig:/usr/local/opt/libffi/lib/pkgconfig:/usr/local/Cellar/openssl/1.0.2q/lib/pkgconfig:” export PKG_CONFIG_PATH=/usr/local/opt/libffi/lib/pkgconfig:/usr/local/Cellar/openssl/1.0.2q/lib/pkgconfig:”
vaishnavi@DESKTOP-HCUNIKM:~/my_project/build$ cmake /home/vaishnavi/my_project/source/avs-device-sdk -Wno-dev -DSENSORY_KEY_WORD_DETECTOR=OFF -DGSTREAMER_MEDIA_PLAYER=ON -DPORTAUDIO=ON -DPORTAUDIO_LIB_PATH=/home/vaishnavi/my_project/third-party/portaudio/lib/.libs/libportaudio.a -DCURL_LIBRARY=/usr/local/opt/curl-openssl/lib/libcurl.dylib -DCURL_INCLUDE_DIR=/usr/local/opt/curl-openssl/include  -DPORTAUDIO_INCLUDE_DIR=/home/vaishnavi/my_project/third-party/portaudio/include && make
cmake: /usr/local/lib/libcurl.so.4: no version information available (required by cmake)
Creating the build directory for the AlexaClientSDK with build type: DEBUG
No keyword detector type specified, skipping build of keyword detector.
Bluetooth implementation not supported
Creating the build directory for the ACL with build type: DEBUG
No keyword detector type specified, skipping build of keyword detector.
Bluetooth implementation not supported
Creating the build directory for the ADSL with build type: DEBUG
No keyword detector type specified, skipping build of keyword detector.
Bluetooth implementation not supported
Creating the build directory for the AFML with build type: DEBUG
No keyword detector type specified, skipping build of keyword detector.
Bluetooth implementation not supported
Creating the build directory for the DeviceSettings with build type: DEBUG
No keyword detector type specified, skipping build of keyword detector.
Bluetooth implementation not supported
Creating the build directory for the BluetoothImplementations with build type: DEBUG
No keyword detector type specified, skipping build of keyword detector.
Bluetooth implementation not supported
Creating the build directory for the EqualizerImplementations with build type: DEBUG
No keyword detector type specified, skipping build of keyword detector.
Bluetooth implementation not supported
Creating the build directory for the CertifiedSender with build type: DEBUG
No keyword detector type specified, skipping build of keyword detector.
Bluetooth implementation not supported
Creating the build directory for the ContextManager with build type: DEBUG
No keyword detector type specified, skipping build of keyword detector.
Bluetooth implementation not supported
Creating the build directory for the CapabilitiesDelegate with build type: DEBUG
No keyword detector type specified, skipping build of keyword detector.
Bluetooth implementation not supported
Creating the build directory for the PlaylistParser with build type: DEBUG
No keyword detector type specified, skipping build of keyword detector.
Bluetooth implementation not supported
-- Checking for module 'libcrypto'
--   No package 'libcrypto' found
CMake Error at /usr/share/cmake-3.5/Modules/FindPkgConfig.cmake:367 (message):
A required package was not found
Call Stack (most recent call first):
/usr/share/cmake-3.5/Modules/FindPkgConfig.cmake:532 (_pkg_check_modules_internal)
PlaylistParser/src/CMakeLists.txt:2 (pkg_check_modules)
-- Configuring incomplete, errors occurred!
See also "/home/vaishnavi/my_project/build/CMakeFiles/CMakeOutput.log".
See also "/home/vaishnavi/my_project/build/CMakeFiles/CMakeError.log".


rules_oci fails to build when appending an env value with :PATH

According to the docs, I should be able to add to the oci container's env like this:
env = {"PATH": "/additional_binaries:/ddsource/proj/cicd_tools:$PATH"},

However, when I try this, the image fails to build.
Is this a known problem, or, am I doing something wrong?
I am able to get around this problem - I copied all of the $PATH values that the container was using and then I hard coded them like this:
env = {"PATH": "/additional_binaries:/ddsource/proj/cicd_tools:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"},

It would be better if i could use the $PATH variable.

The error message I'm getting has this in it:
OCI Image //mysource/proj/cicd_tools:cicd_tools failed: (Exit 5): image_cicd_tools.sh failed: error executing OCIImage command (
from target //mysource/proj/cicd_tools:cicd_tools)

This should be working, see our tests here https://github.com/bazel-contrib/rules_oci/blob/96062d4f3a5af9fcfaa6a4167fa1e6fa2f9b32c2/examples/assertion/BUILD.bazel#L101-L112
It would help me a lot if you could provide a repro.

Also what version of rules_oci is this?


fix(manager) lock client creation

What this PR does / why we need it:
Add a mutex and lock it when creating Kong admin clients. Attempting to
create multiple workspaced clients simultaneously can result in a race
condition where both clients check for the workspace before either
creates it, both clients will attempt to create the workspace, and the
second client to attempt creation will hit a unique violation.
Which issue this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close that issue when PR gets merged): fixes CI errors like:
panic: creating workspace: HTTP status 409 (message: "UNIQUE violation detected on '{name=\"notdefault\"}'")

Special notes for your reviewer:
PR Readiness Checklist:
Complete these before marking the PR as ready to review:

[x] the CHANGELOG.md release notes have been updated to reflect any significant (and particularly user-facing) changes introduced by this PR

We can get away without locks altogether if we follow the dependency inversion pattern and instantiate the client only once, and pass it down to the callers (e.g. as a function argument) for reuse.

We can get away without locks altogether if we follow the dependency inversion pattern and instantiate the client only once, and pass it down to the callers (e.g. as a function argument) for reuse.

Having a method called GetKongClient() which by name would appear to get you an HTTP client for Kong not be thread-safe is not particularly axiomatic. Since the implementation has this underlying race condition I still think it's best that we add the lock to it, as close to the actual issue as we can, as we should be ensuring thread-safety at the boundary of our APIs in a way that's opaque to callers. That said, I'm not against also sharing a single client to reduce waste.

Went with the lock within the function. We don't currently create meaningfully different clients, but potentially could if we start interacting with separate Kong instances and/or workspaces from a single controller, which we've discussed in the past.


Null check operator used on a null value

Hello i am getting the exception is Null check operator used on a null value when the run the app.
I am using Flutter 2.0.2 version
I am getting this in the console
The relevant error-causing widget was
Swiper

You can do that for the time being：
change：Dart Packages -> transformer_page_view-0.1.6 -> transformer_page_view.dart
double get realPage {
    double page = super.page;

    /*  if (position.maxScrollExtent == null || position.minScrollExtent == null) {
      page = 0.0;
    } else {
      page = super.page;
    }*/

    return page;
  }

try use
https://github.com/lianyagang/flutter_swiper_null_safety/tree/master solved null_safety

Hello i am getting the exception is Null check operator used on a null value when the run the app.
I am using Flutter 2.0.2 version
I am getting this in the console
The relevant error-causing widget was
Swiper

try use
https://github.com/lianyagang/flutter_swiper_null_safety/tree/master solved null_safety

Hello i am getting the exception is Null check operator used on a null value when the run the app.
I am using Flutter 2.0.2 version
I am getting this in the console
The relevant error-causing widget was
Swiper

try use
https://github.com/lianyagang/flutter_swiper_null_safety/tree/master solved null_safety
dependencies：
flutter_swiper:
git:
url: https://github.com/lianyagang/flutter_swiper_null_safety.git
ref: master
path:  ?????
Error ???

Hello i am getting the exception is Null check operator used on a null value when the run the app.
I am using Flutter 2.0.2 version
I am getting this in the console
The relevant error-causing widget was
Swiper

try use
https://github.com/lianyagang/flutter_swiper_null_safety/tree/master solved null_safety
dependencies：
flutter_swiper:
git:
url: https://github.com/lianyagang/flutter_swiper_null_safety.git
ref: master
path:  ?????
Error ???
please use it
》》》》》》
flutter_swiper_null_safety:

path: ../
git:
  url: 'https://github.com/lianyagang/flutter_swiper_null_safety.git'
  ref: 'feature/flutter_swipter2.0'

flutter_swiper_null_safety:
git:
url: 'https://github.com/lianyagang/flutter_swiper_null_safety.git'
ref: 'feature/flutter_swipter2.0'

Hello i am getting the exception is Null check operator used on a null value when the run the app.
I am using Flutter 2.0.2 version
I am getting this in the console
The relevant error-causing widget was
Swiper
u can try this
flutter_swiper_null_safety:
git:
url: 'https://github.com/lianyagang/flutter_swiper_null_safety.git'
ref: 'feature/flutter_swipter2.0'

直接使用pub依赖
flutter_swiper_null_safety: ^1.0.0

直接使用pub依赖
flutter_swiper_null_safety: ^1.0.0

it seems doesn't work, bro.

直接使用pub依赖
flutter_swiper_null_safety: ^1.0.0

it seems doesn't work, bro.

sorry, it works. my fault


transparent info box?

what would be the best way to make the background color on the galleria infobox transparent?
I'd like to turn this:

into that:

I did this by changing the background-color on the galleria-info-text element to rgb(0,0,0,0.5) (instead of #000) but I am not sure I want to hack at the galleria theme directly...

Not sure if this should be changed on the default style as it could be less readable on more white images ?
And currently there is no way to customize easily a theme, other than using a modified copy. But that would certainly be a useful feature, we could have a user_css setting to point to a file that would be loaded on each theme, to allow easy customization like this that can be done in pure css.

well, it's "black with transparent background", so presumably it would still work white dimmer images...
a user_css would certainly be useful, and yeah, maybe i just need to take this upstream to galleria, shouldn't i? :)

well, it's "black with transparent background", so presumably it would still work white dimmer images...

yes, maybe, but it's something t check. If it gives good results, I'm fine with integrating this change in the default style (in sigal).

a user_css would certainly be useful, and yeah, maybe i just need to take this upstream to galleria, shouldn't i? :)

It would be useful for all themes in sigal, so that's really something to do on our side I think.

okay then, here's how it looks like with a (mostly) white background:

LGTM. :)

The contrast seems too poor to me (see below), it could work with alpha 0.8 but is it enough transparent for you ?

With 0.8:

sure, as long as there's some transparency...
(wow, that's a fast shot!!! one billionth of a second?? that can't be right...)

Ok, after some testing I think 0.7 works well so I added this, thanks for the suggestion.


refactor: extract createBinding function

part of #413 and a real pain to rebase

thank you for review @jasnell


Set the validateStatus locally than globally for axios

This PR is requested through a customer issue reported to AzureSDK:

MSAL currently sets a global Axios setting which may impact other uses of Axios. We recently received a customer-reported issue for this on the Azure Identity repo: Azure/azure-sdk-for-js#13343

This prevents overwriting of the settings of axios for any app that imports msal-node

Coverage increased (+11.5%) to 93.889% when pulling b2be1ec1f21269e9fb9ae44759e31c814c5bda91 on axios-validate-status into eb01de643d0028deb60181a599c14944a0f62645 on dev.

Coverage increased (+11.5%) to 93.889% when pulling b2be1ec1f21269e9fb9ae44759e31c814c5bda91 on axios-validate-status into eb01de643d0028deb60181a599c14944a0f62645 on dev.

Hello!
Is there an expected release date for an update to the msal-node package with this fix?


Fatal exception in process_signature for some C/C++ plugins.

Some function-like things make it into code bases that don't have an attached 'qualname'.
  File ".../ve/lib/python3.7/site-packages/sphinx_autodoc_typehints.py", line 169, in process_signature
    if '<locals>' in obj.__qualname__:
AttributeError: 'DFA' object has no attribute '__qualname__'

Please check again with latest release and report back if the problem is still active. Please post a reproducible for this.


installer.rb: clarify "not able to unpack" message

Closes https://github.com/caskroom/homebrew-cask/issues/17016.

LGTM


Update information architecture

Context
Firebreak project to improve the docs information architecture
Changes proposed in this pull request
New information architecture, split into different stages of a project.
Guidance to review
Does this make sense?

As per Show and Tell discussion, this is a much needed reorganisation of the docs for the tech docs tool ✨
How about shuffling some content around:

move 'Middleman options' under 'Amend your project'
break up 'Publish your documentation' into separate pages about deploying, hosting etc
move 'Page expiry and review' up one level to be the same level as 'Review your documentation'

Also sounds like 'Review your project' is more about reviewing docs so maybe worth renaming?
For the google docs marked 'requires permission to access' is there a specific reason we can't open up the useful content?
How about dropping 'amend' in favour of the more commonly used 'edit'? Here are some interesting insights from Google Trends: https://trends.google.com/trends/explore?date=all&geo=GB&q=amend,edit
Can we find a plan English alternative to 'Governance'?
I think it looks much, much better than the previous structure. I have a few suggestions - let me know what you think 😁

Agree with your suggestions, however I'm a bit stumped as to why 'Page expiry and review' is not the same level as 'Review your documentation' - do you know? I'll make the other changes now.

Agree with your suggestions, however I'm a bit stumped as to why 'Page expiry and review' is not the same level as 'Review your documentation' - do you know? I'll make the other changes now.

Fixed it by moving page-expiry.html.md.erb out into its own folder and renamed it to index.html.md.erb. The nested page implementation is a bit strange...

Agree with your suggestions, however I'm a bit stumped as to why 'Page expiry and review' is not the same level as 'Review your documentation' - do you know? I'll make the other changes now.

Fixed it by moving page-expiry.html.md.erb out into its own folder and renamed it to index.html.md.erb. The nested page implementation is a bit strange...

Looks good, let me know what you think


fddb eval tool link 404 error

Hi, the fddb eval tool mentioned in README is not accessible, chould you please update the link?

I also met the same problem, how did you solve it


cannot assign user to unit for customer associated with non default IDP

Date:2016/10/23 (multiple IDPs)
[Steps to reproduce]

IDPs IDP1(used as default), and IDP2 exist
customer org is assigned to IDP2
as customer org admin create unit and assign yourself to unit

[Expected result]
customer admin is assigned to unit
[Observed result]
The user ID "ChocolateCookie" does not exist.
[Details]
This works for the default tenant but not for any other tenant. This makes me think that the unit tests (all)
should be also executed not only for default tenant but also for another tenant other than default.

This is a problem how the data service access the platform user objects. The information about tenant is missing.

[similar cases]

login as Platform Operator
create tenant1
create organization userid = supplier without selecting any tenant
create organization with the same userId = supplier and assign it to the tenant1
create marketplace for supplier created in step 3.
log in as supplier from step 3.
go to marketplace
go to Account > Users & Units
try to edit supplier

[Observed result]
error message: The data has been modified or deleted in the meantime. Please execute the operation again. is shown
[Expected result]
edit user form is shown

Test UserGroupServiceLocalBeanTest is failing and set as ignored. Check what is wrong, the test of  functionality.

[Details of fix]
Reported issue with unit is tested and correctly fixed.
[Open]

Edit another user A
change access rights of A in group B using combobox
deassign A from that group B
click save
=> Error message is shown, that user doesn't exist

[Similar cases]
4 similar cases (as above) have been identified and fixed
1 similar case has been found in regression testing, which is not yet fixed
The issue is left open for the remaining similar case. A workaround for that exists (todo: describe).
Since severe issues have been corrected and verified, I reduce the severity to normal.

All the similar cases needs to be tested.

Similar cases have been tested and they are fixed.

[Build] 16.1 fix4
verified:

original problem
assign roles to unit member of non default tenant
edit user on marketplace default tenant (scenario above)
create user on marketplace default tenant (scenario above)
grant Administrator role to the unit (scenario above)


MEXC Subaccount Connection Experiences Intermittant Connection Timeout and cancels all trades

When using the grid strategy on MEXC with a sub account I am experiencing intermittant timeout's which result in all trades being cancelled.
Steps to reproduce:

Connect API to MEXC Sub Account
Create fixed grid strategy.
Start bot
Bot creates trades and runs normally then intermittantly stops, cancels all trades and gives the message:
'07:57:20 - mexc_exchange - Order sell-xxxx has been canceled according to order delta websocket API.'

Here are the steps to reproduce the issue (see attachments in the section below):

Set up your configuration file with these parameters: ...
Start the bot using this command: ...
...

Left it running overnight and it also gives this error, while keeping 'deals' open:

At the same time through the night the error showed up again - bot closed all deals but then later opened them again:

Currently using V1.7 Development Branch
Upgraded to lastest V1.8 branch and the issue persists.

the issue Could be closed since fixed grid strategy was removed from the codebase, I checked the issue on the pureMM startegy, bot was creating orders for a sub-account with/without new email-password account.

Upd:
pureMM strategy with order levels 2 using MEXC fresh sub-account and it will reproduce the same kind of issue
https://www.loom.com/share/aff88ece60dc4d5cb60344b377fcc9b9
However bot was able to recover, so could be related to the exchange connection timeout or something


update prod secret names

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

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

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
616

Relevant Lines:
1004

💛  - Coveralls


Allow for binding System.Type values.

If I have some Json representing a class of type MyClass:
{
    "SomeInt":10,
    "SomeString":"foo",
    "$SomeType":"System.Int32, mscorlib, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=b77a5c561934e089"
}

I can Use Json.Net to deserialize that into an object:
 var bar = JsonConvert.DeserializeObject<MyClass>(@"{
    "SomeInt":10,
    "SomeString":"foo",
    "$SomeType":"System.Int32, mscorlib, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=b77a5c561934e089"
}");

However, if I try to bind to an appsettings.json with a similar setup (ie: I have a type named "$Type")
then that value isn't mapped. Instead the value is null.
Presumably this is because in the settings/configuration object $Type is not a valid property name. $ is not a valid character for .net types. Can the binding logic be modified to account for this (and possibly other) special characters which are valid in Json are accounted for and/or ignored?

@necoras you can try and if you think the result is a compelling change we can look at a PR.
However the configuration binder was not built to work as general purpose serialization. It doesn't read JSON files directly and but reads key value pairs from an IConfiguration, and then uses standard .NET type converters to go from the string representation of values to the target types of the properties.
In other words, if what you want is to deserialize a JSON file into an object just like Json.NET allows, then you are probably better off using Json.NET.

@divega While I do think this is a reasonable feature (having code key off of types declared at run time rather than compile time can be useful), I don't really have the time to dig into all of the possible edge cases that might be involved. I'll go with your suggestion and pull in the settings object using Json.NET for now. Thanks.


NW-Policy - Good Practice - Whitelist

Hi!
Since we want to implement the good practice "default deny all" kubernetes nw-policy,
we are looking for advices for the whitelist.
Does somebody already have implemented this approach?
Are there any implemenations known for splunk-connect-for-kubernetes?
Thank you very much!
MfG Johann

Do you mean "default deny all" traffic for traffic originated in the cluster, destined for outside the cluster??

Hi,
we would like to start by using this policy - deny ingress an egress traffic - except DNS
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: default-deny-all
spec:
  podSelector: {}
  policyTypes:
  - Ingress
  - Egress
  egress:
  # allow DNS resolution
  - ports:
    - port: 53
      protocol: UDP
    - port: 53
      protocol: TCP

So it will be hard to find all necessary communication routes on our own.

Cool!
So there is no ingress for Splunk Connect for Kubernetes, so that part is straightforward.
The only traffic that should be allowed to egress is the connection from the connect for k8s pods to the Splunk core components.
By default that is tcp8088 but can be tcp443 for Splunk Cloud. Technically you can set any port, but I’ll assume you are using 8088 or 443.
The only other traffic is the objects and metrics-agg pods calling the k8s api, and the metrics daemonset pods calling the local kubelet port on the node. These settings can be found in the configmap, or if you do kubectl logs on one of the pods, as we dump the rendered config at the head of the log.

Thanks for our advice!!
So we implemented the following NW-Policies:
Default - Deny all:
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: default-deny-all
  namespace: {{ .Release.Namespace }}
spec:
  podSelector: {}
  policyTypes:
  - Ingress
  - Egress
  egress:
  # allow DNS resolution
  - ports:
    - port: 53
      protocol: UDP
    - port: 53
      protocol: TCP

Allow k8s API-Server
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: allow-api-server
  namespace: {{ .Release.Namespace }}
spec:
  podSelector: {}
  policyTypes:
  - Egress
  egress:
  - to:
    - ipBlock:
        cidr: {{ $.Values.apiServerIp }}/32
    ports:
    - protocol: TCP
      port: {{ $.Values.apiServerPort }}
{{- end }}

Allow Splunk-HEC Connect
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: allow-splunk-hec-connect
  namespace: {{ .Release.Namespace }}
spec:
  podSelector: {}
  policyTypes:
    - Egress
  egress:
  - ports:
    - port: {{ $.Values.splunkHecListenerPort }}
      protocol: TCP
    to:
      - ipBlock:
          cidr: {{ $.Values.splunkHecServerIp }}/32

So right now i see Logentries in my splunk GUI - we will test the stuff.
Question: Makes it sense to add the NW-Policies to the official splunk-connect-for-kubernetes Projekt?


Add shell script and GitHub Action to run markdownlint

As per #792, here's a script to run markdownlint. The bash script includes usage instructions. You just need to pass it a file, directory, or glob pattern for the MD files you want to lint. It uses a Docker image because I fear the npm package version dependency hell, but the docker image is versioned.
The GitHub Action is inert because it currently has no trigger event. [Removed the workflow file.] I just want to get the script reviewed and merged for now, so we can all experiment with the lint results. At this point, I believe the only file that does not pass the lint test (using the provided lint config, markdownlint.yaml) is docs/spec.md.

FYI, the reason for reference-links-images: false is this bug: https://github.com/DavidAnson/markdownlint/issues/686
It's not a critical rule we need, so I think it's okay to keep disabled unless there's a way we can re-write this spec.md text as a workaround (in the "Constraints" list for stablhlo.reduce).


Update to Node 20

Please update the action to use Node 20. Node 16 is EOL. See https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/

Correction: as of today, Node 18.x is the latest version of Node.

As of today, Node 18.x is the latest LTS version of Node.
@Pesa Are you willing to make a PR?

As of today, Node 18.x is the latest LTS version of Node.

Right. Github's post specifically mentions Node 20 though, which is set to become the active LTS in about a month. My guess is that Github prefer skipping one LTS so that they can do one migration every two years instead of every year. IIRC they did the same with the transition from Node 12 to 16.

@Pesa Are you willing to make a PR?

Unfortunately I know nothing about Javascript or Node :(

This is still relevant. Please reopen.


Implement submission streaming

Fixes #744

Please also check the failed tests and deepsource issues.

Should also be linked to an open issue (or if in a task list, create an issue)

Codecov Report

Merging #889 (f57ad1d) into master (4b05928) will increase coverage by 0.27%.
The diff coverage is 51.85%.

@@            Coverage Diff             @@
##           master     #889      +/-   ##
==========================================
+ Coverage   28.54%   28.82%   +0.27%
==========================================
  Files          90       90
  Lines        9432     9469      +37
==========================================
+ Hits         2692     2729      +37
- Misses       6446     6451       +5
+ Partials      294      289       -5

Flag
Coverage Δ

unittests
28.82% <51.85%> (+0.27%)
:arrow_up:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

web/hooks/push.go
22.40% <0.00%> (ø)

web/interceptor/access_control.go
72.41% <ø> (+1.14%)
:arrow_up:

web/quickfeed_service.go
31.89% <0.00%> (-0.28%)
:arrow_down:

web/webserver.go
0.00% <0.00%> (ø)

ci/record_results.go
68.26% <40.00%> (-3.31%)
:arrow_down:

web/hooks/github.go
20.75% <100.00%> (+1.52%)
:arrow_up:

web/rebuild.go
36.26% <100.00%> (ø)

scm/helper.go
53.84% <0.00%> (-5.13%)
:arrow_down:

scm/scm.go
15.78% <0.00%> (ø)

scm/github.go
0.00% <0.00%> (ø)

... and 5 more

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


Create formatting/linting ci/cd github action

I think this is very useful for keeping things consistent and reducing formatting or typo noise in PRs
The gnomad browser and methods ones are good to use as a starting place, but we can trim it down
https://github.com/broadinstitute/gnomad-browser/blob/main/.github/workflows/data-pipeline-ci.yml
https://github.com/broadinstitute/gnomad_methods/blob/main/.github/workflows/ci.yml

Closed in https://github.com/clingen-data-model/clinvar-ingest/pull/15


"java.lang.IllegalStateException: Connection pool shut down" returned when refresh endpoint is called

I have created a Spring Cloud Config Server using Spring Boot 1.5.10 and Spring Cloud version Edgware.SR2 and I have an issue after calling refresh endpoint. My application is using RestTemplate to make an HTTP request and after calling refresh endpoint the following exception appears:

java.lang.IllegalStateException: Connection pool shut down
at org.apache.http.util.Asserts.check(Asserts.java:34) ~[httpcore-4.4.8.jar:4.4.8]
at org.apache.http.pool.AbstractConnPool.lease(AbstractConnPool.java:191) ~[httpcore-4.4.8.jar:4.4.8]
at org.apache.http.impl.conn.PoolingHttpClientConnectionManager.requestConnection(PoolingHttpClientConnectionManager.java:257) ~[httpclient-4.5.3.jar:4.5.3]
at org.apache.http.impl.execchain.MainClientExec.execute(MainClientExec.java:176) ~[httpclient-4.5.3.jar:4.5.3]
at org.apache.http.impl.execchain.ProtocolExec.execute(ProtocolExec.java:185) ~[httpclient-4.5.3.jar:4.5.3]
at org.apache.http.impl.execchain.RetryExec.execute(RetryExec.java:89) ~[httpclient-4.5.3.jar:4.5.3]
at org.apache.http.impl.execchain.RedirectExec.execute(RedirectExec.java:111) ~[httpclient-4.5.3.jar:4.5.3]
at org.apache.http.impl.client.InternalHttpClient.doExecute(InternalHttpClient.java:185) ~[httpclient-4.5.3.jar:4.5.3]
at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:83) ~[httpclient-4.5.3.jar:4.5.3]
at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:56) ~[httpclient-4.5.3.jar:4.5.3]
at org.springframework.http.client.HttpComponentsClientHttpRequest.executeInternal(HttpComponentsClientHttpRequest.java:89) ~[spring-web-4.3.13.RELEASE.jar:4.3.13.RELEASE]
at org.springframework.http.client.AbstractBufferingClientHttpRequest.executeInternal(AbstractBufferingClientHttpRequest.java:48) ~[spring-web-4.3.13.RELEASE.jar:4.3.13.RELEASE]
at org.springframework.http.client.AbstractClientHttpRequest.execute(AbstractClientHttpRequest.java:53) ~[spring-web-4.3.13.RELEASE.jar:4.3.13.RELEASE]
at org.springframework.web.client.RestTemplate.doExecute(RestTemplate.java:659) ~[spring-web-4.3.13.RELEASE.jar:4.3.13.RELEASE]
at org.springframework.web.client.RestTemplate.execute(RestTemplate.java:628) ~[spring-web-4.3.13.RELEASE.jar:4.3.13.RELEASE]
at org.springframework.web.client.RestTemplate.getForObject(RestTemplate.java:302) ~[spring-web-4.3.13.RELEASE.jar:4.3.13.RELEASE]

If I am using Edgware.RELEASE version for spring cloud, the application works fine. I have noticed that the issue is caused by spring-cloud-commons-dependencies which was changed - from 1.3.0.RELEASE version in Edgware.RELEASE to 1.3.2.RELEASE in Edgware.SR2.

I dont see anything in the stacktrace that has to do with Spring Cloud.  If you can prove some code in Spring Cloud Commons is causing the issue then please open an issue here https://github.com/spring-cloud/spring-cloud-commons

my issue appeared when I have updated the Spring Cloud config  version from Edgware.RELEASE to  Edgware.SR2. While investigating the issue, I noticed that it works if I override the version of spring-cloud-commons-dependencies used by Spring Cloud Config Edgware.SR2 and force the application to use spring-cloud-commons-dependencies version 1.3.0.RELEASE.
Should I open the issue to spring-cloud/spring-cloud-commons in this case?

Thats fine just provide a project that reproduces the issue

#https://github.com/spring-cloud/spring-cloud-commons/issues/330


First-class support for clojure files and dependencies in fractl tools

Commands like fractl run, and  fractl repl should be able to load and run models with clojure code and dependencies (i.e no extra build step should be required for such models). This will be a huge boost for developers, especially those working on new resolvers.

Some work related to this has already happened here: https://github.com/fractl-io/fractl/pull/1368

A possible solution to this problem is to generate a fractl-runtime "calibrated" for the model. The fractl command should check for the existence of such a calibrated-runtime before falling-back to the default runtime. The new runtime maybe generated in response to a command like fractl calibrate, issued from the model directory.

Fixed https://github.com/fractl-io/fractl/pull/1401


Create layer_clear_selective.lua

new script - clear chosen layer of current selection

Is that last Merge branch the right thing to do? I just wanted my cv-on-hub fork to match the finale-lua "dist" contents.

Is that last Merge branch the right thing to do? I just wanted my cv-on-hub fork to match the finale-lua "dist" contents.

It depends. That's what's called a merge commit (in case you want to Google it).
Some people say to never do it since it makes a messy commit history. Personally, I don't care since almost no one ever looks at the commit history, so I'm going to go ahead and approve and merge.


About box renders with truncated text and scroll bar

Version 2024.1.1-nightly.2024.5.28
Build 8edf49343f3a8e3b5ede9e264af562789da81eed
Electron 25.7.0
Chrome 114.0.5735.289
User Agent Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) enso/2024.1.1-nightly.2024.5.28 Chrome/114.0.5735.289 Electron/25.7.0 Safari/537.36

ah. seems like it's the long build hash causing this... will look into it


Discussion: Component metadata

 Issue by kevinSuttle
Thursday Sep 29, 2016 at 21:44 GMT
Originally opened as https://github.com/storybooks/react-storybook-addon-info/issues/100

I built this thing, and it got me thinking: what if we could use a Markdown file with front-matter?

Maybe a structure like this:
Buttons.js
Buttons.css
Buttons.md

---
stability: experimental
version: 1.0.2
publish date: from WebpackBannerPlugin / moment ?*
repo: https://github.com/blah
npm package: https://github.com/blah

⬆ could be from package.json

---

# Stories Group Title
## Story Title

===
_[Bunch of docs...]_

*You can do this in Webpack like this:
const pkg = require('./package.json');
const moment = require('moment');
const localTimeZone = Intl.DateTimeFormat().resolvedOptions().timeZone
const timeStamp = moment().format('LLLL');
const banner = `
 Generated on ${timeStamp} - ${localTimeZone}
 Description: ${pkg.description}
 Package: ${pkg.name}
 Version: v${pkg.version}
 Contributors: ${pkg.contributors.map(function(contributor){ return contributor})}
 Source: ${pkg.repository.url}
 Docs: ${pkg.homepage}
 License: ${pkg.license}

 Any questions, suggestions, or problems? Feel free to file an issue at:
 ${pkg.bugs}

 Notice:
 Do NOT edit this file below this point, any changes will be overwritten.

`;

 Comment by bernardodiasc
Thursday Sep 29, 2016 at 22:46 GMT

Hey @kevinSuttle, I managed to make this work using https://github.com/kadirahq/storybook-addon-notes/, the same approach works for the addon Info (was using it before include the addon notes).

One small difference is the replace() little hack that is needed for duplicated break lines, that is not needed with addon Info. What made me change from Info to Notes to load the markdown is that the Info addon inherit the base styles from the isolated theme, in my case I have a reset style for typography loaded in the components and affected the display badly, while Notes is a panel outside of the component iframe.

 Comment by kevinSuttle
Friday Sep 30, 2016 at 05:17 GMT

https://github.com/jxson/front-matter looks perfect

 Comment by arunoda
Friday Sep 30, 2016 at 05:43 GMT

@kevinSuttle that's great.
@madushan1000 is also working on a babel-plugin which automatically adds propType information to any React class.
It uses react-docgen behind the scene.
For an example, once it's there you could get these from any React class like this:
MyClassName.__docgenInfo

 Comment by bernardodiasc
Friday Sep 30, 2016 at 20:07 GMT

https://github.com/elliottsj/front-matter-loader this works fine too

 Comment by kevinSuttle
Wednesday Oct 05, 2016 at 15:12 GMT

@bernardodiasc Did you open a PR on https://github.com/kadirahq/react-storybook-addon-info/ to add Markdown?

 Comment by bernardodiasc
Wednesday Oct 05, 2016 at 18:07 GMT

No, it's working fine importing the md content right in the story.

 Comment by madushan1000
Friday Oct 07, 2016 at 12:26 GMT

babel-plugin-react-docgen automatically adds the output of react-docgen as a class property to the transpiled code of the react component.
react-docgen-sample is a sample storybook works with the plugin. This is a Live demo of the storybook.

 Comment by arunoda
Friday Oct 21, 2016 at 17:38 GMT

@kevinSuttle extending what @madushan1000 mentioned, we now have fully integrated react-docgen with storybook. See here.


fix: external local dynamo init

This PR configures the local DynamoDB environment prior to table initialization.
Fixes #654

Thank you so much for working with @gbouv and @mieubrisse to get local development w/ Kurtosis unblocked! 🙏🏼