OutOfMemoryError: Direct buffer memory

Hello,
Running:

Waterfall version git:Waterfall-Bootstrap:1.9-SNAPSHOT:b033890:185
Java 8 build 77
Multicraft 2.0.0

Bungee Config: http://pastebin.com/raw/6dw4Wv5R
I've been having issues with running out of memory with Bungeecord, so I decided to switch to Waterfall to see if that would help, but the problem still occurs. I've tried allocating anywhere from 512MB to 2GB of RAM, but the memory exception still occurs even with anywhere from 3 to 20 players online with no plugins running. The errors will occur and players will have trouble joining for a few hours before the proxy just starts to hang and nothing responds anymore.

This is the error that appears in the console when players try to connect: http://pastebin.com/raw/pfEegaLR
They're disconnected with this message: https://i.gyazo.com/35e5357cc39547ef4c1b3d273ee3c695.png
or sometimes with "OutOfMemoryError: GC overhead limit exceeded"
This error also appears a lot in the console: disconnected with: §fEncoderException : java.lang.OutOfMemoryError: Direct buffer memory @ io.netty.handler.codec.MessageToByteEncoder:125
I'm seeing a lot of GC allocation failures, not sure if that's relevant: https://i.gyazo.com/31eb483285c15e42daaa4005706a0257.png
Also seeing a few full GCs per-second, not sure if that's normal: https://i.gyazo.com/05652abbc38e6e0191fbcc618e50c331.png
A few netty classes seem to be using a lot of memory: https://i.gyazo.com/f4bc60df7bc792f15cf00cb900c5f0d5.png
Sometimes "char[]" and "java.lang.String" have a large size: https://i.gyazo.com/14815b5b81eb2ef2688c124a5534c21a.png

Not sure how much it helps, but I tried running VisualVM to get more information:
With -xmx set to 2GB:

VisualVM Overview: https://i.gyazo.com/193d712322a570a36879a6ba3d62ecd5.png
"free -m": https://i.gyazo.com/a03bbdbe2f140ab8e78bf54c514729aa.png
Server started throwing out of memory exceptions after about 60-90 minutes.

With -xmx set to 1GB:

VisualVM Overview: https://i.gyazo.com/92f5c8884eabb34712052d5f4af080e5.png
"free -m" after reducing -xmx in all servers: https://i.gyazo.com/0930878e8e2dcae0fd62ad2f6a457b2b.png
"htop": https://i.gyazo.com/6c1f2e0e8da0b5a972396a12c777e152.png
Server started throwing out of memory exceptions immediately after starting up.

"free -m" with proxy and Spigot servers unloaded: https://i.gyazo.com/fd0500751ba608f550c3e09eb61b9f8b.png
I've tried these flags:
"{JAVA}" -Xmx{MAX_MEMORY}M -Xms{MAX_MEMORY}M -Djline.terminal=jline.UnsupportedTerminal -jar "{JAR}" nogui
And these flags:
"{JAVA}" -Xmx{MAX_MEMORY}M -Xms{MAX_MEMORY}M -XX:+UseG1GC -XX:+UnlockExperimentalVMOptions -XX:MaxGCPauseMillis=100 -XX:+DisableExplicitGC -XX:TargetSurvivorRatio=90 -XX:G1NewSizePercent=50 -XX:G1MaxNewSizePercent=80 -XX:InitiatingHeapOccupancyPercent=10 -XX:G1MixedGCLiveThresholdPercent=50 -XX:+AggressiveOpts -XX:+AlwaysPreTouch -Dwaterfall.acceptInvalidPackets=true -Djline.terminal=jline.UnsupportedTerminal -jar "{JAR}" nogui

Try to add -Dio.netty.recycler.maxCapacity=0.
If that doesn't work, give me the info with -Dio.netty.leakDetectionLevel=paranoid.

With -Dio.netty.recycler.maxCapacity=0 and 512MB allocated, the server immediately stopped responding after starting up and threw these errors: http://pastebin.com/raw/iAJK0Aja
With 1GB allocated, the Direct Buffer OOM error started to occur after a couple minutes.
With -Dio.netty.leakDetectionLevel=paranoid, should I be seeing extra info somewhere? Nothing new in console and players are unable to connect but used heap seems to have increased a lot: https://i.gyazo.com/739adc9b8845ab94381a1b39851913ef.png

Update: With -Dio.netty.recycler.maxCapacity=0 and 2GB allocated, the server goes several (3-5) hours between OOM errors. A major improvement but 2GB seems overkill for 15 players online.

Try with -Dio.netty.recycler.maxCapacity=0, 2GB, and paranoid leak detection.

With -Dio.netty.recycler.maxCapacity=0, -Dio.netty.leakDetectionLevel=paranoid, and 2GB allocated players are unable to join any server on the network without being disconnected immediately or shortly after joining with "Timed Out". The TPS on the non-proxy servers drops to about 10-15 when players try to join. Tried with and without plugins loaded. Pinging the server also becomes very unreliable; either slow or no response.
Log with plugins: http://pastebin.com/raw/JrnrQKpJ
Log without plugins: http://pastebin.com/raw/L5gZbDx6
Also saw some strange things with "/glist" before being timed out: https://i.gyazo.com/e611bb45cdf851f06795b3d6f5feb688.png

Quick update:
Not sure if the proxy's supposed to use 3.4GB more than what's allocated, but that's what it's doing: https://i.gyazo.com/99c633e7ac10a0779132cbeaf23f337f.png

Start waterfall with 2GB and -Dio.netty.recycler.maxCapacity=0. Configure the JVM to do a heap dump when it runs out of memory by adding  -XX:+HeapDumpOnOutOfMemoryError. Run your server for as long as possible until you run out of memory. Then give me the resulting heap dump.

Would it be better to give it 1GB to trigger the heap dump faster? Or is 2GB allocated preferred?

Sure, we can try 1 GB.

Well, this is interesting.
I didn't get any OOM errors with 1GB, so I reduced it to 512MB. Still no OOM errors.
What I think might have happened:
Since the 1.9 update, my players and I have been getting really long "Downloading Terrain" screens when logging into the server. I asked on the Aquifer forums about this and one person noted they had the same issue and solved it by deleting the main world's "scoreboard.dat" file. I gave it a shot and it solved the issue; players were able to login instantly without that long "Downloading Terrain" screen.
Going back through my logs, it seems the OOM errors stopped when I fixed that problem. I believe they were related to the scoreboard.dat file either being too large or being pre-1.9.
So right now I'm running smoothly with 512MB allocated to the proxy and plugins running. I still have the -XX:+HeapDumpOnOutOfMemoryError flag set, so I'll post back if it does throw another OOM error. So far it's been running a good 12+ hours with no errors, though. =)

This just started happening again.
Here's the heap dump: https://www.dropbox.com/s/0hdxli1a6a5a2hu/WaterfallDump.7z?dl=0
Here's the SHA-256 hash: 936ABE35DF756433B4CF7F3E7E9DFA1846D712A0EEE570FBA7F89FC1AFDA8AA8
I noticed the scoreboard.dat file in one of my servers had grown again to about 3MB and players were getting long "Downloading Terrain" screens when trying to connect. I've deleted the file again and am waiting to see if it stops Waterfall from running out of memory like it did before.

Shit, -Dio.netty.recycler.maxCapacity=0 disables the cap on the recycler. Set it to 10,000 and report again if you run out of memory.
I'm coming close to the solution, but want to make sure its not caused by my own stupidity with the recycler.

I changed the recycler maxCapacity to 10,000. I'll have to wait for the scoreboard.dat file to grow again, I think, before it'll run out of memory. Will post back once that happens; I may just replace it with an older scoreboard.dat I saved that's ~3MB to speed it up.

Fixed by 7b615e4be5427a5019984c8ce7283175b0888c3e.
Plugins like featherboard fill scoreboard.dat with crap, and the data is sent to waterfall, and waterfall represents it inefficiently.
If this is still an issue after this commit, open a new ticket.

@BlackBeltPanda If you have java 8 >=update 20, you can try out using these additional jvm parameters: -XX:+UseG1GC -XX:+UseStringDeduplication, and if you want some statistics, append also this parameter: -XX:+PrintStringDeduplicationStatistics

@Janmm14 I want to see if my interning works ;)
We can't rely on command line flags to fix memory bugs.

Yes, I know.

String.intern?

Was the patch removed?

No


Issue#SC-2165 user content progress added

@pritha-tarento - execution of test cases failed on this PR. please fix and resubmit the PR again.

@pritha-tarento - execution of test cases failed on this PR. please fix and resubmit the PR again.

@pritha-tarento : please check my review comments inline in the code.. In addition, I did not find unit tests for any of the code. please add unit tests, address the review comments and re-submit the PR>

@pritha-tarento : please check my review comments inline in the code.. In addition, I did not find unit tests for any of the code. please add unit tests, address the review comments and re-submit the PR>

Closing the PR as not relevant to the branch


Deprecate defaultBuilder(), use newBuilder() instead

Codecov Report

Merging #370 into master will not change coverage.
The diff coverage is 50%.

@@            Coverage Diff            @@
##             master     #370   +/-   ##
=========================================
  Coverage     73.99%   73.99%
  Complexity      505      505
=========================================
  Files           132      132
  Lines          2646     2646
  Branches        184      184
=========================================
  Hits           1958     1958
  Misses          613      613
  Partials         75       75

Impacted Files
Coverage Δ
Complexity Δ

.../java/com/google/longrunning/OperationsClient.java
65.11% <ø> (ø)
16 <0> (ø)
:arrow_down:

...om/google/longrunning/stub/GrpcOperationsStub.java
87.5% <0%> (ø)
9 <0> (ø)
:arrow_down:

...ava/com/google/longrunning/OperationsSettings.java
72.26% <100%> (ø)
8 <1> (ø)
:arrow_down:

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 eaf2acf...32da4fe. Read the comment docs.


🐛 onDisconnected callback is never triggering

Expected Behavior
//monitor disconnections
deviceConnection.onDisconnected((error, disconnectedDevice) => {
console.log('onDisconnected Device disconnected: ' + disconnectedDevice.id);
});
onDisconnected should fire when disconnect occures.
Current Behavior
onDisconnected callback is never called on Android devices.
iOS is working. Tested with iPhone XS.
Library version
3.1.0
Device
Android at least 9 and 12 tested
Relevant log output
Only catch I got is from monitor characteristics:
monitorCharacteristicForDevice catch [BleError: Device AB:BC:DD:EF:12:34 was disconnected] Disconnected from MAC='XX:XX:XX:XX:XX:XX' with status 8 (GATT_INSUF_AUTHORIZATION or GATT_CONN_TIMEOUT)

Additional information
Worked on 2.x.x versions.
Is this working on other users on 3.1.0? Please.

I can confirm we are experiencing the same issue with onDisconnect it never called on android, but it's called on ios.

We have also seen this issue on 3.0.0. Works fine on 2.x.x versions.

same here

I'm having the same issue. The callback is never called with version 3.0.0 on Android.

Yes the library version 3.x is at the moment pretty useless until these critical bugs are fixed.

Yes, the error has been confirmed, it occurs when disconnection occurs for a reason other than calling disconnect from BleManager (like Device side disconnect). And it's probably related to https://github.com/dotintent/react-native-ble-plx/issues/1103 . We are currently looking for a solution to the problem.

