MSID: 103714 Version: 1 DOI: 10.1101/2<IP_ADDRESS>6983

MSID: 103714
Version: 1
Preprint DOI: https://doi.org/10.1101/2<IP_ADDRESS>6983
Step 1. Awaiting reviews
Editorial to post reviews via hypothesis
Useful links:

DocMap: https://data-hub-api.elifesciences.org/enhanced-preprints/docmaps/v2/by-publisher/elife/get-by-manuscript-id?manuscript_id=103714
New model tracking: https://docs.google.com/spreadsheets/d/1_fHaoOy7hjyocptKtVJRijeNpUY4hBS7Ck_aVmx6ZJk/
Reviews on sciety: https://sciety.org/articles/activity/10.1101/2<IP_ADDRESS>6983

For trouble shooting (e.g. no Docmaps available):

DocMap issue addressing: https://miro.com/app/board/uXjVNCwK6EI=/
Explore DataHub DocMaps API: https://lookerstudio.google.com/reporting/4c2f0368-babb-4beb-b5b3-497e7e7b0f08/page/ejphD
Unmatched submissions and preprints: https://lookerstudio.google.com/u/0/reporting/9f86204f-3bf7-477c-9b18-5c5ef141bf69/page/p_gxi57ha93c
Unmatched manuscripts spreadsheet: https://docs.google.com/spreadsheets/d/15QcK8w-ssB7109RQEDtFpJPZ0J5HTGxoHa_2TtpMBbg/edit#gid=1336081641

Step 2. Preview reviewed preprint
Production QC content ahead of publication
Instructions:

