Neither rodio nor alsa output working when using dmix plugin / alsa-jack bridge.

Hello, I am the developer of Aroio OS, an embedded audio player distribution based on GPL software. There are commercial products available but the OS is free and can be run on any Raspberry Pi. -> https://www.abacus-electronics.de/produkte/streaming/aroiosu-11/aroiosu.html
At the moment I am trying to integrate librespot into the system but sadly I am facing issues with each of the audio outputs I am trying to use.
We are using mostly jackd in order to be able to run multiple player services simultaneously and feed them into BruteFIR, if wanted. Since jackd and BruteFIR run on a fixed sampling rate, this leads to a chain which automatically needs to insert a resampler for players which output with a sampling-rate that differs from jack's/BruteFIR's. So using jack straight away is no option, due to the lack of a resampler. Overcoming this is done via the alsa dmix plugin followed by an alsa-jack plugin. This chain is running stable with aplay, squeezelite, gmediarender, shairport-sync and bluealsa-aplay, even when running all of them simultaniously, so I consider it to be functioning properly.
Now when trying to output into our alsa-jack bridge using librespot's alsa-ouput module, I get the dreaded EINVAL-error:
ERROR librespot_playback::audio_backend::alsa] Alsa error PCM open ALSA function 'snd_pcm_hw_params_set_buffer_size_near' failed with error 'EINVAL: Invalid argument'
When tring to output using rodio I end up with:
ALSA lib pcm_dmix.c:1089:(snd_pcm_dmix_open) unable to open slave ALSA lib pcm_dmix.c:1024:(snd_pcm_dmix_open) The dmix plugin supports only playback stream
To me it looks like rodio is trying to open a capture channel, which can not work, since we do not have audio inputs. Also it is not needed in this case.
How to go about fixing this? I understand that librespot on the long run might drop all other audio ouputs in favour of rodio, so maybe it makes most sense to concentrate on getting this to work. Sadly there are no options for influencing parameters of any of the given output possibilities, so I have no way of trying to debug this myself.
Can you help here or point me in the right direction for fixing this error with rodio?
Any help would be very welcome, especially since it concerns hundreds of users who would surely love being able to use your very appreciated software on their streamers!

Now when trying to output into our alsa-jack bridge using librespot's alsa-ouput module, I get the dreaded EINVAL-error:
ERROR librespot_playback::audio_backend::alsa] Alsa error PCM open ALSA function 'snd_pcm_hw_params_set_buffer_size_near' failed with error 'EINVAL: Invalid argument'

This happens because the alsa back-end implementation here makes some assumptions of the buffer size, and sets them. It is quite possible that your alsa-jack plugin doesn't support the default buffer size. You could play around with the buffer size and/or check the documentations for the alsa-jack plugin to see what are the parameters it supports.

Thx for your answer and the link, which looks very interesting. I am just going out right now and will look into it tomorrow and report back.

The patch linked in that thread simply solved the problem - many thanks for pointing this out!

Just to confirm - you mean the patch from this post?

The problem is while the jack plugin enforces the period to be a multiple of the frame size, and allows 2~64 periods, it doesn't specify the buffer sizes that it accepts as well. Other plugins like the 'plug' plugin directly try to manipulate the buffer size, disregarding if it's a whole unit of the period sizes or not (even though it does specify that the buffer has to an integer number of the period sizes). The code in pcm_ioplug then tries to make a proper period size/number, but it can't because the buffer isn't a value that can be used.
The fix is, in addition to specifying all the period sizes and number of periods to accept, to also have it list all the buffer sizes as well... except this solution is a bit of a hack because it's actually now reporting that it will accept some combinations of period sizes and number of periods that the buffer sizes don't allow, but in practice if you ask for a huge buffer it seems to work just fine, giving you a lower, more reasonable buffer.
You can download a 'new' PKGBUILD with my patch included here. It's not a proper PKGBUILD as I just upped the revision number so now pacman will complain about how you have a package that's 'too new' when you update. But now everything works with alsa without having to specify odd buffer sizes. I guess the next step is to see if properly ask upstream to patch this.


StaticInjectorError for 'MAT_DRAWER_DEFAULT_AUTOSIZE' on Server Side Render production build

Bug, feature request, or proposal:
ERROR Error:StaticInjectorError[InjectionToken MAT_DRAWER_DEFAULT_AUTOSIZE]:
  StaticInjectorError[InjectionToken MAT_DRAWER_DEFAULT_AUTOSIZE]:
    NullInjectorError: No provider for InjectionToken MAT_DRAWER_DEFAULT_AUTOSIZE!

What is the current behavior?
Server side render not possible, app broken at initial stage.
What are the steps to reproduce?
Aot and normal ng serve is fine. When produce production build for server side render . Build have smoth without have any error but when goes to browser same error occurred.
Which versions of Angular, Material, OS, TypeScript, browsers are affected?
Angular: 5.0.3
Angular Material: 5.0.3
Angular CLI: 1.6.5
Typescript: 2.4.2
Browsers : All
OS: Windows-10 (64 Bit)

Could you post how you're overriding the token?

Closing as we are unable to reproduce the issue.

Same Issue when upgrading to angular 6


Update pre-commit filter to include migrated build rules

Recently the common Gradle build file was moved from build_rules.gradle
into a Groovy module within the buildSrc/ directory. This change updates
the Precommit include trigger to point to the new location. This ensure
that any change to the common gradle build rules triggers all
precommits.

Follow this checklist to help us incorporate your contribution quickly and easily:

[ ] Format the pull request title like [BEAM-XXX] Fixes bug in ApproximateQuantiles, where you replace BEAM-XXX with the appropriate JIRA issue, if applicable. This will automatically link the pull request to the issue.
[ ] If this contribution is large, please file an Apache Individual Contributor License Agreement.

It will help us expedite review of your Pull Request if you tag someone (e.g. @username) to look at it.


Initial Migration: Build failed.

When I run "Update-Database' I get "Build failed."
Should I have not updated my csproj TargetFramework to 2.2
and the other versions to 2.2.0:
<Project Sdk="Microsoft.NET.Sdk.Web">
<PropertyGroup>
<TargetFramework>netcoreapp2.2</TargetFramework>
<AspNetCoreHostingModel>InProcess</AspNetCoreHostingModel>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.AspNetCore.App" />
<PackageReference Include="Microsoft.AspNetCore.Razor.Design" Version="2.2.0" PrivateAssets="All" />
<PackageReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Design" Version="2.2.0" />
</ItemGroup>
</Project>

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

ID: 6719f08e-3bd7-dc1a-71df-f2ef9fbca9d8
Version Independent ID: 7096fdb3-612e-9e00-bd0b-8ea4886a09ce
Content: Add a model to a Razor Pages app in ASP.NET Core
Content Source: aspnetcore/tutorials/razor-pages/model.md
Product: aspnet-core
GitHub Login: @Rick-Anderson
Microsoft Alias: riande

See https://docs.microsoft.com/en-us/aspnet/core/tutorials/razor-pages/razor-pages-start?view=aspnetcore-2.2&tabs=visual-studio#prerequisites


Compile.log file contains \n at strange locations

Hi @jkrinke. When running the success.sh script in the Lang_C folder after the compilation, I found a strange behaviours caused by the \n separator in the compile.log file. It seems to be in the middle of the path name, but not at the end. The compile.sh worked before for me so would this be something caused by the updates in the compile.sh script?
After debugging, I found that if I modify the success.sh script to only print out the extracted paths from compile.log file, like this.
#!/bin/sh

# Extract all submissions for which the compilation was successful.

# First, delete llvm files and empty folders.
find gcj -name '*.ll' -delete
find gcj -empty -delete

# Then delete the old results.
rm -rf gcj50c gcjD50c

# Keep only the latest successful attempt.
IFS=$'\n'; for i in `grep '# COMPILE SUCCESS:' compile.log`; do
    echo "|i=$i|"
#    s=`echo $i | sed -e 's:^# COMPILE SUCCESS\: \([^/]*\)/\([^/]*\)/\([^/]*\)/\([^/]*\)$:\1:'`
#    u=`echo $i | sed -e 's:^# COMPILE SUCCESS\: \([^/]*\)/\([^/]*\)/\([^/]*\)/\([^/]*\)$:\2:'`
#    a=`echo $i | sed -e 's:^# COMPILE SUCCESS\: \([^/]*\)/\([^/]*\)/\([^/]*\)/\([^/]*\)$:\3:'`
#
#    echo "s=$s"
#    echo "u=$u"
#    echo "a=$a"
#
#    # Original sources.
#    M="gcj50c/$s/$u"
#    # Decompiled sources.
#    D="gcjD50c/$s/$u"
#
#    # Earlier successful attempts are overwritten."
#    rm -rf "$M" "$D"
#    mkdir -p "$M" "$D"
#    cp -r "gcj/$s/$u/$a/extracted/." "$M"
#    cp -r "gcj-d/$s/$u/$a/extracted/." "$D"
done

# Done.