Hi, we have changed the trigger of the disconnect action and released an RC version (https://www.npmjs.com/package/react-native-ble-plx/v/3.1.2-rc.0), could you check in your cases whether the change solves your problem?

onDisconnect is triggered for us on the rc version.

Hi @dominik-czupryna-withintent - I was having this issue and at least in my case the RC version fixed it. Thanks a lot

@dominik-czupryna-withintent  The RC version fixed the problem. The onDisconnected callback is now triggering when the peripheral device disconnects. Thanks a lot!

Also I could confirm that with quick tests I have done the onDisconnected callback is now triggering.

So far so good for us too.


Add support for records

Records were introduced in C# 9.0
We should also support record structs introduced in C# 10.


Update ouroboros-network dependency

bors r+

@Jimbo4350 I am merging it without your review - I need this for cardano-explorer. I opened issue for updating the scripts.

@Jimbo4350 I am merging it without your review - I need this for cardano-explorer. I opened issue for updating the scripts.

@coot The script works locally on my branch


[BUG] Typo or bug in example/teaser_cpp_fpfh/quatro_cpp_fpfh.cc

Describe the bug
These lines:
https://github.com/MIT-SPARK/TEASER-plusplus/blob/baf69d948d77e8fe496a82e2fa3b1f41a9b1156f/examples/teaser_cpp_fpfh/quatro_cpp_fpfh.cc#L35
https://github.com/MIT-SPARK/TEASER-plusplus/blob/baf69d948d77e8fe496a82e2fa3b1f41a9b1156f/examples/teaser_cpp_fpfh/quatro_cpp_fpfh.cc#L39
the operator == does not seem intended. I think it should be typo from auto-completion.
Can you confirm this?
Have you run the unit tests?

[x] Yes
[ ] No --- then this issue will be closed.

Installed Dependencies
Please report the versions of all dependencies you installed, as well as your OS.
To Reproduce
Please post the exact steps you executed to reproduce the bug.
Additional context
Add any other context about the problem here.

My bad, I'll fix it right away!


Output resolved modules' files

I like the idea to specify single file, lets say, main.js in gulp.src and compile all dependant modules along with it.
It seems to be reasonable behaviour when option noExternalResolve is turned off.
For example, if my main.ts requires some module:
// main.ts
import thing from "./somemodule";

id like to simply specify in gulpfile:
...
    return gulp.src([
       './src/scripts/main.ts'
    ])
        .pipe(typeScript({ module: "commonjs" }))
...

and get 2 compiled files — main.js and somemodule.js

I think this doesn't fit into the gulp-design. The compiler takes input and emits output that has a one-to-one mapping to the input, except for definition files. Files outside of the input are used only for definitions.
I am thinking about a different approach, like this:
gulp.src('lib/main.ts')
    .pipe(ts.resolve()) // resolve all references & imports
    // You can add gulp-sourcemaps or a TypeScript preprocessor here
    .pipe(ts())
    .pipe(gulp.dest('release'));

That way it's still possible to use a TypeScript preprocessor.

You mean implementing own parser for that?

No, it can be done using the TypeScript api. I think it should only work on a project (with tsProject = ts.createProject()). That way the same file doesn't have to be parsed twice:

tsProject.resolve() parses all files and resolves references / imports, and saves the parsed files in the tsProject object.
ts(tsProject) checks whether the files are changed (a preprocessor might change some files). If they are changed, they need to be parsed again. Then normal compilation begins.

To prevent problems with different version, I'd keep that in the same plugin since they are both using the project object.


Implement a resource to Configure NDES

Description
I have currently the problem I must implement NDES in my CA to let Linux devices request certificates. But I don't find any resources on how to automate this doing.
The UI steps what are todo to configure NDES can find here
Proposed properties
That are only the properties for the installation of NDES. For the configuration see the linked article. The list with the registry keys is maybe the easy step to implement.

Name
Type
Description
Sample

ndesServiceAccount
string
A domain user account that is a member of the local IIS_USERS on the NDES Service server
contoso\ndesService

caNameForNdes
string
the CA that creates the certificates that are requested by the NDES service.
-

ndesRegistrationAuthorityInformation
object, hashtable
An Object that has a Name, Country, E-Mail, Company, Department, City, and State property. That Object configures the Registration Authority Information on the CA
-

ndesCryptography
object, hashtable
Configure the cryptography provider for the signature key and the encryption key.
-

Special considerations or limitations

Hi @paule96 - this resource would be gratefully accepted.
I'd suggest you align the parameter names to be the same as the PowerShell cmdlet parameter names as this will simplify the code somewhat and also align to what Microsoft use: https://docs.microsoft.com/en-us/powershell/module/adcsdeployment/install-adcsnetworkdeviceenrollmentservice?view=win10-ps
I'd generally recommend keeping the properties as closely aligned to the cmdlet parameters as possible. For example, I'd recommend against using object/hashtable for the RA info. Instead using the same parameters as the cmdlets:
-RAName
-RAEmail
-RACompany
-RADepartment
-RACity
-RAState
-RACountry
The same would go for the ndesCryptogtaphy.
I'd also recommend against including things like "NDES" in the property names because it is redundant information because it is part of the NDES resource.
Finally, you'll want to use the IsSingleInstance resource pattern here too (as only a single NDES instance can be installed per node). See the other ActiveDirectoryCSDsc resources for examples there.
Would be very keen to get this in! So thank you for contributing!

I have started a little bit of investigating in that issue. The currently working code is this:
Script ActiveNetworkDeviceEnrollmentService{
            SetScript = {
                $secureStringPassword = ConvertTo-SecureString $Using:UserPassword -AsPlainText -Force
                Install-AdcsNetworkDeviceEnrollmentService -ServiceAccountName $Using:UserDomainName -ServiceAccountPassword $secureStringPassword -CAConfig $Using:CaConfigName -RAName $Using:RaName -RACountry "DE" -RACompany $Using:DomainName -SigningProviderName "Microsoft Strong Cryptographic Provider" -SigningKeyLength 4096 -EncryptionProviderName "Microsoft Strong Cryptographic Provider" -EncryptionKeyLength 4096
            }
            GetScript={

            }
            TestScript = {
                # stolen from https://github.com/microsoftgraph/powershell-intune-samples/blob/958cb9990fa3ab5a3eafd3f44e2284ef5b7e9774/CertificationAuthority/Validate-NDESConfiguration.ps1#L908
                return Test-Path HKLM:SOFTWARE\Microsoft\Cryptography\MSCEP
            }
        }

Currently, I don't know how to get a complete Test or Get method implemented because of the registry HKLM:SOFTWARE\Microsoft\Cryptography\MSCEP only return this:
Name                           Property
----                           --------
CAInfo                         Configuration : ca01.side01.local\Side01 Root CA
CAType                         CAType : 1
CertsInMYStore                 CertsInMYStore : 1
EnforcePassword                EnforcePassword : 1
PasswordVDir                   PasswordVDir : CertSrv/mscep_admin
UseSinglePassword              UseSinglePassword : 0

But I don't know where I can find the Ra* information.

Okay the information I was searching for are included in the ndes certificate.

Cool! Good stuff @paule96

update of my script wich I currently use:
        Script ActiveNetworkDeviceEnrollmentService{
            SetScript = {
                $secureStringPassword = ConvertTo-SecureString $Using:UserPassword -AsPlainText -Force
                Install-AdcsNetworkDeviceEnrollmentService -ServiceAccountName $Using:UserDomainName -ServiceAccountPassword $secureStringPassword -CAConfig $Using:CaConfigName -RAName $Using:RaName -RACountry "DE" -RACompany $Using:DomainName -SigningProviderName "Microsoft Strong Cryptographic Provider" -SigningKeyLength 4096 -EncryptionProviderName "Microsoft Strong Cryptographic Provider" -EncryptionKeyLength 4096
            }
            GetScript={

            }
            TestScript = {
                $validNdesCertificates = 0;
                $allCerts = Get-ChildItem "Cert:\LocalMachine\My" | select Thumbprint, Subject,Extensions -ExpandProperty Extensions | ?{$_.Oid.Value -eq "<IP_ADDRESS>.4.1.311.20.2" -or $_.Oid.Value -eq "<IP_ADDRESS>.4.1.311.21.7"} | Sort-Object Thumbprint -Unique;

                foreach($cert in $allCerts) {
                    $extension = $cert.Extension | ?{$_.Oid.Value -eq "<IP_ADDRESS>.4.1.311.20.2" -or $_.Oid.Value -eq "<IP_ADDRESS>.4.1.311.21.7"} | Select -First 1;
                    $templateName = $extension.Format(0);
                    # Todo: That is also not very stable because we need both certificates types. Not 2 of one.
                    if($templateName -eq "CEPEncryption" -or $templateName -eq "EnrollmentAgentOffline"){
                        # Todo: this is maybe wrong because if I set an Email thats wrong
                        # that will be fix if we have a real DSC resource with parameters
                        # then I can check the things by it self
                        if($cert.Subject -eq ("CN=" + $Using:RaName + ", O=" + $Using:DomainName  + ", C=DE") ){
                            $validNdesCertificates += 1;
                        }
                    }
                }
                # stolen from https://github.com/microsoftgraph/powershell-intune-samples/blob/958cb9990fa3ab5a3eafd3f44e2284ef5b7e9774/CertificationAuthority/Validate-NDESConfiguration.ps1#L908
                return ($validNdesCertificates -eq 2) -and (Test-Path HKLM:SOFTWARE\Microsoft\Cryptography\MSCEP);
            }
        }

I think I have now enough know how to start a real implementation of that DSC resource.

Cool! Good stuff @paule96

Thanks @PlagueHO 👍


[FEATURE] Autofocus input field on search page

A tiny suggestion, to spare one click, could be to autofocus the search input field on search page and get the keyboard opened ready to perform a query :)

Released in v0.87 ! Thank you for your work on this @VASHvic ❤


Rubocop rules related to indentation and alignment

Why
Building on #935, enables rules related to indentation and alignment, fixing corresponding violations.
What
See the commit list for rules tackled in this PR. The commit comments include links to the corresponding rubocop docs.
Some rules worth highlighting:

Disables one StandardRB rule: Layout/HashAlignment. See commit comments for my rationale and discussion c00c9bb.
StandardRB configures ArgumentAlignment in the with_fixed_indentation style, which means any multi-line args will be indented relative to the first line, not aligned with the first argument. I found this worked well in our codebase but curious if anyone has differring opinions. See 1cae87d for examples.
Similarly ^^ for ArrayAlignment.
I find FirstArgumentIndentation in the consistent style recommended by StandardRB to be a bit stifling, but not enough to override.
In the StandardRB style for MultilineMethodCallIndentation, multi-line method chains are indented two spaces relative to line of the first receiver. This is different from a common style in our codebase where lines are aligned on the 'dots'. Both styles have tradeoffs so i've stuck with StandardRB on this. See ebfa676 for examples.
StandardRB recommends the symmetrical style for MultilineMethodCallBraceLayout. There are a few places where it's nice to be able to keep one or two args on the same line as the method call but put the rest on separate lines. Good examples are FactoryBot.create calls and AR has_many callls. In these cases, i've been able to get around this rule by using explicit braces around the trailing hash arg. See 607ec35 for examples.

Note: here's the StandardRB rubocop config.
How
Please review each commit separately and see commit comments for any related explanation/detail.
Testing
Relying on our existing suite to catch any regressions.
Next Steps
?
Outstanding Questions, Concerns and Other Notes
Open to thoughts about any of the rules enabled here!
Pre-Merge Checklist

