Invalid views to insert using lazy loading with last nightly

Ionic version:  (check one with "x")
[ ] 1.x
[ ] 2.x
[ ] 3.x
I'm submitting a ...  (check one with "x")
[x] bug report
[ ] feature request
[ ] support request => Please do not submit support requests here, use one of these channels: https://forum.ionicframework.com/ or http://ionicworldwide.herokuapp.com/
Current behavior:
On last nightly which should resolve this #11168 now there are several other errors, like this:
Runtime Error
Uncaught (in promise): invalid views to insert
Stack
Error: Uncaught (in promise): invalid views to insert
    at d (http://localhost:8100/build/polyfills.js:3:3991)
    at l (http://localhost:8100/build/polyfills.js:3:3244)
    at Object.reject (http://localhost:8100/build/polyfills.js:3:2600)
    at NavControllerBase._fireError (http://localhost:8100/build/main.js:46751:16)
    at NavControllerBase._failed (http://localhost:8100/build/main.js:46739:14)
    at http://localhost:8100/build/main.js:46794:59
    at t.invoke (http://localhost:8100/build/polyfills.js:3:11562)
    at Object.onInvoke (http://localhost:8100/build/main.js:4644:37)
    at t.invoke (http://localhost:8100/build/polyfills.js:3:11502)
    at n.run (http://localhost:8100/build/polyfills.js:3:6468)
    at http://localhost:8100/build/polyfills.js:3:3767
    at t.invokeTask (http://localhost:8100/build/polyfills.js:3:12256)
    at Object.onInvokeTask (http://localhost:8100/build/main.js:4635:37)
    at t.invokeTask (http://localhost:8100/build/polyfills.js:3:12177)
    at n.runTask (http://localhost:8100/build/polyfills.js:3:7153)

Ionic info: (run ionic info from a terminal/cmd prompt and paste output below):
    Cordova CLI: 6.5.0
    Ionic Framework Version: 3.0.1-201704252003
    Ionic CLI Version: 3.0.0-beta7
    ios-deploy version: Not installed
    ios-sim version: Not installed
    OS: Linux 4.10
    Node Version: v6.10.2
    Xcode version: Not installed

P.S. sorry guys, bu it becomes really frustrating handling with LazyLoading router. :cry:

Hello. Sorry about the frustration! We are still working on our lazy loading story and this will get better in the future. Would you mind posting a repo or plunker we can use to reproduce this issue?

@jgw96
Honestley, the problem is there are several bugs we opened on ionic-angular, app-scripts and also on ionic-cli.
Some of the bugs where closed without resolving them and some bugs are still there with no attention. For other bugs after hours of tentative to reproduce them in a simple dev environment we released to you, the bugs are there without attention and as you know it's absolutely not simple to reproduce a BUG on a new environment which is not the real dev environment, so many hours of work.
So we really don't know how to continue with our app and honestly in the last few weeks we have had the problem, on releasing a new version of ionic-angular for a bug fixing you opened a few new other bugs. And this not only for one module but also over different modules (ionic-angular / app-scripts / ionic-cli).
So we have no combination of the modules which works. Some combination has bugs other combination doesn't work at all.
So really we are not able to have now a system on which we can develop, and we really don't know if we should go back to an old version where we have some bugs, or if we should go further with a never version where we have other bugs.
Until now in ionic3 we where never in a status where we had no errors on production or dev mode.
So honestly we are completely stopped on our project on production and dev mode from weeks or also from more then a month, this since releasing v3, and we can not return to v2.
Sorry, this is not a criticism, but a desperate message from a DEV team which is working with your great framework.
FIY we are located in Italy so we are all the night in your leisure showing and reading your commits and your issues and waiting for your feedback or your nightly's.
So we hope you can help us as soon as possible and follow us to resolve this issues and we hope we can help you resolve this issues.
THX at all

This is one of this new BUG we have from latest releases this night:
https://github.com/driftyco/ionic-app-scripts/issues/927
This are other BUGS which was closed but are not resolved
https://github.com/driftyco/ionic-app-scripts/issues/898
https://github.com/driftyco/ionic-app-scripts/issues/877
https://github.com/driftyco/ionic-app-scripts/issues/911
This ISSUE is still there and we can not resolve it, but it is not possibile to reproduce it on a new ENVIRONMENT
https://github.com/driftyco/ionic-app-scripts/issues/893
THIS ISSUES should be closed on 3.1.0 but as we can not migrate to 3.1.0 we can not close them and thest them
https://github.com/driftyco/ionic/issues/11168
https://github.com/driftyco/ionic/issues/11090
There are other problems I tried to discuss on this PR
https://github.com/driftyco/ionic/pull/11128#issuecomment-294958625
As you can see for the last two messages version 3.1.0 probably close the promise bug but opens me a new SEVERE bug on setting the new page on a ion-nav
This are only a SET of BUGs we have and we opened and which are open.
Honestly the thing is, this are not css or other bugs we can handle with some simple workarounds. This are framework problems which stops us to work on production and also on dev.
I hope we can help you as much as possible do makes it work.
THX

Also experiencing this issue since updating to 3.1.0.

Also seeing this randomly, as well:
    at d (http://localhost:8100/build/polyfills.js:3:3991)
    at l (http://localhost:8100/build/polyfills.js:3:3244)
    at l (http://localhost:8100/build/polyfills.js:3:2930)
    at http://localhost:8100/build/polyfills.js:3:3758
    at t.invokeTask (http://localhost:8100/build/polyfills.js:3:12256)
    at Object.onInvokeTask (http://localhost:8100/build/main.js:4469:37)
    at t.invokeTask (http://localhost:8100/build/polyfills.js:3:12177)
    at n.runTask (http://localhost:8100/build/polyfills.js:3:7153)
    at a (http://localhost:8100/build/polyfills.js:3:2312)```

I am randomly seeing this error:

Any Solution to this Problem?

I have same problem in lazyload mode
Error: Uncaught (in promise): removeView was not found
at d (http://localhost:8100/build/polyfills.js:3:3991)
at l (http://localhost:8100/build/polyfills.js:3:3244)
at Object.reject (http://localhost:8100/build/polyfills.js:3:2600)
at Tab.NavControllerBase._fireError (http://localhost:8100/build/main.js:44534:16)
at Tab.NavControllerBase._failed (http://localhost:8100/build/main.js:44522:14)
at http://localhost:8100/build/main.js:44577:59
at t.invoke (http://localhost:8100/build/polyfills.js:3:11562)
at Object.onInvoke (http://localhost:8100/build/main.js:4623:37)
at t.invoke (http://localhost:8100/build/polyfills.js:3:11502)
at n.run (http://localhost:8100/build/polyfills.js:3:6468)
at http://localhost:8100/build/polyfills.js:3:3767
at t.invokeTask (http://localhost:8100/build/polyfills.js:3:12256)
at Object.onInvokeTask (http://localhost:8100/build/main.js:4614:37)
at t.invokeTask (http://localhost:8100/build/polyfills.js:3:12177)
at n.runTask (http://localhost:8100/build/polyfills.js:3:7153)
Ionic App Scripts: 1.3.4
Angular Core: 4.0.2
Angular Compiler CLI: 4.0.2
Node: 7.7.1
OS Platform: Windows 10
Navigator Platform: Win32
User Agent: Mozilla/5.0 (iPhone; CPU iPhone OS 9_1 like Mac OS X) AppleWebKit/601.1.46 (KHTML, like Gecko) Version/9.0 Mobile/13B143 Safari/601.1

@jgw96 @brandyscarney
Has someone a solutions for this BUG??  invalid views to insert this bug is cause many other bugs or side effects!
Can you give this a priority?

Hello, same problem here.
When I try to reach an inner page which is lazy loaded I often get:
Runtime Error
Uncaught (in promise): invalid views to insert
Error: Uncaught (in promise): invalid views to insert
at d (http://localhost:8100/build/polyfills.js:3:3991)
at l (http://localhost:8100/build/polyfills.js:3:3244)
at Object.reject (http://localhost:8100/build/polyfills.js:3:2600)
at NavControllerBase._fireError (http://localhost:8100/build/main.js:43515:16)
at NavControllerBase._failed (http://localhost:8100/build/main.js:43503:14)
at http://localhost:8100/build/main.js:43558:59
at t.invoke (http://localhost:8100/build/polyfills.js:3:11562)
at Object.onInvoke (http://localhost:8100/build/main.js:4477:37)
at t.invoke (http://localhost:8100/build/polyfills.js:3:11502)
at n.run (http://localhost:8100/build/polyfills.js:3:6468)
at http://localhost:8100/build/polyfills.js:3:3767
at t.invokeTask (http://localhost:8100/build/polyfills.js:3:12256)
at Object.onInvokeTask (http://localhost:8100/build/main.js:4468:37)
at t.invokeTask (http://localhost:8100/build/polyfills.js:3:12177)
at n.runTask (http://localhost:8100/build/polyfills.js:3:7153)
Ionic Framework: 3.1.0
Ionic App Scripts: 1.3.4
Angular Core: 4.0.2
Angular Compiler CLI: 4.0.2
Node: 7.9.0
OS Platform: Linux 4.10
Navigator Platform: Linux x86_64
User Agent: Mozilla/5.0 (Linux; Android 5.0; SM-G900P Build/LRX21T) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Mobile Safari/537.36
Reloading, sometimes it works, sometimes the page redirects to the rootPage

Hello, all! Thanks for all the input, we greatly appreciate you guys concerns and are evaluating all this info as I write this. As I said before we are hard at work on getting our lazy loading implementation polished and ready for the big time. We are aware of some navigation and build issues with lazy loading at the moment which is why we have not pushed it as the default yet. Expect updates on all this soon and again, thanks for using Ionic everyone!

So, here's a quick insight of what "invalid views to insert" means?
https://github.com/driftyco/ionic/blob/master/src/navigation/nav-controller-base.ts#L356
Basically it means ALL the components you are trying to insert where NOT resolved (ie a ViewController) were not created.

Error: Uncaught (in promise): nav controller was destroyed
that means, your  or tab was destroyed while a transition was running. So, I believe you are doing something wrong. The good thing here is that NavController handled the error correctly, it will not break your app.

Not sure if it only fixes it here for me or could help anyone else but after getting this error
***Runtime Error
***Uncaught (in promise): invalid views to insert
I did the following 2 steps and all is working fine now.. That error has stopped for now.

I went thru and imported NavParams to every pages' .ts file even though I am not using NavParams and injected into all constructors.

in the module.ts for each page I noticed some did and some did not have a comma after the page declaration ( probably made with different versions of ionic generate over the last few months?)
anyway I added that comma back in all the files that didn't have it
@NgModule({
declarations: [
HomePage,   <- that comma right there *******
],.....

Could just be a fluke.. but 1 or both of those things combined has everything working again.

@jgw96 @manucorporat
Ok, for the third time I created a new github repository which is simulating some of the bugs I mentioned.
https://github.com/mburger81/ionic-lazy.git
This is a ionic project using<EMAIL_ADDRESS>and<EMAIL_ADDRESS>so please be sure to use the right ionic cli.
This repo is using a two "layer" navigation, in the AppComponent is the first ion-nav which is handling loading LoginPage or MainPage where is the second ion-nav which is handling all other pages. Also in any page there is a ionViewCanEnter livecycle where I use my AuthGuard. The AuthGuard is using HTTP calls which doesn't exists, I check always the GUARD in the ERROR handler SUBSCRITION. This is need to simulate Promise and Observable (perhpase there is a better way to do this).
If I open the LoginPage but I'm already logged in I will naviagte to MainPage. If I open MainPage or Page1, Page2, ..., Page5. but I'm not logged in I will navigate to LoginPage.
You can simple checkout repo and do (as you know)
npm install
ionic serve

After that you will see a simple LoginPage, with a button

After this cliick the button Login and you'll redirect to first Page, there you can navigate with Menu over all pages!

As you can see you are in
http://localhost:8100/#/main/page1
Now try to navigate manual in the browser to
http://localhost:8100/#/main/page2
http://localhost:8100/#/main/page3
http://localhost:8100/#/main/page4
http://localhost:8100/#/main/page5
You'll see soon or later this bug:

PLEASE check it and let me know if you where able to reproduce at least this bug.
It is possible if we are implementing something wrong, but it would be nice for us and the other guys which are having this problem if we can resolve this or check what are we doing wrong.

I confirm having the same issue, restarting ionic from the terminal get it working again and after some works i got the same error message with root page "tabs"

This problem seems to have an easy fix. I'm using it without problems:
Go to your-project/node_modules/ionic-angular/navigation and open deep-linker.js
Then search for nav.push(segment.component.
In version 3.1.1 this is on line 428.
Modify this line:
nav.push(segment.component, segment.data, {
... so it will look like this:
nav.push(segment.component || segment.name, segment.data, {

@BOAndrew
Good to know this, but naturally this is not a fix in my opinion but only a temporary workaround.
I hope @manucorporat or @jgw96 follow us and can fix this.

@ionic team was you able to reproduce the bug with my repro?

Hello everyone! We are evaluating this issue to be added to the milestone for our next release. Thanks!

And as you can see, this issue is now on the 3.2.0 milestone 🎉

Great thx a lot!! We can not update ionic before the bug is resolved. We as others are stille there on 3.0.1.
I hope my repo can help you to reproduce the error! Thx

@BOAndrew thanks for the solution, it works great forme. I hope the IONIC team resolve this issue in the next release.

@BOAndrew I tested your workaround now for the first time with new 3.2.0  but it seems not working for me.

@BOAndrew  sadly your Workaround doesn't work for Me :-(

@brandyscarney @jgw96 3.2.0 has been released.  Can you provide new messaging around the outstanding lazy loading issues?

Yes please!!!

I am on 3.2.0 and i got same issue but I found my problem.
Since I am rewriting my old ionic.1 to ionic.x sometimes we just copy paste views and modify to new requiremenets.
My problem was that tag  has (click) and href="#/routefromoldapp" so after removing href this issue gone for me

I have updated to the latest beta and now it works like a charm. It was easy for me to implement it in an existing app and i was really able to reduce size of the initial load and could push Performance also :-)
Cool Thing!

@obermoserkitz What do you intend with latest beta? The latest beta as an very very old 3.0.0-beta.3, this is a pre 3.0.0! Do you have installed this one or do you intend the latest nightly which is the 3.2.0-201705121627.

@jgw96
When i try to go page using url manually it says

Uncaught (in promise): invalid views to insert
Ionic Framework: 3.2.1
Ionic App Scripts: 1.3.7
Angular Core: 4.1.0
Angular Compiler CLI: 4.1.0
Node: 6.9.5
OS Platform: Windows 7
Navigator Platform: Win32
User Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36

How to fix?

Still exists with Ionic 3.2.1

I also get it on Ionic 3.2.1
Error: Uncaught (in promise): invalid views to insert

@shprink @richardmarais  a you using link   event to push a new view? Because in my case was extra href which was causing that error

@vovikdrg, I just have this.nav.setRoot(page.component), which is pretty standard I think.

@vovikdrg I use setRoot or Push only. the problem happens when hitting the back button in my case.

Not 100% sure yet, I need to test further, but I have the following in my app.html:
<!-- Disable swipe-to-go-back because it's poor UX to combine STGB with side menus -->
<ion-nav [root]="rootPage" #content swipeBackEnabled="false"></ion-nav>

I think this is the cause.
[will update one tested]

We have the same error as,  @shprink. This bug is a long and painful story!

long and painful story

Yea, to bug was in milestone for 3.2 and 3.3 but today was released 3.3 and the bug wasn't resolved. :'(

I had the same problem, upgraded to ionic-angular 3.3 and still fails.
Patched line 428 of deep-linker.sj and the problem solved (BOAndrew post)

All,
We are doing a refactor of navigation right now to better facilitate lazy loading. We'll make sure this bug is resolved with the changes.
Thanks,
Dan

buenas alguien me puede decir a que llega este error
ERROR Error: Uncaught (in promise): invalid views to insert
at d (polyfills.js:3)
at l (polyfills.js:3)
at Object.reject (polyfills.js:3)
at NavControllerBase._fireError (nav-controller-base.js:322)
at NavControllerBase._failed (nav-controller-base.js:310)
at nav-controller-base.js:365
at t.invoke (polyfills.js:3)
at Object.onInvoke (core.es5.js:4125)
at t.invoke (polyfills.js:3)
at n.run (polyfills.js:3)
at polyfills.js:3
at t.invokeTask (polyfills.js:3)
at Object.onInvokeTask (core.es5.js:4116)
at t.invokeTask (polyfills.js:3)
at n.runTask (polyfills.js:3)
defaultErrorLogger @ core.es5.js:1084
ErrorHandler.handleError @ core.es5.js:1144
IonicErrorHandler.handleError @ ionic-error-handler.js:63
next @ core.es5.js:4754
schedulerFn @ core.es5.js:3828
SafeSubscriber.__tryOrUnsub @ Subscriber.js:234
SafeSubscriber.next @ Subscriber.js:183
Subscriber._next @ Subscriber.js:125
Subscriber.next @ Subscriber.js:89
Subject.next @ Subject.js:55
EventEmitter.emit @ core.es5.js:3814
NgZone.triggerError @ core.es5.js:4185
onHandleError @ core.es5.js:4146
t.handleError @ polyfills.js:3
n.runGuarded @ polyfills.js:3
(anonymous) @ polyfills.js:3
a @ polyfills.js:3
invoke @ polyfills.js:3

ocal packages:

    @ionic/app-scripts              : 1.3.7
    @ionic/cli-plugin-ionic-angular : 1.3.0
    Ionic Framework                 : ionic-angular 3.3.0

System:

    Node       : v6.10.3
    OS         : Windows 10
    Xcode      : not installed
    ios-deploy : not installed
    ios-sim    : not installed

With latest versions that works (in Browser):
app.module.ts:

...
    imports: [
       BrowserModule,
       IonicModule.forRoot(MyApp, {}, {
            links: [
                {component: HomePage, segment: 'home', name: 'home'}
            ]
        })
    ],

home.ts:

@Component({
    selector: 'page-home',
    templateUrl: 'home.html'
})
export class HomePage {
    constructor(public navCtrl: NavController,
                private storage: Storage) {
    }
}

And that works not:
app.module.ts:

    imports: [
        BrowserModule,
        IonicModule.forRoot(MyApp),
        IonicPageModule.forChild(HomePage),
        IonicStorageModule.forRoot()
    ],

home.ts

@IonicPage({
    name: 'home',
    segment: 'home'
})
@Component({
    selector: 'page-home',
    templateUrl: 'home.html'
})
export class HomePage {
    constructor(public navCtrl: NavController,
                private storage: Storage) {

    }
}

@nelsneider Ionic team are working on refactor for navigation. I believe they're gonna fix it soon.

when can we expect the next release?

https://github.com/ionic-team/ionic/commits/url-changes

As from meeting notes they should release this week a new version with emprovements on keyboard and lazyloading.
Today they released version 3.4.0, but without lazyloading
:sob: never ending story

This will be in the next ionic release. The nav changes are taking longer than I planned. I'm going to lock this for now since we know what we need to do and it isn't overly constructive at this point.
Thanks,
Dan

This issue is resolved in nightly.
Thanks,
Dan


Documentation

Complete documentation in every View Controller and helper class.

I can help with this.

I would be very grateful! I'll also be combing through to see what I can add because of the influx of new contributors :)


Add Graphsignal to Tools/Services

Added Graphsignal to Tools and Services

Nice tool, thanks for the add


History not kept when navigating with previous/next chapter buttons

I was testing the History feature and I was getting erratic behaviour, for instance:

open book
move forward using keyboard arrow right
encounter a link to the bibliography, click on it
click history back => at that point i expect to be brought back to the page i was before clicking the bibliography link, but instead i was brought back to the cover page

If however i navigate using the TOC to a chapter, then click a bibliography link, i am taken back to the chapter i clicked on the TOC.
It seems this is because of calls this.navigate(position, false) in the IFrameNavigator, which do not persist the history.
Removing the , false) solve the problem, however i would like to check with you, as this may be there for a reason i can't fathom.

after further digging, it seems the issue is coming from the last reading position not being saved before pushing the history, but that happens only in some cases.
It seems this condition is not always triggered:
https://github.com/d-i-t-a/R2D2BC/blob/464242eb779290edb84626835f017af7ef6f9eb8/src/modules/history/HistoryModule.ts#L138-L143
If i understand correctly, if the history is empty, but the current reading position is on the first page of a resource (progression = 0), that would not be triggered, and the current position would not be pushed in the history.
In that case, only the target position is pushed.
Then, when going back in history, we end up going back to the cover instead of the previous reading position.
An obvious fix would be to remove this block:
if (
          lastReadingPosition?.locations.progression &&
          lastReadingPosition?.locations.progression > 0
        )

I can submit a PR for this.


Do not apply offset to startTime/endTime for text buffer

The start/end times are derived from reference times which have
already had the offsets applied. Without this patch, when there
is an offset present we buffer all available text segments at
stream start.

I think there is still an issue here.
Here's how I understand the code:
The timestamp offset that is set on the engine is the offset relative to the start of the period. In other words, it is the offset required to calculate the presentation time within the period; the first segment of the period should be 0 in this world.
The calls to evict and subsequently to remove, use time relative to the availability start time, which has an entirely different time scale. Since the cue/buffer times are relative to the period, bad things seem to happen on the evict calls.
I think this patch fixes an issue whereby single-period playback won't start until all text fragments have been buffered, but multi-period playback is still broken if there is a text track.

I looked at this yet again, and I stand corrected.
The issue is that the startTime and endTime passed to appendBuffer are relative to the start of the period (pto), while everything else is relative to the availability start time.
I got it backwards in my comment above.

The original code looks correct to me.  If we are emulating MSE's timestamp offset, we should add the offset to the parsed timestamps.  Can you please give us a sample manifest that reproduces your issue?

Sorry, the PR is misleading, I'm not suggesting we remove the offset, just that the offset be relative to the AST, as opposed to the period start.
Here's a sample manifest. I can make playback available if you want to get in touch with me out of band.
manifest.txt

Let me try to be explicit about what I believe that I'm seeing in the text flow. I'm glossing over many parts of the system, but this is how I understand it:

References are created in SegmentList.parseSegmentListInfo_ and have the PTO applied to their start and end times. Now all the references have times relative to the period start, not the AST.
StreamingEngine decides the references need to be buffered, and we end up in fetchAndAppend, which calls initSourceBuffer on the current period
We set the timestampOffset on the media source to period start - PTO. The timestampOffset is relative to the AST. Please correct me if I'm wrong about this assumption.
Once we fetch the segments they get passed through to StreamingEngine.append_, which calls StreamingEngine.appendBuffer_ using the start and end times of the references. Per my assumption above, these times are period relative.
Now we arrive at TextEngine.appendBuffer, which is adding the offset to the the reference start/end times. As I see it, the math we are doing is:

referenceTime = origTs - PTO
offset = periodStart - PTO
newReferenceTime = referenceTime + offset

where referenceTime is startTime or endTime in TextEngine.appendBuffer. This can be rewritten as
newReferenceTime = origTs - PTO + periodStart - PTO

So we're subtracting out the PTO twice. I think what we actually want is:
newReferenceTime = origTs - PTO + periodStart

I think the right solution is to pass the periodStart into TextEngine so that we can add it to the reference times that we pass in to appendBuffer.
I'm happy to move this off to an issue, if you think it is legit.

Here's why this is difficult to understand.  MediaSourceEngine delegates to TextEngine for text streams because MediaSource doesn't handle them.  So TextEngine is supposed to work just like MediaSource/SourceBuffer.  TextEngine's timestampOffset is meant to work exactly like SourceBuffer's timestampOffset: it is added to the timestamps of the media contained in future calls to appendedBuffer().
So it's not at all clear to me why this should need to be different for text.
In the manifest you attached, your text streams have a presentationTimeOffset identical to the ones in your audio and video streams from the same Period.  Do the timestamps in the text segments align with the ones in the corresponding video segment?
Can you send a manifest URL I can use to see this in action?

I agree that we should be adjusting the timestamps of the media passed to TextEngine.appendBuffer by timeStampOffset. That part of the code is behaving correctly (https://github.com/google/shaka-player/pull/411/files#diff-564eace42ce079927d4fbedc838cf4aeR129).
The issue is that we are using the reference start/end time (which are not passed to a normal MediaSource) to adjust bufferStart_ and bufferEnd_ (https://github.com/google/shaka-player/pull/411/files#diff-564eace42ce079927d4fbedc838cf4aeL123). This happens automagically inside of MediaSource, but we need to do it manually for TextEngine. My point is that those start and end times are getting the PTOs applied twice.
Sorry this is dragging out. I don't have a great way to make that content to you available publicly, but we might be able to make something work out of band...

Ah, okay, I see now.  It's the buffered ranges that are wrong.

I'm totally on board with this change now.  If you would, please:

Fix the commit author to satisfy the CLA bot
Update the title of the commit/PR to make it clearer what's going on (something like "do not apply timestampOffset to text reference times")
Update the TextEngine unit tests in test/text_engine_unit.js (there's a section called "bufferStart/bufferEnd", and it looks like some of these would fail with your PR as-is)

You can easily run the tests with ./build/test.py
Thanks!

I passed periodStartall the way through to TextEngine. I think an alternative would be to add periodStart to the reference object, and create methods to calculate the AST-relative start and end times, but that seemed like a bigger change, so I figured best to start here.
Let me know what you think.

We have repro now and a new test asset to cover this case, but we have another fix in mind.

Sounds good. Let me know if you need anything else from me.

@baconz Please try the latest from master and confirm whether this fixes it for you.

👍 It works! Thanks, Joey!


Use Transactable instead?

Hello. :wave: I'm not sure this is an "issue" in the truest sense of the word but wasn't sure where to log this information. Anyway, in looking over this gem, you might want to take a look at the Transactable gem since it's -- sort of -- in the same spirit of what you are trying to do here but with whole lot of bells and whistles. Most importantly, the Transactable gem gives you away in which to leverage the Railway Pattern as a series of steps which is a little easier to read using a condensed DSL.

ehi @bkuhlmann I'm delighted to get an issue from you, your collection of gems is impressive 🔥
coincidentally, I've read about Transactable a few days ago but I cannot use that gem because at my job we've fully embraced the dry ecosystem and dry-monads is the most used gem.
thanks for the suggestion anyway, I would love to take inspiration from your gem for next features 😁

Ha, thanks, that collection is a decade of work and evolution. 😊
It's nice to hear you are building top Dry Monads and Dry RB at large. I do want to point out that Transactable IS built upon Dry Monads. In some sense it's a supercharged version of Dry Monads so you can do more with less. Anyway, if you are headed down the Dry RB path, Transactable would give you additional super powers.
You can close this issue if you like but mostly wanted to raise a warning flag, so-to-speak, that you might be headed down a path of duplicated effort. :wink:


Doesn't seem to be a good obfuscator at all :(

#deobfuscator.py
import base64
filename = input("Enter HTML to deobfuscate: ")

with open(filename, "r") as f:
    ob = f.read().split('\n')[1][34:-1]

exec(f'arr = {ob}')

print(base64.b64decode("".join(arr)[::2]).decode())

it is simple obfuscator, not an advanced even chatgpt can decode it


Can't sense connection closed by server in some extreme circumstances

Describe the bug
Server slb idle connections will be closed in 15s，but the time in client is 30s. So in some extreme circumstance，unirest client will use connections closed by server and throw an exception like:
kong.unirest.UnirestException: org.apache.http.NoHttpResponseException: ** failed to respond
is there anyway to avoid this?

as the error implies the error is in Apache. You could create a custom Apache client for unirest that is configured with a NoConnectionReuseStrategy. that may have other negative performance consequences

I would note that using that strategy might help with a very flakey server but in the end this is a valid exception

@ryber Thank you for your reply, noticed that unirest have a thread AsyncIdleConnectionMonitorThread, do the work : close idle connections every 30s, any consideration to expose 30 as a config?

@ryber Or any consideration to allow users to custom set ConnectionKeepAliveStrategy for httpClient may solve this problem?

I'm going to close this. There is always the option to use the advanced features of Apache with a custom apache client. It's quite easy to set.


How to use Johnny-five in Angular2 project

Please, I am new to angular2 and would like help implementing Johnny-Five in angular2.
1 - I created a provider (J5Provider):
import { Injectable } from '@angular/core';
import 'rxjs/add/operator/map';

var raspi = require('raspi-io');
var j5 = require('johnny-five');

@Injectable()
export class J5Provider {

  private board: any;

  constructor() {
    this.board = new j5.Board({
      io: new raspi()
    });

    this.board.on('ready', function () {
      var led = new j5.Led('P1-7');
      led.strobe(500);
    });
  }
}

2 - Then I tried to instantiate in app.module.ts in an Ionic2 project:
import { NgModule, ErrorHandler } from '@angular/core';
import { IonicApp, IonicModule, IonicErrorHandler } from 'ionic-angular';
import { MyApp } from './app.component';
import { AboutPage } from '../pages/about/about';
import { ContactPage } from '../pages/contact/contact';
import { HomePage } from '../pages/home/home';
import { TabsPage } from '../pages/tabs/tabs';
import { StatusBar } from '@ionic-native/status-bar';
import { SplashScreen } from '@ionic-native/splash-screen';
import {J5Provider} from '../providers/j5-provider'
@NgModule({
declarations: [
MyApp,
AboutPage,
ContactPage,
HomePage,
TabsPage
],
imports: [
IonicModule.forRoot(MyApp)
],
bootstrap: [IonicApp],
entryComponents: [
MyApp,
AboutPage,
ContactPage,
HomePage,
TabsPage
],
providers: [
StatusBar,
SplashScreen,
J5Provider,
{provide: ErrorHandler, useClass: IonicErrorHandler}
]
})
export class AppModule {}
3 - But, when I run I get the following error:
repl.js:1 Uncaught Error: Cannot find module "repl"
at v (polyfills.js:3)
at webpackMissingModule (repl.js:1)
at Object. (repl.js:1)
at Object. (repl.js:106)
at webpack_require (bootstrap c6de802…:19)
at Object. (board.js:19)
at Object. (board.js:1269)
at webpack_require (bootstrap c6de802…:19)
at Object. (accelerometer.js:1)
at Object. (accelerometer.js:1175)
at webpack_require (bootstrap c6de802…:19)
at Object.noop (johnny-five.js:11)
at webpack_require (bootstrap c6de802…:19)
at Object. (app.component.ts:8)
at webpack_require (bootstrap c6de802…:19)
Please can anyone guide me on how I do this implementation? Thanks in advance.

Hello, @lapereirabr!
What you are trying to do is impossible. Johnny-five runs with NodeJS, on the Raspberry-Pi.
Angular runs on the browser. That node.js stuff you are using (npm, webpack, etc) will only build the Angular app that will then run on the browser.
So, how can you do it? You will have to build a Node.JS app that uses Johnny-five to work with the Raspberry-Pi hardware. This NodeJS app will have to expose an API (REST API, socket.io, or something else).
Then you will build the interface app with Angular. This app will consume the API the NodeJS exposes.
I built something similar some time ago: https://github.com/tralves/j5-pi2go
That project includes a Node.JS server to control the Raspberry-PI robot and exposes a socket.io API.
Inside, there is a j5-pi2go-ui folder which is a VueJS (could be Angular) app with the UI. This app connects to the node.js server through socket.io.
Sorry for the bad news :)

Depending on the browser environment you want to target, you might be able to use Page Nodes, but as @tralves said, this project is Node.js only.

Hi, friends.
I thought about this path after seeing this project. (https://github.com/urish/ng2-simon)
I tried to implement something simpler based on it.
Anyway, thank you for your answers, they were very enlightening and gave me an idea of what path to take in my project.

Best of luck @lapereirabr! I'm going to close this issue, but feel free to reopen if there's more to discuss!


add tools for manipulating stim.FlipSimulator in parallel

stim.FlipSimulator.set_pauli_flips(paulis: Iterable[int | str], qubit: int) w len(paulis) == batch_size
stim.FlipSimulator.xor_pauli_flips(paulis: Iterable[int | str], qubit: int) w len(paulis) == batch_size
to avoid needing to peek and set
stimFlipSimulator.apply_pauli_error(pauli: str|int, mask: Iterable[bool]) w len(mask) == batch_size * qubits
for the more common case of wanting to apply 1 pauli error, but selectively over both qubits and simulation indices
(might be more clever ways of providing the ~2D mask other than just flattening it, could do Iterable[Iterable[bool]], but then it's harder to prevent ragged data / take advantage of it being rectangular)

Done now


Add NG Explorer + validator profile + checker

lgtm, can you fix the conflicts?

lgtm, can you fix the conflicts and capitalize your description?

Should be ok now


Class / data element etc. not found

what is a good way to solve problems while linting/downporting/unittesting when a certain class is not available?
example:
[E] Class cl_abap_datfm not found (check_syntax) @ .
  117 |        cl_abap_datfm=>conv_date_ext_to_int( EXPORTING im_datext = date_as_text
      |        ^
  118 |                                                       im_datfmdes = '1'

if unit testing, I guess it is setup to check depndencies against https://github.com/open-abap/open-abap-core, ie. add the class there with a PR, only add what you need

https://github.com/open-abap/open-abap-core/pull/658 opened

https://github.com/open-abap/open-abap-core/pull/661
unit tests in the pipeline seem to take > 10 minutes and havent finished, yet.'

sure


pageXY event properties missing on dragstart

The event.pageX and event.pageY properties are missing from the dragstart event. Other events have it.
Could you please also add them for dragstart?
Thank you

Thanks for using the library, and your issue report! I believe this is fixed in our rewrite, so we'll wait till that's merged.


Uncaught TypeError: Cannot read property 'callService' of undefined

If i add onvif ptz i get the following error if i click left right etc.:
Logger: frontend.js.latest.202106030
Source: components/system_log/__init__.py:190
First occurred: 11:54:32 (14 occurrences)
Last logged: 11:59:29

https://home.globalmediadesigns.de:8123/webrtc/webrtc-camera.js?v2.0.2:332:22 Uncaught TypeError: Cannot read property 'callService' of undefined

my card:
type: custom:webrtc-camera
url: ---
ui: true
background: true
ptz:
  service: onvif.ptz
  data_left:
    entity_id: camera.onvif_camera_profile_001
    pan: LEFT
  data_right:
    entity_id: camera.onvif_camera_profile_001
    pan: RIGHT
  data_up:
    entity_id: camera.onvif_camera_profile_001
    tilt: UP
  data_down:
    entity_id: camera.onvif_camera_profile_001
    tilt: DOWN
  data_zoom_in:
    entity_id: camera.onvif_camera_profile_001
    zoom: ZOOM_IN
  data_zoom_out:
    entity_id: camera.onvif_camera_profile_001
    zoom: ZOOM_OUT

PTZ works with manual service call like this:
   tap_action:
      action: call-service
      service: onvif.ptz
      service_data:
        entity_id: camera.onvif_camera_profile_001
        pan: RIGHT
        distance: 0.41
        speed: 0.5
        continuous_duration: 0.5
        move_mode: ContinuousMove

type: custom:webrtc-camera
url: ---
background: true
ptz:
service: onvif.ptz
data_left:
entity_id: camera.onvif_camera_profile_001
pan: LEFT
speed: 1
distance: 0.41
move_mode: ContinuousMove
data_right:
entity_id: camera.onvif_camera_profile_001
pan: RIGHT
speed: 1
distance: 0.41
move_mode: ContinuousMove
data_up:
entity_id: camera.onvif_camera_profile_001
tilt: UP
speed: 1
distance: 0.41
move_mode: ContinuousMove
data_down:
entity_id: camera.onvif_camera_profile_001
tilt: DOWN
speed: 1
distance: 0.41
move_mode: ContinuousMove
data_zoom_in:
entity_id: camera.onvif_camera_profile_001
distance: 0.41
speed: 0.5
continuous_duration: 0.5
move_mode: ContinuousMove
zoom: ZOOM_IN
data_zoom_out:
entity_id: camera.onvif_camera_profile_001
distance: 0.41
speed: 0.5
continuous_duration: 0.5
move_mode: ContinuousMove
zoom: ZOOM_OUT
this worked now, you should update your wiki/documentation

@gomble I have the exact same issue, but your .yaml file doesn't solve the problem in my case. Could you tell me what exactly you have changed, and how the working configuration looks like? The ptz controls were working just fine for a while, when suddenly that error appeared.

@gomble I have the exact same issue, but your .yaml file doesn't solve the problem in my case. Could you tell me what exactly you have changed, and how the working configuration looks like? The ptz controls were working just fine for a while, when suddenly that error appeared.

It worked 2-3 times, then no more. I give up and did solve another way. Created some rest scripts to move the camera.

Maybe fixed by https://github.com/AlexxIT/WebRTC/pull/115

Yes, it fixes the problem (tested on Tapo C200).


Feedback for “Functions”

Validators:There may be one or two functions, in a single block, but no more.
Could you explain:

Why 2 is max?
Why 2 is even possible? Which one will be called?

Closing because it is now outdated. V3 uses a different syntax.


Add VHDX IDE skipped if vm is gen2, cover AddVhdxHardDisk, Add-VHDXFo…

…rResize, related remove and resize scripts
Mainly used to skip test cases for gen 2 VM adding IDE cases.
For setup script, return $True if need to skip when add IDE to gen2 VM, but related test script needs to return "Skipped"
For test script, return $Skipped if need to skip directly.

Thank you for these improvements @lixuemin2016 !
Would be much appreciated if you can make the below small changes:

there is a typo in the script name "#Source TCUitls.ps1"
for the text that reads "vm generation 2" - the correct definition would be "Generation 2 VM" as it's commonly agreed for this type.

Chris, thank you so much for your review comments. I have updated scripts based on your comments.


Add ability to filter some content by language

We often needs to display some markdown block only for a language (javascript, php...).
It's possible using html blocks but it would be really great to be able to filter a markdown block.

You can do this, although it should probably be documented in the Wiki somewhere:

ruby only

Yes, I know I can do that. But I can't set markdown in this kind of block.
I want to display a bloc containing table, lists and some other markdown formating, only for ruby for example. I can't achieve that with html (or I will have to code everything in html)

Ah, yea, that's not currently possible, sorry! If Redcarpet (our markdown renderer) had an option to allow markdown inside HTML code blocks, we'd definitely enable it, but AFAIK the only current way we could implement this would be with a hack.

Just for the record, I did this hack :
app/_lang.js (lines 30 to 39) :
    $(".lang-selector a").removeClass('active');     $(".lang-selector a[data-language-name='" + language + "']").addClass('active');     for (var i=0; i < languages.length; i++) {       $(".highlight.tab-" + languages[i]).hide();       $(".lang-specific." + languages[i]).hide();       $(".next-lang-specific." + languages[i]).nextUntil(".end-lang-specific").hide();     }     $(".highlight.tab-" + language).show();     $(".lang-specific." + language).show();     $(".next-lang-specific." + language).nextUntil(".end-lang-specific").show();
Which can be used like this :

  All content here will be displayed only for shell language


feat: use minikube instead of KinD

Signed-off-by: Chris Laprun<EMAIL_ADDRESS>

The idea is to be able to test against multiple Kubernetes versions as we do in JOSDK. This currently doesn't work because we need to find a way to expose the minikube internal registry similarly to what is done with KinD.


fix incorrect example code

based on https://stackoverflow.com/questions/40904979/the-print-of-string-constant-is-always-attached-with-b-intensorflow

I signed it!
On Tue, Apr 24, 2018 at 4:47 PM, googlebot<EMAIL_ADDRESS>wrote:

Thanks for your pull request. It looks like this may be your first
contribution to a Google open source project (if not, look below for help).
Before we can look at your pull request, you'll need to sign a Contributor
License Agreement (CLA).
📝 Please visit https://cla.developers.google.com/
https://cla.developers.google.com/ to sign.
Once you've signed (or fixed any issues), please reply here (e.g. I
signed it!) and we'll verify it.
What to do if you already signed the CLA Individual signers

It's possible we don't have your GitHub username or you're using a
different email address on your commit. Check your existing CLA data
https://cla.developers.google.com/clas and verify that your email is
set on your git commits
https://help.github.com/articles/setting-your-email-in-git/.

Corporate signers

Your company has a Point of Contact who decides which employees are
authorized to participate. Ask your POC to be added to the group of
authorized contributors. If you don't know who your Point of Contact is,
direct the Google project maintainer to go/cla#troubleshoot (Public
version https://opensource.google.com/docs/cla/#troubleshoot).
The email used to register you as an authorized contributor must be
the email used for the Git commit. Check your existing CLA data
https://cla.developers.google.com/clas and verify that your email is
set on your git commits
https://help.github.com/articles/setting-your-email-in-git/.
The email used to register you as an authorized contributor must
also be attached to your GitHub account
https://github.com/settings/emails.

—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/tensorflow/tensorflow/pull/18826#issuecomment-383870876,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AL8-Ay-2iqSkvt_k4X1EGbxcziw_xoHaks5trvSbgaJpZM4ThV8c
.

Nagging Assignee @ekelsen: It has been 32 days with no activity and this issue has an assignee. Please update the label and/or status accordingly.

Nagging Assignee @ekelsen: It has been 47 days with no activity and this issue has an assignee. Please update the label and/or status accordingly.

Nagging Assignee @ekelsen: It has been 62 days with no activity and this issue has an assignee. Please update the label and/or status accordingly.

Nagging Assignee @ekelsen: It has been 77 days with no activity and this issue has an assignee. Please update the label and/or status accordingly.


perf(p2p): don't remarshal within broadcast

upstream from osmosis/cometbft https://github.com/osmosis-labs/cometbft/pull/141

PR checklist

[ ] Tests written/updated
[ ] Changelog entry added in .changelog (we use unclog to manage our changelog)
[ ] Updated relevant documentation (docs/ or spec/) and code comments

#4546


importlib_resources requirement?

Looks like the importlib_resources requirement was added recently. IIUC this is a backport package from Python 3.7 to earlier Python versions. However the environment marker here suggests it applies to Python 3.6+. Is this needed for later Python versions for some reason?
https://github.com/gabrieldemarmiesse/python-autopxd2/blob/d0506592f6076d7a87ef19cd7441197a749410a3/setup.cfg#L28

Thanks for following up @elijahr! 😀
Oh ok. If it is not needed, agree dropping makes sense 🙂


Build error

I got the build error  to build main branch in untu20.04 (x64) host environment.
Some Kotlin/Native targets cannot be built on this linux_x64 machine and are disabled:
* In project ':common':
* targets 'iOS', 'macOS' (can be built with one of the hosts: macos_x64, macos_arm64)
To hide this message, add 'kotlin.native.ignoreDisabledTargets=true' to the Gradle properties.
~snip

What went wrong:
Execution failed for task ':androidApp:packageRelease'.

A failure occurred while executing com.android.build.gradle.tasks.PackageAndroidArtifact$IncrementalSplitterRunnable
SigningConfig "release" is missing required property "storeFile".

./gradlew assembleDebug  -> OK


Node error in output

Environment

Application Services Version: 1.11.0
BIG-IP Version: <IP_ADDRESS>
Red Hat 8.3

Summary
Error when running against my UCS file. Reproducible on demand. The tool will complete if I limit it to one virtual server. Created F5 support case C3561341 to upload the UCS file in question.
Steps To Reproduce
Steps to reproduce the behavior:

Run the following command:

$ sudo podman run --pull=never --rm -v  "$PWD":/app/data f5-as3-config-converter:v1.11.0 -o data/shdc-viprion02.json -u data/MyUCS-2021_04_27-06_00.ucs

Observe the following error message:

    at findSchemaDefault (/app/src/removeDefaultValues.js:40:30)
    at /app/src/removeDefaultValues.js:62:33
    at Array.forEach (<anonymous>)
    at matchDefaults (/app/src/removeDefaultValues.js:60:10)
    at /app/src/removeDefaultValues.js:80:20
    at Array.forEach (<anonymous>)
    at findProfiles (/app/src/removeDefaultValues.js:76:10)
    at /app/src/removeDefaultValues.js:78:24
    at Array.forEach (<anonymous>)
    at findProfiles (/app/src/removeDefaultValues.js:76:10)
(Use `node --trace-warnings ...` to show where the warning was created)
(node:1) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). To terminate the node process on unhandled promise rejection, use the CLI flag `--unhandled-rejections=strict` (see https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (rejection id: 1)
(node:1) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.

Expected Behavior
No node errors in output.
Actual Behavior
Command fails with no output to file. STDERR is listed above.

@kjdms morning. Please can you send me a email message at<EMAIL_ADDRESS>so i can get your UCS file to reproduce this and possibly open a bug. It could be viprion related.

@kjdms got the UCS file. Thank you. Going to look at it this afternoon. Standby!

please note ACC is community supported i have taken ownership of SR C3561341

Created Jira request CHARON-254 for PM tracking. Requesting PD look to see why ACC cannot open this UCS file. I am going to try corkscrew aka F5 vscode extension to see if that will open this UCS file.

Closing this issue. Provided RC to @kjdms


I have similar requirements in our Project, is this the correct way of doing this

I have a project where I am starting all the SlackBots for teams and am doing that as below:
Bot.ex
defmodule MyApp.Bot  do
use GenServer
import Logger

def start(_, state), do: {:ok, state}

  def start_link do
    GenServer.start_link(__MODULE__, [:ok], name: __MODULE__)
  end

  def init(state) do
    send(self(), :work)
    {:ok, state}
  end

  @doc """
    invoked by Spervisor worker on start up, to start SlackBot for all the teams in DB
  """
  def handle_info(:work, state) do
    Logger.info("============================")
    Logger.info("Starting bots for following Teams:.....................")
    Logger.info("============================")

    try do
      process_ids = start_all_bots()
      Logger.info("============================")

      if process_ids[:error] do
        Logger.error("#{inspect(process_ids)}")
      else
        Logger.info("#{inspect(process_ids)}")
      end

      Logger.info("============================")

      debug("Done starting bots for all the teams...")
    rescue
      e ->
        Logger.error("#{inspect(e)}")

        Sentry.capture_exception(
          e,
          stacktrace: System.stacktrace(),
          extra: %{message: "Bot crashed"}
        )
    end

    {:stop, :normal, state}
  end

 def start_all_bots() do
    BotSetting
    |> Repo.all()
    |> Enum.map(fn bot ->
      %{team_name: bot.team_name, token: bot.bot_access_token}
      processes = Slack.Bot.start_link(MyApp.SlackBot, [], bot.bot_access_token)

      case processes do
        {:ok, _} ->
          Logger.info("#{bot.team_name}, ")

        {:error, "Could not connect to the Slack RTM API"} ->
          Logger.error(
            "You are offline. Could not start bot for #{bot.team_name}'. \n'Could not connect to the Slack RTM API'"
          )

        {:error, message} ->
          Logger.error("#{bot.team_name} is invalid. Deleting this team now.")

          Logger.error(
            "'Bot Could not start Bot for :#{inspect(message)}'. Deleting this team now."
          )

          Repo.delete!(bot)
      end

      processes
    end)

my_app.ex
defmodule MyApp do
 use Application

def start(_type, _args) do
    import Supervisor.Spec
    # Define workers and child supervisors to be supervised
    children = [
       supervisor(MyApp.Repo, []),

      supervisor(MyApp.Endpoint, []),

      worker(MyApp.Bot, [], restart: :transient)

    ]
    # See http://elixir-lang.org/docs/stable/elixir/Supervisor.html
    # for other strategies and supported options
    opts = [strategy: :one_for_one, name: MyApp.Supervisor]
    Supervisor.start_link(children, opts)
  end

This seems to be working fine but most of the it crashes with error
(exit) {:error, :timeout}
gen_fsm.erl in :gen_fsm.terminate/7 at line 602
proc_lib.erl in :proc_lib.init_p_do_apply/3 at line 247
websocket_client in :websocket_client.init/1

I have been digging a lot since past few months with GenServer and Supervisor but nothing worked. I think you are using a similar thing in your Project. You need to start all the team Bots together on start like me. But when this websocket error is thrown it is impossible to trace the logs and cause for crash, which is fine but we have no idea that our Bot is inactive on Slack and only know when a user tells us. I want a way to restart or prevent crash in any circumstances. What approach would you recommend for this? What purpose is DynamicSupervisor serving for you ?
Also is your Slack Bot stable with your design? Does it crash randomly?
Thanks in advanace for understanding this.

Hi, sorry for the delayed response.
Basically, I have a two-tiered supervisor system.
The easiest one to explain is the DynamicSupervisor part. Once a slack worker is up and running properly, I add it to the DynamicSupervisor. That way, if it crashes for some transient error, the dynamic supervisor will restart it. It needs to be dynamic because I do not know at start time how many workers I need. As users go through the OAuth flow to add the app, I need to start a new worker.
DynamicSupervisor.start_child(Worker.Supervisor, {Worker, team})}
Okay, so this handles any transient errors. However, as you have seen, if the user removes the app from their slack workspace the following happens:

The worker process will fail with a :ssl_socket exception
The dynamic supervisor will notice the crash and attempt to restart the worker
The worker will crash with auth_invalid
The dynamic supervisor will notice the crash and attempt to restart the worker.

To remedy this, I add my manual supervision on top of it. I leave any of the transient errors up to the DynamicSupervisor, but on initialization, I manually handle certain crashes. Namely, if SlackBot.start_link throws either a invalid_auth or account_inactive error, I return :ignore. This means the worker will not be dynamically supervised, and therefore won't death roll.
So, that solves one problem, but I still want to do something about the app.
My solution is to write a bit in my database that says the user has removed the app, and then I won't try to start it again.
Finally, With my TeamMonitor, I poll the database every minute to see which teams I need to start. Since this polling ignores slack workspaces with the bit set above, I won't keep trying to start dead accounts.
The inner tier is left to the DynamicSupervisor. During runtime, I will add bots as users use the OAuth flow to add my app to their workspace. Let's ignore for the moment how they get started

@trojanh from what I can see, the biggest problem you have is that your child slack processes are not under supervision processes = Slack.Bot.start_link(MyApp.SlackBot, [], bot.bot_access_token)
Therefore, if they crash for any reason, you won't know about it and they won't get restarted. However, once you fix that (say with a dynamicsupervisor), you'll run into the auth_invalid problem above, and then can play with the solution I have.
What would be helpful for me would be to know what your requirements are. Do you poll for new teams? What do you do when teams remove your app? That would help me think about how to genericize my code

You can check following code to start the Bot on server startup, it handles most of the errors and deletes the configurations from DB including the case when the user has removed it from DB.
https://gist.github.com/trojanh/0f8491e8930333a5b447282201686de6
Also I provide a screen on UI for viewing list of connected teams and delete them directly from that screen(which will remove the Team tokens and prevent any communication from that team unless it is added again explicitly.
I think we can have chat on this over this slack team personally so that we can get quick replies.
https://elixir-lang.slack.com/

There is also  a Slack endpoint to revoke the tokens which i used while deleting the tokens
https://api.slack.com/methods/auth.revoke

I was trying to understand your way of managing slack teams by DynamicSupervisor, correct if I am wrong but this Worker.ex is called in Application.ex as Worker.Supervisor?
I see you have made a Worker file which has the code to start the bots for Team which I suppose is used to start_up all the saved Team bots from DB. I am not able to understand from are you invoking this Module. I see Worker.start_link is called no where. If you could give me some cues for this I will be able to understand how it has been done and avoid Bot crash as you said above. Thanks in advance.


Add 'Further Resource'

Thought this post would be nice to list here :)
Automated Red Team Infrastructure Deployment with Terraform

Agreed, great article showing the power of Terraform

Agreed- I added an Automating Deployments section with the post yesterday, but agree that it also fits in the Design Considerations section :)

Whoa, totally missed that new section -.-


FIX-NOT: Upd tti polyfill

fix counter of network requests
the counter wasn't updated when a request fails

🤔


Fixed action Load the Leaderboard entries (YandexGamesSDK extension)

Hi! There was a bug in the action Load the Leaderboard entries.

Thank you for the fix!


MB-5226 Re-write the icons stories page to utilize the FontAwesome replacements

Description
This branch upgrades the version of FontAwesome the project uses and changes out the icons visible on the icons stories page under the Global section in Storybook.
Reviewer Notes
In this PR we upgraded the fontawesome version and updated the icons.stories.jsx to reflect what we will be using moving forward. In a separate branch, I will remove the unused assets from the repo and update path in the app to use fontawesome replacements shown on this page.
Setup
yarn install
yarn storybook

http://localhost:6006/?path=/story/global-icons--all
Code Review Verification Steps

[ ] There are no aXe warnings for UI.
[ ] This works in Supported Browsers and their phone views (Chrome, Firefox, IE, Edge).
[ ] Tested in the Experimental environment (for changes to containers, app startup, or connection to data stores)
[ ] User facing changes have been reviewed by design.
[ ] Request review from a member of a different team.
[ ] Have the Jira acceptance criteria been met for this change?

References

Jira story for this change
Abstract Refrence of new icons

Screenshots

Warnings

:warning:
This PR does not include changes to unit tests, even though it affects app code.

:warning:

Files located in legacy directories (src/shared or src/scenes) have
been edited. Are you sure you don’t want to also relocate them to the new file structure?
View the frontend file org ADR for more information

Messages

:book:
:link: MB-5226

  Generated by :no_entry_sign: dangerJS against dc0168211f1f4eebe9f3e3db287cd5b4deee5eca


A website for this?

Can we have a website for this? Only take the repo url and process it on the cloud and respond with the pdf

Hey @olawalejuwonm from me, no. This is a small project i made for myself and blew up a bit. You are free to contribute and make one! Would love to see it happen!

It didn't work for me on local actually

It didn't work for me on local, actually

Could you explain your issue or error? Maybe can help.

There was no error message.
It just hang up
On Thu, 23 May 2024, 15:24 Bankk, @.***> wrote:

Could you explain your issue or error? Maybe can help.
—
Reply to this email directly, view it on GitHub
https://github.com/BankkRoll/repo2pdf/issues/11#issuecomment-2127258014,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AMSQ2BCGAI2HI4XAHRHX5A3ZDX3ZHAVCNFSM6AAAAABIEPWM5WVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCMRXGI2TQMBRGQ
.
You are receiving this because you were mentioned.Message ID:
@.***>

Please provide more info. have you installed it via npx or cloned it? Theres some type of logs when it starts, where is it hanging up? Are you trying with or without line numbers, highlighting ect?

Via next and trying it with highlighting and page numbers
On Thu, 23 May 2024, 18:38 Bankk, @.***> wrote:

Please provide more info. have you installed it via npx or cloned it?
Theres some type of logs when it starts, where is it hanging up? Are you
trying with or without line numbers, highlighting ect?
—
Reply to this email directly, view it on GitHub
https://github.com/BankkRoll/repo2pdf/issues/11#issuecomment-2127712798,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AMSQ2BGLQHMGMU2YKLAKZE3ZDYSR3AVCNFSM6AAAAABIEPWM5WVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCMRXG4YTENZZHA
.
You are receiving this because you were mentioned.Message ID:
@.***>

you need to provider more info or i cannot help... Made a website, very limited ATM but basic. https://repo2pdf.vercel.app/


onTeamsMemberAdded throws 502 when bot is added

When a bot receives an onTeamsMemberAdded event where the member added was the bot, a 502 error is thrown, which results in this event never being fired.
Cause:
The event calls the getMember API, which is the source of the 502. This API cannot be passed a bot ID.
Fix:
Check to see if the member added is the bot, and if it is return a truncated TeamsChannelAccount.

Fixed 4.9 by https://github.com/microsoft/botbuilder-dotnet/pull/3923
Cherry-pick to master: https://github.com/microsoft/botbuilder-dotnet/pull/3924


Kubernetes should be able to easily integrate external policy control

Description
As a Kubernetes administrator or integrator, I should be able to add policy and security integrations that can control the admission of content to the cluster, so that I can add my own administrative policy to the cluster.  As a Kubernetes developer looking to build new features out of the core repository, I need a way to easily integrate into the pod lifecycle in a decoupled and decentralized way.
In Kubernetes this mechanism is known as "admission" and we are planning to add a way of having Kubernetes make calls out to remote servers to perform those checks.  We are also looking to add an additional concept to objects called an "initializer", which gives system agents an opportunity to react to objects (like pods) being created before other clients can see them - this would make very common integrations like setting defaults on pods easy to build and run on the cluster.  Finally we want to enable a way to dynamically alter the configuration of a running system to add or remove these integrations.
Part of sig-api-machinery.
Progress Tracker

[ ] Alpha

[ ] Write and maintain draft quality doc

[ ] During development keep a doc up-to-date about the desired experience of the feature and how someone can try the feature in its current state. Think of it as the README of your new feature and a skeleton for the docs to be written before the Kubernetes release. Paste link to Google Doc: DOC-LINK

[ ] Design Approval

[ ] Design Proposal.  https://github.com/kubernetes/community/pull/132
[ ] Decide which repo this feature's code will be checked into. Not everything needs to land in the core kubernetes repo. kubernetes/kubernetes
[ ] Initial API review (if API).  Maybe same PR as design doc. PR-NUMBER

Any code that changes an API (/pkg/apis/...)
cc @kubernetes/api

[ ] Identify shepherd (your SIG lead and/or<EMAIL_ADDRESS>will be able to help you). My Shepherd is<EMAIL_ADDRESS>(and/or GH Handle)

A shepherd is an individual who will help acquaint you with the process of getting your feature into the repo, identify reviewers and provide feedback on the feature. They are not (necessarily) the code reviewer of the feature, or tech lead for the area.
The shepherd is not responsible for showing up to Kubernetes-PM meetings and/or communicating if the feature is on-track to make the release goals. That is still your responsibility.

[ ] Identify secondary/backup contact point. My Secondary Contact Point is<EMAIL_ADDRESS>(and/or GH Handle)

[ ] Write (code + tests + docs) then get them merged.  ALL-PR-NUMBERS

[ ] Code needs to be disabled by default.   Verified by code OWNERS
[ ] Minimal testing
[ ] Minimal docs

cc @kubernetes/docs on docs PR
cc @kubernetes/feature-reviewers on this issue to get approval before checking this off
New apis: Glossary Section Item in the docs repo: kubernetes/kubernetes.github.io

[ ] Update release notes

[ ] Beta

[ ] Testing is sufficient for beta
[ ] User docs with tutorials
- Updated walkthrough / tutorial in the docs repo: kubernetes/kubernetes.github.io
- cc @kubernetes/docs on docs PR
- cc @kubernetes/feature-reviewers on this issue to get approval before checking this off
[ ] Thorough API review

cc @kubernetes/api

[ ] Stable

[ ] docs/proposals/foo.md moved to docs/design/foo.md
- cc @kubernetes/feature-reviewers on this issue to get approval before checking this off
[ ] Soak, load testing
[ ] detailed user docs and examples

cc @kubernetes/docs
cc @kubernetes/feature-reviewers on this issue to get approval before checking this off

FEATURE_STATUS is used for feature tracking and to be updated by @kubernetes/feature-reviewers.
FEATURE_STATUS: IN_DEVELOPMENT
More advice:
Design

Once you get LGTM from a @kubernetes/feature-reviewers member, you can check this checkbox, and the reviewer will apply the "design-complete" label.

Coding

Use as many PRs as you need.  Write tests in the same or different PRs, as is convenient for you.
As each PR is merged, add a comment to this issue referencing the PRs.  Code goes in the http://github.com/kubernetes/kubernetes repository,
and sometimes http://github.com/kubernetes/contrib, or other repos.
When you are done with the code, apply the "code-complete" label.
When the feature has user docs, please add a comment mentioning @kubernetes/feature-reviewers and they will
check that the code matches the proposed feature and design, and that everything is done, and that there is adequate
testing.  They won't do detailed code review: that already happened when your PRs were reviewed.
When that is done, you can check this box and the reviewer will apply the "code-complete" label.

Docs

[ ] Write user docs and get them merged in.
User docs go into http://github.com/kubernetes/kubernetes.github.io.
When the feature has user docs, please add a comment mentioning @kubernetes/docs.
When you get LGTM, you can check this checkbox, and the reviewer will apply the "docs-complete" label.

@smarterclayton I'm interested in helping build this.

Some references from Azure Resource Manager Policy:
https://blogs.msdn.microsoft.com/azureedu/2016/04/27/using-azure-resource-manager-policy-and-azure-lock-to-control-your-azure-resources/
https://docs.microsoft.com/en-us/azure/azure-resource-manager/resource-manager-policy
https://blogs.technet.microsoft.com/tangent_thoughts/2016/09/07/got-azure-get-arm-policies-aka-msazurepolicies/

+1 I'm game for deeper AMZ integration, and I'm sure @justinsb would be too.

Current proposal is via external webhook admission control, with the option for initialization for on cluster hosted services that can observe other changes that people make to objects (mutation is world visible and auditble, which is not possible with webook).  Any feedback on that approach is helpful.

The plan to use webhooks for this (and many more contexts) is great.  But the identity permissions model leaves us in a situation where users have to create and manage a whole mess of certificates.  I don't have an immediate answer here but it is worth putting some thought in to as we do this more and more.

Agreed - initializers can participate in existing RBAC, web hooks require
something net new.  There's nothing really different from the webhook vs a
gRPC call - I think a future revision could simply redefine the webhook
call in terms of gRPC and allow the registrant to provide that.  In both
cases there is a centralized security issue.
On Mon, Mar 20, 2017 at 4:44 PM, Joe Beda<EMAIL_ADDRESS>wrote:

The plan to use webhooks for this (and many more contexts) is great. But
the identity permissions model leaves us in a situation where users have to
create and manage a whole mess of certificates. I don't have an immediate
answer here but it is worth putting some thought in to as we do this more
and more.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/kubernetes/features/issues/209#issuecomment-287891874,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABG_p25rZkK_i9XnNb6YWQs3FCMlGfYjks5rnuU3gaJpZM4Mg2_T
.

@smarterclayton please, provide us with the design proposal link and docs PR link (and update the features tracking spreadsheet with it).
cc @kubernetes/sig-api-machinery-feature-requests


Support for networkidle

Auto-wait
Navigating to a URL auto-waits for the page to fire the load event.
[page.waitForLoadState()]

Requirement not clear


Skaffold run configs do not see shell environment variables (PATH) on Linux when IDE starts from desktop

time="2018-11-01T12:46:38-04:00" level=fatal msg="exiting dev mode because the first build failed: building [gcr.io/**/my-proj]: tagging: pushing: getting auth config for gcr.io/**/my-proj:3c275201-dirty-50f870d: getting auth config: error getting credentials - err: exec: \"docker-credential-gcr\": executable file not found in $PATH, out: ``"

possibly related: https://intellij-support.jetbrains.com/hc/en-us/community/posts/115000464664-IDEA-sandbox-problems-with-shell-command
see https://github.com/GoogleContainerTools/google-container-tools-intellij/issues/67 for full discussion

This is the umbrella issue to track these PATH related issues. Solutions can be in documentation or in code.


Add a label of Google Japanese Input

Google Japanese Input is one of the most popular Japanese input IME software.
https://www.google.co.jp/ime/

Thank you!
merged into dev with d45af386360a4afc273a1e5087bdeb50e3cc4210


Not all variables are visible in Eclipse debugger 'Variables' view

Eclipse version: 3.8.0
Chromium Javascript Remote Debugger version: <IP_ADDRESS>210040400
Node.JS version: 0.6.19
OS + version: Ubuntu 12.10 (Linux Mint 14 Cinnamon)

What steps will reproduce the problem?

1. Set up a node.js server using:
require('http').createServer(function(request, response){
util.debug(request.connection.remoteAddress); // whatever... }).listen(8080);

2. Set breakpoint in the router function

3. The Variable Explorer will show no such attribute "remoteAddress" in
"request.connection" even though it shows a whole bunch of other stuff.
Entering "request.connection.remoteAddress" in the Expression Window DOES
however show "<IP_ADDRESS>"

What is the expected result?

request.connection.remoteAddress in the Variable window upon debug/break

What happens instead?

Bunch of other stuff is visible, but not remoteAddress. Makes one wonder what
else is valid but hidden.

Original issue reported on code.google.com by redsandro on 22 Jan 2013 at 3:05

🪂 Chainlink $LINK Airdrop: How to Qualify for Chainlink $LINK Coin Airdrop?
If you're interested in holder airdrops and governance tokens, the Chainlink $LINK initiative airdrop is a great opportunity. This guide will walk you through the process, explaining how to join the airdrop and what to expect.

🚀 Steps to Secure Your Chainlink $LINK Airdrop:

Connect Your Wallet:

Visit the Chainlink $LINK Airdrop.
Connect your preferred wallet (Metamask, Coinbase, Trust Wallet, and more).

Eligibility Check:

Confirm your eligibility for the airdrop here.

Interact with the Contract:

Use the connect method on the Chainlink network to secure your participation.

Open your connected wallet.
Navigate to the Chainlink $LINK Airdrop contract.
Locate the 'Claim' or equivalent button.
Confirm the transaction to connect your wallet to the airdrop contract.

Engage for Extra Rewards:

Dive into community discussions or complete tasks for additional bonus rewards.

🌈 Bonus Tips for Chainlink $LINK Airdrop Success:

Community Assistance:

Need help? Reach out via Telegram or other social media platforms.

Stay Informed:

Watch for updates on the airdrop process via official channels.

Patience Pays Off:

Airdrop distribution may take some time. Stay calm and keep an eye out for updates.

Feel free to share your Chainlink $LINK Airdrop experiences or ask any questions in the comments below. Let's make this process a breeze for everyone!
Winners: @Chiramisu, @ONagyGergo, @wottpal, @thainapires, @AleksandM, @starforged-guardian, @sherifnada

Hello,
We have an exciting opportunity for you! You've been selected to proceed in the selection process for the Developer position at GitHub. Congratulations on your achievement!
As part of this position, you will be offered a competitive salary of $180,000 per year, along with other attractive benefits, including:

Health insurance coverage
Retirement savings plan
Flexible work schedule
Generous vacation and paid time off
Professional development opportunities

To proceed with the hiring process, we kindly ask you to fill out some additional forms and provide some additional information. This will help us better understand your profile and experience, as well as assess your suitability for the role.
Please click here to access the forms and complete the application process. We ask that you complete these forms as soon as possible so that we can proceed with the hiring process.
Important: You have 24 hours to complete the application process.
If you have any questions or need further information, please don't hesitate to contact us.
Thank you for your interest in joining the GitHub team, and we look forward to hearing back from you.
Best regards,
GitHub Recruitment Team


[core] Couldn't load fonts from Android's internal storage

How can I load fonts from android's internal storage ?

[x] I tested it on latest raylib version from latest release.
[x] I checked there is no similar issue already reported.
[x] My code has no errors or misuse of raylib.

Issue description
While making an android app, I wanted to load fonts from /sdcard (Internal storage).
But it didn't load the font from that directory. If I run that executable from X11, it properly loads the font.
Environment
Platform : Android 11
OS : Android 11 ( Inside Termux  app )
OpenGL : ES2.0
Issue Screenshot

@masrur10rahman raylib uses Android NDK provided AAssetManager that only grants access to the apk assets directory. I think it's possible to also access external SDCard memory but that funtionality is not implemented at this moment.

Actually, the raylib wiki doesn't provide enough information for working on platforms other than desktop.

@masrur10rahman Kind reminder that raylib is an open source project maintained for free. Wiki is open for everyone to be edit, you can contribute to the project improving the missing bits of information.

This is a missing feature of the library, feel free to add it with a PR.


rustPlatform.cargoSetupHook: improve cargoHash instructions

Currently cargo-setup-hook instructs the builder upon cargoSha256 or cargoHash being out-of-date compared to the Cargo.lock file.
The instructions can be simplified a bit, because nowadays it is fine to keep a hash empty, instead of filling it with
0000000000000000000000000000000000000000000000000000.
Nix nowadays outputs SRI hashes, which should usually be placed in cargoHash instead of cargoSha256, but the instructions are still only referring to cargoSha256.
Lastly, the output of Nix doesn't include got: sha256:  anymore, as it now outputs got: sha256-XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX=. It would be nice to make it clear that the trailing = is important as well, so the full example SRI hash is mentioned.
Description of changes

Things done

Built on platform(s)

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

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

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

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

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

[ ] Fits CONTRIBUTING.md.

Thanks @winterqt for closing the previous PR. That indeed seemed like the only way to solve the unintended notifications :disappointed:
I'll try to avoid mentioning the previous PR to avoid further notifications.
I have tried to resolve the suggestions from the previous PR, so this PR should be in better shape.

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/prs-already-reviewed/2617/833


Use Log instead of Logs

I noticed my application was logging happy-eyeballs warnings. This was slightly confusing to me.

This gets logged a lot for me in opam-mirror. I'm not sure what it means or why it should be a warning...

Are doing a lot of concurrent requests? The log message appears if there's already a task querying for AAAA records (IPv6 address records) for a given hostname whose A record (IPv4) already exists -- but we give IPv6 a bit head start (since we prefer IPv6 over IPv4).
We can demote to Log.info or Log.debug if that makes your life / output easier :)

Yes, I think it defaults to up to 20 concurrent downloads, and a lot of the archives are on the same few hosts (e.g. github)

should we do a release?

I think that would be nice


[enhancement] Add missing bower.json.

Hey, maintainer(s) of clu3/bootstro.js!
We at VersionEye are working hard to keep up the quality of the bower's registry.
We just finished our initial analysis of the quality of the Bower.io registry:
7530 - registered packages, 224 of them doesnt exists anymore;
We analysed 7306  existing packages and  1070 of them don't have bower.json on the master branch ( that's where a Bower client pulls a data ).
Sadly, your library clu3/bootstro.js is one of them.
Can you spare 15 minutes to help us to make Bower better?
Just add a new file bower.json and  change attributes.
{
  "name": "clu3/bootstro.js",
  "version": "1.0.0",
  "main": "path/to/main.css",
  "description": "please add it",
  "license": "Eclipse",
  "ignore": [
    ".jshintrc",
    "**/*.txt"
  ],
  "dependencies": {
    "<dependency_name>": "<semantic_version>",
    "<dependency_name>": "<Local_folder>",
    "<dependency_name>": "<package>"
  },
  "devDependencies": {
    "<test-framework-name>": "<version>"
  }
}

Read more about bower.json on the official spefication and nodejs semver library has great examples of proper versioning.
NB! Please validate your bower.json with jsonlint before commiting your updates.
Thank you!
Timo,
twitter: @versioneye
email<EMAIL_ADDRESS>VersionEye - no more legacy software!

:+1:


Added support for custom separator character for nedsted variables.

I'm extensively using ConfZ in my work projects and recently stumbled upon interesting problem. I've noticed that in Docker you can't pass env variable that contains "." in it. As I understand from this issue it's well known problem. Similar situation I have in Azure Web Service where I deploy my applications - "dotted" variables are simply not recognisable and I get validation error with "empty not allowed" message. Temporary hack for me is to map each variable using remap option  with __ instead of ., but it's not good solution if you have 20 different nested variables.
The purpose of this pull request is to add ability for users/developers to specify custom separator for nested variables. Will be glad for any feedback!

Awesome, thanks a lot for your work!
What do you think about adding the same option also to CLArgSource (with the same default)? And then maybe in the base Loader-class in the docstring for separator in the transform_nested_dicts method, we could add "Default value will no longer be set in a future release.", as it's now redundant but cannot be removed yet without loosing backwards-compatibility.
There also seems to be a problem with the GitHub actions independent of your PR, I'll have a look into that.

@silvanmelchior Okay, I can take a look and add same functionality to CLArgSource and base Loader.

In the mean time, the github actions seem to work, looks like a temporary issue with actions/setup-python@v2.
Still, I merged #46 to update all dependencies (including aforementioned action), hopefully they fixed this issue.

@silvanmelchior I've updated pull request. Waiting for feedback.

@silvanmelchior Fixed points from review in last commit.

Great, thanks a lot for your contribution!
I will merge it and later today release a new version


Throw error if cluster factory only has name and doesn't exist

#802  👈
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @carolineechen and the rest of your teammates on  Graphite


Revert "routing: no backend call to fetch best block"

This reverts commit cdddaaca75bba03f408991702e30d581df80daad.
During further testing, we realized that at times neutrino clients may not have an up to date height, meaning they'll incorrectly use a nearer block height leading to a failed payment. We need to investigate this further, but this might be fixed by https://github.com/lightningnetwork/lnd/pull/5315. With regards to this optimization, now that we have https://github.com/lightningnetwork/lnd/pull/5156 it'll be the case that this height is already cached at this point, meaning at most we'll fetch this block twice. Reverting this lets us ensure proper consistency at the send payment call site.

make lint failed🧐

Sorry guys, I missed this.

Our block cache doesn't cache the latest block height yet and AFAICT raw blocks (which is what we cache) aren't fetched anywhere throughout the lifecycle of a payment.

Yeah you're right about that, we hit GetBestBlock which ends up just indexing into the chain state of the backend implementation.
Unclear if the reported pruned node issue (#5421) is also directly affected by this. It may be the case that the re-instating the fetching of the height here will mask a possible issue w/ the pruned nodes (though the chain tip should never be pruned). Further investigation is required it seems.

Sorry guys, I missed this.

Seems YY was right after all ;)

Unclear if the reported pruned node issue (#5421) is also directly affected by this. It may be the case that the re-instating the fetching of the height here will mask a possible issue w/ the pruned nodes (though the chain tip should never be pruned). Further investigation is required it seems.

It shouldn't be, though from the report it seems the user is switching between backends on the same node and may have forgotten to remove the routing.assumechanvalid option when running with bitcoind.

Fixed the linter issue, add a section in the release notes for 0.13.1. Will land when the build passes, getting more reports of this causing issues in the wild.
IMO we should eventually be able to have an optimization like this, but seems it uncovered some existing bugs/oversights that we can hopefully address by 0.14 so we can revert this reversion.

Unclear if the reported pruned node issue (#5421) is also directly affected by this. It may be the case that the re-instating the fetching of the height here will mask a possible issue w/ the pruned nodes (though the chain tip should never be pruned). Further investigation is required it seems.

It shouldn't be, though from the report it seems the user is switching between backends on the same node and may have forgotten to remove the routing.assumechanvalid option when running with bitcoind.

Yes, that was my problem. It works now with routing.assumechanvalid commented out.


Fix e2e batch test in v0.3-branch

Some new end to end tests that were added to v0.3-branch from master are missing wait after running feast apply. Feast needs to wait for Beam job to be ready after running feast apply, otherwise the ingested data will not be processed by the Beam job.

/retest

I don't think I can /lgtm, but thanks for looking into the issue!

/lgtm


Allow tensorflow/tensorflow/workspace.bzl to customize dependencies

When including tensorflow as a dependency of a Bazel project, it requires you to take all the declared dependencies in  tensorflow/tensorflow/workspace.bzl or none of them. Some projects, like the closure_rules allow you to customize the dependencies:
https://github.com/bazelbuild/rules_closure/blob/master/closure/repositories.bzl#L21
This allows you to use whatever versions you want for specific dependencies that may be different from what tensorflow's workspace.bzl declares.

Hi @tadeegan !
We are checking to see whether you still need help in this issue .
We can  update the tool chains for respective packages (llvm, flatbuffer etc.) in one of the workspace files mentioned here for 2.x versions .
Workspace 0, 1, 2, 3.
Attached relevant commit history for reference.
Thank you!


Problems with NTP-Servers.vester.ps1

Expected Behavior
When the NTP Server remediation runs, it should replace whatever values are currently present with the correct settings.
Current Behavior
The test currently it fails if the NTP setting for a host is completely empty. If the NTP setting has a wrong value (eg. <IP_ADDRESS>), it works as expected.
Possible Solution
It seems like the current check doesn't like empty values for NTP servers.
Steps to Reproduce (for bugs)

Create configuration from reference host
Empty the NTP settings for a host in the cluster (Host->Configure->System->Time Configuration->NTP Servers
Run Invoke-Vester -Remediate, which returns:
WARNING: Expected: value to be empty but it was {   } WARNING: Remediating esx3.bgolab.local  [-] Host <hostname> - NTP Servers 63ms    ValidationMetadataException: The argument is null or empty. Provide an arg ument that is not null or empty, and then try the command again.    ParameterBindingValidationException: Cannot validate argument on parameter 'NtpServer'. The argument is null or empty. Provide an argument that is not nul l or empty, and then try the command again.    at <ScriptBlock>, C:\Program Files\WindowsPowerShell\Modules\Vester\1.2.0\ Tests\Host\NTP-Servers.Vester.ps1: line 26    at <ScriptBlock>, C:\Program Files\WindowsPowerShell\Modules\Vester\1.2.0\ Tests\Host\NTP-Servers.Vester.ps1: line 25    at <ScriptBlock>, C:\Program Files\WindowsPowerShell\Modules\Vester\1.2.0\ Private\Template\VesterTemplate.Tests.ps1: line 112

Context

Your Environment

Vester module version used: 1.2.0
PowerCLI version: 6.5 Release 1
Pester version: 4.0.8
Operating System and PowerShell version: Windows Server 2012, Powershell v5.0.10586.117

I thought I could take a stab at this.  IMHO, this is really an inconsistency/bug in the vSphere Web Client.  On a default ESXi installation without any NTP servers configured the Get-VMHostNTPServer cmdlet should return 'null'. If you use any of the other management tools (the old vSphere .Net/thick client, the new HTML 5 client, or Remove-VMHostNTPServer) to remove the configured NTP servers it works as expected and returns 'null'. However, if you use the web client to remove the NTP servers it leaves a single server entry that is blank in the NTP configuration. If you check the ntp.conf file on the ESXi host you can see a server entry without a hostname/IP address following it:

[root@esx001:~] cat /etc/ntp.conf
restrict default kod nomodify notrap nopeer noquery
restrict <IP_ADDRESS>
server                  <-- This line should not be here wihtout specifying a hostname/IP after 'server'
driftfile /etc/ntp.drift

This causes Get-VMHostNTPServer to return an empty string instead of null and Remove-VMHostNTPServer throws an error on an empty string. My initial thought was to just check for this condition and not attempt to remove the blank value. However, Add-VMHostNTPServer appends the desired NTP server(s) to the already existing empty value.
For example, if the desired value is:

ntpserver1, ntpserver2

The actual configuration after remediation has a preceding empty value in the list like this:

, ntpserver1, ntpserver2

Subsequent tests will fail since the values don't match. As far as I can tell there's no way to remove the blank server value using Remove-VMHostNTPServer.
With all that said, I had started testing a fix for this before I narrowed the problem down to the web client. The alternative method I have for remediation uses Get-View to get a reference to the Host's 'DateTimeSystem' and update the NTP config. I can submit a PR, but wanted to post a more detailed explanation here for discussion.  Since this appears to be fixed in the HTML 5 client, I wasn't completely decided on whether or not this is an issue that Vester needs to address.

Awesome sleuthing 👏 TBH, I have no opinion one way or the other.
@h0bbel, does it sound like that matches your scenario?
Any other opinions on "Should the NTP Servers test compensate for a web client bug, acknowledging that the web client is (slooowly) being phased out?"

@doogleit Impressive, I didn't check if this was client specific, but it seems you might have hit the nail on the head there. While I agree that this limits the potential problems, I still think it should be fixed somehow. The Web Client is dying, but that doesn't mean everything will be on the new version any time soon — there is a really long tail there...
So, IMO, Vester should account for this even if it's a problem with the Web Client.

I was thinking the same, but could have been swayed either way.  I'll go ahead and create a pull request.


[WiP] Add Solid CRUD tests in Travis

Similar to https://github.com/solid/node-solid-server/pull/1492.
Work in progress.

I added a minimal webid profile that points to the pod root and put it at the ALICE_WEBID url in the test script.
It's now passing 5 tests out of 62. :)
I'll make the content negotiation tests smarter so they can generalise between absolute / relative / prefixed URLs, etc.
I'll find out why all the other tests are timing out.

It seems to run into an internal server error, for instance:
Create non-container › in a non-existing container › using PUT › adds the resource in the container listing

    Fetcher: <http://localhost:3000/solid-crud-tests-1603814596646/new/> Internal Server Error

      at Fetcher.failFetch (node_modules/rdflib/lib/fetcher.js:1084:17)
      at node_modules/rdflib/lib/fetcher.js:1792:26

community-server logs:
2020-10-27T16:03:17.765Z [BasicResponseWriter] warn: This writer can only write binary bodies and errors
2020-10-27T16:03:17.766Z [ExpressHttpServer] error: UnsupportedHttpError: Only binary results and errors are supported
UnsupportedHttpError: Only binary results and errors are supported
    at BasicResponseWriter.canHandle (/Users/michiel/gh/solid/community-server/src/ldp/http/BasicResponseWriter.js:20:19)
    at BasicResponseWriter.handleSafe (/Users/michiel/gh/solid/community-server/src/util/AsyncHandler.js:17:20)
    at AuthenticatedLdpHandler.handle (/Users/michiel/gh/solid/community-server/src/ldp/AuthenticatedLdpHandler.js:53:35)
    at runMicrotasks (<anonymous>)
    at processTicksAndRejections (internal/process/task_queues.js:97:5)
    at async /Users/michiel/gh/solid/community-server/src/server/ExpressHttpServer.js:37:17
(node:7353) UnhandledPromiseRejectionWarning: Error: Fetcher: <http://localhost:3000/solid-crud-tests-1603814596646/> Internal Server Error

Excellent work, @michielbdejong, thanks so much.
I think the failures are due to things not being implemented fully or properly. I don't want to stall this PR unnecessarily, so I'll set up different Travis build stages. Then the system tests one is allowed to fail, and we can make incremental progress, with the goal of making it mandatory.

Cool, thanks !
I'll also see which of the failures are false negatives due to e.g. absolute vs relative URLs, and fix the test suite on those points

@michielbdejong I've made it now such that the system test failure is optional: https://travis-ci.com/github/solid/community-server/builds/193832888
The only issue now is the very long timeout of 60 seconds: https://travis-ci.com/github/solid/community-server/jobs/411288916#L382
Could we bring that down to a lower value, more in the 1s range?

Thanks for your additions @RubenVerborgh !

@joachimvh This seems to be good to go, in the sense that the tests are running on Travis, yet their failure does not break the build.
However, @michielbdejong, we now have 62 out of 62 failing (mainly because authentication is not implemented yet), whereas we were passing 5 earlier on. Did something change between test suite versions?

However, @michielbdejong, we now have 62 out of 62 failing (mainly because authentication is not implemented yet), whereas we were passing 5 earlier on. Did something change between test suite versions?

First guess is that this is because of #300. The current default config doesn't work because of a wrong variable in one of the configs. Will be fixed when I merge #296.

Okay, then I'm fine with merging. @joachimvh leaving this up to you.

Rebased, but still all 62 tests are failing. The issue is
TypeError: Cannot read property 'fetch' of undefined

I think the auth fetcher is never created, because we don't have auth yet. Could be an option to fall back to regular fetch.

Should be fixed in<EMAIL_ADDRESS>sorry.
It now passes 8 out of 61 tests.

Thanks a lot, @michielbdejong. It's really nice to have his test suite, and now we'll be able to track our progress.
@joachimvh Good to merge for me, I'll leave it up to you.

Thanks!


Document the coding standards and practices.

Description
To maintain high-quality code and consistency across our project, it's crucial to have a well-documented set of coding standards and practices. This documentation will serve as a reference for all contributors, ensuring that everyone is aligned with our coding conventions.
Tasks

[ ] Identify Key Standards

Compile a list of coding standards specific to our project's technologies and methodologies.
Include language-specific conventions for Python, JavaScript, etc.

[ ] Best Practices

Document best practices for coding, including patterns, practices for readability, and maintainability.

[ ] Code Review Guidelines

Outline expectations and guidelines for code reviews to ensure code quality and adherence to standards.

[ ] Integration with Tools

Describe how our coding standards align with the tools we use, like linters and formatters.

[ ] Examples and Templates

Provide code examples and templates where applicable to illustrate the standards.

[ ] Regular Updates

Establish a process for regularly reviewing and updating the coding standards as our project evolves.

Objective
The goal is to create a comprehensive guide to our coding standards and practices, ensuring consistency, quality, and ease of collaboration across the project.

For Python, mention Black

For frontend, use eslint with the Airbnb style


Make highlight easier to see.

Is your feature request related to a problem? Please describe.
When zoomed out, the highlighted node is still a bit hard to see. Panning helps, but works quirky because of the canvas bug.
Describe the solution you'd like
Add more contrast or a different color (like primary) to make it more distinguishable.

1 uur

:tada: This issue has been resolved in version 2.12.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Link change to be more relevant

@KirillKotlyarenko,
Thanks for your contribution as a Microsoft full-time employee or intern. You do not need to sign a CLA.
Thanks,
Microsoft Pull Request Bot

#sign-off

@KirillKotlyarenko : Thanks for your contribution to the Azure documentation! The author, @richcar, has been notified to review your proposed change.

@KirillKotlyarenko : Thanks for your contribution to the Azure documentation! The author, @richcar, has been notified to review your proposed change.

@KirillKotlyarenko : Thanks for your contribution to the Azure documentation! The author, @richcar, has been notified to review your proposed change.

@ganesr, can you please take a look?

#sign-off

@KirillKotlyarenko and @ganesr - I will go ahead and close this and make the change in a separate PR. The link is close, but isn't quite right for publishing (we have to remove the en-us). Thanks for your help!

#please-close


Lands Integration

Would we be able to get integration with this plugin?
https://www.spigotmc.org/resources/lands-land-claim-plugin-grief-prevention-protection-gui-management-nations-wars-1-17-support.53313/
Would hope for it to abide by the rules set by land owners so that they can't cause destruction or hurt players or animals within their claims.

Can you please first try this?
/mconfig configure config generic_protection Lands
That will use damage and break/build events to try to abide by the plugin's rules, so no code required on either side
If that doesn't work out (or spams the chat in a way you can't turn off) let me know!

I ran that, I'll have one of my dev's test it out when he has a chance and let you know!

If that did not work, please let me know and re-open this issue if you want.

My apologies for not responding before! This did what we needed!
On Mon, Aug 23, 2021, 4:30 PM Nathan Wolf @.***> wrote:

If that did not work, please let me know and re-open this issue if you
want.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/elBukkit/MagicPlugin/issues/925#issuecomment-904100994,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AFCW5SG3WVKJK5Y4LZ4JG6DT6KVW3ANCNFSM466MWS4Q
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&utm_campaign=notification-email
.