No compatible source was found for this media

When opening the stream I do get the following message: No compatible source was found for this media.
I do have the program running on my laptop (Macbook Air). So opening the webviewer via http://localhost:3000/

Desktop (please complete the following information):

MacOS Monterey 12.0.1
Chrome Version 96.0.4664.55

F1TV Account (please complete the following information):

Pro Subscription
Netherlands

Same Issue:
Windows 10 19042.1288
Chrome Version 96.0.4664.45
Pro Subscription
US
Issue does not occur using Firefox (current workaround)

Thanks for letting me know about this! I'll look into it and try to get a fix

Quick status update on this issue. I'm trying to reproduce it, although, everything seems to be working fine for me when viewing replays (I only have the F1TV Access subscription at this time).
I assume you guys are trying to watch content related to the Saudi Arabian GP? Would you mind sending me the output in the console tab of the Chrome Dev Tools? Also, could you email (specifically email because it could contain sensitive information) me the HAR file from the network tab? Just press the button according to the image below.

If you could do that, that would be great! Thanks!

Hi John,
Please find attached the output.
The HAR file will be sent desperately because of it’s size. I already got 1 email returned because of the size.
Regards,
Erwin

Op 4 dec. 2021, om 19:35 heeft John Arrandale @.***> het volgende geschreven:
Quick status update on this issue. I'm trying to reproduce it, although, everything seems to be working fine for me when viewing replays (I only have the F1TV Access subscription at this time).
I assume you guys are trying to watch content related to the Saudi Arabian GP? Would you mind sending me the output in the console tab of the Chrome Dev Tools? Also, could you email (specifically email because it could contain sensitive information) me the HAR file from the network tab? Just press the button according to the image below.
https://user-images.githubusercontent.com/22622963/144720706-5964b3da-c027-4cda-a951-4e9cde88f107.png
If you could do that, that would be great! Thanks!
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub https://github.com/bootsie123/F1-Web-Viewer/issues/50#issuecomment-986073173, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAHRA3AWJPNUI7B4U5VDQRTUPJNONANCNFSM5JLTFBNQ.
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&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

I needed to compress the file.
Op 4 dec. 2021, om 19:35 heeft John Arrandale<EMAIL_ADDRESS>het volgende geschreven:
Quick status update on this issue. I'm trying to reproduce it, although, everything seems to be working fine for me when viewing replays (I only have the F1TV Access subscription at this time).
I assume you guys are trying to watch content related to the Saudi Arabian GP? Would you mind sending me the output in the console tab of the Chrome Dev Tools? Also, could you email (specifically email because it could contain sensitive information) me the HAR file from the network tab? Just press the button according to the image below.
[Screenshot_9]https://user-images.githubusercontent.com/22622963/144720706-5964b3da-c027-4cda-a951-4e9cde88f107.png
If you could do that, that would be great! Thanks!
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://github.com/bootsie123/F1-Web-Viewer/issues/50#issuecomment-986073173, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AAHRA3AWJPNUI7B4U5VDQRTUPJNONANCNFSM5JLTFBNQ.
Triage notifications on the go with GitHub Mobile for iOShttps://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Androidhttps://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

I checked Chrome with the previous race and quali and there it still works with Chrome. So it looks like it is limited to the streams from Saudi Arabia. Maybe F1 TV has changed some things.

It seems Qatar serves up an m3u8 playlist, but Saudi is serving up an 'mpd' file. Never heard of it, but looks like an XML format for mutli-bitrate streams.
https://fileinfo.com/extension/mpd

Same this morning for F2 practise in chrome. I have it working with Safari and Firefox.

Same problem here for Abu Dhabi during Practice 1.
I'm on Chrome with an F1 Pro subscription. All channels show that no compatible sources have been found.
However, if I try to replay a Practice session from Last race there's no problem.

Hi everyone! So sorry for letting this issue sit here. I've gotten pretty busy these last few months and haven't had much time to work on this project. However, it's come to my attention that F1TV may have changed the file format for replays as well. So, I'm going to be making this a high priority or myself and address it once and for all.
I'm hoping to get time this weekend to work on a fix. I'll give an update on where I stand Monday.
Thanks in advanced for your patience with this!

Hi all! Apologies for no update like I promised. Don't worry though, I am currently working on this as we speak. I also have off for the next 4 days. So, I'm going to set aside all of my time to work on this. As of right now, I'm currently working on issue #35 since it's affecting the replays in general right now.
It also seems like everything is being served as m3u8 and the moment instead of mpd. However, I'll work on adding compatibility of mpd's incase they switch back again

Hey, I'm getting this for the testing session now, I've tried a few races from last season the ones I tried seemed to work.
I'm running in docker, just pulled the latest image and I built the image myself, neither worked for testing.
Thanks for all your good work

Thanks for letting me know! I'll definitely take a look at this. I assume it's probably because they switched to the mpd format. I'll see what I can do in the meantime. I'm currently using F1TV Access, so I may not be able to reproduce the issue.
Is this only when watching preseason testing live? Or do you get the same problem with preseason replays too?

I just tried the world feed on race session for the last 3 races of last season and they all worked

Yup! Using contrib-dash should do the trick. Pretty simple fix. Just need to properly test it to make sure

oddly I couldn't get my newly built image to work but https://live.sox.pm/ worked fine for me... thank you for being on the ball :D

The fix isn't quite pushed to the master branch yet. I should have enough time today to get it done. If not, definitely by tomorrow unless I run into issues pushing to Dockerhub again. I'll update this comment once it's complete. Unfortunately, since I have F1TV Access, I won't be able to properly test it, but I'll try with a different source and of course refer to the fork from @iebb

@Plebster Just pushed a fix to the master branch. Would you mind giving it a test for me? I currently have F1TV Access so unfortunately I can't watch the latest replays from testing yet to actually test it. I did try a few mpd streams that also included DRM though and it seemed to work.
If so, thanks so much!

I've pulled from master and created an image... I can get the replays of testing to work but not the live session:

when I use https://live.sox.pm/ it all worked

this is all done on a Mac

I have done a little more testing...
I copied the docker image to a Debian server... same result as above, spinning circle on live
I started the server with npm start (after building) same result as above, spinning on live can watch yesterdays replays
I'm going to have one more go with @iebb branch

I've pulled from master and created an image... I can get the replays of testing to work but not the live session:
when I use https://live.sox.pm/ it all worked

this is all done on a Mac

older replays(more than 24h?) are already in m3u8(hls) and live / recent replays are in mpd, so it's still some mpd issues.

Hm.

Trying to watch 2022 Bahrain GP, Practise 1 and getting this error also.

@mnicex Are you using the hosted version of the F1 Webviewer or are you running the code from Master?

Same issue here running hosted, no live streams.

Hosted version. Old replays are working.
Get Outlook for Androidhttps://aka.ms/AAb9ysg

