SDP-718: stop enforcing ECDSA only and allow any EC public/private keys at least as strong as EC256

What
Stop enforcing ECDSA only and allow any EC public/private keys that are at least as strong as EC256.
Why
There was no need to enforce the ECDSA. Being as strong as EC256 is what actually matters and we were not verifying for that strength before.
Also, multiple partners have struggled to set up these keys because the ECDSA format was not very explicit or common.
Checklist
PR Structure

[x] This PR has reasonably narrow scope (if not, break it down into smaller PRs).
[x] This PR does not mix refactoring changes with feature changes (split into two PRs otherwise).
[x] This PR's title starts with the name of the package, area, or subject affected by the change.

Thoroughness

[x] This PR adds tests for the new functionality or fixes.
[x] This PR contains the link to the Jira ticket it addresses.

Configs and Secrets

[x] No new CONFIG variables are required -OR- the new required ones were added to the helmchart's values.yaml file.
[x] No new CONFIG variables are required -OR- the new required ones were added to the deployments (pr-preview, dev, demo, prd).
[x] No new SECRETS variables are required -OR- the new required ones were mentioned in the helmchart's values.yaml file.
[x] No new SECRETS variables are required -OR- the new required ones were added to the deployments (pr-preview secrets, dev secrets, demo secrets, prd secrets).

Release

[x] This is not a breaking change.
[x] This is ready for production.. If your PR is not ready for production, please consider opening additional complementary PRs using this one as the base. Only merge this into develop or main after it's ready for production!

Deployment

[ ] Does the deployment work after merging?

stellar-disbursement-platform-backend-preview is available here:SDP:      https://sdp-backend-pr61.previews.kube001.services.stellar-ops.com/healthAP:       https://sdp-ap-pr61.previews.kube001.services.stellar-ops.com/healthFrontend: https://sdp-backend-dashboard-pr61.previews.kube001.services.stellar-ops.com

stellar-disbursement-platform-backend-preview is available here:SDP:      https://sdp-backend-pr61.previews.kube001.services.stellar-ops.com/healthAP:       https://sdp-ap-pr61.previews.kube001.services.stellar-ops.com/healthFrontend: https://sdp-backend-dashboard-pr61.previews.kube001.services.stellar-ops.com

Something went wrong with PR preview build please check


chore: mark id as a fail when appends requests is failed

@cre8ivejp
Could you review this PR? Thx.


Implemented test for irca feature

Test for Impact Ratio by Commit Authors (IRCA) in #226

@yegor256 please, check this test out

@zaqbez39me looks good, but make fails (see above). Also, to disable a test, it's better to do exit 0 at the beginning of the script, instead of commenting it all out

@yegor256 fixed the test disabling method. Please, check my reasoning about make in #259

@yegor256 after providing access for execution for test-irca.sh and adding the stub irca.sh, I met with another error that is not directly connected with my part. Maybe, this error in pipline was before in master branch

@zaqbez39me the master branch has a clean build: https://github.com/yegor256/cam/actions/workflows/make.yml

@yegor256 as I see this error occurs because of my stub and test-measure-file.sh conflict. If I make my stub return "IRCA 0.000" then the test-measure-file.sh fails with the error 'Exactly 52 metrics were expected, but 53 were actually collected' because of hardcoded 52 constant in it.

I had to add stub because of another test that checks following:
If test exists then the script also must exist

@zaqbez39me maybe you should change the number in the test-measure-file.sh?

@yegor256 maybe, I should better fix the hardcoded value with calculated in separate pull request and then rerun all the pipelines again?

@zaqbez39me sounds good!

@yegor256 please, check it out. Now everything works fine

@zaqbez39me thanks!


Feature request: (Native) Music in Doom (relevant to mods)

I don't know if this is due to ArkOS or not, so please forgive my ignorance in advance. I am using the RG351 and as of ArkOS 1.4 (and so it seems for 1.5), Doom/Doom2 can be played with music if the mp3 files are placed manually in their respective folders. This is fine for the original games but in the case of mods (such as Scythe, Alien Vendetta, etc), the game runs without music, since it is embedded in the .wad files. If possible, it would be great to get a fix for this, or maybe if it could be made to default to the Doom2 original music when the custom music is not found.

Not something I can control.  However, lzdoom will be added to an update this evening.  The music may work with that.


Add some codeowners to Concurrency directories

Add some codeowners for Concurrency directories.
We're not requiring signoff by code-owners, but github suggests those as reviewers which is a nice improvement. It would be nice to add some more folks here, but I'd personally benefit from this automatic "ping" on PRs.
Asking around who else to add here.

@swift-ci please smoke test and merge


Test watches for children are not cancelled when their parent is cancelled

From playwright:
"It looks like if I watch single test item, then watch file (parent item) and then unwatch the file, cancellation token is not triggered for the test entry.... When [the parent watch] is canceled, child is canceled in the UI. But child is not cancelled programmatically."

Are there verification steps for this?

Watch a single test item
Watch file (parent item) and then unwatch the child
The cancellation token is not triggered for the child item

Requires debugging an extension that provides tests, such as the selfhost test provider, watching here for new requests and here for cancellations.

I get an error trying to build the vscode-selfhost-test-provider, does this require using another library? I saw you made a change recently to break this out but not sure what that means for installation. I could also try on the python extension if that would work, I can successfully debug a test and given the test parent is canceled the child gets canceled so I am not sure if that is the same as the required steps here.
npm ERR! enoent ENOENT: no such file or directory, open '/Users/eleanorboyd/testingFiles/istanbul-to-vscode/istanbul-to-vscode-1.0.0.tgz'
npm ERR! enoent This is related to npm not being able to find a file.


I am not able to convert ogg file to mp3

Q
A

Bug?
no

New Feature?
no

Version Used
Specific tag or commit sha

FFmpeg Version
FFmpeg or AVConv and version

OS
Your OS and version

Actual Behavior
How does PHP-FFMpeg behave at the moment?
Expected Behavior
What is the behavior you expect?
Steps to Reproduce
What are the steps to reproduce this bug? Please add code examples,
screenshots or links to GitHub repositories that reproduce the problem.
Possible Solutions
If you have already ideas how to solve the issue, add them here.
Otherwise remove this section.
I'm trying to convert ogg file to mp3 with this little code:
include ('vendor/autoload.php');
$ffmpeg = FFMpeg\FFMpeg::create(array(
    'ffmpeg.binaries'  =>'/usr/bin/ffmpeg',
    'ffprobe.binaries' =>'/usr/bin/ffprobe

    'timeout'          => 3600, // The timeout for the underlying process
    'ffmpeg.threads'   => 12,   // The number of threads that FFMpeg should use
), $logger);

$audio = $ffmpeg->open( 'example.flac');

// Set an audio format
$audio_format = new FFMpeg\Format\Audio\Mp3();

// Extract the audio into a new file
$video->save('audio.mp3');

