Where is HttpContext.Server.HtmlEncode

How can I do HtmlEncode now in ASP.NET 5?
Thank you
Gary

There's an HTML encoder that you can acquire through DI.
However, depending on where you are in the system, there are often easier ways to get to it. From where do you want to do HTML encoding? An MVC controller? Middleware? A POCO class?

Eilon,
Thank you for the reply.
I'm doing it in controller for now. please let me know how to do the DI (e.g what should I do in startup.cs and what should I pass in constructor).

May I have a suggestion here? Could you guys provide a table to show how to do some poplar functions between ASP.NET 4 and 5. It will lower the learning curse and improve the adoption of ASP.NET 5.
For example,
HTMLEncoding
ASP.NET 4: HttpContext.Server.
ASP.NET 5: DI, how to ...
CultureInfo
ASP.NET 4: ....
ASP.NET 5: not supported yet (?)  Any workaround?
Cache:
ASP.NET 4: HttpContext.Cache
ASP.NET 5: DI, how to ...
Thanks lot
Gary

There is Microsoft.Framework.WebEncoders.HtmlEncoder.Default.HtmlEncode(). But where is HtmlDecode?

@blowdart thoughts on having matching encode/decode APIs for all the encoder stuff? This is all in the BCL now, but we can provide input (and perhaps implementations, if desired).
There are currently HTML, JavaScript, and URL encoders here: https://github.com/dotnet/corefx/tree/master/src/System.Text.Encodings.Web/src/System/Text/Encodings/Web. But no decoders.