QC preview: https://prod--epp.elifesciences.org/previews/103714v1
Update ticket with any problems (add blocked label)
When QC OK, add QC OK label to ticket and add publication date and time to https://docs.google.com/spreadsheets/d/1amAlKvdLcaDp5W8Z8g77NmkwbMF5n_u89ArSqPMO8jg
Move card to next column
(At end of the day post link in #enhanced-preprint and ask for PDF to be generated)

Useful links:

Preprint DOI :  https://doi.org/10.1101/2<IP_ADDRESS>6983
Confirm reviews returned by EPP: https://prod--epp.elifesciences.org/api/reviewed-preprints/103714/v1/reviews
To update the MECA path in the docmap: https://docs.google.com/spreadsheets/d/1mctCQuNFBjSn97Lihy7_vBO6z7-N-oqyLv4clyi6zHg

Step 3: Awaiting search reindex
This step adds the reviewed preprint to the homepage: https://elifesciences.org
The search reindex is triggered once an hour. We need the reviewed preprint to be indexed as the search application serves the journal homepage.
Useful links:

Jenkins pipeline to reindex search can be triggered sooner or monitored here: https://alfred.elifesciences.org/job/process/job/process-reindex-reviewed-preprints/

Step 4: Published! PDF requested
Waiting for PDF to be generated
Useful links:

PDF tracking: https://docs.google.com/spreadsheets/d/106_XeDjmuBae7gexOTNzg60lapeqjl2aRn9DzupGyS8/

Step 5: Introduce PDF to data folder and git repo
Upload PDF to relevent folder in git repo https://github.com/elifesciences/enhanced-preprints-data/
Step 6: Done!

[ ] Kettle is on!

WOS query sent

OK to proceed


Use squash-merging method for merging PRs

Just a simple suggestion towards a cleaner Git history:
I think many projects these days have adopted the squash-merging method for merging PRs. Typically, a PR consists of a single logical change of the target branch. This means, when a PR is merged, the Git history of the target branch receives one additional commit, even though the PR might have several commits due to code review and/or iterative development. Currently, it seems PRs are merged with an additional merge commit which clutters the Git history and makes it harder to read. If squash-merging was used, the Git history would become cleaner.
What do you think?

I usually do rebase, squash or merge depending on the change itself.
For example, if some contributor didn't write a proper commitizen message, I squash it just to reword it.
In the case of your recent https://github.com/copier-org/copier/pull/755, I would have used squash, but I used merge, I don't know why. Possibly for doing too many things in parallel 😆
If the PR is properly structured in commits, I rebase or merge.
Just use some common sense, I don't think this needs to be an exact policy because each case can be different. Thanks for raising the subject though. 😊

Haha, sounds good. 👍 Thanks for the detailed explanation. 🙏


Flexbox Overlap on Firefox

I tested Plyr.io on Chrome and it looks great!

But when I tried it on Firefox the volume flexbox overlaps the next element.

Chrome version: Version 86.0.4240.198 (Official Build) (64-bit)
Firefox Version: 83.0b10 (64-bit) | Firefox Developer Browser | Up to Date

Please try again. This was fixed earlier today in v3.6.3.


⚠ ClamAV has degraded performance

In 6514bcc, ClamAV (https://spamassassin.apache.org/) experienced degraded performance:

HTTP code: 200
Response time: 495 ms

Resolved: ClamAV performance has improved in 64e5bce.


Update transfer data after fee bump

Describe the bug
After a fee bump, the transfer data in DB will not reflect the bump, as it is polling for the change.
Solution:
Create a new entity BumpedTransfer in the subgraph, and map it by timestamp to bump contract events.
Sync this entity with a new carto poller, by timestamp and/or blocknumber and update transfer data fields accordingly.
To Reproduce
Steps to reproduce the behavior:

Bump relayer fee on a transfer

Also see https://github.com/connext/monorepo/issues/3102 for a similar need on SlippageUpdated


replace .then() with await in task code

I find code very hard to read/understand when .then() is used instead of await. I'd like to write tests for some of this code and refactor it.
https://github.com/microsoft/vscode/blob/53637165898c28d313f197116df6e31a21a38dcd/src/vs/workbench/contrib/tasks/browser/abstractTaskService.ts#L2714-L2739

In particular, this is confusing when the functions are often calling themself again or each-other

partially completed https://github.com/microsoft/vscode/pull/156634

we have a lot to do this iteration. closing as I did most of this


Better support for Null Values?

Issue description
if cfn-lint throws error "Template... contains nulls: Null value at line XX column YY" plugin just shows error (see screenshot)
Intended behavior
Since error message has information regarding error source it would be great pointing to line XX column YY instead.
Sample snippet
  SomeResource:
    Type:

cfn-lint output
$ cfn-lint --template ecs-optimized.yaml
2018-05-17 19:22:38,870 - cfnlint - ERROR - Template ecs-optimized.yaml contains nulls: Null value at line 22 column 19

atom-cfn-int-atom output
https://www.dropbox.com/s/6k83c32huufw4cj/Screen Shot 2018-05-17 at 7.20.55 PM.png?dl=0

Released with cfn-lint 0.2.0.  Please upgrade and let us know if you still have issues.


QR Code to Text - Win+Shift+Q

Description of the new feature / enhancement
When hitting the shortcut, a snipping tool-like draggable window comes up and the user drags a box encompassing a QR code. The contents of the QR code show up in PowerToys as text. If it's detected as a URL, there is a hyperlink icon you can click to visit the URL. If it's a vcard, a vcard icon to open the vcard. Et cetera.
Scenario when this would be used?
When a QR code is on the screen, but the contents can't be accessed by the user. Maybe it's a YouTube commercial. Maybe a graphic designer needs to double-check a QR code they added to a design.
Supporting information
No response

Hi all, this is now built into Snipping tool. https://blogs.windows.com/windows-insider/2024/05/09/snipping-tool-and-paint-updates-begin-rolling-out-to-windows-insiders/

We are also adding the ability to detect QR codes in screenshots so that you can easily follow the link on your PC. You will automatically see QR code detection appear when you enter Text Actions from Snipping Tool’s markup canvas.


docs: Missing example for socket API

What is the issue?
When building the GraphQL API reference documentation, the build process throws an error on account of a missing example for the socket API. This should be added.

@sipsma I discussed this with @crjm and he suggested that maybe you could provide this example. Would you be able to help? TIA.
As socket is a new API I think we should ask Vito for an example as he was the one that created the schema. He should have a simple example at hand.


Reporting services: add support for selecting parameter value from hierarchical tree

Hi,
Please, add support for selecting parameter value from hierarchical tree to SSRS. It's very handy in rich reports.

For features request for PBIRS/SSRS please use https://ideas.powerbi.com


Make the opposing curves equal at MIDI value 64

Make the opposing curves equal at MIDI value 64, defined as center by MIDI specs.

[0,1] should have center at 0.5
[-1,1] should have center at 0
Xfades should have center at 1/√2

TODO: the tests

I added/updated the tests to match the behavior, and I also changed the normalizeXXX functions so that midi 64 is 0.5f (which in return already corrects many tests :slightly_smiling_face:).
I'm ok for the merge!

Nice thanks for updating this. I'll add just a few observations.

there was a claim on the main channel that ARIA does not center at 64. This is based on Cakewalk.
also the hdcc thing came later based on some sample set needs, and this raises a new problem: the hdcc 0.5 is supposed to be center, but this becomes a mismatch to cc7bit when (de)normalizing from one to another.

Well I think this would be better practice to center at 64 anyway... for the (de)normalization, I updated the normalizing, you'd want to adapt the denormalizing too? Not super pretty but
template<class T, absl::enable_if_t<std::is_integral<T>::value, int> = 0>
inline CXX14_CONSTEXPR constexpr T denormalize7Bits(float value)
{
    if (value < 0.0f)
        return T { 0 };

    if (value > 1.0f)
        return T{ 127 };

    if (value <= 0.5f)
        return static_cast<T>(value * 128.0f);

    return 64 + static_cast<T>((value - 0.5f) * 127.0f);
}

would work I guess?

I added the previous function and simple tests.

This one looks OK to me now, if you want to undraft and merge it

This one, I've come to wonder if really it's a good idea, after dealing with ARIA hdcc.
ARIA has used its own extensions to deal with this problem: hdcc and icurvecc.
This is going to modify this behavior in possibly undesired ways.
This commit permits conforming to some Cakewalk behavior, but then it disturbs normal behavior of these ARIA extensions, it's the problem. (also possibly things as on_lohdcc)
It sits in the middle of both ARIA and CW but in a not very satisfying way.

You mean that since ARIA does not care to center at 64 we maybe should just use the extensions for "precise" centering?

If this is not finalized yet, I suggest to do ARIA, hdcc=0.5. I'm guessing, centering Midi value 64 might disturb the curve?


turn down comment bot

With GHA migration, we can turn down comment bot
https://github.com/GoogleCloudPlatform/cloud-foundation-toolkit/tree/master/infra/terraform/test-org/ci-comment-build-trigger-function

We can also remove the CB lint trigger: https://github.com/GoogleCloudPlatform/cloud-foundation-toolkit/blob/master/infra/terraform/test-org/ci-triggers/triggers.tf#L17


Op registration: trigonometric

Part of #6692.

Jenkins, test this please

Jenkins CI test (for commit a38bc7e48fca4531c395f4e86c369d75a457cf39, target branch master) failed with status FAILURE.
(For contributors, please wait until the reviewer confirms the details of the error.)

Test failure should be irrelevant.
LGTM


Prevent > 1 toast at any one time?

Are there are methods to detect how many toasts are currently displayed? Or better yet a way to track/key toasts to prevent the same one being fired again.

Why would you want to do that? Dispatching multiple toasts is in the core design of the library, and thus a “duplicate” is only a notion on your end. If you could elaborate the problem further, I might be of a help.

Say a user updates a model and as a result you want to store the modification and show a toast confirming the update ('Model has been updated'). If the user makes 10 changes in 30 seconds you might want to 'throttle' the toasts. Or at least not show a new instance of the same message, while it is still being showed.

Say a user updates a model and as a result you want to store the modification and show a toast confirming the update ('Model has been updated'). If the user makes 10 changes in 30 seconds you might want to 'throttle' the toasts. Or at least not show a new instance of the same message, while it is still being displayed.

Makes sense. You can always extend the behavior of this package in an effortless way. It would mean that you create a ThrottlingCollector in your own system and register it with the IoC container so the toasts you dispatch get sent through this throttle mechanism before it reaches the end user.
A PR is always welcome.

Took the words right out of my mouth, thanks @ditsbroefs - Another example, if we want to show a validation message or a an error from a form, if the user repeatedly clicks the button they will end up with a stack of dozens and dozens of simultaneous identical toasts. Made even more painful if the timeout is on the longer side because they'll need to manually close them all to get rid of the visual clutter. Will look into the extending behaviour in the meantime. The hack i was running with currently was to export the hub and then:

But this is pretty unpleasant.
Thanks.

Although again, i'm unsure how this could be used without having access to the current list of toasts to compare against.

You'll need to keep a history of the toasts that were dispatched for a specific user. However, this seems like a tedious job while a live queue is available on the client-side. But this also means that a similar pipeline needs to be set up on the client-side in a similar vein.
I'll see what I can do.

Please upgrade to 2.4.0!

You are amazing!

I added a new replacement option as suggested by @jscott-yps. Upgrade to 2.5.0 if you'd like to use that instead.


remove the double shader compile

One of those things that has been bugging me for a little while, finally had some time to adjust.
problem:

we were creating and destroying a gl program each time a new Pixi Program was created as a means to extract the program data. We were then creating it again when the shader was actually bound and used for the first time in the shader.
this first program thats created was using a separate context via getTestContext. Mostly this works fine, until the main context uses any extensions not present on the test context. In this case, things tend to break!

solution

As the attributeData an uniformData objects generated are only really used internally by pixi, I have tweaked this so that those two are generated when a shader is bound instead of when a shader is created. This means we can use the same program rather than creating and destroying one!
This will speed up overall pixi initialisation as only one program will ever be compiled once per program as opposed to two! wee!

Hey Guys,
Tested this on android and it seems that removing the attribute Location binding was not a great idea :P
I have a fix, but need a little tidy before I update this PR. Only downside is we will need to link the program twice which is still a lot less than we currently do 👍
watch this space..

Hey team! If you could re-review this that would be ace!
I fixed the android issue... but also spruced up our error logging for shaders too!

line numbers on the shaders when logged
highlighting the line with the error

Thanks @GoodBoyDigital :tada:


When generating bindings for custom components, allow users to provide a denylist of symbols which should not be generated

See here for more details: https://github.com/esp-rs/esp-idf-hal/issues/215#issuecomment-1462363166

This is probably not feasible, as, without the bindings_module parameter set, the same bindgen instance that generates the main esp-idf bindings will also generate those of the extra components. And to my knowledge, there is no way to exclude symbols of specific C headers.

Yeah, but then having a global dentist would be just as good, as we are not trying to prevent collisions between the components and esp idf, but rather, between C code and Rust.


Slim Kitchen

Slim down the granite-kitchen dependency bundle to emphasize replicate and colab compatibility.
Write a ticket to resolve the langchain-ibm dependency conflict with google-colab by contributing to the project.

https://github.com/ibm-granite-community/granite-kitchen/pull/15


Update Hyku submodule (ba98ed54)

Story
Refs

#21

TODO

[ ] Review the diff and make any necessary changes to the HykuUP code

Closing in favor of:

#23


Bug 1937245: ceph: disable CSI GRPC metrics by default

Description of your changes:
The GRPC metrics exposed by both the provisioner pod and the node plugin pod on some port. Provisioner pod is running on the pod network and the daemonset pods run on the host network. sometimes starting the GRPC metrics by default can lead to node plugin pods crashloopback state this is due to the port conflict. Moreover, the GRPC metrics are not for the user it's
for the one which will help to debug the time taken by cephcsi to serve each GRPC call. Enabling it by default won't be a good idea. So the plan is to disable it by default, If someone faces any issue it can be enabled later at some point in time.
Signed-off-by: Madhu Rajanna<EMAIL_ADDRESS>(cherry picked from commit 0a81ce2251699faf0f174e7f58a4cbb9ac149bc8)
(cherry picked from commit ab0c5f73d1a31b8403dfc8d69cdd431b75115fc9)
Which issue is resolved by this Pull Request:
Resolves #
Checklist:

[ ] Commit Message Formatting: Commit titles and messages follow guidelines in the developer guide.
[ ] Skip Tests for Docs: Add the flag for skipping the build if this is only a documentation change. See here for the flag.
[ ] Skip Unrelated Tests: Add a flag to run tests for a specific storage provider. See test options.
[ ] Reviewed the developer guide on Submitting a Pull Request
[ ] Documentation has been updated, if necessary.
[ ] Unit tests have been added, if necessary.
[ ] Integration tests have been added, if necessary.
[ ] Pending release notes updated with breaking and/or notable changes, if necessary.
[ ] Upgrade from previous release is tested and upgrade user guide is updated, if necessary.
[ ] Code generation (make codegen) has been run to update object specifications, if necessary.

2021/03/11 11:44:49 Failed to get build src: the server has received too many requests and has asked us to try again later (get builds.build.openshift.io src)
2021/03/11 11:45:08 Failed to get build src: etcdserver: request timed out
2021/03/11 11:45:25 Failed to get build src: an error on the server ("Internal Server Error: "/apis/build.openshift.io/v1/namespaces/ci-op-89f83cdi/builds/src": Post "https://<IP_ADDRESS>:443/apis/authorization.k8s.io/v1/subjectaccessreviews?timeout=10s\": net/http: request canceled (Client.Timeout exceeded while awaiting headers)") has prevented the request from succeeding (get builds.build.openshift.io src)
2021/03/11 11:45:45 Failed to get build src: etcdserver: leader changed

/test unit

@leseb looks like CI is having some issue can you please help with this?

/retest


[New Battlefield] missing technology keys

affected keys:

technology-name.5d-flamethrower-tower-turrets (1-9)
technology-name.5d-tesla-turrets (1-10)

possibly more that i dont know of

fixed


Intent Get : IAM permission 'dialogflow.intents.get'

Hi, I've problem with dialogflow. Create and all intents api is working for me but  specific intent fetch not working.Also try this https://github.com/googleapis/nodejs-dialogflow/issues/151  changes but not worked.
Error: 7 PERMISSION_DENIED: IAM permission 'dialogflow.intents.get' on 'projects/projectsName/agent/intents/intentID' denied.   code: 7,   details: "IAM permission 'dialogflow.intents.get' on 'projects/projectsName/agent/intents/intentID' denied.",   metadata: Metadata {     internalRepr: Map(1) { 'grpc-server-stats-bin' => [Array] },     options: {}   },   note: 'Exception occurred in retry method that was not classified as transient' }
Environment details

OS: Mac OS 11.2.3
Node.js version: v14.16.0
npm version:
@google-cloud/dialogflow version: ^3.3.0

Code
const dialogflow = require('@google-cloud/dialogflow');
const intentClient = new dialogflow.IntentsClient(Credentials);
 const agentClient = new dialogflow.AgentsClient(Credentials);
const projectAgentPath = intentClient.agentPath(project_id);
const request = { parent: projectAgentPath};
const [response] = await agentClient.listIntents(request);
Thanks!

Hi uk-ropstam! I'm a little confused. Your comment says you're having a problem fetching a single intent, but your code tries to list all intents. Can you clarify what you're trying to do?

My bad was some Credentials issue.Credentials are dynamic that's i face this issue.


"Show Only Region Descriptions" doesn't seem to be working

When I collapse the following code:
//#region I am a region!
let foo = "foo";
//#endregion

// #region I am also a region!
let bar = "bar";
// #endregion

I still see the keywords:

No extension host issues are being logged as far as I can see.
Extension version 0.2.2

Hey does option does not work in all cases? Like disabling it and reenabling it? What about having the description being only one word?

Can confirm disabling and re-enabling doesn't help.  And it doesn't seem to be related to word count or whether or not the regions are indented.

Also wanted to report this. Region naming abbreviation doesn't work at all.

@eFail @AndreaPontrandolfo Would you mind providing more details on the case? I'm not able to reproduce it. And maybe try to disable all other extensions to see if one is interfering with it.

@mtbaqer I tried disabling all extensions except for Better Folding.  Still doesn't work.
Here's the sample code I'm using:

A few days ago I cloned the extension and did a little old-school debugging using information messages at various points in the code.  I only had a few minutes to look around and I'm not familiar with VS Code extension development at all, but at first glance it was looking to me like REGION_REGEX inside regionRangesProvider.ts doesn't return any results.  Not sure if that's helpful at all.  Could it be as simple as a regex string needing to be tweaked?

@mtbaqer.  I have solid repro steps for you.  Any way you could take a look and get a fix out for this soon?
Inside VS code terminal: npx create-react-app foo
In VS Code:

Click "Open Folder" and choose the new "foo" directory.
Open index.js
At the bottom, add this code://#region Bar
function bar(){
}
//#endregion

Ctrl+Shift+P > "Fold All"

Observe that your extension works as expected:

But now right-click the src folder and choose "New file".  Name it foo.js:

Paste in this code:import React from "react";

export default function Foo(){
    //#region Bar
    function bar(){
    }
    //#endregion
}

Ctrl+Shift+P > "Fold All"
Unfold the exported Foo function to reveal the region.  Observe that extension is not working as expected.

So it seems like the regex you're using might be breaking down somehow inside of function-based ReactJS components?  I hope this can help get a fix out for this soon.


Reise details header

Description
work in progress - not completed yet
I developed the trip details page containing a header and the list of costs.
Fixes # (issue reference, if applicable)
Type of change

[ ] Bug fix (non-breaking change which fixes an issue)
[X] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[X] This change requires a documentation update

How Has This Been Tested?
Please describe the tests that you ran to verify your changes. Provide instructions so we can reproduce. Please also list any relevant details for your test configuration.

[ ] Locally tested the according endpoints
[ ] Ran E2E-Tests

Checklist:

[X] My code follows the style guidelines of this project
[ ] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation

Braucht ihr Hilfe beim rebasen? :D


breaking: replacing isHeadless with isServerBuild

Using Server Build instead of checking GraphicsDeviceType could help stop confusion with new users create server only builds.

using -batchmode does not mean that isHeadless is true, -nographics is also required.

This causes confusion because startOnHeadless's comment say to use  "the -batchMode command line arguement"

Server build add both -batchmode and -nographics automatically
Server build is true when "Server build" is checked in build menu, or BuildOptions.EnableHeadlessMode flag is in BuildOptions

resolves: https://github.com/vis2k/Mirror/issues/2063
this is probably classed as breaking, before we merge we will have to add new version defines

I like this idea. We should at least be using things that the server build toggle already sets up, rather than checking if we have a null graphics adapter.

have you tried this on windows/mac/linux?
in the editor after building the server build, is this true or false when I press play?

have you tried this on windows/mac/linux?

I've tested this on windows and I can test it on linux later, but I wont be able to test on mac.

in the editor after building the server build, is this true or false when I press play?

It should be false in the editor.

wasn't server build linux-only?

I think the old unity docs said linux, the most recently ones mention all 3 https://docs.unity3d.com/ScriptReference/BuildOptions.EnableHeadlessMode.html
the EnableHeadlessMode seems to be the same as the "Server Build" checkbox

the EnableHeadlessMode seems to be the same as the "Server Build" checkbox

Correct, that's what the internal build option is called. I use my own build routines and that's one of the options I enable for server builds.

Tested this with linux server build and it seems to work fine.

@vis2k The only problem there is that you would pollute the code with lots of #if #endif regions, which adds like 2 lines per server only code chunk.

The only time this will break is if someone is manually running their builds with -nographics, but I havn't seen this documented in mirror so I dont think it is the supported way to do it anyway. Whiching to ServerBuild will make it easier for the average user to work out how to build and run a game as headless server
For the #if I think it is better here to use a field. This will let us find references to that field to know what is server only and what is not.

The only time this will break is if someone is manually running their builds with -nographics, but I havn't seen this documented in mirror so I dont think it is the supported way to do it anyway. Whiching to ServerBuild will make it easier for the average user to work out how to build and run a game as headless server

Are you sure? I thought -nographics just turned off the GPU output and instead used a null renderer that discards rendered frame data. Server Build build option was supposed to make it much easier to launch headless things rather than using -batchmode -nographics -logfile .
AFAIK the unity server build uses a special trimmed down native runtime.

What I mean is mirror's old check for headless is SystemInfo.graphicsDeviceType == GraphicsDeviceType.Null so to run as headless you'd only need -nographics. So this would break for anyone manually using -nographics.
This has no change for people already using Server build.

I see.
Not fully convinced about using #if UNITY_SERVER instead.

We use it anyway in isServerBuild. That code looks really strange, as if we are just meant to use #if UNITY_SERVER instead
Everybody knows about #if UNITY_SERVER now since Unity advertised it. if we use it too, then we are more consistent with the rest of the world
#if macros are common. we don't wrap them in isSomething fields everywhere else either. For example, Unity doesn't have isUnityEditor. instead we use #if UNITY_EDITOR

especially for the third reason, it might be cleaner if we use #if UNITY_SERVER everywhere too.
what do you guys think?

Unity does have a bool for editor Application.isEditor
The problem I have with only using #if is that visual studio doesn't show references to them. Right now there are no references to serverTickRate because the code is in a #if block.
I think having a bool for simple block of code is ok, and #if are better for bigger parts of code that are less likely to be missed.
Also i think giving the user the option to use either makes it easier to use

Also i think giving the user the option to use either makes it easier to use

That's the main problem. Whenever there are two things to do the same thing, we end up with endless discussions over the years. I don't think we have much of a choice. Unity already force #if UNIT_SERVER on us, might as well use it?

I've removed the isServerBuild
I'm still not convinced since it looks like we are replacing isHeadless with #if UNITY_SERVER

I've removed the isServerBuild
I'm still not convinced since it looks like we are replacing isHeadless with #if UNITY_SERVER

UNITY_SERVER is actually significantly better for another reason: it reduces coupling.
previously components required NetworkManager. not anymore. that's great.


Test Issue created at Fri, 21 May 2021 14:48:04 GMT

Test issue body  Fri, 21 May 2021 14:48:04 GMT

Comment on issue at Fri, 21 May 2021 14:48:10 GMT


Errors when editing columns in Vizy blocks

Hi, I'm facing a couple of issues when I insert a Table Maker field as part of a Vizy block:

The rows table doesn't get updated when new columns are created unless I save the entry
When I delete columns, I get the following error:

PHP Notice – yii\base\ErrorException
Undefined offset: 3

In the CP, I get the following console error comming from tablemaker.js:247:17:
Uncaught TypeError: can't access property "block", columns is undefined

I'm currently on Craft <IP_ADDRESS> and using Table Maker 2.0.1 and Vizy 1.0.9.
Thanks in advance.

I've got the same issue when used as a vizy block.
Adding columns doesn't automatically create the table content row below. But if you add the column save and go back into the entry the row table content row is generated.
Error I get is:
tablemaker.js:158 Uncaught TypeError: Cannot read properties of undefined (reading 'block')
    at s.constructor.getDataFromTables (tablemaker.js:158:27)
    at s.constructor.reconstructRowsTable (tablemaker.js:109:14)
    at s.constructor.<anonymous> (Base.js:153:23)
    at HTMLTextAreaElement.o (jquery.js?v=1659503183:2:89240)
    at HTMLTextAreaElement.handle (Garnish.js:946:34)
    at HTMLTextAreaElement.dispatch (jquery.js?v=1659503183:2:43392)
    at v.handle (jquery.js?v=1659503183:2:41387)
    at Object.trigger (jquery.js?v=1659503183:2:71930)
    at HTMLTextAreaElement.<anonymous> (jquery.js?v=1659503183:2:72526)
    at Function.each (jquery.js?v=1659503183:2:3002)

Craft version: Craft Pro 3.7.50
Table Maker: 3.0.3
Vizy: 1.0.17

Fixed in 3.0.4


Tag version

Can you please tag a version so one does not need to reference dev-master during composer install.
I propose version 0.1.0 as a first initial version nunber.

Done: https://github.com/VIISON/AddressSplitting/releases/tag/0.1.0


Atempt to connect with the server

Is there any pre-configurations we need to do for setup?
Upon uploading files, I see that it continues to attempt to connect with the server

const wsUri = "wss://www.kimhwan.kr:8081"; in the network_cass.js file. Did you change the part to your own server?
(shoot_game_server: https://github.com/akon47/shoot_game_server)


Optimize more Unicode regexes

In the previous commit, #1227, a “function” regex JavaScript definition was updated. The same regex is used at few other points, and this PR optimizes them too.
Tests are ran and passed.

Perfect! Thanks!


Add AIRCAS

Official Website URL: http://www.aircas.cn/
IT Course URL:http://www.aircas.cas.cn/kjrh/zsgl/xkjs/

@linvve Pull request merged.
Please notice that free educational subscription for JetBrains tools is for students and teachers only, and is valid for using the tools for educational purpose only. If employees of this Institute who are not students, nor teachers, also need a license for JetBrains tools, they are eligible for an academic discount for the tools. They can get the discount by email to<EMAIL_ADDRESS>Thank you!


[FIX] Correct 404 links master

Hi Damien,
Some links are broken to go on the COMPOSE.md page on master :), I corrected them :)

Thanks for this @anaelChardan 👍


feat: Cloudwatch composite alarm

Description
Support composite alarms.
Motivation and Context
Fixes https://github.com/terraform-aws-modules/terraform-aws-cloudwatch/issues/56
https://github.com/hashicorp/terraform-provider-aws/pull/32751
Breaking Changes
No.
How Has This Been Tested?

[x] I have updated at least one of the examples/* to demonstrate and validate my change(s)
[x] I have tested and validated these changes using one or more of the provided examples/* projects

[x] I have executed pre-commit run -a on my pull request

This PR is included in version 5.2.0 :tada:


Issues with Chopsticks and Kusama AssetHub

Hey, I'm getting the following error when running Chopsticks with AssetHub Kusama:
Error: NonRootBranchNodeWithNoValue
    at imports.wbg.__wbindgen_error_new (/home/purestake/.npm/_npx/81ad9c881cb83600/node_modules/@acala-network/chopsticks-executor/dist/cjs/chopsticks_executor.js:633:19)
    at wasm://wasm/00974292:wasm-function[128]:0xc5ae9
    at wasm://wasm/00974292:wasm-function[356]:0x10e402
    at wasm://wasm/00974292:wasm-function[942]:0x1347c5

Any clues how can I get it to work?

have you tried cleaning db cache?

smoldot fails to decode proof

https://github.com/smol-dot/smoldot/issues/1633

@albertov19 use this branch https://github.com/AcalaNetwork/chopsticks/pull/655

@albertov19 I'm releasing a new beta version

Thanks @ermalkaleci for the quick turnaround, when is this expected to be in the official Chopsticks version?

After we make sure beta is working correctly

Hey @ermalkaleci I can confirm AssetHub Kusama now works


Mopidy Youtube

My error code is below. I am having trouble playing Youtube videos as it says This video is unavailable. However if I go into my browser on my PC it is not region restricted or anything. Youtube-Dl is the latest version.
May 04 10:37:20 raspberrypi mopidy[18681]: INFO     [YouTubeBackend-3] mopidy_youtube Searching YouTube for query "mkbhd"
May 04 10:37:20 raspberrypi mopidy[18681]: INFO     [YouTubeBackend-3] mopidy_youtube session.get triggered: search
May 04 10:37:22 raspberrypi mopidy[18681]: INFO     [YouTubeBackend-3] mopidy_youtube youtube LibraryProvider.search "{'album': ['mkbhd']}"
May 04 10:37:22 raspberrypi mopidy[18681]: INFO     [YouTubeBackend-3] mopidy_youtube youtube LibraryProvider.search "{'artist': ['mkbhd']}"
May 04 10:37:30 raspberrypi mopidy[18681]: INFO     [YouTubeBackend-3] mopidy_youtube youtube LibraryProvider.lookup "youtube:video/iPhone 11 Pro Review 6 Months Later.nxf41fMX_Y4"
May 04 10:37:30 raspberrypi mopidy[18681]: [youtube] nxf41fMX_Y4: Downloading webpage
May 04 10:37:30 raspberrypi mopidy[18681]: INFO     [YouTubeBackend-3] mopidy_youtube youtube PlaybackProvider.translate_uri "youtube:video/iPhone 11 Pro Review 6 Months Later.nxf41fMX_Y4"
May 04 10:37:31 raspberrypi mopidy[18681]: [youtube] nxf41fMX_Y4: Downloading video info webpage
May 04 10:37:34 raspberrypi mopidy[18681]: ERROR: nxf41fMX_Y4: YouTube said: This video is unavailable.
May 04 10:37:34 raspberrypi mopidy[18681]: ERROR    [Thread-12] mopidy_youtube audio_url error "ERROR: nxf41fMX_Y4: YouTube said: This video is unavailable."
May 04 10:37:34 raspberrypi mopidy[18681]: WARNING  [Core-7] mopidy.core.tracklist Track is not playable: youtube:video/iPhone 11 Pro Review 6 Months Later.nxf41fMX_Y4

Edit: I have tried different backends but still the same problem. I have tried both with api enabled and disabled and still nothing. My configuration is below:
enabled = true
youtube_api_key = xxxxxxxxxxxxxxx
threads_max = 16
search_results = 15
playlist_max_videos = 20
api_enabled = false

@NathanealV thanks for the report - that's really strange. When I play "youtube:video/iPhone 11 Pro Review 6 Months Later.nxf41fMX_Y4" as a stream in  the musicbox webclient, it just plays. It also plays when I find it using a search.
Does this happen for you on more than one track?

Same problem. Do you gonna fix it?

@artamudo I think you mean 'same symptoms' - once we can work out the problem that is causing them, absolutely I'm gonna fix it.
Can you tell me a bit more about your experience? Does the extension ever work? Can you give examples of tracks that do play and ones that don't play? Does it happen immediately after you start mopidy or does it take some time before it starts happening? Do tracks that fail always fail or only sometimes?
The extension works for me - to fix the problem, I need to reproduce the symptoms you are experiencing, which means I need to understand when the occur. That can only happen with your help.

@NathanealV thanks for the report - that's really strange. When I play "youtube:video/iPhone 11 Pro Review 6 Months Later.nxf41fMX_Y4" as a stream in the musicbox webclient, it just plays. It also plays when I find it using a search.
Does this happen for you on more than one track?

Yes it happens for any track.

@artamudo I think you mean 'same symptoms' - once we can work out the problem that is causing them, absolutely I'm gonna fix it.
Can you tell me a bit more about your experience? Does the extension ever work? Can you give examples of tracks that do play and ones that don't play? Does it happen immediately after you start mopidy or does it take some time before it starts happening? Do tracks that fail always fail or only sometimes?
The extension works for me - to fix the problem, I need to reproduce the symptoms you are experiencing, which means I need to understand when the occur. That can only happen with your help.

I just set up Mopidy on my Raspberry Pi 3B. I first installed Mopidy, then Mopidy-Youtube, then upmpdcli. I am using Iris as my front end but I have also tried using MusicBox but the same thing happens. Since it is my first time, I have not used it in the past and so I don't know if it has every worked. I have tried restarting mopidy as well but it doesn't fix anything.

It seems that I have resolved the issue. There were conflicting packages with youtube-dl (the apt and the pip package). I uninstalled the apt package as it was last updated in 2019 and just had the pip package. I reconfigured everything for Mopidy and it seems to be working flawlessly. Thanks!

Can you specify a minimum required version of youtubedl to avoid this?

@kingosticks absolutely I can do that! Not having the most recent (or even a fairly recent) version of youtube-dl is a common cause of difficulties; I probably should have thought of this earlier.
Have you got any suggestions about which version I should pick, or how I should make that decision? My instinct is to just set it to the current version and update it each time I release a new version of the extension.

You could try to gauge how they manage their releases (e.g. rarely and very stable or more frequently) and maybe have a chat to their developers about it? Ultimately since this is all coming from pip, rather than APT, and the latest version will always be available to everyone, your instinct sounds fine to me.

They release new versions very frequently - sometimes a couple of weeks apart. Google (et al) make breaking changes and introduce new features (etc) pretty often; the youtube-dl crew react pretty quickly. And good point re pip - I'm going with the current version. Cheers.

Ultimately since this is all coming from pip, rather than APT

youtube-dl is packaged in Debian and other distros, so it may come from apt or other package managers.
The best would be to specify the earliest version that's working.

But in this case, Mopidy-Youtube always comes from pip, so it can specify a requirement which, if not met by APT etc, will be downloaded. I guess the bit I'm not 100% sure about is that if there's an old version from APT and a new version from pip and the program specifies a dependency on the new version, will the newer version always be used?

Yeah, I'm not sure how that conflict sorts itself out. The issue is that the older the youtube-dl version, the more likely that it will cause a difficult-to-track-down problem playing particular clips.
"I can't install the extension because my distribution packages an old version of youtube-dl" is a much easier problem to solve than "I installed the extension but it won't play my favorite clip"...

I think the problem is that it'll install OK but if the old APT version that happens to be on your system takes preference over the new pip version then you are still left scratching your head as to why it's not working (until the user actually provides the output of sudo mpoidyctl deps and it becomes clear).

But in this case, Mopidy-Youtube always comes from pip, so it can specify a requirement which, if not met by APT etc, will always be downloaded.

That's not necessarily true. Mopidy-Youtube is packaged in AUR for instance. Or one could create a deb package for it oneself.

I guess the bit I'm not 100% sure about is that if there's an old version from APT and a new version from pip both installed and the program specifies a dependency on the new version, will the newer version always be actually used?

I'm not sure, it probably depends on where the package manager installs the packages etc. Given that OP had an issue with this, the newer version is probably not always used though.

Yeah, I'm not sure how that conflict sorts itself out. The issue is that the older the youtube-dl version, the more likely that it will cause a difficult-to-track-down problem playing particular clips.

Then maybe you should add a runtime requirement on the required version. I don't think this should be naively set to the latest version though, as that might be impractical for the users.

Thanks all - those are good points; I'll do a bit more research, and try to make a decision that doesn't create new problems for too many people!


pdf2svg: 0.2.2 -> 0.2.3

Also minor style changes and upstream source is now on GitHub.

Strange. On i686-linux it seems to require autotools http://hydra.nixos.org/build/29214063/nixlog/1/raw bud x86_64-linux is fine.

@vcunat, that is quite strange. I played around with it and it seems related to the file timestamps. In particular if I do a touch aclocal.m4 configure Makefile.in in a nix-shell -a pdf2svg it builds just fine while it fails otherwise (on i686, for whatever reason it builds fine regardless on x86_64).
I created PR #11888 to fix the build. In the PR I simply added autoreconfHook as a dependency to force a regeneration of the autotool files.


[VERSIONED] Versioned::writeWithoutVersion() does create a new version if called into onAfterPublish()

Like in subject, there is a strange behaviour of Versioned::writeWithoutVersion() when used inside onAfterPublish(). It creates a new record into SiteTree_versions after the published record. If the function is called inside onBeforePublish() everything works well.
Here you are the result of the following query: select * from SiteTree_versions where RecordID=12 order by Version desc

As you can see version 5 is the same of version 4, but it's not published. Both version are created during a single publish process.
My code is the following (the first line is commented since it triggers an error, so also documentation should be updated):
public function onafterpublish(&$original) {
    //parent::onAfterPublish();
    Debug::log('OnAfterPublish');
    $this->Number = 3;
    $this->writeWithoutVersion();
}

I can't replicated this issue in 4.x-dev (due to be 4.4) but I do note that when you publish, it's certain an extra version record that may be unnecessaryw.

From the looks of things this is intended behaviour. So I'm closing the original issue as fixed, and the subsequent one as not needing a changes.

Added a test related to this in https://github.com/silverstripe/silverstripe-versioned/pull/227


Non-HTTPS remote URLs no longer work as input for open_zarr

What happened:
On 0.16.2 and later, passing a non-HTTPS remote URL path (e.g. gs://...) as input to open_zarr() results in a KeyError or GroupNotFoundError:
>>> import xarray as xr
>>> xr.open_zarr("gs://cmip6/AerChemMIP/AS-RCEC/TaiESM1/histSST/r1i1p1f1/AERmon/od550aer/gn/", consolidated=True)
KeyError: '.zmetadata'
>>> xr.open_zarr("gs://cmip6/AerChemMIP/AS-RCEC/TaiESM1/histSST/r1i1p1f1/AERmon/od550aer/gn/", consolidated=False)
GroupNotFoundError: group not found at path ''

What you expected to happen:
With versions 0.16.1 and earlier, passing a non-HTTPS remote URL path to open_zarr() as input would successfully open the remote store, provided that a package to handle the specific filesystem was available in the environment and the proper storage options were supplied.
Minimal Complete Verifiable Example:
Same as above, but with decode_times=False to circumvent a cftime dependency:
import xarray as xr

xr.open_zarr(
    "gs://cmip6/AerChemMIP/AS-RCEC/TaiESM1/histSST/r1i1p1f1/AERmon/od550aer/gn/",
    consolidated=True,
    decode_times=False,
)

Anything else we need to know?:
From a brief debug of the code, it looks like this error is a result of open_zarr() now calling open_dataset(engine="zarr") to open the Zarr store.
In this function, the remote URL path is now passed through _normalize_path() where it is not recognized as a remote URL (this check is done by is_remote_uri() which only checks for HTTPS) and is instead interpreted as a relative path in the local filesystem, where it does not exist.
I'm not sure if this meant to be expected behavior, as the documentation on reading datasets in the cloud does not show an example using a URL path as input, and only suggests to use a MutableMapping. However, this is a use case that worked before 0.16.2, and now no longer works.
I think this could be resolved by expanding is_remote_uri() to check for other common remote URIs (e.g. gs:, s3:, etc.).
Environment:
Output of xr.show_versions()

INSTALLED VERSIONS
------------------
commit: None
python: 3.9.1 | packaged by conda-forge | (default, Dec  9 2020, 01:07:06) [MSC v.1916 64 bit (AMD64)]
python-bits: 64
OS: Windows
OS-release: 10
machine: AMD64
processor: Intel64 Family 6 Model 142 Stepping 10, GenuineIntel
byteorder: little
LC_ALL: None
LANG: None
LOCALE: English_United States.1252
libhdf5: None
libnetcdf: None

xarray: 0.16.2
pandas: 1.1.5
numpy: 1.19.4
scipy: None
netCDF4: None
pydap: None
h5netcdf: None
h5py: None
Nio: None
zarr: 2.6.1
cftime: 1.3.0
nc_time_axis: None
PseudoNetCDF: None
rasterio: None
cfgrib: None
iris: None
bottleneck: None
dask: None
distributed: None
matplotlib: None
cartopy: None
seaborn: None
numbagg: None
pint: None
setuptools: 51.0.0.post20201207
pip: 20.3.1
conda: None
pytest: None
IPython: 7.19.0
sphinx: None

cc @martindurant for fsspec issue

cc @martindurant for fsspec issue

I believe https://github.com/pydata/xarray/pull/4461 fixes this
Note that you can still use the "old" method of opening the mapper (e.g., fsspec.get_mapper) beforehand and passing that

I believe https://github.com/pydata/xarray/pull/4461 fixes this
Note that you can still use the "old" method of opening the mapper (e.g., fsspec.get_mapper) beforehand and passing that

Good to know - I figured this issue would be covered in that PR.
In general, I tend to use fsspec.get_mapper() in all cases where I need to access a remote store, but figured this would be good to document as it could potentially result in xarray workflows breaking with the version bump - for example, this PR in cmip6_preprocessing was the reason I opened this issue, as it showcases a Zarr testing suite that worked on 0.16.1 and stopped working on 0.16.2.

Good to know - I figured this issue would be covered in that PR.
In general, I tend to use fsspec.get_mapper() in all cases where I need to access a remote store, but figured this would be good to document as it could potentially result in xarray workflows breaking with the version bump - for example, this PR in cmip6_preprocessing was the reason I opened this issue, as it showcases a Zarr testing suite that worked on 0.16.1 and stopped working on 0.16.2.

https://github.com/pydata/xarray/pull/4823 working on this. Please try and comment.

https://github.com/pydata/xarray/pull/4823 working on this. Please try and comment.

With @martindurant's PR merged, this should be fixed now - thanks!


Show two months in singleDate mode

Allow show the view of two months when the singleDate option is selected. Thus avoiding extra clicks to select a day for the end user. For example, It's 31th March and you need select a day in the next month. For achieve this you need 2 clicks showing one month. With this modification only one click is necessary.

Working example:
https://jsfiddle.net/honrrqmn/


Document a backup mechansim

It would be good to have a documented (and easy?) backup mechanism for people to allow then to go back if they have problems with flashing.
Possibly based on rkdumper? https://forum.xda-developers.com/general/rooting-roms/tool-rkdumper-utility-backup-firmware-t2915363
Perhaps package up a script based on rkDumper and imgerpackrk that can create an image that could be flashed back?

For now I've just backed up every partition except userdata.

Yes, backing up all partitions works.  This topic was intended to be more about offering a backup solution for less technically minded people.


Put find back into HCursor

As discussed at https://gitter.im/circe/circe?at=5dfa18d549314a1d459c0a1c this PR puts the find method back into HCursor.

Codecov Report

Merging #1349 into master will decrease coverage by 0.12%.
The diff coverage is 0%.

@@            Coverage Diff             @@
##           master    #1349      +/-   ##
==========================================
- Coverage   85.66%   85.54%   -0.13%
==========================================
  Files          59       59
  Lines        2198     2200       +2
  Branches      103       99       -4
==========================================
- Hits         1883     1882       -1
- Misses        315      318       +3

Impacted Files
Coverage Δ

.../core/shared/src/main/scala/io/circe/HCursor.scala
71.05% <0%> (-3.95%)
:arrow_down:

...re/shared/src/main/scala/io/circe/JsonNumber.scala
92.77% <0%> (-3.62%)
:arrow_down:

...les/core/shared/src/main/scala/io/circe/Json.scala
76.36% <0%> (-2.43%)
:arrow_down:

.../core/shared/src/main/scala/io/circe/Decoder.scala
85.52% <0%> (+0.53%)
:arrow_up:

...rc/main/scala/io/circe/numbers/BiggerDecimal.scala
84.79% <0%> (+0.58%)
:arrow_up:

...re/shared/src/main/scala/io/circe/KeyDecoder.scala
97.29% <0%> (+2.7%)
:arrow_up:

...d/src/main/scala/io/circe/cursor/ArrayCursor.scala
69.23% <0%> (+7.69%)
:arrow_up:

...d/src/main/scala/io/circe/NonEmptySeqDecoder.scala
100% <0%> (+8.33%)
: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 78d7d98...e07aa5d. Read the comment docs.

Thanks. We should have a test for this but I can do that later.

Should I just write a test straight into this PR?

@mdedetrich Up to you! I'm not currently planning an 0.12.4 but could do it if there's demand—otherwise there's no rush on this.

Ah understood, I will try and dig up an older test (or write my own)


Generate garbled code starting with u, incorrect JSON format, duplicate request

Bug description

Bug solved method

Environment information

cenos7  python 3.9.10
mac       python 3.11.6

LLM type and model name:
System version:
Python version:

pip install metaGPT
no docker

packages version:
installation method:

Screenshots or logs

mac log:
2024-02-15 16:09:37.230 | INFO     | metagpt.utils.cost_manager:update_cost:52 - Total running cost: $0.000 | Max budget: $10.000 | Current cost: $0.000, prompt_tokens: 0, completion_tokens: 0
2024-02-15 16:09:37.233 | WARNING  | metagpt.utils.repair_llm_raw_output:extract_content_from_output:308 - extract_content try another pattern: [CONTENT]([\s\S])[/CONTENT]
2024-02-15 16:09:37.235 | WARNING  | metagpt.utils.repair_llm_raw_output:run_and_passon:256 - parse json from content inside [CONTENT][/CONTENT] failed at retry 1, exp: Invalid \uXXXX escape: line 23 column 15 (char 1656)
2024-02-15 16:09:37.235 | INFO     | metagpt.utils.repair_llm_raw_output:repair_invalid_json:225 - repair_invalid_json, raw error: Invalid \uXXXX escape: line 23 column 15 (char 1656)
2024-02-15 16:09:37.236 | ERROR    | metagpt.utils.common:log_it:476 - Finished call to 'metagpt.actions.action_node.ActionNode._aask_v1' after 136.099(s), this was the 4th time calling it. exp: RetryError[<Future at 0x13237b810 state=finished raised JSONDecodeError>]
[CONTENT]
{
"name": "\u9f99\u51e4\u6cb3\u7684\u5c0f\u767d\u6761",
"user_group": "\u5e7c\u7a1a\u5b69\u5b50\u548c\u5bb6\u9576",
"outlines": [
"\u7ae0\u8282 1: \u767d\u6761\u6c34\u4e1a\u7684\u5947\u9646\u5f00\u59cb",
"\u7ae0\u8282 2: \u9f99\u51e4\u6cb3\u4e0a\u7684\u5c0f\u670b\u53cb",
"\u7ae0\u8282 3: \u6df1\u6e0a\u7684\u9690\u79c1\u4e0e\u5e7b\u60f3",
"\u7ae0\u8282 4: \u5f20\u5f20\u7684\u51fa\u73b0",
"\u7ae0\u8282 5: \u6c90\u6c90\u548c\u6沐沐\u7684\u5403\u60ca",
"\u7ae0\u8282 6: \u5c0f\u53f6\u7684\u5bb6\u4e61\u4e8b",
"\u7ae0\u8282 7: \u767d\u6761\u7684\u52a8\u4f5c",
"\u7ae0\u8282 8: \u5e7b\u60f3\u4e16\u754c\u7684\u5f00\u653e",
"\u7ae0\u8282 9: \u4e00\u6b21\u5b8c\u7f8e\u7684\u540e\u5907",
"\u7ae0\u8282 10: \u4e00\u5207\u5f52\u4e8e\u5e73\u9759"
],
"background": "\u9f99\u51e4\u6cb3\u8fd9\u4e2a\u5e7f\u897f\u7684\u6cb3\u6d41\u548c\u5176\u8fb9\u7f18\u7684\u7eff\u8272\u533a\u57df\u5177\u6709\u7740\u4e0d\u540c\u7684\u79d8\u5bc6\u548c\u5e7b\u60f3\u3002\u5c0f\u767d\u6761\u662f\u6cb3\u91cc\u7684\u4e00\u6761\u5e73\u51e1\u800c\u53c8\u5145\u6ee1\u60c5\u611f\u7684\u5c0f\u9c7c\u3002",
"character_names": [
"\u94b0\u94b0",
"\u6c90\u6c90",
"\u5c0f\u53f6",
"\u767d\u6761"
],
"conflict": "\u94b0\u94b0\u548c\u6c90\u6c90\u5728\u6c34\u4e2d\u6d3b\u52a8\u65f6\u9047\u5230\u4e86\u767d\u6761\u3002\u4ed6\u4eec\u60f3\u4fdd\u62a4\u8be5\u5c0f\u9c7c\u4e0d\u88ab\u522b\u4eba\u635f\u8017\u3002",
"plot": "\u94b0\u94b0\u548c\u6c90\u6c90\u9047\u5230\u4e86\u9f99\u51e4\u6cb3\u7684\u5c0f\u767d\u6761\u3002\u5c0f\u767d\u6761\u5177\u6709\u4e00\u79cd\u795e\u79d8\u
2024-02-15 16:10:10.527 | INFO     | metagpt.utils.cost_manager:update_cost:52 - Total running cost: $0.000 | Max budget: $10.000 | Current cost: $0.000, prompt_tokens: 0, completion_tokens: 0
2024-02-15 16:10:10.531 | WARNING  | metagpt.utils.repair_llm_raw_output:extract_content_from_output:308 - extract_content try another pattern: [CONTENT]([\s\S])[/CONTENT]
2024-02-15 16:10:10.534 | WARNING  | metagpt.utils.repair_llm_raw_output:run_and_passon:256 - parse json from content inside [CONTENT][/CONTENT] failed at retry 1, exp: Invalid \uXXXX escape: line 9 column 45 (char 478)
2024-02-15 16:10:10.535 | INFO     | metagpt.utils.repair_llm_raw_output:repair_invalid_json:225 - repair_invalid_json, raw error: Invalid \uXXXX escape: line 9 column 45 (char 478)
2024-02-15 16:10:10.536 | ERROR    | metagpt.utils.common:log_it:476 - Finished call to 'metagpt.actions.action_node.ActionNode._aask_v1' after 169.399(s), this was the 5th time calling it. exp: RetryError[<Future at 0x1325d4c50 state=finished raised JSONDecodeError>]
[CONTENT]
{
"name": "\u9f99\u51e4\u6cb3\u7684\u5c0f\u767d\u6761",
"user_group": "\u5e7c\u7a1a\u5b66\u751f\u548c\u540c\u884c\u7231\u597d\u5f71\u54cd\u7c7b\u5c0f\u8bf4\u7684\u8bfb\u8005",
"outlines": [
"\u7ae0\u8282 1: \u767d\u6761\u6cb3\u4e2d\u7684\u6df1\u5904\u4f1a\u8bdd",
"\u7ae0\u8282 2: \u9f99\u94b0\u548c\u6c90\u6c90\u7684\u666f\u8272",
"\u7ae0\u8282 3: \u5c0f\u53f6\u7684\u5bc2\u5bde",
"\u7ae0\u8282 4: \u6df1\u6e0a\u7684\u5bc6\u5f7b",
"\u7ae0\u8282 5: \u767d\u6761\u7684\u5175\u4e8b",
"\u7ae0\u8282 6: \u4e24\u4e2a\u5c0f\u670b\u53cb\u7684\u52a8\u4f5c",
"\u7ae0\u8282 7: \u6c34\u4e0e\u667a\u6167\u7684\u5408\u4f5c",
"\u7ae0\u8282 8: \u5f52\u6765\u7684\u5f71\u54cd",
"\u7ae0\u8282 9: \u5f3a\u5927\u7684\u5bff\u53d1",
"\u7ae0\u8282 10: \u4e00\u5207\u5f52\u8f66\u540e\u7684\u5e73\u9759"
],
"background": "\u9f99\u51e4\u6cb3\u662f\u4e00\u6761\u5e7d\u9e23\u800c\u53d1\u5149\u7684\u6cb3\u6d41\uff0c\u5176\u8fb9\u8ddd\u4e00\u5e26\u5c0f\u679d\u6728\u6811\u548c\u4e00\u5806\u5404\u5f0f\u7684\u5c0f\u751f\u547d\u3002\u5c0f\u767d\u6761\u662f\u6cb3\u4e2d\u4e00\u79cd\u5f88\u5c11\u89c1\u5230\u7684\u5c0f\u9c7c\u7c7b\u578b\uff0c\u5177\u6709\u4e0d\u540c\u7684\u8272\u5f69\u548c\u7279\u5f81\u3002",
"character_names": [
"\u767d\u6761",
"\u94b0\u94b0",
"\u6c90\u6c90",
"\u5c0f\u53f6"
],
"conflict": "\u767d\u6761\u9700\u8981\u89e3\u51b3\u6cb3\u533a\u7684\u75d5\u75c5\u95ee\u9898\uff0c\u800c\u94b0\u94b0\u548c\u6c90\u6c90\u521d\u672a\u8bc6\u8bba\u5230\u767d\u6761\u7684\u4fdd\u62a4\u4f5c\u7528\u3002",
"plot": "\u767d\u6761\u662f\u9f99\u51e4\u6cb3\u4e
2024-02-15 16:10:52.683 | INFO     | metagpt.utils.cost_manager:update_cost:52 - Total running cost: $0.000 | Max budget: $10.000 | Current cost: $0.000, prompt_tokens: 0, completion_tokens: 0
2024-02-15 16:10:52.689 | WARNING  | metagpt.utils.repair_llm_raw_output:extract_content_from_output:308 - extract_content try another pattern: [CONTENT]([\s\S]*)[/CONTENT]
2024-02-15 16:10:52.691 | WARNING  | metagpt.utils.repair_llm_raw_output:run_and_passon:256 - parse json from content inside [CONTENT][/CONTENT] failed at retry 1, exp: Invalid \uXXXX escape: line 24 column 51 (char 1674)
2024-02-15 16:10:52.691 | INFO     | metagpt.utils.repair_llm_raw_output:repair_invalid_json:225 - repair_invalid_json, raw error: Invalid \uXXXX escape: line 24 column 51 (char 1674)
2024-02-15 16:10:52.692 | ERROR    | metagpt.utils.common:log_it:476 - Finished call to 'metagpt.actions.action_node.ActionNode._aask_v1' after 211.555(s), this was the 6th time calling it. exp: RetryError[<Future at 0x1324cb250 state=finished raised JSONDecodeError>]
Traceback (most recent call last):
File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/tenacity/init.py", line 382, in call
result = fn(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^
File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/metagpt/utils/repair_llm_raw_output.py", line 284, in retry_parse_json_text
parsed_data = CustomDecoder(strict=False).decode(output)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/metagpt/utils/custom_decoder.py", line 297, in decode
return super().decode(s)
^^^^^^^^^^^^^^^^^
File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/json/decoder.py", line 337, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/json/decoder.py", line 353, in raw_decode
obj, end = self.scan_once(s, idx)
^^^^^^^^^^^^^^^^^^^^^^
File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/metagpt/utils/custom_decoder.py", line 65, in scan_once
return _scan_once(string, idx)
^^^^^^^^^^^^^^^^^^^^^^^
File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/metagpt/utils/custom_decoder.py", line 36, in _scan_once
return parse_object((string, idx + 1), strict, _scan_once, object_hook, object_pairs_hook, memo)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/metagpt/utils/custom_decoder.py", line 164, in JSONObject
value, end = scan_once(s, end)
^^^^^^^^^^^^^^^^^
File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/metagpt/utils/custom_decoder.py", line 34, in _scan_once
return parse_string(string, idx + 1, strict, delimiter=nextchar)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/metagpt/utils/custom_decoder.py", line 258, in py_scanstring
uni = _decode_uXXXX(s, end)
^^^^^^^^^^^^^^^^^^^^^
File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/json/decoder.py", line 67, in _decode_uXXXX
raise JSONDecodeError(msg, s, pos)
json.decoder.JSONDecodeError: Invalid \uXXXX escape: line 24 column 51 (char 1674)
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/tenacity/_asyncio.py", line 50, in call
result = await fn(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/metagpt/actions/action_node.py", line 427, in _aask_v1
parsed_data = llm_output_postprocess(
^^^^^^^^^^^^^^^^^^^^^^^
File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/metagpt/provider/postprocess/llm_output_postprocess.py", line 19, in llm_output_postprocess
result = postprocess_plugin.run(output=output, schema=schema, req_key=req_key)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/metagpt/provider/postprocess/base_postprocess_plugin.py", line 68, in run
new_output = self.run_repair_llm_output(output=output, schema=schema, req_key=req_key)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/metagpt/provider/postprocess/base_postprocess_plugin.py", line 32, in run_repair_llm_output
parsed_data = self.run_retry_parse_json_text(content)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/metagpt/provider/postprocess/base_postprocess_plugin.py", line 47, in run_retry_parse_json_text
parsed_data = retry_parse_json_text(output=content)  # should use output=content
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/tenacity/init.py", line 289, in wrapped_f
return self(f, *args, **kw)
^^^^^^^^^^^^^^^^^^^^
File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/tenacity/init.py", line 379, in call
do = self.iter(retry_state=retry_state)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/tenacity/init.py", line 326, in iter
raise retry_exc from fut.exception()
tenacity.RetryError: RetryError[<Future at 0x1324cb250 state=finished raised JSONDecodeError>]
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/Users/unm/Desktop/Novel/write_novel_cat.py", line 78, in
asyncio.run(generate_novel())
File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/asyncio/runners.py", line 190, in run
return runner.run(main)
^^^^^^^^^^^^^^^^
File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/asyncio/runners.py", line 118, in run
return self._loop.run_until_complete(task)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/asyncio/base_events.py", line 654, in run_until_complete
return future.result()
^^^^^^^^^^^^^^^
File "/Users/unm/Desktop/Novel/write_novel_cat.py", line 59, in generate_novel
novel_node = await ActionNode.from_pydantic(Novel).fill(context=instruction, llm=LLM())
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/metagpt/actions/action_node.py", line 505, in fill
return await self.simple_fill(schema=schema, mode=mode, images=images, timeout=timeout, exclude=exclude)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/metagpt/actions/action_node.py", line 457, in simple_fill
content, scontent = await self._aask_v1(
^^^^^^^^^^^^^^^^^^^^
File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/tenacity/_asyncio.py", line 88, in async_wrapped
return await fn(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/tenacity/_asyncio.py", line 47, in call
do = self.iter(retry_state=retry_state)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/tenacity/init.py", line 326, in iter
raise retry_exc from fut.exception()
tenacity.RetryError: RetryError[<Future at 0x1324ca790 state=finished raised RetryError>]
unm@UNMdeMacBook-Air Novel %

what's your run input? It seems that the fields of user_group and background are not from the output of Software Generation.

I see, you run the examples/write_novel.py. What is the LLM.

I see, you run the examples/write_novel.py. What is the LLM model ?

zhipuai

@lowpair here is the output from zhipu using write_novel.py. Do you have make changes of the code or else?
(metagpt) MacBook-Pro:MetaGPT xxxx$ python3 examples/write_novel.py
2024-02-23 18:34:27.722 | INFO     | metagpt.const:get_metagpt_package_root:29 - Package root set to /Users/xxxx/work/demo-code/MetaGPT
[CONTENT]
{
    "name": "Harry Potter in The Lord of the Rings",
    "user_group": "Fantasy readers, Harry Potter and LOTR fans",
    "outlines": [
        "Chapter 1: The Boy Who Lived Meets the Ring",
        "Chapter 2: Magic and Middle-earth",
        "Chapter 3: The Fellowship of Wizards",
        "Chapter 4: The Two Towers of Hogwarts",
        "Chapter 5: The Return of the Dark Lord",
        "Chapter 6: The Battle of Hogwarts and Beyond",
        "Chapter 7: The Power of Friendship",
        "Chapter 8: The Paths of the Dead and the Living",
        "Chapter 9: The End of All Things",
        "Chapter 10: The Age of Peace"
    ],
    "background": "In a world where the magic of Harry Potter and the epicness of The Lord of the Rings intertwine, a new threat emerges that requires the combined efforts of two worlds' heroes.",
    "character_names": [
        "Harry Potter",
        "Frodo Baggins",
        "Gandalf",
        "Voldemort",
        "Sauron",
        "Hermione Granger",
        "Ron Weasley",
        "Aragorn",
        "Legolas",
        "Gimli",
        "Professor Dumbledore",
        "Severus Snape"
    ],
    "conflict": "Harry Potter discovers the One Ring, which is being sought by both Voldemort and Sauron, each for their own malevolent purposes. Harry and Frodo must unite to protect the Ring and prevent the rise of darkness in both their worlds.",
    "plot": "Harry Potter, on the run from Voldemort, stumbles upon the Shire and befriends Frodo Baggins.  Along the way, they encounter familiar faces from both Harry's world and Middle-earth, forming an unforgettable fellowship. As the forces of darkness gather, Harry and Frodo must navigate through treacherous lands, face their fears, and ultimately confront the ultimate evil.",
    "ending": "In a climactic battle that spans across both Hogwarts and Middle-earth, the heroes triumph over Voldemort and Sauron, destroying the Ring and vanquishing the dark lords. The worlds are forever changed, with magic and friendship uniting the two. Harry and Frodo are hailed as legends, and an age of peace begins for both wizarding and Middle-earth alike."
}
[/CONTENT]
2024-02-23 18:34:52.681 | INFO     | metagpt.utils.cost_manager:update_cost:54 - Total running cost: $0.013 | Max budget: $10.000 | Current cost: $0.013, prompt_tokens: 371, completion_tokens: 525
[CONTENT]
{
    "name": "Chapter 1: The Boy Who Lived Meets the Ring",
    "content": "Harry Potter had been on the run since the Battle of the Seven Potters. Voldemort's Death Eaters were relentless in their pursuit, and Harry found himself in a world he never knew existed—the Shire. It was there, amidst the peaceful hobbits, that he met Frodo Baggins, a young hobbit burdened with a heavy task. Frodo had been entrusted with the One Ring, a powerful artifact that could grant its bearer unending统治, and Harry sensed the darkness at surrounded it. As the two boys shared their stories, they realized that Voldemort and Sauron were both seeking the Ring for their own nefarious purposes. Understanding the gravity of the situation, Harry and Frodo decided to join forces. Their journey to destroy the Ring had begun."
}
[/CONTENT]
2024-02-23 18:35:01.925 | INFO     | metagpt.utils.cost_manager:update_cost:54 - Total running cost: $0.013 | Max budget: $10.000 | Current cost: $0.013, prompt_tokens: 722, completion_tokens: 191
[CONTENT]
{
    "name": "Chapter 1: The Boy Who Lived Meets the Ring",
    "content": "Harry Potter had been on the run since the Battle of the Seven Potters. Voldemort's Death Eaters were relentless in their pursuit, and Harry found himself in a world he never knew existed—the Shire. It was there, amidst the peaceful hobbits, that he met Frodo Baggins, a young hobbit burdened with a heavy task. Frodo had been entrusted with the One Ring, a powerful artifact that could grant its bearer unending统治, and Harry sensed the darkness at surrounded it. As the two boys shared their stories, they realized that Voldemort and Sauron were both seeking the Ring for their own nefarious purposes. Understanding the gravity of the situation, Harry and Frodo decided to join forces. Their journey to destroy the Ring had begun."
}
[/CONTENT]

You are right;
I changed the default language of Field, causing zhipiai to return a hexadecimal reply starting with u; After restoring the default English, the characters returned by zhipuai are normal.


feat: run functional test on MacOS

The CI will now run the functional test on a MacOS runner. The testing script was changed to accommodate MacOS.
Fixes: #802
Co-authored-by: Mark Sturdevant<EMAIL_ADDRESS>Signed-off-by: Sébastien Han<EMAIL_ADDRESS>

@russellb PTAL


Add nightly buildkite pipeline

As well as adding the nightly tests, I also moved the cardano-ledger files into a cardano-ledger directory, which improves nix caching while testing changes to nix infrastructure.

bors r+

bors r-

bors r+

bors r+


ldmadmin is not running after service edex_ldm start

LDM seems to be started successfully:
[awips@detectdms ~]$ sudo service edex_ldm start
Starting edex_ldm (via systemctl):                         [  OK  ]

However, the EDEX status shows ldmadmin as not running:
[awips@detectdms ~]$ edex
[edex status]
 postgres    :: running :: pid 5107
 pypies      :: running :: pid 5194
 qpid        :: running :: pid 5240
 EDEXingest  :: running :: pid 6057 20025
 EDEXgrib    :: running :: pid 6133 20034
 EDEXrequest :: running :: pid 6194 20042
 ldmadmin    :: not running

ldmadmin is actually not available by the awips user. I thought it would be installed by ./awips_install.sh --edex.
So I will follow the documentations to install LDM.

I suggest looking at your install because LDM should be installed in /awips2/ldm

According to the docs, two locations below must be there. But they are not available:
/awips2/ldm/etc - Location of ldmd.conf and pqact.conf
/awips2/ldm/logs - LDM logs

Although the /awips2/ldm directory has been created:
[awips@detectdms ldm]$ ls
ldm-6.14.5  ldm-6.14.5.tar.gz  SOURCES

I reinstalled EDEX and according to awips-install.log, there are some issues with the LDM rpm package:

Installing : awips2-ldm-20.3.2-<IP_ADDRESS>.el7.x86_64                     49/145
/var/tmp/rpm-tmp.NKULzr: line 32: patch: command not found
warning: %post(awips2-ldm-20.3.2-<IP_ADDRESS>.el7.x86_64) scriptlet failed, exit status 1
Non-fatal POSTIN scriptlet failure in rpm package awips2-ldm-20.3.2-<IP_ADDRESS>.el7.x86_64

After completing the installation there is an error message as below:

...
Complete!
sed: can't read /awips2/ldm/etc/registry.xml: No such file or directory
EDEX server has finished installing, the install log can be found in /tmp/awips-install.log

LDM is apparently not installed and its directories are not there:
[centos@detectdms ~]$ cd /awips2/ldm/
[centos@detectdms ldm]$ ls
ldm-6.14.5  ldm-6.14.5.tar.gz  SOURCES

As you can see from the initial installation of LDM it was failing to install because it could not find the patch command, which likely would mean it doesn't matter how you install it, LDM will fail without the patch command available.
I suggest installing patch (sudo yum install patch) and re-installing EDEX (I'm not sure if you are running a "minimal centos7" cloud server, but most default centos servers already have patch installed which is why we have never had anyone run into this issue before)

After installing patch, some other problems occurred:
...
  Installing : awips2-python-tables-3.5.1-<IP_ADDRESS>.16.2.1.el7.x86_64     48/145
  Installing : awips2-ldm-20.3.2-<IP_ADDRESS>.el7.x86_64                     49/145
patching file pqact/filel.c
[awips-install.log](https://github.com/user-attachments/files/16173918/awips-install.log)

Hunk #1 succeeded at 1288 (offset 2 lines).
Hunk #2 succeeded at 1340 with fuzz 1 (offset 12 lines).
patching file pqact/pqact.c
Hunk #1 succeeded at 269 (offset 11 lines).
Hunk #2 succeeded at 293 (offset 11 lines).
Hunk #3 succeeded at 332 (offset 9 lines).
Hunk #4 succeeded at 342 (offset 9 lines).
Hunk #5 succeeded at 394 (offset 9 lines).
Hunk #6 succeeded at 424 with fuzz 1 (offset 8 lines).
FATAL: ldm configure has failed!
warning: %post(awips2-ldm-20.3.2-<IP_ADDRESS>.el7.x86_64) scriptlet failed, exit status 1
Non-fatal POSTIN scriptlet failure in rpm package awips2-ldm-20.3.2-<IP_ADDRESS>.el7.x86_64
  Installing : awips2-python-matplotlib-2.2.4-<IP_ADDRESS>.16.2.1.el7.x86    50/145
  Installing : awips2-maps-database-20.3.2-2.noarch                      51/145
...

Here's the full log file: awips-install.log

Preinstallation:
I had to modify yum configs, since due to the EOL of CentOS-7, the previous repos were not available anymore:
sudo sed -i s/mirror.centos.org/vault.centos.org/g /etc/yum.repos.d/*.repo
sudo sed -i s/^#.*baseurl=http/baseurl=http/g /etc/yum.repos.d/*.repo
sudo sed -i s/^mirrorlist=http/#mirrorlist=http/g /etc/yum.repos.d/*.repo

More information:
[awips@detectdms ~]$ sudo yum grouplist
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * epel: mirror.freethought-internet.co.uk
Available Environment Groups:
   Minimal Install
   Compute Node
   Infrastructure Server
   File and Print Server
   Cinnamon Desktop
   MATE Desktop
   Basic Web Server
   Virtualization Host
   Server with GUI
   GNOME Desktop
   KDE Plasma Workspaces
   Development and Creative Workstation
Installed Groups:
   awips2-server
Available Groups:
   Cinnamon
   Compatibility Libraries
   Console Internet Tools
   Development Tools
   Educational Software
   Electronic Lab
   Fedora Packager
   General Purpose Desktop
   Graphical Administration Tools
   Haskell
   LXQt Desktop
   Legacy UNIX Compatibility
   MATE
   Milkymist
   Scientific Support
   Security Tools
   Smart Card Support
   System Administration Tools
   System Management
   TurboGears application framework
   Xfce
Done

Is it still due to the CentOS-7 minimal installation?

It seems the issue has been resolved.
I replaced the VM with a snapshot of CentOS-7 preinstalled with AWIPS. Now LDM is also running.


popper element causes document overflow inside css grid

Hey there,
I played the last few hours a lot with popper.js. My goal was to build a dropdown menu which automatically shifts it's position, when it normally would flow out of the viewport.
In my project I use Bootstrap and of course my dropdown element is somehow nested into Bootstraps grid. If I call the popper function I would expect the popper element always to stay in the viewport boundaries. But instead the element causes the page to render vertical scrollbars on some resolution (for example in a viewport between ~900 - ~1200px).
If I remove Bootstrap grid CSS, then i get the expected result and no overflow is happening at all.
So because of this I guess that somehow the margins and paddings on the bootstrap grid classes are not respected by popper.js.
Here is my Codepen. Try to play with the window size to see the bug.
http://codepen.io/PhilReinking/pen/BQYemN
Regards,
Philipp

This is weird.
May I ask you to try out the same codepen using 1.0.0-alpha.6? If it fails there as well then we'll want to create a test case and make sure it passes.

I just tried out my example with v1.0.0-alpha.6 and there was only one change required to make it work.
If the minimum body height is not set to the viewports height (100vh) then the plugin would position the element out of the screen and add the x-out-of-boundaries attribute to it.
The absolute positioning seems to work with the v1.0.0-alpha.6.
Here is my Codepen with the mentioned changes:
http://codepen.io/PhilReinking/pen/ObZaxN

Ah nice!
I'll keep this issue around since it's still a v0 bug, but I don't plan to spend time on v0 to fix it since v1 is near its first stable beta.
I hope it makes sense.

Yep, for me it is ok. I stick with the new version.

Since v1 is almost here, I'm going to close this issue suggesting everybody to move to v1.


would like to join as contributor

Hello,
Would like to join as contributor ...
have signed the agreement as individual contributor.
please let me know how to start contributing to code and documentation
@Megha849 : can you please take care of this ...?
Regards,

If you want to contribute then just make PRs. I know @Megha849 with be pushing out documentation on how to create collectors, widgets etc, soon.

as of now, would like to contribute to documentations. i would like to modify the existing documentation page to reflect the correct installation steps. as a newbie, there are still certain confusion if someone reads the doc and follows the step by step instruction.
as i am doing this first time, it is very valuable to really validate the current docs and update if any point is missing. i felt some points were missing so thinking to update docs.
regarding code, yes will create PRs

@irfanjs - as @Sbrenthughes mentioned, just submit a PR with the changes you want to make and we will have a conversation there.

@irfanjs Refer to the Contribution Guidelines section in the documentation for information on contributing new collectors, widgets, and to the documentation.


Azure Policy / Gatekeeper v3 EnforceOPAConstraint  is deprecated

https://docs.microsoft.com/en-us/azure/governance/policy/samples/built-in-policies#kubernetes refers to
EnforceOPAConstraint wheras https://docs.microsoft.com/en-us/azure/governance/policy/concepts/policy-for-kubernetes?toc=/azure/azure-arc/kubernetes/toc.json states that :
/!\ IMPORTANT  :

Azure Policy for Kubernetes is in Preview and only supports Linux node pools and built-in policy definitions. Built-in policy >definitions are in the Kubernetes category. The limited preview policy definitions with EnforceOPAConstraint and >EnforceRegoPolicy effect and the related Kubernetes Service category are deprecated. Instead, use the effects audit and deny >with Resource Provider mode Microsoft.Kubernetes.Data.

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

ID: befcd549-5b66-5e93-34a2-ff31c8c0855c
Version Independent ID: a8337578-29e7-9087-3100-d25caad271ee
Content: List of built-in policy definitions - Azure Policy
Content Source: articles/governance/policy/samples/built-in-policies.md
Service: azure-policy
GitHub Login: @DCtheGeek
Microsoft Alias: dacoulte

#assign:DCtheGeek

@ezYakaEagle442 Thanks for the feedback!  Those built-in policy definitions recently got updated.  Can you refresh the page and make sure you are seeing the latest version?  The most recent version shouldn't have any built-ins that use EnforceOPAConstraint anymore.
@MicrosoftDocs/azure-cxp-triage Please label 'doc-enhancement' and #in-progress.

@ezYakaEagle442 Since the pages have been updated and the references are gone, I'm going to close this issue.  If you see it show back up in the doc, please let us know.  Thanks!
@MicrosoftDocs/azure-cxp-triage #please-close


corerad: 0.2.6 -> 0.2.7

Motivation for this change
New CoreRAD release, support for systemd readiness notification. See second commit for the unit change, and https://www.freedesktop.org/software/systemd/man/sd_notify.html#Description for documentation.
Things done

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

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

[x] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

Binary builds, tests continue to pass.
$ ./result/bin/corerad -h
CoreRAD v0.2.7 BETA (2020-06-24)
flags:
  -c string
        path to configuration file (default "corerad.toml")
  -init
        write out a default configuration file to "corerad.toml" and exit

client: waiting for success: ping -c 1 fd00:dead:beef:dead::1
(0.02 seconds)
(7.85 seconds)
Verify SLAAC on client
client: waiting for success: rdisc6 -1 -r 10 eth1
(0.32 seconds)
client: waiting for success: ip -6 addr show dev eth1 | grep -q 'fd00:dead:beef:dead:'
(0.02 seconds)
client: must succeed: ip -6 addr show dev eth1
(0.00 seconds)
(0.34 seconds)
Verify HTTP debug server is configured
router: must succeed: curl localhost:9430/metrics
(0.05 seconds)
(0.05 seconds)
(8.35 seconds)
test script finished in 8.37s
cleaning up
killing client (pid 6)
killing router (pid 17)
(0.00 seconds)
/nix/store/b9s5ql4qsfqh69srjdpvry695cbzrbnr-vm-test-run-unnamed

/cc @jonringer @marsam per previous PRs (thank you again!)

@GrahamcOfBorg test corerad

/marvin opt-in

/status needs_review

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/prs-ready-for-review/3032/201

Any more thoughts @zowoq? Thanks for your time.


Update minimum macOS target to 10.14

Platforms Impacted

[ ] iOS
[x] macOS

Description of changes
macOS 11.0 is out. Following our "Support N-2 versions of macOS" pattern, let's deprecate support for anything earlier than macOS 10.14.

Update our xcconfig to have the minimum deployment target be 10.14, not 10.13
Remove explicit availability checks for macOS 10.14, this should be the default now.
Remove some extra static variables from Button.swift that were only needed for 10.13 and below.
Change one use of SetNeedsDisplay() in CalendarDayButton.swift to needsDisplay = true as setNeedsDisplay() is deprecated in 10.14

Verification
Locally built the macOS test app
Pull request checklist
This PR has considered:

[ ] Light and Dark appearances
[ ] VoiceOver and Keyboard Accessibility
[ ] Internationalization and Right to Left layouts
[ ] Different resolutions (1x, 2x, 3x)
[ ] Size classes and window sizes (iPhone vs iPad, notched devices, multitasking, different window sizes, etc)

Microsoft Reviewers: Open in CodeFlow

we also need to update the readme page of this repo that says it support 10.13 ....

@Saadnajmi @rdeassis : this kind of change... I hope we should update the version as well? so people know where is the clear point of drop off of 10.13 support.

@Saadnajmi @rdeassis : this kind of change... I hope we should update the version as well? so people know where is the clear point of drop off of 10.13 support.

I figured it would be roped into the next / it's own release via a separate PR. We can also wait on this PR until we're sure we're good to drop 10.13, and merge it in then


Fix docs

I think it's a very good project.
I'll try to use it in more detail after this.
I'll send you a pull request for what's interesting in the docs first.
The fixes are as follows:

Fix some indents in the example code.

e.g.
with open(input_filename) as f:
  csv_reader = csv.reader(f)

Specify type annotation with a class instead of a string in the class name.

I apologize if you use this notation as an expected behavior.

e.g.
>>> dataset2: 'CWLFilePathInput' = './data/data.csv'

Fix a mistake in the class specification for type annotation

e.g.
>>> dataset1: CWLBooleanInput = 1
>>> dataset2: 'CWLBooleanInput' = 2

Hi! Thank you very much for contacting.
Actually what you changed is not wrong but maybe it is not very clear in the documentation. You can use the typing annotation for the basic data types by importing the ipython2cwl or if you don't want to import them you can just write the typing annotation as a string. For example, if you check here at cell 4 all these annotations are correct.

You can use the typing annotation for the basic data types by importing the ipython2cwl or if you don't want to import them you can just write the typing annotation as a string. For example, if you check here at cell 4 all these annotations are correct.

Great!!
I think it's a very good specification.
I'll push the fix commit again.

@suecharo Thank you very much!!


Output Image resolution size is very small

Output image file when saved as .tif then its resolution size saved to small size. 3000X4000 images are saved in 183X250 with file size 184kb. I want to save in same resolution as image is taken.

Please provide some code to understand what is wrong. Do you use TiffSaver or TiffConverter?

I used your code and instruction that you have given on readme file.

There are few ways to save image. Provide choice which you used


fix(category_theory/functor): make obj_eq_coe a rfl-lemma

This is needed to, for example, let dsimp turn 𝟙 (F.obj X) into 𝟙 (F X).

Thanks for catching this! I agree this is an essential change.


dependency track parser: fix dedupe, set hash code fields

fixes #3647

add dedupe hash code config
add file_path to make legacy dedupe happy
add vuln_id_from_tool field
make title format/value more useful
allow .txt file uploads
extend unit tests

Would this come with a note to eventually run the manage.py dedupe at all?

I was thinking about a migration to do that. But might be to much for big instances. In general we need to document that a dedupe run (or hash code compute run) is needed.

Would this come with a note to eventually run the manage.py dedupe at all?

I was thinking about a migration to do that. But might be to much for big instances. In general we need to document that a dedupe run (or hash code compute run) is needed.

I think a migration is a bit much as many probably don't use this scanner and re-computing the full db can take time. we probably should update the next release note and tell ppl that use the scanner and that use dedupe to run the full db deduplication. how about adding a label in the PRs that change the dedupe configuration so that we can flag those easily from the release drafter? does the " Requires settings change or database migration" family in the release drafter automatically find the PR tagged as "new migration"?

I think a migration is a bit much as many probably don't use this scanner and re-computing the full db can take time. we probably should update the next release note and tell ppl that use the scanner and that use dedupe to run the full db deduplication. how about adding a label in the PRs that change the dedupe configuration so that we can flag those easily from the release drafter? does the " Requires settings change or database migration" family in the release drafter automatically find the PR tagged as "new migration"?


thread 'main' panicked at 'there is no reactor running, must be called from the context of a Tokio 1.x runtime'

Full error: https://gist.github.com/Belanchuk/e5e17a40a190190b82c0e9c59663fe08
My dependencies in Cargo.toml:
[dependencies]
actix-identity = "0.3"
actix-web = { version = "3", features = ["rustls"] }
actix-files = "0.5.0"
actix-session = "0.4"
actix-utils = "2"
actix-connect = "2.0.0"
chrono = { version = "0.4", features = ["serde"] }
derive_more = "0.99"
dotenv = "0.15"
env_logger = "0.8"
futures = "0.3.12"
lazy_static = "1.4"
rust-argon2 = "0.8"
serde = "1.0"
serde_derive = "1.0"
serde_json = "1.0"
sqlx = { version = "0.5.1", features = [ "runtime-actix-rustls", "postgres", "uuid", "json" ] }
uuid = { version = "0.8", features = ["serde", "v4"] }
validator = { version = "0.12", features = ["derive"] }

But when i downgrade sqlx to v4: sqlx = { version = "0.4", features = [ "runtime-actix-rustls", "postgres", "uuid", "json" ] } all right.
Should I upgrade to v5?
And if so, how can I make it work?

actix-web in version 3.0 still uses tokio 0.2, sqlx 0.5 uses tokio 1.0
You can not mix both up, either stick to sqlx 0.4 and wait when stable actix for tokio 1.0 comes out or use the beta versions with are released


⚠ Bofrost.de has degraded performance

In 28fc247, Bofrost.de (https://www.bofrost.de) experienced degraded performance:

HTTP code: 200
Response time: 2219 ms

Resolved: Bofrost.de performance has improved in 61d11f7 after 9 minutes.


Document the WebAssembly story

As far as I can tell this library currently does not support wasm. But since Rust now supports wasm on stable it would be useful if documentation existed somewhere detailing this libraries future plans for supporting wasm, or if it already does and I missed that, there should be docs on how to use this library with wasm.
Edit: After fiddling a bit, I have determined that at the very least the todomvc example can run under wasm. This just means that it is unclear if wasm is actually supported or if this is something that is not guarenteed to work going forward.

I managed to make a basic example work, but not todomvc:
$ wargo build --release
$ cp target/wasm32-unknown-emscripten/release/deps/todomvc-*.{js,wasm} static/  # Hacky, I know :)
$ mv static/todomvc-*.js static/todomvc.js
$ mv static/todomvc-*.wasm static/todomvc.wasm

Then I modified <script src="js/app.js"></script> into(inspiration):
<script type='text/javascript'>
	var Module = {};

	fetch('todomvc.wasm').then(response =>
		response.arrayBuffer()
		).then(buffer => {

		Module.wasmBinary = buffer;

		var script = document.createElement('script');
		script.src = "todomvc.js";
		script.onload = function() {
		console.log("Emscripten boilerplate loaded.")
		}
		document.body.appendChild(script);
	});
</script>

This basic page would work then:
<!doctype html>
<html lang="en">
	<head>
		<meta charset="utf-8">
		<title>stdweb • Alert</title>
	</head>
	<body>
		<input class="the-input">
		<script type='text/javascript'>
			var Module = {};

			fetch('todomvc.wasm').then(response =>
				response.arrayBuffer()
				).then(buffer => {

				Module.wasmBinary = buffer;

				var script = document.createElement('script');
				script.src = "todomvc.js";
				script.onload = function() {
				console.log("Emscripten boilerplate loaded.")
				}
				document.body.appendChild(script);
			});
		</script>
	</body>
</html>

For this code(did not plan initially  to post the code: at this point I realise I should better push the code somewhere instead of creating a big comment, but this is the last part):
fn main() {
    stdweb::initialize();

    let state = window().local_storage().get("state").and_then(|state_json| {
        serde_json::from_str(state_json.as_str()).ok()
    }).unwrap_or_else(State::new);

    let state = Rc::new(RefCell::new(state));

    let message: InputElement = document().query_selector(".the-input").unwrap().try_into().unwrap();
    message.add_event_listener(enclose!( (state, message) move |event: KeypressEvent| {
        if event.key() == "Enter" {
            event.prevent_default();

            let msg: String = message.value().try_into().unwrap();
            js! {
                alert( @{msg} );
            }
        }
    }));

    stdweb::event_loop();
}

I created a basic example of stdweb + wasm32: https://github.com/lilianmoraru/stdweb-alert-example
I did something wrong or the support is not great(stdweb or/and Rust + emscripten) but while trying to make todomvc to work, I had all kinds of missing symbols issues or things like that(even with the basic example sometimes - weird)...

I created a basic example of stdweb + wasm32: https://github.com/lilianmoraru/stdweb-alert-example

I did something wrong or the support is not great(stdweb or/and Rust + emscripten) but while trying to make todomvc to work, I had all kinds of missing symbols issues or things like that(even with the basic example sometimes - weird)...

@lilianmoraru Yes, the way you're using it isn't really supported (yet).
Basically, Rust's Emscripten-based wasm target requires a hefty runtime which you can find in the .js file generated alongside the .wasm. That .js file already includes the code necessary to load the .js file, so right now you're supposed to just load that .js and it will fetch the .wasm by itself, not the other way around.
Rust is going to have a native wasm target where it'll only generate a standalone .wasm file; I'll add support for that (to both stdweb and cargo-web) once I'll be able to download a reasonably working toolchain through rustup.

Currently it might not be, but I see no reason why we wouldn't be able to work something out. (I'll add it myself if I have to.)

I believe that wasm32-unknown-unknown is now available from rustup on nightly.

@emosenkis stweb wasm32-unknown-unknown does not currently work with it because it requires an event loop that is available only inside the emscripten environment.
wasm32-unknown-unknown is pretty basic right now, the std is mostly stubbed because compared to emscripten which offers File IO API for example(in RAM), this environment is basic, just wasm32.
If you want a crate to work under this target, the safest way is to not require std.

Since WebAssembly is now supported on every target that Rust supports - closing!