Return a fatal error:
Fatal error :  Uncaught exception 'Alchemy\BinaryDriver\Exception\Execut
ionFailureException' with message 'ffmpeg failed to execute command
'/usr/bin/ffmpeg' '-y' '-i' '/var/www/html/teste/transcript.ogg'
'-acodec' 'libmp3lame' '-b:a' '128k' '/var/www/html/teste/audio.mp3'' in
/var/www/html/teste/vendor/alchemy/binary-driver/src/Alchemy/BinaryDrive
r/ProcessRunner.php:100 Stack trace: #0 /var/www/html/teste/vendor/alche
my/binary-driver/src/Alchemy/BinaryDriver/ProcessRunner.php(72):
Alchemy\BinaryDriver\ProcessRunner->doExecutionFailure(''/usr/bin/ffmpe.
..') #1 /var/www/html/teste/vendor/alchemy/binary-driver/src/Alchemy/Bin
aryDriver/AbstractBinary.php(209): Alchemy\BinaryDriver\ProcessRunner->r
un(Object(Symfony\Component\Process\Process), Object(SplObjectStorage),
false) #2 /var/www/html/teste/vendor/alchemy/binary-driver/src/Alchemy/B
inaryDriver/AbstractBinary.php(137): Alchemy\BinaryDriver\AbstractBinary
->run(Object(Symfony\Component\Process\Process), false, Array) #3
/var/www/html/teste/src/FFMpeg/Media/Audio.php(97): Al in
/var/www/html/teste/src/FFMpeg/Media/Audio.php on line 100

The code is running on a server with centos 6.8 installed. Both ffmpeg and ffprobe are also installed. File conversion usually works straight from SSH.
What's going on?

Hi @gabrielschuck,
Could you try this:
$video->save($audio_format, 'audio.mp3');

and tell me if it works?

Anyway, we should validate wether it's a valid audio format submitted. I'm creating a pr.

Huhh? It seems that @gabrielschuck's php binaries are broken. Actually, there is a type hint already included...

Yeah, normally the core features of the bundle have been really nicely developed by @romainneutron.
When we face an issue with sound encoding it's mainly due to a lack of codecs on the server of the user, or to the way FFMPEG has been installed.
The best way to install FFMPEG is to compile it following this documentation.
In this case, it would be great if @gabrielschuck could manually execute the commande generated by the bundle and give us the result, so we could get the exact error message.

Thanks guys, I got the hang of it. I had to give permissions on the files and folders. The script works very well, I even did the installation of ffmpeg in Centos following this tutorial:
Https://trac.ffmpeg.org/wiki/CompilationGuide/Centos
greetings


Blob Storage Content-Type

Is it possible to specify the Content-Type that we want the sink blobs to have? Currently I see them always set to application/octet-stream (I use binary copy), even for Excel files for example.

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

ID: df7b56de-6c44-a6a7-7cb1-2d77025f17f5
Version Independent ID: fa99fc00-8d68-a1de-558e-0ef651548f34
Content: Copy data to or from Azure Blob storage by using Data Factory
Content Source: articles/data-factory/connector-azure-blob-storage.md
Service: data-factory
GitHub Login: @linda33wj
Microsoft Alias: jingwang

@nprieto95 Thank you for the inquiry. We are investigating and will update this issue when we have accurate information.

At this time we only have the Content-Type as application/octet-stream .
We are closing this issue  , you can always re-open the issue if you think that's appropriate .


[aws-ebs-csi-driver] - Helm Chart does not support to create VolumeSnapshotClass

Actually Helm Chart does not support to create kind: VolumeSnapshotClass  (https://github.com/kubernetes-sigs/aws-ebs-csi-driver/issues/1146)
https://github.com/particuleio/terraform-kubernetes-addons/blob/50c5c59d7042580e5e305ecbb1b0222f713a1d66/modules/aws/aws-ebs-csi-driver.tf#L31
eks-addons-critical$ terragrunt apply
│ Error: Failed to determine GroupVersionResource for manifest
│
│   with kubernetes_manifest.aws-ebs-csi-driver_vsc[0],
│   on aws-ebs-csi-driver.tf line 216, in resource "kubernetes_manifest" "aws-ebs-csi-driver_vsc":
│  216: resource "kubernetes_manifest" "aws-ebs-csi-driver_vsc" {
│
│ no matches for kind "VolumeSnapshotClass" in group
│ "snapshot.storage.k8s.io"
╵
ERRO[0016] 1 error occurred:
* exit status 1

Hi @fsakget this a known bug, even though this depends on the CRDs it still try to plan it before and there fore fail. One solution is to put volume_snapshot_class = null apply and the remove the line and re apply.
I'm trying to find another workaround for this to work

@fsakget this will be fixed in next release

@fsakget this is fixed in 4.0.0 release


fix habitat based windows service tests

The windows service that gets started in the windows service functional tests will not inherit the current shell's environment. So it fails because it's GEM_PATH is not set and therefore is unable to consume the win32-service gem. This adds the chef-infra-client packages GEM_PATH to the machine scoped GEM_PATH.

@mwrock these went green, thanks! https://buildkite.com/chef/chef-chef-master-habitat-test

also confirmed chef/chef-infra-client/16.2.62/20200626032748 and later on windows made it to 'current'.


[$500] Web - Request Money - Long description is showing  without  "Paid by" and "Split with"

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

Action Performed:

Click on FAB -> Request money -> Enter any numbers
Select some account -> Add to Split button
Enter a long description -> Save -> Split button
Click on newly Request money -> Observe this Request money

Expected Result:
Request money will display "Paid by" and "Split with" as well as the Description.
Actual Result:
Long description is showing only without  "Paid by" and "Split with"
Workaround:
Unknown
Platforms:

Which of our officially supported platforms is this issue occurring on?

[ ] Android / native
[ ] Android / Chrome
[ ] iOS / native
[ ] iOS / Safari
[x] MacOS / Chrome / Safari
[ ] MacOS / Desktop

Version Number: <IP_ADDRESS>
Reproducible in staging?: y
Reproducible in production?: y
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Notes/Photos/Videos: Any additional supporting documentation
https://github.com/Expensify/App/assets/93399543/9ef6c502-fe49-43df-9990-6c27562720bf
screen-capture (1) (2).webm
https://github.com/Expensify/App/assets/93399543/bceb7534-1116-408b-b58e-47b80613fd6e
Expensify/Expensify Issue URL:
Issue reported by: @thuyle04
Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1695272345551449
View all open jobs on GitHub
Upwork Automation - Do Not Edit

Upwork Job URL: https://www.upwork.com/jobs/~01062695b5b87a83cc
Upwork Job ID:<PHONE_NUMBER>113011712
Last Price Increase: 2023-10-07

Proposal
Please re-state the issue
Split bill details page is not scrollable and is stuck when a long discription is provided.
What is the root cause of this issue?
We are not keeping the MoneyRequestConfirmationList in a ScrollView in SplitBillDetailsPage.js
https://github.com/Expensify/App/blob/5aa7f6da94ddb1c8ca55a6cce714555f819c1dd0/src/pages/iou/SplitBillDetailsPage.js#L82-L94
This makes it imposible to scroll and the page seems stuck.
What changes do you think should be made to fix this problem?
We should nest the MoneyRequestConfirmationList in a double ScrollView like we do in MoneyRequestConfirmPage.js here:
https://github.com/Expensify/App/blob/5aa7f6da94ddb1c8ca55a6cce714555f819c1dd0/src/pages/iou/steps/MoneyRequestConfirmPage.js#L290-L300
We should also add the pointerEvents='box-none' to the ScrollView which is currently present on the parent View in SplitBillDetailsPage.
Result:
https://github.com/Expensify/App/assets/77237602/91c9fdd4-c3dc-404e-bed0-c3169713f541
What other alternative options did you explore? (Optional)

Contributor details
Your Expencify account email<EMAIL_ADDRESS>Upwork Profile Link: https://www.upwork.com/ab/proposals/1705602690487279617?success
Please remove horizontal attribute in ScrollView component.

https://www.upwork.com/freelancers/~019a9ce9f3628775b7
Contributor details
Your Expencify account email<EMAIL_ADDRESS>Upwork Profile Link: https://www.upwork.com/ab/proposals/1705602690487279617?success
Please remove horizontal attribute in ScrollView component.

@situchan have you had a chance to reproduce this bug and review proposals?

Proposal
Please re-state the problem that we are trying to solve in this issue.
When a lengthy description is entered, the split bill details page becomes unable to scroll.
What is the root cause of that problem?
In the SplitBillDetaislPage, the MoneyRequestConfirmationList is enclosed within a View component. However, in React Native, View components do not enable scrolling.
What changes do you think we should make in order to solve the problem?
We can opt for the ScrollView component instead of View.
<ScrollView
  contentContainerStyle={[styles.flexGrow1]}
  >
    {Boolean(participants.length) && (
      <MoneyRequestConfirmationList
          ....
      />
  )}
</ScrollView>

Result:
28073(safari).webm
28073(chrome).webm

Bumped @situchan here

I feel like "Show more" button needs to show without scrolling down. So when collapsed, show only a few lines of description and when expanded, show full description, followed by Date and Merchant.
cc: @Expensify/design

@situchan I have updated my proposal accordingly

@esh-g can you share screenshot? The design team will take decision.

I updated my proposal

@situchan Here is the screen recording (already added to proposal as result):
https://github.com/Expensify/App/assets/77237602/d156eaef-6229-4ed2-a971-e4400f9e67bd
cc @Expensify/design

The last video looks good to me. It does make me think we should also do truncate the description in the chat as well, not just the details panel.
Thoughts from @dannymcclain and @shawnborton ?

My thinking is that for the preview cards, we should truncate after 2-3 lines as the whole point is that it is a preview, and not the full thing.
Then when viewing the actual expense/task, I feel like we shouldn't truncate anything as that's the full view you would expect. Instead, we should be enforcing a certain character limit for things like descriptions, etc.

@shawnborton do you agree this is fine? (no truncation)
https://github.com/Expensify/App/assets/108292595/9ac4d878-474d-4548-a489-f65c86a6eda0

Yup, I do agree that it is fine. Again, I think truncation should happen only in previews, and we should enforce character limits in places where we don't want a ton of text.
Either way, what you are showing above is an edge case, so I'd love to actually experience where customers see this kind of edge case first before making rules for it.

@shawnborton thanks for the feedback.
In this case, preview can be out of scope and enable scrolling on split bill detail page is the only one to fix here.

@situchan Could you please review my proposal? This will not cause any console errors and have tested on all platforms.

Heads up @esh-g I'm currently working on a PR that's gonna make MoneyRequestConfirmationList scrollable as we added errors to the fields and they take up space, it's a bit urgent so we'll try to probably merge it today.

@situchan Could you please review my proposal? This will not cause any console errors and have tested on all platforms. Feel free to ignore the description truncation logic

Your solution will cause console error on native. We should use horizontal scroll view to avoid VirtualizedList warning

https://github.com/Expensify/App/pull/29568 is fixing this issue as well.
@youssef-lr I can do expedite review right now if urgent.

@situchan I mentioned in my proposal to use a "nested scrollView" while also attaching the place where we use the horizontal one.

Oh ok, but unfortunately it's being worked internally.

Contributor details
Your Expensify account email<EMAIL_ADDRESS>Upwork Profile Link: https://www.upwork.com/freelancers/~01fcd9ed589276332f

Not Overdue

We can close this


Nuke Bug: The Fix|Gizmo side Menu does not work and it's missing it's icon

Before posting a new ticket, have you looked through the documentation to find an answer?
Yes I have
Have you looked through the existing tickets to find any related issues ?
Yes I have
Author of the bug
<EMAIL_ADDRESS>Version
3.15.12-quad.4.1
What platform you are running OpenPype on?
Linux / Centos
Current Behavior:
The Fix|Gizmo is missing it's icon :

None of the tool inside the Fix|Gizmo work : we have a unknown command error

Expected Behavior:
No response
What type of bug is it ?
Happens everytime with different configurations
Which project / workfile / asset / ...
TEST_OP2_PUB_23_7 / 001_0020 / light
Steps To Reproduce:
click in the menu
Relevant log output:
No response
Additional context:
No response

Thanks!


okhttp version conflict  on  RN

I  have an project with the okhttp and RN，
the okhttp 3.6.0   okio 1.11.0 in my project.
the okhttp 3.4.1    okhttp-urlconnectio 3.4.1   onhttp-ws 3.4.1 in RN.
the version of okhttp 3.6.0 already contain onhttp-ws。 please help me, thanks.

It's your problem really, this is not an issue with RN, so you would probably get more help on Stackoverflow. I'm sure gradle has option to resolve compatibility, you can likely force RN to use 3.6.0 in your build files.

You can build your android sdk from source (see Building React Native from source), it would be a gradle module of your project then change okhttp version by yourself.


Doesnt send the correct content-type on requests

As found in https://github.com/pouchdb/pouchdb/issues/4240

I think I've found the real cause of the Selenium bug:
Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at http://localhost:2020/testdb/_changes?timeout=25000&style=all_docs&feed=longpoll&since=1&limit=100&_nonce=1441573976214. (Reason: CORS request failed).

I also found that this is failing:

  try {

    obj = JSON.parse(obj);
  } catch (e) {
    // Probably a malformed JSON from server
    return cb(e);
  }

Nevermind; those are also red herrings apparently

Actually this is a very subtle bug and I have no idea what is going wrong. But it is definitely the case that this test (http://<IP_ADDRESS>:8000/tests/integration/index.html?grep=test.issue3179.js-http-http%20%233179%20conflicts%20synced%2C%20live%20sync) shows a CORS warning 1) only in Firefox, and 2) only with PouchDB Server.

OK, the CORS thing is definitely a red herring, because Firefox shows it even if you access a CORS-enabled CouchDB directly at localhost:5984.

Not fixed yet

fixed per https://github.com/pouchdb/pouchdb/pull/4290


[Discussion] Naming for the build events

We currently only have one events for builds: build.create. That's the event recorded when someone sends a build for review by an admin.
On the challenges side we have 3 events: challenge.submit, challenge.review, and challenge.create.
I think for consistency with challenges we should have the following events:

build.submit: when someone submits a new build for review. That's when the build is created as draft in the database.
build.create: when the build is approved by an admin. That's when the build becomes "published" .
build.rejected: when the build is rejected by an admin. What we do with a rejected build is probably a different conversation.

I've filtered in the real db and we only have 5 submissions and all for testing, so we should be good to change the names if we want to.
Thoughts @carletex?

On the challenge side, it seems that we are only using challenge.submit and challenge.review at the moment.
Maybe we only need those two. And same for builds: submit and review. Review will have the status, comments, etc as the payload (we can always query by status if we want accepted / rejected challenges).
An outline of the tasks could be:

[ ] Remove challenge.create
[ ] Add build.submit and build.review

[ ] Migrate the existing builds.create (maybe just deleted them, since are tests)
[ ] Change create => submit on build /POST
[ ] Emit build.review on build /PATCH

WDYT @dgrcode ?

yeah I like that more. It's more consistent with the challenges. Let's go for it 👍


[Feature Request] Translating to Persian/Farsi

Hello, I recently became familiar with this project and I'm very interested in it. I believe this project has a great future and I want to have a small share in its development. So, please add a Persian translation section (there isn't any Farsi section in Crowdin) so I can also contribute. I hope to be able to participate technically in the future as well. Thank you.
Sincerely

Just added it, so you should now see it as an option


Customize dataset and classes/label for training

It would be great if you could customize a dataset to use for training, for instance with CoNLL files (similar to this).

Hi, thanks for your interest in the work.
We are currently looking into the code, and developing a more user freindly way to utilize other datasets. If you have other suggestions for formats let us know and we will also implement them.
We will try to complete these changes by the end of next week, however if you urgently need a solution, the easiest way would be to create a variation of the data.py/load_train_val()/data.py/load_train_test() that loads your dataset in a similar format. However, as mentioned, we are currently working on a much simple solution, and will let you know when this solution is implemented.

Hi @JanRodriguez ,
Apologies for the delayed response - we've been focused on meeting several critical deadlines. @richardjonker2000 has implemented an enhanced API in PR #2 that provides better support for external datasets. The implementation details are documented in the README. Please let us know if you need any clarification.
Additionally, we've identified a minor bug (issue #3) in the inference module. Furthermore, we'll also be making some adjustments to inference API itself in the next few days.


Bug: PerformanceCounter not found

Describe the bug
I was trying to set a PerformaceCounter sensor, so at first i got the list of all counter with either the commands
typePerf.exe -q
or
Get-Counter -ListSet *
i tried a bunch of them but none works, i get the "PerformanceCounter not found" error. Since i tried the suggested command, and it works, and my commands are in italian (so is my OS), i was thinking this could be related.
Misc info (please complete the following information):

Windows build (ideally screenshot/info of winver.exe output): 22621.2283
Windows' UI language: Italian
HASS.Agent version: 2022.14.0

Please check what's applicable (multiple answers possible):

[x] Installed via installer
[ ] Installed manually
[x] Problem occurs in HASS.Agent
[ ] Problem occurs in Satellite Service

Logs
2023-09-16 15:58:45.458 +02:00 [FTL] [SENSORTESTER] Error while testing PerformanceCounter Category: Disco Fisso Counter: Byte letti da disco/sec Instance: _Total Error: PerformanceCounter not found System.Exception: PerformanceCounter not found    at HASS.Agent.Shared.HomeAssistant.Sensors.PerformanceCounterSensor..ctor(String categoryName, String counterName, String instanceName, Nullable``1 updateInterval, String name, String id)    at HASS.Agent.Functions.SensorTester.TestPerformanceCounter(String categoryName, String counterName, String instanceName)

Hello,
The english names for performance counters should work at all times.
From what I've been able to check in the code, if the name "is not english" it tries to get the localised name.
What exactly are you putting in the sensor config fields? (please list the working english one and italian non-working one)


[WIP] Add no route to host to retrieable errors

/test pull-knative-sandbox-net-kourier-integration-tests
Retrying once.

Passed twice. Calling this a victory.


Create VppMemifConnect in SDK

Overview
Currently the various parts that plug incoming NSM Connections into VPP are all monolithic command private things like:
vppagentComposite
vppAgentXConnComposite
This is a valid way to do it, but it would be nice to have reusable components that could be composed together to do various NSM related VPP things.
This Issue is to write a VppAgentMemifConnect in the SDK to simply take an incoming Connection and plug it into VPP as a memif interface.
This should probably be put in an sdk/vppagent/ subdirectory.
The VppAgentMemifConnect should persist the name of the interface it created into the Opaque data so it can be used by other CompositeEndpoints in the Chain.
VppAgentMemifConnect should assign an IP address to the interface if and only if the ConnectionContext has a DstIp.
The VppAgentMemifConnect should persist the resulting DataChange to Opaque data so it can be added to by other CompositeEndpoints in the Chain.
The VppAgentMemifConnect should not write the DataChange to vppagent.
Link to the Google Docs document

References

Hint

@edwarnicke why do we need to have a composite especially to do memif connect? Isn't it better just to have a connect that looks at mechanism type? It looks redundantly to me to have memif specified as mechanism type in the NS config and also use memif connect endpoint. We have LocalConnectionConverter in dataplane, will it be better to have connect composite that uses it?

@onobrod The NSE is the one that actually picks the type of connection.  You could do a generic that has a default list ordered [memif,kernel interface] (ie, pick memif by default if available), and that could be configured with the opposite order.


Code samples for @azure/arm-monitor

Arm monitor page https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/monitor/arm-monitor
doesn't include any simples or any explanation for how the package should be used and this is inconsistent with the other packages in this repo since I'll always expect to have examples or samples.

@colawwj, please help to release track 2 SDK for Azure monitor and update the sample for that RP.

<EMAIL_ADDRESS>

The sample link: https://github.com/Azure-Samples/azure-sdk-for-js-samples/blob/main/samples/monitor/monitor_examples.ts


Bump Dependencies #2078070522

Bumps dependencies for product-is. Link : https://github.com/wso2/product-is/actions/runs/2078070522

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.jenkins-is-staging seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.


Disable Peek Preview for Windows 11

Describe the bug
Hi, everyone!
To implement some custom fetatures I need to  disable peek preview for the window. So I call DwmSetWindowAttribute with DWMWA_DISALLOW_PEEK  set to True to disallow peek preview. It works well in Win7 and Win10 but in my newest Win11 machine, it sill shows peek preview when the mouse hovers over the window's thumbnail in the taskbar.
And I use a demo from VS2019 to reproduce this bug and still it works well in Win7 and Win10.
I also read the SDK document and I don't find changes relevant to this behavior. And I misuse this interface? If you know the right way to disable it, let me know plz~~
Steps to reproduce the bug

Open Visual Studio 2019 and New C++ Desktop Project.
With a built-in demo, disable peek preview with  DwmSetWindowAttribute

#include <dwmapi.h>
....

....
BOOL InitInstance(HINSTANCE hInstance, int nCmdShow)
{
   hInst = hInstance;

   HWND hWnd = CreateWindowW(szWindowClass, szTitle, WS_OVERLAPPEDWINDOW,
      CW_USEDEFAULT, 0, CW_USEDEFAULT, 0, nullptr, nullptr, hInstance, nullptr);

   if (!hWnd)
   {
      return FALSE;
   }

   ShowWindow(hWnd, nCmdShow);
   UpdateWindow(hWnd);

   // ****************** to reproduce this bug  ******************
   BOOL disallow_peek = TRUE;
   DwmSetWindowAttribute(hWnd, DWMWA_DISALLOW_PEEK, &disallow_peek, sizeof(disallow_peek));
   // ****************** to reproduce this bug  ******************

   return TRUE;
}

Add link dependency  dwmapi.lib
Compile and Run
Window shows but it still shows peek preview.

Expected behavior
No peek preview in Windows 11 22000.829
Screenshots
No response
NuGet package version
No response
Packaging type
No response
Windows version
Windows 11 version 21H2 (22000)
IDE
Visual Studio 2019
Additional context
No response

Sorry, I post issue to the wrong place...  WindowsAppSDK is not Windows SDK, I will post this issue to right place. So sorry to make the noise, my apology.


Roll Engine from 26b430373207 to 9cd516ae8c22 (1 revision)

https://github.com/flutter/engine/compare/26b430373207...9cd516ae8c22
2021-07-12<EMAIL_ADDRESS>[web] remove no longer used setFilterQuality (flutter/engine#27329)
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC<EMAIL_ADDRESS>on the revert to ensure that a human
is aware of the problem.
To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md

Commit queue failed; closing this roll.


Site selection logic

While multisite allows apps to specify a list of sites to which they may be directed, there is no logic that allows to discriminate between the sites. We need the ability to push some user specified logic here to allow for the following cases:

Multiple sites are defined on the same node, only one site can be active at any time, due to resource constraints.
Prefer one site over the other until certain conditions are met, such as block requests have been pending for X duration. (cloud bursting).
Send tasks to sites to which data has been pre-staged.

[ ] This will require an additional internal pending state to put tasks to hold at launch time.
[ ] Hooks to plug in a user specified site discriminator class.

Requested by @djf604

Deferring for 0.6.0


Show addr:housenumbers

Got an idea!:
Instead of just empty white markers that all look the same,

how about also showing their addr:housenumber next to each one?!

There is some discussion about this at https://github.com/openstreetmap/iD/issues/1524#issuecomment-482778889

Yes this is a duplicate of #1524, thanks @tordans 👍


Windows ARM64 Build failing

Platform
Flutter Desktop Windows
Obfuscation
Disabled
Debug Info
Disabled
Doctor
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, 3.27.0, on Microsoft Windows [Version 10.0.22621.4169], locale en-US)
[✓] Windows Version (Installed version of Windows is version 10 or higher)
[✓] Android toolchain - develop for Android devices (Android SDK version 34.0.0)
[✗] Chrome - develop for the web (Cannot find Chrome executable at .\Google\Chrome\Application\chrome.exe)
! Cannot find Chrome. Try setting CHROME_EXECUTABLE to a Chrome executable.
[✓] Visual Studio - develop Windows apps (Visual Studio Community 2022 17.12.3)
[✓] Android Studio (version 2023.1)
[✓] VS Code (version 1.95.2)
[✓] Connected device (2 available)
[✓] Network resources
! Doctor found issues in 1 category.
Version
8.11.0
Steps to Reproduce
C:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Microsoft\VC\v170\BuildCustomizations\marmasm.targets(56,5): error MSB8076: Only ARM, ARM64 and ARM64EC platforms are supported. [C:\Users\nowfal\VaasITS\edr-pos-userapp-flutter\build\windows\x64_deps\sentry-native-build\crashpad_build\util\crashpad_util.vcxproj]
Building Windows application...                                    25.0s
Build process failed.
Macbook m2 Pro with parallel desktop windows 11 arm64
Expected Result
It was working fine , after upgrade the sdk, got this error,
Actual Result
C:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Microsoft\VC\v170\BuildCustomizations\marmasm.targets(56,5): error MSB8076: Only ARM, ARM64 and ARM64EC platforms are supported. [C:\Users\nowfal\VaasITS\edr-pos-userapp-flutter\build\windows\x64_deps\sentry-native-build\crashpad_build\util\crashpad_util.vcxproj]
Building Windows application...                                    25.0s
Build process failed.
Are you willing to submit a PR?
None

v8.11 brought Windows native error & obfuscation support (https://github.com/getsentry/sentry-dart/pull/2286, https://github.com/getsentry/sentry-dart/pull/2426)
It seems like you're building ARM64 but it doesn't get propagated and something actually builds as x64.
Can you update the Steps to reproduce to include the build command you're using?
Also, it seems like sentry-native currently doesn't support Windows ARM64, see https://github.com/getsentry/sentry-native/issues/880 - we may need to make adjustment here to exclude the cmake target in this case.

Same issue here. The same setup as nowfalsalahudeen. The command is just Flutter's debug or build command:
flutter run windows

I'm not sure if it's an 8.11.0 issue or a general one though. Because downgrading Sentry did not fix the issue. But I can confirm removing Sentry from the project does fix the issue and the build starts working again.

@Ali-Toosi which versions did you downgrade to where it doesnt work?

@buenaflor Actually sorry it does work with 8.10.0. I thought I had downgraded but I hadn't. 8.10.0 runs, 8.11.0 and 8.11.1 don't.
Let me know if you'd like me to try another version.

Thank you! 8.11.2 working.

Just released v8.11.2 disabled the native crash reporting by default. If you'd like to try it out and provide feedback (since Windows Arm64 is not very common, the feedbeck would be very valuable), you can try enabling a crash handling backend by setting an env var:
(the following code is for powershell, assuming that's what you use on Windows)
$env:SENTRY_NATIVE_BACKEND = 'breakpad'
flutter build windows

You could read about various backends in https://docs.sentry.io/platforms/native/advanced-usage/backend-tradeoffs/ but TLDR is that crashpad is preferrable unless you cannot use it, e.g. because you cannot ship an additional executable along your app, or like in this case, it doesn't work for the platform you're building for (yet). If that's the case, there's breakpad and inproc, which both run in the same process have some adventages over each other. If you don't care about these (they're described in docs), breakpad would be the next best thing after crashpad.

One more note: in sentry_flutter v9, we're likely to enable native crash reporting again, with breakpad as default for ARM64 unless we can make crashpad work.


🛠 - Cover components with harnesses

🚀 Feature request
To make it easy to test Taiga UI components and apps that use them we should provide component harnesses for all our components.

This issue is rather big and it's fine to make many smaller PRs covering single component.

I'm interested in gaining some experience with developing component harnesses so I'd be happy to contribute to this.
However, I'm not sure whether @zarghamkhandev is working on every one of them or tracking progress somehow. Please let me know if I can take one of the components 👀

I'm interested in gaining some experience with developing component harnesses so I'd be happy to contribute to this.
However, I'm not sure whether @zarghamkhandev is working on every one of them or tracking progress somehow. Please let me know if I can take one of the components 👀

I believe he's not working on any more harnesses at the moment so just pick a component you'd like to try and let us know here in a comment so nobody else takes it.

@alvaromartmart feel free to take any component, I will take input components next. 🚀

I'll start with the action component since it looks like a simple one, plus it doesn't have unit tests so I'll add them using the harness

FYI I'll create a harness for the filter component

Instead of input, I will take toggle component next.

I'll write harness for accordion component next.

@waterplea is it actual now?
I suspect more efficient testing now is to use playwright or cypress

@waterplea is it actual now? I suspect more efficient testing now is to use playwright or cypress

my 2cents: they serve different purposes - component harnesses are useful for developers consuming Taiga UI in their unit/integration tests. Plus playwright doesn't (yet) support angular component testing.

@alvaromartmart maybe, but lately I don't write unit tests anymore, as all issues are closed by playwright e2e and cypress component testing

@alvaromartmart maybe, but lately I don't write unit tests anymore, as all issues are closed by playwright e2e and cypress component testing

I understand that, by are you speaking as a taiga-ui maintainer or as an end user?
As an end user of this UI library (or any other) I personally find it very convenient that the library provides component testing harnesses so my tests can be more robust to internal implementation changes of that libraries (since the harnesses should in theory provide me an up to date API to interact with them).

Sure, but I see that there is practically no one to support @taiga-ui/testing package and add new harnesses to it


Allow userdata to contain gluon values without reference cycles

I'm using gluon to add some user functionality to a program, like this:
process_file {
  // do some built in processing
  // IF no script was specified at the command line, stop here.
  // create new gluon vm
  // create user library
  // compile and run gluon script => gluon script exports some callbacks
  // repeatedly call the gluon callbacks
  // vm should be freed at this point
}

When process_file is called for >100 files without a script, the memory usage stays at ~10MB all the time (measured using the time command). When a script is specified, the memory usage at the end of the program (according to valgrind) is >100MB. When the 100 files are specified multiple times at the command line, the memory usage rises accordingly. i.e., 4 times these 100 files, 400MB memory used at the end.
Where to look for the memory leak?

I found one leak when creating new child threads which I found by attaching visual studio and checked the callstack of any allocation that weren't freed between calls. I have never used any such tool on linux or OSX but I assume there would be some equivalent tool to check it.
Alternatively if you are able to get an easy reproduction which I can check I can take a look at it.

I've created a demo project: https://github.com/hce/gluon-memleak
Just clone it, initialize the submodule and run "cargo run". It'll start eating up more and more memory over time.

I've narrowed it down a bit: The moment a callback function is added does the memory leak start (in my example in src/demo.glu, lines 8 and 9). It's not important whether the callbacks are actually used (commenting lines 68 to 73 in src/main.rs has no effect).
I suspect there is a cyclic reference somewhere, causing the memory allocated by the Arc never to be freed.

Yep, the OwnedFunction is effectively an Arc and so creates a cycle since it ends up being owned by its own garbage collector. Probably need to add a weak pointer abstraction or a way to work with unrooted values. Working with unrooted values would be ideal but I only know how to do it unsafely currently. Need to think about this for a little.

Great! In the meantime, I've worked around it by manually clearing the Vec before exiting the function, which means I have to take into account all abnormal paths. No big deal in my concrete case. Using the drop destructor doesn't work for obvious reasons. :-)

Correction: My workaround didn't work as intended because for each call to the callback, some additional memory is allocated that isn't freed until the Vec is cleared. Which may or may not happen often enough, depending on how many times the callback function is called per run.
So a fix for this would be really appreciated. :-)

I will try to get something working soon, been busy with non open source stuff and have been hacking away a bit on an async jpeg decoder.

How do you asynchronously decode a jpeg? :)

It would get it's input from, say https://docs.rs/tokio-codec/0.1.1/tokio_codec/trait.Decoder.html instead of https://doc.rust-lang.org/std/io/trait.Read.html or a &[u8] with the full data.

Working on a solution for this based on https://github.com/Manishearth/rust-gc.

@hce If you want you can try the branch at https://github.com/gluon-lang/gluon/pull/752 . The only change you should need to do is to derive(Trace) on your structs (Traverseable/Trace was implicitly implemented by Userdata before).

Thanks a lot! I'll try it right away. :)

Thanks! Now I run into a problem with strings:
10 | #[derive(Debug, Trace, Userdata, VmType)]
|                 ^^^^^ the trait gluon_vm::gc::Trace is not implemented for std::string::String
Anything I forgot to do?

Thanks, testing again...

Missed an impl for String, updated the branch.
I did realize that the current impl for Mutex/RwLock is not sound since it allows an unrooted value to be moved out and cause use after free and any values stored in a lock after the value was allocated will not be unrooted either (causing a cycle). Need to add a wrapper around those types which temporarily roots the value while the lock is alive and unroots it again when the lock drops.
Without that wrapper you would still see a cycle so I'd wait for those before testing again. Should be pretty simple to add at least.

Okay, thanks for the heads-up. Ready to test any time. :-)

I'm getting an interesting error now when running gluon in webassembly: (I'll investigate some more, just posting early in case you know immediately what the cause is)
Uncaught RuntimeError: unreachable
at __rust_start_panic (wasm-function[5889]:1)
at rust_panic (wasm-function[5879]:31)
at _ZN3std9panicking20rust_panic_with_hook17h12b7239ed4348eaeE (wasm-function[5874]:315)
at _ZN3std9panicking11begin_panic17h6cf1faf01030b024E (wasm-function[351]:40)
at ZN72$LT$std..sync..mutex..Mutex$LT$T$GT$$u20$as$u20$gluon_vm..gc..Trace$GT$6unroot17h53668540057dc381E (wasm-function[276]:161)
at ZN11caibertrans2ct30_IMPL_TRAVERSEABLE_FOR_Context74$LT$impl$u20$gluon_vm..gc..Trace$u20$for$u20$caibertrans..ct..Context$GT$6unroot17h53744739af4e1007E (wasm-function[301]:11)
at _ZN8gluon_vm2gc2Gc17alloc_and_collect17h3cc9aa271cc31674E (wasm-function[48]:436)
at ZN45$LT$T$u20$as$u20$gluon_vm..api..Pushable$GT$4push17hbf10c49b4719de11E (wasm-function[176]:72)
at _ZN8gluon_vm3api8function65Function$LT$T$C$fn$LP$A$C$$u20$B$C$$u20$C$RP$$u20$.$GT$$u20$R$GT$4call17h3d1c2af0e6b4c88cE (wasm-function[77]:308)
at ZN4core3ops8function5impls79$LT$impl$u20$core..ops..function..FnMut$LT$A$GT$$u20$for$u20$$RF$mut$u20$F$GT$8call_mut17h7b09c81d274ed368E (wasm-function[180]:3682)