The result is like this.
|i=# COMPILE SUCCESS: 2008-32001-24439/Baiger_84f10700/0/extracted
# COMPILE SUCCESS: 2008-32001-24439/Baiger_84f10700/1/extracted
# COMPILE SUCCESS: 2008-32001-24439/LayCurse_feac5121/0/extracted
# COMPILE SUCCESS: 2008-32001-24439/LayCurse_feac5121/1/extracted
# COMPILE SUCCESS: 2008-32001-24439/RodrigoBurgos_f9cf3e11/0/extracted
# COMPILE SUCCESS: 2008-32001-24439/RodrigoBurgos_f9cf3e11/1/extracted
# COMPILE SUCCESS: 2008-32001-24439/Yao_ea09f9c6/0/extracted
# COMPILE SUCCESS: 2008-32001-24439/Yao_ea09f9c6/1/extracted
# COMPILE SUCCESS: 2008-32001-24439/hello|
|i=eo_1018a628/0/extracted
# COMPILE SUCCESS: 2008-32001-24439/lbackstrom_efd2f680/0/extracted
# COMPILE SUCCESS: 2008-32001-24439/lbackstrom_efd2f680/1/extracted
# COMPILE SUCCESS: 2008-32001-24439/rompel_5d476073/0/extracted
# COMPILE SUCCESS: 2008-32001-24439/rompel_5d476073/1/extracted
# COMPILE SUCCESS: 2008-32001-24439/tiagomt_df4f2121/0/extracted
# COMPILE SUCCESS: 2008-32001-24439/tiagomt_df4f2121/1/extracted
# COMPILE SUCCESS: 2008-32001-24440/Baiger_84f10700/0/extracted
# COMPILE SUCCESS: 2008-32001-24440/hello|
|i=eo_1018a628/0/extracted
# COMPILE SUCCESS: 2008-32001-24440/j_arpit_93044fba/0/extracted
# COMPILE SUCCESS: 2008-32001-24440/lbackstrom_efd2f680/0/extracted
# COMPILE SUCCESS: 2008-32001-24440/lbackstrom_efd2f680/1/extracted
# COMPILE SUCCESS: 2008-32001-24440/tiagomt_df4f2121/0/extracted
# COMPILE SUCCESS: 2008-32001-24442/Baiger_84f10700/0/extracted
# COMPILE SUCCESS: 2008-32001-24442/LayCurse_feac5121/0/extracted
# COMPILE SUCCESS: 2008-32001-24442/LayCurse_feac5121/1/extracted
# COMPILE SUCCESS: 2008-32001-24442/RodrigoBurgos_f9cf3e11/0/extracted
# COMPILE SUCCESS: 2008-32001-24442/rompel_5d476073/0/extracted
# COMPILE SUCCESS: 2008-32001-24442/rompel_5d476073/1/extracted
# COMPILE SUCCESS: 2008-32001-24442/tiagomt_df4f2121/0/extracted
# COMPILE SUCCESS: 2008-32002-24445/Baiger_84f10700/0/extracted
# COMPILE SUCCESS: 2008-32002-24445/LayCurse_feac5121/0/extracted
# COMPILE SUCCESS: 2008-32002-24445/LayCurse_feac5121/1/extracted
# COMPILE SUCCESS: 2008-32002-24445/RodrigoBurgos_f9cf3e11/0/extracted
# COMPILE SUCCESS: 2008-32002-24445/Yao_ea09f9c6/0/extracted
# COMPILE SUCCESS: 2008-32002-24445/lbackstrom_efd2f680/0/extracted
# COMPILE SUCCESS: 2008-32002-24445/tiagomt_df4f2121/0/extracted
# COMPILE SUCCESS: 2008-32002-24445/ya|
|i=|
|i=is_9750d724/0/extracted
# COMPILE SUCCESS: 2008-32013-24479/LayCurse_feac5121/0/extracted
# COMPILE SUCCESS: 2008-32013-24479/WhiteShadow_d9992a74/0/extracted
# COMPILE SUCCESS: 2008-32013-24479/WhiteShadow_d9992a74/1/extracted
# COMPILE SUCCESS: 2008-32013-24479/goober_758b7209/0/extracted
# COMPILE SUCCESS: 2008-32013-24479/goober_758b7209/1/extracted
# COMPILE SUCCESS: 2008-32013-24479/lbackstrom_efd2f680/0/extracted
# COMPILE SUCCESS: 2008-32013-24479/lbackstrom_efd2f680/1/extracted
# COMPILE SUCCESS: 2008-32013-24479/rompel_5d476073/0/extracted
# COMPILE SUCCESS: 2008-32013-24479/rompel_5d476073/1/extracted
# COMPILE SUCCESS: 2008-32013-24480/Akerfeldt_51293e49/0/extracted
# COMPILE SUCCESS: 2008-32013-24480/Akerfeldt_51293e49/1/extracted
# COMPILE SUCCESS: 2008-32013-24480/Baiger_84f10700/0/extracted
# COMPILE SUCCESS: 2008-32013-24480/Baiger_84f10700/1/extracted
# COMPILE SUCCESS: 2008-32013-24480/BeerCode_1aee3339/0/extracted
# COMPILE SUCCESS: 2008-32013-24480/BeerCode_1aee3339/1/extracted
# COMPILE SUCCESS: 2008-32013-24480/DQUADROS_7d184664/0/extracted
# COMPILE SUCCESS: 2008-32013-24480/DQUADROS_7d184664/1/extracted
# COMPILE SUCCESS: 2008-32013-24480/Eduardopa_fb690c3d/0/extracted
# COMPILE SUCCESS: 2008-32013-24480/Eduardopa_fb690c3d/1/extracted
# COMPILE SUCCESS: 2008-32013-24480/Hiroshi_71e811c9/0/extracted
# COMPILE SUCCESS: 2008-32013-24480/Hiroshi_71e811c9/1/extracted
# COMPILE SUCCESS: 2008-32013-24480/Larry_69d79f03/0/extracted
# COMPILE SUCCESS: 2008-32013-24480/Larry_69d79f03/1/extracted
# COMPILE SUCCESS: 2008-32013-24480/Marija|
|i=_d19af734/0/extracted
# COMPILE SUCCESS: 2008-32013-24480/Marija|
|i=_d19af734/1/extracted
# COMPILE SUCCESS: 2008-32013-24480/Maxime_b6e42b59/0/extracted
# COMPILE SUCCESS: 2008-32013-24480/Maxime_b6e42b59/1/extracted
# COMPILE SUCCESS: 2008-32013-24480/Nescie|
|i=s_938c2d78/0/extracted
# COMPILE SUCCESS: 2008-32013-24480/Nescie|
|i=s_938c2d78/1/extracted
# COMPILE SUCCESS: 2008-32013-24480/Shubham_e1aaf527/0/extracted
# COMPILE SUCCESS: 2008-32013-24480/Shubham_e1aaf527/1/extracted
# COMPILE SUCCESS: 2008-32013-24480/Vi|
|i=iciusCabessa_6d3b4acc/0/extracted
# COMPILE SUCCESS: 2008-32013-24480/Vi|
|i=iciusCabessa_6d3b4acc/1/extracted
# COMPILE SUCCESS: 2008-32013-24480/WhiteShadow_d9992a74/0/extracted
# COMPILE SUCCESS: 2008-32013-24480/WhiteShadow_d9992a74/1/extracted
# COMPILE SUCCESS: 2008-32013-24480/h|
|i=aves_a421d957/0/extracted
# COMPILE SUCCESS: 2008-32013-24480/h|
|i=aves_a421d957/1/extracted
# COMPILE SUCCESS: 2008-32013-24480/littleboy_134e45ec/0/extracted
# COMPILE SUCCESS: 2008-32013-24480/littleboy_134e45ec/1/extracted
# COMPILE SUCCESS: 2008-32013-24480/masari_f4586295/0/extracted
# COMPILE SUCCESS: 2008-32013-24480/masari_f4586295/1/extracted
# COMPILE SUCCESS: 2008-32013-24480/maxpic_67335ed5/0/extracted
# COMPILE SUCCESS: 2008-32013-24480/miura_1e718c1f/0/extracted
# COMPILE SUCCESS: 2008-32013-24480/miura_1e718c1f/1/extracted
# COMPILE SUCCESS: 2008-32013-24480/mma_63e099ee/0/extracted
# COMPILE SUCCESS: 2008-32013-24480/mma_63e099ee/1/extracted
# COMPILE SUCCESS: 2008-32013-24480/peterpa|

Do you know how should I fix it? The full result can be found here:
result.txt

Could you please try to run the script via bash ./success.sh and also send me the output of /bin/sh --version?


[Bug]: frontend problem

Version

[X] Yes

General Question

[X] No

What happened?
i have rechecked my contract thrice but still while trying to run my index.html file "price per mint is "0" and the max supply is<PHONE_NUMBER>0000000. Can anyone pls help me with this

What have you tried?
I Googled and asked the community in the discord server but could not find a solution.
Relevant log output
No response
Protect your information

[X] I Agree

I'm having the same issue

Have u found any solution ??

same here

Having the same issue as well.

i tried change the pricePerMint to PricePerMint and maxPerMint to MaxPerMint it works, but when i try to mint cannot access


Handle streams

Depending on the result of https://github.com/Level/community/discussions/105, implement a module and/or add a section to the upgrade guide on how to use streams.

Please don't add more dependencies to this package. It already does far too much. The leveldown binding does not need streams.


Added common test utilities classes to a new module

Looks good Andrei. Regarding build fail, I've addec a comment on Sorin's PR so he can work on the problem: https://github.com/microsoft/surface-duo-sdk-samples-kotlin/pull/43#discussion_r578176696


Fix yandex-metrika ReferenceError and duplicate hits

This is the second iteration of Yandex.Metrika fixes after #143:

