panic: fail to set message file(fr-CA): open conf/locale/locale_fr-CA.ini: no such file or directory

build from source.
[root@host-80 gogs]# ./gogs web
2015/09/29 15:07:46 [T] Custom path: /root/go/src/github.com/gogits/gogs/custom
2015/09/29 15:07:46 [T] Log path: /root/go/src/github.com/gogits/gogs/log
2015/09/29 15:07:46 [I] Gogs: Go Git Service <IP_ADDRESS>6 Beta
2015/09/29 15:07:46 [I] Log Mode: File(Trace)
2015/09/29 15:07:46 [I] Cache Service Enabled
2015/09/29 15:07:46 [I] Session Service Enabled
2015/09/29 15:07:46 [I] Run Mode: Production
2015/09/29 15:07:46 [T] Doing: CheckRepoStats
panic: fail to set message file(fr-CA): open conf/locale/locale_fr-CA.ini: no such file or directory
goroutine 1 [running]:
github.com/macaron-contrib/i18n.initLocales(0xc8202bdd93, 0x0, 0xe30350, 0xb, 0xc820669740, 0xc8206542c0, 0x36, 0xc8202a0b60, 0x7, 0x7, ...)
/root/go/src/github.com/macaron-contrib/i18n/i18n.go:54 +0x781
github.com/macaron-contrib/i18n.I18n(0xc820352580, 0x1, 0x1, 0x0, 0x0)
/root/go/src/github.com/macaron-contrib/i18n/i18n.go:151 +0xd0
github.com/gogits/gogs/cmd.newMacaron(0xc8201ae1e0)
/root/go/src/github.com/gogits/gogs/cmd/web.go:145 +0xc22
github.com/gogits/gogs/cmd.runWeb(0xc8201ae1e0)
/root/go/src/github.com/gogits/gogs/cmd/web.go:180 +0xc2
github.com/codegangsta/cli.Command.Run(0xe19b08, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0xe9b650, 0x15, 0xf447e0, ...)
/root/go/src/github.com/codegangsta/cli/command.go:127 +0x1052
github.com/codegangsta/cli.(*App).Run(0xc82022bc00, 0xc820084000, 0x2, 0x2, 0x0, 0x0)
/root/go/src/github.com/codegangsta/cli/app.go:159 +0xc2f
main.main()
/root/go/src/github.com/gogits/gogs/gogs.go:40 +0x35c
goroutine 17 [syscall, locked to thread]:
runtime.goexit()
/usr/local/go/src/runtime/asm_amd64.s:1696 +0x1
goroutine 20 [select]:
github.com/gogits/gogs/modules/log.(*Logger).StartLogger(0xc82006fc00)
/root/go/src/github.com/gogits/gogs/modules/log/log.go:235 +0x3cf
created by github.com/gogits/gogs/modules/log.newLogger
/root/go/src/github.com/gogits/gogs/modules/log/log.go:161 +0x138
goroutine 22 [select]:
github.com/gogits/gogs/modules/log.(*Logger).StartLogger(0xc8202d1d80)
/root/go/src/github.com/gogits/gogs/modules/log/log.go:235 +0x3cf
created by github.com/gogits/gogs/modules/log.newLogger
/root/go/src/github.com/gogits/gogs/modules/log/log.go:161 +0x138
goroutine 38 [select]:
github.com/gogits/gogs/modules/log.(*Logger).StartLogger(0xc820408540)
/root/go/src/github.com/gogits/gogs/modules/log/log.go:235 +0x3cf
created by github.com/gogits/gogs/modules/log.newLogger
/root/go/src/github.com/gogits/gogs/modules/log/log.go:161 +0x138
goroutine 37 [chan receive]:
github.com/gogits/gogs/models.DeliverHooks()
/root/go/src/github.com/gogits/gogs/models/webhook.go:576 +0x52a
created by github.com/gogits/gogs/models.InitDeliverHooks
/root/go/src/github.com/gogits/gogs/models/webhook.go:594 +0x2b
goroutine 36 [select]:
github.com/gogits/gogs/modules/cron.(*Cron).run(0xc820268a40)
/root/go/src/github.com/gogits/gogs/modules/cron/cron.go:161 +0x9e8
created by github.com/gogits/gogs/modules/cron.(*Cron).Start
/root/go/src/github.com/gogits/gogs/modules/cron/cron.go:136 +0x40
goroutine 34 [chan receive]:
database/sql.(*DB).connectionOpener(0xc8203305a0)
/usr/local/go/src/database/sql/sql.go:634 +0x45
created by database/sql.Open
/usr/local/go/src/database/sql/sql.go:481 +0x336

Thanks your feedback!
Try remove the [i18n] section in your custom app.ini file.

是conf/locale目录下没有locale_fr-CA.ini文件导致，
cp locale_fr-FR.ini locale_fr-CA.ini

解决了。

Based on the log you provide, the Gogs 0.6.15 no longer uses name fr-CA but fr-FR, and it has all locale files store within Go code file in gzip format.
But, anyway. Have your problem been solved?

solved.

Thanks your confirmation!

Hi
I had the same problem with my installation. Gogs didn't start, nothing in service gogs status or /var/log/gogs/gogs.log. I had to look in /var/log/messagges to find this error (which is not visible at all in my opinion). Should we replace fr-CA with fr-FR ? I can send a PR if you want

Sorry, i've just seen that it's already fixed. But not yet updated in the puppet module that i'm using :)
Thanks for the great job!

@AndreaGiardini :trollface:


Orion network service launched even no orion network config

Hello,
as said by title we alway launch orion network service even if useless. That's lead to some false error in the logs.
That would be great to start orion network service if and only if a network is defined in conf. I guess we have potentially same topic to address with HLF ?
Best,

what's the error log that you would like to not see?

this one : https://github.com/mffrench/fabric-smart-client/commit/0dcd9f02d92b073addbffc6ff29f8498310a1454

#635


Add multiple pool tags for ebpfcore

Description
Currently ebpfcore uses a single pool tag EBPF_POOL_TAG. This makes investigating memory leaks difficult.
This PR makes an initial change to include more pool tags for ebpfcore.
Testing
Existing tests.
Documentation
NA

Converting this to draft to implement the solution suggested by Alan.


Getting Started - Power Generation

Industrial Foregoing Version: 1.8.9-138
TeslaCoreLib Version: 1.0.13
Crashlog (If Any): N/A
Is it intended that the mod, though it has its own power generation, cannot be started without power generation from another mod? All of the generators require plastic to craft. But to produce plastic requires power to be provided to the Latex Processing Unit.

Intended


Use buildjet for heavy builds

Fixes #217

Guess we will be paying now for CI, hence the 30min timeouts?


Use of "Digital Sales Rooms" excludes the use of certain extensions

Description:
Information from a plugin manufacturer:
Like all extension manufacturers, "Digital Sales Rooms" should also use an interface. Otherwise, it will no longer be possible to use "Digital Sales Rooms" with other extensions.
Example: NetiNextEasyCoupon and SwagDigitalSalesRooms

[public] Automated response: This issue is linked to the internal issue https://shopware.atlassian.net/browse/NEXT-37592.
[created from NEXT-37592, comment 484570]


Add name-based lookups to the tflite inference API.

Remove the need to know tensor indices at compile time by examining the tensor names used in the tflite models.

For what it's worth, there are abstractions in upstream LLVM for the TFLite side of things. See MLModelRunner.h and ModelUnderTrainingRunner.h.


add support for styling of UITextField's placeholder

If possible, please add support for styling the input hint for textfields

+1


Add metals support

Supports metals statusBarProvider, which does not use $/progress.
Note that users need to call require('fidget').setup{} before callingrequire('lspconfig').metals.setup{}, as we need to change the default init_options in lspconfig.

I'm reluctant to add language server-specific code to Fidget.
Shouldn't this be handled by something like https://github.com/scalameta/nvim-metals instead?

OK, maybe I should open a PR to nvim-metals instead.

@pca006132 Support for $/progress might soon come to metals: https://github.com/scalameta/metals-feature-requests/issues/125


Swagger .NETCORE can't read json

I'm having a trouble with swagger in .netcore. I've tried everything and nothing. I saw another similar questions, but nothing works for me. Running my webapi app with swagger, always returns "Can't read swagger JSON from http://localhost:5000/api/swagger/v1/swagger.json".
My codes:
public void ConfigureServices(IServiceCollection services)
    {
        // Add framework services.
        services.AddApplicationInsightsTelemetry(Configuration);
        services.AddCors(options => options.AddPolicy("AllowAll", p => p.AllowAnyOrigin()
                                                                  .AllowAnyMethod()
                                                                   .AllowAnyHeader()));
        services.AddMvc();
        services.AddSwaggerGen();

        services.ConfigureSwaggerGen(options =>
        {
            var info = new Info
            {
                Version = "v1",
                Title = "Web API Multiprodutos",
                Description = "Web API Multiprodutos",
                Contact = new Contact { Name = "Marcos Monte", Url = "www.arrowbus.com.br" }
            };

            options.SingleApiVersion(info);

            string caminhoAplicacao = AppContext.BaseDirectory;
            string nomeAplicacao =
                PlatformServices.Default.Application.ApplicationName;
            string caminhoXmlDoc =
                Path.Combine(caminhoAplicacao, $"{nomeAplicacao}.xml");

            options.IncludeXmlComments(caminhoXmlDoc);
            options.IgnoreObsoleteProperties();
            options.IgnoreObsoleteActions();
            options.DescribeAllEnumsAsStrings();
        });

        services.AddTransient<IServicoSimulacao, ServicoSimulacao>();

        services.AddTransient<IAplicacaoLocalidade, AplicacaoEndereco>();
    }

  public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory)
        {
            loggerFactory.AddConsole(Configuration.GetSection("Logging"));
            loggerFactory.AddDebug();

            app.UseApplicationInsightsRequestTelemetry();
            app.UseApplicationInsightsExceptionTelemetry();

            app.UseCors(builder =>
            {
                builder.AllowAnyOrigin();
                builder.AllowAnyMethod();
                builder.AllowAnyHeader();
            });

            app.UseCors("AllowAll");

            app.UseMvc();
            app.UseMvcWithDefaultRoute();

            app.UseSwagger((httpRequest, swaggerDoc) =>
            {
                swaggerDoc.Host = httpRequest.Host.Value;
            });

            app.UseSwaggerUi(swaggerUrl: Configuration["AppSettings:VirtualDirectory"] + "/swagger/v1/swagger.json", baseRoute: "swagger/ui");
        }