[x] Security & accessibility have been considered
[x] Tests have been added, or an explanation has been given why the features cannot be tested
[x] Documentation and comments have been added to the codebase where required
[ ] Entry added to CHANGELOG.md if appropriate
[ ] Outstanding questions and concerns have been resolved
[ ] Any next steps have been turned into Issues or Discussions as appropriate

Reviewed in person with @h-m-m and @svileshina .


Alter tables

Recently I ran into an issue where I was writing sql for a migration I had to do. I can't find any examples in the book to alter tables, is this not yet implemented or did I miss something in the docs?

Hi @koopa1338 — thanks for the issue!
I think this is best covered by https://github.com/prql/prql/issues/968. Let me know if you disagree and we can reopen this.


Datepicker

Why is the look of the datepicker like this?

There is padding, the year is not located between the left and right buttons and the width is short. I didn't change anything. I just applied this code

       Invoice Deadline

                   <input suiDatepicker
                          id="deadlineOption"
                          [pickerMode]="'month'">

You're missing the CSS for the datepicker - follow the instructions in the docs 😃


Project is dead?

Allure allready have few updates which are not present in this repo. My question is are planning any upadtes in near future?

Allure Framework the native framework is a complex project technically speaking. There are a lot of things they need to fix to continue making some improvements in Allure Docker Service API and UI. Currently, we have some limitations to improving this.

@fescobar Are there some concrete points the community could help with?
I love this project, and I'd love to help to make it compatible with recent allure2 versions! :)


Q2 CUR Query Library Contributions

Q2 contributions to CUR Query Library

New queries for serverless
Date Filter Tags
Annotations

Closing as more changes will be rolled into new PR


web: marking promotion-tule: must_not

This PR will show a "ban" icon on an instance whose promotion rule is must_not.

works as expected


fix missing jgmro_120f_sha.tab

closes #399
I can confirm that this works with a clean build and install:
000142.444: GRAVITY MODEL: GravityModels\jgmro_120f_sha.tab LOADED, Terms 65/7380

Ready for merge ?

Yes, go for merge.
On Fri, Jan 5, 2024, 01:49 jarmonik @.***> wrote:

Ready for merge ?
—
Reply to this email directly, view it on GitHub
https://github.com/orbitersim/orbiter/pull/401#issuecomment-1878211111,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAAYP335MEEVMZYKILRDTSTYM6O75AVCNFSM6AAAAABBN3KSCOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQNZYGIYTCMJRGE
.
You are receiving this because you authored the thread.Message ID:
@.***>


[highway] crosses [waterway] should not flag a Warning when highway's surface=ice

URL
https://www.openstreetmap.org/edit?changeset=138633423#map=19/64.71925/-158.09909
How to reproduce the issue?
For winter highways that go over the ice (tagged as surface=ice), these shouldn't get flagged as a Warning when said highway crosses a waterway, as it doesn't matter, since the waterway is frozen.
The warning's suggested "Connect using a ford" and "Add a bridge" are both inapplicable, so such crossings stay forever in the Warning state.
Screenshot(s) or anything else?

Which deployed environments do you see the issue in?
Released version at openstreetmap.org/edit
What version numbers does this issue effect?
2.26.2
Which browsers are you seeing this problem on?
Firefox

The surface=ice is permanent? the Image do not suggest so...
The same could apply to surface=salt (Salt indeed is a permanent condition)

I would think so, because the path doesn't exist when there is no ice.

Them perhaps path requires a seasonal tag


Problem with running blockbuster

The PEAKachu tool halted with the following output:
** Running blockbuster...
blockbuster for replicon 1 exited with status 0
blockbuster for replicon 10 exited with status 0
blockbuster for replicon 11 exited with status 0
blockbuster for replicon 12 exited with status 0
blockbuster for replicon 13 exited with status 0
blockbuster for replicon 14 exited with status 0
blockbuster for replicon 15 exited with status 0
blockbuster for replicon 16 exited with status 0
blockbuster for replicon 17 exited with status 0
blockbuster for replicon 18 exited with status 0
blockbuster for replicon 19 exited with status 0
blockbuster for replicon 2 exited with status 0
blockbuster for replicon 20 exited with status 0
blockbuster for replicon 21 exited with status 0
blockbuster for replicon 22 exited with status 0
blockbuster for replicon 23 exited with status 0
blockbuster for replicon 24 exited with status -11
What do you think is going wrong?

Hi Jayesh, I do not know but if its a blockbuster specific thing you can ask the blockbuster developers.
http://hoffmann.bioinf.uni-leipzig.de/LIFE/blockbuster.html

Hi Jayesh,
If I'm not wrong termination signal 11 (SIGSEGV) indicates a segmentation fault from the blockbuster call. At first, you should check the content of the BED file that seems to have caused the error (likely blockbuster_input/24_sorted_reads_for_blockbuster.bed). If this looks Ok you could try to run blockbuster independently from PEAKachu using as input the BED file that caused the error:
blockbuster.x -minBlockHeight 10 -print 1 -distance 1 $BED_FILE
If this results in the same error it's likely a problem with blockbuster and you should contact the developers as Patrick suggested. One thing you could try before is download and compile blockbuster from source (http://www.bioinf.uni-leipzig.de/~david/LIFE/blockbuster.tar.gz). This could help in case there is a problem with the conda installation (in case you used that).
Best,
Thorsten


Package creation: avoid filenames starting with a space

It can happen that packages created by IA (of type multifiles) contain files starting by a blank space.
When manipulating those packages (copy/paste in windows), Windows renames those files and remove the space, which makes the package corrupted:

IA should not create files starting by a space character

fixed in recent updates - closing


Read config from build pipeline instead of example file

https://github.com/c-hive/dotdev/blob/f3a0c9b6b5593919943de869b3839cd8f71fab63/package.json#L7
https://github.com/c-hive/dotdev/blob/22b7ff34ed94a3a7666906247c8e0e6d1c61faca/src/contexts/Config.js#L3

Let's also gitignore config.yml if possible.

Let's also gitignore config.yml if possible.

https://github.com/c-hive/dotdev/pull/129/checks?check_run_id=645348012#step:6:12

You could ignore that rule for that import line.

Yep, that's right but I'd definitely leave a clarification comment on why it's required. I was trying to read up on this topic to find out if there's a best-practice to read and expose arbitrary data to (child) components in a more "nextjs-ish" manner (from the file system). For instance, getStaticProps() is called at build-time to provide data to the pages ahead of the user requests (refer to the referenced chapter, there's a sample how they're using that method to read from the local file system). But I'd say it's just another method to read and expose data compared to our solution in which the file is imported directly in the context provider.

It'd be great btw to ignore that rule only locally.

Resolved by #129.


tests: Fix unit tests when DB2 or Oracle dependencies are not present

Add try-import pattern to operations.py for Oracle and DB2 to match Teradata and Snowflake since all of these connectors require additional packages.
Add __init__.py file for the sub-directories in tests/unit to fix the 'side effect' issue.
Unfreeze version of pytest package.

/gcbrun


Please add Kindle Scribe

I don't know what to choose since Kindle Scribe is not included.

FWIW, I would recommend using
Device: Other
Stretch/Upscale: Fully ticked
Custom width: 1860
Custom height: 2480
As far as I know those are the correct dimensions for the Scribe.
Not sure about gamma yet.
Also, given its size, you may benefit from fully ticking 'Spread splitter' as well, so that you can just look at it on its side for two-page spreads, but that's still up to you on preference.
If you experiment with custom gamma settings, please share your findings.

I'll try this.

FWIW, I would recommend using Device: Other Stretch/Upscale: Fully ticked Custom width: 1860 Custom height: 2480
As far as I know those are the correct dimensions for the Scribe.
Not sure about gamma yet. Also, given its size, you may benefit from fully ticking 'Spread splitter' as well, so that you can just look at it on its side for two-page spreads, but that's still up to you on preference.
If you experiment with custom gamma settings, please share your findings.

Thank you. When you say “fully ticking” you mean like this right?

@SUM1-UNO
not checked/ticked

fully ticked/clicked

indeterminate/partially   ticked/clicked

Thanks!

@SUM1-UNO
not checked/ticked
fully ticked/clicked
indeterminate/partially ticked/clicked

That's clear now. Thanks. Last question, which file format do I choose for manga/comics? Do I keep it as default EPUB? Or should I choose MOBI?

I don't own a scribe but I suppose it's mobi like other kindles.

@SUM1-UNO
not checked/ticked
fully ticked/clicked
indeterminate/partially ticked/clicked

That's clear now. Thanks. Last question, which file format do I choose for manga/comics? Do I keep it as default EPUB? Or should I choose MOBI?

Mobi if you want to drop them in via Calibre, which you'll want to do if you want to keep the covers intact (otherwise the moment the kindle gets network connection, it'll wipe them. It's a quirk). The workaround to keep them is:

Use KCC to convert to mobi
Use Calibre to upload those files to the kindle
once you disconnect the kindle and it connects online, it wipes them
connect it again with calibre open; calibre will return the covers to them, and this time it will be permanent

#500 increases Scribe quality


Ask Question: Add clear button to title text field

Title field is currently missing a clear button, see ask-a-question-populated.png
From @yawitz audit.

Verified with ML 01/18 and latest develop branch . We have a clear button for the AsK question field.


JOSS: MPFR assertion failed

The following code
#include "hypercomplex/Hypercomplex.hpp"

int main(void){

  mpfr_t A[8];
  mpfr_init2(A[0], get_mpfr_precision());
  mpfr_init2(A[1], get_mpfr_precision());
  mpfr_init2(A[2], get_mpfr_precision());
  mpfr_init2(A[3], get_mpfr_precision());
  mpfr_init2(A[4], get_mpfr_precision());
  mpfr_init2(A[5], get_mpfr_precision());
  mpfr_init2(A[6], get_mpfr_precision());
  mpfr_init2(A[7], get_mpfr_precision());
  mpfr_set_d(A[0], 1.5, MPFR_RNDN);
  mpfr_set_d(A[1], 2.5, MPFR_RNDN);
  mpfr_set_d(A[2], 0.0, MPFR_RNDN);
  mpfr_set_d(A[3], -1.5, MPFR_RNDN);
  mpfr_set_d(A[4], 0.5, MPFR_RNDN);
  mpfr_set_d(A[5], -0.5, MPFR_RNDN);
  mpfr_set_d(A[6], -0.5, MPFR_RNDN);
  mpfr_set_d(A[7], -1.5, MPFR_RNDN);

  Hypercomplex<mpfr_t, 8> Hx(A);

  std::cout << "Hx^30 = ";
  mpfr_out_str(stdout, 10, 0, (Hx^30)[0], MPFR_RNDN);
  std::cout << std::endl;

  return 0;
}

compiled with g++ --std=c++17 -lmpfr -lgmp  (g++ version 12.2.0, mprf version 4.1.0) returns
../../src/init2.c:52: MPFR assertion failed: ((p) >= 1 && (p) <= ((mpfr_prec_t) ((((mpfr_uprec_t) -1) >> 1) - 256)))
Aborted (core dumped)

This is part of my review for JOSS https://github.com/openjournals/joss-reviews/issues/5272

I have added the code you specified above as a separate test case on a new branch revision; please see the ci logs.
We get the same value as in the docs.
Unfortunately we cannot reproduce the error; could this be specific to your machine?
I found the following information on the internet:

More specifically, the assertion checks that the precision parameter p is greater than or equal to 1 and less than or equal to a maximum value determined by the size of the data type used to store the precision. This maximum value is calculated based on the platform's mpfr_uprec_t type, which specifies the largest unsigned integer type available on the system. The 256 offset is added to ensure some additional safety margin.
Therefore, the error message indicates that the program attempted to use an invalid precision value that is either too small (less than 1) or too large (exceeding the maximum precision that can be stored on the system).

This is the info getting from uname -a
Linux 5.19.0-40-generic #41~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC Fri Mar 31 16:00:14 UTC 2 x86_64 x86_64 x86_64 GNU/Linux

The same issue appear with clang++ 16. Note that the mpfr version in ci is 4.0.2 while in my local setting is 4.1.0, so this could be one explanation.

Are you sure you followed the exact installation instructions from the docs?

On my personal mac machine I have a newer version and the tests pass too:

OK, I found the issue, it seems that the above code is missing a set_mpfr_precision() statement. Then get_mpfr_precision() returns 0 and there is not enough precision to do the computation so mpfr assertion fails. In your test case most probably mpfr precision was set at some point before get_mpfr_precision() is executed and therefore the test was passing. I am closing this issue now.


Can you copy a context?

Steps to reproduce
ctx = py_mini_racer.MiniRacer()
ctx2 = deepcopy(ctx)  # or copy(ctx)

Expected behavior
ctx2 is a copy of ctx
Actual behavior
ValueError: ctypes objects containing pointers cannot be pickled

I'm sure it's a bit more difficult to copy a whole context than just expecting it to work, but I haven't found a way to do it. Am I doomed to having to create empty contexts or have I missed something?

It is not possible to copy a context for now. We could probably implement it by doing a snapshot of the V8 isolate and create a new context with this snapshot. What kind of operations do you want to perform that requires doing a copy of the context?

I had hoped I could do it to perform a MCTS with a simulator written in JS, but to be honest I wouldn't have expected it to be easy.


blog post "Test your controller at scale with KWOK"

This PR adds a blog post "Test your controller at scale with KWOK"

/cc @Huang-Wei
/cc @yibozhuang
/cc @windsonsea

Thanks, @sftim

how this article is different from https://kubernetes.io/blog/2023/03/01/introducing-kwok/, from March this year.

This post is a kind of Tutorials and walkthroughs, see these rules https://kubernetes.io/docs/contribute/new-content/blogs-case-studies/#submit-a-post
This is a very typical problem when testing controllers with KWOK, and I have given two examples of cases that I have been asked about.

https://github.com/kubernetes-sigs/kwok/discussions/582#discussioncomment-6169894
https://github.com/kubernetes-sigs/kwok/issues/564#issuecomment-1554255052

the “at scale” aspect that the title implies - where do we cover that?

The main focus is on how to set up a test controller environment using the KWOK, specific test methods vary from controller to controller and are therefore not presented in the content.
The only advantage of using KWOK over other methods is that its scale is no longer limited by hardware conditions, and this may be the only way to test the controller at scale on a laptop.


⚠ ClamAV has degraded performance

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

HTTP code: 200
Response time: 51 ms

Resolved: ClamAV performance has improved in 8e70696.


feature request: option to stop before final commit and tag

I'd like to modify the changelog and some other project files before it is committed and the version tagged.

Yes that would be nice, and I assume that would also skip tagging right?
On Sun, Dec 16, 2018 at 2:23 AM Christoph Walcher<EMAIL_ADDRESS>wrote:

Would a --skip-commit option help to make your requirement working?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/saintedlama/versionize/issues/2#issuecomment-447628498,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AEN88cUX3-ycaf-RpOi5vjRSLFnTCJUNks5u5hEkgaJpZM4ZUlvV
.

Implemented in version 1.2.0 https://www.nuget.org/packages/Versionize/1.2.0

Thanks!


Awaitable events

On multiple occasions we needed to wait for the next call of an event. Instead of waiting in a loop or setting some internal variable this PR allows waiting for an event directly.
from nicegui import ui

import rosys
from rosys.event import Event, wait_for

event = Event()
event.register(lambda *args: print('Event fired!', *args))

async def wait_for_event():
    print('Waiting for event...')
    value = await wait_for(event, 10.0)
    print('Event received!', value, type(value))

ui.button('Wait for event', on_click=wait_for_event)
rosys.on_repeat(lambda: event.emit(123), interval=5.0)

ui.run(title='RoSys')

@falkoschindler I like the Event.__await__ idea and will implement it when I find the time

As we discussed in person, it's now possible to use await directly, without a timeout for an event as well as with a timeout.
 value = await event
 value = await event.emitted()
 value = await event.emitted(timeout)


⚠ Bofrost.at has degraded performance

In faa3b2e, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 1338 ms

Resolved: Bofrost.at performance has improved in dc7a0c0 after 7 minutes.


Assertion error in fast svd

I am attempting to use DBQPG as policy gradient estimator with TRPO als policy gradient algorithm on a custom gym environment using:
python agent.py --env-name some_env --pg_algorithm TRPO --pg_estimator BQ
This resulted in the following error message:
File "agent.py", line 170, in
likelihood, gp_mll, gp_value_optimizer, nn_value_optimizer)
File "/home/Documents/DBQPO/optimization.py", line 184, in update_params
policy_net)
File "/home/Documents/DBQPO/fast_svd.py", line 23, in pca_U
assert k > 0
AssertionError

@bordeauxred Thanks for bringing this to my notice. The default value of the argument svd_low_rank = -1 for an environment that has not already been defined in helper_config.json. I have changed this default value to svd_low_rank = 50.
Hope this resolves the issue.


Flutter Web: "A GlobalKey was used multiple times inside one widget's child list."

Description
When using onGenerateRoute with navigatorKey and builder in MaterialApp, Flutter throws first "NoSuchMethodError: invalid member on null: 'dependOnInheritedWidgetOfExactType'" and after I click on my chrome I'll get also: "A GlobalKey was used multiple times inside one widget's child list.".
Only on Flutter Web. It's working fine on iOS.
Versions I've tested and getting the error

1.18.0-dev.5.0
1.18.0-6.0.pre.26

Versions I've tested working fine

1.18.0-dev.4.0 <- developed on this version
1.17.0 <- from Beta channel

Steps to Reproduce
initialRoute: NavUtils.initialUrl,
 onGenerateRoute: router.generator,
 navigatorKey: _navigatorKey,
          builder: (context, child) =>
              BlocBuilder<AuthenticationBloc, AuthenticationState>(
            builder: (context, state) {
              if (state is AuthenticationAuthenticated) {
                return MainLayout(
                  child: child,
                  drawerKey: _drawerKey,
                );
              } else {
                return Scaffold(  // First Scaffold he will use and throw the error from.
                  body: child,
                );
              }
            },
          ),

Expected results:
Due my route a child is generated and is injected to the Scaffold depending on the BloC state.
Actual results:
Application is starting but throwing this error:

Logs
Output from command flutter run -d chrome --verbose
[   +6 ms] Artifact Instance of 'AndroidMavenArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update.
[   +2 ms] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update.
[ +115 ms] Found plugin shared_preferences at /Users/mike/flutter/.pub-cache/hosted/pub.dartlang.org/shared_preferences-0.5.6+3/
[   +6 ms] Found plugin shared_preferences_macos at /Users/mike/flutter/.pub-cache/hosted/pub.dartlang.org/shared_preferences_macos-0.0.1+6/
[   +4 ms] Found plugin shared_preferences_web at /Users/mike/flutter/.pub-cache/hosted/pub.dartlang.org/shared_preferences_web-0.1.2+4/
[  +55 ms] Found plugin shared_preferences at /Users/mike/flutter/.pub-cache/hosted/pub.dartlang.org/shared_preferences-0.5.6+3/
[   +1 ms] Found plugin shared_preferences_macos at /Users/mike/flutter/.pub-cache/hosted/pub.dartlang.org/shared_preferences_macos-0.0.1+6/
[   +2 ms] Found plugin shared_preferences_web at /Users/mike/flutter/.pub-cache/hosted/pub.dartlang.org/shared_preferences_web-0.1.2+4/
[  +49 ms] Generating /Users/mike/Projects/flutter/mercury_flutter/android/app/src/main/java/io/flutter/plugins/GeneratedPluginRegistrant.java
[ +141 ms] Launching lib/main.dart on Chrome in debug mode...
[  +72 ms] Updating assets
[ +110 ms] Syncing files to device Chrome...
[  +14 ms] Found plugin shared_preferences at /Users/mike/flutter/.pub-cache/hosted/pub.dartlang.org/shared_preferences-0.5.6+3/
[        ] Found plugin shared_preferences_macos at /Users/mike/flutter/.pub-cache/hosted/pub.dartlang.org/shared_preferences_macos-0.0.1+6/
[   +1 ms] Found plugin shared_preferences_web at /Users/mike/flutter/.pub-cache/hosted/pub.dartlang.org/shared_preferences_web-0.1.2+4/
[  +17 ms] Found plugin shared_preferences at /Users/mike/flutter/.pub-cache/hosted/pub.dartlang.org/shared_preferences-0.5.6+3/
[        ] Found plugin shared_preferences_macos at /Users/mike/flutter/.pub-cache/hosted/pub.dartlang.org/shared_preferences_macos-0.0.1+6/
[   +1 ms] Found plugin shared_preferences_web at /Users/mike/flutter/.pub-cache/hosted/pub.dartlang.org/shared_preferences_web-0.1.2+4/
[   +6 ms] Generating /Users/mike/Projects/flutter/mercury_flutter/android/app/src/main/java/io/flutter/plugins/GeneratedPluginRegistrant.java
[  +41 ms] <- reset
[   +6 ms] /Users/mike/flutter/bin/cache/dart-sdk/bin/dart /Users/mike/flutter/bin/cache/artifacts/engine/darwin-x64/frontend_server.dart.snapshot --sdk-root /Users/mike/flutter/bin/cache/flutter_web_sdk/
--incremental --target=dartdevc --debugger-module-names -Ddart.developer.causal_async_stacks=true --output-dill /var/folders/28/n2q_hfvj7pndhts4h9bsnqn40000gn/T/flutter_tool.zBTEQB/app.dill --libraries-spec
file:///Users/mike/flutter/bin/cache/flutter_web_sdk/libraries.json --packages /Users/mike/Projects/flutter/mercury_flutter/.packages -Ddart.vm.profile=false -Ddart.vm.product=false
--bytecode-options=source-positions,local-var-info,debugger-stops,instance-field-initializers,keep-unreachable-code,avoid-closure-call-instructions --enable-asserts --track-widget-creation --filesystem-root
/var/folders/28/n2q_hfvj7pndhts4h9bsnqn40000gn/T/flutter_tools.quSrRM --filesystem-scheme org-dartlang-app --initialize-from-dill build/cache.dill --platform
file:///Users/mike/flutter/bin/cache/flutter_web_sdk/kernel/flutter_ddc_sdk.dill
[  +18 ms] <- compile org-dartlang-app:///web_entrypoint.dart
[+9913 ms] Syncing files to device Chrome... (completed in 10 015ms, longer than expected)
[        ] Synced 27.1MB.
[        ] <- accept
[ +269 ms] [CHROME]:
[        ] [CHROME]:DevTools listening on ws://<IP_ADDRESS>:60323/devtools/browser/7a41f924-4f4f-4d8f-94ab-494a76ad3567
[+4112 ms] Debug service listening on ws://<IP_ADDRESS>:60360/BaZPfOHQUpw=