Fix ReferenceError coming from inaccurate use of function arguments ({app: { router }}) and variable reference app.router.
Remove try/catch block that silences everything (including the error above) for no apparent reason.
Fix duplicate metrika hit sent for the initial vue-router navigation.
Send referer data along with the hit (in accordance with https://yandex.com/support/metrica/code/ajax-flash.html).

Thanks! 0.0.4 released with this fix too.


Task/change header by tenant

@mengtzu @manthachan should we close this PR if we dont have any more changes.


[AMLII-2064] Fix TestInitialLogsExceedTotalUsageMultipleFiles Flaky Test

What does this PR do?
Adds another condition in the check for getLeastRecentlyModifiedFile that allows it to select a file that has been created at the same time as time.Now(). This should fix flakiness in tests where files might have been created at the same time as the function runs, causing getLeastRecentlyModifiedFile() to return nil.
Motivation
Flaky test
Describe how to test/QA your changes
Make sure all the tests pass.
Possible Drawbacks / Trade-offs
Additional Notes

/merge


Tests: Fixed canvas dependency

Error: Not implemented: HTMLCanvasElement.prototype.getContext
(without installing the canvas npm package)

@rafaveira3 done!


Update iOS Templates to Automatically Create dSYMs for Debug Builds

Use case
When building an app in debug mode, modifications to the generated Xcode project are needed in order to generate the necessary debug symbol files. Debug builds are used for configuration and testings, so having these symbol files is useful during the development process.
Proposal
The templates located in the following paths need to have the DEBUG_INFORMATION_FORMAT property set to "dwarf-with-dsym" instead of "dwarf".
iOS Objc: flutter/packages/flutter_tools/templates/app_shared/ios-objc.tmpl/Runner.xcodeproj/project.pbxproj.tmpl
iOS Swift: flutter/packages/flutter_tools/templates/app_shared/ios-swift.tmpl/Runner.xcodeproj/project.pbxproj.tmpl
MacOS: packages/flutter_tools/templates/app_shared/macos.tmpl/Runner.xcodeproj/project.pbxproj.tmpl

This was a request from Crashlytics: "The reason for this is that when customers are initially onboarding Crashlytics, they tend to test their set up in debug mode. We've seen a fairly high number of customer support tickets related to onboarding not working as expected because the dsyms aren't generated by default for debug builds. Making this change will enable customers to get up and running with minimal confusion."
This change would increase build times in debug mode for all users since it will need to build and link in the dSYM, though I'm not sure by how much for a nontrivial project.  Do we really need to support users onboarding Crashlytics in debug mode?  It seems like it could be solved with documentation.

You could also consider setting this yourself in the plugin .podspec
s.user_target_xcconfig = { 'DEBUG_INFORMATION_FORMAT' => 'dwarf-with-dsym' }

CocoaPods says "This attribute is not recommended as Pods should not pollute the build settings of the user project and this can cause conflicts." however this build setting doesn't seem like one that would be in danger of conflicts, like, say, framework search paths.  And Flutter is already "polluting" the generated Xcode project with various build settings to get the dart code compiled.
If that doesn't work for some reason, this seems like an okay thing to change if a clean build for a relatively complicated app is only trivially slower.

You could also consider setting this yourself in the plugin .podspec

An additional advantage to this is that you would control it, and it would apply for all plugin consumers, not just ones with a freshly-created Flutter app.

@eacrh closing this since https://github.com/firebase/flutterfire/pull/7872 is done.  I don't think we want to do this generically for all Flutter apps.  Let me know if you need anything else from our side.


I hope you can also realize the function of displaying function usage

Hello @zem558
Thanks for the idea.
We already have the ticket with the same request, so I'm closing this as a duplicate of #14872


Feature/atlantins apply

Ran Plan for project: main dir: . workspace: default
Show Output
Initializing the backend...

Initializing provider plugins...
- Finding latest version of hashicorp/null...
- Installing hashicorp/null v3.2.3...
- Installed hashicorp/null v3.2.3 (signed by HashiCorp)

Terraform has created a lock file .terraform.lock.hcl to record the provider
selections it made above. Include this file in your version control repository
so that Terraform can guarantee to make the same selections by default when
you run "terraform init" in the future.

Terraform has been successfully initialized!

Terraform used the selected providers to generate the following execution
plan. Resource actions are indicated with the following symbols:
  + create

Terraform will perform the following actions:

  # null_resource.example will be created
  + resource "null_resource" "example" {
      + id = (known after apply)
    }

  # null_resource.path will be created
  + resource "null_resource" "path" {
      + id = (known after apply)
    }

Plan: 2 to add, 0 to change, 0 to destroy.

:arrow_forward: To apply this plan, comment:atlantis apply -p main

:put_litter_in_its_place: To delete this plan and lock, click here
:repeat: To plan this project again, comment:atlantis plan -p main

Plan: 2 to add, 0 to change, 0 to destroy.

:fast_forward: To apply all unapplied plans from this Pull Request, comment:atlantis apply

:put_litter_in_its_place: To delete all plans and locks from this Pull Request, comment:atlantis unlock

atlantis apply

Ran Apply for project: main dir: . workspace: default
Apply Error
Show Output
running "terragrunt apply --terragrunt-working-dir=. $PLANFILE --auto-approve" in "/atlantis-data/repos/italorafaeltavares/Atlantis/32/default": exit status 1: running "terragrunt apply --terragrunt-working-dir=. $PLANFILE --auto-approve" in "/atlantis-data/repos/italorafaeltavares/Atlantis/32/default":
╷
│ Error: Too many command line arguments
│
│ Expected at most one positional argument.
╵

For more help on using this command, run:
  terraform apply -help
time=2024-10-26T00:44:21Z level=error msg=Terraform invocation failed in /atlantis-data/repos/italorafaeltavares/Atlantis/32/default/.terragrunt-cache/vII9AoiiJHwKnvTgj1NLsL1Ulf4/rCPq6FfMiGjOmPX2RvwMdSZjemc/module prefix=[.]
time=2024-10-26T00:44:21Z level=error msg=1 error occurred:
	* [/atlantis-data/repos/italorafaeltavares/Atlantis/32/default/.terragrunt-cache/vII9AoiiJHwKnvTgj1NLsL1Ulf4/rCPq6FfMiGjOmPX2RvwMdSZjemc/module] exit status 1

Locks and plans deleted for the projects and workspaces modified in this pull request:

dir: . workspace: default


[FLOC-3800] Move flocker.dockerplugin tests to new base case

Very simple.

:heavy_check_mark: Merge at will. Thanks.

All tests pass after a few retries, so merging on your behalf.


temporary disable s3 integration on staging until LSM storge rewrite lands

There were some problems which were caused by our benchmarking cluster, but there is no sense in resolving them because lsm storage rewrite should not have the problem at all and it is expected to land soon

@LizardWizzard I see you just commented part of ansible playbook. It's ok, but need manually comment/erase that config portion on staging pageserver as well.


fix: typos in documentation files

This pull request contains changes to improve clarity, correctness and structure.
Description correction:
Corrected celetia to celestia
Please review the changes and let me know if any additional changes are needed.

Hi, @adlerjohn @liamsi! I’ve just submitted a pull request. Could you please review it? Thank you!


taskFail Query

If taskFail is set to True, and issues are detected, the task fails.
If taskFail is set to False, and issues are detected, the task presents a warning (!).
Is there a way to remove this warning, so if issues are detected, and the toggle is set to false, the task will Pass?

Hi @ChrisHolman can you elaborate? The pipeline job will get the status SucceededWithWarnings and not Fail.
What are you trying to achieve?

Looking to remove the SucceededWithWarnings flag. Although it may sound counter-intuitive, we would rather the task always passed, regardless of what was found, until we've managed to ascertain a baseline.

SucceededWithWarnings is passed.

Hi @ChrisHolman, I tought about it and I am not going to change the behavior. When secrets (either true secrets or false positives) there is a call for action. That call for action is either a warning or error. Suppressing both sounds an anti-pattern for me.


Language_Load_Error

I try to auto-run this using task scheduler and this happen

can anyone know how to fix this issue?

Yes. Create a shortcut to the .exe file and execute it from the shortcut.


Feature/dockstore 296 tool tab

Related issue: ga4gh/dockstore#296
Related pull request: https://github.com/ga4gh/dockstore-ui/pull/63

Webservice for 'Tools' tab is implemented. The code is combined with the code for getting the DAG json.
Information provided in json for

CWL: ID, filename, docker, docker link
WDL: ID, docker, docker link

If the tool does not have any docker requirement specified, it will be, by default, changed to the docker requirement of the workflow. If the workflow also does not specify any docker requirement, then the 'docker' and 'link' field will have 'Not Specified'
If required tools are missing from Github Repo, the json will return blank, or []
Integration test 'ToolsWorkflowTestIT' is very similar to DAG's integration test 'DAGWorkflowTestIT'

Coverage increased (+0.3%) to 73.701% when pulling af0ebfe024905beabc6d0135c1682703a67886b1 on feature/dockstore_296_tool_tab into 4fd837e7a0b1cb865993bde6488b601dc6d78602 on develop.

Thanks for adding the test as well :+1:

Coverage increased (+0.4%) to 73.569% when pulling 10d28677bbdff93da1e992bd6febbbfae10dd491 on feature/dockstore_296_tool_tab into 8851199c1a0e592cec5b410e6f6af1d059f285ff on develop.

Coverage increased (+0.4%) to 73.569% when pulling 2878aa168497487907cf8c26ea9a09fd9876695c on feature/dockstore_296_tool_tab into 8851199c1a0e592cec5b410e6f6af1d059f285ff on develop.


KMS Support

Support KMS for Sentry DSN
Add an env var for this.

I'm not sure we want to solve this directly in the plugin itself. I assume that users would want a more comprehensive way of encrypting/decrypting sensitive variables.
There seem to be quite a few community plugins that support this:
https://github.com/SC5/serverless-kms-secrets
We should probably pick one to recommend or simply point out the fact you might want to encrypt your DSN.


which ffmpeg python package to use?

Thanks for creating the docker image, but when i download and try to execute i got error
  File "/app/app/webservice.py", line 7, in <module>
    import ffmpeg
ModuleNotFoundError: No module named 'ffmpeg'

i think the package is missing from both requirements.txt and Dockerfile pip install
i tried to add just ffmpeg which for me points to https://github.com/jiashaokun/ffmpeg
but then i got error when actually trying to transcribe an audio
[2024-08-16 21:25:44 +0000] [8] [ERROR] Exception in ASGI application
Traceback (most recent call last):
  File "/app/app/webservice.py", line 89, in load_audio
    ffmpeg.input("pipe:", threads=0)
    ^^^^^^^^^^^^
AttributeError: module 'ffmpeg' has no attribute 'input'

so i believe it's probably not the right ffmpeg python package you are using. so just wondering which package should be used.
can you also the pypi package and version in the requirements.txt?
Thanks!

For this docker image the ffmpeg should come from apt.
So please check your system component.

i think the apt only install the ffmpeg cli binary, but it cannot be imported from the python script. I tried both build locally and pull your docker image and directly run it and got the same error. I think i was able to fix it by adding ffmpeg-python in the requirements.txt i can go back and make a pr


Refs #JOINDIN-635: Does not count private comments in comment count n…

…umber in event talks collection. Tested with http://api.dev.joind.in/v2.1/events/38/talks versus http://api.dev.joind.in/v2.1/talks/494/comments

Can one of the admins verify this patch?

ok to test

Merged with thanks :)


Update middleware namespace function and test

See https://github.com/thysultan/stylis.js/issues/101 for why we do this. Not a bug.


Empty sections with only comments are now by defalt not removed

Closes #235

Codecov Report

Merging #246 (23eac58) into main (33cd128) will not change coverage.
The diff coverage is 100.00%.

@@           Coverage Diff           @@
##             main     #246   +/-   ##
=======================================
  Coverage   96.42%   96.42%
=======================================
  Files          31       31
  Lines        1819     1819
=======================================
  Hits         1754     1754
  Misses         65       65

Impacted Files
Coverage Δ

robotidy/transformers/DiscardEmptySections.py
100.00% <100.00%> (ø)

Continue to review full report at Codecov.

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


How to print JSON in short way. Without \n and spaces

A json like this:
{
  "data": {
    "cat" : "Tom",
    "dog" : "Teddy"
  }
}

Tried:
json.rawString()
json.rawString([:])

Expect:
{"dat":{"cat":"Tom","dog":"Teddy"}}
Happened:
{\n  "data" : {\n    "cat" : "Tom",\n    "dog" : "Teddy"\n  }\n}
//formated
Environment:

SwiftyJSON: 4
Xcode Version: 9
Swift Version: 4

Related issue
#837

Now I did like this. It works well ** so far **.
import SwiftyJSON
extension JSON {
    func toString() -> String? {
        return self.rawString()?.replacingOccurrences(of: "\\s", with: "", options: String.CompareOptions.regularExpression, range: nil)
    }
}

But not tested enough for more situations.
And, Asking for a better function name to replace "toString:"  :-<

Seems like  #837 doesn't work in Swift 4. Any idea to create a PR for this?

Try this
json.rawString(.utf8, options: .init(rawValue: 0))
This works for me in Swift 4, SwiftyJSON 4


Support only_if

Ref #84

The following is a smple of pipeline config with only_if attribute.
 pipeline:
     - stage_name: command_stage_1
       stage_type: command
       command: echo "hello, world" $USER
      only_if: test $USER = takahi-i


serialize dates as time interval since reference date

Coverage increased (+0.01%) to 94.8% when pulling 0cd987fea660d1a23e0304f12226fa558846df65 on wes/serialize_dates into 265ea830bab9a0cd26a971b541f3f22336b19551 on master.


Provide an option to delete unwanted projects from Harbor from registry's UI

We can create projects in the registry and also need an option to delete unwanted projects from UI.
Please consider this request.

As long as the project is "empty" (no images/ no members) it can be removed from UI.

@lgayatri The feature has been implemented for a long time.

@ywk253100 and @reasonerjt , I have an integrated OVA environment on which there are empty projects. I dont see an option to delete them.
Setup: https://<IP_ADDRESS>/harbor/projects - admin/Admin!23

@lgayatri you need to click the dots at the left of each row to show the list.
We're using Clarity data grid, @steven-zou is it there alternative way to show the "action" list?

I could not interpret this from the UI. That too it was left click for showing these options and usually  right click is used for options display. This is not user intuitive. Please consider enhancing UI.

@steven-zou will drive the discussion with designer and Clairty team, but it may likely remain unchanged in 1.2

Yeah, we have raise the problem to Clarity team. They will start to consider the improvement. But as @reasonerjt said, might need time to become a reality.
As the deletion action of project does work well, I'll close this issue.

@steven-zou , can you please let me know the clarity issue# that was raised ?

@lgayatri
Here is the issue link https://github.com/vmware/clarity/issues/927


[HELP] Change Gui Default Color

Hey GitHub community, I'm pretty new to GitHub and i dont know that much about coding, so I would like to ask how I can change the Default Dark Theme that loads up automatically and change the colors.
Would be nice if someone could help :)

It is already dark theme from the start but if you want custom colors or a whole new them, you can just change these values to your liking :)
https://i.imgur.com/ZGG9QPZ.png

(Side note the values are in RGBA :))


Windows compilation error

When trying to build on windows getting the following error. Any suggestion on how to fix?
.\mdb.c:4625:13: warning: implicit declaration of function 'pthread_mutexattr_setrobust' [-Wimplicit-function-declaration]
    || (rc = pthread_mutexattr_setrobust(&mattr, PTHREAD_MUTEX_ROBUST))
             ^
.\mdb.c:4625:49: error: 'PTHREAD_MUTEX_ROBUST' undeclared (first use in this function)
    || (rc = pthread_mutexattr_setrobust(&mattr, PTHREAD_MUTEX_ROBUST))
                                                 ^
.\mdb.c:4625:49: note: each undeclared identifier is reported only once for each function it appears in
.\mdb.c: In function 'mdb_mutex_failed':
.\mdb.c:351:37: warning: implicit declaration of function 'pthread_mutex_consistent' [-Wimplicit-function-declaration]
 #define mdb_mutex_consistent(mutex) pthread_mutex_consistent(mutex)
                                     ^
.\mdb.c:10002:10: note: in expansion of macro 'mdb_mutex_consistent'
    rc2 = mdb_mutex_consistent(mutex);
          ^

The main issue is that PTHREAD_MUTEX_ROBUST is undefined.

Interesting. This may be considered a bug in lmdb itself, as the presence of Windows should be detected, and the library tries to select available APIs by default. So it may be worth bringing up on the official mailing list.
Can you tell me any more about your build environment? Are you compiling inside cygwin. It has been a while since I got everything building on Windows.
I haven't found any info in the official openldap-technical mailing list. But I found the following in the mdb.c source file.
/** Some platforms define the EOWNERDEAD error code
 * even though they don't support Robust Mutexes.
 * Compile with -DMDB_USE_ROBUST=0, or use some other
 * mechanism like -DMDB_USE_SYSV_SEM instead of
 * -DMDB_USE_POSIX_MUTEX. (SysV semaphores are
 * also Robust, but some systems don't support them
 * either.)
 */