Project.json
{
  "dependencies": {
    "Microsoft.NETCore.App": {
      "version": "1.0.1",
      "type": "platform"
    },
    "Microsoft.ApplicationInsights.AspNetCore": "1.0.0",
    "Microsoft.AspNetCore.Mvc": "1.0.1",
    "Microsoft.AspNetCore.Routing": "1.0.1",
    "Microsoft.AspNetCore.Server.IISIntegration": "1.0.0",
    "Microsoft.AspNetCore.Server.Kestrel": "1.0.1",
    "Microsoft.Extensions.Configuration.EnvironmentVariables": "1.0.0",
    "Microsoft.Extensions.Configuration.FileExtensions": "1.0.0",
    "Microsoft.Extensions.Configuration.Json": "1.0.0",
    "Microsoft.Extensions.Logging": "1.0.0",
    "Microsoft.Extensions.Logging.Console": "1.0.0",
    "Microsoft.Extensions.Logging.Debug": "1.0.0",
    "Microsoft.Extensions.Options.ConfigurationExtensions": "1.0.0",
    "Aplicacao.Multiprodutos": "1.0.0-*",
    "Dominio.MultiProdutos": "1.0.0-*",
    "Swashbuckle": "6.0.0-beta902",
    "Swashbuckle.AspNetCore": "1.0.0",
    "Swashbuckle.SwaggerGen": "6.0.0-beta902",
    "Swashbuckle.SwaggerUi": "6.0.0-beta902",
    "Infra.Repositorio.MultiProdutos": "1.0.0-*"
  },

  "tools": {
    "Microsoft.AspNetCore.Server.IISIntegration.Tools": "1.0.0-preview2-final"
  },

  "frameworks": {
    "netcoreapp1.0": {
      "imports": [
        "dotnet5.6",
        "portable-net45+win8"
      ]
    }
  },

  "buildOptions": {
    "emitEntryPoint": true,
    "preserveCompilationContext": true,
    "xmlDoc": true
  },

  "runtimeOptions": {
    "configProperties": {
      "System.GC.Server": true
    }
  },

  "publishOptions": {
    "include": [
      "wwwroot",
      "**/*.cshtml",
      "appsettings.json",
      "web.config"
    ]
  },

  "scripts": {
    "postpublish": [ "dotnet publish-iis --publish-folder %publish:OutputPath% --framework %publish:FullTargetFramework%" ]
  }
}

Please, help me.Thanks in advance.

what does VirtualDirectory return?
Configuration["AppSettings:VirtualDirectory"]

Returns "/api"

If you want to customize the URL it has to be done in two middlewares like below.
Change the code accordingly and try accessing the json.
app.UseSwagger(c =>
{
c.RouteTemplate = "api/swagger/{documentName}/swagger.json";
});
app.UseSwaggerUI(c =>
{
            c.SwaggerEndpoint("/api/swagger/v1/swagger.json", "Some API");
            c.RoutePrefix = "api/swagger";

        });

I've changed and got "Additional information: Unable to resolve service for type 'Swashbuckle.AspNetCore.Swagger.ISwaggerProvider' while attempting to activate 'Swashbuckle.AspNetCore.Swagger.SwaggerMiddleware'."

Sorry i gave an answer related to the Swashbuckle.AspNetCore but looks like you are not using that.
I think someone else would jump in to resolve it.

I'm using  Swashbuckle.AspNetCore.

I realized the error occurs in Program.cs
public class Program
    {
        public static void Main(string[] args)
        {
            var host = new WebHostBuilder()
                .UseKestrel()
                .UseContentRoot(Directory.GetCurrentDirectory())
                .UseIISIntegration()
                .UseStartup<Startup>()
                .Build();

            host.Run();
        }
    }

Try this
` app.UseSwagger(c =>
{
c.RouteTemplate = "api/swagger/{documentName}/swagger.json";
});
app.UseSwaggerUI(c =>
{
        c.SwaggerEndpoint("v1/swagger.json", "Some API");
        c.RoutePrefix = "api/swagger";

    });`

Throws the same exception:  Unable to resolve service for type 'Swashbuckle.AspNetCore.Swagger.ISwaggerProvider' while attempting to activate 'Swashbuckle.AspNetCore.Swagger.SwaggerMiddleware'.

@leilasoriano Looking at your project.json it appears you have some odd packages.
For example, I see you've got the correct latest Swashbuckle.AspNetCore package (1.0.0) but you also have the original Swashbuckle package (not used in the ASP.NET Core scenario); and you also have the 6.0.0-beta* packages for Swashbuckle.SwaggerGen and Swashbuckle.SwaggerUi (also not used in ASP.NET Core).
Have you tried removing all Swashbuckle package references except for the Swashbuckle.AspNetCore package?
Note it also looks like you haven't actually moved to the final .NET Core build/app tooling, which could affect your ability to reach success. .NET Core and the dotnet CLI moved away from project.json at release time.

The README on this repo also has a relevant note:

:mega: Attention early adopters - please note the package rename to Swashbuckle.AspNetCore

If you've been using Swashbuckle for ASP.NET Core since it's inception, you may be referencing "Swashbuckle.6.0.0-beta*" packages. These are no longer valid. The original intention had been to move the Swashbuckle project from ASP.NET WebApi onto the ASP.NET Core stack in a major version bump. However, now that Microsoft plans to support WebApi for at least 4 more years, I felt it was more appropriate to split into separate projects, allowing both to live on with their respective frameworks. Although, I personally will be devoting most of my time to this version.

Did it got fixed for you. I am also facing similar issue

For anyone experiencing this issue, please ensure you have the latest version of Swashbuckle.AspNetCore - v2.5.0 at the time of writing. If you've pulled that down and still experience this issue, let me know and I'll re-open the ticket.


[SPARK-39275][SQL] Pass SQL config values as parameters of error classes

What changes were proposed in this pull request?
In the PR, I propose to pass SQL config values as parameters instead of hard-code them in error messages. Also, new method toSQLConfVal() was added to QueryErrorsBase to wrap such values by double quotes.
Why are the changes needed?
To improve code maintenance by separating parameters from error message texts.
Does this PR introduce any user-facing change?
Yes, the PR changes some user-facing error messages.
How was this patch tested?
By running the modified test suites:
$ build/sbt "test:testOnly *SparkThrowableSuite"
$ build/sbt "test:testOnly *QueryExecutionAnsiErrorsSuite"

cc @srielau

After offline discussion of the changes with @cloud-fan, I am closing this PR.


C#: Fix line in OpenInExternalEditor

Fixes https://github.com/godotengine/godot/issues/41816.
:warning: Only tested this with VSCode, I hope I didn't break other IDEs :warning:
~Note for 3.x cherrypick: Requires also cherry-picking https://github.com/godotengine/godot/pull/73584~.

I looked into this and reached the conclusion that EditorInterface::edit takes a 1-based line number, and every other API (ScriptEditor, CodeTextEditor and TextEditor) takes a 0-based line number.
The ScriptEditor::edit method was subtracting 1 from the line number which seems to be wrong, since every other API in ScriptEditor seems to be 0-based. This was causing the double subtract that made this PR break with the built-in editor.
The double subtract should also be happening with GDScript errors, but in there there is a call to goto_line_centered after the call to edit which essentially resets the line to right one thus hiding the bug.
As a consequence of these changes this is likely no longer cherry-pickable for 3.x and I have removed the label. If this change is desired for 3.x, a backport PR can be made.

Thanks!

Cherry-picked for 4.1.3.


Change /stable and /dev redirects from 200 to 301

Fixes #10236 (?)

This change is

This LGTM!. Let's review with Dan and Peter later today. Thank you, @yingzhuchin!


Truncated README

The README is truncated when visiting https://github.com/dkhamsing/open-source-ios-apps

Added a note, closing (for now)

Removing license display for now


Added pt-br translation

Description:
The app strings were translated to brazilian portuguese.

Hi, thank you for taking the time to contribute this but at this time we are not accepting new languages or new language variations.


Add error handling to window and helper script

Added error handling to GUI.py so the app will show an error window pop-up instead of closing without notice

Errors will also be written to the in-app console

Added a helper script to the file shuffler folder that will help identify bad data in files

The script will find non-csv files that may be polluting the data
The script will also count the total number of columns in each file in a directory. This can ensure that each file contains the same types of data

Set the default window size to something much more sensible

The window is also not fullscreen by default anymore

Code improvement and added features. No conflicts.


flyway: 10.20.1 -> 11.0.1

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://repology.org/project/flyway/versions.
meta.description for flyway is: Evolve your Database Schema easily and reliably across all your instances
meta.homepage for flyway is: https://flywaydb.org/
meta.changelog for flyway is: https://documentation.red-gate.com/fd/release-notes-for-flyway-engine-179732572.html
Updates performed

Version update

To inspect upstream changes
Impact
Checks done

built on NixOS
The tests defined in passthru.tests, if any, passed
found 11.0.1 in filename of file in /nix/store/l91q49b62lkzrc3n8vhl6crjyrpf3l6j-flyway-11.0.1

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

2 total rebuild path(s)

2 package rebuild(s)

First fifty rebuilds by attrpath

flyway

Instructions to test this update (click to expand)

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

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

Or:
nix build github:r-ryantm/nixpkgs/6dcd66e0d26f8e53fda45b0e0a4644738ac8f06f#flyway

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

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

x86_64-linux

:white_check_mark: 1 package built:

flyway

Maintainer pings
cc @CMCDragonkai for testing.

