[markdown] Don't adjust indentation for blockquotes (closes #3287)

It looks like a piece of code that adjusts indentation snuck in from the original version of the mode. Removing this fixes #3287 .

Thanks! Merged as bb51787


Plural strings are not extracted from js files

Bug Report

[x] Yes, I reviewed the contribution guidelines.
[x] Yes, more specifically, I reviewed the guidelines on how to write clear bug reports.

Describe the current, buggy behavior
The command wp i18n make-pot doesn't correctly extract plural strings in js files.
Describe how other contributors can replicate this bug

Create a js file with the following code:

if ( !! posts.length ) {
	this.props.debouncedSpeak(
		sprintf(
			/* translators: accessibility text. %d is a number of posts. */
			_n(
				'%d result found, use up and down arrow keys to navigate.',
				'%d results found, use up and down arrow keys to navigate.',
				posts.length,
				'polylang-pro'
			),
			posts.length
		),
		'assertive' );
} else {
	/* translators: accessibility text */
	this.props.debouncedSpeak( __( 'No results.', 'polylang-pro' ), 'assertive' );
}

Then run the command:
wp i18n make-pot . test.pot --domain=polylang-pro
Describe what you would expect as the correct outcome
The message Success: POT file successfully generated! is correctly displayed but the generated test.pot file includes only the singular string No results. It doesn't include the plural string. Strangely if I replace the 3rd parameter by a hardcoded int like this:
if ( !! posts.length ) {
	this.props.debouncedSpeak(
		sprintf(
			/* translators: accessibility text. %d is a number of posts. */
			_n(
				'%d result found, use up and down arrow keys to navigate.',
				'%d results found, use up and down arrow keys to navigate.',
				1,
				'polylang-pro'
			),
			posts.length
		),
		'assertive' );
} else {
	/* translators: accessibility text */
	this.props.debouncedSpeak( __( 'No results.', 'polylang-pro' ), 'assertive' );
}

Then the generated pot file correctly includes the plural string.
Let us know what environment you are running this on
OS:	Linux 4.15.0-48-generic #51-Ubuntu SMP Wed Apr 3 08:28:49 UTC 2019 x86_64
Shell:	/bin/bash
PHP binary:	/opt/lampp/bin/php-7.1.21
PHP version:	7.1.21
php.ini used:	/opt/lampp/etc/php.ini
WP-CLI root dir:	phar://wp-cli.phar/vendor/wp-cli/wp-cli
WP-CLI vendor dir:	phar://wp-cli.phar/vendor
WP_CLI phar path:	/home/fred/Documents/Web/test-i18n
WP-CLI packages dir:
WP-CLI global config:
WP-CLI project config:
WP-CLI version:	2.2.0

Thanks for your report!
That sounds odd. I'll try to investigate this a bit and perhaps add a failing test first to verify this.

for information extract works with the babel plugin : @wordpress/babel-plugin-makepot

Here's currently the only place where we test this scenario:
https://github.com/wp-cli/i18n-command/blob/af8143381e6a96555b533471e8f9680d755d42d9/features/makepot.feature#L1510-L1559

Duplicate of #225. This will be fixed by #258


Extensions to OpenSearch communication

Through use of the transport service OpenSearch and the extension share java objects.  This is the established mechanism for communication between nodes is an OpenSearch cluster.  This design has trade-offs that we might want to consider switching to a REST based model.
Advantages for REST model:

Implementing REST APIs is a common practice is all modern languages, there are a wealth of tools and libraries available.
REST API requests can use common http conventions in headers for communicating meta information (Such as status codes, auth, proxy).
OpenSearch already can expose REST APIs that are used by existing plugins.

Areas to consider before switching:

Performance impact to using a different protocol
Functionality within the transport service that would not translate to REST responses

You barely mention "auth" in advantage bullet 2, but the fact that REST and OAuth2 work together seamlessly is a huge advantage.
Disadvantage is we have to implement our own security on top of REST but that is a well-understood problem.
If we select this route (I vote yes) we should immediately establish documentation of the REST API and coding standards for updating it with any API functionality change (which will be frequent as new features are added). We should look into options for doing that automatically, e.g., Swagger.

@dbwiddis did you have a function/code path in mind that we could start with?

Keep in mind that transports should be switchable. An extension that needs to exchange a lot of data may want to do something highly optimized. No strong feelings on what the default should be, or whether v1 should have more than one transport implemented.


zarf: add shell completion

Description of changes