[ +194 ms] Debug service listening on ws://<IP_ADDRESS>:60360/BaZPfOHQUpw=
[   +1 ms] Warning: Flutter's support for web development is not stable yet and hasn't
[        ] been thoroughly tested in production environments.
[        ] For more information see https://flutter.dev/web
[        ] 🔥  To hot restart changes while running, press "r". To hot restart (and refresh the browser), press "R".
[        ] For a more detailed help message, press "h". To quit, press "q".
[ +574 ms] [flutter_i18n INFO]: New locale: en_US

[   +4 ms] [flutter_i18n INFO]: The system locale is null

[        ] [flutter_i18n DEBUG]: Error loading translation NoSuchMethodError: invalid member on null: 'split'

[  +23 ms] [flutter_i18n INFO]: JSON file loaded for de_DE

[  +30 ms] AppStarted

[ +552 ms] ══╡ EXCEPTION CAUGHT BY WIDGETS LIBRARY ╞═══════════════════════════════════════════════════════════

[   +1 ms] The following JSNoSuchMethodError was thrown building _BodyBuilder:

[   +1 ms] NoSuchMethodError: invalid member on null: 'dependOnInheritedWidgetOfExactType'

[   +5 ms] The relevant error-causing widget was:

[        ]   Scaffold file:///Users/mike/Projects/flutter/mercury_flutter/lib/main.dart:137:24

[   +2 ms] When the exception was thrown, this was the stack:

[   +3 ms] packages/flutter/src/material/theme.dart 128:51                          of

[        ] packages/fluro/src/router.dart 130:36                                    <fn>

[   +2 ms] packages/fluro/src/router.dart 183:21                                    matchRoute

[        ] packages/fluro/src/router.dart 223:9                                     generator

[   +3 ms] packages/flutter/src/widgets/app.dart 999:36                             [_onGenerateRoute]

[        ] packages/flutter/src/widgets/navigator.dart 3138:44                      [_routeNamed]

[   +4 ms] packages/flutter/src/widgets/navigator.dart 2183:27                      defaultGenerateInitialRoutes

[        ] packages/flutter/src/widgets/navigator.dart 2582:39                      initState

[        ] packages/flutter/src/widgets/framework.dart 4644:58                      [_firstBuild]

[  +30 ms] packages/flutter/src/widgets/framework.dart 4480:5                       mount

[        ] packages/flutter/src/widgets/framework.dart 3450:13                      inflateWidget

[        ] packages/flutter/src/widgets/framework.dart 3218:18                      updateChild

[  +19 ms] packages/flutter/src/widgets/framework.dart 4531:16                      performRebuild

[        ] packages/flutter/src/widgets/framework.dart 4222:5                       rebuild

[        ] packages/flutter/src/widgets/framework.dart 4485:5                       [_firstBuild]

[        ] packages/flutter/src/widgets/framework.dart 4480:5                       mount

[        ] packages/flutter/src/widgets/framework.dart 3450:13                      inflateWidget

[        ] packages/flutter/src/widgets/framework.dart 3218:18                      updateChild

[        ] packages/flutter/src/widgets/framework.dart 4531:16                      performRebuild

[        ] packages/flutter/src/widgets/framework.dart 4222:5                       rebuild

[        ] packages/flutter/src/widgets/framework.dart 4485:5                       [_firstBuild]

[   +1 ms] packages/flutter/src/widgets/framework.dart 4480:5                       mount

[        ] packages/flutter/src/widgets/framework.dart 3450:13                      inflateWidget

[   +1 ms] packages/flutter/src/widgets/framework.dart 3218:18                      updateChild

[        ] packages/flutter/src/widgets/framework.dart 4531:16                      performRebuild

[        ] packages/flutter/src/widgets/framework.dart 4222:5                       rebuild

[   +1 ms] packages/flutter/src/widgets/framework.dart 4485:5                       [_firstBuild]

[        ] packages/flutter/src/widgets/framework.dart 4480:5                       mount

[        ] packages/flutter/src/widgets/framework.dart 3450:13                      inflateWidget

[        ] packages/flutter/src/widgets/framework.dart 5951:32                      mount

[        ] packages/flutter/src/widgets/framework.dart 3450:13                      inflateWidget

[  +28 ms] packages/flutter/src/widgets/framework.dart 3218:18                      updateChild

[        ] packages/flutter/src/widgets/framework.dart 4531:16                      performRebuild

[        ] packages/flutter/src/widgets/framework.dart 4679:11                      performRebuild

[        ] packages/flutter/src/widgets/framework.dart 4222:5                       rebuild

[        ] packages/flutter/src/widgets/framework.dart 4485:5                       [_firstBuild]

[        ] packages/flutter/src/widgets/framework.dart 4670:11                      [_firstBuild]

[        ] packages/flutter/src/widgets/framework.dart 4480:5                       mount

[        ] packages/flutter/src/widgets/framework.dart 3450:13                      inflateWidget

[        ] packages/flutter/src/widgets/framework.dart 3218:18                      updateChild

[        ] packages/flutter/src/widgets/framework.dart 4531:16                      performRebuild

[        ] packages/flutter/src/widgets/framework.dart 4222:5                       rebuild

[        ] packages/flutter/src/widgets/framework.dart 4485:5                       [_firstBuild]

[        ] packages/flutter/src/widgets/framework.dart 4480:5                       mount

[        ] packages/flutter/src/widgets/framework.dart 3450:13                      inflateWidget

[        ] packages/flutter/src/widgets/framework.dart 3218:18                      updateChild

[        ] packages/flutter/src/widgets/framework.dart 4531:16                      performRebuild

[   +1 ms] packages/flutter/src/widgets/framework.dart 4679:11                      performRebuild

[        ] packages/flutter/src/widgets/framework.dart 4222:5                       rebuild

[        ] packages/flutter/src/widgets/framework.dart 4485:5                       [_firstBuild]

[        ] packages/flutter/src/widgets/framework.dart 4670:11                      [_firstBuild]

[  +45 ms] packages/flutter/src/widgets/framework.dart 4480:5                       mount

[        ] packages/flutter/src/widgets/framework.dart 3450:13                      inflateWidget

[        ] packages/flutter/src/widgets/framework.dart 3218:18                      updateChild

[        ] packages/flutter/src/widgets/framework.dart 5834:14                      mount

[        ] packages/flutter/src/widgets/framework.dart 3450:13                      inflateWidget

[        ] packages/flutter/src/widgets/framework.dart 3218:18                      updateChild

[        ] packages/flutter/src/widgets/framework.dart 4531:16                      performRebuild

[        ] packages/flutter/src/widgets/framework.dart 4222:5                       rebuild

[        ] packages/flutter/src/widgets/framework.dart 4485:5                       [_firstBuild]

[        ] packages/flutter/src/widgets/framework.dart 4480:5                       mount

[        ] packages/flutter/src/widgets/framework.dart 3450:13                      inflateWidget

[        ] packages/flutter/src/widgets/framework.dart 3218:18                      updateChild

[        ] packages/flutter/src/widgets/framework.dart 5834:14                      mount

[        ] packages/flutter/src/widgets/framework.dart 3450:13                      inflateWidget

[        ] packages/flutter/src/widgets/framework.dart 3218:18                      updateChild

[        ] packages/flutter/src/widgets/framework.dart 4531:16                      performRebuild

[        ] packages/flutter/src/widgets/framework.dart 4679:11                      performRebuild

[        ] packages/flutter/src/widgets/framework.dart 4222:5                       rebuild

[        ] packages/flutter/src/widgets/framework.dart 4485:5                       [_firstBuild]

[   +6 ms] packages/flutter/src/widgets/framework.dart 4670:11                      [_firstBuild]

[        ] packages/flutter/src/widgets/framework.dart 4480:5                       mount

[        ] packages/flutter/src/widgets/framework.dart 3450:13                      inflateWidget

[        ] packages/flutter/src/widgets/framework.dart 3218:18                      updateChild

[        ] packages/flutter/src/widgets/framework.dart 4531:16                      performRebuild

[        ] packages/flutter/src/widgets/framework.dart 4679:11                      performRebuild

[        ] packages/flutter/src/widgets/framework.dart 4222:5                       rebuild

[        ] packages/flutter/src/widgets/framework.dart 4485:5                       [_firstBuild]

[        ] packages/flutter/src/widgets/framework.dart 4670:11                      [_firstBuild]

[        ] packages/flutter/src/widgets/framework.dart 4480:5                       mount

[        ] packages/flutter/src/widgets/framework.dart 3450:13                      inflateWidget

[        ] packages/flutter/src/widgets/framework.dart 3218:18                      updateChild

[        ] packages/flutter/src/widgets/framework.dart 4531:16                      performRebuild

[        ] packages/flutter/src/widgets/framework.dart 4222:5                       rebuild

[        ] packages/flutter/src/widgets/framework.dart 4485:5                       [_firstBuild]

[  +33 ms] packages/flutter/src/widgets/framework.dart 4480:5                       mount

[        ] packages/flutter/src/widgets/framework.dart 3450:13                      inflateWidget

[        ] packages/flutter/src/widgets/framework.dart 3218:18                      updateChild

[        ] packages/flutter/src/widgets/framework.dart 4531:16                      performRebuild

[        ] packages/flutter/src/widgets/framework.dart 4222:5                       rebuild

[        ] packages/flutter/src/widgets/framework.dart 4485:5                       [_firstBuild]

[        ] packages/flutter/src/widgets/framework.dart 4480:5                       mount

[        ] packages/flutter/src/widgets/framework.dart 3450:13                      inflateWidget

[        ] packages/flutter/src/widgets/framework.dart 3218:18                      updateChild

[        ] packages/flutter/src/widgets/framework.dart 4531:16                      performRebuild

[        ] packages/flutter/src/widgets/framework.dart 4679:11                      performRebuild

[        ] packages/flutter/src/widgets/framework.dart 4222:5                       rebuild

[        ] packages/flutter/src/widgets/framework.dart 4485:5                       [_firstBuild]

[        ] packages/flutter/src/widgets/framework.dart 4670:11                      [_firstBuild]

[        ] packages/flutter/src/widgets/framework.dart 4480:5                       mount

[        ] packages/flutter/src/widgets/framework.dart 3450:13                      inflateWidget

[   +7 ms] packages/flutter/src/widgets/framework.dart 3218:18                      updateChild

[        ] packages/flutter/src/widgets/framework.dart 4531:16                      performRebuild

[        ] packages/flutter/src/widgets/framework.dart 4679:11                      performRebuild

[        ] packages/flutter/src/widgets/framework.dart 4222:5                       rebuild

[        ] packages/flutter/src/widgets/framework.dart 4485:5                       [_firstBuild]

[        ] packages/flutter/src/widgets/framework.dart 4670:11                      [_firstBuild]

[        ] packages/flutter/src/widgets/framework.dart 4480:5                       mount

[        ] packages/flutter/src/widgets/framework.dart 3450:13                      inflateWidget

[        ] packages/flutter/src/widgets/framework.dart 3218:18                      updateChild

[        ] packages/flutter/src/widgets/framework.dart 4531:16                      performRebuild

[        ] packages/flutter/src/widgets/framework.dart 4222:5                       rebuild