[!TIP]
As a maintainer, if your package is located under pkgs/by-name/*, you can comment @NixOS/nixpkgs-merge-bot merge to automatically merge this update using the nixpkgs-merge-bot.

Add a :+1: reaction to pull requests you find important.

nixpkgs-review result
Generated using nixpkgs-review.
Command: nixpkgs-review pr 362335

aarch64-darwin

:white_check_mark: 1 package built:

flyway


Localization support

How about localization support?
People on my server doesn't know English at "well" level. So I translated some strings for them. But when a new commit is coming I need to manually change lines of code. It's not so good as could be.
For example folder lang:
File: ./en_us.json
{
    "now_playing": "Now playing in %s: **%s**",
    "now_playing_mention": "%s - your song **%s** is now playing in %s!",
    ...
}

File ./ru_ru.json
{
    "now_playing": "Сейчас играет в %s: **%s**",
    "now_playing_mention": "%s Ваша песня - **%s** сейчас играет в %s!",
    ...
}

File ./uk_ua.json
{
    "now_playing": "Зараз грає в %s : **%s**",
    "now_playing_mention": "%s Ваша пісня - **%s** зараз грає в%s!",
    ...
}

And just 3 lines in config/options.ini file
...
[MusicBot]
; Language used by bot
; Make sure your language file placed in "lang" folder
Language = en_us

; The starting volume of the bot.  You can use any value from 0.01 to 1.0 but 0.15 is probably fine
DefaultVolume = 0.15

; Only allow whitelisted users to use commands
; Deprecated in favor of permissions
WhiteListCheck = no

...

If you can implement this it will great.

I'm going to write a sort of responses file, where the text and delete timeouts are stored.  This will probably be after I write playlists though.

Duplicate of #115


Diagrams pending update in Developer Guide

corrupted images (To replace)

[x] ArchitectureSequenceDiagram (Delete command??) (@Clouddoggo)
[x] StartSequenceDiagram (@Clouddoggo)
[x] StopSequenceDiagram (@Clouddoggo)

Diagrams to update:

[x] Architecture (@yapdianhao)
[x] Logic (@yaojiethng)
[x] Storage (@yapdianhao)
[x] Model (@eedenong)
[x] DeleteSequenceDiagram.png (Delete.execute??)
[x] UI (@alam8064)

we gucci i think thanks all


Add alternative methods of specifying external tool paths

Currently playbit requires external tools (ffmeg, aseprite, etc) to be added to the user's path to work. This isn't ideal for everyone - some alternative options that should be explored:

Try automatically locating the executable (see this comment thread for an example on Mac).
Expose paths in build scripts

Added aseprite and ffmpeg paths in 19f110e427d2ce12c7346e037525edfb54f4f8b6


Add docker images and helm chart

This PR adds:

The docker image for spark and livy including a build script acrbuild.sh for each image
A helm chart for livy
Instructions on how to deploy the chart with helm
Instructions on how to use the livy deployment with an interactive session

Hi @Freshchris01
I see that some of the files are using Apache License: https://www.apache.org/licenses/LICENSE-2.0
Have you clearly indicated any files that you have modified?

Hi @Freshchris01 I see that some of the files are using Apache License: https://www.apache.org/licenses/LICENSE-2.0 Have you clearly indicated any files that you have modified?

I added a NOTICE file indicating and referencing the source of the Dockerfile


[BUG] Multisignature module metadata SQL write is not sanitized using supported methods

Describe the bug
SQL queries called to write a metadata record in the redcap_surveys_pdf table are not sanitized using the standard methods provided in the REDCap external module framework to prevent SQL injection attack.
Expected behavior
SQL injection protection should be applied to all parameterized queries.
Code snippet
Provided because enhancements to this codebase are under development
                        // Add values to redcap_surveys_pdf_archive table
                        $survey_id = $Proj->forms[$pdf_form]['survey_id'];

                        $ip          = \System::clientIpAddress();
                        $nameDobText = $this->getModuleName();
                        $versionText = $typeText = "";
                        $sql         = "replace into redcap_surveys_pdf_archive (doc_id, record, event_id, survey_id, instance, identifier, version, type, ip) values
                                ($edoc_id, '" . db_escape($record) . "', '" . db_escape($event_id) . "', '" . db_escape($survey_id) . "', '" . db_escape($repeat_instance) . "',
                                " . checkNull($nameDobText) . ", " . checkNull($versionText) . ", " . checkNull($typeText) . ", " . checkNull($ip) . ")";
                        $q           = db_query($sql);
                        $this->emDebug($sql, $q);

Additional context
From REDCap Framework v4 release notes:
Parameterized Queries - Framework Version 4 requires that all query() method calls must include an additional $parameters argument.  All queries should be refactored so that all dynamic values are passed as parameters.  Please take a moment to read the Query Documentation page to get a feel for parameterized queries in general, then return here for the following specifics on transitioning modules to use them:

As of REDCap version v#.#.# (TDB in early 2020), the query() method supports (but does not require) the $parameters argument.  This allows module queries to be updated incrementally over time, prior to updating to Framework Version 4.
Parameters are automatically escaped, which means manual escaping methods like db_escape() and db_real_escape_string() should be removed to avoid double escaping.
Updating many queries will be as simple as replacing all variables in the SQL with question marks, then specifying those variables in the $parameters argument instead.  Cases that require additional handling are included below.
The db_affected_rows() method will no longer work.  See the Query Documentation page for an alternative.
Methods that begin with mysqli_... and operate on the MySQL result object will no longer work.  Please use the equivalent db_... methods instead.
Numeric column values will return as the int type in PHP where they previously returned as string.  This can cause problems for any type sensitive operations like triple equals checking.  The simplest solution to prevent potential issues without refactoring is to cast the numeric columns in either SQL or PHP.

In PHP you can cast all integer columns to strings manually, or by using the following utility method on each fetched row:

$row = $module->convertIntsToStrings($row);

In SQL you can cast values individually.  For example:

Before: select project_id
After:   select cast(project_id as char) as project_id.

Queries using appended SQL strings can still use parameters.  For example:

Before: $module->query("...where value like '{$value}%'");
After:   $module->query("...where value like ?)", [$value . '%']");

Please don't simply pass in an empty or partial parameter array while still manually appending parameters to your query string.  Using prepared statements with parameterized queries is important for security as described by OWASP and security experts spanning many other development communities.
This may also be a good time replace any old db_query() calls as well.  Manually calling db_query() is deprecated in modules, and may be disallowed in the future.

I copied the code from Survey.php ~ line 3221 in the source code - which exists today,  I wouldn't necessarily call this a 'bug' in so far as you would call all of REDCap's code a bug, but that is a conversation for another day...
I'm happy to rewrite this ( 06f4e56 ) or you're also more than welcome to make a pull request in the future...
-Andy

Thanks, Andy.

From: Andy Martin<EMAIL_ADDRESS>Sent: Monday, August 17, 2020 8:00 PM
To: susom/multi-signature-consent<EMAIL_ADDRESS>Cc: Frazier, Remi<EMAIL_ADDRESS>Author<EMAIL_ADDRESS>Subject: Re: [susom/multi-signature-consent] [BUG] Multisignature module metadata SQL write is not sanitized using supported methods (#5)
I copied the code from Survey.php ~ line 3221 in the source code - which exists today, I wouldn't necessarily call this a 'bug' in so far as you would call all of REDCap's code a bug, but that is a conversation for another day...
I'm happy to rewrite this ( 06f4e56https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_susom_multi-2Dsignature-2Dconsent_commit_06f4e56edeeb9acb4707f1a48a608d09745f0f22&d=DwMCaQ&c=iORugZls2LlYyCAZRB3XLg&r=nhhptS87aU7HW5b_42AOXPLxqQESGXQZVph4VAUDYas&m=zKOGqHmIQWm_prbDoz5CMJ1srI9B2vN1d3hHzzNcqQI&s=sNEgA4icp4PmoTW_knxnUfR14cgrc0qCz8EEMqXu0XA&e= ) or you're also more than welcome to make a pull request in the future...
-Andy
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_susom_multi-2Dsignature-2Dconsent_issues_5-23issuecomment-2D675220377&d=DwMCaQ&c=iORugZls2LlYyCAZRB3XLg&r=nhhptS87aU7HW5b_42AOXPLxqQESGXQZVph4VAUDYas&m=zKOGqHmIQWm_prbDoz5CMJ1srI9B2vN1d3hHzzNcqQI&s=RFbaSDGr7sSlBRU4aCkRIvT8Ts6nAdYuRxKEH3EcUaQ&e=, or unsubscribehttps://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_notifications_unsubscribe-2Dauth_AG6JNHHKLF6T4TTM33KARATSBHVEJANCNFSM4QCHSJHA&d=DwMCaQ&c=iORugZls2LlYyCAZRB3XLg&r=nhhptS87aU7HW5b_42AOXPLxqQESGXQZVph4VAUDYas&m=zKOGqHmIQWm_prbDoz5CMJ1srI9B2vN1d3hHzzNcqQI&s=6d-RuJD2dEGJABAXCKaVc_s3pjTApIds5EawkewuuJA&e=.

Per the sibling issue on Biocatalyst - this was not submitted to ask you to do the work, but as a placeholder for a PR when I realized today that v4 of the framework has a built-in way to sanitize.

I wouldn't necessarily call this a 'bug' in so far as you would call all of REDCap's code a bug, but that is a conversation for another day...

This is an exact summary of my opinion on the matter as well, by the way.


Really need a complete guide to build gdrcopy in the official nvidia docker container

If just follow the instructions in README.md and you'll find a lot of things that don't work, I tried for hours without success.
My docker images is nvidia/cuda:11.8.0-devel-ubuntu22.04

After a whole night of hard trying, I finally got a feasible steps to share with you

Starting a gdrcopy-capable container

KERNEL_VERSION=`uname -r`
docker run --gpus=all -it -v /lib/modules/${KERNEL_VERSION}:/lib/modules/${KERNEL_VERSION} -v /usr/src/linux-headers-${KERNEL_VERSION%-*}:/usr/src/linux-headers-${KERNEL_VERSION%-*} -v /usr/src/linux-headers-${KERNEL_VERSION}:/usr/src/linux-headers-${KERNEL_VERSION} --privileged nvidia/cuda:11.8.0-devel-ubuntu22.04

Compile, install and load the kernel module inside a container

apt update --fix-missing
apt install git check pkg-config nvidia-dkms-<your-nvidia-driver-version>
git clone https://github.com/NVIDIA/gdrcopy
cd gdrcopy
make prefix=/ all install
./insmod.sh

Try if it works

sanity

Hi @goooxu,
We don't have an official document about installing GDRCopy in Docker. But I can provide some guideline here.
GDRCopy composes of two important modules: 1) gdrdrv driver, and 2) libgdrapi. The driver needs to be install in the host (outside the container). After the installation, you should see /dev/gdrdrv on the host. You should mount /dev/gdrdrv into your container. Then, please check inside your container that you see /dev/gdrdrv and it links to /dev/gdrdrv on the host.
For libgdrapi, you can install it in your container only -- no need to install libgdrapi on the host.
The steps you provide work as well. You should be able to install gdrdrv as you run the container in the privilege mode. But you may want to avoid doing this in shared environments.


resolve issue #23

I've added a new field to enum delcarations, "valueoptions". We don't want to use "options", as enum options would conflict that and even though they are entirely skipped now there is no guarantee that we would want to continue to skip them in the future.
Optimally if we were writing from scratch we would roll the enum value values and the enum value options together into a single object, but such a change could break code for people who use that field currently. As such, I've kept them separate to preserve backwards compatibility.
Tests updated.

Referencing #23

Lets just turn enums into an object with value and options instead. That's what major bumps are for :) Also don't bump the package.json version in PRs. It is a lot easier if I do that.

Per comments above, I rolled enum value options into an object. This is a breaking change. I also stopped the skipping for enum level options and added treatment to mirror other places where option parsing occurs.

:+1:

Thanks for fixing this! Released as 3.0.0


⚠ Queues has degraded performance

In e892ec1, Queues (https://app.masivo.ai/api/health/queues) experienced degraded performance:

HTTP code: 504
Response time: 15200 ms

Resolved: Queues performance has improved in b0c635f after 12 minutes.


Replace exceptions with booleans

Exception handling is something beginners will have more trouble with.

This has largely been accomplished; a closer look should be taken; see #23


Non-default MLP weight initializations

seed 456:
https://user-images.githubusercontent.com/26547725/164950031-11a733fa-f054-4be1-91f6-c215d2aca59b.mp4
https://user-images.githubusercontent.com/26547725/164950033-6c37bbe2-607b-49e8-b050-5101dcfdf772.mp4

what's the latest with this PR? are we looking to merge it?


new Clock watch: TheBin Watch

Binary watch face for BangleJs2, inspired by RALtec LCD wrist watch

Hi - any reason for closing this? it looked really good

Sorry, I don't know how to resolve the merge conflict regarding apps.json

the data to be added in the end of apps.json should look like this:
{ "id": "TheBinWatch",
"name": "Binary Watch",
"shortName":"BinWatch",
"icon": "app.png",
"version":"0.02",
"allow_emulator":true,
"description": "Famous binary watch",
"tags": "clock,b2",
"type": "clock",
"storage": [
{"name":"TheBinWatch.app.js","url":"app.js"},
{"name":"TheBininWatch.img","url":"app-icon.js","evaluate":true}
]
}

Ahh, ok - I wouldn't worry about that - I can generally fix that very easily myself when I merge. Although it looks like the most recent commit deleted apps.json which isn't ideal - I might skip that one ;)

Yes, right. I just delete the apps.json in my copy. I was hoping that it just get's replaced by the original one where then the addition code for my app can be added in the end.
I think I need to learn more about github, up to now I was an SVN user :-)
Sorry for the inconvenience.

Just merged it - renamed it to just binwatch though as generally all the other apps have lowercase names.
I think the merge issue was just that your repo hadn't been updated in a while and I made some massive changes to apps.json maybe a month back

ok, great, thank You. Can You please give me a hint how I can update my repo ? I first need to update it on Github, then locally ?

I think this should do it? https://medium.com/@sahoosunilkumar/how-to-update-a-fork-in-git-95a7daadc14e
I believe you can do either way though


Update astro indexing recipe

Hi folks 👋
I went to implement the Disable Admin UI Routes in Production recipe last night and found it a bit hard to follow, having recently set up an Astro project with the Keystatic integration. Hope this clears it up a bit for any newcomers!

Oooohh good point — now that we rolled out the keystatic() integration this makes this guide much harder to comprehend!
@emmatown how hard would it be to allow to pass an option to the config that takes care of short-circuiting the admin ui routes for production, to avoid telling users to "eject" from the integration?

People could just conditionally add the plugin? e.g.
plugins: [react(), markdoc(), ...(process.env.SKIP_KEYSATATIC ? [] : [keystatic()])]

That works a charm, thank you @emmatown! Let me know if you'd like me to update this PR to that one liner @simonswiss!

@jordangeizer yes please, I think that's a much better approach ✨
Sorry about the delay.


fix(graphcache): Fix defer field state becoming sticky and affecting future fields

Resolves #3161
Note: This will need a rebase after #3165 is merged and should be merged on top.
Summary
A rather old regression would cause @defer directives to manipulate the deferRef state and then become “sticky”, meaning that all future fields would also be considered deferred.
Instead, we need to make sure that this field resets properly and that the state returns to normal.
On a side-note, I tried to convert makeSelectionIterator to a generator function, since this would make it more elegant, but an initial rough implementation decreased overall cache read/write performance by 15–20%, so we'll have to investigate whether there's more we can do here. In general, traversal is the most expensive part of the cache operations, so if we can instead make it faster we'd profit from that quite a lot.
Set of changes

Refactor makeSelectionIterator to reset deferRef
Add missing test cases for makeSelectionIterator

Unanswered question that may go along with traversal performance; cc @JoviDeCroock,
when fixing the regression I also realised that we potentially don't cover overlapping deferred and non-deferred selection sets. When a fragment is deferred but not fulfilled, however, an overlapping selection does provide part of the nested, deferred fragment, we'd currently fail with an unexpected cache miss, e.g.:
{
  child { id }
  ... @defer {
    # `child` would be traversed here...
    child {
      id # ...because this object is present because of `id`
      extra # however, here we'd run into a cache miss
    }
  }
}

In the above case, we can see that we have a need for defer to become recursive. I can submit a small fix for this after this comment, however, this highlights the need for us to optimise traversal further


Using a custom QueryBuilder object

hey there :wave:
in our project we have a custom QueryBuilder which extends the original one of Doctrine, to add some features. It is created in the ModelManager::createQueryBuilder() which extends from the original EntityManager.
Unfortunately if now ModelManager::createQueryBuilder() is called, the result is interpreted as Doctrine\ORM\QueryBuilder.
I tried the following stub files to teach PHPStan the correct return value, but with no success.

EntityRepository
<?php

namespace Doctrine\ORM;

use Doctrine\Common\Collections\Selectable;
use Doctrine\Persistence\ObjectRepository;
use Shopware\Components\Model\ModelManager;

/**
 * @template TEntityClass of object
 * @implements ObjectRepository<TEntityClass>
 * @implements Selectable<int, TEntityClass>
 */