I'm getting an interesting error when running in with the latest gluon in webassembly: (I'll investigate some more but posting early in case you see immediately what the problem is)
Uncaught RuntimeError: unreachable
at __rust_start_panic (wasm-function[5889]:1)
at rust_panic (wasm-function[5879]:31)
at _ZN3std9panicking20rust_panic_with_hook17h12b7239ed4348eaeE (wasm-function[5874]:315)
at _ZN3std9panicking11begin_panic17h6cf1faf01030b024E (wasm-function[351]:40)
at ZN72$LT$std..sync..mutex..Mutex$LT$T$GT$$u20$as$u20$gluon_vm..gc..Trace$GT$6unroot17h53668540057dc381E (wasm-function[276]:161)
at ZN11XXX2ct30_IMPL_TRAVERSEABLE_FOR_Context74$LT$impl$u20$gluon_vm..gc..Trace$u20$for$u20$XXX..ct..Context$GT$6unroot17h53744739af4e1007E (wasm-function[301]:11)
at _ZN8gluon_vm2gc2Gc17alloc_and_collect17h3cc9aa271cc31674E (wasm-function[48]:436)
at ZN45$LT$T$u20$as$u20$gluon_vm..api..Pushable$GT$4push17hbf10c49b4719de11E (wasm-function[176]:72)
at _ZN8gluon_vm3api8function65Function$LT$T$C$fn$LP$A$C$$u20$B$C$$u20$C$RP$$u20$.$GT$$u20$R$GT$4call17h3d1c2af0e6b4c88cE (wasm-function[77]:308)
at ZN4core3ops8function5impls79$LT$impl$u20$core..ops..function..FnMut$LT$A$GT$$u20$for$u20$$RF$mut$u20$F$GT$8call_mut17h7b09c81d274ed368E (wasm-function[180]:3682)