[        ] packages/flutter/src/widgets/framework.dart 4485:5                       [_firstBuild]

[        ] packages/flutter/src/widgets/framework.dart 4480:5                       mount

[        ] packages/flutter/src/widgets/framework.dart 3450:13                      inflateWidget

[        ] packages/flutter/src/widgets/framework.dart 3218:18                      updateChild

[        ] packages/flutter/src/widgets/framework.dart 4531:16                      performRebuild

[        ] packages/flutter/src/widgets/framework.dart 4222:5                       rebuild

[        ] packages/flutter/src/widgets/framework.dart 4485:5                       [_firstBuild]

[  +24 ms] packages/flutter/src/widgets/framework.dart 4480:5                       mount

[        ] packages/flutter/src/widgets/framework.dart 3450:13                      inflateWidget

[        ] packages/flutter/src/widgets/framework.dart 3218:18                      updateChild

[        ] packages/flutter/src/widgets/framework.dart 4531:16                      performRebuild

[        ] packages/flutter/src/widgets/framework.dart 4222:5                       rebuild

[        ] packages/flutter/src/widgets/framework.dart 4485:5                       [_firstBuild]

[        ] packages/flutter/src/widgets/framework.dart 4480:5                       mount

[        ] packages/flutter/src/widgets/framework.dart 3450:13                      inflateWidget

[        ] packages/flutter/src/widgets/framework.dart 3218:18                      updateChild

[        ] packages/flutter/src/widgets/framework.dart 4531:16                      performRebuild

[        ] packages/flutter/src/widgets/framework.dart 4222:5                       rebuild

[        ] packages/flutter/src/widgets/framework.dart 4485:5                       [_firstBuild]

[        ] packages/flutter/src/widgets/framework.dart 4480:5                       mount

[        ] packages/flutter/src/widgets/framework.dart 3450:13                      inflateWidget

[        ] packages/flutter/src/widgets/framework.dart 3218:18                      updateChild

[        ] packages/flutter/src/widgets/framework.dart 4531:16                      performRebuild

[        ] packages/flutter/src/widgets/framework.dart 4222:5                       rebuild

[        ] packages/flutter/src/widgets/framework.dart 4485:5                       [_firstBuild]

[   +6 ms] packages/flutter/src/widgets/framework.dart 4480:5                       mount

[        ] packages/flutter/src/widgets/framework.dart 3450:13                      inflateWidget

[        ] packages/flutter/src/widgets/framework.dart 3218:18                      updateChild

[        ] packages/flutter/src/widgets/framework.dart 4531:16                      performRebuild

[        ] packages/flutter/src/widgets/framework.dart 4222:5                       rebuild

[        ] Transition { currentState: AuthenticationUninitialized, event: AppStarted, nextState: AuthenticationUnauthenticated }

[+1289 ms] packages/flutter/src/widgets/framework.dart 4485:5                       [_firstBuild]

[        ] packages/flutter/src/widgets/framework.dart 4480:5                       mount

[        ] packages/flutter/src/widgets/framework.dart 3450:13                      inflateWidget

[   +2 ms] packages/flutter/src/widgets/framework.dart 3218:18                      updateChild

[        ] packages/flutter/src/widgets/framework.dart 4531:16                      performRebuild

[        ] packages/flutter/src/widgets/framework.dart 4222:5                       rebuild

[        ] packages/flutter/src/widgets/framework.dart 4485:5                       [_firstBuild]

[        ] packages/flutter/src/widgets/framework.dart 4480:5                       mount

[        ] packages/flutter/src/widgets/framework.dart 3450:13                      inflateWidget

[        ] packages/flutter/src/widgets/framework.dart 3218:18                      updateChild

[        ] packages/flutter/src/widgets/framework.dart 4531:16                      performRebuild

[        ] packages/flutter/src/widgets/framework.dart 4679:11                      performRebuild

[   +4 ms] packages/flutter/src/widgets/framework.dart 4222:5                       rebuild

[        ] packages/flutter/src/widgets/framework.dart 4485:5                       [_firstBuild]

[        ] packages/flutter/src/widgets/framework.dart 4670:11                      [_firstBuild]

[        ] packages/flutter/src/widgets/framework.dart 4480:5                       mount

[        ] packages/flutter/src/widgets/framework.dart 3450:13                      inflateWidget

[        ] packages/flutter/src/widgets/framework.dart 3218:18                      updateChild

[        ] packages/flutter/src/widgets/framework.dart 4531:16                      performRebuild

[        ] packages/flutter/src/widgets/framework.dart 4222:5                       rebuild

[        ] packages/flutter/src/widgets/framework.dart 4485:5                       [_firstBuild]

[        ] packages/flutter/src/widgets/framework.dart 4480:5                       mount

[        ] packages/flutter/src/widgets/framework.dart 3450:13                      inflateWidget

[        ] packages/flutter/src/widgets/framework.dart 3218:18                      updateChild

[        ] packages/flutter/src/widgets/framework.dart 4531:16                      performRebuild

[        ] packages/flutter/src/widgets/framework.dart 4222:5                       rebuild

[        ] packages/flutter/src/widgets/framework.dart 4485:5                       [_firstBuild]

[        ] packages/flutter/src/widgets/framework.dart 4480:5                       mount

[   +3 ms] packages/flutter/src/widgets/framework.dart 3450:13                      inflateWidget

[        ] packages/flutter/src/widgets/framework.dart 3218:18                      updateChild

[        ] packages/flutter/src/widgets/framework.dart 4531:16                      performRebuild

[        ] packages/flutter/src/widgets/framework.dart 4222:5                       rebuild

[        ] packages/flutter/src/widgets/framework.dart 4485:5                       [_firstBuild]

[        ] packages/flutter/src/widgets/framework.dart 4480:5                       mount

[   +4 ms] packages/flutter/src/widgets/framework.dart 3450:13                      inflateWidget

[        ] packages/flutter/src/widgets/framework.dart 3218:18                      updateChild

[        ] packages/flutter/src/widgets/framework.dart 4531:16                      performRebuild

[   +1 ms] packages/flutter/src/widgets/framework.dart 4222:5                       rebuild

[        ] packages/flutter/src/widgets/framework.dart 4485:5                       [_firstBuild]

[        ] packages/flutter/src/widgets/framework.dart 4480:5                       mount

[        ] packages/flutter/src/widgets/framework.dart 3450:13                      inflateWidget

[        ] packages/flutter/src/widgets/framework.dart 3218:18                      updateChild

[        ] packages/flutter/src/widgets/framework.dart 4531:16                      performRebuild

[        ] packages/flutter/src/widgets/framework.dart 4222:5                       rebuild

[        ] packages/flutter/src/widgets/framework.dart 4485:5                       [_firstBuild]

[        ] packages/flutter/src/widgets/framework.dart 4480:5                       mount

[        ] packages/flutter/src/widgets/framework.dart 3450:13                      inflateWidget

[        ] packages/flutter/src/widgets/framework.dart 3218:18                      updateChild

[        ] packages/flutter/src/widgets/framework.dart 5834:14                      mount

[        ] packages/flutter/src/widgets/framework.dart 3450:13                      inflateWidget

[        ] packages/flutter/src/widgets/framework.dart 3215:20                      updateChild

[        ] packages/flutter/src/widgets/framework.dart 4531:16                      performRebuild

[        ] packages/flutter/src/widgets/framework.dart 4679:11                      performRebuild

[        ] packages/flutter/src/widgets/framework.dart 4222:5                       rebuild

[        ] packages/flutter/src/widgets/framework.dart 2627:31                      buildScope

[        ] packages/flutter/src/widgets/binding.dart 864:20                         drawFrame

[        ] packages/flutter/src/rendering/binding.dart 284:5                        [_handlePersistentFrameCallback]

[        ] packages/flutter/src/scheduler/binding.dart 1074:15                      [_invokeFrameCallback]

[        ] packages/flutter/src/scheduler/binding.dart 1013:9                       handleDrawFrame

[        ] packages/flutter/src/scheduler/binding.dart 822:7                        <fn>

[        ] dart-sdk/lib/_internal/js_dev_runtime/private/isolate_helper.dart 50:19  internalCallback

[        ] ════════════════════════════════════════════════════════════════════════════════════════════════════

[+1617 ms] Another exception was thrown: A GlobalKey was used multiple times inside one widget's child list.

Output from command flutter analyze
Quick explanation: This is because I'm using dart.html (Thanks to Rody Davis! :) ) but build in a way that does not affect building for mobile.
Analyzing mercury_flutter...

   info • Avoid using web-only libraries outside Flutter web plugin packages • lib/plugins/navigator/web.dart:1:1 • avoid_web_libraries_in_flutter

1 issue found. (ran in 2.2s)

Output from command flutter doctor -v
[✓] Flutter (Channel dev, v1.18.0-dev.5.0, on Mac OS X 10.15.4 19E287, locale de-AT)
    • Flutter version 1.18.0-dev.5.0 at /Users/mike/flutter
    • Framework revision 7f56b53de4 (3 days ago), 2020-04-12 12:00:01 -0400
    • Engine revision beb8a7ec48
    • Dart version 2.8.0 (build 2.8.0-dev.20.0 89b0f67261)

[✓] Android toolchain - develop for Android devices (Android SDK version 29.0.2)
    • Android SDK at /Users/mike/Library/Android/sdk
    • Platform android-29, build-tools 29.0.2
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_202-release-1483-b49-5587405)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 11.4)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 11.4, Build version 11E146
    • CocoaPods version 1.8.3

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 3.5)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin version 42.1.1
    • Dart plugin version 191.8593
    • Java version OpenJDK Runtime Environment (build 1.8.0_202-release-1483-b49-5587405)

[✓] VS Code (version 1.44.1)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.9.1

[✓] Connected device (3 available)
    • iPhone     • 00008030-000559303690802E • ios            • iOS 13.4
    • Chrome     • chrome                    • web-javascript • Google Chrome 80.0.3987.163
    • Web Server • web-server                • web-javascript • Flutter Tools

• No issues found!

Hi @Aerofluxx
could you please provide a complete minimal reproducible code sample?

Hi @Aerofluxx
could you please provide a complete minimal reproducible code sample?

Hi @VladyslavBondarenko - In my actual app are already a lot of sensitive code parts. But I could "clean it" if you want. Essentially I'm gone with these code as start: https://github.com/rodydavis/flutter_deep_linking
From the technical side it's only difference to @rodydavis code is, that I'm using a builder: in the MaterialApp.
Please tell me if this is enough information. :)
Thanks
Mike

@Aerofluxx
Yes, it would be helpful if you could clean it and extract the minimal example, and perfect if without using the 'fluro' plugin

@Aerofluxx
Yes, it would be helpful if you could clean it and extract the minimal example, and perfect if without using the 'fluro' plugin

@VladyslavBondarenko Will do. But this will take a bit of time. Will get back as soon as I can rebuild this. 👍

The log suggests you call Theme.of(context) where the context is null in you code packages/fluro/src/router.dart 130:36    . can you double check if this is the case? The global key error is a result of the first failure so it is not really accurate

Without additional information we are unfortunately not sure how to resolve this issue.
We are therefore reluctantly going to close this bug for now.
Please don't hesitate to comment on the bug if you have any more information for us; we will reopen it right away!
Thanks for your contribution


Bug report: m365 spo file list -u $siteUrl -f Documents generating errors