class EntityRepository implements ObjectRepository, Selectable
{
    protected function getEntityManager(): ModelManager;
}

ModelManager
<?php

namespace Shopware\Components\Model;

use Doctrine\ORM\EntityManager;

class ModelManager extends EntityManager
{
    public function createQueryBuilder(): QueryBuilder;
}

QueryBuilder
<?php

namespace Shopware\Components\Model;

use Doctrine\ORM\QueryBuilder as BaseQueryBuilder;

class QueryBuilder extends BaseQueryBuilder
{
}

The Doctrine plugin should also be correctly configured:
    doctrine:
        repositoryClass: Shopware\Components\Model\ModelRepository
        objectManagerLoader: tests/phpstan-doctrine-model-manager.php

tests/phpstan-doctrine-model-manager.php
<?php

declare(strict_types=1);

use Shopware\Components\Model\ModelManager;
use Shopware\Kernel;

require __DIR__ . '/../autoload.php';

$kernel = new Kernel('production', false);
$kernel->boot();

$modelManager = $kernel->getContainer()->get('models');
\assert($modelManager instanceof ModelManager);

return $modelManager;

QueryBuilder
ModelManager
ModelManager::createQueryBuilder
Do I miss a stub or a config? Can I somehow debug why the type of ModelManager::createQueryBuilder() is interfered like that?
Thanks in advance and have a nice day :wave:

Hi, we’re doing the same thing at Slevomat, we’re overriding this setting with our custom class: https://github.com/phpstan/phpstan-doctrine/blob/5fa8fefdf7d3b41ada096c0271250e2faf1d6adc/extension.neon#L6

oh wow, that was easy :sweat_smile:
thank you very much @ondrejmirtes
very helpful as always :tada:


Add ADL-P Device IDs to listLegalDevIDs

Added ADL-P device IDs to dispatcher list
Tracked-On: OAM-105280
Signed-off-by: Kalenahally Madegowda, NandishaX<EMAIL_ADDRESS>Signed-off-by: Kothapeta, BikshapathiX<EMAIL_ADDRESS>

Reviewers: @TianmiChen  @dyang23  @YuanjunHuang


Source

Can the source be downloaded from somewhere? Medusa.uno has worked in csgo for a long time after cs2 release, but recently broke with pattern errors.

Can the source be downloaded from somewhere? Medusa.uno has worked in csgo for a long time after cs2 release, but recently broke with pattern errors.

ill fix it when i have time

Alright, just out of curiosity it a short fix and what do "failed to find pattern #1!" and "failed to find pattern #2!" even mean?

Alright, just out of curiosity it a short fix and what do "failed to find pattern #1!" and "failed to find pattern #2!" even mean?

those errors basically mean that the cheat is outdated and needs patching. I recommend checking out the new Medusa.uno variant, made by other devs, similar to this version, but with alot of improvements.
Here is a discord link: https://discord.com/invite/yzVSsvrJ

Do old cfgs work on the newer versions?

and is there a download for a working medusa.uno available on the discord?

whats the new discord link?


Adjust the opt-out behavior of CLI flags

Topic
applies to all adders
Description
It would be preferable if the CLI flags were designed to be opt-in rather than opt-out.
One can imagine that when a couple of more plugins are added, it would quickly become cumbersome to add all of these opt-out flags just to avoid the CLI wizard:
npx @svelte-add/tailwindcss@latest --typography false --forms false --scrollbars false --other-plugin false --one-last-one false

Describe the solution you'd like
Instead, it should be the inverse, where adding the flag includes the addon/plugin:
npx @svelte-add/tailwindcss@latest --typography --forms

Alternative
An alternative could be to include a --none flag to preserve the default state of running through the CLI wizard, but also not having to add all of the flags to avoid it either:
npx @svelte-add/tailwindcss@latest --none

The problem I see with
npx @svelte-add/tailwindcss@latest --typography --forms

is that this
npx @svelte-add/tailwindcss@latest

would implicitly assume that all options are false / fallback to the default value and that this would not trigger the interactive cli.
That's why I would currently prefer the your suggested alternative, although I'm not sure if --none would represent the correct meaning. Maybe something like --default would be a better fit

Agreed, --default is definitely the better fitting name and solution.

Please do not consider working on this until #368 is merged, as it was necessary to rewrite major amounts of the execute.ts file (not commited), which would cause massive merge conflicts and create unnecessary work.


Changed Twitter UserId to a string rather than long

Recently had an issue with a clients Twitter account where the id was 18 characters long so the value was being rounded due to the JavaScript limitation on Number size causing an invalid Id to be stored in the database
I have amended so that the TwitterOAuthData model has a string property for the Id of the account which allows the value to be parsed correctly in the JavaScript controller

Sorry for the lack of reply - I thought I had time to get back to you sooner.
I have now merged your changes, and will look into pushing a new release ;)
Thanks a lot for the help 👍

Again sorry for the waiting time. I didn't have the time to catch up over the summer, but I've now pushed a new release that includes this pull request:
https://github.com/abjerner/Skybrud.Social.Umbraco/releases/tag/v1.0.7


Can't copy, cut or paste any file.

Explain the bug
Let me explain, I cut (ctrl+x) the file and it becomes transparent so theoretically it is cutting, but when pasting (ctrl+v) it does nothing. The only thing it does is to select with a white lines box the first file of the list in the folder for example: I have 4 folders inside a directory (hello1 hello2 hello3 hello4) I select "hello4" and in the same directory I do the test of copy and paste or cut and paste, when I am going to use ctrl+v it selects with a white box the hello1 and it does not paste the copied or cut file and if I do it with the mouse it simply does nothing and does not select any folder with any white box, nothing happens.
To reproduce

I am located in a directory.
select a folder.
proceed to "ctrl+c" , "ctrl+v" , right click cut or copy , "ctrl+v" or right click cut or copy
I proceed to paste in all possible ways.
nothing happens

Expected behavior
I hope that when cutting or copying I can paste in the directory where I am located or in any other directory where I am going to be located.
nothing happens
Logfile
debug.txt
Screenshots

System Information

OS Version:
Edition Windows 10 Pro
Version 20H2
Installed on 2/23/2021
OS build 19042.985
Experience Windows Feature Experience Pack 120.2212.2020.0

App versión: last version available in 19/05/21 on github (<IP_ADDRESS>)

Additional comment
I restarted my computer, reinstalled the application, tried the one from the Microsoft store first and then I downloaded it from the github to see if the problem was solved, I tried to run it with maximum permissions, I set it as default application. I did all these attempts to see if it worked, I also looked to see if there was any other key combination that was overlapping the copy and paste of the application so I also tried right click copy and paste but it didn't work. I really love the application I would like to leave it as default and I hope you can solve the problem or give me a solution.

奇怪的是, 第一次打开 不能复制和剪切, 重启软件, 可以剪切但任然不能复制...

@Apheiro is this still an issue in Files v2.0?


Improve predefined default sources

Improved your PR, let's discuss this when you are around 😄

The improvements are:

I put the logic of the defined source on the helper_funcs file on the function parse_known_args_and_warn
I simplified json file to avoid repeating "default":
I made it so that when there are multiple sources we should always define the default on that file otherwise it fails. This way is easier because we will have that file with all explicit source and are not relying on an "upper level.
Added an exception for when a load is done in the sub-menus, to go grab same source of the level above since it uses the same function
Added all functions that currently have --source to this logic

The only thing missing is documentation, but wanted to know your opinion on this first!

I tackled #1847 since it was convenient from what I had added :)


Embedded Jetty - Service: set wantsClientCert

Looking at the API documentation there is no way to configure embedded Jetty to use wantsClientCert, we only have the option for needsClientCert as seen here:
https://github.com/perwendel/spark/blob/403eb024863c77247bd9161e1239fb5893323d4d/src/main/java/spark/Service.java#L234
Is there a way around this problem or can we add this as a feature request? I want to configure Jetty to want a certificate but not need it.

