feature: 自动化工作流

Codecov Report

Merging #69 (5ccc62f) into V2.1.342rc (017e084) will increase coverage by 0.00%.
The diff coverage is n/a.

@@             Coverage Diff             @@
##           V2.1.342rc      #69   +/-   ##
===========================================
  Coverage       58.90%   58.91%
===========================================
  Files             394      394
  Lines           25915    25915
===========================================
+ Hits            15266    15267    +1
+ Misses          10649    10648    -1

Impacted Files
Coverage Δ

apps/node_man/handlers/job.py
86.35% <0.00%> (ø)

apps/node_man/handlers/validator.py
98.13% <0.00%> (+0.62%)
:arrow_up:

Continue to review full report at Codecov.

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


Running ChatterBot on Linux Server

Hello All.
I just became fascinated with creating chatbots and extending them not too long ago. I have tried numerous code bases for starting points and this one seems to be the most flexible. Before I go any further I am wondering is it possible and if so how could I develop a chat bot with TTS and Speech Recognition without a display.

Nevermind. This can be closed. I'll just manually apply the xdisplay.

However, fresh install does show errors for checking version. ValueError

It is definitely possible. I've worked with a number of TTS and Speech Recognition libraries on headless systems.

What have you found to be the greatest obstacle going headless? My goal for this project is to fully automate and decentralize my home. I'm looking to raspberry pi the security system, automate multiple tasks via the lan.
The chatterbot plays a role as the "assistant". I want it to create "accounts" per user and just really create a full experience.

I really haven't encountered any obstacles. All of the software that is needed to accomplish this can definitely be run on a Raspberry Pi.
I have however encountered some pretty significant obstacles when it comes to trying to do speech recognition on a Raspberry Pi. A huge amount of processing power is needed to convert audio into text and while is is possible to make it work on a Raspberry Pi, it might not be very effective due to the amount of time it takes to produce a response.

Thanks for the reply. You truly have founded some revolutionary code.


Relate EasyAccessibility schema to codes in Woordenboek Reizigerskenmerken

Maybe EasyAccessibility should not be part of the type-of-asset query, as accessibility knowledge should be available at the MSP

I think it's now more generic: in the availability-check you can require these items. I also added a 'meta' dictionary to the type-of-asset, that could be used for this purpose.

In the availability-check there is also a requirements- field. In this field these 'kenmerken' can be put, to be use by the TO.
e.g. requirements: [ {"HR-01": "true", "HR-06": "Voetsteun steekt vooruit" } ]

Woordenboek Reizigerskenmerken to be added as an appendix to the Blueprint v1.1


Fix: validators fee as null

I managed to reproduced the problem (kudos to @frol) and fixed it.
The bug was created by migration to typescript.
I decided to make types more semantical - and separate stakingPoolInfo to a nested object, removing the need to have types like Foo | undefined | null.

Well, current stake should be present regardless of the fact if there is a staking pool contract or not, so I feel stake field should be outside of stakingPoolInfo object.

@frol
Fixed that.

@luixo @shelegdmitriy Oddly, both the production code and this PR provide different stake values and somehow neither is matching the CLI (thin wrapper over the JSON RPC validators API):
Production:

This PR:

CLI / JSON RPC:

FYI, CLI next epoch output:

Oddly, both the production code and this PR provide different stake values and somehow neither is matching the CLI (thin wrapper over the JSON RPC validators API)

I fixed the difference between production and staging (as one should expect).
The problem of different value to JSON RPC would be addressed in another PR where validators would be revisited.

@luixo PR still does not match the production values

@luixo PR still does not match the production values

Yes, but it matches production and the idea was to get rid of nulls, not to match RPC.
I'll dig deeper into validators in another PR.


CRB-1931 Azure UAE Central introduced behind an entitlement CDP_AZURE…

…_IMAGE_MARKETPLACE, CDP_AZURE_UAE_CENTRAL are requireed to use that region
See detailed description in the commit message.

retest this please


OUT_DIR missing when building source files

Recently upgraded from rust 1.28 to 1.30, and the following line now returns an error, seems like OUT_DIR is not defined anymore when buiding the source files:
error: couldn't read "src/routes/false/data.rs": No such file or directory (os error 2)
  --> src/routes/statics.rs:11:1
   |
11 | include!(concat!(env!("OUT_DIR"), "/data.rs"));
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

build.rs:
extern crate includedir_codegen;

use includedir_codegen::Compression;

fn main() {
    includedir_codegen::start("ASSETS")
        .dir("../frontend/dist/rust-angular", Compression::Gzip)
        .build("data.rs")
        .unwrap();
}

The file is generated in the correct place but include! is looking in the wrong place.
Notes
Output of cargo version: cargo 1.30.0 (a1a4ad372 2018-11-02)
Rust version: rustc 1.30.1 (1433507eb 2018-11-07), stable

The example project at https://github.com/tilpner/includedir/tree/master/example seems to run just fine, so I think OUT_DIR maybe isn't the problem.  Is your project publicly available, or can you create a reproduction, or say more about your layout?  I see that you have .. in your path, maybe that has something to do with it?

It's not currently publicly available, but I will try to create a repro repo (HA!), and share that. I don't think .. has anything to do with it, that's in the build script, and it's defined there correctly. The problem is in "normal" code, when trying to include it.

@ehuss,
So during the creation of the repro repo, I have found that the issue is a use env. But i'm baffled on why it causes issues, and why it doesn't create a more meaningful compile error: https://github.com/axos88/out_dir_bug
Apparantly the use prelude:* is mandatory to repro the issue, although I'm not sure how that compiles... There used to be a prelude module in the project, however it is now removed, but it doesn't give a compile error for that... Maybe it's resolving std::prelude somehow?

Ok thanks for refiling! I'm gonna close this in favor of the rustc bug in that case


Travel duration using google traffic information

This app shows the duration to get from an origin to a destination by using traffic information from google. To use this app, a google maps distance matrix api key needs to be provided.

I think there is a problem with this PR.  It also pulls in your SBB app.  You should probably re-create this PR from a branch that comes off the branch that matches tydbit's main branch so that it doesn't pull in both apps in the one PR.

You are right, there went something wrong. I opened up a new PR #86.


A way to setup list of one(1) out of X items?

For example, I want to create a "HumanoidFood" list, which has things like (Turnip, Carrot, Onion, RawMeat, DeerMeat) on it and it will only drop one of those items?
Right now I have each item configured with a low percent, but it can drop one of each at times, where as I really only want it to drop one.
Also in the code when rolling a chance to drop an item, is it a single roll and that is then checked against all items or does each item have it's own separate roll?

The way drops work is dependent on whether its for CharacterDrop or DropTable. Which one is used is dependent upon the creature/chest/whatever-object in question.
For CharacterDrop, every single item rolls chance (if conditions are met). There is no way to have it pick only a single one.
For DropTable, the table itself can specify how many rolls its gonna make. But this is for all items in the table, it can't pick a subset.


New package: ShockwaveProperties v0.1.1

Registering package: ShockwaveProperties
Repository: https://github.com/aj-fleming/ShockwaveProperties.jl
Created by: @aj-fleming
Version: v0.1.1
Commit: 9b31c24569e194bcc173ecd9dce40f7a3178f620
Reviewed by: @aj-fleming
Reference: https://github.com/aj-fleming/ShockwaveProperties.jl/commit/9b31c24569e194bcc173ecd9dce40f7a3178f620#commitcomment-136319303
Description: Julia package for computing fluid properties near shock waves.

[noblock]
Accidentally created a new PR rather than updating my old one. Was it the version number change? Thanks @lgoettgens for the reminder to write documentation ;)
https://github.com/JuliaRegistries/General/pull/98045

[noblock]
Yeah, as long as your package is not registered, you should not change the version number (to not confuse the Registrator).
But what happened happened, so just abandon #98045 and go ahead with this one.


Templated Razor delegates?

Sorry for the series of issues, I'm prototyping some small projects with RazorBlade, RazorSlices and razor components in ways that I think I'll need to see where the pain points are. Templated Razor delegates was the next thing I tried, since I want to create reusable markup fragments that can render child markup. If you have interest in covering this feature, here's a simple test case:
@inherits RazorBlade.HtmlTemplate
@{
    Func<dynamic, object> span = @hello!;
}
<!DOCTYPE html>

<title></title>

Compilation fails with:
1>CSC : error RZ2000: The document type 'default' does not support the extension 'ITemplateTargetExtension'.
1>C:\repos\SqsRB\Templates2\Basic.cshtml(3,33,3,33): error CS1525: Invalid expression term ';'

The first line is the important one. RazorLight had a similar issue that was fixed in this ticket, if that's any help. The changes don't look too extensive.
Thanks again for all of your help!

No worries 🙂
I usually write a function in @functions for this kind of stuff, but I'll take a look at this.

I'm not sure you can use functions for this in a fully reusable fashion. Just as an example, suppose I have a styled button component whose contents should be up to the caller:
@inherits RazorBlade.HtmlTemplate<Func<dynamic, object>>
<button class="flex items-center justify-center w-full px-4 py-2 text-sm font-medium leading-5 text-white text-gray-700 transition-colors duration-150 border border-gray-300 rounded-lg dark:text-gray-400 active:bg-transparent hover:border-gray-500 focus:border-gray-500 active:text-gray-500 focus:outline-none focus:shadow-outline-gray">
    @Model(default(dynamic))
</button>

Now I can construct buttons with simple or complicated content, like:

@(new Button(@<text>some plain text</text>))

@(new Button(@<text><svg class="w-4 h-4 mr-2" aria-hidden="true" viewBox="0 0 24 24" fill="currentColor">
                  <path d="M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.3<IP_ADDRESS>-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 <IP_ADDRESS>.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .3<IP_ADDRESS>5.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12"></path>
                </svg> Github</text>))

I don't think you can parameterize like this with named functions, and I don't think functions can be shared across templates. You can of course pass the content as an escaped string for this specific case, but manually escaping strings is less than ideal, and strictly less flexible since the template delegate lets you reference local parameters.

I've implemented basic support for templated delegates in 8661d4b77dd5f488e77e86349696e83e162b6096, but I also had to add support for PushWriter/PopWriter and I'm not sure I'm satisfied with the resulting code, which became more complicated than necessary... Maybe I'll refactor it.
Anyway, it'll be shipped in v0.7.0

Awesome!


out.apatch文件保存的最佳路径是什么？

如题，谢谢！

generally, apatch file is very small, so you can save the file to path/data/data/packagename/..


Add screenshots of example documentation

😍

Do we need the desktop / mobile screenshots if they're not referenced anywhere?

Arguably not. I thought it'd be worth including them in case they were useful to people in the future. If that's the case though it'd probably make sense to link to them from the README?

Let's just leave them there and not link to them from the README – I don't think it makes sense to link them for the hell of it.

👍


Added once prop to disable watching once the component in viewport

Added once prop to disable watching once the component is in viewport

@joshwnj

Any chance of getting this merged?

@mdrobny This is good to merge.  Lmk if you have any feedback.

@joshwnj friendly ping! :)

@joshwnj Another friendly ping :)

@joshwnj Friendly ping +1

Bump

Bump


Jenkins ci

This commit includes several changes:

Re-enables the CI using MIOpen/CK Jenkins resources.
Updates the Pytorch and ROCm versions.
Updates the docker image, moving all necessary python packages into the docker.
The performance results will now be written to our internal database.

Why the PR update to amd-develop branch instead of merge_upstream

Because this is CI for our repo, so we need it in our repo, not in FB one.