Description
Trying to retreive list of files in onedrives. The command
m365 spo file list -u $siteUrl -f Documents
fails with a few different error message on many of them.
The powershell equivalent
Get-PnPFolderItem -ItemType File -Recursive -FolderSiteRelativeUrl "Documents"
does not give errors
Steps to reproduce
execute the command
m365 spo file list -u $siteUrl -f Documents
On many onedrives with many documents
Expected results
Complete file list in the onedrive
Actual results
Error messages :

Error: The expression "web/GetFolderByServerRelativeUrl('/personal/xxxxxx/Documents/Pictures/xxxx b'day xxxx')" is not valid.
Error: File Not Found.
Error: The attempted operation is prohibited because it exceeds the list view threshold.

Diagnostics
I'll try to provide --debug info foir the "Error: File Not Found" message. I think the other two are quite self-explanatory :)
CLI for Microsoft 365 version
v4.0.0-beta.d2419e0
nodejs version
v14.17.6
Operating system (environment)
Windows
Shell
Windows PowerShell
cli doctor
No response
Additional Info
No response

Thank you for reporting the issue and sorry for the trouble. Having that debug output would be very helpful. I noticed one file name with a single quote. That's something that we can look into already. Having more details about the other two case would help us further.

Here is the debug output for the "list view treshold" error. I'm still investigating for the "File not found" error, will add information as soon as I can. Thanks !
error list view treshold.txt

Hi again !
Here is the (partial) debug output for the "file not found" error. I omitted some info at the beginning as it was really long. Let me know if you need the full output I'll see if I can get it.
Note that this error only happens when I use the "--output json" parameter. If I omit it, the command runs successfully (or stops with another error such as the single quote). This is fine now that default output is json even without the parameter :)
error file not found.txt

Thank you! We'll go through all the info you've provided us asap and hopefully we'll be able to fix these issues.

Thanks ! No hurry about this on my side as I've aklready got the solution running with PnP PowerShell (inspecting all onedrives) but I must admit I'd like it to run with CLI. I think it would run much faster :)

I can repro the issue with a single quote and the threshold limit error. Thank you for the information @lsavard

@lsavard If I use the PnP PowerShell equivalent you mentioned (Get-PnPFolderItem -ItemType File -Recursive -FolderSiteRelativeUrl "Documents") on a large list, I'm getting the same threshold error.

Well this is bad news. Means that even the PowerShell solution does not work while I thought it did. I'll run the command on a OneDrive that has 5000+ files to confirm this.

Thank you for confirming. I'm pretty sure it can be fixed. We just need to look for a suitable solution :)

Looking at the different options, we found out that there is no way for us to extend the existing spo file list command with support for large folders in a backwards compatible way with the existing command. So instead, we'll add a new command named file list, which will be based on Microsoft Graph and which will support large folders just fine. Using the command you shouldn't notice any difference other than the shape of the retrieved data. It would be awesome if you could help us test the new command once we add it. Once again, thank you so much for bringing this to our attention.

Hi !
Thank you for the follow up ! I will be happy to help with testing this new command !
De : Waldek Mastykarz @.>
Envoyé : 2 novembre 2021 03:51
À : pnp/cli-microsoft365 @.>
Cc : Savard, Luc @.>; Mention @.>
Objet : Re: [pnp/cli-microsoft365] Bug report: m365 spo file list -u $siteUrl -f Documents generating errors (#2704)
Looking at the different options, we found out that there is no way for us to extend the existing spo file list command with support for large folders in a backwards compatible way with the existing command. So instead, we'll add a new command named file list, which will be based on Microsoft Graph and which will support large folders just fine. Using the command you shouldn't notice any difference other than the shape of the retrieved data. It would be awesome if you could help us test the new command once we add it. Once again, thank you so much for bringing this to our attention.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://urldefense.com/v3/__https:/github.com/pnp/cli-microsoft365/issues/2704*issuecomment-957175218__;Iw!!C_xIDw!8F_HkGWtiD3FUzlxgwTgI6NiqLh_S__Bt5mPALM6EhI354QaOMKSfmlrILSPp4A$, or unsubscribehttps://urldefense.com/v3/__https:/github.com/notifications/unsubscribe-auth/AMHUTPWLHZVBV7RA7LOJTQLUJ6J6HANCNFSM5D5YNMWA__;!!C_xIDw!8F_HkGWtiD3FUzlxgwTgI6NiqLh_S__Bt5mPALM6EhI354QaOMKSfmlrIHeYAxk$.
Triage notifications on the go with GitHub Mobile for iOShttps://urldefense.com/v3/__https:/apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675__;!!C_xIDw!8F_HkGWtiD3FUzlxgwTgI6NiqLh_S__Bt5mPALM6EhI354QaOMKSfmlrKNNKFP0$ or Androidhttps://urldefense.com/v3/__https:/play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign*3Dnotification-email*26utm_medium*3Demail*26utm_source*3Dgithub__;JSUlJSU!!C_xIDw!8F_HkGWtiD3FUzlxgwTgI6NiqLh_S__Bt5mPALM6EhI354QaOMKSfmlrr3zakPI$.

Awesome! I appreciate your help 👏


Sidenav height in mobile

Sidenav links cut off
The current sidenav height is not working in mobile:

The last item appears cut off since the calc for the height is calc(100vh-64), that works in desktop, but on mobile is not taking account the position of the container (112px from the top)

Btw, why 112px instead of 122px (64px from header + 58px from menu dropdown)?
Android and iOS browser navigation bar
The problem using 100vh as height for the sidenav in mobile devices is that takes the outter-available-space value instead of the inner. And the browser bar is taking space inside this 100vh calculation.
This causes multiple links to be out of reach in mobile browsers:

There are some workarounds that could work in this case. I leave here something I founded:
https://css-tricks.com/css-fix-for-100vh-in-mobile-webkit/
Hope it works!
UPDATE
Extracting two issues from here:

[x] #1201
[ ] iOS Safari is cutting off the sidenav

About the 112px instead of 122px, seems that the height of the menu dropdown was changed after doing that calc, but not changed in there, which led to this inconsistency. Thanks for the feedback Alex 😃!

Extracting two issues from here:

[ ] Dropdown menu bar size is affecting the Application layout dispositioning.
[ ] iOS Safari is cutting off the sidenav.

With the recent updates to the Site (Flex component) and the Application Layout, the height of the Sidenav seems to now work fine in iPhone and not being cut off.

So I mark this issue as closed.


Ionic Material Site Offline

ionicmaterial.com has been down for a little while. When will it be back up?

works fine for me :)


OCPCLOUD-1812: Update tooling & k8s 1.26

Updates test tooling to be vendored instead of using shell script to download it. Also updates k8s to 1.26.

/retest

/lgtm

/retest-required

/retest-required
Looks like the unit tests are suddenly taking longer to run and hitting a global timeout 🤔


Websockets not working using WSS