I see that embedded jetty is supposed to be 100% configurable but I'm having no luck trying something like
SslContextFactory.Server sslcf = new SslContextFactory.Server();
sslcf.setKeyStorePath(new File("server-keystore.jks").getAbsolutePath());
sslcf.setKeyStorePassword("serverkeypass");
sslcf.setKeyManagerPassword("serverkeymanagerpass");
sslcf.setTrustStorePath(new File("server-truststore.jks").getAbsolutePath());
sslcf.setTrustStorePassword("servertrustpass");
sslcf.setWantClientAuth(true);
sslcf.setNeedClientAuth(false);
sslcf.setEndpointIdentificationAlgorithm(null);

http.get("/secureHello", (req, res) -> {
    req.attribute("org.eclipse.jetty.util.ssl.SslContextFactory", sslcf);
    return "Hello Secure"
});


Wave color not being updated to scrub color

Hi,
I've installed and successfully used the Waveform component in my expo app.
However, upon pressing the play button and calling waveRef.current.startPlayer() - the wave color never changes to scrub color.
Could it be because the expo is not using some native animation you are using in your component?
Anyways, I am looking forward to your answer.
P.S.: will be happy to provide some code snippets if needed

Also noticed just now that onCurrentProgressChange always returns progress=0 though onPlayerStateChange returns correct values

@Kuper007  Thank you for using this library. We will debug this but it would be more helpful for us if you provided a code snippet.

@kuldip-simform Sure, here you go:
`import { forwardRef, useCallback, useMemo, useRef, useState } from 'react';
import { Pressable, View } from 'react-native';
import ScreenContainer from '@/components/ScreenContainer';
import { H2, P } from '@/components/ui/typography';
import {
BottomSheetBackdrop,
BottomSheetModal,
BottomSheetScrollView,
useBottomSheetModal,
} from '@gorhom/bottom-sheet';
import { Audio } from 'expo-av';
import { PlayerState, Waveform, type IWaveformRef } from '@simform_solutions/react-native-audio-waveform';
import PlayIcon from '@/lib/icons/PlayIcon';
import PauseIcon from '@/lib/icons/PauseIcon';
type Ref = BottomSheetModal;
type TranscriptProps = {
transcript: string;
audioRecording: Audio.Sound;
recordingUri: string;
};
const TranscriptSheet = forwardRef<Ref, TranscriptProps>((_props, ref) => {
const waveRef = useRef(null);
const snapPoints = useMemo(() => ['90%', '90%'], []);
const { audioRecording, transcript, recordingUri } = _props;
const [isPlaying, setIsPlaying] = useState(false);
const [positionMs, setPositionMs] = useState(0);
const { dismiss } = useBottomSheetModal();
const handleSheetChanges = useCallback((_index: number) => {
// console.log('handleSheetChanges', index);
}, []);
// renders
const renderBackdrop = useCallback(
(props: any) => <BottomSheetBackdrop {...props} disappearsOnIndex={-1} appearsOnIndex={0} onPress={dismiss} />,
[dismiss],
);
const onPlayAudio = async () => {
Audio.setAudioModeAsync({ playsInSilentModeIOS: true });
audioRecording.setOnPlaybackStatusUpdate(async (status) => {
if (status.isLoaded) {
setIsPlaying(status.isPlaying);
if (status.didJustFinish) {
setPositionMs(0);
await audioRecording.stopAsync();
await waveRef.current?.stopPlayer();
} else {
setPositionMs(status.positionMillis);
}
}
});
await audioRecording.playFromPositionAsync(positionMs);
if (waveRef.current?.currentState !== PlayerState.paused) {
await waveRef.current?.startPlayer();
} else {
await waveRef.current.resumePlayer();
}
};
const onPauseAudio = async () => {
await waveRef.current?.pausePlayer();
await audioRecording.pauseAsync();
};
return (
<BottomSheetModal
ref={ref}
index={1}
backgroundStyle={{ backgroundColor: '#EEEFF3' }}
snapPoints={snapPoints}
backdropComponent={renderBackdrop}
onChange={handleSheetChanges}
enableDynamicSizing={false}
>

Full transcript
      <View className="flex flex-row items-center gap-8 mt-10">
        <Waveform
          mode="static"
          volume={0}
          containerStyle={{ flex: 1 }}
          ref={waveRef}
          key={recordingUri}
          path={recordingUri}
          candleSpace={2}
          candleWidth={2}
          candleHeightScale={5}
          waveColor="#9cb5b8"
          scrubColor="#6e8097"
        />
        {!isPlaying && (
          <Pressable onPress={onPlayAudio}>
            <PlayIcon />
          </Pressable>
        )}
        {isPlaying && (
          <Pressable onPress={onPauseAudio}>
            <PauseIcon />
          </Pressable>
        )}
      </View>

"{transcript}"

    </ScreenContainer>
  </BottomSheetScrollView>
</BottomSheetModal>

);
});
TranscriptSheet.displayName = 'TranscriptSheet';
export default TranscriptSheet;
`
As you can see, I'm using expo-av to play the sound, and your package just to show the wave component.
Here are my dependencies:
"expo": "^51.0.37",
"react-native": "0.74.5",

Managed to fix the issue by rebuilding the project, will be closing the issue, thanks


file names #2

it seems that the tool will very occasionally export a sound file with a filename, is there a possibility you might be able to investigate this further and maybe add support for filename extraction?

I've already looked into this, the original names inside the PCK are permanently lost, see the image below
I don't know why some sounds have their filenames intact. But most of them don't have their original names anymore.


errors: create an Error type and use that instead of Status

fixes #320

Looks good to me in general, but IIRC you had an unwrap() somewhere that should actually be returned as an error?

That was for surface.create_similar, it returned Status which doesn't implement std::error::Error

Also you might want to consider make the ensure_status() function to not panic but to return a Result, and do the panicking via unwrap() in the caller (or even better expect() to give more context). That way it's clearer where things went wrong.

Sounds a cleaner solution. Especially that I'm interested in removing the Status enum altogether.  I have an implementation detail question.
If I have this function for example ffi::cairo_pattern_get_surface(  self.pointer,  &mut surface_ptr ) that returns a cairo_surface_t how can I turn that directly into something that's a Result? I would have to match the status manually unless there's Status type or there's some magic I haven't heard of yet?
Thanks as always :)

And now you can change it to return Error and all is good?

Yes, everything works fine from that side of things

If I have this function for example ffi::cairo_pattern_get_surface( self.pointer, &mut surface_ptr ) that returns a cairo_surface_t how can I turn that directly into something that's a Result? I would have to match the status manually unless there's Status type or there's some magic I haven't heard of yet?

let status = ffi::cairo_pattern_get_surface(self.pointer, &mut surface_ptr);
some_function(status, || convert_surface_ptr_to_return_value)

Or what do you mean?

I meant, how I can replace the to_result function that I had in Status now that I have a cairo_status_t ?

I meant, how I can replace the to_result function that I had in Status now that I have a cairo_status_t ?

Have some standalone function that does the same thing :) No need to have that on some type

Thanks for the fast review & help:) It seems the CI failed due to network. Let me know if this needs any more changes

@GuillaumeGomez CI is green, please merge :)

Thanks!


Updated to Xamarin.Forms.<IP_ADDRESS>23 and Acr.XamForms.UserDialogs.3.0.1

Hi have updated the Acr.XamForms.UserDialogs.3.0.0 to the Acr.XamForms.UserDialogs.3.0.1 and update Xamarin.Forms.<IP_ADDRESS>96 to Xamarin.Forms.<IP_ADDRESS>23 and I have this trouble during compilation :
error : Cannot resolve dependency to assembly 'Xamarin.Forms.Core, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=null' because it has not been preloaded. When using the ReflectionOnly APIs, dependent assemblies must be pre-loaded or loaded on demand through the  ReflectionOnlyAssemblyResolve event.
On Android and IOS the update is Ok.

I don't have the time to deploy updates for every xamarin forms release.  If you don't want to wait for the updates, clone the repo and do it yourself.

Great. It would be very kind of you if you can let us know how to do it? Or may be provide a link that tells us how to do it. So we can do it ourselves whenever required?

@shabeepk - no offence, but I'm not here to provide .NET compilation 101.  I'm happy to help with defects or feature requests, but this goes outside of what I'm willing to do unless I'm being contracted as a consultant.
The basic 4 steps to up this are: Clone this github repo, update the nuget libraries, compile, take dlls and put them into your project.

@aritchie Thanks for the advice, even though I've already done that. I wasn't actually talking about compiling the project, I was talking about publishing the nuget.
Anyway,
I can still help by exporting the nugets built for 1.3.3 and send them to you so you can publish them whenever you'd like. Otherwise it is all fine.
Thanks.

I can see you've published the new version.
Thanks.
One possible solution to this issue you are facing that you have to publish a new version for every Xamarin minor release is that you do not mention the Xamarin.Forms version upto to minor part. That may ease a lot of pain for you. So instead of mentioning
[<IP_ADDRESS>23, 2.0)
in the nuspec you should mention
[1.3.3, 2.0)
that would make your nuget packages to at least build in most cases. Obviously Xamarin won't make API level changes in a minor release so that should always work for you.
Just thought I should let you know as the build I made myself I built it this way and it was working flawlessly.
Thanks.

The build # makes no difference.  The problem isn't to do with nuget.  It is to do with the fact that windows phone is grabbing a hard version to a specific xamarin.forms version.

Ahan, Okay Thanks for the info.


Ability to move the working folder of the program.

The program saves some data to the system drive, but I would like to be able to move the program's working folder so as not to waste my ssd resource.

You can use the portable version, and the data files generated by the portable version are stored in the root folder of the software.


[FEATURE_REQUEST] Increase verbosity of releases change logs

Is your feature request related to a problem? If so, please describe.
It's kinda hard to follow the last changes you made to Dashy's image.
Describe the solution you'd like
We could have a list of last changes within the Releases tab, with incremental versions ?
Priority:
Medium: Would be useful

Good point, thank you for raising. Next time I do a major release, I will definitely add release notes to the Releases tab, which should then propagate to Docker Hub.
If you're using the @latest tag on Docker Hub, then it seems that the notes from merged pull requests do not show up- do you know how to make this visible? I'm guessing I need a GH action to do this, but have so far not been able to find a way to do this. In the meantime, the update you were referring to didn't actually have any major changes, I was just doing some refactoring, and you can see the notes in the PR notes

I've added a Changelog, which I will keep updated for you.
Unfortunately it wasn't possible to get GitHub to propagate the PR notes over to Docker Hub when using the :latest tag (unless I am missing something, if so do let me know and I'll have another go). But you can always see what the most recent changes include by checking the relevant PR, they're always documented.
Hope that helps :)


tf.keras.BatchNormalization ignores Mask when calculating Mean/Variance

Please make sure that this is a bug. As per our GitHub Policy, we only address code/doc bugs, performance issues, feature requests and build/installation issues on GitHub. tag:bug_template
System information

Have I written custom code (as opposed to using a stock example script provided in TensorFlow): No
OS Platform and Distribution (e.g., Linux Ubuntu 16.04): Windows 10
TensorFlow installed from (source or binary): Binary
TensorFlow version (use command below): 1.13.1
Python version: 3.6.7
CUDA/cuDNN version: 10
GPU model and memory: GTX 960M