Thanks, I understand.

Next time when we merge up from our repo to FB, we will omit the Jenkinsfile and just push the updated docker file and test scripts.


Make all REST API query params / json payload in snake_case

In Quickwit 0.2, the Search REST API is camelCase.
@PSeitz recently added aggregation with a compatible Elastic API that is snake_case AFAIK.
We should use snake_case for all query params / json payload to avoid inconsistencies.

@fmassot I'd like to give it a try. :D


help me to build anonet model for object detection

here is the structure I have understood from paper, please verify it,
I wan to know how this 12 first filter banks are working? it is manually ur getting feature maps from the first 12 filters? then how to feed next to CNN?

??


JSFiddle demo in documentation is broken

Getting the following error at the JSFiddle referenced by the transition documentation page:
"Uncaught ParseError: Cannot use reserved event names (change, reset, teardown, update, construct, config, init, render, unrender, detach, insert) at line 2 character 24:
Insert item"
Proposed fix:
Change event names.
http://jsfiddle.net/Hf2ea/24/
http://jsfiddle.net/rich_harris/Hf2ea/
http://docs.ractivejs.org/latest/writing-transition-plugins

@ISNIT0 probably best filed in the docs repo: https://github.com/ractivejs/docs.ractivejs.org/issues

As @fskreuz pointed out, this is more suited for the docs repo, so I'm going to crosspost this issue over there, and close this one. Thanks!


Ssl-opt fixes