We is core duplicating work we have already done? (https://github.com/aspnet/HttpAbstractions/tree/dev/src/Microsoft.Extensions.WebEncoders.Core)
There needs to be a sole implementation, and ours, we generate from the specs, so it's up to date.
(but yea, there should be decodes too).

@blowdart we're removing ours and will call into the ones in CoreFx (we moved the code there).
Do you want to log a bug for CoreFx on decoders with any relevant info?

This issue is being closed because it has not been updated in 3 months.
We apologize if this causes any inconvenience. We ask that if you are still encountering this issue, please log a new issue with updated information and we will investigate.

This message was created automatically by mail delivery software.
A message that you sent could not be delivered to one or more of its
recipients. This is a temporary error. The following address(es) deferred:
<EMAIL_ADDRESS>Domain spinthemoose.com has exceeded the max emails per hour (233/200 (116%)) allowed.  Message will be reattempted later
------- This is a copy of the message, including all the headers. ------
Received: from o3.sgmail.github.com ([<IP_ADDRESS>]:1674)
by cp1164.blacksun.ca with esmtps (TLSv1.2:ECDHE-RSA-AES128-GCM-SHA256:128)
(Exim 4.89_1)
(envelope-from<EMAIL_ADDRESS>id 1eVkHp-0001Ob-GQ
for<EMAIL_ADDRESS>Sun, 31 Dec 2017 14:32:49 -0600
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d=github.com;
h=from:reply-to:to:cc:in-reply-to:references:subject:mime-version:content-type:content-transfer-encoding:list-id:list-archive:list-post:list-unsubscribe;
s=s20150108; bh=6ZK68B9CENuA146XFeCunUWbSQg=; b=XrO14GHYoNwdpsU3
N9y8ku+UBUcD74xO6lrkJjuBRQ40Jb8uAN0nxEd3UMjjj05YfEtyBWgsHV0Lv5mE
trNqoB6jl63tjvSWSNwyVQ+hPmSz9Ahw5dwL+ZwFDeb+APDfda6f6Gnxhes6AfIN
OBobGKupnANCA/ZXz8+A9yGDR2c=
Received: by filter0628p1mdw1.sendgrid.net with SMTP id filter0628p1mdw1-4808-5A49495B-F
2017-12-31 20:32:27.868918835 +0000 UTC
Received: from github-smtp2b-ext-cp1-prd.iad.github.net (github-smtp2b-ext-cp1-prd.iad.github.net [<IP_ADDRESS>])
by ismtpd0010p1iad1.sendgrid.net (SG) with ESMTP id 5MUlApySSNqpXLG52m0d8Q
for<EMAIL_ADDRESS>Sun, 31 Dec 2017 20:32:27.865 +0000 (UTC)
Date: Sun, 31 Dec 2017 20:32:27 +0000 (UTC)
From: "ASP.NET Hello Bot"<EMAIL_ADDRESS>Reply-To: aspnet/Home<EMAIL_ADDRESS>To: aspnet/Home<EMAIL_ADDRESS>Cc: Subscribed<EMAIL_ADDRESS>Message-ID<EMAIL_ADDRESS>In-Reply-To<EMAIL_ADDRESS>References<EMAIL_ADDRESS>Subject: Re: [aspnet/Home] Where is HttpContext.Server.HtmlEncode (#820)
Mime-Version: 1.0
Content-Type: multipart/alternative;
boundary="--==_mimepart_5a49495bbe268_6b413f8da51e4f34144952d";
charset=UTF-8
Content-Transfer-Encoding: 7bit
Precedence: list
X-GitHub-Sender: aspnet-hello
X-GitHub-Recipient: davidalpert
X-GitHub-Reason: subscribed
List-ID: aspnet/Home <Home.aspnet.github.com>
List-Archive: https://github.com/aspnet/Home
List-Post<EMAIL_ADDRESS>List-Unsubscribe<EMAIL_ADDRESS>https://github.com/notifications/unsubscribe/AACpREqdNLk3yxHYLkMK8mIIvtTQb7RPks5tF-9bgaJpZM4Fptjq
X-Auto-Response-Suppress: All
X-GitHub-Recipient-Address<EMAIL_ADDRESS>X-SG-EID: rlj3t9ahcX0BZUzAOlajQ3VmBXo43xFJc4M1ImIDJhF3bLhj37LqZbg9uIwfR5UcS1pYcCzO7AVket
iTR5rvzXxEfj9B1p+ZmeRfOxC1/hF+G4hWH3CVrmsUb7ofu3owxMC8EHO3IQsmMq/Q5kpDtmIe/v+N
IY5Cl33+zwJot3Mh7BJkhW6tWwst0KmgRvN6zKcRVxKC/04tX92d3D3oYX/imnHAnSr5XNOqWT+7G2
c=
----==_mimepart_5a49495bbe268_6b413f8da51e4f34144952d
Content-Type: text/plain;
charset=UTF-8
Content-Transfer-Encoding: 7bit
Closed #820.
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/aspnet/Home/issues/820#event-1405408723
----==_mimepart_5a49495bbe268_6b413f8da51e4f34144952d
Content-Type: text/html;
charset=UTF-8
Content-Transfer-Encoding: 7bit
Closed #820.
—You are receiving this because you are subscribed to this thread.Reply to this email directly, view it on GitHub, or mute the thread.

----==_mimepart_5a49495bbe268_6b413f8da51e4f34144952d--

This message was created automatically by mail delivery software.
A message that you sent could not be delivered to one or more of its
recipients. This is a temporary error. The following address(es) deferred:
<EMAIL_ADDRESS>Domain spinthemoose.com has exceeded the max emails per hour (232/200 (115%)) allowed.  Message will be reattempted later
------- This is a copy of the message, including all the headers. ------
Received: from github-smtp2-ext7.iad.github.net ([<IP_ADDRESS>]:53810 helo=github-smtp2a-ext-cp1-prd.iad.github.net)
by cp1164.blacksun.ca with esmtps (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256)
(Exim 4.89_1)
(envelope-from<EMAIL_ADDRESS>id 1eVkHn-0001Oa-WC
for<EMAIL_ADDRESS>Sun, 31 Dec 2017 14:32:48 -0600
Date: Sun, 31 Dec 2017 12:32:27 -0800
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=github.com;
s=pf2014; t=1514752347;
bh=oMHe7G1NxbM/c+seFtwF8eC7ZTknQgboTcWMpR+HMiI=;
h=From:Reply-To:To:Cc:In-Reply-To:References:Subject:List-ID:
List-Archive:List-Post:List-Unsubscribe:From;
b=OFNZc1xfTqxJ4eVOVdzNT+lTx+gP7QPEcclqytyZ0k2ivkRMWQLTL4ezzO7dSJdBH
+dFJH+bn4a5ZQe3bcnct0l6blLY5uKqN/azHbi7p7wtx6FKjzUYCCoAIp1tYyk4DHN
6ilHYx+/DrBbBbCR3GY5rPEJnjvqeJCLIVYpLCaE=
From: "ASP.NET Hello Bot"<EMAIL_ADDRESS>Reply-To: aspnet/Home<EMAIL_ADDRESS>To: aspnet/Home<EMAIL_ADDRESS>Cc: Subscribed<EMAIL_ADDRESS>Message-ID<EMAIL_ADDRESS>In-Reply-To<EMAIL_ADDRESS>References<EMAIL_ADDRESS>Subject: Re: [aspnet/Home] Where is HttpContext.Server.HtmlEncode (#820)
Mime-Version: 1.0
Content-Type: multipart/alternative;
boundary="--==_mimepart_5a49495bc5979_60623fc381302f30323a6";
charset=UTF-8
Content-Transfer-Encoding: 7bit
Precedence: list
X-GitHub-Sender: aspnet-hello
X-GitHub-Recipient: davidalpert
X-GitHub-Reason: subscribed
List-ID: aspnet/Home <Home.aspnet.github.com>
List-Archive: https://github.com/aspnet/Home
List-Post<EMAIL_ADDRESS>List-Unsubscribe<EMAIL_ADDRESS>https://github.com/notifications/unsubscribe/AACpREqdNLk3yxHYLkMK8mIIvtTQb7RPks5tF-9bgaJpZM4Fptjq
X-Auto-Response-Suppress: All
X-GitHub-Recipient-Address<EMAIL_ADDRESS>----==_mimepart_5a49495bc5979_60623fc381302f30323a6
Content-Type: text/plain;
charset=UTF-8
Content-Transfer-Encoding: 7bit
This issue is being closed because it has not been updated in 3 months.
We apologize if this causes any inconvenience. We ask that if you are still encountering this issue, please log a new issue with updated information and we will investigate.
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/aspnet/Home/issues/820#issuecomment-354622617
----==_mimepart_5a49495bc5979_60623fc381302f30323a6
Content-Type: text/html;
charset=UTF-8
Content-Transfer-Encoding: quoted-printable
This issue is being closed because it has not been updated in 3 months=
.
We apologize if this causes any inconvenience. We ask that if you are =
still encountering this issue, please log a new issue with updated inform=
ation and we will investigate.
&m=
dash;You are receiving this because you are subscribed to this thre=
ad.Reply to this email directly, view it on GitHub, or mute the thread.

=
----==_mimepart_5a49495bc5979_60623fc381302f30323a6--


Feature 314 create gateway rse list

Added listses usecase. this includes a pipelineelement that accesses the rse gateway getRSE function, which I also implemented and tested.

as discussed, closing this one and adding a new PR with only the gateway (i.e. primary ports and usecase removed), so you can continue there using the meow-maker.


Add PendingConfirmation and Confirmed to the list of Request statuses on Event Details page

Currently, the event details page shows these Request statuses:

Since RequestApiController and Hangfire jobs and sms confirmation messages have been added to the system, that's introduced to more Request statuses; Confirmed and PendingConfirmation.
Update the Request status "tiles" to show these two additional statuses.

@tonysurma @stevejgordon please assign to me


For proto.SliceBool since we only accept []typedef.Bool, this function does not need to be generic.

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 100.00%. Comparing base (405d6b0) to head (6a0de9e).

Additional details and impacted files
@@            Coverage Diff            @@
##            master      #480   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files           42        42
  Lines         3810      3810
=========================================
  Hits          3810      3810

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


list of list (nested build_list) fails on master

Reporting a bug

[x] I have tried using the latest ~released~ master version of Numba (most recent is
visible in the change log (https://github.com/numba/numba/blob/master/CHANGE_LOG).
[x] I have included below a minimal working reproducer (if you are unsure how
to write one see http://matthewrocklin.com/blog/work/2018/02/28/minimal-bug-reports).

Seems related to the new list initial value feature. @stuartarchibald ?
In [7]: numba.__version__
Out[7]: '0.51.0dev0+497.g4aceb2727'

In [8]: numba.njit(lambda: [[1, 2, 3, 4, 5], [1, 2, 3, 4, 6]])()
---------------------------------------------------------------------------
TypingError                               Traceback (most recent call last)
<ipython-input-8-7fdc3277fbc9> in <module>
----> 1 numba.njit(lambda: [[1, 2, 3, 4, 5], [1, 2, 3, 4, 6]])()

~/dev/numba/numba/core/dispatcher.py in _compile_for_args(self, *args, **kws)
    413                 e.patch_message(msg)
    414
--> 415             error_rewrite(e, 'typing')
    416         except errors.UnsupportedError as e:
    417             # Something unsupported is present in the user code, add help info

~/dev/numba/numba/core/dispatcher.py in error_rewrite(e, issue_type)
    356                 raise e
    357             else:
--> 358                 reraise(type(e), e, None)
    359
    360         argtypes = []

~/dev/numba/numba/core/utils.py in reraise(tp, value, tb)
     78         value = tp()
     79     if value.__traceback__ is not tb:
---> 80         raise value.with_traceback(tb)
     81     raise value
     82

TypingError: Failed in nopython mode pipeline (step: nopython frontend)
Internal error at <numba.core.typeinfer.BuildListConstraint object at 0x7fd342d54f70>.
'list' object has no attribute 'initial_value'
During: typing of <class 'numba.core.types.containers.List'> at <ipython-input-8-7fdc3277fbc9> (1)
Enable logging at debug level for details.

File "<ipython-input-8-7fdc3277fbc9>", line 1:
numba.njit(lambda: [[1, 2, 3, 4, 5], [1, 2, 3, 4, 6]])()
^

Thanks for the report, fixed in https://github.com/numba/numba/pull/6083


fix(cli): Fix mixup of TAURI_APP_PATH and TAURI_FRONTEND_PATH

This PR aims to fix a mixup that happened prior to merging https://github.com/tauri-apps/tauri/pull/11258, as a result of which the newly introduced env vars TAURI_APP_PATH and TAURI_FRONTEND_PATH have to be used incorrectly (i.e. swapped), in order for path customization to work:
$ tree .

tauri-custom-structure
├── frontend
│   ├── package.json
│   ├── src
│   └── ...
└── tauri
    ├── Cargo.toml
    ├── src
    ├── tauri.config.json
    └── ...

$ cd ./frontend
$ pnpm tauri dev

thread '<unnamed>' panicked at crates/tauri-cli/src/helpers/app_paths.rs:117:5:
Couldn't recognize the `TAURI_FRONTEND_PATH` folder as a Tauri project. It must contain a `tauri.conf.json`, `tauri.conf.json5` or `Tauri.toml` file in any subfolder.
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
 ERR_PNPM_RECURSIVE_EXEC_FIRST_FAIL  Command was killed with SIGABRT (Aborted): tauri dev

The cause of this unfortunate last-minute mixup came from a rename aimed at avoiding confusion, applied in https://github.com/tauri-apps/tauri/pull/11258/commits/8af2d51aa69c96ac0d1aebf87ad3ac81bb4b3ae3, which I unfortunately didn't catch from @lucasfernog's description:

I've renamed TAURI_SRC_DIR to TAURI_FRONTEND_PATH and TAURI_APP_DIR to TAURI_APP_PATH to be more clear on what path does the env var refer to, what do you think? app and src are too obscure IMO, as both the frontend and the tauri app directories contain the "app" and the "src" 😂

Originally posted by @lucasfernog in https://github.com/tauri-apps/tauri/issues/11258#issuecomment-2411743683
This PR fixes this mixup.

The initial names' use of "app" + "src" were potentially confusing as one could consider both, the frontend and the tauri directories to be "app" directories, which in turn both contain "src" sub-directories. Not good.
I fear however that (even with this fix in place) the rename to "frontend" + "app" might have just replaced one source of confusion with another, at least within tauri-cli's own code:
Looking into /crates/tauri-cli/src/* it seems as if the name most-commonly used used for the directory that TAURI_FRONTEND_PATH aims to provide a customization hook for (i.e. the directory containing package.json), is app_dir/app_path, while the corresponding name for TAURI_APP_PATH (i.e. the directory containing tauri.config.toml) tends to be tauri_dir/tauri_path: The exact opposite of each other.
As such I took the liberty of applying a few more renames (app_dir/app_path => frontend_dir/frontend_path) to re-align things within tauri-cli/src (but kept them in separate PRs for easier code review).

I have tested the patched cargo-tauri tool on a real-world project and it works, again.
Where by "it works" I mean that the following works:
The default behavior of cargo tauri remains unchanged:
# Run `cargo tauri` from within the "tauri" directory:
cd <project>/tauri
cargo tauri dev

    Running BeforeDevCommand (`pnpm dev`)

><EMAIL_ADDRESS>dev <SNIP>/tauri-custom-structure/frontend
> vite

    ...
    Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.87s

✅
Worth noting: Running cargo tauri dev from within the tauri directory has always worked, even before the introduction of such env vars. As such it used to be how we would build/run out tauri app.
But if you do provide appropriate env vars, then you can now even run the command from the project's root(!) directory:
# Provide appropriate tauri path env vars:
export TAURI_APP_PATH="./tauri"
export TAURI_FRONTEND_PATH="./frontend"

# Run `cargo tauri` from within the root(!) directory:
cd <project>
cargo tauri dev

    Running BeforeDevCommand (`pnpm dev`)

><EMAIL_ADDRESS>dev <SNIP>/tauri-custom-structure/frontend
> vite

    ...
    Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.65s

✅
Likewise running pnpm tauri from within the "frontend" directory should work, too:
# Provide appropriate tauri path env vars:
export TAURI_APP_PATH="./tauri"
export TAURI_FRONTEND_PATH="./frontend"

# Run `pnpm tauri` from within the "frontend" directory:
cd <project>/frontend
pnpm tauri dev

❓
I don't however know how to patch the node side of cargo tauri, so I'll have to leave any testing of that to you.

These are the exact steps I followed to test the PR on a minimal dummy project, with the following custom structure:
$ tree .

tauri-custom-structure
├── frontend
│   ├── package.json
│   ├── src
│   └── ...
└── tauri
    ├── Cargo.toml
    ├── src
    ├── tauri.config.json
    └── ...

Create vanilla tauri project:
$ pnpm create tauri-app

✔ Project name · tauri-custom-structure
✔ Identifier · com.tauri-custom-structure.app
✔ Choose which language to use for your frontend · TypeScript / JavaScript - (pnpm, yarn, npm, deno, bun)
✔ Choose your package manager · pnpm
✔ Choose your UI template · Vanilla
✔ Choose your UI flavor · TypeScript

Template created!

Move all frontend-related files into ./frontend:
mkdir frontend
mv index.html package.json src tsconfig.json vite.config.ts frontend/

Rename src-tauri to `tauri:
mv src-tauri tauri

Install npm packages:
cd ./frontend
pnpm install

Run the cargo tauri commands as shown above.


Getting the database path

Half of this documentation is about getting the database path. It would be better to get this directly from SQLite.Net. I have raised an issue here: https://github.com/praeclarum/sqlite-net/issues/720

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

ID: 3ab6098a-39c7-151f-124b-f88aa62c4659
Version Independent ID: dc27c1e4-ff12-c1af-646a-c2617def0bcd
Content: Local Databases - Xamarin
Content Source: docs/xamarin-forms/app-fundamentals/databases.md
Service: unspecified
Product: xamarin
GitHub Login: @davidbritch
Microsoft Alias: dabritch

Actually you can choose any database path you want. So all the documentation about DependencyServices is unneccessary.
Just choose a consistent path relative to LocalApplicationData and you can get rid of the DependencyServices:
Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData), "DB.db")

Thanks for the feedback @charlesroddie
I've opened an issue in our private repo to mention this next time the doc is updated.


Add docker support.

Cause seriously, who installs php onto their systems these days?

Cause seriously, who installs php onto their systems these days?


Scripts for Weather, ECL and Traffic

Only scripts for ETT and M4 were provided. Could you please provide the relevant scripts for Weather, ECL, and Traffic mentioned in the paper?

Unzip time-series-dataset.zip provided in the dataset directory.

No, you misunderstand. I meant scripts to reproduce the data from the paper, not the datasets themselves. Similar to https://github.com/KimMeen/Time-LLM/blob/main/scripts/TimeLLM_ETTh1.sh, which provides parameters for reproducing ETTh1, but does not provide scripts to reproduce the results of ECL, Weather, and Traffic from the paper.

Oh, okay.  Thanks.

@assdwd Thank you for the feedback👍 We have added addtional demo scripts. See https://github.com/KimMeen/Time-LLM/tree/main/scripts


Improve cafe-less search

Respond to search query with pubsub if responder is a cafe and the request is not from a cafe.

Please have a look 👀


Certain order of layers causes Tensor exception

Using con2d layer followed by batch_normalization and activation layers cause std::invalid_argument("Creating shared tensor of size bigger than tensor memory.") exception during train.
To reproduce here is a modified ini file for the mnist example: https://gist.github.com/klmntoth/f222c770776b8627494c58979d196548
The same thing happens when you add "activation = sigmoid" to the conv2d_c1_bn layer and delete the conv2d_c1_act one.
But if you swap the batch_normalization and activation layers then everything works.
I traced back the error and it has to do something with this optimization part: https://github.com/nnstreamer/nntrainer/blob/main/nntrainer/graph/network_graph.cpp#L568
when i swap line 569 with 570 all above layer combinations work (no idea if correctly though).

:octocat: cibot: Thank you for posting issue #871. The person in charge will reply soon.

:octocat: cibot: Thank you for posting issue #871. The person in charge will reply soon.

Thanks for reporting this issue. I will check this.
Meanwhile, I recommend you to disable all the optimizations with NNTrainer.
// Create a model
auto nn = nntrainer::NeuralNetwork();

// Disable all the optimizations before model initialization
nn.setGradientMemoryOptimization(optimize);
nn.setDerivativeMemoryOptimization(optimize);
nn.setInPlaceLayerOptimization(optimize);
nn.setInferenceInOutMemoryOptimization(optimize);

Thanks for reporting this issue. I will check this.
Meanwhile, I recommend you to disable all the optimizations with NNTrainer.
// Create a model
auto nn = nntrainer::NeuralNetwork();

// Disable all the optimizations before model initialization
nn.setGradientMemoryOptimization(optimize);
nn.setDerivativeMemoryOptimization(optimize);
nn.setInPlaceLayerOptimization(optimize);
nn.setInferenceInOutMemoryOptimization(optimize);

@klmntoth #872 has been added to solve the issue you reported.
There was a bug in the in-place optimization of layers. In-place optimization of consecutive layers when they are in a trainable state cannot be done and the check to stop that from happening had a bug. #872 adds a quick fix for this. I verified with the new MNIST model file you shared and with #872, the training reaches 81.85% with 100 epochs and
I tested with a few other model configurations as well and they seem to work too.
Please check on your end and let us know if this works for you.
#872 do not perform memory optimization to the maximum (this only occurs in rare scenarios). A more memory-optimized version will be added soon.

@klmntoth #872 has been added to solve the issue you reported.
There was a bug in the in-place optimization of layers. In-place optimization of consecutive layers when they are in a trainable state cannot be done and the check to stop that from happening had a bug. #872 adds a quick fix for this. I verified with the new MNIST model file you shared and with #872, the training reaches 81.85% with 100 epochs and
I tested with a few other model configurations as well and they seem to work too.
Please check on your end and let us know if this works for you.
#872 do not perform memory optimization to the maximum (this only occurs in rare scenarios). A more memory-optimized version will be added soon.

after #872 our model works without disabling the optimizations. thanks for the quick fix!

after #872 our model works without disabling the optimizations. thanks for the quick fix!


doc: Fix formatting inconsistencies.

Remove unneeded backticks in code block in README.md.

Overall, the formatting consistency is improved.

What about it @aleksclark? It's already using tabs for indentation, I didn't have to change it.

it's using spaces to align the assignment columns, or maybe that's normal?
On Fri, Aug 11, 2017 at 11:01 AM, Dmitri Shuralyov<EMAIL_ADDRESS>
wrote:

What about it @aleksclark https://github.com/aleksclark? It's already
using tabs for indentation, I didn't have to change it.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/google/go-github/pull/691#issuecomment-321852276, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AAlDnFEdJgh4hmXHyfO2lz_sKhyAwC_gks5sXHq-gaJpZM4O00I6
.

--
Aleks Clark
cell:<PHONE_NUMBER>

	// create a new private repository named "foo"
	repo := &github.Repository{
		Name:SPACE-SPACE-SPACE-SPACEgithub.String("foo"),
		Private: github.Bool(true),
	}

That's normal. gofmt uses tabs only for indentation, but spaces for alignment. See https://play.golang.org/p/eKVMMlf_kF and press the "Format" button.

ok, ignore me then, otherwise didn't spot any other places :3
On Fri, Aug 11, 2017 at 11:14 AM, Dmitri Shuralyov<EMAIL_ADDRESS>
wrote:

That's normal. gofmt uses tabs only for indentation, but spaces for
alignment. See https://play.golang.org/p/eKVMMlf_kF and press the
"Format" button.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/google/go-github/pull/691#issuecomment-321855504, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AAlDnINEYHj7Tsqp58rV9cxsFUo3Koylks5sXH32gaJpZM4O00I6
.

--
Aleks Clark
cell:<PHONE_NUMBER>


Add jldoctest to docstrings

This PR adds doctests to docstrings. For example:
"""
    @filter(df, exprs...)

# Examples
```jldoctest
julia> df = DataFrame(a = repeat('a':'e'), b = 1:5, c = 11:15);

julia> df2 = @chain df begin
       @filter(b >= mean(b))
       end
[ Info: subset(\$(Expr(:escape, :raccoon)), [:b] => ((b,)->coalesce.(b .>= mean(b), false)))
3×3 DataFrame
 Row │ a     b      c
     │ Char  Int64  Int64
─────┼────────────────────
   1 │ c         3     13
   2 │ d         4     14
   3 │ e         5     15

When running make.jl, it will run the jldoctest within all docstrings in Julia-REPL and compare the output with the expected output specified.

@kdpsingh @rdboyes Feel free to comment or make edits!

The build is failing. It looks like the Info output is causing the problem.

The build is failing. It looks like the Info output is causing the problem.

Very strange. Didn't have this error when testing locally. Will fix it later

Seems like the names that are generated inside of a chain are not consistent? :raccoon vs. :chinchilla - I'm guessing these are autogenerated. Maybe the solution is to have a way to disable the Info: flags? People may not want the DataFrames code showing up every time they run the macros anyway...

You're right. Those are randomly generated, and while they may even be deterministic if run in a fresh session, they are a pain to keep track of and update.
I also agree with you that the info that is outputted isn't really all that helpful, especially as the generated code has gotten more complex. I do want to leave the option of seeing it because it's been incredibly helpful for troubleshooting purposes.
Here's what I'm thinking:
@zzhaozheUM, remove all the info-created update and push an updated commit to the PR.
Once you're done, I'll add a function that updates a global variable within the package namespace that determines whether logging will happen. I will set logging to off by default but give users a way to turn it on.
After I fix that, then can have @rdboyes review.
Let me know if that makes sense or if you have any thoughts. Thank you! And have a great weekend.

@kdpsingh just removed all info-related messages and commented out @info code lines to pass the build.

Excellent! I'll implement a way to turn the code output on through a new exported function but agree with leaving it off as a default.
Once I do that, will ask @rdboyes to take a look before merging.

@rdboyes this is ready for you to take a look.

@zzhaozheUM removed the @info output.

We left the existing tests folder in place in case we want to add other tests there that aren't in the documentation.

I moved docstrings and parsing functions to separate files just because they were taking up a lot of space in the Tidier.jl file.

I added a Tidier_set function that enables you to enable code logging using Tidier_set("code", true) although it defaults to false.

I used a package-wide global variable (which is not exported) to keep track of this setting. I used a Ref type based on this discussion here: https://discourse.julialang.org/t/how-to-correctly-define-and-use-global-variables-in-the-module-in-julia/65720.

Going to work on the @group_by and joins today/tomorrow and hoping to release v0.4.0 by the weekend.

Thanks @zzhaozheUM. Can we undo the tabs and leave the old style of formatting where the """ starts on a new line?

Done

Thank you @zzhaozheUM!

Looks like it is passing all tests. From looking at the build logs (for Documenter and CI, respectively), the doctests and the original tests appear to be running.
I'm going to move forward and merge this commit just so I can move onto the other parts of the code. @rdboyes, if you have any concerns, can file an issue and we will re-evaluate, but I think we are good. Appreciate both your help.

Sounds like you two got everything! Sorry, just saw this now, busy day today


feat: migrate to nativescript 8 with monorepo

monorepo not priority (https://github.com/bgrand-ch/nativescript-getters/pull/5)


Large Number Calculations goes wrong

and
the tag<EMAIL_ADDRESS>fills with '9.223372036854776E16'```

Tested on 1.0.1-SNAPSHOT (build 1634) via. the IRC Tag-Parser

wtf u expecting?
There's a limit to how much detail a computer can retain regarding a number...

I expected it worked just like the other math tags. I know stuff gets unstable at those high numbers and there are ways around this. But since some of the math tags (.mul .add .div .sub) worked. I was wondering if it was simply some additional code that would do the trick :) Otherwise you can close this issue.

rounding doesn't support the hackish "big decimal" code logic so much


Language idea: Self-referential functions/lambdas with this

A feature from Charm:
let forever = fn() -> this();
forever();

Approved. Will be done for 1.0.


[Frontend Web] Admin page

To create a new event
To create a new access code
To get all events
To get event by ID
To get all event access codes

참고링크:

Fluent UI for Blazor: https://www.fluentui-blazor.net/
Blazor Event Handling: https://learn.microsoft.com/aspnet/core/blazor/components/event-handling

Features

#184
#185
#186
#187


Fix Vagrant private key path

in scripts/playbook.sh
private_key_path="${HOME}/.vagrant.d/insecure_private_key"

Not for this repo, this is one for ansible-skeleton


RANCHER-1183 Write a README (documentation) for folio-helm charts usage

https://folio-org.atlassian.net/browse/RANCHER-1183

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


[access request] report 5979 "Copy Service Document"

🕮 Describe the request
Could youp please change the access scope of the following varialbes to protected?
protected var
    ServContractHeader: Record "Service Contract Header";
    FromServContractHeader: Record "Service Contract Header";
    //DocType: Option Quote,Contract; // Should be updated to new extensible Enum at first
    DocNo: Code[20];

Related Issue: https://github.com/microsoft/ALAppExtensions/issues/24151
The DocType (ServiceContractTypeFrom) should be made to protected, too. But at first this should be refactored to an extensible enum.

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. Please do not reply to this, as we do not monitor closed issues. If you have follow-up questions or requests, please create a new issue where you reference this one.
Build ID: 11551.


added narrative to theil nb

@jrornelas11 can you submit this against https://github.com/sjsrey/inequality/tree/wolfson ?


fix: use global npm path for dep installation

What?

Avoid using relative paths when trying to invoke "npm" or "yarn"
Use global default

Why?

hygencook is failing on my machine. 😅

Because of the pathing to the hygen file when globally installed is:
/Users/philip.loh/.nvm/versions/node/v14.16.1/lib/node_modules/hygen-cook/dist/bin/hygen-chef.cjs
It is wanting to try to use NPM from this directory - which doesn't work:
/Users/philip.loh/.nvm/versions/node/v14.16.1/lib/node_modules/hygen-cook/node_modules/.bin/npm
Because of this bit:
https://github.com/bbeesley/hygen-cook/blob/4955cbc04fa0dfb76056f88554c082e555de1ee4/src/main/add.ts#L47

:tada: This PR is included in version 1.2.2 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


chore(shared): Browser global accessors [SDK-293]

Description
Create an accessor for browser globals such that they fail on non-browser environments.
import { browser } from '@clerk/shared'

console.log(browser.window) // throws on non-browser envs
console.log(browser.document) // throws on non-browser envs

I have follow-up work, converting call-sites to this new process, but I ultimately think we should update as-needed and in-line with other work to avoid potentially missed issues per cached modules in Jest.

SDK-293
Checklist

[x] npm test runs as expected.
[x] npm run build runs as expected.
[ ] (If applicable) JSDoc comments have been added or updated for any package exports
[ ] (If applicable) Documentation has been updated

Type of change

[ ] 🐛 Bug fix
[ ] 🌟 New feature
[ ] 🔨 Breaking change
[x] 📖 Refactoring / dependency upgrade / documentation
[ ] other:

Packages affected

[ ] @clerk/backend
[ ] @clerk/chrome-extension
[ ] @clerk/clerk-js
[ ] @clerk/clerk-expo
[ ] @clerk/fastify
[ ] gatsby-plugin-clerk
[ ] @clerk/localizations
[ ] @clerk/nextjs
[ ] @clerk/clerk-react
[ ] @clerk/remix
[ ] @clerk/clerk-sdk-node
[ ] @clerk/shared
[ ] @clerk/themes
[ ] @clerk/types
[x] build/tooling/chore

Closing in favor of implementing linting rules.


derive(AtatCmd) cannot parse numeric string

my at commands:
AT+CGSN
816363036697552

OK

without atat_derive no problem.
pub struct RequestSN;

impl atat::AtatCmd<9> for RequestSN {
    type Response = Str64Response;
    type Error = GenericError;

    fn as_bytes(&self) -> Vec<u8, 9> {
        Vec::from_slice(b"AT+CGSN\r\n").unwrap()
    }

    fn parse(&self, resp: Result<&[u8], &InternalError>) -> Result<Self::Response, Error<Self::Error>> {
        Ok(Str64Response {
            s: String::from(core::str::from_utf8(resp.unwrap()).unwrap())
        })
    }
}

But using atat_derive does not work
#[derive(Clone, AtatCmd)]
#[at_cmd("+CGSN", Str64Response, timeout_ms = 1000)]
pub struct RequestSN;

#[derive(Clone, AtatResp)]
pub struct Str64Response {
    #[at_arg(position = 0)]
    pub s: String<64>,
}

I see a few issues in this, but i think the main reason this is not working for you is that by definition in AT commands, a string is quoted, meaning the response parameter you get back here is not a string.
You have two options for parsing this correctly.

Or you could use heapless_bytes to get it as a byte array
#[derive(Clone, AtatResp)]
pub struct Str64Response {
    #[at_arg(position = 0)]
    pub s: heapless_bytes::Bytes<64>,
}

Both of those should work directly for you.

Both methods can be used.
Thank you very much.
Because I have a return in this format “<IP_ADDRESS>.06”, so I chose the latter.

Sounds good, glad you mae it work :+1:


chore: Dockerized solution

Create a Dockerfile + Compose file to make the solution's use easier.

I have read the CLA Document and I hereby sign the CLA


fix: prevent automatic export when local pickup

:tada: This PR is included in version 4.14.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Can't run tests

Overview
Having trouble using this template out of the box and running my own tests. I reproduced that even with the base repo I can't get the tests to run, just contracts compile. What am I missing possibly?
Running

forge init contracts-forge --template https://github.com/PaulRBerg/foundry-template
forge install
forge test

Result
**forge test**
compiling...
Compiling 1 files with 0.8.19
Compilation finished successfully
success.

Everything works fine on my end:
https://app.warp.dev/block/102pUfTeM3W86o6BloZKZj
Do you have Foundry up-to-date? Run foundryup, and consider upgrading foundryup itself, too (see Foundry's README).


Addon-info doesn't work with Vue jsx components

Describe the bug
I've tried to use addon-info globally or locally but the error still occurs.
To Reproduce
On the screen you can see exact story code. I think additional description isn't necessary.
Storybook version: 5.0.3
Vue version: 2.5.13
Also using the styled components
Screenshots

Sorry, it's not for storybook, it is for specific plugin addon-info

Addon-info is currently only for react. I'm working on a replacement that will be compatible with all view layers.

@shilman ok, thanks. Will be waiting for it

Some progress!

Docs version tracked here https://github.com/storybooks/storybook/issues/6663


dispatch_main_async_safe not needed.

I think dispatch_main_async_safe  is not needed when exists SDWebImageAvoidAutoSetImage  in options.
If completion block have many heavy code(e.g. I use CoreGraphic), UITableView scrolling will be stop and jumpy.
Does anybody have any good idea?

We will refactor this part (dispatch_main_async_safe) in 4.0 anyway

I think we still need it. The heavy completion indicates other issues that with this library.

i see you do some change about dispatch_main_async_safe
#define dispatch_main_async_safe(block)
if ([NSThread isMainThread]) {
block();
} else {
dispatch_async(dispatch_get_main_queue(), block);
}
->
#ifndef dispatch_main_async_safe
#define dispatch_main_async_safe(block)
if (strcmp(dispatch_queue_get_label(DISPATCH_CURRENT_QUEUE_LABEL), dispatch_queue_get_label(dispatch_get_main_queue())) == 0) {
block();
} else {
dispatch_async(dispatch_get_main_queue(), block);
}
#endif
how this change can resolve this problem ？

@bpoplauschi I'am a little confused, why we need this macro dispatch_main_async_safe?
. Call dispatch_async(dispatch_get_main_queue(), block) on main_queue seems fine for me since i won't block mainqueue like dispatch_sync(). Is this macro defined for performance or something else?

figure it out now,  the "safe" part is about execute the block directly on current queue, not about dispatch_async when current queue is main queue, am i right?


AttributeError when using custom UserDetailsSerializer

We have created a custom UserDetailsSerializer but when trying to run the application we get the error:
AttributeError: module 'path.to.serializers' has no attribute 'MPUserDetailsSerializer'
The full error is pasted here.
The setup for REST_AUTH_SERIALIZERS and USER_DETAILS_SERIALIZER in the django settings is:
REST_AUTH_SERIALIZERS = {
    'LOGIN_SERIALIZER': 'questions.serializers.LoginSerializer',
    'JWT_SERIALIZER' : 'questions.serializers.JWTSerializer',
    'USER_DETAILS_SERIALIZER' : 'questions.serializers.MPUserDetailsSerializer',
}

The custom serializer is:
from rest_auth import serializers as auth_serializers

class MPUserDetailsSerializer(auth_serializers.UserDetailsSerializer):
"""
User model w/o password
"""
class Meta:
    model = User
    fields = ('pk', 'username', 'email', 'name')
    read_only_fields = ('username', )

def validate_email(self, email):
    email = get_adapter().clean_email(email)
    if allauth_settings.UNIQUE_EMAIL:
        if email and email_address_exists(email):
            raise serializers.ValidationError(
                _("A user is already registered with this e-mail address."))
    return email

The workaround that we did was to remove the following lines from our local virtualenv, in the file /lib/python3.5/site-packages/rest-auth/serializers.py:
# Required to allow using custom USER_DETAILS_SERIALIZER  in
# JWTSerializer. Defining it here to avoid circular imports
rest_auth_serializers = getattr(settings, 'REST_AUTH_SERIALIZERS', {})
JWTUserDetailsSerializer = import_callable(
  rest_auth_serializers.get('USER_DETAILS_SERIALIZER', UserDetailsSerializer)
)

And replacing JWTUserDetailsSerializer with UserDetailsSerializer in the same file. But that's a really bad solution since we are changing third parties code and it doesn't make any sense to remove specifically the lines that are told to be required to allow custom USER_DETAILS_SERIALIZER, but we don't know what else to do to make it work, are we missing something? a config maybe?
We're using django v1.10.1, djangorestframework v3.4.7 and django-rest-auth v0.9.0
(This issue was firstly created at stackoverflow)

@anarute Isn't this an issue with django-rest-auth?

@jpadilla you're right, I'm sorry about that.


fix(interactive): Fix a bug in pkscan with expected values given in Within

What do these changes do?

As titled
Related issue number

Fixes #3569

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Comparison is base (5829153) 45.32% compared to head (2ee63ff) 27.79%.

Additional details and impacted files

@@             Coverage Diff             @@
##             main    #3540       +/-   ##
===========================================
- Coverage   45.32%   27.79%   -17.53%
===========================================
  Files         176      178        +2
  Lines       16191    16231       +40
===========================================
- Hits         7338     4512     -2826
- Misses       8853    11719     +2866

see 126 files with indirect coverage changes

Continue to review full report in Codecov by Sentry.

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


Adding steps for Percentage Change in Volume of cuboid

Please assign this to me

Go ahead
Deadline 22 May,2021


update centernet cfg

Accelerated training.
Modification
Use repeatdataset
I need to retrain it.

@hhaAndroid There are CI errors. Could fix them at first.


RFE: allow specifying conditions for triggering PackIt build

There are use cases where a project might want to skip triggering PackIt (especially for commit-based jobs). e.g. for CacheLib, most of the commits are automated "Updating submodules" by svcscm.
If we can specify such conditions, example syntax below:
- job: copr_build
  - trigger: commit
  - when: commit_author != "svcscm" and commit_subject != "Updating submodules"

That would allow us to enable per-commit jobs without risking overloading COPR

Thank you for opening this issue. We concluded that overloading Copr is not a problem - it's meant to sustain the load. I'm closing then.


[Q] Unable to display graph data.

Hi, sorry if posting this on the wrong place... But I'm pulling my hair on something.
Long story short. I have a Shinken monitoring system sending metrics to a graphite docker image, the latest stable. I pulled graphiteapp/graphite-statsd five minutes ago, but i have this problem since maybe 1 month. After an update of the docker image.
The problem is that graphite displays nothing if i try a simple graph on the graphite-webapp. It does not say "no data", but it show an empty graph. What is very strange : if i try to use grafana, grafana will display the dot of the timeseries wihout being able to connect each dot ?!
I tried different image, i tried to send data manually to the graphite instance with a netcat... Always same problem... I even tried to install icinga2 because i'm planning to change our supervision system... Did the same thing... I'm lost here so i'm asking for help.
Thanks by advance

Sorry, @hugosxm, but it's not entirely clear what problem are you trying to solve. Maybe you can make couple of screenshots to explain what "if i try to use grafana, grafana will display the dot of the timeseries wihout being able to connect each dot ?" means?

@deniszh thanks for reading me, sorry it is a bit tricky to explain, i did some screenshots, english is not my first language btw ^^. I'll try to be more "verbose"
So i have my icinga2 and my shinken running and sending perfdata to graphite, same problem with BOTH supervision systems.
My graphite instance is a docker container, I pulled the latest stable image, "graphiteapp/graphite-statsd:latest", i hope this is the correct way to run graphite.
My container logs seems correct, we can see metrics going in with no errors :
24/04/2020 10:50:34 :: [tagdb] Tagging icinga2.docker-worker2_lan_971lafamille_com.services.geco_swap.geco_check_ncpa_swap.perfdata.used.value 24/04/2020 10:50:34 :: [tagdb] Tagged icinga2.docker-worker2_lan_971lafamille_com.services.geco_swap.geco_check_ncpa_swap.perfdata.used.value in 0.0176694393157959 24/04/2020 10:50:35 :: [tagdb] Tagging icinga2.icinga_lan_971lafamille_com.services.icinga.icinga.perfdata.graphitewriter_graphite_work_queue_items.value 24/04/2020 10:50:39 :: [listener] MetricLineReceiver connection with <IP_ADDRESS>:43328 established 24/04/2020 10:50:39 :: [listener] MetricLineReceiver connection with <IP_ADDRESS>:43328 closed cleanly 24/04/2020 10:50:39 :: [tagdb] Tagging stats.timers.view.graphite.tags.views.tagMultiSeries.POST.lower 24/04/2020 10:50:43 :: [tagdb] Tagged icinga2.icinga_lan_971lafamille_com.services.load.load.perfdata.load15.warn in 0.013565301895141602 24/04/2020 10:50:48 :: [tagdb] Tagging icinga2.icinga_lan_971lafamille_com.services.ping4.ping4.perfdata.rta.crit 24/04/2020 10:50:48 :: [tagdb] Tagged icinga2.icinga_lan_971lafamille_com.services.ping4.ping4.perfdata.rta.crit in 0.014507055282592773 24/04/2020 10:50:49 :: [listener] MetricLineReceiver connection with <IP_ADDRESS>:43382 established 24/04/2020 10:51:03 :: [tagdb] Tagging icinga2.docker-manager_lan_971lafamille_com.services.geco_memory.geco_check_ncpa_memory.perfdata.free.crit
If i try to graph the carbon metrics to test my instance, it works :

But if i try another metric comming from icinga, it shows nothing

And here is the strange thing, if you try the same metric in grafana, you can see that the metric is kind of here because it shows the DOTS ?! But you can not connect the dots between them... It is like the data is here but graphite-web and grafana are not able to draw line with it for some reason ?!

And i tried whisper-info on the metrics file, it says that metric points are here
`
/opt/graphite/bin # ./whisper-info.py /opt/graphite/storage/whisper/icinga2/ansible_lan_971lafamille_com/services/geco_cpu/geco_check_ncpa_cpu/perfdata/percent/value.wsp
aggregationMethod: average
maxRetention: 155520000
xFilesFactor: 0.30000001192092896
fileSize: 3240052
Archive 0
offset: 52
secondsPerPoint: 10
points: 2160
retention: 21600
size: 25920
Archive 1
offset: 25972
secondsPerPoint: 60
points: 8640
retention: 518400
size: 103680
Archive 2
offset: 129652
secondsPerPoint: 600
points: 259200
retention: 155520000
size: 3110400
/opt/graphite/bin #
`
I hope my explanation is better now, ask me everything you need !

I think your metric is too sparse for your first storage tier (archive 0). It looks like this data is being submitted  once per minute, but your first storage tier is 6 datapoints per minute, so only 1/6 of data-points are non-null. Because your xFilesFactor is 0.3, which is greater than 1/6, this data becomes all null when rolled-up to your second storage tier (archive 1). When looking at time periods longer than 21600 seconds, graphite-web skips the first storage tier and just uses the second storage tier, while I guess graphana might use both (but the dots are not connected because of the nulls in between).

Yes what @ploxiln says. Change your storage-schemas.conf to have the smallest interval 60s, then resize all .wsp files or simply delete them so they get recreated.

Thanks @ploxiln and @piotr1212 for that piece of knowledge that fixed my problem :) i'll close the issue, sorry i feel dumb for not found that, i guess my configuration volume in docker did not mount properly of something like that but the storage-schemas.conf was messed up...
Have a nice day !


Can't log into Gmail with EMailSenderESP32GMailTest sketch

I haven't been able to log into Gmail using your EMailSenderESP32GMailTest sketch with my Arduino MKR WiFi 1010 and the Arduino.h, WiFiNINA.h and EMailSender.h libraries. I get the following messages on the serial monitor:
Connection: ESTABLISHED
Got IP address: <IP_ADDRESS>
Sending status:
0
1
SMTP Response TIMEOUT!
I've tried using the two parameter emailSend constructor with my gmail userid and password as well as the longer constructor with my gmail userid, password, mail from userid, smtp.gmail.com as the outgoing server and port 587, as well as port 465.
I went through parts 1 and 2 of your tutorial but it hasn't helped. I'm wondering if your EMailSender.h library isn't compatible with the MKR WiFi 1010.
I logged out of Google completely and logged back in with a browser to make sure my Gmail account was working and it's fine. There are no sent messages from the Arduino.
Any advice? Thanks.

Hi manuelpilot,

please check is lessecureapp is activated,
if you tried to spoof the sender address using google smtp (for instance, using FromAddress as something other than the name of my gmail account)
check if you have some network limitation from firewall or VPN redirect.

Give me a feedback Bye Renzo

Yes, lesssecureapp is activated. Yes, I used my own gmail account as the FromAddress. I don't think there's any kind of network limitation or firewall problem. I've been sending POST messages to a PHP script that I wrote on a GoDaddy shared HTTPS server without any problems.

It's very strange, I try to send an email now from an esp32 DEV KIT v1 and work correctly.
Please post your code, and in the file EMailSenderKey.h uncomment this line
//#define EMAIL_SENDER_DEBUG
and send the result (cover the login and passwd).
Thanks Renzo

Here's your slightly modified sketch. I have to use #include <WiFiNINA.h> to compile without errors. That might be the problem but I can't tell for sure. All the private information in caps is defined in the #include "arduino_secrets_gmail.h" file.
/*

EMailSender library for Arduino, esp8266 and esp32
Simple esp32 Gmail send example

https://www.mischianti.org/category/my-libraries/emailsender-send-email-with-attachments/

*/
#include "Arduino.h"
#include <EMailSender.h>
#include <WiFiNINA.h>
#include "arduino_secrets_gmail.h"
const char* ssid = SECRET_SSID;
const char* password = SECRET_PASS;
uint8_t connection_state = 0;
uint16_t reconnect_interval = 10000;
EMailSender emailSend(SECRET_GMAIL_USERNAME, SECRET_GMAIL_PASSWORD);
uint8_t WiFiConnect(const char* nSSID = nullptr, const char* nPassword = nullptr)
{
static uint16_t attempt = 0;
Serial.print("Connecting to ");
if(nSSID) {
WiFi.begin(nSSID, nPassword);
Serial.println(nSSID);
}
uint8_t i = 0;
while(WiFi.status()!= WL_CONNECTED && i++ < 50)
{
    delay(200);
    Serial.print(".");
}
++attempt;
Serial.println("");
if(i == 51) {
    Serial.print("Connection: TIMEOUT on attempt: ");
    Serial.println(attempt);
    if(attempt % 2 == 0)
        Serial.println("Check if access point available or SSID and Password\r\n");
    return false;
}
Serial.println("Connection: ESTABLISHED");
Serial.print("Got IP address: ");
Serial.println(WiFi.localIP());
return true;

}
void Awaits()
{
uint32_t ts = millis();
while(!connection_state)
{
delay(50);
if(millis() > (ts + reconnect_interval) && !connection_state){
connection_state = WiFiConnect();
ts = millis();
}
}
}
void setup()
{
Serial.begin(115200);
connection_state = WiFiConnect(ssid, password);
if(!connection_state)  // if not connected to WIFI
Awaits();          // constantly trying to connect
EMailSender::EMailMessage message;
message.subject = "Soggetto";
message.message = "Ciao come stai
io bene.
www.mischianti.org";

EMailSender::Response resp = emailSend.send(SECRET_GMAIL_RECIPIENT, message);

Serial.println("Sending status: ");

Serial.println(resp.status);
Serial.println(resp.code);
Serial.println(resp.desc);

}
void loop()
{
}
Here's the serial monitor output with the #define EMAIL_SENDER_DEBUG in EmailSender.h library file uncommented. I didn't include the SSID network name at the top for privacy's sake. I'm wondering if the fact that it's an insecure client is what is causing the problem. I tried temporarily changing #include <WiFi.h> to #include <WiFiNINA.h> in your EmailSender.h file but it didn't help. I've had to change WiFi.h to WiFiNINA.h in all of the sketch examples in order to compile them without errors on the MKR WiFi 1010.
Connection: ESTABLISHED
Got IP address: <IP_ADDRESS>
ONLY ONE RECIPIENTInsecure client:0
Sending status:
0
1
SMTP Response TIMEOUT!

Hi Mauelepilot,
to send email with MKR WiFi 1010 and WiFININA you must do some additional work.
I find this
https://gitlab.com/gratefulfrog/arduino-wifinina-gmail-smtp
seems you must enable 2 factor security and generate secret.
Give me a feedback if this can solve the problem
Bye Renzo

Thanks, Renzo. I was successful using the arduino-wifinina-gmail-smtp library and modified WiFiSSLClient_gmail_smtp sketch by Grateful Frog above. The process is complex. In Google Account Manager I created a separate gmail account, set up 2 factor authentication and created an app password. The app password must be used when logging into the gmail account. In the modified sketch I removed all private data from the sketch and put it in the arduino_secrets.h file. Attached are the sketch and the output from the serial monitor.
gmailsketch.txt
gmailoutput.txt

Perfect!
In the future I try to integrate the process in my library, but now I'm happy that you had found the solution.
Bye Renzo

Hi Manuelpilot,
if you can add the sketch also for people that can need It.
Thanks Renzo

Attached are the Arduino sketch and the serial monitor output (minus personal data).
wifisslclientgmail_sketch.txt
wifisslclientgmail_output.txt

Thanks Maulepilot


fix(shared-data): Allow mag block in the app

Overview
closes https://opentrons.atlassian.net/browse/RQA-783.
fixes bug when uploading a protocol via the app with a mag block.
Test Plan

Tested via the app, uploaded Illumina DNA Prep 24x No pause Offset Fix.py specified in the ticket to an OT3 and it works as expected.

Changelog

Added mag block logic to `getModuleDef2 in modules.ts
Added mag block to MODULE_TYPES and MODULE_MODELS in constants.ts
Added mag block to ModuleType and ModuleModel in types.ts
Added mag block to all UI pages that use modules.
Added a mag block image.

Review requests
Did I miss anything?
Risk assessment
low. bug fix.


How to stop spinning loader on inlineKeyboards buttons

Question

Hi, I'd like to know if it is possible to stop the spinning loader on the top right corner of the inline Keyboards buttons. In my implementation they last some seconds but they don't disappear when bot responds to the callback as I was expected. This is my code for inline keyboards and callback_query handling
    exports.generateInlineKeyboard = function (options){
        let inlineOptions = [];
    options.forEach(function(element) {
        inlineOptions.push([
                {
                    text: element.name,
                    callback_data: element.name
                }
            ]);
    }, this);
    return {
        "parse_mode": "Markdown",
        "reply_markup": {
            "inline_keyboard": inlineOptions
        }
    };
};

bot.on('callback_query', (msg) => {
        var userInput = msg.data;
        bot.sendMessage(msg.from.id, Common.message(userInput));
    }

@nicolocarpignoli you have to answerInlineQuery
when you pass empty sting, it won't show any message, it'll just hide the spinning loader

@GingerPlusPlus how can I exactly can do that? I tried
bot.on('callback_query', (msg) => {
        var userInput = msg.data;
       bot.answerInlineQuery(msg.id,[]);
    }

But it said:
Unhandled rejection Error: ETELEGRAM: 403 Forbidden: USER_BOT_INVALID
I am obviously missing something

@nicolocarpignoli callback query and inline query are 2 different things.
Re-read the docs.


Remove coverage build and codecov settings

We don't write any tests for c++ code in this repository.
So we could delete the job completely, we don't use the information at all.

@mergifyio backport humble


Lakitu in Replays shouldnt be there.

Currently lakitu will still be around for the first ghost in the list, even when spectating another ghost at the same time. IIRC lakitu is completely gone in normal ghost replays so it might be a good idea to get rid of him here too

Lakitu is present in ghost replays, but not in live view.


Upgrade reqwest version to 0.11

0.11 removes an unnecessary trait bound on the post method that we would
otherwise need to implement in the upcoming submitted component.
Signed-off-by: Chris Eckhardt<EMAIL_ADDRESS>

This PR should fix the unit test issue: https://github.com/hyperledger/grid/pull/1419

Requires Splinter to upgrade tokio and futures - will not do this at this time


Add Kubectl command executor.

Should work similarly to (and share a lot of code with) Skaffold in #7.
Kubectl should run kubectl commands, including but not limited to:

kubectl run --dry-run -o yaml
kubectl logs
kubectl port-forward

Should we add a KubectlDownloader as well? Or are we assuming people already have it installed?

@TadCordle We'll assume (and check) that people have it installed. It could come from a variety of places including downloading the binary releases, building from source, installing via gcloud, etc.

A couple other questions: What are the intended use cases for this class? Should it be more generalized and low-level (i.e. you just pass in the kubectl flags and options as strings) or should there be specific method calls for each of our use cases (e.g. one for generating the k8s yaml, one of getting logs, etc.)?

@TadCordle
Use cases:

Generating kubernetes yaml #18 (kubectl run.../kubectl expose ...)
Port-forwarding (kubectl port-forward ...)
Getting logs (kubectl logs ...)
And others that can easily be added

This class should be more low-level and provide just a wrapper for kubectl including subcommands and flags. The higher-level actions like generating YAML will be the responsibility of other classes.


PyPI Removes First Line When Installing

Describe the bug
The sha-bang line: #!/usr/bin/env python is removed from my Python script when installed from test.pypi.org. This breaks my script and prevents it from being run from the shell.
Expected behavior
Expect my entire script to remain unmodified so that it works properly.
To Reproduce
I put together a video showing this entire process (cut and slightly sped up for brevity): https://youtu.be/YyRH1oXDqHE
My Platform
Initially encountered in macOS 10.12.6.
Recording done within macOS Mojave beta 2.

Additional context
The repository I am trying to upload is available from here: https://github.com/Stunner/findmissing
I have not committed the setup.py file as I was waiting to upload it to PyPI before doing so, but if you think it would help with diagnosing the issue just let me know and I can push the commit.

PyPI has nothing to do with installing a distribution. You probably want pip or setuptools. You should probably use a setuptools console entry point to create scripts for you n

That link you provided is broken. Could you fix it please @jamadden ?

The final 'l' was missing from '.html'; fixed. There's also setuptools own documentation


Update refresh for dashboard scene

@vitPinchuk  Please fix tests after upgrading to Grafana 11.3.0:
    console.error
      Warning: Cannot update a component (`Unknown`) while rendering a different component (`mockConstructor`). To locate the bad setState() call inside `mockConstructor`, follow the stack trace as described in https://reactjs.org/link/setstate-in-render
          at mockConstructor
          at value (/Users/mikhailvolkov/GitHub/business-charts/node_modules/@volkovlabs/components/src/components/AutosizeCodeEditor/AutosizeCodeEditor.tsx:48:3)
          at div
          at value (/Users/mikhailvolkov/GitHub/business-charts/src/components/EchartsEditor/EchartsEditor.tsx:26:50)

       98 |
       99 |     jest.mocked(CodeEditor).mockImplementationOnce(({ onEditorDidMount }: any) => {
    > 100 |       onEditorDidMount(editor);
          |       ^
      101 |       return null;
      102 |     });
      103 |

Console

    console.error
      Warning: An update to EchartsPanel inside a test was not wrapped in act(...).

      When testing, code that causes React state updates should be wrapped into act(...):

      act(() => {
        /* fire events that update state */
      });
      /* assert on the output */

      This ensures that you're testing the behavior the user would see in the browser. Learn more at https://reactjs.org/link/wrap-tests-with-act
          at options (/Users/mikhailvolkov/GitHub/business-charts/src/components/EchartsPanel/EchartsPanel.tsx:31:49)

      293 |         );
      294 |       } catch (err) {
    > 295 |         setError(err instanceof Error ? err : new Error(`${err}`));
          |         ^
      296 |       }
      297 |     };
      298 |

ter upgrading to Grafana 11.3.0:

done

@asimonok Could you please check and approve?


24 hours based time selection

First of all, great work !
Your components for date / time picking are great. I only have an issue for those of us in Europe using 24 hours based time :)
I investigated and it seems Google is quite unclear on the subject : The time picker as depicted at http://www.google.com/design/spec/components/pickers.html#pickers-time-pickers only shows an AM/PM 12 hours based time picker...
I use an iPhone so I can't verify but, it seems Google Calendar on Android as a UX solution for that : http://googlesystem.blogspot.fr/2013/05/new-google-calendar-controls-for-android.html
Any chance you could implement it ?

Ah, I was wondering about how the material spec would handle that. I'll look into implementing this soon. Let me know if you notice any other i18n issues in the time/date pickers.

Hey, great job on this component.
I looked at my android phone and the design looks a bit like this (two circles, one for 0-12 and the other one for 13-24).
Maybe you should have a look.

Looking forward to seeing this here as well. An example of the implementation from React Material Ui: http://material-ui.com/#/components/time-picker

+1

+1

Hi ,
Any updates regarding this?

@bendavis78 is this something we should expect soon?

+1

FYI : I just hacked my fork to use the 24 hour-format, but I took the easy route not completely matching the material spec :>. I didn't implement a switch as I don't need it currently, but maybe it helps somebody stumbling accross this issue.

https://github.com/Compufreak345/paper-time-picker/commit/dcaa2fb7c7b4cf434ed5c9c349546bcdc508605d
Unfortunately my code-formatter changed some indents as well making it a bit hard to see what I actually changed, so here are the line numbers :
paper-clock-selector.html => Line 110 - make it to display up to 24 entries
paper-time-picker.html :
Line 182 -> show hours instead of hours12
Line 190-193 -> remove AM/PM display
Line 196/197 -> tell the picker to show zero and 24 hours instead of 12, use hour instead of hour12
That's it :>

+1

Looks like this is a pretty popular request, we've got the start of a PR out for this that needs some love.  Once I move to hybrid and get everything tested I'll take a stab at adding this functionality if #52 isn't updated by then.


Is it possible to have multiple owner fields for @auth directive?

Is it possible to have multiple owner fields for @auth directive? (see code below)
Which Category is your question related to?
Appsync / Graphql
Amplify CLI Version
4.44.2
Provide additional details e.g. code snippets
@auth(rules: [
    { allow: groups, groups: ["SuperAdmins"], operations: [create, update, read] }
    { allow: groups, groups: ["Admins"], operations: [update] }
    { allow: owner, ownerField: "firmId", identityClaim: "custom:firmId", operations: [read]  }
    { allow: owner, ownerField: "userId", identityClaim: "username", operations: [update] }
  ])

Ah yes you can, something strange was happening with resolver generated for the get query. I also amended to:
@auth(rules: [
{ allow: owner, ownerField: "owner", identityClaim: "username", operations: [update]  }
{ allow: owner, ownerField: "firmId", identityClaim: "custom:firmId", operations: [read]  }
{ allow: groups, groups: ["SuperAdmins"], operations: [create, update, read] }
{ allow: groups, groups: ["Admins"], operations: [update] }
{ allow: groups, groups: ["Agents"], operations: [update] }
])


Latest Master does not build

Repro steps

Downloaded the repo on Master.
Ran build.cmd
Waited for a while as it proceeded to download the internet.
Eventually the window closed.
Open up the Visual FSharp solution in VS2015.
Build it.

Expected behavior
The solution should build?
Actual behavior
Got a load of errors: -
Restoring NuGet packages...
To prevent NuGet from restoring packages during build, open the Visual Studio Options dialog, click on the Package Manager node and uncheck 'Allow NuGet to download missing packages during build.'
Microsoft.DiaSymReader.PortablePdb 1.0.0-rc-60301 is not compatible with .NETStandard,Version=v1.5.
Microsoft.DiaSymReader 1.0.7 is not compatible with .NETStandard,Version=v1.5.
Some packages are not compatible with .NETStandard,Version=v1.5.
Microsoft.DiaSymReader.PortablePdb 1.0.0-rc-60301 is not compatible with .NETStandard,Version=v1.5.
Microsoft.DiaSymReader 1.0.7 is not compatible with .NETStandard,Version=v1.5.
Some packages are not compatible with .NETStandard,Version=v1.5.
1>------ Build started: Project: FSharp.Core, Configuration: Debug Any CPU ------
2>------ Build started: Project: ConsoleProject, Configuration: Debug Any CPU ------
3>------ Build started: Project: LibraryProject, Configuration: Debug Any CPU ------
4>------ Build started: Project: NetCore78Project, Configuration: Debug Any CPU ------
5>------ Build started: Project: NetCore259Project, Configuration: Debug Any CPU ------
6>------ Build started: Project: NetCoreProject, Configuration: Debug Any CPU ------
7>------ Build started: Project: PortableLibraryProject, Configuration: Debug Any CPU ------
8>------ Build started: Project: SilverlightProject, Configuration: Debug Any CPU ------
9>------ Build started: Project: TutorialProject, Configuration: Debug Any CPU ------
10>------ Build started: Project: AppConfig, Configuration: Debug Any CPU ------
11>------ Build started: Project: CodeFile, Configuration: Debug Any CPU ------
12>------ Build started: Project: ScriptFile, Configuration: Debug Any CPU ------
13>------ Build started: Project: SignatureFile, Configuration: Debug Any CPU ------
14>------ Build started: Project: TextFile, Configuration: Debug Any CPU ------
15>------ Build started: Project: XMLFile, Configuration: Debug Any CPU ------
16>------ Build started: Project: VsProDeployTemplates, Configuration: Debug Any CPU ------
17>------ Build started: Project: VWDExpressDeployTemplates, Configuration: Debug Any CPU ------
18>------ Build started: Project: WDExpressDeployTemplates, Configuration: Debug Any CPU ------
19>------ Build started: Project: FSharp.Compiler, Configuration: Debug Any CPU ------
20>------ Build started: Project: FSharp.Compiler.Server.Shared, Configuration: Debug Any CPU ------
21>------ Build started: Project: FSharp.LanguageService.Compiler, Configuration: Debug Any CPU ------
22>------ Build started: Project: FSharp.Build, Configuration: Debug Any CPU ------
23>------ Build started: Project: FSharp.Compiler.Interactive.Settings, Configuration: Debug Any CPU ------
24>------ Build started: Project: XmlDocAttributeWithNullComment, Configuration: Debug Any CPU ------
25>------ Build started: Project: EditorHideMethodsAttribute, Configuration: Debug Any CPU ------
26>------ Build started: Project: FSharp.Tests, Configuration: Debug Any CPU ------
27>------ Build started: Project: FSharp.Core.Unittests, Configuration: Debug Any CPU ------
24>C:\Program Files (x86)\MSBuild\14.0\bin\Microsoft.Common.CurrentVersion.targets(3962,5): warning MSB3026: Could not copy "C:\Users\Isaac\Source\Repos\visualfsharp\Debug\net40\bin\FSharp.Core.dll" to "..\..\..\..\..\src\..\Debug\net40\bin\UnitTestsResources\MockTypeProviders\FSharp.Core.dll". Beginning retry 1 in 1000ms. The process cannot access the file '..\..\..\..\..\src\..\Debug\net40\bin\UnitTestsResources\MockTypeProviders\FSharp.Core.dll' because it is being used by another process.
28>------ Build started: Project: DefinitionLocationAttribute, Configuration: Debug Any CPU ------
29>------ Build started: Project: DefinitionLocationAttributeFileDoesnotExist, Configuration: Debug Any CPU ------
30>------ Build started: Project: DefinitionLocationAttributeLineDoesnotExist, Configuration: Debug Any CPU ------
31>------ Build started: Project: DefinitionLocationAttributeWithSpaceInTheType, Configuration: Debug Any CPU ------
32>------ Build started: Project: DummyProviderForLanguageServiceTesting, Configuration: Debug Any CPU ------
33>------ Build started: Project: EmptyAssembly, Configuration: Debug Any CPU ------
34>------ Build started: Project: XmlDocAttributeWithAdequateComment, Configuration: Debug Any CPU ------
35>------ Build started: Project: XmlDocAttributeWithEmptyComment, Configuration: Debug Any CPU ------
36>------ Build started: Project: XmlDocAttributeWithLocalizedComment, Configuration: Debug Any CPU ------
37>------ Build started: Project: XmlDocAttributeWithLongComment, Configuration: Debug Any CPU ------
38>------ Build started: Project: FSharp.VS.FSI, Configuration: Debug Any CPU ------
39>------ Build started: Project: FsiAnyCPU, Configuration: Debug x86 ------
40>------ Build started: Project: Fsi, Configuration: Debug Any CPU ------
41>------ Build started: Project: Fsc, Configuration: Debug Any CPU ------
42>------ Build started: Project: FSharp.Compiler.Unittests, Configuration: Debug Any CPU ------
43>------ Build started: Project: FSharp.LanguageService.Base, Configuration: Debug Any CPU ------
44>------ Build started: Project: ProjectSystem.Base, Configuration: Debug Any CPU ------
45>------ Build started: Project: FSharp.LanguageService, Configuration: Debug Any CPU ------
46>------ Build started: Project: FSharp.PropertiesPages, Configuration: Debug Any CPU ------
45>FSC: error FS1225: File 'C:\Users\Isaac\Source\Repos\visualfsharp\Debug\net40\bin\FSharp.LanguageService.Compiler.optdata' not found alongside FSharp.Core
45>FSC: error FS0229: Error opening binary file 'C:\Users\Isaac\Source\Repos\visualfsharp\Debug\net40\bin\FSharp.LanguageService.Compiler.dll': File 'C:\Users\Isaac\Source\Repos\visualfsharp\Debug\net40\bin\FSharp.LanguageService.Compiler.optdata' not found alongside FSharp.Core
45>FSC: error FS3160: Problem reading assembly 'FSharp.LanguageService.Compiler, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a': Error opening binary file 'C:\Users\Isaac\Source\Repos\visualfsharp\Debug\net40\bin\FSharp.LanguageService.Compiler.dll': File 'C:\Users\Isaac\Source\Repos\visualfsharp\Debug\net40\bin\FSharp.LanguageService.Compiler.optdata' not found alongside FSharp.Core
47>------ Build started: Project: FSharp.Editor, Configuration: Debug Any CPU ------
48>------ Build started: Project: ProjectSystem, Configuration: Debug Any CPU ------
48>C:\Users\Isaac\Source\Repos\visualfsharp\vsintegration\src\FSharp.ProjectSystem.FSharp\ProjectSystem.fsproj(146,5): error MSB3073: The command ""C:\Program Files (x86)\Windows Kits\8.1\bin\x86\rc.exe" /fo obj\Debug\net40\ProjectResources.rc.res ProjectResources.rc" exited with code 9009.
49>------ Build started: Project: VisualFSharp.Salsa, Configuration: Debug Any CPU ------
47>FSC: error FS1225: File 'C:\Users\Isaac\Source\Repos\visualfsharp\Debug\net40\bin\FSharp.LanguageService.Compiler.optdata' not found alongside FSharp.Core
47>FSC: error FS0229: Error opening binary file 'C:\Users\Isaac\Source\Repos\visualfsharp\Debug\net40\bin\FSharp.LanguageService.Compiler.dll': File 'C:\Users\Isaac\Source\Repos\visualfsharp\Debug\net40\bin\FSharp.LanguageService.Compiler.optdata' not found alongside FSharp.Core
47>FSC: error FS3160: Problem reading assembly 'FSharp.LanguageService.Compiler, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a': Error opening binary file 'C:\Users\Isaac\Source\Repos\visualfsharp\Debug\net40\bin\FSharp.LanguageService.Compiler.dll': File 'C:\Users\Isaac\Source\Repos\visualfsharp\Debug\net40\bin\FSharp.LanguageService.Compiler.optdata' not found alongside FSharp.Core
47>FSC: error FS0084: Assembly reference 'C:\Users\Isaac\Source\Repos\visualfsharp\Debug\net40\bin\FSharp.LanguageService.dll' was not found or is invalid
50>------ Build started: Project: EnableOpenSource, Configuration: Debug Any CPU ------
50>CSC : error CS0006: Metadata file 'C:\Users\Isaac\Source\Repos\visualfsharp\Debug\net40\bin\FSharp.Editor.dll' could not be found
49>FSC: error FS1225: File 'C:\Users\Isaac\Source\Repos\visualfsharp\Debug\net40\bin\FSharp.LanguageService.Compiler.optdata' not found alongside FSharp.Core
49>FSC: error FS0229: Error opening binary file 'C:\Users\Isaac\Source\Repos\visualfsharp\Debug\net40\bin\FSharp.LanguageService.Compiler.dll': File 'C:\Users\Isaac\Source\Repos\visualfsharp\Debug\net40\bin\FSharp.LanguageService.Compiler.optdata' not found alongside FSharp.Core
49>FSC: error FS3160: Problem reading assembly 'FSharp.LanguageService.Compiler, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a': Error opening binary file 'C:\Users\Isaac\Source\Repos\visualfsharp\Debug\net40\bin\FSharp.LanguageService.Compiler.dll': File 'C:\Users\Isaac\Source\Repos\visualfsharp\Debug\net40\bin\FSharp.LanguageService.Compiler.optdata' not found alongside FSharp.Core
49>FSC: error FS0084: Assembly reference 'C:\Users\Isaac\Source\Repos\visualfsharp\Debug\net40\bin\FSharp.LanguageService.dll' was not found or is invalid
49>FSC: error FS0084: Assembly reference 'C:\Users\Isaac\Source\Repos\visualfsharp\Debug\net40\bin\FSharp.ProjectSystem.FSharp.dll' was not found or is invalid
51>------ Build started: Project: VisualFSharp.Unittests, Configuration: Debug Any CPU ------
51>FSC: error FS1225: File 'C:\Users\Isaac\Source\Repos\visualfsharp\Debug\net40\bin\FSharp.LanguageService.Compiler.optdata' not found alongside FSharp.Core
51>FSC: error FS0229: Error opening binary file 'C:\Users\Isaac\Source\Repos\visualfsharp\Debug\net40\bin\FSharp.LanguageService.Compiler.dll': File 'C:\Users\Isaac\Source\Repos\visualfsharp\Debug\net40\bin\FSharp.LanguageService.Compiler.optdata' not found alongside FSharp.Core
51>FSC: error FS3160: Problem reading assembly 'FSharp.LanguageService.Compiler, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a': Error opening binary file 'C:\Users\Isaac\Source\Repos\visualfsharp\Debug\net40\bin\FSharp.LanguageService.Compiler.dll': File 'C:\Users\Isaac\Source\Repos\visualfsharp\Debug\net40\bin\FSharp.LanguageService.Compiler.optdata' not found alongside FSharp.Core
51>FSC: error FS0084: Assembly reference 'C:\Users\Isaac\Source\Repos\visualfsharp\Debug\net40\bin\FSharp.LanguageService.dll' was not found or is invalid
51>FSC: error FS0084: Assembly reference 'C:\Users\Isaac\Source\Repos\visualfsharp\Debug\net40\bin\FSharp.ProjectSystem.FSharp.dll' was not found or is invalid
51>FSC: error FS0084: Assembly reference 'C:\Users\Isaac\Source\Repos\visualfsharp\Debug\net40\bin\VisualFSharp.Salsa.dll' was not found or is invalid
========== Build: 45 succeeded, 6 failed, 0 up-to-date, 0 skipped ==========

I imagine I'm doing something wrong but don't know what.

@isaacabraham I just built master on my machine (sync + delete "Proto" and "Release" and "Debug" + "packages" + build), but it's possible I still have something cached.    Could you try again?

Just done a pull. Ran build.cmd in admin console: -
Build FAILED.

       "C:\Users\Isaac\Source\Repos\visualfsharp\build-everything.proj" (default target) (1) ->
       "C:\Users\Isaac\Source\Repos\visualfsharp\vsintegration\fsharp-vsintegration-src-build.proj" (Build target) (5) ->
       "C:\Users\Isaac\Source\Repos\visualfsharp\vsintegration\src\FSharp.Editor\FSharp.Editor.fsproj" (Build target) (11) ->
       "C:\Users\Isaac\Source\Repos\visualfsharp\vsintegration\src\FSharp.LanguageService.Base\FSharp.LanguageService.Base.csproj" (default target) (14) ->
       "C:\Users\Isaac\Source\Repos\visualfsharp\vsintegration\src\FSharp.VS.FSI\FSharp.VS.FSI.fsproj" (default target) (15) ->
       "C:\Users\Isaac\Source\Repos\visualfsharp\src\fsharp\FSharp.Compiler\FSharp.Compiler.fsproj" (default target) (21) ->
       (ResolveAssemblyReferences target) ->
         C:\Program Files (x86)\MSBuild\14.0\bin\Microsoft.Common.CurrentVersion.targets(1819,5): warning MSB3245: Could not resolve this reference. Could not locate the assembly "Microsoft.DiaSymReader". Check to make sure the assembly exists on disk. If this reference is required by your code, yo
       u may get compilation errors. [C:\Users\Isaac\Source\Repos\visualfsharp\src\fsharp\FSharp.Compiler\FSharp.Compiler.fsproj]

       "C:\Users\Isaac\Source\Repos\visualfsharp\build-everything.proj" (default target) (1) ->
       "C:\Users\Isaac\Source\Repos\visualfsharp\vsintegration\fsharp-vsintegration-src-build.proj" (Build target) (5) ->
       "C:\Users\Isaac\Source\Repos\visualfsharp\vsintegration\src\FSharp.Editor\FSharp.Editor.fsproj" (Build target) (11) ->
       "C:\Users\Isaac\Source\Repos\visualfsharp\src\fsharp\FSharp.LanguageService.Compiler\FSharp.LanguageService.Compiler.fsproj" (default target) (33) ->
         C:\Program Files (x86)\MSBuild\14.0\bin\Microsoft.Common.CurrentVersion.targets(1819,5): warning MSB3245: Could not resolve this reference. Could not locate the assembly "Microsoft.DiaSymReader". Check to make sure the assembly exists on disk. If this reference is required by your code, yo
       u may get compilation errors. [C:\Users\Isaac\Source\Repos\visualfsharp\src\fsharp\FSharp.LanguageService.Compiler\FSharp.LanguageService.Compiler.fsproj]

       "C:\Users\Isaac\Source\Repos\visualfsharp\build-everything.proj" (default target) (1) ->
       "C:\Users\Isaac\Source\Repos\visualfsharp\vsintegration\fsharp-vsintegration-deployment-build.proj" (Build target) (9) ->
       "C:\Users\Isaac\Source\Repos\visualfsharp\vsintegration\deployment\EnableOpenSource\EnableOpenSource.csproj" (Build target) (23) ->
       "C:\Users\Isaac\Source\Repos\visualfsharp\vsintegration\src\FSharp.ProjectSystem.FSharp\ProjectSystem.fsproj" (default target) (39) ->
       (BeforeBuild target) ->
         C:\Users\Isaac\Source\Repos\visualfsharp\vsintegration\src\FSharp.ProjectSystem.FSharp\ProjectSystem.fsproj(146,5): error MSB3073: The command ""C:\Program Files (x86)\Windows Kits\8.1\bin\x86\rc.exe" /fo obj\release\net40\ProjectResources.rc.res ProjectResources.rc" exited with code 9009.

       "C:\Users\Isaac\Source\Repos\visualfsharp\build-everything.proj" (default target) (1) ->
       "C:\Users\Isaac\Source\Repos\visualfsharp\vsintegration\fsharp-vsintegration-src-build.proj" (Build target) (5) ->
       "C:\Users\Isaac\Source\Repos\visualfsharp\vsintegration\src\FSharp.Editor\FSharp.Editor.fsproj" (Build target) (11) ->
       "C:\Users\Isaac\Source\Repos\visualfsharp\vsintegration\src\FSharp.LanguageService\FSharp.LanguageService.fsproj" (default target) (13) ->
       (CoreCompile target) ->
         FSC : error FS1225: File 'C:\Users\Isaac\Source\Repos\visualfsharp\release\net40\bin\FSharp.LanguageService.Compiler.optdata' not found alongside FSharp.Core [C:\Users\Isaac\Source\Repos\visualfsharp\vsintegration\src\FSharp.LanguageService\FSharp.LanguageService.fsproj]
         FSC : error FS0229: Error opening binary file 'C:\Users\Isaac\Source\Repos\visualfsharp\release\net40\bin\FSharp.LanguageService.Compiler.dll': File 'C:\Users\Isaac\Source\Repos\visualfsharp\release\net40\bin\FSharp.LanguageService.Compiler.optdata' not found alongside FSharp.Core [C:\User
       s\Isaac\Source\Repos\visualfsharp\vsintegration\src\FSharp.LanguageService\FSharp.LanguageService.fsproj]
         FSC : error FS3160: Problem reading assembly 'FSharp.LanguageService.Compiler, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a': Error opening binary file 'C:\Users\Isaac\Source\Repos\visualfsharp\release\net40\bin\FSharp.LanguageService.Compiler.dll': File 'C:\Users\Isa
       ac\Source\Repos\visualfsharp\release\net40\bin\FSharp.LanguageService.Compiler.optdata' not found alongside FSharp.Core [C:\Users\Isaac\Source\Repos\visualfsharp\vsintegration\src\FSharp.LanguageService\FSharp.LanguageService.fsproj]

    2 Warning(s)
    4 Error(s)

Ugh.  Maybe I have the DiaSymReader package cached.

I see the package being download during build.
@isaacabraham please try the following: run git clean -xdf. make sure your nuget cache is empty (run paket clear-cache to force that). check in the very beginning of the build if nuget is retrieving the package

i fixed the harmless warnings with #1124 but the errors (optdata) dunno, locally works for me.
pls can you try latest master?
the "Eventually the window closed" is strange

@enricosada I have just pulled down latest master and have the same error as @isaacabraham
The command ""C:\Program Files (x86)\Windows Kits\8.1\bin\x86\rc.exe" /fo obj\lease\net40\ProjectResources.rc.res ProjectResources.rc" exited with code 9009

I'll try to figure out what is happening, let me know if there's anything you think I should check.

Wait a minute, I've not go the Windows SDK installed. I'll let you know if that fixes it (pretty sure it will, as it's a prereq)

I just pulled master and also got the ... FSharp.LanguageService.Compiler.optdata' not found alongside FSharp.Core build error from build.cmd. I worked around it by manually copying those  .optdata and .sigdata files from src\fsharp\FSharp.LanguageService.Compiler\obj\release\net40 to release\net40\bin.
I didn't have any errors related to Microsoft.DiaSymReader package.

@taylorwood Were you cloning clean, or had you built previously?  If the latter then you may need to rebuild proto

@dsyme it was a first-time clone, hadn't built before.

@taylorwood Any chance you have a full build log for that?  It feels like either the LKG is out of date, or your installed F# compiler is being used instead of the LKG or Proto.

@taylorwood In particular I'd like to know which fsc.exe or fsc-proto.exe is being invoked when you get that failure.  Any compiler freshly built from the source code in the repo should work ok.  (We removed a hardwired hack in the compiler which means that you need to use a freshly-built compiler when compiling anything that references the internal FSharp.Compiler.LanguageService.dll. But since that component is internal that should not be a problem)

@dsyme I think this might be the path you're interested in ..\..\..\src\..\Proto\net40\bin\fsc-proto.exe. Full log: build.txt

Could you send me a log of
 build proto

please?  I don't understand why the proto compiler wasn't built fresh (if this was a clean clone)

build proto.txt
@dsyme I ran build again after build proto and it worked.

Could you do a totally clean clone again and show me the log of your first build (without doing a build proto) please?
In that scenario, the intent is that build does indeed build the proto if it doesn't exist, but it seems that may not be happening.
Thanks
don

@dsyme it just built successfully with a fresh clone. I must've fudged something when I was building before, but maybe this issue can be closed now. Fresh build log anyway: build.txt

I have the same issue build proto solved it but now the error is that FSharp.ProjectSystem.FSharp.pkgdef not created with the latest source

I believe this is fixed


Free text search - filter feature

Highlighting of the filter function through appropriate naming and graphical representation

@mzerlik will add a screenshot


[WIP] APIs I expected/wanted on "first contact"

Since this is roughly my first real contact with lahja, I wanted to write down my first impressions. I'll leave this open and [WIP] for a bit, as I collect my thoughts.
Custom APIs
An acknowledgment response
I have a request/response pair, but the response is super simple. Basically, I just want to know when it succeeds. So I don't want to have to define a custom response event type. I just want the caller to hang until the server responds.
This could look almost identical to the current Endpoint.subscribe() API (except I also want an async version, mentioned below). As soon as the handler exits, the vanilla response event is sent to acknowledge completion.
Response with a primitive value
I have a request, but just need a simple value back. Do I really need to define the response event?
Something like, client-side:
result = await endpoint.request(NeedsDoubling(3))
assert result == 6

# also, a blocking version:
endpoint.request_blocking(NeedsDoubling(3))

Server-side
async def doubler(event: NeedsDoubling):
  return event.operand * 2
endpoint.add_async_handler(NeedsDoubling, doubler)

# also
endpoint.add_handler(NeedsDoubling, lambda event: event.operand * 2)

Maybe the acknowledgement becomes redundant with this API, because you could just return None.
Connection Retries
If I start both the server and client and the client runs slightly before, I get a connection refused. I'd prefer to have it retry, at least for a while. Probably something like:

connect_to_endpoints(ConnectionConfig, timeout=seconds_im_willing_to_wait)

There are likely more APIs that would benefit. Unsure what the default timeout should be, if any.
Synchronous versions
Sync versions of most APIs. I expect the call to block until success (probably by launching a new thread under the hood):

Endpoint.connect_to_endpoints()
Endpoint.broadcast()

Async versions
like Endpoint.subscribe(event, some_awaitable_handler)

Distilled to the things that aren't already addressed in master or via one of the open pull requests.

add Endpoints.connect_to_endpoint_nowait to core API
ensure that connect_to_endpoint tolerates slow-to-appear IPC sockets as a tested feature.
sending back primatives: https://github.com/ethereum/lahja/issues/90
allow requesting an ack when an event is received: https://github.com/ethereum/lahja/issues/91

This also touches on something that is now possible, at least once #70 is merged, which is setting up the server-side request/response handlers using the EndpointAPI.subscribe API now that it accepts a coroutine as the handler.

I suppose another thing to do is update the examples in https://github.com/ethereum/lahja/tree/master/examples -- which was where I ended up on first contact.

So here's a toy example of something I'd like to do from inside a BaseIsolatedPlugin
def stacked_calls_demo(bus):
    bus.start_serving('task-runner')
    # This ^ is where task requesters will send events

    # Task execution will sometimes need extra data, connect below...

    # Block below connection until the endpoint becomes available...
    data_gatherer = bus.connect_to_endpoint('DataGatherer', timeout=10)
    # In the real implementation, this is probably lazier, and doesn't connect until
    # the first data is needed.

    # spawn a thread when this event is received. event expects primitive bool response
    bus.add_handler(RequestLongTask, long_task_runner(data_gatherer))

    # block until sigint || sigterm
    bus.serve_forever()

@curry
def long_task_runner(data_gatherer, event) -> bool:
    """
    returns bool: whether the long task was completed successfully
    """
    if not is_data_available():
        # block until data retrieved
        data = data_gatherer.request(WantData())
        # in the real beam sync, this ^ would probably just be an ACK
        # and the data would be loaded direct from the DB
    else:
        data = get_data()

    result = do_long_processing(data)

    return is_result_valid(result)

Also, maybe this requires making a sync version of the isolated plugin. Maybe it doesn't matter that we're blocking the event loop if we're not using it anywhere in this plugin, but it feels wrong.

@carver I've updated the examples and added tests to CI so that they don't break again https://github.com/ethereum/lahja/pull/101

I also have some surprises about when we use the endpoint and when we use the event bus. The most standout one is: we start_serving from an event bus to receive incoming requests, but then stream from an endpoint to handle those incoming requests.

Also want to be able to run a broadcast from another thread using something like:
future = asyncio.run_coroutine_threadsafe(event_bus.request(GetSomeData(key)), loop)
data = future.result(timeout=10)

(courtesy of Brian )
This crashes (in v0.12.0) with:
  File ".../venv/lib/python3.6/site-packages/lahja/endpoint.py", line 179, in run
    if self._loop != asyncio.get_event_loop():
  File "/usr/lib/python3.6/asyncio/events.py", line 694, in get_event_loop
    return get_event_loop_policy().get_event_loop()
  File "/usr/lib/python3.6/asyncio/events.py", line 602, in get_event_loop
    % threading.current_thread().name)
RuntimeError: There is no current event loop in thread 'ThreadPoolExecutor-0_0'.

@carver I think you already figured this out since you got beam sync working but the RuntimeError is because the decorator runs too soon, ti's not async-aware. Wrapping the call to event_bus.request() in another coro is enough to get this working:
async def run_request(endpoint):
    return await endpoint.request(Request('hi'))

Here's a working (on 3.7.0) example of blocking an event-loop-less thread on a response from the endpoint: https://gist.github.com/lithp/13ca70023dfedb25ceab7703ed6e4207
I'm not sure exactly what we could do to make the decorator wait a little before checking the event loop but I'm sure it's possible to fix this, it might be worth opening a ticket just for this problem.

I guess it's all really a tangent, because what I really want is a ThreadedEndpoint that will block on:
endpoint.request(GetSomeData(key))

FWIW, this is a local lahja patch on v0.12.0 that I'm running, so I don't have to deal with the RuntimeError:
diff --git a/lahja/endpoint.py b/lahja/endpoint.py
index 20dae5e..366aa5b 100644
--- a/lahja/endpoint.py
+++ b/lahja/endpoint.py
@@ -175,11 +175,16 @@ class Endpoint:
         def run(self, *args, **kwargs):  # type: ignore
             if not self._loop:
                 self._loop = asyncio.get_event_loop()
-
-            if self._loop != asyncio.get_event_loop():
-                raise Exception(
-                    'All endpoint methods must be called from the same event loop'
-                )
+            else:
+                try:
+                    current_loop = asyncio.get_event_loop()
+                except RuntimeError:
+                    pass
+                else:
+                    if self._loop != asyncio.get_event_loop():
+                        raise Exception(
+                            'All endpoint methods must be called from the same event loop'
+                        )

             return func(self, *args, **kwargs)
         return cast(TFunc, run)


Integrating Second-Order derivatives of dynamics in Pinocchio

Hi Pinocchio developers
We recently published our work on the second-order derivatives of Inverse dynamics for bodies with multi-DoF joints and fixed/floating base in the IROS 2022 conference. Link to the paper is below.
For accuracy and run-time check we also implemented the derivatives in Pinocchio (my own fork) and Featherstone's spatialv2 library. Now with the increasing use of DDP for optimization in legged robots, this could be a useful addition to Pinocchio, since Pinocchio is at the heart of Crocoddyl and probably other libraries. @cmastalli also mentioned that it'd be a good addition and will accelerate the use of DDP in this field. On a side note, we also extended this to get Forward dynamics derivatives w.r.t configuration and velocity.
So I was wondering, how do I go about contributing this to Pinocchio? Do I simply create a unit-test like the ones present for first-order derivatives and then open a PR? or Is there a better way for this? @jcarpent Could you guide me here?
Thanks for all the development you guys do.
https://arxiv.org/abs/2203.01497

Very nice initiative @shubhamsingh91.
You should follow the same strategy as in previous developments in Pinocchio:

having detailed and extended unit testings of internal routines
compatible with all the joints using the CRTP and visitors classically done in Pinocchio
having self-content commit messages
documentation of the additional functions
no API break

I hope I do not forget something.
By the way, do you have documentation for the forward dynamics wrt configuration and velocity vectors?
Justin

Thanks for the quick response @jcarpent . Forward Dynamics derivatives are still in works. We are finalizing the algorithm and running some tests. I will put something on arxiv at the time of the PR to provide a background for the algorithm. For now I will work on the Inverse Dynamics derivatives and create a PR for that.
Shubham

@jcarpent Opened the PR. Feel free to ask any questions regarding the code.
Thanks

Solved via #1860 and #1840.


Task stack overflow name="Tmr Svc"

I'm trying to create an air conditioner (category 21), but when the server is starting, the following error occurred:
>>> HomeKit: Starting server
>>> HomeKit: Formatting flash at 0x100000
>>> HomeKit: Generated new accessory ID: xx:xx:xx:xx:xx:xx
Task stack overflow (high water mark=0 name="Tmr Svc")
Task stack overflow (high water mark=0 name="Tmr Svc")
>>> wifi_config: Stopping HTTP server
>>> HomeKit: Generated new accessory key
>>> HomeKit: Configuring mDNS
Task stack overflow (high water mark=0 name="Tmr Svc")
Task stack overflow (high water mark=0 name="Tmr Svc")
mDNS announcement: Name=xxxx-xxxx
                                   md=xxxxxpv=1.0id=xx:xx:xx:xx:xx:xxc#
ets Jan  8 2013,rst cause:2, boot mode:(1,6)

ets Jan  8 2013,rst cause:4, boot mode:(1,6)

wdt reset

I tried to increase the "HomeKit Server" task stack size, but the error still occurred. Then I used a very similar code to create a thermostat, and it worked well.
Can anyone help me with this problem?

Well, there are no fortune tellers here, you have to show the code.

Hi, @maximkulkin !
Here’s my code that create the air conditioner accessory: air_conditioner.c
Two functions, homekit_add_service() and homekit_add_characteristic() are used to add services and characteristics dynamically. They are defined in homekit_utility.c.

@NN708 Oh, man, I like your module design. I assume there are also LEDs pointing down (underneath the board). Also, I like the neatness of your code.
Ok, I've checked your code and I can see the problem: when you use HOMEKIT_* macros, what happens is a structure is allocated ON STACK and then you get a pointer to it.. Thus, if you store that pointer, it will be pointer to stack and thus the data will be messed up. These macros are very useful for statically initialized data, because in that case those structures are allocated in "static memory". That's why I added homekit_*_clone() functions and NEW_HOMEKIT_* macros - they take a pointer to a structure and create a copy that is allocated on the heap. You can find example of their usage in examples/dynamic_services. You should either use those to pass a pointer to homekit_add_*() functions or you clone them inside those functions.

Ok, my guess is: all structures that should be allocated on stack are allocated at once when you enter your function thus you need a lot of stack space. It might be a good idea to declare services in static memory and then just clone them into an accessory:
static homekit_service_t *accessory_info = HOMEKIT_SERVICE_(ACCESSORY_INFORMATION, .characteristics=(homekit_characteristic_t*[]){
    HOMEKIT_CHARACTERISTIC(NAME, "Sample LED"),
    HOMEKIT_CHARACTERISTIC(MANUFACTURER, "HaPK"),
    HOMEKIT_CHARACTERISTIC(SERIAL_NUMBER, "037A2BABF19D"),
    HOMEKIT_CHARACTERISTIC(MODEL, "MyLED"),
    HOMEKIT_CHARACTERISTIC(FIRMWARE_REVISION, "0.1"),
    HOMEKIT_CHARACTERISTIC(IDENTIFY, led_identify),
    NULL
});
// ...
void air_conditioner_init(homekit_accessory_t* accessory) {
    accessory->category = homekit_accessory_category_air_conditioner;
    homekit_add_service(accessory, homekit_service_clone(accessory_info));
    // ...
}

If you really wan't to preserve that beauty, you might want consider inside on reaction to wifi event spawning a task with your own stack size to configure everything.

I defined the services globally and it worked. Thank you!

for your info
if i use
      vTaskDelay(1000 / portTICK_PERIOD_MS);

before homekit_server_init(&config); makes reset..
Timer Start Failed
Timer Stop Failed
remove vTaskDelay


Missing a hull() for points/paths/regions that return paths/regions.

I can't seem to find a hull() that can be used for points/paths/regions. That makes it unnecessary difficult to use with the different *_sweep() functions and modules such as linear_sweep() which requires a path or region.
The candidates are hull() and hull2d_path(). Both of them seem identical for 2D points, returning a list of indices into the list of points. I don't see the difference between them, making them what I believe to be redundant?
Is there a point having two seemingly identical functions hull(points) and hull2d_path(points) when plain hull() can detect 2D or 3D points and work with both, or is it just an accidental development?
Since they both return indices instead of a new set of points they are cumbersome to use for something like this (in increasing complexity for illustration purposes):
back(00) linear_sweep( circle(5) );

back(10) linear_sweep( union(circle(5),right(10,circle(5))) );

//back(20) linear_sweep( hull(circle(5),right(10,circle(5))) );
let(path=concat(circle(5),right(10,circle(5))))
  back(20) linear_sweep(select(path,hull(path)));

As you can see, using a union() is relatively clean, while hulling requires creating a new list and then extracting the points. Would it not be nice to have a hull() that works similar to union()/intersection()/... for regions? It's of course easy to write my own function but I think it would fit well for operations on regions in the library.

It seems like what should really happen is path_idx should replace the existing path versions.  The reason for the redundancy is that the original path that we stole provided a single path function that handled all the cases through a collection of subfunctions for the different cases.  But handling all the cases isn't necessarily a great idea because it means the output can have multiple different incompatible forms, so we didn't hide the subfunctions.
But a good path forward from where things are now is not so clear.   Leave it alone now and change hull() in BOSL2.1?

But a good path forward from where things are now is not so clear. Leave it alone now and change hull() in BOSL2.1?

I'm just a single data point, but I've been happily using BOSL2 for a while now and I expected hull() to return a path or a region for 2D points, and probably a complete VNF for 3D points. The VNF version could of course keep all the original points, but that's more difficult in 2D.

What if we made hull_vnf() and hull_region() where the former takes a 3d point list or VNF as input and returns a VNF out and the latter takes a path or region as input and returns a region?

I've pushed changes that add vnf_hull() and hull_region() which address this.

This has been merged.