Describe the current behavior
tf.keras.layers.BatchNormalization layers do not take the Mask into account when calculating mean/variance. This results in a Mean biased towards 0 and an inflated Variance when passing in padded samples. This is made worse by the fact that the BatchNormalization layer claims to support masking, yet all it does is pass it through to the next layer. This is an issue in TF 1.13, 1.14 and 2.0b where the implementation is imported straight from Keras.
The result from a toy example:
padded mean:		1.5
unpadded mean:		3.0

padded variance:	3.25
unpadded variance:	2.0

Describe the expected behavior
The Boolean Mask should be used when calculating the Mean and Variance, to ignore any 0's as a result of padded data.
Code to reproduce the issue
This example compares the behavior of BatchNorm against a padded and un-padded 1D signal. The resulting Means and Variances come out very different.
import tensorflow as tf
import numpy as np

# Mask value of -10
padded_data = np.expand_dims(np.array([[1,2,3,4,5,-10,-10,-10,-10,-10] for _ in range(100)], dtype='float32'), 2)
data = np.expand_dims(np.array([[1,2,3,4,5] for _ in range(100)], dtype='float32'), 2)

def build_padding_model():
    input = tf.keras.layers.Input((10, 1))
    masked = tf.keras.layers.Masking(-10)(input)
    normed = tf.keras.layers.BatchNormalization(momentum=0.01)(masked)
    model = tf.keras.models.Model(input, normed)
    model.compile("adam", loss="mse")
    return model

def build_model():
    input = tf.keras.layers.Input((5, 1))
    normed = tf.keras.layers.BatchNormalization(momentum=0.01)(input)
    model = tf.keras.models.Model(inputs=input, outputs=normed)
    model.compile("adam", loss="mse")
    return model

if __name__ =='__main__':
    batch_size = 100
    signal_length = 20

    pad = build_padding_model()
    pad.fit(x=padded_data, y=padded_data, batch_size=10, epochs=5)

    nopad = build_model()
    nopad.fit(x=data, y=data, batch_size=10, epochs=5)

    weights1 = pad.layers[2].get_weights()
    weights2 = nopad.layers[1].get_weights()
    print('\npadded mean:\t\t' + str(weights1[2][0]) + '\nunpadded mean:\t\t' + str(weights2[2][0]) + '\n')
    print('padded variance:\t' + str(weights1[3][0]) + '\nunpadded variance:\t' + str(weights2[3][0]) + '\n')

For what it's worth, I have modified a version of the 1.13.1 BatchNormalization layer to take a mask in call which appears to be working. The change wasn't very big, though I haven't done anything to support renorm/fused/virtual/adjustment configurations. Would this be something worth creating a PR for?

I have tried on colab with TF  1.13.1, 1.14 and 2.0b and was able to reproduce the issue.Thanks!

The trick here is making sure we do this in a performant way, as the op being called underneath does not support masking. We could consider going a slower route, filtering out the masked items, in the cases where a mask exists. If you wanted to send a PR, we could take a look and see how bad the performance hit is/what the trade-offs are.

Hi @karmel
Since there hasn't been any progress on the masked batch norm PR lately, I would like to ask about a cheaper workaround.
Instead of zero padding the shorter sequences, one option is to sample from the existing sequences, e.g. by mirroring/replicating samples from the beginning/end. Could this be done conveniently in the padded_batch method of tf.data.Dataset with the padding_values parameter ?

@georgesterpu -- a lot has changed since this issue was first posted. Is this still an issue in TF v2? Can you try with tf-nightly or the most recent release of tensorflow?

@karmel thanks for the follow up.
Yes, this feature is not yet supported in tf-nightly, and I guess it is still an issue for anyone using the batch normalisation op on zero-padded sequences.

@LukeBolly Thx for bring this up. I feel this an important feature to be added.
BTW I have a question: I think this also a problem with LayerNormalization, where it does not use mask when calculating Mean/Variance. Please verify or correct me, if possible. @LukeBolly @georgesterpu Thx!

OK after some research, I found LayerNormalization USES mask when computing these things. I modified the code of @LukeBolly as below to see this. Thx.
import tensorflow as tf
import numpy as np

# Mask value of -10
padded_data = np.expand_dims(np.array([[1,2,3,4,5,-10,-10,-10,-10,-10] for _ in range(1000)], dtype='float32'), 2)
data = np.expand_dims(np.array([[1,2,3,4,5] for _ in range(1000)], dtype='float32'), 2)

def build_padding_model():
    input = tf.keras.layers.Input((10, 1))
    masked = tf.keras.layers.Masking(-10)(input)
    normed = tf.keras.layers.LayerNormalization()(masked)
    model = tf.keras.models.Model(input, normed)
    model.compile("adam", loss="mse")
    return model

def build_model():
    input = tf.keras.layers.Input((5, 1))
    normed = tf.keras.layers.LayerNormalization()(input)
    model = tf.keras.models.Model(inputs=input, outputs=normed)
    model.compile("adam", loss="mse")
    return model

if __name__ =='__main__':
    batch_size = 100
    signal_length = 20

    pad = build_padding_model()
    pad.fit(x=padded_data, y=padded_data, batch_size=10, epochs=5)

    nopad = build_model()
    nopad.fit(x=data, y=data, batch_size=10, epochs=5)

    weights1 = pad.get_weights()
    weights2 = nopad.get_weights()

    print("\npadded mean" + str(weights1) + '\n')
    print("\nopad mean" + str(weights2) + '\n')

OK after some research, I found LayerNormalization USES mask when computing these things. I modified the code of @LukeBolly as below to see this. Thx.
import tensorflow as tf
import numpy as np

# Mask value of -10
padded_data = np.expand_dims(np.array([[1,2,3,4,5,-10,-10,-10,-10,-10] for _ in range(1000)], dtype='float32'), 2)
data = np.expand_dims(np.array([[1,2,3,4,5] for _ in range(1000)], dtype='float32'), 2)

def build_padding_model():
    input = tf.keras.layers.Input((10, 1))
    masked = tf.keras.layers.Masking(-10)(input)
    normed = tf.keras.layers.LayerNormalization()(masked)
    model = tf.keras.models.Model(input, normed)
    model.compile("adam", loss="mse")
    return model

def build_model():
    input = tf.keras.layers.Input((5, 1))
    normed = tf.keras.layers.LayerNormalization()(input)
    model = tf.keras.models.Model(inputs=input, outputs=normed)
    model.compile("adam", loss="mse")
    return model

if __name__ =='__main__':
    batch_size = 100
    signal_length = 20

    pad = build_padding_model()
    pad.fit(x=padded_data, y=padded_data, batch_size=10, epochs=5)

    nopad = build_model()
    nopad.fit(x=data, y=data, batch_size=10, epochs=5)

    weights1 = pad.get_weights()
    weights2 = nopad.get_weights()

    print("\npadded mean" + str(weights1) + '\n')
    print("\nopad mean" + str(weights2) + '\n')

I tried this code in colab with tf2.3.0 and the padded mean and nopad mean are exactly the same. However, if we change it to batch norm, the results are different.
Moreover, for layer norm we could not pass a mask explicitly when calling it. This inconsistent behaviour is really confusing.

@mathpluscode: Hi,
"However, if we change it to batch norm, the results are different." -> Batch norm in TF implementation does not take masking into account I think.
"Moreover, for layer norm we could not pass a mask explicitly when calling it" -> We can do that actually - just created a custom layer and pass a mask you want thorough that layer. I did it before.

@mathpluscode: Hi,
"However, if we change it to batch norm, the results are different." -> Batch norm in TF implementation does not take masking into account I think.
"Moreover, for layer norm we could not pass a mask explicitly when calling it" -> We can do that actually - just created a custom layer and pass a mask you want thorough that layer. I did it before.

Hi @hoangcuong2011, thanks for your reply!
Are you saying that we can write a custom layer to wrap the tf.keras.layers.LayerNormalization and use tf.keras.layers.Masking to use the given mask? Ideally, I'd like to call like layer_norm(inputs=x, mask=mask) to use layer norm.
I'm not sure if I understand your meaning accurately. If it's possible, do you mind to share a piece of the code ;) Super thx!

"Are you saying that we can write a custom layer to wrap the tf.keras.layers.LayerNormalization and use tf.keras.layers.Masking to use the given mask?" -> Yes this is what I meant. I previously wrote a custom layer that has tf.keras.layers.LayerNormalization inside. If you read about custom layer you might notice that we can pass whatever mask we want inside the custom layer.
About the code: Sorry I did this for my previous company so I cannot share the code. But it is not that hard believe me. Plus you could learn something from doing that.

@LukeBolly
Is this still an issue,Could you check on later versions of 2.x  as 1.x is not supported actively