I doubt that MDB_USE_SYSV_SEM is supported on Windows. But MDB_USE_POSIX_MUTEX may work. If all else fails I think defining MDB_USE_ROBUST=0.
I have pushed a branch, bmatsuo/issues/91/windows-robust-sem, which defines MDB_USE_POSIX_MUTEX. Can you test it out and let me know if the package builds and the tests pass?
Also, please do let me know what your environment is like. I had a previous issue getting compilation to work on Windows. I'm not sure if that was after robust mutex support was added or not.

Yes, trying to build under cygwin. Do you need any other info? I'll try the other branch and will let you know.
Is this file straight out of LMDB? Or have you modified it in some way for go?

Thanks for the info. I presume you have a 64-bit processor as well, though I doubt architecture is significant.
I have not modified the C source. If you try to compile the LMDB project I think you will run into the same errors.
I noticed in my previous comment that the branch name looked strange because of GitHub markup. The name is bmatsuo/issues/91/windows-robust-sem, if there was any confusion. Thanks. Let me know how it goes.

I'm getting can't load package: package github.com/bmatsuo/lmdb-go/lmdb: D:\Projects\Go\src\github.com\bmatsuo\lmdb-go\lmdb\lmdb.go: invalid #cgo line: #cgo windows -DMDB_USE_POSIX_MUTEX

Fixing flags to #cgo windows CFLAGS: -DMDB_USE_POSIX_MUTEX results in the same build error with PTHREAD_MUTEX_ROBUST not found

Although #cgo windows CFLAGS: -DMDB_USE_ROBUST=0 seems to have fixed that part, running into other issues:
D:\Projects\Go\src\github.com\bmatsuo\lmdb-go\lmdb>go build
# github.com/bmatsuo/lmdb-go/lmdb
/usr/lib/gcc/x86_64-pc-cygwin/5.4.0/../../../../x86_64-pc-cygwin/bin/ld: cannot find -lmingwex
/usr/lib/gcc/x86_64-pc-cygwin/5.4.0/../../../../x86_64-pc-cygwin/bin/ld: cannot find -lmingw32
collect2: error: ld returned 1 exit status

I ended up installing http://tdm-gcc.tdragon.net/ instead of cygwin and everything builds there.

Interestingly enough, master branch builds with tdm-gcc too. I guess something is missing in cygwin compiler. The windows flag is not needed. Need right compiler.

That is very interesting. Thanks for your investigation. Sorry about the bad cgo directive (on my branch). But I'm glad you worked past it.
I did have things compiling under cygwin originally. I wonder why that is no longer working.


Add JSON::Builder#depth

JSON::Builder uses a private current_indent ivar that represents the current depth/nesting level of the builder.
I propose to expose this value as #depth, thus making it available within custom converters as well as direct usages of the builder; versus having to keep track of it manually.

Could you describe a usecase for this? I'm under the assumption that contextual information should be completely irrelevant for converters.

Actually I'm going to close this for now.  I think I was thinking of JSON::PullParser.  I can reopen it later once I remember why I needed this...


Update the data type float16 for collective apis

Update the data type float16 for collective apis

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.1 out of 2 committers have signed the CLA.:white_check_mark: sandyhouse:x: rootroot 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.


ESP32 BLE Characteristics increase the maximum

Add 8 BLECharacteristic to one BLEService, only 7 show up
If BLECharacteristic has BLEDescriptor only 4 show up
How can I increase the maximum number?

createService will fix this with snd parameter;-)


Werkzeug development server with reloader crashes on Windows with some ffi imports

I am working on a module that makes use of Golang and FFI. However using it in Windows and Flask with the development server with reloading enabled results in a silent crash in the development server.
Notice in the following that the first flask run command exits silently, but it succeeds if you disable the reloader:
PS C:\Users\IEUser\Downloads> $env:FLASK_DEBUG=1
PS C:\Users\IEUser\Downloads> flask run
 * Environment: development
 * Debug mode: on
 * Restarting with stat
PS C:\Users\IEUser\Downloads> flask run --no-reload
 * Environment: development
 * Debug mode: on
 * Running on http://<IP_ADDRESS>:5000/ (Press CTRL+C to quit)

I traced this down to the the subprocess call in the restart_with_reloader function. For some reason this subprocess call will return a 1 exit code with no stdout or stderr.
I tested this out by using the following script:
from flask import Flask

from pybluemonday import UGCPolicy

def sanitize_html(html):
    SANITIZER = UGCPolicy()
    return SANITIZER.sanitize(html)

def create_app():
    app = Flask(__name__)

    @app.route('/')
    def hello_world():
        print("test")
        return sanitize_html('
asdf
')

    return app

if __name__ == "__main__":
    app = create_app()
    app.run(debug=True, threaded=True, host="<IP_ADDRESS>", port=5000)

However if you modify close_fds to be True (the default value),
diff --git a/src/werkzeug/_reloader.py b/src/werkzeug/_reloader.py
index ab0966b8..3d8b34e5 100644
--- a/src/werkzeug/_reloader.py
+++ b/src/werkzeug/_reloader.py
@@ -245,7 +245,7 @@ class ReloaderLoop:
             args = _get_args_for_reloading()
             new_environ = os.environ.copy()
             new_environ["WERKZEUG_RUN_MAIN"] = "true"
-            exit_code = subprocess.call(args, env=new_environ, close_fds=False)
+            exit_code = subprocess.call(args, env=new_environ, close_fds=True)

             if exit_code != 3:
                 return exit_code

the development server and its reloader will work:
PS C:\Users\IEUser\Downloads> flask run
 * Environment: development
 * Debug mode: on
 * Restarting with stat
 * Debugger is active!
 * Debugger PIN: 902-880-760
 * Running on http://<IP_ADDRESS>:5000/ (Press CTRL+C to quit)
test
<IP_ADDRESS> - - [02/Apr/2021 01:03:03] "GET / HTTP/1.1" 200 -

It's worth noting that the close_fds default on Windows was changed from False to True in Python 3.7.
I don't really understand why this happens and the commit that introduced it is quite old so I'm not completely sure if this is the correct fix but I don't see what could be wrong with the module code because it works perfectly outside of the Windows/Flask development server.
Happy to make a PR to make the close_fds value flip to True on Windows but be False otherwise if it's the right fix.
Here are working wheels for Windows for the pybluemonday library if you want to run the above script.
win.zip
Environment:

Python version: 3.7.9
Werkzeug version: 1.0.1

It seems like adding any kind of stdout to subprocess.call lets it work (i.e. stdout=subprocess.PIPE or capture_stdout=True).
Also it seems this problem somewhat exists in other projects as well: https://github.com/ipython/ipython/blob/86d24741188b0cedd78ab080d498e775ed0e5272/IPython/utils/_process_common.py#L72

Why is this an issue with Werkzeug and not with go ffi, Python subprocess, or pybluemonday? All we're doing is reusing the socket file descriptor, which is a valid use case for the code we're using. Beyond that, I know nothing about any of the systems involved to attempt to debug or fix it.

flask run works because it ran in production mode which disabled the reloader.
The issue could definitely be somewhere else but in my very initial testing no other server that I could run crashed. It was only flask and only on this specific situation so I figured it's a good place to start before I dig heavily into the other harder to debug areas. I also couldn't get similar kinds of crashes if I removed Flask/Werkzeug.
But now that you mention it and I better understand the issue I tried to test out other servers with reload capabilities. Very few servers both support Windows and reload capabilities.
Uvicorn worked (with minor changes to the above script to get the app factory out):
uvicorn.exe "app:app" --interface wsgi --reload --port 5555

INFO:     Uvicorn running on http://<IP_ADDRESS>:5555 (Press CTRL+C to quit)
INFO:     Started reloader process [8544] using statreload
INFO:     Started server process [988]
INFO:     Waiting for application startup.
INFO:     ASGI 'lifespan' protocol appears unsupported.
INFO:     Application startup complete.
test3
INFO:     <IP_ADDRESS>:51811 - "GET / HTTP/1.1" 200 OK
WARNING:  StatReload detected file change in 'app.py'. Reloading...
INFO:     Started server process [6448]
INFO:     Waiting for application startup.
INFO:     ASGI 'lifespan' protocol appears unsupported.
INFO:     Application startup complete.
INFO:     Shutting down
INFO:     Finished server process [6448]
INFO:     Stopping reloader process [8544]

reloadex also worked:
PS C:\Users\IEUser\Downloads> ^C
PS C:\Users\IEUser\Downloads> reloadex.exe .\app.py
 * Serving Flask app "app" (lazy loading)
 * Environment: production
   WARNING: This is a development server. Do not use it in a production deployment.
   Use a production WSGI server instead.
 * Debug mode: on
 * Restarting with stat

I completely understand that this library is probably not heavily used and does some very specific Windows calls. It was just difficult to find a server other than Werkzeug that supported the right behavior.
I also understand how difficult Windows as a development target is I'm more curious about what's wrong than really pushing for a fix.
I don't fully understand what the fd passing is doing in Windows but if I can narrow down the issue deeper I can report it wherever it makes more sense.

With go version go1.15.11 windows/amd64 and the following testing code, the Go code seems to work in a similar test condition.
import subprocess
import os
import threading

def bluemonday():
	new_environ = os.environ.copy()
	new_environ["WERKZEUG_RUN_MAIN"] = "true"

	subprocess.call(["./bluemonday.exe"], env=new_environ, close_fds=False)

t = threading.Thread(target=bluemonday, args=())
t.setDaemon(True)
t.start()
t.join()

bluemonday exe and testing script provided here:
Archive.zip

If it's useful, the following is the code where uvicorn does its reloading:
https://github.com/encode/uvicorn/blob/bf1c64e2c141971c546671c7dc91b8ccf0afeb7d/uvicorn/supervisors/basereload.py#L33-L66
https://github.com/encode/uvicorn/blob/bf1c64e2c141971c546671c7dc91b8ccf0afeb7d/uvicorn/subprocess.py#L9-L38

Closing, I don't know how I can address this and there hasn't been further updates.

You can emulate uvicorn's approach for reloading using multiprocessing instead of subprocess.call.
Replacing this function with something similar to this and this.
I recognize that it's probably not worth the effort but I actually think it would improve the speed of the reloader. uvicorn's reloader is much faster in my experience.


TLS option "minVersion: VersionTLS12" causes connection problems with Safari Browser (HTTP 421 Misdirected Request)

traefik version: 2.2.11
k8s version: 1.18.6
Safari Browser version: 13.1.2
I experience a problem with traefik and Safari Browser. When using IngressRoutes with TLS option "mintls12", the browser cannot connect to the site, just stating a HTTP 421 Misdirected Request.
apiVersion: traefik.containo.us/v1alpha1
kind: TLSOption
metadata:
  name: mintls12
  namespace: traefik
spec:
  minVersion: VersionTLS12

This problem seems to be specific to Safari Browser, does not happen when using Chrome.
traefik configuration including SSL certs is fine: traefik dashboard does not show any errors or warnings and traefik pods also do not log any problems.
When using "mintls12" I also get an A rating from SSL Labs - so the general setup seems reasonably sane and safe.
But still, it seems something got recently changed in traefik that causes these Safari-specific problems because I remember that Safari worked fine together with "mintls12" TLS Option a couple of weeks ago but I don't know which version bump it exactly was that lead to this incompatibility with Safari.
Currently, I have removed this TLS option from the IngressRoute objects as a workaround.
Is this a known issue? Is there some better workaround other than to completely remove the TLS option and get a B rating from SSL Labs?

Nevermind, the problem is described in https://webidextrous.com/how-to-solve-421-misdirected-request-errors/ and is actually not specific to traefik (or a specific traefik version) at all.


Improve macro placement

Description
The macro placement here doesn't work in global routing.
macro.zip
One possible solution is to place the macros in the corners and have the logic be in the middle, which requires rotating and placing the macros in the corners.

The "MY" rotation is especially bad, because that places the pins on the right side of the maros.   If the pins at the top level had been at the top and not left side, the current arrangement would have been better.

To reproduce:
$ ./run-me-mock-aluregisterfile-asap7-base.sh
OpenROAD v2.0-10502-g6d9379092
This program is licensed under the BSD-3 license. See the LICENSE file for details.
Components of this program may be licensed under more restrictive licenses which must be honored.
HierRTLMP Flow enabled...
Call Macro Placer  -halo_width 27 -report_directory ./objects/asap7/mock-aluregisterfile/base/rtlmp
Floorplan Outline: (0.0, 0.0) (578.759, 578.759),  Core Outline: (2, 2) (576, 576)
Traversed logical hierarchy
	Number of std cell instances : 5020
	Area of std cell instances : 588.42
	Number of macros : 4
	Area of macros : 98491.38
	Area of macros with halos : 177943.97
	Total area : 99079.80
	Design Utilization : 0.30
	Core Utilization: 0.00
	Manufacturing Grid: 1

[INFO MPL-0024] Perform Clustering..
[INFO MPL-0027] The design only has macros.

number of updated macros : 4
number of macros in HardMacroCluster : 4
Delete buffers for RTLMP flow...
[INFO RSZ-0026] Removed 0 buffers.
openroad>

Suggested Solution
No response
Additional Context
No response

commentting out export RTLMP_FLOW=True actually yields a better macro placement. Global routing finishes in a minute or so...


feature request: word wrap

strings longer than the terminal's number of columns are truncated.
would be nice to be able to word wrap these.

probably the only feature I'm missing;...

just came across jless today and it's exactly what I've been looking for. Thanks! +1 for word wrap

+1 for word wrap in the main view!
pp & ps commands help in the meantime

+1 for word wrap. support -S like less.


istio/tools: present istio performance comparison results among different istio releases

Based on Istio users' feedback on slack

[ ] We should promote the istio performance dashboard https://perf.dashboard.istio.io/, so that istio users would know the current status of istio performance

[ ] Also, since our benchmark job is running on a daily builds, which is the alpha builds, we should run against the official releases as well and present the comparison results

[ ] The user also suggest, we should keep istio performance and scalability page in sync with each release or mark it as stale before we publish the perf number for the latest release.

cc @howardjohn @craigbox @brian-avery @frankbu

/assign

/assign

/assign

/assign

@craigbox If this issue is still open I would like to work on this to start contributing to istio. Do I need to manually assign myself this issue?

There's no /assign bot here, but you can (if you're a member?) assign yourself issues on GitHub, and you're welcome to work on anything!