Added shell complete settings for the package zarf.
cc-ing: @ragingpastry
Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[x] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
24.11 Release Notes (or backporting 23.11 and 24.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

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

Could you guard the generation of the completions for cross-compilation, e.g. lib.optionalString (stdenv.buildPlatform.canExecute stdenv.hostPlatform)?
Also, the most common practice is to generate and install shell completions in one step, without temp files, see for example https://github.com/NixOS/nixpkgs/pull/327130 .

Could you guard the generation of the completions for cross-compilation, e.g. lib.optionalString (stdenv.buildPlatform.canExecute stdenv.hostPlatform)?

I'm not 100% sure you mean by this, do you mind elaborating?

Also, the most common practice is to generate and install shell completions in one step, without temp files, see for example #327130 .

Sure, I can update the PR in a little bit, thank you.

Could you guard the generation of the completions for cross-compilation, e.g. lib.optionalString (stdenv.buildPlatform.canExecute stdenv.hostPlatform)?

I'm not 100% sure you mean by this, do you mind elaborating?

If you build the executable for a platform that cannot be run from the build platform itself, the generation of the shell completion files will fail. For example, if you run this on the current state of the PR:
$ nix build .#pkgsCross.aarch64-multiplatform.zarf -L
[...]
Running phase: installPhase
evaling implicit 'postInstall' string hook
/nix/store/wnbrksan5znxv61w053kvq0n980yvhs2-stdenv-linux/setup: line 178: /nix/store/m6ngbcd95zxzn28kml1wm50bhkf656rx-zarf-aarch64-unknown-linux-gnu-0.35.0/bin/zarf: cannot execute binary file: Exec format error

The PR I linked should have a clear example how to use the condition.

Also, the most common practice is to generate and install shell completions in one step, without temp files, see for example #327130 .

Sure, I can update the PR in a little bit, thank you.

Another small nitpick, there is some (not very clearly defined) order that people like to see in the attributes (https://github.com/jtojnar/nixpkgs-hammering/blob/0c54b7121a21f79e580773a46fc8d51482dc1d1c/explanations/attribute-ordering.md); in this case nativeBuildInputs should probably come between proxyHash and preBuild.

Ah ok, sure I will take a look at that and update my PR. Thank you very much!

@SFrijters Updated the PR

Yes, would be better to

Updated the PR to simplify the installShellCompletion step

Also please reword commit message to zarf: add shell completion

Updated

Thank you @Aleksanaa and @SFrijters !


[SPARK-31809][SQL] Infer IsNotNull from join condition

What changes were proposed in this pull request?
We should infer IsNotNull for non null intolerant child of NullIntolerant expressions. For example:
CREATE TABLE t1(a string, b string, c string);
CREATE TABLE t2(a string, b string, c string);
EXPLAIN SELECT t1.* FROM t1 JOIN t2 ON coalesce(t1.a, t1.b)=t2.a;

After this pr the query plan is:
== Physical Plan ==
*(5) Project [a#5, b#6, c#7]
+- *(5) SortMergeJoin [coalesce(a#5, b#6)], [a#8], Inner
   :- *(2) Sort [coalesce(a#5, b#6) ASC NULLS FIRST], false, 0
   :  +- Exchange hashpartitioning(coalesce(a#5, b#6), 200), true, [id=#44]
   :     +- *(1) Filter isnotnull(coalesce(a#5, b#6))
   :        +- Scan hive default.t1 [a#5, b#6, c#7], HiveTableRelation `default`.`t1`, org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe, [a#5, b#6, c#7], Statistics(sizeInBytes=8.0 EiB)
   +- *(4) Sort [a#8 ASC NULLS FIRST], false, 0
      +- Exchange hashpartitioning(a#8, 200), true, [id=#52]
         +- *(3) Filter isnotnull(a#8)
            +- Scan hive default.t2 [a#8], HiveTableRelation `default`.`t2`, org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe, [a#8, b#9, c#10], Statistics(sizeInBytes=8.0 EiB)

Why are the changes needed?

Avoid skew join in some cases.
Hive support this optimization.

Does this PR introduce any user-facing change?
No.
How was this patch tested?
Unit test and benchmark test:
Case1:

Before this PR
After this PR

Case2:

Before this PR
After this PR

Test build #123119 has started for PR 28642 at commit d657299.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/27752/
Test PASSed.

Test build #123119 has finished for PR 28642 at commit d657299.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/123119/
Test FAILed.

Test build #123552 has started for PR 28642 at commit a5f52a8.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/28175/
Test PASSed.

Test build #123552 has finished for PR 28642 at commit a5f52a8.

This patch fails due to an unknown error code, -9.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/123552/
Test FAILed.

retest this please

Test build #123553 has started for PR 28642 at commit a5f52a8.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/28176/
Test PASSed.

Test build #123553 has finished for PR 28642 at commit a5f52a8.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/123553/
Test FAILed.

Test build #123607 has started for PR 28642 at commit 65cd324.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/28231/
Test PASSed.

Test build #123607 has finished for PR 28642 at commit 65cd324.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/123607/
Test PASSed.

retest this please

Test build #124032 has started for PR 28642 at commit 65cd324.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/28651/
Test PASSed.

Test build #124032 has finished for PR 28642 at commit 65cd324.

This patch fails due to an unknown error code, -9.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/124032/
Test FAILed.

retest this please

Test build #124038 has started for PR 28642 at commit 65cd324.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/28657/
Test PASSed.

cc @cloud-fan FYI

Test build #124038 has finished for PR 28642 at commit 65cd324.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/124038/
Test PASSed.

Test build #142271 has started for PR 28642 at commit 65cd324.

Test build #142271 has finished for PR 28642 at commit 65cd324.

This patch fails Python style tests.
This patch does not merge cleanly.
This patch adds no public classes.

Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/142271/

Kubernetes integration test starting
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/46779/

Kubernetes integration test status failure
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/46779/

Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/46779/

Test build #142276 has started for PR 28642 at commit b100902.

Kubernetes integration test starting
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/46784/

Test build #142276 has finished for PR 28642 at commit b100902.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/142276/

Test build #142299 has started for PR 28642 at commit 3643e3f.

Kubernetes integration test starting
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/46806/

Kubernetes integration test status success
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/46806/

Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/46806/

Test build #142299 has finished for PR 28642 at commit 3643e3f.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/142299/

Kubernetes integration test starting
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/46988/

Kubernetes integration test status success
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/46988/

Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/46988/


I want to realize custom mechanism of migration schema.

I want to realize custom mechanism of migration schema.
U could see it on picture. Its enterpise scenarion, when have many dev servers with dev database!
The main question is have api to create table, alter table, add foreign key on fly ?
For exmaple !
table = context.addtable('table1','dbo')
table.add_column('id',int)
And this code executes right now, not anachoring to dotnet executable!
It seems like ci\cd system, but without testing, and other option just Database schema update!

And yes, the best solution will be not to link to provider of individual database, like mssql,mysql!
It just works above data_providers!

@Diaskhan we have had a hard time trying to understand what you are trying to do. Is it that you want to use the parts of EF Core migrations pipeline to update the schema of a database without using the rest of EF Core?

I want to use ef models,linq,mapiing, but mechanism of migration schema in guidelines is oriented to
Customer Firm -Devevlopers Firm relations.
In my case I need system That Customer Firm developes by their self's!
And This case Is usually Enterpise scenario!  Firm byes Platform, and extens by their self, without Developers Firm!

Thanks guyes.
I see that there have Migration comand that could migrate !
Needed some time to research sources.
https://github.com/aspnet/EntityFrameworkCore/blob/09c9b263d648dac4432b9dfb280f84f651c33949/src/EFCore.Relational/Migrations/MigrationBuilder.cs
Тесты проверки
MigrationBuilder для SQL Server
https://github.com/aspnet/EntityFrameworkCore/blob/0e1d2ca3d7b4dc49b77368ede5ccb8b26a4fa1f3/test/EFCore.SqlServer.FunctionalTests/SqlServerMigrationSqlGeneratorTest.cs
Эта штука кажется и исполняет Миграции
https://github.com/aspnet/EntityFrameworkCore/blob/09c9b263d648dac4432b9dfb280f84f651c33949/src/EFCore.Relational/Migrations/Internal/MigrationCommandExecutor.cs
Команда миграции
https://github.com/aspnet/EntityFrameworkCore/blob/09c9b263d648dac4432b9dfb280f84f651c33949/src/EFCore.Relational/Migrations/MigrationCommand.cs


Ignore test folder or change name

In my project I have a shared-components folder that have their own tests folder,
how can I ignore them when I run the tests in my projects?
I notice that  jest in react-create-app doesn't let me configure this without ejecting the configuration, and i don't wanna do that.
Thanks,
Lucas

If a folder is a part of your project then tests inside it will run when you run npm test. I don't see how it could work otherwise.
Supporting a comfortable workflow for components shared between projects is a bigger request. There are separate issues tracking it so I will close this one.


[Feature Request] Translate the summaries and chapters too

Hello again!
I just had another thought regarding Subvert. Since the subtitles are already being translated, it would make sense to have the option to translate the generated chapters and summaries as well, if the user selects the language option. This would save users time from having to manually translate these elements and provide a more complete translation of the video.
Just a suggestion to consider! Thanks again for creating such a helpful tool.
Best regards.

This was definitely the intention, and will be fixed with #18. Closing this issue since this is in progress and being worked on in that other thread!


Add condition to dimension stack

1.16.5 / Forge
Please add a way to add a condition to allow to access the dimension by the dimension stacking.
For example you need to pass the nether portal before the bedrock bottom of overworld become a portal between the two dimension.
Here's some ideas (i hope this will help you)

It should not be a pull request, you can open an issue. https://github.com/qouteall/ImmersivePortalsMod/issues


Android: Custom server preference

I just got NewsBlur install on my server but I can not see how to define the url of my server in Android application.

The Android app can be found in this repo, here:  https://github.com/samuelclay/NewsBlur/tree/master/clients/android/NewsBlur
The file where the API endpoint is defined can be found here:  https://github.com/samuelclay/NewsBlur/blob/master/clients/android/NewsBlur/src/com/newsblur/network/APIConstants.java

Do I really need to modify the application for this? Is this a bad joke?

We should add a preference for defining a Custom Server. We have this on iOS.

Hi @samuelclay, any ideas on when this might be implemented? Or is there any android apps that would support NewsBlur with a custom server?

Hey @dosiecki, would this be easy to add?

I see referenced on #938 that this will have a login screen element. Don't bother adding a custom server to the login screen. Just add a preference. The user can login to NewsBlur first to make the domain switch.

On 29 December 2016 15:49:17 GMT-08:00, Samuel Clay<EMAIL_ADDRESS>wrote:

I see referenced on #938 that this will have a login screen element.
Don't bother adding a custom server to the login screen. Just add a
preference. The user can login to NewsBlur first to make the domain
switch.
--
You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub:
https://github.com/samuelclay/NewsBlur/issues/921#issuecomment-269711629

Will the cookie received from the official server work with others? I figured that the login call that retrieves it needed to be to the same endpoint that would be hit by calls after changing it.

It's a local preference, so it would discard the cookie when connecting to a new server. I see your point in that if you can't login on your server then you're SOL because you can no longer access preferences. But they can reinstall the app. Not the best fix, but for somebody who is running their own server weren't not going to be doing custom UI work to support that beyond exposing the preference. Not yet anyhow.

The way the app is designed, the only time we attempt to acquire a cookie is on that login screen.  Discarding the cookie would just dump the user back to login and also reset state and preferences, including the custom endpoint.  Honestly, it will be much easier to add a quick field to the login screen to allow for a custom server. (prefs are, weirdly, sometimes more complex than a simple text field at the start)

implemented in #979 and now available in prod.


Revert logs in patchServiceMemberHandler.

Reverts logs in the patchServiceMemberHandler added as debugging. These logs contain PII and should not be present. I removed all the logging I previously added since, in the processing of reproducing the bug, this handler is never actually hit anyway, and the only useful non-PII data that could be logged here is present from the request_logger's log.

Warnings

:warning:
Please add the JIRA issue key to the PR title (e.g. MB-123)

  Generated by :no_entry_sign: dangerJS against 195e292d8f60e504f6c66eff8d45ef4151d46477


debug mode

Expected behavior
[GIN-debug] [WARNING] Running in "debug" mode. Switch to "release" mode in production.

using env:	export GIN_MODE=release
using code:	gin.SetMode(gin.ReleaseMode)

Actual behavior
typing this command in Win PowerShell or MINGW64 gives errors. How to you get Bitmark Node out of debug mode?

using env:	export GIN_MODE=release
using code:	gin.SetMode(gin.ReleaseMode)

Information about the Issue
Steps to reproduce the behavior

...docker run -d --name bitmarkNode -p 9980:9980
-p 2136:2136 -p 2135:2135 -p 2130:2130
-e PUBLIC_IP=yourip
bitmark/bitmark-node
...

You need to pass the env Var to the docker run command.
With -e GIN_MODE=release support for the image would be better within the bitmark repo


⚠ Bofrost.com has degraded performance

In cff42a5, Bofrost.com (https://www.bofrost.com) experienced degraded performance:

HTTP code: 200
Response time: 765 ms

Resolved: Bofrost.com performance has improved in b28946f after 8 minutes.


How to send an email with Dynamic Transactional Templates

https://sendgrid.com/docs/User_Guide/Transactional_Templates/how_to_send_an_email_with_transactional_templates.html#-Send-a-transactional-email
Probably there's mistake in cURL section, template_id should be top level in body, not in personalizations closure

hey @3lnc - thanks for the catch. we've updated here: https://github.com/sendgrid/docs/pull/3746
This should hopefully get deployed today


different css for different polylines?

Hi,
there's a way to create different css for markers on different polylines?
thanks

Hi, thanks for the idea.  Addressed in 2f18b0c838f4a7e5a7b70b2908b0f6473ca899e3


How to translate pages with query params instead of prefixes ?

Hi,
Currently i'm working on a project that needs to have query parameter to identify which language to be used. For example : to set language as turkish in about page, route url should contain /about?lang=tr. However it seems that nuxt-i18n allows to have routes with prefixes like /tr/about so not working for my case.

You can try using no_prefix strategy, disabling browser language detection and adding a route middleware that will set locale (using context.app.i18n.setLocale()) based on query.

I hope that answers your question.

You can try using no_prefix strategy, disabling browser language detection and adding a route middleware that will set locale (using context.app.i18n.setLocale()) based on query.

@rchl thanks for the tips.
for someone reached here.
to solve this, I put this in plugins/i18n.js:
export default function ({ app, query }) {
  // init locale by query.lang for both client and server.
  if (query.lang && app.i18n.locale !== query.lang) {
   // you can do some check here to make sure query.lang is valid.

    app.i18n.setLocale(query.lang);
    app.i18n.locale = query.lang;
  }
}

in nuxt.config.js:
module.exports = {
  plugins: [
    // ...other plugins here

    { src: '~/plugins/i18n.js'}
  ],
  i18n: {
    // ...other i18n configs here

    // disable Nuxt's default strategy(based on prefix) and default browser language detection.
    // ref: https://i18n.nuxtjs.org/strategies#no_prefix
    // ref: https://github.com/nuxt-community/i18n-module/issues/745
    strategy: 'no_prefix',
    detectBrowserLanguage: false,
  }
}

and instead of original solution which based on localePath
maybe you need to do more work for things like link:
    <nuxt-link :to="{ path: '/', query: { lang: $i18n.locale } }">
      <img src="/img/logo.png" alt="logo image" />
    </nuxt-link>

or for router:
this.$router.push({
  path: '/',
  query: { lang: this.$i18n.locale },
});

Here's what i did in nuxt 3 (plugins/i18n.js).
export default defineNuxtPlugin((context) => {
  const i18n = context.$i18n;
  const route = useRoute();

  if (route.query.locale && route.query.locale !== i18n.locale.value) {
    if (i18n.locales.value.includes(route.query.locale)) {
      i18n.locale.value = route.query.locale;
    } else {
      i18n.locale.value = i18n.defaultLocale;
    }
  }
});

and
   strategy: "no_prefix",
    detectBrowserLanguage: false,


Describe arguments in docstrings, especially for phaseflow.run

Phaseflow has been in rapid development and these have been changing. Once the interface has stabilized, we should document these arguments thoroughly.

This is complete as of PR #227


Issues with ReactiveLists and Xamarin Forms ListView showing new items

I have a Xamarin Forms project with a ListView bound to a ReactiveList...  After a web call I saturate the list with items... On Android it works great and the items show up but on iOS it doesn't work....
I'm pretty positive it has something to do with the thread the items are being added from because if I add an item in the constructor of the view it  shows up but then no subsequent items show up...
I've tried a bunch of scenarios but here's one I thought was interesting:
If I create an ObservableCollection, bind that to the ListView, then subscribe to the CollectionChangedEvent on the ReactiveList, then add items to that ObservableCollection as items are added to the ReactiveList then items show up..... If I change that same ObservableCollection to a ReactiveList then the items no longer show up
Hopefully that makes sense...
It's actually kind of frustrating because I've been trying to create the problem in a smaller project to send you but for some reason in that project everything works super :-(
I've tried as many different permutations of awaits/tasks/ObserveOns that I can but each project doesn't want to budge with how it works/doesn't work on iOS
If that all doesn't trigger anything I can probably take the defunct project and strip things away until I hopefully have something reproduceable... But I was just curious if something in there sounded familiar...

:+1: I am running into the same problem.

The problem is with the ListView not refreshing the layout (at least in my case). The items are added to the ListView but they don't appear until you do something like rotate the device. See: http://forums.xamarin.com/discussion/18631/listview-binding-to-observablecollection-does-not-update-gui
I tested this using a ReactiveList instead of an ObservableCollection and sure enough there are the missing items.

Alright I think I was able to create an extremely contrived example that seems to demonstrate the behavior (I realize the clearing of the list makes no sense but it's needed to recreate the behavior in this App)
https://github.com/PureWeen/XamarinFormsiOSListViewReactiveList
--code behind adding to the Lists
https://github.com/PureWeen/XamarinFormsiOSListViewReactiveList/blob/master/TheApp/TheApp/Page.xaml.cs
So when I run this project on iOS the ListView bound to the ReactiveList stops displaying items that have been added after the 4th item .... When I run this same project on Android the ListView keeps displaying added items.
 //uncomment this to use an ObservableCollection instead and the items will show up in the list
            //without a problem
            //ObservableCollection<Monkey> Monkies = new ObservableCollection<Monkey>();
            ReactiveList<Monkey> Monkies = new ReactiveList<Monkey>();

If I replace the ReactiveList with a straight ObservableCollection then on iOS the ListView keeps displaying added items
If I remove the async/await from the subscribe
 await new SomeLibrary.Class1().SomeMethod();

Then it works fine on iOS as well

Well re the
await new SomeLibrary.Class1().SomeMethod();
You are awaiting a non async method. Should be:
 public async Task<string> SomeMethod()
        {
            HttpClient client = new HttpClient();
            return await client.GetStringAsync("http://www.google.com");
        }

At the risk of derailing the intent of this thread :-) That's not true you await TASKS not "async methods"... Marking a method async just indicates to the compiler that this method is going to awaiting something so it's telling the compiler to compile the method using a state machine.. So that it can suspend and resume etc....
http://blogs.msdn.com/b/pfxteam/archive/2012/04/12/async-await-faq.aspx
"You’re telling the compiler that you want to be able to use the “await” keyword inside the method (you can use the await keyword if and only if the method or lambda it’s in is marked as async). In doing so, you’re telling the compiler to compile the method using a state machine, such that the method will be able to suspend and then resume asynchronously at await points."
all await is is the developer indicating ok I've reached a point in the code where now I need the result from this Task... That task may have been running to completion this whole time or it might not even have started running until you call await..
So in your rewrite the only different is that you are awaiting the state machine inside the method where as the original code is initiating the state machine outside of the method... Which in this case it's basically the same thing

Yeah I didn't go too much into the semantics, just immediately applied the "async all the way" principle. Either way my rewrite worked fine for me. ListView updated and continued to do so.

I don't think "async all the way" means "await" all the way .... I'm pretty sure it applies to "Don’t mix blocking and async code"
https://msdn.microsoft.com/en-us/magazine/jj991977.aspx
So in SomeMethod if I did
client.GetStringAsync("http://www.google.com").Wait();
//or
client.GetStringAsync("http://www.google.com").Result;

Then I violated async all the way but just returning the Task doesn't make it blocking.
Either way I removed it from the sample to simplify the contrived sample and just awaited the HttpClient call itself.
The main detail I find interesting is that if I use an ObservableCollection it works but with a ReactiveList it doesn't
And thanks for pulling down the sample and running it :-) Really appreciate that!!

These debates have all been done to death in many forums. My interpretation of Stephen Cleary's suggestions re async all the way is to write the code using async/await where possible. And per Paul Bett's advice re using Observable.Start instead of Task.Run etc. It all seemed to work for me on IOS.  Rather than try to work out the semantics I've just used a more "natural" style. I'll run again later to verify.

ReactiveList has an optional parameter in the constructor for a scheduled. If you omit it will default to main thread so all the observables should fire on the UI thread.

Apologies. Missed the point a little with your comment re removing the async/await and it working. Indeed the reactivelist ListView stops responding at some point. I added the threadId to see what was being used in the events. With the async in the subscribe the thread does change. Change the async execution to the following:
System.Reactive.Linq.Observable.Interval (TimeSpan.FromSeconds (5))
				.SelectMany (async _ => {
				return await new SomeLibrary.Class1 ().SomeMethod ();
			})
				.SubscribeOn (RxApp.MainThreadScheduler)
                .Subscribe (x => {

				//var there = Monkies.ToList();
				//Monkies.Clear();
				//there.ForEach(y => Monkies.Add(y));

				Monkey george = new Monkey () { Name = string.Format ("Jungle{0}", i) };

				Monkies.Add (george);
				Console.WriteLine ("MOnkey added {0} to ReactiveList threadid {1}", i, Thread.CurrentThread.ManagedThreadId);
				i++;
			});

I also commented out the Monkies.Clear as it causes an exception in IOS sometimes. Unfortunately you have to remove each item in a loop. The above seems to work fine.

Rabble!! Rabble!! Rabble!! Rabble!! Rabble!! Rabble!!  :-)
So I just want to emphasize "contrived" ... My main application doesn't use Clear or really look like this..  in fact my main application no longer uses Xamarin Forms and I have all of this working swimmingly with a ReactiveTableViewController....   I had posted this issue and felt responsible for trying to provide something useful to recreate beyond an anecdote... So one day during a particularly riveting gotomeeting I came up with this.
So yea....
It's really less about how to make this sample work and more about demonstrating the difference in behavior between two collections that seem like they should have the same affect on a ListView control... Observable Collection works great and Reactive List stops working .... That's all I was really going for...
I haven't seen the exception though that you refer to... I thought maybe that's what was causing it to stop but for me that exception never really comes about...

I get that the example is contrived but obviously we need to look at the specific case to get to the bottom of the difference. Using SelectMany and ObserveOn instead of SubscribeOn in the pattern above at least ensures that the adds and events are all on the main thread. My own testing seemed to show that the ListView for ObservableCollection updated regardless of which thread was doing the inserts. The ListView for the ReactiveList intermittently stopped updating HOWEVER when I rotated the device in EVERY case the items then appeared in the ReactiveList ListView. There are reports on the Xamarin forums about ListView not updating when used with ObservableCollection. In these cases the rotation revealed the "missing" items.

So two things I've noticed...

If I simplify down the template

  <ListView x:Name="theView" >

        </ListView>

Then it updates pretty far... After about the 14th or 16th item it stops. As I make the ItemTemplate more involved then it seems to work less and less...

If I go into ReactiveList and I remove the "#if NET_45" compiler directive and all the Weak Event Handling so that it just uses the strong event binding then the ReactiveList works exactly the same as the ObservableCollection... So I think there's something with out

@delegate.DynamicInvoke(sender, args);

works in iOS that the ListView just stops getting the messages
Which all might have to do with what you're looking at with what thread things are firing on

If I run this on Android you can see when the WeakEventHandler gets garbage collected...
02-26 13:32:33.261 D/dalvikvm( 2007): GC_EXPLICIT freed 82K, 4% free 3629K/3772K, paused 2ms+0ms, total 12ms
02-26 13:32:33.265 D/Mono    ( 2007): GC_OLD_BRIDGE num-objects 81 num_hash_entries 93 sccs size 93 init 0.00ms df1 0.45ms sort 0.23ms dfs2 1.37ms setup-cb 0.01ms free-data 0.14ms links 12/12/12/1 dfs passes 186/105
02-26 13:32:33.265 D/Mono    ( 2007): GC_MINOR: (Nursery full) pause 17.00ms, total 17.43ms, bridge 17.30ms promoted 960K major 1248K los 2003K

After that runs then the ReactiveList stops getting messages.. I tried moving the list declarations outside of the loops so they are properties on the view itself but same thing happens..
So I'm not sure at this point if that's just how life goes or if there's a way to ensure those don't get garbage collected... I know I've had this issue before with Weak Event Handlers in SL as well

I added a branched version where I removed ReactiveUI from the equation and just pulled out the WeakEventHandler and it does the same thing :-)
https://github.com/PureWeen/XamarinFormsiOSListViewReactiveList/tree/removedreactiveui
I'll post that one over at xamarin see if they have any thoughts

Nice work there! I'll have a fiddle and see what I can come up with.

In my own issue which brought me here in the first place, I have a version of IReadonlyReactiveList which is backed by an IOS data store. This uses exactly the same event pattern.

This hacky peice of code appears to be a viable workaround (because it creates a strong reference to the event handler) - however there's every possibility that this is now creating memory leaks:
public class MakeTheReactiveListCollectionChangedEventStronglyReferencedConverter : IValueConverter
{
	public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
	{
		return new ReactiveListWrapper((INotifyCollectionChanged)value);
	}

	public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
	{
		throw new NotSupportedException();
	}

	public class ReactiveListWrapper : IList, INotifyCollectionChanged
	{
		readonly IList _list;

		public ReactiveListWrapper(INotifyCollectionChanged list)
		{
			_list = (IList)list;
			list.CollectionChanged += (sender, args) =>
			{
				var handler = CollectionChanged;
				if (handler != null)
				{
					handler(this, args);
				}
			};

		}

		public event NotifyCollectionChangedEventHandler CollectionChanged;
		public IEnumerator GetEnumerator() { return _list.GetEnumerator(); }
		public void CopyTo(Array array, int index) { _list.CopyTo(array, index); }
		public int Count { get { return _list.Count; } }
		public bool IsSynchronized { get { return _list.IsSynchronized; } }
		public object SyncRoot { get { return _list.SyncRoot; } }
		public int Add(object value) { return _list.Add(value); }
		public void Clear() { _list.Clear(); }
		public bool Contains(object value) { return _list.Contains(value); }
		public int IndexOf(object value) { return _list.IndexOf(value); }
		public void Insert(int index, object value) { _list.Insert(index, value); }
		public void Remove(object value) { _list.Remove(value); }
		public void RemoveAt(int index) { _list.RemoveAt(index); }
		public bool IsFixedSize { get { return _list.IsFixedSize; } }
		public bool IsReadOnly { get { return _list.IsReadOnly; } }
		public object this[int index] { get { return _list[index]; } set { _list[index] = value; } }
	}

}

Yep, ran into this today using ReactiveUI = <IP_ADDRESS> & Xamarin.Forms <IP_ADDRESS>49.
Targeting iOS 8.3 in the simulator using a ReactiveList that is populated via subscription from the results returned by a ReactiveCommand.CreateAsyncTask:
Employees = new ReactiveList<EmployeesDto>();

RefreshEmployees = ReactiveCommand.CreateAsyncTask(async _ =>
{
    var response = await _apiService.UserInitiated.GetEmployees();

    var employees = response.Results;
    if (employees == null || employees.Count == 0)
    {
        // TODO: Convert to proper UserError.
        throw new Exception("No employees were returned by the API.");
    }

    return employees;
});

RefreshEmployees.IsExecuting.ToProperty(this, x => x.IsRefreshingEmployees, out _isRefreshingEmployees);

RefreshEmployees.Subscribe(results =>
{
    Employees.Clear();

    if (GroupEmployeesBySurname)
    {
        Employees.AddRange(results.OrderBy(x => x.EmployeeSurname));
    }
    else
    {
        Employees.AddRange(results.OrderBy(x => x.EmployeeGivenName));
    }
});

<?xml version="1.0" encoding="UTF-8"?>
<ContentPage
        xmlns="http://xamarin.com/schemas/2014/forms"
        xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
        x:Class="EmployeeDirectoryApp.Core.Views.EmployeesPage">

    <ContentPage.Content>
        <ListView x:Name="Employees" x:StyleId="Employees"
                x:IsPullToRefreshEnabled="True"
                x:GroupDisplayBinding="{Binding EmployeeGivenName}"
                x:GroupShortNameBinding="{Binding EmployeeGivenName}">
            <ListView.ItemTemplate>
                <DataTemplate>
                    <TextCell Text="{Binding EmployeeDisplayName}" Detail="{Binding EmployeeDisplayName}" />
                </DataTemplate>
            </ListView.ItemTemplate>
        </ListView>
    </ContentPage.Content>
</ContentPage>

As noted by @chillbythewater the list WILL display correctly upon device rotation/redraw but the initial draw operation is failing.

It's obscenely annoying, nice MVVM pattern and it doesn't work!

Pretty sure that this is a issue w/Xamarin.Forms. I changed my ItemSource from ReactiveList to a ObservableCollection and now do a foreach on the result to the collection (which admittedly is incredibly horrible)
ObservableCollection<EmployeesDto> Employees { get; }

RefreshEmployees.Subscribe(results =>
{
    Employees.Clear();

    // <hack>
    // ReactiveList + AddRange does not work, the following is a workaround
    // that uses an ObservableCollection instead. This does yield negative
    // UI performance. Issue https://github.com/reactiveui/ReactiveUI/issues/806
    var employees = results as List<EmployeesDto>;
    foreach (var employee in employees)
    {
        Employees.Add(employee);
    }
}

See also http://stackoverflow.com/questions/28383734/binding-reactivelistt-to-listview-in-xamarin-forms

My issue may not be related, but something similar occurs only with iOS when using a template to populate a listview.
One listview  has three image cells and a single string cell.  Android shows the ListView just fine, but on iOS only the string shows up.  Alternate rows are also color coded, but no color shows on iOS.  I used DisplayAlert call to verify that data really existed for each row, and saw that the data used in the DisplayAlert was now appearing in the ListView.  So as an experiment, as the source List<>  was being populated, for each item to be added to the List<>, string values for cell contents were assigned to a temporary (and entirely unused) string variable.  Specifically I added the 'temp' variable:
items.Add( hotspot );
string temp = hotspot.SSID + "', " + hotspot.Source + "," + hotspot.Encryption + "," + hotspot.Padlock + "," + hotspot.RowColor.ToString( );
Hey Presto, the ListView was populated ok on iOS.
A second listview had items consisting of 2 strings.  Again on iOS only the second string value was display and again no alternate color.  Assigning the two string values and the color to a temporary and unused string variable again resulted in the ListView being displayed properly.
items.Add( ci );
string temp = ci.RegionName + "," + ci.CountryName + "," + ci.RowColor.ToString( );
No such issues were encountered on Android.  BTW I'm still using Xamarin Forms version <IP_ADDRESS>37 (version 1.4.x has bugs re popping Modal Dialogs that causes issues with my apps)

In response to @ghuntley regarding using ObservableCollection, forcing you to use Employees.Add instead of Employees.AddRange... I actually changed the ItemSource back to a ReactiveList and used Employees.Add in a foreach loop rather than Employees.AddRange and this seemed to work... so maybe it is with ReactiveUI? I'll try dig further into this... this was with the latest ReactiveUI 6.5.0

Hey does anyone found more details where this issue arises from? Is the only viable workaround to use obersablecollection and copy the date around as suggested by @ghuntley?
We stumbled upon this too in our android app :(

Here is a example app that have maybe the same issue.
https://github.com/rebuy-de/reactivelist-xamarin
If you try to remove items from a ListView it works in some cases and on some cases it don't work.
This strange behavior you can see in the example.mov video.

We have a solution for our application:
public class ReactiveObservableCollection<T> : ReactiveList<T> {

    public ObservableCollection<T> ObservableCollection { private set; get; }

    public ReactiveObservableCollection()
    {
        this.ObservableCollection = new ObservableCollection<T>();
        ItemsAdded.Subscribe(ObservableCollection.Add);
        ItemsRemoved.Subscribe((x) => ObservableCollection.Remove(x));
    }
}

public class ViewModel : ReactiveObject {
    [Reactive]
    public ReactiveObservableCollection<Item> Items { set; get; }

    public ViewModel()
    {
         Items = new ReactiveObservableCollection<Item>() {
             ChangeTrackingEnabled = true
         };
    }
}

 <ListView ItemsSource="{Binding Items.ObservableCollection}" />

Just a note: I have the feeling the problem you see here is simply the fact that INotifyCollectionChanged requires you to be on the UI context (unlike INotifyPropertyChanged where the event gets automatically invoked on the UI thread).
A possible solution is to use Xamarin.Forms.BindingBase.EnableCollectionSynchronization.
For references on the topic, see:

https://forums.xamarin.com/discussion/21882/set-listviews-itemssource-within-task-run-causes-viewcell-not-populated
http://iosapi.xamarin.com/index.aspx?link=P%3AXamarin.Forms.ItemsView{TVisual}.ItemsSource
http://iosapi.xamarin.com/index.aspx?link=M%3AXamarin.Forms.BindingBase.EnableCollectionSynchronization

Not sure if where this has ended up still relates to the original issue I was having but I'm pretty positive my initial issues has to do with the fact that ReactiveList uses a weakreference for collectionChanged and the ListView also internally uses a Weak Reference to watch for collection changed events... So basically it's a weak reference connecting to a weak reference that gets GC'd...  In my case if I debug the ReactiveUI source code and breakpoint
internal class WeakHandlerList
....
 public void Purge()

Then after a Garbage Collection
Purge breaks and the connection between the WeakNotifyProxy in Xamarin core gets cleaned up
Here's a really basic sample I put together to illustrate the behavior.. I force the GC after 5 items are added just to get to the end result quicker but if you just let it run until a GC happens then the same result occurs
https://github.com/PureWeen/XamFormsListViewWeakProxy
I just copy and pasted the WeakHandler code out of ReactiveList and just emulated that portion of the ReactiveList for my sample
I also emailed the sample to Xamarin Support to see if they have any thoughts

Xamarin support confirmed the behavior in my sample and it is being forwarded to the Xamarin Forms team for more information
fun fun

@PureWeen Thanks for the the work and your update. Lets hope it gets fixed soon.

So here it is in all its glory :-)
https://bugzilla.xamarin.com/show_bug.cgi?id=31415
Importance: Minor
In the meantime I think something along the lines of what @armintelker  has is what you're stuck with doing... Or some variation of that...
From a ReactiveUI library perspective I think the only fix would be to create a modified version of the list when compiled for Xamarin.Forms that uses Strong References for the event subscription... I know in the current code base there's a compiler directive for NET_45 that uses Strong References when compiled for NET_45 so I'm thinking maybe this same problem existed against WPF? or some variation of the issue.. Not sure if the structure is in place to do that easily against Xam Forms and specifically Xam Forms....
Or there's the deceptively simple answer we haven't stumbled on yet :-)

Nice one! Not sure about the "minor" importance however.

Sadly I missed in the bug that the project support included changed my initial project a little so it was crashing...
I updated the ticket and also include a WINRT sample
Here's a link
http://1drv.ms/1GNbrUm
ReactiveList bound directly to a Xamarin Forms list (in my experience) is completely unusable in a WINRT scenario.....   Just an FYI
You have to wrap the list in something otherwise it just never works

Bugzilla issue has finally been marked as confirmed :tada:

Now that Xamarin Forms is open-source, we could send in a PR? :-)

I'd like to know if there has been any progress on this and/or the Xamarin.Forms PR ;)

Hi,
I encountered the same problem today, this time on Android. The first time the page is displayed no items are displayed in the ListView, the second time the page is shown it works.
If I change it to an ObservableCollection it works just fine.
This is my ViewModel:
    [ImplementPropertyChanged]
    public class PublicApiViewModel : FreshBasePageModel
    {
        private IStreamingProvider streamingProvider;

        public ReactiveCommand<Unit, ItemViewModel> UpdateViewCommand { get; protected set; }

        public ObservableCollection<ItemViewModel> AlbumsList { get; set; } = new ObservableCollection<ItemViewModel>();

        public PublicApiViewModel()
        {

            streamingProvider = Locator.Current.GetService<IStreamingProvider>();

            // NewReleases
            UpdateViewCommand = ReactiveCommand.CreateFromObservable(()=> streamingProvider.GetNewReleases(10, 0)
                .Do(_ => AlbumsList.Clear())
                .ObserveOn(SynchronizationContext.Current)
                .SelectMany(albums => FlattenAlbumsList(albums)));

            UpdateViewCommand.Subscribe(x => AlbumsList.Add(x));

            //AlbumsList = UpdateViewCommand.CreateCollection();
            UpdateViewCommand.ThrownExceptions.Subscribe(OnError);

        }

        private IEnumerable<ItemViewModel> FlattenAlbumsList(IEnumerable<IAlbum> albums)
        {
            return albums.Select(album => new ItemViewModel() {FirstCol = album.Name});
        }

(I exatracted the FlattenMethod so that I could put a breakpoint in it)
I also tried creating the List as DerivedList via CreateCollection but there is was even more unpredictable if it worked or not.
Any new insights on this?
Best
Thomas

Not really... I haven't tested this in Rx7 but I'm assuming the same "problem" still exists.  The ticket (as you saw) on Xamarin's side is confirmed but it'll probably only get fixed from someone in the community doing a pull request.
Basically what I do is on the view binding I wrap the list with a list that creates a strong connection to the weakevent in the ListView

 this.OneWayBind(ViewModel, x => x.ViewModelProperty, x => x.ListView.ItemsSource,
                    selector: x =>
                    {

						return new ObservableReactiveList<T>(x);

                    }
                );

public class ObservableReactiveList<T> :
		ReactiveObject,
		IEnumerable<T>, INotifyCollectionChanged, IDisposable, IEnableLogger
	{
		IReactiveCollection<T> _internalList;
		CompositeDisposable killMe = null;
		bool _ignoreCollectionChangedNotifications = false;
		public ObservableReactiveList() : this(new ReactiveList<T>())
		{

		}

		public ObservableReactiveList(IReactiveCollection<T> sourceList, bool ignoreCollectionChangedNotifications = false)
		{
			_ignoreCollectionChangedNotifications = ignoreCollectionChangedNotifications;
			_internalList = sourceList;
			killMe = new CompositeDisposable();
			killMe.Add(
				sourceList.Changed.ObserveOn(ImmediateScheduler.Instance).Subscribe(args => OnCollectionChanged(args))
			);
		}

		protected void OnCollectionChanged(NotifyCollectionChangedEventArgs args)
		{
			if (!_ignoreCollectionChangedNotifications)
			{
				if (CollectionChanged != null)
					CollectionChanged(this, args);
			}
		}

		public event NotifyCollectionChangedEventHandler CollectionChanged;

		public IEnumerator<T> GetEnumerator()
		{
			return _internalList.GetEnumerator();
		}

		IEnumerator IEnumerable.GetEnumerator()
		{
			return _internalList.GetEnumerator();
		}

		public void Dispose()
		{
			killMe.Dispose();
			killMe = null;
		}
	}

It's not the most elegant thing in the universe and my collection is a wee bit specialized to my app but it works :-)
@armintelker has a solution earlier in the thread that's a bit simpler

A few notes...   The main thing I'm trying to figure out is can a weak reference connect to a weak reference and survive? It feels like two people hanging onto each other for support but nothing else :-p
This is the handler that gets collected
https://github.com/reactiveui/ReactiveUI/blob/master/src/ReactiveUI/WeakEventManager.cs#L274
If you make a local variable reference to that handler then everything "works" obviously because now you're violating the WeakReference
On the Xamarin forms side here's the WeakProxy which nothing retains a reference to
https://github.com/xamarin/Xamarin.Forms/blob/master/Xamarin.Forms.Core/ListProxy.cs#L43
And here's the Event Subscription that gets cleaned up because RxUI is only holding a weak reference to this handler which also nothing holds a reference to
https://github.com/xamarin/Xamarin.Forms/blob/master/Xamarin.Forms.Core/ListProxy.cs#L368
The ListProxy implementation on the Xam Forms side is aggressively weak... In order for it to work I think you'd have to retain a reference to WeakProxy on ListProxy and then change out how the event subscription is done so that the handler is retained and managed opposed to just relying on scope to manage it...  Not quite sure if there's an acceptable way to do that. Acceptable being defined as retaining the same current safety while working with ReactiveList :-)
I'm not super well versed on ConditionalWeakTable but I'm curious if using those with the ListProxy as the key would achieve the same result
        ConditionalWeakTable<ListProxy, WeakNotifyProxy> sourceToWeakHandlers = new ConditionalWeakTable<ListProxy, WeakNotifyProxy>();
ConditionalWeakTable<ListProxy, NotifyCollectionChangedEventHandler> sourceToWeakHandlers = new ConditionalWeakTable<ListProxy, NotifyCollectionChangedEventHandler>();

When I do that in Xam Forms the eventhandler doesn't get cleaned up upon GC and it all works
I feel like that would be a safe way to go as the ListPRoxy is going to collect once the ListView goes out of scope which means the Value on the CWT will also clean up

Tested with 2.3.5-pre1 Xamarin Forms and a ReactiveList
Items kept propagating after forcing lots of GCs


[🐞] GET request to "//" causes internal server error

Which component is affected?
Qwik City (routing)
Describe the bug
I have found errors in the server log that explains an internal server error occurred when the visitor send a GET request to "//" pathname.
I expect the response should be 404.
Reproduction
https://qwik.dev//
Steps to reproduce
Please visit the URL above. You can see it says 500.
System Info
System:
    OS: macOS 14.6.1
    CPU: (8) arm64 Apple M2
    Memory: 56.95 MB / 24.00 GB
    Shell: 3.6.1 - /opt/homebrew/bin/fish
  Binaries:
    Node: 20.12.1 - /opt/homebrew/opt/node@20/bin/node
    Yarn: 1.22.19 - /opt/homebrew/bin/yarn
    npm: 10.5.0 - /opt/homebrew/opt/node@20/bin/npm
    pnpm: 9.11.0 - /opt/homebrew/bin/pnpm
    bun: 1.1.26 - ~/.bun/bin/bun
  Browsers:
    Chrome: 129.0.6668.70
    Safari: 17.6
  npmPackages:
    @builder.io/partytown: 0.10.2 => 0.10.2
    @builder.io/qwik: workspace:^ => 1.9.0
    @builder.io/qwik-city: workspace:^ => 1.9.0
    typescript: 5.4.5 => 5.4.5
    undici: * => 6.6.2
    vite: 5.3.5 => 5.3.5

Additional Information
No response

Thanks @genki for the report
This problem should be solved by #6855 🤔
cc @JerryWu1234

Thanks @genki for the report This problem should be solved by #6855 🤔 cc @JerryWu1234
Is the #6855 title wrong? The implementation is doing a different thing 😅

I will take a look today. It seems like this problem isn't caused by PR

it's fine in local

@genki  how to check log that from this website?

@JerryWu1234 I have no permission to see the log of that website.
I have seen the log on one of my sites that is made of Qwik.
Here's an app that causes this error in local dev.
https://github.com/genki/qwik-test/tree/invalid_url

@JerryWu1234 I have no permission to see the log of that website. I have seen the log on one of my sites that is made of Qwik.
Here's an app that causes this error in local dev. https://github.com/genki/qwik-test/tree/invalid_url

this error in this picture is right, and Astro and other platform is same way

@JerryWu1234
The URL http://localhost:5137// is a valid URL.
I think the Astro and other platforms also have same bug.
The correct response should be 404 Not found ar 400 Bad Request, not a server side error such as 5xx.


Pretrain_weights

It seems that Axial-ResNet-26-S pretrain_weights is not available.

Thanks for raising the issue. This is fixed now.


Update lodash, bump package-lock/yarn.lock

This PR updates package.json to fix npm audit issues in the repo, specificaly with lodash
It also updates package-lock.json and yarn.lock json, which will also fix #185 and #186

+1


Feature request: Docker task accept environment variables

Issue Description
It would be nice feature to able to pass environment variables to docker task. (something similar to the bash task below)
This would help us to send private variables to the task. (We can't reference environment variables any another way when using docker stack deploy)
Related: https://github.com/Microsoft/vsts-tasks/issues/6663 https://github.com/docker/cli/issues/939

Hi @dhanvi
Have you tried the 1.* version of the task? One change we have implemented is to make the task more easier to use. Can you try the aruguments fields, you can pass on variables as well. Let me know if if you have more feedback.

Atul

@dhanvi You can specify a variable in the variables section. These are available as environment variables:

You can also make the variables secret:

So you can use this as an environment variable in your compose file as is described in this comment on the issue #939 you opened in the docker cli repository.
Or, if the docker cli starts supporting -e argument, you can provide "deploy -e name=$(VAR1) stack_name" in the argument input in the Docker task

Closing as fixed with pull request #8640.

@ajinkya599 Could you please explain how does the releases of the azure-pipeline-task work? https://github.com/Microsoft/azure-pipelines-tasks/releases didn't help me and I couldn't find any other documentations too.
or in other words could you please say when can I use this feature in Azure DevOps?

The changes will be available with our next sprint deployment. This will take around 3-4 weeks.

@ajinkya599 could you please ping me here once this is deployed to production ?

@dhanvi Sure. Will update here once it is deployed.

@ajinkya599 I can use it now Thank You! for the fix 👍

Hi, any official documentation how it can be used?
I don't see it here: https://learn.microsoft.com/en-us/azure/devops/pipelines/tasks/reference/docker-v2?view=azure-pipelines&tabs=yaml
This yaml doesn't work for me:
    - task: Docker@2       displayName: Build my image       inputs:         containerRegistry: 'my_svc'                 repository: 'myrepo'         command: 'build'         Dockerfile: '$(Build.SourcesDirectory)/myproject/Dockerfile'         tags: |           $(Build.BuildId)           $(GIT_COMMIT)           latest         arguments: '--build-arg PAT=$(MY_MAPPED_FEED_PAT)'       env:         MY_MAPPED_FEED_PAT: $(SECRETRCMFEEDPAT)


[WIP] use DefaultsKey.defaultValue for registering user defaults

I'm working on macOS apps and rely on the effect of register(defaults:) a lot. It didn't bother me to register them manually, using the swifty keys in the dictionary like so: DefaultsKeys.myKey._key : 123
But now that the keys require a default value, I'd like to not duplicate using this.
Either make the defaultValue public for compatibility, I figured, or offer a convenient wrapper around the register(defaults:) method. This is a prototype for the latter.
Is this a direction you want to go?
Usage:
extension DefaultsKeys {
    static let foo = DefaultsKey<Bool>("foo", defaultValue: true)
}

Defaults.register(defaultsKeys: [ DefaultsKeys.foo, ... ])

This works thanks to a protocol that type-erases the internals of DefaultsKey<T>:
public protocol DefaultsKeyable {
    var _key: String { get }
    var _defaultValue: Any? { get }
}

It's not that convenient to have to use DefaultsKeys.foo to reference the key. But I think the DefaultsKeys class can become a protocol instead, and the new DefaultsKeyable can inherit from that, and then it should work to write .register(defaultsKeys: [ .foo, ... ])

@DivineDominion Yeah I agree, we should make defaultValue public - no reason to hide it behind our framework if it's user-provided value anyways. Would it make the implementation easier?
Also, about making DefaultsKeys a protocol - this would make it impossible to have stored values in extension, right? We would have to make them all computed?

Also, about making DefaultsKeys a protocol - this would make it impossible to have stored values in extension, right? We would have to make them all computed?

You're right, I totally missed that part.

During field-testing I found there's more work to be done:

[ ] defaultValue of a RawRepresentable enum is an enum case, but we want to get to defaultValue.rawValue in that case
[ ] similarly, custom types need to pass through the serialization bridge to be converted


Possible pin conflict

For awareness and to save anyone else hours of investigation. Not sure if it's a bug or a bad combination on my part.
If using the pico breakout garden and RTC (rv3028) and breakout_colourlcd240x240 in the rear SPI slot combination then the display does not display as the default pin interrupt for RV3028 is 22 and the rear SPI CS is also pin 22.

Hi,
Apologies I thought I had responded to share the knowledge. My bad.
At the time I finally figured that if I supplied another value to the constructor to prevent it defaulting to 22 it would solve my problem even if I wasn't using the interrupt feature.
I was using the C++ libraries, but agree something in the docs might be useful for both implementations to help others in the future.

I wonder if interrupt should default to -1 and only set up if supplied. Might avoid this in future. It's far from the only board that has an interrupt argument.

That seems like a great design pattern to enable the feature only if needed.
Would have saved me hunting for something I hadn't appreciated was activated outside of the i2c pins.
That said was a great learning experience so thanks 😃

What I should have said is that I passed RV3028::PIN_UNUSED as part of the constructor. Possibly default it to that and if you need interrupts you supply the PIN number as part of the constructor.

Agreed.
Actually in practice there's virtually no point supplying the interrupt pin to the driver at all since it doesn't do anything with it. I might outright remove this parameter and merge some examples of interrupts actually being useful.
To actually use an interrupt in MicroPython you basically have to set it all up again: https://github.com/pimoroni/pimoroni-pico/issues/169
And I'm pretty sure (although I don't think I've played with pin interrupts) in C++ things are not much different. Interrupts are too messy to handle in the library internals.


Add Support for AWS Textract Analyzing ID Documents feature

On December 1st 2021 Amazon announced a new feature for their Textract service - Analyze ID. This allows for extracting data from government issued ids (i.e. Driver's license). Multiple languages SDKs support this new feature. Aws-elixir Textract module does not.
Please add support for this.
https://aws.amazon.com/blogs/machine-learning/announcing-support-for-extracting-data-from-identity-documents-using-amazon-textract/

@Sahedeva this update is now available in the version 0.10.0 that was just released.

@philss just a quick update, I have successfully used the analyze_id feature using 0.10.0 - thank you so much for making this happen!


⚠ MineVN Website has degraded performance

In f977eb6, MineVN Website (http://minevn.net) experienced degraded performance:

HTTP code: 200
Response time: 11107 ms

Resolved: MineVN Website performance has improved in 030926c.


[QUESTION] How to find out the height of the keyboard without opening it?

Describe the bug
I'm so sorry, buy I need you help, please
In my application, I need to implement a menu similar to the sticker menu, as in telegram. Accordingly, it should be possible to open without opening the keyboard. And the height of the menu should be equal to the height of the keyboard.
Expected behavior
There is some value of keyboard height from hook or something.
Screenshots

Additional context
Here is a video of how I want to
https://user-images.githubusercontent.com/58901926/227913268-713f085e-d0db-47f7-83ab-f8f8fadf9fe5.mp4

No @dualism98
As far as I know it's impossible to know keyboard size if it's not going to be shown. So for your case it's better to store the value of last keyboard size and update it correspondingly to keep it up to date.
Can I close the issue, since I answered the question?

Of course. And thank you very much for your help!

I found some big problem with Android, to avoid keyboard jump when change keyboard mode( eg: from normal keyboard to emoji keyboard). We must change the keyboard adjust to adjust nothing, which mean all the keyboard height listener will not working. Any ideal pls

@fukemy please, open a new issue.
Basically you don't need to use adjustNothing - once you've wrapped your app in KeyboardProvider all automatic resizes by Android OS will not happen anymore.

to avoid keyboard jump when change keyboard mode

When keyboard changes its size the library makes an animated transition. You can check Chat example as a reference 👀

Hi @kirillzyusko , I make new question for continue this issue, please double check it


New hiredis maintainer?

Hello, I created this issue in order to understand how to move forward with hiredis.

I'm not maintaining it for a lot of time, if you exclude fixes that were necessary for Redis.
@mattsta is more or less doing the same as me.
@pietern was the one that was pushing hiredis forward, but I understand he got no time now (and we thank you, Pieter, for the work you put into it so far).

@pietern are you ok with the idea of looking for a new maintainer? Apparently nobody is handling it right now but it is a critical piece of code since it's also part of Redis, Sentinel, the foundation of many other client libs, and so forth.
Anyone interested to maintain it? This is not Redis, a more liberal model of development is possible, so we'll give commit access to the new maintainer that will schedule the releases and so forth.

Now that hiredis 0.12.0 is out, would be awesome if we could get a new hiredis-node version out ...

Does it just require repointing the submodule at https://github.com/redis/hiredis-node/tree/master/deps to the new release?

Yeah that should work. And then bump the version to 0.2.0? Maybe pull https://github.com/redis/hiredis-node/pull/67 and https://github.com/redis/hiredis-node/pull/71 and then publish to npm.

@pietern Will you take care of that? Right now you're the solely owner of that package on npm. I could jump in if you want, you'd just have to add me as an owner.

Yep, that's pretty much it. @badboy @mattsta How do you feel about taking on not only hiredis-node, but also hiredis-rb and hiredis-py? If the pace on hiredis is going to be picking up, I'm sure I won't be able to keep up and it would be easier if you would push out new versions directly. Let me know what you think and I can add you to the repo's and the respective package management systems for publishing.

I'm happy to take on hiredis-node and hiredis-rb.
Gonna pass on hiredis-py though. I have absolutely no experience with Python.
Any other takers?
On Thu, Jan 22, 2015 at 02:44:07PM -0800, Pieter Noordhuis wrote:

Yep, that's pretty much it. @badboy @mattsta How do you feel about taking on not only hiredis-node, but also hiredis-rb and hiredis-py? If the pace on hiredis is going to be picking up, I'm sure I won't be able to keep up and it would be easier if you would push out new versions directly. Let me know what you think and I can add you to the repo's and the respective package management systems for publishing.

Reply to this email directly or view it on GitHub:
https://github.com/redis/hiredis/issues/283#issuecomment-71114641

Wait up, if you move to 0.12.0 please make of the newly refactored code base.
hiredis-py should now depends on read.c instead of hiredis.c, since it only uses the hiredis parsing code, this should make it possible to finally compile hiredis-py on windows without modification (still didn't get a chance to check it out yet).
It seems that hiredis-node (not a node user) should do the same move, but hiredis-node seems to depend on async.c (not sure where it's being used if it is), if it's not required, maybe hiredis-node can be compiling in windows without modification as well.
Check out my pull request here:
https://github.com/redis/hiredis-py/pull/30

@pietern ping.

@mattsta @badboy @michael-grunder I have added you to the repo's for the hiredis bindings.
I think this issue can now be closed :)
We can take care of the Rubygems/NPM/PyPI credentials/ownership in separate issues with these repositories.

Thanks @pietern. now using his power


A module to run NATS server.

A module to support running the NATS(https://nats.io/) server.
The images are published on dockerhub here: https://hub.docker.com/_/nats/

Hi @aurabhi,
Plese see https://www.testcontainers.org/contributing/#does-it-need-to-be-a-module
It looks like NATS can easily be used with Testcontainers' GenericContainer and does not deserve a module. Thanks for spending time on it tho!


Fixed #1166 - Currency Format

Issue Reference

Fixes #1166 -  Currency format Enhancement
Description

We made changes to the database currencies table by altering it and adding new columns for decimal separator, thousand separator, and currency position. These changes are reflected in the edit and add forms, which can be accessed at /admin/settings/currencies.
We updated the models table to make these new fields fillable.
We also made changes in the CurrencyController, where we created a currencyPosition array to populate dropdown options in the form. and in store and update methods this allows us to add and edit fields seamlessly.
To improve the formatting of currency values, we introduced a new function called 'formatPriceWithSymbol' in the core.php file. This function helps in formatting currency and adjusting the position of the currency symbol. Furthermore, we wrapped the currency symbol in an HTML tag with a class, which was created for future styling customizations.
For styling purposes, we created a new class in the public/css/currency-symbol-style.css file and linked this file in packages/Webkul/Shop/src/Resources/views/components/layouts/index.blade.php to apply the styles in the user panel.
To enhance the formatting of the total price of bundle products, we implemented a new API in packages/Webkul/Shop/src/Routes/api.php and utilized it in packages/Webkul/Shop/src/Resources/views/products/view/types/bundle.blade.php within the v-product-bundle-options component.
In packages/Webkul/Shop/src/Resources/views/products/prices/bundle.blade.php, we made adjustments to the HTML structure to avoid using CSS classes on both the currency symbol and price separately.
Lastly, to render HTML tags attached to the currency symbol, we using {!! !!} or v-html in Blade files instead of {{ }} or v-text."

How To Test This?

This pull request introduces a feature that enhances currency formatting. It now supports customizing both thousand separators and decimal separators, which can be configured via the settings form. In cases where these fields are left empty, a space separator is automatically used. Additionally, this feature allows for the display of the currency symbol in the selected position.
The styling of the currency symbol is managed through CSS, which has been added to the 'currency-symbol-style' class in the 'public/css/currency-symbol-style.css' file."

Documentation

[ ] My pull request requires an update on the documentation repository.

@sunarcrajneesh Getting a few issues. Please check
A. Not able to create/edit currency, has errors in the console. Here
B. Getting Spelling mistake in Decimal Separator. Here

Able to create/edit currency without any errors.

We have verified the situation, and we have not encountered any errors so far. Would you kindly confirm whether you have executed the migrate command?

We have resolved the minicart exception, fixed that typo, and also translation issues related to 'starting price' in grouped products and 'As low as' in configurable products.

@sunarcrajneesh Getting a few issues please check.

On the Add coupon button HTML code appears. Here
In other Languages currency signs appear twice. Here
If the currency symbol is removed/deleted from the admin side, On the Shop it shows both the currency symbol and code. Here

@sunarcrajneesh, Is there any update?

@Amitk-webkul,
We have addressed the styling point related to the currency symbol and implemented the required file changes, following the suggestions made by @devansh-webkul.
After removing the currency symbol, it is no longer displaying in the shop, and we have also added the translations.

@sunarcrajneesh, Okay Thank you for confirming.

@sunarcrajneesh, Is there any update?

@Amitk-webkul,
As per our earlier communication, we'd like to inform you that the reported bug has been successfully resolved on our end, and this PR also resolves #8605.

@sunarcrajneesh Please resolve the conflicts.

@Amitk-webkul Conflicts resolved.

@sunarcrajneesh,  Please resolve the conflicts
Please rename the visit table as we have already used the visit table. Here

@Amitk-webkul,
Conflicts resolved. Please verify once more as we are not using the 'visit' table.

@sunarcrajneesh, It is working fine. Please add a fix comment to the review comments.

Hi @sunarcrajneesh,
Can you please update the branch? As commits are too much behind.

@devansh-webkul,
Sure, we'll update the branch to sync with the latest commits.

@devansh-webkul,
We have updated the branch, please check it.

@sunarcrajneesh,
Pint test is failing. Please run pint command on your project.

I will take some more time on this PR as it relates to currency and I need to check some more areas.
Also, I want to know it will only work when a symbol has been saved from the backend office.

@devansh-webkul there are some conflicts with the PR, please check and update.

This pull request has been here for too long. I am checking and updating this as per the requirement.

@ashishkumar-webkul,
This pull request is ready for test again.

This pull request will merge in the 2.1 branch. So switched from the master.

@devansh-webkul Sir
As checked and Found that there are some issues which are appeairng. Please check  the below details.
I have added migration as well.

I was able to add any values in the Decimal Seperator. Group Seperator and Decimal.

Video
https://github.com/bagisto/bagisto/assets/92721837/a590ef06-d87a-4e84-a9f8-f5c9867f003b

I have added 4 decimal points and it is reflecting only 2 values.

Video
https://github.com/bagisto/bagisto/assets/92721837/d3a529d6-e578-4635-ab66-21a1502154a4

Proper Validation need to be added in Saving inappropriate values.

Screenshot -> https://scrsht.com/d1fbd47c

@ashishkumar-webkul,

For the first point, possible decimal and group separators can vary depending on the specific language or context. Examples include comma (,), period (.), space, apostrophe ('), middle dot (·), hyphen (-), underscore (_), thin space, and non-breaking space. Therefore, it's better to keep the validation open so that users can add separators as per their needs. This isn't an issue because the admin person can configure it according to their requirements.

@ashishkumar-webkul,

The second point must be a cache issue. I verified it locally and it's working fine.


UI glitches

ℹ Computer information

PowerToys version: 0.29.3
PowerToy Utility:Image Resizer
Running PowerToys as Admin:yes
Windows build number: 19402.685

📝 Provide detailed reproduction steps (if any)

Right click on a jpg file
Click on Resize pictures
Hover or click on elements

✔ Expected result
Regular UI element's behavior
❌ Actual result
Glitch and crash on UI elements
(this happens in layout editor windows too)
📷 Screenshots

@mehrdad-helmi

Glitch and crash on UI elements

Can you elaborate on the crash. Did Image Resizer and FZ Editor crash after you took the snapshot?
Can you check in the Event Viewer is there are events showing the crash log?

@mehrdad-helmi

Glitch and crash on UI elements

Can you elaborate on the crash. Did Image Resizer and FZ Editor crash after you took the snapshot?
Can you check in the Event Viewer is there are events showing the crash log?

Nope this is a problem with WPF where UIElements scale randomly.
One of my users reported this bug
https://github.com/ModernFlyouts-Community/ModernFlyouts/issues/287
Hope this information would help.

Nope this is a problem with WPF where UIElements scale randomly.
One of my users reported this bug
https://github.com/ModernFlyouts-Community/ModernFlyouts/issues/287
Hope this information would help.


[WIP] Port of WPF DockPanel and StackPanel

What does the pull request do?
Ports the DockPanel and StackPanel control from dotnet/wpf repository.
What is the updated/expected behavior with this PR?
DockPanel 's and StackPanel's behavior should now be inline with WPF's.
Checklist

[x] Added unit tests (if possible)?
[x] Added XML documentation to any related classes?
[ ] Consider submitting a PR to https://github.com/AvaloniaUI/Avaloniaui.net with user documentation

Breaking changes
None in the API, old unit tests passed.
Fixed issues
Fixes https://github.com/AvaloniaUI/Avalonia/issues/2601

I have tested WPF version using Avalonia's unit test and the WPF tests pass without modification.
https://github.com/wieslawsoltes/WpfUnitTests/blob/7b524ef75d1e0f0700187a199d4dd243f6731e37/tests/WpfUnitTests/DockPanelTests.cs#L17-L102

Seems like we have issue with StackPanel/Image:

@jmacato Seems like there is issue with DataGrid Bounds.Height:

Marking this as [WIP]. I will try to port WPF StackPanel to see if it fixes above issues.

Ported tests to WPF (tests with spacing are not ported for obvious reasons): https://github.com/wieslawsoltes/WpfUnitTests/blob/fadd87bede5ac4ded6bc9ffe3fab819df7ad512e/tests/WpfUnitTests/StackPanelTests.cs#L19-L358
Interesting that rwo tests fail in WPF version of StackPanel:
https://github.com/wieslawsoltes/WpfUnitTests/blob/fadd87bede5ac4ded6bc9ffe3fab819df7ad512e/tests/WpfUnitTests/StackPanelTests.cs#L139
Message: Assert.Equal() Failure
Expected: 60;120
Actual:   100;120

https://github.com/wieslawsoltes/WpfUnitTests/blob/fadd87bede5ac4ded6bc9ffe3fab819df7ad512e/tests/WpfUnitTests/StackPanelTests.cs#L116
Message: Assert.Equal() Failure
Expected: 120;60
Actual:   120;100

Looks like there are issues with Control's alignment inside panels e.g.: https://github.com/AvaloniaUI/Avalonia/blob/fedbe118be3ef7b1c8cf59172c0ec84fbfe2a99a/tests/Avalonia.Controls.UnitTests/StackPanelTests.cs#L171 as this tests are failing (they pass in WPF).

@wieslawsoltes the StackPanel tests seem to be failing because WPF keeps hidden state relating to the value returned from MeasureOverride and uses that instead of DesiredSize to actually position the control.
If you look at the test in WPF, the DesiredSize for the failing control is 100, 10 but the ActualWidth is 150.

I remember coming across this when originally writing the Avalonia layout code and being really confused what was happening here! So I'm not sure we want to copy WPF's behavior here, however we kinda do want to end up with the same layout (which is what we had before), which leads me to think that it might not be worth copying WPF's StackPanel code... What do you think?

@grokys

WPF keeps hidden state relating to the value returned from MeasureOverride

I could not find where this hidden state comes from. I would like to try to port this behavior in this PR and see if this works, otherwise I will remove StackPanel from this PR.

@grokys When looking at https://github.com/dotnet/wpf/blob/master/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/Controls/Stack.cs I could not find how this hidden state is calculated. I suspected its related to control alignment and not some hidden state.

@wieslawsoltes the hidden state is in FrameworkElement: it's referred to as "ink size" in this part of the code: https://github.com/dotnet/wpf/blob/master/src/Microsoft.DotNet.Wpf/src/PresentationFramework/System/Windows/FrameworkElement.cs#L4727

@grokys I have reverted StackPanel changes in this PR. I will submit separate PR for StackPanel so this PR is not blocked.

This PR is ready for review.


Update dependencies

This includes https://pkg.go.dev/vuln/GO-2023-1571

/assign @coreydaley

/approve
/lgtm


Won't compile on Windows on master branch

Crate version:
I'm using 17651193edad67f10f9e139d5b86b2d31665c0a6 of the master branch to get support for latest version of futures.
OS: I'm on Windows 10
Output of running docker version on the command line:

Client: Docker Engine - Community
 Cloud integration: 1.0.2
 Version:           19.03.13
 API version:       1.40
 Go version:        go1.13.15
 Git commit:        4484c46d9d
 Built:             Wed Sep 16 17:00:27 2020
 OS/Arch:           windows/amd64
 Experimental:      false

Server: Docker Engine - Community
 Engine:
  Version:          19.03.13
  API version:      1.40 (minimum version 1.12)
  Go version:       go1.13.15
  Git commit:       4484c46d9d
  Built:            Wed Sep 16 17:07:04 2020
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          v1.3.7
  GitCommit:        8fba4e9a7d01810a393d5d25a3621dc101981175
 runc:
  Version:          1.0.0-rc10
  GitCommit:        dc9208a3303feef5b3839f4323d9beb36df0a9dd
 docker-init:
  Version:          0.18.0
  GitCommit:        fec3683

The error I'm getting is:
thread 'main' panicked at 'Unix socket support is disabled', C:\Users\Buttah\.cargo\git\checkouts\shiplift-48fc668b583d42d4\1765119\src\lib.rs:975:21
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
error: process didn't exit successfully: `target\debug\amazon-price-scraper.exe` (exit code: 101)

My Cargo.toml is:
[package]
name = "some-name"
version = "0.1.0"
authors = []
edition = "2018"

[dependencies]
scraper = "0.12.0"
prettytable-rs = "0.8.0"
textwrap = "0.12.1"
url = "2.2.0"
anyhow = "1"
async-std = {version = "1", features = ["attributes", "tokio03", "tokio02"]}
futures = "0.3.8"
cdrs-tokio = "1"
chrono = "0.4"
reqwest = { version = "0.10.9", features = ["brotli", "gzip", "native-tls", "cookies"] }
shiplift = { git = "https://github.com/softprops/shiplift.git", default-features = false, features = ["tls"] }

I think Windows support is being worked on. So I wonder if help is needed getting Windows to compile and what the issues are currently. Also how can I get around this issue?

You cannot use Docker::new() with unix socket support disabled! You need to use Docker::host().

I think we should look into alternative ways to initialize Dockers since Docker::new() failing without unix sockets is certainly unintuitive. https://github.com/softprops/shiplift/pull/256 looked into this a bit and I think would be a good start at least, but I think that we should probably make it so Docker::new() is smarter (or doesn't exist without unix sockets).

I think we should look into alternative ways to initialize Dockers since Docker::new() failing without unix sockets is certainly unintuitive. https://github.com/softprops/shiplift/pull/256 looked into this a bit and I think would be a good start at least, but I think that we should probably make it so Docker::new() is smarter (or doesn't exist without unix sockets).

Agreed. Even better, instead of feature flags, those dependencies should IMO simply be chosen based on the target platform. There is little reason for pushing this responsibility to every user when it could just be solved once within shiplift.

dependencies should IMO simply be chosen based on the target platform.

I'm not sure I like that, because it makes things harder if someone works for code on platform A while developing on platform B, right?
I agree that Docker::new is unintuitive and we should make the API more explicit.

I'm not sure I like that, because it makes things harder if someone works for code on platform A while developing on platform B, right?

I've been in exactly this situation with shiplift. I was developing on Linux but the app had to work on Linux, MacOS and Windows. In the end, I had to request a windows machine for testing and set up a development environment there because there was no way otherwise to figure out, what exactly I needed to enable and patch for shiplift to work on Windows.
If anything, situations like that should be easier because you don't have to care about the differences between platform A and B. You just code against a single API and the library will figure out the right thing to do based on the plethora of target related conditional compilation options.
FWIW getrandom takes exactly this approach.


Example notebook

Hi! This project looks awesome! Thank you for sharing it 🚀 ! It would be great to have a concrete example maybe as a notebook (specially because to see the plots)? I have worked some simulation examples in with orbit's KTR model and pymc (see https://juanitorduz.github.io/orbit_mmm/ and https://juanitorduz.github.io/pymc_mmm/). Maybe I / we can extend this simulated examples in lightweight_mmm?

Hi @juanitorduz ! Thanks for reaching out! That is a very good point, we are currently working on a few set of notebooks showcasing a end to end demo, plots, media optimisation and other features.
Im hoping to release the first one this week and the others will follow.
Although those notebooks aim to showcase the features available in the library we would love to see how the community uses it, so feel free to share with us any work that you do with lightweight_mmm and we can link it somewhere as well :)

Cool! Looking forward! :)


(Bug) Adds updated styles for welcome card and fixes margin between error m…

This PR closes #167777841 and #167839722, by:

Adding default margin bottom to some inputs (phone input and OTP input)
Updating styles on welcome feed item on list
Adding some styles and validation on Welcome feed modal

Extra:
• Welcome item on list design
• Welcome feed modal
Current pages

According to the image you sent I can see (first image) that The welcome feed item is still not like the design, regarding margins, specifically from line to text. this could be an issue with all feed items when there are "two lines of text". the icon also looks too close to the line. the text font looks too big to me.

Updated in my last commit

other findings:

Modal's "Welcome to GoodDollar!" color is #222 and wireframes states: #42454A
Colors of texts in feedItem seems to differ from wireframes ("Welcome to GoodDollar!" looks Ok, but "Start claiming free G$" looks a lot lighter)
Errors for profile 'username' and 'email' seems to be too close to the inputs

other findings:

Modal's "Welcome to GoodDollar!" color is #222 and wireframes states: #42454A
Colors of texts in feedItem seems to differ from wireframes ("Welcome to GoodDollar!" looks Ok, but "Start claiming free G$" looks a lot lighter)
Errors for profile 'username' and 'email' seems to be too close to the inputs

Fixed! 👍

Fixes errors on profile

And in sign up page


A question about the design of RRDB in ESRGAN

Hi, when I read ur paper (ESRGAN), it says "scaling down the residuals by multiplying a constant between 0 and 1 before adding them to the main path to prevent instability".
What is the reason?
Is it because if we scale down the residual, we can meanwhile scale up the weights?

Intuitively, residuals are supposed to be smaller numbers than those in the main path. Without rescaling, the outputs of the residual block will be larger (adding residual to the main path).
This is not the problem when the network is shallow, because the network can adaptively learn it. However, when the network becomes deeper, this may results in too large/small gradients, leading to probolems during training.
This is also the empirical practice in previous work, you may refer to Sec 3.3 in this paper: https://arxiv.org/pdf/1602.07261.pdf (Inception-v4, Inception-ResNet and the Impact of Residual Connections on Learning)


Reload page every 15 minutes

Closes #19
┆Issue is synchronized with this Asana task by Unito

This is fine, but ultimately I want each frame/panel to update on it's own and not necessarily tied to the whole page.


Nested Coproduct Test (as ignored)

This PR shows how nested coproducts are not working in Freestyle. Nor iota nor the cats coproduct are making it as a working valid test case.
Depends on https://github.com/frees-io/freestyle/pull/318
Currently, this new test is tagged as ignore.

Codecov Report

Merging #321 into master will not change coverage.
The diff coverage is n/a.

@@          Coverage Diff           @@
##           master    #321   +/-   ##
======================================
  Coverage    82.4%   82.4%
======================================
  Files          25      25
  Lines         216     216
  Branches        2       2
======================================
  Hits          178     178
  Misses         38      38

See #324


Compatibility with NODE_MODULE_VERSION 64

I'm getting the following error when trying to use font-manager in my Electron app.
Uncaught Error: The module '/Users/justint/Documents/Dev/RenderTurbine/node_modules/font-manager/build/Release/fontmanager.node'
was compiled against a different Node.js version using
NODE_MODULE_VERSION 57. This version of Node.js requires
NODE_MODULE_VERSION 64. Please try re-compiling or re-installing
the module (for instance, using `npm rebuild` or `npm install`).

Any plans to make font-manager compatible with the newer versions of Node? Thanks!

Font Manager: 0.3.0
NPM: 6.4.0
Node: 10.2.0
Electron: 3.0.9

Node 10.2.0 had a compatibility issue with node-gyp, upgrading to Node 10.11.0 and reinstalling / rebuilding fixed it.


Update documentation for OpenAI API > 1.0.0

Hi, I'd like to use vllm with the openAI python API, so I can switch between VLLM and OpenAI just by changing the URL. I have openai version 1.3.5.
Here are the docs :
import openai
# Set OpenAI's API key and API base to use vLLM's API server.
openai.api_key = "EMPTY"
openai.api_base = "http://localhost:8000/v1"
chat_response = openai.ChatCompletion.create(
    model="facebook/opt-125m",
    messages=[
        {"role": "system", "content": "You are a helpful assistant."},
        {"role": "user", "content": "Tell me a joke."},
    ]
)
print("Chat response:", chat_response)

This results in the following error:
openai.lib._old_api.APIRemovedInV1:

You tried to access openai.ChatCompletion, but this is no longer supported in openai>=1.0.0 - see the README at https://github.com/openai/openai-python for the API.

You can run `openai migrate` to automatically upgrade your codebase to use the 1.0.0 interface.

Alternatively, you can pin your installation to the old version, e.g. `pip install openai==0.28`

A detailed migration guide is available here: https://github.com/openai/openai-python/discussions/742

Using issue #1644, the correct version is:
from openai import OpenAI
    # Set OpenAI's API key and API base to use vLLM's API server.
    api_key = "EMPTY"
    api_base = "http://localhost:8000/v1"
    client = OpenAI(api_key=api_key, base_url=api_base)
    completion = client.chat.completions.create(
        # model="facebook/opt-125m",
        model="facebook/opt-125m",
        messages=[
            {"role": "system", "content": "You are a helpful assistant."},
            {"role": "user", "content": "Tell me a joke."},
        ]
    )
    print("Chat response:", completion.choices[0].message.content)

Hi @jbohnslav, could you submit a PR about this change? Thanks.

I've already opened a PR for this last week, upgrading the examples as well #1785.

I'm getting an error when doing exactly that:
Error code: 401 - {'error': {'message': 'Incorrect API key provided: EMPTY. You can find your API key at https://platform.openai.com/account/api-keys.', 'type': 'invalid_request_error', 'param': None, 'code': 'invalid_api_key'}}

It makes sense that the openai lib wouldn't want to be compatible with vllm, have they broken this intentionally?
I'm on openai==1.8.0.

@jbohnslav I had a similar issue. I solved it by
openai.api_key = "<API key>"
    completion = openai.Completion.create(
        model="gpt-3.5-turbo-instruct",
        prompt=prompt ",
        temperature=0.1,  # 0-2
        max_tokens=100,
        top_p=1,
        n=1)

Try to use similar spellings, it will work. completion and many other packages are now in new name format. Please check the documentation if you are facing the same issue.


mavenize the project

Hi,
I wanted loosed jar as part of my automated build (based on maven) and realised its not part of mvn repo. I have gone ahead and mavenized the project in my repo, sending u a PR for the same.
BTW thank you for the project.
Regards,
-Yogesh

How does releasing the project on maven central sound to you? If yes i can hep fix that..

I absolutely love this idea! Thanks for helping with that.

Before I proceed on this. Since maven support is now available as part of loosejar

can we remove ant now?
remove lib directory?
remove .idea directory?

Sure, I am ok with completely Mavenizing it. :)

What license is the project released under ? Is it Apache License version 2 ?

Yes! Feel free to add the license text to the project. And again, thank you for your help!

you are welcome.. having it part of central repo also helps me :)
btw the group id of the project would change to com.googlecode.loosejar and the artifact id would be loosejar,

just curious would you be able to follow couple of steps mentioned here http://stackoverflow.com/questions/28846802/how-to-manually-publish-jar-to-maven-central, seems to me it would be better if the author did it.
I have made all the other changes and will raise a pull request for the same.

I'll get to it this week, Yogesh.
Thanks again, man!
-K.
On Sun, Oct 2, 2016 at 11:48 AM, Yogesh Rao<EMAIL_ADDRESS>wrote:

just curious would you be able to follow couple of steps mentioned here
http://stackoverflow.com/questions/28846802/how-to-
manually-publish-jar-to-maven-central, seems to me it would be better if
the author did it.
I have made all the other changes and will raise a pull request for the
same.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/kyrill007/loosejar/issues/6#issuecomment-250977947,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAml0zGP3VHvw2rVZPjhm1f5lHCbBxcwks5qv9JdgaJpZM4JpT_X
.

Thanks Kyrill!
please let me know once the jar is available on maven central.

It's just been released, Yogesh. Thanks for your help!

Wow thats great news!!! Thank you ...


Setup Github CI with flake8 and pytest

I order to keep our project conversion a refactoring this will help he process to keep thing clean

Been playing around with the actions and I'm going to setup this in

Going to setup this a little bit differently