On the local machine with a native build, my code seems to be running into a deadlock now. I'll look into it.

Okay, I'll just wait for your final modifications. :-)

Added gluon::vm::gc::Mutex!

I'm getting an interesting error when running in with the latest gluon in webassembly: (I'll investigate some more but posting early in case you see immediately what the problem is)

The unreachable is puzzling. Couldn't find anything in the Mutex implementation for wasm. Might be fixed by using gc::Mutex maybe...


Comparison with other systems like Toshi/Tantivy

Are there any marketing materials that compare with other systems like Toshi/Tantivy in terms of features and performance?

Hi @rrjanbiah ,
There is no such marketing material, but Bleve, Lucene, and Tantivy's benchmarks have been published at the following URL:
https://mosuka.github.io/search-benchmark-game/
https://github.com/mosuka/search-benchmark-game

@mosuka Thank you so much for sharing honest comparison that explains Bleve (hence Blast) is slowest

@rrjanbiah I also create search server written in Rust. But it is in proof of concept stage.
https://github.com/bayard-search/bayard

@mosuka Wow! Thanks for sharing. You may add marketing material by comparing it against Toshi... that will be immensely helpful

FWIW, @mosuka You may also want to add @meilisearch and @typesense in the benchmark


[WIP] Use hydra for configuration