From: Tom van der Geer @.>
Sent: Friday, March 18, 2022 4:30:52 PM
To: bootsie123/F1-Web-Viewer @.>
Cc: mnicex @.>; Mention @.>
Subject: Re: [bootsie123/F1-Web-Viewer] No compatible source was found for this media (Issue #50)
@mnicexhttps://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fmnicex&data=04|01||23242e935758418214c008da08ebe941|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|637832106564327163|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000&sdata=Rbx9mGMz2eQkpxMRaXMhHbdv2xBL22cEL0rorfXRVX8%3D&reserved=0 Are you using the hosted version of the F1 Webviewer or are you running the code from Master?
—
Reply to this email directly, view it on GitHubhttps://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fbootsie123%2FF1-Web-Viewer%2Fissues%2F50%23issuecomment-1072466799&data=04|01||23242e935758418214c008da08ebe941|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|637832106564327163|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000&sdata=T17K%2B4HV6K4I6vsZLklrck2P5MWYcwtKs7gMD5sAOl4%3D&reserved=0, or unsubscribehttps://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAQHE6RR3HAUC7HFHRWKCPFLVASHRZANCNFSM5JLTFBNQ&data=04|01||23242e935758418214c008da08ebe941|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|637832106564327163|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000&sdata=0wPIEiGj7LQuEG%2BXFhZ0Na1wnM2DrAMvexbA1srJVfM%3D&reserved=0.
Triage notifications on the go with GitHub Mobile for iOShttps://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Fapps.apple.com%2Fapp%2Fapple-store%2Fid1477376905%3Fct%3Dnotification-email%26mt%3D8%26pt%3D524675&data=04|01||23242e935758418214c008da08ebe941|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|637832106564327163|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000&sdata=eSYadxV8JjgRJ6JqmtU5XKN%2FqBiyE95jUnTQZR3x%2F08%3D&reserved=0 or Androidhttps://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Fplay.google.com%2Fstore%2Fapps%2Fdetails%3Fid%3Dcom.github.android%26referrer%3Dutm_campaign%253Dnotification-email%2526utm_medium%253Demail%2526utm_source%253Dgithub&data=04|01||23242e935758418214c008da08ebe941|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|637832106564327163|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000&sdata=nOGyrrI10UaDQN95D7g0yMbU1NICDB2qk6AscXOvaDU%3D&reserved=0.
You are receiving this because you were mentioned.Message ID: @.***>

Electron version works just fine.

oh...so the Latest release does not include the fix for this yet? how do I pull master branch to docker ?

Any change is creating a docker image with the fix in it? the last update to the docker image was on 25/02/2022. I have tried the npm option, but the install keeps failing, so if you could update the docker image it would be great. thx

I am having the same issue with the current master branch

I am having the same issue with the current master branch. I was able to get it working with the modifications iebb made (https://github.com/iebb/F1-Web-Viewer) on the master branch. I would presume this is the code running on https://live.sox.pm/

there's a layer of reverse proxy behind https://live.sox.pm/ , besides that it's the same code


Add link to various PRs in the stack in the description

Hi! I'm really loving using av in my day to day work. Thank you for making it! One thing that would make it much easier for reviewers is for them to be able to quickly link between the different PRs in a stack. So, is it possible to link the various items in a stack in the PR description?
ex:
Description
Some summary of changes
Stack
Link to bottom PR : Stack Item 1 Title
Link to prev PR : Stack Item 2 Title
Stack Item 3 Title (THIS PR)
Link to next PR : Stack Item 4 Title

Hi @msmanek-dd thanks for reporting the issue. This should already be possible with a config:
pullRequest:
  writeStack: true

Reference: https://docs.aviator.co/aviator-cli/configuration
Let me know if that doesn't work.

this indeed does work and is AWESOME! Thank you! I've added the flag in my config and it works wonderfully!
Two recommendations:

Make this the default
Update the docs to surface this more obviously :)


Unsound usages of unsafe implementation from immut to mut

Hi, I am scanning the inventory in the latest version with my own static analyzer tool.
Unsafe conversion found at: src/lib.rs:196:27: 196:58
let new_ptr = new as *const Node as *mut Node;

unsafe fn submit(&'static self, new: &'static Node) {
    let mut head = self.head.load(Ordering::Relaxed);
    loop {
        unsafe {
            *new.next.get() = head.as_ref();
        }
        let new_ptr = new as *const Node as *mut Node;
        match self
            .head
            .compare_exchange(head, new_ptr, Ordering::Release, Ordering::Relaxed)
        {
            Ok(_) => return,
            Err(prev) => head = prev,
        }
    }
}

This would potentially cause undefined behaviors in Rust. I am reporting this issue for your attention.
Probably can further wrap it into unsafe code block. This is just a tiny issue to conclude.

This is the second low-effort, incorrect report you have filed on my repos, and I have seen at least 3 more similarly poor issues you have opened recently in other repos I follow.
Please do not open another issue on any repo owned by me or you will be banned.


[64] RCTShadowView: use 1x alignment (#1015)

Please select one of the following

[ ] I am removing an existing difference between facebook/react-native and microsoft/react-native-macos :thumbsup:
[ ] I am cherry-picking a change from Facebook's react-native into microsoft/react-native-macos :thumbsup:
[X] I am making a fix / change for the macOS implementation of react-native
[X] I am making a change required for Microsoft usage of react-native

Summary
git cherry-pick 1a2b7fe2ea701ad5ea3e7788c19efdf3ad56d284
Passing 0 to YGConfigSetPointScaleFactor() turns off layout rounding
entirely, which makes things look blurry.  While it would be nice to
use the backing scale factor of the window, that would be a very
involved change.  Instead, hardcode 1x alignment.  On 2x displays, this
just means that views cannot sit on half-point boundaries.  (They're
still rendered at 2x, though.)
Changelog
[macOS] [Bug] - Retina scaling fix
Test Plan
Tested in main

soo... what's the plan of actually implementing RCTScreenScale?

soo... what's the plan of actually implementing RCTScreenScale?

Would you like to make an ADO item? :D


Managed VMs samples do not include samples for the compat mode

I've got customer complaints about the lack of samples showing GAE standard compat usage and the upgrade to Servlet 3.1 feature.
We should have samples to point them to in order for them to migrate existing applications to Managed VMs.

I don't think this is required anymore.


nothing about mnist's visualization

this is the problem
https://stackoverflow.com/questions/48368441/mnists-deep-feature-visualizations-is-nothing

Hi, could you please explain a little more about how did you visualize the LeNet on mnist? I am trying to visualize the VGG16 train on Cifar10. How should I set the label path?

@ZhuweiQin when I have trained a mnist model with caffe, I am wondering what the feature would look like, for example, when I visualize caffenet-yos, I can see different channel focus different part of the object, but on mnist I can see nothing, why?
for label path,  I think you can reference this:https://github.com/yosinski/deep-visualization-toolbox/blob/master/models/caffenet-yos/settings_local.template-caffenet-yos.py#L20


further edits

For topics that you haven't reviewed on the PR but that are part of the book, I just changed headings to use sentence case, changed http to https links and some basic formatting. The ones you edited, I've reviewed them more extensively.

Ok, everything looked good. How close are we to merging my PR now?


Change deployment

What is the purpose of the change
Deployment optimization
Brief changelog
XX
Verifying this change
XXXX
Follow this checklist to help us incorporate your contribution quickly and easily:

[x] Make sure there is a Github issue filed for the change (usually before you start working on it). Trivial changes like typos do not require a Github issue. Your pull request should address just this issue, without pulling in other changes - one PR resolves one issue.
[x] Format the pull request title like [ISSUE #123] Fix UnknownException when host config not exist. Each commit in the pull request should have a meaningful subject line and body.
[x] Write a pull request description that is detailed enough to understand what the pull request does, how, and why.
[x] Write necessary unit-test to verify your logic correction, more mock a little better when cross module dependency exist.
[x] Run `mvn clean compile --batch-mode -DskipTests=false -Dcheckstyle.skip=false -Drat.skip=false -Dmaven.javadoc.skip=true to make sure basic checks pass.

Codecov Report

Merging #960 (b20241d) into develop (e279afd) will increase coverage by 0.04%.
The diff coverage is n/a.

:exclamation: Current head b20241d differs from pull request most recent head c5534df. Consider uploading reports for the commit c5534df to get more accurate results

@@              Coverage Diff              @@
##             develop     #960      +/-   ##
=============================================
+ Coverage      21.29%   21.33%   +0.04%
- Complexity       435      436       +1
=============================================
  Files            149      149
  Lines           4799     4799
  Branches         726      726
=============================================
+ Hits            1022     1024       +2
+ Misses          3693     3690       -3
- Partials          84       85       +1

Flag
Coverage Δ

unit
21.33% <ø> (+0.04%)
:arrow_up:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

...apache/dubbo/admin/service/RegistryServerSync.java
87.83% <0.00%> (+2.70%)
:arrow_up:

Continue to review full report at Codecov.

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


Failure to initialize RAGECoop

Does not work at all, I do have the latest ScripHookVDotNet installed as required.
ScriptHookVDotNet.log

After a reinstall from latest release to the last nightly i get this error
ScriptHookVDotNet.log


Python: Adjust API for Pyodide bundle to support multiple versions

A relatively minor change that cleans up the bundle code in pyodide.c++/pyodide.h and adds a TreeMap to handle multiple bundle versions.

Can we test this downstream?


Fixes issue #110

zulip-electron:0.5.8
Operating System:Linux Mint 18
Bug:
There was no support for showing unread count in app's tray icon in any OS
Fix:
This PR fixes issue #110
Now unread count is shown if you hover over tray icon :)
Here is how it looks,

Shouldn't we show unread counts unconditionally without your needing to hover?  I feel like that's best practice with this sort of thing.

@timabbott If you mean it should be like our  title of our web UI

yes, it would be better but currently, I have only tried to fix a patch(this issue only).
As you must be knowing our web UI has many icons specifically designed for a specific number of unread counts like there is an icon for unread 6, unread 7, unread 10 etc present in static/images/favicon folder.
Current Electron app doesn't have these.
So I just tried to fix the issue without involving the design part

Shouldn't we show unread counts unconditionally without your needing to hover? I feel like that's best practice with this sort of thing.

@timabbott totally agreed. It's not so useful and not desirable. We''re looking for something like Telegram's badge feature -

@Lplenka as of now you're using tray.setToolTip() which sets a text on hover in tray icon. We need to use setOverIcon() which will set the badges. Maybe try this  -
setBadge = function (text) {
  if (process.platform === "darwin") {
    app.dock.setBadge("" + text);
  } else if (process.platform === "win32") {
    var win = remote.getCurrentWindow();

    if (text === "") {
      win.setOverlayIcon(null, "");
      return;
    }

    // Create badge
    var canvas = document.createElement("canvas");
    canvas.height = 140;
    canvas.width = 140;
    var ctx = canvas.getContext("2d");
    ctx.fillStyle = "red";
    ctx.beginPath();
    ctx.ellipse(70, 70, 70, 70, 0, 0, 2 * Math.PI);
    ctx.fill();
    ctx.textAlign = "center";
    ctx.fillStyle = "white";

    if (text.length > 2) {
      ctx.font = "75px sans-serif";
      ctx.fillText("" + text, 70, 98);
    } else if (text.length > 1) {
      ctx.font = "100px sans-serif";
      ctx.fillText("" + text, 70, 105);
    } else {
      ctx.font = "125px sans-serif";
      ctx.fillText("" + text, 70, 112);
    }

    var badgeDataURL = canvas.toDataURL();
    var img = NativeImage.createFromDataUrl(badgeDataURL);

    win.setOverlayIcon(img, text);
  }
};

This does not work in main process but it'll give you the head start.

unread counts like there is an icon for unread 6, unread 7, unread 10 etc. present in static/images/favicon folder. Current Electron app doesn't have these.

There is a thing called native-image for this.

Also check out these issues -
https://github.com/electron/electron/issues/7325
https://github.com/electron/electron/issues/7440
https://discuss.atom.io/t/native-image-examples/26648/2


Update app engine flexible deployment UX

Fixes #1477
Updates the remainder of the deployment UX.
Screenshots coming..
Still missing test coverage refresh
This PR updates the flex config portion of the deployment UI (the portion with the app.yaml and dockerfile config) to match the refresh that was done in #1476.
Also, as discussed offline, I got rid of the previously available app.yaml override and Dockerfile override features in favor of clarity and simplicity.

No modules with flex support:

app.yaml with runtime: java (the edit button links to the module settings):

app.yaml with runtime: custom (the Dockerfile path links to the module settings):

Showing multiple app.yamls (from different modules) - paths are displayed relative to the project root:

See the above screenshots for an overview of what things look like.
Things not fixed here (will file separate issues):

Move error messages closer to issue. Notice how now they still show up at the bottom:

Don't block saving the dialog on errors. Currently its still preventing the user from saving until errors are resolved.

I just noticed that with these changes, the flex cost label location didn't make sense anymore. I moved it to be underneath the environment label (and added an icon to it). Of course this works as expected for flex compat too.

Note: I think prior to merging this we can give it a quick look over to see if we can optimize the spacing / margins in the layout everywhere

@etanshaul This is looking pretty slick! Starting review noww

a couple of UI thoughts:

the italics message about setting a custom runtime looks kind of weird as a child of runtime.  Maybe we could pull it up to a footnote of the panel?
Do all run config validation errors always have 'invalid data' prefixes/

the italics message about setting a custom runtime looks kind of weird as a child of runtime. Maybe we could pull it up to a footnote of the panel?
My thought was that this message is directly applicable to runtimes so I had it under the runtime section. I don't feel too strongly about it though.
Do all run config validation errors always have 'invalid data' prefixes
Yea this is part of what the framework does when throwing ConfigurationExceptions for validation. This will be removed in a future PR where we no longer block on form errors.

@patflynn tests have been fixed and updated, and comments addressed. only potential todo is moving the location of the custom runtime / Dockerfile message.

@patflynn
here's what the message looks like un-nested:

wdyt? maybe remove the italics too..

hmm, what do you think about removing the message completely?
On Thu, Jun 8, 2017 at 3:10 PM, Etan Shaul<EMAIL_ADDRESS>wrote:

@patflynn https://github.com/patflynn
here's what the message looks like un-nested:
[image: image]
https://user-images.githubusercontent.com/1735744/26946225-9b490a70-4c5c-11e7-9614-280e1fc0af62.png
wdyt? maybe remove the italics too..
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/GoogleCloudPlatform/google-cloud-intellij/pull/1493#issuecomment-307199172,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AHf5HRPT86oo-mekieiASLxMuHUolhfbks5sCEcygaJpZM4NzK0D
.

done e1ece90

found a bug: saving the configuration doesn't save the selected app.yaml in the dropdown. The path is saved, but need to restore the correct selection in the combobox. Fix coming.

the path to the app.yaml is saved?  shouldn't it be read from the module
facet at execution time?
On Thu, Jun 8, 2017 at 3:28 PM, Etan Shaul<EMAIL_ADDRESS>wrote:

found a bug: saving the configuration doesn't save the selected app.yaml
in the dropdown. The path is saved, but need to restore the correct
selection in the combobox. Fix coming.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/GoogleCloudPlatform/google-cloud-intellij/pull/1493#issuecomment-307203595,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AHf5Hc5Iwb0TTDM4016arZL-he3oXldWks5sCEtWgaJpZM4NzK0D
.

hmm currently what's persisted is the app.yaml path itself. this is sort of a legacy thing brought over from when we allowed app.yaml overrides.
Its not technically wrong, but instead we could persist the selected facet instead (the facet corresponding to the selected app.yaml in the dropdown)

on second thought, changing what's persisted would affect user migration. its safer to keep storing the app.yaml path as is.

ahh. I see your point. We have the potential now for the app.yaml (and Dockerfile for that matter) to be stale. Ill look into this now.

some things to note about the above:
Once fixed, and released, users upgrading that have a prior custom flex deployment will have to re-enter the app.yaml (and Dockerfile if applicable). This is a consequence of moving these to the facet.
Attempting to do some auto migration like checking to see if there is a stored app.yaml / Dockerfile in the configuration and then moving it to the facet wouldn't be robust as there isn't a one-to-one mapping between deployment config and facet config.


Simplify cli usage

A couple of options seem mostly intended for developers of this tool (update-specs, update-documentation, etc), so to reduce confusion for new users I moved those to a separate argument group.
I also removed -t/--template, which might be more controversial. I can't think of any cases where positional arguments would be insufficient, and having two ways to input file names is just confusing. Better to remove this duplication as early as possible in the linter's life, before lots of people start to rely on this.
Usage Before:
usage: cfn-lint [-h] [-t TEMPLATES] [-b] [-d] [-f {quiet,parseable,json}] [-l]
                [-r [REGIONS [REGIONS ...]]]
                [-a [APPEND_RULES [APPEND_RULES ...]]]
                [-i [IGNORE_CHECKS [IGNORE_CHECKS ...]]] [-o OVERRIDE_SPEC]
                [-v] [-u]
                [templates [templates ...]]

CloudFormation Linter

positional arguments:
  templates             The CloudFormation templates to be linted

optional arguments:
  -h, --help            show this help message and exit
  -t TEMPLATES, --templates TEMPLATES
                        The CloudFormation templates to be linted
  -b, --ignore-bad-template
                        Ignore failures with Bad template
  -d, --debug           Enable debug logging
  -f {quiet,parseable,json}, --format {quiet,parseable,json}
                        Output Format
  -l, --list-rules      list all the rules
  -r [REGIONS [REGIONS ...]], --regions [REGIONS [REGIONS ...]]
                        list the regions to validate against.
  -a [APPEND_RULES [APPEND_RULES ...]], --append-rules [APPEND_RULES [APPEND_RULES ...]]
                        specify one or more rules directories using one or
                        more --append-rules arguments.
  -i [IGNORE_CHECKS [IGNORE_CHECKS ...]], --ignore-checks [IGNORE_CHECKS [IGNORE_CHECKS ...]]
                        only check rules whose id do not match these values
  -o OVERRIDE_SPEC, --override-spec OVERRIDE_SPEC
                        A CloudFormation Spec override file that allows
                        customization
  -v, --version         Version of cfn-lint
  -u, --update-specs    Update the CloudFormation Specs

Usage After:
usage: cfn-lint [-h] [-b] [-d] [-f {quiet,parseable,json}] [-l]
                [-r [REGIONS [REGIONS ...]]]
                [-a [APPEND_RULES [APPEND_RULES ...]]]
                [-i [IGNORE_CHECKS [IGNORE_CHECKS ...]]] [-o OVERRIDE_SPEC]
                [-v] [-u]
                [template]

CloudFormation Linter

optional arguments:
  -h, --help            show this help message and exit

Standard arguments:
  template              The CloudFormation template to be linted
  -b, --ignore-bad-template
                        Ignore failures with Bad template
  -f {quiet,parseable,json}, --format {quiet,parseable,json}
                        Output Format
  -l, --list-rules      list all the rules
  -r [REGIONS [REGIONS ...]], --regions [REGIONS [REGIONS ...]]
                        list the regions to validate against.
  -i [IGNORE_CHECKS [IGNORE_CHECKS ...]], --ignore-checks [IGNORE_CHECKS [IGNORE_CHECKS ...]]
                        only check rules whose id do not match these values
  -v, --version         Version of cfn-lint

Advanced / Debugging arguments:
  -d, --debug           Enable debug logging
  -a [APPEND_RULES [APPEND_RULES ...]], --append-rules [APPEND_RULES [APPEND_RULES ...]]
                        specify one or more rules directories using one or
                        more --append-rules arguments.
  -o OVERRIDE_SPEC, --override-spec OVERRIDE_SPEC
                        A CloudFormation Spec override file that allows
                        customization
  -u, --update-specs    Update the CloudFormation Specs

As per #166, updated this PR to simply improve the formatting of -h/usage output. --template is unchanged 🙌


PubMatic Analytics Adapter Documentation

As per Email to Update the documentation of Analytics Adapter

Are there associated code changes or are you just making doc edits?


PortAudio (through sounddevice Python wrapper) not able to record from microphone on Mac Big Sur

Issue Type: Bug
The integrated terminal in VS Code doesn't seem to have permission to access the microphone on Mac OS Big Sur, although it can see the available devices.
Running the following code in the integrated terminal, the recording is all 0s, whereas it works properly running in the same Python environment in the Terminal app.
`
import sounddevice as sd
print(sd.query_devices(device=None, kind=None))
samplerate = 48000  # Hertz
duration = 1  # seconds
mydata = sd.rec(int(samplerate * duration), samplerate=samplerate,
channels=1, blocking=True)
print(mydata)
`
VS Code version: Code 1.53.2 (622cb03f7e070a9670c94bae1a45d78d7181fbd4, 2021-02-11T11:45:54.515Z)
OS version: Darwin x64 20.3.0

System Info

Item
Value

CPUs
Intel(R) Core(TM) i5-8257U CPU @ 1.40GHz (8 x 1400)

GPU Status
2d_canvas: enabledgpu_compositing: enabledmetal: disabled_offmultiple_raster_threads: enabled_onoop_rasterization: enabledopengl: enabled_onprotected_video_decode: unavailable_offrasterization: enabledskia_renderer: disabled_off_okvideo_decode: enabledwebgl: enabledwebgl2: enabled

Load (avg)
3, 3, 2

Memory (System)
8.00GB (0.23GB free)

Process Argv
--crash-reporter-id 5139e64b-6b78-4158-826d-d1e81bea9c8b

Screen Reader
no

VM
0%

Extensions (5)

Extension
Author (truncated)
Version

mdmath
goe
2.5.1

latex-workshop
Jam
8.16.0

python
ms-
2021.2.582707922

vscode-pylance
ms-
2021.2.4

jupyter
ms-
2021.2.603412351

A/B Experiments
vsliv368cf:30146710
vsreu685:30147344
python383cf:30185419
pythonvspyt617cf:30253240
vspor879:30202332
vspor708:30202333
vspor363:30204092
vstry244:30256636
pythonvsdeb440:30248342
pythonvsded773:30248341
pythonvspyt875:30259475
pythontb:30260843

/duplicate https://github.com/microsoft/vscode/issues/95062


Update appList.js

[X] I have followed (at least) the PR section of the contributing guide.

Thanks for sharing, however, maintainers are cherry-picking the content of the showcase. You can include it on https://github.com/mui-org/material-ui/issues/22426


Isomorphic fallback

fix for #38 ♻

@camwiegert: I saw that you pushed a new version today -- I've pulled your updates into my pull request.

@camwiegert : updated


fix: theme flashing

When the site loads and no theme is set in the localstorage the site flashes between dark and light mode (when the system is in dark mode)
How to reproduce:

set system theme as dark mode and clear the site's localstorage
reload the page the page might flash

Removed some code that are same as the one we already have inside layout

https://github.com/eslint/new.eslint.org/blob/824c4bf34390a5781dc69f2ca993a873e37d4e15/src/_includes/layouts/base.html#L67-L74

Before:
https://user-images.githubusercontent.com/32865581/164293001-dac07d15-1a86-4837-8205-a5257f6e42e7.mov

Good catch! LGTM!


FB sql namespaces

load_ceo_functions.sql:

These functions were not copied to a new SQL file:

add_institution_imagery_migration
add_institution_migration
add_plotId_col
add_plots_by_json
add_sample_values_migration
add_user_migration
add_user_plots_migration
create_project_migration
merge_plot_and_file
merge_plots_only
rename_col
set_admin
update_sequence

src/sql/functions/*_functions.sql:

These filenames seem redundant. Rename them to just
src/sql/functions/*.sql so that their filenames match their
namespaces.

ceo_tables.sql:

Rename to all.sql and change NAMESPACE to all.


Create a logic folder

Helpers is becoming huge, think it is time to take all Logic based functions and move them into a logic folder. The functions that need to be moved are:

ifElse
not
unless
when
has (to be added from issue#33

Submitted PR#53 to address this PR.
Keeping hasKey right where it lives for now. Does not make sense moving it here.

Merged in PR#53.
Closing.


Very slow performance on large sets

Hi, this package looks really cool and I'd love to use it for my use case.
I have about 7,000 sets with about 1,000 elements each that I'm using as my index. I also have a set of about 1,000 queries with similar sizes, about 1,000 elements each, as queries.  However, when I profile the times for queries for this package vs. datasketch's MinHashLSHEnsemble method, the results are pretty wildly off-base from the numbers presented in the readme.
In general, a single minhash LSH ensemble query in my case is taking about 10ms, and the SetSimilarity query is taking anywhere from 300ms to 500ms, even whole seconds in some cases.  Are these numbers to be expected, and is SetSimilaritySearch simply not suitable for sets this large? My sets are exclusively integers, if that matters.
Any insight or help is appreciated.

You are correct that this package is not suitable comparing to datasketch when it comes to larger sets. The benchmark datasets used in README have average set size around 20-30.
For this package, the query time is directly proportional to the size of the query set (# of tokens). It is also heavily influenced by the size of indexed sets because exact set similarity calculation is made at query time for candidate sets.
There are some algorithmic tricks that are designed to handle exact search over large sets. I made one: https://github.com/ekzhu/josie. I haven't had time to make it available here.


Composer missing dependy: PHP dom

Hi,
Thanks for your software!
I just installed it using Composer on a Debian computer without PHP but it did not work: I had to install php-curl (#67) and php7.2-xml packages from Debian.
Could you had these dependencies to composer requirements?
Best regards,
Yvan

I ran into the same issue with Ubuntu 20.04. I had to install php-curl and php7.4-xml


✨ Push notifications

Cc: @matt-goldman, @adamcogan
Pain

SSW Rewards users are not notified about anything - upcoming events, new achievements etc.
Suggested Solution

Implement push notifications.
Tasks

[ ] Design architecture
[ ] Implement push notifications for Android
[ ] Implement push notifications for iOS

Duplicate of #380.
Closing this one.


Deployment status success even if there are no healthy allocations in nomad

Hi there! I think i'm doing something terribly wrong here, but:
Relevant Nomad job specification file
job "example" {
  datacenters = ["newdev"]
  type = "service"
  group "cache" {
    count = 1
    task "redis" {
      driver = "docker"
      config {
        image = "redis:3.2"
        port_map {
          db = 6379
        }
      }
      resources {
        cpu    = 500 # 500 MHz
        memory = 256 # 256MB
        network {
          mbits = 10
          port "db" {}
        }
      }
      service {
        name = "redis-cache"
        tags = ["global", "cache"]
        port = "db"
        check {
          name     = "alive"
          type     = "tcp"
          interval = "10s"
          timeout  = "2s"
        }
        check {
          type     = "script"
          name     = "nonexisting-script"
          command  = "/usr/bin/nonexisting-script"
          interval = "60s"
          timeout  = "120s"
          check_restart {
            limit = 3
            grace = "90s"
            ignore_warnings = false
          }
        } #check
      }
    }
  }
}

Output of levant version:
Levant v0.2.2
Date: 2018-08-06T09:05:20Z
Commit: df0fe5759617805430bd847d9d445ff9a65b01c6
Branch: 0.2.2
State: 0.2.2
Summary: df0fe5759617805430bd847d9d445ff9a65b01c6

Output of consul version:
Consul v1.2.2
Protocol 2 spoken by default, understands 2 to 3 (agent will automatically use protocol >2 when speaking to compatible agents)

Output of nomad version:
Nomad v0.8.4 (dbee1d7d051619e90a809c23cf7e55750900742a)

Additional environment details:
Debian, consul, nomad, docker 18.06.0-ce
Debug log outputs from Levant:
levant deploy -log-level=debug -address=http://xxx.xxx.xxx.xxx:4646 example.nomad
2018-08-21T22:19:26+03:00 |DEBU| template/render: no variable file passed, trying defaults
2018-08-21T22:19:26+03:00 |DEBU| helper/files: no default var-file found
2018-08-21T22:19:26+03:00 |DEBU| template/render: no command line variables passed
2018-08-21T22:19:27+03:00 |INFO| levant/deploy: job is not running, using template file group counts job_id=example
2018-08-21T22:19:27+03:00 |DEBU| levant/plan: triggering Nomad plan job_id=example
2018-08-21T22:19:27+03:00 |INFO| levant/plan: job is a new addition to the cluster job_id=example
2018-08-21T22:19:27+03:00 |INFO| levant/deploy: triggering a deployment job_id=example
2018-08-21T22:19:28+03:00 |INFO| levant/deploy: evaluation 48794f86-d5cc-dbec-df60-59c639418a40 finished successfully job_id=example
2018-08-21T22:19:28+03:00 |INFO| levant/deploy: job is not configured with update stanza, consider adding to use deployments job_id=example
2018-08-21T22:19:28+03:00 |DEBU| levant/job_status_checker: running job status checker for job job_id=example
2018-08-21T22:19:28+03:00 |INFO| levant/job_status_checker: job has status running job_id=example
2018-08-21T22:19:28+03:00 |INFO| levant/job_status_checker: task redis in allocation 9ba1aee8-6fd4-5c23-c033-632760ce1956 now in pending state job_id=example
2018-08-21T22:19:33+03:00 |INFO| levant/job_status_checker: task redis in allocation 9ba1aee8-6fd4-5c23-c033-632760ce1956 now in running state job_id=example
2018-08-21T22:19:33+03:00 |INFO| levant/job_status_checker: all allocations in deployment of job are running job_id=example
2018-08-21T22:19:33+03:00 |INFO| levant/deploy: job deployment successful job_id=example

Nomad allocation info:
https://gist.github.com/yellowmegaman/3ebea496c67ee5d512f8e7a6658afcab
Consul healthcheck:

So i've used nomad init to create default redis template, removed almost all features and blocks, changed datacenter name and added healthcheck with non-existent binary.
After running deployment with levant i was expecting it to wait for all stuff to settle down, healthchecks including, since i saw Advanced Job Status Checking: Particulary for system and batch jobs, Levant will ensure the job, evaluations and allocations all reach the desired state providing feedback at every stage. in the docs.
And one more thing, i was really surprised to know that it looks like nomad deployments are not in use when deploying with levant, is that correct?
Thanks in advance, hope i just misread something.

@yellowmegaman thanks for raising this and the detail. I believe I know what is going on here and can explain a couple of points and answer a few questions.

it looks like nomad deployments are not in use when deploying with levant as logged, the job does not have an update stanza and so Nomad will not create a deployment for it. Levant as only a wrapper around Nomad and does not interfere with, or alter the internal scheduling and decision making of Nomad. It merely attempts to provide additional feedback on events to improve CD.

the bug/feature I believe is because Nomad reports the allocs as running and then restarts/kills them shortly after as shown in the alloc detail. This is because the task does indeed start, but then after a time the check fails and the check_restart kicks in. Levant watches the allocs and when it reaches the running state will exit rather than keep watching them for an additional period.

An immediate workaround for yourself is to add an update stanza which will allow this job to make use of Nomad deployments which will improve your experience overall.
For Levant going forward I think it would be worth adding an additional watch period, configurable but with a sane default which will ensure restarting tasks in this manner a reported correctly. I would appreciate any feedback you have into this.

@jrasell thanks for quick reply!
Actually first time i've encountered this situation i had update stanza (i use almost all features of nomad).
Levant watches the allocs and when it reaches the running state will exit rather than keep watching them for an additional period. - but does it mean that levant only watch for running state? because in example above healthchecks are initially red and continue to be so.
My attempt with update:
$ nomad stop -purge example
==> Monitoring evaluation "471f0856"
    Evaluation triggered by job "example"
    Evaluation status changed: "pending" -> "complete"
==> Evaluation "471f0856" finished with status "complete"

Added update:
job "example" {
  datacenters = ["newdev"]
  type = "service"
  group "cache" {
    update {
      max_parallel = 1
      min_healthy_time = "10s"
      healthy_deadline = "3m"
      progress_deadline = "10m"
      auto_revert = false
      canary = 0
    }
    count = 1
    task "redis" {
      driver = "docker"
      config {
        image = "redis:3.2"
        port_map {
          db = 6379
        }
      }
      resources {
        cpu    = 500 # 500 MHz
        memory = 256 # 256MB
        network {
          mbits = 10
          port "db" {}
        }
      }
      service {
        name = "redis-cache"
        tags = ["global", "cache"]
        port = "db"
        check {
          name     = "alive"
          type     = "tcp"
          interval = "10s"
          timeout  = "2s"
        }
        check {
          type     = "script"
          name     = "nonexisting-script"
          command  = "/usr/bin/nonexisting-script"
          interval = "60s"
          timeout  = "120s"
          check_restart {
            limit = 3
            grace = "90s"
            ignore_warnings = false
          }
        } #check
      }
    }
  }
}

Running levant:
$ levant deploy -log-level=debug -address=http://xxx.xxx.xxx.xxx:4646 github.nomad
2018-08-21T23:34:00+03:00 |DEBU| template/render: no variable file passed, trying defaults
2018-08-21T23:34:00+03:00 |DEBU| helper/files: no default var-file found
2018-08-21T23:34:00+03:00 |DEBU| template/render: no command line variables passed
2018-08-21T23:34:00+03:00 |INFO| levant/deploy: job is not running, using template file group counts job_id=example
2018-08-21T23:34:00+03:00 |DEBU| levant/plan: triggering Nomad plan job_id=example
2018-08-21T23:34:01+03:00 |INFO| levant/plan: job is a new addition to the cluster job_id=example
2018-08-21T23:34:01+03:00 |INFO| levant/deploy: triggering a deployment job_id=example
2018-08-21T23:34:02+03:00 |INFO| levant/deploy: evaluation 8f59210c-1719-bfc9-8851-786adbd01c5d finished successfully job_id=example
2018-08-21T23:34:02+03:00 |INFO| levant/deploy: job is not configured with update stanza, consider adding to use deployments job_id=example
2018-08-21T23:34:02+03:00 |DEBU| levant/job_status_checker: running job status checker for job job_id=example
2018-08-21T23:34:02+03:00 |INFO| levant/job_status_checker: job has status running job_id=example
2018-08-21T23:34:02+03:00 |INFO| levant/job_status_checker: task redis in allocation 18a28f20-0eb7-188c-e37a-cc7ee70ffcef now in running state job_id=example
2018-08-21T23:34:02+03:00 |INFO| levant/job_status_checker: all allocations in deployment of job are running job_id=example
2018-08-21T23:34:02+03:00 |INFO| levant/deploy: job deployment successful job_id=example

cloud@newdev-2:~$ nomad deployment list
ID        Job ID   Job Version  Status   Description
5501e535  example  0            running  Deployment is running
cloud@newdev-2:~$ nomad deployment status 5501e535
ID          = 5501e535
Job ID      = example
Job Version = 0
Status      = running
Description = Deployment is running

Deployed
Task Group  Desired  Placed  Healthy  Unhealthy  Progress Deadline
cache       1        1       0        0          2018-08-21T20:44:01Z
cloud@newdev-2:~$

My main goal was to replace my monstous 62-line bash script with something close to AI to prove deployment successful =)
This script is basically a loop looking for desired=healthy allocations of service in nomad api.
About additional watch period - i don't follow you here, isn't it right just to watch for desired/placed/healthy instead of period of time?
Thanks again)

Just tried it again, added nonexistent script healthcheck to default example.nomad job, levant did everything nice and correct.
After timeout defined in update stanza deployment was marked failed and terminal with levant was released with proper exit code.
Thumbs up and thank you )


Support obm related node event

require https://github.com/RackHD/on-core/pull/178 asynchronous publish event when operating obm by API, the PUT and other obm update is handled in upsertByNode in on-core https://github.com/RackHD/on-core/pull/178    docs: https://github.com/RackHD/docs/pull/296
@RackHD/corecommitters @zyoung51 @WangWinson

*** BUILD #1779 ***
Test Name: Http.Api.Obms /api/2.0/obms/:id should patch an OBM instance
Error Details: Cannot stub non-existent own property publishNodeEvent
Stack Trace: TypeError: Cannot stub non-existent own property publishNodeEvent
    at Object.stub (node_modules/sinon/lib/sinon/collection.js:93:35)
    at Context.<anonymous> (spec/lib/api/2.0/obms-spec.js:194:26)

Test Name: Http.Api.Obms /api/2.0/obms/:id should 400 when patching with bad data
Error Details: Cannot stub non-existent own property publishNodeEvent
Stack Trace: TypeError: Cannot stub non-existent own property publishNodeEvent
    at Object.stub (node_modules/sinon/lib/sinon/collection.js:93:35)
    at Context.<anonymous> (spec/lib/api/2.0/obms-spec.js:208:26)

Test Name: Http.Api.Obms /api/2.0/obms/:id should publish event if node exist in new obm, not exist in old obm
Error Details: Cannot stub non-existent own property publishNodeEvent
Stack Trace: TypeError: Cannot stub non-existent own property publishNodeEvent
    at Object.stub (node_modules/sinon/lib/sinon/collection.js:93:35)
    at Context.<anonymous> (spec/lib/api/2.0/obms-spec.js:225:26)

Test Name: Http.Api.Obms /api/2.0/obms/:id should publish event if node exist in old obm, not exist in new obm
Error Details: Cannot stub non-existent own property publishNodeEvent
Stack Trace: TypeError: Cannot stub non-existent own property publishNodeEvent
    at Object.stub (node_modules/sinon/lib/sinon/collection.js:93:35)
    at Context.<anonymous> (spec/lib/api/2.0/obms-spec.js:242:26)

Test Name: Http.Api.Obms /api/2.0/obms/:id should publish two events if updated node in obm is different
Error Details: Cannot stub non-existent own property publishNodeEvent
Stack Trace: TypeError: Cannot stub non-existent own property publishNodeEvent
    at Object.stub (node_modules/sinon/lib/sinon/collection.js:93:35)
    at Context.<anonymous> (spec/lib/api/2.0/obms-spec.js:259:26)

Test Name: Http.Api.Obms /api/2.0/obms/:id should publish one events if updated node in obm is the same
Error Details: Cannot stub non-existent own property publishNodeEvent
Stack Trace: TypeError: Cannot stub non-existent own property publishNodeEvent
    at Object.stub (node_modules/sinon/lib/sinon/collection.js:93:35)
    at Context.<anonymous> (spec/lib/api/2.0/obms-spec.js:276:26)

Test Name: Http.Api.Obms /api/2.0/obms/:id should not publish events if no node updated in obm
Error Details: Cannot stub non-existent own property publishNodeEvent
Stack Trace: TypeError: Cannot stub non-existent own property publishNodeEvent
    at Object.stub (node_modules/sinon/lib/sinon/collection.js:93:35)
    at Context.<anonymous> (spec/lib/api/2.0/obms-spec.js:293:26)

Test Name: Http.Api.Obms /api/2.0/obms/:id should delete an OBM instance
Error Details: Cannot stub non-existent own property publishNodeEvent
Stack Trace: TypeError: Cannot stub non-existent own property publishNodeEvent
    at Object.stub (node_modules/sinon/lib/sinon/collection.js:93:35)
    at Context.<anonymous> (spec/lib/api/2.0/obms-spec.js:307:26)

*** BUILD #1782 ***
Test Name: Http.Api.Obms /api/2.0/obms/:id should patch an OBM instance
Error Details: Cannot stub non-existent own property publishNodeEvent
Stack Trace: TypeError: Cannot stub non-existent own property publishNodeEvent
    at Object.stub (node_modules/sinon/lib/sinon/collection.js:93:35)
    at Context.<anonymous> (spec/lib/api/2.0/obms-spec.js:194:26)

Test Name: Http.Api.Obms /api/2.0/obms/:id should 400 when patching with bad data
Error Details: Cannot stub non-existent own property publishNodeEvent
Stack Trace: TypeError: Cannot stub non-existent own property publishNodeEvent
    at Object.stub (node_modules/sinon/lib/sinon/collection.js:93:35)
    at Context.<anonymous> (spec/lib/api/2.0/obms-spec.js:208:26)

Test Name: Http.Api.Obms /api/2.0/obms/:id should publish event if node exist in new obm, not exist in old obm
Error Details: Cannot stub non-existent own property publishNodeEvent
Stack Trace: TypeError: Cannot stub non-existent own property publishNodeEvent
    at Object.stub (node_modules/sinon/lib/sinon/collection.js:93:35)
    at Context.<anonymous> (spec/lib/api/2.0/obms-spec.js:225:26)

Test Name: Http.Api.Obms /api/2.0/obms/:id should publish event if node exist in old obm, not exist in new obm
Error Details: Cannot stub non-existent own property publishNodeEvent
Stack Trace: TypeError: Cannot stub non-existent own property publishNodeEvent
    at Object.stub (node_modules/sinon/lib/sinon/collection.js:93:35)
    at Context.<anonymous> (spec/lib/api/2.0/obms-spec.js:242:26)

Test Name: Http.Api.Obms /api/2.0/obms/:id should publish two events if updated node in obm is different
Error Details: Cannot stub non-existent own property publishNodeEvent
Stack Trace: TypeError: Cannot stub non-existent own property publishNodeEvent
    at Object.stub (node_modules/sinon/lib/sinon/collection.js:93:35)
    at Context.<anonymous> (spec/lib/api/2.0/obms-spec.js:259:26)

Test Name: Http.Api.Obms /api/2.0/obms/:id should publish one events if updated node in obm is the same
Error Details: Cannot stub non-existent own property publishNodeEvent
Stack Trace: TypeError: Cannot stub non-existent own property publishNodeEvent
    at Object.stub (node_modules/sinon/lib/sinon/collection.js:93:35)
    at Context.<anonymous> (spec/lib/api/2.0/obms-spec.js:276:26)

Test Name: Http.Api.Obms /api/2.0/obms/:id should not publish events if no node updated in obm
Error Details: Cannot stub non-existent own property publishNodeEvent
Stack Trace: TypeError: Cannot stub non-existent own property publishNodeEvent
    at Object.stub (node_modules/sinon/lib/sinon/collection.js:93:35)
    at Context.<anonymous> (spec/lib/api/2.0/obms-spec.js:293:26)

Test Name: Http.Api.Obms /api/2.0/obms/:id should delete an OBM instance
Error Details: Cannot stub non-existent own property publishNodeEvent
Stack Trace: TypeError: Cannot stub non-existent own property publishNodeEvent
    at Object.stub (node_modules/sinon/lib/sinon/collection.js:93:35)
    at Context.<anonymous> (spec/lib/api/2.0/obms-spec.js:307:26)

*** BUILD #1785 ***
Test Name: Http.Api.Obms /api/2.0/obms/:id should patch an OBM instance
Error Details: Cannot stub non-existent own property publishNodeEvent
Stack Trace: TypeError: Cannot stub non-existent own property publishNodeEvent
    at Object.stub (node_modules/sinon/lib/sinon/collection.js:93:35)
    at Context.<anonymous> (spec/lib/api/2.0/obms-spec.js:194:26)

Test Name: Http.Api.Obms /api/2.0/obms/:id should 400 when patching with bad data
Error Details: Cannot stub non-existent own property publishNodeEvent
Stack Trace: TypeError: Cannot stub non-existent own property publishNodeEvent
    at Object.stub (node_modules/sinon/lib/sinon/collection.js:93:35)
    at Context.<anonymous> (spec/lib/api/2.0/obms-spec.js:208:26)

Test Name: Http.Api.Obms /api/2.0/obms/:id should publish event if node exist in new obm, not exist in old obm
Error Details: Cannot stub non-existent own property publishNodeEvent
Stack Trace: TypeError: Cannot stub non-existent own property publishNodeEvent
    at Object.stub (node_modules/sinon/lib/sinon/collection.js:93:35)
    at Context.<anonymous> (spec/lib/api/2.0/obms-spec.js:225:26)

Test Name: Http.Api.Obms /api/2.0/obms/:id should publish event if node exist in old obm, not exist in new obm
Error Details: Cannot stub non-existent own property publishNodeEvent
Stack Trace: TypeError: Cannot stub non-existent own property publishNodeEvent
    at Object.stub (node_modules/sinon/lib/sinon/collection.js:93:35)
    at Context.<anonymous> (spec/lib/api/2.0/obms-spec.js:242:26)

Test Name: Http.Api.Obms /api/2.0/obms/:id should publish two events if updated node in obm is different
Error Details: Cannot stub non-existent own property publishNodeEvent
Stack Trace: TypeError: Cannot stub non-existent own property publishNodeEvent
    at Object.stub (node_modules/sinon/lib/sinon/collection.js:93:35)
    at Context.<anonymous> (spec/lib/api/2.0/obms-spec.js:259:26)

Test Name: Http.Api.Obms /api/2.0/obms/:id should publish one events if updated node in obm is the same
Error Details: Cannot stub non-existent own property publishNodeEvent
Stack Trace: TypeError: Cannot stub non-existent own property publishNodeEvent
    at Object.stub (node_modules/sinon/lib/sinon/collection.js:93:35)
    at Context.<anonymous> (spec/lib/api/2.0/obms-spec.js:276:26)

Test Name: Http.Api.Obms /api/2.0/obms/:id should not publish events if no node updated in obm
Error Details: Cannot stub non-existent own property publishNodeEvent
Stack Trace: TypeError: Cannot stub non-existent own property publishNodeEvent
    at Object.stub (node_modules/sinon/lib/sinon/collection.js:93:35)
    at Context.<anonymous> (spec/lib/api/2.0/obms-spec.js:293:26)

Test Name: Http.Api.Obms /api/2.0/obms/:id should delete an OBM instance
Error Details: Cannot stub non-existent own property publishNodeEvent
Stack Trace: TypeError: Cannot stub non-existent own property publishNodeEvent
    at Object.stub (node_modules/sinon/lib/sinon/collection.js:93:35)
    at Context.<anonymous> (spec/lib/api/2.0/obms-spec.js:307:26)

*** BUILD #1828 ***
Test Name: Http.Api.Obms /api/2.0/obms/:id should patch an OBM instance
Error Details: Cannot stub non-existent own property publishNodeAttrEvent
Stack Trace: TypeError: Cannot stub non-existent own property publishNodeAttrEvent
    at Object.stub (node_modules/sinon/lib/sinon/collection.js:93:35)
    at Context.<anonymous> (spec/lib/api/2.0/obms-spec.js:194:26)

Test Name: Http.Api.Obms /api/2.0/obms/:id should 400 when patching with bad data
Error Details: Cannot stub non-existent own property publishNodeAttrEvent
Stack Trace: TypeError: Cannot stub non-existent own property publishNodeAttrEvent
    at Object.stub (node_modules/sinon/lib/sinon/collection.js:93:35)
    at Context.<anonymous> (spec/lib/api/2.0/obms-spec.js:208:26)

Test Name: Http.Api.Obms /api/2.0/obms/:id should publish event
Error Details: Cannot stub non-existent own property getNodeById
Stack Trace: TypeError: Cannot stub non-existent own property getNodeById
    at Object.stub (node_modules/sinon/lib/sinon/collection.js:93:35)
    at Context.<anonymous> (spec/lib/api/2.0/obms-spec.js:227:26)

Test Name: Http.Api.Obms /api/2.0/obms/:id should delete an OBM instance
Error Details: Cannot stub non-existent own property getNodeById
Stack Trace: TypeError: Cannot stub non-existent own property getNodeById
    at Object.stub (node_modules/sinon/lib/sinon/collection.js:93:35)
    at Context.<anonymous> (spec/lib/api/2.0/obms-spec.js:245:26)

*** BUILD #1851 ***
Test Name: Http.Api.Obms /api/2.0/obms/:id should patch an OBM instance
Error Details: Cannot stub non-existent own property publishNodeAttrEvent
Stack Trace: TypeError: Cannot stub non-existent own property publishNodeAttrEvent
    at Object.stub (node_modules/sinon/lib/sinon/collection.js:93:35)
    at Context.<anonymous> (spec/lib/api/2.0/obms-spec.js:195:26)

Test Name: Http.Api.Obms /api/2.0/obms/:id should 400 when patching with bad data
Error Details: Cannot stub non-existent own property publishNodeAttrEvent
Stack Trace: TypeError: Cannot stub non-existent own property publishNodeAttrEvent
    at Object.stub (node_modules/sinon/lib/sinon/collection.js:93:35)
    at Context.<anonymous> (spec/lib/api/2.0/obms-spec.js:209:26)

Test Name: Http.Api.Obms /api/2.0/obms/:id should publish one event if new node is added when updating obm
Error Details: Cannot stub non-existent own property getNodeById
Stack Trace: TypeError: Cannot stub non-existent own property getNodeById
    at Object.stub (node_modules/sinon/lib/sinon/collection.js:93:35)
    at Context.<anonymous> (spec/lib/api/2.0/obms-spec.js:236:26)

Test Name: Http.Api.Obms /api/2.0/obms/:id should publish one event if node is removed when updating obm
Error Details: Cannot stub non-existent own property getNodeById
Stack Trace: TypeError: Cannot stub non-existent own property getNodeById
    at Object.stub (node_modules/sinon/lib/sinon/collection.js:93:35)
    at Context.<anonymous> (spec/lib/api/2.0/obms-spec.js:267:26)

Test Name: Http.Api.Obms /api/2.0/obms/:id should publish one event if the same node is updated when updating obm
Error Details: Cannot stub non-existent own property getNodeById
Stack Trace: TypeError: Cannot stub non-existent own property getNodeById
    at Object.stub (node_modules/sinon/lib/sinon/collection.js:93:35)
    at Context.<anonymous> (spec/lib/api/2.0/obms-spec.js:298:26)

Test Name: Http.Api.Obms /api/2.0/obms/:id should publish one event if new node is updated when updating obm
Error Details: Cannot stub non-existent own property getNodeById
Stack Trace: TypeError: Cannot stub non-existent own property getNodeById
    at Object.stub (node_modules/sinon/lib/sinon/collection.js:93:35)
    at Context.<anonymous> (spec/lib/api/2.0/obms-spec.js:329:26)

Test Name: Http.Api.Obms /api/2.0/obms/:id should publish no event if node is not updated,created,removed when updating obm
Error Details: Cannot stub non-existent own property getNodeById
Stack Trace: TypeError: Cannot stub non-existent own property getNodeById
    at Object.stub (node_modules/sinon/lib/sinon/collection.js:93:35)
    at Context.<anonymous> (spec/lib/api/2.0/obms-spec.js:359:26)

Test Name: Http.Api.Obms /api/2.0/obms/:id should delete an OBM instance and publish no event if no node exists in obm
Error Details: Cannot stub non-existent own property getNodeById
Stack Trace: TypeError: Cannot stub non-existent own property getNodeById
    at Object.stub (node_modules/sinon/lib/sinon/collection.js:93:35)
    at Context.<anonymous> (spec/lib/api/2.0/obms-spec.js:378:26)

Test Name: Http.Api.Obms /api/2.0/obms/:id should delete an OBM instance and publish one event if node exists in obm
Error Details: Cannot stub non-existent own property getNodeById
Stack Trace: TypeError: Cannot stub non-existent own property getNodeById
    at Object.stub (node_modules/sinon/lib/sinon/collection.js:93:35)
    at Context.<anonymous> (spec/lib/api/2.0/obms-spec.js:395:26)

Test Name: Http.Services.Api.Nodes "before each" hook: Http.Services.Api.Nodes beforeEach for "should create a node"
Error Details: Cannot stub non-existent own property publishNodeEvent
Stack Trace: TypeError: Cannot stub non-existent own property publishNodeEvent
    at Object.stub (node_modules/sinon/lib/sinon/collection.js:93:35)
    at Context.<anonymous> (spec/lib/services/nodes-api-service-spec.js:83:22)

Test Name: test_nodes_discovery
Error Details: timeout waiting for task discovery
-------------------- >> begin captured logging << --------------------
urllib3.connectionpool: INFO: Starting new HTTP connection (1): localhost
tests.api.v1_1.nodes_tests: INFO: Wait start time: 2016-07-15 05:39:04.707503
amqp: DEBUG: Start from server, version: 0.9, properties: {u'information': u'Licensed under the MPL.  See http://www.rabbitmq.com/', u'product': u'RabbitMQ', u'copyright': u'Copyright (C) 2007-2013 GoPivotal, Inc.', u'capabilities': {u'exchange_exchange_bindings': True, u'connection.blocked': True, u'authentication_failure_close': True, u'basic.nack': True, u'consumer_priorities': True, u'consumer_cancel_notify': True, u'publisher_confirms': True}, u'platform': u'Erlang/OTP', u'version': u'3.2.4'}, mechanisms: [u'AMQPLAIN', u'PLAIN'], locales: [u'en_US']
amqp: DEBUG: Open OK!
kombu: INFO: Starting AMQP worker <unbound Queue graph.finished -> <unbound Exchange on.events(topic)> -> graph.finished.*>
amqp: DEBUG: Start from server, version: 0.9, properties: {u'information': u'Licensed under the MPL.  See http://www.rabbitmq.com/', u'product': u'RabbitMQ', u'copyright': u'Copyright (C) 2007-2013 GoPivotal, Inc.', u'capabilities': {u'exchange_exchange_bindings': True, u'connection.blocked': True, u'authentication_failure_close': True, u'basic.nack': True, u'consumer_priorities': True, u'consumer_cancel_notify': True, u'publisher_confirms': True}, u'platform': u'Erlang/OTP', u'version': u'3.2.4'}, mechanisms: [u'AMQPLAIN', u'PLAIN'], locales: [u'en_US']
amqp: DEBUG: Open OK!
kombu.mixins: INFO: Connected to amqp://guest:**@<IP_ADDRESS>:9091//
amqp: DEBUG: using channel_id: 1
amqp: DEBUG: Channel open
modules.worker: ERROR: subtask timeout after 1200 seconds, (id=discovery), stopping..
kombu: INFO: Stopping AMQP worker <unbound Queue graph.finished -> <unbound Exchange on.events(topic)> -> graph.finished.*>
modules.worker: INFO: stopping subtask for discovery
amqp: DEBUG: Closed channel #1
--------------------- >> end captured logging << ---------------------
Stack Trace:   File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/usr/lib/python2.7/unittest/case.py", line 1043, in runTest
    self._testFunc()
  File "/tmp/.venv/local/lib/python2.7/site-packages/proboscis/case.py", line 296, in testng_method_mistake_capture_func
    compatability.capture_type_error(s_func)
  File "/tmp/.venv/local/lib/python2.7/site-packages/proboscis/compatability/exceptions_2_6.py", line 27, in capture_type_error
    func()
  File "/tmp/.venv/local/lib/python2.7/site-packages/proboscis/case.py", line 350, in func
    func(test_case.state.get_state())
  File "/home/jenkins/workspace/on-http/RackHD/test/tests/api/v1_1/nodes_tests.py", line 122, in test_nodes_discovery
    message='timeout waiting for task {0}'.format(self.__task.id))
  File "/tmp/.venv/local/lib/python2.7/site-packages/proboscis/asserts.py", line 67, in assert_false
    raise ASSERTION_ERROR(message)
"timeout waiting for task discovery\n-------------------- >> begin captured logging << --------------------\nurllib3.connectionpool: INFO: Starting new HTTP connection (1): localhost\ntests.api.v1_1.nodes_tests: INFO: Wait start time: 2016-07-15 05:39:04.707503\namqp: DEBUG: Start from server, version: 0.9, properties: {u'information': u'Licensed under the MPL.  See http://www.rabbitmq.com/', u'product': u'RabbitMQ', u'copyright': u'Copyright (C) 2007-2013 GoPivotal, Inc.', u'capabilities': {u'exchange_exchange_bindings': True, u'connection.blocked': True, u'authentication_failure_close': True, u'basic.nack': True, u'consumer_priorities': True, u'consumer_cancel_notify': True, u'publisher_confirms': True}, u'platform': u'Erlang/OTP', u'version': u'3.2.4'}, mechanisms: [u'AMQPLAIN', u'PLAIN'], locales: [u'en_US']\namqp: DEBUG: Open OK!\nkombu: INFO: Starting AMQP worker <unbound Queue graph.finished -> <unbound Exchange on.events(topic)> -> graph.finished.*>\namqp: DEBUG: Start from server, version: 0.9, properties: {u'information': u'Licensed under the MPL.  See http://www.rabbitmq.com/', u'product': u'RabbitMQ', u'copyright': u'Copyright (C) 2007-2013 GoPivotal, Inc.', u'capabilities': {u'exchange_exchange_bindings': True, u'connection.blocked': True, u'authentication_failure_close': True, u'basic.nack': True, u'consumer_priorities': True, u'consumer_cancel_notify': True, u'publisher_confirms': True}, u'platform': u'Erlang/OTP', u'version': u'3.2.4'}, mechanisms: [u'AMQPLAIN', u'PLAIN'], locales: [u'en_US']\namqp: DEBUG: Open OK!\nkombu.mixins: INFO: Connected to amqp://guest:**@<IP_ADDRESS>:9091//\namqp: DEBUG: using channel_id: 1\namqp: DEBUG: Channel open\nmodules.worker: ERROR: subtask timeout after 1200 seconds, (id=discovery), stopping..\nkombu: INFO: Stopping AMQP worker <unbound Queue graph.finished -> <unbound Exchange on.events(topic)> -> graph.finished.*>\nmodules.worker: INFO: stopping subtask for discovery\namqp: DEBUG: Closed channel #1\n--------------------- >> end captured logging << ---------------------"

Test Name: teardown
Error Details: 'X-Auth-Token'
-------------------- >> begin captured logging << --------------------
modules.redfish_auth: INFO: auth already disabled.
--------------------- >> end captured logging << ---------------------
Stack Trace:   File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/usr/lib/python2.7/unittest/case.py", line 1043, in runTest
    self._testFunc()
  File "/tmp/.venv/local/lib/python2.7/site-packages/proboscis/case.py", line 296, in testng_method_mistake_capture_func
    compatability.capture_type_error(s_func)
  File "/tmp/.venv/local/lib/python2.7/site-packages/proboscis/compatability/exceptions_2_6.py", line 27, in capture_type_error
    func()
  File "/tmp/.venv/local/lib/python2.7/site-packages/proboscis/case.py", line 350, in func
    func(test_case.state.get_state())
  File "/home/jenkins/workspace/on-http/RackHD/test/tests/api/redfish_1_0/session_service_tests.py", line 38, in teardown
    Auth.disable()
  File "/home/jenkins/workspace/on-http/RackHD/test/modules/redfish_auth.py", line 67, in disable
    del config.api_client.default_headers['X-Auth-Token']
"'X-Auth-Token'\n-------------------- >> begin captured logging << --------------------\nmodules.redfish_auth: INFO: auth already disabled.\n--------------------- >> end captured logging << ---------------------"

Test Name: teardown
Error Details: 'X-Auth-Token'
-------------------- >> begin captured logging << --------------------
modules.redfish_auth: INFO: auth already disabled.
--------------------- >> end captured logging << ---------------------
Stack Trace:   File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/usr/lib/python2.7/unittest/case.py", line 1043, in runTest
    self._testFunc()
  File "/tmp/.venv/local/lib/python2.7/site-packages/proboscis/case.py", line 296, in testng_method_mistake_capture_func
    compatability.capture_type_error(s_func)
  File "/tmp/.venv/local/lib/python2.7/site-packages/proboscis/compatability/exceptions_2_6.py", line 27, in capture_type_error
    func()
  File "/tmp/.venv/local/lib/python2.7/site-packages/proboscis/case.py", line 350, in func
    func(test_case.state.get_state())
  File "/home/jenkins/workspace/on-http/RackHD/test/tests/api/redfish_1_0/account_service_tests.py", line 38, in teardown
    Auth.disable()
  File "/home/jenkins/workspace/on-http/RackHD/test/modules/redfish_auth.py", line 67, in disable
    del config.api_client.default_headers['X-Auth-Token']
"'X-Auth-Token'\n-------------------- >> begin captured logging << --------------------\nmodules.redfish_auth: INFO: auth already disabled.\n--------------------- >> end captured logging << ---------------------"

Test Name: test_node_catalogs
Error Details: Node catalog is empty!
Stack Trace: Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/usr/lib/python2.7/unittest/case.py", line 1043, in runTest
    self._testFunc()
  File "/tmp/.venv/local/lib/python2.7/site-packages/proboscis/case.py", line 296, in testng_method_mistake_capture_func
    compatability.capture_type_error(s_func)
  File "/tmp/.venv/local/lib/python2.7/site-packages/proboscis/compatability/exceptions_2_6.py", line 27, in capture_type_error
    func()
  File "/tmp/.venv/local/lib/python2.7/site-packages/proboscis/case.py", line 350, in func
    func(test_case.state.get_state())
  File "/home/jenkins/workspace/on-http/RackHD/test/tests/api/v2_0/nodes_tests.py", line 248, in test_node_catalogs
    assert_not_equal(0, len(resp), message='Node catalog is empty!')
  File "/tmp/.venv/local/lib/python2.7/site-packages/proboscis/asserts.py", line 151, in assert_not_equal
    raise ASSERTION_ERROR(message)
AssertionError: Node catalog is empty!

Test Name: test_node_id
Error Details: (400)
Reason: Bad Request
HTTP response headers: HTTPHeaderDict({'Content-Length': '3870', 'X-Powered-By': 'Express', 'Connection': 'keep-alive', 'ETag': 'W/"f1e-KARi7DNzjR+qcPWKDCTJxA"', 'Date': 'Fri, 15 Jul 2016 09:59:24 GMT', 'Access-Control-Allow-Origin': '*', 'Content-Type': 'application/json; charset=utf-8'})
HTTP response body: {"message":"Object [object Object] has no method 'getNodeById'","status":"400","stack":"TypeError: Object [object Object] has no method 'getNodeById'    at NodeApiService.getNodeById (/home/vagrant/src/on-http/lib/services/nodes-api-service.js:289:32)    at /home/vagrant/src/on-http/lib/api/2.0/nodes.js:22:18    at Promise.try.then.res.body (/home/vagrant/src/on-http/lib/services/swagger-api-service.js:80:24)    at tryCatcher (/home/vagrant/src/on-http/node_modules/on-core/node_modules/bluebird/js/main/util.js:26:23)    at Function.Promise.attempt.Promise.try (/home/vagrant/src/on-http/node_modules/on-core/node_modules/bluebird/js/main/method.js:31:24)    at /home/vagrant/src/on-http/lib/services/swagger-api-service.js:78:31    at swagger_router (/home/vagrant/src/on-http/node_modules/swagger-express-mw/node_modules/swagger-node-runner/fittings/swagger_router.js:68:16)    at null.<anonymous> (/home/vagrant/src/on-http/node_modules/swagger-express-mw/node_modules/swagger-node-runner/node_modules/bagpipes/lib/bagpipes.js:171:7)    at b (domain.js:183:18)    at null.pipeline (/home/vagrant/src/on-http/node_modules/swagger-express-mw/node_modules/swagger-node-runner/node_modules/bagpipes/node_modules/pipeworks/pipeworks.js:72:17)    at Runner.flow (/home/vagrant/src/on-http/node_modules/swagger-express-mw/node_modules/swagger-node-runner/node_modules/bagpipes/node_modules/pipeworks/pipeworks.js:218:19)    at Pipeworks.flow (/home/vagrant/src/on-http/node_modules/swagger-express-mw/node_modules/swagger-node-runner/node_modules/bagpipes/node_modules/pipeworks/pipeworks.js:135:17)    at Pipeworks.siphon (/home/vagrant/src/on-http/node_modules/swagger-express-mw/node_modules/swagger-node-runner/node_modules/bagpipes/node_modules/pipeworks/pipeworks.js:186:19)    at null.<anonymous> (/home/vagrant/src/on-http/node_modules/swagger-express-mw/node_modules/swagger-node-runner/node_modules/bagpipes/lib/bagpipes.js:98:22)    at b (domain.js:183:18)    at null.<anonymous> (/home/vagrant/src/on-http/node_modules/swagger-express-mw/node_modules/swagger-node-runner/node_modules/bagpipes/node_modules/pipeworks/pipeworks.js:72:17)    at null.<anonymous> (/home/vagrant/src/on-http/node_modules/swagger-express-mw/node_modules/swagger-node-runner/node_modules/bagpipes/node_modules/pipeworks/pipeworks.js:179:12)    at b (domain.js:183:18)    at null.<anonymous> (/home/vagrant/src/on-http/node_modules/swagger-express-mw/node_modules/swagger-node-runner/node_modules/bagpipes/node_modules/pipeworks/pipeworks.js:72:17)    at postFlight (/home/vagrant/src/on-http/node_modules/swagger-express-mw/node_modules/swagger-node-runner/node_modules/bagpipes/lib/bagpipes.js:220:3)    at /home/vagrant/src/on-http/node_modules/swagger-express-mw/node_modules/swagger-node-runner/node_modules/bagpipes/lib/bagpipes.js:174:9    at swaggerSerdes (/home/vagrant/src/on-http/lib/fittings/swagger_serdes.js:22:39)    at null.<anonymous> (/home/vagrant/src/on-http/node_modules/swagger-express-mw/node_modules/swagger-node-runner/node_modules/bagpipes/lib/bagpipes.js:171:7)    at b (domain.js:183:18)    at null.pipeline (/home/vagrant/src/on-http/node_modules/swagger-express-mw/node_modules/swagger-node-runner/node_modules/bagpipes/node_modules/pipeworks/pipeworks.js:72:17)    at Runner.flow (/home/vagrant/src/on-http/node_modules/swagger-express-mw/node_modules/swagger-node-runner/node_modules/bagpipes/node_modules/pipeworks/pipeworks.js:218:19)    at Pipeworks.flow (/home/vagrant/src/on-http/node_modules/swagger-express-mw/node_modules/swagger-node-runner/node_modules/bagpipes/node_modules/pipeworks/pipeworks.js:135:17)    at Pipeworks.siphon (/home/vagrant/src/on-http/node_modules/swagger-express-mw/node_modules/swagger-node-runner/node_modules/bagpipes/node_modules/pipeworks/pipeworks.js:186:19)"}

-------------------- >> begin captured logging << --------------------
tests.api.v2_0.nodes_tests: INFO: {
    "autoDiscover": "false",
    "id": "5788af5c93615bd40790731c",
    "identifiers": [
        "52:54:be:ef:e0:1d"
    ],
    "name": "52:54:be:ef:e0:1d",
    "obms": [],
    "tags": [],
    "type": "compute"
}
--------------------- >> end captured logging << ---------------------
Stack Trace:   File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/usr/lib/python2.7/unittest/case.py", line 1043, in runTest
    self._testFunc()
  File "/tmp/.venv/local/lib/python2.7/site-packages/proboscis/case.py", line 296, in testng_method_mistake_capture_func
    compatability.capture_type_error(s_func)
  File "/tmp/.venv/local/lib/python2.7/site-packages/proboscis/compatability/exceptions_2_6.py", line 27, in capture_type_error
    func()
  File "/tmp/.venv/local/lib/python2.7/site-packages/proboscis/case.py", line 350, in func
    func(test_case.state.get_state())
  File "/home/jenkins/workspace/on-http/RackHD/test/tests/api/v2_0/nodes_tests.py", line 172, in test_node_id
    Api().nodes_get_by_id(identifier=uuid)
  File "/tmp/.venv/local/lib/python2.7/site-packages/on_http_api2_0/apis/api_api.py", line 1759, in nodes_get_by_id
    callback=params.get('callback'))
  File "/tmp/.venv/local/lib/python2.7/site-packages/on_http_api2_0/api_client.py", line 322, in call_api
    response_type, auth_settings, callback)
  File "/tmp/.venv/local/lib/python2.7/site-packages/on_http_api2_0/api_client.py", line 149, in __call_api
    post_params=post_params, body=body)
  File "/tmp/.venv/local/lib/python2.7/site-packages/on_http_api2_0/api_client.py", line 342, in request
    headers=headers)
  File "/tmp/.venv/local/lib/python2.7/site-packages/on_http_api2_0/rest.py", line 184, in GET
    query_params=query_params)
  File "/tmp/.venv/local/lib/python2.7/site-packages/on_http_api2_0/rest.py", line 177, in request
    raise ApiException(http_resp=r)
'(400)\nReason: Bad Request\nHTTP response headers: HTTPHeaderDict({\'Content-Length\': \'3870\', \'X-Powered-By\': \'Express\', \'Connection\': \'keep-alive\', \'ETag\': \'W/"f1e-KARi7DNzjR+qcPWKDCTJxA"\', \'Date\': \'Fri, 15 Jul 2016 09:59:24 GMT\', \'Access-Control-Allow-Origin\': \'*\', \'Content-Type\': \'application/json; charset=utf-8\'})\nHTTP response body: {"message":"Object [object Object] has no method 'getNodeById'","status":"400","stack":"TypeError: Object [object Object] has no method 'getNodeById'    at NodeApiService.getNodeById (/home/vagrant/src/on-http/lib/services/nodes-api-service.js:289:32)    at /home/vagrant/src/on-http/lib/api/2.0/nodes.js:22:18    at Promise.try.then.res.body (/home/vagrant/src/on-http/lib/services/swagger-api-service.js:80:24)    at tryCatcher (/home/vagrant/src/on-http/node_modules/on-core/node_modules/bluebird/js/main/util.js:26:23)    at Function.Promise.attempt.Promise.try (/home/vagrant/src/on-http/node_modules/on-core/node_modules/bluebird/js/main/method.js:31:24)    at /home/vagrant/src/on-http/lib/services/swagger-api-service.js:78:31    at swagger_router (/home/vagrant/src/on-http/node_modules/swagger-express-mw/node_modules/swagger-node-runner/fittings/swagger_router.js:68:16)    at null.<anonymous> (/home/vagrant/src/on-http/node_modules/swagger-express-mw/node_modules/swagger-node-runner/node_modules/bagpipes/lib/bagpipes.js:171:7)    at b (domain.js:183:18)    at null.pipeline (/home/vagrant/src/on-http/node_modules/swagger-express-mw/node_modules/swagger-node-runner/node_modules/bagpipes/node_modules/pipeworks/pipeworks.js:72:17)    at Runner.flow (/home/vagrant/src/on-http/node_modules/swagger-express-mw/node_modules/swagger-node-runner/node_modules/bagpipes/node_modules/pipeworks/pipeworks.js:218:19)    at Pipeworks.flow (/home/vagrant/src/on-http/node_modules/swagger-express-mw/node_modules/swagger-node-runner/node_modules/bagpipes/node_modules/pipeworks/pipeworks.js:135:17)    at Pipeworks.siphon (/home/vagrant/src/on-http/node_modules/swagger-express-mw/node_modules/swagger-node-runner/node_modules/bagpipes/node_modules/pipeworks/pipeworks.js:186:19)    at null.<anonymous> (/home/vagrant/src/on-http/node_modules/swagger-express-mw/node_modules/swagger-node-runner/node_modules/bagpipes/lib/bagpipes.js:98:22)    at b (domain.js:183:18)    at null.<anonymous> (/home/vagrant/src/on-http/node_modules/swagger-express-mw/node_modules/swagger-node-runner/node_modules/bagpipes/node_modules/pipeworks/pipeworks.js:72:17)    at null.<anonymous> (/home/vagrant/src/on-http/node_modules/swagger-express-mw/node_modules/swagger-node-runner/node_modules/bagpipes/node_modules/pipeworks/pipeworks.js:179:12)    at b (domain.js:183:18)    at null.<anonymous> (/home/vagrant/src/on-http/node_modules/swagger-express-mw/node_modules/swagger-node-runner/node_modules/bagpipes/node_modules/pipeworks/pipeworks.js:72:17)    at postFlight (/home/vagrant/src/on-http/node_modules/swagger-express-mw/node_modules/swagger-node-runner/node_modules/bagpipes/lib/bagpipes.js:220:3)    at /home/vagrant/src/on-http/node_modules/swagger-express-mw/node_modules/swagger-node-runner/node_modules/bagpipes/lib/bagpipes.js:174:9    at swaggerSerdes (/home/vagrant/src/on-http/lib/fittings/swagger_serdes.js:22:39)    at null.<anonymous> (/home/vagrant/src/on-http/node_modules/swagger-express-mw/node_modules/swagger-node-runner/node_modules/bagpipes/lib/bagpipes.js:171:7)    at b (domain.js:183:18)    at null.pipeline (/home/vagrant/src/on-http/node_modules/swagger-express-mw/node_modules/swagger-node-runner/node_modules/bagpipes/node_modules/pipeworks/pipeworks.js:72:17)    at Runner.flow (/home/vagrant/src/on-http/node_modules/swagger-express-mw/node_modules/swagger-node-runner/node_modules/bagpipes/node_modules/pipeworks/pipeworks.js:218:19)    at Pipeworks.flow (/home/vagrant/src/on-http/node_modules/swagger-express-mw/node_modules/swagger-node-runner/node_modules/bagpipes/node_modules/pipeworks/pipeworks.js:135:17)    at Pipeworks.siphon (/home/vagrant/src/on-http/node_modules/swagger-express-mw/node_modules/swagger-node-runner/node_modules/bagpipes/node_modules/pipeworks/pipeworks.js:186:19)"}\n\n-------------------- >> begin captured logging << --------------------\ntests.api.v2_0.nodes_tests: INFO: {\n    "autoDiscover": "false",\n    "id": "5788af5c93615bd40790731c",\n    "identifiers": [\n        "52:54:be:ef:e0:1d"\n    ],\n    "name": "52:54:be:ef:e0:1d",\n    "obms": [],\n    "tags": [],\n    "type": "compute"\n}\n--------------------- >> end captured logging << ---------------------'

Test Name: test_tag_create
Error Details: (404)
Reason: Not Found
HTTP response headers: HTTPHeaderDict({'Content-Length': '1248', 'X-Powered-By': 'Express', 'Connection': 'keep-alive', 'ETag': 'W/"4e0-gFe15tRh1swnfxZxmpvdTw"', 'Date': 'Fri, 15 Jul 2016 09:59:26 GMT', 'Access-Control-Allow-Origin': '*', 'Content-Type': 'application/json; charset=utf-8'})
HTTP response body: {"message":"NotFoundError: No Catalogs Found for Source (dmi).","status":"404","stack":"Error: NotFoundError: No Catalogs Found for Source (dmi).    at _processError (/home/vagrant/src/on-http/lib/services/swagger-api-service.js:43:19)    at /home/vagrant/src/on-http/lib/services/swagger-api-service.js:95:22    at b (domain.js:183:18)    at tryCatcher (/home/vagrant/src/on-http/node_modules/on-core/node_modules/bluebird/js/main/util.js:26:23)    at Promise._settlePromiseFromHandler (/home/vagrant/src/on-http/node_modules/on-core/node_modules/bluebird/js/main/promise.js:507:31)    at Promise._settlePromiseAt (/home/vagrant/src/on-http/node_modules/on-core/node_modules/bluebird/js/main/promise.js:581:18)    at Promise._settlePromises (/home/vagrant/src/on-http/node_modules/on-core/node_modules/bluebird/js/main/promise.js:697:14)    at Async._drainQueue (/home/vagrant/src/on-http/node_modules/on-core/node_modules/bluebird/js/main/async.js:123:16)    at Async._drainQueues (/home/vagrant/src/on-http/node_modules/on-core/node_modules/bluebird/js/main/async.js:133:10)    at Async.drainQueues (/home/vagrant/src/on-http/node_modules/on-core/node_modules/bluebird/js/main/async.js:15:14)    at process._tickDomainCallback (node.js:459:13)"}

Stack Trace: Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/usr/lib/python2.7/unittest/case.py", line 1043, in runTest
    self._testFunc()
  File "/tmp/.venv/local/lib/python2.7/site-packages/proboscis/case.py", line 296, in testng_method_mistake_capture_func
    compatability.capture_type_error(s_func)
  File "/tmp/.venv/local/lib/python2.7/site-packages/proboscis/compatability/exceptions_2_6.py", line 27, in capture_type_error
    func()
  File "/tmp/.venv/local/lib/python2.7/site-packages/proboscis/case.py", line 350, in func
    func(test_case.state.get_state())
  File "/home/jenkins/workspace/on-http/RackHD/test/tests/api/v2_0/tags_tests.py", line 45, in test_tag_create
    tagsWithRules = self.__create_tag_rule(n.get('id'))
  File "/home/jenkins/workspace/on-http/RackHD/test/tests/api/v2_0/tags_tests.py", line 26, in __create_tag_rule
    Api().nodes_get_catalog_source_by_id(identifier=id,source='dmi')
  File "/tmp/.venv/local/lib/python2.7/site-packages/on_http_api2_0/apis/api_api.py", line 2087, in nodes_get_catalog_source_by_id
    callback=params.get('callback'))
  File "/tmp/.venv/local/lib/python2.7/site-packages/on_http_api2_0/api_client.py", line 322, in call_api
    response_type, auth_settings, callback)
  File "/tmp/.venv/local/lib/python2.7/site-packages/on_http_api2_0/api_client.py", line 149, in __call_api
    post_params=post_params, body=body)
  File "/tmp/.venv/local/lib/python2.7/site-packages/on_http_api2_0/api_client.py", line 342, in request
    headers=headers)
  File "/tmp/.venv/local/lib/python2.7/site-packages/on_http_api2_0/rest.py", line 184, in GET
    query_params=query_params)
  File "/tmp/.venv/local/lib/python2.7/site-packages/on_http_api2_0/rest.py", line 177, in request
    raise ApiException(http_resp=r)
ApiException: (404)
Reason: Not Found
HTTP response headers: HTTPHeaderDict({'Content-Length': '1248', 'X-Powered-By': 'Express', 'Connection': 'keep-alive', 'ETag': 'W/"4e0-gFe15tRh1swnfxZxmpvdTw"', 'Date': 'Fri, 15 Jul 2016 09:59:26 GMT', 'Access-Control-Allow-Origin': '*', 'Content-Type': 'application/json; charset=utf-8'})
HTTP response body: {"message":"NotFoundError: No Catalogs Found for Source (dmi).","status":"404","stack":"Error: NotFoundError: No Catalogs Found for Source (dmi).    at _processError (/home/vagrant/src/on-http/lib/services/swagger-api-service.js:43:19)    at /home/vagrant/src/on-http/lib/services/swagger-api-service.js:95:22    at b (domain.js:183:18)    at tryCatcher (/home/vagrant/src/on-http/node_modules/on-core/node_modules/bluebird/js/main/util.js:26:23)    at Promise._settlePromiseFromHandler (/home/vagrant/src/on-http/node_modules/on-core/node_modules/bluebird/js/main/promise.js:507:31)    at Promise._settlePromiseAt (/home/vagrant/src/on-http/node_modules/on-core/node_modules/bluebird/js/main/promise.js:581:18)    at Promise._settlePromises (/home/vagrant/src/on-http/node_modules/on-core/node_modules/bluebird/js/main/promise.js:697:14)    at Async._drainQueue (/home/vagrant/src/on-http/node_modules/on-core/node_modules/bluebird/js/main/async.js:123:16)    at Async._drainQueues (/home/vagrant/src/on-http/node_modules/on-core/node_modules/bluebird/js/main/async.js:133:10)    at Async.drainQueues (/home/vagrant/src/on-http/node_modules/on-core/node_modules/bluebird/js/main/async.js:15:14)    at process._tickDomainCallback (node.js:459:13)"}

Test Name: get_sku_nodes
Error Details: (404)
Reason: Not Found
HTTP response headers: HTTPHeaderDict({'Content-Length': '1248', 'X-Powered-By': 'Express', 'Connection': 'keep-alive', 'ETag': 'W/"4e0-gFe15tRh1swnfxZxmpvdTw"', 'Date': 'Fri, 15 Jul 2016 09:59:27 GMT', 'Access-Control-Allow-Origin': '*', 'Content-Type': 'application/json; charset=utf-8'})
HTTP response body: {"message":"NotFoundError: No Catalogs Found for Source (dmi).","status":"404","stack":"Error: NotFoundError: No Catalogs Found for Source (dmi).    at _processError (/home/vagrant/src/on-http/lib/services/swagger-api-service.js:43:19)    at /home/vagrant/src/on-http/lib/services/swagger-api-service.js:95:22    at b (domain.js:183:18)    at tryCatcher (/home/vagrant/src/on-http/node_modules/on-core/node_modules/bluebird/js/main/util.js:26:23)    at Promise._settlePromiseFromHandler (/home/vagrant/src/on-http/node_modules/on-core/node_modules/bluebird/js/main/promise.js:507:31)    at Promise._settlePromiseAt (/home/vagrant/src/on-http/node_modules/on-core/node_modules/bluebird/js/main/promise.js:581:18)    at Promise._settlePromises (/home/vagrant/src/on-http/node_modules/on-core/node_modules/bluebird/js/main/promise.js:697:14)    at Async._drainQueue (/home/vagrant/src/on-http/node_modules/on-core/node_modules/bluebird/js/main/async.js:123:16)    at Async._drainQueues (/home/vagrant/src/on-http/node_modules/on-core/node_modules/bluebird/js/main/async.js:133:10)    at Async.drainQueues (/home/vagrant/src/on-http/node_modules/on-core/node_modules/bluebird/js/main/async.js:15:14)    at process._tickDomainCallback (node.js:459:13)"}

Stack Trace: Traceback (most recent call last):
  File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/usr/lib/python2.7/unittest/case.py", line 1043, in runTest
    self._testFunc()
  File "/tmp/.venv/local/lib/python2.7/site-packages/proboscis/case.py", line 296, in testng_method_mistake_capture_func
    compatability.capture_type_error(s_func)
  File "/tmp/.venv/local/lib/python2.7/site-packages/proboscis/compatability/exceptions_2_6.py", line 27, in capture_type_error
    func()
  File "/tmp/.venv/local/lib/python2.7/site-packages/proboscis/case.py", line 350, in func
    func(test_case.state.get_state())
  File "/home/jenkins/workspace/on-http/RackHD/test/tests/api/v2_0/skupack_tests.py", line 149, in get_sku_nodes
    Api().nodes_get_catalog_source_by_id(identifier=node_id,source='dmi')
  File "/tmp/.venv/local/lib/python2.7/site-packages/on_http_api2_0/apis/api_api.py", line 2087, in nodes_get_catalog_source_by_id
    callback=params.get('callback'))
  File "/tmp/.venv/local/lib/python2.7/site-packages/on_http_api2_0/api_client.py", line 322, in call_api
    response_type, auth_settings, callback)
  File "/tmp/.venv/local/lib/python2.7/site-packages/on_http_api2_0/api_client.py", line 149, in __call_api
    post_params=post_params, body=body)
  File "/tmp/.venv/local/lib/python2.7/site-packages/on_http_api2_0/api_client.py", line 342, in request
    headers=headers)
  File "/tmp/.venv/local/lib/python2.7/site-packages/on_http_api2_0/rest.py", line 184, in GET
    query_params=query_params)
  File "/tmp/.venv/local/lib/python2.7/site-packages/on_http_api2_0/rest.py", line 177, in request
    raise ApiException(http_resp=r)
ApiException: (404)
Reason: Not Found
HTTP response headers: HTTPHeaderDict({'Content-Length': '1248', 'X-Powered-By': 'Express', 'Connection': 'keep-alive', 'ETag': 'W/"4e0-gFe15tRh1swnfxZxmpvdTw"', 'Date': 'Fri, 15 Jul 2016 09:59:27 GMT', 'Access-Control-Allow-Origin': '*', 'Content-Type': 'application/json; charset=utf-8'})
HTTP response body: {"message":"NotFoundError: No Catalogs Found for Source (dmi).","status":"404","stack":"Error: NotFoundError: No Catalogs Found for Source (dmi).    at _processError (/home/vagrant/src/on-http/lib/services/swagger-api-service.js:43:19)    at /home/vagrant/src/on-http/lib/services/swagger-api-service.js:95:22    at b (domain.js:183:18)    at tryCatcher (/home/vagrant/src/on-http/node_modules/on-core/node_modules/bluebird/js/main/util.js:26:23)    at Promise._settlePromiseFromHandler (/home/vagrant/src/on-http/node_modules/on-core/node_modules/bluebird/js/main/promise.js:507:31)    at Promise._settlePromiseAt (/home/vagrant/src/on-http/node_modules/on-core/node_modules/bluebird/js/main/promise.js:581:18)    at Promise._settlePromises (/home/vagrant/src/on-http/node_modules/on-core/node_modules/bluebird/js/main/promise.js:697:14)    at Async._drainQueue (/home/vagrant/src/on-http/node_modules/on-core/node_modules/bluebird/js/main/async.js:123:16)    at Async._drainQueues (/home/vagrant/src/on-http/node_modules/on-core/node_modules/bluebird/js/main/async.js:133:10)    at Async.drainQueues (/home/vagrant/src/on-http/node_modules/on-core/node_modules/bluebird/js/main/async.js:15:14)    at process._tickDomainCallback (node.js:459:13)"}

@yyscamper @WangWinson updated with comments

Thanks @anhou , it's :+1: for me now.

test this please

:+1:


nicer error message for when file is too large

currently generic blank page:
"Request Entity Too Large
The data value transmitted exceeds the capacity limit."
Should be something nice looking that keeps you on the page.
NOT priority for today's workshop.

added into validation


New version: TechSmith.Snagit.2024 version <IP_ADDRESS>49 (24.2.1)

Created by 🥟 Dumplings in workflow run #7312.

Log
Updated: 24.2.0 → 24.2.1
No ReleaseNotes (en-US) for version 24.2.1
Submitting WinGet manifests
Creating manifests
Uploading manifests and making commits
Creating a pull request

Microsoft Reviewers: Open in CodeFlow

Snagit 2024.2.2 released. can this be updated here?
https://support.techsmith.com/hc/en-us/articles/115006435067-Snagit-Windows-Version-History


Refactor/custom error types

Pull Request Template
Description
Added custom error types in error.rs to use over Box.
Related Issue
Finish setup #16
Type of change

[ ] Bug fix
[x] New feature
[ ] Breaking change
[ ] Documentation update

How Has This Been Tested?
Clippy ran without errors and the actual program ran well.
Checklist

[x] This code follows the style guidelines of this project (rust fmt)
[x] Code has been self-reviewed
[x] Code has been commented, particularly in hard-to-understand areas
[x] Corresponding changes have been made to the documentation
[x] Running Clippy and audit locally return no errors or warnings
[x] Tests have been added for new features
[x] New and existing unit tests and integration tests pass locally with changes

Merge to develop first, not master


How to play video automatically in listview

Hi Nathen Very nice example,
From the issues I found out how to play video automatically by using the following code
jCVideoPlayer.ivStart.performClick();
But it doesn't work in listview.I need to play video automatically when particular list item becomes visible.
Kindly help me out in solving the issue.
Thanks

You should modify your listview like this project
https://github.com/danylovolokh/VideoPlayerManager
Your demand is focuse on the listview , then call jCVideoPlayer.ivStart.performClick()

Hi Nathen,
Thanks for your quick response i will try as your suggestion.I will let you know if i have any queries.

On standby


Cloudflare (failed with status code 403)

chat.openai.com started using cloudflare, which breaks current logic and prevents library from making requests without passing cloudflare check returning 403.

will this fixed soon?

yes, i will try to fix it by the end of weekends, there already are some solutions out there, i just didn't quite had time to deal with that issue yet

Unfortunately i will not be able to make progress under current circumstances with openai's new anti-spam protections, but they are just too much for such small project to make without guarantee there wouldn't be further protective oppressions from openai's side.
I will archive this repo, but if you're still willing to build something around chatgpt's unofficial api in javascript, try out
https://github.com/transitive-bullshit/chatgpt-api
They seem to have implemented solutions, at least to some degree, for bypassing current protections, even tho some of them may require payment to be done (recaptchas), which at this point i would consider using openai's available api plan for davinci or some other model.


Combining Push with Present

I did not find a way to have both a push and present navigation type on the same view. Is this possible? Thank you

Thanks, it's a great question.
As you've probably found, having a PStack that contains one or more NStacks within a single view can make state management tricky, as there could be any number of navigation flows to manage. It's easier to break the state out into multiple coordinator views, e.g. a parent coordinator view managing a presentation stack containing child coordinators / views, each of which might themselves manage a navigation stack. If you're using view models, you could have separate view models for the presentation and navigation layers, but still have a single coordinator view. Or, if you have an NStack of which there is always exactly one at the root of your PStack, you could handle both within a single coordinator (though it would behave strangely if you ever presented more than one of your root navigation stacks), e.g.:
struct PNCoordinator: View {

  enum Screen {
    case root
    case hi
  }

  enum RootScreen {
    case home
    case hello
  }

  @State var rootNFlow = NFlow<RootScreen>(root: .home)
  @State var mainPFlow = PFlow<Screen>(root: .root)

  var body: some View {
    PStack($mainPFlow) { screen in
      switch screen {
      case .root:
        NavigationView {
          NStack($rootNFlow) { screen in
            switch screen {
            case .home:
              VStack(spacing: 8) {
                Text("Home")
                Button("Push Hello", action: pushHello)
                Button("Present Hi", action: presentHi)
              }
            case .hello:
              VStack(spacing: 8) {
                Text("Hello")
                Button("Pop", action: pop)
                Button("Present Hi", action: presentHi)
              }
            }
          }
        }
      case .hi:
        VStack(spacing: 8) {
          Text("Hi")
          Button("Dismiss", action: dismiss)
        }
      }
    }
  }

  func pushHello() {
    rootNFlow.push(.hello)
  }

  func presentHi() {
    mainPFlow.present(.root)
  }

  func pop() {
    rootNFlow.pop()
  }

  func dismiss() {
    mainPFlow.dismiss()
  }
}

In any case, I'd like to explore ways of making it easier to combine both within a single coordinator view, such as a stack that can be used for both pushing and presenting views.

Thanks for the reply. Had not time to wait for your answer :) so I created my own coordinator that can use both push and present actions: https://github.com/rebeloper/Dot/tree/main/Sources/Dot/LinkedNavigation
Let me know what you think.
It's heavily influenced by this repo. Thank you.

Nice one! In fact, this issue inspired me to try it out too, and I think my solution is very similar to yours. Allowing the option to embed within a NavigationView when presenting is the critical part I think. Here's the branch where I've been working on it, though it's not quite shippable yet.
I'll take a closer look at your repo and how you're using it, thanks for sharing!

Support for combined navigation and presentation has now been added in v0.1.0 using the new Router. 🎉