I know this is a pretty old thread but just wanted to add some more info for this for those who may still be interested...
I tested the PR from @LukeBolly that implements the masking in BatchNormalization (https://github.com/tensorflow/tensorflow/pull/30298) in TF 2.4 and it works when the input is 1D; however when it's a 2D input you have to pass in fused=False when defining the BatchNormalization layer. For example...
import tensorflow as tf
import numpy as np

# Mask value of -10
padded_data = np.expand_dims(np.array([[1,2,3,4,5,-10,-10,-10,-10,-10,6,7,8,9,10,-10,-10,-10,-10,-10] for _ in range(1000)], dtype='float32'), 2)
padded_data = padded_data.reshape(1000, 2, 10, 1)
data = np.expand_dims(np.array([[1,2,3,4,5,6,7,8,9,10] for _ in range(1000)], dtype='float32'), 2)
data = data.reshape(1000, 2, 5, 1)

def build_padding_model():
    input = tf.keras.layers.Input((2, 10, 1))
    masked = tf.keras.layers.Masking(-10)(input)
    normed = tf.keras.layers.BatchNormalization(fused=False)(masked)
    model = tf.keras.models.Model(input, normed)
    model.compile("adam", loss="mse")
    return model

def build_model():
    input = tf.keras.layers.Input((2, 5, 1))
    normed = tf.keras.layers.BatchNormalization()(input)
    model = tf.keras.models.Model(inputs=input, outputs=normed)
    model.compile("adam", loss="mse")
    return model

if __name__ =='__main__':
    batch_size = 100
    signal_length = 20

    pad = build_padding_model()
    pad.fit(x=padded_data, y=padded_data, batch_size=10, epochs=5)

    nopad = build_model()
    nopad.fit(x=data, y=data, batch_size=10, epochs=5)

    weights1 = pad.get_weights()
    weights2 = nopad.get_weights()

    print("\npadded mean" + str(weights1) + '\n')
    print("\nopad mean" + str(weights2) + '\n')

padded mean[array([1.4691201], dtype=float32), array([0.48987818], dtype=float32), array([5.4638605], dtype=float32), array([8.202366], dtype=float32)]

opad mean[array([1.46912], dtype=float32), array([0.48987824], dtype=float32), array([5.4638658], dtype=float32), array([8.285133], dtype=float32)]

As you can see it's "mostly" right (only minor difference in the last parameter).
Compare this to without the fused=False flag:
import tensorflow as tf
import numpy as np

# Mask value of -10
padded_data = np.expand_dims(np.array([[1,2,3,4,5,-10,-10,-10,-10,-10,6,7,8,9,10,-10,-10,-10,-10,-10] for _ in range(1000)], dtype='float32'), 2)
padded_data = padded_data.reshape(1000, 2, 10, 1)
data = np.expand_dims(np.array([[1,2,3,4,5,6,7,8,9,10] for _ in range(1000)], dtype='float32'), 2)
data = data.reshape(1000, 2, 5, 1)

def build_padding_model():
    input = tf.keras.layers.Input((2, 10, 1))
    masked = tf.keras.layers.Masking(-10)(input)
    normed = tf.keras.layers.BatchNormalization()(masked)
    model = tf.keras.models.Model(input, normed)
    model.compile("adam", loss="mse")
    return model

def build_model():
    input = tf.keras.layers.Input((2, 5, 1))
    normed = tf.keras.layers.BatchNormalization()(input)
    model = tf.keras.models.Model(inputs=input, outputs=normed)
    model.compile("adam", loss="mse")
    return model

if __name__ =='__main__':
    batch_size = 100
    signal_length = 20

    pad = build_padding_model()
    pad.fit(x=padded_data, y=padded_data, batch_size=10, epochs=5)

    nopad = build_model()
    nopad.fit(x=data, y=data, batch_size=10, epochs=5)

    weights1 = pad.get_weights()
    weights2 = nopad.get_weights()

    print("\npadded mean" + str(weights1) + '\n')
    print("\nopad mean" + str(weights2) + '\n')

padded mean[array([1.4775826], dtype=float32), array([0.47813976], dtype=float32), array([2.7319329], dtype=float32), array([11.675619], dtype=float32)]

opad mean[array([1.46912], dtype=float32), array([0.48987824], dtype=float32), array([5.4638658], dtype=float32), array([8.285133], dtype=float32)]

Note that this comes with some drawbacks, namely significantly longer compute time (~30-40% longer per batch with fused=False in my own analyses.. YMMV). I also haven't tried making the same changes with SyncBatchNormalization so that you can do distributed GPU training with tf.distribute.MirroredStrategy for example. But this PR gets me the functionality I need for my projects.
Thanks again to @LukeBolly

@ymodak This is still an issue. Can someone reopen this?


[stable/spinnaker] Update minio dependency

Is this a new chart
No
What this PR does / why we need it:
Fixes an issue with the spinnaker chart.
Which issue this PR fixes
Fixes #23878
Special notes for your reviewer:
This is my first Chart contribution, I hope I've done it right.
Checklist

[x] DCO signed
[x] Chart Version bumped
[x] Variables are documented in the README.md
[x] Title of the PR starts with chart name (e.g. [stable/mychartname])

CC @viglesiasce @ezimanyi @dwardu89 @paulczar

Not sure why the linter failed, I ran
$ helm dependency update

to generate the requirements.lock changes.
Further, when I tried generating this locally using
$ helm template -f values.yaml --version 2.2.4 . > spinnaker.yaml

It contains references to RELEASE-NAME in a way that means the generated yaml isn't installable. What did I do wrong :grimacing:?

@johanbrandhorst seems related to this https://github.com/ssl-hep/ServiceX/issues/215#issuecomment-719122324

@mced There is a PR to move off this repository and onto another repository because helm/charts is going to be deprecated. Can you submit your PR changes to https://github.com/dwardu89/helm-charts/   instead please.
https://github.com/helm/charts/pull/23924
This PR is related to some internal discussions that were sent around to the devs in the OWNERS file.

@johanbrandhorst I cherrypicked your changes on the new repo managed by @dwardu89

Sweet, thanks, I'll close this PR


Laptop with UK Layout in VSCODE not getting accepted!

Does this issue occur when all extensions are disabled?: Yes/No

VS Code Version: 1.72.2
OS Version: Ubuntu 22.04.1 (Wayland Display Server)

NOTE: I am using laptop with default UK Layout keyboard. I am not using an external keyboard!
Steps to Reproduce:

Use a laptop with English UK layout keyboard. Install Ubuntu with English UK Layout. Install VSCode
Typing # prints \
Typing £  prints #

$ locale
LANG=C.UTF-8
LANGUAGE=en_UK:en
LC_CTYPE="C.UTF-8"
LC_NUMERIC=en_US.UTF-8
LC_TIME=en_DK.UTF-8
LC_COLLATE="C.UTF-8"
LC_MONETARY=de_DE.UTF-8
LC_MESSAGES=en_US.UTF-8
LC_PAPER=de_DE.UTF-8
LC_NAME=de_DE.UTF-8
LC_ADDRESS=de_DE.UTF-8
LC_TELEPHONE=de_DE.UTF-8
LC_MEASUREMENT=de_DE.UTF-8
LC_IDENTIFICATION=de_DE.UTF-8
LC_ALL=

Conclusion
VSCODE is somehow infering that I am using US keyboard! This problem is in editor and in terminal of VSCODE.
This is exclusive to VScode! I tried this in other editor like gedit, on browsers chrome, firefox, but they use UK layout.

@alexdima Can you please help? It is totally unusable for me, as the special symbols are in completely different places!

@lamyergeier Have you tried using "keyboard.dispatch": "keyCode"? What happens when you type in one of Chromium's native inputs, like in the find widget of the editor (ctrl+f) ?

This issue has been closed automatically because it needs more information and has not had recent activity. See also our issue reporting guidelines.
Happy Coding!


[Bug-9090] [Alert] fix email alert session configs

Purpose of the pull request
fix email alert session configs
Brief change log
fix email alert session configs
Verify this pull request
This pull request is code cleanup without any test coverage.

@caishunfeng PTAL

@Tianqi-Dotes next time you can add the Manually verified the change by testing locally.  in Verify this pull request if you test by yourself.


Consolidating FEEL as an expression language for BPMN in Kogito

the idea is to allow FEEL expression in any place we do accept expression in BPMN

@tiagobento there quite a few places but first I need to push this through the chain. BPMN, FEEL and DMN are the way to go in the future.


terminal.integrated.commandsToSkipShell > Find Disabling Not Working in April 2020 Update

VSCode Version: April 2020
OS Version: Windows 10

Steps to Reproduce:

In settings.json, set "terminal.integrated.commandsToSkipShell": [ "-workbench.action.terminal.focusFindWidget" ]

I use this setting to avoid sending <Ctrl + F> to the integrated terminal, as it's used for autocomplete in Fish shell and is indispensable to my workflow. This setting in settings.json has worked for as long as I've used VS Code, though I can't find any documentation of it being removed in the April 2020 update. I disabled auto-updates as a result and rolled back to the March 2020 update, where it continues to function as normal.

Does this issue occur when all extensions are disabled?: Yes

The command name changed, update to this:
"terminal.integrated.commandsToSkipShell": [ "-workbench.action.terminal.focusFind" ]


Lots of routeInfo.json requests on page load

:wave: Hi there
Describe the bug
react-static loads a lot of routeInfo.json files when my app loads. This is unexpected, because it locks up the network tab for a noticeable time.
This is having a negative effect on application load times.
Separately, it's worrisome that the number of routeInfo.json's grows with each URL that I add to my app. Is it correct that an app with 2k pages would make 2k network requests before the application code loads?
Presently, I have ~30 pages, and with each routeInfo.json taking 40ms, this adds up to an entire second of these files being loaded before anything else loads.
Do I have something misconfigured?
To Reproduce

Navigate to materialish.js.org
Look at the network tab

Expected behavior
react-static would make a reasonable, set number of network requests on page load.
Screenshots

Thanks for taking the time to check out this issue!

Are you using react statics link component in v5? Are so of your links
visible in the viewport on load?
On Thu, Oct 18, 2018 at 4:22 PM James<EMAIL_ADDRESS>wrote:

👋 Hi there
Describe the bug
react-static loads a lot of routeInfo.json files when my app loads. This
is unexpected, because it locks up the network tab for a noticeable time.
This is having a negative effect on application load times.
Separately, it's worrisome that the number of routeInfo.json's grows with
each URL that I add to my app. Is it correct that an app with 2k pages
would make 2k network requests before the application code loads?
To Reproduce

Navigate to materialish.js.org
Look at the network tab

Expected behavior
react-static would make a reasonable, set number of network requests on
page load.
Screenshots
[image: image]
https://user-images.githubusercontent.com/2322305/47187544-60520100-d2e9-11e8-8c38-1e50981e6842.png
Thanks for taking the time to check out this issue!
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/nozzle/react-static/issues/826, or mute the thread
https://github.com/notifications/unsubscribe-auth/AFUmCbGmknP-n_mzXpGVxGqcKgLmDVFIks5umP8OgaJpZM4XvV6v
.

Are you using react statics link component in v5?

I am, yeah:
import { Link } from 'react-static';

Are so of your links visible in the viewport on load?

The majority of them are visible. I'd say somewhere around 30% of them are hidden behind a "collapsible" element when the page loads, but 70% are visible onscreen.

The way the link works in v5 is based on visibility and intersection with
the window. It could be false positively preloading links that aren't
actually visible.
On Thu, Oct 18, 2018 at 4:43 PM James<EMAIL_ADDRESS>wrote:

Are you using react statics link component in v5?
I am, yeah:
import { Link } from 'react-static';
Are so of your links visible in the viewport on load?
The majority of them are visible. I'd say somewhere around 30% of them are
hidden behind a "collapsible" element when the page loads, but 70% are
visible onscreen.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/nozzle/react-static/issues/826#issuecomment-431188460,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AFUmCTZLkp3ICZYczRHXldBf6Rlr3zkoks5umQQDgaJpZM4XvV6v
.

That sounds like a plausible explanation. Is it possible to disable preloading altogether? I just checked the docs, but nothing stood out to me as being a config for that behavior. Possibly prefetchRate: 0?

Technically yes. Though it could have unintended consequences. I'm away
from my computer right now. But could easily dig in deeper later.
On Thu, Oct 18, 2018 at 4:53 PM James<EMAIL_ADDRESS>wrote:

That sounds like a plausible explanation. Is it possible to disable
preloading altogether? I just checked the docs, but nothing stood out to me
as being a config for that behavior. Possibly prefetchRate: 0?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/nozzle/react-static/issues/826#issuecomment-431190420,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AFUmCZftG6BUvQv1bFE0IcJnpX5qexEkks5umQZVgaJpZM4XvV6v
.

No rush. I'll hold off on making that change for now. Should you have time to look into this more thoroughly, I'd appreciate it a lot!
Thanks for your help so far. And thanks also for all of the work you've put into react-static 🙂

I appreciate it. I'll look into it soon.
On Thu, Oct 18, 2018 at 4:56 PM James<EMAIL_ADDRESS>wrote:

No rush. I'll hold off on making that change for now. Should you have time
to look into this more thoroughly, I'd appreciate it a lot!
Thanks for your help so far. And thanks also for all of the work you've
put into react-static 🙂
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/nozzle/react-static/issues/826#issuecomment-431191103,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AFUmCTMx8LwpoLMvt2CXwKtMujp1DTT1ks5umQc3gaJpZM4XvV6v
.

So I did some more digging. It looks like on first load, things are really good:

It's not firing off any unnecessary calls so far.
Then, when I open the sidebar, you'll see quite a few preloads fire off:

This is actually working as intended so far. It preloaded all of the links that became visible with the menu toggle. It also does this at the default prefetch rate of 10 at a time.
You can see as you scroll down the page, the rest of the links also preload when they become visible:

So to my knowledge, this is working really well. It doesn't appear to be prefetching anything that isn't visible[ either. I would say you could play with the config.prefetchRate if you want to throttle things a bit more for mobile.

It's also worth noting that in v6 (coming out hopefully in about a month), the preloader will be much better, or at least, more customizable and pluggable.


TIP: External database

Given the fact that this project is abandoned I want to share here how to use Arbify with an external database (I think an issue will be the best way to give it visibility)
Steps:

Create external database & user
Ensure that your host machine can connect to the database (you can simply execute telnet <dbhost> <dbport>)
Modify your docker-compose.yaml to include additional parameters in the arbify definition (please ensure that your .env file contains a whole-valid external database configuration):

         working_dir: /var/www
         environment:
+            DB_CONNECTION: ${DB_CONNECTION}
+            DB_HOST: ${DB_HOST}
+            DB_PORT: ${DB_PORT}
+            DB_DATABASE: ${DB_DATABASE}
             DB_USER: ${DB_USERNAME}
             DB_PASSWORD: ${DB_PASSWORD}

Delete from docker-compose.yaml the mariadb container
Modify the upgrade.sh script to allow external connections (notice that you'll need to add -h ${DB_HOST} in order to connect to the remote database)

--- a/docker/arbify/upgrade.sh
+++ b/docker/arbify/upgrade.sh
@@ -12,7 +12,7 @@ fi
 # Wait until db is operational
 echo "2/5   Running migrations on database..."
 counter=1
-while ! mysql -h db -u "${DB_USER}" --password="${DB_PASSWORD}" -e "SHOW DATABASES;" > /dev/null 2>&1; do
+while ! mysql -h "${DB_HOST}" -u "${DB_USER}" --password="${DB_PASSWORD}" -e "SHOW DATABASES;" > /dev/null 2>&1; do
     sleep 1
     counter=`expr ${counter} + 1`
     if [[ ${counter} -gt 10 ]]; then

With this changes in place, you can simply follow installation instructions and you'll have a working installation on your server.

PS: For posterity, I also want to comment that I was able to run all of this on a simple Raspberry Pi 4

👀  @huang12zheng You'll probably be interested on this 👍

👀  @huang12zheng You'll probably be interested on this 👍

thanks, but I've given up last mouth.
The answer may not be right,
In my opinion, the docker volumn should be able to save database data


Added code blocks to chapter 11

Code blocks for chapter 11. Closes #23

Removed.
They were added because the original code block lacked clarity.


XSFur will cause severe FPS issues or driver crashes in VR on newer AMD drivers

XSFur will cause severe FPS issues or driver crashes on newer AMD drivers, everything over version 22.5.1 is effected, im running a 6800 XT but i know someone who has an 6700 type card who has the same issue. This problem only persists in VR using VRC in desktop mode is not effected.

Sounds like a classic case of AMD drivers being bad since the shader hasn't changed in awhile.

I got feedback from some freinds who own nvidia hardware, also claim that a particular world using this shader for the carpet is very heavy on their system since quite a while being in VR:
https://vrchat.com/home/world/wrld_fac11e5f-1c73-4436-8936-a70b80961c5a
So even nvidia user seem to have a bit of trouble even though dont seem as bad as on AMD hardware. If you dont intend to fix it any plans on putting it out open source so maybe someone else can fix it ? Or at least stopping to sell it on Booth as it might cause some serious trouble for some users ?

I mean if that’s the case it sounds like really the person who made the world is possibly using some ridiculous settings despite the warnings to not crank everything and expect it to run just fine.
Likely you’re running into overdraw limitations, which can be fixed by lowering the layer count or by lowering the percentage of pixels the shader takes up on the screen.
Fur shaders are inherently expensive. They always will be. That could mean instability on particularly weak GPUs, GPUs with bad drivers, or just in general depending on what the setup is for the material. All current hardware struggles with overdraw.
Think about how many pixels are being rendered if it covers the entire screen, the worst case scenario. On a 4K monitor you’re rendering 8,300,000 pixels.
You’re doing all the lighting calculations for each of those.
Now imagine you have to do that 32 times, over and over for the same pixels because you have 32 fur layers. This is the limitation with fur shaders.
For reference, that’s 265,420,800 times you’d need to do lighting and whatever other calculations to get the way you want the shader to look.
Of course, that’s only if you do shell based fur, which is what my fur shader does.
It doesn’t matter what method you do or how well it’s optimized though, it will always be expensive if taken to the extreme especially (until even better hardware is eventually available)
The only option for “cheap” fur is to model hair cards, which isn’t going to give the look you’d want for a carpet.

Well my friends have no idea when it started getting worse but they said it used to perform way better, I can say for my self its after driver version 22.5.1 if i downgrade to this driver version that particular world performs fine, and the creator does not seem to have used any insane settings.


Spanish fix

I noticed I made a mistake in the first key, a quick fix

Could you do a pull and rebase your change? If not I can add the change in manually.

Could you do a pull and rebase your change? If not I can add the change in manually.

Please, add it manually, no prob

Please, add it manually, no prob


Whitehack sheet Community requested changes and features.

Changes / Comments
Roll20 Requests
Comments are very helpful for reviewing the code changes. Please answer the relevant questions below in your comment.

[ ] Does the pull request title have the sheet name(s)? Include each sheet name. Yes
[ ] Is this a bug fix? Yes
[ ] Does this add functional enhancements (new features or extending existing features) ? Yes
[ ] Does this add or change functional aesthetics (such as layout or color scheme) ? A little
[ ] If changing or removing attributes, what steps have you taken, if any, to preserve player data ? na
[ ] If this is a new sheet, did you follow Building Character Sheets standards ?

If you do not know English. Please leave a comment in your native language.

Hello! Looks like you have 3 files with merge conflicts. Please resolve these and this PR will be merged the following Monday after you make these changes.
Thanks!
Olivia

@oliviakristiansen Hi, I am unable to click the resolve conflicts button, due to access rights.

I'm unable to click the button as well, but it is saying "These conflicts are too complex to resolve in the web editor" and that may be why you can't click it as well. Is that the message you get when hovering over the ? on the button? If so, you will need to resolve these conflicts through the command line.

K going to do a fresh clone and push to see if that resolves it. Thanks!


The display of polygon is not correct

scene.yaml
global:
    default_order: function() { return feature.sort_key || 0; }

scene:
    background:
        color: '#eeede5'

cameras:
    perspective-camera:
        position: [113.50074827671051, 22.83201674559789, 16]
        type: perspective
        fov: 45
        active: true

lights:
    light1:
        type: directional
        origin: world
        direction: [0, 1, -.5]
        diffuse: [.3, .3, .3, 1.]
        ambient: [0.7, 0.7, 0.7, 1.]

sources:
    local:
        type: GeoJSON
        url:  test.json

layers:
    test:
        data: { source: local }
        filter: { kind: [shop] }
        draw:
            polygons:
                order: global.default_order
                extrude: [80, 120]
                color: function() { return feature.fill || 0; }
            lines:
                color: white
                width: 1px
                order: 50
                extrude: [80, 120]

test2:
    data: { source: local }
    filter: { kind: [block] }
    draw:
        polygons:
            order: global.default_order
            extrude: [0, 40]
            color: function() { return feature.fill || 0; }

test.json
{
"type": "FeatureCollection",
"features": [
{
"type": "Feature",
"properties": {
"kind": "block",
"stroke": "#555555",
"stroke-width": 2,
"stroke-opacity": 1,
"fill": "#f9f7f4",
"fill-opacity": 0.5
},
"geometry": {
"type": "Polygon",
"coordinates": [
[
[
113.49973171949387,
22.832812742872964
],
[
113.499755859375,
22.831257824605608
],
[
113.50189089775085,
22.831270184916253
],
[
113.50186139345169,
22.832444409308916
],
[
113.50089579820633,
22.83243699318665
],
[
113.50089848041534,
22.832812742872964
],
[
113.49973171949387,
22.832812742872964
]
]
]
}
},
{
"type": "Feature",
"properties": {
"stroke": "#555555",
"stroke-width": 2,
"stroke-opacity": 1,
"fill": "#00f900",
"fill-opacity": 0.5,
"kind": "shop",
"name": "unique",
"height": "20"
},
"geometry": {
"type": "Polygon",
"coordinates": [
[
[
113.50026547908782,
22.83262981223422
],
[
113.49987119436264,
22.832612507971888
],
[
113.4998470544815,
22.83204641017614
],
[
113.50033521652222,
22.832038994032185
],
[
113.50026547908782,
22.83262981223422
]
]
]
}
}
]
}
Result

This happen not only in tangram-es, but also tangram. Thanks.

Hi @kitcheng! Thanks for your interest, I'm curious what sort of application you're working on.
This may be an issue with one of the 3rd party libraries we use in tangram-es. For now you can fix the rendering of your polygons by reversing the order of coordinates in the geojson. We'll look into updating the code for this so that you can input coordinates in either "clockwise" or "counter-clockwise" order in the future.

@kitcheng I also found that your polygons render properly in Tangram JS, which may indicate a different in polygon "winding order" handling between Tangram JS and ES, which we will look into further in the future:
https://mapzen.com/tangram/play/?scene=https://gist.githubusercontent.com/anonymous/68830cf3f5e7217787dc85599917ee7b/raw/4377f3b1fb951efbc5b7d5afb26a665776e8d48e/scene.yaml#16/22.8320/113.5007

@blair1618 @bcamper Thank you for your help! I reversed the order of coordinates in the geojson and it worked. And I'm trying to use tangram-es to develop an indoor map application.


Add mapping for Kite Circuit Sword

Is it possible to have this entry added for the Kite Circuit Sword PCB design?
03000000412300003680000001010000,Arduino LLC Arduino Leonardo,platform:Linux,a:b1,b:b0,x:b2,y:b3,back:b5,start:b4,leftshoulder:b6,rightshoulder:b8,dpup:h0.1,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,
I am new to this, but I was able to get my game working by creating my own 'gamecontrollerdb.txt' with the mapping above and exporting this in my shell:
export SDL_GAMECONTROLLERCONFIG="$(cat /home/pi/RetroPie/roms/ports/devilutionx/gamecontrollerdb.txt)"
If my understanding is correct I need the actual community file to include this mapping for the game to pick it up normally and not require a shell session...
Thank you!

I'm disinclined to add a mapping for the Leonardo since it's a generic development board and there are countless valid mappings.


After calling the Powershell script, the guid returned is null

Value is 00000000-0000-0000-0000-00000000000.  Something tells me this is not correct.  What are my options from this point?

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

ID: 8fb0dffd-d314-6e01-be9a-f72d852227e3
Version Independent ID: e48220e4-412d-aee0-ce37-86400efb6cc3
Content: Bulk update custom user profile properties for SharePoint Online
Content Source: docs/solution-guidance/Bulk-user-profile-update-api-for-sharepoint-online.md
Product: sharepoint
GitHub Login: @spdevdocs
Microsoft Alias: spdevdocs

Closing due to no response from OP


fix(avm-simulator): fix test expectation

#6293  👈
master

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

Join @fcarreiro and the rest of your teammates on  Graphite