Description
Fixes I found whilst trying to get ssl-opt to run clean locally, whilst looking for the issues surrounding the tls renegotiation bug (#5022)

An incorrect check for DTLS. Due to missing wildcards this wasn't detecting certain server starts as being DTLS, and as a result would check for a TCP port becoming owned by the server rather than UDP, which would result in the server being marked as "Failed to start", and the test skipped.
When specifying the -connect string for openssl s_client, we were using localhost rather than <IP_ADDRESS>, which would cause a failure for the client to connect to the server. I suspect this is because on many machines now, localhost resolves to ::1 rather than <IP_ADDRESS>. Note that this failure would not be logged, and would be seen as a failure to create the session pointed to by -sess_out. This was not happening on the CI, only on local machines, however this feels brittle, as any change of AMI could break this.
Lastly but not least, the use of -b (non blocking) with lsof seems to break the use of -p (with PID) with lsof, at least on any machine I have tried it on. This seems to be because -b forbids the usage of blocking kernel calls (which would seem potentially wise given the tight loop this is used in), however -p seems to rely on using stat() to read files in /proc, and -b forbids this. With -b on all I get is a string of warnings, and a negative result, which means that all servers are marked as 'failed to start'. Again, this is clearly not happening on the CI, but I'm really not sure why not, and it feels very brittle.

Status
READY
Requires Backporting
Yes
2.x
3.0
Migrations
NO
Todos

[ ] Tests
[ ] Backported

Steps to test or reproduce
ssl-opt should run clean.

Force push due to a piece of debug code sneaking in.


Add IDocumentProvider service

aspnet/AspNetCore#4948

Seems on the right track 👍

Ready for a meeting w/ Richard in January I think.

This PR has outlived its usefulness


Continuous Delivery: research Helm for blue/green

We need to figure out, how to use Helm for blue/green deployment.
Help:

Design doc: Is Helm the right way to go?
Helm Subcharts Doc: Tutorial

sockshop-umbrella.zip

Multiple Chart Blue/Green
Requirements

service manifest exists and has the kind: service. Furthermore, it has a spec.selector.app property
deployment manifest exists and has the kind: deployment. Furthermore, it has spec.selector.matchLabels.app and spec.template.metadata.labels.app properties.
Convenience for traceability: values.yaml exists and has a property image, which is used in the deployment.

Service of user

Validate requirements
Store in configuration-service
Update requirements.yaml
Update values.yaml

Generated service

Duplicate helm chart
Rename chart name in Chart.yaml
Take service.yaml and do the following steps:
a. Create service-canary.yaml and change name to [xy]-canary
b. Create service-primary.yaml and change name and selector to [xy]-primary
c. Delete service.yaml
Take deployment.yaml and do the following steps:
a. Rename into deployment-primary.yaml and change name, and app selectors to [xy]-primary
Create DestinationRule for canary and primary
Create Virtual service
Update requirements.yaml
Update values.yaml

Stage Level

Create root Chart with project name
Create Requirements.yaml with empty dependencies
Create empty values.yaml
Create Istio Gateway in templates folder

Design doc containing a Comparions of keptn and Flagger showing the functionality of the helm-service: https://drive.google.com/open?id=1eRrKjkjcv-cGlNsAykMZbCjieykDc2Qp

Attached is the example used by flagger:
flagger-podinfo.zip


Fix typo

Fixes a very minor typo I noticed when looking through the docs on this. Thanks for your work on this extension! Will definitely be checking it out as an alternative to Viasfora!

Thanks


Feat(UI): Afflicted monster icon

Monster icon in monster widget is not reflects that monster is afflicted.
Game's monster target icon has different icon that marked curia.

Afflicted isn't a separate icon.
Just curia texture layered on top of the monster icon.

Afflicted monster icons.zip
Can't found mask texture.
These are complete icons.


rebuild to get geos 3.10 into the package list

Checklist

[X] Used a personal fork of the feedstock to propose changes
[X] Bumped the build number (if the version is unchanged)
[ ] Reset the build number to 0 (if the version changed)
[X] Re-rendered with the latest conda-smithy (Use the phrase @conda-forge-admin, please rerender in a comment in this PR for automated rerendering)
[X] Ensured the license file is being packaged.

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.

seems not be possible for me to get the requirements for python_abi in py37 added
https://github.com/conda-forge/python_abi-feedstock/pull/15

I was a bit surprised to see that the recipe is already depending on GEOS >= 3.9, when it is known to cause bugs in basemap (see https://github.com/matplotlib/basemap/issues/522). The recipe will have the same issues with GEOS 3.10 until the problem is solved on the basemap side, so accepting GEOS 3.10 is not a regression actually.

Thx for noting this geos problem. We had before a different problem for fixating it <3.9
I try if I can help with basemap 1.3.3

@ReimarBauer That would be of great help, since I am not a real expert on conda-forge packaging. This feedstock stays for the moment in basemap 1.2.x because for 1.3.x I made some significant changes in the basemap packaging which require an update in the conda-forge recipe (see https://github.com/conda-forge/basemap-feedstock/issues/87).
To make the distribution of PyPI packages easier, I split basemap into basemap, basemap-data and basemap-data-hires, because this allows me to generate light wheels with the code for every Python version (basemap) and two universal data wheels for all Python versions (mandatory basemap-data and optional basemap-data-hires). I took this idea from the conda-forge package, whose recipe was splitting basemap into basemap and basemap-data-hires. The packages basemap-data-hires for PyPI and conda-forge are currently not identical (the PyPI package also contains the intermediate resolution data files).
The goal would be to have this new three-package structure also in conda-forge. For this, the conda-forge recipe needs to be updated, so that basemap-data-hires-feedstock gets archived and basemap-feedstock takes care creating these three new conda-forge packages. The Anaconda contributors have already migrated their recipe, see https://github.com/AnacondaRecipes/basemap-feedstock/commit/d5d5c3c715857069f79098f3ca4939159f2f1074. They tried to merge it here but both feedstocks have diverged too much and the merge was not possible.
I guess the most important part is to mimic what the Anaconda contributors did in their recipe folder.


docs: Use smaller example instanceType

Fixes #
Description
Use smaller example instanceType
How was this change tested?

Deployed using t3a.medium fine

Does this change impact docs?

[x] Yes, PR includes docs updates
[ ] Yes, issue opened: #
[ ] No

Release Note

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Closing this PR as not-planned


Batch update fails with internalServerError

Which service(blob, file, queue, table) does this issue concern?
Table
Which version of the Azurite was used?
3.22.0
Where do you get Azurite? (npm, DockerHub, NuGet, Visual Studio Code Extension)
npm
What's the Node.js version?
v18.14.2
What problem was encountered?
Batch Update operation (tried with batch size of 3 and 60) to table storage fails with 500 "Internal Server Error"
Class used for building tableClient = CloudTable, its name space: Microsoft.WindowsAzure.Storage.Table
Function invoked to perform the operation:
this.table.ExecuteBatchAsync(batch,GetRequestOptions(operationType),operationContext,cancellationToken);
parameters values:

TableBatchOperation batch:
size 60 or 3,
isReadOnly : false
Values: 60 or 3 rows with each having PartitionKey, RowKey, TimeStamp,

Is there something to do with Batch Size and timeout at azurite?
Checking since this does not fail in AzureTableStorage and Azure Storage Emulator.
Steps to reproduce the issue?
If possible, please provide the debug log using the -d parameter, replacing <pathtodebuglog> with an appropriate path for your OS, or review the instructions for docker containers:
2023-03-29T19:58:56.664Z b8935388-ceef-42ea-8467-cb06c7a18422 verbose: DeserializerMiddleware: Start deserializing...
2023-03-29T19:58:56.664Z b8935388-ceef-42ea-8467-cb06c7a18422 info: HandlerMiddleware: DeserializedParameters={"version":"2018-03-28","options":{"requestId":"99e5ad31-b826-4968-9430-3fb53adfee3f","dataServiceVersion":"3.0;"},"multipartContentType":"multipart/mixed; boundary=batch_4ae6d40e-e618-4a07-9187-25d9fe2934da","contentLength":27956,"body":"ReadableStream"}
2023-03-29T19:58:56.665Z b8935388-ceef-42ea-8467-cb06c7a18422 debug: TableHandler:batch() Raw request string is "--batch_4ae6d40e-e618-4a07-9187-25d9fe2934da\r\nContent-Type: multipart/mixed; boundary=changeset_eec6b123-335a-4fbd-ba71-b8511e4f3d97\r\n\r\n--changeset_eec6b123-335a-4fbd-ba71-b8511e4f3d97\r\nContent-Type: application/http\r\nContent-Transfer-Encoding: binary\r\n\r\nPUT http://<IP_ADDRESS>:10002/devstoreaccount1/ArchiveStreamsTable(PartitionKey='077b857e-0bf1-46e8-be9d-e3e50080cd72',RowKey='0c917b01-b84b-48bf-bf5e-1e27e8a894c3') HTTP/1.1\r\nAccept: application/json;odata=minimalmetadata\r\nContent-Type: application/json\r\nDataServiceVersion: 3.0;\r\nIf-Match: W/\"datetime'2023-03-29T19%3A10%3A38.9986970Z'\"\r\n\r\n{}\r\n--changeset_eec6b123-335a-4fbd-ba71-b8511e4f3d97\r\nContent-Type: application/http\r\nContent-Transfer-Encoding: binary\r\n\r\nPUT http://<IP_ADDRESS>:10002/devstoreaccount1/ArchiveStreamsTable(PartitionKey='077b857e-0bf1-46e8-be9d-e3e50080cd72',RowKey='88ae395d-ce0c-4d3d-afdb-cebfed30fb9b') HTTP/1.1\r\nAccept: application/json;odata=minimalmetadata\r\nContent-Type: application/json\r\nDataServiceVersion: 3.0;\r\nIf-Match: W/\"datetime'2023-03-29T19%3A10%3A38.9986987Z'\"\r\n\r\n{}\r\n--changeset_eec6b123-335a-4fbd-ba71-b8511e4f3d97\r\nContent-Type: application/http\r\nContent-Transfer-Encoding: binary\r\n\r\nPUT http://<IP_ADDRESS>:10002/devstoreaccount1/ArchiveStreamsTable(PartitionKey='077b857e-0bf1-46e8-be9d-e3e50080cd72',RowKey='4c76d3fe-0c56-487e-bb14-63aca63bbec2') HTTP/1.1\r\nAccept: application/json;odata=minimalmetadata\r\nContent-Type: application/json\r\nDataServiceVersion: 3.0;\r\nIf-Match: W/\"datetime'2023-03-29T19%3A10%3A38.9986998Z'\"\r\n\r\n{}\r\n--changeset_eec6b123-335a-4fbd-ba71-b8511e4f3d97\r\nContent-Type: application/http\r\nContent-Transfer-Encoding: binary\r\n\r\nPUT http://<IP_ADDRESS>:10002/devstoreaccount1/ArchiveStreamsTable(PartitionKey='077b857e-0bf1-46e8-be9d-e3e50080cd72',RowKey='b295bbf3-b147-4c60-a030-46d813bb7fe3') HTTP/1.1\r\nAccept: application/json;odata=minimalmetadata\r\nContent-Type: application/json\r\nDataServiceVersion: 3.0;\r\nIf-Match: W/\"datetime'2023-03-29T19%3A10%3A38.9987001Z'\"\r\n\r\n{}\r\n--changeset_eec6b123-335a-4fbd-ba71-b8511e4f3d97\r\nContent-Type: application/http\r\nContent-Transfer-Encoding: binary\r\n\r\nPUT
..
..
..
so on upto 60 records.)

 HTTP/1.1\r\nAccept: application/json;odata=minimalmetadata\r\nContent-Type: application/json\r\nDataServiceVersion: 3.0;\r\nIf-Match: W/\"datetime'2023-03-29T19%3A10%3A38.9987145Z'\"\r\n\r\n{}\r\n--changeset_eec6b123-335a-4fbd-ba71-b8511e4f3d97--\r\n--batch_4ae6d40e-e618-4a07-9187-25d9fe2934da--\r\n"
2023-03-29T19:58:56.666Z b8935388-ceef-42ea-8467-cb06c7a18422 error: ErrorMiddleware: Received an error, fill error information to HTTP response
2023-03-29T19:58:56.666Z b8935388-ceef-42ea-8467-cb06c7a18422 error: ErrorMiddleware: ErrorName=Error ErrorMessage=Couldn't extract path from sub-Request:
 Content-Type: application/http
Content-Transfer-Encoding: binary

PUT http://<IP_ADDRESS>:10002/devstoreaccount1/ArchiveStreamsTable(PartitionKey='077b857e-0bf1-46e8-be9d-e3e50080cd72',RowKey='0c917b01-b84b-48bf-bf5e-1e27e8a894c3') HTTP/1.1
Accept: application/json;odata=minimalmetadata
Content-Type: application/json
DataServiceVersion: 3.0;
If-Match: W/"datetime'2023-03-29T19%3A10%3A38.9986970Z'"

{}
 ErrorStack="Error: Couldn't extract path from sub-Request:\n Content-Type: application/http\r\nContent-Transfer-Encoding: binary\r\n\r\nPUT http://<IP_ADDRESS>:10002/devstoreaccount1/ArchiveStreamsTable(PartitionKey='077b857e-0bf1-46e8-be9d-e3e50080cd72',RowKey='0c917b01-b84b-48bf-bf5e-1e27e8a894c3') HTTP/1.1\r\nAccept: application/json;odata=minimalmetadata\r\nContent-Type: application/json\r\nDataServiceVersion: 3.0;\r\nIf-Match: W/\"datetime'2023-03-29T19%3A10%3A38.9986970Z'\"\r\n\r\n{}\r\n\n    at C:\\Users\\sjillella\\source\\Azurite\\dist\\src\\table\\batch\\TableBatchSerialization.js:71:23\n    at Array.map (<anonymous>)\n    at TableBatchSerialization.deserializeBatchRequest (C:\\Users\\sjillella\\source\\Azurite\\dist\\src\\table\\batch\\TableBatchSerialization.js:52:45)\n    at TableBatchOrchestrator.processBatchRequestAndSerializeResponse (C:\\Users\\sjillella\\source\\Azurite\\dist\\src\\table\\batch\\TableBatchOrchestrator.js:46:32)\n    at TableHandler.batch (C:\\Users\\sjillella\\source\\Azurite\\dist\\src\\table\\handlers\\TableHandler.js:498:50)\n    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)"
2023-03-29T19:58:56.666Z b8935388-ceef-42ea-8467-cb06c7a18422 error: ErrorMiddleware: Set HTTP code: 500
2023-03-29T19:58:56.666Z b8935388-ceef-42ea-8467-cb06c7a18422 info: EndMiddleware: End response. TotalTimeInMS=4 StatusCode=500 StatusMessage=undefined Headers={"server":"Azurite-Table/3.22.0"}
2023-03-29T19:59:09.559Z 916cf31c-9ede-4540-886c-fa74a097d113 info: TableStorageContextMiddleware: RequestMethod=POST RequestURL=http://<IP_ADDRESS>/devstoreaccount1/$batch RequestHeaders:{"host":"<IP_ADDRESS>:10002","accept-charset":"UTF-8","maxdataserviceversion":"3.0;NetFx","dataserviceversion":"3.0;","x-ms-client-request-id":"99e5ad31-b826-4968-9430-3fb53adfee3f","user-agent":"Azure-Storage/9.3.2 (.NET Core)","x-ms-version":"2018-03-28","x-ms-date":"Wed, 29 Mar 2023 19:59:09 GMT","authorization":"SharedKey devstoreaccount1:8FhGLJr9WYAxBMf3ioS3NVEal80V/w9uAUcZh3M/ibI=","content-length":"27956","content-type":"multipart/mixed; boundary=batch_1627bcfa-7bdf-453e-b432-681c501eaf02"} ClientIP=<IP_ADDRESS> Protocol=http HTTPVersion=1.1
2023-03-29T19:59:09.559Z 916cf31c-9ede-4540-886c-fa74a097d113 debug: tableStorageContextMiddleware: Dispatch pattern string: /$batch
2023-03-29T19:59:09.559Z 916cf31c-9ede-4540-886c-fa74a097d113 info: tableStorageContextMiddleware: Account=devstoreaccount1 tableName=$batch
2023-03-29T19:59:09.559Z 916cf31c-9ede-4540-886c-fa74a097d113 verbose: DispatchMiddleware: Dispatching request...
2023-03-29T19:59:09.560Z 916cf31c-9ede-4540-886c-fa74a097d113 info: DispatchMiddleware: Operation=Table_Batch
2023-03-29T19:59:09.560Z 916cf31c-9ede-4540-886c-fa74a097d113 verbose: AuthenticationMiddlewareFactory:createAuthenticationMiddleware() Validating authentications.
2023-03-29T19:59:09.560Z 916cf31c-9ede-4540-886c-fa74a097d113 info: TableSharedKeyLiteAuthenticator:validate() Start validation against account shared key authentication.
2023-03-29T19:59:09.560Z 916cf31c-9ede-4540-886c-fa74a097d113 info: TableSharedKeyLiteAuthenticator:validate() Request doesn't include valid authentication header. Skip SharedKeyLite authentication.
2023-03-29T19:59:09.560Z 916cf31c-9ede-4540-886c-fa74a097d113 info: TableSharedKeyAuthenticator:validate() Start validation against account shared key authentication.
2023-03-29T19:59:09.561Z 916cf31c-9ede-4540-886c-fa74a097d113 info: TableSharedKeyAuthenticator:validate() [STRING TO SIGN]:"POST\n\nmultipart/mixed; boundary=batch_1627bcfa-7bdf-453e-b432-681c501eaf02\nWed, 29 Mar 2023 19:59:09 GMT\n/devstoreaccount1/devstoreaccount1/$batch"
2023-03-29T19:59:09.561Z 916cf31c-9ede-4540-886c-fa74a097d113 info: TableSharedKeyAuthenticator:validate() Calculated authentication header based on key1: SharedKey devstoreaccount1:8FhGLJr9WYAxBMf3ioS3NVEal80V/w9uAUcZh3M/ibI=
2023-03-29T19:59:09.561Z 916cf31c-9ede-4540-886c-fa74a097d113 info: TableSharedKeyAuthenticator:validate() Signature 1 matched.
2023-03-29T19:59:09.561Z 916cf31c-9ede-4540-886c-fa74a097d113 verbose: DeserializerMiddleware: Start deserializing...
2023-03-29T19:59:09.561Z 916cf31c-9ede-4540-886c-fa74a097d113 info: HandlerMiddleware: DeserializedParameters={"version":"2018-03-28","options":{"requestId":"99e5ad31-b826-4968-9430-3fb53adfee3f","dataServiceVersion":"3.0;"},"multipartContentType":"multipart/mixed; boundary=batch_1627bcfa-7bdf-453e-b432-681c501eaf02","contentLength":27956,"body":"ReadableStream"}
2023-03-29T19:59:09.562Z 916cf31c-9ede-4540-886c-fa74a097d113 debug: TableHandler:batch() Raw request string is "--batch_1627bcfa-7bdf-453e-b432-681c501eaf02\r\nContent-Type: multipart/mixed; boundary=changeset_15c62bcd-623d-4952-9314-a41c283d2a95\r\n\r\n--changeset_15c62bcd-623d-4952-9314-a41c283d2a95\r\nContent-Type: application/http\r\nContent-Transfer-Encoding: binary\r\n\r\nPUT http://<IP_ADDRESS>:10002/devstoreaccount1/ArchiveStreamsTable(PartitionKey='077b857e-0bf1-46e8-be9d-e3e50080cd72',RowKey='0c917b01-b84b-48bf-bf5e-1e27e8a894c3') HTTP/1.1\r\nAccept: application/json;odata=minimalmetadata\r\nContent-Type: application/json\r\nDataServiceVersion: 3.0;\r\nIf-Match: W/\"datetime'2023-03-29T19%3A10%3A38.9986970Z'\"\r\n\r\n{}\r\n--changeset_15c62bcd-623d-4952-9314-a41c283d2a95\r\nContent-Type: application/http\r\nContent-Transfer-Encoding: binary\r\n\r\nPUT http://<IP_ADDRESS>:10002/devstoreaccount1/ArchiveStreamsTable(PartitionKey='077b857e-0bf1-46e8-be9d-e3e50080cd72',RowKey='88ae395d-ce0c-4d3d-afdb-cebfed30fb9b') HTTP/1.1\r\nAccept: application/json;odata=minimalmetadata\r\nContent-Type: application/json\r\nDataServiceVersion: 3.0;\r\nIf-Match: W/\"datetime'2023-03-29T19%3A10%3A38.9986987Z'\"\r\n\r\n{}\r\n--changeset_15c62bcd-623d-4952-9314-a41c283d2a95\r\nContent-Type: application/http\r\nContent-Transfer-Encoding: binary\r\n\r\nPUT http://<IP_ADDRESS>:10002/devstoreaccount1/ArchiveStreamsTable(PartitionKey='077b857e-0bf1-46e8-be9d-e3e50080cd72',RowKey='4c76d3fe-0c56-487e-bb14-63aca63bbec2')

..
..
..
So on upto 60 records.

 HTTP/1.1\r\nAccept: application/json;odata=minimalmetadata\r\nContent-Type: application/json\r\nDataServiceVersion: 3.0;\r\nIf-Match: W/\"datetime'2023-03-29T19%3A10%3A38.9987144Z'\"\r\n\r\n{}\r\n--changeset_15c62bcd-623d-4952-9314-a41c283d2a95\r\nContent-Type: application/http\r\nContent-Transfer-Encoding: binary\r\n\r\nPUT http://<IP_ADDRESS>:10002/devstoreaccount1/ArchiveStreamsTable(PartitionKey='077b857e-0bf1-46e8-be9d-e3e50080cd72',RowKey='dad0038b-092f-419a-b818-455f1d9f21ba') HTTP/1.1\r\nAccept: application/json;odata=minimalmetadata\r\nContent-Type: application/json\r\nDataServiceVersion: 3.0;\r\nIf-Match: W/\"datetime'2023-03-29T19%3A10%3A38.9987145Z'\"\r\n\r\n{}\r\n--changeset_15c62bcd-623d-4952-9314-a41c283d2a95--\r\n--batch_1627bcfa-7bdf-453e-b432-681c501eaf02--\r\n"
2023-03-29T19:59:09.562Z 916cf31c-9ede-4540-886c-fa74a097d113 error: ErrorMiddleware: Received an error, fill error information to HTTP response
2023-03-29T19:59:09.562Z 916cf31c-9ede-4540-886c-fa74a097d113 error: ErrorMiddleware: ErrorName=Error ErrorMessage=Couldn't extract path from sub-Request:
 Content-Type: application/http
Content-Transfer-Encoding: binary

PUT http://<IP_ADDRESS>:10002/devstoreaccount1/ArchiveStreamsTable(PartitionKey='077b857e-0bf1-46e8-be9d-e3e50080cd72',RowKey='0c917b01-b84b-48bf-bf5e-1e27e8a894c3') HTTP/1.1
Accept: application/json;odata=minimalmetadata
Content-Type: application/json
DataServiceVersion: 3.0;
If-Match: W/"datetime'2023-03-29T19%3A10%3A38.9986970Z'"

Have you found a mitigation/solution?
No

@PrasantJillella
We recent has a fix released for a similar issue in 3.23.0.
Would you please upgrade Azurite, and try again?

Hi
Sure, I can check and get back. Thank you.

Hi, The issue is still happening in my case.
I think the ErrorMessage in the other ticket mentioned by you is:
ErrorMessage=URI malformed ErrorStack="URIError: URI malformed\n    at decodeURI (<anonymous>)\
The ErrorMessage that I see in my case is:
ErrorMessage=Couldn't extract path from sub-Request:  Content-Type: application/http Content-Transfer-Encoding: binary

@edwin-huber
Do you have any idea why the error happen?
It looks the error is reported here: https://github.com/Azure/Azurite/blob/704e39b568faf1a80751bbb32683d2abae8396e2/src/table/batch/TableBatchSerialization.ts#L94

It looks like it might be failing due to the empty JSON in the sub request.

I would need to debug it to be 100% sure.

Hi
Checking to see if there was any update.
Thank you.

We have the same issue in Version 3.23.0.
The following error happened:
2023-04-21T13:33:12.144Z 0039946d-f463-463c-879f-cf108d743a61 error: ErrorMiddleware: ErrorName=Error ErrorMessage=Couldn't extract path from sub-Request:
 Content-Type: application/http
Content-Transfer-Encoding: binary

MERGE http://<IP_ADDRESS>:10002/devstoreaccount1/Permissions(PartitionKey='2',RowKey='View') HTTP/1.1
Accept: application/json;odata=minimalmetadata
Content-Type: application/json
DataServiceVersion: 3.0;

{}

We also only have a partiotion and row key in the entity, nothing else. So maybe the empty json is the problem here. @edwin-huber.
How is the progress at the moment for this issue?

We have the same issue in Version 3.23.0.
The following error happened:
2023-04-21T13:33:12.144Z 0039946d-f463-463c-879f-cf108d743a61 error: ErrorMiddleware: ErrorName=Error ErrorMessage=Couldn't extract path from sub-Request:
 Content-Type: application/http
Content-Transfer-Encoding: binary

MERGE http://<IP_ADDRESS>:10002/devstoreaccount1/Perm(PartitionKey='2',RowKey='View') HTTP/1.1
Accept: application/json;odata=minimalmetadata
Content-Type: application/json
DataServiceVersion: 3.0;

{}

We also only have a partiotion and row key in the entity, nothing else. So maybe the empty json is the problem here. @edwin-huber.
How is the progress at the moment for this issue?

oh ok, I am waiting for a fix as well.

Hi @edwin-huber
Checking to see if verifying and fixing the issue would take longer, Just want to review options with my team
for unblocking our azurite migration task.
Thank you.

I have a fix for this... will be done in the next PR from me

This appears to be occurring because the JSON body is left empty in some SDKs.
I am currently unable to reproduce with the instructions above.
I was unable to find an SDK and code to replicate the issue to confirm that the fix works as intended.
Can someone share the code and framework / module / Package SDK version you are using to get this error?
The following is not causing the issue:
var batch = new TableBatchOperation();
batch.Insert(new TableEntity(pk,"rk1"));
batch.Insert(new TableEntity(pk, "rk2"));
batch.Insert(new TableEntity(pk, "rk3"));

I am using Orleans, but by looking at the code it does not at all seem that it is because of an/the empty JSON body. It is failing at this line: https://github.com/Azure/Azurite/blob/62ea623a79ba6860f49a30f66971b67edd5991c6/src/table/batch/TableBatchSerialization.ts#L80, my URL does not contain the account name in the path (am using production-style URLs) and that is why the implementation of extractPath https://github.com/Azure/Azurite/blob/62ea623a79ba6860f49a30f66971b67edd5991c6/src/table/batch/TableBatchSerialization.ts#L78C27-L78C38 is failing because of its incorrect implementation here: https://github.com/Azure/Azurite/blob/62ea623a79ba6860f49a30f66971b67edd5991c6/src/table/batch/BatchSerialization.ts#L76. You can see how the implementation assumes that for sub-requests in a batch, the path in the URL ALWAYS contains the account name. Am I missing something?

This issue was opened for the error: Couldn't extract path from sub-Request .
Which is caused as described above.
It appears that the error you are referencing is different: Couldn't extract path from URL in sub-Request.
Could you open a separate issue for that (if there is not one already)?

Ahh, indeed. You are right, thank you! I will open a new issue.


chore(configure): be more defensive about SpiderMonkey location

The configure script does not check whether SpiderMonkey actually exists at the presumed location.  This may go wrong when the user has a version different from the default one.  The mistake is spotted only in build time, indirectly, via missing header files.  That is too late and it may not be evident for the user what the problem is.
Add a user-friendly safeguard for Unix-like systems to prevent this from happening.

Hi, we should always port changes in configure and Makefile to the windows powershell scripts too…

Oh, and it seems I also did not consider the --skip-deps flag either.

Hi @big-r81 : I tried to mention that this is for Unix-based systems -- I do not have a Windows instance around to experiment with the changes.  But I can take a chance with that.

It's only a reminder, because it ends in like this and this #4376 and #4377. We hopefully have our Windows CI soon in our Jenkins-Pipeline...

Sure, I am happy to consider the Windows bits as well.  Maybe I can find a Windows system somewhere to poke around with this.

@big-r81 do you have any ideas why this current version fails on the CI?  Initially I thought that is due to --skip-deps but by browsing the code, it seems to be unrelated.

Hrm, that is interesting.  I have checked the corresponding rebar scripts and only these paths were included on the C compiler flags.

I extracted the commit which modified the Jenkinsfile.pr into a separate PR to allow this PR to run in the CI again https://github.com/apache/couchdb/pull/4383


Japanese integration

index and locale setting

@aldredb Could you review and merge it?

@chie8842  i don't have privilege to merge :(


New Yale Connect Bridge API Changes?

I came across this repository while trying to find a working plugin for Homebridge and my new Yale Connect Bridge. I have a Yale Conexis L1, with the new Orange Module and a AC-R1 WiFi Bridge. I understand this is the same bridge as the August locks.  None of the currently available plugins seem to work:
homebridge-yale-connect
homebridge-yale-home
homebridge-yale-lock
homebridge-august
I've been trying to identify the request and responses using Fiddler, Charles and MITM and I was hoping to tweak an existing one to get the lock in to HomeKit. I've managed to get the Web Auth working in Postman using:
https://account-api.aaecosystem.com/login
https://account-api.aaecosystem.com/validate/email (or phone)
https://account-api.aaecosystem.com/user <-- Can successfully GET this and it returns some JSON which includes account details and profile pic url
However the rest of the API calls like /user/me, /user/locks/mine and /homes/mine etc return:
{
    "code": "ResourceNotFound",
    "message": "/user/locks/mine does not exist"
}

But when using the Yale Home App it calls api.aaecosystem.com (without the account- on the front), I also tried this base URL and I can auth but again none of the additional calls seem to work.
I was hoping I could use the Yale Home App on my phone with MITM or Charles to identify the lock and the unlock commands but it appears to have some additional TLS security and rejects the certificates. Have you had any dealings with this, or is there anything else I can help you with to try and get this working against the newer Yale API?

Hm, all the api calls are working for me with api.aaecosystem.com. Can you share the exact requests you are sending?
You can easily check if the endpoints exists with curl or your browser, without getting an api token
E.g.
https://api.aaecosystem.com/users/locks/mine returns {"code":"MissingParameter","message":"x-august-api-key header is required"} => it exists
while https://api.aaecosystem.com/users/locks/minefoo returns {"code":"ResourceNotFound","message":"/users/locks/minefoo does not exist"} => does not exist

I'm always taking the headers from the HASS August Integration log output, so I've never done the authentication myself. The headers I'm using with https://api.aaecosystem.com look like the following
Host: api.aaecosystem.com
Accept-Version: 0.0.1 (Or 4.0.0 for the activities API endpoint)
x-august-api-key: 1234abcd-12ab-12ab-12ab-123456abcdef
Content-Type: application/json; charset=UTF-8
User-Agent: August/Luna-22.17.0 (Android; SDK 31; gphone64_arm64)
x-august-country: US
x-august-branding: yale
x-august-access-token: eyJ0...JWT with the Infos installId,region,applicationId,userId,vInstallId,vPassword,vEmail,vPhone,hasInstallId,hasPassword,hasEmail,hasPhone,isLockedOut,captcha,email,phone,expiresAt,temporaryAccountCreationPasswordLink,iat,exp,step,LastName,FirstName...IjQ

For /users/locks/mine only Accept-Version, X-August-Api-Key and X-August-Access-Token are required. Only when having an invalid X-August-Api-Key the error message you get is returned. But as I've never done the auth flow, I don't know what might have gone wrong there


nixos/gerrit: init

Motivation for this change
Gerrit is available in nixpkgs, but isn't particularly easy to set up.
A number of people have asked me to share and/or upstream the Gerrit NixOS module we're using at @mutable.
This is an early draft, and I'd prefer not to merge this until we've refined it a bit more.
It depends on #75584, so it can't be merged by itself anyway.
Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

cc @flokli @yorickvP

good timing, I started writing a Gerrit NixOS module last week. I will take a look and see how both efforts could be merged.

@edef1c I had too much changes to group them into logical commit so I made a separate PR. Hope that's ok! https://github.com/NixOS/nixpkgs/pull/82929


error: Could not compile libflate.

Seems like a bug, but I'm not in any way familiar with Rust. I have no idea how to solve this.
   Compiling libflate v0.1.11
error: `pub(restricted)` syntax is experimental (see issue #32409)
   --> /home/d/.cargo/registry/src/github.com-1ecc6299db9ec823/libflate-0.1.11/src/zlib.rs:202:9
    |
202 |     pub(crate) fn read_from<R>(mut reader: R) -> io::Result<Self>
    |         ^^^^^

error: `pub(restricted)` syntax is experimental (see issue #32409)
  --> /home/d/.cargo/registry/src/github.com-1ecc6299db9ec823/libflate-0.1.11/src/gzip.rs:98:5
   |
98 | pub(crate) struct Trailer {
   |     ^^^^^

error: `pub(restricted)` syntax is experimental (see issue #32409)
   --> /home/d/.cargo/registry/src/github.com-1ecc6299db9ec823/libflate-0.1.11/src/gzip.rs:370:9
    |
370 |     pub(crate) fn read_from<R>(mut reader: R) -> io::Result<Self>
    |         ^^^^^

error: `pub(restricted)` syntax is experimental (see issue #32409)
  --> /home/d/.cargo/registry/src/github.com-1ecc6299db9ec823/libflate-0.1.11/src/deflate/mod.rs:29:5
   |
29 | pub(crate) mod symbol;
   |     ^^^^^

error: `pub(restricted)` syntax is experimental (see issue #32409)
  --> /home/d/.cargo/registry/src/github.com-1ecc6299db9ec823/libflate-0.1.11/src/non_blocking/deflate/decode.rs:72:9
   |
72 |     pub(crate) fn bit_reader_mut(&mut self) -> &mut TransactionalBitReader<R> {
   |         ^^^^^

error: `pub(restricted)` syntax is experimental (see issue #32409)
   --> /home/d/.cargo/registry/src/github.com-1ecc6299db9ec823/libflate-0.1.11/src/bit.rs:143:9
    |
143 |     pub(crate) fn state(&self) -> BitReaderState {
    |         ^^^^^

error: `pub(restricted)` syntax is experimental (see issue #32409)
   --> /home/d/.cargo/registry/src/github.com-1ecc6299db9ec823/libflate-0.1.11/src/bit.rs:150:9
    |
150 |     pub(crate) fn restore_state(&mut self, state: BitReaderState) {
    |         ^^^^^

error: `pub(restricted)` syntax is experimental (see issue #32409)
   --> /home/d/.cargo/registry/src/github.com-1ecc6299db9ec823/libflate-0.1.11/src/bit.rs:171:5
    |
171 | pub(crate) struct BitReaderState {
    |     ^^^^^

error: aborting due to 8 previous errors

error: Could not compile `libflate`.
Build failed, waiting for other jobs to finish...
error: build failed

Which version of Rust are you using? I can't reproduce this with the latest rustc stable (1.21). The error points to rust-lang/rust#32409, which I believe stabilized in 1.18.
I should add a note to the README that Rust 1.18 is the minimum required version.

Oh, yes that struck my mind when i woke up this morning. I installed the latest from the Ubuntu repository.
· rustc --version
rustc 1.17.0

Of course I should have checked the version since its almost always out of date. It works now. Oh well!
By the way, I also had to install a dev package regarding openssl-sys. Maybe you should add a note about that also.
Many thanks! :)


⚠ Bofrost.lu has degraded performance

In d988d6f, Bofrost.lu (https://www.bofrost.lu) experienced degraded performance:

HTTP code: 200
Response time: 1224 ms

Resolved: Bofrost.lu performance has improved in e2e54dd after 14 minutes.


Additional terrain data sets in The Netherlands

As you can see here, the AHN2 dataset  covers the whole of The Netherlands, at about 16 points per m2. There are different versions available (different resolutions, with or without buildings, etc.). They are currently also working on the AHN3 which has more recent data.
It would be great if this dataset could be included. If needed, I could help (e.g. translate relevant documents).

This would be better data than the 30m EU data in #132.


Fix beefy mock ecdsa keys

Compressed ECDSA keys requires to have a valid first byte (0x02 || 0x03) in order to allow public key recovery.
Nevertheless the test was working because of the unwrap_or_default() at the end of the conversion method (i.e. the invalid keys were converted to an empty vector).

It would actually be nice to have a way that the tests fails when the wrong data is passed, but that is probably to complicated :P

Nevertheless the test was working because of the unwrap_or_default() at the end of the conversion method (i.e. the invalid keys were converted to an empty vector).

...this seems to me like something which should not exist, that is - a fallible conversion which instead of returning None or panicking just silently (besides printing out a log) fails. Couldn't we remove this impl and just make a TryFrom one?

...this seems to me like something which should not exist, that is - a fallible conversion which instead of returning None or panicking just silently (besides printing out a log) fails. Couldn't we remove this impl and just make a TryFrom one?

@koute
Conversion from a well formed ECDSA pubkey to ETH address should be infallible.
The "problem" here (not at all a problem, more a design choice) is the ECDSA constructor (along with all the other crypto objects constructors) is not "picky".
At the moment all crypto objects in "sp_core" have public constructors that do not validate the input. Are only documented to be GIGO (garbage-in-garbage-out) and the only check performed is on input length (from this PR, before a panic was fired).
A more pedantic constructor should also check the following:

not every random sequence of bytes is a valid key or signature, these are required to be points on the chosen curve.
compressed ECDSA requires the first byte to be 0x02 or 0x03 (depending on the y point coordinate, see http://www.secg.org/sec1-v2.pdf @ pag10 for details).

Perhaps this "quick and dirty" constructor are intended to be weak? Don't know, but maybe for performance reasons on internal usage. E.g. validation of a compressed key should reconstruct the y coordinate, and that is not a snap, some heavy algebraic computation should be performed on arbitrary long integers...)
That said, this PR is intended to address the beefy tests only. But IMO, given that these constructors are public and not unsafe, a follow up issue should be opened to introduce more robust versions of crypto objects constructors (to be used together with the current - unsafe - ones).


Failed to resolve TapTargetView

Error:Failed to resolve: com.github.KeepSafe:TapTargetView:-SNAPSHOT
All my packs started showing this error today and I have no idea how to fix it. But from what I can see it is called from the library itself and not from the pack..
Any chance you know what I'm doing wrong?
Thanks
daLight

I have the same problem, haven't figured it out yet.

Just try to do a gradle sync with internet on, then run or build signed apk.

Hey, that didn't work for me; it fails to sync Gradle and I still get that error. I'm not sure what's going on.
Thanks for your help

This is not related with the library, probably Android Studio didn't compile the project correctly. Try to clean the dependencies.

Make sure you have internet connection
Take a look on bottom left of Android Studio, open Terminal

Type gradlew --refresh -dependencies, then enter
Wait until it finish
Sync project with gradle files, wait until finish
Run the app or build signed apk

Thank you for the quick and informative response. Unfortunately it didn't work for me. I'm fairly new to this, so I'm not sure what's going on with it.

File C:\Users\xxx.android\repositories.cfg could not be loaded.
FAILURE: Build failed with an exception.

What went wrong:
A problem occurred configuring project ':app'.

Could not resolve all dependencies for configuration ':app:_debugApkCopy'.
Could not find com.github.KeepSafe:TapTargetView:-SNAPSHOT.
Required by:
project :app > com.github.danimahardhika.candybar-library:core:-SNAPSHOT

Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

Which release of candybar are you using?

3.3.2, from candybar-sample

@tfarina223 Just tried to import sample project, it's working just fine on my side. I'm pretty sure it's Android Studio problem, it seems like Android Studio didn't compile the project correctly.

Try to restart your Android Studio, close then open again.
Make sure you have internet connection on
Do the step from post above

EDIT: Sorry it should be gradlew --refresh-dependencies not gradlew --refresh -dependencies. No space after "--refresh".

Take a look on bottom left of Android Studio, open Terminal

Type gradlew --refresh-dependencies, then enter
Wait until finish

Make sure to wait until it finish, it will takes a while. After finished the terminal will shown a message like image below, then proceed to step 5.

Sync project with gradle files, wait until finish
Run the app or build signed apk

Unfortunately it didn't work for me, I restarted Android Studio and my PC to be sure and I don't see what you showed in the second screenshot, it continues to show the error message I mentioned before.

Terminal instructions give me the same thing... so weird...
A problem occurred configuring project ':app'.

Could not resolve all dependencies for configuration ':app:_debugApkCopy'.
Could not find com.github.KeepSafe:TapTargetView:-SNAPSHOT.
Required by:
project :app > com.github.danimahardhika.candybar-library:core:3.3.2

I also get this warning when doing the refresh :
NDK is missing a "platforms" directory.
If you are using NDK, verify the ndk.dir is set to a valid NDK directory.  It is currently set to D:\Users****\AppData\Local\Android\sdk1\ndk-bundle.
If you are not using NDK, unset the NDK variable from ANDROID_NDK_HOME or local.properties to remove this warning.

I'm also getting the same error. Everything was working fine until now. There are no errors on my end. Seeing that there are more than a couple people having this issue, it's something to be looked into.

@Seledity @dalight13 @tfarina223 Try release 3.3.3

Works for me, thanks a bunch!

After updating to CandyBar 3.3.3, the issue has been resolved. Thanks!

After updating to 3.3.3, everything is now resolved. Thank you very much!!!


Helm: Option to add additional pod specs to deployments

What is the goal / desired outcome?
Add the ability to customize the pachd deployment with additional podspecs within the helm chart (nodeSelector, securityContext, etc)
If there is a way to accomplish this today via workaround, what does that require?
use helm template and then apply a patch with kustomize
(Optional) What is your proposal for a feature to solve this?
add a section to the helm chart for addtional custom pod specs

Environment?:

Kubernetes version (use kubectl version):
Pachyderm CLI version (use pachctl version):
Cloud provider (e.g. aws, azure, gke) or local deployment (e.g. minikube vs dockerized k8s):
OS (e.g. from /etc/os-release):
Others:

Not just for pachd but for all the deployments/stateful sets


ubpf.h: Add <stdbool.h> to external header file

Commit 089f627 added the bool type to an external function but did not
add the approriate header to define that type. This still allowed the
library to be built because <stdbool.h> was included in the internal
library source files. However it causes issues when linking to this
library from other programs.
Fixes #38

Coverage remained the same at 96.049% when pulling e3c5c4a9cdca509529059c392f4e3da70f4b0a88 on sbates130272:stdbool-fix into 089f6279752adfb01386600d119913403ed326ee on iovisor:master.

Thanks!

Thanks!


super covariance checks not enforced when calling through extension symbols

Two problems here:
class M {
  int compareTo(int x) => x.isEven ? 1 : -1;
}
class C extends M implements Comparable<int> {}
main() {
  Comparable<Object> c = new C();
  print(c.compareTo(c));
}

We don't seem to generate the extension member at all in this case.
For mixins, we do:

class M {
  int compareTo(int x) => x.floor();
}
class C extends Object with M implements Comparable<int> {}

main() {
  Comparable<Object> c = new C();
  print(c.compareTo(c));
}

but we don't generate a symbol for the covariance check, so you can bypass it completely (and get an error about the floor method not being on our C instance.

I'm actually thinking we should get rid of the extension/non-extension calling convention, and just use symbols for member names that are known to exist on one of our native SDK types. It will mean more symbols (like get length will always be symbolized), but it also removes a lot of duplicate names we're putting on the class. Seems like a net win for simplicity of the compiler.

Here's another one using the mixin application syntax:
class M {
  int compareTo(x) => 42;
}
class C = Object with M implements Comparable;

main() {
  Comparable c = new C();
  print(c);
  print(c.compareTo(c));
}

after https://dart-review.googlesource.com/c/sdk/+/5140, it behaves the same as the initial repro


LaMEM with FastScape in fortran version

LaMEM with FastScape in Fortran version
A static library of FastScape in the Fortran version is needed when compiled, or a shared library of FastScape with the path is included in the *.out
new modes of compile:
# make mode=deb all (compile debug version of LaMEM and put in /bin/deb)
# make mode=opt all (compile optimized version of LaMEM and put in /bin/opt)
# make all          (compile optimized version of LaMEM and put in /bin/opt)
# make mode=optFS all (compile optimized version of LaMEM with fastscape and put in /bin/optFS, and don't use FastScape)
# make mode=optFS all surface=SURFACE=1 (compile optimized version of LaMEM with fastscape and put in /bin/optFS, and don't use FastScape)
# make mode=optFS all surface=SURFACE=2 (compile optimized version of LaMEM with fastscape and put in /bin/optFS, and use FastScape)

Does this PR replace PR #27? We do not need two versions of FastScape in LaMEM; one is fine. Given that it seems that the fortran version has more functionality currently, I would suggest to focus on that one.

also, I don't understand this:

(compile optimized version of LaMEM with fastscape and put in /bin/optFS, and use FastScape)

using or not using FastScape should be specified in the *.dat input file, not at compile time. Or is this not possible?

Does this PR replace PR #27? We do not need two versions of FastScape in LaMEM; one is fine. Given that it seems that the fortran version has more functionality currently, I would suggest to focus on that one.

Yes, I'll focus on the Fortran version, except when the Fortran version is much slower than the Cpp version. I noticed that it was a little slower when using the Fortran version, I'll try to speed it up.

Does this PR replace PR #27? We do not need two versions of FastScape in LaMEM; one is fine. Given that it seems that the fortran version has more functionality currently, I would suggest to focus on that one.

Yes, I'll focus on the Fortran version, except when the Fortran version is much slower than the Cpp version. I noticed that it was a little slower when using the Fortran version, I'll try to speed it up.

Ok, in that case I suggest to close PR #27. If the Cpp version of FastScape gets more functionality in the future we can replace that

Does this PR replace PR #27? We do not need two versions of FastScape in LaMEM; one is fine. Given that it seems that the fortran version has more functionality currently, I would suggest to focus on that one.

Yes, I'll focus on the Fortran version, except when the Fortran version is much slower than the Cpp version. I noticed that it was a little slower when using the Fortran version, I'll try to speed it up.

Ok, in that case I suggest to close PR #27. If the Cpp version of FastScape gets more functionality in the future we can replace that

OK, I'll close it.

also, I don't understand this:

(compile optimized version of LaMEM with fastscape and put in /bin/optFS, and use FastScape)

using or not using FastScape should be specified in the *.dat input file, not at compile time. Or is this not possible?

it's possible, I'll try that. I plan to load the parameters of the surface process and surface mode at first, but there are still some bugs so I don't upload it now.

yes, please do that. I do not like that you have to specify that at compile time. Ideally, you could add this:
 erosion_model      = 3                # erosion model [3-FastScape]

an error message should be given if erosion_model=3 is selected, and the code was not compiled with FastScape support.
You can specify all FastScape parameters in a block such as:
<FastScapeStart>
  kf = 2e-5
  kd = 1e-1
  kfsed = -1.0
<FastScapeEnd>

also, I don't understand this:

(compile optimized version of LaMEM with fastscape and put in /bin/optFS, and use FastScape)

using or not using FastScape should be specified in the *.dat input file, not at compile time. Or is this not possible?

it's possible, I'll try that. I plan to load the parameters of the surface process and surface mode at first, but there are still some bugs so I don't upload it now.

yes, please do that. I do not like that you have to specify that at compile time. Ideally, you could add this:
 erosion_model      = 3                # erosion model [3-FastScape]

an error message should be given if erosion_model=3 is selected, and the code was not compiled with FastScape support.
You can specify all FastScape parameters in a block such as:
<FastScapeStart>
  kf = 2e-5
  kd = 1e-1
  kfsed = -1.0
<FastScapeEnd>

ok, I'll do that

there is no need to close the PR every time you add new features to the branch; you can simply push the changes to your local branch and it will update this pull request


Revert "kbnm: Cross-platform support"

Reverts keybase/client#6515

Hm reverting an extra commit for some reason, doing it manually.


Enable CORS into gedis http endpoint

We need an easy way to configure CORS on gedis http interface.
When calling gedis via port 9201, this service should allow a configurable Access-Control-Allow-Origin header.
This allow control list of which website can remotely query the gedis using ajax. At least we should be able to configure it to * to allow everything :p

@maxux from past import xD
https://github.com/threefoldtech/jumpscaleX_core/commit/9f6c75d5f239985dddf26b6ee37bdf97cd8e547e


Feature request: in addition to axis=0 | 1, also add axis='index' | 'columns' as valid options

Pandas also allow for this.  See their github closed issue #9658.
I know it's not a big issue, but for someone not coming from numpy background, makes things easier than trying to remember which axis 0 or 1 is.

Fixed in https://github.com/HHammond/PrettyPandas/issues/33

Actually fixed in https://github.com/HHammond/PrettyPandas/pull/48
I did an overhaul of the formatter API to make it compatible with Pandas' style.format and I fixed the precision issues at the same time.

'columns', 'index', and 'rows' all work for indexing now.


feat(leaving-ibm): v2 style updates

Related Ticket(s)
Closes #10856
Description
Style / layout break in Leaving IBM Component in V2
Changelog
Changed

button element changed
Styles updated to match the latest

@sangeethababu9223 this is looking really good from a design perspective! A few fixes I found:

[ ] The  focus state for the link is getting cut off when (tabbing into the link) see the screen shot attached

[ ] I cannot interact with the link within the modal, was it like that in the v1 version?

[ ] There are no interactive states on the link within the modal (hover, focus, click) they should match the standard link states, you can see them documented in the Carbon link website docs or CWC

[ ] The focus should probably be trapped within the modal as it is within the v1 version, right now I can use the keyboard to tab outside of the modal and navigate around on the page under the overlay which will be confusing for the users.

[ ] On mobile the heading and close button are getting cut off at the top of the browser, while there is a gap at the bottom of the browser and I can see overlay. I am expecting to see the same behavior as the v1 version where the heading is not cut off and the button is pinned to the bottom and I should not see the overlay.

Current mobile
Expecting

@oliviaflory,
All of the issues except the focus trap not working in modal should be fixed now.
Focus trap seems to be an issue with Modal component. I've created a separate ticket for this: https://github.com/carbon-design-system/carbon-for-ibm-dotcom/issues/10966
Will work on that once this issue is resolved.

Thanks @oliviaflory,
I faced issue with focus trap in in both Safari & Firefox. I'll look into this for the other ticket.


Factor out HIV1B-specific code in the CLI interface

These commits factor HIV1B specific code in the CLI package into a separate package. This is almost 100% moving code around, with a few new data types to make passing information from the genome-specific alignment procedure into the generic alignment procedure less verbose.

It looks like you did something I planned to do for a long time. Just give me a few days to review the code and I'll merge it.
Thanks!

Cool! 😊
I hope it's not too far from what you intended. I'm happy to make changes
if it would make the PR for better with the rest of the project.
On Fri, Feb 16, 2018 at 11:28 PM Philip Tzou<EMAIL_ADDRESS>wrote:

It looks like you did something I planned to do for a long time. Just give
me a few days to review the code and I'll merge it.
Thanks!
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/hivdb/nucamino/pull/4#issuecomment-366423671, or mute
the thread
https://github.com/notifications/unsubscribe-auth/ABLoMxt_426h7DgAFr5cMkXB9CTxp5zIks5tVn-ngaJpZM4SJGd5
.

@neganp My original intention was to make a general command which can accept an alignment profile file (probably in YAML format) which includes the reference, gap penalty scores, positional indel bonus/penalty scores.
I just have a quick look of your approach. I think it is getting closer to my original thoughts and we can definitely develop the profile file support based on your version.
I'd also like to make a few changes to the subcommands. We will have some built-in profiles like HIV1B and HCV1A. However, it will not be subcommands in the future version. Here's my suggestion:
# load a profile from local disk
nucamino --profile /path/to/a/local/profile.yml [other options]

# load a built-in profile, by adding an initial "@" to indicate it
nucamino --profile @hiv1b [other options]

Let me know what's in your mind. Thanks!

I think I can see how that would work. The profile for a strain would contain:

reference gene sequences
positional indel scores
penalties for gaps, indels, and stop codons
maybe metadata about the virus (e.g. Genebank accession numbers for reference sequences)

The built-in profiles could be written in the same format and embedded in the compiled program.
If that sounds about right, I could work on making those changes after I've added HCV support (that way we have two example profiles to work from instead of just one).

You are totally right and it will be a major release of NucAmino.
On Mon, Feb 19, 2018 at 9:38 AM Nathaniel Knight<EMAIL_ADDRESS>wrote:

I think I can see how that would work. The profile for a strain would
contain:

reference gene sequences
positional indel scores
penalties for gaps, indels, and stop codons
maybe metadata about the virus (e.g. Genebank accession numbers for
reference sequences)

The built-in profiles could be written in the same format and embedded in
the compiled program.
If that sounds about right, I could work on making those changes after
I've added HCV support (that way we have two example profiles to work from
instead of just one).
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/hivdb/nucamino/pull/4#issuecomment-366761138, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AAxbiZYl_6AEND7BP3YOhlUPsvFFVkZLks5tWbGugaJpZM4SJGd5
.

@neganp Thank you in advance for the contributions you did and will do to this project. Let me know when you finished :)

You're welcome; I'm happy to be able to contribute :smile:
The email is because I fat-fingered a git push and pushed to my master instead of my feature branch. This PR is ready to merge; I've got another one in the works for adding HCV support. It's nearly ready, I'm just validating that it can catch the InDels we're interested in.

@neganp I have merged this pull request.
However, I'll hold for release until we finished the profile feature.

Thanks! I'm happy to wait for a release. I'll probably have two more PRs: one for HCV1A support and one to add position-specific indel scores.


RFC: Revise React Router example with some future plans

React Router v4 has a more component based API. It also makes it easier to work directly with history. This PR is an exploration of what future Microcosm apps might look like.
Highlights
Flow
I've added FlowTypes. I want first class support for them. I still have to figure some stuff out for the register() method, which is quite dynamic, but I'm happy so far.
Domains are responsible for CRUD
In the future, I would like domains to own management of their data concerns. They have their own actions. What we call actions now are more like controllers:
/**
 * @flow
 */
import uid from 'uid'
import Domain from './domain'

export type List = {
  id?: string,
  name: string
}

class Lists extends Domain {
  static create(params): List {
    return { id: uid(), ...params }
  }

  static destroy(id: string) {
    return id
  }

  register() {
    return {
      [Lists.create]: this.add,
      [Lists.destroy]: this.remove
    }
  }
}

export default Lists

Action based navigation
Effects can accept options. In this PR, I make a effect for routing. This lets us do navigation within actions:
export function addList(params) {
  return function*(repo) {
    let list = yield repo.push(Lists.create, params)

    yield repo.push(visit, `/lists/${list.id}`)
  }
}

Models
I want to reduce the logic inside of Presenters. Increasing the responsibility of actions is part of that, but I also am interested in how Presenters can compose model bindings together, pulling out a lot of that logic into discrete, easy to test, components:
export class ListWithCounts implements Model {
  call(_presenter, state) {
    const { lists, items } = state

    return lists.map(function(list) {
      let count = items.filter(i => i.list === list.id).length

      return set(list, 'count', count)
    })
  }
}

class ListIndex extends Presenter {
  getModel() {
    return {
      lists: new ListsWithCounts()
    }
  }

  render() {
    const { lists } = this.model
    // ...
  }
}

What's next
This is a work in progress. I don't expect this to merge. I would like to make a few improvements:

Add more sugar for sequential actions (#346)
Add more sugar for models. Could they use Observables? Could we use the Formula concept we've internally applied to a recent project?

Codecov Report

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

@@          Coverage Diff          @@
##           master   #348   +/-   ##
=====================================
  Coverage     100%   100%
=====================================
  Files          24     24
  Lines         860    860
=====================================
  Hits          860    860

Continue to review full report at Codecov.

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


Refactoring of dag_run_url for email reports

Close #1143 and #1150

@jermnelson Maybe we can pair on fixing the mock for this in the test_oclc_reports.py


update dbt schema

update dbt schema to version 2

Thanks @chaimt ! Just added a small change and seems to be working for me.


deployment won't start

Expected behavior
Docker images to pull and start from GUI, in the list of Docker Hub images
Actual behavior
We're sorry. There seems to be an error:
context canceled
Information about the Issue
Fresh install of docker-desktop for windows, followed the link in context menu of docker desktop, and downloaded a zip file which i moved to appropriate folder
Steps to reproduce the behavior

start kitematic
deploy images from docker hub list

fixed by NOT following the "download kitematic zip" from docker-desktop context menu (since it links to an older outdated version of kitematic)
downloaded newest version from kitematic github, and it worked


chore(): Make it compatible with angular-cli

Wow, this is huge! Thanks authors for this libraries.
I added default exports to be compatible with angular-cli ng install ng2-bootstrap command, you can checkout documentation about it.
I go through all components/directives and I hope I didn't miss anything.
I noticed you already have a bundler script which is needed to be compatible with angular-cli, so if this will be merged, this library will be completely compatible with angular-cli.

@jkuri thanks for your PR
can you please fix issues from npm t
and update PR?

Sure, tests now passed.

looks, good to me :) thanks!
have you tried to use it?

Not yet. If you can publish this to npm I can do it right away.

if you have local clon
you can do npm link in ng2-bootstrap folder
and npm link ng2-bootstrap in target folder
it should be accessable to ng-cli, if not it is reason to fix ng-cli )))

Sorry, cannot do that. cli prompts you after installing a library through npm. I tried pushing to my forked ng2-bootstrap all the compiled files and included bundles and then installing with ng install https://github.com/jkuri/ng2-bootstrap. It throws The package<EMAIL_ADDRESS>does not satisfy its siblings' peerDependencies requirements!.
You just give me an idea to write new command like ng reconfigure [package-name] or something likewise that will prompt you for actions on that lib after the library has already been installed.
After you will publish a new version to npm just ping me here and I will test it.

Btw, can you make https://github.com/valor-software/ng2-charts also compatible with angular-cli? It would be useful to me.
Also note that as of TypeScript 1.8 bundler script wont be needed anymore, I can then send a new PR for this.

yea, I know :)


Add Kate

https://cute-the-niini.itch.io/kate
https://kate.qteati.me/
https://github.com/qteatime/kate/

Maybe I missed something, is there an API document for kate?

https://docs.kate.qteati.me/dev/manual/api/index.html


Define Gamma parametrized measure

I tried to define a Gamma measure by copying and adapting the code from the Beta measure. Does that look right? What kind of tests should I add?

That was quick! I think my biggest concern here is making sure the parameterization is clear. I've mostly defaulted to what Distributions uses, to make it easy for people coming from that. I think here we could have one parameterization in terms of shape and scale, and another for shape and rate. Then we just need to check around (Distributions, Wikipedia, Stan, etc) to be sure the parameter names we choose are reasonable common.
As for tests, I think we should have a standardized one for anything with a distproxy, something like
function distributions_test(d)
    b = rootmeasure(d)
    x = rand(d)
    @test logdensity(d, b, x) ≈ logdensity(distproxy(d), x)
end

Here rootmeasure just applies basemeasure until it hits a fixpoint, so in most parameterized measure it's Lebesgue(ℝ).

Replicated in #147


maa-assistant-arknights: add dependency EmulatorExtras

Description of changes

upstream: https://github.com/MaaAssistantArknights/MaaAssistantArknights/pull/8939
fix: https://github.com/Cryolitia/nur-packages/actions/runs/9048315830
update beta to v5.3.0-beta.1 in order to test in advance
Things done

Built on platform(s)

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

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

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

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

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

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

[x] Fits CONTRIBUTING.md.

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

I have just noticed that the ./3rdparty/EmulatorExtras's license is No License.
Close this PR, skip the version, and modify on upstream.
Apologies.


resources: fix performance of serializers for OAI-PMH/search results

Adds is_verified to mappings due to update in Invenio-Communities.

Rely on index data for licenses, subjects, communities, affiliations, and licenses instead of querying.

Fixes datacite, dcat, csl, dublin core, marcxml and schema.org serializer performance (reduced from ~500 queries in an OAI-PMH page down to 5).

INCOMPATIBLE: Needs update of search mappings and reindexing of records.

Related to https://github.com/inveniosoftware/invenio-communities/pull/1122
Integrates #1712 and #1717
Closes https://github.com/inveniosoftware/invenio-rdm-records/issues/1069.

Merging, since only Python 3.9 failed because of not picking up invenio-communities v13.0.0 (but other build did and passed)


🔀 Merge compass-interface-core with compass-interface

Can't work out why JS files are showing as deleted and recreated, but merging this now -- will fix linting failures in a followup


React native support

It would be great if this package will support react native asyncstorage. Thank you

Hi @darknblack ,
This sounds really interesting and it shouldn't too had to implement as a custom driver for localforage.
If anyone is willing to try this, I expect that their code should look a bit like https://github.com/localForage/localForage-sessionStorageWrapper , essentially just properly setting the "_dbInfo.db"  property.

Hi @darknblack and @thgreasi,
we developed a solution for this problem, which might help you. Glad to read your feedback, if it helps.
Cheers!
https://github.com/aveq-research/localforage-asyncstorage-driver

That's nice @fohletex :+1:
I would be happy to link to that repo from our README and close this issue in case you are willing to open such a PR.
PS: It looks like you could inherit some pieces of the implementation from LF's async storage driver and just have to override a few methods in your custom driver, similarly to how https://github.com/thgreasi/localForage-cordovaSQLiteDriver/blob/master/lib/localforage-cordovasqlitedriver.js does it.

Thanks @thgreasi for your quick feedback. I am glad to see that it is helpful.
I wasn't sure where to link the repo in the README, since all other custom drivers are listed within the wiki. Thus, I added the link to our repository here:
https://github.com/localForage/localForage/wiki/Custom-Drivers
From my side the issue can be closed or do you really mean linking it in the README itself?
Regarding your other comment: I will have a look where we can better optimize the code. Expecting to solve it within the next week.
See you!

You're right @fohletex .
I thought we listed custom drivers as well, but it seems that we only point to the wiki.
Let's close this :+1:

:+1: Perfect. Thanks!


feat(host): Remove unused blob providers

Description
Remove unused blob providers.

📚 $\text{Stack Overview}$
Pulls submitted in this stack:

#842 👈
main

This comment was automatically generated by st.


ArkOS

I have only one issue with ArkOS. It does not have the option to switch off WiFi. My WiFi is always on despite not connected to a network on my RG351P.
A future update of ArkOS with an option to switch on/off WiFi would be highly appreciated.

@christianhaitian sudo nmcli radio wiki off, would be simple solution to put into the options menu

Is the enhancement possible? Any estimated timeline for this option to be updated in ArkOS?

Is this a request because you have a rare unit with an internal wifi chip?  If not, why not simply unplug the wireless dongle when not in use?

This is definitely a request. My WiFi is built-in, there is no dongle to unplug. The stock OS Emuelec has an option to switch on and off WiFi but ArkOS doesn’t. So an update on ArkOS to switch on and off the WiFi is definitely appreciated.

This has been accommodated with today's update.  The ability to disable and enable wifi will be available under the Options/Advanced section after completing an update in the Options section.

Thanks! You are the best!


RealSense error calling: failed Last Error: Protocol error

Required Info

Camera Model
L515

Firmware Version
<IP_ADDRESS>

Operating System & Version
Linux (Ubuntu 20.04.3 LTS)

Kernel Version (Linux Only)
5.11.0-38-generic

Platform
Dell Laptop

SDK Version
{ legacy / 2.<29>.<0> }

Language
{C/python/ }

Segment
Robot

Issue Description
When I turn on L500 depth sensor, I got error:
Backend in rs2_get_option(options:0x564c57dc0bd0, option:Receiver Gain):
get_xu(...). xioctl(UVCIOC_CTRL_QUERY) failed Last Error: Protocol error
How do I solve it?

Hi @zxl5344   Could you unplug the micro sized end of the USB cable from the base of the camera, turn the connector around the opposite way and re-insert it into the base of the camera, please (USB Type-C cables are two way insertion at the micro sized end).  Does the error still occur after doing so?

I turn the USB Type-C and re-insert it into the base. I still get same error
Backend in rs2_get_option(options:0x7f8d94001060, option:Receiver Gain):
set_xu(...). xioctl(UVCIOC_CTRL_QUERY) failed Last Error: Protocol error

There was a previous case in https://github.com/IntelRealSense/realsense-ros/issues/1844 where this prootcol error occurred with an L515 when using the camera in a Docker container.  Are you using Docker, please?

I don't think so. My laptop only installed Ubuntu.

Error messages involving xioctl(UVCIOC_CTRL_QUERY) tend to be related to a conflict with the kernel.  The RealSense SDK does not yet officially support kernel 5.11 (the newest supported is currently 5.8 at the time of writing this) and so although the SDK can work with newer unsupported kernels, there may be unpredictable consequences in terms of stability.

Which method did you use to build the RealSense SDK on Linux, please?  If you could build the SDK from source code using the RSUSB backend method then this would help to confirm or eliminate the possibility of the problem being caused by a kernel issue.  This is because an RSUSB build is not dependent on Linux versions or kernel versions and does not require patching.

I follow the distribution_linux.md in this repo to build the SDK. Do you have tutorial for RSUSB backend method?

Obtain the source code for the librealsense SDK.  You can do this by going to the 'Assets' file list at the bottom of the listing for each version on the SDK Releases page and left-clicking on the
to download it as a zipped file.

https://github.com/IntelRealSense/librealsense/releases

Extract the zipped file to obtain the librealsense SDK folder and go to the folder's 'root' directory.  This is the one with a list of files and folders in, and will typically be at the folder location librealsense > librealsense

From this root directory with the CMakeLists.txt file in, input the command mkdir build && cd build to create a sub-directory called 'build' and navigate to it.

Input the command below to use CMake to build the librealsense SDK from source code with example programs and tools such as the RealSense Viewer included.

cmake ../ -DFORCE_RSUSB_BACKEND=ON  -DCMAKE_BUILD_TYPE=release -DBUILD_EXAMPLES=true -DBUILD_GRAPHICAL_EXAMPLES=true

Finally, input the command below.

sudo make uninstall && make clean && make -j8 && sudo make install

I followed your procedure @MartyG-RealSense. After step 5, I tried to run realsense-viewer but I got: bash: /usr/bin/realsense-viewer: No such file or directory. How to run it?

On Linux, realsense-viewer and also the other example programs and tools should be located in the usr/local/bin directory if it as been installed successfully.  Do you have realsense-viewer in this folder, please?

Yes, I have realsense-viewer in this folder. What is the next step?

If you have navigated to this folder, are you able to launch realsense-viewer from there?

No. I cd /usr/local/bin first and run realsense-viewer. I still got error:
bash: /usr/bin/realsense-viewer: No such file or directory

I reboot my laptop. And now realsense-viewer is working. But when I turn on L500 depth sensor, I got error:
UNKNOWN in rs2_get_option(options:0x7fdec00473a0, option:Pre Processing
Sharpening):
usb device disconnected
When I turn on RGB camera first and then turn on L500 depth sensor, I got error:
UNKNOWN in rs2_get_option(options:0x56531cdc81c0, option:Laser Power):
usb device disconnected
I turned the USB Type-C and I still got same error. Everytime I got error, system said L515 is disconnected and then connected again.

After having gone through the diagnostic process during this case and considered all of the information, it is likely that there is a hardware fault in your camera and it should be returned to the retailer that you purchased it from using the Return Material Authorization (RMA) returns procedure of that particular retailer.

Thanks for your help.

Sorry for reopen it. One of my lab mate use this camera previously on a windows laptop. And it is working well. So I think it should be a software issues. What are the possible reason that L515 is working on windows but not Linux?

It could be an issue with the USB port hardware on the Linux computer.  Not all USB ports are created equally, and a camera that works fine on one computer may have problems with some or all of the ports on a different make / model of computer.  Different computers may use USB controllers by different providers that may have a bearing on how well the camera works with it.  You could test whether it is an issue with the controller on the Linux computer by attaching the camera to a USB hub if it is not already, as the hub's ports will have their own independent USB controller separate from the computer's ports.

I directly connect my camera on laptop without a hub and now I can turn on L500 sensor. Connection changed from USB 3.2 to USB 2.1.
But I continuous get this warning when I turn on L500:
09:16:50 [Warn] /home/zxl5344/Realsense SDK/librealsense-2.49.0/src/libusb/messenger-libusb.cpp:42 - control_transfer returned error, index: 768, error: No data available, number: 61
How to solve it? I got same error when I use roslunch to lunch camera

If you can access the camera in the RealSense Viewer, does it make a difference if you reset the camera from within the Viewer by going to the More option in the options side-panel and selecting Hardware Reset from its drop-down menu.

No and No. I still get same error and USB 2.1

In the Viewer, does the number of control_transfer returned errors reduce if you set the Preset to Short Range instead of the default Max Range?

No, I feel like the frequency of control_transfer returned errors are almost same.

RealSense SDK version 2.50.0 is now available.  Could you test whether the issues that you have been experiencing in librealsense 2.49.0 are also present in 2.50.0 please?
https://github.com/IntelRealSense/librealsense/releases/tag/v2.50.0

All my codes and repo are based on ROS noetic so I don't want to upgrade to 2.50.0.
My laptop only have type C port so I am using a type C to type C data cable now. Is it possible that my error and usb 2.1 is caused by data cable?
Also I plan to set up my camera a little far from my laptop. Do you have any recommendation for a long cable, approximately 10 meter?

It's fine, I totally understand why using 2.50.0 with the current ROS1 wrapper designed for 2.48.0 would be impractical for you.
When choosing your own USB cable there is a risk that it can lead to reduced performance or disconnections if it is not a high quality cable (for example, if it is a cable designed for device charging instead of high volume data transfer).
The company Newnex offer high quality USB cables that are validated for use with RealSense.  They have been featured in the official Intel data sheet document for the 400 Series cameras as a recommended supply source for USB cables for RealSense.
https://www.newnex.com/realsense-3d-camera-connectivity.php

Thank you. I will buy a new USB cable and check if it will solve my issues.

Thanks very much.  Please do update here when you have been able to test with a new cable.  Good luck!

A ROS1 wrapper for use with Noetic and SDK 2.50.0 is now available.
https://github.com/IntelRealSense/realsense-ros/releases/tag/2.3.2

I have solved my issue with a new cable. Also, could you show me how to upgrade SDK to latest version? I tried sudo apt-get but it didn't work. I guess it might be caused by RSUSB backend method

Mixing package builds (apt-get) and source-code builds such as RSUSB on the same computer has the potential to cause conflicts.  You should be able to remove the source-code build if you go to the 'build' directory that you created during the RSUSB installation process and then input the command below.
sudo make uninstall && make clean
This version of the CMake instruction performs uninstall of the SDK files and cleans up the CMake cache but does not start building the SDK from source code again.
From that point onwards, use the package installation process on the distribution_linux.md page.
https://github.com/IntelRealSense/librealsense/blob/master/doc/distribution_linux.md
If you have previously performed a package build on your computer though, I recommend uninstalling previous package builds first with the command below.
dpkg -l | grep "realsense" | cut -d " " -f 3 | xargs sudo dpkg --purge

Thank you. I will try it when I have time.


child_process.spawn produces empty string for various commands (node, npm, ncu)

(initially reported in https://github.com/nodesource/distributions/issues/843)

Version: v12.1.0, v13.1.0, v13.12.0, v14.10.1, v15.6.0, v16.6.1
Platform: Linux RAUMSTATION 5.0.0-13-generic 14-Ubuntu SMP Mon Apr 15 14:59:14 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
Subsystem: child process (?)

I switched from the PPA binary (https://github.com/nodesource/distributions/blob/master/README.md#debinstall) to the snap binary (https://snapcraft.io/node). This started to break the ncu -g command. Originally, I opened an issue with npm-check-updates, but it doesn’t seem to be an issue on their end (for reference: https://github.com/tjunnone/npm-check-updates/issues/536).
Only with the snap binary do I get the following error:
/home/phil/.npm-global/lib/node_modules/npm-check-updates/lib/npm-check-updates.js:387
        throw err;
        ^

Error: Expected JSON from "npm ls". This could be due to npm instability.

    at parseJson (/home/phil/.npm-global/lib/node_modules/npm-check-updates/lib/package-managers/npm.js:38:15)
    at /home/phil/.npm-global/lib/node_modules/npm-check-updates/lib/package-managers/npm.js:144:30
    at processTicksAndRejections (internal/process/task_queues.js:89:5)

The command that is executed with child_process.spawn is npm ls --global --depth=0 --json which produces the correct JSON with both the PPA and the snap binary when executed directly from the terminal.
Steps to reproduce:
Create a reproduction.js file containing the following code and run node reproduction.js with node being a Node.js binary from a Snap source (reproduces with all versions from v12 to v14 at least).
const { spawnSync } = require('child_process')

// Both these spawn commands will yield nothing in their stdout.
// The latter should just contain a Node version tring such as `v14.10.1`.

// npm ls --global --depth=0 --json
const npmListOutput = String(spawnSync('npm', ['ls', '--global', '--depth=0', '--json']).stdout)
console.log({ npmListOutput });

// node --version
const nodeVersionOutput = String(spawnSync('node', ['--version']).stdout)
console.log({ nodeVersionOutput });

To switch around the Node binary on Ubuntu:

Uninstall Node.
sudo apt remove nodejs

Install Node via Snap.
sudo snap install node --channel=16/stable --classic

Verify that Snap’s Node is used (i.e. on my system, the binary is reported to be in /snap/bin/node when running which node).

Run npm-check-updates with the global flag.
ncu -g

Remove Node via Snap.
sudo snap remove node

Install Node via apt.
sudo apt install nodejs

Yeah .. so .. snaps and spawn aren't awesome due to the funky way they they do paths, I've struggled to figure out the best way to deal with this.
One option to try might be to ln -s /snap/bin/node /usr/bin/node which I've seen some snaps recommend, which is a little nasty but might help solve some path problems.
I've also been forced to use /snap/node/current/bin/node as my path before to get around these problems. Again, a little nasty but can work.
Let me know if either of those options work for you. Unfortunately there are enough limitations that it's not unreasonable to suggest moving back to a native package whenever you need to do anything that moves outside of a happy path of usage (native addons add another layer of problems to the mix).

Hi! We installed Node.js via snap store and tried to use exec  and spawn functions in the VS Code extension environment. In the test extension we could also reproduce the same incorrect behavior as described in this issue. The functions for spawning child processes skip the execution of npm and CLI commands (based on Node.js scripts) and return just an empty result or an error.

I'm using Node-Red  to launch a NodeJS instance and getting no output at all. I noticed this entry in syslog which occurred when running the Node-Red "flow":
Nov  5 18:45:59 ss1 kernel: [77021.759179] audit: type=1400 audit(1636137959.907:184): apparmor="DENIED" operation="file_inherit" profile="/snap/snapd/13640/usr/lib/snapd/snap-confine" pid=24351 comm="snap-confine" family="unix" sock_type="stream" protocol=0 requested_mask="send receive" denied_mask="send receive" addr=none peer_addr=none
Possibly related?

This is still an issue and requires a fix. More details is on the the following issue https://github.com/nodejs/node/issues/37982. A workaround is here https://github.com/nodejs/node/issues/37982#issuecomment-1451326285.


Could not perform Node Audit analysis. Invalid payload submitted to Node Audit API.

I have angular project and got this error. I tried to update my project (from 14 to 15 and then 16). same error. dependency-check version - 6
how can I fix this?

DependencyCheck 6 was released on 2021-06-21. This is about 2 years before the latest release.
_https://owasp.org/www-project-dependency-check/_
Once on the website, click on the 'Releases' tab. This tab shows the latest version of DependencyCheck and all previous versions.
I have not seen this error before, but I think this is the cause of the problem

I have angular project and got this error. I tried to update my project (from 14 to 15 and then 16). same error. dependency-check version - 6 how can I fix this?

DependencyCheck 6 was released on 2021-06-21. This is about 2 years before the latest release.
https://owasp.org/www-project-dependency-check/
Once on the website, click on the 'Releases' tab. This tab shows the latest version of DependencyCheck and all previous versions.
I have not seen this error before, but I think this is the cause of the problem

Getting this on my node runs since Friday (10/20), but running dependency-check version 8.4.2 in Azure Devops

exception: org.owasp.dependencycheck.analyzer.exception.SearchException: Could not perform Node Audit analysis. Invalid payload submitted to Node Audit API.
org.owasp.dependencycheck.data.nodeaudit.NodeAuditSearch.submitPackage(NodeAuditSearch.java:209)
org.owasp.dependencycheck.data.nodeaudit.NodeAuditSearch.submitPackage(NodeAuditSearch.java:133)
org.owasp.dependencycheck.analyzer.NodeAuditAnalyzer.analyzePackage(NodeAuditAnalyzer.java:189)
org.owasp.dependencycheck.analyzer.NodeAuditAnalyzer.analyzeDependency(NodeAuditAnalyzer.java:146)
org.owasp.dependencycheck.analyzer.AbstractAnalyzer.analyze(AbstractAnalyzer.java:131)
org.owasp.dependencycheck.AnalysisTask.call(AnalysisTask.java:88)
org.owasp.dependencycheck.AnalysisTask.call(AnalysisTask.java:37)
java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
java.base/java.lang.Thread.run(Thread.java:833)


prediction result

Thank you for good code
how to get prediction result as inside image folder like given below by you

You can write a simple script to concatenate your prediction results. I use PPT to manually put them together...