This PR involves experimental code for hydra's next release
Particulary, I've explored the ways to make use of TargetConf and ConfigStore for defining albumentation's transforms
The peddet/transforms.py has the original transforms definition and has been provided for the reference.
The main code for the review has been defined inside conf/augmentations.py
When I run the test_main.py, the hydra is throwing following error:
Traceback (most recent call last):
  File "/home/kshitij/anaconda3/envs/pytorch/lib/python3.8/site-packages/hydra/_internal/utils.py", line 203, in run_and_report
    return func()
  File "/home/kshitij/anaconda3/envs/pytorch/lib/python3.8/site-packages/hydra/_internal/utils.py", line 352, in <lambda>
    lambda: hydra.run(
  File "/home/kshitij/anaconda3/envs/pytorch/lib/python3.8/site-packages/hydra/_internal/hydra.py", line 98, in run
    cfg = self.compose_config(
  File "/home/kshitij/anaconda3/envs/pytorch/lib/python3.8/site-packages/hydra/_internal/hydra.py", line 507, in compose_config
    cfg = self.config_loader.load_configuration(
  File "/home/kshitij/anaconda3/envs/pytorch/lib/python3.8/site-packages/hydra/_internal/config_loader_impl.py", line 148, in load_configuration
    return self._load_configuration(
  File "/home/kshitij/anaconda3/envs/pytorch/lib/python3.8/site-packages/hydra/_internal/config_loader_impl.py", line 250, in _load_configuration
    cfg = self._merge_defaults_into_config(
  File "/home/kshitij/anaconda3/envs/pytorch/lib/python3.8/site-packages/hydra/_internal/config_loader_impl.py", line 797, in _merge_defaults_into_config
    hydra_cfg = merge_defaults_list_into_config(hydra_cfg, user_list)
  File "/home/kshitij/anaconda3/envs/pytorch/lib/python3.8/site-packages/hydra/_internal/config_loader_impl.py", line 769, in merge_defaults_list_into_config
    merged_cfg = self._merge_config(
  File "/home/kshitij/anaconda3/envs/pytorch/lib/python3.8/site-packages/hydra/_internal/config_loader_impl.py", line 707, in _merge_config
    raise MissingConfigException(msg, new_cfg, options)
hydra.errors.MissingConfigException: Could not load aug/to_tensor

@omry how do I print the entire config group and not just the default ones?

@omry how do I print the entire config group and not just the default ones?

You don't.
you can compose a config an print it with --cfg job


Importer - 'DefaultPipeline' object has no attribute 'temppath'

Description
Upon discovering a new scanned pdf in the import directory, the worker throws the error below and does not import the file (does not appear in inbox). However, the file is deleted from the import folder as though it were successfully processed.
[2020-11-28 02:52:16,052: ERROR/ForkPoolWorker-2] LOCAL importer: 'DefaultPipeline' object has no attribute 'temppath'
Expected
The file is successfully imported or the file is at least left in the import directory to be tried again on the next loop (basically, don't eat my files if things break).
Info:

OS: Ubuntu 20.04 LTS
Database: SQLite
Papermerge Version: git master 69592d4 (I like to live on the edge)

@dgz, thank you for heads up! Pipelines feature is couple of days new addition to master branch ;)


add css

@kriesse tell me if this works for you for now: https://github.com/juliangruber/dat-desktop#styles

shall i add stuff like life reloading css?

I'm good with the current setup 👍


Error: "Requested value 'memberJoinedBoard' was not found" thrown when calling TrelloFactory.Me(TrelloAuthorization auth)

Problem
For some Users calling TrelloFactory.Me(TrelloAuthorization auth) throws "Requested value 'memberJoinedBoard' was not found."
Unfortunately this is only (but consistently)  affects some users.
(I can't share the specify user details here (security!!!), but if you contact me we can set up a call or something)
To Reproduce
var auth= new TrelloAuthorization {
    AppKey = "TheOAuthKey",
    UserToken = "The users.AccessToken"
 };

var trelloMember = await _trelloFactory.Me(auth);  // <- Internally throws  "Requested value 'memberJoinedBoard' was not found."

 await trelloMember.Boards.Refresh()
 return trelloMember.Boards: // <- this is empty when it should have values

This workaround succeeds (but requires reflection)

var auth= new TrelloAuthorization {
    AppKey = "TheOAuthKey",
    UserToken = "The users .AccessToken"
 };

 var id = UseReflectionToCall_Trello_Me_GetId(auth);
 Member trelloMember =  (Member)trelloFactory.Member(id, auth);

Expected behavior
Call to _trelloFactory.Me(auth); should succeed, and or fail gracefully and still allow the use of features which don't depend on 'memberJoinedBoard'
Screenshots

Message: Requested value 'memberJoinedBoard' was not found.

System.Enum+EnumResult.SetFailure(ParseFailureKind failure, String failureMessageID, Object failureMessageFormatArgument):36
System.Enum.TryParseEnum(Type enumType, String value, Boolean ignoreCase, EnumResult& parseResult):397
System.Enum.Parse(Type enumType, String value, Boolean ignoreCase):16

Manatee.Json.Serialization.Internal.Serializers.EnumNameSerializer.Deserialize(DeserializationContext context):167
Manatee.Json.Serialization.Internal.Serializers.DefaultValueSerializer.TryDeserialize(ISerializer serializer, DeserializationContext context):103
Manatee.Json.Serialization.Internal.Serializers.SchemaValidator.TryDeserialize(ISerializer serializer, DeserializationContext context):110
Manatee.Json.Serialization.JsonSerializer.Deserialize(DeserializationContext context):26
Manatee.Json.Serialization.Internal.Serializers.NullableSerializer._Decode[T](DeserializationContext context):57

Desktop (please complete the following information):

OS: Win 10
.Net Target: net4.7.2 and .net6.0
Version: 4.4.3

Additional context
Unfortunately this is only (but consistently)  affects some users.
(I can't share the specify user details here (security!!!) but if you contact me, we can set up a call or something)

Could you try and see if the issue is indeed with the Manatee.Trello or something internally @ Trello side with the specific users using on of the other C# Trello APIs out there
Example: Does the TrelloDotNet nuget package fail in the same way by calling:
TrelloDotNet.TrelloClient client = new TrelloDotNet.TrelloClient("apiKey", "token");

Member trelloMember = await client.GetTokenMemberAsync();
List<Board> boards = await client.GetBoardsForMemberAsync(trelloMember.Id);

or the easier way in that API
TrelloDotNet.TrelloClient client = new TrelloDotNet.TrelloClient("apiKey", "token");
var myBoards = await client.GetBoardsCurrentTokenCanAccessAsync();

If things also fail there, the fix properly needs to come from the Trello team directly (corrupt user perhaps)
If not, a fix is a bit more tricky as Manatee.Trello seems to not really be maintained anymore ☹

...so getting the source-code and fixing yourself (+ send PR if anyone can approve) might be the only way forward to getting this fixed in Manatee.Trello 😔

This is indeed likely an issue with this library.
https://github.com/cdmdotnet/Manatee.Trello/blob/master/Manatee.Trello/ActionType.cs#L342
Action and notification types are "enumerated." I did this thinking strong typing would be better, but in hindsight I think a simple string would have sufficed.
It seems this is an action or notification type that Trello is now emitting that it didn't before.  It will need to be added in order to get this working.

Hi. I created the lib and, after archiving it myself, I transferred it to the current owner at their request.  I expected that they'd pick up development. Sadly, it seems they've decided to let it languish, but I can't speak to why.

OK, Lets hope someone is around to fix/accept a PR from you then 🤞


Add PhotoPrism - A self hosted google photos alternative

🚀 App name
PhotoPrism
📝 App description
PhotoPrism® is an AI-Powered Photos App for the Decentralized Web.
It makes use of the latest technologies to tag and find pictures automatically without getting in your way. You can run it at home, on a private server, or in the cloud.
✅ Check list

[x] App manifest (app.json).
[x] App metadata (app.md).
[x] My app icon is consistent with the current design
[x] Screenshots.
[x] I executed the validate script and it didn't fail.

fixing stuff rn
update - fixed (for now, ig it will be good enough)

Seems complete and validation runs fine.
Ty


Problems with ambiguous album titles.

The issue seems to be one that involves an album that is known by more than one name, and labeled so in spotify. So Metallica (also known as The Black Album but not referred to as such) loads lyrics fine, but David Bowie's 2nd album doesn't load any lyrics as it's referred to as "David Bowie (aka Space Oddity)". I know this is kind of an unusual situation as not many album titles have this ambiguity, but there may be a need for some code to help navigate around these unusual special cases.

The services are only queried with artist and song title, so album names don't have an impact on finding lyrics.   In this case the problem is from the fact that the song is Unwashed And Somewhat Slightly Dazed - 2015 Remastered Version, so the "- 2015 Remastered Version" is throwing it off.  @emilioastarita, since these kind of modifiers are almost always at the end we could maybe retry failures repeatedly cutting off the last word, if we don't mind upping our worst case API call count by a factor of the length of song titles.  I guess it depends on the frequency of this kind of modified case.  I would be less inclined to try to special case against dashes or parentheses etc. because then we resign ourselves to keep chasing these bugs forever, because this kind of stuff is in like a million different forms


server name not needed now that user has hostname information.

Not sure if we use server_name else where, but I checked central and central-frontend and didn't see it.

@yanokwa, it looks like ESLint is failing in CircleCI.


Zaxno Panel monitoring outage

Hi! Major mess up here. Just thought I'd inform anyone who might be looking around that for a period of 6 months, Zaxno Panel was not properly monitored due to an expired token.

Hi! Major mess up here. Just thought I'd inform anyone who might be looking around that for a period of 6 months, Zaxno Panel was not properly monitored due to an expired token.


Issue with pairwise conflict detection

I found an issue in the asas module where for a conflicting aircraft pair (a, b) the state-based conflict detection only detects the conflict from one 'side', i.e. it detects a conflict for (b, a) but not for (a, b). This issue seems to have a bigger impact at higher latitudes, and results in 'single-sided' resolution manoeuvres.
The root cause seems to be in the following code block of StateBasedCD.py (and possibly also the equivalent casas implementation):
    # qdlst is for [i,j] qdr from i to j, from perception of ADSB and own coordinates
    qdr, dist = geo.qdrdist_matrix(np.mat(ownship.lat), np.mat(ownship.lon),
                                   np.mat(intruder.lat), np.mat(intruder.lon))

    # Convert back to array to allow element-wise array multiplications later on
    # Convert to meters and add large value to own/own pairs
    qdr = np.array(qdr)
    dist = np.array(dist) * nm + 1e9 * I

    # Calculate horizontal closest point of approach (CPA)
    qdrrad = np.radians(qdr)
    dx = dist * np.sin(qdrrad)  # is pos j rel to i
    dy = dist * np.cos(qdrrad)  # is pos j rel to i

 ...

    tcpa = -(du * dx + dv * dy) / dv2 + 1e9 * I

    # Calculate distance^2 at CPA (minimum distance^2)
    dcpa2 = np.abs(dist * dist - tcpa * tcpa * dv2)

Due to the curvature of the Earth the qdrs from a->b and b->a differ by an amount that is not equal to 180 degrees. When calculating the approximate cartesian distance components dx and dy between aircraft this means that for each 'side' of the pair a different sine and cosine are used. As a result the approximated values tcpa and dcpa2 for the pair (a, b) can differ significantly from those of the pair (b, a).
In my BlueSky fork I have replaced the qdr value from qdrdist_matrix() with that of kwikdistqdr_matrix (see: RubenJacobse/bluesky@8aec61183fa7b3eff3fbeb501319216411884018). Since kwikdist uses a cartesian approximation the qdrs a->b and b->a differ by 180 degrees.
    # qdlst is for [i,j] qdr from i to j, from perception of ADSB and own coordinates
    _, dist = geo.qdrdist_matrix(np.mat(ownship.lat), np.mat(ownship.lon),
                                 np.mat(intruder.lat), np.mat(intruder.lon))

    # qdrdist_matrix() uses WGS84 which means that qdr 1->2 is not the opposite of
    # qdr 2->1 which means their sine and cosine are different. This gives problems
    # in calculating dx and dy between pairs, since now dx,dy 1->2 are different
    # magnitudes from dx,dy 2->1 ...
    # Using kwikqdrdist_matrix() ensures that these relative distance approximations
    # are expected to remain within small margin of each other.
    qdr, _ = geo.kwikqdrdist_matrix(np.mat(ownship.lat), np.mat(ownship.lon),
                                    np.mat(intruder.lat), np.mat(intruder.lon))

It looks like this fix solves (or at least reduces) the issue of one-sided detection, but it's not a very elegant solution... I'm interested in hearing other peoples' opinions on this!
Example scenario files:
confpair_issue_higher_latitude.scn.txt
confpair_issue_near_equator.scn.txt

The solution actually might be to only use flat-earth estimates, as state-based CD is already based on a flat-earth assumption.

The interesting thing is that when I do this (use qdr, dist = geo.kwikqdrdist_matrix()) it seems that conflicts are never detected at all (regardless of latitude)...

This was due to a scaling bug. Fixed in 50362c9.

I would say that the combination of the above fix and only using the kwikqdrdist_matrix() function in StateBasedCD.py solves this issue.
Created #198 to merge this into master.


No notification banner for all surveys not triggered initially with ImmediateTrigger()

Device Hardware / Emulator and OS

Hardware: Motorola moto g play - 2023
SDK: Android API level 31
App version: 2.0
App deployment mode: local

Describe the bug
I have multiple survey tasks in the protocol, and most of them utilize either the RecurrentScheduledTrigger() or the RandomRecurrentTrigger(). While the surveys are triggered, there are no notification banners for them. The only trigger that gives me a notification banner is the ImmediateTrigger(). I have all notifications allowed and each of the RPAppTasks has the notification parameter set to true.
To Reproduce

Create a LocalStudyProtocolManager that implements the StudyProtocolManager (I based this off of the code from the CARP's Pulmonary App's study_protocol_manager.dart file).
In the LocalStudyProtocolManager, add a task (ours is in the form of a survey) that is triggered by an ImmediateTrigger().
Do the same as step 2, but with RandomRecurrentTrigger() and RecurrentScheduledTrigger().
In /blocs/sensing.dart, on line 112, change "LocalResourceManager()" to "LocalStudyProtocolManager()"
Run locally.

Expected behavior
I expected all three tasks to produce a notification banner.
Actual behavior
Only the task triggered by ImmediateTrigger() gives me a notification banner. The rest of the tasks are triggered but do not notify me.

Hi @Z-Setiadi,
I have also experienced this issue with the RecurrentScheduledTrigger() and am personally using the CronScheduledTrigger which I have found to work consistently with notifications as well. Nonetheless this should be investigated.
Could you provide me with an example of a protocol you used to produce this behavior?

Here is an example of the protocol:
class LocalStudyProtocolManager implements StudyProtocolManager {
  @override
  Future<void> initialize() async {}

  @override
  Future<SmartphoneStudyProtocol> getStudyProtocol(String studyId) async {
    SmartphoneStudyProtocol protocol = SmartphoneStudyProtocol(
      name: 'blank',
      ownerId: 'blank',
    );
    protocol.studyDescription = StudyDescription(
        title: 'blank',
        description:
            "???",
        purpose:
            "???",
        responsible: StudyResponsible(
          id: 'blank',
          title: 'blank',
          address: 'blank',
          affiliation: 'blank',
          email: 'blank',
          name: 'blank',
        ));

    // Define the data end point , i.e., where to store data.
    // This example app only stores data locally in a SQLite DB
    protocol.dataEndPoint = SQLiteDataEndPoint();

    // Define which devices are used for data collection.
    Smartphone phone = Smartphone();
    protocol.addPrimaryDevice(phone);

    SamplingPackageRegistry().register(SurveySamplingPackage());

    // task triggered by ImmediateTrigger()
    // this should produce a notification banner
    protocol.addTaskControl(
        ImmediateTrigger(),
        RPAppTask(
          type: SurveyUserTask.SURVEY_TYPE,
          title: surveys.selfReport.title,
          description: surveys.selfReport.description,
          minutesToComplete: surveys.selfReport.minutesToComplete,
          notification: true,
          rpTask: surveys.selfReport.survey,
        ),
        phone);

    // task triggered by RecurrentScheduledTrigger()
    // this currently does not produce a notification banner
    protocol.addTaskControl(
        RecurrentScheduledTrigger(
            type: RecurrentType.daily,
            time: const TimeOfDay(hour: 8)),
        RPAppTask(
          type: SurveyUserTask.SURVEY_TYPE,
          title: surveys.morning.title,
          description: surveys.morning.description,
          minutesToComplete: surveys.morning.minutesToComplete,
          notification: true,
          rpTask: surveys.morning.survey,
          expire: const Duration(hours: 1),
        ),
        phone);

    // task triggered by RandomRecurrentTrigger()
    // this currently does not produce a notification banner
    protocol.addTaskControl(
        RandomRecurrentTrigger(
          startTime: const TimeOfDay(hour: 9),
          endTime: const TimeOfDay(hour: 11),
          minNumberOfTriggers: 1,
          maxNumberOfTriggers: 1,
        ),
        RPAppTask(
          type: SurveyUserTask.SURVEY_TYPE,
          title: surveys.dailyReport.title,
          description: surveys.dailyReport.description,
          minutesToComplete: surveys.dailyReport.minutesToComplete,
          notification: true,
          rpTask: surveys.dailyReport.survey,
          expire: const Duration(hours: 1),
        ),
        phone);
}

And here is an example of a surveys file to use for this protocol:
final surveys = _Surveys();

class _Surveys {
  final Survey _morning = _MorningSurvey();
  Survey get morning => _morning;

  final Survey _dailyReport = _DailyReport();
  Survey get dailyReport => _dailyReport;

  final Survey _selfReport = _SelfReport();
  Survey get selfReport => _selfReport;
}

/// An interface for an survey from the RP package.
abstract class Survey {
  /// The title of this survey.
  String get title;

  /// A short description (one line) of this survey
  String get description;

  /// How many minutes will it take to do this survey?
  int get minutesToComplete;

  /// The survey to fill out.
  RPTask get survey;
}

class _MorningSurvey implements Survey {
  @override
  String get title => "Morning Survey";
  @override
  String get description => "A short morning check-in.";
  @override
  int get minutesToComplete => 5;

  final RPChoiceAnswerFormat _yesNo = RPChoiceAnswerFormat(
      answerStyle: RPChoiceAnswerStyle.SingleChoice,
      choices: [
        RPChoice(text: "Yes", value: 1),
        RPChoice(text: "No", value: 2),
      ]);
  RPNavigableOrderedTask get survey => RPNavigableOrderedTask(
    identifier: "morning",
    steps: [
      RPQuestionStep(
        identifier: "test",
        title: "Did you sleep well?",
        answerFormat: _yesNo,
      ),
    ],
  )
}

class _DailyReport implements Survey {
  @override
  String get title => "Daily Report";
  @override
  String get description => "A short daily check-in.";
  @override
  int get minutesToComplete => 5;

  final RPChoiceAnswerFormat _yesNo = RPChoiceAnswerFormat(
      answerStyle: RPChoiceAnswerStyle.SingleChoice,
      choices: [
        RPChoice(text: "Yes", value: 1),
        RPChoice(text: "No", value: 2),
      ]);
  RPNavigableOrderedTask get survey => RPNavigableOrderedTask(
    identifier: "daily",
    steps: [
      RPQuestionStep(
        identifier: "test",
        title: "Did you sleep well?",
        answerFormat: _yesNo,
      ),
    ],
  )
}

class _SelfReport implements Survey {
  @override
  String get title => "Self Report";
  @override
  String get description => "A short self check-in.";
  @override
  int get minutesToComplete => 5;

  final RPChoiceAnswerFormat _yesNo = RPChoiceAnswerFormat(
      answerStyle: RPChoiceAnswerStyle.SingleChoice,
      choices: [
        RPChoice(text: "Yes", value: 1),
        RPChoice(text: "No", value: 2),
      ]);
  RPNavigableOrderedTask get survey => RPNavigableOrderedTask(
    identifier: "morning",
    steps: [
      RPQuestionStep(
        identifier: "test",
        title: "Did you sleep well?",
        answerFormat: _yesNo,
      ),
    ],
  )
}


Grievance Procedure

I propose that the grievance procedure be brought into the rules, so that it can come into the source control of the github repository and be part of the consultation. It has already become relevant to discussions, including the debate on inclusion of UK law.
Arguably, the greivance procedure already contains its own rules separate from the current rules. For example, it says action will be taken against people who "demonstrate unwillingness to address behaviour which has caused offence, harm or distress to another member or members; or has threatened the safety of the Hackspace". I would suggest amalgamation with the existing rules where possible.

I was actually thinking about this, Does it make sense to have separate "rules" and a "Grevance procedure"
As far as I can see the grievance procedure is effectively the only mention of any enforcement action available to the trustees (or membership) for breach of the rules, and the wording seems to give significant wriggle room,
It may be worth also considering if we want to look at the Articles and constitution at the same time (since they are the base that underlies all the rules and enforcement of them)

The articles and Constitution can only be changed at an agm
On 26 Dec 2015 15:29, "drazziweht"<EMAIL_ADDRESS>wrote:

I was actually thinking about this, Does it make sense to have separate
"rules" and a "Grevance procedure"
As far as I can see the grievance procedure is effectively the only
mention of any enforcement action available to the trustees (or membership)
for breach of the rules, and the wording seems to give significant wriggle
room,
It may be worth also considering if we want to look at the Articles and
constitution at the same time (since they are the base that underlies all
the rules and enforcement of them)
—
Reply to this email directly or view it on GitHub
https://github.com/NottingHack/rules/issues/20#issuecomment-167334287.

I think amending the articles etc at this stage would be a bridge too far. I only suggest taking on the grievance procedure as well since it appears to overlap with the rules.

Geeksareforlife said.
"The articles and Constitution can only be changed at an agm"
Certainly the case for the articles.
Where is the restriction on changing the constitution specified ?

I now see however that there is a "SafeSpaces" policy which again appears to overlap with the rules. Do you think that we should bring that into the github repository? Giving it a brief read over, I can see a few things that I would suggest changing there.

Everything you need to know to not be thrown out of the hackspace should really be in one place, having a Grevance Policy, a safe spaces Policy, a set of rules, a constitution, a religion in the space policy, a sexual harassment policy and a no colouring outside the lines policy makes it very difficult to keep up (ok I may have made one of them up, maybe more than one, are you sure which ones ?)

The restriction for the Constitution is in the Constitution.
I have no objections to bringing the additional policies and procedures
into this GitHub
On 26 Dec 2015 16:21, "drazziweht"<EMAIL_ADDRESS>wrote:

Everything you need to know to not be thrown out of the hackspace should
really be in one place, having a Grevance Policy, a safe spaces Policy, a
set of rules, a constitution, a religion in the space policy, a sexual
harassment policy and a no colouring outside the lines policy makes it very
difficult to keep up (ok I may have made one of them up, maybe more than
one, are you sure which ones ?)
—
Reply to this email directly or view it on GitHub
https://github.com/NottingHack/rules/issues/20#issuecomment-167340700.

I agree, Chris. As I think I said elsewhere, it would be helpful if the "rules" tell a member everything that they ought to know about their responsibilities and duties in the Space.
However, I still disagree with you regarding the inclusion of the constitution. That sets out the method by which trustees are elected and then become directors of the limited company, when elections have to be called, how they are run and so forth. I don't see that they come under the same category of "rules", at least, they are not rules for the members (although they are, kind of, rules for the trustees themselves).

Unless there is any other objections, I will attempt my first git-fu and try to create a pull request to bring the greivance procedure and SafeSpaces policy into the rules. Watch this space!

Was not suggesting the articles + consitution should be part of the rules directly, but maybe an introduction section in the rules which was something like.
The Nottingham Hackspace is governed by a set of documents which include the Articles of association that cover the basic legal status of the hackspace, the constitution which covers how the trustees are elected and the powers of trustees and these rules which cover the day to day activitys of members and how the hackspace operates.
Just tidies it up and links everything into one top level document at least by reference so you can just say "The rules" and it covers everything.

As a proposal, Chris, I'm pretty neutral about it. I would have imagined that information regarding the constitution, rules, legal status etc along with relevant links would go on a relevant page of the website: perhaps the homepage of the wiki for example.

These won't stand alone, they will go in the member's guide, which is also
on GitHub
On 26 Dec 2015 16:53, "rlp10"<EMAIL_ADDRESS>wrote:

As a proposal, Chris, I'm pretty neutral about it. I would have imagined
that information regarding the constitution, rules, legal status etc along
with relevant links would go on a relevant page of the website: perhaps the
homepage of the wiki for example.
—
Reply to this email directly or view it on GitHub
https://github.com/NottingHack/rules/issues/20#issuecomment-167346039.

I propose that we close this issue now that I've created a pull request to include the two policies.

If you add
closes #20
on the next commit you do to the pull request (I have asked you to update the table of contents with the new files) it will close this issue automatically when I merge it!

I have merged the pull request now


Enable project page

We need to enable project site (https://pages.github.com/), for user-friendly read the HTML format of spec.

After you enable it, it will look like https://halton.github.io/node-realsense/.

To enable it I need to choose a source location for the HTML. Would you like it to be the /docs folder or gh_pages branch? Master branch is another option but I don't think it applies here.

This is how my setting looks like.


Can't get texts to appear with FrameIt framed output

Question Checklist

[x] Updated fastlane to the latest version
[x] I read the Contribution Guidelines
[x] I read docs.fastlane.tools
[x] I searched for existing GitHub issues

Question Subject
FrameIt
Question Description
I can't get text to appear on my FrameIt framed screenshots however FrameIt does add device surrounds.
I use this command...
bundle exec fastlane screenshots --env sfc
From this folder...
/Users/jm/dropbox/code_objc/myapp
My .sfc.env file...
/Users/jm/Dropbox/Code_ObjC/myapp/.env.sfc
SCREENSHOT_PATH="../screenshots/sfc"
SCHEME="my app"
BUNDLE_ID="my bundle"

Here's my fast file...
/Users/jm/Dropbox/Code_ObjC/myapp/fastlane/Fastfile
I'm guessing that the json file should be specified here, but I couldn’t see how to do that?
default_platform(:ios)

platform :ios do
  desc "Generate new localized screenshots"
  lane :screenshots do
    #frame_screenshots(white: true, path: ENV['SCREENSHOT_PATH'])
    frameit(white: true, path: ENV['SCREENSHOT_PATH'])
    #sh "fastlane frameit --env sfc"
  end
end

Here's my Framefile.json, the file seems to be recognised as I got some validation error until I fixed it. However apart from that it does seem to be ignored... I've also tried stripping this file the the essentials, but it doesn't make a difference.
/Users/jm/Dropbox/Code_ObjC/Screenshots/sfc/Framefile.json
{
  "device_frame_version": "latest",
  "default": {
    "keyword": {
      "font": "./fonts/Noteworthy-Bold.ttf"
    },
    "title": {
      "font": "./fonts/Noteworthy-Bold.ttf",
      "color": "#545454"
    },
    "padding": 50,
    "show_complete_frame": false,
    "stack_title" : true,
    "title_below_image": false
  },

  "data": [
    {
      "filter": "main",
      "title": {
        "text": "Discover new and\npopular podcasts",
        "padding": 100
      },
      "keyword": {
        "color": "#d21559",
        "text": "000000"
      }
    },
    {
      "filter": "happycalendar",
      "title": {
        "text": "Keep up to date with\nyour personalised feed"
      },
      "keyword": {
        "color": "#feb909",
        "text": "AAAAAA"
      }
    },
    {
      "filter": "sad",
      "title": {
        "text": "Rich content makes\nthe podcast better"
      },
      "keyword": {
        "color": "#aa4dbc",
        "text": "BBBB"
      }
    }
  ]
}

I've also tried adding string files in my EN-US language folder, but no joy.
Any help appreciated
Thanks in advance.

✅ fastlane environment ✅
Stack

Key
Value

OS
10.13.6

Ruby
2.4.1

Bundler?
false

Git
git version 2.10.1

Installation Source
/usr/local/bin/fastlane

Host
Mac OS X 10.13.6 (17G65)

Ruby Lib Dir
/usr/local/Cellar/ruby/2.4.1_1/lib

OpenSSL Version
OpenSSL 1.0.2l  25 May 2017

Is contained
false

Is homebrew
false

Is installed via Fabric.app
false

Xcode Path
/Applications/Xcode941.app/Contents/Developer/

Xcode Version
9.4.1

System Locale

Variable
Value

LANG
en_GB.UTF-8
✅

LC_ALL

LANGUAGE

fastlane files:
`./fastlane/Fastfile`
# This file contains the fastlane.tools configuration
# You can find the documentation at https://docs.fastlane.tools
#
# For a list of all available actions, check out
#
#     https://docs.fastlane.tools/actions
#
# For a list of all available plugins, check out
#
#     https://docs.fastlane.tools/plugins/available-plugins
#

# Uncomment the line if you want fastlane to automatically update itself
# update_fastlane

before_all do
	ENV["SLACK_URL"] = "https://hooks.slack.com/services/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" # Webhook 	URL created in Slack
end

default_platform(:ios)

platform :ios do
  desc "Generate new localized screenshots"
  lane :screenshots do

    #capture_screenshots(
    #	workspace: "Sad Face Chart.xcworkspace",
    #	scheme: ENV['SCHEME'],
    #	output_directory: ENV['SCREENSHOT_PATH'])

    #frame_screenshots(white: true, path: ENV['SCREENSHOT_PATH'])
    frameit(white: true, path: ENV['SCREENSHOT_PATH'])
    #sh "fastlane frameit --env sfc"

    #upload_to_app_store(
    #	skip_binary_upload: true,
    #	skip_metadata: true,
    #	screenshots_path: ENV['SCREENSHOT_PATH'],
    #	app_identifier: ENV['BUNDLE_ID'])

    slack(
      message: "Screenshots finished.",
      success: true,
     )

  end
end

`./fastlane/Appfile`
app_identifier(ENV['BUNDLE_ID']) # The bundle identifier of your app
<EMAIL_ADDRESS># Your Apple email address

itc_team_id("384505") # App Store Connect Team ID
team_id("LW3B6G4NK9") # Developer Portal Team ID

# For more information about the Appfile, see:
#     https://docs.fastlane.tools/advanced/#appfile

fastlane gems

Gem
Version
Update-Status

fastlane
2.102.0
✅ Up-To-Date

Loaded fastlane plugins:
No plugins Loaded
Loaded gems

Gem
Version

did_you_mean
1.1.0

slack-notifier
2.3.2

atomos
0.1.3

CFPropertyList
3.0.0

claide
1.0.2

colored2
3.1.2

nanaimo
0.2.6

xcodeproj
1.6.0

rouge
2.0.7

xcpretty
0.2.8

terminal-notifier
1.8.0

unicode-display_width
1.4.0

terminal-table
1.8.0

plist
3.4.0

addressable
2.5.2

multipart-post
2.0.0

word_wrap
1.0.0

public_suffix
2.0.5

tty-screen
0.6.5

tty-cursor
0.6.0

tty-spinner
0.8.0

babosa
1.0.2

colored
1.2

highline
1.7.10

commander-fastlane
4.4.6

excon
0.62.0

faraday
0.15.2

domain_name
0.5.99999999

http-cookie
1.0.3

faraday-cookie_jar
0.0.6

fastimage
2.1.3

gh_inspector
1.1.3

mini_magick
4.5.1

multi_json
1.13.1

multi_xml
0.6.0

rubyzip
1.2.1

security
0.1.3

xcpretty-travis-formatter
1.0.0

dotenv
2.5.0

faraday_middleware
0.12.2

naturally
2.2.0

simctl
1.6.5

uber
0.1.0

declarative
0.0.10

declarative-option
0.1.0

representable
3.0.4

retriable
3.1.2

mime-types-data
3.2018.0812

mime-types
3.2.2

jwt
2.1.0

memoist
0.16.0

os
1.0.0

signet
0.9.0

googleauth
0.6.5

httpclient
2.8.3

google-api-client
0.23.4

emoji_regex
0.1.1

json
2.1.0

bundler
1.16.4

openssl
2.1.1

io-console
0.4.6

generated on: 2018-08-27

Fixed...
I removed the text from my json file and added the string files, I started getting some warnings, which were due to utf 16 and typos. Also I had to add a background image.


Security Concern - API keys and Secret

These keys are stored on the front end. So every client has access to the secret and keys, meaning they can use the API E.g:

{
    appId: 385,
    authKey: 'DFBMs5-dKBBCXcd',
    authSecret: 'SkCW -ThdnmRg9Za',
}

How can one do this and configure without the client ever knowing the AppID,authKey, authSecret or API keys?

This way can be useful - https://github.com/ConnectyCube/connectycube-js-sdk-releases/issues/64#issuecomment-753909198

This way can be useful - https://github.com/ConnectyCube/connectycube-js-sdk-releases/issues/64#issuecomment-753909198


Renamed fake repositories to standard_rpm and standard_deb

What does this PR change?
This PR adopts the new fake packages project layout as discussed by email.

Please forward-port to master as well.

Yes, master PR is being finished :smile_cat: .


How can I test antispoofing model with my dataset?

Unfortunately, a good anti-spoofing model with an open license is not available. One model was tested, but it was not good enough on several manually tested images with different attack types. Therefore, it is not a part of the main branch.
It can be tested from the feature anti-spoofing branch. One could create a script for running the FaceAnalyzer on multiple images from one dataset in a loop. Another option would be to spawn multiple instances of FaceAnalyzer and run them async.

following your message I've tried scripts/example.py in anti-spoofing branch. and error occurs like..
{"asctime": "2022-10-06 05:33:38,497", "levelname": "INFO", "message": "Initializing FacePredictor antispoof"}
terminate called after throwing an instance of 'c10::Error'
  what():  isTuple()INTERNAL ASSERT FAILED at "/home/conda/feedstock_root/build_artifacts/pytorch-recipe_1654800966673/work/aten/src/ATen/core/ivalue_inl.h":1916, please report a bug to PyTorch. Expected Tuple but got String
Exception raised from toTupleRef at /home/conda/feedstock_root/build_artifacts/pytorch-recipe_1654800966673/work/aten/src/ATen/core/ivalue_inl.h:1916 (most recent call first):
frame #0: c10::Error::Error(c10::SourceLocation, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >) + 0x68 (0x7f560816fa78 in /opt/conda/envs/env/lib/python3.10/site-packages/torch/lib/libc10.so)
frame #1: c10::detail::torchCheckFail(char const*, char const*, unsigned int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) + 0xf3 (0x7f560814cc23 in /opt/conda/envs/env/lib/python3.10/site-packages/torch/lib/libc10.so)
frame #2: c10::detail::torchInternalAssertFail(char const*, char const*, unsigned int, char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) + 0x50 (0x7f560816db60 in /opt/conda/envs/env/lib/python3.10/site-packages/torch/lib/libc10.so)
frame #3: <unknown function> + 0x3070557 (0x7f55b2374557 in /opt/conda/envs/env/lib/python3.10/site-packages/torch/lib/libtorch_cpu.so)
frame #4: <unknown function> + 0x3070655 (0x7f55b2374655 in /opt/conda/envs/env/lib/python3.10/site-packages/torch/lib/libtorch_cpu.so)
frame #5: torch::jit::SourceRange::highlight(std::ostream&) const + 0x45 (0x7f55b013f7e5 in /opt/conda/envs/env/lib/python3.10/site-packages/torch/lib/libtorch_cpu.so)
frame #6: torch::jit::ErrorReport::what() const + 0x2b4 (0x7f55b0127af4 in /opt/conda/envs/env/lib/python3.10/site-packages/torch/lib/libtorch_cpu.so)
frame #7: <unknown function> + 0x2eaabd (0x7f55ec9d9abd in /opt/conda/envs/env/lib/python3.10/site-packages/torch/lib/libtorch_python.so)
frame #8: <unknown function> + 0x317792 (0x7f55eca06792 in /opt/conda/envs/env/lib/python3.10/site-packages/torch/lib/libtorch_python.so)
frame #9: <unknown function> + 0x1443cc (0x55b1d43fb3cc in /opt/conda/envs/env/bin/python)
frame #10: _PyObject_MakeTpCall + 0x2ab (0x55b1d43f467b in /opt/conda/envs/env/bin/python)
frame #11: _PyEval_EvalFrameDefault + 0x7172 (0x55b1d43f1f22 in /opt/conda/envs/env/bin/python)
frame #12: _PyFunction_Vectorcall + 0x6f (0x55b1d43fb84f in /opt/conda/envs/env/bin/python)
frame #13: <unknown function> + 0x1e96d4 (0x55b1d44a06d4 in /opt/conda/envs/env/bin/python)
frame #14: _PyEval_EvalFrameDefault + 0x65aa (0x55b1d43f135a in /opt/conda/envs/env/bin/python)
frame #15: _PyFunction_Vectorcall + 0x6f (0x55b1d43fb84f in /opt/conda/envs/env/bin/python)
frame #16: _PyEval_EvalFrameDefault + 0x2b9d (0x55b1d43ed94d in /opt/conda/envs/env/bin/python)
frame #17: _PyFunction_Vectorcall + 0x6f (0x55b1d43fb84f in /opt/conda/envs/env/bin/python)
frame #18: <unknown function> + 0x1e96d4 (0x55b1d44a06d4 in /opt/conda/envs/env/bin/python)
frame #19: _PyEval_EvalFrameDefault + 0x7741 (0x55b1d43f24f1 in /opt/conda/envs/env/bin/python)
frame #20: _PyFunction_Vectorcall + 0x6f (0x55b1d43fb84f in /opt/conda/envs/env/bin/python)
frame #21: _PyEval_EvalFrameDefault + 0x2b9d (0x55b1d43ed94d in /opt/conda/envs/env/bin/python)
frame #22: <unknown function> + 0x151ebc (0x55b1d4408ebc in /opt/conda/envs/env/bin/python)
frame #23: <unknown function> + 0x1e96d4 (0x55b1d44a06d4 in /opt/conda/envs/env/bin/python)
frame #24: _PyEval_EvalFrameDefault + 0x7172 (0x55b1d43f1f22 in /opt/conda/envs/env/bin/python)
frame #25: _PyFunction_Vectorcall + 0x6f (0x55b1d43fb84f in /opt/conda/envs/env/bin/python)
frame #26: PyObject_Call + 0xb8 (0x55b1d4409b58 in /opt/conda/envs/env/bin/python)
frame #27: _PyEval_EvalFrameDefault + 0x2b9d (0x55b1d43ed94d in /opt/conda/envs/env/bin/python)
frame #28: _PyFunction_Vectorcall + 0x6f (0x55b1d43fb84f in /opt/conda/envs/env/bin/python)
frame #29: _PyObject_FastCallDictTstate + 0x185 (0x55b1d43f3a95 in /opt/conda/envs/env/bin/python)
frame #30: <unknown function> + 0x14f1ee (0x55b1d44061ee in /opt/conda/envs/env/bin/python)
frame #31: <unknown function> + 0x13da95 (0x55b1d43f4a95 in /opt/conda/envs/env/bin/python)
frame #32: PyObject_Call + 0x209 (0x55b1d4409ca9 in /opt/conda/envs/env/bin/python)
frame #33: _PyEval_EvalFrameDefault + 0x2b9d (0x55b1d43ed94d in /opt/conda/envs/env/bin/python)
frame #34: _PyFunction_Vectorcall + 0x6f (0x55b1d43fb84f in /opt/conda/envs/env/bin/python)
frame #35: <unknown function> + 0x1e96d4 (0x55b1d44a06d4 in /opt/conda/envs/env/bin/python)
frame #36: _PyEval_EvalFrameDefault + 0x6f35 (0x55b1d43f1ce5 in /opt/conda/envs/env/bin/python)
frame #37: _PyFunction_Vectorcall + 0x6f (0x55b1d43fb84f in /opt/conda/envs/env/bin/python)
frame #38: PyObject_Call + 0xb8 (0x55b1d4409b58 in /opt/conda/envs/env/bin/python)
frame #39: _PyEval_EvalFrameDefault + 0x2b9d (0x55b1d43ed94d in /opt/conda/envs/env/bin/python)
frame #40: _PyFunction_Vectorcall + 0x6f (0x55b1d43fb84f in /opt/conda/envs/env/bin/python)
frame #41: <unknown function> + 0x1e96d4 (0x55b1d44a06d4 in /opt/conda/envs/env/bin/python)
frame #42: _PyEval_EvalFrameDefault + 0x6f35 (0x55b1d43f1ce5 in /opt/conda/envs/env/bin/python)
frame #43: _PyFunction_Vectorcall + 0x6f (0x55b1d43fb84f in /opt/conda/envs/env/bin/python)
frame #44: _PyEval_EvalFrameDefault + 0x2b9d (0x55b1d43ed94d in /opt/conda/envs/env/bin/python)
frame #45: _PyObject_FastCallDictTstate + 0xd2 (0x55b1d43f39e2 in /opt/conda/envs/env/bin/python)
frame #46: <unknown function> + 0x14f498 (0x55b1d4406498 in /opt/conda/envs/env/bin/python)
frame #47: _PyObject_MakeTpCall + 0x25b (0x55b1d43f462b in /opt/conda/envs/env/bin/python)
frame #48: _PyEval_EvalFrameDefault + 0x6f35 (0x55b1d43f1ce5 in /opt/conda/envs/env/bin/python)
frame #49: _PyFunction_Vectorcall + 0x6f (0x55b1d43fb84f in /opt/conda/envs/env/bin/python)
frame #50: <unknown function> + 0x1e96d4 (0x55b1d44a06d4 in /opt/conda/envs/env/bin/python)
frame #51: _PyEval_EvalFrameDefault + 0x6f35 (0x55b1d43f1ce5 in /opt/conda/envs/env/bin/python)
frame #52: _PyFunction_Vectorcall + 0x6f (0x55b1d43fb84f in /opt/conda/envs/env/bin/python)
frame #53: <unknown function> + 0x1e96d4 (0x55b1d44a06d4 in /opt/conda/envs/env/bin/python)
frame #54: _PyEval_EvalFrameDefault + 0x65aa (0x55b1d43f135a in /opt/conda/envs/env/bin/python)
frame #55: <unknown function> + 0x151ebc (0x55b1d4408ebc in /opt/conda/envs/env/bin/python)
frame #56: <unknown function> + 0x1e96d4 (0x55b1d44a06d4 in /opt/conda/envs/env/bin/python)
frame #57: _PyEval_EvalFrameDefault + 0x65aa (0x55b1d43f135a in /opt/conda/envs/env/bin/python)
frame #58: _PyFunction_Vectorcall + 0x6f (0x55b1d43fb84f in /opt/conda/envs/env/bin/python)
frame #59: <unknown function> + 0x1e96d4 (0x55b1d44a06d4 in /opt/conda/envs/env/bin/python)
frame #60: _PyEval_EvalFrameDefault + 0x6f35 (0x55b1d43f1ce5 in /opt/conda/envs/env/bin/python)
frame #61: _PyFunction_Vectorcall + 0x6f (0x55b1d43fb84f in /opt/conda/envs/env/bin/python)
frame #62: <unknown function> + 0x1e96d4 (0x55b1d44a06d4 in /opt/conda/envs/env/bin/python)
frame #63: _PyEval_EvalFrameDefault + 0x6f35 (0x55b1d43f1ce5 in /opt/conda/envs/env/bin/python)