This issue may be challenging to pick up since I think the entire data/test pipeline for the site is broken

Given the entire site is removed, I don't think this issue is valid. There may be a request in general to review a perf trackng system, though


Implement Matomo for usage analytics

Reason (Why?)
To improve the website a usage analytics tool should be implemented.
Solution (What?)
Use Matomo for usage analytics. For more information see the openArtBrowser documentation.
Weigh up how many information to use for the analysis. Implement a Cookie consent if needed.
Relation to other Issues
/
Acceptance criteria
/

We have to clear up one more thing, but what we will have to change:

Remove Opt-Out-button. We don't track users, but only collect statistics. So we don't need an opt out.
Change text in privacy section
Maybe anonymize more of a users  ip-adress in our matomo instance
Add matomo again


Dependency issue on mobile scanner 6.0.0

[!] CocoaPods could not find compatible versions for pod "GoogleDataTransport":
In Podfile:
firebase_messaging (from .symlinks/plugins/firebase_messaging/ios) was resolved to 15.1.3, which depends on
Firebase/Messaging (= 11.2.0) was resolved to 11.2.0, which depends on
FirebaseMessaging (~> 11.2.0) was resolved to 11.2.0, which depends on
GoogleDataTransport (~> 10.0)
mobile_scanner (from `.symlinks/plugins/mobile_scanner/ios`) was resolved to 5.2.3, which depends on
  GoogleMLKit/BarcodeScanning (~> 6.0.0) was resolved to 6.0.0, which depends on
    MLKitBarcodeScanning (~> 5.0.0) was resolved to 5.0.0, which depends on
      MLKitCommon (~> 11.0) was resolved to 11.0.0, which depends on
        GoogleDataTransport (< 10.0, >= 9.4.1)

Hi @ReymartC137 this issue has been resolved with latest version.


add world executable bit to license directory

adds missing world executable bit to the license directory

Thank you @xorond, merged. :)


Remove handcoded compiler lookups and enumeration.

@guybedford behaviour-preserving refactor to remove confusion about which compilers require sfx wrapping, and to make the automatic runtime injection easier

:+1:


Fatal error: Method Magento\Ui\TemplateEngine\Xhtml\Result::__toString() When generate Module with Image uploader for M2.2

When we try to create module for M2.2 version it missed the below code in Model/{YourModelFIle}.php in constructor.
public function __construct(         Context $context,         Registry $registry,         UploaderPool $uploaderPool,         AbstractResource $resource = null,         DbCollection $resourceCollection = null,         array $data = []     ) {         $this->uploaderPool = $uploaderPool; /* this line is missing */         parent::__construct($context, $registry, $resource, $resourceCollection, $data);     }
So it create error like Fatal error: Method Magento\Ui\TemplateEngine\Xhtml\Result::__toString() must not throw an exception, caught Error: Call to a member function getUploader() on null in D:\wamp64\www\mage227\vendor\magento\module-ui\Component\Wrapper\UiComponent.php on line 0
It was realy hard time to find what actually causing to occure this.

@zaheerbadi I could not reproduce this on the issue you are describing event with the module you sent me.


Support installation in submodules

Thanks a bunch for the pull request! I haven't used submodules before so it is a good opportunity to catch up on that.


Randomly displaying temperature between lowest and highest weather for the day

Hello,
Thank you very much for such nice plugin.
However I seem to be randomly getting temperatures from 11ºC (today's minimum temperature) to 21º (today's highest temperature) on page reload.
Heres my code:
loadWeather('40.278242,-8.281115','');

function loadWeather(location, woeid) {
    $.simpleWeather({
        location: location,
        woeid: woeid,
        unit: 'c',
        success: function(weather) {
            if(weather.code=='3200') iconCode = weather.todayCode;
            else iconCode = weather.code;

            html = '

'+weather.city+',';
            html += '
'+weather.temp+'°'+weather.units.temp+'
';
            $("#weather").html(html);
        },
        error: function(error) {
            $("#weather").html('');
        }
    });
}

Did not found any post with that issue so..
Do you have a fix or any idea why is it happening?
Thanks in advance.

It looks like Yahoo isn't returning a consistent temp over the API for that location. It's actually returning the code 3200 which is unknown weather condition, so it could be they just don't have data for that location through the API. It is something with Yahoo's data though. Here is the direct feed and as you refresh the current temp does change. You can see the same in their yql console for debugging.

That was my first thought. However it's weird that the temp is jumping between the min and the max.
Thanks anyway


Fixed NOCRYPTO mode, which is really "no entropy mode" for debugging.…

…  The goal is to have donut generate exactly the same file every time in NOCRYPTO mode so we can test and debug ports to other languages.
Changes:

Fixed includes so NOCRYPTO builds
Made all keys and IVs zero when NOCRYPTO
Made the random domain all AAAAA when NOCRYPTO

The initial fix for this was committed to the dev branch https://github.com/TheWover/donut/commit/1bf2fb67fae5a8bb8509f6865cfbcb0af35a3f21


[Request] Availability for other systems

Is it possible for this module to be adapted to other systems like Pathfinder 2e, for example? It looks incredibly useful as it is!

Hi @SonofOrion42  - sure, I'll work on 2e next.

Just to clarify - the module is system specific, but shouldn't be hard to adapt

Thank you! I look forward to it, along with many other 2e users, I'm sure. :)

I would love to see this as well tbh, its super helpful for me as GM when doing lots of combat rolls <3

Hey team
I do have this ready but will need some PF2E experts to test it.
Will sing out once it's available

V1.2 is live - this includes an initial version for P2FE.
Please highlight any rolls I've missed (not a P2FE player :))


Add code analysis and code coverage support on build

Must update github badges to the main project

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@13c6ab0). Click here to learn what that means.
The diff coverage is 0%.

@@            Coverage Diff            @@
##             master       #1   +/-   ##
=========================================
  Coverage          ?   12.82%
  Complexity        ?        4
=========================================
  Files             ?        1
  Lines             ?       39
  Branches          ?        9
=========================================
  Hits              ?        5
  Misses            ?       25
  Partials          ?        9

Impacted Files
Coverage Δ
Complexity Δ

...main/java/com/ic/invoicecapture/model/Company.java
12.82% <0%> (ø)
4 <0> (?)

Continue to review full report at Codecov.

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


Extract text from existing files in Scholarsphere

After the 4.8.0 release, we need to extract text from existing files in Scholarsphere and reindex them.
WDLL

identify file resources will text-base files
run a sub-set of the files, ~1000 or so, to test
run the remainder of the files

We should use the same process we did with virus checks to reduce download costs from Amazon.

Identify "extractable" text files in Scholarsphere as any file that is in a published work version and is either text or PDF. This is a bit of a thorny query, so I wrote it in SQL:
SELECT DISTINCT
  file_version_memberships.file_resource_id
FROM
  file_version_memberships
WHERE
  file_version_memberships.work_version_id IN (
    SELECT id
    FROM work_versions
    WHERE aasm_state = 'published'
  )
AND
  file_version_memberships.file_resource_id IN (
    SELECT id
    FROM file_resources
    WHERE file_data->'metadata'->>'mime_type' LIKE '%text%'
    OR file_data->'metadata'->>'mime_type' LIKE '%pdf%'
  )

This gives us a little over 5K files.
Copy and paste the sql into the console and run:
def run_extracted_text(id)
  file = FileResource.find(id)
  return unless file.extracted_text.empty?

  MetadataListener::Job.perform_later(
    path: [file.file_data['storage'], file.file_data['id']].join('/'),
    endpoint: FileUploader.api_endpoint(file),
    api_token: ExternalApp.metadata_listener.token,
    services: [:extracted_text]
  )
end

result = ActiveRecord::Base.connection.execute(sql)
ids = result.values.flatten
ids.map { |id| run_extracted_text(id) }

This is a complete list of the current mime types.
 "application/atom+xml",
 "application/epub+zip",
 "application/gzip",
 "application/msword",
 "application/octet-stream",
 "application/pdf",
 "application/postscript",
 "application/rtf",
 "application/vnd.adobe.flash.movie",
 "application/vnd.ms-access",
 "application/vnd.ms-asf",
 "application/vnd.ms-excel",
 "application/vnd.oasis.opendocument.spreadsheet",
 "application/vnd.oasis.opendocument.text",
 "application/vnd.openxmlformats-officedocument.presentationml.presentation",
 "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
 "application/vnd.openxmlformats-officedocument.wordprocessingml.document",
 "application/vnd.rar",
 "application/vnd.wordperfect",
 "application/x-7z-compressed",
 "application/x-bzip",
 "application/x-gzip",
 "application/x-hdf",
 "application/x-ipynb+json",
 "application/x-mobipocket-ebook",
 "application/x-ms-dos-executable",
 "application/x-ole-storage",
 "application/x-perl",
 "application/x-shellscript",
 "application/x-spss-por",
 "application/x-spss-sav",
 "application/x-tar",
 "application/x-zip-compressed",
 "application/xhtml+xml",
 "application/xml",
 "application/zip",
 "audio/mp4",
 "audio/mpeg",
 "audio/x-aifc",
 "audio/x-wav",
 "font/ttf",
 "image/bmp",
 "image/gif",
 "image/jp2",
 "image/jpeg",
 "image/png",
 "image/tiff",
 "image/vnd.dxf",
 "image/x-eps",
 "image/x-panasonic-rw2",
 "image/x-tga",
 "message/rfc822",
 "model/iges",
 "text/csv",
 "text/html",
 "text/plain",
 "text/rtf",
 "text/x-csrc",
 "text/x-matlab",
 "text/x-python",
 "text/x-python-script",
 "text/x-sagemath",
 "text/x-tex",
 "video/mp4",
 "video/quicktime",
 "video/x-msvideo",