https://github.com/awsdocs/elastic-beanstalk-samples/blob/117f05fd23c0598ac7c5bdf025c2203940aeffca/configuration-files/aws-provided/security-configuration/https-instancecert/https-instancecert-nodejs.config#L64
This line causes websockets to return a 401 when using a secure connection (wss://)
I replaced it with proxy_set_header Connection "upgrade";

@fieldfoxWim , thanks for bringing this up. We're looking into it.

@fieldfoxWim , we have a configuration file for enabling web socket support here: https://github.com/awsdocs/elastic-beanstalk-samples/blob/master/configuration-files/aws-provided/instance-configuration/websockets/nodejs/websockets-nodejs.config
After review with one of our engineers, we're going to keep the two separate.
Thanks for bringing this up!

@mcdwil that file is for unsecure websockets and not related to the issue. Listen 8080 vs Listen 443

we're going to keep the two separate.
Ofc I agree, I did not suggest to merge anything

Will the proxy_set_header be changed? Because this causes all wss:// socket communication to fail.


How to run the front end UI?

WIthin DigitalOcean new droplet, as per DOCKER_INSTALL.md
Ran
boot2docker init
boot2docker: command not found

and
(env)root@sebtest:~/python_ocr_tutorial# docker build --rm -t flask-docker-ocr .
The following packages have unmet dependencies:
 libtool : Depends: cpp but it is not going to be installed
           Depends: libc6-dev but it is not going to be installed or
                    libc-dev
E: Unable to correct problems, you have held broken packages.
2015/09/30 11:36:43 The command [/bin/sh -c apt-get install -y autoconf automake libtool] returned a non-zero code: 100

Not sure how DOCKER.INSTALL.md is related as it is for OSX when it is Ubuntu in Digital Ocean? Can I not install in my Mac OSX?

Hey @scheung38 , boot2docker is an OSX-only utility. What it's purpose is in this context is to get a verrry small linux image mounted inside OSX in order to be able to run docker.
To set up Docker on Ubuntu, I would follow this guide.
However, do note that Docker has had major changes since this was written a year ago. Now you will need to use docker-machine and docker-compose over docker and fig. So, feel free to ask more questions in here and I'll help as I can. I have both an ubuntu machine and a mac so I should be able to help you out. I'm going to close the issue since its unrelated to the repository really, but feel free to keep commenting. Just tag me so I get a notification.

Thanks I was a bit  confused how to launch the app and see the front end UI so I don't have to do it via curl. Secondly how to config Digital Ocean Droplet(or any remote machines) to display as for example,
gedit ocr.py

(gedit:30536): Gtk-WARNING **: cannot open display:

gedit is a graphical utility that requires a GUI to utilize. If you want to edit text on a linux machine the most common pre-installed editors are nano and vi. So, nano ocr.py would allow you to edit it.
With regard to getting a frontend running, you may be best off simply writing a small JS snipped that hits the API.
It looks like the tools are somewhat deprecated with all the Docker changes, so how about this --
I will test out getting all the things running on a personal DO machine, and document the process. I can then update the repository with this info so that it is up-to-date and you can follow easily since it will be the same OS/setup.
I will get back to you once I do this, probably later today.

I reopened it since the core is on me (lack of documentation)

Thanks gedit was just an example, because same if trying to launch google chrome as well.

I would just abandon docker altogether, this can be done in a simpler manner if you just wanna get up and running. To get the application running on a digital ocean box (just the API) on a clean machine logged in as root run this script:
apt-get update
apt-get install git\
		      python-pip
sudo apt-get build-dep python-imaging
git clone https://github.com/ybur-yug/python_ocr_tutorial.git
cd python_ocr_tutorial
pip install -r requirements.txt
python flask_server/app.py

This will get you all you need to run. Now,  here is what I would do to hit it simply. If you have a local file, index.html and embed this javascript:
    $.ajax({
      type: "POST",
      url: "you_ip_address:5000/v1/ocr",
      contentType: "application/json",
      dataType: "json",
      data : JSON.stringify({ "image_url" : some_image_url }),
      success: function(result) {
        console.log(result);
      },

and replace some_image_url with an image url, and your_ip_address1 with the IP of a digital ocean machine you have the server running on, this AJAX request will return the results and log it to the js console. If you would like, you dont even have to have it embedded in an index.html file, you could do it all from the console in firefox/chrome.
Does this help?

Thanks so which folder directory I should use as there are two app.py files..

The way the server works is it downloads the image from a URL manually. So sending files locally is not supported. What you must provide instead is an image url to an image elsewhere. Imgur meme's have a lot of text that is easily ocr'd for testing, or you can also you the hard-link to the image from the repository used for testing on github.
the url part is your digital ocean machine that is running the flask server's ip. Not your local machine.
What I am referring to specifically is firing up the API on a digital ocean instance, then hitting it from its public url, which is its ip address followed by the port, ie <IP_ADDRESS>:5000. So if you run this on the DO machine, and hit the API manually using that JS snippet from chrome on your own computer, you would be good to go.

This is also assuming you have tesseract, leptonica, etc installed outside of docker. which you can do easily with this: https://github.com/ybur-yug/python_ocr_tutorial/blob/137c35719a2d82c625d53cbfc687648315cd6cd5/_run.sh

But running the _app.py now generates another flask_server subdirectory?

Figured I'd write the process out to hit it clearly since its scattered across the comments.
Running The API and Hitting It Without Docker

SSH into a digital ocean machine
Run this script:

apt-get update
apt-get install git\
              python-pip
sudo apt-get build-dep python-imaging
git clone https://github.com/ybur-yug/python_ocr_tutorial.git
cd python_ocr_tutorial
pip install -r requirements.txt

And then this:
# Install Dependencies
sudo apt-get update
sudo apt-get install -y autoconf automake libtool
sudo apt-get install -y libpng12-dev
sudo apt-get install -y libjpeg62-dev
sudo apt-get install -y g++
sudo apt-get install -y libtiff4-dev
sudo apt-get install -y libopencv-dev libtesseract-dev git cmake build-essential libleptonica-dev
sudo apt-get install -y liblog4cplus-dev libcurl3-dev
sudo apt-get install -y python2.7-dev tk8.5 tcl8.5 tk8.5-dev tcl8.5-dev
sudo apt-get build-dep -y python-imaging --fix-missing
sudo apt-get install -y imagemagick

# Building Leptonica
wget http://www.leptonica.org/source/leptonica-1.70.tar.gz
tar -zxvf leptonica-1.70.tar.gz
cd leptonica-1.70/
./autobuild
./configure
make
sudo make install
sudo ldconfig

# Building Tesseract
cd ..
wget https://tesseract-ocr.googlecode.com/files/tesseract-ocr-3.02.02.tar.gz
tar -zxvf tesseract-ocr-3.02.02.tar.gz
cd tesseract-ocr/
./autogen.sh
./configure
make
sudo make install
sudo ldconfig

# Set Environment Variable
TESSDATA_PREFIX=/usr/local/share/

# Download the relevant Tesseract English Language Packages
cd ..
wget https://tesseract-ocr.googlecode.com/files/tesseract-ocr-3.02.eng.tar.gz
tar -xf tesseract-ocr-3.02.eng.tar.gz
sudo cp -r tesseract-ocr/tessdata $TESSDATA_PREFIX

Now that all dependencies are handled, we can run the server:
python flask_server/app.py

And the server will be running on DIGITAL_OCEAN_MACHINES_IP:5000
And to hit it we can open up the developer js console in chrome or firefox, and type in:
    $.ajax({
      type: "POST",
      url: "DIGITAL_OCEAN_MACHINE_IP:5000/v1/ocr",
      contentType: "application/json",
      dataType: "json",
      data : JSON.stringify({ "image_url" : IMAGE_URL_FROM_INTERNET }),
      success: function(result) {
        console.log(result);
      },

Where DIGITAL_OCEAN_MACHINE_IP is your box that is running the server's IP and IMAGE_URL_FROM_INTERNET is some picture with text from imgur, the projects github repo, whatever. Any valid image url works. If the browser will load it you should be good.
From there, you will receive the string back that will log what was parsed in the server to the js console.

I added sudos to two apt-get commands in an edit but its good now. Confirmed to work on a clean DO box i just spun up.

Which two apt-get commands? Could I also install node inside Digital Ocean and within node, launch this script since I cannot get chrome to launch in Digital Ocean

apt-get update and apt-get install pip/vim, the first 2
Well you can hit the IP address of the digital ocean box from any device with an internet connection. I did it myself on my macbook pro using osx's chome. The API is running and exposed to the public. The IP address acts like the url to the api and you just specify the port (in this case, 5000) and you can hit it anywhere. You could even fire up IRB and just do
require 'net/http'

Net::HTTP.post_form(URI('http://DIGITAL_OCEAN_IP:5000/v1/ocr'), { image_url: "YOUR_IMAGE_URL" })
#=> and you have the parsed response

Since its on an API and live you can just hit it with whatever client you choose, anything that can POST an HTTP request is able to fine. No authentication or anything is set up.

require 'net/http'

Net::HTTP.post_form(URI('http://DIGITAL_OCEAN_IP:5000/v1/ocr'), { image_url: "YOUR_IMAGE_URL" })

if URL is in my desktop then it would be?

No, it will NOT download an image from your desktop, as it has no means to know how to connect to it. You would have to build an HTML form that submits the request to the API and change the way the server itself works to do this.
What you need to do is take an image like this
https://realpython.com/images/blog_images/ocr/ocr.jpg
As in, that URL
and then feed it in using whatever your method of choice to make an HTTP POST request is, with the parameters "{ 'image_url': 'https://realpython.com/images/blog_images/ocr/ocr.jpg' }"
and it would work if you are POSTing to the endpoint that is  DIGITAL_OCEAN_MACHINE_IP:5000/v1/ocr`

Could we not use the front end that is already there in templates folder?

Yes, you could even just run it locally and specify the right URL. I thought you hadn't done that for a specific reason since its already provided and can be run without the server actually being on your machine.

Would it be easier to build everything locally in my Mac? Just not sure how to install all the dependencies since it was designed for Linux. Could I request build installation but for Mac.

to run it on OSX you only need to install boot2docker, then run
$ boot2docker init
$ boot2docker start
$ docker build --rm -t flask-docker-ocr .
$ docker run -p 80:5000 flask-docker-ocr

You shouldnt need docker-machine or anything else (I think, let me know)

and it will have all the things working local (frontend and server both)

Reason is not knowing how to install the dependencies in Mac OSX. So apt-get would be replaced with brew?

Any others?

docker will take care of everything, you dont need to manually install anything except boot2docker and docker itself.

Boot2docker is still valid in OSX then? Only only valid in Linux environment right?
Sent from my iPhone

On 30 Sep 2015, at 21:49, yburyug<EMAIL_ADDRESS>wrote:
docker will take care of everything, you dont need to manually install anything except boot2docker and docker itself.
—
Reply to this email directly or view it on GitHub.

The error you are getting on the server means that you are not sending a URL that ends in .jpg, which is required for the server. It looks like you are up and running on DO and got the actual output.


[Feature][kubernetes] support ds HA by k8s configMap

*For better global communication, please give priority to using English description, thx! *
Please review https://dolphinscheduler.apache.org/en-us/community/development/issue.html when describe an issue.
Describe the feature
DS has a Zookeeper HA service currently, but managing a Zookeeper cluster on Kubernetes for HA would require an additional operational cost that will increase the complexity of deployment。 for Kubernetes， it provides ConfigMap for leader election native. so we can remove the Zookeeper cluster in Kubernetes deployment mode。
Is your feature request related to a problem? Please describe.
No
Describe the solution you'd like
use ConfigMap for leader election and configuration storage in DS Kubernetes native mode。

@chengshiwen What do you think ?

@chengshiwen What do you think ?

@dailidong @haydenzhourepo I will consider this feature and give its feasibility after the docker&k8s Improvement round 2

good job
Best Regards
DolphinScheduler PMC
Lidong Dai
@.***
On Fri, May 21, 2021 at 11:13 AM Shiwen Cheng @.***>
wrote:

@chengshiwen https://github.com/chengshiwen What do you think ?
@dailidong https://github.com/dailidong @haydenzhourepo
https://github.com/haydenzhourepo I will consider this feature and give
its feasibility after the docker&k8s Improvement round 2
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/apache/dolphinscheduler/issues/5479#issuecomment-845620629,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ADYZVUYRERMNU3BTJCX5QWLTOXFV3ANCNFSM4462F4KQ
.


source map comparison missing some (inline-source-map)

In the sourcemap documentation, we are missing inline-source-map in the comparison table:
https://github.com/webpack/webpack.js.org/blob/332fa9f5ba8ba704cd100b1878437a8ed0694d13/content/configuration/devtool.md#devtool

While the For development paragraph speaks about inline-source-map.
So I was reading the development part and trying to find it in the comparison table, then I was lost.
I believe in the production part we are also talking about other types of sourcemaps that are not documented in the comparison table.
Missing a bit of consistency in here, sorry I can only report it, I do not master all the sourcemaps styles.
On a side note I always felt like this sourcemap situation is too much and seems overcomplicated (so many options)

Thanks for reporting. I'm closing this one since we already have #686 for missing devtool modes. Also related is #273.


export the Fluent types

If they are not exported, writing a line of code in your app like this:
export const fluentEither = fluent(either);

gives:
Exported variable 'fluentEither' has or is using name 'Fluent2' from external module "/Users/src/app/node_modules/fp-ts/lib/fluent" but cannot be named.ts(4023)

@leemhenson ah right, thanks. Speaking of which, what about adding an official fluent export to all data types?

Yeah I imagine at least the obvious ones Option, Either, TaskEither should be available.

Nevermind, thinking twice only the user can decide when it makes sense and/or augment the standard instance of a data type (for example merging an Eq instance for Option)
(just pushed this change to v2-lib)


Move "new message" to top of broadcast dropdowns

Resolves
Resolves LLK/scratch-gui#402. (Originally suggested on the Scratch forums.)
Proposed Changes
Moves the "new message" option (really NEW_BROADCAST_MESSAGE) to the top of the menu. A simple change from push to unshift works here!
Reason for Changes
To resolve the help-wanted issue. Having this option be at the top makes it easier to access, and more prominent.
Test Coverage
Tested manually.

Looks good! Thanks to @kchadha for the sanity check.


Update main-javascript.js

Change require path from relative to absolute ('../dist/source' -> 'telegraf-inline-menu ')

I think this change will only be helpful when you copy the example. When running the example directly from the source code it uses the source code from this library directly.
This is also helpful when changing things in the source code of the library and directly test it with the example.
Or do I miss something here?

Oh sorry, you're right! My mistake :sweat_smile:


Admin Shop

The idea of the admin shop is that a command will be run such as "/shop" and a custom inventory will open up where players can purchase/sell items. I am planning on this being customized from a config file. Customization includes shop title, shop items, item prices, and whether or not items can be both sold and bought or just sold or bought. And just like every feature, shops can be enabled/disabled from the main Total Economy configuration file.

[ ] Configuration Creation
[ ] Configuration Loading
[ ] Custom Inventory
[ ] Mechanics

Description?

Working on it. Just added it here as a reminder. Give me time :smiley:

Waiting on some more API implementation before adding this.

https://github.com/Erigitic/TotalEconomy/issues/50


Multi-thread result is quite different from single thread?

Hello,
From my project, the code bass are the same and only thread nums are different. One is 1 and another one is 20. 1 thread ends at 2300 iterations and 20 threads ends at 178 iterations, and the results are different. How can I debug it?

It it the bug in my problem


how to define the angle in the Rotated RoI Align?

First of all, thank you very much for publicing code. I have some questions about the Rotated RoI Align module. The rroi is expressed as (x,y,w,h,angle), how is angle defined here, I can't understand the angle defined in the polygonToRotRectangle_batch function?

RRoI module can predict the angle

@lianglele185 The same as RoITrans