MSID: 87726 Version: 2 DOI: 2<IP_ADDRESS>3599

[PLACE MANUSCRIPT AND EDITOR DETAILS HERE WHEN AVAILABLE] See step 3
[PLACE PDF URL HERE WHEN AVAILABLE] See step 7
Step 1. Inform bioRxiv
Who can help: @QueenKraken, @nlisgo, @scottaubrey

[x] Manuscript is in data hub index (https://data-hub-api.elifesciences.org/enhanced-preprints/docmaps/v2/by-publisher/elife/get-by-manuscript-id?manuscript_id=87726)

Step 2. Create preview of manuscript
Who can help: @fred-atherden, @nlisgo, @scottaubrey

[ ] Manuscript is available for preview (https://prod--epp.elifesciences.org/preview/87726/v2)

[ ] Trigger import for staging: https://prod--epp.elifesciences.org/import
[ ] Sync data folder with s3://prod-elife-epp-data/data
[ ] Trigger import for staging: https://staging--epp.elifesciences.org/import
[ ] Sync data folder with s3://staging-elife-epp-data/data
[ ] Pull request created to enhanced-preprint-data
[ ] Post link to pull request below

Pull request: [PLACE LINK TO PULL REQUEST HERE]
Detailed instructions: https://github.com/elifesciences/enhanced-preprints-data#add-a-manuscript
Step 3: Awaiting public reviews and QC
Who can help: Production team

[ ] QC passed or QC not needed

Who can help: Editorial team

[x] Public reviews available on sciety (https://sciety.org/articles/activity/10.1101/2<IP_ADDRESS>3599)
[ ] Manuscript and editor details at the top of this issue (Supplied by Editorial team)
[x] Reviews returned by EPP - https://prod--epp.elifesciences.org/api/reviewed-preprints/87726/v2/reviews

Example
"msas": "Genetics and Genomics", "Neuroscience"
"msid": "84628"
"version": "1"
"preprintDoi": "10.1101/2<IP_ADDRESS>4241"
"articleType": "Reviewed Preprint"
"status": "Published from the original preprint after peer review and assessment by eLife."

"Reviewed Preprint posted": "2023-01-02"
"Sent for peer review": "2022-10-28"
"Posted to bioRxiv": "2022-11-21" (link: "Go to bioRxiv": "https://www.biorxiv.org/content/10.1101/2<IP_ADDRESS>4241v1")

Editors:
Reviewing Editor
Michael B Eisen
University of California, Berkeley, United States
Senior Editor
Michael B Eisen
University of California, Berkeley, United States

Step 4: Modify manuscripts.json (no PDF)

[ ] Reviewed preprint is published to EPP (https://elifesciences.org/reviewed-preprints/87726)

[ ] Pull request created to enhanced-preprint-client
[ ] Pull request switched to "Ready for review"
[ ] Post link to pull request below

[ ] Request that a doi be registered

[ ] Post link to #enhanced-preprint comment below

Pull request: [PLACE LINK TO PULL REQUEST HERE]
#enhanced-preprint comment thread: [PLACE LINK TO COMMENT HERE]

Instructions to modify manuscripts.json

Visit: https://github.com/elifesciences/enhanced-preprints-client/actions/workflows/publish-manuscript.yaml
Click: Run workflow
Complete the form and click "Run workflow"
A successful run should result in a new pull request at https://github.com/elifesciences/enhanced-preprints-client/pulls
Open the pull request and click the "Ready for review" button to trigger tests
Once the tests pass and you are happy with the changes the PR can be merged

Example pull request: https://github.com/elifesciences/enhanced-preprints-client/pull/334/files
Once the pull request is merged in it should be available a few minutes later.

Request that a doi
Post the following in #enhanced-preprint:
@Fred can you register a doi for https://elifesciences.org/reviewed-preprints/87726

Step 5: Awaiting search reindex

[ ] Reviewed preprint is avaliable on journal 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.

Additional info
If needed, the jenkins pipeline to reindex search can be triggered sooner.
https://alfred.elifesciences.org/job/process/job/process-reindex-reviewed-preprints/

Step 6: Published! Request PDF generation

[ ] Post the link to the PDF url at the top of the issue

[ ] Post link to #enhanced-preprint comment below

#enhanced-preprint comment thread: [PLACE LINK TO COMMENT HERE]
Post the following to the #enhanced-preprint on slack:
@Ryan Dix-Peek please can you generate a PDF for https://elifesciences.org/reviewed-preprints/87726

Step 7: Introduce PDF to data folder and git repo

[ ] PDF is avaliable at https://github.com/elifesciences/enhanced-preprints-data/raw/master/data/87726/v2/87726-v2.pdf

Detailed instructions: https://github.com/elifesciences/enhanced-preprints-data#add-a-pdf
Step 8: Add PDF url to manuscripts.json

[ ] Reviewed preprint PDF is available for download (https://prod--epp.elifesciences.org/reviewed-preprints/87726)

[ ] Pull request created to enhanced-preprint-client
[ ] Pull request switched to "Ready for review"
[ ] Post link to pull request below

[PLACE LINK TO PULL REQUEST HERE]

Instructions to add PDF url to manuscripts.json

Visit: https://github.com/elifesciences/enhanced-preprints-client/actions/workflows/add-pdf-url-to-manuscript.yaml
Click: Run workflow
Complete the form and click "Run workflow"
A successful run should result in a new pull request at https://github.com/elifesciences/enhanced-preprints-client/pulls
Open the pull request and click the "Ready for review" button to trigger tests
Once the tests pass and you are happy with the changes the PR can be merged

Example pull request: https://github.com/elifesciences/enhanced-preprints-client/pull/397/files
Once the pull request is merged in it should be available a few minutes later.

Step 9: Done!

[ ] Kettle is on!

version 3 is now loaded so ready to check.

The structure of this article is wrong - many sections that should be children of the results are siblings

Good to go now


chore: Verify Python Environment Setup

https://uw-ssec-tutorials.readthedocs.io/en/latest/SciPy2024/module1/setup.html

Using a Conda Environment:

No errors in module 1 notebooks

Using Codespaces:

No errors in module 1 notebooks

Woo hoo! Sounds great. Thanks!


Catch exceptions from formatters

Since formatters are pluggable they can fail in unexpected ways bringing the server down e.g:
Unhandled Exception: System.NullReferenceException: Object reference not set to an instance of an object.
   at Microsoft.AspNetCore.SignalR.JsonNetInvocationAdapter.<>c__DisplayClass2_0.<ReadInvocationDescriptorAsync>b__0() i
n C:\source\SignalR-Core\src\Microsoft.AspNetCore.SignalR\JsonNetInvocationAdapter.cs:line 40
   at System.Threading.Tasks.Task`1.InnerInvoke()
   at System.Threading.Tasks.Task.Execute()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter`1.GetResult()
   at Microsoft.AspNetCore.SignalR.HubEndPoint`2.<DispatchMessagesAsync>d__9.MoveNext() in C:\source\SignalR-Core\src\Mi
crosoft.AspNetCore.SignalR\HubEndPoint.cs:line 105
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.GetResult()
   at Microsoft.AspNetCore.SignalR.HubEndPoint`2.<OnConnectedAsync>d__8.MoveNext() in C:\source\SignalR-Core\src\Microso
ft.AspNetCore.SignalR\HubEndPoint.cs:line 77
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at Microsoft.AspNetCore.SignalR.HubEndPoint`2.<OnConnectedAsync>d__8.MoveNext() in C:\source\SignalR-Core\src\Microso
ft.AspNetCore.SignalR\HubEndPoint.cs:line 95
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.GetResult()
   at Microsoft.AspNetCore.Sockets.HttpConnectionDispatcher.<>c__DisplayClass4_0`1.<<ExecuteAsync>b__0>d.MoveNext() in C
:\source\SignalR-Core\src\Microsoft.AspNetCore.Sockets\HttpConnectionDispatcher.cs:line 116
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
   at System.Threading.QueueUserWorkItemCallbackDefaultContext.System.Threading.IThreadPoolWorkItem.ExecuteWorkItem()
   at System.Threading.ThreadPoolWorkQueue.Dispatch()

We need to catch exceptions and handle them.

One interesting thing is that for self describing protocols like JSon this condition is recoverable on the server - the payload can be ignored but for non-self describing protocols (e.g. protobuf) it is fatal since we don't know how much data (parameters) to read from the wire.

I was looking at the json one specifically for the null ref at https://github.com/aspnet/SignalR/commit/0a2bc19649678f0c73341cd1b9e14e7cbdd71ee1 Instead of throwing the client just gets an error stating the hub method doesn't exist.

Fixed via 8022afd3a2644237d597b6664f553871c69a1666


M21 - search history call back

the old title of this issue was "search history call back"

the related file is localStorageData.js


Error: The package doesn't seem to be linked.

I'm trying to integrate THEOplayer into the starter template, but there appears to be an issue with it not getting linked.
Steps to reproduce:

Create reNative project with "rnv new" and all prompt defaults
Initialize Android platform with "rnv run -p android"
Install THEOplayer: "npm i react-native-theoplayer"
Modify ./src/screens/Home.tsx to load THEOplayerView Component
Re-run android platform with "rnv run -p android"

Error: The package 'react-native-theoplayer' doesn't seem to be linked.
I tried running "npx react-native link", but that did not help.
I have verified that react-native-theoplayer was successfully installed and included in package.json.

@jonathankiefer It looks like autolinking is disabled, as mentioned in the settings.gradle:
// ReNative: To allow dynamic plugins via flavours autolinking has to be disabled
// apply from: file("../../node_modules/@react-native-community/cli-platform-android/native_modules.gradle"); applyNativeModulesSettingsGradle(settings, '../..')
// include ':app'

You can add react-native-theoplayer as a plugin in your renative.json configuration after installing it via yarn or npm:
    "plugins": {
        // ...
        "react-native-theoplayer": {
            "version": "1.3.0",
            "android": {
                "package": "com.theoplayer.ReactTHEOplayerPackage",
                "path": "node_modules/react-native-theoplayer/android",
                "app/build.gradle": {
                    "apply": [
                        "from: '../../../local.gradle'"
                    ]
                }
            }
        }
    }

I still had an issue with duplicate 'META-INF/kotlin-stdlib.kotlin_module' files, which I resolved by creating the local local.gradle file in your project root:
android {
    packagingOptions {
      exclude 'META-INF/kotlin-stdlib.kotlin_module'
    }
}

As the build.gradle files under platformBuilds are generated, we cannot simply add the extra gradle options there, hence the reference to the extra local.gradle file.

@tvanlaerhoven I can confirm this is exactly the information I needed, thank you.

Hi there,
I'm experiencing the same issue using:

Renative 0.37.3
<EMAIL_ADDRESS>
I've already tried adding this kind of configuration in renative.json in "plugins", but still returning
"react-native-theoplayer": {
            "version": 2.9.0",
            "android": {
                "package": "com.theoplayer.ReactTHEOplayerPackage",
                "path": "node_modules/react-native-theoplayer/android"
            }
        }

Any clue? Thank you


Contents page

Added a contents page for the cookiecutter explaining the purpose of each file that ships with the template.

love it @kysolvik !


xarray ufuncs error

Error calling xarray ufuncs (is it deprecated following sandbox upgrade?) Please check (radar_water_detection notebook) https://github.com/digitalearthafrica/deafrica-sandbox-notebooks/blob/main/Real_world_examples/Radar_water_detection.ipynb

@lisarebelo Yes, xarray’s ufuncs have been removed, now that they can be replaced by numpy’s ufuncs in all supported versions of numpy.


tourService.start() emits tourService.end()

I have set up a tour following your demo source for ng-bootstrap. I added four steps which seem to be recognized, as I am able to call e.g. startAt(1) at it doesn't complain about non-existent steps. I start the tour automatically and have a button to toggle the tour. As shown in the example I have subscribed to the events of the tourService so I can see that a start or resume event is always followed by and end event immediately. Like this:
{name: "start", value: undefined}
{name: "end", value: undefined}
Do you have any idea where to start further debugging? The popup doesn't show but there is no error at all, only the end-event right after each start or resume event.

I would put a console.log where you are calling tourService.start() to make sure that you're not calling it twice.  Also, are you calling tourService.initialise() with the steps?

Thanks for your reply! My code looks like this:
this.tourService.events$.subscribe(console.log);
    this.tourService.initialize([{
      anchorId: "dashboard.first",
      content: "This is an interactive tour.",
      title: "Welcome",
      route: "pages/dashboard"
    }, {
      anchorId: "dashboard.second",
      content: "Look at this beautiful chart.",
      title: "Chart 1",
      route: "pages/dashboard"
    }, {
      anchorId: "dashboard.third",
      content: "And here is another one!",
      title: "Chart 2",
      route: "pages/dashboard"
    }]);
    console.log("before start");
    this.tourService.start();
    console.log("after start");
The console output is:
{name: "initialize", value: Array(3)}
app.component.ts:59 before start
Subscriber.js:238 {name: "start", value: undefined}
app.component.ts:61 after start
Subscriber.js:238 {name: "end", value: undefined}
Any ideas?

Try taking the route property off of all the steps.  It might be ending the tour when it can't navigate to that route.

Actually, that's probably not the problem.  It's ending the tour because it can't find an anchor with an anchorId that matches the first step.  The tourAnchor directive will automatically register itself in the ngOnInit method.

Ok, my html template for the dashboard looks like this (ba-card is a custom component which uses a bootstrap card):

    <pie-chart tourAnchor="dashboard.first"></pie-chart>

  <ba-card class="col-xlg-6 col-xl-6 col-lg-12 col-sm-12 col-12" cardTitle="dashboard.acquisition_channels" baCardClass="traffic-panel medium-card">
    <traffic-chart tourAnchor="dashboard.second"></traffic-chart>
  </ba-card>
  <ba-card class="col-xlg-6 col-xl-6 col-lg-12 col-md-6 col-sm-12 col-12" cardTitle="dashboard.revenue" baCardClass="medium-card">
    <line-chart tourAnchor="dashboard.third"></line-chart>
  </ba-card>

Is there anything else I need to do to declare tourAnchors?

That should be right.  Add this line before the tourService.start()
console.log(this.tourService.anchors);

Maybe the tourAnchors have not hit their ngOnInit hook yet.  Where are you calling tourService.start()?

Your guess is correct, this.tourService.anchors is empty at the start() call. I have placed both the initialize([]) and the start() calls within the constructor of my app.component.ts. But even if I move them to ngAfterContentInit() the anchors are still empty. I will try to get that right tomorrow... thanks a lot for your help so far!

Same Problem here, The anchors are still empty. You found a solution?
We have one abstraction more. An App.Module and a Layout.Module with the Shell.Component. In the Shell.Component we have the router-outlet. But the Tour-Code is still in the App.Component is that right?

@RetoRechsteiner
The tour steps being initialized in the app component is fine.  It's hard for me to debug your app without seeing code.  Can you make a git hub repository that reproduces the issue?  Or you can sign up for a (paid) session with me on codementor and I can look directly at your app code.

My colleague found a solution for this problem: you need to import the tour module (in our case TourNgBootstrapModule) in each and every sub module.

I'm glad you found a solution.

Same Issue .. i have done all the steps provided by @kulmann .. still getting
{name: "start", value: undefined}
{name: "end", value: undefined}
Help me out!!!


Custom favicon

Is it possible to provide a custom favicon to be used on our documentation instead of the RTD one ?

You can if you build your own theme. You can set the favicon using meta options in the html head.


Remove getrandom dependency being pulled

closes https://github.com/CosmWasm/cw-storage-plus/issues/19

Thank you!


Bar left/right alignment on a time scale

I need to create a combo chart with a time X axis. The chart displays various energy readings for consequetive time periods, like every five minutes. Line charts will display the actual power consumption (W) and vertical bar charts the energy consumption for the time period (kWh).
The line chart points appear at the exact date/time on the time scale. The bars are however centered on the specified starting date/time so effectively they are shifted by 0.5 time period to the left.
I would like the bars to start at the specified date/time and go until the next specified date/time. So with a 5 minute period a bar that specifies time 07:00:00 should start at 07:00:00 and end at 07:05:00.
The bar charts should be able to stack (to show imported electricity with solar electricity on top) and overlay (to show alternate energy such as gas consumption) for the same period.
Preferably there is an option that will tell the bar to align centered on the grid time (as current) or display left or right aligned relative to the grid time.

I think I also have this issue.
I would like each bar to represent an interval of 15 minutes. The bar represents a given number of sales in the 15 minute interval. I would like the grid lines to align with the start or end of a bar. Currently, the grid lines are showing in unusual places - on the hour, 22m 30s past the hour, 52m 30s past the hour... and so on:

Maybe there is a way to control how the grid lines are displayed, but so far I haven't found it.
Using chart.js 4.0.1.

I have found a workaround by using a stepped line chart. Y-axis is linear, x-axis is time.
Add stepped:true and fill:true to the dataset and also a backgroundColor and borderColor.
Your data has to specify the height of the bar (y value) at the time (x-value) where the bar starts. You also have to add a datapoint at the end of the data that will "step" the line back to zero (the baseline value.)
Forget about rounded corners with this workaround and there will be no divider line between the bars, so there still is a reason for this change request.


Delete an account from the service

Given a valid account ID
When a DELETE request is made to the account deletion endpoint
Then the account is deleted
And the response status is 200 OK


Regression handling of the new syntax for TS 1.1

Now might be a good time to move these erl files into riak_ql, there will be a lot of PRs that need corresponding ql and kv merges to happen otherwise.

This PR is redundant. Closed.

Closed.


Can't host Composer on Virtual Machine

Describe the bug
Can't host Composer on Azure Virtual Machine - Linux (Ubuntu 20.04).
Tried 2 methods.

Followed instruction on https://learn.microsoft.com/en-us/composer/how-to-host-composer of using yarn.
Used docker build.

Version
Composer 2.1.2
Browser
SSH
OS

Ubuntu 20.04
To Reproduce
Steps to reproduce the behavior:

Create Azure VM.
Set Networking inbound port rule to allow SSH.
Connect via SSH

------- Using Yarn -------
4. sudo apt update && sudo apt upgrade
5. sudo apt install curl
6. curl -fsSL https://deb.nodesource.com/setup_14.x | sudo -E bash -
7. sudo apt-get install -y nodejs
8. sudo npm install -g yarn
9. wget https://packages.microsoft.com/config/ubuntu/18.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb && sudo dpkg -i packages-microsoft-prod.deb
10. sudo apt-get update; sudo apt-get install -y apt-transport-https && sudo apt-get update && sudo apt-get install -y dotnet-sdk-3.1
11. git clone https://github.com/microsoft/BotFramework-Composer.git BotFramework-Composer
12. cd BotFramework-Composer
/* This step is performed to fix browserlist warning./
13. nano .yarnrc.yml
- lockfileFilename: yarn-berry.lock -> lockfileFilename: yarn.lock
14. nano .yarnrc.prod.yml
- lockfileFilename: "yarn-berry.lock" -> lockfileFilename: "yarn.lock"
15. cd Composer
16. mv yarn-berry.lock yarn.lock
17. npx browserslist@latest --update-db
18. yarn up -R caniuse-lite
19. mv yarn.lock yarn-berry.lock
20. cd ..
21. nano .yarnrc.yml
- lockfileFilename: yarn.lock -> lockfileFilename: yarn-berry.lock
22. nano .yarnrc.prod.yml
- lockfileFilename: "yarn.lock" -> lockfileFilename: "yarn-berry.lock"
/ End of fix browserlist warning./
23. cd Composer
24. yarn install
25. yarn build
/ This step is performed to fix Cannot find module in BotFramework-Composer/Composer/packages/server/build/init.js if run yarn start now./
26. cd packages/server
27. yarn build
28. cd /home/fkmgrhpowejih/BotFramework-Composer/Composer
/ End of fix Cannot find module in BotFramework-Composer/Composer/packages/server/build/init.js if run yarn start now.*/
26. yarn start
27. Error here
Error occurred while starting server:  Error: Cannot find module<EMAIL_ADDRESS>Please verify that the package.json has a valid "main" entry
at tryPackage (internal/modules/cjs/loader.js:349:19)
at Function.Module._findPath (internal/modules/cjs/loader.js:562:18)
at Function.Module._resolveFilename (internal/modules/cjs/loader.js:917:27)
at Function.resolve (internal/modules/cjs/helpers.js:113:19)
at Object. (/home/fkmgrhpowejih/BotFramework-Composer/Composer/packages/server/build/server.js:50:64)
at Generator.next ()
at /home/fkmgrhpowejih/BotFramework-Composer/Composer/node_modules/tslib/tslib.js:118:75
at new Promise ()
at Object.__awaiter (/home/fkmgrhpowejih/BotFramework-Composer/Composer/node_modules/tslib/tslib.js:114:16)
at Object.start (/home/fkmgrhpowejih/BotFramework-Composer/Composer/packages/server/build/server.js:44:20) {
code: 'MODULE_NOT_FOUND',
path<EMAIL_ADDRESS>requestPath: '@bfc/client'
}
------- Using Docker -------
4. sudo apt install docker.io
5. sudo docker build /home/fkmgrhpowejih/BotFramework-Composer
6. Error here
[webRoute] yarn install
➤ YN0000: ┌ Resolution step
➤ YN0000: └ Completed
➤ YN0000: ┌ Fetch step
➤ YN0000: └ Completed
➤ YN0000: ┌ Link step
➤ YN0000: └ Completed in 1s 122ms
➤ YN0000: Done in 1s 301ms
[webRoute] compiling
[webRoute] cleaning dist
Restoring /src/extensions/package.json and /src/extensions/yarn-berry.lock
Successfully restored.
fatal: not a git repository (or any of the parent directories): .git
Creating an optimized production build. This may take a few minutes..
[esbuild-loader] ESBuildPlugin is no longer required for usage and will be removed in the next major release. Please refer to the docs and release notes for more info.
The command '/bin/sh -c yarn build:prod $YARN_ARGS' returned a non-zero code: 1
Expected behavior
Successfully start Composer and can access with localhost:3000 and http://:3000.
Additional context
I'm new to web development, npm, yarn and docker. So mistakes on my part could be very obvious. Thank you for your help!

Apparently my allocated RAM is not enough, causing failure.


rightHanded option is ignored in WKT feature format

When exporting a feature to WKT format, the rightHanded option is ignored and the coordinates are formatted based on how the geometry was constructed. A work-around is to transform the feature's geometry first, order the coordinates by passing the right parameter to the getCoordinates method, create a new geometry from the transformed and ordered coordinates, and finally write the new geometry using the WKT writeGeometry method. This manual processing could be avoided by adding support for the rightHanded option to the WKT writeFeature method.
Also, the documentation could be updated to indicate which formats support the rightHanded option, and which do not.

http://openlayers.org/en/master/apidoc/ol.format.GeoJSON.html#writeFeatures does say that not all formats support the option (but GeoJSON does).  It would be straightforward to add support for WKT.  And the docs could likely be improved.  This would be a welcome pull request.


Build Runner type 'dynamic' cannot be assigned to 'Object'

Steps to Reproduce
Please describe exactly how to reproduce the problem you are running into.
Got my model:
import 'package:isar/isar.dart';
part 'reagent_model.g.dart';
@Collection()
class Reagent {
@Id()
@Name('id')
int? uid;
@Name('description')
late String description;
@Name('method')
late String method;
@Name('primeCost')
late int primeCost;
@Name('sample')
late String sample;
@Name('type')
late String type;
@Name('units')
late String units;
}
Then I run flutter pub run build_runner build and it creates the reagent_model.g.dart
But I got The argument type 'dynamic' can't be assigned to the parameter type 'Object'
Version

Platform: iOS, Android, Mac, Windows, Linux, Web
Flutter version: [3.0.1]
Isar version: [2.5.0]
Isar Generator version: [2.5.0]

It's maybe because you have strict-casts: true inside your analysis_options.yaml :
analyzer:
  language:
    strict-casts: true

You can set to false ou ad as Object inside your reagent_model.g.dart:
object.id = IsarNative.jsObjectGet(jsObj as Object, 'id') as int?;

This should be fixed in the newest version.


*: fix failing tests, part 1

Fix some of the failing tests.
The last one is really bad one, the fix presented in the commit is valid, and the code will work properly with it, but I'm still not sure it's a good solution. Maybe we need to refactor the whole native cache instead.

And I'd add this PR into 0.102.0 milestone because of the last commit. We don't want this bug to be present in our next release.

OK, now we have race problem with proper version between concurrent test runs, so the first fix doesn't work:
2023-08-30T11:14:47.3084055Z === RUN   TestNEP11_ND_OwnerOf_BalanceOf_Transfer
2023-08-30T11:14:47.3084315Z ==================
2023-08-30T11:14:47.3084541Z WARNING: DATA RACE
2023-08-30T11:14:47.3084827Z Write at 0x0000026ba670 by goroutine 347:
2023-08-30T11:14:47.3085338Z   github.com/nspcc-dev/neo-go/internal/testcli.NewExecutorWithConfig()
2023-08-30T11:14:47.3086038Z       /home/runner/work/neo-go/neo-go/internal/testcli/executor.go:198 +0x4bd
2023-08-30T11:14:47.3086557Z   github.com/nspcc-dev/neo-go/internal/testcli.NewExecutor()
2023-08-30T11:14:47.3087195Z       /home/runner/work/neo-go/neo-go/internal/testcli/executor.go:176 +0x54
2023-08-30T11:14:47.3087796Z   github.com/nspcc-dev/neo-go/cli/nep_test_test.TestNEP11_ND_OwnerOf_BalanceOf_Transfer()
2023-08-30T11:14:47.3088465Z       /home/runner/work/neo-go/neo-go/cli/nep_test/nep11_test.go:113 +0x3e
2023-08-30T11:14:47.3088801Z   testing.tRunner()
2023-08-30T11:14:47.3089276Z       /opt/hostedtoolcache/go/1.19.12/x64/src/testing/testing.go:1446 +0x216
2023-08-30T11:14:47.3089609Z   testing.(*T).Run.func1()
2023-08-30T11:14:47.3090085Z       /opt/hostedtoolcache/go/1.19.12/x64/src/testing/testing.go:1493 +0x47
2023-08-30T11:14:47.3090305Z
2023-08-30T11:14:47.3090458Z Previous read at 0x0000026ba670 by goroutine 104:
2023-08-30T11:14:47.3090928Z   github.com/nspcc-dev/neo-go/pkg/network.(*Server).Start()
2023-08-30T11:14:47.3091538Z       /home/runner/work/neo-go/neo-go/pkg/network/server.go:288 +0x670
2023-08-30T11:14:47.3092074Z   github.com/nspcc-dev/neo-go/internal/testcli.NewTestChain.func2()
2023-08-30T11:14:47.3092887Z       /home/runner/work/neo-go/neo-go/internal/testcli/executor.go:167 +0x39
2023-08-30T11:14:47.3093113Z
2023-08-30T11:14:47.3093247Z Goroutine 347 (running) created at:
2023-08-30T11:14:47.3093526Z   testing.(*T).Run()
2023-08-30T11:14:47.3093995Z       /opt/hostedtoolcache/go/1.19.12/x64/src/testing/testing.go:1493 +0x75d
2023-08-30T11:14:47.3094631Z   testing.runTests.func1()
2023-08-30T11:14:47.3095129Z       /opt/hostedtoolcache/go/1.19.12/x64/src/testing/testing.go:1846 +0x99
2023-08-30T11:14:47.3095442Z   testing.tRunner()
2023-08-30T11:14:47.3096051Z       /opt/hostedtoolcache/go/1.19.12/x64/src/testing/testing.go:1446 +0x216
2023-08-30T11:14:47.3096382Z   testing.runTests()
2023-08-30T11:14:47.3096857Z       /opt/hostedtoolcache/go/1.19.12/x64/src/testing/testing.go:1844 +0x7ec
2023-08-30T11:14:47.3097162Z   testing.(*M).Run()
2023-08-30T11:14:47.3097636Z       /opt/hostedtoolcache/go/1.19.12/x64/src/testing/testing.go:1726 +0xa84
2023-08-30T11:14:47.3097952Z   main.main()
2023-08-30T11:14:47.3098250Z       _testmain.go:59 +0x2e9
2023-08-30T11:14:47.3098409Z
2023-08-30T11:14:47.3098541Z Goroutine 104 (finished) created at:
2023-08-30T11:14:47.3099030Z   github.com/nspcc-dev/neo-go/internal/testcli.NewTestChain()
2023-08-30T11:14:47.3099683Z       /home/runner/work/neo-go/neo-go/internal/testcli/executor.go:167 +0x1071
2023-08-30T11:14:47.3100247Z   github.com/nspcc-dev/neo-go/internal/testcli.NewExecutorWithConfig()
2023-08-30T11:14:47.3100919Z       /home/runner/work/neo-go/neo-go/internal/testcli/executor.go:201 +0x524
2023-08-30T11:14:47.3101427Z   github.com/nspcc-dev/neo-go/internal/testcli.NewExecutor()
2023-08-30T11:14:47.3102061Z       /home/runner/work/neo-go/neo-go/internal/testcli/executor.go:176 +0x54
2023-08-30T11:14:47.3102588Z   github.com/nspcc-dev/neo-go/cli/nep_test_test.TestNEP11Import()
2023-08-30T11:14:47.3103218Z       /home/runner/work/neo-go/neo-go/cli/nep_test/nep11_test.go:35 +0x3e
2023-08-30T11:14:47.3103524Z   testing.tRunner()
2023-08-30T11:14:47.3104005Z       /opt/hostedtoolcache/go/1.19.12/x64/src/testing/testing.go:1446 +0x216
2023-08-30T11:14:47.3104338Z   testing.(*T).Run.func1()
2023-08-30T11:14:47.3104849Z       /opt/hostedtoolcache/go/1.19.12/x64/src/testing/testing.go:1493 +0x47
2023-08-30T11:14:47.3105148Z ==================

OK, @roman-khimov, something is wrong with the last commit that optimizes cache usage. The rest of commits work fine, although I haven't tested them in hybrid network scenario. Could you take a look, please?

OK, at least it works in the NeoGo nodes privenet:
anna@kiwi:~/Documents/GitProjects/nspcc-dev/neo-go$ docker logs neo_go_node_one
=> Try to restore blocks before running node
2023-09-01T15:22:18.767Z	INFO	initial gas supply is not set or wrong, setting default value	{"InitialGASSupply": "52000000"}
2023-09-01T15:22:18.767Z	INFO	MaxBlockSize is not set or wrong, setting default value	{"MaxBlockSize": 262144}
2023-09-01T15:22:18.767Z	INFO	MaxBlockSystemFee is not set or wrong, setting default value	{"MaxBlockSystemFee":<PHONE_NUMBER>00}
2023-09-01T15:22:18.767Z	INFO	MaxTransactionsPerBlock is not set or wrong, using default value	{"MaxTransactionsPerBlock": 512}
2023-09-01T15:22:18.767Z	INFO	MaxValidUntilBlockIncrement is not set or wrong, using default value	{"MaxValidUntilBlockIncrement": 5760}
2023-09-01T15:22:18.767Z	INFO	Hardforks are not set, using default value
2023-09-01T15:22:18.768Z	INFO	no storage version found! creating genesis block
2023-09-01T15:22:18.769Z	INFO	starting service	{"service": "Prometheus", "endpoint": ":20001"}
2023-09-01T15:22:18.770Z	INFO	service hasn't started since it's disabled	{"service": "Pprof"}
2023-09-01T15:22:18.770Z	INFO	ExtensiblePoolSize is not set or wrong, using default value	{"ExtensiblePoolSize": 20}
2023-09-01T15:22:19.209Z	INFO	SessionExpirationTime is not set or wrong, setting default value	{"SessionExpirationTime": 15}
2023-09-01T15:22:19.209Z	INFO	SessionPoolSize is not set or wrong, setting default value	{"SessionPoolSize": 20}
2023-09-01T15:22:19.209Z	INFO	MaxIteratorResultItems is not set or wrong, setting default value	{"MaxIteratorResultItems": 100}
2023-09-01T15:22:19.209Z	INFO	MaxFindResultItems is not set or wrong, setting default value	{"MaxFindResultItems": 100}
2023-09-01T15:22:19.209Z	INFO	MaxFindStorageResultItems is not set or wrong, setting default value	{"MaxFindStorageResultItems": 50}
2023-09-01T15:22:19.209Z	INFO	MaxNEP11Tokens is not set or wrong, setting default value	{"MaxNEP11Tokens": 100}
2023-09-01T15:22:19.209Z	INFO	MaxWebSocketClients is not set or wrong, setting default value	{"MaxWebSocketClients": 64}
2023-09-01T15:22:19.209Z	INFO	node started	{"blockHeight": 0, "headerHeight": 0}
2023-09-01T15:22:19.209Z	INFO	starting rpc-server	{"endpoint": ":30333"}

    _   ____________        __________
   / | / / ____/ __ \      / ____/ __ \
  /  |/ / __/ / / / /_____/ / __/ / / /
 / /|  / /___/ /_/ /_____/ /_/ / /_/ /
/_/ |_/_____/\____/      \____/\____/

/NEO-GO:0.101.5-pre-275-g4d8f72e2/

2023-09-01T15:22:19.308Z	INFO	new peer connected	{"addr": "<IP_ADDRESS>:20336", "peerCount": 1}
2023-09-01T15:22:19.308Z	INFO	started protocol	{"addr": "<IP_ADDRESS>:20336", "userAgent": "/NEO-GO:0.101.5-pre-275-g4d8f72e2/", "startHeight": 0, "id": 128453548}
2023-09-01T15:22:19.329Z	INFO	new peer connected	{"addr": "<IP_ADDRESS>:50380", "peerCount": 2}
2023-09-01T15:22:19.329Z	INFO	started protocol	{"addr": "<IP_ADDRESS>:50380", "userAgent": "/NEO-GO:0.101.5-pre-275-g4d8f72e2/", "startHeight": 0, "id":<PHONE_NUMBER>}
2023-09-01T15:22:19.329Z	INFO	node reached synchronized state, starting services
2023-09-01T15:22:19.329Z	INFO	starting state validation service
2023-09-01T15:22:19.329Z	INFO	starting consensus service
2023-09-01T15:22:19.329Z	INFO	initializing dbft	{"height": 1, "view": 0, "index": 2, "role": "Backup"}
2023-09-01T15:22:19.329Z	INFO	RPC server already started
2023-09-01T15:22:19.329Z	INFO	skip change view	{"nc": 0, "nf": 3}
2023-09-01T15:22:19.331Z	INFO	received PrepareRequest	{"validator": 1, "tx": 0}
2023-09-01T15:22:19.331Z	INFO	sending PrepareResponse	{"height": 1, "view": 0}
2023-09-01T15:22:19.332Z	INFO	received PrepareResponse	{"validator": 0}
2023-09-01T15:22:19.332Z	INFO	sending Commit	{"height": 1, "view": 0}
2023-09-01T15:22:19.334Z	INFO	received Commit	{"validator": 1}
2023-09-01T15:22:19.334Z	INFO	received Commit	{"validator": 0}
2023-09-01T15:22:19.335Z	INFO	approving block	{"height": 1, "hash": "81b5f19b4e03ab26afd75fe3d1bb27109c4670f0adec64f0affe57ddaf3bbc84", "tx_count": 0, "merkle": "0000000000000000000000000000000000000000000000000000000000000000", "prev": "c49d7b254edd009e9094db4380fb60410616fda75cf77a09f3b92a7de1b48f0f"}
2023-09-01T15:22:19.335Z	INFO	initializing dbft	{"height": 2, "view": 0, "index": 2, "role": "Primary"}
2023-09-01T15:22:19.390Z	INFO	new peer connected	{"addr": "<IP_ADDRESS>:20334", "peerCount": 3}
2023-09-01T15:22:19.390Z	WARN	peer disconnected	{"addr": "<IP_ADDRESS>:20334", "error": "already connected", "peerCount": 2}
2023-09-01T15:22:19.475Z	INFO	new peer connected	{"addr": "<IP_ADDRESS>:20333", "peerCount": 3}
2023-09-01T15:22:19.476Z	INFO	new peer connected	{"addr": "<IP_ADDRESS>:42436", "peerCount": 4}
2023-09-01T15:22:19.476Z	WARN	peer disconnected	{"addr": "<IP_ADDRESS>:20333", "error": "identical node id", "peerCount": 3}
2023-09-01T15:22:19.476Z	WARN	peer disconnected	{"addr": "<IP_ADDRESS>:42436", "error": "identical node id", "peerCount": 2}
2023-09-01T15:22:19.505Z	INFO	new peer connected	{"addr": "<IP_ADDRESS>:20334", "peerCount": 3}
2023-09-01T15:22:19.505Z	WARN	peer disconnected	{"addr": "<IP_ADDRESS>:20334", "error": "unexpected empty payload: CMDVersion", "peerCount": 2}
2023-09-01T15:22:19.606Z	INFO	new peer connected	{"addr": "<IP_ADDRESS>:37306", "peerCount": 3}
2023-09-01T15:22:19.606Z	WARN	peer disconnected	{"addr": "<IP_ADDRESS>:37306", "error": "already connected", "peerCount": 2}
2023-09-01T15:22:19.621Z	INFO	new peer connected	{"addr": "<IP_ADDRESS>:42452", "peerCount": 3}
2023-09-01T15:22:19.621Z	INFO	new peer connected	{"addr": "<IP_ADDRESS>:20333", "peerCount": 4}
2023-09-01T15:22:19.621Z	WARN	peer disconnected	{"addr": "<IP_ADDRESS>:20333", "error": "identical node id", "peerCount": 3}
2023-09-01T15:22:19.621Z	WARN	peer disconnected	{"addr": "<IP_ADDRESS>:42452", "error": "unexpected empty payload: CMDVersion", "peerCount": 2}
2023-09-01T15:22:19.772Z	INFO	persisted to disk	{"blocks": 1, "keys": 130, "headerHeight": 1, "blockHeight": 1, "took": "2.32973ms"}
2023-09-01T15:22:20.309Z	INFO	new peer connected	{"addr": "<IP_ADDRESS>:43636", "peerCount": 3}
2023-09-01T15:22:20.309Z	INFO	started protocol	{"addr": "<IP_ADDRESS>:43636", "userAgent": "/NEO-GO:0.101.5-pre-275-g4d8f72e2/", "startHeight": 1, "id":<PHONE_NUMBER>}
2023-09-01T15:22:20.478Z	INFO	new peer connected	{"addr": "<IP_ADDRESS>:43648", "peerCount": 4}
2023-09-01T15:22:20.478Z	WARN	peer disconnected	{"addr": "<IP_ADDRESS>:43648", "error": "already connected", "peerCount": 3}
2023-09-01T15:22:23.008Z	INFO	new peer connected	{"addr": "<IP_ADDRESS>:20334", "peerCount": 4}
2023-09-01T15:22:23.008Z	WARN	peer disconnected	{"addr": "<IP_ADDRESS>:20334", "error": "already connected", "peerCount": 3}
2023-09-01T15:22:34.336Z	INFO	sending PrepareRequest	{"height": 2, "view": 0}
2023-09-01T15:22:34.337Z	INFO	received PrepareResponse	{"validator": 1}
2023-09-01T15:22:34.337Z	INFO	received PrepareResponse	{"validator": 0}
2023-09-01T15:22:34.337Z	INFO	sending Commit	{"height": 2, "view": 0}
2023-09-01T15:22:34.338Z	INFO	received PrepareResponse	{"validator": 3}
2023-09-01T15:22:34.338Z	INFO	received Commit	{"validator": 0}
2023-09-01T15:22:34.339Z	INFO	received Commit	{"validator": 1}
2023-09-01T15:22:34.339Z	INFO	approving block	{"height": 2, "hash": "7be42087f593cb2b40e32da87a8fd35a72f52af7e26a088c47815fe1032b0689", "tx_count": 0, "merkle": "0000000000000000000000000000000000000000000000000000000000000000", "prev": "81b5f19b4e03ab26afd75fe3d1bb27109c4670f0adec64f0affe57ddaf3bbc84"}
2023-09-01T15:22:34.340Z	INFO	initializing dbft	{"height": 3, "view": 0, "index": 2, "role": "Backup"}
2023-09-01T15:22:34.779Z	INFO	persisted to disk	{"blocks": 1, "keys": 19, "headerHeight": 2, "blockHeight": 2, "took": "1.925627ms"}
2023-09-01T15:22:49.340Z	INFO	received PrepareRequest	{"validator": 3, "tx": 0}
2023-09-01T15:22:49.340Z	INFO	sending PrepareResponse	{"height": 3, "view": 0}
2023-09-01T15:22:49.342Z	INFO	received PrepareResponse	{"validator": 0}
2023-09-01T15:22:49.342Z	INFO	sending Commit	{"height": 3, "view": 0}
2023-09-01T15:22:49.342Z	INFO	received PrepareResponse	{"validator": 1}
2023-09-01T15:22:49.343Z	INFO	received Commit	{"validator": 1}
2023-09-01T15:22:49.344Z	INFO	received Commit	{"validator": 0}
2023-09-01T15:22:49.345Z	INFO	approving block	{"height": 3, "hash": "62c2e7876f65bb427a119d8143d6f251dd66da0525b2f1c424ad18d0fbed4339", "tx_count": 0, "merkle": "0000000000000000000000000000000000000000000000000000000000000000", "prev": "7be42087f593cb2b40e32da87a8fd35a72f52af7e26a088c47815fe1032b0689"}
2023-09-01T15:22:49.346Z	INFO	initializing dbft	{"height": 4, "view": 0, "index": 2, "role": "Backup"}
2023-09-01T15:22:49.788Z	INFO	persisted to disk	{"blocks": 1, "keys": 19, "headerHeight": 3, "blockHeight": 3, "took": "2.18139ms"}
2023-09-01T15:23:04.345Z	INFO	received PrepareRequest	{"validator": 0, "tx": 0}
2023-09-01T15:23:04.345Z	INFO	sending PrepareResponse	{"height": 4, "view": 0}
2023-09-01T15:23:04.347Z	INFO	received PrepareResponse	{"validator": 1}
2023-09-01T15:23:04.347Z	INFO	sending Commit	{"height": 4, "view": 0}
2023-09-01T15:23:04.348Z	INFO	received PrepareResponse	{"validator": 3}
2023-09-01T15:23:04.349Z	INFO	received Commit	{"validator": 0}
2023-09-01T15:23:04.349Z	INFO	received Commit	{"validator": 3}
2023-09-01T15:23:04.350Z	INFO	approving block	{"height": 4, "hash": "bed55fee6082f899771d06f0b3c553bcff8e3ca0ae796d68de315133429f8c06", "tx_count": 0, "merkle": "0000000000000000000000000000000000000000000000000000000000000000", "prev": "62c2e7876f65bb427a119d8143d6f251dd66da0525b2f1c424ad18d0fbed4339"}
2023-09-01T15:23:04.351Z	INFO	initializing dbft	{"height": 5, "view": 0, "index": 2, "role": "Backup"}
2023-09-01T15:23:04.796Z	INFO	persisted to disk	{"blocks": 1, "keys": 20, "headerHeight": 4, "blockHeight": 4, "took": "2.003925ms"}

I actually had one more outdated RPC node in the private network running on my machine that was making the things bad and spamming some irrelevant blocks. I've discovered it and killed this extra node, after that this patch starts blocks accepting without unexpected 2023-09-01T15:14:06.010Z	WARN	blockQueue: failed adding block into the blockchain	{"error": "previous header was not found: key not found", "blockHeight": 1, "nextIndex": 2} logs.

@roman-khimov, the overall solution that is shown in the Files changed section is valid and solves the problem. However, some of PR's commits are not valid if taken them along separately from the others. Is it better to squash these commits?

e3fadde6bb2cf21e7ee2d357b4374fa07d573146 has some commented out code that is removed afterwards. But otherwise it seems to be OK.

OK, I've rechecked this code and the logic seems to be correct to me. Hope, that there's no bugs in the updated logic.

Tests are checked, TestWalletClaimGas isn't failing any more (at least, at the several subsequent runs). Ready for review and merge.


Express server copied over when build.

Hey, sorry if this is kind of a dumb question, but I'm new to Node/express/webpack. What is the best way to include an express server when I build my project for production? I basically want my 'dist' folder to have a server.js file that I can run to serve my SPA. My first thought would be to have a separate project that I could just drop the dist code into, but this seems a bit tedious. Am I going about this the wrong way? Thanks for any help you can offer!!

I basically want my 'dist' folder to have a server.js file that I can run to serve my SPA.
[...] My first thought would be to have a separate project that I could just drop the dist code into, but this seems a bit tedious.

If it's  an app that runs completely in the browser, then you don't need a server in your dist folder - just use static hosting like surge.sh
If it uses some kind of backend server (for a database and stuff), then yes, it's better to roll this as a seperate project, because it will have its own requirements and can hardly be crammed into the frontend template.

Great! Thanks for the quick feedback! I need to use Nodemailer to send a Contact Us email, so it sound like a separate app is the way to go. Thanks again!


Type issue with linking in entities

I feel like I must be doing something incorrectly, but It looks like the docs 🤷 .
version: 1.14.1
Entity
Item entity has a composite sk, in v0 I would have done a computed key I think but am trying to use the schema linking method instead.
const PREFIX = "ITEMKEY";

const itemSchema = schema({
  itemName: string().transform(prefix(PREFIX)).key().savedAs("id"),
  fileName: string().required(),
  status: string(),
  fileKey: string(),
  fileSize: number(),
  fileDuration: number(),
  provider: string().required(),
  hd: boolean(),
  mimeType: string(),
  userId: string(),
  archiveFile: boolean(),
  expiration: number().optional(),
  correlationId: string(),
});

const Item = new Entity({
  table: TABLE_NAME,
  name: "Item",
  schema: itemSchema.and((prev) => ({
    sk: string()
      .key()
      .hidden()
      .link<typeof prev>(({ fileName, provider }) => `${fileName}#${provider}`),
  })),
});

But in every way I try it fileName and provider have TS errors for not existing on the object. I'm using the tsconfig base for node 22 which looks like:
{
  "$schema": "https://json.schemastore.org/tsconfig",
  "display": "Node 22",
  "_version": "22.0.0",

  "compilerOptions": {
    "lib": ["es2023"],
    "module": "node16",
    "target": "es2022",

    "strict": true,
    "esModuleInterop": true,
    "skipLibCheck": true,
    "moduleResolution": "node16"
  }
}

I'm at the point of wrapping my requests in a function that just manually composites them but wanted to check to see if there was something obvious I was missing.

@DaveLo The type inference is correct: You should just specify your fileName and provider as .key() because they are needed to compute the sort key.
Also, note that .required() is the default setting in v1, you should rather set .optional() on fields that are not required.

Ok, that makes sense I figured it had to be something I was missing.
Would it make sense to clarify that in the docs?

Definitely, I will add some clarification in the docs and the JS docs as well 👍


Jl/refactor deploy params

Refactored finding deploy params to make less strictly matching schema
This checklist is used to make sure that common guidelines for a pull request are followed.

For new extensions:

[ ] My extension description/summary conforms to the Extension Summary Guidelines.

About Extension Publish
There is a pipeline to automatically build, upload and publish extension wheels.
Once your pull request is merged into main branch, a new pull request will be created to update src/index.json automatically.
You only need to update the version information in file setup.py and historical information in file HISTORY.rst in your PR but do not modify src/index.json.

Thank you for your contribution! We will review the pull request and get back to you soon.


SQL statement not available

Bug Report
Please answer these questions before submitting your issue. Thanks!
What did you do?

What did you expect to see?

What did you see instead?
After scrolling down, SQL statement the content disappears

What version of TiDB Dashboard are you using (./tidb-dashboard --version)?
PD version：6.0
942b6422c2329d91f0fefa0cff17e27791a5ad3f

Fixed in #1204. Thanks for the report!


fix #2734

Codecov Report

Merging #2829 into dev will increase coverage by <.01%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##              dev    #2829      +/-   ##
==========================================
+ Coverage   93.54%   93.54%   +<.01%
==========================================
  Files         166      166
  Lines       20247    20252       +5
==========================================
+ Hits        18940    18945       +5
  Misses       1307     1307

Impacted Files
Coverage Δ

qiita_db/artifact.py
98.39% <100%> (-0.01%)
:arrow_down:

qiita_db/test/test_util.py
99.69% <0%> (ø)
:arrow_up:

qiita_db/util.py
96.2% <0%> (+0.01%)
: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 80d6a21...c3f34e3. Read the comment docs.


How to use the editor config?

I am working on my own Neovim Distro, i have it in my $NVIM_APPNAME but idk how to use editor.image (i made a logo)? should i add a file location? [like ~/Downloads/img.png?] coz i dont have it hosted online anywhere
if my client name is NeutronVim what should i keep in editor.client? [NeutronVim or neutronvim (as in readme)]
will cord be able to see-through things? like i open nvim-tree and it updates, i open lazy it updates, i open telescope it updates?
in this:
   {
     lazy = {                                 -- Vim filetype or file name or file extension = table or string
       name = 'Lazy',                         -- Optional override for the icon name, redundant for language types
       icon = 'https://example.com/lazy.png', -- Rich Presence asset name or URL
       tooltip = 'lazy.nvim',                 -- Text to display when hovering over the icon
       type = 2,
     },
     ['Cargo.toml'] = 'crates',
  },

so can i overcome the previous problem i had with jiriks's presence plugin (he forked over the unmaintained andweeb version)?: jiriks74/presence.nvim#44
        file_assets = {
          conf = { "Hyprland", "https://styles.redditmedia.com/t5_6sciw0/styles/communityIcon_h3cvittvupi91.png" },
        },

Hello! Thanks for reaching out!

if my client name is NeutronVim what should i keep in editor.client? [NeutronVim or neutronvim (as in readme)]

You will need to create a Discord Application. The rich presence's name is determined by the name of that application (Playing XYZ). You will then need to copy the application's ID and set editor.client to that ID.

coz i dont have it (the image) hosted online anywhere

The image has to be hosted somewhere online. If you use a third-party hosting service, you can provide a direct URL to the icon in editor.image. Or, you can upload the image as an asset under your application's Rich Presence -> Art Assets section and simply provide the name of the asset. Do note that it may take a while for Discord to update its file cache.
And regarding the linked issue, I haven't used Hyprland personally, but from my research, the configuration file appears to be named as hyprland.conf. If this naming is consistent, you could configure it as follows:
editor = {
  image = 'https://...',
  client = '01234567890',
},
assets = {
  ['hyprland.conf'] = 'https://...',

  -- ['hyprland.conf'] = {
  --   icon = 'https://...',
  --   tooltip = 'Hyprland Config', -- Optionally set a tooltip
  -- },
},

I hope this helps! If you have any more questions, feel free to ask.

I haven't used Hyprland personally, but from my research, the configuration file appears to be named as hyprland.conf

It should be anything under the ~/.config/hypr with hypr*.conf

Hm, it seems that this would require an additional check for the entire path and a way to match against patterns, which Cord does not currently support, as it may introduce unwanted overhead and make the codebase a bit too complex. Are there any other common names for the config file besides hyprland.conf and hypr.conf? You could provide the same icon for each of them.

like anything under ~/.config/hypr falls under the jurisdiction of hyprland (theres also a treesitter grammer made only for hyprland (hyprland) -> an lsp is also in the works (hyprls)

That requires iterating over the table until a match is found, which seems to be a performance bottleneck, given that it runs on each presence update. One thing we can do is introduce two new fields to the configuration, one, where you specify the directories to be searched and one for pattern matching. To avoid cluttering, I'd have them organized into one general field as follows:
assets = {
  ids = {}, -- regular assets are moved here
  dirs = {},
  patterns = {},
}

But that would be a breaking change to the configuration structure. I could inform the users in the commit's description, and/or support the old way of defining assets alongside the new way, although I'm not very fond of this idea. What do you think?

i guess theres no need for breaking stuff...

so vim.bo.filetype results in hyprlang
so this code snippet works for me:
      assets = {
        lazy = {
          name = "Lazy",
          icon = "https://avatars.githubusercontent.com/u/122150220?s=200&v=4",
          tooltip = "lazy.nvim",
          type = 2,
        },
        hyprlang = {
          name = "Hyprland",
          icon = "https://styles.redditmedia.com/t5_6sciw0/styles/communityIcon_h3cvittvupi91.png",
          tooltip = "Hyprland",
          type = 1,
        },
      },

Heyo i found a bug... 🐞
when doing config.display.swap_icons = true, the icons do switch but the tooltips dont

it doesnt change from lua to the superior text editor or whatever the text was

i guess theres no need for breaking stuff...
I'll still have to implement those two in the near future, but we can put it off for the time being if the treesitter approach is working for you.

when doing config.display.swap_icons = true, the icons do switch but the tooltips dont
Whoops, can confirm. Looks like I forgot to reassign the two. I'll push a fix asap.

and yeah the buttons thing doesnt work
my config:
  {
    "vyfor/cord.nvim",
    build = "./build",
    event = "VeryLazy",
    opts = {
      display = {
        show_cursor_position = true,
        swap_icons = true,
      },
      editor = {
        image = "untitled_design_6_1_",
        client = "1258853126916800655",
      },
      lsp = {
        show_problem_count = true,
        scope = "buffer",
      },
      assets = {
        lazy = {
          name = "Lazy",
          icon = "https://avatars.githubusercontent.com/u/122150220?s=200&v=4",
          tooltip = "lazy.nvim",
          type = 2,
        },
        hyprlang = {
          name = "Hyprland",
          icon = "https://styles.redditmedia.com/t5_6sciw0/styles/communityIcon_h3cvittvupi91.png",
          tooltip = "Hyprland",
          type = 1,
        },
      },
      buttons = {
        {
          label = "View Repository",
          url = "git",
        },
      },
    },
  },

If you've received the new UI update related to user profiles, I believe the issue lies within the Discord client itself, as I'm experiencing the same thing. Perhaps you could ask a friend to confirm whether the button appears for them.

If you've received the new UI update related to user profiles, I believe the issue lies within the Discord client itself, as I'm experiencing the same thing. Perhaps you could ask a friend to confirm whether the button appears for them.

none of my friends use linux 🫠, i am the lone wolf who overcome the adversity of linux cli, perhaps you can switch window managers? i only use hyprland so i have no other manager and the time it would take would be a waste

No, what I mean is to ask someone on Discord to check whether you actually have the buttons on your Rich Presence, as this may be a bug on the client-side. If that does not help, try to replace git with the actual repository url, in case it fails to fetch it from the config.

Pushed a fix to master. config.display.swap_icons should behave correctly now. Do you have any other questions?

Pushed a fix to master. config.display.swap_icons should behave correctly now. Do you have any other questions?

that was quick (it works)

i just launched discord on my browser and there's no sign of the button (i also tried switching accounts and accessing my account thru my alt which failed)

I'll be closing the issue as it turned out to be a bug on Discord's side. Feel free to open a new one if you have any other questions.


Fix IVY-1495

The commit here is a potential fix for the issue reported in https://issues.apache.org/jira/browse/IVY-1495. The issue happens when the ivysettings.xml is being parsed and the IvySettings instance isn't yet available for getting hold of a relevant matcher referred to in the ttl config.
The commit here delays the access to the matcher from the settings instance, to when the settings instance is available.
The commit also includes a test case to verify the change.

FWIW - the test failures don't look related. That specific testcase though probably needs to be looked into separately though, since it keeps failing once in a while on Jenkins.

That WarnCircularDependencyStrategyTest testcase though probably needs to be looked into separately, since it keeps failing once in a while on Jenkins.

I think this https://github.com/apache/ant-ivy/pull/22 should fix the transient test failures.

Reopening this one


ci: use ceph-csi-bot account for merging PRs

Currently the "@mergifyio rebase" commands uses a random person from the
GitHub organization that owns the repository. This is rather confusing
and ugly. With this change, alls rebase/merge actions are done with the
ceph-csi-bot account that also posts the result of jobs in the CentOS CI.

@humblec @Madhu-1 this PR updates the Mergify configuration, so it needs manual merging. Consider doing this when the merge queue for release-3.1 is empty (or after the release).

@humblec @Madhu-1 this PR updates the Mergify configuration, so it needs manual merging. Consider doing this when the merge queue for release-3.1 is empty (or after the release).

Sure Niels

Merging this one as it needs manual merge


Issue importing CrewAI

index.py just includes one line.
from crewai import Agent, Task, Process, Crew

I am facing the below error.
/Library/Python/3.11/lib/python/site-packages/langchain/_api/module_import.py:87: LangChainDeprecationWarning: Importing GuardrailsOutputParser from langchain.output_parsers is deprecated. Please replace the import with the following:
from langchain_community.output_parsers.rail_parser import GuardrailsOutputParser
  warnings.warn(

Hi @sarat9
Please provide the complete error output. If the script is not executing, the issue lies elsewhere.
This is not an error but a deprecation warning, which should not impact the overall execution.

Hi @alexfazio,
Thanks.. was able to fix..
Just realized expected_output parameter is mandatory now.
Thank you and closing the issue.


Set timestamps from microgrid to components data cache

What's needed?
Repeated calls to time.monotonic_ns when creating the cache entries in https://github.com/frequenz-floss/frequenz-sdk-python/blob/v0.x.x/src/frequenz/sdk/actor/power_distributing/power_distributing.py#L82 might cause performance issues as  time.monotonic_ns is currently called for each incoming battery message.
Proposed solution
Use timestamps coming from the microgrid component data + TTL to set the expiry time instead.
Use cases
No response
Alternatives and workarounds
No response
Additional context
No response

I think this will be no longer needed once https://github.com/frequenz-floss/frequenz-sdk-python/issues/665 is addressed. @sahas-subramanian-frequenz can you please check and close this ticket if that's the case?


Is a GDPR cookie notice necessary?

It seems like there isn't a lot of analysis regarding individual users outside of Google Analytics. Does this mean that one can omit a cookie banner?
A buildin way to display a privacy policy would also be great, as per my understanding they are necessary for all websites, even personal portfolios.

This template isn't legal in regards to GDPR because it pulls in Google Fonts and Font Awesome. Feel free to research the legal aspects of it, but the final solution is to just use a locally stored copy of all fonts.  See https://github.com/ModischFabrications/ModischFabrications.github.io/issues/4 for my notes regarding the process and https://github.com/ModischFabrications/hugo-awesome-identity for my branch with these (and a few more) changes


Replace message parser with a new one

This one should be really hard to break/unbreakable. It should be just as complete as the old one and address #15, #128, #129 and possibly various other unexpected breakages.
It solves the problem by making it so when a parser matches, it is responsible for recalling the parser with what it allowed to be parsed further.

Ideally I would have liked to avoid using closures, but they are currently needed for two reasons:

When a parser matches, it is expected full control. Therefore, we need a way to stop the main loop
Since I'm abusing regexes and doing several passes, it is a good addition to skip the already processed parsers to avoid redundant work

This fix is also potentially pretty rough on the stack, but considering IRC limits the length of lines to 512 characters, we can't possibly call over 512 deep.
This is the test case I used, which seems to cover most of it. https://d.max-p.me/irc/parser.html
Other various points:

This breaks parsing of (http://www.example.com/) links, as parenthesis are technically valid URLs. It does parse <http://www.example.com/> just fine however! (easy fix if we want to bring it back)
It removes the <i class="wrapper"> on purpose. No idea why it was there, but everything it did is fixable otherwise.
It doesn't support \x16 to invert colors. It never worked anyway, and I'm not sure how doable this is using CSS/Javascript.
It also doesn't support color 99: it's not even documented everywhere and there's \x0F to clear formatting anyway.
Everything in the regexes is there on purpose. Greedy vs non, greedy, repetitions, weird character classes. It's all there because it's needed. I don't think it can be reduced any further.

@astorije also asked the possibility of adding testing for all those regexes, if anyone has any idea how this could be done please suggest. A simple map of input -> expected outputs should do.

This PR also closes #68 if we keep the regex url parser.

Tested, and there's no obvious breakage this is causing besides not handling international domains. If we keep the new way of handling links, then URIjs should be removed from the repo.

Regarding parentheses, a lot of the parsers out there appear to be pragmatic: they try to match balanced (opening and closing) brackets (parentheses, braces, square, chevrons, ...) to figure out if the parenthesis is part of the URL or not. Here is what I'm talking about in a few examples, applied to the GitHub parser:

http://example.com/page_(abc)
http://example.com/page_abc)
http://example.com/page_abc(
http://example.com/page_{abc}
http://example.com/page_abc}
http://example.com/page_abc{
http://example.com/page_[abc]
http://example.com/page_abc]
http://example.com/page_abc[
http://example.com/page_
http://example.com/page_abc>
http://example.com/page_abc<

The best live example I can think of is Wikipedia URLs, which very often have parentheses, like this one: https://en.wikipedia.org/wiki/Git_(software).
Of course, it could be a false assumption, like if a URL legitimately ends with a closing parenthesis without an opening one, but we are in that area of URI parsing where heuristics is key :-)
Turns out, I noticed this being an issue with URI.js as well and opened an issue at the time which, as you can see, I could not match it with a PR...
I see you don't use URI.js anymore, worth removing? Alternatively, can we leverage it instead of a custom parser? Whether URI.js or a better one, but I'm thinking there might be an existing library to do that that does it well.

Yeah,  a lot of people use () to wrap URLs. I will add it to the parser, it should be easy to add.
As for the parser, I'll have a look at it to see if I can fix xPaw's issue with international domains. I didn't even notice we were using a library for that and just started from scratch because we had issues with URLs, mainly <URL> didn't parse properly despite those not being valid characters for an URL at all. But if I can't fix it I'll see if I can switch it back to a library. But I don't think we really need a library for a simple regex so I would like to avoid it if that's an easy fix.
I'll also give a look at why it fails to parse Wendy's bold (and only bold!) a bit later. Should be an easy fix too.

https://github.com/hexchat/hexchat/blob/78486b49d5b688ba5054631b849f8959846cf07b/src/fe-text/fe-text.c#L143
We need to handle some extra symbols, as we discussed in IRC.

Alright this parser is a garbage. I'll rewrite another one later using a real tree. This almost worked perfectly considering regexes are a really nice way to express string manipulations, but IRC formatting apparently requires just a tiny bit more string formatting support than regexes can do. I'll have to rewrite all the same logic... but manually.

@maxpoulin64, ping me when you restart your work on this so that we can sync up and come up with both the code (you) and the test suite for it (me) in parallel :-)


P2P Swarm interaction refactoring

Currently we connect to a p2p swarm only when user clicks on EZSSH button. We need to modify this behavior to provide better user experience, reduce connection time and highlight p2p swarm problems on user side.

Connection time is still not reduced.

Fixed.

Fixed.


Inheritance for Types or Type composition

In this chat we are discussing about inheritance for Types and now I'm thinking about if we really need this.
According to this article, Interfaces must be small. I agree. But if we will have inheritance for Types (interfaces), how guarantee they will be small?
if A have 3 methods and B, that inherits from A, have more 3 methods, the Object will need to  implements 6 methods. That is huge.
I'm thinking about Type composition instead of inheritance for Types.
Before you start to think in this idea, you need to understand how composition, supported by language, will work. In issue #6 I've proposed a syntax for object composition. But we can improve and extend that for Types too.

@mdbs99 How do you compose types (such that it's a distinct thing from inheriting from types)?

@pa9ey this doesn't exist (I guess) so, we need to discuss first.
As I've said before, we need composition for implements types (interfaces). Composition for Classes exists a long time ago in Object Pascal and I really don't know why doesn't exists in "object-oriented languages" like Java and C#.
But, I think, we need composition for Interfaces too (or the compiler will be smart). If we use inheritance for Types they will grow up, introducing many methods on each new subtype. So, maybe the same syntax I already proposed could be used for Interfaces.
In my example in #6 I wrote this:
type Dog extends Run, Bark {
  name(): String
  sit()
}

var dog = object Dog("Rex") {
  constructor (n: String) { var name = n }
  name(): String { print (name) }
  sit() { print ("sat") }
  compose {
    run from r1 implements Run,
    bark from b1 implements Bark
  }
}

The Dog extends Run, Bark but the implementation of object Dog we have a composition to implement Run and Bark.
The problem is: The compiler will be smart enough to distinct this or we need to introduce composition for Types too?

I guess what I'm saying it, I can't imagine what composition of types would actually mean.
If C was a composition of A and B; and C had all the messages on it that B has on it, plus all the messages that A has on it; would this be composition?
If so, then it's the same as inheritance.
If not, then what would be on C?
Or are you saying that there would not be a C? An object could implement A + B but that "composition" could never have a name.

@pa9ey the major problem is grow up a Type with more and more methods using inheritance.
If the idea of Type composition is confusing, we can move on...
But the question is: How we'll make objects with few methods if we can have a Type with a thousand of methods to implement?

Well it's only a problem if objects are going implement lots of interfaces (well, 4+ maybe). Don't you either have to keep to a few very small interfaces or else use duck typing?

@pa9ey imagine that we have this hierarchy A<-B<-C.

A has 3 methods
B has more 2 methods
C has 1 more method

Binherits from from A, then B has 5 methods.
So, C inherits from B, then C has 6 methods to implement.
If an object wants to implement C, then it will need to implement 6 methods.

...keep to a few very small interfaces or else use duck typing

See, the problem isn't the number of interfaces, but the number of inheritances.

@mdbs99 Sure. That's fair. But it's roughly the same thing. If an object implements C it basically implements three interfaces. EO currently allows 4 messages per interface (type). If you implement no more than three interfaces (which isn't currently specified) then an object will have a maximum of 12 methods. (The limit for that is also not mentioned yet.)
Not that I'm saying that these limits are the "right" ones. Just that "Don't you either have to keep to a few very small interfaces or else use duck typing?"

@mdbs99 Although, even with duck typing, you might still want to limit the number methods an object can implement.
And the question still remains, how would "type composition" (whatever that is) limit the number of methods that an object has?

If an object implements C it basically implements three interfaces.

No, it implements only one.

...If you implement no more than three interfaces

How to control that? The compiler allow inheritance or not. To control the number of they, I guess, is complex.

...then an object will have a maximum of 12 methods.

And that is to much, don't?

And the question still remains, how would "type composition" (whatever that is) limit the number of methods that an object has?

@pa9ey  Ok, what do you think?
type Run:
  Run run()

type Bark:
  Bark bark()

type Dog:
  String name()
  Dog sit()
  compose:
    Run run()
    Bark bark()

Instead of extends, the Dog was composed.
So, to implements Dog type we'll need three objects. Not only one with 4 methods. Got it?

@mdbs99 I understand your concern about too big objects (with too many methods), but isn't it an unsolvable problem? If your design requires subtyping from three different types, each of which has 4 methods -- so be it. This is the design. How can we on the level of language resolve that?  Or I miss something?

@yegor256 imagine that you need to represent a Dog. Someone says: "Hey, we already has a type for this... look the dog.eo file".
You open the file and see this:
type Dog extends Mammal:
  Dog bark()

And that is it.
You see this and think: "Oh, that's Ok, only one method. Easy."
But to implement a Dog properly, you discovered that you need to code 30 methods for all hierarchy!
So, if we'll need to see all hierarchy to implements a simple Dog, don't you think this break the encapsulation?

@mdbs99 yes, it will be difficult. I don't think it breaks encapsulation, but it will be difficult. I like your idea about "composing objects from other objects," but we are discussing it in some other ticket, if I remember. So, I'm in favor of object composition, but can't understand what is type composition.

@yegor256 I meant that breaks encapsulation because it use inheritance: you need to know the hierarchy if you will change something.

...can't understand what is type composition

That is an attempt to make Types always small... but if it will introduce more complexity — for people or compiler — I can give up for this idea.

I think this is interesting, but I think forcing the choice of composition
is not right in a type, that is an implementation details.
People who want to do bad design will always find a way. With your proposal
you could end up with a large and restrictive type composition graph that
needs to be implemented, that could also get messy..
On 30 Nov 2016 2:46 pm, "Marcos Douglas B. Santos"<EMAIL_ADDRESS>wrote:

@yegor256 https://github.com/yegor256 I meant that breaks encapsulation
because it use inheritance: you need to know the hierarchy if you will
change something.
...can't understand what is type composition
That is an attempt to make Types always small... but if it will introduce
more complexity — for people or compiler — I can give up for this idea.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/yegor256/eo/issues/37#issuecomment-263890702, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AAPd5SyXnWD4N9LJcuSzL76Lmfte7lMvks5rDYvugaJpZM4K88Zd
.

@mdbs99 we don't have types anymore

@mdbs99 we don't have types anymore


Invalid Date on TypeCast for execute after 3.9.x

Traces

Issue:  https://github.com/sequelize/sequelize/issues/17141
Issue:  https://github.com/sequelize/sequelize/issues/17116
Branch: https://github.com/sequelize/sequelize/tree/ephys/17141
Commit: https://github.com/sequelize/sequelize/compare/main...ephys/17141

Challenges from MySQL2 side

[ ] Understand DATETIME behaviors when returned from query and execute
[ ] Analyze how execute returns a DATETIME value in MySQL2 3.5.2
[ ] Analyze how execute returns a DATETIME value in MySQL2 3.9.2
[ ] Reproduce a minimal error case
[ ] Fix it 🚀

Steps for Sequelize

[ ] Reproduce both success and failure cases (old / new versions from MySQL2)
[ ] Test the solution on Sequelize in practice before to merge it

Any progress on this ? We need to update mysql2 package due to this security update. But we can't due to this bug https://github.com/sequelize/sequelize/issues/17141

Adressed to https://github.com/sidorares/node-mysql2/pull/2820.


ENH: Annotate mris_expand with thread usage

This one's a little weird, due to the multiple inheritance and also the inefficiency of multithreading in mris_expand.
I noticed midthickness taking a long time while running tests, and I was pretty sure I'd seen that it could be parallelized.
From watching htop and running mris_expand with a set of OMP_NUM_THREADS values, I see that generally you get about 65-75% core utilization, generally a bit under. We therefore overallocate threads by about 50% to make the core usage match the desired number of threads, occasionally peaking over but mostly sitting a bit under. This works pretty well for 2-12 desired threads (3-18 OMP_NUM_THREADS), but seems almost completely limited after that, with 24 threads utilizing maybe 13 cores at best. Therefore, I set this to max out at 12 for scheduling purposes.
The memory usage of this tool is low and does not seem to increase noticeably with number of threads.
If n_procs == 1, str(1 * 3 // 2) == '1', so this does not interfere with people attempting to run things single-threaded.

If there are no objections, I'll merge this before a release. It should reduce a 20min job to 2.5-4 minutes.


why the minSdkVersion is 15.

why the minSdkVersion is 15.

This is an issue tracker, not a support board. The project documentation lists several support options. Please use them!
AFAIK, API Level 15 the minSdkVersion of Google's libraries, so I set this one to match, since I depend entirely upon a Google library.


Not automatically changing for Ubuntu 10.04

The screen colour is not affected by f.lux  However, preview does cause some change but it sometimes switches back.
This seems to be a problem with other Ubuntu releases (10.10, 11.04)
https://github.com/Kilian/f.lux-indicator-applet/issues/10
https://github.com/Kilian/f.lux-indicator-applet/issues/9
Platform:
fluxgui 1.1.8 from PPA
xserver-xorg-core                                 2:1.7.6-2ubuntu7.6
Ubuntu 10.04.3 LTS
Kernel: 2.6.32-33-generic

Has this been fixed or can you not see the problem?  There are several duplicates so people are independently witnessing and observing the problem.

it has not been fixed, but it's better to keep discussion within one issue :)


Trouble Obtaining Access Token via MSI with Seemingly Correct User Assigned Identity

I am working with an azure PS function app.
The User Assigned Identity appears to be setup correctly, and I can see it in the function app’s identity page. ARM template generated from the the function app has the principal and client ids.
But I am unable to acquire an access token per this documentation:
$resourceURI = "https://management.core.windows.net/"
$tokenAuthURI = $env:MSI_ENDPOINT + "?resource=$resourceURI&api-version=2017-09-01"
$tokenResponse = Invoke-RestMethod -Method Get -Headers @{"Secret"="$env:MSI_SECRET"} -Uri $tokenAuthURI
$accessToken = $tokenResponse.access_token
error:
2019-11-26T03:19:30.548 [Error] ERROR: Invoke-RestMethod : {"StatusCode":400,"Message":"No MSI found for specified ClientId/ResourceId.","CorrelationId":"8797a7fe-6157-44e2-b24d-3e5713d2111d"}
At D:\home\site\wwwroot\IFSContainerMonitor\run.ps1:16 char:18

... nResponse = Invoke-RestMethod -Method Get -Headers @{"Secret"="$env:M ...

            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

CategoryInfo          : InvalidOperation: (Method: GET, Reques\u2026PowerShell/6.2.3
}:HttpRequestMessage) [Invoke-RestMethod], HttpResponseException
FullyQualifiedErrorId : WebCmdletWebResponseException,Microsoft.PowerShell.Commands.InvokeRestMethodCommand

Microsoft.PowerShell.Commands.HttpResponseException: Response status code does not indicate success: 400 (Bad Request).
at System.Management.Automation.MshCommandRuntime.ThrowTerminatingError(ErrorRecord errorRecord)
And I appear to not have access to the Instance Metadata service from inside azure functions app:
$resourceURI = "https://management.core.windows.net/"
$tokenAuthURI = "http://<IP_ADDRESS>/metadata/identity/oauth2/token?api-version=2018-02-01?resource=$resourceURI"
$tokenResponse = Invoke-RestMethod -Method Get -Headers @{"Metadata"="true"} -Uri $tokenAuthURI
$accessToken = $tokenResponse.access_token
error: An attempt was made to access a socket in a way forbidden by its access permissions
Can someone please give me some pointer on this?

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

ID: f57d3177-ce9e-ebfa-03a7-45beb8ca3212
Version Independent ID: a59df23d-f3ac-9809-61d3-5741e31f020a
Content: Managed identities overview - Azure App Service
Content Source: articles/app-service/overview-managed-identity.md
Service: app-service
GitHub Login: @mattchenderson
Microsoft Alias: mahender

@Cescante Thanks for the feedback! We are currently investigating and will update you shortly.

@Cescante Thanks for asking question! Could you please double check on have you included the clientid property?
As its mentioned here: “If you are attempting to obtain tokens for user-assigned identities, you must include the clientid property. Otherwise the token service will attempt to obtain a token for a system-assigned identity, which may or may not exist.”
Let me know if you have any questions on this.

@SnehaAgrawal-MSFT That was it! thanks!

@SnehaAgrawal-MSFT Somehow the mentioning of the clientId is gone from the documentation now. Could you pleas add it to the documentation. This error costed me hours.

@Console32 the example code does work. You can pass a connection string to the AzureServiceTokenProvider constructor but you don't have to. If you don't the connection string is fetched from the AzureServicesAuthConnectionString environment variable. Here is a reference of all supported connection string options: https://docs.microsoft.com/en-us/azure/key-vault/general/service-to-service-authentication#connection-string-support

@Console32 it appears that someone heard you, the documentation has been updated and now includes correct instructions for using a user assigned managed identity (https://docs.microsoft.com/en-us/azure/app-service/overview-managed-identity?tabs=dotnet#asal). The example code does work but the crucial part for getting a user assigned managed identity to work was missing:

If you want to use a user-assigned managed identity, you can set the AzureServicesAuthConnectionString application setting to RunAs=App;AppId=<clientId-guid>. Replace <clientId-guid> with the client ID of the identity you want to use.

I found a reference on how the AzureServiceTokenProvider constructor works and which connection strings it supports: https://docs.microsoft.com/en-us/azure/key-vault/general/service-to-service-authentication#connection-string-support


Develop to main

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

GitHub release
v1.0.2

Your semantic-release bot :package::rocket:


RFE: Provide a parseable output (JSON / YAML)

The 3scale toolbox is being improved to become the recommended way to configure and deploy services in 3scale. This fits in a broader approach of Continuous Delivery that has been started by several customers / communities (I personally maintain the threescale-cicd ansible role. Those approaches are using different means to drive the 3scale admin portal, some are using the 3scale-cli other (like the threescale-cicd role) are using the 3scale REST APIs.
If we want to make the 3scale_toolbox the de facto standard for interacting with 3scale, we need it to be usable in a CI/CD approach.
At a glance, here are the features I expect from the 3scale toolbox :

#81: Is idempotent
#82: Works with system_name and not service_id
#83: Can output human readable information as well as json or yaml (akin to oc cmd -o yaml)
#80: Have a standard way to report errors

Outputting JSON or YAML
Since the 3scale toolbox will be used from scripts / pipelines / etc, its output must be easily parseable by a program without any ambiguity.
Proposition
Akin to the "oc" or "kubectl" command, 3scale toolbox output can be changed by specifying a flag in the command line.
Exemple
By default, the 3scale toolbox output human readable information
$ 3scale-toolbox services
my-service1 (My Service 1)
my-service2 (My Service 2)
...

But a YAML output can be used instead
$ 3scale-toolbox services -o yaml
services:
- system_name: my-service1
  name: My Service 1
- system_name: my-service2
  name: My Service 2

This feature needs to be in the toolbox's core so that every plugin can leverage this feature.

For commands fetching a single resource or a collection of resources, json/yaml output makes all the sense.
However, for "action commands" like 3scale import openapi, what should the output look like in json/yaml format?
For example, the openapi import command, currently output looks like this:
3scale import openapi -d mytenant petstore.yaml
Updated service id:<PHONE_NUMBER>399, name: Swagger Petstore
Service proxy updated
destroying all mapping rules
Created POST /v2/pet$ endpoint
Created PUT /v2/pet$ endpoint
Created GET /v2/pet/findByStatus$ endpoint
Activedocs exists, update!

wdyt @nmasse-itix?

Fixed https://github.com/3scale/3scale_toolbox/pull/229


Please report: Excessive number of pending callbacks: 501.

Description
I'm trying to loop over a set of data that I have from Firebase and display it as a list. When a user clicks an item in that list, a modal appears with more detailed information about that item. But when I load the main component (seeFaults), I quickly get a warning saying:
Please report: Excessive number of pending callbacks: 501. Some pending callbacks that might have leaked by never being called from native code:
{"1590":{"module":"NativeAnimatedModule","method":"startAnimatingNode"},"1816":{},"1817":{},"1818":{},"1819":{},"1820":{},"1821":{},"1822":{},"1823":{},"1824":{},"1825":{},"1826":
{},"1827":{},"1828":{},"1829":{},"1830":{},"1831":{},"1832":{},"1833":
{},"1834":{},"1835":{},"1836":{},"1837":{},"1838":{},"1839":{},"1840":
{},"1841":{},"1842":{},"1843":{},"1844":{},"1845":{},"1846":
{},"1847":{},"1848":{},"1849":{},"1850":{},"1851":{},"1852":{},"1853":
{},"1854":{},"1855":{},"1856":{},"1857":{},"1858":{},"1859":
{},"1860":{},"1861":{},"1862":{},"1863":{},"1864":{},"...(truncated keys)...":451}

But this only started appearing after I started to try to download images from Firebase and had an await in a for loop like:
for (const img in images) {
    await storage().ref('/' + faults[i].images.img).getDownloadURL()
        .then( (url) => imageSet.push(url) );
}

When I commented all of this out, the warning kept appearing with each render, despite the code being identical to how it was before I started writing the image downloading code
React Native version:
System:
OS: macOS 11.0
CPU: (8) x64 VirtualApple @ 2.50GHz processor
Memory: 52.70 MB / 8.00 GB
Shell: 5.8 - /bin/zsh
Binaries:
Node: 14.17.4 - /usr/local/bin/node
Yarn: Not Found
npm: 6.14.14 - /usr/local/bin/npm
Watchman: 2<IP_ADDRESS> - /usr/local/bin/watchman
Managers:
CocoaPods: 1.10.1 - /usr/local/bin/pod
SDKs:
iOS SDK:
Platforms: iOS 14.5, DriverKit 20.4, macOS 11.3, tvOS 14.5, watchOS 7.4
Android SDK:
API Levels: 23, 29, 30
Build Tools: 29.0.2, 30.0.3
System Images: android-29 | Intel x86 Atom_64, android-30 | Google APIs Intel x86 Atom, android-30 | Google Play Intel x86 Atom, android-31 | Google APIs ARM 64 v8a
Android NDK: Not Found
IDEs:
Android Studio: Not Found
Xcode: 12.5.1/12E507 - /usr/bin/xcodebuild
Languages:
Java: javac 16 - /usr/bin/javac
npmPackages:
@react-native-community/cli: Not Found
react: 17.0.1 => 17.0.1
react-native: 0.64.2 => 0.64.2
react-native-macos: Not Found
npmGlobalPackages:
react-native: Not Found
Steps To Reproduce
Unfortunately, since I'm using a Firebase database I cannot make a reproducible sandbox or easily say how to replicate this without giving my database url away.
Expected Results
For the component to render without the warning.
Code
export const FaultItem = (props) => {
    const [modalVisible, setModalVisible] = useState(null);

    return (<>
            <FaultModal modalVisible={modalVisible} setModalVisible={setModalVisible} text={props.fault_desc}/>
            <TouchableOpacity onPress={() => setModalVisible(!modalVisible)}>
                <Text>{props.fault_desc}</Text>
                <View>
                    <Text>{props.type}</Text>
                    <Text>{props.date}</Text>
                </View>
            </TouchableOpacity>
            </>
            )
}

export const FaultModal = (props) => {
    return (
        <Modal
            animationType='fade'
            transparent={true}
            visible={props.modalVisible}
            onRequestClose={() => {
            Alert.alert("Modal has been closed.");
            props.setModalVisible(!props.modalVisible);
            }}>
            <View>
                <View>
                    <ScrollView}>
                        <Text>{props.text}</Text>
                    </ScrollView>
                    <TouchableOpacity onPress={() => props.setModalVisible(!props.modalVisible)}>
                        <Text>Close</Text>
                    </TouchableOpacity>
                </View>
            </View>
        </Modal>
    )
}

export default function seeFaults() { //Main Component

    const [foremanSite, setForemanSite] = useState(null);
    const [rows, setRows] = useState([]);
    const [imageSet, setImageSet] = useState([]);

    useEffect(() => {
        const userId = auth().currentUser.uid;
        const dataBase = firebase.app().database(/*my firebase database url*/);
        dataBase.ref(`/users/${userId}/`).once('value').then(snapshot => setForemanSite(snapshot.val().foreman_site));
        dataBase.ref(`/sites/${foremanSite}/faults`).once('value').then(snapshot => {
            getFaults(snapshot.val());
        });
    }, [getFaults])

    function getFaults(faults) {
        for (const item in faults) {
            rows.push({
                fault_desc: faults[i].fault_description,
                owner: faults[i].owner,
                date: faults[i].date,
                type: faults[i].fault_type,
            });
        }
    }

    return (
        <SafeAreaView>
            <ScrollView>
                {rows.map( (item, i) => {return <FaultItem key={i} fault_desc={item.fault_desc}
                owner={item.owner} date={item.date} type={item.type} /*images={item.images_uri}*//> })}
            </ScrollView>
        </SafeAreaView>
    )
}

https://github.com/facebook/react-native/issues/31830 looks similar; do you find clues there? Maybe the two issues can be consolidated.

I think the issue was that I was setting (or rather resetting) state within a for loop and then pushing all that to another state object and that was causing issues. Instead I updated a local variable and pushed that all to my state at the end of the loop.
Basically it was an excessive use of state and resolved it by using normal variables where possible.
Thanks for your help though @chrisbobbe :)


revoke app 1219

Close #1219

Coverage increased (+0.03%) to 82.413% when pulling 8f27b81a8b50c0884f883633cb5bf01bbb247c18 on na3d:auth-revoke into 5d5ed4f10b46cf852c1f2aeea4789e23ee71282a on linode:master.

RIP Dodson Manager

Coverage increased (+0.03%) to 82.413% when pulling 3d3e6b30a28ea96d819dc14989a28cdaa8343437 on na3d:auth-revoke into 5d5ed4f10b46cf852c1f2aeea4789e23ee71282a on linode:master.

Coverage increased (+0.02%) to 82.406% when pulling 0a237fe8b767597d68d43a2bd2e8cf5a75d502ee on na3d:auth-revoke into 5d5ed4f10b46cf852c1f2aeea4789e23ee71282a on linode:master.

Coverage decreased (-5.5%) to 76.929% when pulling 9a08fe2aed290feb7e467f5bba167f8a7a24e488 on na3d:auth-revoke into 5d5ed4f10b46cf852c1f2aeea4789e23ee71282a on linode:master.

there's no confirm on this?

there's no confirm on this?

Good question. It's not a very serious thing to revoke access. You simply allow it the next time you change the page. I do like confirms, but it will probably be easier on users to just not confirm here.

follow ups:
https://github.com/linode/manager/issues/1359
https://github.com/linode/manager/issues/1360

Yeah, I discussed this with with a couple people here, because I could see benefits on both sides.  We favored the idea without a confirm, because all you have to do is log back into the app and confirm access again.


[BUG] Sometimes the Inline Chat is getting stuck and doesn't go away until a full window reload

OS: Windows 11
Sometimes the inline Chat (Ctrl + I for Windows) is getting stuck.
It's not responding and sticks to the screen at the same absolute screen position even when switching tabs.
It happens when It's thinking and I try to close it in this while.

Steps to Reproduce:

Start a chat session in the code (Ctrl + I)
Enter a prompt that suggests a code edit (with a split window).
Ask another question and immediately close by pressing Esc.
Now it sometimes gets stuck. Happens to me a lot with python files .py (if that matters).

It always stuck in "thinking" and no responses anymore after I asked 2 or 3 questions. It can only get back to life when I clear the chat and start a new conversion.
It seems the maximum num of chat available for each 'thread' is 2 or 3

I also encountered it. Screencast here:
https://github.com/microsoft/vscode-copilot-release/assets/28441561/4a709ebb-20c0-43a6-9f20-738a8b1fb1a2

Seems like it has been fixed in v0.1.2023060101 🎊 !

Please re-open it still happens for you


Need Bulk Help

can you please do me up an example for what enchants on pickaxes should be like because ill be dammed sitting here messing around trying to find out how to do pickaxes. Could you make an example that is like specifically for a pickaxe in the CUSTOMENCHANTMENTS.YML

CustomEnchantments.yml is being dropped in v1.8 of CE and it also currently doesn't support pickaxe enchantments sorry.


Bad Cast error for any HTTP Json RPC command

In the develop branch, there is "Invalid cast from array_type to string" for any rpc command that gets sent.  This means the web clients will not operate.
cat<<-eee|curl --data-binary -d @ http://test:test@localhost:${HTTP_PORT}/rpc
{"method":"open","params":["default"]}
eee
curl: (6) Could not resolve host:
Invalid RPC Request
7 bad_cast_exception: Bad Cast
Invalid cast from string_type to Object
    {"type":"string_type"}
    th_a  variant.cpp:539 get_object

Maybe it is this?
https://github.com/BitShares/fc/commit/40943808d0f1c134c0559a5904e3cac03cbda478
this extra call to fc::json::to_string should be fine: https://github.com/BitShares/bitshares/commit/e25740b290cbf1367f95d33d632aaf07317389b0#diff-6036c4ee3be744b58d610de2231b6846L317

@jcalfee Are you using latest develop? This was fixed yesterday by: https://github.com/BitShares/bitshares/commit/5cc25172f31c150505f32e5a88a874a18c43cdc5

Latest as of yesterday..  Thanks I'm updating now.


Edit on GitHub button not working for kernels and estimators

The Edit on GitHub button doesn't seem to work on the docs for kernels and estimators (e.g. here or here).
Versions:

cellrank==1.4.0

Can we also close this? From my side, there are not plans of reintroducing this and/or fixing it on current master (pointless with a new release behind the corner).

But shouldn't we fix it in the new release? Or do you think it is pointless since it's being deprecated and removed in the near future (removed in the sense of tl/kerenels replaced by kernels/)?

But shouldn't we fix it in the new release? Or do you think it is pointless since it's being deprecated and removed in the near future (removed in the sense of tl/kerenels replaced by kernels/)?

This doesn't affect only kernels and estimators, but all auto-generated .rst files (try here) - that's why there's the [source] button instead (should've removed this earlier).

Ah, so what you are saying is that with the new release, the Edit on GitHub button will disappear all together and we will only have the source button? Then yes, let's close this!


Rename project to faunanet

remove all references to Sparrow  or iSparrow  in the code and documentation and replace with faunanet.

Codecov Report
Attention: Patch coverage is 88.88889% with 6 lines in your changes are missing coverage. Please review.

Project coverage is 82.56%. Comparing base (856bbd5) to head (ac0aee8).

 Share it here.


Microsoft images blog post link does not contain the information promised

Click on the AppSource get it badge and it redirects to a blog post from September 2019 with no valid links to the image.  I'm unable to find where to go to get this badge

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

ID: 463e4bf4-3be8-4b89-21e2-9194e264fe38
Version Independent ID: c2619d79-96f0-bd7b-e230-5e5d59f2bc3a
Content: Language, Branding, and Images - Business Central
Content Source: dev-itpro/developer/readiness/readiness-checklist-a-languange-branding.md
Service: dynamics365-business-central
GitHub Login: @a-emniel
Microsoft Alias: a-emniel

Hello, thanks for the feedback. On the blog post page, there's a link to the Marketing Resources Guide, which should download a AppSource and Azure Marketplace Marketing Resources Guide with images to use. Hope that helps. Thanks.

Closing this


In Census General Entry-> Post combo should be populated against that particular class.

It is also noted in edit mode class and post value should be selected properly

finished


[OTHER] Broken link of Images in ReadMe file

What would you like to share?

Additional information
No response

Why aren't the badges working anymore?

-> remove badges or use for example shields io
check it out sir , raised a pr
https://github.com/EddieHubCommunity/awesome-github-profiles/pull/1904


[contentsafety] Code improvements

Updating samples snippet decorators
Adding missing license headers

API change check
API changes are not detected in this pull request.

@catalinaperalta I've cherry-picked your commits to my working branch and will send the update PR, you could drop this PR now.


2 d camera geometry

This module converts hexagonal camera grids stored in 1D arrays into a square grid stored in 2D arrays through slanting and stretching. Back-conversion is provided as well.
It supports summed pixel arrays -- e.g. event.dl0.tel[tel_id].adc_sums[0] -- and time-sliced arrays -- e.g. event.dl0.tel[tel_id].adc_samples[0].
The functions create a CameraGeometry object which can be used to draw the camera image with visualization.CameraDisplay as usual.
This is intended for algorithms that need rectangular images/pixels like the wavelet cleaning that we are using. Preliminary tests show that this wavelet cleaning works also on hexagonal images skewed to look rectangular. Attached are two example images to demonstrate the forth and back conversion.

You are right of course. I'm not sure how I ended up putting this in io...


[BUG] session.show() does not preserve view state

In a Jupyter/Colab notebook, running the following two cells will result in different samples in each view, whereas one would like to see the exact same samples.
The issue is that the Shuffle() stage is being recreated, which generates a new random seed internally.
import fiftyone as fo
import fiftyone.zoo as foz

dataset = foz.load_zoo_dataset("coco-2017", split="validation", max_samples=100)
view = dataset.shuffle().limit(10)

session = fo.launch_app(view=view)

session.show()

A related observation is that label colors change when a new App is launched.
I did intentionally say "preserve view state in the issue title, as opposed to preserve app state. Label colors would fall under the latter, as would remembering scrolling state, window expansion, etc. which is too much to do right now.
With this said, it is a bit strange to have label colors change every time session.show() is issued, since the user may have spent some time refreshing colors to get ones that they like... Perhaps label colors should be pulled into the backend Session object.

A related observation is that label colors change when a new App is launched.
I did intentionally say "preserve view state in the issue title, as opposed to preserve app state. Label colors would fall under the latter, as would remembering scrolling state, window expansion, etc. which is too much to do right now.
With this said, it is a bit strange to have label colors change every time session.show() is issued, since the user may have spent some time refreshing colors to get ones that they like... Perhaps label colors should be pulled into the backend Session object.

Clarified that this is Colab specifically; the observed behavior does not happen in Jupyter notebooks.

Clarified that this is Colab specifically; the observed behavior does not happen in Jupyter notebooks.

Can you still produe this issue? I cannot.

Can you still produe this issue? I cannot.

I just tried with develop in a Jupyter notebook and didn't see it 👍 .
Any reason why this might be a colab-specific issue? I tried to do a source install in a colab notebook and it failed for some reason so I wasn't able to check. If you think colab should be fine, feel free to close this.

I just tried with develop in a Jupyter notebook and didn't see it 👍 .
Any reason why this might be a colab-specific issue? I tried to do a source install in a colab notebook and it failed for some reason so I wasn't able to check. If you think colab should be fine, feel free to close this.

No, I don't think so. I'm not seeing the issue in Colab either.

No, I don't think so. I'm not seeing the issue in Colab either.


Import Richard Leary's edlin clone from DOS/65.

Edit's not done yet, but there are so many important fixes here I'm going to merge anyway.


github-desktop: Use finalAttrs pattern, remove old openssl and bump to 3.2.5

Description of changes

Things done

Built on platform(s)

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

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

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

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

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

[ ] Fits CONTRIBUTING.md.

Merging the PR since I got no feedback from the maintainer.

Merging the PR since I got no feedback from the maintainer.

I'm sorry my dear friend, I didn't see it, but everything is fine.

No problem :) Thanks for letting me know.


Сheck validity of deps.js

Do you mean syntactical validity?

@arikon, yes.

Implemented in bemhint-deps-specification.