This has been completed for text and pdf files. we can re-run on any other mimetype we think we should.
We had one failed job for https://scholarsphere.psu.edu/api/v1/files/8057
with
Error performing MetadataListener::Job (Job ID: 6a4fd218-66d5-4dee-aadc-1372ebbb5397) from Async(metadata) in 2875.7ms: RubyTikaApp::CommandFailedError (execution failed with status WARN  New fonts found, font cache will be re-built

Some weirdo font thing? we might be able to install fonts in the mdl to address, but since it was only one file, i'm curious if the effort is worth it. noting here for reference


Undo for git-rename-branch

@ricmatsui @charlierudolph @allewun

adds the undo path for git-rename-branch
splits up the push_branch helper into one that creates a new remote branch (create_tracking_branch), and one that merely pushes an existing branch (push_branch)

implements #519 and #472
unblocks #664

bump

All comments addressed

All comments addressed

:ship:


Crash at sending of 6th message

The first 5 messages are sent without problems, but at the 6th the program completely crashes - not in the way a Node.js program normally exits with an error, but it seems to be the interpreter itself crashing:

node: malloc.c:2372: sysmalloc: Assertion `(old_top == (((mbinptr) (((char *) &((av)->bins[((1) - 1) * 2])) - __builtin_offsetof (struct malloc_chunk, fd)))) && old_size == 0) || ((unsigned long) (old_size) >= (unsigned long)((((__builtin_offsetof (struct malloc_chunk, fd_nextsize))+((2 *(sizeof(size_t))) - 1)) & ~((2 *(sizeof(size_t))) - 1))) && ((old_top)->size & 0x1) && ((unsigned long) old_end & pagemask) == 0)' failed.
Aborted

This is under Node v7.9.0 on a Raspberry Pi 3 running Raspbian GNU/Linux 8.0 (jessie).
The behavior is reproducible: it's always at the 6th message. The first five arrive correctly. I think my code is according to the instructions: at the start of the program it does
var svmq = require('svmq');
var inqueue = new svmq(55809);
var sendarray = new Uint8Array(16);

and after that, each time a message must be sent,  sendarray is populated with the right data, after which this is run:
inqueue.push(Buffer.from(sendarray), {type: 3}, (err) => {
    		if (err) console.log('Error: '+err);
    		else console.log('Command put on the message queue');
    	});

Hey there, thanks for the report. Have you tried the same code on any other environments?
i.e. different Node versions, different OS, etc.
I'll look into this as best I can. Any additional troubleshooting/info on your end would be appreciated as well.

Hi, thanks for your quick response. I haven't tried on other platforms, but I suppose the crash wouldn't happen there, since what I'm doing is standard usage (my code is basically copied from the instructions). Rather than something unusual I'm trying to do, the problem might be something on this platform.
Can I help with further data and/or further experiments? E.g. trying with a modified version of your C++ code, collecting certain debugging data etc.

Some more interesting facts have emerged; I hope they can help you find the problem.

The number of bytes per IPC message matters
The content of the message matters.

Here's some testing code I used:
// tests/ipctest.js
// test Inter-Proces Communication

const svmq = require('svmq');
var inqueue = new svmq(55809);

var sendarray = new Uint8Array(10);
sendarray.fill(0);
sendarray[1]=97;
sendarray[0]=98;
sendarray[8]=16;

var n = 0;

setInterval(function() {
	inqueue.push(Buffer.from(sendarray), (err) => {
		n++;
		console.log('Message '+n.toString()+' pushed');
	})
}, 1000);

This sends a message every second. In the form above, it doesn't crash. But:

If I change the size of the message to 11 bytes (using Uint8Array(11) instead of (10)), it crashes after sending 3 messages
If I populate the 10-byte message with only 0's (leaving out the three statements sendarray[1]=97; etc.), it crashes after sending 11 messages.
If I change the size to 11 bytes but also populate bytes 2, 9 and 10 with nonzero values, it doesn't crash (at least not in the first 250 messages).

Again, these behaviors are reproducible: it's 3 messages every time for the first situation, and 11 for the second.
Does this give any clues as to the cause of the problem?

As an additional test, I tried the same script on a fresh install of Raspbian, but with and older version of Node.js: v4.8.2. With 11-byte messages (Uint8Array(11)), it crashes after sending 3 messages, just as it does on Node v7.9.0.

Would rebuilding the msg.node executable with the --debug option be useful? How could I then get useful output from it?

The crash always happens at one place in the functions.cc file, in line 46:
   msgbuf *message = new msgbuf;

It clearly has something to do with memory management (as the error message already reveals). For instance, if I add a line after line 52 like
   delete message;

the crashes occur under different circumstances. The two cases mentioned above don't crash anymore, but a new crash is introduced e.g. if I send an 11-byte message consisting of only zeros:
*** Error in `node': free(): invalid next size (fast): 0x72a00468 ***

which happens at the point where the new delete statement is. According to some web pages, this happens when you try to free memory that has already been freed.
Could the problem be to do with asynchronous operation? The code uses an AsyncQueueWorker to start the process. So perhaps it doesn't free up its memory in one case, and frees it up too soon in the other case. What do you think?

Hey @bvandergiessen thanks for your patience and help debugging. I fired up Valgrind and found a couple memory management issues. I'm admittedly not very familiar with C/C++ so bear with me.
I pushed a commit - fb6eb27 - on a separate branch: issues/1
Please try those changes and see if the issue goes away.
For what it's worth, I wasn't able to reproduce the crashes on Debian and Node v7.10. I'm wondering if it's something specific to Raspian. In any case, the poor memory management was there so I'm hoping to fix that regardless.

So far this seems to have stopped the crashes.
Hard to understand fully, since it just changes C++ new and delete to C malloc and free, but I guess that might do the job (I don't really know how memory management works in C++).
Thanks, I'll do some more testing tomorrow and if no further crashes occur I'll close the issue.

Glad to hear, it was a shot in the dark. I'm not entirely sure why either given my minimal understanding of memory management in C/C++ as well. I grabbed the malloc line from here, which shows what I assume is the correct way to dynamically allocate enough memory based on the incoming buffer size. Valgrind shows that there was a memory leak which is fixed now, so I'm going to assume I was doing something incorrectly before. Let me know if you notice any more crashes or unexpected behavior.
I'll probably make a couple small adjustments, add some basic unit tests, and merge the changes into master later this week. I wrote this about a year ago and haven't really touched it since, so it's taking me a little bit to get reacquainted. Once the fix is published to npm, I'll let you know.
Out of curiosity, what are you using this library for?

Thinking a bit more, the difference of course is that the new statement allocated just the 'official' amount of memory, with just 1 byte for the message field of the struct. The malloc statement that's there now actually allocates more memory: enough for the entire message. That explains why the memory overflows occurred in the old version.
I'd expect that in the other class, ReceiveMessageWorker, the same problem might occur: not enough memory may have been reserved to store the incoming message. In addition, the current version of the code, with message = new msgbuf; (line 87 in the new branch), doesn't comply with the documentation: the second argument of msgrcv should be a pointer to a msgbuf struct, instead of a msgbuf struct itself. So perhaps you can make it work by allocating bufferLength+4 bytes to a struct msgbuf * variable and pass that into the msgrcv as the second argument.
I'm working on a Node.js program that helps manage lights (turning them on and off, dimming, reacting to presence detection sensors). The direct contact with the lights is managed by a C library that runs in the background. In an older version, the Node.js program communicated with the C program through a FIFO, but I like the System V message queue much better because it doesn't ever get blocked when different programs try to write to it or when a program hasn't had time to read the messages yet.

Attached is a patch of functions.cc (starting from the version in the new branch) that embodies my remarks above, as well as some other thoughts:

puts the sizeof(msgbuf) in a constant so it doesn't have to be calculated every time
corrects the type of dataLength
does memory allocation the same way in the ReceiveMessageWorker class as you did in the SendMessageWorker class, and makes message a pointer
casts info[2] as a long just in case the system doesn't have 32-bit long type (some systems use 64 bits).

I haven't seen any crashes yet, so I'll close the issue.
Attachment: patch.txt

👍  Merged and published to npm @ v1.0.5.

Hi @jhead, it looks like the additional patch from my comment above does more harm than good.
Sending messages now works without problems, due to the changes introduced in the new branch. It is receiving (which had not been tested yet) where crashes occur. Without my patch that seems to happen less (or perhaps not at all).
The type of crash is a segmentation fault (i.e. trying to write to memory that's not available), and it happens at a place in the program where the patch didn't even make any change: line 103,
argv[1] = Nan::CopyBuffer(message->mtext, bufferLength).ToLocalChecked();

Apparently the code tries to write some copied bytes to some buffer argv[1] at a place where it can't always write. It doesn't just crash, it also misreports the content of the messages - another thing that didn't go wrong with the version from just before my patch.
I was simply making it read from a queue that's filled up with identical 12-byte messages (nothing special). The crash happens at the third 12-byte message I'm retrieving from the IPC queue.
I still think the code should work better (with fewer potential memory issues) with that patch, but for the moment it seems to have been a regression - sorry!
Do you have an opportunity to fire up Valgrind again and see what comes up?

Can you try with the latest commit? 8284794
I noticed that we were using a local message variable instead of the instance variable, so the pointer to the correct struct holding the receive buffer wasn't being passed to CopyBuffer() or freed in the callback.

Seems to work perfectly now. You're getting the hang of C/C++ memory management :)
I'm closing the issue again, it seems to have been resolved. Thanks!

It has now worked for another week without problems. I guess you might put out a new version on npmjs.com.

Done, published in v1.0.6. Thanks for your help!


Bug：The new version of the plugin will cause another plugin obsidian-shellcommands to fail

The new version of the plugin will cause another plugin obsidian-shellcommands to fail. The old version 0.1.2 is normal and will not conflict.
Can this compatibility issue be resolved? Thanks!
obsidian-shellcommands:  https://github.com/Taitava/obsidian-shellcommands
Best Regards.

I don't use that plugin. Can you provide some more details around how the plugin fails? If there are any errors in the dev tools console, that would be helpful.

Hi， @nothingislost
Here is the console log.
obsidian.md-1642819080523.log

Oh, so, I'm not the only one. If at last I check the issue here before I make a issue on shell commands...
So, here is the discussion in Shell commands : https://github.com/Taitava/obsidian-shellcommands/discussions/137
There is no message from Dynamic, but on Shell  :

Hi, I'm the maintainer of the mentioned plugin. I'm currently in a rush and don't have time to read through this issue thoroughly. I just wanted to say that if you need any help from me inspecting this issue (or if there's anything to fix in my plugin), I'm ready to help. :slightly_smiling_face:

@tyf2018 In the title you mention The new version of the plugin will cause.... Does new version mean 0.1.3? This can help me to look into this. If this is the case, then I can compare the changes between 0.1.2 and 0.1.3.

@tyf2018 In the title you mention The new version of the plugin will cause.... Does new version mean 0.1.3?

Thanks for taking the time to fix this, the new version refers to 0.1.6.
In fact, I just also tried the 0.2.1 version of dynamic-highlights, which also caused the error.

I can also confirm that disabling dynamic highlights allows me to use the settings tab of Shell Commands again.

also, the Dynamic Highlights plugin seems to dislike shell commands so much, when I have entered new settings in the shell commands by disabling dynamic highlights, and then enable dynamic highlights again, it completely shuts me off from the shell commands:

Also, shell commands that include variables are also blocked as long as Dynamic highlights is enabled.

@Taitava this appears to be due to the fact that I'm patching RegExp Match to include capture group indices (https://github.com/tc39/proposal-regexp-match-indices) This is an additive patch and shouldn't change the default behavior of RegExp Match but it appears the fact that the match data structure now has additional fields is throwing off some of your logic:
Without the patch

With the patch

Notice the new indices key. That appears to be breaking your logic here: https://github.com/Taitava/obsidian-shellcommands/blob/2b05ffd955ebf57288d9cb03551267c564ff42b5/src/variables/parseShellCommandVariables.ts#L39 because it's iterating over the indices key and parameter_name is undefined

I'll look into what I can do to limit the scope of this patch but the ECMAScript proposal for this RegExp feature has been accepted so it would probably be good to handle it within Shell Commands if possible,

v0.2.2 of Dynamic Highlights should fix this incompatibility. The RegExp shim has been changed to not affect all instances of RegExp so it should no longer affect other plugins.

Did you restart Obsidian after upgrading Dynamic Highlights? I don't see this behavior.

oh right, I haven't.
After restart, everything works now. Thanks!

v0.2.2 of Dynamic Highlights should fix this incompatibility. The RegExp shim has been changed to not affect all instances of RegExp so it should no longer affect other plugins.

Thank you a lot! 😎 Nice that you found a solution! 🙂 It might have been hard for me to spot this regex issue.

Notice the new indices key. That appears to be breaking your logic here: https://github.com/Taitava/obsidian-shellcommands/blob/2b05ffd955ebf57288d9cb03551267c564ff42b5/src/variables/parseShellCommandVariables.ts#L39 because it's iterating over the indices key and parameter_name is undefined
I'll look into what I can do to limit the scope of this patch but the ECMAScript proposal for this RegExp feature has been accepted so it would probably be good to handle it within Shell Commands if possible,

I'll definitely need to change that part of the code. I created a new issue for SC for fixing it: https://github.com/Taitava/obsidian-shellcommands/issues/152

Just for the record, I've fixed the bad logic in my plugin now. The fix is just not released yet, but will be in SC 0.11.0. Thank you to everybody for the co-operation! 😎


Aws batch integration

Changes

Changes to pyspacer == 0.2.9 which supports AWS Batch.
Implements a BatchQueue for handing submission and collection of jobs.
Adds a BatchJob table to the vision_backend module.
Remove dependencies on SQS so I removed all those settings.

How to check
Run
python manage.py vb_regtests

Then monitor
http://<IP_ADDRESS>:8000/admin/vision_backend/batchjob/
and
https://us-west-2.console.aws.amazon.com/batch/old/home?region=us-west-2#/dashboard

That was fast! Nice job. The new table looks good, and the regtest worked fine for me, including monitoring using the links you provided.
I see there are still a couple of references to SQS in the code, including the production settings. Did you just miss those, or is there a reason for leaving them there?

That was fast! Nice job. The new table looks good, and the regtest worked fine for me, including monitoring using the links you provided.

Thanks for quick review.  Glad it worked.

I see there are still a couple of references to SQS in the code, including the production settings. Did you just miss those, or is there a reason for leaving them there?

I changed the production settings -- thanks for catching that! The other mentions are in the SQSQueue class itself and the factory. I think we can leave those in since the class itself is correct. I did add a ValueError if someone tries to initialize a SQSQueue through the factory.  LMK what you think.

I changed the production settings -- thanks for catching that! The other mentions are in the SQSQueue class itself and the factory. I think we can leave those in since the class itself is correct. I did add a ValueError if someone tries to initialize a SQSQueue through the factory. LMK what you think.

Okay, yeah, that works. We can always remove SQSQueue sometime later if we're sure we don't need any part of it anymore.
Looks good to merge then.


Gate on magicleap

The magicleap builders are pretty reliably green (when I'm not messing around with the app that is) so we should be file gating on the build.

This change is

r? @jdm

:pushpin: Commit de6b192 has been approved by jdm

@bors-servo r+

:hourglass: Testing commit de6b19290d68486412211738dd6603361c22bb0d with merge d970b38a9e525e32c57375aec791234172eeb1f8...

:sunny: Test successful - status-travis
Approved by: jdm
Pushing d970b38a9e525e32c57375aec791234172eeb1f8 to master...


Run RPM Gradle Tasks without Requiring a SCons Install

As an OpenGEE user, and package maintainer, I would like to be able to run RPM Gradle tasks, such as clean, or others, without requiring a full build and staged install of OpenGEE.
Steps to Reproduce:

Remove staged install directories, e.g.:

rm -Rf /tmp/fusion_os_install

Run a trivial Gradle task, such as clean:

cd earthenterprise/earth_enterprise/rpms
./gradlew clean

Observed Behavior
FAILURE: Build failed with an exception.

* Where:
Build file '/home/pav/prod/bitbucket.com/t-sciences/geoplatform/earthenterprise_code/earthenterprise/earth_enterprise/rpms/build.gradle' line: 77

* What went wrong:
A problem occurred evaluating root project 'rpms'.
> /tmp/fusion_os_install/gee_long_version.txt (No such file or directory)

Expected Behavior
BUILD SUCCESSFUL in 6s
1 actionable task: 1 up-to-date

Looks like release_5.2.1 has now been merged into master, so I'm closing this one


Adding a Queue Size widget (based on QueueSize metric)

Issue #, if available:
Description of changes:
Adding a new widget based on QueueSize metric.
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Thank you for your contribution, the change have been integrated in release 1.0.6 https://github.com/amazon-connect/amazon-connect-snippets/commit/c356c69c4eb16982570aa84cf7d7e8fd43939d86


jupyter kernel install path issue on Mac

The issue:
# ENV
export JUPYTER_CONFIG_DIR="$HOME/.config/jupyter"

# install kernel
brew install zeromq pkg-config
cargo install evcxr_jupyter --no-default-features
evcxr_jupyter --install

The kernel is then installed into '~/.config/jupyter/kernels', and the jupyter lab cannot the identify the kernel. I have to manually move the kernel into the right location.
> cp -r ~/.config/jupyter/kernels/rust  /Users/sid/Library/Jupyter/kernels/

>  jupyter kernelspec list
Available kernels:
  julia-1.5    /Users/sid/Library/Jupyter/kernels/julia-1.5
  rust         /Users/sid/Library/Jupyter/kernels/rust
  python3      /Users/sid/.config/pyenv/versions/3.9.1/envs/abc/share/jupyter/kernels/python3

Thanks for the feedback @sidkang
The kernel was installed under ~/.config/jupyter because you had JUPYTER_CONFIG_DIR set to that directory. I'm guessing perhaps you had that variable set when installing the kernel, but not when running jupyter notebook? Why did you set JUPYTER_CONFIG_DIR? Was it because you wanted to use a non-standard location for jupyter kernels?

@davidlattimore Hi, I set the JUPYTER_CONFIG_DIR path to keep personal configs persistent in the ~/.config path which will sync among all my devices. I think maybe the default jupyter kernel path on Mac is $USER/Library/Jupyter/kernels. I've installed R's and Julia's kernel recently, they both just works.

Thanks for the explanation. I think you're right that I probably shouldn't be using JUPTYER_CONFIG_DIR. I'm not sure why I used it and I can't find any documentation to suggest that I should be using it in the way that I am, so I'll remove its use.


End to End architecture design - LLM Based Recommendation Engine

Hi Team,
I have been working on Recommendation system and have developed some solution using LLM embeddings.
I would like to contribute a End-to-end recommendation engine based on all Azure Component, LLM and Vector DB.
I would like to contribute end to end architecture.
Previous work in architecture:
I have recently published LLM based Search Engine Architecture.
<EMAIL_ADDRESS>Please let me know if you need more information from my end.

@BalaramUOA
Since we have not heard back from you, we will now proceed to close this thread.If there are further questions regarding this matter, please tag me in your reply. We will gladly continue the discussion and we will reopen the issue.

Hi @SaibabaBalapur-MSFT, Thanks for your response. Sorry I missed the context. could you please specify what documents and steps you are referring to ?

@BalaramUOA
It would be great if you could add the documentation link, which your following?

I don’t have any specific documentation link which I can specifically refere. This is a general architecture designed from my experience and learning from Google, Azure and AWS architecture focum and contents. Are you looking for any references for this ?  FYI: The proposed architecture for LLM base Rco will be somewhat like this<EMAIL_ADDRESS>

@BalaramUOA
Please Note, GitHub forum is dedicated for Microsoft documentation related issues. So kindly share Microsoft document link which you are following for these steps.

@SaibabaBalapur-MSFT
I would like to propose new content and I route to this page based on Microsoft Document Link : https://learn.microsoft.com/en-us/contribute/content/architecture-center/aac-contribute

@martinekuan
Please review it.

@martinekuan @SaibabaBalapur-MSFT any update please ?

Thank you for your feedback.  We have created internal ticket 177431 to track and investigate this issue.

#please-close


Add doc-update-roadmap.md

We should convert this to an issue and pin to this repo instead per talking with Lisa and Shawn

I will convert to issue and send a link to Jonny !

https://github.com/substrate-developer-hub/substrate-docs/issues/1131


Error: Uncaught Exception: Error: Unable to find a valid app     at Object. ...

I have been trying to package up my app with no luck. At first I was trying to use electron-packager to package up my whole project without ng build, but this gave me a static index.html, breaking my angular 2 app. Now I am using electron-packager on my dist folder after using ng build and I am getting this error:
Uncaught Exception:
Error: Unable to find a valid app
    at Object.<anonymous> .../App.app/Contents/Resources/electron.asar/browser/init.js:121:9)
    at Module._compile (module.js:556:32)
    at Object.Module._extensions..js (module.js:565:10)
    at Module.load (module.js:473:32)
    at tryModuleLoad (module.js:432:12)
    at Function.Module._load (module.js:424:3)
    at Module.runMain (module.js:590:10)
    at run (bootstrap_node.js:402:7)
    at startup (bootstrap_node.js:157:9)
    at bootstrap_node.js:521:3

I am passing:
"macBuild":"electron-packager ./dist App --out=releases/ --platform=darwin --arch=all --ignore=electron-packager --icon=icon.icns --overwrite --asar",

This also deletes my node_modules for some reason after it builds.
Originally I was passing:
    "macBuild":"electron-packager . App --out=releases/ --platform=darwin --arch=all --ignore=electron-packager --icon=icon.icns --overwrite --asar",

But that gave me a static index

If you're having issues with using Angular 2 with Electron I'd recommend using electron-forge.
It has built in support for Angular 2 (thanks to electron-compile), you can see an example here
https://github.com/electron-userland/forge-examples/tree/master/angular2
It should handle all your troubles for you while still using electron-packager under the hood 👍

I just attempted electron-forge import, but it failed when trying to install electron-prebuilt-compile, not sure if I should continue messing with it or not

Please file a bug in the Electron Forge project (I think it has to do with the version of Electron you're using). With regards to your Electron Packager problem, my suspicion is that you're not setting main in package.json to an appropriate value.

but it failed when trying to install electron-prebuilt-compile,

Interesting, what error does it fail with?

An unhandled error has occurred inside Forge:
Failed to install modules<EMAIL_ADDRESS>
With output: npm ERR! Darwin 16.3.0
npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "install"<EMAIL_ADDRESS>"--save-exact" "--save"
npm ERR! node v7.4.0
npm ERR! npm  v4.0.5
npm ERR! code ETARGET

Yup, I've notified the maintainer of electron-prebuilt-compile.

Okay so should I continue to use this module or...??

Use 1.4.12 temporarily.


Action fails to find project when there are more than 30 projects

The action can't find the project if there are more than 30 projects, since the API being used to list all projects is paginated and returns at most 30 projects (by default).
If this API is going to be used, then it will need to be paginated.
It would be easier (and faster) to ask for the project id instead of trying to determine it from the URL (a little more work for user but I think a decent tradeoff)

Hi thank you for reporting this! I will look into that next month as I can find some time for it.

It would be easier (and faster) to ask for the project id instead of trying to determine it from the URL (a little more work for user but I think a decent tradeoff)

What do you mean? use the Project name instead of the URL? I decided to keep the URL, as that let the user change the name of the project without impacting the action. Or are you referring to another API? Thanks!
I welcome suggestions and PRs to improve the usability of this action

GitHub have recently started showing the defaults in the API docs, so it's more obvious that the 30 limit is there. A quick fix before getting into pagination is to bump per_page up to 100.

GitHub have recently started showing the defaults in the API docs, so it's more obvious that the 30 limit is there. A quick fix before getting into pagination is to bump per_page up to 100.

That is a stop gag measure that doesn't get you very far for mid sized orgs.
I've submitted PR #69 that implements pagination


style(ast_tools): fix formatting

[!WARNING]
This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
Learn more

#6675
#6674
#6673  👈
#6672
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @overlookmotel and the rest of your teammates on  Graphite

Trivial change, so merging without review.

Merge activity

Oct 19, 4:49 AM EDT: The merge label '0-merge' was detected. This PR will be added to the Graphite merge queue once it meets the requirements.


Not able to install docker image with docker-machine or Kitematic on OS X

Hi,
first of all thanks for huginn. This looks awesome. Unfortunately, I can't get the docker image cantino/huginn working. I followed the instruction for both docker-machine and Kitematic at https://github.com/cantino/huginn/blob/master/doc/docker/install.md. Following you will see the log output from Kitematic after restarting the image:
21 15:28:34,385 CRIT Set uid to user 0
2015-08-21 15:28:34,385 WARN Included extra file "/etc/supervisor/conf.d/supervisord.conf" during parsing
2015-08-21 15:28:34,386 WARN Included extra file "/etc/supervisor/conf.d/foreman.conf" during parsing
2015-08-21 15:28:34,386 WARN Included extra file "/etc/supervisor/conf.d/bootstrap.conf" during parsing
2015-08-21 15:28:34,443 INFO RPC interface 'supervisor' initialized
2015-08-21 15:28:34,443 CRIT Server 'unix_http_server' running without any HTTP authentication checking
2015-08-21 15:28:34,444 INFO supervisord started with pid 1
2015-08-21 15:28:35,463 INFO spawned: 'stdout' with pid 21
2015-08-21 15:28:35,465 INFO spawned: 'bootstrap' with pid 22
2015-08-21 15:28:35,475 INFO success: bootstrap entered RUNNING state, process has stayed up for > than 0 seconds (startsecs)
2015-08-21 15:28:35,803 INFO spawned: 'mysqld' with pid 29
2015-08-21 15:28:37,118 INFO success: stdout entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2015-08-21 15:28:37,120 INFO success: mysqld entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
bootstrap stdout | DATABASE_HOST=
bootstrap stdout | mysqld: available
bootstrap stdout | mysqld: added process group
bootstrap stdout | Starting mysql server...
mysqld stderr | 150821 15:28:36 mysqld_safe Can't log to error log and syslog at the same time.  Remove all --log-error configuration options for --syslog to take effect.
mysqld stdout | 150821 15:28:36 mysqld_safe Logging to '/var/log/mysql/error.log'.
mysqld stdout | 150821 15:28:36 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
bootstrap stdout | .2015-08-21 15:28:38,285 INFO spawned: 'foreman' with pid 411
2015-08-21 15:28:38,287 INFO success: foreman entered RUNNING state, process has stayed up for > than 0 seconds (startsecs)
2015-08-21 15:28:38,299 INFO exited: bootstrap (exit status 0; expected)
foreman stderr | rake aborted!
foreman stderr | NameError: uninitialized constant LetterOpenerWeb
/app/config/routes.rb:80:in `block in <top (required)>'
/app/vendor/bundle/ruby/2.1.0/gems/actionpack-4.2.2/lib/action_dispatch/routing/route_set.rb:432:in `instance_exec'
/app/vendor/bundle/ruby/2.1.0/gems/actionpack-4.2.2/lib/action_dispatch/routing/route_set.rb:432:in `eval_block'
/app/vendor/bundle/ruby/2.1.0/gems/actionpack-4.2.2/lib/action_dispatch/routing/route_set.rb:410:in `draw'
/app/config/routes.rb:1:in `<top (required)>'
/app/vendor/bundle/ruby/2.1.0/gems/railties-4.2.2/lib/rails/application/routes_reloader.rb:40:in `block in load_paths'
/app/vendor/bundle/ruby/2.1.0/gems/railties-4.2.2/lib/rails/application/routes_reloader.rb:40:in `each'
/app/vendor/bundle/ruby/2.1.0/gems/railties-4.2.2/lib/rails/application/routes_reloader.rb:40:in `load_paths'
/app/vendor/bundle/ruby/2.1.0/gems/railties-4.2.2/lib/rails/application/routes_reloader.rb:16:in `reload!'
/app/vendor/bundle/ruby/2.1.0/gems/railties-4.2.2/lib/rails/application/routes_reloader.rb:26:in `block in updater'
/app/vendor/bundle/ruby/2.1.0/gems/activesupport-4.2.2/lib/active_support/file_update_checker.rb:75:in `call'
/app/vendor/bundle/ruby/2.1.0/gems/activesupport-4.2.2/lib/active_support/file_update_checker.rb:75:in `execute'
/app/vendor/bundle/ruby/2.1.0/gems/railties-4.2.2/lib/rails/application/routes_reloader.rb:27:in `updater'
/app/vendor/bundle/ruby/2.1.0/gems/railties-4.2.2/lib/rails/application/routes_reloader.rb:7:in `execute_if_updated'
/app/vendor/bundle/ruby/2.1.0/gems/railties-4.2.2/lib/rails/application/finisher.rb:69:in `block in <module:Finisher>'
/app/vendor/bundle/ruby/2.1.0/gems/railties-4.2.2/lib/rails/initializable.rb:30:in `instance_exec'
/app/vendor/bundle/ruby/2.1.0/gems/railties-4.2.2/lib/rails/initializable.rb:30:in `run'
/app/vendor/bundle/ruby/2.1.0/gems/railties-4.2.2/lib/rails/initializable.rb:55:in `block in run_initializers'
/app/vendor/bundle/ruby/2.1.0/gems/railties-4.2.2/lib/rails/initializable.rb:54:in `run_initializers'
/app/vendor/bundle/ruby/2.1.0/gems/railties-4.2.2/lib/rails/application.rb:352:in `initialize!'
/app/vendor/bundle/ruby/2.1.0/gems/railties-4.2.2/lib/rails/railtie.rb:194:in `public_send'
/app/vendor/bundle/ruby/2.1.0/gems/railties-4.2.2/lib/rails/railtie.rb:194:in `method_missing'
/app/config/environment.rb:8:in `<top (required)>'
/app/vendor/bundle/ruby/2.1.0/gems/railties-4.2.2/lib/rails/application.rb:328:in `require_environment!'
/app/vendor/bundle/ruby/2.1.0/gems/railties-4.2.2/lib/rails/application.rb:457:in `block in run_tasks_blocks'
Tasks: TOP => db:migrate => environment
(See full trace by running task with --trace)
2015-08-21 15:28:48,529 INFO exited: foreman (exit status 1; not expected)
2015-08-21 15:29:01,804 WARN received SIGTERM indicating exit request

So there are warnings (errors) with MySQL and while running some rake tasks:
foreman stderr | rake aborted!
foreman stderr | NameError: uninitialized constant LetterOpenerWeb

Any idea what is wrong? Which system info do you need? I am using Mac OS X 10.10.5 (14F27) and Virtualbox 5.0.2 r102096
Thanks a lot and all the best
Andy

@TildeWill added LetterOpenerWeb recently, so that's a bit worrying.
I don't see it running bundle.  Is the Docker image running in the production or development Rails env?
I may have to dig into this tomorrow unless @ianblenke, @TildeWill, or @dsander know what's going on.

This does seem like a dependency isn't being fulfilled:
bootstrap stdout | .2015-08-21 15:28:38,285 INFO spawned: 'foreman' with pid 411
2015-08-21 15:28:38,287 INFO success: foreman entered RUNNING state, process has stayed up for > than 0 seconds (startsecs)
2015-08-21 15:28:38,299 INFO exited: bootstrap (exit status 0; expected)
foreman stderr | rake aborted!
foreman stderr | NameError: uninitialized constant LetterOpenerWeb
/app/config/routes.rb:80:in `block in <top (required)>'

I can't find mention of LetterOpenerWeb outside of this singular occurrence:
https://github.com/cantino/huginn/blob/master/config/routes.rb#L80
mount LetterOpenerWeb::Engine, at: "/letter_opener"

Looking at the git blame for that, it looks like PR #967 over a week ago may have introduced that.
There is indeed a letter_opener_web dependency in the Gemfile.
This suggests that bundler should have included it.
Looking at the Dockerfile, the CMD starts /scripts/init
https://github.com/cantino/huginn/blob/master/docker/Dockerfile#L31
CMD ["/scripts/init"]

The /scripts/init comes from the docker/scripts/ directory in the project:
https://github.com/cantino/huginn/blob/master/docker/Dockerfile#L22-L23
ADD scripts/ /scripts
RUN chmod 755 /scripts/setup /scripts/init

So what is running is this script:
https://github.com/cantino/huginn/blob/master/docker/scripts/init
Which in turn creates a supervisord config and runs it:
https://github.com/cantino/huginn/blob/master/docker/scripts/init#L167-L183
Which first generates a script to start huginn:
https://github.com/cantino/huginn/blob/master/docker/scripts/init#L146-L163
#!/bin/bash -e
source /app/.env
# Assuming we have a created database, run the migrations and seed it idempotently.
[ -z "\${DO_NOT_MIGRATE}" ] && sudo -u huginn -EH bundle exec rake db:migrate
[ -z "\${DO_NOT_SEED}" ] && sudo -u huginn -EH bundle exec rake db:seed
[ -n "\$INTENTIONALLY_SLEEP" ] && sleep \$INTENTIONALLY_SLEEP
# Fixup the Procfile and prepare the PORT
[ -n "\${DO_NOT_RUN_JOBS}" ] && perl -pi -e 's/^jobs:/#jobs:/' /app/Procfile
perl -pi -e 's/rails server -b<IP_ADDRESS>\$/rails server -b <IP_ADDRESS> -p \\\$PORT/' /app/Procfile
export PORT="\${PORT:-3000}"
# Start huginn
exec sudo -u huginn -EH bundle exec foreman start

As you can see,  that script does indeed run bundle exec foreman start as the huginn user.
It then generates a foreman configuration to run that as a process:
cat > /etc/supervisor/conf.d/foreman.conf <<EOF
[program:foreman]
command=/tmp/foreman.sh
priority=10
directory=/app
process_name=%(program_name)s
autostart=false
autorestart=false
stdout_events_enabled=true
stderr_events_enabled=true
stopsignal=TERM
startsecs=0
stopwaitsecs=1
EOF

# start supervisord
exec /usr/bin/supervisord -c /etc/supervisor/supervisord.conf

It is easy to reproduce the problem:
$ docker run -ti --name huginn cantino/huginn
...
foreman stderr | rake aborted!
NameError: uninitialized constant LetterOpenerWeb
foreman stderr | /app/config/routes.rb:80:in `block in <top (required)>'
...

Now that we have an initialized container, let's try running the /tmp/foreman.sh script directly:
$ docker exec -ti huginn bash -li
root@87d02a6860e5:/# cd /app
root@87d02a6860e5:/app# bash -x /tmp/foreman.sh

That errors out the same way.
I tried adding a require, but it's not that it's not requiring something that is there... the bundle install simply isn't installing it.
I can fix this manually by doing a:
bundle install --with development

Now if I run bash -x /tmp/foreman.sh again, it works just fine.
So the problem here is that the bundle install isn't including the development group from the Gemfile.
That seems to be a problem here:
https://github.com/cantino/huginn/blob/master/docker/scripts/setup#L32
sudo -u huginn -H bundle install --deployment --without development test
So, to fix this, I've generated PR #982, which should address this problem.

What RAILS_ENV does Docker run in?

@andywenk The latest docker image should now work again. Do you mind checking it?

@dsander Yay - thanks a lot. After
docker pull docker pull cantino/huginn

in docker-machine and
docker run -it -p 3000:3000 cantino/huginn

the conatiner started and I was able to login ti huginn.
Short hint. I still get this MySQL warning:
bootstrap stdout | Starting mysql server...
mysqld stderr | 150823 12:25:00 mysqld_safe Can't log to error log and syslog at the same time.
   Remove all --log-error configuration options for --syslog to take effect.
mysqld stdout | 150823 12:25:00 mysqld_safe Logging to '/var/log/mysql/error.log'.
mysqld stdout | 150823 12:25:00 mysqld_safe Starting mysqld daemon with databases from
  /var/lib/mysql

Thanks again and all the best
Andy